This patch introduces the "argv" property to CcPanel. Panels that
wish to handle extra arguments shall override it and act
appropriately in the constructor.
https://bugzilla.gnome.org/show_bug.cgi?id=657093
Seeing as people were putting all kind of junk in it,
instead of being sensible, let's close the doors on
external panels.
If you work-around this in any way, you better have a
very good reason to, such as wanting to deny yourself
any support from the upstream gnome-control-center developers,
or wanting ridicule for your poor judgement in UI and code design.
Remove properties that are not used or not useful.
The "id" property is implemented by the desktop entry
X-GNOME-Settings-Panel value and the extension point implementation name.
The "display-name" property is not used because the Name value from the
desktop entry file is read instead.
The "active" property is no longer needed, since the objects are not kept
alive when the panel is inactive.
libcommon.la defines several new GTypes, so it cannot be loaded into the
same process multiple times.
Copy gconf-property-editor to libgnome-control-center as this is useful
for all panels. However, it will need to be converted to GSettings in the
near future.
Copy capplet-stock-icons to the mouse panel, as it is not used in any other
panels.
Remove references to functions not yet implemented for panels (help,
window icon, etc).
The extension point name is used to identify modules that implement
new settings panels using CcPanel.
Also add various libtool flags that will be good practice for new panels.
CcShell is an abstract class that represents an instance of a control
center shell. It provides access to some of the properties of the shell
that panels will need to read or change. When a panel is created it has an
instance of CcShell available that represents the current shell.
CcPanel is an abstract class used to implement panels for the shell. A
panel contains a collection of related settings that are displayed within
the shell window.