modified button constants to support GUI testing with PyUseCase
[wifi-assistant] / package / src / wifi_assistant / gui / about_dialog.py
1 #!/usr/bin/python2.5
2 import gtk, hildon
3
4 def _(str):
5     return str
6
7 class AboutDialog():
8     
9     BUG_BUTTON = gtk.RESPONSE_YES
10     DONATE_BUTTON = gtk.RESPONSE_ACCEPT
11     CLOSE_BUTTON = gtk.RESPONSE_HELP
12     
13     VERSION = "0.9.1"
14     
15     BUG_URL = 'http://wifi-assistant.garage.maemo.org/bugs/'
16     DONATE_URL = 'http://wifi-assistant.garage.maemo.org/donate/'
17
18     def __init__(self, launcher, parent_window):
19         self._launcher = launcher
20         self._parent_window = parent_window
21
22
23     def show(self):
24         dialog = gtk.Dialog(_('About Wifi Assistant') + ' ' + AboutDialog.VERSION, self._parent_window)
25         text = "I got tired of not being able to connect easily to networks guarded by a login page, " + \
26             "so I created this app to scratch that itch. It's free to use, inspect, adapt and share, " + \
27             "licensed under a BSD type license.\nI hope you enjoy it!"
28
29         about_label = gtk.Label(_(text))
30         about_label.set_line_wrap(True)
31         dialog.vbox.add(about_label)
32         
33         dialog.add_button(_('File a bug'), AboutDialog.BUG_BUTTON)
34         dialog.add_button(_('Donate'), AboutDialog.DONATE_BUTTON)
35         dialog.add_button(_('Close'), AboutDialog.CLOSE_BUTTON)
36         
37         self._runDialog(dialog)
38     
39         
40     def _responseCallback(self, dialog, result):
41         dialog.hide()
42         
43         if result == AboutDialog.BUG_BUTTON:
44             self._launcher.openUrl(_(AboutDialog.BUG_URL))
45         if result == AboutDialog.DONATE_BUTTON:
46             self._launcher.openUrl(_(AboutDialog.DONATE_URL))
47     
48
49     def _runDialog(self, dialog):
50         dialog.connect("response", self._responseCallback)
51         dialog.show_all()