dabo Commit
Revision 5653
Date: 2010-02-05 06:28:49 -0800 (Fri, 05 Feb 2010)
Author: Paul
Trac: http://trac.dabodev.com/changeset/5653
Changed:
U trunk/dabo/ui/dDataControlMixinBase.py
Log:
Reverted r5649 to again reference self._value in saveValue(), as the new method
still caused the C++ dead object segfault on Windows. Applied Jacek's suggested
fix to ticket #1317.
Diff:
Modified: trunk/dabo/ui/dDataControlMixinBase.py
===================================================================
--- trunk/dabo/ui/dDataControlMixinBase.py 2010-02-05 06:09:02 UTC (rev
5652)
+++ trunk/dabo/ui/dDataControlMixinBase.py 2010-02-05 14:28:49 UTC (rev
5653)
@@ -269,7 +269,7 @@
if self._DesignerMode:
# Don't bother in design mode.
return
- value = self.Value
+ value = self._value ## on Win, the C++ object is already gone
if self.Application:
if self.RegID:
name = "%s.%s" % (self.Form.Name, self.RegID)
@@ -317,8 +317,6 @@
User code shouldn't need to access or override this.
"""
- if self._inDataUpdate or self._from_flushValue:
- return
# Maintain an internal copy of the value, separate from the
# property, so that we still have the value regardless of
whether
# or not the underlying ui object still exists (in wx at least,
@@ -327,6 +325,9 @@
# upon Destroy (saveValue, for instance)):
self._value = self.Value
+ if self._inDataUpdate or self._from_flushValue:
+ return
+
if (self.Form.ActiveControl != self
or not getattr(self, "_flushOnLostFocus",
False)):
# Value was changed programatically, and flushValue
won't ever be
_______________________________________________
Post Messages to: [email protected]
Subscription Maintenance: http://leafe.com/mailman/listinfo/dabo-dev
Searchable Archives: http://leafe.com/archives/search/dabo-dev
This message:
http://leafe.com/archives/byMID/[email protected]