Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xsugarcommander.py60
1 files changed, 41 insertions, 19 deletions
diff --git a/sugarcommander.py b/sugarcommander.py
index 58b2b52..41b897e 100755
--- a/sugarcommander.py
+++ b/sugarcommander.py
@@ -64,9 +64,12 @@ DS_DBUS_PATH = '/org/laptop/sugar/DataStore'
_logger = logging.getLogger('sugar-commander')
class SugarCommander(activity.Activity):
+
def __init__(self, handle):
- "The entry point to the Activity"
+ """ The entry point to the Activity """
+
activity.Activity.__init__(self, handle)
+
self.selected_journal_entry = None
self.selected_path = None
self.update_log_entries = ''
@@ -81,12 +84,15 @@ class SugarCommander(activity.Activity):
GObject.TYPE_UINT64,
GObject.TYPE_STRING,
GObject.TYPE_PYOBJECT)
+
self.tv_journal = Gtk.TreeView(self.ls_journal)
self.tv_journal.set_rules_hint(True)
self.tv_journal.set_search_column(COLUMN_TITLE)
+
self.selection_journal = self.tv_journal.get_selection()
self.selection_journal.set_mode(Gtk.SelectionMode.SINGLE)
self.selection_journal.connect("changed", self.selection_journal_cb)
+
renderer = Gtk.CellRendererText()
renderer.set_property('wrap-mode', Gtk.WrapMode.WORD)
renderer.set_property('wrap-width', 500)
@@ -100,9 +106,11 @@ class SugarCommander(activity.Activity):
size_renderer.set_property('width', 100)
size_renderer.set_property('alignment', Pango.Alignment.RIGHT)
size_renderer.set_property('xalign', 0.8)
+
self.col_size = Gtk.TreeViewColumn(_('Size (KB)'), size_renderer,
text=COLUMN_SIZE)
self.col_size.set_sort_column_id(COLUMN_SIZE)
+
self.tv_journal.append_column(self.col_size)
mime_renderer = Gtk.CellRendererText()
@@ -119,7 +127,7 @@ class SugarCommander(activity.Activity):
self.list_scroller_journal.add(self.tv_journal)
label_attributes = Pango.AttrList()
- # FIXME: Reescribir
+ # FIXME: must re written
#label_attributes.insert(Pango.AttrSize(14000, 0, -1))
#label_attributes.insert(Pango.AttrForeground(65535, 65535, 65535, 0, -1))
@@ -156,10 +164,12 @@ class SugarCommander(activity.Activity):
self.resize_width_entry = Gtk.Entry()
self.resize_width_entry.set_max_length(4)
+
image_table.attach(self.resize_width_entry, 1, 2, 2, 3,
xoptions=Gtk.AttachOptions.SHRINK,
yoptions=Gtk.AttachOptions.SHRINK,
xpadding=10, ypadding=10)
+
self.resize_width_entry.set_text('600')
self.resize_width_entry.connect('key_press_event',
self.resize_key_press_event_cb)
@@ -167,20 +177,24 @@ class SugarCommander(activity.Activity):
self.btn_save = Gtk.Button(_("Save"))
self.btn_save.connect('button_press_event',
self.save_button_press_event_cb)
+
image_table.attach(self.btn_save, 0, 1, 3, 4,
xoptions=Gtk.AttachOptions.SHRINK,
yoptions=Gtk.AttachOptions.SHRINK,
xpadding=10, ypadding=10)
+
self.btn_save.props.sensitive = False
self.btn_save.show()
self.btn_delete = Gtk.Button(_("Delete"))
self.btn_delete.connect('button_press_event',
self.delete_button_press_event_cb)
+
image_table.attach(self.btn_delete, 1, 2, 3, 4,
xoptions=Gtk.AttachOptions.SHRINK,
yoptions=Gtk.AttachOptions.SHRINK,
xpadding=10, ypadding=10)
+
self.btn_delete.props.sensitive = False
self.btn_delete.show()
@@ -196,6 +210,7 @@ class SugarCommander(activity.Activity):
self.title_entry = Gtk.Entry()
self.resize_width_entry.set_max_length(4)
+
entry_table.attach(self.title_entry, 1, 2, 0, 1,
xoptions=Gtk.AttachOptions.FILL |
Gtk.AttachOptions.SHRINK,
@@ -214,6 +229,7 @@ class SugarCommander(activity.Activity):
self.description_textview = Gtk.TextView()
self.description_textview.set_wrap_mode(Gtk.WrapMode.WORD)
+
entry_table.attach(self.description_textview, 1, 2, 1, 2,
xoptions=Gtk.AttachOptions.EXPAND |
Gtk.AttachOptions.FILL |
@@ -222,6 +238,7 @@ class SugarCommander(activity.Activity):
Gtk.AttachOptions.FILL |
Gtk.AttachOptions.SHRINK,
xpadding=10, ypadding=10)
+
self.description_textview.props.accepts_tab = False
self.description_textview.connect('key_press_event',
self.key_press_event_cb)
@@ -241,6 +258,7 @@ class SugarCommander(activity.Activity):
yoptions=Gtk.AttachOptions.EXPAND |
Gtk.AttachOptions.FILL,
xpadding=10, ypadding=10)
+
self.tags_textview.props.accepts_tab = False
self.tags_textview.connect('key_press_event',
self.key_press_event_cb)
@@ -286,10 +304,10 @@ class SugarCommander(activity.Activity):
self.resize_width_entry.hide()
vbox = Gtk.VBox(homogeneous=True, spacing=5)
- vbox.pack_start(column_table, False, False, 0)
- vbox.pack_end(self.list_scroller_journal, False, False, 0)
+ vbox.pack_start(column_table, True, True, 0)
+ vbox.pack_end(self.list_scroller_journal, True, True, 0)
- canvas.append_page(vbox, tab1_label)
+ canvas.append_page(vbox, tab1_label)
self._filechooser = Gtk.FileChooserWidget(
action=Gtk.FileChooserAction.OPEN, parent=None)
@@ -302,6 +320,7 @@ class SugarCommander(activity.Activity):
self._filechooser.set_preview_widget(preview)
self._filechooser.connect("update-preview",
self.update_preview_cb, preview)
+
tab2_label = Gtk.Label(_("Files"))
tab2_label.set_attributes(label_attributes)
tab2_label.show()
@@ -360,18 +379,16 @@ class SugarCommander(activity.Activity):
self.btn_save.props.sensitive = True
def resize_key_press_event_cb(self, entry, event):
- # FIXME: Reescribir
- pass
- #keyname = Gtk.gdk.keyval_name(event.keyval)
- #if ((keyname < '0' or keyname > '9') and keyname != 'BackSpace'
- # and keyname != 'Left' and keyname != 'Right'
- # and keyname != 'KP_Left' and keyname != 'KP_Right'
- # and keyname != 'Delete' and keyname != 'End'
- # and keyname != 'KP_End' and keyname != 'Home'
- # and keyname != 'KP_Home' and keyname != 'KP_Delete'):
- # return True
- #else:
- # return False
+ keyname = Gdk.keyval_name(event.keyval)
+ if ((keyname < '0' or keyname > '9') and keyname != 'BackSpace'
+ and keyname != 'Left' and keyname != 'Right'
+ and keyname != 'KP_Left' and keyname != 'KP_Right'
+ and keyname != 'Delete' and keyname != 'End'
+ and keyname != 'KP_End' and keyname != 'Home'
+ and keyname != 'KP_Home' and keyname != 'KP_Delete'):
+ return True
+ else:
+ return False
def resize_button_press_event_cb(self, entry, event):
jobject = self.selected_journal_entry
@@ -421,6 +438,10 @@ class SugarCommander(activity.Activity):
self.ls_journal.set(iter, COLUMN_SIZE, size)
def datastore_updated_cb(self, uid):
+
+ if self.selected_journal_entry is None:
+ return
+
new_jobject = datastore.get(uid)
iter = self.ls_journal.get_iter_first()
for row in self.ls_journal:
@@ -755,8 +776,9 @@ class SugarCommander(activity.Activity):
def save_func(buf, data):
data.append(buf)
- scaled_pixbuf.save_to_callbackv(save_func, 'png',
- user_data=preview_data)
+ # FIXME: TypeError: save_to_callbackv() takes exactly 6 arguments (4 given)
+ # but apparently not needed
+ #scaled_pixbuf.save_to_callbackv(save_func, preview_data, 'png')
preview_data = ''.join(preview_data)
return preview_data