source: trunk/dll/presparm.c@ 1348

Last change on this file since 1348 was 1348, checked in by Gregg Young, 17 years ago

More code cleanup

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