void ResourceManager::initialise() { MYGUI_ASSERT(!mIsInitialise, getClassTypeName() << " initialised twice"); MYGUI_LOG(Info, "* Initialise: " << getClassTypeName()); registerLoadXmlDelegate(XML_TYPE) = newDelegate(this, &ResourceManager::loadFromXmlNode); registerLoadXmlDelegate(XML_TYPE_LIST) = newDelegate(this, &ResourceManager::_loadList); // регестрируем дефолтные ресурсы FactoryManager::getInstance().registerFactory<ResourceImageSet>(XML_TYPE); MYGUI_LOG(Info, getClassTypeName() << " successfully initialized"); mIsInitialise = true; }
void Gui::initialise(Ogre::RenderWindow* _window, const std::string& _core, const Ogre::String & _group) { // группа с которой работает весь гуй mResourceGroup = _group; // самый первый лог LogManager::registerSection(MYGUI_LOG_SECTION, MYGUI_LOG_FILENAME); MYGUI_ASSERT(false == mIsInitialise, INSTANCE_TYPE_NAME << " initialised twice"); MYGUI_LOG(Info, "* Initialise: " << INSTANCE_TYPE_NAME); MYGUI_LOG(Info, "* MyGUI version " << MYGUI_VERSION_MAJOR << "." << MYGUI_VERSION_MINOR << "." << MYGUI_VERSION_PATCH); // дефолтный вьюпорт mActiveViewport = 0; // сохран¤ем окно и размеры mWindow = _window; mViewSize.set(mWindow->getViewport(mActiveViewport)->getActualWidth(), mWindow->getViewport(mActiveViewport)->getActualHeight()); MYGUI_LOG(Info, "Viewport : " << mViewSize.print()); registerLoadXmlDelegate(XML_TYPE) = newDelegate(this, &Gui::_load); // создаем и инициализируем синглтоны mLayerManager = new LayerManager(); mWidgetManager = new WidgetManager(); mInputManager = new InputManager(); mCroppedRectangleManager = new SubWidgetManager(); mSkinManager = new SkinManager(); mFontManager = new FontManager(); mControllerManager = new ControllerManager(); mPointerManager = new PointerManager(); mClipboardManager = new ClipboardManager(); mLayoutManager = new LayoutManager(); mDynLibManager = new DynLibManager(); mPluginManager = new PluginManager(); mLayerManager->initialise(); mWidgetManager->initialise(); mInputManager->initialise(); mCroppedRectangleManager->initialise(); mSkinManager->initialise(); mFontManager->initialise(); mControllerManager->initialise(); mPointerManager->initialise(); mClipboardManager->initialise(); mLayoutManager->initialise(); mDynLibManager->initialise(); mPluginManager->initialise(); // подписываемс¤ на изменение размеров окна и сразу оповещаем Ogre::WindowEventUtilities::addWindowEventListener(mWindow, this); windowResized(mWindow); // загружаем дефолтные настройки load(_core, mResourceGroup); MYGUI_LOG(Info, INSTANCE_TYPE_NAME << " successfully initialized"); mIsInitialise = true; }