fixed bugs with imports (removed localization dependency)
authorMax Usachev <maxusachev@gmail.com>
Thu, 24 Jun 2010 12:31:37 +0000 (15:31 +0300)
committerMax Usachev <maxusachev@gmail.com>
Thu, 24 Jun 2010 12:31:37 +0000 (15:31 +0300)
ui/fremantle_ui/imports.py

index 1da292e..d02a05a 100644 (file)
@@ -15,13 +15,18 @@ class ImportDialog:
     def __init__(self):
         dialog = hildon.Dialog()
         dialog.set_title(_('Import'))
+        # create formats lits
         selector = hildon.TouchSelector(text=True)
-        self.items_dict = {\
-            _('Import from LDIF'): 'ldif', \
+        items_dict = {_('Import from LDIF'): 'ldif', \
             _('Import from database'): 'db'}
-        for item in self.items_dict:
-            selector.append_text(item)
-        selector.set_active(0, 0)
+        model = gtk.ListStore(gobject.TYPE_STRING, gobject.TYPE_STRING)
+        for name, internal_name in items_dict.items():
+            model.append((name, internal_name))
+        if selector.get_num_columns():
+            selector.remove_column(0)
+        selector.append_text_column(model, True)
+        selector.get_column(0).set_property('text-column', 0)
+        selector.set_active(0, 1)
         # create file format button
         format_button = hildon.PickerButton(gtk.HILDON_SIZE_AUTO | \
             gtk.HILDON_SIZE_FINGER_HEIGHT, hildon.BUTTON_ARRANGEMENT_VERTICAL)
@@ -44,13 +49,15 @@ class ImportDialog:
         self.import_button = import_button
         self.format_button = format_button
         self.fname_button = fname_button
+        self.selector = selector
 
     def run(self):
         response = self.dialog.run()
-        result = None 
+        result = None
         if response == gtk.RESPONSE_OK:
-            result = (self.items_dict[self.format_button.get_value().\
-                decode('utf-8')], self.fname_button.get_value())
+            file_format = self.selector.get_model(0)[ \
+                self.selector.get_active(0)][1]
+            result = (file_format,  self.fname_button.get_value())
         self.dialog.destroy()
         return result