fixed erronous gconf path in postins script (thanks to hutchinsfairy)
[wifi-assistant] / package / src / wifi_assistant / gui / application_settings_dialog.py
1 #!/usr/bin/python2.5
2 import gtk, hildon
3
4 def _(str):
5     return str
6
7 class ApplicationSettingsDialog():
8     
9     CANCEL_BUTTON = 1
10     SAVE_BUTTON = 2
11     
12     def __init__(self, parent_window, saveCallback):
13         """saveCallback(popup, url)"""
14         
15         self._parent_window = parent_window
16         self._saveCallback = saveCallback
17
18
19     def show(self, use_popup, url_to_open):
20         checkbox = hildon.CheckButton(gtk.HILDON_SIZE_AUTO_WIDTH | gtk.HILDON_SIZE_FINGER_HEIGHT)
21         checkbox.set_label(_('Show popup when connected to a new SSID'))
22         checkbox.set_active(use_popup)
23         
24         url_label = gtk.Label(_('URL to open when launching browser:')) # IMPROVEMENT: caption?
25         url_label.set_alignment(0, 0.5)
26         url_label.set_padding(5, 5)
27         url_field = hildon.Entry(gtk.HILDON_SIZE_AUTO)
28         url_field.set_text(url_to_open)
29         
30         dialog = gtk.Dialog(_('Settings'), self._parent_window)
31         dialog.vbox.set_homogeneous(False)
32         
33         dialog.vbox.add(checkbox)
34         dialog.vbox.add(url_label)
35         dialog.vbox.add(url_field)
36         
37         dialog.add_button(_('Cancel'), ApplicationSettingsDialog.CANCEL_BUTTON)
38         dialog.add_button(_('Save'), ApplicationSettingsDialog.SAVE_BUTTON)
39         
40         dialog.show_all()
41         result = self._runDialog(dialog)
42         dialog.hide()
43         
44         if result == ApplicationSettingsDialog.SAVE_BUTTON:
45             self._saveCallback(checkbox.get_active(), url_field.get_text())
46
47
48     def _runDialog(self, dialog):
49         result = dialog.run()
50         return result