Activity Team/Control Panel

From Sugar Labs
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

There are several things to keep in mind when adding a new section to the Sugar Control panel.

  • Add you code to sugar/extensions/cpsection in a subdirectory specific to your section
  • Make sure to add your new section to sugar/extensions/cpsection/Makefile.am
  • Make sure to add your new section to sugar/configure.ac
  • Put the icon for your section in sugar/data/icons
  • Make sure to add your icon to sugar/data/icons/Makefile.am

Your section subdirectory should contain a minimum of four files:

  • Makefile.am
  • __init__.py
  • view.py
  • model.py

__init__.py should contain CLASS, ICON, TITLE, and KEYWORDS

   CLASS = 'Touchpad'
   ICON = 'module-touchpad'
   TITLE = _('Touchpad')
   KEYWORDS = ['touchpad']

If you want to make the appearance of section conditional, for example, for a specific hardware architecture, then simply add a conditional as per:

if path.exists('/sys/devices/platform/i8042/serio1/ptmode'):
   CLASS = 'Touchpad'
   ICON = 'module-touchpad'
   TITLE = _('Touchpad')
   KEYWORDS = ['touchpad']

In the above example, the path only exists for OLPC XO-1 CL1 hardware, which is the only hardware for which this particular section is relevant.