commit-gnue
[Top][All Lists]
Advanced

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

gnue/gnuef TODO samples/zipcode/zip_code.gfd sr...


From: James Thompson
Subject: gnue/gnuef TODO samples/zipcode/zip_code.gfd sr...
Date: Thu, 26 Oct 2000 12:30:48 -0700

CVSROOT:        /cvs
Module name:    gnue
Changes by:     James Thompson <address@hidden> 00/10/26 12:30:48

Modified files:
        gnuef          : TODO 
        gnuef/samples/zipcode: zip_code.gfd 
        gnuef/src      : GFForm.py GFObjects.py UIbase.py UIwxpython.py 

Log message:
        Working dropdowns
        Fixed bug in value validation against foreign block keys

CVSWeb URLs:
http://subversions.gnu.org/cgi-bin/cvsweb/gnue/gnuef/TODO.diff?r1=1.12&r2=1.13
http://subversions.gnu.org/cgi-bin/cvsweb/gnue/gnuef/samples/zipcode/zip_code.gfd.diff?r1=1.11&r2=1.12
http://subversions.gnu.org/cgi-bin/cvsweb/gnue/gnuef/src/GFForm.py.diff?r1=1.28&r2=1.29
http://subversions.gnu.org/cgi-bin/cvsweb/gnue/gnuef/src/GFObjects.py.diff?r1=1.25&r2=1.26
http://subversions.gnu.org/cgi-bin/cvsweb/gnue/gnuef/src/UIbase.py.diff?r1=1.10&r2=1.11
http://subversions.gnu.org/cgi-bin/cvsweb/gnue/gnuef/src/UIwxpython.py.diff?r1=1.21&r2=1.22

Patches:
Index: gnue/gnuef/TODO
diff -u gnue/gnuef/TODO:1.12 gnue/gnuef/TODO:1.13
--- gnue/gnuef/TODO:1.12        Sun Oct 22 16:26:43 2000
+++ gnue/gnuef/TODO     Thu Oct 26 12:30:48 2000
@@ -39,8 +39,6 @@
     ability for ui/forms to launch other ui/forms
     lookup dialogs
   
-    add attribute system (hidden, uppercase, numeric, entry mask, etc, etc)
-
   Add code to make a GUI startup failure roll into a text mode attempt
 
   Move things like database init in GFForm out of __init__ and 
@@ -52,7 +50,7 @@
   call the initializes of their children so we can get rid of 
   more of the self.walk nonsense
  
-  debug visibleCount & master/detail
+  debug master/detail
 
   Moving the focus from entry in one block to a different block does
   not result in the currentBlock switching to the new block
Index: gnue/gnuef/samples/zipcode/zip_code.gfd
diff -u gnue/gnuef/samples/zipcode/zip_code.gfd:1.11 
gnue/gnuef/samples/zipcode/zip_code.gfd:1.12
--- gnue/gnuef/samples/zipcode/zip_code.gfd:1.11        Thu Oct 26 09:47:00 2000
+++ gnue/gnuef/samples/zipcode/zip_code.gfd     Thu Oct 26 12:30:48 2000
@@ -20,7 +20,7 @@
       </entry>
 
       <label text="State" x="65" y="10"/>
-      <entry name="state" field="state" x="65" y="20" width="150" height="20" 
visibleCount="10" uppercase="" foreign_key="validator.state" 
foreign_key_description="description" style="text"/>
+      <entry name="state" field="state" x="65" y="20" width="150" height="20" 
visibleCount="10" uppercase="" foreign_key="validator.state" 
foreign_key_description="description" style="dropdown"/>
 
       <label text="Zip" x="125" y="10"/>
       <entry name="zip" field="zip" x="125" y="20" width="150" height="20" 
visibleCount="10" numeric="" max_length="5"/>
Index: gnue/gnuef/src/GFForm.py
diff -u gnue/gnuef/src/GFForm.py:1.28 gnue/gnuef/src/GFForm.py:1.29
--- gnue/gnuef/src/GFForm.py:1.28       Thu Oct 26 09:47:00 2000
+++ gnue/gnuef/src/GFForm.py    Thu Oct 26 12:30:48 2000
@@ -397,9 +397,7 @@
     replacement = ""
     object = event.data[0]
     validValues = object.allowedValues()
-    print event.data
     for key in validValues.keys():
-      print key, validValues[key], event.data[1]
       if validValues[key] == event.data[1]:
         replacement = key
         break
Index: gnue/gnuef/src/GFObjects.py
diff -u gnue/gnuef/src/GFObjects.py:1.25 gnue/gnuef/src/GFObjects.py:1.26
--- gnue/gnuef/src/GFObjects.py:1.25    Tue Oct 24 18:46:28 2000
+++ gnue/gnuef/src/GFObjects.py Thu Oct 26 12:30:48 2000
@@ -395,7 +395,7 @@
       datasourceName,fieldName = string.split(self.foreign_key,'.')
       datasource = self.block.form.datasourceDictionary[datasourceName]
 
-      for count in range(datasource.getLastRecordNumber()):
+      for count in range(datasource.getLastRecordNumber()+1):
         if datasource.getField(count,fieldName) == self.value:
           value = 1
           break
Index: gnue/gnuef/src/UIbase.py
diff -u gnue/gnuef/src/UIbase.py:1.10 gnue/gnuef/src/UIbase.py:1.11
--- gnue/gnuef/src/UIbase.py:1.10       Sun Oct 22 19:36:58 2000
+++ gnue/gnuef/src/UIbase.py    Thu Oct 26 12:30:48 2000
@@ -101,8 +101,8 @@
         if self.currentObject[0].getObjectType() in self.containerWidgets:
           self.currentWidget.insert(0,widget[0])
 
-        if self.currentObject[0].__dict__.has_key('foreign_key'):
-          print "Allowed Values: ",self.currentObject[0].allowedValues()
+#        if self.currentObject[0].__dict__.has_key('foreign_key'):
+#          print "Allowed Values: ",self.currentObject[0].allowedValues()
 
     except KeyError:
       pass
Index: gnue/gnuef/src/UIwxpython.py
diff -u gnue/gnuef/src/UIwxpython.py:1.21 gnue/gnuef/src/UIwxpython.py:1.22
--- gnue/gnuef/src/UIwxpython.py:1.21   Thu Oct 26 09:47:00 2000
+++ gnue/gnuef/src/UIwxpython.py        Thu Oct 26 12:30:48 2000
@@ -152,19 +152,31 @@
     block = event.data.block # .form.currentBlock
     currentRecord = block.currentRecord
 
+    if event.data.__dict__.has_key('style'):
+      style = event.data.style
+    else:
+      style = 'text'
+
     # Fill the prior spots 
     for count in range(index):
-#      print "Working on ",count
-#      print "filling with record", currentRecord-(index-count)
-#      print "total records", block.recordCount
-#      print "Value" 
,block.dataSourceLink.getField(currentRecord-(index-count),event.data.field)
-      
self.formToUI[event.data][0][count].SetValue(block.dataSourceLink.getField(currentRecord-(index-count),event.data.field))
+      if style == 'dropdown':
+        value = 
event.data.allowedValues()[block.dataSourceLink.getField(currentRecord-(index-count),event.data.field)]
+      else:
+        value = 
block.dataSourceLink.getField(currentRecord-(index-count),event.data.field)
+      self.formToUI[event.data][0][count].SetEvtHandlerEnabled(FALSE)
+      self.formToUI[event.data][0][count].SetValue(value)
+      self.formToUI[event.data][0][count].SetEvtHandlerEnabled(TRUE)
 
     # fill currently indexed spot
-#    print "Filling index ", index
-#    print "currentRecord ", currentRecord
-#    print "recordCount   ", block.recordCount
-    self.formToUI[event.data][0][index].SetValue(event.data.getValue())
+    if style == 'dropdown':
+      value = event.data.allowedValues()[event.data.getValue()]
+    else:
+      value = event.data.getValue()
+      
+    self.formToUI[event.data][0][index].SetEvtHandlerEnabled(FALSE)
+    self.formToUI[event.data][0][index].SetValue(value)
+    self.formToUI[event.data][0][index].SetEvtHandlerEnabled(TRUE)
+
     
self.formToUI[event.data][0][index].SetInsertionPoint(event.data.cursorPosition)
 
     # Fill trailing spots
@@ -179,7 +191,13 @@
           value = ""
         else:
           value = 
block.dataSourceLink.getField(currentRecord+(count-index),event.data.field)
+          if style == 'dropdown':
+            value = 
event.data.allowedValues()[block.dataSourceLink.getField(currentRecord+(count-index),event.data.field)]
+          else:
+            value = 
block.dataSourceLink.getField(currentRecord+(count-index),event.data.field)
+        self.formToUI[event.data][0][count].SetEvtHandlerEnabled(FALSE)
         self.formToUI[event.data][0][count].SetValue(value)
+        self.formToUI[event.data][0][count].SetEvtHandlerEnabled(TRUE)
       count = count +1   
         
   def gotoPage(self, event):
@@ -244,6 +262,8 @@
     # Combo box events
     #
     elif event.GetEventType() == wxEVT_COMMAND_COMBOBOX_SELECTED:
+
+      print "received combobox event"
       #
       # Begin duplicate of the mouse handling code to see
       # if it will allow me proper focus control w/
@@ -432,9 +452,9 @@
                                             (spacer*(int(object.height)/2)))),
                           wxSize(int(object.width),int(object.height)),choices,
                                    wxCB_READONLY)
-        EVT_COMBOBOX(newWidget, newWidget.GetId(), self.uiEventTrap) 
+        newWidget.SetValue("")
         EVT_CHAR(newWidget, self.uiEventTrap)
-        
+        EVT_COMBOBOX(newWidget, newWidget.GetId(), self.uiEventTrap)         
       else:
         newWidget = wxTextCtrl(container, -1, object.value,
                             wxDLG_PNT(container,



reply via email to

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