LRESULT basic_window::WndProc(HWND hWnd, INT uMsg, WPARAM wParam, LPARAM lParam) { switch (uMsg) { case WM_CREATE: onCreate(uMsg, wParam, lParam); break; case WM_COMMAND: onCommand(uMsg, wParam, lParam); break; case WM_NOTIFY: onNotify(uMsg, wParam, lParam); break; case WM_PAINT: onPaint(uMsg, wParam, lParam); break; case WM_LBUTTONDOWN: onClick(uMsg, wParam, lParam); break; case WM_RBUTTONDOWN: onRClick(uMsg, wParam, lParam); break; case WM_MOUSEMOVE: onMouse(uMsg, wParam, lParam); break; case WM_DESTROY: onDestroy(uMsg, wParam, lParam); break; case WM_CLOSE: { PostQuitMessage(0); // send quit message return 0; // jump back } default: onOther(uMsg, wParam, lParam); break; } return DefProc(hWnd, uMsg, wParam, lParam); }
BOOL dialog::DlgProc(HWND hWnd, INT uMsg, WPARAM wParam, LPARAM lParam) { switch (uMsg) { case WM_INITDIALOG: return onInitDialog(uMsg, wParam, lParam); break; case WM_CREATE: return onCreate(uMsg, wParam, lParam); break; case WM_COMMAND: return onCommand(uMsg, wParam, lParam); break; default: return onOther(uMsg, wParam, lParam); break; } //return DefMDIChildProc(hWnd, uMsg, wParam, lParam) }
void cParser::parse(void) { m_bEnd = false; m_varLine = 0; m_curLine = 0; m_errorID = 0; while(!m_strText.empty() && !m_bEnd) { char ch = m_strText[0]; m_strText = m_strText.substr(1); switch(ch) { case '{' : onLBraket(); break; case '}' : onRBraket(); break; case '=' : onEqual(); break; case '\n' : onReturn(); break; case ' ' : case '\t': onSpace(); break; case '#' : onComment(); break; case ';': break; default: onOther(ch); break; } if (error()) { onError(); } } onEnd(); }