NotificationModel QML 类型
该模型是对 NotificationManager 单例的代理。 更多...
导入语句 | import QtApplicationManager.SystemUI 2.0 |
属性
- count : int
- filterFunction : var
- sortFunction : var
方法
- int indexOfNotification(int notificationId)
- int indexOfNotification(object notification)
- invalidate()
- int mapFromSource(int index)
- int mapToSource(int index)
详细说明
NotificationModel 类型提供了一个可自定义的模型,可以用来根据您的需求定制 NotificationManager 模型。 The NotificationManager 单例自身就是一个模型,它包含所有可用的通知。相比之下,NotificationModel 支持过滤和排序。
由于 NotificationModel 基于 NotificationManager 模型,因此后者被称为 源 模型。NotificationModel 包含与 NotificationManager 模型相同的 roles。
注意: 如果您需要一个包含所有通知且没有任何过滤的模型,则应直接使用 NotificationManager,因为它具有更好的性能。
下面的代码片段显示了优先级大于 5 的所有通知摘要列表
import QtQuick import QtApplicationManager.SystemUI ListView { model: NotificationModel { filterFunction: function(notification) { return notification.priority > 5; } } Text { required property string summary text: summary } }
属性文档
count : int |
包含在此模型中的通知数量。
filterFunction : var |
这是一个 JavaScript 函数回调,它为 NotificationManager 源模型中的每个通知调用一次。此函数接受一个 Notification 参数,必须返回一个布尔值。如果一个通知应该包含在此模型中,则该函数必须返回 code translate="no">true; 否则返回 false
。
如果您根本不需要过滤,应将该属性设置为未定义(默认)或 null 值。
注意:每次修改此函数时,都会重新评估过滤器。源模型中的更改也会反映出来。要强制完全重新评估,请调用invalidate()方法。
sortFunction : var |
一个JavaScript函数回调,用于在本模型中对通知进行排序。此函数获取两个通知参数并必须返回一个布尔值。如果第一个通知在本模型中的索引应小于第二个通知,则函数必须返回true
;否则返回false
。
如果不需要任何排序,应将此属性设置为undefined(默认值)或null值。
注意:每次修改此函数时,模型都会进行排序。源模型中的更改也会反映出来。要强制完全重新评估,请调用invalidate()方法。
方法文档
将对应的notificationId通知映射到该模型中的位置。如果指定的通知无效,或不是此模型的一部分,则返回-1
。
int indexOfNotification(object notification) |
将notification映射到该模型中的位置。如果指定的通知无效或不是该模型的一部分,则返回-1
。
invalidate() |
强制重新评估模型。
将通知的index从NotificationManager模型映射到本模型中的对应索引。如果指定的index无效,则返回-1
。
将本模型中的通知的index映射到NotificationManager模型中的对应索引。如果指定的index无效,则返回-1
。
© 2024 The Qt Company Ltd. 本文档中的贡献权属于各自的所有者。本文档以下载的版本是根据免费软件基金会发布的GNU自由文档许可协议版本1.3许可的。Qt及其标志是全球芬兰及/或世界其他国家的商标。所有其他商标均为其各自所有者的财产。