1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import os
23 import gtk
24
25 from flumotion.common import errors
26
27 from flumotion.component.base.admin_gtk import BaseAdminGtk, BaseAdminGtkNode
28
30
31 - def __init__(self, state, admin, title=None):
32 BaseAdminGtkNode.__init__(self, state, admin, title)
33
34 self.widget = gtk.Table(2, 1)
35 self.radioButton = {}
36 self.radioButton["backup"] = gtk.RadioButton(label="Backup")
37 self.radioButton["master"] = gtk.RadioButton(self.radioButton["backup"],
38 label="Master")
39 self.radioButtonHandlers = {}
40 currentRow = 0
41 for eaterName in self.radioButton:
42 self.widget.attach(self.radioButton[eaterName], 0, 1, currentRow,
43 currentRow+1, yoptions=gtk.FILL, xpadding=6, ypadding=6)
44 currentRow = currentRow + 1
45 self.radioButton[eaterName].show()
46 self.radioButtonHandlers[eaterName] = self.radioButton[eaterName].connect("toggled",
47 self.cb_toggled, eaterName)
48 self.widget.show()
49
51 if button.get_active():
52 if eaterName == "master":
53 self.callRemote("switchToMaster")
54 else:
55 self.callRemote("switchToBackup")
56
60
62 if key == 'active-eater':
63 if not self.radioButton[value].get_active():
64 self.radioButton[value].handler_block(
65 self.radioButtonHandlers[value])
66 self.radioButton[value].set_active(True)
67 self.radioButton[value].handler_unblock(
68 self.radioButtonHandlers[value])
69
75
76 GUIClass = SwitcherAdminGtk
77