[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
gnue/designer/src/base Instance.py
From: |
Jason Cater |
Subject: |
gnue/designer/src/base Instance.py |
Date: |
Fri, 13 Jun 2003 16:12:49 -0400 |
CVSROOT: /cvsroot/gnue
Module name: gnue
Branch:
Changes by: Jason Cater <address@hidden> 03/06/13 16:12:49
Modified files:
designer/src/base: Instance.py
Log message:
added an 'event cache' so all events are trapped on designer
initialization until all tools/etc are created
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/designer/src/base/Instance.py.diff?tr1=1.112&tr2=1.113&r1=text&r2=text
Patches:
Index: gnue/designer/src/base/Instance.py
diff -c gnue/designer/src/base/Instance.py:1.112
gnue/designer/src/base/Instance.py:1.113
*** gnue/designer/src/base/Instance.py:1.112 Fri Jun 13 13:20:11 2003
--- gnue/designer/src/base/Instance.py Fri Jun 13 16:12:48 2003
***************
*** 111,116 ****
--- 111,123 ----
wxFrame.__init__(self, NULL, -1, "")
EventController.__init__(self)
+ # During startup, we will cache all events
+ # so we can execute them when everything has
+ # been initialized.
+ self.__origDispatchEvent = self.dispatchEvent
+ self.dispatchEvent = self.__cacheEvents
+ self.__cachedEvents = []
+
# Register ourself with RuntimeSettings
RuntimeSettings.registerInstance(self)
***************
*** 253,258 ****
--- 260,275 ----
self.Refresh()
EVT_CLOSE(self, self.OnClose)
+
+ #
+ # Play all the cached events
+ #
+ self.dispatchEvent = self.__origDispatchEvent
+ for event in self.__cachedEvents:
+ self.dispatchEvent(event)
+
+ def __cacheEvents(self, event):
+ self.__cachedEvents.append(event)
def _initMenu(self):
# Add the [sub]menus