# Copyright 2013 Ma. Beatriz Vierci, Ana Belen Trinidad Candia # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA import gtk import logging from gettext import gettext as _ from sugar.activity import activity from sugar.graphics.toolbarbox import ToolbarBox from sugar.activity.widgets import ActivityButton from sugar.activity.widgets import ActivityToolbox from sugar.activity.widgets import TitleEntry from sugar.activity.widgets import StopButton from sugar.activity.widgets import ShareButton class AudioPatternActivity(activity.Activity): def __init__(self, handle): activity.Activity.__init__(self, handle) # we do not have collaboration features # make the share option insensitive self.max_participants = 1 # toolbar with the new toolbar redesign toolbar_box = ToolbarBox() activity_button = ActivityButton(self) toolbar_box.toolbar.insert(activity_button, 0) activity_button.show() title_entry = TitleEntry(self) toolbar_box.toolbar.insert(title_entry, -1) title_entry.show() share_button = ShareButton(self) toolbar_box.toolbar.insert(share_button, -1) share_button.show() separator = gtk.SeparatorToolItem() separator.props.draw = False separator.set_expand(True) toolbar_box.toolbar.insert(separator, -1) separator.show() stop_button = StopButton(self) toolbar_box.toolbar.insert(stop_button, -1) stop_button.show() self.set_toolbar_box(toolbar_box) toolbar_box.show() principalVbox = gtk.VBox() cabeceraHbox = gtk.HBox() jugarButton = gtk.Button() principalVbox.pack_start(cabeceraHbox, fill=False) jugarButton.set_label('JUGAR') cabeceraHbox.pack_start(jugarButton, fill=False) jugarButton.set_size_request(150, 50) #jugarButton.connect('clicked', self.__button_clicked_cb, 'CLICKED') #jugarButton.connect('enter', self.__button_clicked_cb, 'ENTER') #jugarButton.connect('activate', self.__button_clicked_cb, 'ACTIVATE') #jugarButton.connect('leave', self.__button_clicked_cb, 'LEAVE') #jugarButton.connect('pressed', self.__button_clicked_cb, 'PRESSED') #jugarButton.connect('released', self.__button_clicked_cb, 'RELEASED') #jugarButton.connect('BUTTON_PRESS', self.__button_clicked_cb, 'BUTTON_PRESS') #key_press_event cancelarButton = gtk.Button() cancelarButton.set_label('CANCELAR') cabeceraHbox.pack_start(cancelarButton, fill=False) cancelarButton.connect('clicked', self.__button_clicked_cb, 'CANCELAR') cuerpoHbox = gtk.HBox() cancelarButton.set_size_request(150, 50) seleccionadosTable = gtk.Table(4, 1, True) seleccionadoUnoButton = gtk.Button() seleccionadoDosButton = gtk.Button() seleccionadoTresButton = gtk.Button() #resultadoButton = gtk.Button() opcionesTable = gtk.Table(3,3, True) opcionUno = gtk.Button() opcionDos = gtk.Button() opcionTres = gtk.Button() opcionCuatro = gtk.Button() opcionCinco = gtk.Button() opcionSeis = gtk.Button() opcionSiete = gtk.Button() opcionOcho = gtk.Button() opcionNueve = gtk.Button() self.set_canvas(principalVbox) #window.add(principalVbox) principalVbox.add(cabeceraHbox) principalVbox.add(cuerpoHbox) cabeceraHbox.add(jugarButton) cabeceraHbox.add(cancelarButton) cuerpoHbox.add(seleccionadosTable) cuerpoHbox.add(opcionesTable) seleccionadosTable.attach(seleccionadoUnoButton, 0, 1, 0, 1) seleccionadosTable.attach(seleccionadoDosButton, 0, 1, 1, 2) seleccionadosTable.attach(seleccionadoTresButton, 0, 1, 2, 3) #seleccionadosTable.attach(selecionadoUnoButton, 0, 1, 0, 1) opcionesTable.attach( opcionUno, 0, 1, 0, 1) opcionesTable.attach( opcionDos, 1, 2, 0, 1) opcionesTable.attach( opcionTres, 2, 3, 0, 1) opcionesTable.attach( opcionCuatro, 0, 1, 1, 2) opcionesTable.attach( opcionCinco, 1, 2, 1, 2) opcionesTable.attach( opcionSeis, 2, 3, 1, 2) opcionesTable.attach( opcionSiete, 0, 1, 2, 3) opcionesTable.attach( opcionOcho, 1, 2, 2, 3) opcionesTable.attach( opcionNueve, 2, 3, 2, 3) principalVbox.show() #window.show_all() #def destroy(self, window, data=None): #gtk.main_quit() def __button_clicked_cb(self, window, data=None): print(data) def __on_key_press_event(self, widget, event): keyname = gtk.gdk.keyval_name(event.keyval) print "Key %s (%d) was pressed" % (keyname, event.keyval) if keyname == 'space': print "Dentro del IF" widget_focus = widget.get_focus #print widget_focus.get_tab_label