source: 2.19_branch/Sibyl/RTL/PMSTDDLG.PAS@ 376

Last change on this file since 376 was 8, checked in by RBRi, 19 years ago

+ rest of sibyl stuff

  • Property svn:eol-style set to native
File size: 83.0 KB
Line 
1UNIT PmStdDlg;
2
3{****************************** Module Header ******************************
4* *
5* Module Name: PMSTDDLG.PAS *
6* *
7* OS/2 Presentation Manager CUA controls and dialogs declarations *
8* *
9 ***************************************************************************}
10
11INTERFACE
12
13USES Os2Def,BseDos,PmWin,PmGpi;
14
15 {**********************************************************************
16 * *
17 * F I L E D I A L O G *
18 * *
19 **********************************************************************}
20
21 {*--------------------------------------------------------------------*
22 * File Dialog Invocation Flag Definitions. *
23 {*--------------------------------------------------------------------*}
24CONST
25 FDS_CENTER =$00000001;
26 FDS_CUSTOM =$00000002; { Use custom user template }
27 FDS_FILTERUNION =$00000004; { Use union of filters }
28 FDS_HELPBUTTON =$00000008; { Display Help button }
29 FDS_APPLYBUTTON =$00000010; { Display Apply button }
30 FDS_PRELOAD_VOLINFO =$00000020; { Preload volume info }
31 FDS_MODELESS =$00000040; { Make dialog modeless }
32 FDS_INCLUDE_EAS =$00000080; { Always load EA info }
33 FDS_OPEN_DIALOG =$00000100; { Select Open dialog }
34 FDS_SAVEAS_DIALOG =$00000200; { Select SaveAs dialog }
35 FDS_MULTIPLESEL =$00000400; { Enable multiple selection }
36 FDS_ENABLEFILELB =$00000800; { Enable SaveAs Listbox }
37
38 {--------------------------------------------------------------------}
39 { File Dialog Selection returned attribute }
40 {--------------------------------------------------------------------}
41 FDS_EFSELECTION =0;
42 FDS_LBSELECTION =1;
43
44 {--------------------------------------------------------------------}
45 { Error Return Codes from dialog (self defining) }
46 {--------------------------------------------------------------------}
47 FDS_SUCCESSFUL =0;
48 FDS_ERR_DEALLOCATE_MEMORY =1;
49 FDS_ERR_FILTER_TRUNC =2;
50 FDS_ERR_INVALID_DIALOG =3;
51 FDS_ERR_INVALID_DRIVE =4;
52 FDS_ERR_INVALID_FILTER =5;
53 FDS_ERR_INVALID_PATHFILE =6;
54 FDS_ERR_OUT_OF_MEMORY =7;
55 FDS_ERR_PATH_TOO_LONG =8;
56 FDS_ERR_TOO_MANY_FILE_TYPES =9;
57 FDS_ERR_INVALID_VERSION =10;
58 FDS_ERR_INVALID_CUSTOM_HANDLE =11;
59 FDS_ERR_DIALOG_LOAD_ERROR =12;
60 FDS_ERR_DRIVE_ERROR =13;
61
62 {--------------------------------------------------------------------}
63 { File Dialog Messages. }
64 {--------------------------------------------------------------------}
65 FDM_FILTER =WM_USER+40; { mp1 = PSZ pszFileName }
66 { mp2 = PSZ EA .TYPE value }
67 { mr = TRUE -> keep file. }
68 FDM_VALIDATE =WM_USER+41; { mp1 = PSZ pszPathName }
69 { mp2 = USHORT Field name id }
70 { mr = TRUE -> Valid name }
71 FDM_ERROR =WM_USER+42; { mp1 = USHORT Error message id }
72 { mp2 = NULL reserved }
73 { mr = NULL -> Use default msg }
74
75 {--------------------------------------------------------------------}
76 { Define the type that is a pointer to an array of pointers. }
77 { Hence: pointer to an array of Z string pointers. }
78 {--------------------------------------------------------------------}
79
80TYPE
81 PAPSZ=^APSZ;
82 APSZ=ARRAY[0..1] OF PChar;
83
84 {--------------------------------------------------------------------}
85 { File Dialog application data structure. }
86 {--------------------------------------------------------------------}
87TYPE
88 PFILEDLG=^FILEDLG;
89 FILEDLG=RECORD
90 cbSize:ULONG; { Size of FILEDLG structure. }
91 fl:ULONG; { FDS_ flags. Alter behavior of dlg. }
92 ulUser:ULONG; { User defined field. }
93 lReturn:LONG; { Result code from dialog dismissal. }
94 lSRC:LONG; { System return code. }
95 pszTitle:PChar; { String to display in title bar. }
96 pszOKButton:PChar;{ String to display in OK button. }
97 pfnDlgProc:POINTER;{ Entry point to custom dialog proc. }
98 pszIType:PChar; { Pointer to string containing }
99 papszITypeList:PAPSZ; { Pointer to table of pointers that
100 point to null terminated Type
101 strings. End of table is marked
102 by a NULL pointer. }
103 pszIDrive:PChar; { Pointer to string containing }
104 papszIDriveList:PAPSZ; { Pointer to table of pointers that
105 point to null terminated Drive
106 strings. End of table is marked
107 by a NULL pointer. }
108 hMod:HMODULE; { Custom File Dialog template. }
109 szFullFile:CSTRING[CCHMAXPATH-1]; { Initial or selected fully
110 qualified path and file.}
111 papszFQFilename:PAPSZ; { Pointer to table of pointers that
112 point to null terminated FQFname
113 strings. End of table is marked
114 by a NULL pointer. }
115 ulFQFCount:ULONG; { Number of files selected }
116 usDlgId:USHORT; { Custom dialog id. }
117 x:SHORT; { X coordinate of the dialog }
118 y:SHORT; { Y coordinate of the dialog }
119 sEAType:SHORT; { Selected file's EA Type. }
120 END;
121
122
123 {--------------------------------------------------------------------}
124 { File Dialog - dialog and control ids }
125 {--------------------------------------------------------------------}
126CONST
127 DID_FILE_DIALOG =256;
128 DID_FILENAME_TXT =257;
129 DID_FILENAME_ED =258;
130 DID_DRIVE_TXT =259;
131 DID_DRIVE_CB =260;
132 DID_FILTER_TXT =261;
133 DID_FILTER_CB =262;
134 DID_DIRECTORY_TXT =263;
135 DID_DIRECTORY_LB =264;
136 DID_FILES_TXT =265;
137 DID_FILES_LB =266;
138 DID_HELP_PB =267;
139 DID_APPLY_PB =268;
140 DID_OK_PB =DID_OK;
141 DID_CANCEL_PB =DID_CANCEL;
142
143 IDS_FILE_ALL_FILES_SELECTOR =1000;
144 IDS_FILE_BACK_CUR_PATH =1001;
145 IDS_FILE_BACK_PREV_PATH =1002;
146 IDS_FILE_BACK_SLASH =1003;
147 IDS_FILE_BASE_FILTER =1004;
148 IDS_FILE_BLANK =1005;
149 IDS_FILE_COLON =1006;
150 IDS_FILE_DOT =1007;
151 IDS_FILE_DRIVE_LETTERS =1008;
152 IDS_FILE_FWD_CUR_PATH =1009;
153 IDS_FILE_FWD_PREV_PATH =1010;
154 IDS_FILE_FORWARD_SLASH =1011;
155 IDS_FILE_PARENT_DIR =1012;
156 IDS_FILE_Q_MARK =1013;
157 IDS_FILE_SPLAT =1014;
158 IDS_FILE_SPLAT_DOT =1015;
159 IDS_FILE_SAVEAS_TITLE =1016;
160 IDS_FILE_SAVEAS_FILTER_TXT =1017;
161 IDS_FILE_SAVEAS_FILENM_TXT =1018;
162 IDS_FILE_DUMMY_FILE_NAME =1019;
163 IDS_FILE_DUMMY_FILE_EXT =1020;
164 IDS_FILE_DUMMY_DRIVE =1021;
165 IDS_FILE_DUMMY_ROOT_DIR =1022;
166 IDS_FILE_PATH_PTR =1023;
167 IDS_FILE_VOLUME_PREFIX =1024;
168 IDS_FILE_VOLUME_SUFFIX =1025;
169 IDS_FILE_PATH_PTR2 =1026;
170 IDS_FILE_INVALID_CHARS =1027;
171
172 IDS_FILE_BAD_DRIVE_NAME =1100;
173 IDS_FILE_BAD_DRIVE_OR_PATH_NAME =1101;
174 IDS_FILE_BAD_FILE_NAME =1102;
175 IDS_FILE_BAD_FQF =1103;
176 IDS_FILE_BAD_NETWORK_NAME =1104;
177 IDS_FILE_BAD_SUB_DIR_NAME =1105;
178 IDS_FILE_DRIVE_NOT_AVAILABLE =1106;
179 IDS_FILE_FQFNAME_TOO_LONG =1107;
180 IDS_FILE_OPEN_DIALOG_NOTE =1108;
181 IDS_FILE_PATH_TOO_LONG =1109;
182 IDS_FILE_SAVEAS_DIALOG_NOTE =1110;
183
184 IDS_FILE_DRIVE_DISK_CHANGE =1120;
185 IDS_FILE_DRIVE_NOT_READY =1122;
186 IDS_FILE_DRIVE_LOCKED =1123;
187 IDS_FILE_DRIVE_NO_SECTOR =1124;
188 IDS_FILE_DRIVE_SOME_ERROR =1125;
189 IDS_FILE_DRIVE_INVALID =1126;
190 IDS_FILE_INSERT_DISK_NOTE =1127;
191 IDS_FILE_OK_WHEN_READY =1128;
192
193 {********************************************************************}
194 { }
195 { F O N T D I A L O G }
196 { }
197 {********************************************************************}
198
199 {********************************************************************}
200 { Font Dialog Creation Structure }
201 {********************************************************************}
202
203TYPE
204 PFONTDLG=^FONTDLG;
205 FONTDLG=RECORD
206 cbSize:ULONG; { sizeof(FONTDLG) }
207 hpsScreen:HPS; { Screen presentation space }
208 hpsPrinter:HPS; { Printer presentation space }
209 pszTitle:PChar; { Application supplied title }
210 pszPreview:PChar; { String to print in preview wndw }
211 pszPtSizeList:PChar;{ Application provided size list }
212 pfnDlgProc:POINTER; { Dialog subclass procedure }
213 pszFamilyname:PChar;{ Family name of font }
214 fxPointSize:FIXED; { Point size the user selected }
215 fl:ULONG; { FNTS_* flags - dialog styles }
216 flFlags:ULONG; { FNTF_* state flags }
217 flType:ULONG; { Font type option bits }
218 flTypeMask:ULONG; { Mask of which font types to use }
219 flStyle:ULONG; { The selected style bits }
220 flStyleMask:ULONG; { Mask of which style bits to use }
221 clrFore:LONG; { Selected foreground color }
222 clrBack:LONG; { Selected background color }
223 ulUser:ULONG; { Blank field for application }
224 lReturn:LONG; { Return Value of the Dialog }
225 lSRC:LONG; { System return code. }
226 lEmHeight:LONG; { Em height of the current font }
227 lXHeight:LONG; { X height of the current font }
228 lExternalLeading:LONG;{ External Leading of font }
229 hMod:HMODULE; { Module to load custom template }
230 fAttrs:FATTRS; { Font attribute structure }
231 sNominalPointSize:SHORT; { Nominal Point Size of font }
232 usWeight:USHORT; { The boldness of the font }
233 usWidth:USHORT; { The width of the font }
234 x:SHORT; { X coordinate of the dialog }
235 y:SHORT; { Y coordinate of the dialog }
236 usDlgId:USHORT; { ID of a custom dialog template }
237 usFamilyBufLen:USHORT; { Length of family buffer provided}
238 usReserved:USHORT; { reserved }
239 END;
240
241 {********************************************************************}
242 { Font Dialog Style Flags }
243 {********************************************************************}
244CONST
245 FNTS_CENTER =$00000001; { Center in owner dialog}
246 FNTS_CUSTOM =$00000002; { Use custom template }
247 FNTS_OWNERDRAWPREVIEW =$00000004; { Allow app to draw }
248 FNTS_HELPBUTTON =$00000008; { Display Help button }
249 FNTS_APPLYBUTTON =$00000010; { Display Apply button }
250 FNTS_RESETBUTTON =$00000020; { Display Reset button }
251 FNTS_MODELESS =$00000040; { Make dialog modeless }
252 FNTS_INITFROMFATTRS =$00000080; { Initialize from FATTRs}
253 FNTS_BITMAPONLY =$00000100; { Only allow bitmap font}
254 FNTS_VECTORONLY =$00000200; { Only allow vector font}
255 FNTS_FIXEDWIDTHONLY =$00000400; { Only allow monospaced }
256 FNTS_PROPORTIONALONLY =$00000800; { Only proportional font}
257 FNTS_NOSYNTHESIZEDFONTS =$00001000; { Don't synthesize fonts}
258
259 {********************************************************************}
260 { Font Dialog Flags }
261 {********************************************************************}
262 FNTF_NOVIEWSCREENFONTS =1;
263 FNTF_NOVIEWPRINTERFONTS =2;
264 FNTF_SCREENFONTSELECTED =4;
265 FNTF_PRINTERFONTSELECTED =8;
266
267 {********************************************************************}
268 { Color code definitions }
269 {********************************************************************}
270 CLRC_FOREGROUND =1;
271 CLRC_BACKGROUND =2;
272
273 {********************************************************************}
274 { Filter List message string identifiers }
275 {********************************************************************}
276 FNTI_BITMAPFONT =$0001;
277 FNTI_VECTORFONT =$0002;
278 FNTI_FIXEDWIDTHFONT =$0004;
279 FNTI_PROPORTIONALFONT =$0008;
280 FNTI_SYNTHESIZED =$0010;
281 FNTI_DEFAULTLIST =$0020;
282 FNTI_FAMILYNAME =$0100;
283 FNTI_STYLENAME =$0200;
284 FNTI_POINTSIZE =$0400;
285
286 {********************************************************************}
287 { Error Return Codes from dialog (self defining) }
288 {********************************************************************}
289 FNTS_SUCCESSFUL = 0;
290 FNTS_ERR_INVALID_DIALOG = 3;
291 FNTS_ERR_ALLOC_SHARED_MEM = 4;
292 FNTS_ERR_INVALID_PARM = 5;
293 FNTS_ERR_OUT_OF_MEMORY = 7;
294 FNTS_ERR_INVALID_VERSION =10;
295 FNTS_ERR_DIALOG_LOAD_ERROR =12;
296
297 {********************************************************************}
298 { Font Dialog Messages }
299 {********************************************************************}
300 FNTM_FACENAMECHANGED =WM_USER+50; { mp1 = PSZ pszFacename }
301 FNTM_POINTSIZECHANGED =WM_USER+51; { mp1 = PSZ pszPointSize, }
302 { mp2 = FIXED fxPointSize }
303 FNTM_STYLECHANGED =WM_USER+52; { mp1 = PSTYLECHANGE pstyc}
304 FNTM_COLORCHANGED =WM_USER+53; { mp1 = LONG clr }
305 { mp2 = USHORT codeClr }
306 FNTM_UPDATEPREVIEW =WM_USER+54; { mp1 = HWND hWndPreview }
307 FNTM_FILTERLIST =WM_USER+55; { mp1 = PSZ pszFacename }
308 { mp2 = USHORT usStrStyle }
309 { mr=TRUE(Add),FALSE(Dont)}
310
311 {********************************************************************}
312 { Stylechange message parameter structure }
313 {********************************************************************}
314TYPE
315 PSTYLECHANGE=^STYLECHANGE;
316 STYLECHANGE=RECORD
317 usWeight:USHORT;
318 usWeightOld:USHORT;
319 usWidth:USHORT;
320 usWidthOld:USHORT;
321 flType:ULONG;
322 flTypeOld:ULONG;
323 flTypeMask:ULONG;
324 flTypeMaskOld:ULONG;
325 flStyle:ULONG;
326 flStyleOld:ULONG;
327 flStyleMask:ULONG;
328 flStyleMaskOld:ULONG;
329 END;
330
331
332 {********************************************************************}
333 { font dialog and control id's }
334 {********************************************************************}
335CONST
336 DID_FONT_DIALOG =300;
337 DID_NAME =301;
338 DID_STYLE =302;
339 DID_DISPLAY_FILTER =303;
340 DID_PRINTER_FILTER =304;
341 DID_SIZE =305;
342 DID_SAMPLE =306;
343 DID_OUTLINE =307;
344 DID_UNDERSCORE =308;
345 DID_STRIKEOUT =309;
346 DID_HELP_BUTTON =310;
347 DID_APPLY_BUTTON =311;
348 DID_RESET_BUTTON =312;
349 DID_OK_BUTTON =DID_OK;
350 DID_CANCEL_BUTTON =DID_CANCEL;
351 DID_NAME_PREFIX =313;
352 DID_STYLE_PREFIX =314;
353 DID_SIZE_PREFIX =315;
354 DID_SAMPLE_GROUPBOX =316;
355 DID_EMPHASIS_GROUPBOX =317;
356 DID_FONT_ISO_SUPPORT =318;
357 DID_FONT_ISO_UNTESTED =319;
358
359 {********************************************************************}
360 { Stringtable id's }
361 {********************************************************************}
362 IDS_FONT_SAMPLE =350;
363 IDS_FONT_BLANK =351;
364 IDS_FONT_KEY_0 =352;
365 IDS_FONT_KEY_9 =353;
366 IDS_FONT_KEY_SEP =354;
367 IDS_FONT_DISP_ONLY =355;
368 IDS_FONT_PRINTER_ONLY =356;
369 IDS_FONT_COMBINED =357;
370 IDS_FONT_WEIGHT1 =358;
371 IDS_FONT_WEIGHT2 =359;
372 IDS_FONT_WEIGHT3 =360;
373 IDS_FONT_WEIGHT4 =361;
374 IDS_FONT_WEIGHT5 =362;
375 IDS_FONT_WEIGHT6 =363;
376 IDS_FONT_WEIGHT7 =364;
377 IDS_FONT_WEIGHT8 =365;
378 IDS_FONT_WEIGHT9 =366;
379 IDS_FONT_WIDTH1 =367;
380 IDS_FONT_WIDTH2 =368;
381 IDS_FONT_WIDTH3 =369;
382 IDS_FONT_WIDTH4 =370;
383 IDS_FONT_WIDTH5 =371;
384 IDS_FONT_WIDTH6 =372;
385 IDS_FONT_WIDTH7 =373;
386 IDS_FONT_WIDTH8 =374;
387 IDS_FONT_WIDTH9 =375;
388 IDS_FONT_OPTION0 =376;
389 IDS_FONT_OPTION1 =377;
390 IDS_FONT_OPTION2 =378;
391 IDS_FONT_OPTION3 =379;
392 IDS_FONT_POINT_SIZE_LIST =380;
393
394 {********************************************************************}
395 { }
396 { S P I N B U T T O N }
397 { }
398 {********************************************************************}
399
400 {********************************************************************}
401 { SPINBUTTON Creation Flags }
402 {********************************************************************}
403
404 {********************************************************************}
405 { Character Acceptance }
406 {********************************************************************}
407CONST
408 SPBS_ALLCHARACTERS =$00000000; { Default: All chars accepted }
409 SPBS_NUMERICONLY =$00000001; { Only 0 - 9 accepted & VKeys }
410 SPBS_READONLY =$00000002; { No chars allowed in entryfld}
411
412 {********************************************************************}
413 { Type of Component }
414 {********************************************************************}
415 SPBS_MASTER =$00000010;
416 SPBS_SERVANT =$00000000; { Default: Servant }
417
418 {********************************************************************}
419 { Type of Justification }
420 {********************************************************************}
421 SPBS_JUSTDEFAULT =$00000000; { Default: Same as Left }
422 SPBS_JUSTLEFT =$00000008;
423 SPBS_JUSTRIGHT =$00000004;
424 SPBS_JUSTCENTER =$0000000C;
425
426 {********************************************************************}
427 { Border or not }
428 {********************************************************************}
429 SPBS_NOBORDER =$00000020; { Borderless SpinField }
430 { Default is to have a border. }
431
432 {********************************************************************}
433 { Fast spin or not }
434 {********************************************************************}
435 SPBS_FASTSPIN =$00000100; { Allow fast spinning. Fast }
436 { spinning is performed by }
437 { skipping over numbers }
438
439 {********************************************************************}
440 { Pad numbers on front with 0's }
441 {********************************************************************}
442 SPBS_PADWITHZEROS =$00000080; { Pad the number with zeroes }
443
444 {********************************************************************}
445 { SPINBUTTON Messages }
446 {********************************************************************}
447
448 {********************************************************************}
449 { Notification from Spinbutton to the application is sent in a }
450 { WM_CONTROL message. }
451 {********************************************************************}
452 SPBN_UPARROW =$20A; { up arrow button was pressed }
453 SPBN_DOWNARROW =$20B; { down arrow button was pressed}
454 SPBN_ENDSPIN =$20C; { mouse button was released }
455 SPBN_CHANGE =$20D; { spinfield text has changed }
456 SPBN_SETFOCUS =$20E; { spinfield received focus }
457 SPBN_KILLFOCUS =$20F; { spinfield lost focus }
458
459 {********************************************************************}
460 { Messages from application to Spinbutton }
461 {********************************************************************}
462 SPBM_OVERRIDESETLIMITS =$200; { Set spinbutton limits without}
463 { resetting the current value }
464 SPBM_QUERYLIMITS =$201; { Query limits set by }
465 { SPBM_SETLIMITS }
466 SPBM_SETTEXTLIMIT =$202; { Max entryfield characters }
467 SPBM_SPINUP =$203; { Tell entry field to spin up }
468 SPBM_SPINDOWN =$204; { Tell entry field to spin down}
469 SPBM_QUERYVALUE =$205; { Tell entry field to send }
470 { current value }
471
472 {********************************************************************}
473 { Query Flags }
474 {********************************************************************}
475 SPBQ_UPDATEIFVALID =0; { Default }
476 SPBQ_ALWAYSUPDATE =1;
477 SPBQ_DONOTUPDATE =3;
478
479 {********************************************************************}
480 { Return value for Empty Field. }
481 { If ptr too long, variable sent in query msg }
482 {********************************************************************}
483 SPBM_SETARRAY =$206; { Change the data to spin }
484 SPBM_SETLIMITS =$207; { Change the numeric Limits }
485 SPBM_SETCURRENTVALUE =$208; { Change the current value }
486 SPBM_SETMASTER =$209; { Tell entryfield who master is}
487
488 {********************************************************************}
489 { }
490 { D I R E C T M A N I P U L A T I O N }
491 { }
492 {********************************************************************}
493
494 PMERR_NOT_DRAGGING =$1f00;
495 PMERR_ALREADY_DRAGGING =$1f01;
496
497 MSGF_DRAG =$0010; { message filter identifier }
498
499 WM_DRAGFIRST =$0310;
500 WM_DRAGLAST =$032f;
501
502 DM_DROP =$032f;
503 DM_DRAGOVER =$032e;
504 DM_DRAGLEAVE =$032d;
505 DM_DROPHELP =$032c;
506 DM_ENDCONVERSATION =$032b;
507 DM_PRINT =$032a;
508 DM_RENDER =$0329;
509 DM_RENDERCOMPLETE =$0328;
510 DM_RENDERPREPARE =$0327;
511 DM_DRAGFILECOMPLETE =$0326;
512 DM_EMPHASIZETARGET =$0325;
513 DM_DRAGERROR =$0324;
514 DM_FILERENDERED =$0323;
515 DM_RENDERFILE =$0322;
516 DM_DRAGOVERNOTIFY =$0321;
517 DM_PRINTOBJECT =$0320;
518 DM_DISCARDOBJECT =$031f;
519
520 DRT_ASM ='Assembler Code'; { drag type constants }
521 DRT_BASIC ='BASIC Code';
522 DRT_BINDATA ='Binary Data';
523 DRT_BITMAP ='Bitmap';
524 DRT_C ='C Code';
525 DRT_COBOL ='COBOL Code';
526 DRT_DLL ='Dynamic Link Library';
527 DRT_DOSCMD ='DOS Command File';
528 DRT_EXE ='Executable';
529 DRT_FORTRAN ='FORTRAN Code';
530 DRT_ICON ='Icon';
531 DRT_LIB ='Library';
532 DRT_METAFILE ='Metafile';
533 DRT_OS2CMD ='OS/2 Command File';
534 DRT_PASCAL ='Pascal Code';
535 DRT_RESOURCE ='Resource File';
536 DRT_TEXT ='Plain Text';
537 DRT_UNKNOWN ='Unknown';
538
539 DOR_NODROP =$0000; { DM_DRAGOVER response codes }
540 DOR_DROP =$0001;
541 DOR_NODROPOP =$0002;
542 DOR_NEVERDROP =$0003;
543
544 DO_COPYABLE =$0001; { supported operation flags }
545 DO_MOVEABLE =$0002;
546 DO_LINKABLE =$0004;
547
548 DC_OPEN =$0001; { source control flags }
549 DC_REF =$0002;
550 DC_GROUP =$0004;
551 DC_CONTAINER =$0008;
552 DC_PREPARE =$0010;
553 DC_REMOVEABLEMEDIA =$0020;
554
555 DO_DEFAULT =$BFFE; { Default operation }
556 DO_UNKNOWN =$BFFF; { Unknown operation }
557 DO_COPY =$0010;
558 DO_MOVE =$0020;
559 DO_LINK =$0018;
560 DO_CREATE =$0040;
561
562 DMFL_TARGETSUCCESSFUL =$0001; { transfer reply flags }
563 DMFL_TARGETFAIL =$0002;
564 DMFL_NATIVERENDER =$0004;
565 DMFL_RENDERRETRY =$0008;
566 DMFL_RENDEROK =$0010;
567 DMFL_RENDERFAIL =$0020;
568
569 DRG_ICON =$00000001; { drag image manipulation }
570 DRG_BITMAP =$00000002; { flags }
571 DRG_POLYGON =$00000004;
572 DRG_STRETCH =$00000008;
573 DRG_TRANSPARENT =$00000010;
574 DRG_CLOSED =$00000020;
575
576 DME_IGNOREABORT =1; { DM_DRAGERROR return values }
577 DME_IGNORECONTINUE =2;
578 DME_REPLACE =3;
579 DME_RETRY =4;
580
581 DF_MOVE =$0001; { DM_DRAGFILECOMPLETE flags }
582 DF_SOURCE =$0002;
583 DF_SUCCESSFUL =$0004;
584
585 DRR_SOURCE =1;
586 DRR_TARGET =2;
587 DRR_ABORT =3;
588
589 DFF_MOVE =1; { DM_DRAGERROR operation IDs }
590 DFF_COPY =2;
591 DFF_DELETE =3;
592
593TYPE
594 HSTR=LHANDLE;
595
596 PDRAGITEM=^DRAGITEM;
597 DRAGITEM=RECORD
598 hwndItem:HWND; { conversation partner }
599 ulItemID:ULONG; { identifies item being dragged }
600 hstrType:HSTR; { type of item }
601 hstrRMF:HSTR; { rendering mechanism and format}
602 hstrContainerName:HSTR; { name of source container }
603 hstrSourceName:HSTR; { name of item at source }
604 hstrTargetName:HSTR; { suggested name of item at dest}
605 cxOffset:SHORT; { x offset of the origin of the }
606 cyOffset:SHORT; { y offset of the origin of the }
607 fsControl:USHORT; { source item control flags }
608 fsSupportedOps:USHORT; { ops supported by source }
609 END;
610
611 PDRAGINFO=^DRAGINFO;
612 DRAGINFO=RECORD
613 cbDraginfo:ULONG; { Size of DRAGINFO and DRAGITEMs}
614 cbDragitem:USHORT; { size of DRAGITEM }
615 usOperation:USHORT; { current drag operation }
616 hwndSource:HWND; { window handle of source }
617 xDrop:SHORT; { x coordinate of drop position }
618 yDrop:SHORT; { y coordinate of drop position }
619 cditem:USHORT; { count of DRAGITEMs }
620 usReserved:USHORT; { reserved for future use }
621 END;
622
623 PDRAGIMAGE=^DRAGIMAGE;
624 DRAGIMAGE=RECORD
625 cb:USHORT; { size control block }
626 cptl:USHORT; { count of pts, if DRG_POLYGON }
627 hImage:LHANDLE; { image handle passed to DrgDrag}
628 sizlStretch:SIZEL; { size to strecth ico or bmp to }
629 fl:ULONG; { flags passed to DrgDrag }
630 cxOffset:SHORT; { x offset of the origin of the }
631 cyOffset:SHORT; { y offset of the origin of the }
632 END;
633
634 PDRAGTRANSFER=^DRAGTRANSFER;
635 DRAGTRANSFER=RECORD
636 cb:ULONG; { size of control block }
637 hwndClient:HWND; { handle of target }
638 pditem:PDRAGITEM; { DRAGITEM being transferred }
639 hstrSelectedRMF:HSTR; { rendering mech & fmt of choice}
640 hstrRenderToName:HSTR; { name source will use }
641 ulTargetInfo:ULONG; { reserved for target's use }
642 usOperation:USHORT; { operation being performed }
643 fsReply:USHORT; { reply flags }
644 END;
645
646 PRENDERFILE=^RENDERFILE;
647 RENDERFILE=RECORD
648 hwndDragFiles:HWND; { conversation window }
649 hstrSource:HSTR; { handle to source file name }
650 hstrTarget:HSTR; { handle to target file name }
651 fMove:USHORT; { TRUE - move, FALSE - copy }
652 usRsvd:USHORT; { reserved }
653 END;
654
655 {********************************************************************}
656 { }
657 { C O N T A I N E R }
658 { }
659 {********************************************************************}
660
661 {********************************************************************}
662 { Error constants }
663 {********************************************************************}
664CONST
665 PMERR_NOFILTERED_ITEMS =$1f02;
666 PMERR_COMPARISON_FAILED =$1f03;
667 PMERR_RECORD_CURRENTLY_INSERTED =$1f04;
668 PMERR_FI_CURRENTLY_INSERTED =$1f05;
669
670 {********************************************************************}
671 { Container control styles. }
672 {********************************************************************}
673 CCS_EXTENDSEL =$00000001;
674 CCS_MULTIPLESEL =$00000002;
675 CCS_SINGLESEL =$00000004;
676 CCS_AUTOPOSITION =$00000008;
677 CCS_VERIFYPOINTERS =$00000010;
678 CCS_READONLY =$00000020;
679 CCS_MINIRECORDCORE =$00000040;
680
681 {********************************************************************}
682 { view identifiers (flWindowAttr) }
683 {********************************************************************}
684 CV_TEXT =$00000001; { text view }
685 CV_NAME =$00000002; { name view }
686 CV_ICON =$00000004; { icon view }
687 CV_DETAIL =$00000008; { detail view }
688 CV_FLOW =$00000010; { flow items }
689 CV_MINI =$00000020; { use mini icon }
690 CV_TREE =$00000040; { tree view }
691
692 {********************************************************************}
693 { Container Attributes (flWindowAttr) }
694 {********************************************************************}
695 CA_CONTAINERTITLE =$00000200;
696 CA_TITLESEPARATOR =$00000400;
697 CA_TITLELEFT =$00000800;
698 CA_TITLERIGHT =$00001000;
699 CA_TITLECENTER =$00002000;
700 CA_OWNERDRAW =$00004000;
701 CA_DETAILSVIEWTITLES =$00008000;
702 CA_ORDEREDTARGETEMPH =$00010000;
703 CA_DRAWBITMAP =$00020000;
704 CA_DRAWICON =$00040000;
705 CA_TITLEREADONLY =$00080000;
706 CA_OWNERPAINTBACKGROUND =$00100000;
707 CA_MIXEDTARGETEMPH =$00200000;
708 CA_TREELINE =$00400000;
709
710 {********************************************************************}
711 { child window IDs }
712 {********************************************************************}
713 CID_LEFTCOLTITLEWND =$7FF0; { column title (left) }
714 CID_RIGHTCOLTITLEWND =$7FF1; { right column title }
715 CID_BLANKBOX =$7FF2; { blank box at bottom right }
716 CID_HSCROLL =$7FF3; { horizontal scroll bar }
717 CID_RIGHTHSCROLL =$7FF4; { right horz scroll bar }
718 CID_CNRTITLEWND =$7FF5; { Container title window }
719 CID_LEFTDVWND =$7FF7; { Left Details View window }
720 CID_RIGHTDVWND =$7FF8; { Right Details View window }
721 CID_VSCROLL =$7FF9; { vertical scroll bar }
722 CID_MLE =$7FFA; { MLE window for direct edit}
723
724 {********************************************************************}
725 { Bitmap descriptor array element. }
726 {********************************************************************}
727TYPE
728 PTREEITEMDESC=^TREEITEMDESC;
729 TREEITEMDESC=RECORD
730 hbmExpanded:HBITMAP;
731 hbmCollapsed:HBITMAP;
732 hptrExpanded:HPOINTER;
733 hptrCollapsed:HPOINTER;
734 END;
735
736 {********************************************************************}
737 { Field Info data structure, attribute and data types, CV_DETAIL }
738 {********************************************************************}
739TYPE
740 PFIELDINFO=^FIELDINFO;
741 FIELDINFO=RECORD
742 cb:ULONG; { size of FIELDINFO struct }
743 flData:ULONG; { attributes of field's data }
744 flTitle:ULONG; { attributes of field's title }
745 pTitleData:POINTER;{ title data (default is string) }
746 { If CFT_BITMAP, must be HBITMAP }
747 offStruct:ULONG; { offset from RECORDCORE to data }
748 pUserData:POINTER; { pointer to user data }
749 pNextFieldInfo:PFIELDINFO; { pointer to next linked }
750 cxWidth:ULONG; { width of field in pels }
751 END;
752
753 {********************************************************************}
754 { RECORDCORE data structure , attribute values }
755 {********************************************************************}
756TYPE
757 PRECORDCORE=^RECORDCORE;
758 RECORDCORE=RECORD
759 cb:ULONG;
760 flRecordAttr:ULONG;{ record attributes }
761 ptlIcon:POINTL; { Position of CV_ICON item }
762 preccNextRecord:PRECORDCORE; { ptr to next record }
763 pszIcon:PChar; { Text for CV_ICON view }
764 hptrIcon:HPOINTER; { Icon to display for ~CV_MINI }
765 hptrMiniIcon:HPOINTER; { Icon to display for CV_MINI }
766 hbmBitmap:HBITMAP; { Bitmap to display for ~CV_MINI}
767 hbmMiniBitmap:HBITMAP; { Bitmap to display for CV_MINI }
768 pTreeItemDesc:PTREEITEMDESC; { Icons for the tree view }
769 pszText:PChar; { Text for CV_TEXT view }
770 pszName:PChar; { Text for CV_NAME view }
771 pszTree:PChar; { Text for CV_TREE view }
772 END;
773
774 {********************************************************************}
775 { MINIRECORDCORE data structure, attribute values }
776 {********************************************************************}
777TYPE
778 PMINIRECORDCORE=^MINIRECORDCORE;
779 MINIRECORDCORE=RECORD
780 cb:ULONG;
781 flRecordAttr:ULONG; { record attributes }
782 ptlIcon:POINTL; { Position of CV_ICON item }
783 preccNextRecord:PmINIRECORDCORE; {ptr to next record }
784 pszIcon:PChar; { Text for CV_ICON view }
785 hptrIcon:HPOINTER; { Icon to display for ~CV_MINI }
786 END;
787
788 {********************************************************************}
789 { CNRINFO data structure, describes the container control. }
790 {********************************************************************}
791TYPE
792 PCNRINFO=^CNRINFO;
793 CNRINFO=RECORD
794 cb:ULONG; { size of CNRINFO struct }
795 pSortRecord:POINTER; { ptr to sort function }
796 pFieldInfoLast:PFIELDINFO; { pointer to last column in}
797 { left pane of a split window.}
798 pFieldInfoObject:PFIELDINFO; { Pointer to a column to
799 represent an object.
800 This is the column which
801 will receive
802 IN-USE emphasis. }
803 pszCnrTitle:PChar; { text for container title. One
804 string separated by line
805 separators for multi-lines }
806 flWindowAttr:ULONG; { container attrs - CV_*, CA_* }
807 ptlOrigin:POINTL; { lower-left origin in virtual
808 coordinates. CV_ICON view }
809 cDelta:ULONG; { Application defined threshold
810 or number of records from
811 either end of the list. }
812 cRecords:ULONG; { number of records in container}
813 slBitmapOrIcon:SIZEL; { size of bitmap in pels }
814 slTreeBitmapOrIcon:SIZEL; { size of tree bitmaps in pels }
815 hbmExpanded:HBITMAP; { bitmap for tree node }
816 hbmCollapsed:HBITMAP; { bitmap for tree node }
817 hptrExpanded:HPOINTER;{ icon for tree node }
818 hptrCollapsed:HPOINTER;{ icon for tree node }
819 cyLineSpacing:LONG; { space between two rows }
820 cxTreeIndent:LONG; { indent for children }
821 cxTreeLine:LONG; { thickness of the Tree Line }
822 cFields:ULONG; { number of fields in container}
823 xVertSplitbar:LONG; { position relative to the
824 container (CV_DETAIL); if
825 =$FFFF then unsplit }
826 END;
827
828 PCDATE=^CDATE;
829 CDATE=RECORD
830 day:UCHAR; { current day }
831 month:UCHAR; { current month }
832 year:USHORT; { current year }
833 END;
834
835 PCTIME=^CTIME;
836 CTIME=RECORD
837 hours:UCHAR; { current hour }
838 minutes:UCHAR; { current minute }
839 seconds:UCHAR; { current second }
840 ucReserved:UCHAR; { reserved }
841 END;
842
843 {********************************************************************}
844 { attribute and type values for flData and flTitle members of }
845 { FIELDINFO, CFA_ (attributes), CFT_ (types) }
846 {********************************************************************}
847CONST
848 CFA_LEFT =$00000001; { left align text }
849 CFA_RIGHT =$00000002; { right align text }
850 CFA_CENTER =$00000004; { center text }
851 CFA_TOP =$00000008; { top-align text }
852 CFA_VCENTER =$00000010; { vertically center text }
853 CFA_BOTTOM =$00000020; { bottom-align text }
854 CFA_INVISIBLE =$00000040; { Specify invisible column. }
855 CFA_BITMAPORICON =$00000100; { field title is bitmap }
856 CFA_SEPARATOR =$00000200; { vert sep, right of fld }
857 CFA_HORZSEPARATOR =$00000400; { horz sep, bottom of fld }
858
859 CFA_STRING =$00000800; { string of characters }
860 CFA_OWNER =$00001000; { ownerdraw field }
861 CFA_DATE =$00002000; { date structure }
862 CFA_TIME =$00004000; { time structure }
863 CFA_FIREADONLY =$00008000; { Column is read-only. }
864 CFA_FITITLEREADONLY =$00010000; { Column Title is read-only }
865 CFA_ULONG =$00020000; { Column is number format }
866
867 {********************************************************************}
868 { attribute values for flRecordAttr member of RECORDCORE }
869 {********************************************************************}
870 CRA_SELECTED =$00000001; { record is selected }
871 CRA_TARGET =$00000002; { record has target emphasis }
872 CRA_CURSORED =$00000004; { cursor is on the record }
873 CRA_INUSE =$00000008; { record has in-use emphasis }
874 CRA_FILTERED =$00000010; { record has been filtered }
875 CRA_DROPONABLE =$00000020; { record can be dropped on }
876 CRA_RECORDREADONLY =$00000040; { record is read-only }
877 CRA_EXPANDED =$00000080; { record is expanded }
878 CRA_COLLAPSED =$00000100; { record is collapsed }
879
880 {********************************************************************}
881 { Container messages }
882 {********************************************************************}
883 CM_ALLOCDETAILFIELDINFO =$0330;
884 CM_ALLOCRECORD =$0331;
885 CM_ARRANGE =$0332;
886 CM_ERASERECORD =$0333;
887 CM_FILTER =$0334;
888 CM_FREEDETAILFIELDINFO =$0335;
889 CM_FREERECORD =$0336;
890 CM_HORZSCROLLSPLITWINDOW =$0337;
891 CM_INSERTDETAILFIELDINFO =$0338;
892 CM_INSERTRECORD =$0339;
893 CM_INVALIDATEDETAILFIELDINFO =$033a;
894 CM_INVALIDATERECORD =$033b;
895 CM_PAINTBACKGROUND =$033c;
896 CM_QUERYCNRINFO =$033d;
897 CM_QUERYDETAILFIELDINFO =$033e;
898 CM_QUERYDRAGIMAGE =$033f;
899 CM_QUERYRECORD =$0340;
900 CM_QUERYRECORDEMPHASIS =$0341;
901 CM_QUERYRECORDFROMRECT =$0342;
902 CM_QUERYRECORDRECT =$0343;
903 CM_QUERYVIEWPORTRECT =$0344;
904 CM_REMOVEDETAILFIELDINFO =$0345;
905 CM_REMOVERECORD =$0346;
906 CM_SCROLLWINDOW =$0347;
907 CM_SEARCHSTRING =$0348;
908 CM_SETCNRINFO =$0349;
909 CM_SETRECORDEMPHASIS =$034a;
910 CM_SORTRECORD =$034b;
911 CM_OPENEDIT =$034c;
912 CM_CLOSEEDIT =$034d;
913 CM_COLLAPSETREE =$034e;
914 CM_EXPANDTREE =$034f;
915 CM_QUERYRECORDINFO =$0350;
916
917 {********************************************************************}
918 { Container notifications }
919 {********************************************************************}
920 CN_DRAGAFTER =101;
921 CN_DRAGLEAVE =102;
922 CN_DRAGOVER =103;
923 CN_DROP =104;
924 CN_DROPHELP =105;
925 CN_ENTER =106;
926 CN_INITDRAG =107;
927 CN_EMPHASIS =108;
928 CN_KILLFOCUS =109;
929 CN_SCROLL =110;
930 CN_QUERYDELTA =111;
931 CN_SETFOCUS =112;
932 CN_REALLOCPSZ =113;
933 CN_BEGINEDIT =114;
934 CN_ENDEDIT =115;
935 CN_COLLAPSETREE =116;
936 CN_EXPANDTREE =117;
937 CN_HELP =118;
938 CN_CONTEXTMENU =119;
939
940 {********************************************************************}
941 { Data Structures for Message Parameters }
942 {********************************************************************}
943
944 {********************************************************************}
945 { Container Direct Manipulation structures }
946 {********************************************************************}
947TYPE
948 PCNDRAGINIT=^CNRDRAGINIT;
949 CNRDRAGINIT=RECORD
950 hwndCnr:HWND; { Container window handle }
951 pRecord:PRECORDCORE; { record under mouse ptr }
952 x:LONG; { x coordinate of mouse ptr }
953 y:LONG; { y coordinate of mouse ptr }
954 cx:LONG; { x offset from record }
955 cy:LONG; { y offset from record }
956 END;
957
958 {********************************************************************}
959 { Data structure for CM_INSERTDETAILFIELDINFO }
960 { This structure is used by the application to specify the position }
961 { of the FieldInfo structures they are inserting. }
962 {********************************************************************}
963TYPE
964 PFIELDINFOINSERT=^FIELDINFOINSERT;
965 FIELDINFOINSERT=RECORD
966 cb:ULONG; { Size of structure. }
967 pFieldInfoOrder:PFIELDINFO; { Specifies the order of the
968 FieldInfo structures. }
969 fInvalidateFieldInfo:ULONG;{ Invalidate on Insert. }
970 cFieldInfoInsert:ULONG; { The number of FieldInfo
971 structures to insert. }
972 END;
973
974 {********************************************************************}
975 { Data structure for CM_INSERTRECORD }
976 {********************************************************************}
977TYPE
978 PRECORDINSERT=^RECORDINSERT;
979 RECORDINSERT=RECORD
980 cb:ULONG;
981 pRecordOrder:PRECORDCORE;
982 pRecordParent:PRECORDCORE;
983 fInvalidateRecord:ULONG;
984 zOrder:ULONG;
985 cRecordsInsert:ULONG;
986 END;
987
988 {********************************************************************}
989 { Data structure for CM_QUERYRECORDFROMRECT }
990 {********************************************************************}
991TYPE
992 PQUERYRECFROMRECT=^QUERYRECFROMRECT;
993 QUERYRECFROMRECT=RECORD
994 cb:ULONG;
995 rect:RECTL;
996 fsSearch:ULONG;
997 END;
998
999 {********************************************************************}
1000 { Data structure for CM_QUERYRECORDRECT }
1001 {********************************************************************}
1002TYPE
1003 PQUERYRECODRECT=^QUERYRECORDRECT;
1004 QUERYRECORDRECT=RECORD
1005 cb:ULONG;
1006 pRecord:PRECORDCORE;
1007 fRightSplitWindow:ULONG;
1008 fsExtent:ULONG;
1009 END;
1010
1011 {********************************************************************}
1012 { Data structure for CM_SEARCHSTRING }
1013 {********************************************************************}
1014TYPE
1015 PSEARCHSTRRING=^SEARCHSTRING;
1016 SEARCHSTRING=RECORD
1017 cb:ULONG;
1018 pszSearch:PChar;
1019 fsPrefix:ULONG;
1020 fsCaseSensitive:ULONG;
1021 usView:ULONG;
1022 END;
1023
1024 {*****************************************************************}
1025 { Data Structure for CN_DRAGLEAVE,CN_DRAGOVER,CN_DROP,CN_DROPHELP }
1026 {*****************************************************************}
1027TYPE
1028 PCNRDRAGINFO=^CNRDRAGINFO;
1029 CNRDRAGINFO=RECORD
1030 pDragInfo:PDRAGINFO;
1031 pRecord:PRECORDCORE;
1032 END;
1033
1034 {********************************************************************}
1035 { Data structure for CN_EMPHASIS }
1036 {********************************************************************}
1037TYPE
1038 PNOTIFYRECORDEMPHASIS=^NOTIFYRECORDEMPHASIS;
1039 NOTIFYRECORDEMPHASIS=RECORD
1040 hwndCnr:HWND;
1041 pRecord:PRECORDCORE;
1042 fEmphasisMask:ULONG;
1043 END;
1044
1045 {********************************************************************}
1046 { Data structure for CN_ENTER }
1047 {********************************************************************}
1048TYPE
1049 PNOTIFYRECORDENTER=^NOTIFYRECORDENTER;
1050 NOTIFYRECORDENTER=RECORD
1051 hwndCnr:HWND;
1052 fKey:ULONG;
1053 pRecord:PRECORDCORE;
1054 END;
1055
1056 {********************************************************************}
1057 { Data structure for CN_QUERYDELTA }
1058 {********************************************************************}
1059TYPE
1060 PNOTIFYDELTA=^NOTIFYDELTA;
1061 NOTIFYDELTA=RECORD
1062 hwndCnr:HWND;
1063 fDelta:ULONG;
1064 END;
1065
1066 {********************************************************************}
1067 { Data structure for CN_SCROLL }
1068 {********************************************************************}
1069TYPE
1070 PNOTIFYSCROLL=^NOTIFYSCROLL;
1071 NOTIFYSCROLL=RECORD
1072 hwndCnr:HWND;
1073 lScrollInc:LONG;
1074 fScroll:ULONG;
1075 END;
1076
1077 {********************************************************************}
1078 { Data structure for CN_REALLOCPSZ }
1079 {********************************************************************}
1080TYPE
1081 PCNREDITDATA=^CNREDITDATA;
1082 CNREDITDATA=RECORD
1083 cb:ULONG;
1084 hwndCnr:HWND;
1085 pRecord:PRECORDCORE;
1086 pFieldInfo:PFIELDINFO;
1087 ppszText:^PChar; { address of PSZ }
1088 cbText:ULONG; { size of the new text }
1089 id:ULONG;
1090 END;
1091
1092 {********************************************************************}
1093 { Data structure for CM_PAINTBACKGROUND }
1094 {********************************************************************}
1095TYPE
1096 POWNERBACKGROUND=^OWNERBACKGROUND;
1097 OWNERBACKGROUND=RECORD
1098 hwnd:HWND;
1099 hps:HPS;
1100 rclBackground:RECTL;
1101 idWindow:LONG;
1102 END;
1103
1104 {********************************************************************}
1105 { Data structure used as part of WM_DRAWITEM }
1106 {********************************************************************}
1107TYPE
1108 PCNRDRAWITEMINFO=^CNRDRAWITEMINFO;
1109 CNRDRAWITEMINFO=RECORD
1110 pRecord:PRECORDCORE;
1111 pFieldInfo:PFIELDINFO;
1112 END;
1113
1114 {********************************************************************}
1115 { Message parameter flags }
1116 {********************************************************************}
1117CONST
1118 CMA_TOP =$0001; { Place at top of zorder }
1119 CMA_BOTTOM =$0002; { Place at bottom of zorder}
1120 CMA_LEFT =$0004;
1121 CMA_RIGHT =$0008;
1122
1123 CMA_FIRST =$0010; { Add record as first }
1124 CMA_LAST =$0020;
1125 CMA_END =$0040; { Add record to end of list}
1126 CMA_PREV =$0080;
1127 CMA_NEXT =$0100;
1128
1129 CMA_HORIZONTAL =$0200;
1130 CMA_VERTICAL =$0400;
1131 CMA_ICON =$0800;
1132 CMA_TEXT =$1000;
1133 CMA_PARTIAL =$2000;
1134 CMA_COMPLETE =$4000;
1135
1136 CMA_PARENT =$0001;
1137 CMA_FIRSTCHILD =$0002;
1138 CMA_LASTCHILD =$0004;
1139
1140 CMA_CNRTITLE =$0001; { Container title }
1141 CMA_DELTA =$0002; { Application defined }
1142 CMA_FLWINDOWATTR =$0004; { Container attributes }
1143 CMA_LINESPACING =$0008;
1144 CMA_PFIELDINFOLAST =$0010; { Ptr to last column in }
1145
1146 CMA_PSORTRECORD =$0020; { Pointer to sort function }
1147 CMA_PTLORIGIN =$0040; { Lower left origin }
1148 CMA_SLBITMAPORICON =$0080; { Size of bitmap }
1149 CMA_XVERTSPLITBAR =$0100; { Splitbar position }
1150 CMA_PFIELDINFOOBJECT =$0200; { Pointer to IN-USE }
1151 { emphasis column. }
1152
1153 CMA_TREEICON =$0400; { Icon for tree node }
1154 CMA_TREEBITMAP =$0800; { bitmap for tree node }
1155 CMA_CXTREEINDENT =$1000; { indent for children }
1156 CMA_CXTREELINE =$2000; { thickness of tree line }
1157 CMA_SLTREEBITMAPORICON =$4000; { size of icon of tree node }
1158
1159 CMA_ITEMORDER =$0001; { QueryRecord search flags }
1160 CMA_WINDOW =$0002;
1161 CMA_WORKSPACE =$0004;
1162 CMA_ZORDER =$0008;
1163
1164 CMA_DELTATOP =$0001; { Industrial - top delta }
1165 CMA_DELTABOT =$0002; { Industrial - bottom delta}
1166 CMA_DELTAHOME =$0004; { Industrial - top of list }
1167 CMA_DELTAEND =$0008; { Industrial - end of list }
1168
1169 CMA_NOREPOSITION =$0001; { InvalidateRecord flags }
1170 CMA_REPOSITION =$0002;
1171 CMA_TEXTCHANGED =$0004;
1172 CMA_ERASE =$0008;
1173
1174 CMA_FREE =$0001;
1175 CMA_INVALIDATE =$0002;
1176
1177 {********************************************************************}
1178 { }
1179 { S L I D E R }
1180 { }
1181 {********************************************************************}
1182
1183 {********************************************************************}
1184 { Define messages for the slider control }
1185 {********************************************************************}
1186CONST
1187 SLM_ADDDETENT =$0369; { Add detent niche }
1188 SLM_QUERYDETENTPOS =$036a; { Query position of detent }
1189 SLM_QUERYSCALETEXT =$036b; { Query text at tick number }
1190 SLM_QUERYSLIDERINFO =$036c; { Query slider information }
1191 SLM_QUERYTICKPOS =$036d; { Query position of tick }
1192 SLM_QUERYTICKSIZE =$036e; { Query size of tick }
1193 SLM_REMOVEDETENT =$036f; { Remove detent niche }
1194 SLM_SETSCALETEXT =$0370; { Set text above tick }
1195 SLM_SETSLIDERINFO =$0371; { Set slider parameters }
1196 SLM_SETTICKSIZE =$0372; { Set size of tick }
1197 SLN_CHANGE =1; { Slider position changed }
1198 SLN_SLIDERTRACK =2; { Slider dragged by user }
1199 SLN_SETFOCUS =3; { Slider gaining focus }
1200 SLN_KILLFOCUS =4; { Slider losing focus }
1201
1202 {********************************************************************}
1203 { Slider control data structure }
1204 {********************************************************************}
1205TYPE
1206 PSLDCDATA=^SLDCDATA;
1207 SLDCDATA=RECORD
1208 cbSize:ULONG; { Size of control block }
1209 usScale1Increments:USHORT; { # of divisions on scale }
1210 usScale1Spacing:USHORT;{ Space in pels between increments}
1211 usScale2Increments:USHORT; { # of divisions on scale }
1212 usScale2Spacing:USHORT;{ Space in pels between increments}
1213 END;
1214
1215 {********************************************************************}
1216 { Slider control style flag definition }
1217 {********************************************************************}
1218CONST
1219 SLS_HORIZONTAL =$00000000; { Orient slider horizontally}
1220 SLS_VERTICAL =$00000001; { Orient slider vertically }
1221 SLS_CENTER =$00000000; { Center shaft in window }
1222 SLS_BOTTOM =$00000002; { Offset shaft to bottom (H)}
1223 SLS_TOP =$00000004; { Offset shaft to top (H) }
1224 SLS_LEFT =$00000002; { Offset shaft to left (V) }
1225 SLS_RIGHT =$00000004; { Offset shaft to right (V) }
1226 SLS_SNAPTOINCREMENT =$00000008; { Snap to nearest increment }
1227 SLS_BUTTONSBOTTOM =$00000010; { Add buttons at shaft bot. }
1228 SLS_BUTTONSTOP =$00000020; { Add buttons at shaft top }
1229 SLS_BUTTONSLEFT =$00000010; { Add buttons left of shaft }
1230 SLS_BUTTONSRIGHT =$00000020; { Add buttons right of shaft}
1231 SLS_OWNERDRAW =$00000040; { Owner draw some fields }
1232 SLS_READONLY =$00000080; { Provide a read only slider}
1233 SLS_RIBBONSTRIP =$00000100; { Provide a ribbon strip }
1234 SLS_HOMEBOTTOM =$00000000; { Set home position at bot. }
1235 SLS_HOMETOP =$00000200; { Set home position at top }
1236 SLS_HOMELEFT =$00000000; { Set home position at left }
1237 SLS_HOMERIGHT =$00000200; { Set home position at right}
1238 SLS_PRIMARYSCALE1 =$00000000; { Scale 1 is primary scale }
1239 SLS_PRIMARYSCALE2 =$00000400; { Scale 2 is primary scale }
1240
1241 {********************************************************************}
1242 { Message attributes for setting and querying slider components }
1243 {********************************************************************}
1244 SMA_SCALE1 =$0001;
1245 SMA_SCALE2 =$0002;
1246 SMA_SHAFTDIMENSIONS =$0000;
1247 SMA_SHAFTPOSITION =$0001;
1248 SMA_SLIDERARMDIMENSIONS =$0002;
1249 SMA_SLIDERARMPOSITION =$0003;
1250 SMA_RANGEVALUE =$0000;
1251 SMA_INCREMENTVALUE =$0001;
1252 SMA_SETALLTICKS =$FFFF;
1253
1254 {********************************************************************}
1255 { Ownerdraw flag definitions }
1256 {********************************************************************}
1257 SDA_RIBBONSTRIP =$0001;
1258 SDA_SLIDERSHAFT =$0002;
1259 SDA_BACKGROUND =$0003;
1260 SDA_SLIDERARM =$0004;
1261
1262 {********************************************************************}
1263 { Error return codes }
1264 {********************************************************************}
1265 PMERR_UPDATE_IN_PROGRESS =$1f06;
1266 SLDERR_INVALID_PARAMETERS =-1;
1267
1268 {********************************************************************}
1269 { }
1270 { V A L U E S E T }
1271 { }
1272 {********************************************************************}
1273
1274 {********************************************************************}
1275 { Define messages for the value set control }
1276 {********************************************************************}
1277CONST
1278 VM_QUERYITEM =$0375; { Query item at location }
1279 VM_QUERYITEMATTR =$0376; { Query item attributes }
1280 VM_QUERYMETRICS =$0377; { Query metrics of control }
1281 VM_QUERYSELECTEDITEM =$0378; { Query selected item }
1282 VM_SELECTITEM =$0379; { Set selected item }
1283 VM_SETITEM =$037a; { Set item at location }
1284 VM_SETITEMATTR =$037b; { Set item attributes }
1285 VM_SETMETRICS =$037c; { Set metrics of control }
1286
1287 VN_SELECT =120; { Item selected by user }
1288 VN_ENTER =121; { Item entered by user }
1289 VN_DRAGLEAVE =122; { Drag left control }
1290 VN_DRAGOVER =123; { Drag is over item }
1291 VN_DROP =124; { Drop occurred on item }
1292 VN_DROPHELP =125; { Request help for drop }
1293 VN_INITDRAG =126; { Drag initiated on item }
1294 VN_SETFOCUS =127; { Value set gaining focus }
1295 VN_KILLFOCUS =128; { Value set losing focus }
1296 VN_HELP =129; { Help requested by user }
1297
1298 {********************************************************************}
1299 { Value set control data structure }
1300 {********************************************************************}
1301TYPE
1302 PVSCDATA=^VSCDATA;
1303 VSCDATA=RECORD
1304 cbSize:ULONG; { Size of control block }
1305 usRowCount:USHORT; { Number of rows in value set }
1306 usColumnCount:USHORT; { Number of columns in value set }
1307 END;
1308
1309 {********************************************************************}
1310 { Value set drag initialization structure }
1311 {********************************************************************}
1312TYPE
1313 PVSDRAGINIT=^VSDRAGINIT;
1314 VSDRAGINIT=RECORD
1315 hwnd:HWND; { Window handle of value set control}
1316 x:LONG; { X coordinate of pointer on desktop}
1317 y:LONG; { Y coordinate of pointer on desktop}
1318 cx:LONG; { X offset from pointer hot spot }
1319 cy:LONG; { Y offset from pointer hot spot }
1320 usRow:USHORT; { Number of rows in value set }
1321 usColumn:USHORT; { Number of columns in value set }
1322 END;
1323
1324 {*****************************************************************}
1325 { Value set drag information structure }
1326 {*****************************************************************}
1327TYPE
1328 PVSDRAGINFO=^VSDRAGINFO;
1329 VSDRAGINFO=RECORD
1330 pDragInfo:PDRAGINFO; { Pointer to a drag info structure }
1331 usRow:USHORT; { Number of rows in value set }
1332 usColumn:USHORT; { Number of columns in value set }
1333 END;
1334
1335 {********************************************************************}
1336 { Value set query item text structure }
1337 {********************************************************************}
1338TYPE
1339 PVSTEXT=^VSTEXT;
1340 VSTEXT=RECORD
1341 pszItemText:PChar; { Pointer to string for item text }
1342 ulBufLen:ULONG; { Length of buffer to copy string into }
1343 END;
1344
1345 {********************************************************************}
1346 { Value set control style flag definition }
1347 {********************************************************************}
1348CONST
1349 VS_BITMAP =$0001; { Default all items to bitmaps }
1350 VS_ICON =$0002; { Default all items to icons }
1351 VS_TEXT =$0004; { Default all items to text strings }
1352 VS_RGB =$0008; { Default all items to color info }
1353 VS_COLORINDEX =$0010; { Default all items to color indices}
1354 VS_BORDER =$0020; { Add a border around the control }
1355 VS_ITEMBORDER =$0040; { Add a border around each item }
1356 VS_SCALEBITMAPS =$0080; { Scale bitmaps to cell size }
1357 VS_RIGHTTOLEFT =$0100; { Support right to left ordering }
1358 VS_OWNERDRAW =$0200; { Owner draws value set background }
1359
1360 {********************************************************************}
1361 { Value set item attribute definition }
1362 {********************************************************************}
1363 VIA_BITMAP =$0001; { If set, item contains a bitmap }
1364 VIA_ICON =$0002; { If set, item contains an icon }
1365 VIA_TEXT =$0004; { If set, item contains text string }
1366 VIA_RGB =$0008; { If set, item contains color value }
1367 VIA_COLORINDEX =$0010; { If set, item contains color index }
1368 VIA_OWNERDRAW =$0020; { If set, item is ownerdraw }
1369 VIA_DISABLED =$0040; { If set, item is unselectable }
1370 VIA_DRAGGABLE =$0080; { If set, item can be source of drag}
1371 VIA_DROPONABLE =$0100; { If set, item can be target of drop}
1372
1373 {********************************************************************}
1374 { Message parameter attributes for sizing and spacing of items }
1375 {********************************************************************}
1376 VMA_ITEMSIZE =$0001;
1377 VMA_ITEMSPACING =$0002;
1378
1379 {********************************************************************}
1380 { Ownerdraw flag definitions }
1381 {********************************************************************}
1382 VDA_ITEM =$0001;
1383 VDA_ITEMBACKGROUND =$0002;
1384 VDA_SURROUNDING =$0003;
1385 VDA_BACKGROUND =$0004;
1386
1387 {********************************************************************}
1388 { Error return codes }
1389 {********************************************************************}
1390 VSERR_INVALID_PARAMETERS =-1;
1391
1392 {********************************************************************}
1393 { }
1394 { N O T E B O O K }
1395 { }
1396 {********************************************************************}
1397
1398 {********************************************************************}
1399 { Message ids }
1400 {********************************************************************}
1401CONST
1402 BKM_CALCPAGERECT =$0353; { Calc book/page rectangle }
1403 BKM_DELETEPAGE =$0354; { Delete page(s) }
1404 BKM_INSERTPAGE =$0355; { Insert page }
1405 BKM_INVALIDATETABS =$0356; { Invalidate tab area }
1406 BKM_TURNTOPAGE =$0357; { Turn to page }
1407 BKM_QUERYPAGECOUNT =$0358; { Query number of pages }
1408 BKM_QUERYPAGEID =$0359; { Query page identifier }
1409 BKM_QUERYPAGEDATA =$035a; { Query page user data }
1410 BKM_QUERYPAGEWINDOWHWND =$035b; { Query page window handle }
1411 BKM_QUERYTABBITMAP =$035c; { Query tab bitmap handle }
1412 BKM_QUERYTABTEXT =$035d; { Query tab text pointer }
1413 BKM_SETDIMENSIONS =$035e; { Set tab/dogear dimensions }
1414 BKM_SETPAGEDATA =$035f; { Set page user data }
1415 BKM_SETPAGEWINDOWHWND =$0360; { Set page window handle }
1416 BKM_SETSTATUSLINETEXT =$0361; { Set status line text }
1417 BKM_SETTABBITMAP =$0362; { Set tab bitmap }
1418 BKM_SETTABTEXT =$0363; { Set tab text }
1419 BKM_SETNOTEBOOKCOLORS =$0364; { Set Notebook colors }
1420 BKM_QUERYPAGESTYLE =$0365; { Query page style }
1421 BKM_QUERYSTATUSLINETEXT =$0366; { Query status line text }
1422
1423 BKN_PAGESELECTED =130; { New page selected by user }
1424 BKN_NEWPAGESIZE =131; { App page size changed }
1425 BKN_HELP =132; { Help notification }
1426 BKN_PAGEDELETED =133; { Page deleted notification }
1427
1428 {********************************************************************}
1429 { Page deletion flags (usDeleteFlag) }
1430 {********************************************************************}
1431 BKA_ALL =$0001; { all pages }
1432 BKA_SINGLE =$0002; { single page }
1433 BKA_TAB =$0004; { minor/major section }
1434
1435 {********************************************************************}
1436 { Page insertion/query order (usPageOrder, usQueryOrder) }
1437 {********************************************************************}
1438 BKA_LAST =$0002; { Insert/Query last page }
1439 BKA_FIRST =$0004; { Insert/Query first page }
1440 BKA_NEXT =$0008; { Insert/Query after page }
1441 BKA_PREV =$0010; { Insert/Query before page }
1442 BKA_TOP =$0020; { Query topmost page }
1443
1444 {********************************************************************}
1445 { Notebook region types (usBookRegion, usType) }
1446 {********************************************************************}
1447 BKA_MAJORTAB =$0001; { Major Tab }
1448 BKA_MINORTAB =$0002; { Minor Tab }
1449 BKA_PAGEBUTTON =$0100; { Page Turning Button }
1450
1451 {********************************************************************}
1452 { Page insertion/query styles (usPageStyle,usQueryEnd) }
1453 {********************************************************************}
1454 BKA_STATUSTEXTON =$0001; { status area text }
1455 BKA_MAJOR =$0040; { Major Tab }
1456 BKA_MINOR =$0080; { Minor Tab }
1457 BKA_AUTOPAGESIZE =$0100; { Page window position/size }
1458 BKA_END =$0200; { Query to end of book }
1459
1460 {********************************************************************}
1461 { Tab window contents (usTabDisplay) }
1462 {********************************************************************}
1463 BKA_TEXT =$0400; { text data }
1464 BKA_BITMAP =$0800; { bitmap }
1465
1466 {********************************************************************}
1467 { Notebook window styles (ulNotebookStyles) }
1468 {********************************************************************}
1469
1470 {********************************************************************}
1471 { Backpage Orientation }
1472 {********************************************************************}
1473 BKS_BACKPAGESBR =$00000001; { Bottom right }
1474 BKS_BACKPAGESBL =$00000002; { Bottom left }
1475 BKS_BACKPAGESTR =$00000004; { Top right }
1476 BKS_BACKPAGESTL =$00000008; { Top left }
1477
1478 {********************************************************************}
1479 { Major Tab Side }
1480 {********************************************************************}
1481 BKS_MAJORTABRIGHT =$00000010; { Major tabs right }
1482 BKS_MAJORTABLEFT =$00000020; { Major tabs left }
1483 BKS_MAJORTABTOP =$00000040; { Major tabs top }
1484 BKS_MAJORTABBOTTOM =$00000080; { Major tabs bottom }
1485
1486 {********************************************************************}
1487 { Tab Type }
1488 {********************************************************************}
1489 BKS_SQUARETABS =$00000000; { Square edged tabs }
1490 BKS_ROUNDEDTABS =$00000100; { Round edged tabs }
1491 BKS_POLYGONTABS =$00000200; { Polygon edged tabs }
1492
1493 {********************************************************************}
1494 { Binding type }
1495 {********************************************************************}
1496 BKS_SOLIDBIND =$00000000; { Solid binding }
1497 BKS_SPIRALBIND =$00000400; { Spiral binding }
1498 BKS_COLORTABS =$00000800; { Color tabs}
1499
1500 {********************************************************************}
1501 { Status line text justification }
1502 {********************************************************************}
1503 BKS_STATUSTEXTLEFT =$00000000; { Left justify text }
1504 BKS_STATUSTEXTRIGHT =$00001000; { Right justify text }
1505 BKS_STATUSTEXTCENTER =$00002000; { Center text }
1506
1507 {********************************************************************}
1508 { Tab text justification }
1509 {********************************************************************}
1510 BKS_TABTEXTLEFT =$00000000; { Left justify tab text }
1511 BKS_TABTEXTRIGHT =$00004000; { Right justify tab text}
1512 BKS_TABTEXTCENTER =$00008000; { Center tab text }
1513
1514 {********************************************************************}
1515 { Notebook color presentation param attributes }
1516 {********************************************************************}
1517 BKA_BACKGROUNDPAGECOLORINDEX =$0001;{ Page Background }
1518 BKA_BACKGROUNDPAGECOLOR =$0002;
1519 BKA_BACKGROUNDMAJORCOLORINDEX =$0003;{ Major Tab Background }
1520 BKA_BACKGROUNDMAJORCOLOR =$0004;
1521 BKA_BACKGROUNDMINORCOLORINDEX =$0005;{ Minor Tab Background }
1522 BKA_BACKGROUNDMINORCOLOR =$0006;
1523 BKA_FOREGROUNDMAJORCOLORINDEX =$0007;{ Major Tab Text }
1524 BKA_FOREGROUNDMAJORCOLOR =$0008;
1525 BKA_FOREGROUNDMINORCOLORINDEX =$0009;{ Minor Tab Text }
1526 BKA_FOREGROUNDMINORCOLOR =$000A;
1527
1528 {********************************************************************}
1529 { Error message ids }
1530 {********************************************************************}
1531 BOOKERR_INVALID_PARAMETERS =-1; { Invalid parameters }
1532
1533 {********************************************************************}
1534 { BKM_QUERYTABTEXT and BKM_QUERYSTATUSLINETEXT message structure }
1535 {********************************************************************}
1536TYPE
1537 PBOOKTEXT=^BOOKTEXT;
1538 BOOKTEXT=RECORD
1539 apString:PChar; { ptr to string buffer }
1540 textLen:ULONG; { length of string to query }
1541 END;
1542
1543 {********************************************************************}
1544 { BKN_PAGEDELETED notify message structure }
1545 {********************************************************************}
1546TYPE
1547 PDELETENOTIFY=^DELETENOTIFY;
1548 DELETENOTIFY=RECORD
1549 hwndBook:HWND; { Notebook window handle }
1550 hwndPage:HWND; { App. page window handle }
1551 ulAppPageData:ULONG; { App. page data }
1552 hbmTab:HBITmAP; { App. tab bitmap handle }
1553 END;
1554
1555 {********************************************************************}
1556 { BKN_PAGESELECTED notify message structure }
1557 {********************************************************************}
1558TYPE
1559 PPAGESELECTNOTIFY=^PAGESELECTNOTIFY;
1560 PAGESELECTNOTIFY=RECORD
1561 hwndBook:HWND; { Notebook window handle }
1562 ulPageIdCur:ULONG; { Previous top page id }
1563 ulPageIdNew:ULONG; { New top Page id }
1564 END;
1565
1566
1567IMPORTS
1568
1569FUNCTION WinFileDlg(hwndP,hwndO:HWND;VAR pfild:FILEDLG):HWND;
1570 APIENTRY; 'PMCTLS' index 4;
1571FUNCTION WinDefFileDlgProc(ahwnd:HWND;msg:ULONG;mp1,mp2:MPARAM):MRESULT;
1572 APIENTRY; 'PMCTLS' index 5;
1573FUNCTION WinFreeFileDlgList(papszFQFilename:PAPSZ):BOOL;
1574 APIENTRY; 'PMCTLS' index 6;
1575FUNCTION WinFontDlg(hwndP,hwndO:HWND;VAR pfntd:FONTDLG):HWND;
1576 APIENTRY; 'PMCTLS' index 2;
1577FUNCTION WinDefFontDlgProc(ahwnd:HWND;msg:ULONG;mp1,mp2:MPARAM):MRESULT;
1578 APIENTRY; 'PMCTLS' index 3;
1579FUNCTION DrgAcceptDroppedFiles(ahwnd:HWND;VAR pszPath,pszTypes:PSZ;
1580 ulDefaultOp,ulRsvd:ULONG):BOOL;
1581 APIENTRY; 'PMDRAG' index 66;
1582FUNCTION DrgAllocDragInfo(cditem:ULONG):PDRAGINFO;
1583 APIENTRY; 'PMDRAG' index 34;
1584FUNCTION DrgAllocDragtransfer(cdxfer:ULONG):PDRAGTRANSFER;
1585 APIENTRY; 'PMDRAG' index 35;
1586FUNCTION DrgDrag(hwndSource:HWND;VAR pdinfo:DRAGINFO;VAR pdimg:DRAGIMAGE;
1587 cdimg:ULONG;vkTerminate:LONG;VAR pRsvd):HWND;
1588 APIENTRY; 'PMDRAG' index 38;
1589FUNCTION DrgDragFiles(ahwnd:HWND;VAR apszFiles,apszTypes,apszTargets:PSZ;
1590 cFiles:ULONG;hptrDrag:HPOINTER;vkTerm:ULONG;
1591 fSourceRender:BOOL;ulRsvd:ULONG):BOOL;
1592 APIENTRY; 'PMDRAG' index 65;
1593FUNCTION DrgPostTransferMsg(ahwnd:HWND;msg:ULONG;VAR pdxfer:DRAGTRANSFER;
1594 fl,ulRsvd:ULONG;fRetry:BOOL):BOOL;
1595 APIENTRY; 'PMDRAG' index 42;
1596FUNCTION DrgQueryDragitem(VAR pdinfo:DRAGINFO;cbBuffer:ULONG;
1597 VAR pditem:DRAGITEM;iItem:ULONG):BOOL;
1598 APIENTRY; 'PMDRAG' index 44;
1599FUNCTION DrgQueryDragitemCount(VAR pdinfo:DRAGINFO):ULONG;
1600 APIENTRY; 'PMDRAG' index 45;
1601FUNCTION DrgQueryDragitemPtr(VAR pdinfo:DRAGINFO;i:ULONG):PDRAGITEM;
1602 APIENTRY; 'PMDRAG' index 46;
1603FUNCTION DrgQueryNativeRMF(VAR pditem:DRAGITEM;cbBuffer:ULONG;
1604 VAR pBuffer):BOOL;
1605 APIENTRY; 'PMDRAG' index 47;
1606FUNCTION DrgQueryNativeRMFLen(VAR pditem:DRAGITEM):ULONG;
1607 APIENTRY; 'PMDRAG' index 48;
1608FUNCTION DrgQueryStrName(ahstr:HSTR;cbBuffer:ULONG;VAR pBuffer:PSZ):ULONG;
1609 APIENTRY; 'PMDRAG' index 49;
1610FUNCTION DrgQueryStrNameLen(ahstr:HSTR):ULONG;
1611 APIENTRY; 'PMDRAG' index 50;
1612FUNCTION DrgQueryTrueType(VAR pditem:DRAGITEM;cbBuffer:ULONG;
1613 VAR pBuffer:PSZ):BOOL;
1614 APIENTRY; 'PMDRAG' index 51;
1615FUNCTION DrgQueryTrueTypeLen(VAR pditem:DRAGITEM):ULONG;
1616 APIENTRY; 'PMDRAG' index 52;
1617FUNCTION DrgSendTransferMsg(ahwnd:HWND;msg:ULONG;mp1,mp2:MPARAM):MRESULT;
1618 APIENTRY; 'PMDRAG' index 54;
1619FUNCTION DrgSetDragitem(VAR pdinfo:DRAGINFO;VAR pditem:DRAGITEM;
1620 cbBuffer,iItem:ULONG):BOOL;
1621 APIENTRY; 'PMDRAG' index 57;
1622FUNCTION DrgSetDragImage(VAR pdinfo:DRAGINFO;VAR pdimg:DRAGIMAGE;
1623 cdimg:ULONG;VAR pRsvd):BOOL;
1624 APIENTRY; 'PMDRAG' index 56;
1625FUNCTION DrgVerifyTypeSet(VAR pditem:DRAGITEM;VAR pszType:PSZ;cbMatch:ULONG;
1626 VAR pszMatch:PSZ):BOOL;
1627 APIENTRY; 'PMDRAG' index 62;
1628FUNCTION DrgAccessDraginfo(pdinfo:PDRAGINFO):BOOL;
1629 APIENTRY; 'PMDRAG' index 32;
1630FUNCTION DrgAddStrHandle(VAR apsz:PSZ):HSTR;
1631 APIENTRY; 'PMDRAG' index 33;
1632FUNCTION DrgDeleteDraginfoStrHandles(VAR pdinfo:DRAGINFO):BOOL;
1633 APIENTRY; 'PMDRAG' index 36;
1634FUNCTION DrgDeleteStrHandle(ahstr:HSTR):BOOL;
1635 APIENTRY; 'PMDRAG' index 37;
1636FUNCTION DrgFreeDraginfo(pdinfo:PDRAGINFO):BOOL;
1637 APIENTRY; 'PMDRAG' index 39;
1638FUNCTION DrgFreeDragtransfer(VAR pdxfer:DRAGTRANSFER):BOOL;
1639 APIENTRY; 'PMDRAG' index 40;
1640FUNCTION DrgGetPS(ahwnd:HWND):HPS;
1641 APIENTRY; 'PMDRAG' index 41;
1642FUNCTION DrgPushDraginfo(VAR pdinfo:DRAGINFO;hwndDest:HWND):BOOL;
1643 APIENTRY; 'PMDRAG' index 43;
1644FUNCTION DrgReleasePS(ahps:HPS):BOOL;
1645 APIENTRY; 'PMDRAG' index 53;
1646FUNCTION DrgSetDragPointer(VAR pdinfo:DRAGINFO;hptr:HPOINTER):BOOL;
1647 APIENTRY; 'PMDRAG' index 55;
1648FUNCTION DrgVerifyNativeRMF(VAR pditem:DRAGITEM;VAR pszRMF:PSZ):BOOL;
1649 APIENTRY; 'PMDRAG' index 58;
1650FUNCTION DrgVerifyRMF(VAR pditem:DRAGITEM;VAR pszMech,pszFmt:PSZ):BOOL;
1651 APIENTRY; 'PMDRAG' index 59;
1652FUNCTION DrgVerifyTrueType(VAR pditem:DRAGITEM;VAR pszType:PSZ):BOOL;
1653 APIENTRY; 'PMDRAG' index 60;
1654FUNCTION DrgVerifyType(VAR pditem:DRAGITEM;VAR pszType:PSZ):BOOL;
1655 APIENTRY; 'PMDRAG' index 61;
1656END;
1657
1658IMPLEMENTATION
1659
1660BEGIN
1661END.
Note: See TracBrowser for help on using the repository browser.