Authors: Chris Morgan <cmorgan@wpi.edu>, James Abbatiello <abbejy@wpi.edu>
[wine/multimedia.git] / include / tab.h
blob853f7f6bad12d35bd81b77a752a29bccc439d233
1 /*
2 * Tab control class extra info
4 * Copyright 1998 Anders Carlsson
5 */
7 #ifndef __WINE_TAB_H
8 #define __WINE_TAB_H
10 typedef struct tagTAB_ITEM
12 UINT mask;
13 DWORD dwState;
14 LPSTR pszText;
15 INT cchTextMax;
16 INT iImage;
17 LPARAM lParam;
18 RECT rect; /* bounding rectangle of the item relative to the
19 * leftmost item (the leftmost item, 0, would have a
20 * "left" member of 0 in this rectangle) */
21 } TAB_ITEM;
23 typedef struct tagTAB_INFO
25 UINT uNumItem; /* number of tab items */
26 INT tabHeight; /* height of the tab row */
27 INT tabWidth; /* width of tabs */
28 HFONT hFont; /* handle to the current font */
29 HCURSOR hcurArrow; /* handle to the current cursor */
30 HIMAGELIST himl; /* handle to a image list (may be 0) */
31 HWND hwndToolTip; /* handle to tab's tooltip */
32 UINT cchTextMax;
33 INT leftmostVisible; /* Used for scrolling, this member contains
34 * the index of the first visible item */
35 INT iSelected; /* the currently selected item */
36 INT uFocus; /* item which has the focus */
37 TAB_ITEM* items; /* pointer to an array of TAB_ITEM's */
38 BOOL DoRedraw; /* flag for redrawing when tab contents is changed*/
39 BOOL needsScrolling; /* TRUE if the size of the tabs is greater than
40 * the size of the control */
41 HWND hwndUpDown; /* Updown control used for scrolling */
42 } TAB_INFO;
45 extern VOID TAB_Register (VOID);
46 extern VOID TAB_Unregister (VOID);
48 #endif /* __WINE_TAB_H */