commit-gnue
[Top][All Lists]
Advanced

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

gnue designer/BUGS designer/src/GFDesigner.py d...


From: James Thompson
Subject: gnue designer/BUGS designer/src/GFDesigner.py d...
Date: Thu, 09 Aug 2001 21:49:21 -0700

CVSROOT:        /cvs
Module name:    gnue
Branch:         gnuef-new-datasources
Changes by:     James Thompson <address@hidden> 01/08/09 21:49:20

Modified files:
        designer       : BUGS 
        designer/src   : GFDesigner.py Instance.py LayoutEditor.py 
                         PopupMenu.py TreeView.py 
        geas           : TODO configure.in 
        geas/doc/dia   : dependencies.dia 
        geas/lib/classdefs: Makefile.am classdata.h lparser.h 
        geas/src       : Makefile.am collectiondata.c dataobject.c 
                         geas-server.c geas-skeleton.c objectlist.c 
                         security.c 
        geas/src/methods: methods_glibmodule.h 
        geas/src/objectcache: objectcache.c 
        geas/src/objectstore: Makefile.am mysql.c objectstore_private.h 
                              postgresql.c 
        geas/tools     : .cvsignore Makefile.am parse_load_sql.py 
        gnue-common    : setup.py 
        gnue-common/etc: sample.gnue.conf 
        gnue-common/src: GConnections.py GObjects.py GParser.py 
        gnue-common/src/dbdrivers/geas: DBdriver.py 
        gnue-common/src/dbdrivers/postgresql: DBdriver.py 
        gnue-config    : README 
        gnue-config/accounting/package-doc: Accounting.sgml 
        gnue-config/base/package-doc: chapters.ent 
        gnue-config/supply-chain/purchasing/classes: purchasing.gcd 
        gnuef          : setup.py 
        gnuef/samples  : contact.gfd 
        gnuef/samples/po: sc_po_entry.gfd 
        gnuef/samples/track/forms: contact_manager.gfd 
        gnuef/samples/zipcode: zipcode.gfd 
        gnuef/src      : GFForm.py GFInstance.py GFParser.py 
                         GFTrigger.py UIbase.py UIcurses.py 
                         UIpyncurses.py 
        gnuef/src/GFObjects: GFBlock.py GFDataSource.py GFEntry.py 
                             GFLabel.py 
Added files:
        designer/src   : Icons.py 
        geas           : FAQ 
        geas/src/objectstore: compare.c compare.h 
        geas/tools     : geas-oidgen.c 
        gnue-common/images: destree_block.xpm destree_datasource.xpm 
                            destree_entry.xpm destree_import.xpm 
                            destree_page.xpm destree_pagewidget.xpm 
                            destree_properties.xpm destree_trigger.xpm 
Removed files:
        geas/lib/classdefs: classdata_database.c classdata_database.h 
        geas/tools     : gen_uuid.c 

Log message:
        Merged changes from head into the branch (did not move back to head yet)
        Fixed misc bugs
        More than likely introduced more bugs than you can imagine (may jcater 
forgive me)

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/designer/BUGS.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.2&tr2=1.2.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/designer/src/Icons.py?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&rev=1.2.2.1
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/designer/src/GFDesigner.py.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.15&tr2=1.15.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/designer/src/Instance.py.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.17&tr2=1.17.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/designer/src/LayoutEditor.py.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.15.2.1&tr2=1.15.2.2&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/designer/src/PopupMenu.py.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.2.2.1&tr2=1.2.2.2&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/designer/src/TreeView.py.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.6.2.1&tr2=1.6.2.2&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/geas/FAQ?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&rev=1.1.2.1
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/geas/TODO.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.59&tr2=1.59.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/geas/configure.in.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.37&tr2=1.37.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/geas/doc/dia/dependencies.dia.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.2&tr2=1.2.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/geas/lib/classdefs/Makefile.am.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.7&tr2=1.7.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/geas/lib/classdefs/classdata.h.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.32&tr2=1.32.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/geas/lib/classdefs/lparser.h.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.5&tr2=1.5.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/geas/src/Makefile.am.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.39&tr2=1.39.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/geas/src/collectiondata.c.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.28&tr2=1.28.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/geas/src/dataobject.c.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.57&tr2=1.57.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/geas/src/geas-server.c.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.106&tr2=1.106.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/geas/src/geas-skeleton.c.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.67&tr2=1.67.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/geas/src/objectlist.c.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.28&tr2=1.28.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/geas/src/security.c.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.15&tr2=1.15.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/geas/src/methods/methods_glibmodule.h.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.11&tr2=1.11.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/geas/src/objectcache/objectcache.c.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.57&tr2=1.57.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/geas/src/objectstore/compare.c?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&rev=1.3.2.1
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/geas/src/objectstore/compare.h?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&rev=1.2.2.1
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/geas/src/objectstore/Makefile.am.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.7&tr2=1.7.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/geas/src/objectstore/mysql.c.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.5&tr2=1.5.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/geas/src/objectstore/objectstore_private.h.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.2&tr2=1.2.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/geas/src/objectstore/postgresql.c.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.10&tr2=1.10.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/geas/tools/geas-oidgen.c?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&rev=1.1.2.1
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/geas/tools/.cvsignore.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.1&tr2=1.1.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/geas/tools/Makefile.am.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.7&tr2=1.7.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/geas/tools/parse_load_sql.py.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.6&tr2=1.6.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-common/setup.py.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.13.2.2&tr2=1.13.2.3&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-common/etc/sample.gnue.conf.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.3.2.2&tr2=1.3.2.3&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-common/images/destree_block.xpm?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&rev=1.2.2.1
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-common/images/destree_datasource.xpm?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&rev=1.2.2.1
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-common/images/destree_entry.xpm?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&rev=1.2.2.1
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-common/images/destree_import.xpm?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&rev=1.2.2.1
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-common/images/destree_page.xpm?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&rev=1.2.2.1
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-common/images/destree_pagewidget.xpm?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&rev=1.2.2.1
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-common/images/destree_properties.xpm?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&rev=1.2.2.1
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-common/images/destree_trigger.xpm?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&rev=1.2.2.1
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-common/src/GConnections.py.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.9.2.3&tr2=1.9.2.4&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-common/src/GObjects.py.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.15.2.1&tr2=1.15.2.2&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-common/src/GParser.py.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.18.2.2&tr2=1.18.2.3&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-common/src/dbdrivers/geas/DBdriver.py.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.5.2.2&tr2=1.5.2.3&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-common/src/dbdrivers/postgresql/DBdriver.py.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.8.2.4&tr2=1.8.2.5&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-config/README.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.4&tr2=1.4.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-config/accounting/package-doc/Accounting.sgml.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.7&tr2=1.7.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-config/base/package-doc/chapters.ent.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.11&tr2=1.11.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-config/supply-chain/purchasing/classes/purchasing.gcd.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.10&tr2=1.10.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnuef/setup.py.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.35&tr2=1.35.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnuef/samples/contact.gfd.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.14&tr2=1.14.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnuef/samples/po/sc_po_entry.gfd.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.7&tr2=1.7.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnuef/samples/track/forms/contact_manager.gfd.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.4&tr2=1.4.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnuef/samples/zipcode/zipcode.gfd.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.10.2.2&tr2=1.10.2.3&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnuef/src/GFForm.py.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.110.2.17&tr2=1.110.2.18&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnuef/src/GFInstance.py.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.16.2.9&tr2=1.16.2.10&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnuef/src/GFParser.py.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.46.2.3&tr2=1.46.2.4&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnuef/src/GFTrigger.py.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.40.2.3&tr2=1.40.2.4&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnuef/src/UIbase.py.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.40.2.7&tr2=1.40.2.8&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnuef/src/UIcurses.py.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.9&tr2=1.9.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnuef/src/UIpyncurses.py.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.19&tr2=1.19.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnuef/src/GFObjects/GFBlock.py.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.4.2.20&tr2=1.4.2.21&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnuef/src/GFObjects/GFDataSource.py.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.3.2.9&tr2=1.3.2.10&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnuef/src/GFObjects/GFEntry.py.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.2.2.17&tr2=1.2.2.18&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnuef/src/GFObjects/GFLabel.py.diff?cvsroot=OldCVS&only_with_tag=gnuef-new-datasources&tr1=1.1.2.4&tr2=1.1.2.5&r1=text&r2=text

Patches:
Index: gnue/designer/BUGS
diff -u gnue/designer/BUGS:1.5 gnue/designer/BUGS:1.6
--- gnue/designer/BUGS:1.5      Tue Jul 31 16:40:35 2001
+++ gnue/designer/BUGS  Tue Jul 31 16:44:12 2001
@@ -34,11 +34,17 @@
 
 * If you hand-edit a form definition and comment out sections, then 
   open this form definition in designer and save, you will lose your 
-  commented sections.  This is due to the fact that designer does not 
-  save XML comments between sessions. 
+  commented sections.  This is due to the fact that designer's XML 
+  parser does not save XML comments between sessions. 
 
-***********************************************
+****************************************************
 PLEASE REPORT ANY BUGS NOT LISTED ABOVE AT: 
    http://savannah.gnu.org/support/?group_id=34
-***********************************************
+
+Include as much detail about your computer setup as 
+possible. If you can reliably reproduce the bug, 
+please include each step involved. Does the problem
+only occur when working on a single form (but not 
+other similar forms?) 
+****************************************************
 
Index: gnue/designer/src/GFDesigner.py
diff -u gnue/designer/src/GFDesigner.py:1.15 
gnue/designer/src/GFDesigner.py:1.16
--- gnue/designer/src/GFDesigner.py:1.15        Sun Jul  1 10:07:37 2001
+++ gnue/designer/src/GFDesigner.py     Sun Jul 29 13:18:55 2001
@@ -31,6 +31,7 @@
 from gnue.common.GClientApp import GClientApp
 from gnue.forms import GFForm, GFInstance, GFParser, GFObjects, GFTrigger, 
GFLibrary, UIwxpython
 from Instance import *
+from gnue.designer import VERSION
 import TemplateParser
 
 
Index: gnue/designer/src/Icons.py
diff -u gnue/designer/src/Icons.py:1.1 gnue/designer/src/Icons.py:1.2
--- gnue/designer/src/Icons.py:1.1      Sat Jul 28 21:12:14 2001
+++ gnue/designer/src/Icons.py  Sun Jul 29 13:10:51 2001
@@ -30,7 +30,7 @@
 from wxPython.wx import *
 
 treeIconMap = {}
-treeIconList = wxImageList(24,24,false)
+treeIconList = wxImageList(16,16,false)
  
 if not os.environ.has_key('INSTALL_PREFIX'):
   iconlocation = os.environ['INSTALL_PREFIX']
@@ -39,10 +39,10 @@
 
 for f in ('block','datasource','entry','import','pagewidget',
           'page','trigger','properties'): 
-  if os.path.isfile('%s/destree_%s.xpm' % (iconlocation, f)):
-    treeIconMap[f] = treeIconList.AddIcon(
-        wxIcon('%s/destree_%s.xpm' % (iconlocation, f), wxBITMAP_TYPE_XPM))
-  else: 
+#  if os.path.isfile('%s/destree_%s.xpm' % (iconlocation, f)):
+#    treeIconMap[f] = treeIconList.AddIcon(
+#        wxIcon('%s/destree_%s.xpm' % (iconlocation, f), wxBITMAP_TYPE_XPM))
+#  else: 
     treeIconMap[f] = treeIconList.AddIcon(wxNullIcon)
 
 
Index: gnue/designer/src/Instance.py
diff -u gnue/designer/src/Instance.py:1.21 gnue/designer/src/Instance.py:1.22
--- gnue/designer/src/Instance.py:1.21  Sun Jul 29 13:18:55 2001
+++ gnue/designer/src/Instance.py       Sun Jul 29 21:38:49 2001
@@ -58,6 +58,7 @@
     RuntimeSettings.registerRuntimeSettingHandler(self, self)
 
     self._isdirty = 0
+    self._makeBackup = 1
 
     self._app = app
     self._lastGenericNameSeq = {}
@@ -289,17 +290,20 @@
     location = self._path
     fileHandle = None
     fileHandle2 = None
-    try: 
-      fileHandle = open(location,'r')
-      fileHandle2 = open(location + "~",'w')
-      fileHandle2.writelines(fileHandle.readlines())
-    except:
-      pass
-    else: 
-      if fileHandle != None: 
-        fileHandle.close()
-      if fileHandle2 != None: 
-        fileHandle2.close()
+    if self._makeBackup:
+      try: 
+        fileHandle = open(location,'r')
+        fileHandle2 = open(location + "~",'w')
+        fileHandle2.writelines(fileHandle.readlines())
+      except:
+        pass
+      else: 
+        if fileHandle != None: 
+          fileHandle.close()
+        if fileHandle2 != None: 
+          fileHandle2.close()
+
+    self._makeBackup = 0
 
     options = []
     imports = []
Index: gnue/designer/src/LayoutEditor.py
diff -u gnue/designer/src/LayoutEditor.py:1.19 
gnue/designer/src/LayoutEditor.py:1.20
--- gnue/designer/src/LayoutEditor.py:1.19      Sat Jul 28 21:12:14 2001
+++ gnue/designer/src/LayoutEditor.py   Sat Jul 28 21:36:30 2001
@@ -81,14 +81,18 @@
     if hasattr(object, '_widgetHandler'): 
       self.propBar.setCurrentObject(object)
     if handler != __name__: 
-      if isinstance(object, GFObjects.GFPage) and object != self.page: 
-        if self.panel != None: 
-          self.panel.Destroy()
-          self.drawPage(object)
-      else: 
-        for o in self._currentSelection.keys():
-          o.setSelected(0)
-        object.walk(self.__setCurrentObject)
+      self.getPages()
+      self._setCurrentPage(object)
+
+  def _setCurrentPage(self, object): 
+    if isinstance(object, GFObjects.GFPage) and object != self.page: 
+      if self.panel != None: 
+        self.panel.Destroy()
+        self.drawPage(object)
+    else: 
+      for o in self._currentSelection.keys():
+        o.setSelected(0)
+      object.walk(self.__setCurrentObject)
 
   def __setCurrentObject(self,object): 
     if hasattr(object, '_widgetHandler'): 
@@ -96,6 +100,7 @@
       object._widgetHandler.setSelected(1)
 
   def onCreateObject (self, object, handler):
+    self._currentSelection = {}
     if object == None: 
       return
     if handler != __name__:
@@ -130,8 +135,6 @@
                  self.panelColor.Green()+16,    
                  self.panelColor.Blue()+16)
 
-    self.getPages()
-
     UIwxpython.initFont(self.panel)
 
     maxWidth, maxHeight, maxDescent, maxLeading = [0,0,0,0]
@@ -231,7 +234,8 @@
   def OnPageSelected(self, event): 
     p = self._instance._pages[event.GetSelection()]
     if p != self.page:
-      self._instance.onSetCurrentObject(p, None)
+      self._instance.onSetCurrentObject(p, __name__)
+    self._setCurrentPage(p)
 
 
   def OnBlockSelected(self, event): 
@@ -253,8 +257,6 @@
        self._currentObject.findParentOfType('GFPage')
     block = self._currentObject.getObjectType() == 'GFBlock' and 
self._currentObject or \
        self._currentObject.findParentOfType('GFBlock')
-
-    print form, page, block   
 
     menu.AppendMenu(wxNewId(), 'Form', PageMenu(self._instance, form, x, y))
     if page: 
Index: gnue/designer/src/PopupMenu.py
diff -u gnue/designer/src/PopupMenu.py:1.3 gnue/designer/src/PopupMenu.py:1.4
--- gnue/designer/src/PopupMenu.py:1.3  Sat Jul 28 20:19:35 2001
+++ gnue/designer/src/PopupMenu.py      Sun Jul 29 13:18:55 2001
@@ -27,7 +27,7 @@
 
 import sys, os, time, string
 from wxPython.wx import *
-from gnue.common import GDebug, GConfig
+from gnue.common import GDebug, GConfig, GObjects
 from gnue.forms import GFForm, GFInstance, GFParser, GFObjects, GFTrigger, 
GFLibrary, UIwxpython
 import Incubator
 
@@ -234,8 +234,8 @@
 class PageMenu(wxMenu): 
   def __init__(self, instance, object, x, y): 
     wxMenu.__init__(self, hasattr(object,'name') and \
-       object.name or string.upper(object.getObjectType[2]) + \
-       string.lower(object.getObjectType[3:]) )
+       object.name or string.upper(object.getObjectType()[2]) + \
+       string.lower(object.getObjectType()[3:]) )
 
     self.object = object
     self.instance = instance
@@ -305,7 +305,11 @@
       if len(object._children): 
         self.AppendSeparator()
         for child in object._children: 
-          self.AppendMenu(wxNewId(), child.name, PageMenu(instance, child, x, 
y))
+          if isinstance (child, GObjects.GObj): 
+            self.AppendMenu(wxNewId(), hasattr(child,'name') and child.name or 
\
+              string.upper(child.getObjectType()[2]) + \
+              string.lower(child.getObjectType()[3:]),
+              PageMenu(instance, child, x, y))
           
       self.AppendSeparator()
 
Index: gnue/designer/src/TreeView.py
diff -u gnue/designer/src/TreeView.py:1.12 gnue/designer/src/TreeView.py:1.13
--- gnue/designer/src/TreeView.py:1.12  Sun Jul 22 22:09:35 2001
+++ gnue/designer/src/TreeView.py       Sat Jul 28 21:12:14 2001
@@ -32,6 +32,7 @@
 from gnue.forms import GFForm, GFInstance, GFParser, GFObjects, GFTrigger, 
GFLibrary, UIwxpython
 from GFDesigner import *
 from PopupMenu import ObjectMenu
+from Icons import treeIconMap, treeIconList
 
 class TreeView (wxTreeCtrl):
   def __init__(self, instance, form, parent): 
@@ -73,6 +74,7 @@
     form.walk(self.inventoryLoadedItems)
 
     EVT_RIGHT_UP(self, self.OnRightUp)
+    EVT_LEFT_DCLICK(self, self.OnEditProperties)
 
 
   def inventoryLoadedItems (self, object): 
@@ -190,23 +192,15 @@
     elif object != None: 
       self.PopupMenu(object._popupMenu, event.GetPosition())
       
+  def OnEditProperties(self, event): 
 
-
-
-treeIconMap = {}
-treeIconList = wxImageList(24,24,false)
- 
-if not os.environ.has_key('INSTALL_PREFIX'):
-  iconlocation = os.environ['INSTALL_PREFIX']
-else: 
-  iconlocation = '/usr/local/gnue/shared/images'
-
-for f in ('block','datasource','entry','import','pagewidget',
-          'page','trigger','properties'): 
-  if os.path.isfile('%s/destree_%s.xpm' % (iconlocation, f)):
-    treeIconMap[f] = treeIconList.AddIcon(
-        wxIcon('%s/destree_%s.xpm' % (iconlocation, f), wxBITMAP_TYPE_XPM))
-  else: 
-    treeIconMap[f] = treeIconList.AddIcon(wxNullIcon)
+    id, flags = self.HitTest(event.GetPosition())
+    object = self.GetPyData(id)
+    self.EnsureVisible(id)
+    self.SelectItem(id)
+    if not isinstance(object, ObjectMenu): 
+      self.instance.propertyEditorWindow.Show(1)
+      self.instance.propertyEditorWindow.Raise()
+      self.instance.propertyEditorWindow.SetFocus()
 
 
Index: gnue/geas/TODO
diff -u gnue/geas/TODO:1.59 gnue/geas/TODO:1.60
--- gnue/geas/TODO:1.59 Thu Jun 21 00:45:46 2001
+++ gnue/geas/TODO      Wed Jul 25 13:07:25 2001
@@ -7,7 +7,7 @@
 configuration (src/config) [reinhard]
 data monitor (src/datamonitor) [reinhard]
 method calling (src/methods) [chillywilly]
-data cache (src/objectcache) [andrewm]
+data cache (src/objectcache) [reinhard]
 database interface (src/objectstore) [reinhard]
 sql generation (src/oql) [reinhard]
 core (everything else) [neilt]
@@ -24,8 +24,6 @@
     of errors in the design database. {classdef}
 4.  improve include concept for gcd files {classdef}
 5.  fix the error where duplicate field names pass the parser {classdef}
-6.  code from src/* subdirectories should not depend on code from the src
-    main directory, except for geas-server.h
 
 Planned for 0.2.0:
 
@@ -33,6 +31,8 @@
 7a. Bug - If methods have non-string arguments the parser fails.
     (segfault with no debug, hits assert in debug version) {classdef}
     (include 7a. with 7.)
+7b. code from the methods subdirectory may not depend on orbit-idl generated
+    files, or these generated files need to be put into another subdirectory
 8.  go through documentation and fix things that are outdated
 9.  enable long options and check options consistency with gnu standards
 10. black box testing/qualification program for geas.  should be a python
Index: gnue/geas/configure.in
diff -u gnue/geas/configure.in:1.39 gnue/geas/configure.in:1.40
--- gnue/geas/configure.in:1.39 Mon Jul 23 13:45:18 2001
+++ gnue/geas/configure.in      Wed Jul 25 08:29:16 2001
@@ -107,7 +107,7 @@
   else
     MYSQL_INCLUDE="-I$MYSQL_INCDIR"
     MYSQL_LIBDIR=$MYSQL_DIR/lib
-    test -f $MYSQL_DIR/lib/mysql/libmysqlclient.so && 
MYSQL_LIBDIR=$MYSQL_DIR/lib/mysql
+    test -f $MYSQL_DIR/lib/mysql/libmysqlclient.a && 
MYSQL_LIBDIR=$MYSQL_DIR/lib/mysql
     MYSQL_CFLAGS="$MYSQL_INCLUDE"
     MYSQL_LIBS="-L$MYSQL_LIBDIR -lmysqlclient"
   
Index: gnue/geas/doc/dia/dependencies.dia
Index: gnue/geas/lib/classdefs/Makefile.am
diff -u gnue/geas/lib/classdefs/Makefile.am:1.7 
gnue/geas/lib/classdefs/Makefile.am:1.8
--- gnue/geas/lib/classdefs/Makefile.am:1.7     Sat Jun  9 16:35:38 2001
+++ gnue/geas/lib/classdefs/Makefile.am Tue Jul 24 14:19:37 2001
@@ -1,4 +1,4 @@
-## $Id: Makefile.am,v 1.7 2001/06/09 23:35:38 reinhard Exp $
+## $Id: Makefile.am,v 1.8 2001/07/24 21:19:37 reinhard Exp $
 
 noinst_LIBRARIES = libclassdefs.a
 
@@ -8,7 +8,6 @@
 AM_YFLAGS = -d -v
 
 libclassdefs_a_SOURCES = gcdparser.c gcdparser.h classdata.c classdata.h \
-                         classdata_database.c classdata_database.h \
                          yparser.y lparser.l lparser.h
 
 CLEANFILES = y.output
Index: gnue/geas/lib/classdefs/classdata.h
diff -u gnue/geas/lib/classdefs/classdata.h:1.32 
gnue/geas/lib/classdefs/classdata.h:1.33
--- gnue/geas/lib/classdefs/classdata.h:1.32    Tue Jun  5 14:42:07 2001
+++ gnue/geas/lib/classdefs/classdata.h Tue Jul 24 14:19:38 2001
@@ -316,6 +316,4 @@
 gboolean 
 odl_is_extension(char *filename, char *ext);
 
-#include "classdata_database.h"
-
 #endif
Index: gnue/geas/lib/classdefs/lparser.h
diff -u gnue/geas/lib/classdefs/lparser.h:1.5 
gnue/geas/lib/classdefs/lparser.h:1.6
--- gnue/geas/lib/classdefs/lparser.h:1.5       Tue Jun  5 14:42:07 2001
+++ gnue/geas/lib/classdefs/lparser.h   Wed Jul 25 10:03:09 2001
@@ -19,7 +19,7 @@
    along with this program; if not, write to the Free Software Foundation,
    Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  
 
-   $Id: lparser.h,v 1.5 2001/06/05 21:42:07 ntiffin Exp $
+   $Id: lparser.h,v 1.6 2001/07/25 17:03:09 reinhard Exp $
 */
 
 #ifndef LPARSER_Y
@@ -35,14 +35,15 @@
 extern unsigned int expecting_fieldprop;
 extern unsigned int expect_triggertype;
 
-int yywarn( char *msg , ... );
-int yyerror( char *msg , ... );
-int yymessage( char *msg , ... );
-void yy_setfirstfilename( char *filename );
-int yystartfile( char *filename );
-void clear_file_history( void);
-void errors_show_file( int state );
-const char * yyget_current_filename( void);
+int yylex (void);
+int yywarn (char *msg, ...);
+int yyerror (char *msg, ...);
+int yymessage (char *msg, ...);
+void yy_setfirstfilename (char *filename);
+int yystartfile (char *filename);
+void clear_file_history (void);
+void errors_show_file (int state);
+const char * yyget_current_filename (void);
 
 extern struct _odl_container *yycurrent_container;
 
Index: gnue/geas/src/Makefile.am
diff -u gnue/geas/src/Makefile.am:1.39 gnue/geas/src/Makefile.am:1.40
--- gnue/geas/src/Makefile.am:1.39      Tue Jun 12 15:22:22 2001
+++ gnue/geas/src/Makefile.am   Wed Jul 25 12:57:05 2001
@@ -1,4 +1,4 @@
-## $Id: Makefile.am,v 1.39 2001/06/12 22:22:22 reinhard Exp $
+## $Id: Makefile.am,v 1.40 2001/07/25 19:57:05 reinhard Exp $
 
 SUBDIRS        = config objectstore oql objectcache methods datamonitor
 
@@ -95,8 +95,8 @@
 ## ----------------------------------------------------------------------------
 
 CLEANFILES = *.ior *.pid *.log
-## BUILT_SOURCES may not be cleaned. Subdirectories methods and objectcache
-## wouldn't compile any more afterwards.
+## BUILT_SOURCES may not be cleaned. Subdirectory methods wouldn't compile any
+## more afterwards.
 
 ## ----------------------------------------------------------------------------
 
@@ -131,9 +131,9 @@
 ## ----------------------------------------------------------------------------
 
 ## FIXME: ORBit built sources should not be included in the distribution.
-## But sources in the subdirectories methods and objectcache depend on geas.h,
-## and they are compiled before this directory. So we must include geas.h
-## in the distribution. And it doesn't make sense to include geas.h but not
-## the other built sources.
+## But sources in the subdirectory methods depend on geas.h, and they are
+## compiled before this directory. So we must include geas.h in the
+## distribution. And it doesn't make sense to include geas.h but not the other
+## built sources.
 ## dist-hook:
 ##     cd ${distdir}; rm -f ${BUILT_SOURCES}
Index: gnue/geas/src/collectiondata.c
diff -u gnue/geas/src/collectiondata.c:1.28 gnue/geas/src/collectiondata.c:1.29
--- gnue/geas/src/collectiondata.c:1.28 Mon Jun 25 20:01:25 2001
+++ gnue/geas/src/collectiondata.c      Wed Jul 25 10:48:24 2001
@@ -19,7 +19,7 @@
    along with this program; if not, write to the Free Software Foundation,
    Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  
    
-   $Id: collectiondata.c,v 1.28 2001/06/26 03:01:25 treshna Exp $
+   $Id: collectiondata.c,v 1.29 2001/07/25 17:48:24 reinhard Exp $
 
 */
 
@@ -239,9 +239,9 @@
 
 //  timer_update_profile( TIMER_FUNC_MAKELIST );
   timer_done_operation( TIMER_LISTS );
-  printf( "cache stats after list creation: " );
-  oc_print_stats();
-  printf( "\n" );
+  /* printf( "cache stats after list creation: " ); */
+  /* oc_print_stats(); */
+  /* printf( "\n" ); */
   return (listid);
 }
 
Index: gnue/geas/src/dataobject.c
diff -u gnue/geas/src/dataobject.c:1.59 gnue/geas/src/dataobject.c:1.60
--- gnue/geas/src/dataobject.c:1.59     Wed Jul 25 10:48:24 2001
+++ gnue/geas/src/dataobject.c  Wed Jul 25 12:57:05 2001
@@ -19,7 +19,7 @@
    along with this program; if not, write to the Free Software Foundation,
    Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  
    
-   $Id: dataobject.c,v 1.59 2001/07/25 17:48:24 reinhard Exp $
+   $Id: dataobject.c,v 1.60 2001/07/25 19:57:05 reinhard Exp $
    
 */
 
@@ -1137,7 +1137,7 @@
   /* display arguments */
   if (debuglevel >= DEBUGLEVEL_HIGH)
     {
-      int i;
+      unsigned int i;
 
       for (i = 0; i < args->_length; i++)
         debug_output (DEBUGLEVEL_ALWAYS, "Arg %2d: %s", i, args->_buffer[i]);
Index: gnue/geas/src/geas-server.c
diff -u gnue/geas/src/geas-server.c:1.106 gnue/geas/src/geas-server.c:1.107
--- gnue/geas/src/geas-server.c:1.106   Mon Jun 25 20:01:26 2001
+++ gnue/geas/src/geas-server.c Wed Jul 25 10:48:24 2001
@@ -19,7 +19,7 @@
   along with this program; if not, write to the Free Software Foundation,
   Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  
   
-  $Id: geas-server.c,v 1.106 2001/06/26 03:01:26 treshna Exp $
+  $Id: geas-server.c,v 1.107 2001/07/25 17:48:24 reinhard Exp $
  
 */
 
@@ -693,7 +693,7 @@
 
   /* start server */
   timer_done_operation(TIMER_MISC);
-  message ("Starting server" );
+  fprintf (stderr, "The GNU Enterprise Application Server is ready.\n");
 
   CORBA_ORB_run (the_orb, &ev);
 
Index: gnue/geas/src/geas-skeleton.c
diff -u gnue/geas/src/geas-skeleton.c:1.67 gnue/geas/src/geas-skeleton.c:1.68
--- gnue/geas/src/geas-skeleton.c:1.67  Mon Jun 25 20:01:26 2001
+++ gnue/geas/src/geas-skeleton.c       Sun Jul 22 14:16:45 2001
@@ -19,7 +19,7 @@
    along with this program; if not, write to the Free Software Foundation,
    Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  
    
-   $Id: geas-skeleton.c,v 1.67 2001/06/26 03:01:26 treshna Exp $
+   $Id: geas-skeleton.c,v 1.68 2001/07/22 21:16:45 reinhard Exp $
  
 */
 
@@ -3170,8 +3170,8 @@
 const char *
 object_key_as_string (ObjectKey key)
 {
-  static char buf[33];
-  buf[32] = '\0';
+  static char buf[37];
+  buf[36] = '\0';
 
   uuid_unparse (key, buf);
   cleanup_oid (buf);
Index: gnue/geas/src/methods/methods_glibmodule.h
diff -u gnue/geas/src/methods/methods_glibmodule.h:1.11 
gnue/geas/src/methods/methods_glibmodule.h:1.12
--- gnue/geas/src/methods/methods_glibmodule.h:1.11     Sat Jun  9 16:42:39 2001
+++ gnue/geas/src/methods/methods_glibmodule.h  Wed Jul 25 10:48:24 2001
@@ -19,7 +19,7 @@
   along with GEAS; if not, write to the Free Software Foundation, Inc.,
   59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 
-  $Id: methods_glibmodule.h,v 1.11 2001/06/09 23:42:39 ntiffin Exp $
+  $Id: methods_glibmodule.h,v 1.12 2001/07/25 17:48:24 reinhard Exp $
 */
 
 #ifndef USE_GLIBMODULE_METHODS
@@ -125,15 +125,15 @@
                   char *funcname =
                     g_strdup_printf ("%s_%s", mangled,
                                      odl_field_get_name (f));
-                  printf ("looking for %s.%s (%s)",
+                  /* printf ("looking for %s.%s (%s)",
                           odl_class_get_full_name (c), odl_field_get_name (f),
-                          funcname);
+                          funcname); */
 
                   g_module_symbol (module, funcname, (gpointer) & funcptr);
-                  if (funcptr)
+                  /* if (funcptr)
                     printf ("...found\n");
                   else
-                    printf ("...not found\n");
+                    printf ("...not found\n"); */
                   g_free (funcname);
 
                   /* store the pointer to this function */
Index: gnue/geas/src/objectcache/objectcache.c
diff -u gnue/geas/src/objectcache/objectcache.c:1.57 
gnue/geas/src/objectcache/objectcache.c:1.58
--- gnue/geas/src/objectcache/objectcache.c:1.57        Wed Jun 27 15:28:39 2001
+++ gnue/geas/src/objectcache/objectcache.c     Wed Jul 25 08:40:18 2001
@@ -19,7 +19,7 @@
    along with this program; if not, write to the Free Software Foundation,
    Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  
    
-   $Id: objectcache.c,v 1.57 2001/06/27 22:28:39 treshna Exp $
+   $Id: objectcache.c,v 1.58 2001/07/25 15:40:18 reinhard Exp $
 */
 
 #include "config.h"
@@ -827,9 +827,6 @@
                      const char *value, gboolean readonly)
 {
   _FieldData *f;
-  _ObjectData *o = object;
-
-/* printf( "setfield: %s/%s.%s = %s\n" , o->classname,o->key , fieldname , 
value ); */
 
   timer_start_profile( TIMER_FUNC_SET_FIELD );
 
Index: gnue/geas/src/objectlist.c
diff -u gnue/geas/src/objectlist.c:1.28 gnue/geas/src/objectlist.c:1.29
--- gnue/geas/src/objectlist.c:1.28     Mon Jun 25 20:01:26 2001
+++ gnue/geas/src/objectlist.c  Wed Jul 25 10:48:24 2001
@@ -20,7 +20,7 @@
    along with this program; if not, write to the Free Software Foundation,
    Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  
    
-   $Id: objectlist.c,v 1.28 2001/06/26 03:01:26 treshna Exp $
+   $Id: objectlist.c,v 1.29 2001/07/25 17:48:24 reinhard Exp $
  
 */
 
@@ -664,7 +664,6 @@
 
   hacklist = (GList *)oc_get_object_userdata( ob );
   hacklist2 = hacklist;
-   printf( "should be %d objects, found %d\n" , length , 
g_list_length(hacklist2) );
   while(hacklist2)
    {
        oc_remove_object( hacklist2->data );
Index: gnue/geas/src/objectstore/Makefile.am
diff -u gnue/geas/src/objectstore/Makefile.am:1.7 
gnue/geas/src/objectstore/Makefile.am:1.8
--- gnue/geas/src/objectstore/Makefile.am:1.7   Wed Jun  6 10:56:18 2001
+++ gnue/geas/src/objectstore/Makefile.am       Tue Jul 24 14:19:38 2001
@@ -1,4 +1,4 @@
-## $Id: Makefile.am,v 1.7 2001/06/06 17:56:18 reinhard Exp $
+## $Id: Makefile.am,v 1.8 2001/07/24 21:19:38 reinhard Exp $
 
 noinst_LIBRARIES = libobjectstore.a
 
@@ -7,5 +7,5 @@
            -I$(top_srcdir)/src \
            -I$(top_srcdir)/lib/classdefs
 
-libobjectstore_a_SOURCES = objectstore.c objectstore.h \
+libobjectstore_a_SOURCES = objectstore.c objectstore.h compare.c compare.h \
                            mysql.c postgresql.c objectstore_private.h
Index: gnue/geas/src/objectstore/compare.c
diff -u gnue/geas/src/objectstore/compare.c:1.2 
gnue/geas/src/objectstore/compare.c:1.3
--- gnue/geas/src/objectstore/compare.c:1.2     Wed Jul 25 05:51:08 2001
+++ gnue/geas/src/objectstore/compare.c Wed Jul 25 07:53:11 2001
@@ -19,7 +19,7 @@
    along with this program; if not, write to the Free Software Foundation,
    Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  
  
-   $Id: compare.c,v 1.2 2001/07/25 12:51:08 reinhard Exp $
+   $Id: compare.c,v 1.3 2001/07/25 14:53:11 reinhard Exp $
 */
 
 #include "config.h"
@@ -226,7 +226,7 @@
  * 
 \* ------------------------------------------------------------------------- */
 static DatabaseTable *
-find_database_table (DatabaseDefinition * def, const char *name, DBType db)
+find_database_table (DatabaseDefinition *def, const char *name, DBType db)
 {
   GList *l;
   char *quoted;
@@ -237,13 +237,13 @@
   l = def->tables;
   while (l)
     {
+      /* We have to quote this because the database can return the unquoted
+         names */
       quoted = oql_quote_column (((DatabaseTable *) l->data)->name, NULL, db);
       if (!g_strcasecmp (quoted, name))
         {
-          g_free (quoted);
           return ((DatabaseTable *) l->data);
         }
-      g_free (quoted);
       l = g_list_next (l);
     }
   return (NULL);
@@ -264,8 +264,10 @@
   l = t->columns;
   while (l)
     {
+      /* We have to quote this because the database can return the unquoted
+         names */
       quoted = oql_quote_column (NULL, ((DatabaseColumn *) l->data)->name, db);
-      if (!g_strcasecmp (quoted, name) == 0)
+      if (!g_strcasecmp (quoted, name))
         {
           g_free (quoted);
           return (l->data);
@@ -518,7 +520,7 @@
     {
       char *tmp;
 
-      tmp = odl_mangle_qualified_name ((const char *) l->data);
+      tmp = oql_quote_column ((const char *) l->data, NULL, db);
       t = find_database_table (database, tmp, db);
 
       if (!t)
@@ -564,7 +566,8 @@
   while (l)
     {
       char *tmp;
-      tmp = odl_mangle_qualified_name ((const char *) l->data);
+
+      tmp = oql_quote_column ((const char *) l->data, NULL, db);
       t = find_database_table (database, tmp, db);
       g_free (tmp);
       tmp = NULL;
@@ -580,7 +583,9 @@
           while (l2)
             {
               odl_field *f = (odl_field *) l2->data;
-              if (!find_databasetable_field (t, odl_field_get_name (f), db))
+              char *quoted = oql_quote_column (NULL, odl_field_get_name (f),
+                                               db);
+              if (!find_databasetable_field (t, quoted, db))
                 {
                   ch = find_named_change (c->adds, t->name);
                   if (!ch)
@@ -604,7 +609,7 @@
 
                     }
                 }
-
+              g_free (quoted);
               l2 = g_list_next (l2);
             }
 
Index: gnue/geas/src/objectstore/compare.h
diff -u gnue/geas/src/objectstore/compare.h:1.1 
gnue/geas/src/objectstore/compare.h:1.2
--- gnue/geas/src/objectstore/compare.h:1.1     Tue Jul 24 14:19:38 2001
+++ gnue/geas/src/objectstore/compare.h Wed Jul 25 05:51:08 2001
@@ -19,7 +19,7 @@
    along with this program; if not, write to the Free Software Foundation,
    Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  
 
-   $Id: compare.h,v 1.1 2001/07/24 21:19:38 reinhard Exp $
+   $Id: compare.h,v 1.2 2001/07/25 12:51:08 reinhard Exp $
 */
 
 /** \file classdata_database.h
@@ -28,9 +28,9 @@
  * by code dealing with converting classes to database tables
  */
 
-#ifndef CLASSDATA_H
+#include <glib.h>
 #include "classdata.h"
-#endif
+#include "oql/oql.h"
 
 #ifndef CLASSDATA_DATABASE_H
 #define CLASSDATA_DATABASE_H
@@ -94,8 +94,6 @@
 int                   count_database_tables (DatabaseDefinition * def);
 DatabaseTable        *get_database_table (DatabaseDefinition * def,
                                           int which);
-DatabaseTable        *find_database_table (DatabaseDefinition * def,
-                                           const char *name);
 DatabaseColumn       *add_database_column (DatabaseTable * table,
                                            const char *name,
                                            enum odl_fieldtype type);
@@ -126,6 +124,6 @@
 DatabaseChange       *compare_classes_to_database (odl_tree * tree,
                                                    GList * requiredclasses,
                                                    DatabaseDefinition *
-                                                   database);
+                                                   database, DBType db);
 
 #endif
Index: gnue/geas/src/objectstore/mysql.c
diff -u gnue/geas/src/objectstore/mysql.c:1.6 
gnue/geas/src/objectstore/mysql.c:1.7
--- gnue/geas/src/objectstore/mysql.c:1.6       Wed Jul 25 05:51:08 2001
+++ gnue/geas/src/objectstore/mysql.c   Wed Jul 25 08:40:18 2001
@@ -20,7 +20,7 @@
    along with GEAS; if not, write to the Free Software Foundation, Inc.,
    59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 
-   $Id: mysql.c,v 1.6 2001/07/25 12:51:08 reinhard Exp $
+   $Id: mysql.c,v 1.7 2001/07/25 15:40:18 reinhard Exp $
 */
 
 #include "config.h"
@@ -660,7 +660,7 @@
                      gboolean remove_items, int *errorcode, char **errormsg)
 {
   char *name;
-  GString *buf;
+  GString *buf = NULL;
   DatabaseChange *changes = NULL;
   GList *required = NULL;
   GList *tmp; 
Index: gnue/geas/src/objectstore/objectstore_private.h
diff -u gnue/geas/src/objectstore/objectstore_private.h:1.2 
gnue/geas/src/objectstore/objectstore_private.h:1.3
--- gnue/geas/src/objectstore/objectstore_private.h:1.2 Tue Jun 12 17:47:47 2001
+++ gnue/geas/src/objectstore/objectstore_private.h     Tue Jul 24 14:19:38 2001
@@ -20,11 +20,13 @@
    along with GEAS; if not, write to the Free Software Foundation, Inc.,
    59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 
-   $Id: objectstore_private.h,v 1.2 2001/06/13 00:47:47 treshna Exp $
+   $Id: objectstore_private.h,v 1.3 2001/07/24 21:19:38 reinhard Exp $
 */
 
 #ifndef _OBJECTSTORE_PRIVATE_H
 #define _OBJECTSTORE_PRIVATE_H
+
+#include "compare.h"
 
 /* forward references */
 struct active_connection;
Index: gnue/geas/src/objectstore/postgresql.c
diff -u gnue/geas/src/objectstore/postgresql.c:1.10 
gnue/geas/src/objectstore/postgresql.c:1.11
--- gnue/geas/src/objectstore/postgresql.c:1.10 Mon Jun 25 20:01:26 2001
+++ gnue/geas/src/objectstore/postgresql.c      Wed Jul 25 05:51:08 2001
@@ -20,7 +20,7 @@
    along with GEAS; if not, write to the Free Software Foundation, Inc.,
    59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 
-   $Id: postgresql.c,v 1.10 2001/06/26 03:01:26 treshna Exp $
+   $Id: postgresql.c,v 1.11 2001/07/25 12:51:08 reinhard Exp $
 */
 
 #include "config.h"
@@ -663,7 +663,7 @@
 
       for (row = 0; row < PQntuples (res); row++)
         {
-          char *name, *p;
+          char *name;
 
           if (g_strcasecmp (PQgetvalue (res, row, 1), "VARCHAR") == 0)
             type = DT_char;
@@ -690,20 +690,7 @@
           else
             type = DT_unknown;
 
-          /* convert further double underscores to a single dot */
           name = g_strdup (PQgetvalue (res, row, 0));
-          for (p = strstr (name, "__"); p != NULL; p = strstr (name, "__"))
-            {
-              int size;
-              void *src, *dest;
-
-              *p = '.';
-              src = p + 2;
-              dest = p + 1;
-              size = strlen (src) + 1;
-              memmove (dest, src, size);
-            }
-
           add_database_column (tab, name, type);
           g_free (name);
         }
@@ -836,7 +823,8 @@
   /* if column doesn't match a class field, report it as unnecessary */
   /* if class doesn't match a table, record the table as required */
   /* if data field doesn't match a column, record the column as required */
-  changes = compare_classes_to_database (all_classes, required, database);
+  changes = compare_classes_to_database (all_classes, required, database,
+                                         OQL_DBTYPE_POSTGRESQL);
   odl_namelist_free (required);
   required = NULL;
 
Index: gnue/geas/src/security.c
diff -u gnue/geas/src/security.c:1.15 gnue/geas/src/security.c:1.16
--- gnue/geas/src/security.c:1.15       Sun Jun 10 22:19:26 2001
+++ gnue/geas/src/security.c    Wed Jul 25 10:48:24 2001
@@ -19,7 +19,7 @@
    along with this program; if not, write to the Free Software Foundation,
    Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  
    
-   $Id: security.c,v 1.15 2001/06/11 05:19:26 treshna Exp $
+   $Id: security.c,v 1.16 2001/07/25 17:48:24 reinhard Exp $
 
 */
 
@@ -78,9 +78,7 @@
    else
      {
        int count;
-        printf( "getting count\n"  );
         count = GEAS_ObjectList__get_length( users , &ev );
-        printf( "got count\n"  );
        if( ev._major != CORBA_NO_EXCEPTION )
          {
             errormsg( "Error counting users: %s" , CORBA_exception_id(&ev) );
Index: gnue/geas/tools/.cvsignore
diff -u gnue/geas/tools/.cvsignore:1.1 gnue/geas/tools/.cvsignore:1.2
--- gnue/geas/tools/.cvsignore:1.1      Sat Jan 13 19:18:21 2001
+++ gnue/geas/tools/.cvsignore  Mon Jul 23 15:10:38 2001
@@ -1,40 +1,10 @@
-gcdverifier
-geas.spec
-geas.spec.in
+*~
+Makefile.in
+Makefile
 .deps
 .libs
 _libs
-*.a
 *.o
-*.conf
-Makefile.in
-*~
-geas-skels.*
-geas-common.*
-geas-stubs.*
-Makefile
-Makefile.in
-aclocal.m4
-config.cache
-config.guess
-config.h
-config.h.in
-config.h.win32
-config.log
-config.status
-config.sub
-configure
-configure.scan
-libtool
-ltconfig
-ltmain.sh
-stamp-h
-stamp-h.in
-stamp.h
-version.h
-config.h.in
-.exrc
-install-sh
-missing
-mkinstalldirs
-
+*.a
+gcdverifier
+geas-oidgen
Index: gnue/geas/tools/Makefile.am
diff -u gnue/geas/tools/Makefile.am:1.8 gnue/geas/tools/Makefile.am:1.9
--- gnue/geas/tools/Makefile.am:1.8     Fri Jul 20 03:33:02 2001
+++ gnue/geas/tools/Makefile.am Mon Jul 23 15:10:38 2001
@@ -1,9 +1,13 @@
-## $Id: Makefile.am,v 1.8 2001/07/20 10:33:02 reinhard Exp $
+## $Id: Makefile.am,v 1.9 2001/07/23 22:10:38 reinhard Exp $
 
-bin_PROGRAMS = gcdverifier
+bin_PROGRAMS = gcdverifier geas-oidgen
 
 INCLUDES = $(GLIB_CFLAGS) -I$(top_srcdir)/lib/classdefs
 
-LDADD = $(GLIB_LIBS) ../lib/classdefs/libclassdefs.a
-
 gcdverifier_SOURCES = gcdverifier.c
+
+gcdverifier_LDADD = $(GLIB_LIBS) ../lib/classdefs/libclassdefs.a
+
+geas_oidgen_SOURCES = geas-oidgen.c
+
+geas_oidgen_LDADD = -luuid
Index: gnue/geas/tools/parse_load_sql.py
diff -u gnue/geas/tools/parse_load_sql.py:1.7 
gnue/geas/tools/parse_load_sql.py:1.8
--- gnue/geas/tools/parse_load_sql.py:1.7       Fri Jul 20 03:33:02 2001
+++ gnue/geas/tools/parse_load_sql.py   Mon Jul 23 15:10:38 2001
@@ -26,9 +26,9 @@
 #
 # This program originally written by Neil Tiffin (address@hidden).
 #
-# $Id: parse_load_sql.py,v 1.7 2001/07/20 10:33:02 reinhard Exp $
+# $Id: parse_load_sql.py,v 1.8 2001/07/23 22:10:38 reinhard Exp $
 #
-# to use this program you will need the program "uuidgen"
+# to use this program you will need the program "geas-oidgen"
 # compliled and located in the same dir as this file, then
 # type "./parse_load_sql.py [dir_name]"
 #    where dir_name = the top level dir to start search for
@@ -51,12 +51,9 @@
 #     contains a list of files to process)
 # 3 - add option to only load and not create .sql files
 # 4 - add option to only create and not load .sql files
-# 5 - figure out discrepency (if it exists) between
-#     geas uuids (32 characters) and uuid_unparse() of
-#     38 characters
-# 6 - add mysql capability and option
-# 7 - add capability to delete data before inserting
-# 8 - add capability to process a single file
+# 5 - add mysql capability and option
+# 6 - add capability to delete data before inserting
+# 7 - add capability to process a single file
 #
 
 import os
@@ -73,19 +70,15 @@
 do_all = " "
 
 def get_uuid():
-#      global my_uuids
-#      if (len(my_uuids) < 2):
-#              f = os.popen("./gen_uuid -n 25", "r")
-#              uuids = f.readlines()
-#              for uuid in uuids:
-#                      if len(uuid) and (uuid[-1] == "\n"):
-#                              my_uuids.append(uuid[:-1])
-#              f.close()
-#      return my_uuids.pop()
-       f = os.popen("uuidgen", "r")
-       uuid = f.readline()
-       f.close()
-       return uuid
+       global my_uuids
+       if (len(my_uuids) < 2):
+               f = os.popen("./geas-oidgen -n 25", "r")
+               uuids = f.readlines()
+               for uuid in uuids:
+                       if len(uuid) and (uuid[-1] == "\n"):
+                               my_uuids.append(uuid[:-1])
+               f.close()
+       return my_uuids.pop()
 
 # temp = get_uuid()
 # print my_uuids
Index: gnue/gnue-common/etc/sample.gnue.conf
diff -u gnue/gnue-common/etc/sample.gnue.conf:1.4 
gnue/gnue-common/etc/sample.gnue.conf:1.5
--- gnue/gnue-common/etc/sample.gnue.conf:1.4   Mon Jul 16 20:10:44 2001
+++ gnue/gnue-common/etc/sample.gnue.conf       Thu Aug  2 20:02:28 2001
@@ -58,6 +58,7 @@
 msg_query=Execute query using current mask.
 msg_help=Display info about GNUe Forms. 
 msg_jump=Prompts for a record number to which the system should jump.
+msg_print=Perform print routine for this form
 
 #
 GEASDIR=/usr/local/
Index: gnue/gnue-common/images/destree_block.xpm
diff -u gnue/gnue-common/images/destree_block.xpm:1.1 
gnue/gnue-common/images/destree_block.xpm:1.2
--- gnue/gnue-common/images/destree_block.xpm:1.1       Wed Jul 18 21:02:29 2001
+++ gnue/gnue-common/images/destree_block.xpm   Thu Jul 19 09:16:04 2001
@@ -1,153 +1,143 @@
 /* XPM */
-static char * tb_search_replace_xpm[] = {
-"24 24 126 2",
+static char * destree_block_xpm[] = {
+"18 18 122 2",
 "      c None",
-".     c #000000",
-"+     c #D8BE6A",
-"@     c #8E7D45",
-"#     c #ADAD9C",
-"$     c #959585",
-"%     c #DCDCC5",
-"&     c #DFDFC8",
-"*     c #A7A796",
-"=     c #D7D7C1",
-"-     c #D9D9C3",
-";     c #DCDCC4",
-">     c #A6A694",
-",     c #D6D6BF",
-"'     c #D8D8C2",
-")     c #7C7C7C",
-"!     c #646464",
-"~     c #D5D5BD",
-"{     c #D5D5BF",
-"]     c #D7D7C0",
-"^     c #C6B273",
-"/     c #756020",
-"(     c #E9E9D1",
-"_     c #343434",
-":     c #E7E7E7",
-"<     c #373736",
-"[     c #B8B8A6",
-"}     c #D3D3BC",
-"|     c #D9D9C2",
-"1     c #060605",
-"2     c #E5E5CD",
-"3     c #E8E8D0",
-"4     c #ECECD4",
-"5     c #EEEED5",
-"6     c #ECECEC",
-"7     c #EDEDED",
-"8     c #3D3D37",
-"9     c #CECEB7",
-"0     c #DBDBC4",
-"a     c #E0E0C8",
-"b     c #E6E6CE",
-"c     c #EAEAD2",
-"d     c #F1F1D8",
-"e     c #A5A594",
-"f     c #EEEEE5",
-"g     c #3C3C3C",
-"h     c #8F8F80",
-"i     c #D0D0B9",
-"j     c #B4B4A0",
-"k     c #46463E",
-"l     c #090908",
-"m     c #4A4A42",
-"n     c #C1C1AD",
-"o     c #F2F2D9",
-"p     c #F3F3DA",
-"q     c #EEEEE6",
-"r     c #505050",
-"s     c #929282",
-"t     c #D1D1B9",
-"u     c #B0B09D",
-"v     c #33332D",
-"w     c #9D9D8D",
-"x     c #CFCFB9",
-"y     c #C4C4AF",
-"z     c #8D8D7F",
-"A     c #34342F",
-"B     c #C3C3AF",
-"C     c #F4F4DB",
-"D     c #F5F5DC",
-"E     c #969686",
-"F     c #D2D2BC",
-"G     c #45453E",
-"H     c #9C9C8C",
-"I     c #E2E2D0",
-"J     c #EDEDE5",
-"K     c #C0C0AC",
-"L     c #B2B29F",
-"M     c #828274",
-"N     c #4B4B43",
-"O     c #BEBEAB",
-"P     c #797973",
-"Q     c #D8D8C1",
-"R     c #DDDDC6",
-"S     c #080807",
-"T     c #FBFBFA",
-"U     c #C3C3AE",
-"V     c #B5B5A2",
-"W     c #A6A695",
-"X     c #959586",
-"Y     c #98988F",
-"Z     c #080808",
-"`     c #CACAB5",
-" .    c #DDDDD0",
-"..    c #B7B7A4",
-"+.    c #AAAA98",
-"@.    c #9B9B8B",
-"#.    c #8C8C7D",
-"$.    c #818174",
-"%.    c #DFDFC7",
-"&.    c #E2E2CA",
-"*.    c #46463F",
-"=.    c #929283",
-"-.    c #BABAA7",
-";.    c #ADAD9B",
-">.    c #9F9F8E",
-",.    c #909081",
-"'.    c #727266",
-").    c #4B4B44",
-"!.    c #BEBEAE",
-"~.    c #33332E",
-"{.    c #878779",
-"].    c #A0A090",
-"^.    c #737367",
-"/.    c #DADAC3",
-"(.    c #4E4E4E",
-"_.    c #BEBEAA",
-":.    c #404040",
-"<.    c #6F6F6F",
-"[.    c #EBEBD3",
-"}.    c #EDEDD4",
-"|.    c #EFEFD6",
-"1.    c #F0F0D7",
-"2.    c #BBBBA8",
-"3.    c #CDCDB8",
-"4.    c #4D4D45",
-"5.    c #A6A696",
-"                                                ",
-"                                . .             ",
-"                              . + @ .           ",
-"                      .     . + @ .             ",
-"                  . . # . . + @ .               ",
-"              . . $ % & . + @ .                 ",
-"          . . * = - ; . + @ .                   ",
-"      . . > , = = ' . + @ . .                   ",
-"    . ) ! , ~ { ] ^ / . . ( _                   ",
-"    . : < [ } = | 1 . 2 3 4 5 .                 ",
-"    . 6 7 8 9 { 0 a b 3 c 5 d e .               ",
-"    . f f g h i j k l l m n o p .               ",
-"    . q r s t u v w x y z A B C D .             ",
-"    . . E F 0 G H I J K L M N D D O .           ",
-"    . P Q | R S { T U V W X l D D D ' .         ",
-"    . Y 0 % & Z `  address@hidden D D D $..         ",
-"      . %.a &.*.=.-.;.>.,.'.).D D . .           ",
-"      . !.2 2 -.~.{.].=.^.. . /..               ",
-"        (.3 ( c _.m l l :.<.. .                 ",
-"        . [.4 }.|.d o o /.. . . .               ",
-"          . |.1.d o ( e .     . . .             ",
-"          . 2.o p 3.4..         . . .           ",
-"            . p 5..               . .           ",
-"              . .                               "};
+".     c #635730",
+"+     c #2F2A17",
+"@     c #000000",
+"#     c #827240",
+"$     c #81723F",
+"%     c #1C190E",
+"&     c #2E2E29",
+"*     c #99998A",
+"=     c #0D0C07",
+"-     c #7E6F3E",
+";     c #484840",
+">     c #7E7E71",
+",     c #C9C9B4",
+"'     c #8B8B7C",
+")     c #7D6E3D",
+"!     c #262622",
+"~     c #8E8E7F",
+"{     c #C0C0AC",
+"]     c #D7D7C1",
+"^     c #88887A",
+"/     c #877948",
+"(     c #121009",
+"_     c #717171",
+":     c #767671",
+"<     c #D2D2BB",
+"[     c #D5D5BF",
+"}     c #C7C3A6",
+"|     c #776838",
+"1     c #413D2C",
+"2     c #66665B",
+"3     c #A6A697",
+"4     c #AFAFAF",
+"5     c #8C8C89",
+"6     c #A6A694",
+"7     c #D5D5BE",
+"8     c #737367",
+"9     c #CACAB5",
+"0     c #EAEAD2",
+"a     c #EEEED5",
+"b     c #7A7A6D",
+"c     c #B2B2AD",
+"d     c #C1C1BC",
+"e     c #6E6E64",
+"f     c #C5C5AF",
+"g     c #A9A997",
+"h     c #56564D",
+"i     c #41413A",
+"j     c #89897A",
+"k     c #DFDFC8",
+"l     c #E4E4CD",
+"m     c #868681",
+"n     c #72726A",
+"o     c #BBBBA6",
+"p     c #A5A593",
+"q     c #65655B",
+"r     c #C2C2B1",
+"s     c #C8C8B4",
+"t     c #838375",
+"u     c #76766A",
+"v     c #E0E0C9",
+"w     c #C4C4B0",
+"x     c #2D2D2B",
+"y     c #BFBFAA",
+"z     c #D9D9C2",
+"A     c #54544B",
+"B     c #C6C6B5",
+"C     c #E3E3D7",
+"D     c #C2C2B0",
+"E     c #A4A493",
+"F     c #5B5B51",
+"G     c #C2C2AE",
+"H     c #EEEED6",
+"I     c #A3A392",
+"J     c #2B2B27",
+"K     c #6C6C66",
+"L     c #DADAC4",
+"M     c #DDDDC6",
+"N     c #3E3E38",
+"O     c #D3D3C0",
+"P     c #CFCFC0",
+"Q     c #B0B09E",
+"R     c #9A9A8A",
+"S     c #4C4C44",
+"T     c #BABAA7",
+"U     c #F5F5DC",
+"V     c #C6C6B2",
+"W     c #D9D9C3",
+"X     c #E2E2CA",
+"Y     c #878779",
+"Z     c #ACAC9A",
+"`     c #9F9F8E",
+" .    c #7C7C6F",
+"..    c #474740",
+"+.    c #C1C1AD",
+"@.    c #939384",
+"#.    c #9E9E92",
+"$.    c #E7E7CF",
+"%.    c #747468",
+"&.    c #5F5F55",
+"*.    c #4F4F47",
+"=.    c #51514C",
+"-.    c #1C1C1C",
+";.    c #525249",
+">.    c #494943",
+",.    c #EBEBD3",
+"'.    c #ECECD3",
+").    c #DCDCC5",
+"!.    c #BFBFAC",
+"~.    c #B8B8A5",
+"{.    c #8E8E81",
+"].    c #0E0E0E",
+"^.    c #717165",
+"/.    c #EDEDD4",
+"(.    c #EFEFD7",
+"_.    c #8D8D7F",
+":.    c #CDCDB8",
+"<.    c #B3B3A1",
+"[.    c #5E5E54",
+"}.    c #131311",
+"|.    c #383832",
+"1.    c #262623",
+"                                    ",
+"                        . +         ",
+"                @     # $ %         ",
+"              & * = - $ @           ",
+"        @ ; > , ' - ) %             ",
+"    @ ! ~ { ] ^ / $ (               ",
+"  @ _ : < [ } | 1 2 3               ",
+"  @ 4 5 6 7 { 8 9 0 a b             ",
+"  @ c d e f g h i j k l @           ",
+"  @ m n o p q r s t u v w !         ",
+"  @ x y z A B C D E F G H I J       ",
+"  @ K L M N O P Q R S T U V !       ",
+"    @ W X t Y Z `  address@hidden@         ",
+"      #.$.] %.&.*.=.-.;.            ",
+"      >.,.'.).!.~.{.].@ @           ",
+"        ^./.(.[ _.@   @ @ @         ",
+"        N :.<.[.}.      @ @         ",
+"          |.1.                      "};
Index: gnue/gnue-common/images/destree_datasource.xpm
diff -u gnue/gnue-common/images/destree_datasource.xpm:1.1 
gnue/gnue-common/images/destree_datasource.xpm:1.2
--- gnue/gnue-common/images/destree_datasource.xpm:1.1  Wed Jul 18 21:02:29 2001
+++ gnue/gnue-common/images/destree_datasource.xpm      Thu Jul 19 09:16:04 2001
@@ -1,32 +1,55 @@
 /* XPM */
-static char * tb_open_xpm[] = {
-"24 24 5 1",
+static char * destree_datasource_xpm[] = {
+"18 18 34 1",
 "      c None",
 ".     c #000000",
-"+     c #99907B",
-"@     c #FFFEF7",
-"#     c #FFFFFF",
-"                        ",
-"                        ",
-"                        ",
-"                        ",
-"                        ",
-"              ..        ",
-"           ...++.       ",
-"    ..  ...++++@@#...   ",
-"   .++..++++@@@@..++.   ",
-"   .+++++@@@@@..++++.   ",
-"    .++@@@@@..++++++.   ",
-"    .++@@@..++++++++.   ",
-"     .+@@.++++++++++.   ",
-"     address@hidden   ",
-"      address@hidden   ",
-"      .++.++++++++..    ",
-"       .+.++++++..      ",
-"       .+.+++++.        ",
-"        ..+++..         ",
-"        ..+..           ",
-"         ..             ",
-"                        ",
-"                        ",
-"                        "};
+"+     c #333029",
+"@     c #4C483D",
+"#     c #5C564A",
+"$     c #736C5C",
+"%     c #867E6C",
+"&     c #D2CEC1",
+"*     c #CCCBC7",
+"=     c #808080",
+"-     c #99907B",
+";     c #605A4D",
+">     c #26241F",
+",     c #9F9783",
+"'     c #B2AB9A",
+")     c #FFFEF7",
+"!     c #DFDED8",
+"~     c #BFBFB9",
+"{     c #BFB9A9",
+"]     c #D9D5C8",
+"^     c #807F7C",
+"/     c #66645D",
+"(     c #E6E2D8",
+"_     c #9F9F9A",
+":     c #40403E",
+"<     c #4D483E",
+"[     c #BFBEB9",
+"}     c #868174",
+"|     c #4C483E",
+"1     c #7C7564",
+"2     c #39362E",
+"3     c #1F1D19",
+"4     c #433F36",
+"5     c #23211C",
+"                  ",
+"                  ",
+"                  ",
+"                  ",
+"         .+@      ",
+"   .  ..#$%&*=..  ",
+"  .-;>,'')!~>;-.  ",
+"   ;-{]))^/@---.  ",
+"   >-()_:$%----.  ",
+"    <&~<-------.  ",
+"    address@hidden  ",
+"    address@hidden;>   ",
+"     .$|---1.     ",
+"      address@hidden<3      ",
+"      .|45        ",
+"       .          ",
+"                  ",
+"                  "};
Index: gnue/gnue-common/images/destree_entry.xpm
diff -u gnue/gnue-common/images/destree_entry.xpm:1.1 
gnue/gnue-common/images/destree_entry.xpm:1.2
--- gnue/gnue-common/images/destree_entry.xpm:1.1       Wed Jul 18 21:02:29 2001
+++ gnue/gnue-common/images/destree_entry.xpm   Thu Jul 19 09:16:04 2001
@@ -1,140 +1,140 @@
 /* XPM */
-static char * tb_edit_xpm[] = {
-"24 24 113 2",
+static char * destree_entry_xpm[] = {
+"18 18 119 2",
 "      c None",
 ".     c #000000",
-"+     c #ADAD9C",
-"@     c #959585",
-"#     c #DCDCC5",
-"$     c #DFDFC8",
-"%     c #242424",
-"&     c #A7A796",
-"*     c #D7D7C1",
-"=     c #D9D9C3",
-"-     c #DCDCC4",
-";     c #DDDDC7",
-">     c #E1E1CA",
-",     c #D8BE6A",
-"'     c #A6A694",
-")     c #D6D6BF",
-"!     c #D8D8C2",
-"~     c #DBDBC4",
-"{     c #A2A291",
-"]     c #E3E3CB",
-"^     c #B2B29F",
-"/     c #8E7D45",
-"(     c #7C7C7C",
-"_     c #646464",
-":     c #D5D5BD",
-"<     c #D5D5BF",
-"[     c #D7D7C0",
-"}     c #9E9E8D",
-"|     c #ABAB98",
-"1     c #E1E1C9",
-"2     c #E5E5CD",
-"3     c #E9E9D1",
-"4     c #343434",
-"5     c #E7E7E7",
-"6     c #373736",
-"7     c #B8B8A6",
-"8     c #D3D3BC",
-"9     c #909081",
-"0     c #9F9F8E",
-"a     c #DDDDC5",
-"b     c #E0E0C8",
-"c     c #A2A292",
-"d     c #ECECD4",
-"e     c #EEEED5",
-"f     c #ECECEC",
-"g     c #EDEDED",
-"h     c #3D3D37",
-"i     c #8A8A7A",
-"j     c #E6E6CE",
-"k     c #9A9A8A",
-"l     c #EAEAD2",
-"m     c #EEEEE5",
-"n     c #3C3C3C",
-"o     c #8F8F80",
-"p     c #D0D0B9",
-"q     c #999988",
-"r     c #ECECD3",
-"s     c #EFEFD6",
-"t     c #EEEEE6",
-"u     c #505050",
-"v     c #929282",
-"w     c #D1D1B9",
-"x     c #969686",
-"y     c #E7E7CF",
-"z     c #EBEBD2",
-"A     c #F5F5DC",
-"B     c #D2D2BC",
-"C     c #E9E9D0",
-"D     c #EDEDD4",
-"E     c #E3E3DC",
-"F     c #797973",
-"G     c #D8D8C1",
-"H     c #919182",
-"I     c #949484",
-"J     c #EAEAD1",
-"K     c #D9D9CC",
-"L     c #BFBFB0",
-"M     c #ACACA5",
-"N     c #9F9F93",
-"O     c #98988F",
-"P     c #E4E4CC",
-"Q     c #AD8E30",
-"R     c #756020",
-"S     c #C4C4B0",
-"T     c #9D9D8D",
-"U     c #818174",
-"V     c #DFDFC7",
-"W     c #E2E2CA",
-"X     c #060605",
-"Y     c #9B9B8B",
-"Z     c #9C9C8C",
-"`     c #BEBEAE",
-" .    c #8B8B7D",
-"..    c #7E7E71",
-"+.    c #C0C0AC",
-"@.    c #C2C2AE",
-"#.    c #C3C3AF",
-"$.    c #DADAC3",
-"%.    c #4E4E4E",
-"&.    c #E8E8D0",
-"*.    c #A0A090",
-"=.    c #F2F2D9",
-"-.    c #F3F3DA",
-";.    c #F4F4DB",
-">.    c #828274",
-",.    c #EBEBD3",
-"'.    c #F1F1D8",
-").    c #F0F0D7",
-"!.    c #A5A594",
-"~.    c #BBBBA8",
-"{.    c #CDCDB8",
-"].    c #4D4D45",
-"^.    c #A6A696",
-"                                                ",
-"                                                ",
-"                          .                     ",
-"                      . . + .                   ",
-"                  . . @ # $ %             .     ",
-"              . . & * = - ; > .         . , .   ",
-"          . . ' ) * * ! ~ { ] ^ .     . , / .   ",
-"        . ( _ ) : < [ } | 1 2 3 4   . , / .     ",
-"        . 5 6 7 8 9 0 a b 2 c d e . , / .       ",
-"        . f g h i < ~ b j k l e . , / .         ",
-"        . m m n o p b q q r s . , / .           ",
-"        . t u v w - x y z e . , / . A .         ",
-"        . . x B ~ x ] C D . , / . A A E .       ",
-"        . F G H I > y J . , / . A K L M N .     ",
-"        . O ~ # $ P y Q R . . S T T T T U .     ",
-"          . V b W 2 3 X . Y Z T T T T . .       ",
-"          . ` 2 2 T  address@hidden A $..           ",
-"            %.&.*.l D s =.-.;.=.>..             ",
-"            . ,.d D s '.=.=.$..                 ",
-"              . s ).'.=.3 !..                   ",
-"              . ~.=.-.{.]..                     ",
-"                . -.^..                         ",
-"                  . .                           ",
-"                                                "};
+"+     c #282824",
+"@     c #4A4A43",
+"#     c #30302B",
+"$     c #8A8A7B",
+"%     c #DDDDC5",
+"&     c #99998B",
+"*     c #2B2615",
+"=     c #47473F",
+"-     c #808072",
+";     c #CBCBB6",
+">     c #D8D8C2",
+",     c #D4D4BE",
+"'     c #D1D1BB",
+")     c #7B7B6E",
+"!     c #7E6F3E",
+"~     c #5A4F2C",
+"{     c #1D1D1D",
+"]     c #545454",
+"^     c #AAAA9A",
+"/     c #D5D5BE",
+"(     c #D6D6C0",
+"_     c #B7B7A4",
+":     c #BEBEA9",
+"<     c #DBDBC4",
+"[     c #DEDEC6",
+"}     c #272727",
+"|     c #827240",
+"1     c #81723F",
+"2     c #1C190E",
+"3     c #3A3A3A",
+"4     c #A6A6A6",
+"5     c #8C8C81",
+"6     c #B9B9A5",
+"7     c #A8A896",
+"8     c #D2D2BB",
+"9     c #C3C3AF",
+"0     c #DEDEC8",
+"a     c #93927E",
+"b     c #3B3B3A",
+"c     c #EDEDE9",
+"d     c #696965",
+"e     c #9E9E8D",
+"f     c #D8D8C1",
+"g     c #C5C5B0",
+"h     c #C0C0AC",
+"i     c #949485",
+"j     c #7D6E3D",
+"k     c #3B3B39",
+"l     c #B3B3AE",
+"m     c #7B7B72",
+"n     c #C7C7B0",
+"o     c #C1C1AC",
+"p     c #C9C9B4",
+"q     c #DCDCC5",
+"r     c #959585",
+"s     c #887A49",
+"t     c #6E6B5B",
+"u     c #393933",
+"v     c #080807",
+"w     c #626259",
+"x     c #BBBBA7",
+"y     c #C1C1AD",
+"z     c #C6C6B1",
+"A     c #E8E8CF",
+"B     c #93917E",
+"C     c #69695F",
+"D     c #EBEBD4",
+"E     c #DADACF",
+"F     c #252522",
+"G     c #222220",
+"H     c #B1B1A2",
+"I     c #BFBFAB",
+"J     c #C4C4AF",
+"K     c #E5E5CD",
+"L     c #D2C794",
+"M     c #473C19",
+"N     c #5B594B",
+"O     c #C6C6B3",
+"P     c #B4B4A6",
+"Q     c #A7A79A",
+"R     c #6C6C63",
+"S     c #828275",
+"T     c #DFDFC7",
+"U     c #E2E2CA",
+"V     c #E7E7CF",
+"W     c #5E5840",
+"X     c #332F20",
+"Y     c #757569",
+"Z     c #9A9A8B",
+"`     c #9D9D8D",
+" .    c #45453E",
+"..    c #1E1E1B",
+"+.    c #5D5D56",
+"@.    c #D5D5C0",
+"#.    c #AAAA98",
+"$.    c #9D9D8C",
+"%.    c #CDCDB8",
+"&.    c #CFCFB9",
+"*.    c #CFCFBA",
+"=.    c #5D5D54",
+"-.    c #B9B9A7",
+";.    c #EDEDD4",
+">.    c #EFEFD6",
+",.    c #F2F2D9",
+"'.    c #616157",
+").    c #363631",
+"!.    c #EEEED6",
+"~.    c #F0F0D7",
+"{.    c #F1F1D8",
+"].    c #77776B",
+"^.    c #A6A695",
+"/.    c #E9E9D1",
+"(.    c #ABAB9A",
+"_.    c #3A3A34",
+":.    c #31312C",
+"<.    c #66665C",
+"[.    c #21211E",
+"                                    ",
+"                                    ",
+"                . + @               ",
+"              # $ % &           *   ",
+"        . = - ; > , ' )       ! ~   ",
+"      { ] ^ / ( _ : < [ }   | 1 2   ",
+"      3 4 5 6 7 8 [ 9 0 a ! 1 .     ",
+"      b c d e f g h f i ! j 2       ",
+"      k l m n o p q r s 1 t u       ",
+"      v w x y z A B ! 1 C D E F     ",
+"      G H I J K L M ~ N O P Q R .   ",
+"        S T U V W X Y Z ` `  ...    ",
+"        address@hidden; #.$.%.&.*.; =.        ",
+"        } -.*.;.>.,.;.r '.          ",
+"          ).!.~.{.0 ].              ",
+"          . ^./.(._.                ",
+"            :.<.[.                  ",
+"                                    "};
Index: gnue/gnue-common/images/destree_import.xpm
diff -u gnue/gnue-common/images/destree_import.xpm:1.1 
gnue/gnue-common/images/destree_import.xpm:1.2
--- gnue/gnue-common/images/destree_import.xpm:1.1      Wed Jul 18 21:02:29 2001
+++ gnue/gnue-common/images/destree_import.xpm  Thu Jul 19 09:16:04 2001
@@ -1,68 +1,81 @@
 /* XPM */
-static char * tb_jump_to_xpm[] = {
-"24 24 41 1",
+static char * destree_import_xpm[] = {
+"18 18 60 1",
 "      c None",
 ".     c #212121",
-"+     c #EAD4CB",
-"@     c #E3C5BA",
-"#     c #DBB4A4",
-"$     c #EEDED7",
-"%     c #FAF7F5",
-"&     c #F2E5E1",
-"*     c #D2AC99",
-"=     c #000000",
-"-     c #8D9E7C",
-";     c #CDD9C2",
-">     c #DEE6D7",
-",     c #DAE2D1",
-"'     c #9BAD89",
-")     c #B79382",
-"!     c #707D63",
-"~     c #B4C6A2",
-"{     c #ACC098",
-"]     c #636E57",
-"^     c #AB8A7A",
-"/     c #E4E9DD",
-"(     c #657158",
-"_     c #C49F8D",
-":     c #C3D1B5",
-"<     c #808F70",
-"[     c #4C5442",
-"}     c #58634E",
-"|     c #E6EBE0",
-"1     c #D4DDC9",
-"2     c #CAD7BE",
-"3     c #90A17F",
-"4     c #5F6A53",
-"5     c #535C49",
-"6     c #E9EDE4",
-"7     c #616D56",
-"8     c #A8BC95",
-"9     c #7C8B6E",
-"0     c #4C5443",
-"a     c #B6C2AA",
-"b     c #5E6953",
-"                        ",
-"                        ",
-"                        ",
-"                        ",
-"                        ",
-"                        ",
-"             ...        ",
-"           address@hidden      ",
-"           .$%&@*.      ",
-"       =======+#**.     ",
-"       =-;>,'=###).     ",
-"        =!~{]=##*^.     ",
-"      ==/;{(]=#*_.      ",
-"    ==/;:{<[}=))..      ",
-"   =|12{{34=5=..        ",
-"    =6{{{7= ==          ",
-"     =>890=             ",
-"      =a]=              ",
-"       =b=              ",
-"        =               ",
-"                        ",
-"                        ",
-"                        ",
-"                        "};
+"+     c #4F4A48",
+"@     c #B5A29A",
+"#     c #AE9287",
+"$     c #171717",
+"%     c #B5ABA7",
+"&     c #D6CDCA",
+"*     c #E5C9BE",
+"=     c #B19282",
+"-     c #443D39",
+";     c #000000",
+">     c #4E5647",
+",     c #6B7066",
+"'     c #6D7169",
+")     c #3A4133",
+"!     c #71625C",
+"~     c #DDB8A9",
+"{     c #D2AC9A",
+"]     c #736057",
+"^     c #3C4336",
+"/     c #A3B195",
+"(     c #B9CAA8",
+"_     c #555E4B",
+":     c #6E5A52",
+"<     c #DBB4A4",
+"[     c #CBA694",
+"}     c #68574E",
+"|     c #2E2F2C",
+"1     c #353732",
+"2     c #D6DFCC",
+"3     c #B3C3A3",
+"4     c #6F7C61",
+"5     c #485040",
+"6     c #69564E",
+"7     c #CDA795",
+"8     c #7D685E",
+"9     c #71746D",
+"0     c #A0A799",
+"a     c #C3D1B5",
+"b     c #B1C2A0",
+"c     c #879677",
+"d     c #383F31",
+"e     c #404839",
+"f     c #362D29",
+"g     c #6C5A52",
+"h     c #646661",
+"i     c #CCD7BF",
+"j     c #AEC19A",
+"k     c #9CAE8A",
+"l     c #424A3B",
+"m     c #10110E",
+"n     c #070707",
+"o     c #5F635C",
+"p     c #AAB99C",
+"q     c #67735B",
+"r     c #21241D",
+"s     c #4E5349",
+"t     c #485140",
+"u     c #161813",
+"                  ",
+"                  ",
+"                  ",
+"                  ",
+"          ..      ",
+"        address@hidden     ",
+"        $%&*=-    ",
+"     ;>,')!~{]    ",
+"      ^/(_:<[}    ",
+"    |12345678.    ",
+"   90abcdefg.     ",
+"   hijkl mn       ",
+"    opqr          ",
+"     st;          ",
+"      u           ",
+"                  ",
+"                  ",
+"                  "};
Index: gnue/gnue-common/images/destree_page.xpm
diff -u gnue/gnue-common/images/destree_page.xpm:1.1 
gnue/gnue-common/images/destree_page.xpm:1.2
--- gnue/gnue-common/images/destree_page.xpm:1.1        Wed Jul 18 21:02:29 2001
+++ gnue/gnue-common/images/destree_page.xpm    Thu Jul 19 09:16:04 2001
@@ -1,116 +1,114 @@
 /* XPM */
-static char * tb_new_xpm[] = {
-"24 24 89 1",
-"      c None",
-".     c #000000",
-"+     c #ADAD9C",
-"@     c #959585",
-"#     c #DCDCC5",
-"$     c #DFDFC8",
-"%     c #242424",
-"&     c #A7A796",
-"*     c #D7D7C1",
-"=     c #D9D9C3",
-"-     c #DCDCC4",
-";     c #DDDDC7",
-">     c #E1E1CA",
-",     c #A6A694",
-"'     c #D6D6BF",
-")     c #D8D8C2",
-"!     c #DBDBC4",
-"~     c #DFDFC7",
-"{     c #E3E3CB",
-"]     c #B2B29F",
-"^     c #7C7C7C",
-"/     c #646464",
-"(     c #D5D5BD",
-"_     c #D5D5BF",
-":     c #D7D7C0",
-"<     c #DADAC3",
-"[     c #DEDEC6",
-"}     c #E1E1C9",
-"|     c #E5E5CD",
-"1     c #E9E9D1",
-"2     c #343434",
-"3     c #E7E7E7",
-"4     c #373736",
-"5     c #B8B8A6",
-"6     c #D3D3BC",
-"7     c #D9D9C2",
-"8     c #DDDDC5",
-"9     c #E0E0C8",
-"0     c #E8E8D0",
-"a     c #ECECD4",
-"b     c #EEEED5",
-"c     c #ECECEC",
-"d     c #EDEDED",
-"e     c #3D3D37",
-"f     c #CECEB7",
-"g     c #E6E6CE",
-"h     c #EAEAD2",
-"i     c #F1F1D8",
-"j     c #A5A594",
-"k     c #EEEEE5",
-"l     c #3C3C3C",
-"m     c #8F8F80",
-"n     c #D0D0B9",
-"o     c #E4E4CB",
-"p     c #EAEAD1",
-"q     c #ECECD3",
-"r     c #EFEFD6",
-"s     c #F2F2D9",
-"t     c #F3F3DA",
-"u     c #EEEEE6",
-"v     c #505050",
-"w     c #929282",
-"x     c #D1D1B9",
-"y     c #E7E7CF",
-"z     c #EBEBD2",
-"A     c #F4F4DB",
-"B     c #F5F5DC",
-"C     c #969686",
-"D     c #D2D2BC",
-"E     c #E0E0C9",
-"F     c #E9E9D0",
-"G     c #EDEDD4",
-"H     c #F0F0D7",
-"I     c #BEBEAB",
-"J     c #797973",
-"K     c #D8D8C1",
-"L     c #DDDDC6",
-"M     c #98988F",
-"N     c #E4E4CC",
-"O     c #818174",
-"P     c #E2E2CA",
-"Q     c #BEBEAE",
-"R     c #4E4E4E",
-"S     c #828274",
-"T     c #EBEBD3",
-"U     c #BBBBA8",
-"V     c #CDCDB8",
-"W     c #4D4D45",
-"X     c #A6A696",
-"                        ",
-"                        ",
-"             .          ",
-"           ..+.         ",
-"         address@hidden         ",
-"       ..&*=-;>.        ",
-"     ..,'**)!~{].       ",
-"    .^/'(_:<[}|12       ",
-"    .3456*789|0ab.      ",
-"    .cdef_!9g0hbij.     ",
-"    .kklmn9opqrist.     ",
-"    .uvwx-}yzbittAB.    ",
-"    ..CD!E{FGHtAABBI.   ",
-"    .JK7L>ypbitBBBBB).  ",
-"    .M!#$NyzbitBBBBBO.  ",
-"     .~9P|1qrsABBBB..   ",
-"     .Q||0hGHtABB<.     ",
-"      R01hGrstAsS.      ",
-"      .TaGriss<.        ",
-"       .rHis1j.         ",
-"       .UstVW.          ",
-"        .tX.            ",
-"         ..             ",
-"                        "};
+static char * destree_page_xpm[] = {
+"18 18 93 2",
+"      c None",
+".     c #000000",
+"+     c #282824",
+"@     c #4A4A43",
+"#     c #30302B",
+"$     c #8A8A7B",
+"%     c #DDDDC5",
+"&     c #99998B",
+"*     c #47473F",
+"=     c #808072",
+"-     c #CBCBB6",
+";     c #D8D8C2",
+">     c #DCDCC5",
+",     c #E0E0C9",
+"'     c #7B7B6E",
+")     c #1D1D1D",
+"!     c #545454",
+"~     c #AAAA9A",
+"{     c #D5D5BE",
+"]     c #D6D6C0",
+"^     c #D9D9C2",
+"/     c #DEDEC6",
+"(     c #E2E2CA",
+"_     c #272727",
+":     c #3A3A3A",
+"<     c #A6A6A6",
+"[     c #8C8C81",
+"}     c #D3D3BC",
+"|     c #E3E3CB",
+"1     c #E7E7CF",
+"2     c #ECECD3",
+"3     c #BDBDAA",
+"4     c #21211E",
+"5     c #3B3B3A",
+"6     c #EDEDE9",
+"7     c #696965",
+"8     c #B8B8A4",
+"9     c #D8D8C1",
+"0     c #E1E1C9",
+"a     c #E8E8D0",
+"b     c #EBEBD3",
+"c     c #EFEFD6",
+"d     c #66665B",
+"e     c #3B3B39",
+"f     c #B3B3AE",
+"g     c #7B7B72",
+"h     c #C7C7B0",
+"i     c #E5E5CD",
+"j     c #EBEBD2",
+"k     c #F2F2D9",
+"l     c #F3F3DA",
+"m     c #393933",
+"n     c #080807",
+"o     c #626259",
+"p     c #C8C8B3",
+"q     c #DDDDC6",
+"r     c #E2E2CB",
+"s     c #E8E8CF",
+"t     c #EEEED5",
+"u     c #F4F4DB",
+"v     c #F5F5DC",
+"w     c #32322D",
+"x     c #222220",
+"y     c #B1B1A2",
+"z     c #DADAC3",
+"A     c #DFDFC8",
+"B     c #EAEAD1",
+"C     c #818174",
+"D     c #828275",
+"E     c #DFDFC7",
+"F     c #F0F0D6",
+"G     c #6B6B60",
+"H     c #1E1E1B",
+"I     c #5D5D56",
+"J     c #D5D5C0",
+"K     c #EDEDD4",
+"L     c #F1F1D8",
+"M     c #F4F4DA",
+"N     c #5D5D54",
+"O     c #B9B9A7",
+"P     c #959585",
+"Q     c #616157",
+"R     c #363631",
+"S     c #EEEED6",
+"T     c #F0F0D7",
+"U     c #DEDEC8",
+"V     c #77776B",
+"W     c #A6A695",
+"X     c #E9E9D1",
+"Y     c #ABAB9A",
+"Z     c #3A3A34",
+"`     c #31312C",
+" .    c #66665C",
+"                                    ",
+"                                    ",
+"                . + @               ",
+"              # $ % &               ",
+"        . * = - ; > , '             ",
+"      ) ! ~ { ] ^ / ( / _           ",
+"      : < [ } ; % | 1 2 3 4         ",
+"      5 6 7 8 9 0 a b c a d         ",
+"      e f g h % i j c k l ] m       ",
+"      n o p q r s t k u u v ] w     ",
+"      x y z A i B c k u v v v C .   ",
+"        D E ( 1 j F l v v v G H     ",
+"        I J 1 B K L M u - N         ",
+"        _ O b K c k K P Q           ",
+"          R S T L U V               ",
+"          . W X Y Z                 ",
+"            `  .4                   ",
+"                                    "};
Index: gnue/gnue-common/images/destree_pagewidget.xpm
diff -u gnue/gnue-common/images/destree_pagewidget.xpm:1.1 
gnue/gnue-common/images/destree_pagewidget.xpm:1.2
--- gnue/gnue-common/images/destree_pagewidget.xpm:1.1  Wed Jul 18 21:02:29 2001
+++ gnue/gnue-common/images/destree_pagewidget.xpm      Thu Jul 19 09:16:04 2001
@@ -1,29 +1,23 @@
 /* XPM */
-static char * tb_text_justify_xpm[] = {
-"24 24 2 1",
+static char * destree_pagewidget_xpm[] = {
+"18 18 2 1",
 "      c None",
 ".     c #000000",
-"                        ",
-"                        ",
-"                        ",
-"                        ",
-"                        ",
-"                        ",
-"    ....  .... ......   ",
-"                        ",
-"    ... .....  .... .   ",
-"                        ",
-"    .......  .. . ...   ",
-"                        ",
-"    ..... .....  ....   ",
-"                        ",
-"    ...  ..  ...  ...   ",
-"                        ",
-"    ... ....  ..  ...   ",
-"                        ",
-"    ..  ...  ...  ...   ",
-"                        ",
-"                        ",
-"                        ",
-"                        ",
-"                        "};
+"                  ",
+"                  ",
+"                  ",
+"                  ",
+"   ...  ..  ...   ",
+"                  ",
+"   .. .... ... .  ",
+"   .....  .   .   ",
+"                  ",
+"   .... ...  ...  ",
+"   ..  .  ..  .   ",
+"                  ",
+"   .. ...  .  ..  ",
+"   .  ..  ..  .   ",
+"                  ",
+"                  ",
+"                  ",
+"                  "};
Index: gnue/gnue-common/images/destree_properties.xpm
diff -u gnue/gnue-common/images/destree_properties.xpm:1.1 
gnue/gnue-common/images/destree_properties.xpm:1.2
--- gnue/gnue-common/images/destree_properties.xpm:1.1  Wed Jul 18 21:02:29 2001
+++ gnue/gnue-common/images/destree_properties.xpm      Thu Jul 19 09:16:04 2001
@@ -1,80 +1,111 @@
 /* XPM */
-static char * tb_preferences_xpm[] = {
-"24 24 53 1",
+static char * destree_properties_xpm[] = {
+"18 18 90 1",
 "      c None",
 ".     c #000000",
-"+     c #E5E5E5",
-"@     c #CECECE",
-"#     c #CDCDCD",
-"$     c #DCCB94",
-"%     c #DCDCDC",
-"&     c #C7C7C7",
-"*     c #8E7D45",
-"=     c #CFCFCF",
-"-     c #C1C1C1",
-";     c #AB5959",
-">     c #D9D9D9",
-",     c #878787",
-"'     c #DBDBDB",
-")     c #D4D4D4",
-"!     c #A84F4F",
-"~     c #A7A7A7",
-"{     c #9B9B9B",
-"]     c #F5F5F5",
-"^     c #F3F3F3",
-"/     c #A65757",
-"(     c #6E6E6E",
-"_     c #DACACA",
-":     c #AC5757",
-"<     c #C48B8B",
-"[     c #AA6C6C",
-"}     c #E9DDDD",
-"|     c #A65353",
-"1     c #C6C6C6",
-"2     c #D4C38D",
-"3     c #E4E4E4",
-"4     c #D6D6D0",
-"5     c #C0C0BB",
-"6     c #828279",
-"7     c #AD8E30",
-"8     c #756020",
-"9     c #C5C5BF",
-"0     c #A7A79A",
-"a     c #818174",
-"b     c #DFE1E1",
-"c     c #D6E1E0",
-"d     c #060605",
-"e     c #A3A395",
-"f     c #C8C8C8",
-"g     c #8B8B7D",
-"h     c #7E7E71",
-"i     c #B2B9B6",
-"j     c #D9D9D2",
-"k     c #D9D9D3",
-"l     c #DADAD4",
-"m     c #DADAD9",
-"n     c #DADADA",
-"                        ",
-"                        ",
-"                        ",
-"             ..         ",
-"           address@hidden     .  ",
-"         ..#+++.    .$. ",
-"      ...%+++++&.  .$*. ",
-"    ..#++++=+-++. .$*.  ",
-"   .%++++;+>+=,+'.$*.   ",
-"   .)++++!~+{,++.$*.    ",
-"    .++]^/+(+++.$*.     ",
-"    .%_:<[++++.$*.>.    ",
-"     .+}|/+++.$*.=+1.   ",
-"     .)+++++.2*.>3456.  ",
-"      .+++]78..90000a.  ",
-"      .%+bcd.ee0000f.   ",
-"       .+0ghijkl+m..    ",
-"       .)+++++++f.      ",
-"        .++++++..       ",
-"        .%+++f.         ",
-"         .+n..          ",
-"          ..            ",
-"                        ",
-"                        "};
+"+     c #2F2F2F",
+"@     c #646464",
+"#     c #DCDCDC",
+"$     c #353535",
+"%     c #2C291E",
+"&     c #2C2C2C",
+"*     c #707070",
+"=     c #BFBFBF",
+"-     c #E5E5E5",
+";     c #848484",
+">     c #807553",
+",     c #5B5236",
+"'     c #585858",
+")     c #A7A7A7",
+"!     c #B9B9B9",
+"~     c #E4E4E4",
+"{     c #D9D9D9",
+"]     c #DEDEDE",
+"^     c #D8D8D8",
+"/     c #DFDFDF",
+"(     c #847A59",
+"_     c #827447",
+":     c #1C190E",
+"<     c #DDDDDD",
+"[     c #D6C1C1",
+"}     c #C09696",
+"|     c #DADADA",
+"1     c #CDCDCD",
+"2     c #AEAEAE",
+"3     c #D3D3D3",
+"4     c #898884",
+"5     c #898989",
+"6     c #EBEBEB",
+"7     c #DBC6C6",
+"8     c #B68C8C",
+"9     c #B1B1B1",
+"0     c #BDBDBD",
+"a     c #8F8F8F",
+"b     c #7E7148",
+"c     c #383838",
+"d     c #DED8D8",
+"e     c #C69393",
+"f     c #C69595",
+"g     c #C7A6A6",
+"h     c #CFCFCF",
+"i     c #8A8062",
+"j     c #63615A",
+"k     c #323232",
+"l     c #E6DFDF",
+"m     c #B67878",
+"n     c #CDB0B0",
+"o     c #8E8D8A",
+"p     c #7F7452",
+"q     c #5E5E5E",
+"r     c #DBDBDA",
+"s     c #CCCCCA",
+"t     c #1E1E1C",
+"u     c #474747",
+"v     c #C6C6C6",
+"w     c #E9E9E9",
+"x     c #D2C6A3",
+"y     c #463C1E",
+"z     c #595035",
+"A     c #5C5950",
+"B     c #C1C1BB",
+"C     c #C2C2BA",
+"D     c #B6B6AD",
+"E     c #616159",
+"F     c #DFE4E4",
+"G     c #5B5845",
+"H     c #353122",
+"I     c #7A7A70",
+"J     c #A1A196",
+"K     c #A7A79A",
+"L     c #BABAB4",
+"M     c #1E1E1B",
+"N     c #D6D6D4",
+"O     c #ACACA2",
+"P     c #9A9A90",
+"Q     c #C6CAC7",
+"R     c #DCDCD7",
+"S     c #DDDDD8",
+"T     c #5D5D5D",
+"U     c #565656",
+"V     c #E2E2E2",
+"W     c #E0E0E0",
+"X     c #626262",
+"Y     c #A6A6A6",
+"                  ",
+"                  ",
+"          .       ",
+"        address@hidden    % ",
+"     .&*=--;   >, ",
+"   .')!~{]^/. (_: ",
+"  .<--[}|1234>_.  ",
+"   5-678901a>b:   ",
+"   cdefgh-ai_jk   ",
+"    *lmn-op_qrst  ",
+"    uv-wxyzABCDE. ",
+"    .)~FGHIJKKLM  ",
+"     .NOPQRShT.   ",
+"      5----aU     ",
+"      cV-W;       ",
+"       XY.        ",
+"        .         ",
+"                  "};
Index: gnue/gnue-common/images/destree_trigger.xpm
diff -u gnue/gnue-common/images/destree_trigger.xpm:1.1 
gnue/gnue-common/images/destree_trigger.xpm:1.2
--- gnue/gnue-common/images/destree_trigger.xpm:1.1     Wed Jul 18 21:02:29 2001
+++ gnue/gnue-common/images/destree_trigger.xpm Thu Jul 19 09:16:04 2001
@@ -1,54 +1,90 @@
 /* XPM */
-static char * tb_convert_xpm[] = {
-"24 24 27 1",
+static char * destree_trigger_xpm[] = {
+"18 18 69 1",
 "      c None",
-".     c #000000",
-"+     c #D37F71",
-"@     c #37452B",
-"#     c #CE918A",
-"$     c #D4897A",
-"%     c #67102D",
-"&     c #C47474",
-"*     c #D69788",
-"=     c #445636",
-"-     c #CB8984",
-";     c #D79C8D",
-">     c #526741",
-",     c #C8807D",
-"'     c #4C603C",
-")     c #566B43",
-"!     c #5A7046",
-"~     c #577A4D",
-"{     c #4C6B43",
-"]     c #76996C",
-"^     c #9BB594",
-"/     c #648C58",
-"(     c #DAE3D6",
-"_     c #67865E",
-":     c #A7BDA0",
-"<     c #8EAB86",
-"[     c #425D3A",
-"                        ",
-"                        ",
-"                        ",
-"                        ",
-"      .      ....       ",
-"     .+.    address@hidden      ",
-"    .#$%.  .   address@hidden      ",
-"   .&#*%%.      .=.     ",
-"  .&-#;%%%.     .>.     ",
-" .&,-#;%%%%.  ..>>'..   ",
-" .&,-#*%%%.    .)!).    ",
-"  ..&,$%%.      .>.     ",
-"    ..+%.        .      ",
-"      ..                ",
-"                ...     ",
-"              ..~~{..   ",
-"              .]^^]/.   ",
-"             .~^(^]/{.  ",
-"             ._:^<//{.  ",
-"             .~]]//~[.  ",
-"              .~//~{.   ",
-"              ..[{[..   ",
-"                ...     ",
-"                        "};
+".     c #2A1917",
+"+     c #000000",
+"@     c #0A0D08",
+"#     c #291D1C",
+"$     c #9D665D",
+"%     c #5B272E",
+"&     c #181E12",
+"*     c #151A10",
+"=     c #A26564",
+"-     c #D29287",
+";     c #833143",
+">     c #3E0A1B",
+",     c #171D12",
+"'     c #1D2517",
+")     c #271717",
+"!     c #A06060",
+"~     c #CC8B86",
+"{     c #D2968C",
+"]     c #833345",
+"^     c #67102D",
+"/     c #400A1C",
+"(     c #242D1C",
+"_     c #323F28",
+":     c #623A3A",
+"<     c #C77D7B",
+"[     c #D2958A",
+"}     c #833244",
+"|     c #4D0C22",
+"1     c #150309",
+"2     c #546A42",
+"3     c #536842",
+"4     c #141910",
+"5     c #321F1F",
+"6     c #C77C7A",
+"7     c #CF887F",
+"8     c #822F41",
+"9     c #540D25",
+"0     c #252E1D",
+"a     c #35422A",
+"b     c #5A3630",
+"c     c #62212F",
+"d     c #415B3A",
+"e     c #3D5636",
+"f     c #12190F",
+"g     c #11180F",
+"h     c #65805D",
+"i     c #A7BEA0",
+"j     c #88A780",
+"k     c #688F5D",
+"l     c #2F402B",
+"m     c #90AB89",
+"n     c #B1C5AB",
+"o     c #81A178",
+"p     c #668E5A",
+"q     c #395032",
+"r     c #2E3E29",
+"s     c #78996F",
+"t     c #7B9D71",
+"u     c #69905E",
+"v     c #5D8252",
+"w     c #33482D",
+"x     c #31452B",
+"y     c #5C8151",
+"z     c #587B4E",
+"A     c #3F5938",
+"B     c #22301E",
+"C     c #24321F",
+"D     c #0D130C",
+"                  ",
+"                  ",
+"                  ",
+"    .     address@hidden     ",
+"   #$%   ++&*+    ",
+"  +=-;>     ,'    ",
+" )!~{]^/    (_    ",
+" :<~[}^|1  +234   ",
+" )567891    0a    ",
+"   +bc+           ",
+"     +      ++    ",
+"           +def+  ",
+"          ghijkf  ",
+"          lmnopq+ ",
+"          rstuvw+ ",
+"          +xyzA+  ",
+"           +BCD   ",
+"                  "};
Index: gnue/gnue-common/setup.py
diff -u gnue/gnue-common/setup.py:1.14 gnue/gnue-common/setup.py:1.15
--- gnue/gnue-common/setup.py:1.14      Mon Jul 16 14:31:22 2001
+++ gnue/gnue-common/setup.py   Wed Jul 18 21:02:29 2001
@@ -56,6 +56,7 @@
              base_dir = 'install_data', 
              copy_to = 'shared', 
              template = ['recursive-include images *.png', 
+                         'recursive-include images *.xpm',
                          'prune images/CVS'], 
              preserve_path = 1), 
   Data_Files(
Index: gnue/gnue-common/src/GConnections.py
diff -u gnue/gnue-common/src/GConnections.py:1.8 
gnue/gnue-common/src/GConnections.py:1.9
--- gnue/gnue-common/src/GConnections.py:1.8    Wed Jun  6 15:31:15 2001
+++ gnue/gnue-common/src/GConnections.py        Mon Jun 25 12:29:11 2001
@@ -37,12 +37,12 @@
 import GLoginHandler
 from gnue.common import openResource
 
-class NotFoundError (Error): 
+class NotFoundError (StandardError): 
   # Raised if a requested connection name does not  
   # exist in the Connections Definition File.
   pass
 
-class InvalidFormatError (Error): 
+class InvalidFormatError (StandardError): 
   # Raised if the Connections Definition File is   
   # in an unreadable format.
   pass
Index: gnue/gnue-common/src/GObjects.py
diff -u gnue/gnue-common/src/GObjects.py:1.15 
gnue/gnue-common/src/GObjects.py:1.16
--- gnue/gnue-common/src/GObjects.py:1.15       Thu Jul  5 10:52:42 2001
+++ gnue/gnue-common/src/GObjects.py    Sat Jul 28 20:21:41 2001
@@ -207,7 +207,10 @@
     while (parentObject._parent != None and parentObject.getObjectType() != 
type):
       parentObject = parentObject._parent
 
-    return parentObject
+    if parentObject.getObjectType() == type: 
+      return parentObject
+    else: 
+      return None
 
   #
   # getDescription
Index: gnue/gnue-common/src/GParser.py
diff -u gnue/gnue-common/src/GParser.py:1.17 
gnue/gnue-common/src/GParser.py:1.18
--- gnue/gnue-common/src/GParser.py:1.17        Fri Jun 29 15:55:58 2001
+++ gnue/gnue-common/src/GParser.py     Wed Jul  4 17:24:11 2001
@@ -46,6 +46,7 @@
 import string
 import sys
 import GDebug
+import GTypecast
 
 
 #######################################################
@@ -114,10 +115,13 @@
 #
 # This is for typecasting strings
 #
+# NOTE: This is a redefinition of GTypecast.text.
+#   This redefinition will be removed as soon as all
+#   references to it are changes.  You should be using
+#   GTypecast from now on.
+#
 #######################################################
-def char (value): 
-  # Do we convert '&lt;',etc stuff here?
-  return str(value)
+char  = GTypecast.text
 
 
 #######################################################
@@ -126,18 +130,13 @@
 #
 # This is for typecasting booleans
 #
+# NOTE: This is a redefinition of GTypecast.boolean. 
+#   This redefinition will be removed as soon as all
+#   references to it are changes.  You should be using
+#   GTypecast from now on. 
+#
 #######################################################
-def bool (value): 
-  if value == 0 or value == 1: 
-    return value
-
-  rv = string.lower(string.strip(value))
-  if len(rv): 
-    return not (rv[0] == 'n' or rv[0] == 'f' or rv == '0')
-  else: 
-    # This may seem counter-intuitive, but if attribute was present 
-    # without a specified value, then treat as true
-    return 1
+bool = GTypecast.boolean
 
 
 #######################################################
Index: gnue/gnue-common/src/dbdrivers/geas/DBdriver.py
diff -u gnue/gnue-common/src/dbdrivers/geas/DBdriver.py:1.5 
gnue/gnue-common/src/dbdrivers/geas/DBdriver.py:1.6
--- gnue/gnue-common/src/dbdrivers/geas/DBdriver.py:1.5 Wed Jun 27 18:58:51 2001
+++ gnue/gnue-common/src/dbdrivers/geas/DBdriver.py     Thu Jul 12 20:56:31 2001
@@ -21,7 +21,7 @@
 #
 # GEAS database driver
 #
-# $Id: DBdriver.py,v 1.5 2001/06/28 01:58:51 jamest Exp $
+# $Id: DBdriver.py,v 1.6 2001/07/13 03:56:31 jcater Exp $
 #
 
 import sys
@@ -82,6 +82,7 @@
 
             ## Now make connection
             #self.database.connect()
+          self.triggerExtensions = TriggerExtensions(self.database)
         except (GEAS.ServerError,
                GEAS.AuthenticationError),ex:
             print "Failed to connect to database. Exiting."
@@ -253,3 +254,29 @@
             i = ord(c)
             r = r + h[(i >> 4) & 0xF] + h[i & 0xF]
         return r
+
+
+
+#
+#  Extensions to Trigger Namespaces
+#  
+class TriggerExtensions: 
+
+  def __init__(self, connection): 
+    self.__connection = connection
+
+  # Return the current date, according to database
+#  def getDate(self): 
+#    pass
+
+  # Return a sequence number from sequence 'name' 
+#  def getSequence(self, name): 
+#    pass
+
+  # Run the SQL statement 'statement'
+#  def sql(self, statement): 
+#    pass
+
+
+
+
Index: gnue/gnue-common/src/dbdrivers/postgresql/DBdriver.py
diff -u gnue/gnue-common/src/dbdrivers/postgresql/DBdriver.py:1.8 
gnue/gnue-common/src/dbdrivers/postgresql/DBdriver.py:1.9
--- gnue/gnue-common/src/dbdrivers/postgresql/DBdriver.py:1.8   Wed Jul  4 
17:24:11 2001
+++ gnue/gnue-common/src/dbdrivers/postgresql/DBdriver.py       Thu Jul 12 
20:56:31 2001
@@ -109,6 +109,7 @@
                    password=connectData['_password'], 
                    host=connectData['host'], 
                    database=connectData['dbname'])
+      self.triggerExtensions = TriggerExtensions(self._dataConnection)
     except self._DatabaseError, value:
       raise GDataObjects.ConnectionError, value
 
@@ -138,16 +139,44 @@
     return DBSIG_DataObject_SQL._buildQuery(self, conditions)
 
 
+#
+#  Extensions to Trigger Namespaces
+#  
+class TriggerExtensions: 
+
+  def __init__(self, connection): 
+    self.__connection = connection
+
+  # Return the current date, according to database
+#  def getDate(self): 
+#    pass
+
+  # Return a sequence number from sequence 'name' 
+#  def getSequence(self, name): 
+#    pass
+
+  # Run the SQL statement 'statement'
+#  def sql(self, statement): 
+#    pass
 
+
+
+######################################
+#
+#  The following hashes describe 
+#  this driver's characteristings.
+#
+######################################
+
+#
+#  All datasouce "types" and corresponding DataObject class
+# 
 supportedDataObjects = { 
   'object': PG_DataObject_Object,
   'sql':    PG_DataObject_SQL
 }
 
 
-
-
-
 ##########################################################################
 ##########################################################################
 ##
@@ -175,7 +204,8 @@
       self.connection = pg.DB(dbname, host, -1, None, None, user, passwd)
       if GConfig.get('Encoding') != 'DEFAULT':
         self.connection.query("set encoding to '%s'" % GConfig.get('Encoding'))
-       
+
+      self.triggerExtensions = TriggerExtensions(self.connection)
     except pg.error, value:
       raise GDataObjects.ConnectionError, value
 
Index: gnue/gnue-config/README
diff -u gnue/gnue-config/README:1.4 gnue/gnue-config/README:1.5
--- gnue/gnue-config/README:1.4 Sun Mar  4 18:16:49 2001
+++ gnue/gnue-config/README     Tue Jul 24 16:48:22 2001
@@ -1,4 +1,4 @@
-# README
+# gnue-config/README
 #                  
 # Copyright (C) 2001 Free Software Foundation, Inc.
 #
@@ -6,7 +6,7 @@
 #
 # This file originally written by Neil Tiffin (address@hidden).
 #
-# $Revision: 1.4 $ $Date: 2001/03/05 02:16:49 $ $Author: ntiffin $
+# $Revision: 1.5 $ $Date: 2001/07/24 23:48:22 $ $Author: ntiffin $
 #
 
 gnue-config Directory
@@ -14,6 +14,7 @@
 This directory contains the various files used to configure GNUe to
 perform as enterprise software.
 
+See note below for converting .geas files to .sql.
 
 Directory Structure
 ===================
@@ -41,5 +42,9 @@
     reports - contains report definitions (.grd)
     forms - contains form definitions (.gfd)
     classes - contains class (business object) definitions (.gcd)
-    defaults - sql or other initialization scripts etc (.sql)
+    defaults - sql or other initialization scripts etc.  Note that
+               file types of .geas are almost SQL files, suitable for
+               use in documentation.  If you you want real .sql files
+               to load an SQl database then run
+               geas/tools/parse_load_sql.py to convert .geas to .sql
     doc - the module documention files in docbook format.
Index: gnue/gnue-config/accounting/package-doc/Accounting.sgml
diff -u gnue/gnue-config/accounting/package-doc/Accounting.sgml:1.7 
gnue/gnue-config/accounting/package-doc/Accounting.sgml:1.8
--- gnue/gnue-config/accounting/package-doc/Accounting.sgml:1.7 Thu Jul  5 
14:58:16 2001
+++ gnue/gnue-config/accounting/package-doc/Accounting.sgml     Tue Jul 24 
16:53:50 2001
@@ -17,15 +17,15 @@
 <!ENTITY glpostcode                SYSTEM "../gl/classes/gl_post.gcd">
 <!ENTITY acctcode                  SYSTEM "../acct/classes/acct.gcd">
 
-<!ENTITY glaccstatusdata       SYSTEM "../gl/defaults/insert-en-status.sql">
-<!ENTITY glacctypedata         SYSTEM "../gl/defaults/insert-en-type.sql">
+<!ENTITY glaccstatusdata       SYSTEM "../gl/defaults/insert-en-status.geas">
+<!ENTITY glacctypedata         SYSTEM "../gl/defaults/insert-en-type.geas">
 
 
 <!-- This contains reference to licenses and copyright -->
 <!ENTITY % global.shared   SYSTEM "shared/shared.ent">
 
 <!-- Build Date -->
-<!ENTITY gnue.build-date "$Id: Accounting.sgml,v 1.7 2001/07/05 21:58:16 
ntiffin Exp $">
+<!ENTITY gnue.build-date "$Id: Accounting.sgml,v 1.8 2001/07/24 23:53:50 
ntiffin Exp $">
 
 <!-- %global.chapters; -->
 %global.shared;
Index: gnue/gnue-config/base/package-doc/chapters.ent
diff -u gnue/gnue-config/base/package-doc/chapters.ent:1.11 
gnue/gnue-config/base/package-doc/chapters.ent:1.12
--- gnue/gnue-config/base/package-doc/chapters.ent:1.11 Thu Jul  5 20:19:39 2001
+++ gnue/gnue-config/base/package-doc/chapters.ent      Tue Jul 24 16:53:50 2001
@@ -1,6 +1,6 @@
 <!-- -*- SGML -*-
 
- $Id: chapters.ent,v 1.11 2001/07/06 03:19:39 ntiffin Exp $
+ $Id: chapters.ent,v 1.12 2001/07/24 23:53:50 ntiffin Exp $
 
  Contains chapter references
 
@@ -27,6 +27,6 @@
 <!ENTITY baseitemcode              SYSTEM "../item/classes/base_item.gcd">
 <!ENTITY orgcode                           SYSTEM "../org/classes/org.gcd">
 
-<!ENTITY currencydata                  SYSTEM 
"../currency/defaults/insert-en-ISO4217-currency.sql">
-<!ENTITY countrydata                   SYSTEM 
"../location/defaults/insert-en-country-codes.sql">
-<!ENTITY statedata                             SYSTEM 
"../location/defaults/insert-en-us-states.sql">
+<!ENTITY currencydata                  SYSTEM 
"../currency/defaults/insert-en-ISO4217-currency.geas">
+<!ENTITY countrydata                   SYSTEM 
"../location/defaults/insert-en-country-codes.geas">
+<!ENTITY statedata                             SYSTEM 
"../location/defaults/insert-en-us-states.geas">
Index: gnue/gnue-config/supply-chain/purchasing/classes/purchasing.gcd
diff -u gnue/gnue-config/supply-chain/purchasing/classes/purchasing.gcd:1.10 
gnue/gnue-config/supply-chain/purchasing/classes/purchasing.gcd:1.11
--- gnue/gnue-config/supply-chain/purchasing/classes/purchasing.gcd:1.10        
Thu Jul  5 11:38:30 2001
+++ gnue/gnue-config/supply-chain/purchasing/classes/purchasing.gcd     Thu Jul 
26 15:34:47 2001
@@ -22,7 +22,7 @@
 #
 # This file originally written by Neil Tiffin (address@hidden).
 #
-# $Revision: 1.10 $ $Date: 2001/07/05 18:38:30 $ $Author: ntiffin $
+# $Revision: 1.11 $ $Date: 2001/07/26 22:34:47 $ $Author: ntiffin $
 #
 include "../../../base/units/classes/units.gcd"
 include "../../../supply-chain/vendor/classes/vendor.gcd"
@@ -42,15 +42,24 @@
   };
     
   # -------------------------------------------------------------------------
-  # 
+  # Recommended Vendor
   # -------------------------------------------------------------------------
+  class use_vendor
+  {
+    vendor::vendor  *recommended;
+    text             notes;
+  };
+  
+  # -------------------------------------------------------------------------
+  # Purchasing Item
+  # -------------------------------------------------------------------------
   class item : base_item::item
   {
     char    buyer_code<8>;
     text    purch_text;
     char    purch_desc<100>;
     
-    vendor::vendor [] recommended_vendor;
+    pur::use_vendor [] recommend_vendor;
    
     help en buyer_code  "The buyer code is a reference to the buyer 
responsible"
                         "for purchasing this product.";
Index: gnue/gnuef/samples/contact.gfd
diff -u gnue/gnuef/samples/contact.gfd:1.14 gnue/gnuef/samples/contact.gfd:1.15
--- gnue/gnuef/samples/contact.gfd:1.14 Mon Apr 16 21:12:22 2001
+++ gnue/gnuef/samples/contact.gfd      Wed Aug  8 20:27:24 2001
@@ -1,9 +1,9 @@
 <?xml version="1.0"?>
-<form title="Contact Test">
+<form>
 
 <options>
 <!--  <name>Contact Test</name> -->
-  <version>0.0.2</version>
+  <version>0.0.3</version>
   <height>11</height>
   <width>54</width>
 </options>
Index: gnue/gnuef/samples/po/sc_po_entry.gfd
diff -u gnue/gnuef/samples/po/sc_po_entry.gfd:1.7 
gnue/gnuef/samples/po/sc_po_entry.gfd:1.8
--- gnue/gnuef/samples/po/sc_po_entry.gfd:1.7   Mon Jun 25 14:42:19 2001
+++ gnue/gnuef/samples/po/sc_po_entry.gfd       Sat Jul 21 16:33:49 2001
@@ -143,15 +143,15 @@
       <label text="Amount" x="69" y="1"/>
 
 
-      <entry name="ntryItemNo" field="item_number" value="" x="1" y="2" 
width="15" visibleCount="15"/>
-      <entry name="ntryDescription" field="desc" value="" x="17" y="2" 
width="35" visibleCount="15"/>
-      <entry name="ntryQuantity" field="qty" value="" x="53" y="2" width="4" 
visibleCount="15">
+      <entry name="ntryItemNo" field="item_number" value="" x="1" y="2" 
width="15" rows="15"/>
+      <entry name="ntryDescription" field="desc" value="" x="17" y="2" 
width="35" rows="15"/>
+      <entry name="ntryQuantity" field="qty" value="" x="53" y="2" width="4" 
rows="15">
         <trigger type="Pre-FocusOut" src="trggrAmount" />
       </entry>
-      <entry name="ntryUnitPrice" field="unit_price" value="" x="58" y="2" 
width="10" visibleCount="15">
+      <entry name="ntryUnitPrice" field="unit_price" value="" x="58" y="2" 
width="10" rows="15">
         <trigger type="Pre-FocusOut" src="trggrAmount" />
       </entry>
-      <entry name="ntryAmount" field="amt" value="" x="69" y="2" width="10" 
visibleCount="15" readonly="true"/>
+      <entry name="ntryAmount" field="amt" value="" x="69" y="2" width="10" 
rows="15" readonly="true"/>
 
 
       <label text="Comments/Shipping Notes" x="1" y="17"/>
Index: gnue/gnuef/samples/track/forms/contact_manager.gfd
diff -u gnue/gnuef/samples/track/forms/contact_manager.gfd:1.4 
gnue/gnuef/samples/track/forms/contact_manager.gfd:1.5
--- gnue/gnuef/samples/track/forms/contact_manager.gfd:1.4      Mon Jun 25 
21:40:12 2001
+++ gnue/gnuef/samples/track/forms/contact_manager.gfd  Sat Jul 21 16:33:49 2001
@@ -29,22 +29,21 @@
 ]]>
 </trigger>
 
-<!--
 
 <trigger type="named" name="phoneNew">
-blckPersonPhone.helper.object.newRecord()
+blckPhone.helper.object.newRecord()
 </trigger>
 
 <trigger type="named" name="phoneDelete">
-blckPersonPhone.helper.object.deleteRecord()
+blckPhone.helper.object.deleteRecord()
 </trigger>
 
 <trigger type="named" name="phonePrev">
-blckPersonPhone.helper.object.prevRecord()
+blckPhone.helper.object.prevRecord()
 </trigger>
 
 <trigger type="named" name="phoneNext">
-blckPersonPhone.helper.object.nextRecord()
+blckPhone.helper.object.nextRecord()
 </trigger>
 
 <trigger type="named" name="recordTrigger">
@@ -52,37 +51,36 @@
 </trigger>
 
 <trigger type="named" name="addrNew">
-blckPersonAddress.helper.object.newRecord()
+blckAddress.helper.object.newRecord()
 </trigger>
 
 <trigger type="named" name="addrDelete">
-blckPersonAddress.helper.object.deleteRecord()
+blckAddress.helper.object.deleteRecord()
 </trigger>
 
 <trigger type="named" name="addrPrev">
-blckPersonAddress.helper.object.prevRecord()
+blckAddress.helper.object.prevRecord()
 </trigger>
 
 <trigger type="named" name="addrNext">
-blckPersonAddress.helper.object.nextRecord()
+blckAddress.helper.object.nextRecord()
 </trigger>
 
 <trigger type="named" name="emailNew">
-blckPersonEmail.helper.object.newRecord()
+blckEmail.helper.object.newRecord()
 </trigger>
 
 <trigger type="named" name="emailDelete">
-blckPersonEmail.helper.object.deleteRecord()
+blckEmail.helper.object.deleteRecord()
 </trigger>
 
 <trigger type="named" name="emailPrev">
-blckPersonEmail.helper.object.prevRecord()
+blckEmail.helper.object.prevRecord()
 </trigger>
 
 <trigger type="named" name="emailNext">
-blckPersonEmail.helper.object.nextRecord()
+blckEmail.helper.object.nextRecord()
 </trigger>
--->
 
   <database name="dtbsGNUe" provider="postgresql" dbname="gnue" host="gnue"/>
   <datasource name="dtsrcPerson" database="dtbsGNUe" table="person" 
order_by="last_name" prequery=""/>
Index: gnue/gnuef/samples/zipcode/zipcode.gfd
diff -u gnue/gnuef/samples/zipcode/zipcode.gfd:1.9 
gnue/gnuef/samples/zipcode/zipcode.gfd:1.10
--- gnue/gnuef/samples/zipcode/zipcode.gfd:1.9  Mon Feb 19 18:47:24 2001
+++ gnue/gnuef/samples/zipcode/zipcode.gfd      Tue Mar 20 15:25:50 2001
@@ -11,7 +11,7 @@
 <!--  <database name="gnue" provider="mysql" dbname="gnue" host="localhost"/> 
-->
   <database name="gnue" provider="postgresql" dbname="gnue" host="gnue"/> 
 
-  <datasource name="zips" database="gnue" table="zipcode" cache="5" 
order_by="state_code,city"/> 
+  <datasource name="zips" database="gnue" table="zipcode" cache="5" 
order_by="state_code,city" prequery=""/> 
   <datasource name="validator" database="gnue" table="state" prequery="" 
order_by="description"/>
 
   <page>
Index: gnue/gnuef/setup.py
diff -u gnue/gnuef/setup.py:1.35 gnue/gnuef/setup.py:1.36
--- gnue/gnuef/setup.py:1.35    Sat Jun 30 15:58:26 2001
+++ gnue/gnuef/setup.py Sun Aug  5 14:38:32 2001
@@ -91,7 +91,7 @@
     print "You will be prompted for the root password on the machine to do 
this."
     raw_input ("Press Control-D to abort or any other key to continue")
 
-    string = 'su -c "ln -s `pwd`/client/gfcvs /usr/local/bin/gfcvs; chmod o+rx 
`pwd`/client/gfcvs"'
+    string = 'su root -c "ln -s `pwd`/client/gfcvs /usr/local/bin/gfcvs; chmod 
o+rx `pwd`/client/gfcvs"'
     os.system(string)
 
   sys.exit()
Index: gnue/gnuef/src/GFForm.py
diff -u gnue/gnuef/src/GFForm.py:1.113 gnue/gnuef/src/GFForm.py:1.114
--- gnue/gnuef/src/GFForm.py:1.113      Mon Jul 16 20:09:41 2001
+++ gnue/gnuef/src/GFForm.py    Tue Aug  7 20:17:00 2001
@@ -384,6 +384,10 @@
             GDebug.printMesg(1, "Trigger block Pre-Commit threw a 
TriggerError!")
             return "Block trigger returned error"
           block.processTrigger('Post-Commit')
+
+        for block in self._blockList:
+            block.switchRecord(0)
+
       else:
         message = 'Form is readonly'
         return message
Index: gnue/gnuef/src/GFInstance.py
diff -u gnue/gnuef/src/GFInstance.py:1.19 gnue/gnuef/src/GFInstance.py:1.20
--- gnue/gnuef/src/GFInstance.py:1.19   Thu Aug  2 20:02:28 2001
+++ gnue/gnuef/src/GFInstance.py        Thu Aug  2 21:57:35 2001
@@ -34,7 +34,7 @@
 #
 # Copyright (c) 2000 Free Software Foundation
 #
-# $Id: GFInstance.py,v 1.19 2001/08/03 03:02:28 jamest Exp $
+# $Id: GFInstance.py,v 1.20 2001/08/03 04:57:35 jamest Exp $
 #
 
 import pstats
@@ -309,11 +309,14 @@
   # executePrintout
   #
   # If the form has a trigger named process-printout then fire it
-  # TODO:  you should probably do something else as a default if trigger not 
available
   #
   def executePrintout(self,event):
-    pass
-
+    if self._form._triggerDictionary.has_key('process-printout'):
+      self._form.fireTrigger('process-printout')
+    else:
+      # TODO: should probably do something else as a default if trigger not 
available 
+      # TODO: like a screen print
+      pass
   #
   # executeRollback
   #
Index: gnue/gnuef/src/GFObjects/GFBlock.py
diff -u gnue/gnuef/src/GFObjects/GFBlock.py:1.7 
gnue/gnuef/src/GFObjects/GFBlock.py:1.8
--- gnue/gnuef/src/GFObjects/GFBlock.py:1.7     Mon Aug  6 20:36:26 2001
+++ gnue/gnuef/src/GFObjects/GFBlock.py Tue Aug  7 20:17:00 2001
@@ -185,7 +185,7 @@
     self._dataSourceLink.commit()
     self._recordCount = self._dataSourceLink.getLastRecordNumber()
     self.mode='normal'
-    self.switchRecord(0)
+    #self.switchRecord(0)
 
   #
   # processRollback
Index: gnue/gnuef/src/GFObjects/GFDataSource.py
diff -u gnue/gnuef/src/GFObjects/GFDataSource.py:1.3 
gnue/gnuef/src/GFObjects/GFDataSource.py:1.4
--- gnue/gnuef/src/GFObjects/GFDataSource.py:1.3        Wed Jul 11 16:06:46 2001
+++ gnue/gnuef/src/GFObjects/GFDataSource.py    Tue Jul 17 06:43:09 2001
@@ -188,31 +188,23 @@
   def commit(self):
     if hasattr(self,'database'):
       for count in range(len(self.resultSet)):
-        GDebug.printMesg(2, "record %s is %s \n %s" % (count, 
self.resultSetStatus[count],self.resultSet[count]))
-        mask = {}
-        for key in self.resultSet[count].keys():
-          if key in self.dataConnection.getFieldList(self.table).keys() or \
-             key == self.uniqueKey:
-            mask[key]=self.resultSet[count][key]
+        if self.resultSetStatus[count] in ('modified', 'deleted'):
+          GDebug.printMesg(2, "record %s is %s \n %s" % (count, 
self.resultSetStatus[count],self.resultSet[count]))
+          mask = {}
+          for key in self.resultSet[count].keys():
+            if key in self.dataConnection.getFieldList(self.table).keys() or \
+               key == self.uniqueKey:
+              mask[key]=self.resultSet[count][key]
 
-        GDebug.printMesg(10, "will be passing\n%s"% mask)
+          GDebug.printMesg(10, "will be passing\n%s"% mask)
                                                   
-        if self.resultSetStatus[count] in ('modified', 'deleted'):
           if self.resultSet[count].has_key(self.uniqueKey):
             if self.resultSetStatus[count]  == 'modified':
-              # record never in database so just mark for cleanup
-              # self.resultSet[count][self.uniqueKey] = -1
-              
-              # elif self.resultSet[count][self.uniqueKey] > 0:
               GDebug.printMesg(1, "updating the record")
               self.dataConnection.update(self.table,mask)
             else:
               GDebug.printMesg(1,"deleting the record")
-              #mask[self.uniqueKey] = \
-              #  mask[self.uniqueKey] * -1
               self.dataConnection.delete(self.table,mask)
-              # flip negative again so upcomming list purge see's the negatives
-              #mask[self.uniqueKey] = -1
               
           else:
             GDebug.printMesg(1, "Inserting the record")
Index: gnue/gnuef/src/GFObjects/GFEntry.py
diff -u gnue/gnuef/src/GFObjects/GFEntry.py:1.6 
gnue/gnuef/src/GFObjects/GFEntry.py:1.7
--- gnue/gnuef/src/GFObjects/GFEntry.py:1.6     Wed Jul 18 15:45:01 2001
+++ gnue/gnuef/src/GFObjects/GFEntry.py Tue Jul 31 16:22:30 2001
@@ -53,15 +53,18 @@
     self._uppercase = 0
     self._lowercase = 0
     self._numeric = 0
+    self._rows = 1
     self.typecast="text"
     self.case="mixed"
 
 
   def buildObject(self): 
+
     # Convert deprecated attributes
     if hasattr(self,'numeric') and self.numeric: 
       del self.numeric
       self.typecast = 'number'
+
     if hasattr(self,'uppercase') and self.uppercase: 
       del self.uppercase
       self.case = 'upper' 
@@ -69,6 +72,11 @@
       del self.lowercase
       self.case = 'lower' 
 
+    if not hasattr(self, 'rows') and hasattr(self,'visibleCount'): 
+      self.rows = self.visibleCount
+      del self.visibleCount
+
+
 
   def initialize(self):
 
@@ -91,12 +99,11 @@
       datasourceName,self.fieldName = string.split(self.foreign_key,'.')
       self.datasource = self._block._form._datasourceDictionary[datasourceName]
 
-    #if not hasattr(self,'visibleCount'):
     if not hasattr(self,'rows'):
       if hasattr(self._block,'rows'):
-        self.visibleCount = self._block.rows
+        self._rows = self._block.rows
     else:
-      self.visibleCount = self.rows
+      self._rows = self.rows
       
     if not hasattr(self,'rowSpacer'):
       if hasattr(self._block,'rowSpacer'):
Index: gnue/gnuef/src/GFObjects/GFLabel.py
diff -u gnue/gnuef/src/GFObjects/GFLabel.py:1.3 
gnue/gnuef/src/GFObjects/GFLabel.py:1.4
--- gnue/gnuef/src/GFObjects/GFLabel.py:1.3     Wed Jul 18 15:45:01 2001
+++ gnue/gnuef/src/GFObjects/GFLabel.py Tue Jul 31 16:22:30 2001
@@ -43,25 +43,33 @@
     self._type = "GFLabel"
     self.alignment = "left"
     self.height = float(GConfig.get('widgetHeight'))
+    self._rows = 1
 
+  def buildObject(self): 
+    if not hasattr(self, 'rows') and hasattr(self,'visibleCount'): 
+      self.rows = self.visibleCount
+      del self.visibleCount
+
   def setValue(self, value):
     if not self._value:
       GFValue.setValue(self,value)
 
   def initialize(self):
     self._block = self.findParentOfType('GFBlock')
-    if not hasattr(self,'visibleCount'):
-      if not hasattr(self,'rows'):
-        if hasattr(self._block,'rows'):
-          self.visibleCount = self._block.rows
+    if not hasattr(self,'rows'):
+      if not hasattr(self,'_rows'):
+        if hasattr(self._block,'_rows'):
+          self._rows = self._block._rows
         else:
-          self.visibleCount = self.rows
+          self._rows = self._rows
 
         if not hasattr(self,'rowSpacer'):
           if hasattr(self._block,'rowSpacer'):
             self.gap = self._block.rowSpacer
           else:
             self.gap = self.rowSpacer
+    else: 
+      self._rows = self.rows
 
 
 
Index: gnue/gnuef/src/GFParser.py
diff -u gnue/gnuef/src/GFParser.py:1.50 gnue/gnuef/src/GFParser.py:1.51
--- gnue/gnuef/src/GFParser.py:1.50     Tue Jul 31 16:22:30 2001
+++ gnue/gnuef/src/GFParser.py  Thu Aug  2 20:02:28 2001
@@ -175,8 +175,7 @@
                'References': (('datasource','name'),), 
                'Typecast': GTypecast.name }, 
             'rows': {
-               'Typecast': GTypecast.whole,  
-               'Default': 1}, 
+               'Typecast': GTypecast.whole}, 
             'rowSpacer': {
                'Typecast': GTypecast.whole },
             'transparentBlock':{
@@ -206,8 +205,7 @@
             'width': {
                'Typecast': GTypecast.whole },
             'rows': {
-               'Typecast': GTypecast.whole,
-               'Default': 1},
+               'Typecast': GTypecast.whole },
             'rowSpacer': {
                'Typecast': GTypecast.whole },
             'x': {
Index: gnue/gnuef/src/GFTrigger.py
diff -u gnue/gnuef/src/GFTrigger.py:1.43 gnue/gnuef/src/GFTrigger.py:1.44
--- gnue/gnuef/src/GFTrigger.py:1.43    Thu Jul 19 20:58:21 2001
+++ gnue/gnuef/src/GFTrigger.py Thu Aug  2 20:02:28 2001
@@ -84,7 +84,7 @@
         GDebug.printMesg(10, "No triggers to fire")
     else:
       print "Invalid trigger ",key
-                                                    
+
 #
 # GFTrigger
 #
Index: gnue/gnuef/src/UIbase.py
diff -u gnue/gnuef/src/UIbase.py:1.41 gnue/gnuef/src/UIbase.py:1.42
--- gnue/gnuef/src/UIbase.py:1.41       Sat Jul 21 16:33:49 2001
+++ gnue/gnuef/src/UIbase.py    Tue Jul 31 16:22:30 2001
@@ -321,7 +321,7 @@
     # you do not want to just add 1 to count
     # as the formulas would then be off
     count = index
-    while count < int(event.data.rows):
+    while count < int(event.data._rows):
       if count != index:
         if currentRecord+(count-index) > block._recordCount:
           if style == 'checkbox':
@@ -352,11 +352,10 @@
 class UIWidget:
   def __init__(self, object, container, textWidth, textHeight, widgetWidth, 
widgetHeight, interface, initialize=1):
     self.widgets = []
-
-    if not hasattr(object,'rows'):
-      object.rows = 1
+    if not hasattr(object,'_rows'):
+      object._rows = 1
     else:
-      object.rows = int(object.rows)
+      object._rows = int(object._rows)
 
     if hasattr(object,'gap'):
       object.gap = int(object.gap)
@@ -371,7 +370,7 @@
       self.itemHeight = -1
       
     if not object.hidden:
-      for spacer in range(int(object.rows)):
+      for spacer in range(int(object._rows)):
         newWidget = self.createWidget(object, container, textWidth, 
textHeight, widgetWidth, widgetHeight, interface, spacer, initialize)
         self.widgets.append(newWidget)
         
Index: gnue/gnuef/src/UIcurses.py
diff -u gnue/gnuef/src/UIcurses.py:1.9 gnue/gnuef/src/UIcurses.py:1.10
--- gnue/gnuef/src/UIcurses.py:1.9      Sun Jun 10 22:16:27 2001
+++ gnue/gnuef/src/UIcurses.py  Tue Jul 31 16:22:30 2001
@@ -179,10 +179,10 @@
     widget = []
     if not hasattr(object,'hidden'):
       
-      if not hasattr(object,'visibleCount'):
-        object.visibleCount = 1
+      if not hasattr(object,'_rows'):
+        object._rows = 1
       
-      count = int(object.visibleCount)
+      count = int(object._rows)
 
       if hasattr(object,'style'):
         style = object.style
@@ -266,8 +266,8 @@
       if index < 0 : index = 0
 
       # Don't let index pass the number of widgets on screen
-      if index >= int(entry.visibleCount):
-        index = int(entry.visibleCount)-1
+      if index >= int(entry._rows):
+        index = int(entry._rows)-1
 
       # Don't let the index past the number of records in the
       # system
@@ -286,8 +286,8 @@
       # bottom to top then flip to bottom keeping
       # in mind the number of records in memory
       if currentRecord == block._recordCount:
-        if block._recordCount > int(entry.visibleCount)-1:
-          index = int(entry.visibleCount)-1
+        if block._recordCount > int(entry._rows)-1:
+          index = int(entry._rows)-1
         else:
           index = block._recordCount
 
@@ -348,7 +348,7 @@
     # you do not want to just add 1 to count
     # as the formulas would then be off                
     count = index
-    while count < int(event.data.visibleCount):
+    while count < int(event.data._rows):
       if count != index:
         if currentRecord+(count-index) > block._recordCount:
           value = ""
Index: gnue/gnuef/src/UIpyncurses.py
diff -u gnue/gnuef/src/UIpyncurses.py:1.19 gnue/gnuef/src/UIpyncurses.py:1.20
--- gnue/gnuef/src/UIpyncurses.py:1.19  Sun Jun 10 22:16:27 2001
+++ gnue/gnuef/src/UIpyncurses.py       Tue Jul 31 16:22:30 2001
@@ -240,10 +240,10 @@
   def entryHandler(self):
     object    = self._currentObject[0]
     widget = []
-    if not hasattr(object,'visibleCount'):
-      object.visibleCount = 1
+    if not hasattr(object,'_rows'):
+      object._rows = 1
       
-    count = int(object.visibleCount)
+    count = int(object._rows)
 
     if hasattr(object,'style'):
       style = object.style
@@ -302,8 +302,8 @@
       if index < 0 : index = 0
 
       # Don't let index pass the number of widgets on screen
-      if index >= int(entry.visibleCount):
-        index = int(entry.visibleCount)-1
+      if index >= int(entry._rows):
+        index = int(entry._rows)-1
 
       # Don't let the index past the number of records in the
       # system
@@ -322,8 +322,8 @@
       # bottom to top then flip to bottom keeping
       # in mind the number of records in memory
       if currentRecord == block._recordCount:
-        if block._recordCount > int(entry.visibleCount)-1:
-          index = int(entry.visibleCount)-1
+        if block._recordCount > int(entry._rows)-1:
+          index = int(entry._rows)-1
         else:
           index = block._recordCount
 
@@ -371,7 +371,7 @@
     self.panel.draw()
 
     count = index
-    while count < int(event.data.visibleCount):
+    while count < int(event.data._rows):
       if count != index:
         if currentRecord+(count-index) > block._recordCount:
           value = ""



reply via email to

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