本文整理汇总了C++中WindowMap类的典型用法代码示例。如果您正苦于以下问题:C++ WindowMap类的具体用法?C++ WindowMap怎么用?C++ WindowMap使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了WindowMap类的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: Berkelium_destroy
PLUGIN_API void Berkelium_destroy()
{
--refCount;
if(refCount == 0)
{
cerr << "Last reference to Berkelium destroyed: destroying the library" << endl;
// Destroy the windows that still exist
// Note: we update Berkelium after each destroy to ensure no messages are left in the message loop
for(WindowMap::iterator it = windows.begin(); it != windows.end(); ++it)
{
delete it->second;
Berkelium::update();
}
windows.clear();
// Close the berkelium backend
Berkelium::destroy();
cerr << "... done destroying Berkelium" << endl;
// Close the log file
fclose(stderr);
}
}
开发者ID:ivyshao,项目名称:UnityBerkeliumPlugin,代码行数:25,代码来源:UnityBerkeliumPlugin.cpp
示例2: Berkelium_Window_destroy
PLUGIN_API void Berkelium_Window_destroy(int windowID)
{
WindowMap::iterator it = windows.find(windowID);
if(it != windows.end())
{
delete it->second;
windows.erase(it);
}
}
开发者ID:reissgrant,项目名称:UnityBerkeliumPlugin,代码行数:9,代码来源:UnityBerkeliumPlugin.cpp
示例3:
UnityBerkeliumWindow *getWindow(int id)
{
WindowMap::const_iterator it = windows.find(id);
if(it == windows.end())
{
cerr << "Warning: no berkelium window found with ID " << id << "!" << endl;
return 0;
}
return it->second;
}
开发者ID:ivyshao,项目名称:UnityBerkeliumPlugin,代码行数:11,代码来源:UnityBerkeliumPlugin.cpp
示例4: EXPORT_CDECL
EXPORT_CDECL(HICON) GetWindowIcon(HWND window, UINT32 size) {
WindowMap::iterator iter = sWindowData.find(window);
if (iter == sWindowData.end()) {
if (IsTaskbarWindow(window)) {
UpdateWindowData(window);
}
return nullptr;
}
if (size > 20 && iter->second.largeIcon != nullptr) {
return iter->second.largeIcon;
}
return iter->second.smallIcon;
}
开发者ID:Superxwolf,项目名称:nModules,代码行数:13,代码来源:WindowMonitor.cpp
示例5: RunWindowMaintenance
void WindowMonitor::RunWindowMaintenance() {
for (WindowMap::iterator iter = sWindowData.begin(); iter != sWindowData.end();) {
if (!IsTaskbarWindow(iter->first)) {
iter = sWindowData.erase(iter);
continue;
}
if (iter->second.updateDuringMaintenance) {
iter->second.updateDuringMaintenance = false;
UpdateWindowData(iter->first);
}
++iter;
}
}
开发者ID:Superxwolf,项目名称:nModules,代码行数:15,代码来源:WindowMonitor.cpp
示例6: GetWindow
/// Получение окна
Window& GetWindow (size_t id)
{
try
{
WindowMap::iterator iter = windows.find (id);
if (iter == windows.end ())
throw xtl::make_argument_exception ("", "window_id", id, "No window with such id");
return *iter->second;
}
catch (xtl::exception& e)
{
e.touch ("render::scene::server::WindowManager::Impl::GetWindow");
throw;
}
}
开发者ID:untgames,项目名称:funner,代码行数:18,代码来源:render_server_window_manager.cpp
示例7: Berkelium_destroy
PLUGIN_API void Berkelium_destroy()
{
--refCount;
if(refCount == 0)
{
// Destroy the windows that still exist
for(WindowMap::iterator it = windows.begin(); it != windows.end(); ++it)
delete it->second;
windows.clear();
// Close the berkelium backend
Berkelium::destroy();
// Close the log file
fclose(stderr);
}
}
开发者ID:reissgrant,项目名称:UnityBerkeliumPlugin,代码行数:18,代码来源:UnityBerkeliumPlugin.cpp
示例8:
UnityBerkeliumWindow *getWindow(int id)
{
WindowMap::const_iterator it = windows.find(id);
return (it == windows.end()) ? 0 : it->second;
}
开发者ID:reissgrant,项目名称:UnityBerkeliumPlugin,代码行数:5,代码来源:UnityBerkeliumPlugin.cpp
示例9: HandleMessage
LRESULT WindowMonitor::HandleMessage(UINT message, WPARAM wParam, LPARAM) {
switch (message) {
case LM_REDRAW:
UpdateWindowData((HWND)wParam);
return 0;
case LM_WINDOWCREATED:
UpdateWindowData((HWND)wParam);
return 0;
case LM_WINDOWDESTROYED:
sWindowData.erase((HWND)wParam);
return 0;
case LM_WINDOWREPLACED:
UpdateWindowData((HWND)wParam);
return 0;
case LM_WINDOWREPLACING:
sWindowData.erase((HWND)wParam);
return 0;
default:
assert(false); // We should handle every message sent to us.
return 0;
}
}
开发者ID:Superxwolf,项目名称:nModules,代码行数:27,代码来源:WindowMonitor.cpp
示例10: Berkelium_Window_create
PLUGIN_API bool Berkelium_Window_create(int uniqueID, float *colors, bool transparency, int width, int height, char *url)
{
if(windows.find(uniqueID) != windows.end())
{
cerr << "Error: a berkelium window with ID " << uniqueID << " already exists!" << endl;
return false;
}
UnityBerkeliumWindow *pWindow = new UnityBerkeliumWindow(uniqueID, colors, transparency, width, height, url);
cerr << "Berkelium window created: " << pWindow << " (size=" << width << ", " << height << "; url=" << url << ")" << endl;
windows[uniqueID] = pWindow;
return true;
}
开发者ID:ivyshao,项目名称:UnityBerkeliumPlugin,代码行数:15,代码来源:UnityBerkeliumPlugin.cpp
示例11: Stop
void WindowMonitor::Stop() {
sInitThread.join();
SendMessage(GetLitestepWnd(), LM_UNREGISTERMESSAGE, (WPARAM)gWindow, (LPARAM)sWMMessages);
KillTimer(gWindow, NCORE_TIMER_WINDOW_MAINTENANCE);
sWindowData.clear();
DestroyIcon(sDefaultIcon);
sDefaultIcon = nullptr;
}
开发者ID:Superxwolf,项目名称:nModules,代码行数:8,代码来源:WindowMonitor.cpp
示例12: Berkelium_Window_create
PLUGIN_API bool Berkelium_Window_create(int uniqueID, float *colors, int width, int height, char *url) // changed void* to float* since we know we're passing floats
{
if(windows.find(uniqueID) != windows.end())
{
cerr << "Error: a berkelium window with ID " << uniqueID << " already exists!" << endl;
return false;
}
// Unity uses floats for colors
float *data = reinterpret_cast<float *>(colors);
UnityBerkeliumWindow *pWindow = new UnityBerkeliumWindow(uniqueID, data, width, height, url);
cerr << "Berkelium window created: " << pWindow << " (size=" << width << ", " << height << "; url=" << url << ")" << endl;
windows[uniqueID] = pWindow;
return true;
}
开发者ID:reissgrant,项目名称:UnityBerkeliumPlugin,代码行数:18,代码来源:UnityBerkeliumPlugin.cpp
注:本文中的WindowMap类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论