diff options
author | Martin Sivak <msivak@redhat.com> | 2008-04-22 17:29:57 +0200 |
---|---|---|
committer | Martin Sivak <msivak@redhat.com> | 2008-04-22 17:29:57 +0200 |
commit | 4bfd0f61079c888d7797119b5b8cf1bb5ff7e7a1 (patch) | |
tree | 0c1d3333bcc34e1628ecab84480ba3e88b4f1d4f /frontend | |
parent | 8d930f172e8fb72416abe40c18bc9dd31108c75f (diff) | |
download | firstaidkit-4bfd0f61079c888d7797119b5b8cf1bb5ff7e7a1.tar.gz firstaidkit-4bfd0f61079c888d7797119b5b8cf1bb5ff7e7a1.tar.xz firstaidkit-4bfd0f61079c888d7797119b5b8cf1bb5ff7e7a1.zip |
Make the Simple and Advanced page work
Diffstat (limited to 'frontend')
-rw-r--r-- | frontend/firstaidkit.glade | 76 | ||||
-rw-r--r-- | frontend/main.py | 75 |
2 files changed, 149 insertions, 2 deletions
diff --git a/frontend/firstaidkit.glade b/frontend/firstaidkit.glade index 52282fb..4f6110d 100644 --- a/frontend/firstaidkit.glade +++ b/frontend/firstaidkit.glade @@ -304,6 +304,25 @@ </child> <child> + <widget class="GtkCheckButton" id="check_Advanced_Interactive"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="label" translatable="yes">Run interactive mode</property> + <property name="use_underline">True</property> + <property name="relief">GTK_RELIEF_NORMAL</property> + <property name="focus_on_click">True</property> + <property name="active">False</property> + <property name="inconsistent">False</property> + <property name="draw_indicator">True</property> + </widget> + <packing> + <property name="padding">0</property> + <property name="expand">False</property> + <property name="fill">False</property> + </packing> + </child> + + <child> <widget class="GtkCheckButton" id="check_Advanced_Verbose"> <property name="visible">True</property> <property name="can_focus">True</property> @@ -342,6 +361,25 @@ </child> <child> + <widget class="GtkCheckButton" id="check_Advanced_Dependency"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="label" translatable="yes">Use dependency mechanisms</property> + <property name="use_underline">True</property> + <property name="relief">GTK_RELIEF_NORMAL</property> + <property name="focus_on_click">True</property> + <property name="active">True</property> + <property name="inconsistent">False</property> + <property name="draw_indicator">True</property> + </widget> + <packing> + <property name="padding">0</property> + <property name="expand">False</property> + <property name="fill">False</property> + </packing> + </child> + + <child> <widget class="GtkAlignment" id="alignment1"> <property name="visible">True</property> <property name="xalign">0.5</property> @@ -438,6 +476,25 @@ </child> <child> + <widget class="GtkCheckButton" id="check_Expert_Interactive"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="label" translatable="yes">Run interactive mode</property> + <property name="use_underline">True</property> + <property name="relief">GTK_RELIEF_NORMAL</property> + <property name="focus_on_click">True</property> + <property name="active">False</property> + <property name="inconsistent">False</property> + <property name="draw_indicator">True</property> + </widget> + <packing> + <property name="padding">0</property> + <property name="expand">False</property> + <property name="fill">False</property> + </packing> + </child> + + <child> <widget class="GtkCheckButton" id="check_Expert_Verbose"> <property name="visible">True</property> <property name="can_focus">True</property> @@ -457,6 +514,25 @@ </child> <child> + <widget class="GtkCheckButton" id="check_Expert_Dependency"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="label" translatable="yes">Use dependency mechanisms</property> + <property name="use_underline">True</property> + <property name="relief">GTK_RELIEF_NORMAL</property> + <property name="focus_on_click">True</property> + <property name="active">True</property> + <property name="inconsistent">False</property> + <property name="draw_indicator">True</property> + </widget> + <packing> + <property name="padding">0</property> + <property name="expand">False</property> + <property name="fill">False</property> + </packing> + </child> + + <child> <widget class="GtkHBox" id="hbox1"> <property name="visible">True</property> <property name="homogeneous">False</property> diff --git a/frontend/main.py b/frontend/main.py index eadf971..806712e 100644 --- a/frontend/main.py +++ b/frontend/main.py @@ -30,11 +30,12 @@ import os.path import thread class CallbacksMainWindow(object): - def __init__(self, dialog, cfg, tasker, glade): + def __init__(self, dialog, cfg, tasker, glade, data): self._dialog = dialog self._tasker = tasker self._glade = glade self._cfg = cfg + self._data = data self._running_lock = thread.allocate_lock() def execute(self): @@ -95,7 +96,39 @@ class CallbacksMainWindow(object): #simple mode callbacks def on_b_StartSimple_activate(self, widget, *args): print "on_b_StartSimple_activate" + + flags = set(self._cfg.operation._list("flags")) + #check fix + if self._glade.get_widget("check_Simple_Fix").get_active(): + self._cfg.operation.mode = "auto-flow" + self._cfg.operation.flow = "fix" + else: + self._cfg.operation.mode = "auto-flow" + self._cfg.operation.flow = "diagnose" + + #check interactive + if self._glade.get_widget("check_Simple_Interactive").get_active(): + self._cfg.operation.interactive = "True" + else: + self._cfg.operation.interactive = "False" + + #check verbose + if self._glade.get_widget("check_Simple_Verbose").get_active(): + self._cfg.operation.verbose = "True" + else: + self._cfg.operation.verbose = "False" + + #check experimental + if self._glade.get_widget("check_Simple_Experimental").get_active(): + flags.add("experimental") + else: + try: + flags.remove("experimental") + except KeyError, e: + pass + + self._cfg.operation.flags = '"'+'" "'.join(flags)+'"' self.execute() return True @@ -103,6 +136,44 @@ class CallbacksMainWindow(object): def on_b_StartAdvanced_activate(self, widget, *args): print "on_b_StartAdvanced_activate" + flags = set(self._cfg.operation._list("flags")) + + #set the auto-flow + self._cfg.operation.mode = "auto-flow" + + idx = self._data.flow_list.get_active_iter() + if idx is None: + return True + self._cfg.operation.flow = self._data.flow_list_store.get_value(idx,0) + + #check verbose + if self._glade.get_widget("check_Advanced_Verbose").get_active(): + self._cfg.operation.verbose = "True" + else: + self._cfg.operation.verbose = "False" + + #check experimental + if self._glade.get_widget("check_Advanced_Experimental").get_active(): + flags.add("experimental") + else: + try: + flags.remove("experimental") + except KeyError, e: + pass + + #check interactive + if self._glade.get_widget("check_Advanced_Interactive").get_active(): + self._cfg.operation.interactive = "True" + else: + self._cfg.operation.interactive = "False" + + #check dependency + if self._glade.get_widget("check_Advanced_Dependency").get_active(): + self._cfg.operation.dependencies = "True" + else: + self._cfg.operation.dependencies = "False" + + self._cfg.operation.flags = '"'+'" "'.join(flags)+'"' self.execute() return True @@ -163,7 +234,7 @@ class MainWindow(object): self._importance = importance self._glade = gtk.glade.XML(os.path.join(dir, "firstaidkit.glade"), "MainWindow") self._window = self._glade.get_widget("MainWindow") - self._cb = CallbacksMainWindow(self._window, cfg, tasker, self._glade) + self._cb = CallbacksMainWindow(self._window, cfg, tasker, self._glade, self) self._glade.signal_autoconnect(self._cb) self._window.connect("destroy", self._cb.on_destroy) |