update for HEAD-2003091401
[reactos.git] / lib / user32 / controls / controls.h
1 #ifndef _ROS_CONTROLS_H
2 #define _ROS_CONTROLS_H
3
4 /* Missing from Winuser.h */
5 #define ES_COMBO        0x00000200   /* Undocumented. Parent is a combobox */
6 #ifndef MAKEINTATOMA
7 #define MAKEINTATOMA(atom)  ((LPCSTR)((ULONG_PTR)((WORD)(atom))))
8 #endif
9 #ifndef WM_ISACTIVEICON 
10 #define WM_ISACTIVEICON         0x0035
11 #endif 
12 #if defined(STRICT)
13 typedef INT     (CALLBACK *EDITWORDBREAKPROCA)(LPSTR,INT,INT,INT);
14 typedef INT     (CALLBACK *EDITWORDBREAKPROCW)(LPWSTR,INT,INT,INT);
15 #else
16 typedef FARPROC EDITWORDBREAKPROCA;
17 typedef FARPROC EDITWORDBREAKPROCW;
18 #endif
19
20 /* winuser.h */
21
22
23 // I dont know where this goes
24
25 #define LB_CARETON             0x01a3
26 #define LB_CARETOFF            0x01a4
27
28 /* combo box */
29
30 #define ID_CB_LISTBOX           1000
31 #define ID_CB_EDIT              1001
32
33 /* Combo box message return values */
34 #define CB_OKAY             0
35
36 /* internal flags */
37 #define CBF_DROPPED             0x0001
38 #define CBF_BUTTONDOWN          0x0002
39 #define CBF_NOROLLUP            0x0004
40 #define CBF_MEASUREITEM         0x0008
41 #define CBF_FOCUSED             0x0010
42 #define CBF_CAPTURE             0x0020
43 #define CBF_EDIT                0x0040
44 #define CBF_NORESIZE            0x0080
45 #define CBF_NOTIFY              0x0100
46 #define CBF_NOREDRAW            0x0200
47 #define CBF_SELCHANGE           0x0400
48 #define CBF_NOEDITNOTIFY        0x1000
49 #define CBF_NOLBSELECT          0x2000  /* do not change current selection */
50 #define CBF_EUI                 0x8000
51
52 /* combo state struct */
53 typedef struct
54 {
55    HWND           self;
56    HWND           owner;
57    UINT           dwStyle;
58    HWND           hWndEdit;
59    HWND           hWndLBox;
60    UINT           wState;
61    HFONT          hFont;
62    RECT           textRect;
63    RECT           buttonRect;
64    RECT           droppedRect;
65    INT            droppedIndex;
66    INT            fixedOwnerDrawHeight;
67    INT            droppedWidth;   /* last two are not used unless set */
68    INT            editHeight;     /* explicitly */
69 } HEADCOMBO,*LPHEADCOMBO;
70
71 /* Note, that CBS_DROPDOWNLIST style is actually (CBS_SIMPLE | CBS_DROPDOWN) */
72 #define CB_GETTYPE( lphc )    ((lphc)->dwStyle & (CBS_DROPDOWNLIST))
73
74 extern BOOL COMBO_FlipListbox( LPHEADCOMBO, BOOL, BOOL );
75
76 #endif /* _ROS_CONTROLS_H */