mCtrl  0.9.0
grid.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2010-2013 Martin Mitas
3  *
4  * This library is free software; you can redistribute it and/or modify it
5  * under the terms of the GNU Lesser General Public License as published by
6  * the Free Software Foundation; either version 2.1 of the License, or
7  * (at your option) any later version.
8  *
9  * This library is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  * GNU Lesser General Public License for more details.
13  *
14  * You should have received a copy of the GNU Lesser General Public License
15  * along with this library; if not, write to the Free Software Foundation,
16  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
17  */
18 
19 #ifndef MCTRL_GRID_H
20 #define MCTRL_GRID_H
21 
22 #include <mCtrl/defs.h>
23 #include <mCtrl/value.h>
24 #include <mCtrl/table.h>
25 
26 #ifdef __cplusplus
27 extern "C" {
28 #endif
29 
30 
68 
73 BOOL MCTRL_API mcGrid_Initialize(void);
74 
78 void MCTRL_API mcGrid_Terminate(void);
79 
87 
89 #define MC_WC_GRIDW L"mCtrl.grid"
90 
91 #define MC_WC_GRIDA "mCtrl.grid"
92 
100 
102 #define MC_GS_NOTABLECREATE 0x0001
103 
105 #define MC_GS_NOGRIDLINES 0x0002
106 
108 #define MC_GS_COLUMNHEADERNONE 0x0000
109 
110 #define MC_GS_COLUMNHEADERNUMBERED 0x1000
111 
112 #define MC_GS_COLUMNHEADERALPHABETIC 0x2000
113 
114 #define MC_GS_COLUMNHEADERCUSTOM 0x3000
115 
117 #define MC_GS_ROWHEADERNONE 0x0000
118 
119 #define MC_GS_ROWHEADERNUMBERED 0x4000
120 
121 #define MC_GS_ROWHEADERALPHABETIC 0x8000
122 
123 #define MC_GS_ROWHEADERCUSTOM 0xC000
124 
133 
135 #define MC_GGF_COLUMNHEADERHEIGHT (1 << 0)
136 
137 #define MC_GGF_ROWHEADERWIDTH (1 << 1)
138 
139 #define MC_GGF_COLUMNWIDTH (1 << 2)
140 
141 #define MC_GGF_ROWHEIGHT (1 << 3)
142 
143 #define MC_GGF_PADDINGHORZ (1 << 4)
144 
145 #define MC_GGF_PADDINGVERT (1 << 5)
146 
154 
159 typedef struct MC_GGEOMETRY_tag {
161  DWORD fMask;
174 } MC_GGEOMETRY;
175 
183 
197 #define MC_GM_GETTABLE (MC_GM_FIRST + 0)
198 
212 #define MC_GM_SETTABLE (MC_GM_FIRST + 1)
213 
221 #define MC_GM_GETCOLUMNCOUNT (MC_GM_FIRST + 2)
222 
230 #define MC_GM_GETROWCOUNT (MC_GM_FIRST + 3)
231 
240 #define MC_GM_RESIZE (MC_GM_FIRST + 4)
241 
249 #define MC_GM_CLEAR (MC_GM_FIRST + 5)
250 
260 #define MC_GM_SETCELL (MC_GM_FIRST + 6)
261 
274 #define MC_GM_GETCELL (MC_GM_FIRST + 7)
275 
285 #define MC_GM_SETGEOMETRY (MC_GM_FIRST + 8)
286 
295 #define MC_GM_GETGEOMETRY (MC_GM_FIRST + 9)
296 
305 #define MC_GM_SETVALUE (MC_GM_FIRST + 10)
306 
318 #define MC_GM_GETVALUE (MC_GM_FIRST + 11)
319 
327 
329 #define MC_WC_GRID MCTRL_NAME_AW(MC_WC_GRID)
330 
334 #ifdef __cplusplus
335 } /* extern "C" */
336 #endif
337 
338 #endif /* MCTRL_GRID_H */