Difference between revisions of "Activity Team/Sweetener"

From Sugar Labs
Jump to navigation Jump to search
Line 14: Line 14:
 
  git clone git://git.sugarlabs.org/sweetener/sweetener.git
 
  git clone git://git.sugarlabs.org/sweetener/sweetener.git
 
* Copy to your new activity directory the following files:
 
* Copy to your new activity directory the following files:
** Makefile
+
Makefile
** activity.py
+
activity.py
** canvas.py
+
canvas.py
** options.py
+
options.py
** info.py<br> Optional, only if you want to get your activity working on other Linux desktops:
+
info.py
** application.py
+
Optional, only if you want to get your activity working on other Linux desktops:
** hello-integration (rename it to your activity name)
+
application.py
 +
hello-integration # (rename it to your activity name)
 
* Make the following directories inside your activity:
 
* Make the following directories inside your activity:
** sugar/sweetener
+
sugar/sweetener
** desktop/sweetener (Only if you want to run your activity on Linux desktops)
+
desktop/sweetener # (Only if you want to run your activity on Linux desktops)
 
* Copy basic modules:<br>  Sweetener is divided in modules, for a very basic activity, you'll need to copy from (sugar - desktop)/sweetener:
 
* Copy basic modules:<br>  Sweetener is divided in modules, for a very basic activity, you'll need to copy from (sugar - desktop)/sweetener:
** __init__.py
+
  __init__.py
** basic_options.py
+
  basic_options.py
** itembox.py
+
  itembox.py
** itemgroup.py<br> (Optional if your activity has only the main ToolbarBox and the ActivityToolbar, obligatory for run the activty on Linux desktop)
+
  item.py
** item.py
+
  stock.py
** stock.py
+
Optional if your activity has only the main ToolbarBox and the ActivityToolbar, obligatory for run the activty on Linux desktops:
 +
  itemgroup.py
 
* Fill info.py with the information about your activity.
 
* Fill info.py with the information about your activity.
  

Revision as of 15:07, 3 October 2012

(Note: This page is not finished.)

Sweetener is a desktop framework which provides compatibility between Sugar and other Desktops. Does all the repetitive parts, for be more friendly with developers. It's divided in modules, they can be included in an activity for do a specific task.

Maintainers

Current Release

At the moment it hasn't got a stable release. Clone the GIT Repository and feel free to send patches, request merges or contact the maintainers.

Get started creating an activity

  • Start a repository on Git
  • Clone Sweetener
git clone git://git.sugarlabs.org/sweetener/sweetener.git
  • Copy to your new activity directory the following files:
Makefile
activity.py
canvas.py
options.py
info.py

Optional, only if you want to get your activity working on other Linux desktops:

application.py
hello-integration # (rename it to your activity name)
  • Make the following directories inside your activity:
sugar/sweetener
desktop/sweetener  # (Only if you want to run your activity on Linux desktops)
  • Copy basic modules:
    Sweetener is divided in modules, for a very basic activity, you'll need to copy from (sugar - desktop)/sweetener:
 __init__.py
 basic_options.py
 itembox.py
 item.py
 stock.py

Optional if your activity has only the main ToolbarBox and the ActivityToolbar, obligatory for run the activty on Linux desktops:

 itemgroup.py
  • Fill info.py with the information about your activity.

Key accelerators

Gtk Stock sets by default some accelerators for convention, like Ctrl+Q for Quit. Sweetener sets and overwrites some key accelerators for integrate them with Sugar.
Keep this in mind when setting up key accelerators in your activity.

Stock labelKey accelerator on SugarKey accelerator on Linux desktops
AddCtrl + ACtrl + A
FullscreenAlt + ReturnF11
Normal SizeCtrl + 0Ctrl + 0
RemoveShift + DelCtrl + R
Save asUnused :)Ctrl + Shift + S
Select ColorCtrl + LCtrl + L
Zoom InCtrl + +Ctrl + +
Zoom OutCtrl + -Ctrl + -

Activities using Sweetener

Gtk2 and Gtk3 Support

There are efforts to port Sweetener to Gtk3[1], but at the moment it isn't possible thanks to the upstream bug GNOME#652697.