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

ContextMenu

Обеспечивает функциональность контекстного меню при длительном нажатии. Подробнее…

Подключение: #include <contextmenu.h>

Диаграмма наследования для Aurora::WebView::Extensions::ContextMenu:

Сигналы

void showMenuRequested ()
void dismissMenuRequested ()
void executeCustomCommandRequested (int commandId)

Сигналы, унаследованные от Aurora::WebView::WebViewExtension

void webViewChanged (WebViewItem *oldItem, WebViewItem *newItem)
Сигнализирует об изменении родительского элемента QuickItem. Подробнее...

Публичные функции-члены

ContextMenu (QQuickItem *parentWebView=Q_NULLPTR)
int x () const
int y () const
ContextMenuParams params () const
Q_INVOKABLE void execute (int commandId)
Вызывается для выполнения команды. Подробнее…
Q_INVOKABLE void cancel ()
Вызывается, чтобы отключить контекстное меню (ни одна команда не будет выполнена).

Публичные функции, унаследованные от Aurora::WebView::WebViewExtension

WebViewExtension (QQuickItem *parent=Q_NULLPTR)

Свойства

int x
x координата меню.
int y
y координата меню.
ContextMenuParams params

Дополнительные наследуемые члены

Защищённые функции-члены, наследованные от Aurora::WebView::WebViewExtension

void syncEnabled (Cef::BrowserExtension *libExtension)

Защищённые атрибуты, унаследованные от Aurora::WebView::WebViewExtension

WebViewItem * m_webView

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

Обеспечивает функциональность контекстного меню при длительном нажатии.

Его необходимо объявить в QML-компоненте WebView, чтобы добавить поддержку контекстного меню и обрабатывать его события.

Пример использования компонента в базовом виде:

import QtQuick 2.0
import Sailfish.Silica 1.0
import ru.auroraos.WebView 1.0
import ru.auroraos.WebView.Global 1.0
import Aurora.Controls 1.0

Page {
    objectName: "contextMenuPage"

    PageHeader {
        id: pageHeader

        objectName: "pageHeader"
        title: qsTr("ContextMenu")
    }

    Item {
        anchors.fill: parent

        WebView {
            id: webview

            // Команды перечислены в MenuId
            // Все определяемые пользователем идентификаторы меню должны находиться между 27000 и 28500
            readonly property int customCommand: 27000

            anchors.fill: parent

            // Страница c контентом
            url: htmlRootPath + "/html/ContextMenuComponent.html"

            // Доступ к касаниям
            TouchInput {
                enabled: true
            }

            // Доступ к выделению текста
            TextSelection{
                enabled: true
            }

            // Контекстное меню должно находиться внутри webView для обработки полученных сигналов
            ContextMenu {
                id: contextMenu

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

                // Пункт контестного меню для кастомной обработки
                PopupMenuItem {
                    onClicked: {
                        contextMenu.execute(webview.customCommand)
                    }

                    text: qsTrId("Кастомная команда")
                    visible: enabled
                }

                onShowMenuRequested: {
                    // ContextMenuParams
                    console.log(params)
                }

                onExecuteCustomCommandRequested: {
                    if (commandId === webview.customCommand) {
                        // Кастомная обработка
                        console.log("Кастомная команда!")
                    }
                }
            }
        }
    }
}

Описание функций-членов

execute()

Q_INVOKABLE void Aurora::WebView::Extensions::ContextMenu::execute (int commandId)

Вызывается для выполнения команды.

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

Параметры

commandId Команда для выполнения (см. ContextMenuParams::availableActions).

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

params

ContextMenuParams Aurora::WebView::Extensions::ContextMenu::params read

См. также ContextMenuParams

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

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