Difference between revisions of "Activity Team/Compatibility Tips"

From Sugar Labs
Jump to navigation Jump to search
Line 13: Line 13:
  
 
  try:
 
  try:
     path = os.path.join(activity.get_activity_root(), "instance")
+
     path = activity.get_activity_root()
 
  except:
 
  except:
 
     # early versions of Sugar (656) didn't support get_activity_root()
 
     # early versions of Sugar (656) didn't support get_activity_root()

Revision as of 19:14, 4 February 2009

Compatibility Tips

SUGAR_BUNDLE_VERSION

Some earlier OLPC builds (e.g., 703) do not have a bundle version environment variable, so you need to catch an exception if you want to access the version.

try:
    version = os.environ['SUGAR_BUNDLE_VERSION']
except:
    version = "unknown"

get_activity_root()

Some earlier OLPC builds (e.g., 656) do not have activity.get_activity_root(), so you need to catch an exception if you want to access the version.

try:
    path = activity.get_activity_root()
except:
    # early versions of Sugar (656) didn't support get_activity_root()
    path = "/home/olpc/.sugar/default/org.sugarlabs.[your activity name]"

Screen size

The screen size varies on different hardware platforms. If you develop in an emulator, it is worthwhile trying different sizes to make sure your activity scales properly.

Some useful utilities:

width = gtk.gdk.screen_width()
height = gtk.gdk.screen_height()
toolbox = activity.ActivityToolbox(self)
toolboxheight = toolbox._activity_toolbar.size_request()[1]