[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[gnue] r9876 - trunk/gnue-forms/src/GFObjects
From: |
reinhard |
Subject: |
[gnue] r9876 - trunk/gnue-forms/src/GFObjects |
Date: |
Mon, 9 Jun 2008 06:07:28 -0500 (CDT) |
Author: reinhard
Date: 2008-06-09 06:07:23 -0500 (Mon, 09 Jun 2008)
New Revision: 9876
Modified:
trunk/gnue-forms/src/GFObjects/GFField.py
trunk/gnue-forms/src/GFObjects/GFTabStop.py
Log:
Made "editable" property of fields available in trigger namespace.
Modified: trunk/gnue-forms/src/GFObjects/GFField.py
===================================================================
--- trunk/gnue-forms/src/GFObjects/GFField.py 2008-05-08 07:50:04 UTC (rev
9875)
+++ trunk/gnue-forms/src/GFObjects/GFField.py 2008-06-09 11:07:23 UTC (rev
9876)
@@ -134,8 +134,12 @@
'setFKDescription' : {'function': self.set_value}}
self._triggerProperties = {
- 'value': {'get': self.get_value,
- 'set': self.set_value}}
+ 'value': {
+ 'get': self.get_value,
+ 'set': self.set_value},
+ 'editable': {
+ 'get': self.__get_editable,
+ 'set': self.__set_editable}}
self._triggerGet = self.__get_value
self._triggerSet = self.__set_value
@@ -335,6 +339,25 @@
# -------------------------------------------------------------------------
+ # Get/Set editable property
+ # -------------------------------------------------------------------------
+
+ def __get_editable(self):
+
+ return self.editable
+
+ # -------------------------------------------------------------------------
+
+ def __set_editable(self, value):
+
+ if value in ['Y', 'N', 'null', 'new', 'update']:
+ self.editable = value
+ for entry in self._entryList:
+ entry.update_editable()
+ else:
+ raise InvalidPropertyValueError('editable', value)
+
+ # -------------------------------------------------------------------------
# Reading and writing the user value of the field
# -------------------------------------------------------------------------
@@ -839,3 +862,16 @@
) % {
'value': value,
'name': field.name}, field._url, field._lineNumber)
+
+# =============================================================================
+
+class InvalidPropertyValueError(errors.ApplicationError):
+ """
+ An invalid value is assigned to a property.
+ """
+ def __init__(self, property, value):
+ errors.ApplicationError.__init__(self, u_(
+ "Invalid value '%(value)s' for property '%(property)s'"
+ ) % {
+ 'value': value,
+ 'property': property})
Modified: trunk/gnue-forms/src/GFObjects/GFTabStop.py
===================================================================
--- trunk/gnue-forms/src/GFObjects/GFTabStop.py 2008-05-08 07:50:04 UTC (rev
9875)
+++ trunk/gnue-forms/src/GFObjects/GFTabStop.py 2008-06-09 11:07:23 UTC (rev
9876)
@@ -259,10 +259,7 @@
self.refresh_ui(refresh_start, self._rows - 1)
# Set widgets to editable or non-editable
- for index in range(refresh_start, last_enabled_row + 1):
- offset = index - self._visibleIndex
- self.uiWidget._ui_set_editable_(index,
- self._field.is_editable(offset))
+ self.__update_editable(refresh_start)
finally:
# If this was the currently focused widget, move the focus along
@@ -275,6 +272,28 @@
# -------------------------------------------------------------------------
+ # Set the widgets to editable or non-editable
+ # -------------------------------------------------------------------------
+
+ def update_editable(self):
+ """
+ Update the editable state of this entry.
+
+ This function is called by the field if the editable state of the field
+ is changed by a trigger.
+ """
+ self.__update_editable(0)
+
+ # -------------------------------------------------------------------------
+
+ def __update_editable(self, refresh_start):
+
+ for index in range(refresh_start, self.__last_enabled_row + 1):
+ offset = index - self._visibleIndex
+ self.uiWidget._ui_set_editable_(index,
+ self._field.is_editable(offset))
+
+ # -------------------------------------------------------------------------
# Change the focus to this object
# -------------------------------------------------------------------------
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [gnue] r9876 - trunk/gnue-forms/src/GFObjects,
reinhard <=