From cd6ad8285e11f780eee71cdb6b833b21b84d1d1b Mon Sep 17 00:00:00 2001 From: David Crompton Date: Tue, 10 Jan 2023 21:50:20 +0000 Subject: [PATCH] ShowBase: Add a private DirectObject to allow use of base.accept for window-events --- direct/src/showbase/ShowBase.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/direct/src/showbase/ShowBase.py b/direct/src/showbase/ShowBase.py index ce02cfb78d..a65c2f173c 100644 --- a/direct/src/showbase/ShowBase.py +++ b/direct/src/showbase/ShowBase.py @@ -487,11 +487,15 @@ class ShowBase(DirectObject.DirectObject): DGG.setDefaultClickSound(self.loader.loadSfx("audio/sfx/GUI_click.wav")) DGG.setDefaultRolloverSound(self.loader.loadSfx("audio/sfx/GUI_rollover.wav")) + # Create a private DirectObject - allowing base.accept for window-event + # as well as allowing ShowBase's default handling of this. + self.__directObject = DirectObject.DirectObject() + # Now hang a hook on the window-event from Panda. This allows # us to detect when the user resizes, minimizes, or closes the # main window. self.__prevWindowProperties = None - self.accept('window-event', self.windowEvent) + self.__directObject.accept('window-event', self.windowEvent) # Transition effects (fade, iris, etc) from . import Transitions @@ -2579,9 +2583,9 @@ class ShowBase(DirectObject.DirectObject): self.oobeVis.setLightOff(1) self.oobeCullFrustum = None - self.accept('oobe-down', self.__oobeButton, extraArgs = ['']) - self.accept('oobe-repeat', self.__oobeButton, extraArgs = ['-repeat']) - self.accept('oobe-up', self.__oobeButton, extraArgs = ['-up']) + self.__directObject.accept('oobe-down', self.__oobeButton, extraArgs = ['']) + self.__directObject.accept('oobe-repeat', self.__oobeButton, extraArgs = ['-repeat']) + self.__directObject.accept('oobe-up', self.__oobeButton, extraArgs = ['-up']) if self.oobeMode: # Disable OOBE mode.