source: trunk/dll/presparm.c@ 1844

Last change on this file since 1844 was 1673, checked in by Gregg Young, 13 years ago

Update to Doxygen comment style Ticket 55. Also some minor code cleanup.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 19.6 KB
Line 
1
2/***********************************************************************
3
4 $Id: presparm.c 1673 2012-12-30 18:51:01Z gyoung $
5
6 Edit presentation parameters
7
8 Copyright (c) 1993-98 M. Kimes
9 Copyright (c) 2006, 2008 Steven H.Levine
10
11 22 Jul 06 SHL Check more run time errors
12 20 Aug 07 GKY Move #pragma alloc_text to end for OpenWatcom compat
13 22 Nov 07 GKY Use CopyPresParams to fix presparam inconsistencies in menus
14 10 Dec 07 GKY Updated CopyPresParams to copy all parameter types
15 08 Mar 09 GKY Additional strings move to PCSZs in init.c
16 19 Mar 09 GKY Moved DeletePresParams from mainwnd.c
17
18***********************************************************************/
19
20#include <string.h>
21
22#define INCL_WIN
23#define INCL_LONGLONG // dircnrs.h
24
25#include "fm3dll.h"
26#include "colors.h" // typedef RGB2
27#include "presparm.h"
28#include "notebook.h" // Data declaration(s)
29#include "wrappers.h" // xmalloc
30#include "fortify.h"
31
32// static PSZ pszSrcFile = __FILE__;
33
34//static VOID IfNoParam(HWND hwnd, CHAR * keyroot, ULONG size, PVOID attrvalue);
35
36//static VOID StoreWndPresParams(HWND hwnd, CHAR * tagname, HINI prof);
37
38#ifdef NEVER
39/**
40 * this routine will fill a buffer with all defined window pres params
41 * the PRESPARAMS structure returned is suitable to be passed as
42 * pPresParams ie. WinCreateWindow(,,,,,,,,,,,, PVOID pPresParams)
43 */
44VOID StoreWndPresParams(HWND hwnd, CHAR * tagname, HINI prof)
45{
46 PARAM *pparam;
47 PRESPARAMS *ppresparams;
48
49 if (!tagname || !*tagname || !prof)
50 return;
51 // setup memory access
52 ppresparams = (PRESPARAMS *) xmalloc(PP_MAXBUF, pszSrcFile, __LINE__);
53 if (!ppresparams)
54 return;
55 ppresparams->cb = 0; // no entries yet
56 pparam = ppresparams->aparam; // cast structure onto memory
57
58 // query every possible presentation parameter...
59
60 // foreground color -- takes 12 bytes
61 pparam->cb = WinQueryPresParam(hwnd,
62 PP_FOREGROUNDCOLOR,
63 PP_FOREGROUNDCOLORINDEX,
64 &pparam->id,
65 sizeof(LONG),
66 (PVOID) pparam->ab, QPF_NOINHERIT);
67 if (pparam->cb) { // was the param found?
68 ppresparams->cb += 12; // used 12 bytes
69 pparam = (PPARAM) (((ULONG) pparam) + 12); // advance 12 bytes to next memory location
70 }
71
72 // background color -- takes 12 bytes
73 pparam->cb = WinQueryPresParam(hwnd,
74 PP_BACKGROUNDCOLOR,
75 PP_BACKGROUNDCOLORINDEX,
76 &pparam->id,
77 sizeof(LONG),
78 (PVOID) pparam->ab, QPF_NOINHERIT);
79 if (pparam->cb) {
80 ppresparams->cb += 12;
81 pparam = (PPARAM) (((ULONG) pparam) + 12);
82 }
83
84 // hilited foreground color -- takes 12 bytes
85 pparam->cb = WinQueryPresParam(hwnd,
86 PP_HILITEFOREGROUNDCOLOR,
87 PP_HILITEFOREGROUNDCOLORINDEX,
88 &pparam->id,
89 sizeof(LONG),
90 (PVOID) pparam->ab, QPF_NOINHERIT);
91 if (pparam->cb) {
92 ppresparams->cb += 12;
93 pparam = (PPARAM) (((ULONG) pparam) + 12);
94 }
95
96 // hilited background color -- takes 12 bytes
97 pparam->cb = WinQueryPresParam(hwnd,
98 PP_HILITEBACKGROUNDCOLOR,
99 PP_HILITEBACKGROUNDCOLORINDEX,
100 &pparam->id,
101 sizeof(LONG),
102 (PVOID) pparam->ab, QPF_NOINHERIT);
103 if (pparam->cb) {
104 ppresparams->cb += 12;
105 pparam = (PPARAM) (((ULONG) pparam) + 12);
106 }
107
108 // disabled foreground color -- takes 12 bytes
109 pparam->cb = WinQueryPresParam(hwnd,
110 PP_DISABLEDFOREGROUNDCOLOR,
111 PP_DISABLEDFOREGROUNDCOLORINDEX,
112 &pparam->id,
113 sizeof(LONG),
114 (PVOID) pparam->ab, QPF_NOINHERIT);
115 if (pparam->cb) {
116 ppresparams->cb += 12;
117 pparam = (PPARAM) (((ULONG) pparam) + 12);
118 }
119
120 // disabled background color -- takes 12 bytes
121 pparam->cb = WinQueryPresParam(hwnd,
122 PP_DISABLEDBACKGROUNDCOLOR,
123 PP_DISABLEDBACKGROUNDCOLORINDEX,
124 &pparam->id,
125 sizeof(LONG),
126 (PVOID) pparam->ab, QPF_NOINHERIT);
127 if (pparam->cb) {
128 ppresparams->cb += 12;
129 pparam = (PPARAM) (((ULONG) pparam) + 12);
130 }
131
132 // border color -- takes 12 bytes
133 pparam->cb = WinQueryPresParam(hwnd,
134 PP_BORDERCOLOR,
135 PP_BORDERCOLORINDEX,
136 &pparam->id,
137 sizeof(LONG),
138 (PVOID) pparam->ab, QPF_NOINHERIT);
139 if (pparam->cb) {
140 ppresparams->cb += 12;
141 pparam = (PPARAM) (((ULONG) pparam) + 12);
142 }
143
144 // font name & size -- maximum 44 bytes (32 for face name, 4 for point size) + 8 for data
145 pparam->cb = WinQueryPresParam(hwnd,
146 PP_FONTNAMESIZE,
147 0,
148 &pparam->id,
149 36, (PVOID) pparam->ab, QPF_NOINHERIT);
150 if (pparam->cb) {
151 ppresparams->cb += (pparam->cb + 8);
152 pparam = (PPARAM) (((ULONG) pparam) + pparam->cb + 8);
153 }
154
155 // active color -- takes 12 bytes
156 pparam->cb = WinQueryPresParam(hwnd,
157 PP_ACTIVECOLOR,
158 PP_ACTIVECOLORINDEX,
159 &pparam->id,
160 sizeof(LONG),
161 (PVOID) pparam->ab, QPF_NOINHERIT);
162 if (pparam->cb) {
163 ppresparams->cb += 12;
164 pparam = (PPARAM) (((ULONG) pparam) + 12);
165 }
166
167 // inactive color -- takes 12 bytes
168 pparam->cb = WinQueryPresParam(hwnd,
169 PP_INACTIVECOLOR,
170 PP_INACTIVECOLORINDEX,
171 &pparam->id,
172 sizeof(LONG),
173 (PVOID) pparam->ab, QPF_NOINHERIT);
174 if (pparam->cb) {
175 ppresparams->cb += 12;
176 pparam = (PPARAM) (((ULONG) pparam) + 12);
177 }
178
179 // active text foreground color -- takes 12 bytes
180 pparam->cb = WinQueryPresParam(hwnd,
181 PP_ACTIVETEXTFGNDCOLOR,
182 PP_ACTIVETEXTFGNDCOLORINDEX,
183 &pparam->id,
184 sizeof(LONG),
185 (PVOID) pparam->ab,
186 QPF_NOINHERIT | QPF_PURERGBCOLOR);
187 if (pparam->cb) {
188 ppresparams->cb += 12;
189 pparam = (PPARAM) (((ULONG) pparam) + 12);
190 }
191
192 // active text background color -- takes 12 bytes
193 pparam->cb = WinQueryPresParam(hwnd,
194 PP_ACTIVETEXTBGNDCOLOR,
195 PP_ACTIVETEXTBGNDCOLORINDEX,
196 &pparam->id,
197 sizeof(LONG),
198 (PVOID) pparam->ab,
199 QPF_NOINHERIT | QPF_PURERGBCOLOR);
200 if (pparam->cb) {
201 ppresparams->cb += 12;
202 pparam = (PPARAM) (((ULONG) pparam) + 12);
203 }
204
205 // inactive text foreground color -- takes 12 bytes
206 pparam->cb = WinQueryPresParam(hwnd,
207 PP_INACTIVETEXTFGNDCOLOR,
208 PP_INACTIVETEXTFGNDCOLORINDEX,
209 &pparam->id,
210 sizeof(LONG),
211 (PVOID) pparam->ab,
212 QPF_NOINHERIT | QPF_PURERGBCOLOR);
213 if (pparam->cb) {
214 ppresparams->cb += 12;
215 pparam = (PPARAM) (((ULONG) pparam) + 12);
216 }
217
218 // inactive text background color -- takes 12 bytes
219 pparam->cb = WinQueryPresParam(hwnd,
220 PP_INACTIVETEXTBGNDCOLOR,
221 PP_INACTIVETEXTBGNDCOLORINDEX,
222 &pparam->id,
223 sizeof(LONG),
224 (PVOID) pparam->ab,
225 QPF_NOINHERIT | QPF_PURERGBCOLOR);
226 if (pparam->cb) {
227 ppresparams->cb += 12;
228 pparam = (PPARAM) (((ULONG) pparam) + 12);
229 }
230
231 // shadow color -- takes 12 bytes
232 pparam->cb = WinQueryPresParam(hwnd,
233 PP_SHADOW, 0,
234 &pparam->id,
235 sizeof(LONG),
236 (PVOID) pparam->ab, QPF_NOINHERIT);
237 if (pparam->cb) {
238 ppresparams->cb += 12;
239 pparam = (PPARAM) (((ULONG) pparam) + 12);
240 }
241
242 // menu foreground color -- takes 12 bytes
243 pparam->cb = WinQueryPresParam(hwnd,
244 PP_MENUFOREGROUNDCOLOR,
245 PP_MENUFOREGROUNDCOLORINDEX,
246 &pparam->id,
247 sizeof(LONG),
248 (PVOID) pparam->ab, QPF_NOINHERIT);
249 if (pparam->cb) {
250 ppresparams->cb += 12;
251 pparam = (PPARAM) (((ULONG) pparam) + 12);
252 }
253
254 // menu background color -- takes 12 bytes
255 pparam->cb = WinQueryPresParam(hwnd,
256 PP_MENUBACKGROUNDCOLOR,
257 PP_MENUBACKGROUNDCOLORINDEX,
258 &pparam->id,
259 sizeof(LONG),
260 (PVOID) pparam->ab, QPF_NOINHERIT);
261 if (pparam->cb) {
262 ppresparams->cb += 12;
263 pparam = (PPARAM) (((ULONG) pparam) + 12);
264 }
265
266 // menu hilite foreground color -- takes 12 bytes
267 pparam->cb = WinQueryPresParam(hwnd,
268 PP_MENUHILITEFGNDCOLOR,
269 PP_MENUHILITEFGNDCOLORINDEX,
270 &pparam->id,
271 sizeof(LONG),
272 (PVOID) pparam->ab, QPF_NOINHERIT);
273 if (pparam->cb) {
274 ppresparams->cb += 12;
275 pparam = (PPARAM) (((ULONG) pparam) + 12);
276 }
277
278 // menu hilite background color -- takes 12 bytes
279 pparam->cb = WinQueryPresParam(hwnd,
280 PP_MENUHILITEBGNDCOLOR,
281 PP_MENUHILITEBGNDCOLORINDEX,
282 &pparam->id,
283 sizeof(LONG),
284 (PVOID) pparam->ab, QPF_NOINHERIT);
285 if (pparam->cb) {
286 ppresparams->cb += 12;
287 pparam = (PPARAM) (((ULONG) pparam) + 12);
288 }
289
290 // menu disabled foreground color -- takes 12 bytes
291 pparam->cb = WinQueryPresParam(hwnd,
292 PP_MENUDISABLEDFGNDCOLOR,
293 PP_MENUDISABLEDFGNDCOLORINDEX,
294 &pparam->id,
295 sizeof(LONG),
296 (PVOID) pparam->ab, QPF_NOINHERIT);
297 if (pparam->cb) {
298 ppresparams->cb += 12;
299 pparam = (PPARAM) (((ULONG) pparam) + 12);
300 }
301
302 // menu disabled background color -- takes 12 bytes
303 pparam->cb = WinQueryPresParam(hwnd,
304 PP_MENUDISABLEDBGNDCOLOR,
305 PP_MENUDISABLEDBGNDCOLORINDEX,
306 &pparam->id,
307 sizeof(LONG),
308 (PVOID) pparam->ab, QPF_NOINHERIT);
309 if (pparam->cb) {
310 ppresparams->cb += 12;
311 pparam = (PPARAM) (((ULONG) pparam) + 12);
312 }
313
314 if (ppresparams->cb)
315 PrfWriteProfileData(prof,
316 appname, tagname, ppresparams, ppresparams->cb + 4);
317
318 free(ppresparams);
319}
320
321#endif // NEVER
322
323VOID CopyPresParams(HWND target, HWND source)
324{
325 /**
326 * Copy presentation parameters of interest to us from one window
327 * to another
328 */
329
330 ULONG AttrFound, AttrValue[64], cbRetLen, x = 0,
331 AttrName[] = { PP_FONTNAMESIZE, PP_FOREGROUNDCOLOR,
332 PP_BACKGROUNDCOLOR, PP_HILITEBACKGROUNDCOLOR,
333 PP_HILITEFOREGROUNDCOLOR, PP_BORDERCOLOR, PP_MENUFOREGROUNDCOLOR,
334 PP_MENUBACKGROUNDCOLOR, PP_FOREGROUNDCOLORINDEX, PP_BACKGROUNDCOLORINDEX,
335 PP_HILITEFOREGROUNDCOLORINDEX, PP_HILITEBACKGROUNDCOLORINDEX,
336 PP_DISABLEDFOREGROUNDCOLOR, PP_DISABLEDBACKGROUNDCOLOR,
337 PP_DISABLEDFOREGROUNDCOLORINDEX, PP_DISABLEDBACKGROUNDCOLORINDEX,
338 PP_BORDERCOLOR, PP_BORDERCOLORINDEX, PP_FONTHANDLE, PP_ACTIVECOLOR,
339 PP_ACTIVECOLORINDEX, PP_INACTIVECOLOR, PP_INACTIVECOLORINDEX,
340 PP_ACTIVETEXTFGNDCOLOR, PP_ACTIVETEXTFGNDCOLORINDEX, PP_ACTIVETEXTBGNDCOLOR,
341 PP_ACTIVETEXTBGNDCOLORINDEX, PP_INACTIVETEXTFGNDCOLOR,
342 PP_INACTIVETEXTFGNDCOLORINDEX, PP_INACTIVETEXTBGNDCOLOR,
343 PP_INACTIVETEXTBGNDCOLORINDEX, PP_SHADOW, PP_MENUFOREGROUNDCOLORINDEX,
344 PP_MENUBACKGROUNDCOLORINDEX, PP_MENUHILITEFGNDCOLOR, PP_MENUHILITEFGNDCOLORINDEX,
345 PP_MENUHILITEBGNDCOLOR, PP_MENUHILITEBGNDCOLORINDEX, PP_MENUDISABLEDFGNDCOLOR,
346 PP_MENUDISABLEDFGNDCOLORINDEX, PP_MENUDISABLEDBGNDCOLOR,
347 PP_MENUDISABLEDBGNDCOLORINDEX, PP_SHADOWTEXTCOLOR, PP_SHADOWTEXTCOLORINDEX,
348 PP_SHADOWHILITEFGNDCOLOR, PP_SHADOWHILITEFGNDCOLORINDEX, PP_SHADOWHILITEBGNDCOLOR,
349 PP_SHADOWHILITEBGNDCOLORINDEX, PP_ICONTEXTBACKGROUNDCOLOR,
350 PP_ICONTEXTBACKGROUNDCOLORINDEX, PP_BORDERLIGHTCOLOR, PP_BORDERDARKCOLOR,
351 PP_BORDER2COLOR, PP_BORDER2LIGHTCOLOR, PP_BORDER2DARKCOLOR, PP_BORDERDEFAULTCOLOR,
352 PP_FIELDBACKGROUNDCOLOR, PP_BUTTONBACKGROUNDCOLOR, PP_BUTTONBORDERLIGHTCOLOR,
353 PP_BUTTONBORDERDARKCOLOR, PP_ARROWCOLOR, PP_ARROWBORDERLIGHTCOLOR,
354 PP_ARROWBORDERDARKCOLOR, PP_ARROWDISABLEDCOLOR, PP_CHECKLIGHTCOLOR,
355 PP_CHECKMIDDLECOLOR, PP_CHECKDARKCOLOR, PP_PAGEFOREGROUNDCOLOR,
356 PP_PAGEBACKGROUNDCOLOR, PP_MAJORTABFOREGROUNDCOLOR, PP_MAJORTABBACKGROUNDCOLOR,
357 PP_MINORTABFOREGROUNDCOLOR, PP_MINORTABBACKGROUNDCOLOR, PP_USER, 0 };
358
359 while (AttrName[x]) {
360 cbRetLen = WinQueryPresParam(source,
361 AttrName[x],
362 0,
363 &AttrFound,
364 sizeof(AttrValue),
365 &AttrValue, 0);
366 if (cbRetLen)
367 WinSetPresParam(target, AttrName[x], cbRetLen, (PVOID) AttrValue);
368 x++;
369 } //while
370}
371
372VOID SetPresParams(HWND hwnd, RGB2 * back, RGB2 * fore, RGB2 * border,
373 PCSZ font)
374{
375 if (font)
376 WinSetPresParam(hwnd, PP_FONTNAMESIZE, strlen(font) + 1, (PVOID) font);
377 if (back)
378 WinSetPresParam(hwnd, PP_BACKGROUNDCOLOR, sizeof(RGB2), (PVOID) back);
379 if (fore)
380 WinSetPresParam(hwnd, PP_FOREGROUNDCOLOR, sizeof(RGB2), (PVOID) fore);
381 if (border)
382 WinSetPresParam(hwnd, PP_BORDERCOLOR, sizeof(RGB2), (PVOID) border);
383}
384
385#if 0 // JBS 11 Sep 08
386VOID IfNoParam(HWND hwnd, CHAR * keyroot, ULONG size, PVOID attrvalue)
387{
388 ULONG fsize = 0;
389 CHAR s[81];
390
391 sprintf(s, "%s", keyroot);
392 if (!PrfQueryProfileSize(fmprof, appname, s, &fsize) || !fsize)
393 WinSetPresParam(hwnd, PP_FONTNAMESIZE, size, (PVOID) attrvalue);
394}
395#endif
396
397VOID PresParamChanged(HWND hwnd, PCSZ keyroot, MPARAM mp1, MPARAM mp2)
398{
399 ULONG AttrFound, AttrValue[64], cbRetLen;
400
401 cbRetLen = WinQueryPresParam(hwnd, (ULONG) mp1, 0, &AttrFound,
402 (ULONG) sizeof(AttrValue), &AttrValue, 0);
403 if (cbRetLen) {
404
405 CHAR s[133];
406
407 *s = 0;
408 switch (AttrFound) {
409 case PP_BACKGROUNDCOLOR:
410 sprintf(s, "%s.Backgroundcolor", keyroot);
411 break;
412 case PP_FOREGROUNDCOLOR:
413 sprintf(s, "%s.Foregroundcolor", keyroot);
414 break;
415 case PP_HILITEBACKGROUNDCOLOR:
416 sprintf(s, "%s.Hilitebackgroundcolor", keyroot);
417 break;
418 case PP_HILITEFOREGROUNDCOLOR:
419 sprintf(s, "%s.Hiliteforegroundcolor", keyroot);
420 break;
421 case PP_BORDERCOLOR:
422 sprintf(s, "%s.Bordercolor", keyroot);
423 break;
424 case PP_FONTNAMESIZE:
425 sprintf(s, "%s.Fontnamesize", keyroot);
426 break;
427 default:
428 break;
429 }
430 if (*s)
431 PrfWriteProfileData(fmprof, appname, s, (PVOID) AttrValue, cbRetLen);
432 }
433}
434
435VOID RestorePresParams(HWND hwnd, PCSZ keyroot)
436{
437 CHAR s[81];
438 ULONG AttrValue[64], size;
439
440 size = sizeof(AttrValue);
441 sprintf(s, "%s.Backgroundcolor", keyroot);
442 if (PrfQueryProfileData(fmprof, appname, s, (PVOID) AttrValue, &size)
443 && size)
444 WinSetPresParam(hwnd, PP_BACKGROUNDCOLOR, size, (PVOID) AttrValue);
445 size = sizeof(AttrValue);
446 sprintf(s, "%s.Foregroundcolor", keyroot);
447 if (PrfQueryProfileData(fmprof, appname, s, (PVOID) AttrValue, &size)
448 && size)
449 WinSetPresParam(hwnd, PP_FOREGROUNDCOLOR, size, (PVOID) AttrValue);
450 size = sizeof(AttrValue);
451 sprintf(s, "%s.Hilitebackgroundcolor", keyroot);
452 if (PrfQueryProfileData(fmprof, appname, s, (PVOID) AttrValue, &size)
453 && size)
454 WinSetPresParam(hwnd, PP_HILITEBACKGROUNDCOLOR, size, (PVOID) AttrValue);
455 size = sizeof(AttrValue);
456 sprintf(s, "%s.Hiliteforegroundcolor", keyroot);
457 if (PrfQueryProfileData(fmprof, appname, s, (PVOID) AttrValue, &size)
458 && size)
459 WinSetPresParam(hwnd, PP_HILITEFOREGROUNDCOLOR, size, (PVOID) AttrValue);
460 size = sizeof(AttrValue);
461 sprintf(s, "%s.Bordercolor", keyroot);
462 if (PrfQueryProfileData(fmprof, appname, s, (PVOID) AttrValue, &size)
463 && size)
464 WinSetPresParam(hwnd, PP_BORDERCOLOR, size, (PVOID) AttrValue);
465 size = sizeof(AttrValue);
466 sprintf(s, "%s.Fontnamesize", keyroot);
467 if (PrfQueryProfileData(fmprof,
468 appname, s, (PVOID) AttrValue, &size) && size)
469 WinSetPresParam(hwnd, PP_FONTNAMESIZE, size, (PVOID) AttrValue);
470}
471
472 /** SavePresParams
473 * Save the presentation parameters used by RestorePresParams
474 */
475VOID SavePresParams(HWND hwnd, PCSZ keyroot)
476{
477
478
479 ULONG AttrFound, AttrValue[64], cbRetLen, x = 0,
480 AttrName[] = { PP_FONTNAMESIZE, PP_FOREGROUNDCOLOR,
481 PP_BACKGROUNDCOLOR, PP_HILITEBACKGROUNDCOLOR,
482 PP_HILITEFOREGROUNDCOLOR, PP_BORDERCOLOR, 0 };
483
484 while (AttrName[x]) {
485 cbRetLen = WinQueryPresParam(hwnd,
486 AttrName[x],
487 0,
488 &AttrFound,
489 sizeof(AttrValue),
490 &AttrValue, 0);
491 if (cbRetLen){
492 CHAR s[133];
493
494 *s = 0;
495 switch (AttrFound) {
496 case PP_BACKGROUNDCOLOR:
497 sprintf(s, "%s.Backgroundcolor", keyroot);
498 break;
499 case PP_FOREGROUNDCOLOR:
500 sprintf(s, "%s.Foregroundcolor", keyroot);
501 break;
502 case PP_HILITEBACKGROUNDCOLOR:
503 sprintf(s, "%s.Hilitebackgroundcolor", keyroot);
504 break;
505 case PP_HILITEFOREGROUNDCOLOR:
506 sprintf(s, "%s.Hiliteforegroundcolor", keyroot);
507 break;
508 case PP_BORDERCOLOR:
509 sprintf(s, "%s.Bordercolor", keyroot);
510 break;
511 case PP_FONTNAMESIZE:
512 sprintf(s, "%s.Fontnamesize", keyroot);
513 break;
514 default:
515 break;
516 }
517 if (*s)
518 PrfWriteProfileData(fmprof, appname, s, (PVOID) AttrValue, cbRetLen);
519 }
520 x++;
521 } //while
522}
523
524VOID DeletePresParams(PCSZ Keyroot)
525{
526 PSZ apszPPNames[] =
527 {
528 "Backgroundcolor",
529 "Foregroundcolor",
530 "Hilitebackgroundcolor",
531 "Hiliteforegroundcolor",
532 "Bordercolor",
533 "Fontnamesize"
534 };
535
536 ULONG ulSize, ulArraySize = sizeof(apszPPNames) / sizeof(PSZ), x;
537 CHAR pchKeyroot[CCHMAXPATH];
538 CHAR *eos;
539
540 strcpy(pchKeyroot, Keyroot);
541 eos = pchKeyroot + strlen(pchKeyroot);
542
543 for (x = 0; x < ulArraySize; x++) {
544 strcpy(eos, apszPPNames[x]);
545 if (PrfQueryProfileSize(fmprof, appname, pchKeyroot, &ulSize) && ulSize) {
546 PrfWriteProfileData(fmprof, appname, pchKeyroot, NULL, ulSize);
547 }
548 }
549}
550
551#pragma alloc_text(PRESPARAM,CopyPresParams,SetPresParams)
552#pragma alloc_text(PRESPARAM,PresParamChanged,RestorePresParams,SavePresParams)
553#pragma alloc_text(PRESPARAM,StoreWndPresParams)
Note: See TracBrowser for help on using the repository browser.