void HonFxerApp::Close() { DI_DELETE(DiEditorManager::Get()); SAFE_DELETE(mMainPane); SAFE_DELETE(mSetResLocWindow); SAFE_DELETE(mSetGameLocWindow); DialogManager::getInstance().shutdown(); delete DialogManager::getInstancePtr(); MessageBoxManager::getInstance().shutdown(); delete MessageBoxManager::getInstancePtr(); SettingsManager::getInstance().shutdown(); delete SettingsManager::getInstancePtr(); ColourManager::getInstance().shutdown(); delete ColourManager::getInstancePtr(); HotKeyManager::getInstance().shutdown(); delete HotKeyManager::getInstancePtr(); CommandManager::getInstance().shutdown(); delete CommandManager::getInstancePtr(); MyGUI::FactoryManager::getInstance().unregisterFactory<MyGUI::FilterNone>("BasisSkin"); MyGUI::FactoryManager::getInstance().unregisterFactory<MyGUI::RTTLayer>("Layer"); DI_UNINSTALL_PLUGIN(DiK2); DI_UNINSTALL_PLUGIN(DiFx); DemiDemo::Close(); }
ArEntity::~ArEntity() { auto it = mPropertyMap.begin(); auto itEnd = mPropertyMap.end(); while (it != itEnd) { it->second->Deactivate(); DI_DELETE(it->second); it++; } mPropertyMap.clear(); }
void DiCodeConvert::Char2WChar( uint32 codepage,const char* in,std::wstring& out,int inlen/*=-1*/ ) { int size=MultiByteToWideChar(codepage, 0,in,inlen,NULL,0); if(inlen>0) { size++; } wchar_t* twords; twords = DI_NEW wchar_t[size]; MultiByteToWideChar(codepage, 0,in,inlen,twords,size); out.assign(twords,size-1); DI_DELETE (twords); }
void DiCodeConvert::WChar2Char( uint32 codepage,const wchar_t* in,std::string& out,int inlen/*=-1*/ ) { int size=WideCharToMultiByte(codepage, 0,in,inlen,NULL,0,NULL, 0); if(inlen>0) { size++; } char* words; words = DI_NEW char[size]; WideCharToMultiByte(codepage, 0,in,inlen,words,size,NULL, 0); out.assign(words,size-1); DI_DELETE (words); }