Sugar Architecture/API: Difference between revisions
Jump to navigation
Jump to search
m (typos) |
m (Fixed HippoCanvas link) |
||
Line 22: | Line 22: | ||
<td style="border: 1px #666 solid; padding: inherit;">[[Presence_Service_DBus_API|D-Bus]]</td> |
<td style="border: 1px #666 solid; padding: inherit;">[[Presence_Service_DBus_API|D-Bus]]</td> |
||
<td style="border: 1px #666 solid; padding: inherit;">[[evince]]</td> |
<td style="border: 1px #666 solid; padding: inherit;">[[evince]]</td> |
||
<td style="border: 1px #666 solid; padding: inherit;">[[ |
<td style="border: 1px #666 solid; padding: inherit;">[[HippoCanvas]]</td> |
||
<td colspan="10" style="background-color: #f5f5f5;"></td> |
<td colspan="10" style="background-color: #f5f5f5;"></td> |
||
</tr> |
</tr> |
Revision as of 18:28, 12 March 2007
Table of Contents | |||||||||||||||||
API Introduction | |||||||||||||||||
Third Party Packages | GTK | AbiWord | Avahi | Cairo | D-Bus | evince | HippoCanvas | ||||||||||
Sugar Packs | Library Packages | Shell Packages | Services Package | Activity APIs |
Sugar is written in Python with a variety of open source packages. Programming in the Sugar environment requires a basic understanding of both the Sugar User Interface, supporting third-party packages, and built-in Sugar packages.
Traditional software packages are built against Application Programming Interfaces. Sugar runs Activities instead of applications, but from a developer's point of view, it's the same thing.
Third Party Packages
- Avahi - Network Discovery Service
- Matchbox - Graphical Windows Manager
- Xul - XML User Interface Language (aka gecko and other identity challenged projects)
- Pango - GTK package for text rendering
- ATK - GNOME Accessibility Toolkit
- gstreamer - media player
- X Window System - the tried-and-true ancient X11 display libraries
Sugar Packs
Sugar Library Packages
Many Sugar Library packages reside in /usr/lib/python*/site-packages/sugar
Modules:
- TracebackUtils
- emulator
- env
- logger
- profile
- simulator
- util
Subpackages:
Package sugar.shell
Most of the Human Interface is implemented in the sugar shell packages located in /usr/share/sugar/shell
Modules:
Subpackages:
Package sugar.services
Various services are provided in /usr/share/sugar/services
Modules: none
Subpackages:
- sugar.services.clipboard
- sugar.services.console
- sugar.services.datastore
- sugar.services.nm
- sugar.services.presence