[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
gnue/gnuef client/gfclient samples/trigger/trig...
From: |
James Thompson |
Subject: |
gnue/gnuef client/gfclient samples/trigger/trig... |
Date: |
Tue, 20 Mar 2001 12:23:12 -0800 |
CVSROOT: /cvs
Module name: gnue
Changes by: James Thompson <address@hidden> 01/03/20 12:23:12
Modified files:
gnuef/client : gfclient
gnuef/samples/trigger: trigger.gfd
gnuef/src : GFForm.py GFObjects.py GFTrigger.py
Log message:
Added MicahY's toXML function
Added support for On-Change trigger
CVSWeb URLs:
http://subversions.gnu.org/cgi-bin/cvsweb/gnue/gnuef/client/gfclient.diff?r1=1.24&r2=1.25
http://subversions.gnu.org/cgi-bin/cvsweb/gnue/gnuef/samples/trigger/trigger.gfd.diff?r1=1.6&r2=1.7
http://subversions.gnu.org/cgi-bin/cvsweb/gnue/gnuef/src/GFForm.py.diff?r1=1.78&r2=1.79
http://subversions.gnu.org/cgi-bin/cvsweb/gnue/gnuef/src/GFObjects.py.diff?r1=1.70&r2=1.71
http://subversions.gnu.org/cgi-bin/cvsweb/gnue/gnuef/src/GFTrigger.py.diff?r1=1.11&r2=1.12
Patches:
Index: gnue/gnuef/client/gfclient
diff -u gnue/gnuef/client/gfclient:1.24 gnue/gnuef/client/gfclient:1.25
--- gnue/gnuef/client/gfclient:1.24 Sat Mar 17 06:11:25 2001
+++ gnue/gnuef/client/gfclient Tue Mar 20 12:23:12 2001
@@ -16,7 +16,7 @@
#
# Copyright (c) 2000 Free Software Foundation
#
-# $Revision: 1.24 $ $Date: 2001/03/17 14:11:25 $ $Author: jamest $
+# $Revision: 1.25 $ $Date: 2001/03/20 20:23:12 $ $Author: jamest $
#
import pstats
@@ -488,6 +488,7 @@
# Build the form tree
#
self.form = GFForm(None,self)
+
control = GFController()
self.form.buildFormTree(fileHandle)
fileHandle.close()
Index: gnue/gnuef/samples/trigger/trigger.gfd
diff -u gnue/gnuef/samples/trigger/trigger.gfd:1.6
gnue/gnuef/samples/trigger/trigger.gfd:1.7
--- gnue/gnuef/samples/trigger/trigger.gfd:1.6 Sun Jan 14 15:32:37 2001
+++ gnue/gnuef/samples/trigger/trigger.gfd Tue Mar 20 12:23:12 2001
@@ -28,7 +28,7 @@
<options>
<tip>Type Field One's Replacement</tip>
</options>
- <trigger type ="Pre-FocusOut">
+ <trigger type ="Pre-FOCUSOUT">
block1.fields.one = self.value
#
#User name trigger
Index: gnue/gnuef/src/GFForm.py
diff -u gnue/gnuef/src/GFForm.py:1.78 gnue/gnuef/src/GFForm.py:1.79
--- gnue/gnuef/src/GFForm.py:1.78 Sat Mar 17 06:11:25 2001
+++ gnue/gnuef/src/GFForm.py Tue Mar 20 12:23:12 2001
@@ -357,6 +357,7 @@
break
GFDebug.printMesg(2,"(%s, %s)"%(object,value))
GFDebug.printMesg(2,"Replacing with %s"% replacement)
+ self.currentEntry.processTrigger('on-change')
object.setValue(replacement)
# Hack!
@@ -382,6 +383,7 @@
value= self.currentEntry.findClosestValue(value)
if not value: return modified
+ self.currentEntry.processTrigger('on-change')
self.currentEntry.setValue(value)
modified = 1
return modified
@@ -406,6 +408,7 @@
currentvalue[self.currentEntry.cursorPosition+1:]
self.currentEntry.cursorPosition = self.currentEntry.cursorPosition + 1
+ self.currentEntry.processTrigger('on-change')
self.currentEntry.setValue(currentvalue)
# Hack alert
self.updateDetailBlocks(self.currentBlock)
@@ -433,6 +436,7 @@
currentvalue = self.currentEntry.getValue()
currentvalue = currentvalue[:self.currentEntry.cursorPosition] + \
currentvalue[self.currentEntry.cursorPosition+1:]
+ self.currentEntry.processTrigger('on-change')
self.currentEntry.setValue(currentvalue)
modified = 1
# hack alert
Index: gnue/gnuef/src/GFObjects.py
diff -u gnue/gnuef/src/GFObjects.py:1.70 gnue/gnuef/src/GFObjects.py:1.71
--- gnue/gnuef/src/GFObjects.py:1.70 Sat Mar 17 06:11:25 2001
+++ gnue/gnuef/src/GFObjects.py Tue Mar 20 12:23:12 2001
@@ -16,6 +16,7 @@
import GFOptions
import GFDebug
import string
+import types
# These should really go somewhere else
TRUE = 1
@@ -60,6 +61,56 @@
def addChild(self, child):
self.children.append(child)
+ def toXML(self):
+ xml_outer = string.lower(self.type[2:])
+ r = "<" + xml_outer + ">\n <options>\n"
+ for k in self.__dict__.keys():
+ # skip keys beginning with _
+ if k[0] == "_":
+ continue
+ val = self.__dict__[k]
+ if isinstance(val, types.StringType):
+ str = val
+ elif isinstance(val, types.IntType) or isinstance(val, types.FloatType):
+ str = repr(val)
+ else:
+ continue
+ r = r + " <" + k + ">" + str + "</" + k + ">\n"
+ r = r + " </options>\n</" + xml_outer + ">\n"
+ return r
+
+ #
+ # dumpXML
+ #
+ # Dumps an XML representation of the object
+ #
+# def dumpXML(self, treeDump=None, gap=" ", xmlString=""):
+# xmlEntity = string.lower(self.type[2:])
+
+# xmlString = xmlString + "<%s>\n%s<options>\n" % (xmlEntity, gap)
+
+# for attribute in self.__dict__.keys():
+# # skip keys beginning with _
+# if attribute[0] == "_":
+# continue
+# val = self.__dict__[attribute]
+# if isinstance(val, types.StringType):
+# str = val
+# elif isinstance(val, types.IntType) or isinstance(val, types.FloatType):
+# str = repr(val)
+# else:
+# continue
+# xmlString = xmlString + "%s<%s>%s</%s>\n" %
(gap,attribute,str,attribute)
+# xmlString = xmlString + "%s</options>\n" % gap
+# if treeDump:
+# print "dumping"
+# for child in self.children:
+# print "child"
+# child.dumpXML(1,gap+" ")
+
+# xmlString = xmlString + "</%s>\n" % (xmlEntity)
+# return xmlString
+
def walk(self, function):
function(self)
if self.children:
Index: gnue/gnuef/src/GFTrigger.py
diff -u gnue/gnuef/src/GFTrigger.py:1.11 gnue/gnuef/src/GFTrigger.py:1.12
--- gnue/gnuef/src/GFTrigger.py:1.11 Sun Mar 4 21:01:34 2001
+++ gnue/gnuef/src/GFTrigger.py Tue Mar 20 12:23:12 2001
@@ -29,25 +29,28 @@
def __init__(self):
self.trigger = {}
- self.validTriggers = [ 'Pre-FocusOut',
- 'Post-FocusOut',
- 'Pre-FocusIn',
- 'Post-FocusIn',
- 'Pre-Commit',
- 'Post-Commit',
- 'Pre-Change',
- 'Post-Change']
+ self.validTriggers = [ string.upper('Pre-FocusOut'),
+ string.upper('Post-FocusOut'),
+ string.upper('Pre-FocusIn'),
+ string.upper('Post-FocusIn'),
+ string.upper('Pre-Commit'),
+ string.upper('Post-Commit'),
+ string.upper('Pre-Change'),
+ string.upper('Post-Change'),
+ string.upper('On-Change')
+ ]
# addTrigger
# Associates a trigger with the object
def addTrigger(self, key, function):
if not self.trigger.has_key(key):
- self.trigger[key] = []
- self.trigger[key].append(function)
+ self.trigger[string.upper(key)] = []
+ self.trigger[string.upper(key)].append(function)
# processTrigger
# "fires" the trigger
def processTrigger(self, key):
+ key = string.upper(key)
if self.validTriggers.count(key):
if self.trigger.has_key(key):
for function in self.trigger[key]:
@@ -76,7 +79,7 @@
self.text=''
self.language=''
self.triggerns={}
- self.tr_type=tr_type
+ self.tr_type=string.upper(tr_type)
self.src = src
self.__call__ = self.dummyFunction
if tr_type!="named":
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- gnue/gnuef client/gfclient samples/trigger/trig...,
James Thompson <=