[hamster-applet] added UI preferences on workspace tracking



commit da335997f02f0489a64f7447c2e79a436db65b40
Author: Toms Bauģis <toms baugis gmail com>
Date:   Mon Jan 18 11:02:24 2010 +0000

    added UI preferences on workspace tracking

 data/preferences.ui    |   63 +++++++++++++++++++++++++++++++++++++++++++++++-
 hamster/preferences.py |   12 +++++++++
 2 files changed, 74 insertions(+), 1 deletions(-)
---
diff --git a/data/preferences.ui b/data/preferences.ui
index 69ce281..f4058ea 100644
--- a/data/preferences.ui
+++ b/data/preferences.ui
@@ -207,6 +207,66 @@
                       </packing>
                     </child>
                     <child>
+                      <object class="GtkFrame" id="frame4">
+                        <property name="visible">True</property>
+                        <property name="label_xalign">0</property>
+                        <property name="shadow_type">none</property>
+                        <child>
+                          <object class="GtkAlignment" id="alignment10">
+                            <property name="visible">True</property>
+                            <property name="top_padding">6</property>
+                            <property name="left_padding">12</property>
+                            <child>
+                              <object class="GtkVBox" id="vbox6">
+                                <property name="visible">True</property>
+                                <property name="orientation">vertical</property>
+                                <property name="spacing">8</property>
+                                <child>
+                                  <object class="GtkCheckButton" id="workspace_tracking_name">
+                                    <property name="label" translatable="yes">Switch activities if workspace name matches an earlier activity</property>
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">True</property>
+                                    <property name="receives_default">False</property>
+                                    <property name="draw_indicator">True</property>
+                                    <signal name="toggled" handler="on_workspace_tracking_toggled"/>
+                                  </object>
+                                  <packing>
+                                    <property name="position">0</property>
+                                  </packing>
+                                </child>
+                                <child>
+                                  <object class="GtkCheckButton" id="workspace_tracking_memory">
+                                    <property name="label" translatable="yes">Resume the last activity when returning to a workspace</property>
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">True</property>
+                                    <property name="receives_default">False</property>
+                                    <property name="draw_indicator">True</property>
+                                    <signal name="toggled" handler="on_workspace_tracking_toggled"/>
+                                  </object>
+                                  <packing>
+                                    <property name="position">1</property>
+                                  </packing>
+                                </child>
+                              </object>
+                            </child>
+                          </object>
+                        </child>
+                        <child type="label">
+                          <object class="GtkLabel" id="label9">
+                            <property name="visible">True</property>
+                            <property name="label" translatable="yes">Workspaces</property>
+                            <property name="use_markup">True</property>
+                            <attributes>
+                              <attribute name="weight" value="bold"/>
+                            </attributes>
+                          </object>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="position">1</property>
+                      </packing>
+                    </child>
+                    <child>
                       <object class="GtkFrame" id="frame1">
                         <property name="visible">True</property>
                         <property name="label_xalign">0</property>
@@ -240,7 +300,7 @@
                       </object>
                       <packing>
                         <property name="expand">False</property>
-                        <property name="position">1</property>
+                        <property name="position">2</property>
                       </packing>
                     </child>
                   </object>
@@ -675,6 +735,7 @@
                         </child>
                       </object>
                       <packing>
+                        <property name="expand">False</property>
                         <property name="position">1</property>
                       </packing>
                     </child>
diff --git a/hamster/preferences.py b/hamster/preferences.py
index 698a18b..c0ca43c 100755
--- a/hamster/preferences.py
+++ b/hamster/preferences.py
@@ -188,6 +188,8 @@ class PreferencesEditor:
         self.get_widget("notify_interval").set_value(conf.get("notify_interval"))
         self.get_widget("keybinding").set_text(conf.get("keybinding"))
         self.get_widget("notify_on_idle").set_active(conf.get("notify_on_idle"))
+        self.get_widget("workspace_tracking_name").set_active("name" in conf.get("workspace_tracking"))
+        self.get_widget("workspace_tracking_memory").set_active("memory" in conf.get("workspace_tracking"))
 
         day_start = conf.get("day_start_minutes")
         day_start = dt.time(day_start / 60, day_start % 60)
@@ -644,6 +646,16 @@ class PreferencesEditor:
             self.window.destroy()
             return False
 
+    def on_workspace_tracking_toggled(self, checkbox):
+        workspace_tracking = []
+        if self.get_widget("workspace_tracking_name").get_active():
+            workspace_tracking.append("name")
+
+        if self.get_widget("workspace_tracking_memory").get_active():
+            workspace_tracking.append("memory")
+
+        conf.set("workspace_tracking", workspace_tracking)
+
     def on_shutdown_track_toggled(self, checkbox):
         conf.set("stop_on_shutdown", checkbox.get_active())
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]