Sugar Components: Difference between revisions

From OLPC
Jump to navigation Jump to search
m (typos)
Line 13: Line 13:


==Sugar's View Module==
==Sugar's View Module==

This thing's python path is sugar.view
It includes:
* ActivityHost
* BuddyIcon
* BuddyMenu
* FirstTimeDialog
* OverlayWindow
* Shell
* clipboardicon
* clipboardmenu
* stylsheet


==Sugar's Shell Module==
==Sugar's Shell Module==

Revision as of 15:04, 27 February 2007

Sugar Components

This is a continuation of Understanding sugar code. Here, we are in the middle of walking through a sugar shell initialization to see all of the packages and utilities used in the sugar environment. Previously, we saw how Fedora is set up to launch sugar within a python context. Sugar had python launch Matchbox as an X windows environment, and DBUS as an interprocess messaging bus. After importing serveral python libraries (sys, os, gtk, & gobject), and some sugar environment libraries (env, logger, profile, & TracebackUtils), sugar is now going to continue setting up by importing special core python libraries and instantiating various classes and routines... Let's see what happens:

Sugar Module Imports

The sugar-shell has already imported python and sugar environment modules, but now, sugar starts to import Component Modules:

>>> from view.FirstTimeDialog import FirstTimeDialog
>>> from view.Shell import Shell
>>> from model.ShellModel import ShellModel

This looks a good bit like a Model, View, Controller design pattern.

Sugar's View Module

This thing's python path is sugar.view It includes:

  • ActivityHost
  • BuddyIcon
  • BuddyMenu
  • FirstTimeDialog
  • OverlayWindow
  • Shell
  • clipboardicon
  • clipboardmenu
  • stylsheet

Sugar's Shell Module

Sugar's Model Module