📄 ccallbackmanager.cpp
字号:
//
// CCallbackManager.cpp
//
// --------------------------------------------------------
// A Practical Guide to Script-Driven Software Development
// Author: Qiming Lu Date: 6/1/2006
// MSN Messager: luqiming26@hotmail.com
// MSN Blog: http://spaces.msn.com/jemylu
// --------------------------------------------------------
#include "stdafx.h"
#include "CCallbackManager.h"
#include "DispatchHelper.h"
CCallbackManager* GetCallbackMgr() { return(CCallbackManager::GetInstance()); }
// Singleton instance of CCallbackManager
CCallbackManager* CCallbackManager::mInstance = 0;
/////////////////////////////////////////////////////////////////////////////////////////
CCallbackManager::CCallbackManager()
{
}
CCallbackManager::~CCallbackManager()
{
}
CCallbackManager* CCallbackManager::GetInstance()
{
if (mInstance == 0)
{
static CCallbackManager callbackMgr;
mInstance = &callbackMgr;
}
return mInstance;
}
void CCallbackManager::QueueCallback(DispatchHelper* pDispatcher)
{
mCallbackQueue.push_back(pDispatcher);
}
void CCallbackManager::Process()
{
size_t count = mCallbackQueue.size();
if (count > 0)
{
DispatchHelper* pDispatcher = mCallbackQueue.front();
if (pDispatcher)
{
pDispatcher->Invoke(0);
delete pDispatcher;
mCallbackQueue.pop_front();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -