start working on extended import
[meabook] / ui / hildon_ui / imports.py
1 """
2 Import dialogs
3 """
4
5 import gtk
6 import hildon
7 import gobject
8 from gettext import gettext as _
9 from meabook.ui.hildon_ui.common import create_button
10
11
12 class ImportDialog:
13     """Import dialog."""
14
15     def __init__(self):
16         dialog = hildon.Dialog()
17         dialog.set_title(_('Import'))
18         selector = hildon.TouchSelector(text=True)
19         items_dict = {\
20             _('Import from LDIF'): 'ldif', \
21             _('Import from database'): 'db'}
22         for item in items_dict:
23             selector.append_text(item)
24         selector.set_active(0, 0)
25         # create file format button
26         format_button = hildon.PickerButton(gtk.HILDON_SIZE_AUTO | \
27             gtk.HILDON_SIZE_FINGER_HEIGHT, hildon.BUTTON_ARRANGEMENT_VERTICAL)
28         format_button.set_alignment(0, 0, 0, 0)
29         format_button.set_title(_("File to import from"))
30         format_button.set_selector(selector)
31         # create file chooser button
32         fname_button = create_button(_('File name'), _('Choose file name'))
33         fname_button.connect('clicked', self.choose_file_name_cb)
34
35         import_button = dialog.add_button(_('Import'), gtk.RESPONSE_OK)
36         import_button.set_sensitive(False)
37
38         dialog.vbox.pack_start(format_button)
39         dialog.vbox.pack_start(fname_button)
40         dialog.vbox.show_all()
41
42         """
43         chooser = gobject.new(hildon.FileChooserDialog, \
44             action=gtk.FILE_CHOOSER_ACTION_OPEN)
45         chooser.set_property('show-files', True)
46         chooser.run()
47         self.path = chooser.get_filename()
48         chooser.destroy()
49         """
50         # create class attributes
51         self.dialog = dialog
52
53     def run(self):
54         response = self.dialog.run()
55         if response == gtk.RESPONSE_OK:
56             print 'importing'
57         return None
58         #return self.path
59
60     def choose_file_name_cb(self, widget):
61         """Shows file chooser dialog."""
62
63         chooser = gobject.new(hildon.FileChooserDialog, \
64             action=gtk.FILE_CHOOSER_ACTION_OPEN)
65         chooser.set_property('show-files', True)
66         chooser.run()
67         path = chooser.get_filename()
68         if path:
69             widget.set_value(path)
70         chooser.destroy()
71