<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Jan 6, 2016 at 6:29 PM, Marco Martin <span dir="ltr"><<a href="mailto:notmart@gmail.com" target="_blank">notmart@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span class="">On Wednesday 06 January 2016, Dirk Hohndel wrote:<br>
> I'm sure this email will mostly just expose my ignorance - but I'm OK with<br>
> that :-)   --   I asked on IRC but I think no one was around who knew.<br>
><br>
> I want to be able to change the content of the context menu, depending on,<br>
> err, context. Seems like a reasonable thing to want to do. So I'm sure<br>
> there must be an easy way to do this. But that's where I'm getting stuck.<br>
<br>
</span>I had a particular use case in mind when i designed its api, so perhaps yours<br>
is slightly different.. exactly what would define the "context" you're in in<br>
subsurface?<br>
<br>
the contextual actions list at the moment is done by page, ie every page (in<br>
subsurface the dives list would be one, dives details would be another)<br>
<br>
so each page would have a different:<br>
<br>
Page {<br>
    contextualActions: [<br>
        Controls.Action {<br>
            text:"Action 1"<br>
            onTriggered: print("Action 1 clicked")<br>
        },<br>
        Controls.Action {<br>
            text:"Action 2"<br>
            iconName: "folder"<br>
        }<br>
    ]<br>
<br>
would this be good for your use case or you need something different?<br>
<br>
If what you need is something different, you can go in your application main<br>
qml file at the declaration of ContextDrawer<br>
<br>
contextDrawer: MobileComponents.ContextDrawer {<br>
      id: contextDrawer<br>
      actions: [<br>
          Controls.Action {<br>
                   text: "action 1"<br>
           },<br>
         Controls.Action {<br>
                   text: "action 2"<br>
           },<br>
         ......<br>
      ]<br>
}<br>
<br>
that would override the "actions-per-page" behavior.<br>
<br>
Lists defined this way in qml can't have elements dinamically added or<br>
removed, but also because of that it should also support either arrays of<br>
actions built in javascript, or if you need particular flexibility, a<br>
QLists<QAction *> arriving from the C++ part.. I have the suspicion that in<br>
this particular case it *may* be the most immediate way?<br></blockquote><div><br><br></div><div>We need a menu that will change its contents based on whats being displayed on the main part of the application.<br><br></div><div>Something like:<br><br>contextDrawer: MobileComponents.ContextDrawer {<br>
      id: contextDrawer<br>
      actions: mainDisplay.currentActions<br>}<br><br></div><div><br></div><div> <br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<span class=""><font color="#888888"><br>
--<br>
Marco Martin<br>
</font></span><div class=""><div class="h5">_______________________________________________<br>
Plasma-devel mailing list<br>
<a href="mailto:Plasma-devel@kde.org">Plasma-devel@kde.org</a><br>
<a href="https://mail.kde.org/mailman/listinfo/plasma-devel" rel="noreferrer" target="_blank">https://mail.kde.org/mailman/listinfo/plasma-devel</a><br>
</div></div></blockquote></div><br></div></div>