|
|
1.1 root 1: /*
2: * CUSTOM CONTROL LIBRARY - HEADER FILE
3: *
4: */
5:
6: /* general size definitions */
7: #define CTLTYPES 12 /* number of control types */
8: #define CTLDESCR 22 /* size of control menu name */
9: #define CTLCLASS 20 /* max size of class name */
10: #define CTLTITLE 94 /* max size of control text */
11:
12: /**/
13:
14: /*
15: * CONTROL STYLE DATA STRUCTURE
16: *
17: * This data structure is used by the class style dialog function
18: * to set and/or reset various control attributes.
19: *
20: */
21:
22: typedef struct {
23: WORD wX; /* x origin of control */
24: WORD wY; /* y origin of control */
25: WORD wCx; /* width of control */
26: WORD wCy; /* height of control */
27: WORD wId; /* control child id */
28: DWORD dwStyle; /* control style */
29: CHAR szClass[CTLCLASS]; /* name of control class */
30: CHAR szTitle[CTLTITLE]; /* control text */
31: } CTLSTYLE;
32:
33: typedef CTLSTYLE * PCTLSTYLE;
34: typedef CTLSTYLE FAR * LPCTLSTYLE;
35:
36: /**/
37:
38: /*
39: * CONTROL DATA STRUCTURE
40: *
41: * This data structure is returned by the control options function
42: * when enquiring about the capabilities of a particular control.
43: * Each control may contain various types (with predefined style
44: * bits) under one general class.
45: *
46: * The width and height fields are used to provide the host
47: * application with a suggested size. The values in these fields
48: * could be either in pixels or in rc coordinates. If it is in pixel,
49: * the most sigificant bit(MSB) is on. If the MSB is off, it is in rc
50: * coordinates.
51: *
52: * The cursor and bitmap handles reference objects which can be
53: * used by the dialog editor in the placement and definition of
54: * new, user-defined control classes. However, dialog editor in win30
55: * does not use these fields.
56: *
57: */
58:
59: typedef struct {
60: WORD wType; /* type style */
61: WORD wWidth; /* suggested width */
62: WORD wHeight; /* suggested height */
63: DWORD dwStyle; /* default style */
64: CHAR szDescr[CTLDESCR]; /* menu name */
65: } CTLTYPE;
66:
67: typedef struct {
68: WORD wVersion; /* control version */
69: WORD wCtlTypes; /* control types */
70: CHAR szClass[CTLCLASS]; /* control class name */
71: CHAR szTitle[CTLTITLE]; /* control title */
72: CHAR szReserved[10]; /* reserved for future use */
73: CTLTYPE Type[CTLTYPES]; /* control type list */
74: } CTLINFO;
75:
76: typedef CTLINFO * PCTLINFO;
77: typedef CTLINFO FAR * LPCTLINFO;
78:
79: /* These two function prototypes are used by dialog editor */
80: typedef DWORD (APIENTRY *LPFNSTRTOID)( LPSTR );
81: typedef WORD (APIENTRY *LPFNIDTOSTR)( WORD, LPSTR, WORD );
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.