[billreminder] Still working on getting categoriesdialog to properly handle categories.



commit f6d3da38fa869530d4e6eb9469920ecae51242cc
Author: Og B. Maciel <ogmaciel gnome org>
Date:   Tue Oct 13 09:36:36 2009 -0400

    Still working on getting categoriesdialog to properly handle categories.

 src/gui/adddialog.py        |    2 +-
 src/gui/categoriesdialog.py |   19 +++++++++----------
 src/lib/actions.py          |    3 +++
 3 files changed, 13 insertions(+), 11 deletions(-)
---
diff --git a/src/gui/adddialog.py b/src/gui/adddialog.py
index 464ccad..426cbea 100644
--- a/src/gui/adddialog.py
+++ b/src/gui/adddialog.py
@@ -477,7 +477,7 @@ class AddDialog(gtk.Dialog):
                 categories._on_savebutton_clicked(None)
             category = categories.currentrecord
 
-            self._populate_category(category['categoryname'])
+            self._populate_category(category.name)
 
         categories.destroy()
         return ret
diff --git a/src/gui/categoriesdialog.py b/src/gui/categoriesdialog.py
index 3990ac4..644315f 100644
--- a/src/gui/categoriesdialog.py
+++ b/src/gui/categoriesdialog.py
@@ -175,21 +175,20 @@ class CategoriesDialog(gtk.Dialog):
             # The ID for the selected record
             category_id = _model.get_value(iteration, 0)
             # Now fetch it from the database
-            self.currentrecord = self.actions.get_categories({'id': id})[0]
+            self.currentrecord = self.actions.get_categories(id=category_id)[0]
         else:
             self.currentrecord = None
 
     def _update_fields(self):
         if not self.currentrecord:
             self.name_.set_text("")
-            self.color.set_color(gtk.gdk.color_parse("#000"))
-            return
-        self.name_.set_text(self.currentrecord.name)
-        try:
-            color = gtk.gdk.color_parse(self.currentrecord.color)
-        except ValueError:
-            color = gtk.gdk.color_parse("#000")
-        self.color.set_color(color)
+            self.color.set_color(gtk.gdk.color_parse("#fff"))
+        else:
+            self.name_.set_text(self.currentrecord.name)
+
+            color = self.currentrecord.color and self.currentrecord.color or '#fff'
+            color = gtk.gdk.color_parse(color)
+            self.color.set_color(color)
 
     def reloadTreeView(self, *arg):
         # Update list with updated record
@@ -210,7 +209,7 @@ class CategoriesDialog(gtk.Dialog):
         color = self.color.get_color().to_string()
 
         # Check if it already exists
-        rec = self.actions.get_categories({'name': name})
+        rec = self.actions.get_categories(name=name)
         if rec:
             message = Message()
             if message.ShowQuestionYesNo(_("The category \"%s\" already exists in the database!\n\n"\
diff --git a/src/lib/actions.py b/src/lib/actions.py
index 51905d7..86498fc 100644
--- a/src/lib/actions.py
+++ b/src/lib/actions.py
@@ -130,5 +130,8 @@ class Actions(object):
     def add_category(self, category):
         return self.dal.add(category)
 
+    def edit(self, dbobject):
+        return self.dal.add(bill)
+
     def delete(self, dbobject):
         pass



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