Sugar-api-doc: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
(15 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
[http://wiki.laptop.org/go/Sugar_Almanac This page has been moved to a new location] |
|||
= How do I get additional help beyond this almanac? = |
|||
* Looking to get started with the basics of sugar development? Check out Christoph Derndorfer's [http://www.olpcaustria.org/mediawiki/index.php/Activity_handbook Activity Handbook]. |
|||
Now, on to the actual almanac ... |
|||
= Package: sugar.activity = |
|||
* [[sugar.activity.activity]] |
|||
= Package: sugar.graphics = |
|||
* [[sugar.graphics.toolbutton]] |
|||
* [[sugar.graphics.toolbox]] |
|||
= Package: sugar.datastore = |
|||
* [[sugar.datastore.datastore]] |
|||
= MISCELLANEOUS = |
|||
The tasks below are random useful techniques that have come up as I write code and documentation for this reference. They have yet to be categorized, but will be as a sufficient set of related entries are written. |
|||
=== How do I get the file path for my activity bundle? === |
|||
In the sugar model, all files needed to run an activity (the python code, icons, etc.) should be located under one directory: |
|||
"Every activity in the Sugar environment is packaged into a self-contained 'bundle'. The bundle contains all the resources and executable code (other than system-provided base libraries) which the activity needs to execute. Any resources or executable code that is not provided by the base system just be packaged within the bundle." <ref>[http://www.olpcaustria.org/mediawiki/index.php/Activity_handbook OLPC Austria - Activity Handbook for Sugar]</ref> |
|||
At present, the most direct way to get a handle on the directory where your activity is stored is to use the environment variable 'SUGAR_BUNDLE_PATH'. The following code retrieves the bundle path and prints it to screen - you can reuse it and do whatever you like to save files or manipulate data in your activity bundle directory. |
|||
import os |
|||
... |
|||
environ = os.environ.copy() |
|||
print environ['SUGAR_BUNDLE_PATH'] |
|||
... |
|||
=== How do I get the file path where I can write files programmatically? === |
|||
This is the same process as getting your activity bundle path. |
|||
import os |
|||
... |
|||
environ = os.environ.copy() |
|||
print environ['SUGAR_ACTIVITY_ROOT'] |
|||
... |
|||
= Notes = |
|||
<references /> |