void Window::_setupObjectManager() { if( !glewGetContext( )) return; _releaseObjectManager(); Window* sharedWindow = getSharedContextWindow(); ObjectManager* sharedOM = sharedWindow ? sharedWindow->getObjectManager():0; if( sharedOM ) _objectManager = new ObjectManager( sharedOM ); else _objectManager = new ObjectManager( glewGetContext( )); }
void Window::_setupObjectManager() { if( !glewGetContext( )) return; _releaseObjectManager(); const Window* sharedWindow = getSharedContextWindow(); if( sharedWindow && sharedWindow != this ) _objectManager = sharedWindow->_objectManager; else { util::ObjectManager om( glewGetContext( )); _objectManager = om; } }
bool Window::configExitSystemWindow() { // _transferWindow has to be deleted from the same thread it was // initialized LBASSERT( !_transferWindow ); _releaseObjectManager(); if( _systemWindow ) { _systemWindow->configExit(); delete _systemWindow; _systemWindow = 0; } return true; }