| 76 menu.append(item) |
76 menu.append(item) |
| 77 |
77 |
| 78 def toggle_pref(item, pref): |
78 def toggle_pref(item, pref): |
| 79 purple.PurplePrefsSetBool(pref, item.get_active()) |
79 purple.PurplePrefsSetBool(pref, item.get_active()) |
| 80 |
80 |
| |
81 def quit_finch(item, null): |
| |
82 # XXX: Ask first |
| |
83 purple.PurpleCoreQuit() |
| |
84 gtk.main_quit() |
| |
85 |
| |
86 def close_docklet(item, null): |
| |
87 gtk.main_quit() |
| |
88 |
| 81 def popup_menu(icon, button, tm, none): |
89 def popup_menu(icon, button, tm, none): |
| 82 menu = gtk.Menu() |
90 menu = gtk.Menu() |
| |
91 |
| |
92 #item = gtk.ImageMenuItem(gtk.STOCK_QUIT) |
| |
93 #item.connect("activate", quit_finch, None) |
| |
94 #menu.append(item) |
| |
95 |
| |
96 item = gtk.ImageMenuItem(gtk.STOCK_CLOSE) |
| |
97 item.connect("activate", close_docklet, None) |
| |
98 menu.append(item) |
| |
99 |
| |
100 menu.append(gtk.MenuItem()) |
| 83 |
101 |
| 84 item = gtk.CheckMenuItem("Blink for unread IM") |
102 item = gtk.CheckMenuItem("Blink for unread IM") |
| 85 item.set_active(purple.PurplePrefsGetBool("/plugins/dbus/docklet/blink/im")) |
103 item.set_active(purple.PurplePrefsGetBool("/plugins/dbus/docklet/blink/im")) |
| 86 item.connect("activate", toggle_pref, "/plugins/dbus/docklet/blink/im") |
104 item.connect("activate", toggle_pref, "/plugins/dbus/docklet/blink/im") |
| 87 menu.append(item) |
105 menu.append(item) |
| 174 signal_name="SavedstatusChanged") |
192 signal_name="SavedstatusChanged") |
| 175 |
193 |
| 176 t = gtk.StatusIcon() |
194 t = gtk.StatusIcon() |
| 177 t.connect("popup-menu", popup_menu, None) |
195 t.connect("popup-menu", popup_menu, None) |
| 178 |
196 |
| 179 init_prefs() |
197 try: |
| 180 detect_unread_conversations() |
198 init_prefs() |
| 181 |
199 detect_unread_conversations() |
| 182 gtk.main () |
200 gtk.main () |
| 183 |
201 except: |
| |
202 dialog = gtk.Dialog("pietray: Error", None, gtk.DIALOG_NO_SEPARATOR | gtk.DIALOG_MODAL, ("Close", gtk.RESPONSE_CLOSE)) |
| |
203 dialog.set_resizable(False) |
| |
204 dialog.vbox.pack_start(gtk.Label("There was some error. Perhaps a purple client is not running."), False, False, 0) |
| |
205 dialog.show_all() |
| |
206 dialog.run() |
| |
207 |