Project overview, implemented features and external dependecies
Gtk+2 panel is a bleeding edge panel heavily relying on the gtk+2 stack.
This project adopted the NRSI principle (No Rocket Science Involved): this means gtk2panel does not add anything new to the software panorama but instead tries to reuse whatever the gtk world can offer. Anyway all the dependencies, apart from Gtk+2, are (and hopefully will be) optionals.
The design of this project is quite well structured. It is composed of three distinct parts:
|
libgpwidgets |
A shared library containing all the GtkWidget that can be accessed to build a decent panel. Depending on the presence of the optional dependencies, some widget could be or not included in the library. In any case, the resulting library can be easily used outside this project: using this library is exactly like using gtk+ itsself. |
|
libgpsystem |
A library abstracting the OS resources needed by libgpwidgets, such as the volume or the CPU state. This is (or, better, will be) the place where all the OS dependent code will go. Actually, it is not used at all: libgpwidgets is hardcoding a linux implementation. |
|
gtk2panel |
This is the panel frontend. It is basically a program that inspects a GtkBuilder file, looking for any GpwPanel widget and showing them. After this, it starts a Gtk+ loop and that's all: job terminated. It has a command line option to change the default GtkBuilder file to load and the possibility to merge a custom RC file but its logic is really trivial: the resulting gtk2panel binary is less than 10Kb. |
Being a bare panel, gtk2panel supports:
The documentation of the latest release can be browsed online at the gtk2panel home page.
The preferred method to ask questions (or give help) is throught our mailing list. Alternatively, if your issue fits better, you can submit your requests to the official tracker.
Gtk+2 panel overviewwas last modified by gtk-doc on Wed 24 Mar 2010 07:42:39 PM CET