1 #pragma once 2 3 #ifndef HBMMENU_CALLBACK 4 #define HBMMENU_CALLBACK ((HBITMAP) -1) 5 #endif 6 #ifndef HBMMENU_SYSTEM 7 #define HBMMENU_SYSTEM ((HBITMAP) 1) 8 #endif 9 #ifndef HBMMENU_MBAR_RESTORE 10 #define HBMMENU_MBAR_RESTORE ((HBITMAP) 2) 11 #endif 12 #ifndef HBMMENU_MBAR_MINIMIZE 13 #define HBMMENU_MBAR_MINIMIZE ((HBITMAP) 3) 14 #endif 15 #ifndef HBMMENU_MBAR_CLOSE 16 #define HBMMENU_MBAR_CLOSE ((HBITMAP) 5) 17 #endif 18 #ifndef HBMMENU_MBAR_CLOSE_D 19 #define HBMMENU_MBAR_CLOSE_D ((HBITMAP) 6) 20 #endif 21 #ifndef HBMMENU_MBAR_MINIMIZE_D 22 #define HBMMENU_MBAR_MINIMIZE_D ((HBITMAP) 7) 23 #endif 24 #ifndef HBMMENU_POPUP_CLOSE 25 #define HBMMENU_POPUP_CLOSE ((HBITMAP) 8) 26 #endif 27 #ifndef HBMMENU_POPUP_RESTORE 28 #define HBMMENU_POPUP_RESTORE ((HBITMAP) 9) 29 #endif 30 #ifndef HBMMENU_POPUP_MAXIMIZE 31 #define HBMMENU_POPUP_MAXIMIZE ((HBITMAP) 10) 32 #endif 33 #ifndef HBMMENU_POPUP_MINIMIZE 34 #define HBMMENU_POPUP_MINIMIZE ((HBITMAP) 11) 35 #endif 36 37 /* combo box */ 38 #define ID_CB_LISTBOX 1000 39 #define ID_CB_EDIT 1001 40 41 /* Combo box message return values */ 42 #define CB_OKAY 0 43 44 /* internal flags */ 45 #define CBF_DROPPED 0x0001 46 #define CBF_BUTTONDOWN 0x0002 47 #define CBF_NOROLLUP 0x0004 48 #define CBF_MEASUREITEM 0x0008 49 #define CBF_FOCUSED 0x0010 50 #define CBF_CAPTURE 0x0020 51 #define CBF_EDIT 0x0040 52 #define CBF_NORESIZE 0x0080 53 #define CBF_NOTIFY 0x0100 54 #define CBF_NOREDRAW 0x0200 55 #define CBF_SELCHANGE 0x0400 56 #define CBF_NOEDITNOTIFY 0x1000 57 #define CBF_NOLBSELECT 0x2000 /* do not change current selection */ 58 #define CBF_BEENFOCUSED 0x4000 /* has it ever had focus */ 59 #define CBF_EUI 0x8000 60 61 /* combo state struct */ 62 typedef struct 63 { 64 HWND self; 65 HWND owner; 66 UINT dwStyle; 67 HWND hWndEdit; 68 HWND hWndLBox; 69 UINT wState; 70 HFONT hFont; 71 RECT textRect; 72 RECT buttonRect; 73 RECT droppedRect; 74 INT droppedIndex; 75 INT fixedOwnerDrawHeight; 76 INT droppedWidth; /* last two are not used unless set */ 77 INT editHeight; /* explicitly */ 78 LONG UIState; 79 } HEADCOMBO,*LPHEADCOMBO; 80 81 /* Note, that CBS_DROPDOWNLIST style is actually (CBS_SIMPLE | CBS_DROPDOWN) */ 82 #define CB_GETTYPE( lphc ) ((lphc)->dwStyle & (CBS_DROPDOWNLIST)) 83 84 extern BOOL COMBO_FlipListbox( LPHEADCOMBO, BOOL, BOOL ); 85 86 #define LB_INSERTSTRING_UPPER 0x1AA 87 #define LB_INSERTSTRING_LOWER 0x1AB 88 #define LB_ADDSTRING_UPPER 0x1AC 89 #define LB_ADDSTRING_LOWER 0x1AD 90 91 HRGN set_control_clipping( HDC hdc, const RECT *rect ); 92 93 LRESULT WINAPI DesktopWndProcA( HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam ); 94 LRESULT WINAPI DesktopWndProcW( HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam ); 95 LRESULT WINAPI User32DefWindowProc(HWND,UINT,WPARAM,LPARAM,BOOL); 96 BOOL WINAPI RegisterClientPFN(VOID); 97 LRESULT WINAPI IconTitleWndProc( HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam ); 98 LRESULT WINAPI ButtonWndProcA( HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam ); 99 LRESULT WINAPI ButtonWndProcW( HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam ); 100 LRESULT WINAPI ButtonWndProc_common(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL unicode); 101 LRESULT WINAPI ComboWndProcA( HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam ); 102 LRESULT WINAPI ComboWndProcW( HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam ); 103 LRESULT WINAPI ComboWndProc_common( HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam, BOOL unicode); 104 LRESULT WINAPI EditWndProcA(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam); 105 LRESULT WINAPI EditWndProcW(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam); 106 LRESULT WINAPI EditWndProc_common( HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam, BOOL unicode); 107 LRESULT WINAPI GhostWndProcA( HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam ); 108 LRESULT WINAPI GhostWndProcW( HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam ); 109 LRESULT WINAPI GhostWndProc_common( HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL unicode); 110 LRESULT WINAPI ListBoxWndProcA( HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam ); 111 LRESULT WINAPI ListBoxWndProcW( HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam ); 112 LRESULT WINAPI ListBoxWndProc_common( HWND hwnd, UINT msg,WPARAM wParam, LPARAM lParam, BOOL unicode); 113 LRESULT WINAPI MDIClientWndProcA( HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam ); 114 LRESULT WINAPI MDIClientWndProcW( HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam ); 115 LRESULT WINAPI MDIClientWndProc_common( HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam, BOOL unicode); 116 LRESULT WINAPI PopupMenuWndProcA(HWND hWnd, UINT Message, WPARAM wParam, LPARAM lParam); 117 LRESULT WINAPI PopupMenuWndProcW(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam); 118 LRESULT WINAPI ScrollBarWndProcW( HWND hwnd, UINT uMsg, WPARAM wParam,LPARAM lParam ); 119 LRESULT WINAPI ScrollBarWndProcA( HWND hwnd, UINT uMsg, WPARAM wParam,LPARAM lParam ); 120 LRESULT WINAPI StaticWndProcA( HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam ); 121 LRESULT WINAPI StaticWndProcW( HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam ); 122 LRESULT WINAPI StaticWndProc_common( HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL unicode); 123 LRESULT WINAPI SwitchWndProcA( HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam ); 124 LRESULT WINAPI SwitchWndProcW( HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam ); 125