Well, SetParent doesn't work properly at all, but at least it must preserve
[wine.git] / include / header.h
blob9e7196b5a374bd3e556a3b8e305a907eccb4bee8
1 /*
2 * Header window definitions
4 * Copyright 1998 Eric Kohl
6 */
8 #ifndef __WINE_HEADER_H_
9 #define __WINE_HEADER_H_
11 #include "commctrl.h"
12 #include "windef.h"
14 typedef struct
16 INT cxy;
17 HBITMAP hbm;
18 LPWSTR pszText;
19 INT fmt;
20 LPARAM lParam;
21 INT iImage;
22 INT iOrder; /* see documentation of HD_ITEM */
24 BOOL bDown; /* is item pressed? (used for drawing) */
25 RECT rect; /* bounding rectangle of the item */
26 } HEADER_ITEM;
29 typedef struct
31 UINT uNumItem; /* number of items (columns) */
32 INT nHeight; /* height of the header (pixels) */
33 HFONT hFont; /* handle to the current font */
34 HCURSOR hcurArrow; /* handle to the arrow cursor */
35 HCURSOR hcurDivider; /* handle to a cursor (used over dividers) <-|-> */
36 HCURSOR hcurDivopen; /* handle to a cursor (used over dividers) <-||-> */
37 BOOL bCaptured; /* Is the mouse captured? */
38 BOOL bPressed; /* Is a header item pressed (down)? */
39 BOOL bTracking; /* Is in tracking mode? */
40 BOOL bUnicode; /* Unicode flag */
41 INT iMoveItem; /* index of tracked item. (Tracking mode) */
42 INT xTrackOffset; /* distance between the right side of the tracked item and the cursor */
43 INT xOldTrack; /* track offset (see above) after the last WM_MOUSEMOVE */
44 INT nOldWidth; /* width of a sizing item after the last WM_MOUSEMOVE */
45 INT iHotItem; /* index of hot item (cursor is over this item) */
47 HIMAGELIST himl; /* handle to a image list (may be 0) */
48 HEADER_ITEM *items; /* pointer to array of HEADER_ITEM's */
49 BOOL bRectsValid; /* validity flag for bounding rectangles */
50 LPINT pOrder; /* pointer to order array */
51 } HEADER_INFO;
54 extern VOID HEADER_Register (VOID);
55 extern VOID HEADER_Unregister (VOID);
57 #endif /* __WINE_HEADER_H_ */