CIXOS-FIA/Sugarizacion/lang-en: Difference between revisions
< CIXOS-FIA | Sugarizacion
Jump to navigation
Jump to search
No edit summary |
(Removing all content from page) |
||
Line 1: | Line 1: | ||
The tutorial explain with detail as create the [http://divieira.googlepages.com/HelloWorld-1.xo Paquete de la actividad Hola Mundo]. |
|||
To assume that you have [[:Category:Installing Sugar|instalado el entorno de desarrollo Azúcar]]. |
|||
Create the structure of directorys of the package: |
|||
mkdir HolaMundo.activity |
|||
mkdir HolaMundo.activity/activity |
|||
Write the archive activity.info, to describe the package in the sub-directory of the activity (for example, HolaMundo.activity/activity/activity.info).The instructions of the [[Activity Bundles|Paquetes de Actividad]] explain in detail the mean of each sphere. |
|||
{{ Box File | activity.info | 2=<pre> |
|||
[Activity] |
|||
name = HolaMundo |
|||
service_name = com.ywwg.HelloWorldActivity |
|||
class = ActividadHolaMundo.ActividadHolaMundo |
|||
icon = actividad-holamundo |
|||
activity_version = 1 |
|||
show_launcher = yes |
|||
</pre> |
|||
}} |
|||
Design an icon for you activity,in accordance with the [[Sugar_Icon_Format|formato del icono]] and you put in the sub-directory "activity".The name of archive must coincide with the name written in the archive .info (for example, actividad-holamundo.svg) |
|||
{{ Box File | actividad-holamundo.svg | 2=<pre> |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" [ |
|||
<!ENTITY fill_color "#FFFFFF"> |
|||
<!ENTITY stroke_color "#FF0000"> |
|||
]> |
|||
<svg xmlns="http://www.w3.org/2000/svg" width="50" height="50"> |
|||
<rect x="1" y="1" width="48" height="48" style="fill:&fill_color;;stroke:&stroke_color;;stroke-width:2"/> |
|||
</svg> |
|||
</pre> |
|||
}} |
|||
Write the script setup.py in the directory of higher level (for example, HolaMundo.activity/setup.py), that in the majority of the cases will see like this: |
|||
{{ Box File | setup.py | 2=<pre> |
|||
#!/usr/bin/python |
|||
from sugar.activity import bundlebuilder |
|||
bundlebuilder.start() |
|||
</pre> |
|||
}} |
|||
Check your activity.The name that you have written in the archive .info as "class" is the name of the class that make the code. To the archive previous activity.info, we especificed a module of high level ActividadHolaMundo.ActividadHolaMundo (please, remember the use of capital letters in the names of modules in Python is a poor style , you are free of use the name of an activity with more style of standard names). |
|||
{{ Box File | ActividadHolaMundo.py | 2=<pre> |
|||
from sugar.activity import activity |
|||
import logging |
|||
import sys, os |
|||
import gtk |
|||
class ActividadHolaMundo(activity.Activity): |
|||
def hola(self, widget, data=None): |
|||
logging.info('Hola Mundo') |
|||
def __init__(self, handle): |
|||
print "ejecutando actividad init", handle |
|||
activity.Activity.__init__(self, handle) |
|||
print "ejecutando actividad" |
|||
self.set_title('Hola Mundo') |
|||
# Create the toolbox .That contain the toolbar of the |
|||
# Activity,that is the bar appear in each window of the sugar and contain |
|||
# essentials functions, as the buttons 'Compartir con:' and 'Parar'. |
|||
toolbox = activity.ActivityToolbox(self) |
|||
self.set_toolbox(toolbox) |
|||
toolbox.show() |
|||
# Create a new button with the name "Hola Mundo". |
|||
self.button = gtk.Button("Hola Mundo") |
|||
# When the button receive the sign of "clicked", will call the function hello() |
|||
# passing to "None" as argument.The function hello() is defined in |
|||
# lines more above. |
|||
self.button.connect("clicked", self.hola, None) |
|||
# Fix the button to be our linen. The linen is the main section |
|||
# of every sugar window. Cover all the area under |
|||
# the toolbox. |
|||
self.set_canvas(self.button) |
|||
#Finally you must show this new creation of widgets. |
|||
self.button.show() |
|||
print "AL FINAL DE LA CLASE" |
|||
</pre> |
|||
}} |
|||
Create a MANIFEST (for example, HolaMundo.activity/MANIFEST),that contain the list of the archives include in the package . (Note: Make sure of '''not''' leave lines in white in the final of the archive.) |
|||
{{ Box File | | 2=<pre> |
|||
ActividadHolaMundo.py |
|||
</pre> |
|||
}} |
|||
The structure of the directory now must see as: |
|||
HolaMundo.activity/ |
|||
HolaMundo.activity/setup.py |
|||
HolaMundo.activity/activity |
|||
HolaMundo.activity/activity/activity.info |
|||
HolaMundo.activity/activity/actividad-holamundo.svg |
|||
HolaMundo.activity/ActividadHolaMundo.py |
|||
HolaMundo.activity/MANIFEST |
|||
Install your package to the develop |
|||
./setup.py dev |
|||
(This create a symbolic link in ~/Activities). |
|||
If now perform the sugar, the icon of the activity must be visible in the frame. (Reboot the sugar to see the change . Press Ctrl-Alt-delete.) |
|||
[[category:groups]] |
|||
[[category:peru]] |