Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGonzalo Odiard <godiard@gmail.com>2014-07-15 14:12:09 (GMT)
committer Gonzalo Odiard <godiard@gmail.com>2014-07-15 14:12:09 (GMT)
commita6a231ebf99c5a1ab422c03846d850372c1fe921 (patch)
tree6ad0bcae3b34ba8e944f60bd16fe86928890ba46
parentb604db2103dfc7c6a568cb65a1bd630feed0f8ab (diff)
Move Remove pair functionality from cardlist to cretecardpanel
-rw-r--r--activity.py3
-rw-r--r--cardlist.py29
-rw-r--r--createcardpanel.py8
3 files changed, 14 insertions, 26 deletions
diff --git a/activity.py b/activity.py
index 0a9a661..929b869 100644
--- a/activity.py
+++ b/activity.py
@@ -123,6 +123,9 @@ class MemorizeActivity(Activity):
self.cardlist.update_selected)
self.createcardpanel.connect('change-font',
self.cardlist.change_font)
+ self.createcardpanel.connect('pair-closed',
+ self.cardlist.rem_current_pair)
+
self._createToolbarBuilder.connect('create_new_game',
self.cardlist.clean_list)
self._createToolbarBuilder.connect('create_new_game',
diff --git a/cardlist.py b/cardlist.py
index 701d4f5..e99b14e 100644
--- a/cardlist.py
+++ b/cardlist.py
@@ -28,7 +28,6 @@ from os.path import join, basename
from model import Pair
from sugar3.graphics import style
-from sugar3.graphics.icon import Icon
_logger = logging.getLogger('memorize-activity')
PAIR_SIZE = min(Gdk.Screen.width() / 7, Gdk.Screen.height() / 5)
@@ -200,7 +199,6 @@ class CardList(Gtk.EventBox):
self.hbox.pack_end(pair, False, True, 0)
self.pairs.append(pair)
pair.connect('pair-selected', self.set_selected)
- pair.connect('pair-closed', self.rem_pair)
if not load:
self.model.mark_modified()
self.pair_list_modified = True
@@ -218,10 +216,10 @@ class CardList(Gtk.EventBox):
self.model.data['font_name2'] = font_name
self.model.mark_modified()
- def rem_pair(self, widget, event):
- self.hbox.remove(widget)
- self.pairs.remove(widget)
- del widget
+ def rem_current_pair(self, widget):
+ self.hbox.remove(self.current_pair)
+ self.pairs.remove(self.current_pair)
+ self.current_pair = None
self.model.mark_modified()
self.emit('pair-selected', False, None, None, None, None, None, None,
False, False)
@@ -257,8 +255,6 @@ class CardPair(Gtk.EventBox):
__gsignals__ = {
'pair-selected': (GObject.SignalFlags.RUN_FIRST,
None, [GObject.TYPE_PYOBJECT]),
- 'pair-closed': (GObject.SignalFlags.RUN_FIRST,
- None, [GObject.TYPE_PYOBJECT]),
}
def __init__(self, text1, text2=None, aimg=None, bimg=None,
@@ -305,20 +301,6 @@ class CardPair(Gtk.EventBox):
align = Gtk.Alignment.new(.5, .5, 0, 0)
align.add(self.bcard2)
row.pack_start(align, True, True, 0)
- """
- close_image = Icon(icon_name='remove',
- icon_size=Gtk.IconSize.LARGE_TOOLBAR)
- align = Gtk.Alignment.new(.5, .5, 0, 0)
- align.add(close_image)
- close_button = Gtk.ToolButton()
- close_button.set_icon_widget(align)
- close_button.connect('clicked', self.emit_close)
- close_button.set_size_request(style.STANDARD_ICON_SIZE,
- style.STANDARD_ICON_SIZE)
- align = Gtk.Alignment.new(.5, 0, 0, 0)
- align.add(close_button)
- row.pack_start(align, False, False, 0)
- """
self.connect('button-press-event', self.emit_selected)
self.modify_bg(Gtk.StateType.NORMAL, Gdk.color_parse(self.bg_color))
self.add(row)
@@ -327,9 +309,6 @@ class CardPair(Gtk.EventBox):
def emit_selected(self, widget, event):
self.emit('pair-selected', self)
- def emit_close(self, widget):
- self.emit('pair-closed', self)
-
def set_selected(self, status):
if not status:
self.bg_color = '#000000'
diff --git a/createcardpanel.py b/createcardpanel.py
index 586ce6b..e8e041e 100644
--- a/createcardpanel.py
+++ b/createcardpanel.py
@@ -54,6 +54,8 @@ class CreateCardPanel(Gtk.EventBox):
8 * [GObject.TYPE_PYOBJECT]),
'change-font': (GObject.SignalFlags.RUN_FIRST, None,
2 * [GObject.TYPE_PYOBJECT]),
+ 'pair-closed': (GObject.SignalFlags.RUN_FIRST,
+ None, []),
}
def __init__(self):
@@ -100,7 +102,7 @@ class CreateCardPanel(Gtk.EventBox):
sensitive=False)
self._removebutton.set_icon_widget(
make_label('remove', ' ' + _('Remove')))
- # self._removebutton.connect('clicked', self.emit_update_pair)
+ self._removebutton.connect('clicked', self.emit_close)
buttons_bar.pack_start(self._removebutton, False, False, 0)
# Set card editors
@@ -142,6 +144,9 @@ class CreateCardPanel(Gtk.EventBox):
self.cardeditor2.set_font_name(data['font_name2'])
self.cardeditor2.card.change_font(data['font_name2'])
+ def emit_close(self, widget):
+ self.emit('pair-closed')
+
def emit_add_pair(self, widget):
self._addbutton.set_sensitive(False)
if self.equal_pairs:
@@ -204,6 +209,7 @@ class CreateCardPanel(Gtk.EventBox):
self._addbutton.set_sensitive(True)
self._updatebutton.set_sensitive(selected)
self._updatebutton_sensitive = selected
+ self._removebutton.set_sensitive(selected)
def change_equal_pairs(self, widget, state):
self.equal_pairs = state