Add submenu example for QML Menu
Signed-off-by: Juraj Oravec <jurajoravec@mailo.com>
This commit is contained in:
parent
b153fae27a
commit
5f2a9cbd8b
@ -9,6 +9,8 @@ increment the badge counter when menu entry is selected.
|
|||||||
|
|
||||||
## Create entry in context menu
|
## Create entry in context menu
|
||||||
|
|
||||||
|
### Directly add actions to the menu
|
||||||
|
|
||||||
```qml
|
```qml
|
||||||
populateWebViewMenu: function(menu, webHitTestResult) {
|
populateWebViewMenu: function(menu, webHitTestResult) {
|
||||||
// Create a menu entry
|
// Create a menu entry
|
||||||
@ -24,6 +26,28 @@ populateWebViewMenu: function(menu, webHitTestResult) {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### Create a submenu
|
||||||
|
|
||||||
|
```qml
|
||||||
|
populateWebViewMenu: function(menu, webHitTestResult) {
|
||||||
|
var subMenu = menu.addMenu({
|
||||||
|
title: 'Example submenu',
|
||||||
|
ivon: 'falkon'
|
||||||
|
})
|
||||||
|
// Create a menu entry
|
||||||
|
var action = subMenu.addAction({
|
||||||
|
text: 'Action',
|
||||||
|
icon: 'falkon'
|
||||||
|
})
|
||||||
|
|
||||||
|
// Bind some function to it
|
||||||
|
action.triggered.connect(function() {
|
||||||
|
// Do something
|
||||||
|
})
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
### Argument: menu
|
### Argument: menu
|
||||||
Menu to which the action will be added.
|
Menu to which the action will be added.
|
||||||
The submenu can also be created, might be added later. For now just go
|
The submenu can also be created, might be added later. For now just go
|
||||||
|
@ -41,6 +41,7 @@ Falkon.PluginInterface {
|
|||||||
}
|
}
|
||||||
|
|
||||||
populateWebViewMenu: function(menu, webHitTestResult) {
|
populateWebViewMenu: function(menu, webHitTestResult) {
|
||||||
|
/* Directly add actions to the menu */
|
||||||
var action_always = menu.addAction({
|
var action_always = menu.addAction({
|
||||||
text: 'Increment counter by one',
|
text: 'Increment counter by one',
|
||||||
icon: 'falkon'
|
icon: 'falkon'
|
||||||
@ -63,6 +64,40 @@ Falkon.PluginInterface {
|
|||||||
console.log(i18n('"Tutorial4" clickCount increased to ' + tutorial3Object.clickCount))
|
console.log(i18n('"Tutorial4" clickCount increased to ' + tutorial3Object.clickCount))
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Add a separator between these 2 examples */
|
||||||
|
menu.addSeparator()
|
||||||
|
|
||||||
|
/* Create a submenu */
|
||||||
|
var subMenu = menu.addMenu({
|
||||||
|
title: 'Example submenu',
|
||||||
|
icon: 'falkon'
|
||||||
|
})
|
||||||
|
|
||||||
|
/* Copy the actions from before */
|
||||||
|
var sm_action_always = subMenu.addAction({
|
||||||
|
text: 'Increment counter by one',
|
||||||
|
icon: 'falkon'
|
||||||
|
})
|
||||||
|
|
||||||
|
sm_action_always.triggered.connect(function() {
|
||||||
|
tutorial3Object.clickCount++;
|
||||||
|
console.log(i18n('"Tutorial4" clickCount increased to ' + tutorial3Object.clickCount))
|
||||||
|
})
|
||||||
|
|
||||||
|
if (webHitTestResult.isImage()) {
|
||||||
|
var sm_action_image = subMenu.addAction({
|
||||||
|
text: 'Image, increment by two',
|
||||||
|
icon: 'falkon'
|
||||||
|
})
|
||||||
|
|
||||||
|
sm_action_image.triggered.connect(function() {
|
||||||
|
tutorial3Object.clickCount += 2;
|
||||||
|
console.log(i18n('"Tutorial4" Surprise, this is an image with url: ' + webHitTestResult.imageUrl))
|
||||||
|
console.log(i18n('"Tutorial4" clickCount increased to ' + tutorial3Object.clickCount))
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user