Wrapping the panel

Bo Lorentsen bl at lue.dk
Sun Sep 6 20:25:26 CEST 2009


Hi ...

I have been trying to find a good way to approach the wrapping of C++ 
panel plugins, and I  am sorry to say that I am a bit lost.

In the documentation, the XfcePanelPlugin are shown as a GInterface, but 
in the the header files we really got two types.

1. XfcePanelPlugin
2. XfcePanelPluginInterface

This makes sense, as we in principle can't make properties nor signals 
on a interface, but only on a GObject.

I tried to find the definition of the XfcePanelPlugin (or the 
_XfcePanelPlugin), but I really don't see any definition of this, and to 
my knowlege it need to be some kind of GObejct.
Neather _XfceExternalPanelPlugin or _XfceInternalPanelPlugin enherit 
from XfcePanelPlugin, that by the way is an empty structure and NOT an 
GObject.

Are there any reason for the apparent misleading documentation, or am I 
misunderstanding anything (again) ?

As far as I can see, C++ enherit model is hard to apply due to the 
internal creations of the panel plugins in the 
"xfce_XX_panel_plugin_new" functions, and the only thing one really can 
wrap is the interface, but this really don't help that mush either.

So I can's specialize a plugin by enheritment, and I can't control the 
creation of the plugin object. Any idea to how this can be done in a 
usefull way ?

Hope this makes any sense ...

Regards

/BL



More information about the Xfce4-dev mailing list