64 #ifndef _MGUI_WINDOW_H    65 #define _MGUI_WINDOW_H    77 #define MSG_NULLMSG         0x0000    78 #define MSG_SYNCMSG         0x0000    86 #define MSG_FIRSTMOUSEMSG   0x0001   110 #define MSG_LBUTTONDOWN     0x0001   131 #define MSG_LBUTTONUP       0x0002   152 #define MSG_LBUTTONDBLCLK   0x0003   173 #define MSG_MOUSEMOVE       0x0004   197 #define MSG_RBUTTONDOWN     0x0005   218 #define MSG_RBUTTONUP       0x0006   239 #define MSG_RBUTTONDBLCLK   0x0007   262 #define MSG_MBUTTONDOWN     0x0008   285 #define MSG_MBUTTONUP       0x0009   306 #define MSG_MBUTTONDBLCLK   0x000A   308 #define MSG_NCMOUSEOFF      0x000A   329 #define MSG_NCLBUTTONDOWN   0x000B   350 #define MSG_NCLBUTTONUP     0x000C   371 #define MSG_NCLBUTTONDBLCLK 0x000D   392 #define MSG_NCMOUSEMOVE     0x000E   413 #define MSG_NCRBUTTONDOWN   0x000F   434 #define MSG_NCRBUTTONUP     0x0010   455 #define MSG_NCRBUTTONDBLCLK 0x0011   476 #define MSG_NCMBUTTONDOWN   0x0012   497 #define MSG_NCMBUTTONUP     0x0013   518 #define MSG_NCMBUTTONDBLCLK 0x0014   520 #define MSG_LASTMOUSEMSG    0x0014   530 #define MSG_FIRSTKEYMSG     0x0015   554 #define MSG_KEYDOWN         0x0015   582 #define MSG_CHAR            0x0016   602 #define MSG_KEYUP           0x0017   622 #define MSG_SYSKEYDOWN      0x0018   642 #define MSG_SYSCHAR         0x0019   662 #define MSG_SYSKEYUP        0x001A   680 #define MSG_KEYLONGPRESS    0x001B   696 #define MSG_KEYALWAYSPRESS  0x001C   723 #define MSG_KEYSYM          0x001D   747 #define MSG_UTF8CHAR        0x001E   755 #define DEF_LPRESS_TIME     200   763 #define DEF_APRESS_TIME     1000   769 #define DEF_INTERVAL_TIME   200   771 extern DWORD __mg_key_longpress_time;
   772 extern DWORD __mg_key_alwayspress_time;
   773 extern DWORD __mg_interval_time;
   779 #define SetKeyLongPressTime(time)       \   781         __mg_key_longpress_time = time; \   788 #define SetKeyAlwaysPressTime(time)     \   790         __mg_key_alwayspress_time = time; \   797 #define SetIntervalTime(time)           \   799         __mg_interval_time = time;      \   802 #define MSG_LASTKEYMSG      0x001F   812 #define MSG_FIRSTPOSTMSG    0x0020   838 #define MSG_SETCURSOR       0x0020   842     #define HT_UNKNOWN          0x00   844     #define HT_MENUBAR          0x02   845     #define HT_TRANSPARENT      0x03   847     #define HT_BORDER           0x04   848     #define HT_CLIENT           0x0C   850     #define HT_NEEDCAPTURE      0x10   852     #define HT_CLOSEBUTTON      0x15   853     #define HT_MAXBUTTON        0x16   854     #define HT_MINBUTTON        0x17   855     #define HT_HSCROLL          0x18   856     #define HT_VSCROLL          0x19   858     #define HT_DRAGGABLE        0x20   859     #define HT_CAPTION          0x20   862     #define HT_BORDER_MASK      0x28   863     #define HT_BORDER_TOP       0x28   864     #define HT_BORDER_BOTTOM    0x29   865     #define HT_BORDER_LEFT      0x2A   866     #define HT_BORDER_RIGHT     0x2B   869     #define HT_CORNER_MASK      0x2C   870     #define HT_CORNER_TL        0x2C   871     #define HT_CORNER_TR        0x2D   872     #define HT_CORNER_BL        0x2E   873     #define HT_CORNER_BR        0x2F   877     #define HT_SB_MASK          0x50   879     #define HT_SB_LEFTARROW     0x50   880     #define HT_SB_RIGHTARROW    0x51   881     #define HT_SB_LEFTSPACE     0x52   882     #define HT_SB_RIGHTSPACE    0x53   883     #define HT_SB_HTHUMB        0x54   885     #define HT_SB_VMASK         0x58   887     #define HT_SB_UPARROW       0x58   888     #define HT_SB_DOWNARROW     0x59   889     #define HT_SB_UPSPACE       0x5a   890     #define HT_SB_DOWNSPACE     0x5b   891     #define HT_SB_VTHUMB        0x5c   893     #define HT_SB_UNKNOWN       0x5f   896 #define HT_USER_MASK            0x80   904 #define MSG_NCHITTEST       0x0021   912 #define MSG_HITTEST         MSG_NCHITTEST   918 #define MSG_CHANGESIZE      0x0022   921 #define MSG_QUERYNCRECT     0x0023   927 #define MSG_QUERYCLIENTAREA 0x0024   952 #define MSG_SIZECHANGING    0x0025   976 #define MSG_SIZECHANGED     0x0026   994 #define MSG_CSIZECHANGED     0x0027  1006 #define MSG_SETFOCUS        0x0030  1018 #define MSG_KILLFOCUS       0x0031  1028 #define MSG_MOUSEACTIVE     0x0032  1038 #define MSG_ACTIVE          0x0033  1044 #define MSG_CHILDHIDDEN     0x0034  1045     #define RCTM_CLICK          1  1047     #define RCTM_MESSAGE        3  1048     #define RCTM_SHOWCTRL       4  1074 #define MSG_ACTIVEMENU      0x0040  1093 #define MSG_DEACTIVEMENU    0x0041  1105 #define SB_LINEUP           0x01a  1112 #define SB_LINEDOWN         0x02  1119 #define SB_LINELEFT         0x03  1126 #define SB_LINERIGHT        0x04  1133 #define SB_PAGEUP           0x05  1140 #define SB_PAGEDOWN         0x06  1147 #define SB_PAGELEFT         0x07  1154 #define SB_PAGERIGHT        0x08  1161 #define SB_THUMBPOSITION    0x09  1168 #define SB_THUMBTRACK       0x0A  1182 #define SB_BOTTOM           0x0C  1189 #define SB_ENDSCROLL        0x0D  1221 #define MSG_HSCROLL         0x0042  1251 #define MSG_VSCROLL         0x0043  1265 #define MSG_NCSETCURSOR     0x0044  1282 #define MSG_MOUSEMOVEIN     0x0050  1289 #define MSG_WINDOWDROPPED   0x0051  1291 #define MSG_LASTPOSTMSG     0x005F  1301 #define MSG_FIRSTCREATEMSG  0x0060  1330 #define MSG_CREATE          0x0060  1360 #define MSG_NCCREATE        0x0061  1363 #define MSG_INITPANES       0x0062  1364 #define MSG_DESTROYPANES    0x0063  1379 #define MSG_DESTROY         0x0064  1382 #define MSG_NCDESTROY       0x0065  1391 #define MSG_CLOSE           0x0066  1394 #define MSG_NCCALCSIZE      0x0067  1405 #define MSG_MAXIMIZE        0x0068  1416 #define MSG_MINIMIZE        0x0069  1427 #define MSG_HELP            0x006A  1429 #define MSG_LASTCREATEMSG   0x006F  1460 #define MSG_FIRSTEXTRAINPUTMSG  0x0070  1462 #define AXIS_SCROLL_INVALID     0  1463 #define AXIS_SCROLL_VERTICAL    1  1464 #define AXIS_SCROLL_HORIZONTAL  2  1466 #define AXIS_SOURCE_INVALID     0  1467 #define AXIS_SOURCE_WHEEL       1  1468 #define AXIS_SOURCE_FINGER      2  1469 #define AXIS_SOURCE_CONTINUOUS  3  1470 #define AXIS_SOURCE_WHEEL_TILT  4  1493 #define MSG_EXIN_AXIS                   0x0070  1513 #define MSG_EXIN_BUTTONDOWN             0x0071  1533 #define MSG_EXIN_BUTTONUP               0x0072  1547 #define MSG_EXIN_TOUCH_DOWN             0x0073  1555 #define MSG_EXIN_TOUCH_UP               0x0074  1569 #define MSG_EXIN_TOUCH_MOTION           0x0075  1577 #define MSG_EXIN_TOUCH_CANCEL           0x0076  1597 #define MSG_EXIN_TOUCH_FRAME            0x0077  1599 #define SWITCH_INVALID                  0  1600 #define SWITCH_LID                      1  1601 #define SWITCH_TABLET_MODE              2  1603 #define SWITCH_STATE_INVALID            0  1604 #define SWITCH_STATE_ON                 1  1605 #define SWITCH_STATE_OFF                2  1622 #define MSG_EXIN_SWITCH_TOGGLE          0x007A  1635 #define MSG_EXIN_GESTURE_SWIPE_BEGIN    0x0080  1652 #define MSG_EXIN_GESTURE_SWIPE_UPDATE   0x0081  1667 #define MSG_EXIN_GESTURE_SWIPE_END      0x0082  1685 #define MSG_EXIN_GESTURE_PINCH_BEGIN    0x0083  1708 #define MSG_EXIN_GESTURE_PINCH_UPDATE   0x0084  1728 #define MSG_EXIN_GESTURE_PINCH_END      0x0085  1742 #define MSG_EXIN_END_CHANGES            0x008F  1744 #define TABLET_TOOL_X                   0  1745 #define TABLET_TOOL_Y                   1  1746 #define TABLET_TOOL_PRESSURE            2  1747 #define TABLET_TOOL_DISTANCE            3  1748 #define TABLET_TOOL_TILT_X              4  1749 #define TABLET_TOOL_TILT_Y              5  1750 #define TABLET_TOOL_ROTATION            6  1751 #define TABLET_TOOL_SLIDER              7  1752 #define TABLET_TOOL_SIZE_MAJOR          8  1753 #define TABLET_TOOL_SIZE_MINOR          9  1754 #define TABLET_TOOL_WHEEL               10  1756 #define TABLET_TOOL_PROXIMITY_STATE_INVALID 0  1757 #define TABLET_TOOL_PROXIMITY_STATE_OUT     1  1758 #define TABLET_TOOL_PROXIMITY_STATE_IN      2  1760 #define TABLET_TOOL_TIP_INVALID         0  1761 #define TABLET_TOOL_TIP_UP              1  1762 #define TABLET_TOOL_TIP_DOWN            2  1764 #define TABLET_BUTTON_STATE_INVALID     0  1765 #define TABLET_BUTTON_STATE_RELEASED    1  1766 #define TABLET_BUTTON_STATE_PRESSED     2  1816 #define MSG_EXIN_TABLET_TOOL_AXIS       0x0090  1839 #define MSG_EXIN_TABLET_TOOL_PROXIMITY  0x0091  1862 #define MSG_EXIN_TABLET_TOOL_TIP        0x0092  1879 #define MSG_EXIN_TABLET_TOOL_BUTTON     0x0093  1898 #define MSG_EXIN_TABLET_PAD_BUTTON      0x0094  1900 #define TABLET_PAD_RING_SOURCE_UNKNOWN  0  1901 #define TABLET_PAD_RING_SOURCE_FINGER   1  1926 #define MSG_EXIN_TABLET_PAD_RING        0x0095  1928 #define TABLET_PAD_STRIP_SOURCE_UNKNOWN 0  1929 #define TABLET_PAD_STRIP_SOURCE_FINGER  1  1953 #define MSG_EXIN_TABLET_PAD_STRIP       0x0096  1968 #define MSG_EXIN_USER_BEGIN             0x009A  1983 #define MSG_EXIN_USER_UPDATE            0x009B  1998 #define MSG_EXIN_USER_END               0x009C  2000 #define MSG_LASTEXTRAINPUTMSG   0x009F  2010 #define MSG_FIRSTPAINTMSG   0x00A0  2036 #define MSG_SHOWWINDOW      0x00A0  2056 #define MSG_ERASEBKGND      0x00B0        2071 #define MSG_PAINT           0x00B1  2088 #define MSG_NCPAINT         0x00B2  2094 #define MSG_NCACTIVATE      0x00B3  2100 #define MSG_SYNCPAINT       0x00B4  2102 #define MSG_LASTPAINTMSG    0x00BF  2112 #define MSG_FIRSTSESSIONMSG 0x00C0  2114 #define MSG_STARTSESSION    0x00C0  2115 #define MSG_QUERYENDSESSION 0x00C1  2116 #define MSG_ENDSESSION      0x00C2  2117 #define MSG_REINITSESSION   0x00C3  2119 #define MSG_ERASEDESKTOP    0x00CE  2120 #define MSG_PAINTDESKTOP    0x00CF  2122 #define MSG_DT_MOUSEOFF     0x00D0  2141 #define MSG_DT_LBUTTONDOWN      0x00D1  2160 #define MSG_DT_LBUTTONUP        0x00D2  2179 #define MSG_DT_LBUTTONDBLCLK    0x00D3  2198 #define MSG_DT_MOUSEMOVE        0x00D4  2218 #define MSG_DT_RBUTTONDOWN      0x00D5  2237 #define MSG_DT_RBUTTONUP        0x00D6  2256 #define MSG_DT_RBUTTONDBLCLK    0x00D7  2276 #define MSG_DT_MBUTTONDOWN      0x00D8  2295 #define MSG_DT_MBUTTONUP        0x00D9  2314 #define MSG_DT_MBUTTONDBLCLK    0x00DA  2316 #define MSG_DT_KEYOFF           0x00CB  2335 #define MSG_DT_KEYDOWN          0x00E0  2337 #define MSG_DT_CHAR             0x00E1  2355 #define MSG_DT_KEYUP            0x00E2  2357 #define MSG_DT_SYSKEYDOWN       0x00E3  2358 #define MSG_DT_SYSCHAR          0x00E4  2359 #define MSG_DT_SYSKEYUP         0x00E5  2361 #define MSG_DT_KEYLONGPRESS     0x00E6  2362 #define MSG_DT_KEYALWAYSPRESS   0x00E7  2364 #define MSG_LASTSESSIONMSG      0x00EF  2374 #define MSG_FIRSTWINDOWMSG  0x00F0  2376 #define MSG_ADDNEWMAINWIN   0x00F0  2377 #define MSG_REMOVEMAINWIN   0x00F1  2378 #define MSG_MOVETOTOPMOST   0x00F2  2379 #define MSG_SETACTIVEMAIN   0x00F3  2380 #define MSG_GETACTIVEMAIN   0x00F4  2381 #define MSG_SHOWMAINWIN     0x00F5  2382 #define MSG_HIDEMAINWIN     0x00F6  2383 #define MSG_MOVEMAINWIN     0x00F7  2384 #define MSG_SETCAPTURE      0x00F8  2385 #define MSG_GETCAPTURE      0x00F9  2387 #define MSG_ENDTRACKMENU    0x00FA  2388 #define MSG_TRACKPOPUPMENU  0x00FB  2389 #define MSG_CLOSEMENU       0x00FC  2390 #define MSG_SCROLLMAINWIN   0x00FD  2391 #define MSG_CARET_CREATE    0x00FE  2392 #define MSG_CARET_DESTROY   0x00FF  2394 #define MSG_ENABLEMAINWIN   0x0100  2395 #define MSG_ISENABLED       0x0101  2397 #define MSG_SETWINCURSOR    0x0102  2399 #define MSG_GETNEXTMAINWIN  0x0103  2401 #define MSG_SHOWGLOBALCTRL  0x010A  2402 #define MSG_HIDEGLOBALCTRL  0x010B  2404 typedef struct _DRAGINFO {
  2410 #define MSG_STARTDRAGWIN    0x010C  2412 #define MSG_CANCELDRAGWIN   0x010D  2414 #define MSG_CHANGECAPTION   0x010E  2416 #define MSG_LASTWINDOWMSG   0x010F  2426 #define MSG_FIRSTCONTROLMSG 0x0120  2457 #define MSG_COMMAND         0x0120  2463 #define MSG_SYSCOMMAND      0x0121  2469 #define MSG_GETDLGCODE      0x0122  2497 #define MSG_INITDIALOG      0x0123  2500 #define MSG_NEXTDLGCTRL     0x0124  2501 #define MSG_ENTERIDLE       0x0125  2507 #define MSG_DLG_GETDEFID    0x0126  2513 #define MSG_DLG_SETDEFID    0x0127  2523 #define MSG_ISDIALOG        0x0128  2542 #define MSG_INITPAGE        0x0129  2564 #define MSG_SHOWPAGE        0x012A  2585 #define MSG_SHEETCMD        0x012B  2606 #define MSG_INITCONTAINER   0x012C  2636 #define MSG_SVCONTCMD       0x012D  2656 #define MSG_FREEZECTRL      0x012E  2676 #define MSG_FONTCHANGING    0x0130  2686 #define MSG_FONTCHANGED     0x0131  2705 #define MSG_GETTEXTLENGTH   0x0132  2729 #define MSG_GETTEXT         0x0133  2751 #define MSG_SETTEXT         0x0134  2766 #define MSG_ENABLE          0x0135  2768 #define MSG_LASTCONTROLMSG  0x013F  2778 #define MSG_FIRSTSYSTEMMSG  0x0140  2780 #define MSG_QUIT            0x0140  2789 #define MSG_IDLE            0x0142  2791 #define MSG_TIMEOUT         0x0143  2808 #define MSG_TIMER           0x0144  2810 #define MSG_CARETBLINK      0x0145  2812 #ifndef _MGRM_THREADS  2841 #define MSG_FDEVENT         0x0146  2856 #define MSG_SRVNOTIFY       0x0147  2858 #ifdef _MGRM_PROCESSES  2859     #define MSG_UPDATECLIWIN    0x0148  2877 #define MSG_DOESNEEDIME     0x0150  2880 #define IME_STATUS_REGISTERED   0x0000  2881 #define IME_STATUS_ENABLED      0x0001  2882 #define IME_STATUS_AUTOTRACK    0x0002  2883 #define IME_STATUS_LANGUAGE     0x0003  2884     #define IME_LANGUAGE_UNKNOWN    0x0000  2885     #define IME_LANGUAGE_LATIN      0x0001  2886     #define IME_LANGUAGE_ZHCN       0x0002  2887     #define IME_LANGUAGE_ZHTW       0x0003  2888 #define IME_STATUS_ENCODING     0x0004  2889     #define IME_ENCODING_LOCAL      0x0000  2890     #define IME_ENCODING_UTF8       0x0001  2891 #define IME_STATUS_VERSION          0x0005  2892 #define IME_STATUS_USER_MIN         0x0006  2893 #define IME_STATUS_USER_MAX         0x0020  2896 #define IME_WINDOW_TYPE_NOT_EDITABLE    0x0000  2897 #define IME_WINDOW_TYPE_EDITABLE        0x0001  2898 #define IME_WINDOW_TYPE_READONLY        0x0002  2899 #define IME_WINDOW_TYPE_PASSWORD        0x0003  2902 #define MSG_IME_REGISTER    0x0151  2903 #define MSG_IME_UNREGISTER  0x0152  2904 #define MSG_IME_OPEN        0x0153  2905 #define MSG_IME_CLOSE       0x0154  2906 #define MSG_IME_SETSTATUS   0x0156  2907 #define MSG_IME_GETSTATUS   0x0157  2908 #define MSG_IME_SETTARGET   0x0158  2909 #define MSG_IME_GETTARGET   0x0159  2910 #define MSG_IME_SETPOS      0x015A  2911 #define MSG_IME_GETPOS      0x015B  2914 #define MSG_IME_SET_TARGET_INFO   0x015C  2915 #define MSG_IME_GET_TARGET_INFO   0x015D  2917 #define MSG_SHOWMENU        0x0160  2918 #define MSG_HIDEMENU        0x0161  2920 #define MSG_ADDTIMER        0x0162  2921 #define MSG_REMOVETIMER     0x0163  2922 #define MSG_RESETTIMER      0x0164  2924 #define MSG_WINDOWCHANGED   0x0165  2926 #define MSG_BROADCASTMSG    0x0166  2928 #define MSG_REGISTERWNDCLASS    0x0167  2929 #define MSG_UNREGISTERWNDCLASS  0x0168  2930 #define MSG_NEWCTRLINSTANCE     0x0169  2931 #define MSG_REMOVECTRLINSTANCE  0x016A  2932 #define MSG_GETCTRLCLASSINFO    0x016B  2933 #define MSG_CTRLCLASSDATAOP     0x016C  2934     #define CCDOP_GETCCI        0x01  2935     #define CCDOP_SETCCI        0x02  2937 #define MSG_REGISTERKEYHOOK     0x016D  2938 #define MSG_REGISTERMOUSEHOOK   0x016E  2940 #define MSG_LASTSYSTEMMSG   0x016F  2950 #define MSG_FIRSTMENUMSG    0x0170  2953 #define MSG_INITMENU        0x0170  2954 #define MSG_INITMENUPOPUP   0x0171  2955 #define MSG_MENUSELECT      0x0172  2956 #define MSG_MENUCHAR        0x0173  2957 #define MSG_ENTERMENULOOP   0x0174  2958 #define MSG_EXITMENULOOP    0x0175  2959 #define MSG_CONTEXTMENU     0x0176  2960 #define MSG_NEXTMENU        0x0177  2962 #define MSG_LASTMENUMSG     0x018F  2971 #define MSG_FIRSTUSERMSG    0x0800  2981 #define MSG_USER            0x0800  2983 #define MSG_LASTUSERMSG     0xEFFF  3020 #ifdef _MGRM_THREADS  3027 #define QS_NOTIFYMSG        0x10000000  3028 #ifdef _MGRM_THREADS  3029   #define QS_SYNCMSG        0x20000000  3031   #define QS_DESKTIMER      0x20000000  3033 #define QS_POSTMSG          0x40000000  3034 #define QS_QUIT             0x80000000  3035 #define QS_INPUT            0x01000000  3036 #define QS_PAINT            0x02000000  3037 #define QS_TIMER            0x0000FFFF  3038 #define QS_EMPTY            0x00000000  3045 #define PM_NOREMOVE     0x0000  3052 #define PM_REMOVE       0x0001  3059 #define PM_NOYIELD      0x0002  3089                 UINT nMsgFilterMin, 
UINT nMsgFilterMax,
  3176                          UINT nMsgFilterMax, 
UINT uRemoveMsg)
  3178     return PeekMessageEx (pMsg, hWnd, nMsgFilterMin, nMsgFilterMax,
  3209                 UINT nMsgFilterMax, 
UINT uRemoveMsg);
  3271 #ifndef _MGRM_THREADS  3279 #define SendAsyncMessage SendMessage  3281 #ifdef _MGRM_PROCESSES  3283 #define CLIENTS_TOPMOST          -1  3284 #define CLIENTS_ALL              -2  3285 #define CLIENTS_EXCEPT_TOPMOST   -3  3286 #define CLIENT_ACTIVE            -4  3318 int GUIAPI Send2Client (
const MSG* msg, 
int cli);
  3361 BOOL GUIAPI Send2ActiveWindow (
const MG_Layer* layer,
  3463 #define KBD_LAYOUT_DEFAULT  "default"  3464 #define KBD_LAYOUT_FRPC     "frpc"  3465 #define KBD_LAYOUT_FR       "fr"  3466 #define KBD_LAYOUT_DE       "de"  3467 #define KBD_LAYOUT_DELATIN1 "delatin1"  3468 #define KBD_LAYOUT_IT       "it"  3469 #define KBD_LAYOUT_ES       "es"  3470 #define KBD_LAYOUT_ESCP850  "escp850"  3471 #define KBD_LAYOUT_HEBREW   "hebrew"  3472 #define KBD_LAYOUT_ARABIC   "arabic"  3513 #ifdef _MGCHARSET_UNICODE  3518 MG_EXPORT 
int GUIAPI ToUnicode (
UINT keycode, 
const BYTE* kbd_state,
  3519         wchar_t* wcs, 
int wcs_len, 
const char* kbd_layout);
  3521 MG_EXPORT 
int GUIAPI ToAscii (
UINT keycode, 
const BYTE* kbd_state,
  3522         WORD* ch, 
const char* kbd_layout);
  3605 #ifndef _MGRM_THREADS  3625 #ifdef _MGHAVE_MSG_STRING  3641 MG_EXPORT 
const char* GUIAPI Message2Str (
UINT message);
  3659 MG_EXPORT 
void GUIAPI PrintMessage (FILE* fp, 
HWND hWnd,
  3683 #ifndef _MGRM_PROCESSES  3743 #ifndef _MGRM_THREADS  3775 #ifdef _MGRM_PROCESSES  3798 MG_EXPORT 
HWND GUIAPI RegisterKeyHookWindow (
HWND hwnd, 
DWORD flag);
  3821 MG_EXPORT 
HWND GUIAPI RegisterMouseHookWindow (
HWND hwnd, 
DWORD flag);
  3838 #define WS_CTRLMASK         0x0000FFFFL  3844 #define WS_NONE             0x00000000L  3850 #define WS_CHILD            0x40000000L  3856 #define WS_CAPTION          0x20000000L  3862 #define WS_SYSMENU          0x10000000L  3868 #define WS_VISIBLE          0x08000000L  3874 #define WS_DISABLED         0x04000000L  3877 #define WS_MINIMIZE         0x02000000L  3878 #define WS_MAXIMIZE         0x01000000L  3885 #define WS_DLGFRAME         0x00800000L  3891 #define WS_BORDER           0x00400000L  3897 #define WS_THICKFRAME       0x00200000L  3903 #define WS_THINFRAME        0x00100000L  3909 #define WS_VSCROLL          0x00080000L  3915 #define WS_HSCROLL          0x00040000L  3922 #define WS_GROUP            0x00020000L  3930 #define WS_TABSTOP          0x00010000L  3939 #define WS_MINIMIZEBOX      0x00020000L  3948 #define WS_MAXIMIZEBOX      0x00010000L  3951 #define WS_OVERLAPPED       0x00000000L  3952 #define WS_ABSSCRPOS        0x00000000L  3958 #define WS_EX_CONTROL_MASK      0x0000000FL  3964 #define WS_EX_INTERNAL_MASK     0xF0000000L  3970 #define WS_EX_NONE              0x00000000L  3976 #define WS_EX_TROUNDCNS         0x00000010L  3982 #define WS_EX_BROUNDCNS         0x00000020L  3990 #define WS_EX_USEPRIVATECDC     0x00000040L  3996 #define WS_EX_NOTDRAGGABLE      0x00000080L  3997 #define WS_EX_DRAGGABLE         0x00000000L  4003 #define WS_EX_USEPARENTFONT     0x00000100L  4009 #define WS_EX_USEPARENTCURSOR   0x00000200L  4015 #define WS_EX_USEPARENTRDR      0x00000400L  4023 #define WS_EX_NOPARENTNOTIFY    0x00000800L  4031 #define WS_EX_AUTOSECONDARYDC   0x00001000L  4038 #define WS_EX_TRANSPARENT       0x00002000L  4044 #define WS_EX_TOPMOST           0x00004000L  4050 #define WS_EX_TOOLWINDOW        0x00008000L  4053 #define WS_EX_RIGHT             0x00010000L  4054 #define WS_EX_LEFT              0x00000000L  4055 #define WS_EX_RTLREADING        0x00020000L  4056 #define WS_EX_LTRREADING        0x00000000L  4062 #define WS_EX_LEFTSCROLLBAR     0x00040000L  4068 #define WS_EX_RIGHTSCROLLBAR    0x00000000L  4074 #define WS_EX_DLGHIDE           0x00100000L  4080 #define WS_EX_NOCLOSEBOX        0x00400000L  4086 #define WS_EX_CLIPCHILDREN      0x00800000L  4092 #define WS_EX_LFRDR_MASK        0x0F000000L  4099 #define WS_EX_LFRDR_CUSTOM1     0x01000000L  4107 #define WS_EX_LFRDR_CUSTOM2     0x02000000L  4115 #define WS_EX_LFRDR_CUSTOM3     0x04000000L  4123 #define WS_EX_LFRDR_CUSTOM4     0x08000000L  4126 #define WS_EX_IMECOMPOSE        0x00000000L  4144 #define WE_FONTS_NUMBER             4  4150 #define WE_METRICS_NUMBER           6  4156 #define WE_COLORS_NUMBER            14  4159 #define WE_ATTR_TYPE_MASK           0xF000  4160 #define WE_ATTR_TYPE_COLOR_MASK     0x0F00  4161 #define WE_ATTR_INDEX_MASK          0x00FF  4163 #define WE_ATTR_TYPE_FONT           0x1000  4164 #define WE_ATTR_TYPE_METRICS        0x2000  4166 #define WE_ATTR_TYPE_COLOR          0x3000  4167 #define WE_ATTR_TYPE_FGC            0x3000  4168 #define WE_ATTR_TYPE_BGCA           0x3100  4169 #define WE_ATTR_TYPE_BGCB           0x3200  4172 #define WE_CAPTION                  0  4174 #define WE_MESSAGEBOX               2  4175 #define WE_TOOLTIP                  3  4176 #define WE_WND_BORDER               4  4177 #define WE_SCROLLBAR                5  4178 #define WE_INACTIVE_CAPTION         6  4180 #define WE_THREED_BODY              8  4181 #define WE_SELECTED_ITEM            9  4182 #define WE_DISABLED_ITEM            10  4183 #define WE_HIGHLIGHT_ITEM           11  4184 #define WE_SIGNIFICANT_ITEM         12  4185 #define WE_DESKTOP                  13  4190 #define WE_FONT_CAPTION             (WE_CAPTION | WE_ATTR_TYPE_FONT)  4191 #define WE_METRICS_CAPTION          (WE_CAPTION | WE_ATTR_TYPE_METRICS)  4192 #define WE_FGC_ACTIVE_CAPTION       (WE_CAPTION | WE_ATTR_TYPE_FGC)  4193 #define WE_BGCA_ACTIVE_CAPTION      (WE_CAPTION | WE_ATTR_TYPE_BGCA)  4194 #define WE_BGCB_ACTIVE_CAPTION      (WE_CAPTION | WE_ATTR_TYPE_BGCB)  4197 #define WE_FONT_MENU                (WE_MENU | WE_ATTR_TYPE_FONT)  4198 #define WE_METRICS_MENU             (WE_MENU | WE_ATTR_TYPE_METRICS)  4199 #define WE_FGC_MENU                 (WE_MENU | WE_ATTR_TYPE_FGC)  4200 #define WE_BGC_MENU                 (WE_MENU | WE_ATTR_TYPE_BGCA)  4203 #define WE_FONT_MESSAGEBOX          (WE_MESSAGEBOX | WE_ATTR_TYPE_FONT)  4204 #define WE_FGC_MESSAGEBOX           (WE_MESSAGEBOX | WE_ATTR_TYPE_FGC)  4207 #define WE_FONT_TOOLTIP             (WE_TOOLTIP | WE_ATTR_TYPE_FONT)  4208 #define WE_FGC_TOOLTIP              (WE_TOOLTIP | WE_ATTR_TYPE_FGC)  4209 #define WE_BGC_TOOLTIP              (WE_TOOLTIP | WE_ATTR_TYPE_BGCA)  4212 #define WE_METRICS_WND_BORDER       (WE_WND_BORDER | WE_ATTR_TYPE_METRICS)  4213 #define WE_FGC_ACTIVE_WND_BORDER    (WE_WND_BORDER | WE_ATTR_TYPE_FGC)  4214 #define WE_FGC_INACTIVE_WND_BORDER  (WE_WND_BORDER | WE_ATTR_TYPE_BGCA)  4217 #define WE_METRICS_SCROLLBAR        (WE_SCROLLBAR | WE_ATTR_TYPE_METRICS)  4220 #define WE_FGC_INACTIVE_CAPTION     (WE_INACTIVE_CAPTION | WE_ATTR_TYPE_FGC)  4221 #define WE_BGCA_INACTIVE_CAPTION    (WE_INACTIVE_CAPTION | WE_ATTR_TYPE_BGCA)  4222 #define WE_BGCB_INACTIVE_CAPTION    (WE_INACTIVE_CAPTION | WE_ATTR_TYPE_BGCB)  4225 #define WE_FGC_WINDOW               (WE_WINDOW | WE_ATTR_TYPE_FGC)  4226 #define WE_BGC_WINDOW               (WE_WINDOW | WE_ATTR_TYPE_BGCA)  4229 #define WE_FGC_THREED_BODY          (WE_THREED_BODY | WE_ATTR_TYPE_FGC)  4230 #define WE_MAINC_THREED_BODY        (WE_THREED_BODY | WE_ATTR_TYPE_BGCA)  4233 #define WE_FGC_SELECTED_ITEM        (WE_SELECTED_ITEM | WE_ATTR_TYPE_FGC)  4234 #define WE_BGC_SELECTED_ITEM        (WE_SELECTED_ITEM | WE_ATTR_TYPE_BGCA)  4235 #define WE_BGC_SELECTED_LOSTFOCUS   (WE_SELECTED_ITEM | WE_ATTR_TYPE_BGCB)  4238 #define WE_FGC_DISABLED_ITEM        (WE_DISABLED_ITEM | WE_ATTR_TYPE_FGC)  4239 #define WE_BGC_DISABLED_ITEM        (WE_DISABLED_ITEM | WE_ATTR_TYPE_BGCA)  4242 #define WE_FGC_HIGHLIGHT_ITEM       (WE_HIGHLIGHT_ITEM | WE_ATTR_TYPE_FGC)  4243 #define WE_BGC_HIGHLIGHT_ITEM       (WE_HIGHLIGHT_ITEM | WE_ATTR_TYPE_BGCA)  4246 #define WE_FGC_SIGNIFICANT_ITEM     (WE_SIGNIFICANT_ITEM | WE_ATTR_TYPE_FGC)  4247 #define WE_BGC_SIGNIFICANT_ITEM     (WE_SIGNIFICANT_ITEM | WE_ATTR_TYPE_BGCA)  4250 #define WE_BGC_DESKTOP              (WE_DESKTOP | WE_ATTR_TYPE_BGCA)  4252 #define WE_ATTR_TYPE_ICON           0x4000  4253 #define WE_ATTR_TYPE_ICON_MASK      0x0F00  4254 #define WE_ATTR_TYPE_SMALLICON      0x4000  4255 #define WE_ATTR_TYPE_LARGEICON      0x4100  4257 #define WE_LARGEICON_APPLICATION    (WE_ATTR_TYPE_LARGEICON | 0x00)  4258 #define WE_LARGEICON_HAND           (WE_ATTR_TYPE_LARGEICON | 0x01)  4259 #define WE_LARGEICON_QUESTION       (WE_ATTR_TYPE_LARGEICON | 0x02)  4260 #define WE_LARGEICON_EXCLAMATION    (WE_ATTR_TYPE_LARGEICON | 0x03)  4261 #define WE_LARGEICON_ASTERISK       (WE_ATTR_TYPE_LARGEICON | 0x04)  4262 #define WE_LARGEICON_STOP           WE_LARGEICON_HAND  4263 #define WE_LARGEICON_INFORMATION    WE_LARGEICON_ASTERISK  4265 #define WE_SMALLICON_APPLICATION    (WE_ATTR_TYPE_SMALLICON | 0x00)  4266 #define WE_SMALLICON_HAND           (WE_ATTR_TYPE_SMALLICON | 0x01)  4267 #define WE_SMALLICON_QUESTION       (WE_ATTR_TYPE_SMALLICON | 0x02)  4268 #define WE_SMALLICON_EXCLAMATION    (WE_ATTR_TYPE_SMALLICON | 0x03)  4269 #define WE_SMALLICON_ASTERISK       (WE_ATTR_TYPE_SMALLICON | 0x04)  4270 #define WE_SMALLICON_STOP           WE_SMALLICON_HAND  4271 #define WE_SMALLICON_INFORMATION    WE_SMALLICON_ASTERISK  4277 #define WE_ATTR_TYPE_RDR                0x5000  4279 #define WE_LFFLAT_NUMBER                1  4280 #ifdef _MGLF_RDR_FLAT  4282 #define WE_LFFLAT_TAB_NRMLCLR           (WE_ATTR_TYPE_RDR | 0)  4285 #define WE_LFSKIN_NUMBER                28  4286 #ifdef _MGLF_RDR_SKIN  4287 #define WE_LFSKIN_WND_BKGND             (WE_ATTR_TYPE_RDR | 0)  4289 #define WE_LFSKIN_CAPTION               (WE_ATTR_TYPE_RDR | 1)  4290 #define WE_LFSKIN_CAPTION_BTN           (WE_ATTR_TYPE_RDR | 2)  4292 #define WE_LFSKIN_SCROLLBAR_VSHAFT      (WE_ATTR_TYPE_RDR | 3)  4293 #define WE_LFSKIN_SCROLLBAR_VTHUMB      (WE_ATTR_TYPE_RDR | 4)  4294 #define WE_LFSKIN_SCROLLBAR_HSHAFT      (WE_ATTR_TYPE_RDR | 5)  4295 #define WE_LFSKIN_SCROLLBAR_HTHUMB      (WE_ATTR_TYPE_RDR | 6)  4296 #define WE_LFSKIN_SCROLLBAR_ARROWS      (WE_ATTR_TYPE_RDR | 7)  4298 #define WE_LFSKIN_BORDER_TOP            (WE_ATTR_TYPE_RDR | 8)  4299 #define WE_LFSKIN_BORDER_BOTTOM         (WE_ATTR_TYPE_RDR | 9)  4300 #define WE_LFSKIN_BORDER_LEFT           (WE_ATTR_TYPE_RDR | 10)  4301 #define WE_LFSKIN_BORDER_RIGHT          (WE_ATTR_TYPE_RDR | 11)  4303 #define WE_LFSKIN_ARROWS                (WE_ATTR_TYPE_RDR | 12)  4304 #define WE_LFSKIN_ARROWS_SHELL          (WE_ATTR_TYPE_RDR | 13)  4306 #define WE_LFSKIN_RADIOBUTTON           (WE_ATTR_TYPE_RDR | 14)  4307 #define WE_LFSKIN_CHECKBUTTON           (WE_ATTR_TYPE_RDR | 15)  4308 #define WE_LFSKIN_PUSHBUTTON            (WE_ATTR_TYPE_RDR | 16)  4310 #define WE_LFSKIN_TREE                  (WE_ATTR_TYPE_RDR | 17)  4312 #define WE_LFSKIN_HEADER                (WE_ATTR_TYPE_RDR | 18)  4313 #define WE_LFSKIN_TAB                   (WE_ATTR_TYPE_RDR | 19)  4315 #define WE_LFSKIN_PROGRESS_HCHUNK       (WE_ATTR_TYPE_RDR | 20)  4316 #define WE_LFSKIN_PROGRESS_VCHUNK       (WE_ATTR_TYPE_RDR | 21)  4317 #define WE_LFSKIN_PROGRESS_HTRACKBAR    (WE_ATTR_TYPE_RDR | 22)  4318 #define WE_LFSKIN_PROGRESS_VTRACKBAR    (WE_ATTR_TYPE_RDR | 23)  4320 #define WE_LFSKIN_TBSLIDER_H            (WE_ATTR_TYPE_RDR | 24)  4321 #define WE_LFSKIN_TRACKBAR_VERT         (WE_ATTR_TYPE_RDR | 25)  4322 #define WE_LFSKIN_TRACKBAR_HORZ         (WE_ATTR_TYPE_RDR | 26)  4323 #define WE_LFSKIN_TBSLIDER_V            (WE_ATTR_TYPE_RDR | 27)  4337 #define SBS_NORMAL                  0x00  4338 #define SBS_DISABLED                0x01  4339 #define SBS_HIDE                    0x02  4397 #define SBS_DISABLED_LTUP       0x0100  4400 #define SBS_DISABLED_BTDN       0x0200  4403 #define SBS_HILITE_LTUP         0x0400  4406 #define SBS_HILITE_BTDN         0x0800  4409 #define SBS_HILITE_THUMB        0x0010  4412 #define SBS_PRESSED_LTUP        0x0020  4415 #define SBS_PRESSED_BTDN        0x0040  4418 #define SBS_PRESSED_THUMB       0x0080  4421 #define LFRDR_WINTYPE_UNKNOWN           0  4422 #define LFRDR_WINTYPE_DIALOG            1  4423 #define LFRDR_WINTYPE_MAINWIN           2  4424 #define LFRDR_WINTYPE_CONTROL           3  4458 #define LFRDR_METRICS_MASK              0xFF00  4459 #define LFRDR_METRICS_BORDER            0x0100  4460 #define LFRDR_METRICS_CAPTION_H         0x0200  4461 #define LFRDR_METRICS_ICON_H            0x0300  4462 #define LFRDR_METRICS_ICON_W            0x0400  4463 #define LFRDR_METRICS_MENU_H            0x0500  4464 #define LFRDR_METRICS_VSCROLL_W         0x0600  4465 #define LFRDR_METRICS_HSCROLL_H         0x0700  4466 #define LFRDR_METRICS_MINWIN_WIDTH      0x0800  4467 #define LFRDR_METRICS_MINWIN_HEIGHT     0x0900  4469 #define LFRDR_SB_MINBARLEN        10  4475 #define LEN_RENDERER_NAME           15  4478 #define LFRDR_BTN_STATUS_MASK       0x03  4479 #define LFRDR_BTN_STATUS_NORMAL     0x00  4480 #define LFRDR_BTN_STATUS_HILITE     0x01  4481 #define LFRDR_BTN_STATUS_PRESSED    0x02  4482 #define LFRDR_BTN_STATUS_DISABLED   0x03  4485 #define LFRDR_BTN_STATUS_SELECTED   0x04  4488 #define LFRDR_BTN_STATUS_INACTIVE   0x08  4491 #define LFRDR_3DBOX_THICKFRAME      0x20  4494 #define LFRDR_3DBOX_FILLED          0x40  4497 #define LFRDR_MARK_SELECTED_MASK    0x05  4498 #define LFRDR_MARK_ALL_SELECTED     0x01  4499 #define LFRDR_MARK_HALF_SELECTED    0x04  4502 #define LFRDR_MARK_HAVESHELL        0x02  4505 #define LFRDR_ARROW_DIRECT_MASK     0x0F00  4506 #define LFRDR_ARROW_LEFT            0x0000  4507 #define LFRDR_ARROW_RIGHT           0x0100  4508 #define LFRDR_ARROW_UP              0x0200  4509 #define LFRDR_ARROW_DOWN            0x0300  4512 #define LFRDR_ARROW_NOFILL          0x1000  4513 #define LFRDR_ARROW_HAVESHELL       0x2000  4516 #define LFRDR_MENUITEMOFFY_MIN      4  4518 #define LFRDR_3DBOX_COLOR_LIGHTEST  0x01  4519 #define LFRDR_3DBOX_COLOR_DARKEST   0x02  4520 #define LFRDR_3DBOX_COLOR_LIGHTER   0x03  4521 #define LFRDR_3DBOX_COLOR_DARKER    0x04  4524 #define LFRDR_TAB_BOTTOM            0x0001  4525 #define LFRDR_TAB_ACTIVE            0x0010  4526 #define LFRDR_TAB_ICON              0x0100  4529 #define LFRDR_TREE_WITHICON         0x08  4530 #define LFRDR_TREE_FOLD             0x01  4533 #define LFRDR_TREE_CHILD            0x02  4534 #define LFRDR_TREE_NEXT             0x04  4536 #define SYSICO_ITEM_NUMBER          5  4547     int (*init) (PWERENDERER renderer);
  4553     int (*deinit) (PWERENDERER renderer);
  4649             int status, 
int next);
  4702     void (*draw_radio_button) (
HWND hWnd, 
HDC hdc, 
const RECT* pRect, 
int status);
  4720     void (*draw_check_button) (
HWND hWnd, 
HDC hdc, 
const RECT* pRect, 
int status);
  4741     void (*draw_caption_button) (
HWND hwnd, 
HDC hdc, 
int ht_code, 
int state);
  4757     void (*draw_scrollbar) (
HWND hWnd, 
HDC hdc, 
int sb_pos);
  4773     int (*calc_we_area) (
HWND hWnd, 
int which, 
RECT* we_area);
  4805     int (*hit_test) (
HWND hWnd, 
int x, 
int y);
  4808     int (*on_click_hotspot) (
HWND hWnd, 
int which);
  4819     void (*draw_custom_hotspot) (
HWND hWnd, 
HDC hdc, 
int ht_code, 
int state);
  4831     void (*disabled_text_out) (
HWND hWnd, 
HDC hdc, 
const char* spText,
  4849             int nMax, 
int nMin, 
int nPos, 
BOOL fVertical);
  5117         HDC hdc, 
int we_attr_id);
  5281         const unsigned char* data, 
size_t data_size);
  5364 typedef unsigned long RES_KEY;
  5365 #define RES_KEY_INVALID 0  5368 typedef struct _INNER_RES {
  5378     const void* additional;
  5383     RES_TYPE_INVALID = 0xFF,
  5403 #ifdef _MGHAVE_CURSOR  5440     RES_TYPE_USER_MAX = 0x7F
  5444 typedef struct _MEM_RES {
  5449 typedef struct _FONT_RES {
  5460 #define REF_SRC_NOTYPE 0x00  5463 #define REF_SRC_FILE 0x01  5466 #define REF_SRC_INNER 0x02  5469 #define REF_SRC_SHARED 0x03  5472 #define REF_SRC_OUTSIDE 0x04  5475 #define REF_SRC_STREAM 0x05  5478 #define REF_SRC_LOGIC 0x06  5481 typedef struct _RESOURCE {
  5491 typedef struct _RES_TYPE_OPS {
  5498     void* (*get_res_data)(RESOURCE* res, 
int src_type, 
DWORD usr_param);
  5501     void (*unload)(RESOURCE* res, 
int src_type);
  5507     RES_RET_INVALID_PARAM,
  5508     RES_RET_NOT_EXIST_KEY, 
  5509     RES_RET_LOAD_FILE_FAILED,
  5510     RES_RET_LOAD_MEM_FAILED,
  5511     RES_RET_UNKNOWN_TYPE,
  5512     RES_RET_NOT_IMPLEMENTED,
  5555 MG_EXPORT 
int AddInnerRes (INNER_RES* inner_res, 
int count, 
BOOL copy);
  5560 MG_EXPORT 
int AddSharedRes (
const char* shared_name);
  5672 #define LoadBitmapFromRes(hdc, res_name) \  5673     (PBITMAP)LoadResource(res_name, RES_TYPE_IMAGE, (DWORD)hdc)  5675 #define GetBitmapFromRes(key) (BITMAP*)GetResource(key)  5677 #define GetIconFromRes(key) (HICON)GetResource(key)  5679 #ifndef _MGHAVE_CURSOR  5680 #define GetCursorFromRes(key) (HCURSOR)GetResource(key)  5683 #define GetEtcFromRes(key) (GHANDLE)GetResource(key)  5685 #define LoadLogicFontFromRes(font_name)  (PLOGFONT)LoadResource(font_name, RES_TYPE_FONT, 0)  5686 #define GetLogicFontFromRes(font_name)   (PLOGFONT)GetResource(Str2Key(font_name))  5687 #define ReleaseLogicFont(font)  ReleaseRes(((FONT_RES*)(font))->key)  5688 #define ReleaseLogicFontByName(font_name)  ReleaseRes(Str2Key(font_name))  5701 MG_EXPORT RES_KEY 
Str2Key (
const char* str);
  5704 #ifdef __TARGET_MSTUDIO__  5714 MG_EXPORT 
int GUIAPI GetWindowZOrder(
HWND hWnd);
  5725 MG_EXPORT 
int GUIAPI SetWindowZOrder(
HWND hWnd, 
int zorder);
  5747 extern MG_EXPORT HWND __mg_hwnd_desktop;
  5753 #define HWND_DESKTOP        __mg_hwnd_desktop  5759 #define HWND_NULL           ((HWND)0)  5765 #define HWND_INVALID        ((HWND)-1)  5767 #define HWND_OTHERPROC      ((HWND)-1)  5812 #ifdef _MGRM_THREADS  5824 MG_EXPORT 
int GUIAPI CreateThreadForMainWindow(pthread_t* thread,
  5825                                      pthread_attr_t* attr,
  5826                                      void * (*start_routine)(
void *),
  5835 MG_EXPORT pthread_t GUIAPI GetMainWinThread(HWND hMainWnd);
  5846 MG_EXPORT 
int GUIAPI WaitMainWindowClose(HWND hWnd, 
void** returnval);
  5872 #define MainWindowCleanup(hwnd)      MainWindowThreadCleanup(hwnd)  5901                         const char* window_name, 
const char* layer_name);
  6005 LRESULT GUIAPI PreDefMainWinProc (HWND hWnd, UINT message,
  6006                 WPARAM wParam, 
LPARAM lParam);
  6008 LRESULT GUIAPI PreDefDialogProc (HWND hWnd,
  6009                 UINT message, WPARAM wParam, 
LPARAM lParam);
  6011 LRESULT GUIAPI PreDefControlProc (HWND hWnd, UINT message,
  6012                 WPARAM wParam, 
LPARAM lParam);
  6032                 WPARAM wParam, 
LPARAM lParam);
  6055 #define DefaultMainWinProc (__mg_def_proc[0])  6073 #define DefaultDialogProc  (__mg_def_proc[1])  6088 #define DefaultControlProc (__mg_def_proc[2])  6091 MG_EXPORT 
void GUIAPI DumpWindow (FILE* fp, HWND hWnd);
  6101 #define SW_HIDE              0x0000  6102 #define SW_SHOW              0x0010  6103 #define SW_SHOWNORMAL        0x0100  6617                 const RECT* prc, 
BOOL bEraseBkgnd);
  6742 MG_EXPORT 
void GUIAPI 
EndPaint(HWND hWnd, 
HDC hdc);
  6799         int win_type, 
int cw);
  6818         int win_type, 
int ch, 
BOOL hasMenu);
  6820 #define ClientWidthToWindowWidth(dwStyle, cw) \  6821     ClientWidthToWindowWidthEx (dwStyle, LFRDR_WINTYPE_MAINWIN, cw)  6823 #define ClientHeightToWindowHeight(dwStyle, ch, hasMenu) \  6824     ClientHeightToWindowHeightEx (dwStyle, LFRDR_WINTYPE_MAINWIN, ch, hasMenu)  6880 MG_EXPORT 
void GUIAPI 
ClientToScreen (HWND hWnd, 
int* x, 
int* y);
  6895 MG_EXPORT 
void GUIAPI 
ScreenToClient (HWND hWnd, 
int* x, 
int* y);
  6941 MG_EXPORT 
void GUIAPI 
WindowToScreen (HWND hWnd, 
int* x, 
int* y);
  6956 MG_EXPORT 
void GUIAPI 
ScreenToWindow (HWND hWnd, 
int* x, 
int* y);
  7034 MG_EXPORT HWND GUIAPI 
GetParent (HWND hWnd);
  7112 MG_EXPORT HWND GUIAPI 
GetNextChild (HWND hWnd, HWND hChild);
  7152 MG_EXPORT HWND GUIAPI 
GetHosting (HWND hMainWnd);
  7199 MG_EXPORT HWND GUIAPI 
GetNextHosted (HWND hHosting, HWND hHosted);
  7233 MG_EXPORT 
int GUIAPI 
GetWindowText (HWND hWnd, 
char* spString, 
int nMaxLen);
  7302 #define SetFocus SetFocusChild  7308 #define GetFocus GetFocusChild  7342 #define GetForegroundWindow GetActiveWindow  7348 #define SetForegroundWindow SetActiveWindow  7426 #define WindowFromPoint(pt)  WindowFromPointEx(pt, TRUE)  7428 #define CWP_ALL             0x0000  7429 #define CWP_SKIPINVISIBLE   0x0001  7430 #define CWP_SKIPDISABLED    0x0002  7431 #define CWP_SKIPTRANSPARENT 0x0004  7509 MG_EXPORT 
BOOL GUIAPI 
MoveWindow (HWND hWnd, 
int x, 
int y, 
int w, 
int h,
  7512 #define SW_INVALIDATE       0x01  7513 #define SW_ERASE            0x02  7514 #define SW_SCROLLCHILDREN   0x04  7588                 const RECT *prcScroll, 
const RECT *prcClip,
  7612                const RECT* prcScroll, 
const RECT* prcClip)
  7615                 NULL, 
NULL, SW_ERASE | SW_INVALIDATE | SW_SCROLLCHILDREN);
  7622 #define GetWindowElementColor(iItem)   \  7623         GetWindowElementPixelEx(HWND_NULL, (HDC)-1, iItem)  7625 #define GetWindowElementColorEx(hWnd, iItem)   \  7626         GetWindowElementPixelEx(hWnd, (HDC)-1, iItem)  7628 #define GetWindowElementPixel(hWnd, iItem)   \  7629         GetWindowElementPixelEx(hWnd, (HDC)-1, iItem)  7637 #define SYSBMP_RADIOBUTTON          "radiobutton"  7638 #define SYSBMP_CHECKBUTTON          "checkbutton"  7639 #define SYSBMP_BGPICTURE            "bgpicture"  7640 #define SYSBMP_BGPICPOS             "bgpicpos"  7643 #define SYSBMP_IMECTRLBTN          "IMEctrlbtn"  7644 #define SYSBMP_LOGO                "logo"  7727         const char* rdr_name, 
PBITMAP bmp);
  7750 #define IDI_APPLICATION         0  7752 #define IDI_STOP                IDI_HAND  7753 #define IDI_QUESTION            2  7754 #define IDI_EXCLAMATION         3  7755 #define IDI_ASTERISK            4  7756 #define IDI_INFORMATION         IDI_ASTERISK  7758 #define SYSICON_FT_DIR          "dir"  7759 #define SYSICON_FT_FILE         "file"  7761 #define SYSICON_TREEFOLD        "treefold"  7762 #define SYSICON_TREEUNFOLD      "treeunfold"  7782         const char* rdr_name, 
const char* szItemName, 
int which);
  7850 #define GetLargeSystemIcon(iItem) GetLargeSystemIconEx(HWND_NULL, iItem)  7858 #define GetSmallSystemIcon(iItem) GetSmallSystemIconEx(HWND_NULL, iItem)  7938                 int* pMinPos, 
int* pMaxPos);
  7989                 int iMinPos, 
int iMaxPos);
  8012 #define SIF_RANGE           0x0001  8013 #define SIF_PAGE            0x0002  8014 #define SIF_POS             0x0004  8015 #define SIF_DISABLENOSCROLL 0x0008  8016 #define SIF_TRACKPOS        0x0010  8017 #define SIF_ALL             (SIF_RANGE | SIF_PAGE | SIF_POS | SIF_TRACKPOS)  8020 #define SB_ARROW_LTUP   0x0001  8023 #define SB_ARROW_BTDN   0x0002  8026 #define SB_ARROW_BOTH  (SB_ARROW_LTUP | SB_ARROW_BTDN)  8119 #define CS_VREDRAW          0x0001  8120 #define CS_HREDRAW          0x0002  8121 #define CS_KEYCVTWINDOW     0x0004  8122 #define CS_DBLCLKS          0x0008  8124 #define CS_OWNDC            0x0020  8125 #define CS_CLASSDC          0x0040  8126 #define CS_PARENTDC         0x0080  8128 #define CS_NOKEYCVT         0x0100  8129 #define CS_NOCLOSE          0x0200  8130 #define CS_SAVEBITS         0x0800  8132 #define CS_BYTEALIGNCLIENT  0x1000  8133 #define CS_BYTEALIGNWINDOW  0x2000  8134 #define CS_GLOBALCLASS      0x4000  8135 #define CS_IME              0x8000  8137 #define COP_STYLE           0x0001  8138 #define COP_HCURSOR         0x0002  8139 #define COP_BKCOLOR         0x0004  8140 #define COP_WINPROC         0x0008  8141 #define COP_ADDDATA         0x0010  8185 #define MAINWINCLASSNAME    ("MAINWINDOW")  8186 #define ROOTWINCLASSNAME    ("ROOTWINDOW")  8316         const char* spCaption, 
DWORD dwStyle, 
DWORD dwExStyle,
  8317         LINT id, 
int x, 
int y, 
int w, 
int h, HWND hParentWnd,
  8334                 const char* spCaption, 
DWORD dwStyle, 
DWORD dwExStyle,
  8335                 LINT id, 
int x, 
int y, 
int w, 
int h, HWND hParentWnd,
  8339                 id, x, y, w, h, hParentWnd, 
NULL, 
NULL, dwAddData);
  8421 #define CreateWindow(class_name, caption, style,        \  8422                 id, x, y, w, h, parent, add_data)       \  8423         CreateWindowEx(class_name, caption, style, 0,   \  8424                         id, x, y, w, h, parent, add_data)  8496 #define SetTimer(hwnd, id, speed) \  8497                 SetTimerEx(hwnd, id, speed, NULL)  8516 MG_EXPORT 
int GUIAPI 
KillTimer (HWND hWnd, LINT 
id);
  8549 #define ResetTimer(hwnd, id, speed) \  8550                 ResetTimerEx(hwnd, id, speed, (TIMERPROC)INV_PTR)  8712 MG_EXPORT 
int GUIAPI 
SetIMEStatus (
int StatusCode, 
int Value);
  8781 MG_EXPORT 
int GUIAPI SetIMEPos (
const POINT* pt);
  8818 #define ACCEL_SHIFT     KS_SHIFT  8819 #define ACCEL_ALT       KS_ALT  8820 #define ACCEL_CTRL      KS_CTRL  8921                 int nWidth, 
int nHeight);
  9020 MG_EXPORT 
BOOL GUIAPI HideCaretEx (HWND hWnd, 
BOOL ime);
  9038     return HideCaretEx (hWnd, 
TRUE);
  9121 #define MF_INSERT           0x00000000L  9122 #define MF_CHANGE           0x00000080L  9123 #define MF_APPEND           0x00000100L  9124 #define MF_DELETE           0x00000200L  9125 #define MF_REMOVE           0x00001000L  9127 #define MF_BYCOMMAND        0x00000000L  9128 #define MF_BYPOSITION       0x00000400L  9130 #define MF_SEPARATOR        0x00000800L  9132 #define MF_ENABLED          0x00000000L  9133 #define MF_GRAYED           0x00000001L  9134 #define MF_DISABLED         0x00000002L  9136 #define MF_UNCHECKED        0x00000000L  9137 #define MF_CHECKED          0x00000008L  9138 #define MF_USECHECKBITMAPS  0x00000200L  9140 #define MF_STRING           0x00000000L  9141 #define MF_BITMAP           0x00000004L  9142 #define MF_OWNERDRAW        0x00000100L  9144 #define MF_POPUP            0x00000010L  9145 #define MF_MENUBARBREAK     0x00000020L  9146 #define MF_MENUBREAK        0x00000040L  9148 #define MF_UNHILITE         0x00000000L  9149 #define MF_HILITE           0x00000080L  9151 #define MF_DEFAULT          0x00001000L  9152 #define MF_SYSMENU          0x00002000L  9153 #define MF_HELP             0x00004000L  9154 #define MF_RIGHTJUSTIFY     0x00004000L  9156 #define MF_MOUSESELECT      0x00008000L  9157 #define MF_END              0x00000080L  9159 #define MFT_STRING          MF_STRING   9160 #define MFT_BITMAP          MF_BITMAP   9161 #define MFT_BMPSTRING       0x00010000L  9162 #define MFT_MENUBARBREAK    MF_MENUBARBREAK   9163 #define MFT_MENUBREAK       MF_MENUBREAK   9164 #define MFT_OWNERDRAW       MF_OWNERDRAW   9165 #define MFT_RADIOCHECK      0x00000200L  9166 #define MFT_MARKCHECK       0x00000400L  9167 #define MFT_SEPARATOR       MF_SEPARATOR   9169 #define MFT_RIGHTORDER      0x00002000L  9170 #define MFT_RIGHTJUSTIFY    MF_RIGHTJUSTIFY  9172 #define MFS_GRAYED          0x00000003L  9173 #define MFS_DISABLED        MFS_GRAYED  9174 #define MFS_CHECKED         MF_CHECKED  9175 #define MFS_HILITE          MF_HILITE  9176 #define MFS_ENABLED         MF_ENABLED  9177 #define MFS_UNCHECKED       MF_UNCHECKED  9178 #define MFS_UNHILITE        MF_UNHILITE  9179 #define MFS_DEFAULT         MF_DEFAULT  9182   #define SC_SIZE         0xF000  9183   #define SC_MOVE         0xF010  9184   #define SC_MINIMIZE     0xF020  9185   #define SC_MAXIMIZE     0xF030  9186   #define SC_NEXTWINDOW   0xF040  9187   #define SC_PREVWINDOW   0xF050  9188   #define SC_CLOSE        0xF060  9189   #define SC_VSCROLL      0xF070  9190   #define SC_HSCROLL      0xF080  9191   #define SC_MOUSEMENU    0xF090  9192   #define SC_KEYMENU      0xF100  9193   #define SC_ARRANGE      0xF110  9194   #define SC_RESTORE      0xF120  9195   #define SC_TASKLIST     0xF130  9196   #define SC_SCREENSAVE   0xF140  9197   #define SC_HOTKEY       0xF150  9199   #define SC_DEFAULT      0xF160  9200   #define SC_MONITORPOWER 0xF170  9201   #define SC_CONTEXTHELP  0xF180  9202   #define SC_SEPARATOR    0xF00F  9205   #define MIIM_STATE       0x00000001  9206   #define MIIM_ID          0x00000002  9207   #define MIIM_SUBMENU     0x00000004  9208   #define MIIM_CHECKMARKS  0x00000008  9209   #define MIIM_TYPE        0x00000010  9210   #define MIIM_DATA        0x00000020  9211   #define MIIM_STRING      0x00000040  9212   #define MIIM_BITMAP      0x00000080  9213   #define MIIM_FTYPE       0x00000100  9217   #define TPM_LEFTBUTTON  0x0000L  9218   #define TPM_RIGHTBUTTON 0x0002L  9219   #define TPM_LEFTALIGN   0x0000L  9220   #define TPM_CENTERALIGN 0x0004L  9221   #define TPM_RIGHTALIGN  0x0008L  9222   #define TPM_TOPALIGN        0x0000L  9223   #define TPM_VCENTERALIGN    0x0010L  9224   #define TPM_BOTTOMALIGN     0x0020L  9226   #define TPM_HORIZONTAL      0x0000L       9227   #define TPM_VERTICAL        0x0040L       9228   #define TPM_NONOTIFY        0x0080L       9229   #define TPM_RETURNCMD       0x0100L  9231   #define TPM_DESTROY         0x1000L         9232   #define TPM_SYSCMD          0x2000L         9233   #define TPM_DEFAULT         0x0000L         9236 #define MNC_IGNORE  0  9238 #define MNC_EXECUTE 2  9239 #define MNC_SELECT  3  9409                             UINT flag, PMENUITEMINFO pmii);
  9558 MG_EXPORT 
int GUIAPI 
TrackMenuBar (HWND hwnd, 
int pos);
  9598                 int x, 
int y, HWND hwnd);
  9619 #define LFRDR_MENU_STATE_HILITE       0x01  9620 #define LFRDR_MENU_STATE_NORMAL       0x02  9621 #define LFRDR_MENU_STATE_DISABLED     0x04  9705                             UINT flag, PMENUITEMINFO pmii);
  9708 int GUIAPI GetMenuItemRect (HWND hwnd, 
HMENU hmnu,
  9709                 LINT item, 
PRECT prc);
  9827                             LINT checkitem, UINT flag);
  9881                             UINT flag, PMENUITEMINFO pmii);
  9895 #define DLGC_WANTARROWS     0x0001  9900 #define DLGC_WANTTAB        0x0002  9905 #define DLGC_WANTALLKEYS    0x0004  9910 #define DLGC_WANTCHARS      0x0008  9916 #define DLGC_WANTENTER      0x0010  9921 #define DLGC_HASSETSEL      0x0080  9927 #define DLGC_DEFPUSHBUTTON  0x0100  9932 #define DLGC_PUSHBUTTON     0x0200  9937 #define DLGC_RADIOBUTTON    0x0400  9942 #define DLGC_3STATE         0x0800  9947 #define DLGC_STATIC         0x1000  9952 #define DLGC_BUTTON         0x2000 10048         const char* window_name, 
const char* layer_name);
 10063                 PDLGTEMPLATE pDlgTemplate, HWND hOwner,
 10082                 PDLGTEMPLATE pDlgTemplate, HWND hOwner, 
WNDPROC WndProc)
 10136         const char* window_name, 
const char* layer_name);
 10230 MG_EXPORT HWND GUIAPI 
GetDlgItem (HWND hDlg, LINT nIDDlgItem);
 10264 MG_EXPORT UINT GUIAPI 
GetDlgItemInt (HWND hDlg, LINT nIDDlgItem,
 10265                 BOOL *lpTranslated, 
BOOL bSigned);
 10289 MG_EXPORT 
int GUIAPI 
GetDlgItemText (HWND hDlg, LINT nIDDlgItem,
 10290                 char* lpString, 
int nMaxCount);
 10312 MG_EXPORT 
char* GUIAPI 
GetDlgItemText2 (HWND hDlg, LINT 
id, 
int* lenPtr);
 10334                 HWND hCtl, 
BOOL bPrevious);
 10378                 UINT message, WPARAM wParam, 
LPARAM lParam);
 10403                 UINT uValue, 
BOOL bSigned);
 10424 MG_EXPORT 
BOOL GUIAPI SetDlgItemText (HWND hDlg, LINT nIDDlgItem,
 10425                 const char* lpString);
 10427 #ifdef _MGCTRL_BUTTON 10453 MG_EXPORT 
void GUIAPI 
CheckDlgButton (HWND hDlg, LINT nIDDlgItem, 
int nCheck);
 10477                 LINT idFirstButton, LINT idLastButton, LINT idCheckButton);
 10516 #if defined(_MGCTRL_STATIC) && defined (_MGCTRL_BUTTON) 10519 #define IDC_STATIC    0 10528 #define MINID_RESERVED      0xF001 10529 #define MAXID_RESERVED      0xFFFF 10531 #define MB_OK                   0x00000000 10532 #define MB_OKCANCEL             0x00000001 10533 #define MB_YESNO                0x00000002 10534 #define MB_RETRYCANCEL          0x00000003 10535 #define MB_ABORTRETRYIGNORE     0x00000004 10536 #define MB_YESNOCANCEL          0x00000005 10537 #define MB_CANCELASBACK         0x00000008   10538 #define MB_TYPEMASK             0x00000007 10540 #define MB_ICONHAND             0x00000010 10541 #define MB_ICONQUESTION         0x00000020 10542 #define MB_ICONEXCLAMATION      0x00000030 10543 #define MB_ICONASTERISK         0x00000040 10544 #define MB_ICONMASK             0x000000F0 10546 #define MB_ICONINFORMATION      MB_ICONASTERISK 10547 #define MB_ICONSTOP             MB_ICONHAND 10549 #define MB_DEFBUTTON1           0x00000000 10550 #define MB_DEFBUTTON2           0x00000100 10551 #define MB_DEFBUTTON3           0x00000200 10552 #define MB_DEFMASK              0x00000F00 10558 #define MB_NOFOCUS              0x00008000 10560 #define MB_ALIGNCENTER          0x00000000 10561 #define MB_ALIGNTOPLEFT         0x00010000 10562 #define MB_ALIGNBTMLEFT         0x00020000 10563 #define MB_ALIGNTOPRIGHT        0x00030000 10564 #define MB_ALIGNBTMRIGHT        0x00040000 10565 #define MB_ALIGNMASK            0x00070000 10567 #define MB_BASEDONPARENT        0x00080000   10671 MG_EXPORT 
int GUIAPI 
MessageBox (HWND hParentWnd, 
const char* pszText,
 10672                       const char* pszCaption, 
DWORD dwStyle);
 
GHANDLE HACCEL
Handle to accelarator. 
 
MG_EXPORT int UnregisterResType(int type)
Unregister a user-defined resource type. 
 
MG_EXPORT DWORD GUIAPI GetWindowElementAttr(HWND hwnd, int we_attr_id)
Get a window element data. 
 
#define SendAsyncMessage
Is an alias of SendMessage for MiniGUI-Processes and MiniGUI-Standalone. 
 
MG_EXPORT int GUIAPI BroadcastMessage(UINT nMsg, WPARAM wParam, LPARAM lParam)
Broadcasts a message to all main window on the desktop. 
 
MG_EXPORT LINT GUIAPI GetDlgCtrlID(HWND hwndCtl)
Gets the integer identifier of a control. 
 
MG_EXPORT BOOL GUIAPI IsMainWindow(HWND hWnd)
Determines whether a window is a main window. 
 
MG_EXPORT int RegisterResType(int type, RES_TYPE_OPS *ops)
Register a new user-defined type into resource manager, so that the LoadResource can load the special...
 
MG_EXPORT void GUIAPI UnregisterRes(const char *file)
Unregister the BITMAP object from cache according to the specified resource file name. 
 
MG_EXPORT HWND GUIAPI GetFocusChild(HWND hParent)
Retrieves the handle to the window's active child that has the keyboard focus. 
 
MG_EXPORT void TermRendererSystemIcon(HICON *small_icon, HICON *large_icon)
Release large and small system icon resources. 
 
MG_EXPORT WINDOW_ELEMENT_RENDERER *GUIAPI GetDefaultWindowElementRenderer(void)
Get the default window renderer. 
 
struct _DLGTEMPLATE DLGTEMPLATE
 
struct _LFRDR_TRACKBARINFO LFRDR_TRACKBARINFO
 
int BOOL
A type definition for boolean value. 
 
MG_EXPORT void GUIAPI CheckRadioButton(HWND hDlg, LINT idFirstButton, LINT idLastButton, LINT idCheckButton)
Adds a check mark to (checks) a specified radio button in a group and removes a check mark from (clea...
 
MG_EXPORT int GUIAPI TranslateAccelerator(HACCEL hAccel, PMSG pMsg)
Translates an accelerator key message to MSG_COMMAND messge and sends it to the window procedure...
 
MG_EXPORT HICON GUIAPI SetWindowIcon(HWND hWnd, HICON hIcon, BOOL bRedraw)
Sets the current icon of a window. 
 
static BOOL GUIAPI HideCaret(HWND hWnd)
Hides a caret. 
 
MG_EXPORT int GUIAPI GetUpdateRegion(HWND hWnd, PCLIPRGN pRgn)
Copy the update region of a window to a region. 
 
unsigned char BYTE
A type definition for an 8-bit unsigned character (byte). 
 
MG_EXPORT LRESULT GUIAPI SendMessage(HWND hWnd, UINT nMsg, WPARAM wParam, LPARAM lParam)
Sends a message to a window. 
 
MG_EXPORT gal_pixel GUIAPI GetWindowElementPixelEx(HWND hwnd, HDC hdc, int we_attr_id)
Get a window element gal_pixel color. 
 
MG_EXPORT DWORD GUIAPI SetWindowAdditionalData2(HWND hWnd, DWORD newData)
Sets the second additional data of a window. 
 
MG_EXPORT int GUIAPI GetIMEStatus(int StatusCode)
Retrives status of the current IME window. 
 
MG_EXPORT DWORD GUIAPI GetWindowAdditionalData(HWND hWnd)
Retrives the first additional data of a window. 
 
MG_EXPORT UINT GUIAPI GetCaretBlinkTime(HWND hWnd)
Returns the elapsed time, in milliseconds, required to invert the caret's pixels. ...
 
MG_EXPORT int GUIAPI SetIMETargetInfo(const IME_TARGET_INFO *info)
Sets the target info of the current IME window. 
 
MG_EXPORT HWND GUIAPI GetNextMainWindow(HWND hMainWnd)
Retrives the next main window in the system according to the zorder. 
 
MG_EXPORT int GUIAPI KillTimer(HWND hWnd, LINT id)
Destroys a timer. 
 
LRESULT(* WNDPROC)(HWND, UINT, WPARAM, LPARAM)
Type of the window callback procedure. 
 
MG_EXPORT HWND GUIAPI GetActiveWindow(void)
Retrieves the main window handle to the active main window. 
 
MG_EXPORT void GUIAPI MainWindowThreadCleanup(HWND hMainWnd)
Cleans up system resource associated with a main window. 
 
MG_EXPORT LRESULT GUIAPI DefaultWindowProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
The default window callback procedure. 
 
MG_EXPORT const char *GUIAPI GetClassName(HWND hWnd)
Retrieves the name of the class to which the specified window belongs. 
 
struct _HOOKINFO HOOKINFO
 
MG_EXPORT int GUIAPI PostMessage(HWND hWnd, UINT nMsg, WPARAM wParam, LPARAM lParam)
Posts a message into the message queue of a window and returns immediatly. 
 
MG_EXPORT void GUIAPI WindowToClient(HWND hWnd, int *x, int *y)
Converts the window coordinates to client coordinates. 
 
MG_EXPORT void GUIAPI UpdateInvalidClient(HWND hWnd, BOOL bErase)
Updates the invalid client areas in a window. 
 
struct _SCROLLBARDATA SCROLLBARDATA
 
MG_EXPORT BOOL GUIAPI CreateCaret(HWND hWnd, PBITMAP pBitmap, int nWidth, int nHeight)
Creates a new shape for the system caret and assigns ownership of the caret to the specified window...
 
MG_EXPORT BOOL GUIAPI DestroyMainWindow(HWND hWnd)
Destroys a main window. 
 
MG_EXPORT WINDOW_ELEMENT_RENDERER *GUIAPI GetWindowRendererFromName(const char *name)
Get window renderer from name. 
 
DWORD(* on_set_rdr_attr)(struct _WINDOW_ELEMENT_RENDERER *, int we_attr_id, DWORD we_attr, BOOL change)
 
MG_EXPORT HWND GUIAPI GetHosting(HWND hMainWnd)
Retrives the hosting main window of a main window. 
 
MG_EXPORT BOOL InitRendererSystemIcon(const char *rdr_name, HICON *small_icon, HICON *large_icon)
Initialize large and small system icons in the specified renderer rdr_name. 
 
MG_EXPORT int GUIAPI ClientHeightToWindowHeightEx(DWORD dwStyle, int win_type, int ch, BOOL hasMenu)
Calculates window height from the height of the client area. 
 
MG_EXPORT HICON GUIAPI GetLargeSystemIconEx(HWND hWnd, int iItem)
Retrives a large system icon by its identifier in default renderer. 
 
MG_EXPORT WNDPROC __mg_def_proc[3]
The default window callback procedure array. 
 
MG_EXPORT HWND GUIAPI SetActiveWindow(HWND hMainWnd)
Sets a main window to be the active main window. 
 
MG_EXPORT PLOGFONT GUIAPI SetWindowFont(HWND hWnd, PLOGFONT pLogFont)
Sets the default font of a window. 
 
static HWND GUIAPI CreateMainWindow(PMAINWINCREATE pCreateInfo)
A simplified version of CreateMainWindowEx. 
 
MG_EXPORT void * LoadResource(const char *res_name, int type, DWORD usr_param)
Load a resource from disk or memory. 
 
MG_EXPORT void GUIAPI WindowToScreen(HWND hWnd, int *x, int *y)
Converts the window coordinates of a point to screen coordinates. 
 
MG_EXPORT HWND GUIAPI CreateWindowEx2(const char *spClassName, const char *spCaption, DWORD dwStyle, DWORD dwExStyle, LINT id, int x, int y, int w, int h, HWND hParentWnd, const char *werdr_name, const WINDOW_ELEMENT_ATTR *we_attrs, DWORD dwAddData)
Creates a child window with extended style, renderer and attributes table. 
 
const WINDOW_ELEMENT_ATTR * we_attrs
 
MG_EXPORT void GUIAPI DestroyAllControls(HWND hWnd)
Destroys all controls in a window. 
 
MG_EXPORT BOOL GUIAPI EnableWindow(HWND hWnd, BOOL fEnable)
Enables of disables a window. 
 
MG_EXPORT BOOL GUIAPI SetWindowMaskEx(HWND hWnd, HDC hdc, const BITMAP *mask)
Set window (a main window, or a child window which is also known as "control")'s Mask Rect with BITMA...
 
MG_EXPORT BOOL GUIAPI PeekPostMessage(PMSG pMsg, HWND hWnd, UINT nMsgFilterMin, UINT nMsgFilterMax, UINT uRemoveMsg)
Peeks a post message from the message queue of a main window. 
 
static HWND GUIAPI CreateMainWindowIndirect(PDLGTEMPLATE pDlgTemplate, HWND hOwner, WNDPROC WndProc)
A simplified version of CreateMainWindowIndirectParam. 
 
MG_EXPORT int GUIAPI ThrowAwayMessages(HWND pMainWnd)
Removes all messages in the message queue associated with a window. 
 
#define WE_COLORS_NUMBER
The number of window element color attributes. 
 
MG_EXPORT HCURSOR GUIAPI GetWindowCursor(HWND hWnd)
Retrives the current cursor of a window. 
 
Uint32 gal_pixel
Data type of pixel value. 
 
MG_EXPORT HWND GUIAPI SetNullFocus(HWND hParent)
Cancels the current active child and set the focus child to be null. 
 
MG_EXPORT HICON GUIAPI LoadSystemIconEx(HDC hdc, const char *rdr_name, const char *szItemName, int which)
Loads an icon from information defined in MiniGUI.cfg. 
 
MG_EXPORT int GUIAPI GetDlgItemText(HWND hDlg, LINT nIDDlgItem, char *lpString, int nMaxCount)
Retrieves the title or text associated with a control in a dialog box. 
 
MG_EXPORT HWND GUIAPI SetFocusChild(HWND hWnd)
Sets the active child of a window. 
 
MG_EXPORT BOOL GUIAPI SetWindowText(HWND hWnd, const char *spString)
Sets the text of a window. 
 
MG_EXPORT HWND GUIAPI GetWindowUnderCursor(void)
Retrives the handle to the window (if any) which is just beneath the mouse cursor. 
 
void(* draw_hilite_menu_item)(HWND hWnd, HDC hdc, const RECT *pRect, DWORD color)
 
struct _MAINWINCREATE MAINWINCREATE
 
MG_EXPORT const char * GetResPath(void)
Get the currrent user's resource path. 
 
MG_EXPORT int SetResPath(const char *path)
Set user's resource path into the search paths of resource manager. 
 
MG_EXPORT int GUIAPI ScrollWindowEx(HWND hWnd, int dx, int dy, const RECT *prcScroll, const RECT *prcClip, PCLIPRGN pRgnUpdate, PRECT prcUpdate, UINT flags)
Scrolls the content of a window's client area. 
 
MG_EXPORT MSGHOOK GUIAPI RegisterKeyMsgHook(void *context, MSGHOOK hook)
Registers a key message hook. 
 
MG_EXPORT HCURSOR GUIAPI SetWindowCursor(HWND hWnd, HCURSOR hNewCursor)
Sets the current cursor of a window. 
 
static BOOL GUIAPI ShowCaret(HWND hWnd)
Shows a caret. 
 
int(* SRVEVTHOOK)(PMSG pMsg)
The type of the event hook. 
 
MG_EXPORT BOOL GUIAPI GetClientRect(HWND hWnd, PRECT prc)
Retrives the client rectangle of a window. 
 
MG_EXPORT DWORD GUIAPI GetWindowClassAdditionalData(HWND hWnd)
Retrives the additional data of a control class. 
 
MG_EXPORT BOOL GUIAPI GetWindowClassInfo(PWNDCLASS pWndClass)
Retrieves the information of the specified window class. 
 
MG_EXPORT BOOL GUIAPI TranslateKeyMsgToChar(int message, WPARAM wParam, LPARAM lParam, WORD *ch)
Translates a key down and key up message to a corresponding character. 
 
const void * private_info
 
MG_EXPORT BOOL GUIAPI PeekMessageEx(PMSG pMsg, HWND hWnd, UINT nMsgFilterMin, UINT nMsgFilterMax, BOOL bWait, UINT uRemoveMsg)
Peeks a message from the message queue of a main window. 
 
MG_EXPORT HWND GUIAPI GetFirstHosted(HWND hHosting)
Retrives the first hosted main window of a main window. 
 
MG_EXPORT void GUIAPI ClientToWindow(HWND hWnd, int *x, int *y)
Converts the client coordinates to the window coordinates. 
 
MG_EXPORT int GUIAPI GetWindowText(HWND hWnd, char *spString, int nMaxLen)
Copies the text of a window's into a buffer. 
 
MG_EXPORT MSGHOOK GUIAPI RegisterMouseMsgHook(void *context, MSGHOOK hook)
Registers a mouse message hook. 
 
GHANDLE HDC
Handle to device context. 
 
MG_EXPORT void GUIAPI ScreenToWindow(HWND hWnd, int *x, int *y)
Converts the screen coordinates of a point to window coordinates. 
 
MG_EXPORT WNDPROC GUIAPI SetWindowCallbackProc(HWND hWnd, WNDPROC newProc)
Sets the callback procedure of a window. 
 
void(* NOTIFPROC)(HWND hwnd, LINT id, int nc, DWORD add_data)
Type of the notification callback procedure. 
 
MG_EXPORT void GUIAPI UnregisterSystemBitmap(HDC hdc, const char *rdr_name, const char *id)
Unregister a BITMAP object from BITMAP cache. 
 
MG_EXPORT BOOL GUIAPI SetKeyboardLayout(const char *kbd_layout)
Sets a new keyboard layout. 
 
MG_EXPORT BOOL GUIAPI SetWindowElementRenderer(HWND hWnd, const char *werdr_name, const WINDOW_ELEMENT_ATTR *we_attrs)
Set a window element renderer and window element attributes for window specified by hwnd...
 
MG_EXPORT BOOL GUIAPI IsWindowVisible(HWND hWnd)
Retrieves the visibility state of the specified window. 
 
MG_EXPORT BOOL GUIAPI DestroyWindow(HWND hWnd)
Destroys a specified control. 
 
MG_EXPORT UINT GUIAPI GetDlgItemInt(HWND hDlg, LINT nIDDlgItem, BOOL *lpTranslated, BOOL bSigned)
Translates the text of a control in a dialog box into an integer value. 
 
BOOL(* TIMERPROC)(HWND, LINT, DWORD)
Type of the timer callback procedure. 
 
MG_EXPORT BOOL GUIAPI UnregisterWindowClass(const char *szClassName)
Undoes the effect of RegisterWindowClass. 
 
MG_EXPORT BOOL GUIAPI ExcludeWindowExStyle(HWND hWnd, DWORD dwStyle)
Removes the specific extended style of a window. 
 
#define TRUE
TRUE value, defined as 1 by MiniGUI. 
 
MG_EXPORT void GUIAPI UpdateWindow(HWND hWnd, BOOL bErase)
Updates a window. 
 
MG_EXPORT BOOL GUIAPI EmptyMessageQueue(HWND hWnd)
Empties a message queue. 
 
MG_EXPORT void * GetResource(RES_KEY key)
Retrive and return a buffered resource by the key. 
 
DWORD we_colors[WE_COLORS_NUMBER][3]
 
MG_EXPORT BOOL GUIAPI SetCaretPos(HWND hWnd, int x, int y)
Moves the caret to a new position. 
 
MG_EXPORT int ReleaseRes(RES_KEY key)
Release the buffered resource. It will decrease the reference count of the resource. If the reference count is less then 0, the resource will be released. 
 
MG_EXPORT HICON GUIAPI LoadSystemIcon(const char *szItemName, int which)
Uses default renderer and HDC_SCREEN to load an icon from information defined in MiniGUI.cfg. 
 
static const WINDOWINFO *GUIAPI GetWindowInfo(HWND hWnd)
Get the handle of window information. 
 
GHANDLE HWND
Handle to main window or control. 
 
MG_EXPORT void GUIAPI TermSystemBitmap(HWND hWnd, const char *id, PBITMAP bmp)
Release the system bitmap object by identifier. 
 
MG_EXPORT DWORD GUIAPI SetWindowAdditionalData(HWND hWnd, DWORD newData)
Sets the first additional data of a window. 
 
MG_EXPORT BOOL GUIAPI SetWindowCaption(HWND hWnd, const char *spCaption)
Sets the caption of a window. 
 
MG_EXPORT BOOL GUIAPI AdjustWindowRectEx(RECT *pRect, DWORD dwStyle, BOOL bMenu, DWORD dwExStyle)
Calculates the required size of the window rectangle based on the desired size of the client rectangl...
 
MG_EXPORT BOOL GUIAPI ValidateRegion(HWND hWnd, const CLIPRGN *pRgn)
Validates the client area within a region by removing the region from the current update region of th...
 
MG_EXPORT int GUIAPI DestroyAcceleratorTable(HACCEL hacc)
Destroys an accelerator table. 
 
MG_EXPORT const char *GUIAPI SetDefaultWindowElementRenderer(const char *name)
Set a window element renderer as the default system renderer. 
 
MG_EXPORT DWORD GUIAPI GetWindowStyle(HWND hWnd)
Retrives the style of a window. 
 
MG_EXPORT BOOL GUIAPI HavePendingMessage(HWND hMainWnd)
Checks if there is any pending message in the message queue of a main window. 
 
MG_EXPORT BOOL GUIAPI GetWindowRect(HWND hWnd, PRECT prc)
Retrives the dimensions of the bounding rectangle of a window. 
 
MG_EXPORT HWND GUIAPI WindowFromPointEx(POINT pt, BOOL bRecursion)
Retrieves a handle to the window that contains the specified point. 
 
MG_EXPORT int GUIAPI GetIMEPos(POINT *pt)
Retrives the position of the current IME window. 
 
PLOGFONT we_fonts[WE_FONTS_NUMBER]
 
MG_EXPORT int GUIAPI MessageBox(HWND hParentWnd, const char *pszText, const char *pszCaption, DWORD dwStyle)
Displays a message box within one, two, or three push buttons. 
 
MG_EXPORT BOOL GUIAPI RegisterSystemBitmap(HDC hdc, const char *rdr_name, const char *id)
Register a device-dependent bitmap from id to BITMAP cache. 
 
MG_EXPORT const BITMAP *GUIAPI RetrieveRes(const char *file)
Get a BITMAP object from cache according to the specified resource file name. 
 
int(* MSGHOOK)(void *context, HWND dst_wnd, UINT msg, WPARAM wparam, LPARAM lparam)
Type of message hook function. 
 
struct _WINDOWINFO WINDOWINFO
 
MG_EXPORT HWND GUIAPI GetDlgItem(HWND hDlg, LINT nIDDlgItem)
Retrives the handle to a control in a dialog box. 
 
MG_EXPORT BOOL GUIAPI InitWindowElementAttrs(PWERENDERER rdr)
 
static HWND GUIAPI ChildWindowFromPoint(HWND hParent, POINT pt)
Retrives a handle to the child window that contains the speicified point. 
 
static HWND GUIAPI CreateMainWindowIndirectParam(PDLGTEMPLATE pDlgTemplate, HWND hOwner, WNDPROC WndProc, LPARAM lParam)
A simplified version of CreateMainWindowIndirectParamEx. 
 
MG_EXPORT BOOL GUIAPI SetTimerEx(HWND hWnd, LINT id, DWORD speed, TIMERPROC timer_proc)
Creates a timer with the specified timeout value. 
 
LONG_PTR LINT
Signed integer which has pointer precision. 
 
struct _LFSCROLLBARINFO LFSCROLLBARINFO
 
MG_EXPORT DWORD GUIAPI GetWindowExStyle(HWND hWnd)
Retrives the extended style of a window. 
 
MG_EXPORT int GUIAPI DialogBoxIndirectParamEx(PDLGTEMPLATE pDlgTemplate, HWND hOwner, WNDPROC DlgProc, LPARAM lParam, const char *werdr_name, WINDOW_ELEMENT_ATTR *we_attrs, const char *window_name, const char *layer_name)
Creates a modal dialog box from a dialog box template in memory and other information. 
 
#define LEN_RENDERER_NAME
The maximum length of a renderer name. 
 
MG_EXPORT BOOL GUIAPI IncludeWindowStyle(HWND hWnd, DWORD dwStyle)
Includes the specific style of a window. 
 
MG_EXPORT LRESULT GUIAPI SendDlgItemMessage(HWND hDlg, LINT nIDDlgItem, UINT message, WPARAM wParam, LPARAM lParam)
Sends a message to the specified control in a dialog box. 
 
void(* erase_background)(HWND hWnd, HDC hdc, const RECT *rect)
 
MG_EXPORT BOOL GUIAPI ExcludeWindowStyle(HWND hWnd, DWORD dwStyle)
Removes the specific style of a window. 
 
static HWND GUIAPI CreateWindowEx(const char *spClassName, const char *spCaption, DWORD dwStyle, DWORD dwExStyle, LINT id, int x, int y, int w, int h, HWND hParentWnd, DWORD dwAddData)
A shortcut version of CreateWindowEx2. 
 
MG_EXPORT HWND GUIAPI GetNextDlgTabItem(HWND hDlg, HWND hCtl, BOOL bPrevious)
Retrieves the handle to the first control that has the WS_TABSTOP style that precedes (or follows) th...
 
GHANDLE HCURSOR
Handle to cursor. 
 
MG_EXPORT BOOL GUIAPI IsWindowEnabled(HWND hWnd)
Determines whether the specified window is enabled for mouse and keyboard input. 
 
MG_EXPORT BOOL GUIAPI IncludeWindowExStyle(HWND hWnd, DWORD dwStyle)
Includes the specific extended style of a window. 
 
MG_EXPORT DWORD GUIAPI GetWindowAdditionalData2(HWND hWnd)
Retrives the second additional data of a window. 
 
BOOL GUIAPI GetWindowRegion(HWND hWnd, CLIPRGN *region)
The function obtains a copy of the window region of a window. 
 
MG_EXPORT BOOL GUIAPI SetWindowClassInfo(const WNDCLASS *pWndClass)
Sets the information of the specified window class. 
 
#define NULL
A value indicates null pointer. 
 
int we_metrics[WE_METRICS_NUMBER]
 
MG_EXPORT HWND GUIAPI CreateMainWindowEx(PMAINWINCREATE pCreateInfo, const char *werdr_name, const WINDOW_ELEMENT_ATTR *we_attrs, const char *window_name, const char *layer_name)
Creates a main window. 
 
static void GUIAPI ScrollWindow(HWND hWnd, int dx, int dy, const RECT *prcScroll, const RECT *prcClip)
Scrolls the content of a window's client area. 
 
BOOL GUIAPI SetWindowRegion(HWND hWnd, const CLIPRGN *region)
Set window's Mask Rect with CLIPRGN data. 
 
MG_EXPORT const char *GUIAPI GetWindowCaption(HWND hWnd)
Retrives the caption of a window. 
 
MG_EXPORT BOOL GUIAPI IsTimerInstalled(HWND hWnd, LINT id)
Determines whether a timer is installed. 
 
unsigned char Uint8
A type definition for an 8-bit unsigned character. 
 
MG_EXPORT int GUIAPI AddAccelerators(HACCEL hacc, int key, DWORD keymask, WPARAM wParam, LPARAM lParam)
Adds an accelerator to the accelerator table. 
 
UINT_PTR LPARAM
A type definition for the second message paramter. 
 
MG_EXPORT BOOL GUIAPI RegisterWindowClass(PWNDCLASS pWndClass)
Registers a window class. 
 
MG_EXPORT void GUIAPI SetAutoRepeatMessage(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
Sets the auto-repeat message. 
 
MG_EXPORT gal_pixel GUIAPI GetWindowBkColor(HWND hWnd)
Returns the current background color of a window. 
 
MG_EXPORT BOOL GUIAPI WaitMessage(PMSG pMsg, HWND hMainWnd)
Waits for a message from the message queue of a main window. 
 
MG_EXPORT int AddInnerRes(INNER_RES *inner_res, int count, BOOL copy)
Add some incore resource into the resource manager in order to call LoadResource to get those resourc...
 
MG_EXPORT BOOL GUIAPI SetCaretBlinkTime(HWND hWnd, UINT uTime)
Sets the caret blink time to the specified number of milliseconds. 
 
MG_EXPORT void GUIAPI ClientToScreen(HWND hWnd, int *x, int *y)
Converts the client coordinates of a point to screen coordinates. 
 
static BOOL GUIAPI PeekMessage(PMSG pMsg, HWND hWnd, UINT nMsgFilterMin, UINT nMsgFilterMax, UINT uRemoveMsg)
Peeks a message from the message queue of a main window. 
 
MG_EXPORT BOOL GUIAPI TranslateMessage(PMSG pMsg)
Translates key down and key up messages to MSG_CHAR message and post it into the message queue...
 
MG_EXPORT int GUIAPI UnregisterIMEWindow(HWND hWnd)
Unregisters an IME window. 
 
MG_EXPORT HWND GUIAPI GetParent(HWND hWnd)
Retrieves the handle to a child window's parent window. 
 
MG_EXPORT BOOL GUIAPI IsWindow(HWND hWnd)
Determines whether a window handle identifies an existing window. 
 
MG_EXPORT const BITMAP *GUIAPI GetSystemBitmapByHwnd(HWND hWnd, const char *id)
Retrives the system bitmap object by identifier. 
 
MG_EXPORT void GUIAPI MessageBeep(DWORD dwBeep)
Makes a sound of beep. 
 
MG_EXPORT BOOL GUIAPI RemoveWindowElementRenderer(const char *name)
Remove a window renderer from MiniGUI. 
 
MG_EXPORT const BITMAP *GUIAPI GetSystemBitmap(HWND hWnd, const char *id)
Retrives the system bitmap object by identifier. 
 
MG_EXPORT NOTIFPROC GUIAPI GetNotificationCallback(HWND hwnd)
Gets the notification callback procedure of a control. 
 
MG_EXPORT DWORD GUIAPI SetWindowClassAdditionalData(HWND hWnd, DWORD newData)
Sets the additional data of a control class. 
 
MG_EXPORT BOOL GUIAPI ValidateRect(HWND hWnd, const RECT *rect)
Validates the client area within a rectangle by removing the rectangle from the update region of the ...
 
MG_EXPORT HACCEL GUIAPI CopyAcceleratorTable(HACCEL hacc)
Copies the specified accelerator table. 
 
MG_EXPORT BOOL GUIAPI GetCaretPos(HWND hWnd, PPOINT pPt)
Gets the caret position. 
 
MG_EXPORT char *GUIAPI GetDlgItemText2(HWND hDlg, LINT id, int *lenPtr)
Retrieves the title or text associated with a control in a dialog box. 
 
HICON we_icon[2][SYSICO_ITEM_NUMBER]
 
WORD_HPTR WORD
A type definition for an unsigned integer (word). 
 
struct _LFRDR_WINSTYLEINFO LFRDR_WINSTYLEINFO
 
MG_EXPORT BOOL GUIAPI HaveFreeTimer(void)
Determines whether there is any free timer slot in the system. 
 
static BOOL GUIAPI GetMessage(PMSG pMsg, HWND hWnd)
Gets a message from the message queue of a main window. 
 
MG_EXPORT BOOL GUIAPI DestroyMainWindowIndirect(HWND hMainWin)
Destroys a main window created by CreateMainWindowIndirectParam. 
 
MG_EXPORT BOOL GUIAPI InvalidateRect(HWND hWnd, const RECT *prc, BOOL bEraseBkgnd)
Makes a rectangle region in the client area of a window invalid. 
 
MG_EXPORT BOOL GUIAPI IsControl(HWND hWnd)
Determines whether a window is a control. 
 
UINT_PTR WPARAM
A type definition for the first message paramter. 
 
MG_EXPORT HICON GUIAPI GetWindowIcon(HWND hWnd)
Retrives the current icon of a window. 
 
MG_EXPORT int GUIAPI GetWindowTextLength(HWND hWnd)
Retrieves the length of a window's text. 
 
DWORD_PTR DWORD
A unsigned long type definition for pointer precision. 
 
static int GUIAPI DialogBoxIndirectParam(PDLGTEMPLATE pDlgTemplate, HWND hOwner, WNDPROC DlgProc, LPARAM lParam)
A simplified version of DialogBoxIndirectParamEx. 
 
MG_EXPORT int GUIAPI SendNotifyMessage(HWND hWnd, UINT nMsg, WPARAM wParam, LPARAM lParam)
Sends a notification message to a window. 
 
LONG_PTR LRESULT
Signed result of message processing. 
 
MG_EXPORT void GUIAPI ScreenToClient(HWND hWnd, int *x, int *y)
Converts the screen coordinates of a point to client coordinates. 
 
MG_EXPORT PLOGFONT GUIAPI GetWindowFont(HWND hWnd)
Retrives the default font of a window. 
 
MG_EXPORT HWND GUIAPI GetNextChild(HWND hWnd, HWND hChild)
Retrives the next control in a window. 
 
MG_EXPORT HWND GUIAPI GetNextDlgGroupItem(HWND hDlg, HWND hCtl, BOOL bPrevious)
Retrieves the handle to the first control in a group of controls that precedes (or follows) the speci...
 
#define WE_METRICS_NUMBER
The number of window element metric attributes. 
 
MG_EXPORT SRVEVTHOOK GUIAPI SetServerEventHook(SRVEVTHOOK SrvEvtHook)
Sets an event hook in the server of MiniGUI-Processes. 
 
MG_EXPORT HWND GUIAPI CreateMainWindowIndirectParamEx(PDLGTEMPLATE pDlgTemplate, HWND hOwner, WNDPROC WndProc, LPARAM lParam, const char *werdr_name, WINDOW_ELEMENT_ATTR *we_attrs, const char *window_name, const char *layer_name)
Uses a dialog template and other information to create a modeless main window and controls in it...
 
MG_EXPORT void GUIAPI CheckDlgButton(HWND hDlg, LINT nIDDlgItem, int nCheck)
Changes the check status of a button control. 
 
MG_EXPORT LRESULT GUIAPI DispatchMessage(PMSG pMsg)
Dispatches a message to the window's callback procedure. 
 
MG_EXPORT int GUIAPI GetIMETargetInfo(IME_TARGET_INFO *info)
Retrives the target info of the current IME window. 
 
struct _WINDOW_ELEMENT_ATTR WINDOW_ELEMENT_ATTR
 
MG_EXPORT BOOL GUIAPI ResetTimerEx(HWND hWnd, LINT id, DWORD speed, TIMERPROC timer_proc)
Adjusts a timer with a different timeout value or different timer callback procedure. 
 
MG_EXPORT HWND GUIAPI GetMainWindowHandle(HWND hWnd)
Retrives the handle to the main window contains a window. 
 
MG_EXPORT BOOL GUIAPI ShowCaretEx(HWND hWnd, BOOL ime)
Shows a caret. 
 
MG_EXPORT void GUIAPI TermSystemBitmapEx(const char *id, const char *rdr_name, PBITMAP bmp)
Release the system bitmap object by identifier. 
 
MG_EXPORT RES_KEY Str2Key(const char *str)
Translate a string to an unsigned long (RES_KEY), which is used to find a resource in the resource ma...
 
struct _CTRLDATA CTRLDATA
 
MG_EXPORT HWND GUIAPI GetNextHosted(HWND hHosting, HWND hHosted)
Retrives the next hosted main window of a main window. 
 
MG_EXPORT gal_pixel GUIAPI SetWindowBkColor(HWND hWnd, gal_pixel new_bkcolor)
Sets the background color of a window. 
 
MG_EXPORT HDC GUIAPI BeginPaint(HWND hWnd)
Prepares a window for painting. 
 
MG_EXPORT int GUIAPI RegisterIMEWindow(HWND hWnd)
Registers an IME window. 
 
#define FALSE
FALSE value, defined as 0 by MiniGUI. 
 
MG_EXPORT int GUIAPI PostQuitMessage(HWND hWnd)
Puts a MSG_QUIT message into the message queue of a main window. 
 
void(* draw_normal_menu_item)(HWND hWnd, HDC hdc, const RECT *pRect, DWORD color)
 
MG_EXPORT BOOL GUIAPI EndDialog(HWND hDlg, int endCode)
Destroys a modal dialog box, causing MiniGUI to end any processing for the dialog box...
 
MG_EXPORT BOOL GUIAPI RegisterResFromMem(HDC hdc, const char *file, const unsigned char *data, size_t data_size)
Register a device-dependent bitmap to bitmap cache from memory. 
 
unsigned int UINT
A type definition for unsigned integer. 
 
struct _IME_TARGET_INFO IME_TARGET_INFO
 
MG_EXPORT BOOL GUIAPI ShowWindow(HWND hWnd, int iCmdShow)
Shows or hides a window. 
 
MG_EXPORT BOOL GUIAPI MoveWindow(HWND hWnd, int x, int y, int w, int h, BOOL fPaint)
Changes the position and dimensions of a window. 
 
MG_EXPORT int GUIAPI SetIMEStatus(int StatusCode, int Value)
Sets the status of the current IME window. 
 
struct _WINDOW_ELEMENT_RENDERER WINDOW_ELEMENT_RENDERER
 
MG_EXPORT void GUIAPI EndPaint(HWND hWnd, HDC hdc)
Marks the end of painting in a window. 
 
MG_EXPORT HWND GUIAPI ChildWindowFromPointEx(HWND hParent, POINT pt, UINT uFlags)
Retrives a handle to the child window that contains the speicified point and meets the certain criter...
 
void(* draw_disabled_menu_item)(HWND hWnd, HDC hdc, const RECT *pRect, DWORD color)
 
GHANDLE HMENU
Handle to menu. 
 
MG_EXPORT BOOL GUIAPI ActiveCaret(HWND hWnd)
Activates the caret owned by a window. 
 
MG_EXPORT BOOL GUIAPI ChangeCaretSize(HWND hWnd, int newWidth, int newHeight)
Changes the size of the caret. 
 
MG_EXPORT BOOL GUIAPI AddWindowElementRenderer(const char *name, const WINDOW_ELEMENT_RENDERER *we_rdr)
Add a window element renderer to the system. 
 
MG_EXPORT BOOL GUIAPI RegisterResFromBitmap(const char *file, const BITMAP *bmp)
Register a device-dependent bitmap to bitmap cache. 
 
MG_EXPORT int AddResRef(RES_KEY key)
Increase the reference count of a buffered resource. 
 
MG_EXPORT DWORD GUIAPI SetWindowElementAttr(HWND hwnd, int we_attr_id, DWORD we_attr)
Set a new window element data specified by we_attr_id. 
 
MG_EXPORT HWND GUIAPI GetDlgDefPushButton(HWND hWnd)
Gets the default push button control in a window. 
 
MG_EXPORT BOOL GUIAPI InvalidateRegion(HWND hWnd, const CLIPRGN *pRgn, BOOL bErase)
Invalidates the client area within the specified region. 
 
MG_EXPORT BOOL GUIAPI RegisterResFromFile(HDC hdc, const char *file)
Register a device-dependent bitmap from a file. 
 
#define WE_FONTS_NUMBER
The number of window element font attributes. 
 
MG_EXPORT const BITMAP *GUIAPI GetSystemBitmapEx(const char *rdr_name, const char *id)
Retrives the system bitmap object by identifier. 
 
MG_EXPORT HWND GUIAPI GetCapture(void)
Retrives the handle to the window (if any) that has captured the mouse. 
 
MG_EXPORT HWND GUIAPI SetCapture(HWND hWnd)
Sets the mouse capture to the specified window. 
 
MG_EXPORT WNDPROC GUIAPI GetWindowCallbackProc(HWND hWnd)
Retrives the callback procedure of a window. 
 
WINDOW_ELEMENT_RENDERER * we_rdr
 
MG_EXPORT BOOL GUIAPI GetUpdateRect(HWND hWnd, RECT *update_rect)
Retrives the bounding box of the update region of a window. 
 
MG_EXPORT HICON GUIAPI GetSmallSystemIconEx(HWND hWnd, int iItem)
Retrives a small system icon by its identifier. 
 
MG_EXPORT int GUIAPI IsDlgButtonChecked(HWND hDlg, LINT idButton)
Determines whether a button control has a check mark next to it or whether a three-state button contr...
 
MG_EXPORT NOTIFPROC GUIAPI SetNotificationCallback(HWND hwnd, NOTIFPROC notif_proc)
Sets a new notification callback procedure for a control. 
 
MG_EXPORT void GUIAPI ReleaseCapture(void)
Releases the mouse capture from a window and restores normal mouse input processing. 
 
MG_EXPORT int GUIAPI ClientWidthToWindowWidthEx(DWORD dwStyle, int win_type, int cw)
Calculates main window width from the width of the client area. 
 
MG_EXPORT BOOL GUIAPI DestroyCaret(HWND hWnd)
Destroys a caret. 
 
MG_EXPORT int GUIAPI DeleteAccelerators(HACCEL hacc, int key, DWORD keymask)
Deletes an accelerator from the accelerator table. 
 
MG_EXPORT HACCEL GUIAPI CreateAcceleratorTable(HWND hWnd)
Creates an empty accelerator table. 
 
GHANDLE HICON
Handle to icon. 
 
MG_EXPORT BOOL GUIAPI SetDlgItemInt(HWND hDlg, LINT nIDDlgItem, UINT uValue, BOOL bSigned)
Sets the text of a control in a dialog box to the string representation of a specified integer value...
 
MG_EXPORT BOOL GUIAPI IsDialog(HWND hWnd)
Determines whether a window handle identifies a dialog window. 
 
MG_EXPORT BOOL GUIAPI SetWindowMask(HWND hWnd, const MYBITMAP *mask)
Set window (a main window, or a child window which is also known as "control")'s Mask Rect with MYBIT...
 
struct _WNDCLASS WNDCLASS