Exemple #1
0
WMSG_RESULT CUITree::KeyMessageProc( MSG* pMsg )
{
	WMSG_RESULT ret = WMSG_FAIL;

	if (m_bHide == FALSE)
	{
		ret = OnKeyMessage(pMsg);
	}

	if (ret == WMSG_FAIL)
		ret = KeyMessageChild(pMsg);

	return ret;
}
Exemple #2
0
WMSG_RESULT CUIBase::KeyMessageProc(MSG* pMsg)
{
    if (m_bHide)
        return WMSG_FAIL;

    WMSG_RESULT ret = WMSG_FAIL;

    ret = OnKeyMessage(pMsg);

    if (ret == WMSG_FAIL)
        ret = KeyMessageChild(pMsg);

    return ret;
}
Exemple #3
0
LRESULT CSiWindow::WindowProc(UINT uMsg, WPARAM wParam, LPARAM lParam)
{
    LRESULT lr;
    TRACE(_T("Current Thread Id = %x, uMsg = %x\n"), ::GetCurrentThreadId(), uMsg);

    switch(uMsg)
    {
        case WM_GETTEXT:
        {
            lr = CSubclassWnd::WindowProc(uMsg, wParam, lParam);
            OnGetWindowText(wParam,lParam);
            return lr;
        }
        case 0x7e9:
        {
            UINT nChar = static_cast<UINT>(wParam);
            UINT nFlags = static_cast<UINT>(lParam);

            if((nChar == 0x08) || (nChar == 0x09) || (nChar == 0x0D) || (nChar == 0x802e)
                || (nChar == 0x308) || (nChar == 0x309) || (nChar == 0x30D)) 
            {
                lr = CSubclassWnd::WindowProc(uMsg, wParam, lParam);
                OnKeyMessage(nChar, nFlags);
            }
            else
            {
                OnKeyMessage(nChar, nFlags);
                lr = CSubclassWnd::WindowProc(uMsg, wParam, lParam);
            }
            
            return lr;
        }
        case WM_TIMER:
        {
            UINT_PTR timerId = static_cast<UINT_PTR>(wParam);
            OnTimer(timerId);
            break;//让默认的处理函数继续处理
        }
        case WM_DESTROY:
        {
            OnDestroy();
            break;//让默认的处理函数继续处理
        }
        case WM_MDIACTIVATE:
        {
            OnMDIActive(wParam,lParam);
            break;//让默认的处理函数继续处理
        }
#ifdef INSTALL_SI_MENU_THEME
        case WM_UNINITMENUPOPUP://WM_EXITMENULOOP:
        {
            m_ActiveMenus.OnUninitMenuPopup(wParam, lParam);
            break;
        }
        case WM_INITMENUPOPUP/*WM_INITMENU*/:
        {
            m_ActiveMenus.OnInitMenuPopup(wParam, lParam);
            break;
        }
        case WM_MEASUREITEM:
        {
            int nRtn = m_ActiveMenus.OnMeasureItem(wParam, lParam);
            if(nRtn == 1)
                return 1;
            else
                return CSubclassWnd::WindowProc(uMsg, wParam, lParam);
        }
        case WM_DRAWITEM:
        {
            int nRtn = m_ActiveMenus.OnDrawItem(wParam, lParam);
            if(nRtn == 1)
                return 1;
            else
                return CSubclassWnd::WindowProc(uMsg, wParam, lParam);
        }
#endif
        default:
            break;
    }

    return CSubclassWnd::WindowProc(uMsg, wParam, lParam);
}