commit-gnue
[Top][All Lists]
Advanced

[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




reply via email to

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