Changed pidl structure to match the pidl's used in lnk-files.
[wine] / include / header.h
1 /*
2  * Header window definitions
3  *
4  * Copyright 1998 Eric Kohl
5  *
6  */
7
8 #ifndef __WINE_HEADER_H_
9 #define __WINE_HEADER_H_
10
11 typedef struct 
12 {
13     INT32     cxy;
14     HBITMAP32 hbm;
15     LPWSTR    pszText;
16     INT32     fmt;
17     LPARAM    lParam;
18     INT32     iImage;
19     INT32     iOrder;           /* see documentation of HD_ITEM */
20
21     BOOL32    bDown;            /* is item pressed? (used for drawing) */
22     RECT32    rect;             /* bounding rectangle of the item */
23 } HEADER_ITEM;
24
25
26 typedef struct
27 {
28     UINT32      uNumItem;       /* number of items (columns) */
29     INT32       nHeight;        /* height of the header (pixels) */
30     HFONT32     hFont;          /* handle to the current font */
31     HCURSOR32   hcurArrow;      /* handle to the arrow cursor */
32     HCURSOR32   hcurDivider;    /* handle to a cursor (used over dividers) <-|-> */
33     HCURSOR32   hcurDivopen;    /* handle to a cursor (used over dividers) <-||-> */
34     BOOL32      bCaptured;      /* Is the mouse captured? */
35     BOOL32      bPressed;       /* Is a header item pressed (down)? */
36     BOOL32      bTracking;      /* Is in tracking mode? */
37     BOOL32      bUnicode;       /* Unicode flag */
38     INT32       iMoveItem;      /* index of tracked item. (Tracking mode) */
39     INT32       xTrackOffset;   /* distance between the right side of the tracked item and the cursor */
40     INT32       xOldTrack;      /* track offset (see above) after the last WM_MOUSEMOVE */
41     INT32       nOldWidth;      /* width of a sizing item after the last WM_MOUSEMOVE */
42     INT32       iHotItem;       /* index of hot item (cursor is over this item) */
43
44     HIMAGELIST  himl;           /* handle to a image list (may be 0) */
45     HEADER_ITEM *items;         /* pointer to array of HEADER_ITEM's */
46     LPINT32     pOrder;         /* pointer to order array */
47 } HEADER_INFO;
48
49
50 extern VOID HEADER_Register (VOID);
51 extern VOID HEADER_Unregister (VOID);
52
53 #endif /* __WINE_HEADER_H_ */