commit-gnue
[Top][All Lists]
Advanced

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

[gnue] r9160 - trunk/gnue-forms/src/GFObjects


From: reinhard
Subject: [gnue] r9160 - trunk/gnue-forms/src/GFObjects
Date: Tue, 12 Dec 2006 15:15:11 -0600 (CST)

Author: reinhard
Date: 2006-12-12 15:15:10 -0600 (Tue, 12 Dec 2006)
New Revision: 9160

Modified:
   trunk/gnue-forms/src/GFObjects/GFField.py
Log:
Made lookup dictionaries and lists private to GFField.


Modified: trunk/gnue-forms/src/GFObjects/GFField.py
===================================================================
--- trunk/gnue-forms/src/GFObjects/GFField.py   2006-12-12 20:59:50 UTC (rev 
9159)
+++ trunk/gnue-forms/src/GFObjects/GFField.py   2006-12-12 21:15:10 UTC (rev 
9160)
@@ -69,10 +69,11 @@
         self._lowercase = False
         self._numeric = False
 
-        # These are also used by displayHandler.
-        self._allowedValues = None
-        self._allowedValuesDescr = [""]
-        self._allowedValuesReverse = {"":""}
+        # Lookup info for foreign key lookup fields
+        self.__is_lookup = False                # True for lookup fields
+        self.__lookup_list = [u""]              # all valid user values
+        self.__lookup_dict = None               # {db_value: user_value}
+        self.__lookup_dict_reverse = {}         # {user_value: db_value}
 
         # These are only here because "rows" and "gap" is passed from GFBlock
         # through GFField to GFEntry.
@@ -82,9 +83,6 @@
         # This will be populated by GFEntry's initialize.
         self._entryList = []
 
-        # This is True if it is a lookup field.
-        self.__is_lookup = False
-
         # Valid triggers
         self._validTriggers = {
             'PRE-FOCUSOUT':  'Pre-FocusOut',
@@ -255,7 +253,7 @@
         if not self.__is_lookup:
             return value
 
-        for allowed in self._allowedValues.values():
+        for allowed in self.__lookup_list:
             if allowed.startswith(value):
                 return allowed
 
@@ -278,10 +276,10 @@
         if not self.__is_lookup:
             return value
 
-        if value is None or value == u"":
+        if value is None:
             return None
-        elif value in self._allowedValuesReverse:
-            return self._allowedValuesReverse[value]
+        elif value in self.__lookup_dict_reverse:
+            return self.__lookup_dict_reverse[value]
         else:
             raise InvalidFieldValueError(self.name, value)
 
@@ -301,10 +299,10 @@
 
         db_value = self.__get_value(offset)
 
-        if self._allowedValues is None or db_value is None:
-            return u""
-        elif db_value in self._allowedValues:
-            return self._allowedValues[db_value]
+        if self.__lookup_dict is None or db_value is None:
+            return None
+        elif db_value in self.__lookup_dict:
+            return self.__lookup_dict[db_value]
         else:
             # db returned value that is actually not allowed
             return u"(invalid)"
@@ -494,9 +492,9 @@
 
     def __loadAllowedValues(self, resultSet):
 
-        self._allowedValues = {"":""}
-        self._allowedValuesDescr = [""]
-        self._allowedValuesReverse = {"":""}
+        self.__lookup_list = [u""]
+        self.__lookup_dict = {}
+        self.__lookup_dict_reverse = {}
 
         dpSep = gConfigForms('DropdownSeparator')
         if dpSep.startswith('"') and dpSep.endswith('"') and len(dpSep) > 2:
@@ -505,12 +503,12 @@
         array = resultSet.getArray ([self.fk_key] + self._fk_descr)
 
         for line in array:
-            key = "%s" % line[0]
+            key = line[0]
             descr = dpSep.join (["%s" % i for i in line[1:]])
 
-            self._allowedValues[key] = descr
-            self._allowedValuesDescr.append(descr)
-            self._allowedValuesReverse[descr] = key
+            self.__lookup_list.append(descr)
+            self.__lookup_dict[key] = descr
+            self.__lookup_dict_reverse[descr] = key
 
         # And now, position the resultSet to the correct record according to
         # the current field content.
@@ -525,9 +523,7 @@
         # Update the UI to also for other rows
         self.__refresh_ui_all()
  
-        assert gDebug(5,'Created for DropDown: %s' % self._allowedValues)
 
-
     # -------------------------------------------------------------------------
     # Keep the fk resultset in sync
     # -------------------------------------------------------------------------
@@ -563,7 +559,7 @@
     def __refresh_ui_choices(self):
 
         for entry in self._entryList:
-            entry.refresh_ui_choices(self._allowedValuesDescr)
+            entry.refresh_ui_choices(self.__lookup_list)
 
 
     # -------------------------------------------------------------------------
@@ -596,7 +592,7 @@
         and a sequence of the fk-descriptions.
         """
 
-        return (self._allowedValues, self._allowedValuesDescr)
+        return (self.__lookup_dict, self.__lookup_list)
 
     # -------------------------------------------------------------------------
 





reply via email to

[Prev in Thread] Current Thread [Next in Thread]