Author: reinhard
Date: 2006-11-07 13:50:28 -0600 (Tue, 07 Nov 2006)
New Revision: 8993
Modified:
trunk/gnue-forms/src/GFForm.py
trunk/gnue-forms/src/GFObjects/GFBlock.py
Log:
Update UI if record pointer moves to offending record after exception.
Modified: trunk/gnue-forms/src/GFForm.py
===================================================================
--- trunk/gnue-forms/src/GFForm.py 2006-11-07 19:34:33 UTC (rev 8992)
+++ trunk/gnue-forms/src/GFForm.py 2006-11-07 19:50:28 UTC (rev 8993)
@@ -1472,6 +1472,8 @@
block.post()
except Exception:
# jump to offending block
+ # FIXME: does not work with master/detail, always moves the
+ # focus to master record.
if block != self._currentBlock:
self.findAndChangeFocus(block)
raise
Modified: trunk/gnue-forms/src/GFObjects/GFBlock.py
===================================================================
--- trunk/gnue-forms/src/GFObjects/GFBlock.py 2006-11-07 19:34:33 UTC (rev
8992)
+++ trunk/gnue-forms/src/GFObjects/GFBlock.py 2006-11-07 19:50:28 UTC (rev
8993)
@@ -1061,8 +1061,14 @@
assert gDebug(4, "processing commit on block %s" % self.name, 1)
- if self._getMasterBlock() is None:
- self._dataSourceLink.postAll()
+ try:
+ if self._getMasterBlock() is None:
+ self._dataSourceLink.postAll()
+ except:
+ # if an exception happened, the record pointer keeps sticking at
+ # the offending record, so we must update the UI
+ self.__current_record_changed(True)
+ raise
# -------------------------------------------------------------------------
_______________________________________________
commit-gnue mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/commit-gnue