diff options
author | Gonzalo Odiard <godiard@gmail.com> | 2014-07-03 00:41:58 (GMT) |
---|---|---|
committer | Gonzalo Odiard <godiard@gmail.com> | 2014-07-03 00:41:58 (GMT) |
commit | 77725026fe5e3aed88662aea9f74696e7719c5d9 (patch) | |
tree | 3a99968a85fbc7e0e1338c6a6064d22f44b3e6a7 /dominoactivity.py | |
parent | ff906066922f124b0287ed3fa493e26869150e01 (diff) |
Init port to gtk3. Activity start don't draw canvas
Diffstat (limited to 'dominoactivity.py')
-rw-r--r-- | dominoactivity.py | 74 |
1 files changed, 44 insertions, 30 deletions
diff --git a/dominoactivity.py b/dominoactivity.py index 9e7751e..1a4ccd6 100644 --- a/dominoactivity.py +++ b/dominoactivity.py @@ -11,24 +11,26 @@ # Style guide : http://www.python.org/dev/peps/pep-0008/ -import gobject -import gtk +from gi.repository import GObject +from gi.repository import Gtk import cairo -import pango +from gi.repository import Pango import math, random import os,sys -import simplejson +import json -import pygtk -pygtk.require('2.0') import getopt import logging from gettext import gettext as _ -import sugar -from sugar.activity import activity -from sugar.graphics.toolbutton import ToolButton +import sugar3 +from sugar3.activity import activity +from sugar3.graphics.toolbutton import ToolButton + +from sugar3.graphics.toolbarbox import ToolbarBox +from sugar3.activity.widgets import ActivityToolbarButton +from sugar3.activity.widgets import StopButton import dominoview from dominoview import DominoTableView @@ -52,8 +54,14 @@ class Domino(activity.Activity): # Creo la toolbar y agrego los botones - toolbox = activity.ActivityToolbox(self) - self.toolbar = gtk.Toolbar() + toolbar_box = ToolbarBox() + self.set_toolbar_box(toolbar_box) + + self._activity_toolbar_button = ActivityToolbarButton(self) + + toolbar_box.toolbar.insert(self._activity_toolbar_button, 0) + self._activity_toolbar_button.show() + # lista con los puntajes self.list_points = [] @@ -75,8 +83,8 @@ class Domino(activity.Activity): # agrego combo para tipo de juego - cmbItem = gtk.ToolItem() - self.cmbTipoPiezas = gtk.combo_box_new_text() + cmbItem = Gtk.ToolItem() + self.cmbTipoPiezas = Gtk.ComboBoxText() self.read_file() @@ -90,7 +98,7 @@ class Domino(activity.Activity): cmbItem.add(self.cmbTipoPiezas) - self.toolbar.insert(cmbItem, -1) + toolbar_box.toolbar.insert(cmbItem, -1) self.cmbTipoPiezas.show() cmbItem.show() self.cmbTipoPiezas.set_active(0) @@ -98,40 +106,46 @@ class Domino(activity.Activity): self.btnStart = ToolButton('dialog-ok') self.btnStart.connect('clicked', self._start_game) self.btnStart.set_tooltip(_('Start')) - self.toolbar.insert(self.btnStart, -1) + toolbar_box.toolbar.insert(self.btnStart, -1) self.btnStart.show() self.btnNew = ToolButton('list-add') self.btnNew.connect('clicked', self._add_piece) self.btnNew.set_tooltip(_('Get piece')) - self.toolbar.insert(self.btnNew, -1) + toolbar_box.toolbar.insert(self.btnNew, -1) self.btnNew.show() self.btnPass = ToolButton('go-next') self.btnPass.connect('clicked', self._pass_next_player) self.btnPass.set_tooltip(_('Pass')) - self.toolbar.insert(self.btnPass, -1) + toolbar_box.toolbar.insert(self.btnPass, -1) self.btnPass.show() self.btnScores = ToolButton('scores') self.btnScores.connect('clicked', self._show_scores) self.btnScores.set_tooltip(_('Scores')) - self.toolbar.insert(self.btnScores, -1) + toolbar_box.toolbar.insert(self.btnScores, -1) self.btnScores.show() - - toolbox.add_toolbar(_('Domino'), self.toolbar) - self.toolbar.show() - self.set_toolbox(toolbox) - toolbox.show() - toolbox.set_current_toolbar(1) + separator = Gtk.SeparatorToolItem() + separator.props.draw = False + separator.set_size_request(0, -1) + 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() + + toolbar_box.show_all() # Creo el Canvas y el CanvasBox donde dibujaremos todo el tablero y las fichas - self.drawingarea = gtk.DrawingArea() + self.drawingarea = Gtk.DrawingArea() self.drawingarea.set_size_request(dominoview.SCREEN_WIDTH,dominoview.SCREEN_HEIGHT) self.drawingarea.show() - self.drawingarea.connect('expose-event', self.on_drawing_area_exposed) + #self.drawingarea.connect('expose-event', self.on_drawing_area_exposed) self.connect('key-press-event',self.on_keypress) self.set_canvas(self.drawingarea) @@ -311,7 +325,7 @@ class Domino(activity.Activity): def on_keypress(self, widget, event): - key = gtk.gdk.keyval_name(event.keyval) + key = Gdk.keyval_name(event.keyval) # Agrego las teclas de juego de la XO (Circulo arriba = KP_Page_Up , X = KP_Page_Down, Check = KP_End @@ -334,7 +348,7 @@ class Domino(activity.Activity): self.key_action(key) # Para saber que codigo viene #else: - # print gtk.gdk.keyval_name(event.keyval) + # print Gdk.keyval_name(event.keyval) # sys.stdout.write("keyval "+str(event.keyval)+" key "+key+"\n") # sys.stdout.flush() return True @@ -446,7 +460,7 @@ class Domino(activity.Activity): print "antes de abrir archivo" fd = open(file_name, 'wt') print "antes de json" - simplejson.dump(data_points, fd) + json.dump(data_points, fd) print "desppues de json" print "antes de cerrar" fd.close() @@ -468,7 +482,7 @@ class Domino(activity.Activity): fd = open(file_name, 'rt') try: # lo meto en una variable intermedia por si hay problemas - data_points = simplejson.load(fd) + data_points = json.load(fd) self.list_points = [] for data in data_points: |