Пример #1
0
MRESULT EXPENTRY ClkWndProc (HWND hwnd, ULONG usMsg, MPARAM mp1, MPARAM mp2)
{
    switch (usMsg) {

    case WM_CREATE:
	ClkCreate (hwnd);
	return (WinDefWindowProc (hwnd, usMsg, mp1, mp2));

    case WM_DESTROY:
	ClkDestroy (hwnd);
	return (WinDefWindowProc (hwnd, usMsg, mp1, mp2));

    case WM_PAINT:
	ClkPaint (hwnd);
	break;

    case WM_SIZE:
	ClkSize (hwnd);
	return (WinDefWindowProc (hwnd, usMsg, mp1, mp2));

    default:
	/* let default window procedure handle it. */
	return (WinDefWindowProc (hwnd, usMsg, mp1, mp2));
    }

    return (MRFROMLONG(0));
}
MRESULT EXPENTRY ClkWndProc (HWND hwnd, ULONG usMsg, MPARAM mp1, MPARAM mp2)
{
    switch (usMsg)
    {

    case WM_CREATE:
        ClkCreate (hwnd);
        return (WinDefWindowProc (hwnd, usMsg, mp1, mp2));

    case WM_DESTROY:
        ClkDestroy (hwnd);
        return (WinDefWindowProc (hwnd, usMsg, mp1, mp2));

    case WM_TIMER:
        ClkTimer (hwnd);
        if ( (BOOL) hDateTime)
            WinSendMsg (hDateTime, WM_TIMER, mp1, mp2);
        break;

    case WM_PAINT:
        ClkPaint (hwnd);
        break;

    case WM_MINMAXFRAME:
        ClkMinmax (hwnd, (PSWP)mp1);
        break;

    case WM_SIZE:
        ClkSize (hwnd);
        return (WinDefWindowProc (hwnd, usMsg, mp1, mp2));

    case WM_COMMAND:
        ClkCommand (hwnd, mp1,mp2);
        break;

    case WM_BUTTON1DOWN:
        return WinSendMsg (hwndFrame, WM_TRACKFRAME,
                           MPFROMSHORT((USHORT)mp2 | TF_MOVE), MPVOID);

    case WM_BUTTON1DBLCLK:
        if (cp.fControlsHidden)
            ClkShowFrameControls (hwndFrame);
        else
            ClkHideFrameControls (hwndFrame);
        break;

    case WM_TRANSLATEACCEL:
        return WinSendMsg(hwndFrame, usMsg, mp1, mp2);
        break;

    case WM_SAVEAPPLICATION:
        /***********************************************************\
        *  Task Manager option to Save Desktop sends this message.
        *  Save window state (MIN/RESTORE) and position in OS2.INI
        \***********************************************************/
        SaveApplication (hwndFrame);
        break;

     case WM_INITMENU:
         InitMenu(mp1, mp2);
         break;

    case HM_QUERY_KEYS_HELP:
        return (MRESULT)PANEL_HELPKEYS;   /* return id of key help panel */
        break;

    default:
        /* let default window procedure handle it. */
        return (WinDefWindowProc (hwnd, usMsg, mp1, mp2));
    }

    return (MRFROMLONG(0));
}