commit-gnue
[Top][All Lists]
Advanced

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

gnue/gnuef INSTALL TODO samples/zipcode/states....


From: James Thompson
Subject: gnue/gnuef INSTALL TODO samples/zipcode/states....
Date: Thu, 15 Feb 2001 20:34:12 -0800

CVSROOT:        /cvs
Module name:    gnue
Changes by:     James Thompson <address@hidden> 01/02/15 20:34:11

Modified files:
        gnuef          : INSTALL TODO 
        gnuef/samples/zipcode: states.gfd zipcode.gfd 
        gnuef/src      : GFForm.py GFObjects.py UIwxpython.py 

Log message:
        added gap attrib to entry widgets
        fixed height bug causing all entry's w/ any height to get set to 
multiline
        readonly fields can now be queried
        slight change to UIwxpython to have it ignore events it can't handle 
instead of passing to std widget handlers
        updated INSTALL docs a little

CVSWeb URLs:
http://subversions.gnu.org/cgi-bin/cvsweb/gnue/gnuef/INSTALL.diff?r1=1.10&r2=1.11
http://subversions.gnu.org/cgi-bin/cvsweb/gnue/gnuef/TODO.diff?r1=1.44&r2=1.45
http://subversions.gnu.org/cgi-bin/cvsweb/gnue/gnuef/samples/zipcode/states.gfd.diff?r1=1.10&r2=1.11
http://subversions.gnu.org/cgi-bin/cvsweb/gnue/gnuef/samples/zipcode/zipcode.gfd.diff?r1=1.7&r2=1.8
http://subversions.gnu.org/cgi-bin/cvsweb/gnue/gnuef/src/GFForm.py.diff?r1=1.68&r2=1.69
http://subversions.gnu.org/cgi-bin/cvsweb/gnue/gnuef/src/GFObjects.py.diff?r1=1.61&r2=1.62
http://subversions.gnu.org/cgi-bin/cvsweb/gnue/gnuef/src/UIwxpython.py.diff?r1=1.65&r2=1.66

Patches:
Index: gnue/gnuef/INSTALL
diff -u gnue/gnuef/INSTALL:1.10 gnue/gnuef/INSTALL:1.11
--- gnue/gnuef/INSTALL:1.10     Fri Feb  9 14:06:46 2001
+++ gnue/gnuef/INSTALL  Thu Feb 15 20:34:11 2001
@@ -53,7 +53,7 @@
 software.
 
 Distutils-1.0.1.tar.gz:                 www.python.org 
-        Not needed for Python 2.0 or newer
+        Not needed for Python 1.6 or newer
        Untar in some place (e.g. /usr/local/src). Enter in the
        directory Distutils-1.0.1, issue "./setup.py build" and as
        root "./setup.py install".
@@ -78,7 +78,7 @@
        Untar in some place. Enter in the directory PyXML-0.6.1, issue
        "python setup.py build" and as root "python setup.py install".
 
-wxGTK-2.2.2.tar.gz:     www.freiburg.linux.de/~wxxt/download.htm 
+wxGTK-2.2.2.tar.gz:     www.wxwindows.org
         Untar in some place. Enter in the directory wxGTK, issue
         "./configure", "make" - this will run looong time, and then
        "make install" as root.
Index: gnue/gnuef/TODO
diff -u gnue/gnuef/TODO:1.44 gnue/gnuef/TODO:1.45
--- gnue/gnuef/TODO:1.44        Fri Feb  9 14:06:46 2001
+++ gnue/gnuef/TODO     Thu Feb 15 20:34:11 2001
@@ -5,6 +5,8 @@
 
     samples/geas/ needs table creation scripts or needs to instruct to
       build the tables from geas samples to work properly.
+    
+    triggers should not fire during query entry
 
   Internal Enhancements
     Speed, speed, speed (it's pretty bad now w/ complex forms)
@@ -41,13 +43,13 @@
 
     menus should disable options not available via events 
 
-    Add toolbar support [derek]
-
     ability for ui/forms to launch other ui/forms
 
     Go thru UIwxpython and UIcurses and pull out everything possible
       that can be put in UIbase.  Maybe adjust UIpython to use NC*style
       ojbects so that most of the core functionality can be moved to UIbase
+
+    Pop up search boxes
 
     Dropdown Issues:
       wxpython dropdowns don't allow you to go to next|prev record via up and 
down arrows
Index: gnue/gnuef/samples/zipcode/states.gfd
diff -u gnue/gnuef/samples/zipcode/states.gfd:1.10 
gnue/gnuef/samples/zipcode/states.gfd:1.11
--- gnue/gnuef/samples/zipcode/states.gfd:1.10  Thu Jan 18 05:26:37 2001
+++ gnue/gnuef/samples/zipcode/states.gfd       Thu Feb 15 20:34:11 2001
@@ -22,12 +22,12 @@
 
 
     <!-- Block of cities -->
-    <block name="cities"  datasource="dscities" master="state.state" 
detail="state">
+    <block name="cities"  datasource="dscities" master="state.state" 
detail="state_code">
       <label text="City" x="2" y="9"/>
       <entry name="city" field="city" x="2" y="10" width="20" visibleCount="5" 
/>
 
       <label text="ST" x="23" y="9"/>
-      <entry name="state" field="state" x="23" y="10" width="3" 
visibleCount="5" />
+      <entry name="state" field="state_code" x="23" y="10" width="3" 
visibleCount="5" />
 
       <label text="Zip" x="27" y="9"/>
       <entry name="zip" field="zipcode" x="27" y="10" width="10" 
visibleCount="5" />
Index: gnue/gnuef/samples/zipcode/zipcode.gfd
diff -u gnue/gnuef/samples/zipcode/zipcode.gfd:1.7 
gnue/gnuef/samples/zipcode/zipcode.gfd:1.8
--- gnue/gnuef/samples/zipcode/zipcode.gfd:1.7  Fri Feb  9 14:06:48 2001
+++ gnue/gnuef/samples/zipcode/zipcode.gfd      Thu Feb 15 20:34:11 2001
@@ -31,7 +31,7 @@
       </entry>
 
       <label text="Zip" x="33" y="1"/>
-      <entry name="zip" field="zip" x="33" y="2" width="5" visibleCount="15" 
numeric="" max_length="5">
+      <entry name="zip" field="zip" x="33" y="2" width="5" visibleCount="15" 
numeric="" max_length="5" readonly="">
        <options>
          <tip>US Postal Zip Code</tip>
        </options>
Index: gnue/gnuef/src/GFForm.py
diff -u gnue/gnuef/src/GFForm.py:1.68 gnue/gnuef/src/GFForm.py:1.69
--- gnue/gnuef/src/GFForm.py:1.68       Fri Feb  9 17:00:19 2001
+++ gnue/gnuef/src/GFForm.py    Thu Feb 15 20:34:11 2001
@@ -318,15 +318,14 @@
   def requestQuery(self, event):
     if hasattr(self.currentBlock,"master"):
       self.parent.dispatchEvent( GFEvent( 'msgBoxUI', "Query from detail 
blocks currently not supported"))
-      #message = GFMsgBox(self, "Query from detail blocks currently not 
supported")
-      #message.show()
       return
     for block in self.blockList:
       if not block.isSaved():
-#        self.parent.dispatchEvent( GFEvent( 'msgBoxUI', 
GFOptions._msgNOTSAVED) )
         message = GFMsgBox(self, GFOptions._msgNOTSAVED)
        message.show()
         return
+    for block in self.blockList:
+      block.processRollback()
       
     self.currentBlock.initQuery()
       
@@ -403,7 +402,7 @@
     if not self.currentEntry.verifyValue(): return
     for object in self.currentEntry.parent.children:
       # Put the first field as the next to rollover
-      if object.getObjectType()=='GFEntry'and not hasattr(object,'hidden') and 
not hasattr(object,'readonly'):
+      if object.getObjectType()=='GFEntry' and (not hasattr(object,'hidden')) 
and ((not hasattr(object,'readonly')) or self.currentBlock.mode=='query'):
         if nextEntry == None: nextEntry = object
         
         if object == self.currentEntry:
@@ -435,7 +434,7 @@
     nextEntry = None
     if not self.currentEntry.verifyValue(): return
     for object in self.currentEntry.parent.children:
-      if object.getObjectType()=='GFEntry' and not hasattr(object,'hidden') 
and not hasattr(object,'readonly'):
+      if object.getObjectType()=='GFEntry' and not hasattr(object,'hidden') 
and (not hasattr(object,'readonly') or self.currentBlock.mode=='query'):
         nextEntry = object
     
     keepNext = 0
@@ -465,7 +464,8 @@
   # an event sourse
   #
   def changeFocus(self, event):
-    if event.data.getObjectType()=='GFEntry' and (hasattr(event.data,'hidden') 
or hasattr(event.data,'readonly')):
+    if event.data.getObjectType()=='GFEntry' and (hasattr(event.data,'hidden') 
or
+                                                  
(hasattr(event.data,'readonly') and self.currentBlock.mode!='query')):
       return
       
     self.currentEntry.processTrigger('Pre-FocusOut')
@@ -600,7 +600,7 @@
   def keyPress(self, event):
     GFDebug.printMesg(10, "Keypress event %s"%event.data)
     if (self.currentEntry != None):
-      if not hasattr(self.currentEntry,'readonly'):
+      if not hasattr(self.currentEntry,'readonly') or 
self.currentBlock.mode=='query':
         currentvalue = self.currentEntry.getValue()
 
         if ord(event.data) == 13:
@@ -650,7 +650,7 @@
   # charater be removed from the current entry object
   #
   def removeCharacter(self, event):
-    if not hasattr(self.currentEntry,'readonly'):
+    if not hasattr(self.currentEntry,'readonly') or 
self.currentBlock.mode=='query':
       if event.getEvent() == 'requestBACKSPACE':
         if self.currentEntry.cursorPosition > 0:
           self.currentEntry.cursorPosition = self.currentEntry.cursorPosition 
- 1
Index: gnue/gnuef/src/GFObjects.py
diff -u gnue/gnuef/src/GFObjects.py:1.61 gnue/gnuef/src/GFObjects.py:1.62
--- gnue/gnuef/src/GFObjects.py:1.61    Mon Feb 12 19:55:40 2001
+++ gnue/gnuef/src/GFObjects.py Thu Feb 15 20:34:11 2001
@@ -280,7 +280,7 @@
       masterBlock,masterField = string.split(self.master,'.')
       if masterBlock == originatingBlock.name:
         fieldValue = str(self.form.findValue(masterBlock, masterField))
-        
+
         ## clear the link
         self.dataSourceLink.clear()
         self.recordCount = 0
@@ -290,9 +290,7 @@
           self.dataSourceLink.setField(0,self.detail,fieldValue,TRUE)
           self.dataSourceLink.query()
           self.recordCount = self.dataSourceLink.getLastRecordNumber()
-
-          # hack : this needs to reset UI 
-                  
+          
         self.switchRecord(0)
 
 
Index: gnue/gnuef/src/UIwxpython.py
diff -u gnue/gnuef/src/UIwxpython.py:1.65 gnue/gnuef/src/UIwxpython.py:1.66
--- gnue/gnuef/src/UIwxpython.py:1.65   Mon Feb 12 19:55:40 2001
+++ gnue/gnuef/src/UIwxpython.py        Thu Feb 15 20:34:11 2001
@@ -414,7 +414,8 @@
     #
     else:
       # Need to probably log this somewhere in debug mode
-      event.Skip()
+      pass
+      #event.Skip()
       
     if action != None:
       self.dispatchEvent(action)
@@ -704,6 +705,11 @@
       else:
         style = 'text'
 
+      if hasattr(object,'gap'):
+        gap = int(object.gap)
+      else:
+        gap = 0
+
       for spacer in range(count):
         spacer = int(spacer)
 
@@ -726,12 +732,12 @@
           EVT_COMBOBOX(newWidget, newWidget.GetId(), self.uiEventTrap)         
         else:
           styles = wxTE_PROCESS_TAB
-          if object.height > 1:
+          if int(object.height) > 1:
             styles = styles|wxTE_MULTILINE
-            
+
           newWidget = wxTextCtrl(container, -1, object.value,
                                  wxPoint(int(object.x)*int(self.widgetWidth),
-                                         
(int(object.y)+spacer)*int(self.widgetHeight)),
+                                         
(int(object.y)+spacer+(gap*spacer))*int(self.widgetHeight)),
                                  wxSize(int(object.width)*int(self.textWidth),
                                         
int(object.height)*int(self.textHeight)),styles)
           



reply via email to

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