commit-gnue
[Top][All Lists]
Advanced

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

[gnue] r8993 - in trunk/gnue-forms/src: . GFObjects


From: reinhard
Subject: [gnue] r8993 - in trunk/gnue-forms/src: . GFObjects
Date: Tue, 7 Nov 2006 13:50:29 -0600 (CST)

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
 
     # -------------------------------------------------------------------------
 





reply via email to

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