diff options
author | Martin Sivak <msivak@redhat.com> | 2008-04-22 14:40:51 +0200 |
---|---|---|
committer | Martin Sivak <msivak@redhat.com> | 2008-04-22 14:40:51 +0200 |
commit | dee14baa89d53011a378afda25ec344a8d70cfba (patch) | |
tree | 182f9d3e1b3b4736aa7c41cf7ef303f1d196afee | |
parent | b7b699938306cae47f3df5567fabbb5150099eb2 (diff) | |
download | firstaidkit-dee14baa89d53011a378afda25ec344a8d70cfba.tar.gz firstaidkit-dee14baa89d53011a378afda25ec344a8d70cfba.tar.xz firstaidkit-dee14baa89d53011a378afda25ec344a8d70cfba.zip |
The flags dialog is working now
-rw-r--r-- | frontend/firstaidkit.glade | 64 | ||||
-rw-r--r-- | frontend/main.py | 35 |
2 files changed, 53 insertions, 46 deletions
diff --git a/frontend/firstaidkit.glade b/frontend/firstaidkit.glade index 6decf0c..52282fb 100644 --- a/frontend/firstaidkit.glade +++ b/frontend/firstaidkit.glade @@ -750,8 +750,7 @@ <child> <widget class="GtkLabel" id="label6"> <property name="visible">True</property> - <property name="label" translatable="yes">Flags to set before any operation takes place: -(clicking on flag deletes it)</property> + <property name="label" translatable="yes">Flags to set before any operation takes place:</property> <property name="use_underline">False</property> <property name="use_markup">False</property> <property name="justify">GTK_JUSTIFY_LEFT</property> @@ -767,14 +766,26 @@ <property name="angle">0</property> </widget> <packing> - <property name="padding">0</property> + <property name="padding">5</property> <property name="expand">False</property> <property name="fill">False</property> </packing> </child> <child> + <widget class="GtkHSeparator" id="hseparator1"> + <property name="visible">True</property> + </widget> + <packing> + <property name="padding">0</property> + <property name="expand">False</property> + <property name="fill">True</property> + </packing> + </child> + + <child> <widget class="GtkScrolledWindow" id="scrolledwindow3"> + <property name="border_width">3</property> <property name="visible">True</property> <property name="can_focus">True</property> <property name="hscrollbar_policy">GTK_POLICY_NEVER</property> @@ -810,18 +821,29 @@ </child> </widget> <packing> - <property name="padding">0</property> + <property name="padding">1</property> <property name="expand">True</property> <property name="fill">True</property> </packing> </child> <child> + <widget class="GtkHSeparator" id="hseparator2"> + <property name="visible">True</property> + </widget> + <packing> + <property name="padding">0</property> + <property name="expand">False</property> + <property name="fill">True</property> + </packing> + </child> + + <child> <widget class="GtkAlignment" id="alignment5"> <property name="visible">True</property> - <property name="xalign">0.5</property> + <property name="xalign">1</property> <property name="yalign">1</property> - <property name="xscale">1</property> + <property name="xscale">0</property> <property name="yscale">0</property> <property name="top_padding">0</property> <property name="bottom_padding">0</property> @@ -835,36 +857,6 @@ <property name="spacing">0</property> <child> - <widget class="GtkComboBox" id="combo_AvailableFlags"> - <property name="visible">True</property> - <property name="add_tearoffs">False</property> - <property name="focus_on_click">True</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkButton" id="b_AddFlag"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="label" translatable="yes">Add</property> - <property name="use_underline">True</property> - <property name="relief">GTK_RELIEF_NORMAL</property> - <property name="focus_on_click">True</property> - <signal name="clicked" handler="on_b_AddFlag_activate" last_modification_time="Mon, 21 Apr 2008 12:26:18 GMT"/> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> <widget class="GtkButton" id="b_Cancel"> <property name="visible">True</property> <property name="can_focus">True</property> diff --git a/frontend/main.py b/frontend/main.py index a69f642..115922c 100644 --- a/frontend/main.py +++ b/frontend/main.py @@ -136,14 +136,20 @@ class CallbacksFlagList(object): self._dialog = dialog self._flags = flags self._cfg = cfg - self._working = copy.copy(self._flags) - - def on_b_AddFlag_activate(self, widget, *args): - print "on_b_AddFlag_activate" - return True def on_b_OK_activate(self, widget, *args): print "on_b_OK_activate" + + f = set() + for k,w in self._flags.iteritems(): + if w.get_active(): + f.add(k) + + if len(f)==0: + self._cfg.operation.flags = "" + else: + self._cfg.operation.flags = '"'+'" "'.join(f)+'"' + self._dialog.destroy() return True @@ -152,10 +158,6 @@ class CallbacksFlagList(object): self._dialog.destroy() return True - def on_b_Flag_activate(self, widget, *args): - print "on_b_Flag_activate" - return True - class MainWindow(object): def __init__(self, cfg, tasker, importance = logging.INFO, dir=""): self._importance = importance @@ -227,8 +229,21 @@ class FlagList(object): self._glade = gtk.glade.XML(os.path.join(dir, "firstaidkit.glade"), "FlagList") self._window = self._glade.get_widget("FlagList") self._window.set_modal(True) - self._cb = CallbacksFlagList(self._window, cfg, flags) + self.flags = {} + self._cb = CallbacksFlagList(self._window, cfg, self.flags) self._glade.signal_autoconnect(self._cb) + fl_gui = self._glade.get_widget("box_flags") + flags_set = cfg.operation._list("flags") + for f in sorted(flags.known()): + b = gtk.CheckButton(label=f) + self.flags[f] = b + b.set_active(f in flags_set) + b.show() + fl_gui.pack_start(b, expand=False, fill=True) + l = gtk.Label("") + l.show() + + fl_gui.pack_end(l, expand=True, fill=True) if __name__=="__main__": w = MainWindow(None, None, None) |