Документация
ОС Аврора 5.1.0

Класс Notification

Разрешает публикацию уведомлений. Подробнее…

Заголовочный файл: #include <notification.h>
Создаётся экземпляром: Notification

Публичные типы

Свойства

Публичные методы

Сигналы

Статические публичные члены

  • QList<QObject *> notifications()
  • QList<QObject *> notifications(const QString &owner)
  • QList<QObject *> notificationsByCategory(const QString &category)
  • QVariant remoteAction(const QString &name, const QString &displayName, const QString &service = QString(), const QString &path = QString(), const QString &iface = QString(), const QString &method = QString(), const QVariantList &arguments = QVariantList())

Подробное описание

Разрешает публикацию уведомлений.

Тип Notification представляет собой удобный способ работы с уведомлениями. Тип основан на спецификации уведомлений рабочего стола (Desktop Notifications Specification), реализованной в Nemo.

Этот класс позволяет клиентским приложениям создавать уведомления, которые могут использоваться для обмена данными с диспетчером уведомлений домашнего экрана через D-Bus. Это упрощает процесс создания, отображения и закрытия уведомлений, так как сам класс управляет всеми необходимыми процедурами обмена данными.

Описание типов класса

enum Notification::CloseReason

В данном перечислении описаны причины, по которым уведомление может считаться закрытым.

Константа Значение Описание
Notification::Expired 0 Истёк период expireTimeout уведомления
Notification::DismissedByUser 1 Уведомление было отклонено пользователем
Notification::Closed 2 Уведомление было закрыто программным способом

enum Notification::Progress

enum Notification::Urgency

В данном перечислении описаны уровни срочности уведомления.

Константа Значение Описание
Notification::Low 0 Несрочное уведомление
Notification::Normal 1 Обычное уведомление
Notification::Critical 2 Очень важное уведомление

Описание свойств

appIcon : QString

Иконка приложения, с которым связано уведомление. Значением свойства может быть либо URI, либо абсолютный путь к файлу, либо токен, интерпретируемый объектом Theme.

Данное свойство транслируется как параметр "app_icon" метода Notify.

Методы доступа:

  • QString appIcon() const
  • void setAppIcon(const QString &appIcon)

Сигнал уведомления:

  • void appIconChanged()

appName : QString

Отображаемое название приложения, с которым связано уведомление.

Это должно быть официальное название приложения и, по возможности, переведённое на язык операционной системы.

Данное свойство транслируется как параметр "app_name" метода Notify.

Методы доступа:

  • QString appName() const
  • void setAppName(const QString &appName)

Сигнал уведомления:

  • void appNameChanged()

body : QString

Необязательный текст тела уведомления.

Данное свойство транслируется как параметр "body" метода Notify.

Методы доступа:

  • QString body() const
  • void setBody(const QString &body)

Сигнал уведомления:

  • void bodyChanged()

category : QString

Категория, чьи свойства должны применяться к уведомлению с помощью диспетчера уведомлений.

Свойства, определённые в файле определения категории, будут применены к уведомлению при условии, что эти же свойства ещё не заданы в самом уведомлении.

Данное свойство транслируется как значение стандартной подсказки "category". Подсказки (hints) — это дополнительные необязательные данные, передаваемые на сервер уведомлений.

Методы доступа:

  • QString category() const
  • void setCategory(const QString &category)

Сигнал уведомления:

  • void categoryChanged()

expireTimeout : qint32

Количество миллисекунд, по истечении которых показанное уведомление будет автоматически закрыто. Значение 0 означает, что уведомление не будет закрыто автоматически. Значение -1 означает, что время истечения задаётся в диспетчере уведомлений.

Значение по умолчанию: -1.

Данное свойство транслируется как параметр "expire_timeout" метода Notify.

Методы доступа:

  • qint32 expireTimeout() const
  • void setExpireTimeout(qint32 milliseconds)

Сигнал уведомления:

  • void expireTimeoutChanged()

icon : QString

Иконка уведомления. Значением свойства может быть либо URI, либо абсолютный путь к файлу, либо токен, интерпретируемый объектом Theme.

В качестве альтернативы свойство iconData может использоваться для установки декодированного изображения.

Данное свойство транслируется как значение стандартной подсказки "image-path".

Методы доступа:

  • QString icon() const
  • void setIcon(const QString &icon)

Сигнал уведомления:

  • void iconChanged()

See also iconData.

iconData : QImage

Изображение, которое будет отображаться в уведомлении.

В качестве альтернативы свойство icon может использоваться для установки URI постоянного файла изображения или идентификатора темы для иконки.

Данное свойство транслируется как значение стандартной подсказки "image-data".

Методы доступа:

  • QImage iconData() const
  • void setIconData(const QImage &image)

Сигнал уведомления:

  • void iconDataChanged()

См. также icon.

isTransient : bool

При истинном значении данного свойства уведомление будет временным, оно будет показываться только на короткое время. Временные уведомления передают информацию, имеющую отношение только к отправке уведомления, поэтому они не отображаются в представлении событий.

Данное свойство транслируется как значение стандартной подсказки "transient". Подсказки (hints) — это дополнительные необязательные данные, передаваемые на сервер уведомлений.

Методы доступа:

  • bool isTransient() const
  • void setIsTransient(bool value)

Сигнал уведомления:

  • void isTransientChanged()

itemCount : int

Количество элементов, представляемых в уведомлении. Например, в одном уведомлении может сообщаться о четырёх пропущенных звонках. Для этого значение данного свойства необходимо установить равным 4. Значение по умолчанию: 1.

Данное свойство транслируется как значение расширенной подсказки "x-nemo-item-count". Подсказки (hints) — это дополнительные необязательные данные, передаваемые на сервер уведомлений.

Методы доступа:

  • int itemCount() const
  • void setItemCount(int itemCount)

Сигнал уведомления:

  • void itemCountChanged()

maxContentLines : int

Данное свойство определяет максимальное число строк содержимого, отображаемого в уведомлении. В это число входит строка с краткими сведениями об уведомлении. Если уведомление состоит из одной строки, то тело уведомления не отображается.

Данное свойство транслируется как значение расширенной подсказки "x-nemo-max-content-lines". Подсказки (hints) — это дополнительные необязательные данные, передаваемые на сервер уведомлений.

Методы доступа:

  • int maxContentLines() const
  • void setMaxContentLines(int max)

Сигнал уведомления:

  • void maxContentLinesChanged()

previewBody : QString

Текст тела, показываемый в области предварительного просмотра уведомления.

Если этот параметр не установлен, ему автоматически будет присвоено значение свойства body при публикации уведомления.

Когда свойствам previewSummary или previewBody заданы значения, при публикации уведомления домашний экран создаст для него область предварительного просмотра (при условии, что предварительный просмотр уведомлений не запрещён в диспетчере уведомлений).

Данное свойство транслируется как значение расширенной подсказки "x-nemo-preview-body". Подсказки (hints) — это дополнительные необязательные данные, передаваемые на сервер уведомлений.

Методы доступа:

  • QString previewBody() const
  • void setPreviewBody(const QString &previewBody)

Сигнал уведомления:

  • void previewBodyChanged()

previewSummary : QString

Текст кратких сведений, показываемый в области предварительного просмотра уведомления.

Если этот параметр не установлен, ему автоматически будет присвоено значение свойства summary при публикации уведомления.

Когда свойствам previewSummary или previewBody заданы значения, при публикации уведомления домашний экран создаст для него область предварительного просмотра (при условии, что предварительный просмотр уведомлений не запрещён в диспетчере уведомлений).

Данное свойство транслируется как значение расширенной подсказки "x-nemo-preview-summary". Подсказки (hints) — это дополнительные необязательные данные, передаваемые на сервер уведомлений.

Методы доступа:

  • QString previewSummary() const
  • void setPreviewSummary(const QString &previewSummary)

Сигнал уведомления:

  • void previewSummaryChanged()

progress : QVariant

Свойство содержит прогресс, отображаемый в уведомлении. Значение может быть неопределённым для отсутствия прогресса, Notification::ProgressIndeterminate для неопределённого состояния или действительным значением от 0,0 до 1,0 для представления процента выполнения.

Методы доступа:

  • QVariant progress() const
  • void setProgress(const QVariant &value)
  • void resetProgress()

Сигнал уведомления:

  • void progressChanged()

remoteActions : QVariantList

Список зарегистрированных дистанционных действий, которые могут быть выполнены при получении уведомления.

Дистанционные действия могут представлять собой вызовы команд D-Bus, испускаемые диспетчером уведомлений, когда уведомление активируется пользователем. remoteAction описывает спецификацию дистанционных действий.

Примечание: будет вызвано действие с названием "default" при активации пользователем главного элемента уведомления. Если пользователь активирует группу уведомлений, будет вызвано действие с названием "app" при условии, что данное действие распространяется на всех пользователей группы.

Данное свойство транслируется как параметр "actions" метода Notify и как значение расширенной подсказки "x-nemo-remote-action-<name>". Подсказки (hints) — это дополнительные необязательные данные, передаваемые на сервер уведомлений.

Методы доступа:

  • QVariantList remoteActions() const
  • void setRemoteActions(const QVariantList &remoteActions)

Сигнал уведомления:

  • void remoteActionsChanged()

См. также remoteAction().

replacesId : quint32

Идентификатор, который используется для замены или удаления данного уведомления.

Если уведомление публикуется с ненулевым идентификатором, то оно заменит собой все существующие уведомления с таким идентификатором без какого-либо оповещения пользователя. Идентификатор неопубликованного уведомления равен нулю. Идентификатор автоматически обновляется после сообщения об успешной публикации уведомления диспетчером уведомлений.

Данное свойство транслируется как параметр "replaces_id" метода Notify.

Методы доступа:

  • quint32 replacesId() const
  • void setReplacesId(quint32 id)

Сигнал уведомления:

  • void replacesIdChanged()

sound : QString

Путь к файлу со звуком, который будет воспроизводиться при отображении уведомления.

Данное свойство транслируется как значение стандартной подсказки "sound-file".

Методы доступа:

  • QString sound() const
  • void setSound(const QString &sound)

Сигнал уведомления:

  • void soundChanged()

subText : QString

Дополнительный текст уведомления, если он имеется.

Это может указывать на некоторую краткую вторичную информацию, такую как адрес электронной почты отправителя в случае уведомления о «новом письме».

Данное свойство транслируется как значение расширенной подсказки "x-nemo-sub-text".

Методы доступа:

  • QString subText() const
  • void setSubText(const QString &subText)

Сигнал уведомления:

  • void subTextChanged()

summary : QString

Текст, кратко описывающий уведомление. Это краткое описание должно умещаться в одну строку.

Данное свойство транслируется как параметр "summary" метода Notify.

Методы доступа:

  • QString summary() const
  • void setSummary(const QString &summary)

Сигнал уведомления:

  • void summaryChanged()

timestamp : QDateTime

Отметка времени обычно связывается с событием, к которому относится уведомление, а не со временем создания самого уведомления. Если значение свойства не задано, то отметкой времени уведомления будет время публикации этого уведомления.

Данное свойство транслируется как значение расширенной подсказки "x-nemo-timestamp". Подсказки (hints) — это дополнительные необязательные данные, передаваемые на сервер уведомлений.

Методы доступа:

  • QDateTime timestamp() const
  • void setTimestamp(const QDateTime &timestamp)

Сигнал уведомления:

  • void timestampChanged()

urgency : Urgency

Уровень срочности уведомления.

Уровень срочности интерпретируется диспетчером уведомлений во время публикации. Например, в зависимости от текущей активности пользователя или состояния устройства, диспетчер может показывать или блокировать уведомления. При этом, уведомления с уровнем срочности Critical будут показаны с большей степенью вероятности и с большим приоритетом.

Значение по умолчанию: Notification.Normal.

Данное свойство транслируется как значение стандартной подсказки "urgency". Подсказки (hints) — это дополнительные необязательные данные, передаваемые на сервер уведомлений.

Методы доступа:

  • Urgency urgency() const
  • void setUrgency(Urgency urgency)

Сигнал уведомления:

  • void urgencyChanged()

Описание методов класса

Notification::Notification(QObject *parent = 0)

Конструктор для класса Notification с необязательным родительским элементом, указанном в параметре parent.

[signal] void Notification::actionInvoked(const QString &name)

Испускается, когда пользователь активирует действие уведомления. name указывает имя вызванного действия.

Обработка сигнала actionInvoked имеет смысл только в том случае, когда пользователь активирует уведомление, что может произойти спустя достаточно продолжительное время после публикации уведомления.

[signal] void Notification::clicked()

Испускается, когда пользователь активирует уведомление.

Обработка сигнала clicked имеет смысл только в том случае, когда пользователь активирует уведомление, что может произойти спустя достаточно продолжительное время после публикации уведомления. Более продвинутым решением будет зарегистрировать дистанционное действие в диспетчере уведомлений с тем, чтобы можно было вызвать обработчик запроса.

См. также remoteActions().

void Notification::close()

Закрывает уведомление с идентификатором replacesId.

[signal] void Notification::closed(uint reason)

Испускается после того, как диспетчер уведомлений считает уведомление закрытым. Параметр reason принимает значения, описанные в перечислении Notification::CloseReason.

QVariant Notification::hintValue(const QString &hint) const

Возвращает значение подсказки (дополнительные необязательные данные, передаваемые на сервер уведомлений) по имени, передаваемом в параметре hint.

См. также setHintValue().

[static] QList<QObject *> Notification::notifications()

Возвращает список существующих уведомлений, у которых значение подсказки 'x-nemo-owner' соответствует имени запущенного процесса.

Для всех уведомлений, созданных вызовом метода publish() значение подсказки 'x-nemo-owner' устанавливается равным имени запущенного процесса (при условии, что значение этой подсказки еще не задано). Таким образом с помощью данного метода можно находить сгенерированные уведомления.

Объекты в возвращаемом списке являются экземплярами класса Notification. Вызывающая процедура становится владельцем этих объектов и должна их удалить, если они больше не нужны.

[static] QList<QObject *> Notification::notifications(const QString &owner)

Возвращает список существующих уведомлений, у которых значение подсказки 'x-nemo-owner' соответствует значению параметра owner.

Объекты в возвращаемом списке являются экземплярами класса Notification. Вызывающая процедура становится владельцем этих объектов и должна их удалить, если они больше не нужны.

[static] QList<QObject *> Notification::notificationsByCategory(const QString &category)

Возвращает список существующих уведомлений, у которых значение подсказки 'category' соответствует значению параметра category. Для вызывающей процедуры требуются привилегированные права доступа.

Объекты в возвращаемом списке являются экземплярами класса Notification. Вызывающая процедура становится владельцем этих объектов и должна их удалить, если они больше не нужны.

void Notification::publish()

Публикует текущее состояние уведомления в диспетчере уведомлений.

Если значением свойства replacesId является 0, будет создано новое уведомление, а значение свойства replacesId будет обновлено этим идентификатором. В противном случае будет обновлено существующее уведомление с заданным идентификатором.

[static] QVariant Notification::remoteAction(const QString &name, const QString &displayName, const QString &service = QString(), const QString &path = QString(), const QString &iface = QString(), const QString &method = QString(), const QVariantList &arguments = QVariantList())

Вспомогательный метод, формирующий объект дистанционного действия, которое может быть вызвано через D-Bus.

Если service, path, iface, method и опционально arguments установлены, действие может вызвать обратный вызов D-Bus при активации пользователем.

  • name: имя действия. "default" для всей иконки уведомления. Если он пуст, будет сгенерировано имя.
  • displayName: название действия, которое будет показано пользователю. Может не отображаться для "default", и в этом случае он может быть пустым.
  • service: имя службы D-Bus, которая будет вызвана.
  • path: путь к объекту, который будет вызван через D-Bus.
  • iface: интерфейс, который будет вызван через D-Bus.
  • method: метод интерфейса, который будет вызван через D-Bus.
  • arguments: необязательные аргументы, передаваемые в метод, который будет вызван через D-Bus.

void Notification::setHintValue(const QString &hint, const QVariant &value)

Задаёт значение value подсказке hint.

См. также hintValue().

Мы используем cookies для персонализации сайта и его более удобного использования. Вы можете запретить cookies в настройках браузера.

Пожалуйста ознакомьтесь с политикой использования cookies.