Wrapping the panel
Nick Schermer
nickschermer at gmail.com
Mon Sep 7 23:50:08 CEST 2009
2009/9/7 Bo Lorentsen <bl at lue.dk>:
> Nick Schermer wrote:
>>
>> XfceInternalPanelPlugin is an object that implements the
>> XfcePanelPlugin interface, with a GtkEvenBox as parent
>> type.XfceExternalPanelPlugin the same but with a GtkPlug as parent
>> type. XfcePanelPlugin (the iface) also implements a base for the
>> signals and properties.
>>
>
> Hmm, the XfcePanelPlugin don't seem like a interface to me, and technically
> a pure interface can't have signals nor properties.
Yes i can have that, using a base.
>>
>> Both the internal and external plugins also implement the
>> XfcePanelItem interface, which is the communication between the panel
>> and plugin (XfcePanelPlugin interface the users' side of the
>> implementation).
>>
>
> Ok, this XfcePanelItemInterface is new to the 4.8 version of the panel ?
No, 4.6. In 4.8 it's called the XfcePanelPluginProvider iface, but you
don't have to do anything with those since they are not public api.
> Are there any working doc. on the internal of this new panel ?
Me? Docs? Think twice ;-).
> So to me we need something like this (internal and external may disappear in
> 4.8 ?)
4.8 looks like this (compiled as a library):
GtkEventBox
XfcePanelPlugin
UserPlugin
Internal/external is defined in the .deskop file of the plugin. If the
plugin is external the panel will start the plugin in a wrapper
application which is a GtkPlug with dbus communication to the panel.
> It seems to me that you broke a few GTK+ roles too :-)
Everything is legal and implemented as it should be (tm), just a bit
more complicated then it will be in 4.8.
Nick
More information about the Xfce4-dev
mailing list