QML-тип Remorse

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

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

Методы

  • itemAction(Item parent, string text, object action, int timeout)
  • popupAction(Page parent, string text, object action, int timeout)

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

Объект-одиночка типа Remorse позволяет отсрочить разрушающее действие (удаление) на некоторое время. Если коснуться специальной области отмены (remorse prompt) до истечения этого времени, действие будет отменено.

При вызове метода itemAction() в него передается родительский элемент типа Item. При этом область отмены с таймером обратного отсчета создается как элемент типа RemorseItem, который заполняет границы элемента родительского элемента.

При вызове метода popupAction() в него передается родительский элемент страницы типа Page. При этом область отмены с таймером обратного отсчета создается как элемент типа RemorsePopup, который отображается в верхней части указанной родительской страницы.

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

 import QtQuick 2.2
 import Sailfish.Silica 1.0

 Page {
     id: 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
             }

             onClicked: {
                 var idx = index
                 Remorse.itemAction(myDelegate, "Deleting", function() { listModel.remove(idx) })
             }
         }

         PullDownMenu {
             MenuItem {
                 text: "Clear"
                 onClicked: Remorse.popupAction(page, "Clearing", function() { listModel.clear() })
             }
         }
     }
 }

См. также RemorseItem и RemorsePopup.

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

itemAction(Item parent,  string text,  object action,  int timeout)

Отображает объект типа RemorseItem на месте элемента parent с заданным текстом text.

По истечении времени timeout будет вызвана функция, переданная в параметр action.

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

См. также RemorseItem.

popupAction(Page parent,  string text,  object action,  int timeout)

Отображает объект типа RemorsePopup в верхней части страницы parent с заданным текстом text.

По истечении времени timeout будет вызвана функция, переданная в параметр action.

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

См. также RemorsePopup.