libplasma2: split anything
Marco Martin
notmart at gmail.com
Tue Jun 28 22:42:35 CEST 2011
On Mon, Jun 27, 2011 at 12:02 PM, Aaron J. Seigo <aseigo at kde.org> wrote:
> On Sunday, June 26, 2011 19:25:08 Marco Martin wrote:
>> now, when we do loadApplet it would be loaded this new thing, and the trick
>> unfortunately is just moved on how to selectively create a qml object tree
>> (and eventually load a c++ plugin on a Plasmoid* subclass) OR load instead
>> the old plugin of Applet* implementation
>
> when the plugin is loaded, the reulsting object should be a subclass of the
> new Applet, which would be either a QML item or a QGraphicsItem.
i don't think the Applet* should be a qml item in the sense of
something declared as
Applet {
id: myprettyplasmod
Rectangle {...
}
because then would be impossible to avoid something like
Applet {
Applet{}
}
so should be more an object registered in that context after (like
plasmoid in js)
> for a QGraphicsView based shell, it shouldn't really care, as i understand it.
> both can be popped onto the scene.
provided he qml bindings and sriptengines stays 100% as is.. not !00% sure...
> for a QML-only shell, it will just need to discard any QGraphicsItem entries.
> it can also filter on the X-Plasma-API entry.
yep
> i suppose the Big Question then becomes: will we support QML applets written
> in C++ (which then export their QML root time via some API)? if so then we'll
> probably end up needing to add X-Plasma-API= entries to even the C++ widgets
> that are implemented in QML, and a special api name for it, e.g.
> C++Declarative that Applet can treat as "regular C++". then the C++ QML Applet
> subclass would need a virtual method by which to return the root item, which
> seems a bit messy. thoughts?
i think that should be worth it...
also because the current method with Plasma::DeclarativeWidget
wouldn't work anymore since there wouldn't be any qgraphicsitem to use
as parent ;)
i would like to have available a way to do qml applets with a c++ part
as well the other bindings python, ruby, whatever
maybe the difference between qml only and qml/c++ is plasmoid being a
wrapper vs direct access to the applet pointer
Cheers,
Marco Martin
More information about the Plasma-devel
mailing list