GNOME Bugzilla – Bug 89778
Wrap panel API for gnomemm
Last modified: 2004-12-22 21:47:04 UTC
Gergo Erdi said: > I've looked at the GNOME2 panel applet API and it (thankfully) seems to > totally hide the underlying Bonobo stuff, so anyone could wrap it simply > by looking at an existing GNOMEmm wrapper and setting things up using that > as a template If the API hasn't changed much then you might find the original panelmm helpful too.
I just looked at the Hello World example in gnome-panel/doc/reference/panel-applet/html/applet-writing.html#HELLO-WORLD (I don't think it's online anywhere). It does seem to be very Bonobo-based. I thought Gergo said that it hadn't changed much, or that Bonobo wasn't needed? Did I misremember or misunderstand? It's also not clear to me what needs to be wrapped apart from that making the function use C++ types. But I haven't looked at the old panelmm yet.
Well, I didn't exactly research this throughoutly, I just looked at panel-applet.h, adn what I saw was a simple GtkEventBox subclass with some special methods to set up the context menu, but said special methods look a lot like the GNOME 1 ones.
orbitcpp and libbonobo*mm are now used by gnomemm, so this should now be possible.
I am looking at the new panel API and the old panelmm to see what must be done. From what I was able to find out the panel API hides the bonobo stuff must several things have changed. The files for registering the panel applet are different. The old desktop file is now deprecated. The new format is a xml based file. The applets don't use a main (). It is provided by a set of macros that depend on the way the applet is going to run. If in-server or out-server.
Have you made any more progress?
Hello?
Sorry for being quiet all this time. In january I've moved from Portugal to Switzerland to work at CERN. My workstation is a CERN Linux (based on Red-Hat 7.3) and until a few weeks ago I was only allowed to run Gnome 1.4 on it. :(( Now I am running Ximian Gnome, but I still need to install the latest gcc and the gtkmm stuff before trying to do anything.
Sounds good. It's great to know you'll be back with us soon.
Bryan Forbes has checked some mostly-working stuff into gnomemm/libpanelappletmm.