Making the todo item view a bit more malleable
authorEd Page <epage@Dulcinea.(none)>
Thu, 16 Apr 2009 03:28:07 +0000 (22:28 -0500)
committerEd Page <epage@Dulcinea.(none)>
Thu, 16 Apr 2009 03:28:07 +0000 (22:28 -0500)
src/doneit.glade
src/doneit_glade.py
src/null_view.py
src/rtm_view.py

index 044873c..9b9f908 100644 (file)
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 <!DOCTYPE glade-interface SYSTEM "glade-2.0.dtd">
-<!--Generated with glade3 3.4.5 on Mon Apr 13 18:40:41 2009 -->
+<!--Generated with glade3 3.4.5 on Wed Apr 15 22:22:55 2009 -->
 <glade-interface>
   <widget class="GtkWindow" id="mainWindow">
     <property name="default_width">800</property>
               </packing>
             </child>
             <child>
-              <widget class="GtkScrolledWindow" id="todoItemScroll">
-                <property name="visible">True</property>
-                <property name="can_focus">True</property>
-                <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
-                <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
-                <child>
-                  <widget class="GtkTreeView" id="todoItemTree">
-                    <property name="visible">True</property>
-                    <property name="can_focus">True</property>
-                  </widget>
-                </child>
-              </widget>
-              <packing>
-                <property name="position">1</property>
-              </packing>
+              <placeholder/>
             </child>
             <child>
               <widget class="GtkHBox" id="add-hbox">
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">False</property>
+                <property name="pack_type">GTK_PACK_END</property>
                 <property name="position">2</property>
               </packing>
             </child>
index c34b843..995f884 100755 (executable)
@@ -6,9 +6,6 @@
                Using new api widgets people are developing)
                Integrate GPS w/ fallback to default location
                Use locations for mapping
-       Agenda view
-               Grid of days
-               Using an adjustable version of the following RTM quiery 'dueBefore:Today OR dueWithin:"1 week of today" OR (priority:3 AND dueWithin"2 weeks of today") OR (priority:2 AND dueWithin"3 weeks of today") OR (priority:1 AND dueWithin"4 weeks of today")')
        Quick search (OR within a property type, and between property types)
                Drop down for multi selecting priority
                Drop down for multi selecting tags
index d1770d2..dc9aad5 100644 (file)
@@ -1,3 +1,5 @@
+import gtk
+
 import null_backend
 
 
@@ -10,6 +12,9 @@ class GtkNull(object):
                self._projectsCombo = widgetTree.get_widget("projectsCombo")
                self._addTaskButton = widgetTree.get_widget("add-addTaskButton")
 
+               self._todoBox = widgetTree.get_widget("todoBox")
+               self._todoAreaFiller = gtk.Label()
+
                self._manager = null_backend.NullManager("", "")
 
        @staticmethod
@@ -35,9 +40,15 @@ class GtkNull(object):
                self._projectsCombo.set_sensitive(False)
                self._addTaskButton.set_sensitive(False)
 
+               self._todoBox.pack_start(self._todoAreaFiller)
+               self._todoAreaFiller.show_all()
+
        def disable(self):
                """
                @note UI Thread
                """
+               self._todoBox.remove(self._todoAreaFiller)
+               self._todoAreaFiller.hide_all()
+
                self._projectsCombo.set_sensitive(True)
                self._addTaskButton.set_sensitive(True)
index 5f454a9..987f34a 100644 (file)
@@ -1,3 +1,8 @@
+"""
+@todo Add an agenda view to the task list
+       Tree of days, with each successive 7 days dropping the visibility of further lower priority items
+"""
+
 import webbrowser
 import datetime
 import urlparse
@@ -124,7 +129,11 @@ class GtkRtMilk(object):
                self._notesColumn.pack_start(self._nameCell, False)
                self._notesColumn.set_attributes(self._nameCell, text=self.NOTES_IDX)
 
-               self._todoItemTree = widgetTree.get_widget("todoItemTree")
+               self._todoBox = widgetTree.get_widget("todoBox")
+               self._todoItemScroll = gtk.ScrolledWindow()
+               self._todoItemScroll.set_policy(gtk.POLICY_NEVER, gtk.POLICY_AUTOMATIC)
+               self._todoItemTree = gtk.TreeView()
+               self._todoItemScroll.add(self._todoItemTree)
                self._onItemSelectId = 0
 
                self._taskNameEntry = widgetTree.get_widget("add-taskNameEntry")
@@ -197,6 +206,9 @@ class GtkRtMilk(object):
                """
                @note UI Thread
                """
+               self._todoBox.pack_start(self._todoItemScroll)
+               self._todoItemScroll.show_all()
+
                self._projectsList.clear()
                self._populate_projects()
 
@@ -226,6 +238,9 @@ class GtkRtMilk(object):
                """
                @note UI Thread
                """
+               self._todoBox.remove(self._todoItemScroll)
+               self._todoItemScroll.hide_all()
+
                self._projectsCombo.disconnect(self._onListActivateId)
                self._todoItemTree.disconnect(self._onItemSelectId)
                self._addTaskButton.disconnect(self._onAddId)