-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathData.h
More file actions
174 lines (150 loc) · 4.01 KB
/
Data.h
File metadata and controls
174 lines (150 loc) · 4.01 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
class rRundata;
typedef rRundata * LPRRDATA;
// ---------------------
// FLAGS
// ---------------------
#define SCTRL_SYSTEMCOLORS 1
#define SCTRL_BORDER 2
// Flags for true event conditions
#define EVTFLAG_CHANGED 0x0001 // trigger "Has text been changed" condition
// --------------------------------
// RUNNING OBJECT DATA STRUCTURE
// --------------------------------
// If you want to store anything between actions/conditions/expressions
// you should store it here
typedef struct tagRDATA
{
#include "MagicRDATA.h"
// Object's runtime data
COLORREF textColor; // text color
COLORREF backColor; // background color
DWORD dwAlignFlags; // alignment flags
DWORD dwFlags; // other flags
HFONT hFont; // text font
HBRUSH hBrush; // Background brush in custom colors mode
int nWnds; // Number of windows (for subclassing routine)
HWND hWnd; // Window handles (must follow the number of windows)
HIMAGELIST imgl;
int iconwidth;
int iconheight;
// True events
DWORD dwLastChangedLoopNumber; // Application loop number when the last change occured
DWORD dwEvtFlags; // Flags that indicate if we should trigger a true event condition
} RUNDATA;
typedef RUNDATA * LPRDATA;
// --------------------------------
// EDITION OF OBJECT DATA STRUCTURE
// --------------------------------
// These values let you store data in your extension that will be saved in the MFA
// You should use these with properties
#ifdef _UNICODE
#define EDITDATA EDITDATAW
#define LPEDATA LPEDATAW
#else
#define EDITDATA EDITDATAA
#define LPEDATA LPEDATAA
#endif
typedef struct tagEDATA_V3A
{
extHeader eHeader;
#ifdef USE_MAGIC_PROPS
_Properties Properties;
#endif
// Object's data
LONG nWidth; // width
LONG nHeight; // height
COLORREF textColor; // text color
COLORREF backColor; // background color
DWORD dwAlignFlags; // alignment flags
DWORD dwFlags; // other flags
LOGFONTA textFont; // text font, ASCII
WORD wImages[16];
int nImages;
bool opts[4];
//Version 2
uchar iconW;
uchar iconH;
ushort maxIcon;
uchar buttonStyle;
uchar tabDir;
uchar lineMode;
uchar tabMode;
//Version 3
char sText[1]; // text (dynamic size), ASCII
} EDITDATAA;
typedef EDITDATAA * LPEDATAA;
typedef struct tagEDATA_V3W
{
extHeader eHeader;
#ifdef USE_MAGIC_PROPS
_Properties Properties;
#endif
// Object's data
LONG nWidth; // width
LONG nHeight; // height
COLORREF textColor; // text color
COLORREF backColor; // background color
DWORD dwAlignFlags; // alignment flags
DWORD dwFlags; // other flags
LOGFONTW textFont; // text font
WORD wImages[16];
int nImages;
bool opts[4];
//Version 2
uchar iconW;
uchar iconH;
ushort maxIcon;
uchar buttonStyle;
uchar tabDir;
uchar lineMode;
uchar tabMode;
//Version 3 Unicode (ASCII is char)
WCHAR sText[1]; // text (dynamic size)
} EDITDATAW;
typedef EDITDATAW * LPEDATAW;
typedef struct tagEDATA_V2
{
extHeader eHeader;
#ifdef USE_MAGIC_PROPS
_Properties Properties;
#endif
// Object's data
LONG nWidth; // width
LONG nHeight; // height
COLORREF textColor; // text color
COLORREF backColor; // background color
DWORD dwAlignFlags; // alignment flags
DWORD dwFlags; // other flags
LOGFONT textFont; // text font
char sText[1]; // text (dynamic size)
WORD wImages[1];
int nImages;
bool opts[4];
//Version 2
uchar iconW;
uchar iconH;
ushort maxIcon;
uchar buttonStyle;
uchar tabDir;
uchar lineMode;
uchar tabMode;
} OLDEDITDATA2;
typedef struct tagEDATA_V1
{
extHeader eHeader;
#ifdef USE_MAGIC_PROPS
_Properties Properties;
#endif
// Object's data
LONG nWidth; // width
LONG nHeight; // height
COLORREF textColor; // text color
COLORREF backColor; // background color
DWORD dwAlignFlags; // alignment flags
DWORD dwFlags; // other flags
LOGFONT textFont; // text font
char sText[1]; // text (dynamic size)
WORD wImages[1];
int nImages;
bool opts[4];
} OLDEDITDATA;