QML-тип RemorsePopup

Ненадолго показывает всплывающий элемент, нажатием на который можно отменить разрушающее действие (удаление). Подробнее...

Строка импорта: import Sailfish.Silica 1.0
Наследуется от: BackgroundItem

Свойства

Сигналы

Методы

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

Тип RemorsePopup реализует элемент, который позволяет отсрочить разрушающее действие (удаление) на некоторое время. Если коснуться элемента RemorsePopup до истечения этого времени, действие будет отменено.

При вызове метода execute() создается область отмены RemorsePopup с таймером обратного отсчета. Эта область отображается в верхней части своего родительского элемента.

В примере ниже продемонстрировано использование RemorsePopup, который очищает весь список при выборе пункта меню из вытягивающегося меню:

 import QtQuick 2.2
 import Sailfish.Silica 1.0

 Page {
     SilicaListView {
         anchors.fill: parent
         model: ListModel {
             id: listModel
             Component.onCompleted: {
                 for (var i=0; i<10; i++) {
                     append({"name": "Item " + i})
                 }
             }
         }

         delegate: BackgroundItem {
             id: myDelegate
             width: ListView.view.width

             Label {
                 text: model.name
                 anchors.centerIn: parent
             }
         }

         RemorsePopup { id: remorse }

         PullDownMenu {
             MenuItem {
                 text: "Clear"
                 onClicked: remorse.execute("Clearing", function() { listModel.clear() } )
             }
         }
     }
 }

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

См. также Remorse::popupAction() и RemorseItem.

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

[read-only] active : bool

Возвращает true, если в настоящий момент работает таймер обратного отсчета.

leftMargin : real

Отступ между левым и правым краями элемента RemorsePopup и его содержимым. Значение по умолчанию: Theme.horizontalPageMargin.

rightMargin : real

Отступ между левым и правым краями элемента RemorsePopup и его содержимым. Значение по умолчанию: Theme.horizontalPageMargin.

text : string

Содержит описание действия, которое может быть отменено в течение времени обратного отсчета.

Обычно текст данного свойства указывается при вызове метода execute().

Описание сигналов

onCanceled()

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

onTriggered()

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

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

cancel()

Отменяет таймер обратного отсчета RemorsePopup без выполнения действия.

execute(string text,  object callback,  int timeout)

Отображает объект типа RemorsePopup с указанным текстом text.

По истечении времени timeout будет вызвана функция, переданная в параметр callback. Если callback-функция не предоставляется, то вместо для выполнения действия нее может использоваться обработчик onTriggered.

Параметр timeout является необязательным. Если значение явно не указано, то по умолчанию используется 5000 миллисекунд.

trigger()

Запускает выполнение действия RemorsePopup.