// // Get best guess at name of userdata type // SString GetUserDataClassName ( void* ptr, lua_State* luaVM ) { // Try element if ( CElement* pElement = UserDataCast < CElement > ( (CElement*)NULL, ptr, NULL ) ) { return pElement->GetTypeName (); } // Try xml node if ( CXMLNode* pXMLNode = UserDataCast < CXMLNode > ( (CXMLNode*)NULL, ptr, NULL ) ) { return GetClassTypeName ( pXMLNode ); } // Try timer if ( CLuaTimer* pLuaTimer = UserDataCast < CLuaTimer > ( (CLuaTimer*)NULL, ptr, luaVM ) ) { return GetClassTypeName ( pLuaTimer ); } // Try resource if ( CResource* pResource = UserDataCast < CResource > ( (CResource*)NULL, ptr, NULL ) ) { return GetClassTypeName ( pResource ); } return ""; }
// // Get best guess at name of userdata type // SString GetUserDataClassName ( void* ptr, lua_State* luaVM ) { // Try element if ( CClientEntity* pClientElement = UserDataCast < CClientEntity > ( (CClientEntity*)NULL, ptr, NULL ) ) { // Try gui element if ( CClientGUIElement* pGuiElement = DynamicCast < CClientGUIElement > ( pClientElement ) ) { return EnumToString ( pGuiElement->GetCGUIElement ()->GetType () ); } return pClientElement->GetTypeName (); } // Try xml node if ( CXMLNode* pXMLNode = UserDataCast < CXMLNode > ( (CXMLNode*)NULL, ptr, NULL ) ) { return GetClassTypeName ( pXMLNode ); } // Try timer if ( CLuaTimer* pLuaTimer = UserDataCast < CLuaTimer > ( (CLuaTimer*)NULL, ptr, luaVM ) ) { return GetClassTypeName ( pLuaTimer ); } // Try resource if ( CResource* pResource = UserDataCast < CResource > ( (CResource*)NULL, ptr, NULL ) ) { return GetClassTypeName ( pResource ); } return ""; }
// // Get best guess at name of userdata type // SString GetUserDataClassName(void* ptr, lua_State* luaVM, bool bFindElementType) { // Try element if (CClientEntity* pClientElement = UserDataCast<CClientEntity>((CClientEntity*)NULL, ptr, NULL)) { if (bFindElementType) // Try gui element first if (CClientGUIElement* pGuiElement = DynamicCast<CClientGUIElement>(pClientElement)) return EnumToString(pGuiElement->GetCGUIElement()->GetType()); else return pClientElement->GetTypeName(); else return GetClassTypeName(pClientElement); } if (auto* pVar = UserDataCast<CResource>((CResource*)NULL, ptr, luaVM)) // Try resource return GetClassTypeName(pVar); if (auto* pVar = UserDataCast<CXMLNode>((CXMLNode*)NULL, ptr, luaVM)) // Try xml node return GetClassTypeName(pVar); if (auto* pVar = UserDataCast<CLuaTimer>((CLuaTimer*)NULL, ptr, luaVM)) // Try timer return GetClassTypeName(pVar); if (auto* pVar = UserDataCast<CLuaVector2D>((CLuaVector2D*)NULL, ptr, luaVM)) // Try 2D Vector return GetClassTypeName(pVar); if (auto* pVar = UserDataCast<CLuaVector3D>((CLuaVector3D*)NULL, ptr, luaVM)) // Try 3D Vector return GetClassTypeName(pVar); if (auto* pVar = UserDataCast<CLuaVector4D>((CLuaVector4D*)NULL, ptr, luaVM)) return GetClassTypeName(pVar); return ""; }
bool CWin32WindowContext::Initialize( const GUI::CString& title , const GUI::CVideoSettings& videoSettings ) {GUCEF_TRACE; // Do not initialize twice Shutdown(); if ( !CORE::CMsWin32Window::RegisterWindowClass( GetClassTypeName() ) ) { GUCEF_ERROR_LOG( CORE::LOGLEVEL_NORMAL, "Win32WindowContext: Could not register window class" ); return false; } // First create a regular Win32 window if ( m_window.WindowCreate( GetClassTypeName() , title , 0 , 0 , videoSettings.GetResolutionWidthInPixels() , videoSettings.GetResolutionHeightInPixels() ) ) { // Display the new window m_window.Show(); m_window.SendToForegound(); m_window.GrabFocus(); // Grab the main app pulse generator and set the update interval for the context to the desired refresh rate CORE::CPulseGenerator& pulseGenerator = CORE::CCoreGlobal::Instance()->GetPulseGenerator(); pulseGenerator.RequestPeriodicPulses( this, 1000 / videoSettings.GetFrequency() ); SubscribeTo( &pulseGenerator ); GUCEF_SYSTEM_LOG( CORE::LOGLEVEL_NORMAL, "Win32WindowContext: Succesfully created Win32 window" ); return true; } return false; }
// // Get best guess at name of userdata type // SString GetUserDataClassName ( void* ptr, lua_State* luaVM, bool bFindElementType ) { if (CElement* pVar = UserDataCast < CElement >((CElement*)NULL, ptr, luaVM)) // Try element return bFindElementType ? pVar->GetTypeName() : GetClassTypeName(pVar); if (auto* pVar = UserDataCast < CResource >((CResource*)NULL, ptr, luaVM)) // Try resource return GetClassTypeName(pVar); if (auto* pVar = UserDataCast < CXMLNode >((CXMLNode*)NULL, ptr, luaVM)) // Try xml node return GetClassTypeName(pVar); if (auto* pVar = UserDataCast < CLuaTimer >((CLuaTimer*)NULL, ptr, luaVM)) // Try timer return GetClassTypeName(pVar); if (auto* pVar = UserDataCast < CAccount >((CAccount*)NULL, ptr, luaVM)) return GetClassTypeName(pVar); if (auto* pVar = UserDataCast < CDbJobData >((CDbJobData*)NULL, ptr, luaVM)) return GetClassTypeName(pVar); if (auto* pVar = UserDataCast < CAccessControlList >((CAccessControlList*)NULL, ptr, luaVM)) return GetClassTypeName(pVar); if (auto* pVar = UserDataCast < CAccessControlListGroup >((CAccessControlListGroup*)NULL, ptr, luaVM)) return GetClassTypeName(pVar); if (auto* pVar = UserDataCast < CCustomWeapon >((CCustomWeapon*)NULL, ptr, luaVM)) return GetClassTypeName(pVar); if (auto* pVar = UserDataCast < CBan >((CBan*)NULL, ptr, luaVM)) return GetClassTypeName(pVar); if (auto* pVar = UserDataCast < CTextItem >((CTextItem*)NULL, ptr, luaVM)) return GetClassTypeName(pVar); if (auto* pVar = UserDataCast < CTextDisplay >((CTextDisplay*)NULL, ptr, luaVM)) return GetClassTypeName(pVar); if (auto* pVar = UserDataCast < CLuaVector2D >((CLuaVector2D*)NULL, ptr, luaVM)) return GetClassTypeName(pVar); if (auto* pVar = UserDataCast < CLuaVector3D >((CLuaVector3D*)NULL, ptr, luaVM)) return GetClassTypeName(pVar); if (auto* pVar = UserDataCast < CLuaVector4D >((CLuaVector4D*)NULL, ptr, luaVM)) return GetClassTypeName(pVar); if (auto* pVar = UserDataCast < CLuaMatrix >((CLuaMatrix*)NULL, ptr, luaVM)) return GetClassTypeName(pVar); return ""; }