Moved idle event handling to the server.
[wine.git] / include / tab.h
blob68a938283428582f6a21392646af9fd3a4c57e98
1 /*
2 * Tab control class extra info
4 * Copyright 1998 Anders Carlsson
5 */
7 #ifndef __WINE_TAB_H
8 #define __WINE_TAB_H
10 #include "commctrl.h"
11 #include "windef.h"
13 typedef struct tagTAB_ITEM
15 UINT mask;
16 DWORD dwState;
17 LPSTR pszText;
18 INT cchTextMax;
19 INT iImage;
20 LPARAM lParam;
21 RECT rect; /* bounding rectangle of the item relative to the
22 * leftmost item (the leftmost item, 0, would have a
23 * "left" member of 0 in this rectangle)
25 * additionally the top member hold the row number
26 * and bottom is unused and should be 0 */
27 } TAB_ITEM;
29 typedef struct tagTAB_INFO
31 UINT uNumItem; /* number of tab items */
32 UINT uNumRows; /* number of tab rows */
33 INT tabHeight; /* height of the tab row */
34 INT tabWidth; /* width of tabs */
35 HFONT hFont; /* handle to the current font */
36 HCURSOR hcurArrow; /* handle to the current cursor */
37 HIMAGELIST himl; /* handle to a image list (may be 0) */
38 HWND hwndToolTip; /* handle to tab's tooltip */
39 UINT cchTextMax;
40 INT leftmostVisible; /* Used for scrolling, this member contains
41 * the index of the first visible item */
42 INT iSelected; /* the currently selected item */
43 INT iHotTracked; /* the highlighted item under the mouse */
44 INT uFocus; /* item which has the focus */
45 TAB_ITEM* items; /* pointer to an array of TAB_ITEM's */
46 BOOL DoRedraw; /* flag for redrawing when tab contents is changed*/
47 BOOL needsScrolling; /* TRUE if the size of the tabs is greater than
48 * the size of the control */
49 BOOL fSizeSet; /* was the size of the tabs explicitly set? */
50 HWND hwndUpDown; /* Updown control used for scrolling */
51 } TAB_INFO;
54 extern VOID TAB_Register (VOID);
55 extern VOID TAB_Unregister (VOID);
57 #endif /* __WINE_TAB_H */