本文整理汇总了C++中cegui::WindowManager::loadWindowLayout方法的典型用法代码示例。如果您正苦于以下问题:C++ WindowManager::loadWindowLayout方法的具体用法?C++ WindowManager::loadWindowLayout怎么用?C++ WindowManager::loadWindowLayout使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类cegui::WindowManager
的用法示例。
在下文中一共展示了WindowManager::loadWindowLayout方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: catch
bool
CFormBackendImp::LoadLayout( GUCEF::CORE::CIOAccess& layoutStorage )
{GUCE_TRACE;
CEGUI::Window* rootWindow = NULL;
CEGUI::WindowManager* wmgr = CEGUI::WindowManager::getSingletonPtr();
GUCEF_DEBUG_LOG( 0, "Starting layout load for a GUI Form" );
try
{
// provide hacky access to the given data
m_dummyArchive->AddResource( layoutStorage, "currentFile" );
// Now we can load the window layout from the given storage
// Note that if CEGUI ever provides an interface to do this directly
// clean up this mess !!!
rootWindow = wmgr->loadWindowLayout( "currentFile" ,
m_widgetNamePrefix.C_String() ,
m_resourceGroupName.C_String() );
m_dummyArchive->ClearResourceList();
}
catch ( Ogre::Exception& e )
{
GUCEF_ERROR_LOG( 0, CString( "Ogre Exception while attempting to load form layout: " ) + e.getFullDescription().c_str() );
return false;
}
// Now that we completed loading lets see what we got from CEGUI
if ( NULL != rootWindow )
{
// Begin by providing a wrapper for the root window
m_rootWindow = CreateAndHookWrapperForWindow( rootWindow );
if ( NULL != m_rootWindow )
{
CString localWidgetName = m_rootWindow->GetName().SubstrToChar( '/', false );
m_widgetMap[ localWidgetName ] = m_rootWindow;
WrapAndHookChildWindows( rootWindow );
// We will directly add the form as a child of the root for now
CEGUI::Window* globalRootWindow = wmgr->getWindow( "root" );
if ( NULL != globalRootWindow )
{
globalRootWindow->addChildWindow( rootWindow );
GUCEF_DEBUG_LOG( 0, "Successfully loaded a GUI Form layout" );
return true;
}
else
{
GUCEF_ERROR_LOG( 0, "Failed to add form as a child to the global \"root\" window" );
}
}
rootWindow->hide();
}
GUCEF_DEBUG_LOG( 0, "Failed to loaded a GUI Form layout" );
return false;
}
示例2:
LoginScreenInterface::LoginScreenInterface(){
#ifdef WITH_CEGUI_SUPPORT
CEGUI::WindowManager *wmanager = CEGUI::WindowManager::getSingletonPtr();
m_LoginScreenWindow = wmanager->loadWindowLayout(
"loginscreen.layout",
""
);
if (m_LoginScreenWindow)
{
CEGUI::System::getSingleton().getGUISheet()->addChildWindow(m_LoginScreenWindow);
}
#endif
}
示例3: Application
bool StartMe::Application()
{
// Set up window transparency. Must happen _before_ system is opened!
csRef<iGraphics2D> g2d = csQueryRegistry<iGraphics2D> (GetObjectRegistry ());
if (!g2d) return ReportError ("Failed to obtain canvas!");
natwin = scfQueryInterface<iNativeWindow> (g2d);
if (natwin)
{
natwin->SetWindowTransparent (true);
}
// Open the main system. This will open all the previously loaded plug-ins.
// i.e. all windows will be opened.
if (!OpenApplication(GetObjectRegistry()))
return ReportError("Error opening system!");
// The window is open, so lets make it disappear!
if (natwin)
{
natwin->SetWindowDecoration (iNativeWindow::decoCaption, false);
natwin->SetWindowDecoration (iNativeWindow::decoClientFrame, false);
}
// Now get the pointer to various modules we need. We fetch them
// from the object registry. The RequestPlugins() call we did earlier
// registered all loaded plugins with the object registry.
g3d = csQueryRegistry<iGraphics3D> (GetObjectRegistry());
if (!g3d) return ReportError("Failed to locate 3D renderer!");
engine = csQueryRegistry<iEngine> (GetObjectRegistry());
if (!engine) return ReportError("Failed to locate 3D engine!");
vc = csQueryRegistry<iVirtualClock> (GetObjectRegistry());
if (!vc) return ReportError("Failed to locate Virtual Clock!");
kbd = csQueryRegistry<iKeyboardDriver> (GetObjectRegistry());
if (!kbd) return ReportError("Failed to locate Keyboard Driver!");
loader = csQueryRegistry<iLoader> (GetObjectRegistry());
if (!loader) return ReportError("Failed to locate Loader!");
vfs = csQueryRegistry<iVFS> (GetObjectRegistry());
if (!vfs) return ReportError("Failed to locate VFS!");
confman = csQueryRegistry<iConfigManager> (GetObjectRegistry());
if (!confman) return ReportError("Failed to locate Config Manager!");
cegui = csQueryRegistry<iCEGUI> (GetObjectRegistry());
if (!cegui) return ReportError("Failed to locate CEGUI plugin");
// Initialize the CEGUI wrapper
cegui->Initialize ();
// Let the CEGUI plugin take care of the rendering by itself
cegui->SetAutoRender (true);
// Set the logging level
cegui->GetLoggerPtr ()->setLoggingLevel(CEGUI::Informative);
vfs->ChDir ("/cegui/");
// Load the 'ice' skin (which uses the Falagard skinning system)
cegui->GetSchemeManagerPtr ()->create("ice.scheme");
cegui->GetSystemPtr ()->setDefaultMouseCursor("ice", "MouseArrow");
// Setup the fonts
cegui->GetFontManagerPtr ()->createFreeTypeFont
(FONT_NORMAL, 10, true, "/fonts/ttf/DejaVuSerif.ttf");
cegui->GetFontManagerPtr ()->createFreeTypeFont
(FONT_NORMAL_ITALIC, 10, true, "/fonts/ttf/DejaVuSerif-Italic.ttf");
cegui->GetFontManagerPtr ()->createFreeTypeFont
(FONT_TITLE, 15, true, "/fonts/ttf/DejaVuSerif-Bold.ttf");
cegui->GetFontManagerPtr ()->createFreeTypeFont
(FONT_TITLE_ITALIC, 15, true, "/fonts/ttf/DejaVuSerif-BoldItalic.ttf");
CEGUI::WindowManager* winMgr = cegui->GetWindowManagerPtr ();
// Load the CEGUI layout and set it as the root layout
vfs->ChDir ("/data/startme/");
cegui->GetSchemeManagerPtr ()->create ("crystal.scheme");
cegui->GetSystemPtr ()->setGUISheet(winMgr->loadWindowLayout ("startme.layout"));
// We need a View to the virtual world.
view.AttachNew (new csView (engine, g3d));
LoadConfig ();
CEGUI::Window* logo = winMgr->getWindow("Logo");
logo->subscribeEvent(CEGUI::Window::EventMouseClick,
CEGUI::Event::Subscriber(&StartMe::OnLogoClicked, this));
///TODO: Using 'EventMouseEntersArea' is more correct but is only available
/// in 0.7.2+
logo->subscribeEvent(CEGUI::Window::EventMouseEnters,
CEGUI::Event::Subscriber(&StartMe::OnEnterLogo, this));
logo->subscribeEvent(CEGUI::Window::EventMouseLeaves,
CEGUI::Event::Subscriber(&StartMe::OnLeaveLogo, this));
vfs->ChDir ("/lib/startme");
//.........这里部分代码省略.........
示例4: Application
bool CEGUITest::Application()
{
if (!OpenApplication(GetObjectRegistry()))
return ReportError("Error opening system!");
vfs = csQueryRegistry<iVFS> (GetObjectRegistry());
if (!vfs) return ReportError("Failed to locate VFS!");
g3d = csQueryRegistry<iGraphics3D> (GetObjectRegistry());
if (!g3d) return ReportError("Failed to locate 3D renderer!");
engine = csQueryRegistry<iEngine> (GetObjectRegistry());
if (!engine) return ReportError("Failed to locate 3D engine!");
vc = csQueryRegistry<iVirtualClock> (GetObjectRegistry());
if (!vc) return ReportError("Failed to locate Virtual Clock!");
kbd = csQueryRegistry<iKeyboardDriver> (GetObjectRegistry());
if (!kbd) return ReportError("Failed to locate Keyboard Driver!");
loader = csQueryRegistry<iLoader> (GetObjectRegistry());
if (!loader) return ReportError("Failed to locate Loader!");
cegui = csQueryRegistry<iCEGUI> (GetObjectRegistry());
if (!cegui) return ReportError("Failed to locate CEGUI plugin");
// Initialize CEGUI wrapper
cegui->Initialize ();
/* Let CEGUI plugin install an event handler that takes care of rendering
every frame */
cegui->SetAutoRender (true);
// Set the logging level
cegui->GetLoggerPtr ()->setLoggingLevel(CEGUI::Informative);
vfs->ChDir ("/cegui/");
// Load the ice skin (which uses Falagard skinning system)
cegui->GetSchemeManagerPtr ()->create("ice.scheme");
cegui->GetSystemPtr ()->setDefaultMouseCursor("ice", "MouseArrow");
cegui->GetFontManagerPtr ()->createFreeTypeFont("DejaVuSans", 10, true, "/fonts/ttf/DejaVuSans.ttf");
CEGUI::WindowManager* winMgr = cegui->GetWindowManagerPtr ();
// Load layout and set as root
vfs->ChDir ("/ceguitest/");
cegui->GetSystemPtr ()->setGUISheet(winMgr->loadWindowLayout("ice.layout"));
// Subscribe to the clicked event for the exit button
CEGUI::Window* btn = winMgr->getWindow("Demo7/Window1/Quit");
btn->subscribeEvent(CEGUI::PushButton::EventClicked,
CEGUI::Event::Subscriber(&CEGUITest::OnExitButtonClicked, this));
// These are used store the current orientation of the camera.
rotY = rotX = 0;
view.AttachNew(new csView (engine, g3d));
iGraphics2D* g2d = g3d->GetDriver2D ();
view->SetRectangle(0, 0, g2d->GetWidth(), g2d->GetHeight ());
printer.AttachNew (new FramePrinter (object_reg));
CreateRoom();
view->GetCamera()->SetSector (room);
view->GetCamera()->GetTransform().SetOrigin(csVector3 (0, 5, 0));
Run();
return true;
}