Invocação de função no QML?
Eu posso compartilhar um item facilmente usando um InvokeActionItem em uma página, mas eu preciso ser capaz de chamá-lo em um item de lista. Consegui acionar uma chamada, mas não consigo descobrir como adicionar dados ao acioná-la. Eu continuo recebendo uma mensagem de erro de
InvocationPrivate :: setQuery: você não tem permissão para alterar o objeto InvokeQuery
Nota: Eu estou tentando fazer isso em puramente QML, eu vou fazê-lo via c ++ se necessário, mas QML seria preferível.
Código que funciona dentro de um objeto Page:
actions: [
InvokeActionItem {
ActionBar.placement: ActionBarPlacement.OnBar
title: "Share"
query {
mimeType: "text/plain"
invokeActionId: "bb.action.SHARE"
}
onTriggered: {
//myTextProperty is a string variable property for the page.
data = myTextProperty;
}
}
]
O código que tentei usar no outro item é o seguinte, mas não funciona:
Container {
gestureHandlers: [
TapHandler {
LongPressHandler {
onLongPressed: {
console.log("Longpress");
invokeQuery.setData("test");
invokeShare.trigger("bb.action.SHARE");
}
}
]
attachedObjects: [
Invocation {
id: invokeShare
query: InvokeQuery {
id:invokeQuery
mimeType: "text/plain"
}
}
]
}
Existe uma maneira de alterar os dados para uma chamada puramente com QML ou eu preciso apenas executá-lo através de c ++ em vez disso?