[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[gnue] r9387 - in trunk/gnue-forms/src: . GFObjects
From: |
reinhard |
Subject: |
[gnue] r9387 - in trunk/gnue-forms/src: . GFObjects |
Date: |
Tue, 20 Feb 2007 12:50:51 -0600 (CST) |
Author: reinhard
Date: 2007-02-20 12:50:47 -0600 (Tue, 20 Feb 2007)
New Revision: 9387
Modified:
trunk/gnue-forms/src/GFInstance.py
trunk/gnue-forms/src/GFObjects/GFBlock.py
trunk/gnue-forms/src/GFObjects/GFOptions.py
trunk/gnue-forms/src/GFParser.py
Log:
Added handling of translation gfd's.
Modified: trunk/gnue-forms/src/GFInstance.py
===================================================================
--- trunk/gnue-forms/src/GFInstance.py 2007-02-20 18:49:52 UTC (rev 9386)
+++ trunk/gnue-forms/src/GFInstance.py 2007-02-20 18:50:47 UTC (rev 9387)
@@ -169,14 +169,6 @@
moduleName=moduleName)
assert gDebug(4, "Loading default form")
- # Find out about the languages to load.
- lang = i18n.getlanguage()
- filenames = ["default.gfd"]
- if lang != "C":
- filenames.append(os.path.join("default", lang[:2] + ".gfd"))
- if len(lang) > 2:
- filenames.append(os.path.join("default", lang + ".gfd"))
-
dirnames = [os.path.join(paths.data,
"share","gnue","forms","defaults")]
dirnames.append(paths.config)
if os.environ.has_key("HOME"):
@@ -184,22 +176,15 @@
self.__default_form = GFForm.GFForm()
for dirname in dirnames:
- for filename in filenames:
- self.__merge_form(self.__default_form,
- os.path.join(dirname, filename))
+ filename = os.path.join(dirname, "default.gfd")
+ if os.path.isfile(filename):
+ self.__default_form.merge(
+ self.__load_file_with_translations(filename, False),
+ overwrite=True)
assert gLeave(4)
- # -------------------------------------------------------------------------
- def __merge_form(self, form, filename):
- if os.path.isfile(filename):
- filehandle = FileUtils.openResource(filename)
- new_form = loadFile(filehandle, self, initialize=0, url=filename)
- form.merge(new_form, overwrite=True)
- filehandle.close()
-
-
# -------------------------------------------------------------------------
# Deprecated functions
# -------------------------------------------------------------------------
@@ -222,7 +207,7 @@
"""
assert gDebug(1, "DEPRECATED: GFInstance.addFormFromFile()")
- form = self.__load_file(fileName)
+ form = self.__load_file_with_translations(fileName, True)
self.__loaded_forms.append(form)
self._main_form = form
@@ -283,7 +268,7 @@
@param parameters: Parameter dictionary to pass to the form.
"""
- form = self.__load_file(filename)
+ form = self.__load_file_with_translations(filename, True)
self.__loaded_forms.append(form)
self.__run(form, parameters)
return form
@@ -298,7 +283,7 @@
try:
filehandle = FileUtils.openBuffer(buffer)
- form = self.__load(filehandle, None)
+ form = self.__load(filehandle, None, True)
filehandle.close()
return form
except IOError:
@@ -306,19 +291,45 @@
# -------------------------------------------------------------------------
- def __load_file(self, filename):
+ def __load_file_with_translations(self, filename, check_required):
+ # Load base form
+ form = self.__load_file(filename, check_required)
+
+ (base, ext) = os.path.splitext(filename)
+
+ # Find out about the languages to load.
+ lang = i18n.getlanguage()
+ filenames = []
+ if lang != "C":
+ filenames.append(base + os.path.extsep + lang[:2] + ext)
+ filenames.append(os.path.join(base, lang[:2] + ext))
+ if len(lang) > 2:
+ filenames.append(base + os.path.extsep + lang + ext)
+ filenames.append(os.path.join(base, lang + ext))
+
+ # Merge language specific versions
+ for fn in filenames:
+ if os.path.isfile(fn):
+ form.merge(self.__load_file(fn, False), overwrite=True)
+
+ return form
+
+ # -------------------------------------------------------------------------
+
+ def __load_file(self, filename, check_required):
+
try:
if filename.startswith('appserver://'):
param = {'language': i18n.language, 'formwidth': 80,
'formheight': 20}
filehandle = getAppserverResource(filename, param,
self.connections)
- form = self.__load(filehandle, filename)
+ form = self.__load(filehandle, filename, check_required)
filehandle.close()
else:
filehandle = FileUtils.openResource(filename)
- form = self.__load(filehandle, filename)
+ form = self.__load(filehandle, filename, check_required)
filehandle.close()
return form
@@ -328,12 +339,13 @@
# -------------------------------------------------------------------------
- def __load(self, filehandle, url):
+ def __load(self, filehandle, url, check_required):
# Load the file bypassing the initialization We bypass the
# initialization because <dialog>s are really <form>s and they don't
# like being children of another form
- return loadFile(filehandle, self, initialize=0, url=url)
+ return loadFile(filehandle, self, initialize=0, url=url,
+ check_required=check_required)
# -------------------------------------------------------------------------
Modified: trunk/gnue-forms/src/GFObjects/GFBlock.py
===================================================================
--- trunk/gnue-forms/src/GFObjects/GFBlock.py 2007-02-20 18:49:52 UTC (rev
9386)
+++ trunk/gnue-forms/src/GFObjects/GFBlock.py 2007-02-20 18:50:47 UTC (rev
9387)
@@ -828,6 +828,9 @@
'modified', or 'deleted', or C{None} if there is no current record.
"""
+ if self.mode == 'query':
+ return None
+
if self.__resultset is None:
return None
Modified: trunk/gnue-forms/src/GFObjects/GFOptions.py
===================================================================
--- trunk/gnue-forms/src/GFObjects/GFOptions.py 2007-02-20 18:49:52 UTC (rev
9386)
+++ trunk/gnue-forms/src/GFObjects/GFOptions.py 2007-02-20 18:50:47 UTC (rev
9387)
@@ -24,13 +24,13 @@
Options container support
"""
-from gnue.forms.GFObjects.GFObj import GFObj
+from gnue.common.definitions.GObjects import GObj
# =============================================================================
# Collection of options
# =============================================================================
-class GFOptions(GFObj):
+class GFOptions(GObj):
# -------------------------------------------------------------------------
# Constructor
@@ -38,4 +38,4 @@
def __init__(self, parent=None):
- GFObj.__init__(self, parent, 'GFOptions')
+ GObj.__init__(self, parent, 'GFOptions')
Modified: trunk/gnue-forms/src/GFParser.py
===================================================================
--- trunk/gnue-forms/src/GFParser.py 2007-02-20 18:49:52 UTC (rev 9386)
+++ trunk/gnue-forms/src/GFParser.py 2007-02-20 18:50:47 UTC (rev 9387)
@@ -51,7 +51,7 @@
##
##
##
-def loadFile (buffer, instance, initialize=True, url = None):
+def loadFile (buffer, instance, initialize=True, url=None,
check_required=True):
"""
This method loads a form from an XML file and returns
a GFForm object. If initialize is 1 (default), then
@@ -65,7 +65,7 @@
initialize,
attributes={"_instance": instance,
"_connections": instance.connections},
- url = url)
+ url=url, checkRequired=check_required)
xmlElements = None
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [gnue] r9387 - in trunk/gnue-forms/src: . GFObjects,
reinhard <=