commit-gnue
[Top][All Lists]
Advanced

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

gnue gnue-common/doc/TriggerSpecifications.txt ...


From: James Thompson
Subject: gnue gnue-common/doc/TriggerSpecifications.txt ...
Date: Mon, 03 Sep 2001 10:29:14 -0700

CVSROOT:        /cvs
Module name:    gnue
Changes by:     James Thompson <address@hidden> 01/09/03 10:29:14

Modified files:
        gnue-common/doc: TriggerSpecifications.txt 
        gnue-common/src: GDataObjects.py 
        gnue-common/src/dbdrivers/empty: DBdriver.py 
        gnuef/samples  : helloworld2.gfd 
        gnuef/samples/trigger: trigger.gfd 
        gnuef/src      : GFClient.py GFTrigger.py 

Log message:
        Fixed support for non-data-aware forms
        Fixed existing trigger system to work again
        Removed some debugging output
        Updated new trigger system notes

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-common/doc/TriggerSpecifications.txt.diff?cvsroot=OldCVS&tr1=1.1&tr2=1.2&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-common/src/GDataObjects.py.diff?cvsroot=OldCVS&tr1=1.12&tr2=1.13&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-common/src/dbdrivers/empty/DBdriver.py.diff?cvsroot=OldCVS&tr1=1.5&tr2=1.6&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnuef/samples/helloworld2.gfd.diff?cvsroot=OldCVS&tr1=1.6&tr2=1.7&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnuef/samples/trigger/trigger.gfd.diff?cvsroot=OldCVS&tr1=1.9&tr2=1.10&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnuef/src/GFClient.py.diff?cvsroot=OldCVS&tr1=1.26&tr2=1.27&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnuef/src/GFTrigger.py.diff?cvsroot=OldCVS&tr1=1.46&tr2=1.47&r1=text&r2=text

Patches:
Index: gnue/gnue-common/doc/TriggerSpecifications.txt
diff -u gnue/gnue-common/doc/TriggerSpecifications.txt:1.1 
gnue/gnue-common/doc/TriggerSpecifications.txt:1.2
--- gnue/gnue-common/doc/TriggerSpecifications.txt:1.1  Thu Aug 30 14:57:47 2001
+++ gnue/gnue-common/doc/TriggerSpecifications.txt      Mon Sep  3 10:29:14 2001
@@ -1,37 +1,26 @@
 
+* All event triggers should return a value.
 
-* All event triggers should return a pass/fail status.
-
-
 * Modify state of widgets:
     widget.properties.
 
-
 * Direct datasource/result set access:
 
 * Datasource/Block access
   firstRec, nextRec, prevRec, lastRec, etc
 
-
 * block/field access:
     :block.field
 
-
 * convenience functions:
     :block.sum(fieldname)
       .count(fieldname)
       .min/.max/.avg/
 
 
-
-customer.fields.name
-
-
 for i :=0 to datasource.field.count do
   mytotal = datasource.field[i]
 
-
-
 if len(:currentBlock.zipcode):
   datasource1.clear()
   :datasource1.zipcode = :currentBlock.zipcode
@@ -42,4 +31,33 @@
   for obj in  currentblock
     obj.ReadOnly = true
     X = 10
-  end
\ No newline at end of file
+  end
+
+*** Possible layout ***
+
+triggerManager
+  trigger storage
+  execute triggers
+  loads engines
+
+  intended to be extended by each system using it (GFTriggerManager, 
GRTriggerManager)
+
+
+triggerEngine
+  baseEngine
+    preprocessor
+    namespace manipulation stubs
+  pythonEngine
+  perlEngine
+  tclEngine
+  schemeEngine
+
+trigger
+  stores source and lang type
+  stores compiled version (compiled by the engine)
+  
+triggerExtension
+  adds ability to run triggers to objects that inherit it
+
+
+
Index: gnue/gnue-common/src/GDataObjects.py
diff -u gnue/gnue-common/src/GDataObjects.py:1.12 
gnue/gnue-common/src/GDataObjects.py:1.13
--- gnue/gnue-common/src/GDataObjects.py:1.12   Thu Aug 30 15:28:27 2001
+++ gnue/gnue-common/src/GDataObjects.py        Mon Sep  3 10:29:14 2001
@@ -351,7 +351,6 @@
       self._currentRecord = self._currentRecord+1
       self._cachedRecords.insert(self._currentRecord, 
self._createEmptyRecord())
       self.current = self._cachedRecords[self._currentRecord]
-      print "inserting a record!!!!"
       if self._masterRecordSet != None and hasattr(self._dataObject, 
'_masterfields'):
         i = 0
         for field in self._dataObject._masterfields:
@@ -435,7 +434,7 @@
 
     self._unboundFields = {}
 
-    if len(initialData):
+    if self._initialData and len(self._initialData):
       self._insertFlag = 0
       self._emptyFlag = 0
       self._fields = {}
Index: gnue/gnue-common/src/dbdrivers/empty/DBdriver.py
diff -u gnue/gnue-common/src/dbdrivers/empty/DBdriver.py:1.5 
gnue/gnue-common/src/dbdrivers/empty/DBdriver.py:1.6
--- gnue/gnue-common/src/dbdrivers/empty/DBdriver.py:1.5        Thu Aug 30 
15:28:27 2001
+++ gnue/gnue-common/src/dbdrivers/empty/DBdriver.py    Mon Sep  3 10:29:14 2001
@@ -48,7 +48,7 @@
     self.triggerExtensions = TriggerExtensions(self)
 
   def _createResultSet(self, conditions={}, readOnly=0, masterRecordSet=None): 
-    return NIL_ResultSet(self, masterRecordSet=masterRecordSet)
+    return NIL_ResultSet(self, masterRecordSet)
 
   # We don't do logins
   def getLoginFields(self): 
@@ -103,7 +103,8 @@
 
   # Create an empty record
   def _createEmptyRecord(self, masterRecordSet=None): 
-    return self._recordSetClass(self, masterRecordSet=masterRecordSet)
+    #return self._recordSetClass(self, masterRecordSet=masterRecordSet)
+    return self._recordSetClass(self, masterRecordSet)
 
 
 ###########################################################
Index: gnue/gnuef/samples/helloworld2.gfd
diff -u gnue/gnuef/samples/helloworld2.gfd:1.6 
gnue/gnuef/samples/helloworld2.gfd:1.7
--- gnue/gnuef/samples/helloworld2.gfd:1.6      Wed Aug 29 17:23:12 2001
+++ gnue/gnuef/samples/helloworld2.gfd  Mon Sep  3 10:29:14 2001
@@ -13,9 +13,11 @@
 #Populate User Name from Name
 #
 from string import *
-print login.fields.user
-print address.fields.name
-print self._value
+print "User", login.fields.user
+print "Address", address.fields.name
+print "self", self._value
+print "log block", login
+
 #login.fields.user = address.fields.name
 </trigger>
 
Index: gnue/gnuef/samples/trigger/trigger.gfd
diff -u gnue/gnuef/samples/trigger/trigger.gfd:1.9 
gnue/gnuef/samples/trigger/trigger.gfd:1.10
--- gnue/gnuef/samples/trigger/trigger.gfd:1.9  Sun Aug 12 12:55:27 2001
+++ gnue/gnuef/samples/trigger/trigger.gfd      Mon Sep  3 10:29:14 2001
@@ -29,19 +29,19 @@
            <tip>Type Field One's Replacement</tip>
          </options>
          <trigger type ="Pre-FOCUSOUT">
-block1.fields.one.setValue(self.getValue())
-#
-#User name trigger
-#
-#import sys
-#
-#if (block1.fields.one == "") or (block1.fields.two == ""):
-#  messageValue = "Both Fields One and Two Must Have Data!"
-#else:
-#  messageValue = "Contragulations.  You get your own error.\n" + 
block2.fields.alter
-#
-#message = GFMsgBox(self, messageValue)
-#message.show()
+           #print block1.fields.two
+           #block1.fields.one = 
+           import sys
+
+           if (block1.fields.one == "") or (block1.fields.two == ""):
+             messageValue = "Both Fields One and Two Must Have Data!"
+           else:
+             messageValue = "Contragulations.  You get your own error.\n" + 
block2.fields.alter
+
+           print messageValue
+           block1.fields.one = block2.fields.alter
+           #message = GFMsgBox(self, messageValue)
+           #message.show()
          </trigger>
       </entry>
     </block>
Index: gnue/gnuef/src/GFClient.py
diff -u gnue/gnuef/src/GFClient.py:1.26 gnue/gnuef/src/GFClient.py:1.27
--- gnue/gnuef/src/GFClient.py:1.26     Wed Aug 29 17:23:12 2001
+++ gnue/gnuef/src/GFClient.py  Mon Sep  3 10:29:14 2001
@@ -34,7 +34,7 @@
 #
 # Copyright (c) 2000 Free Software Foundation
 #
-# $Id: GFClient.py,v 1.26 2001/08/30 00:23:12 jamest Exp $
+# $Id: GFClient.py,v 1.27 2001/09/03 17:29:14 jamest Exp $
 #
 
 import pstats
@@ -157,12 +157,6 @@
      return self._lastSerialNumber
       
 if __name__ == '__main__':
-
-  print "*" * 60
-  print "*" * 60
-  print "*" * 60
-  print "*" * 60
-
   GFClient().run()
 
 
Index: gnue/gnuef/src/GFTrigger.py
diff -u gnue/gnuef/src/GFTrigger.py:1.46 gnue/gnuef/src/GFTrigger.py:1.47
--- gnue/gnuef/src/GFTrigger.py:1.46    Wed Aug 29 17:23:12 2001
+++ gnue/gnuef/src/GFTrigger.py Mon Sep  3 10:29:14 2001
@@ -121,13 +121,10 @@
   # Must be at least a phase 2 init
   #
   def initialize(self): 
-    print "GFTrigger.py - initialize"
     self._form = self.findParentOfType('GFForm')
     self._triggerns.update( self._form._triggerns )
     self.__call__ = self.dummyFunction
 
-    print "GFTrigger.py ",self.type
-    
     if self.type != "NAMED":
       if self._parent:
         self._parent.addTrigger( self.type, self )
@@ -280,7 +277,6 @@
       self.__dict__['helper'] = helper( object )
     
   def __getattr__(self,name):
-    print "GFTrigger.py - Hi"
     return self.__dict__['helper'].getattribute(name)
 
   def __setattr__(self,name,value):
@@ -291,6 +287,7 @@
     self.object = object
 
   def getattribute( self, name ):
+    print "Object %s name %s" % ( self.object, name )
     return getattr( self.object, name )
 
   def setattribute( self, name, value ):
@@ -300,6 +297,7 @@
   def __init__(self, object):
     GFTriggerHelperBase.__init__(self, object)
     self.fields=GFTriggerHelper( object, helper=GFTriggerFields )
+    
   def getattribute( self, name ):
     # Here I've implemented the syntax blockname.fields.fieldname
     # we could use things like this to implent e.g.
@@ -322,7 +320,7 @@
   def getattribute( self, name ):
     for item in self.object._entryList:
       if item.name == name:
-        return item._value
+        return item.getValue()
     return None
 
   def setattribute( self, name, value ):



reply via email to

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