source: branches/mediafolder/include/wpobject.hh@ 222

Last change on this file since 222 was 104, checked in by gyoung, 23 months ago

Remaining changes from merge with Lars 2.9 branch

  • Property svn:eol-style set to native
File size: 73.6 KB
Line 
1#ifndef _DTS_HH_INCLUDED_wpobject
2#define _DTS_HH_INCLUDED_wpobject
3/* Start Class WPObject */
4
5// This file was generated by the IBM "DirectToSOM" emitter for C++ (V1.77)
6// Generated at 10/22/96 06:18:53 EDT
7// This is class: WPObject
8// Mangled class name: WPObject
9// SE: May 19/94
10
11#pragma SOMAsDefault(off)
12
13/********************************************/
14
15 /* Object style flags (see wpSetStyle) */
16
17 #define OBJSTYLE_NOMOVE 2
18 #define OBJSTYLE_NOLINK 4
19 #define OBJSTYLE_NOCOPY 8
20 #define OBJSTYLE_NOTDEFAULTICON 16 /* Intentionally not declared CLSSTYLE */
21 #define OBJSTYLE_TEMPLATE 32
22 #define OBJSTYLE_NODELETE 64
23 #define OBJSTYLE_NOPRINT 128
24 #define OBJSTYLE_NODRAG 256
25 #define OBJSTYLE_NOTVISIBLE 512
26 #define OBJSTYLE_NOSETTINGS 1024
27 #define OBJSTYLE_NORENAME 2048
28 #define OBJSTYLE_NODROP 4096
29 #define OBJSTYLE_NODROPON 8192 /* Use instead of OBJSTYLE_NODROP,
30 because OBJSTYLE_NODROP and
31 CLSSTYLE_PRIVATE have the same
32 value (DD 86093F) */
33 #define OBJSTYLE_CUSTOMICON 16384 /* Use instead of OBJSTYLE_NOTDEFAULTICON
34 because OBJSTYLE_NOTDEFAULTICON and
35 CLSSTYLE_NEVERTEMPLATE have the same
36 value (DD 86093F) */
37
38 /* Class style flags (see wpclsQueryStyle) */
39
40 #define CLSSTYLE_NEVERMOVE OBJSTYLE_NOMOVE
41 #define CLSSTYLE_NEVERLINK OBJSTYLE_NOLINK
42 #define CLSSTYLE_NEVERCOPY OBJSTYLE_NOCOPY
43 #define CLSSTYLE_NEVERTEMPLATE 16
44 #define CLSSTYLE_NEVERDELETE OBJSTYLE_NODELETE
45 #define CLSSTYLE_NEVERPRINT OBJSTYLE_NOPRINT
46 #define CLSSTYLE_NEVERDRAG OBJSTYLE_NODRAG
47 #define CLSSTYLE_NEVERVISIBLE OBJSTYLE_NOTVISIBLE
48 #define CLSSTYLE_NEVERRENAME OBJSTYLE_NORENAME
49 #define CLSSTYLE_PRIVATE 4096 /* Intentionally not declared OBJSTYLE */
50 #define CLSSTYLE_NEVERSETTINGS OBJSTYLE_NOSETTINGS /*DD 86093F*/
51 #define CLSSTYLE_NEVERDROPON OBJSTYLE_NODROPON /*DD 86093F*/
52 #define CLSSTYLE_HIDDEN 32768 /* Use instead of CLSSTYLE_PRIVATE
53 because OBJSTYLE_NODROP and
54 CLSSTYLE_PRIVATE have the same
55 value (DD 86093F) */
56 #define CLSSTYLE_DONTTEMPLATE 65536 /* Use instead of CLSSTYLE_NEVERTEMPLATE
57 because OBJSTYLE_NOTDEFAULTICON and
58 CLSSTYLE_NEVERTEMPLATE have the same
59 value (DD 86093F) */
60
61 #define SETTINGS_PAGE_REMOVED -1
62
63
64 /* Notes: The class name immediately follows the control block. The
65 * first instance variable control block immediately follows
66 * this.
67 */
68 typedef struct _WPSRCLASSBLOCK
69 {
70 SHORT ClassNameLength; /* Length of class name, including the
71 * .. null terminator. This must be a
72 * .. SHORT and must be at the beginning
73 * .. of the structure.
74 */
75 USHORT IVarLength; /* Length of instance variable
76 * .. information, including the two-
77 * .. byte null terminator
78 */
79 } WPSRCLASSBLOCK;
80
81 //GKY missing? fixme
82 typedef struct _FILTERFLAGS
83 {
84 ULONG cbItem;
85 ULONG Flags[3];
86 } FILTERFLAGS;
87 typedef FILTERFLAGS *PFILTERFLAGS;
88
89
90 /* This control structure does not reside in the dormant state.
91 * It is used only when a persistant data block is
92 * resident in memory - either when an object is being saved or
93 * when it is being restored...
94 */
95 typedef struct _OBJDATA
96 {
97 WPSRCLASSBLOCK *CurrentClass;
98 WPSRCLASSBLOCK *First;
99 PUCHAR NextData;
100 USHORT Length;
101 } OBJDATA;
102 typedef OBJDATA *POBJDATA;
103
104 /* wpCnrInsertObject/wpCnrRemoveObject structs
105 * and macros...
106 */
107
108 typedef struct _CLASSDETAILS /* Class Details struct */
109 {
110 PSZ pszAttribute; /* Translatable string for a class attribute*/
111 PVOID pSortRecord; /* Function pointer for sort function for attribute*/
112 struct _CLASSDETAILS *pNext; /* Next item in class details list */
113 } CLASSDETAILS;
114 typedef CLASSDETAILS *PCLASSDETAILS;
115
116
117 /* Details comparison function definition
118 *
119 * Param1 PVOID - Pointer to details field value
120 * Param2 PVOID - Pointer to value to be compared with
121 *
122 * Returns LONG - Must be CMP_EQUAL, CMP_GREATER, CMP_LESS
123 */
124 typedef LONG (EXPENTRY FNCOMPARE)(PVOID,PVOID);
125 typedef FNCOMPARE *PFNCOMPARE;
126
127
128 /* This structure is always followed immediately by a type
129 * dependant struct such as MEMORYITEM,RECORDITEM,VIEWITEM
130 * or some other user defined structure...
131 */
132 typedef struct _USEITEM
133 {
134 ULONG type; /* Type of this Item */
135 struct _USEITEM *pNext; /* Next item in use list */
136 } USEITEM;
137 typedef USEITEM *PUSEITEM;
138
139 #define USAGE_MEMORY 1 /* Values of 'type' */
140 #define USAGE_RECORD 4
141 #define USAGE_OPENVIEW 5
142 #define USAGE_LINK 6
143 #define USAGE_OPENFILE 20
144
145 typedef struct _MEMORYITEM /* USAGE_MEMORY struct */
146 {
147 ULONG cbBuffer; /* Number of bytes in memory block */
148 } MEMORYITEM;
149 typedef MEMORYITEM *PMEMORYITEM;
150
151 typedef struct _RECORDITEM /* USAGE_RECORD struct */
152 {
153 HWND hwndCnr; /* Cnr into which object is inserted */
154 PMINIRECORDCORE pRecord; /* Record pointer within that cnr */
155 ULONG ulUser; /* For application use RECSH */
156 } RECORDITEM;
157 typedef RECORDITEM *PRECORDITEM;
158
159 typedef struct _VIEWITEM /* USAGE_OPENVIEW struct */
160 {
161 ULONG view; /* Object view that this represents */
162 LHANDLE handle; /* Open handle */
163 ULONG ulViewState; /* View State flags */
164 HWND hwndCnr; /* System use only (window animation) */
165 PMINIRECORDCORE pRecord; /* System use only (window animation) */
166 } VIEWITEM;
167 typedef VIEWITEM *PVIEWITEM;
168
169 typedef struct _LINKITEM /* USAGE_LINK struct */
170 {
171 WPObject *LinkObj; /* The link object */
172 } LINKITEM;
173 typedef LINKITEM *PLINKITEM;
174
175 typedef struct _VIEWFILE /* USAGE_OPENFILE struct */
176 {
177 ULONG ulMenuId; /* Menu id if association or menu page */
178 LHANDLE handle; /* Open handle */
179 HWND hwndCnr; /* System use only (window animation) */
180 PMINIRECORDCORE pRecord; /* System use only (window animation) */
181 } VIEWFILE;
182 typedef VIEWFILE *PVIEWFILE;
183
184
185 #define VIEWSTATE_OPENING 0x0001 /* The view is being opened */
186 #define VIEWSTATE_OBJECTDELETED 0x0002 /* The object has been deleted */
187 #define VIEWSTATE_USERHIDDEN 0x0004 /* The view was hidden by user */
188 #define VIEWSTATE_POPULATING 0x0008 /* The view is populating */
189 #define VIEWSTATE_USERMINIMIZED 0x0010 /* The view was minimized by the user */
190 #define VIEWSTATE_CLOSING 0x0020 /* The view is closing */
191 #define VIEWSTATE_DELETING 0x0040 /* The object is being deleted */
192
193
194 typedef struct _TASKREC
195 {
196 struct _TASKREC *next; /* next in the list of current tasks */
197 ULONG useCount; /* can be referenced by multiple object*/
198 PVOID pStdDlg; /* ptr to standard WP task dialog */
199 WPFolder *folder; /* intended folder for the object */
200 LONG xOrigin; /* intended position for the object */
201 LONG yOrigin; /* intended position for the object */
202 PSZ pszTitle; /* intended name for the object */
203 ULONG cbTitle; /* length of the name buffer */
204 PMINIRECORDCORE positionAfterRecord; /* intended sort position */
205 BOOL fKeepAssociations;
206 PVOID pReserved; /* reserved - equal null */
207
208 } TASKREC;
209 typedef TASKREC *PTASKREC;
210
211
212
213 /* Owner draw function definition
214 *
215 * Param1 HWND - Handle of window that is being painted
216 * Param2 PVOID - POWNERITEM structure pointer, see the container
217 * control programming reference for the meaning
218 * of the fields in this structure.
219 * Param3 PVOID - Pointer to the comparison value to draw (this
220 * is NULL, except when this function is painting
221 * its value into the include criteria dialog
222 * when it points to Criteria.CompareValue...)
223 *
224 * Returns BOOL - TRUE if the field was ownerdrawn, FALSE if the
225 * container control should do default painting.
226 */
227 typedef BOOL (EXPENTRY FNOWNDRW)(HWND,PVOID,PVOID);
228 typedef FNOWNDRW *PFNOWNDRW;
229
230 /* Structure for wpclsQueryDetailsInfo method
231 *
232 * CLASSFIELDINFO is identical to the FIELDINFO structure of the
233 * container control with the following differences:
234 *
235 * - The offStruct field from FIELDINFO is reserved.
236 * - The offFieldData and usLenFieldData structure elements have
237 * been added.
238 * - Compare/Sort/Ownerdraw fields have also been added for the
239 * convenience of the programmer, so that object details can
240 * be customized and objects can be found or included by any
241 * of their displayable object details.
242 *
243 * For example if the application has the following details data:
244 *
245 * typedef struct _SAMPLE {
246 * CDATE cdate;
247 * CTIME ctime;
248 * PSZ psz;
249 * } SAMPLE;
250 *
251 * classfieldinfo[0].offFieldData = FIELDOFFSET(SAMPLE,cdate);
252 * classfieldinfo[0].ulLenFieldData = FIELDOFFSET(SAMPLE,ctime) -
253 * FIELDOFFSET(SAMPLE,cdate);
254 *
255 * classfieldinfo[1].offFieldData = FIELDOFFSET(SAMPLE,ctime);
256 * classfieldinfo[1].ulLenFieldData = FIELDOFFSET(SAMPLE,psz) -
257 * FIELDOFFSET(SAMPLE,ctime);
258 *
259 * classfieldinfo[2].offFieldData = FIELDOFFSET(SAMPLE,psz);
260 * classfieldinfo[2].ulLenFieldData = sizeof(SAMPLE) -
261 * FIELDOFFSET(SAMPLE,psz);
262 *
263 * NOTE: It is essential that the fields be linked in order ex. above
264 * cdate must be followed by ctime and finally psz.
265 */
266 typedef struct _CLASSFIELDINFO /*!INC*/
267 {
268 /* Details field attributes
269 */
270 ULONG cb; /* size of CLASSFIELDINFO struct */
271 ULONG flData; /* attributes of field's data */
272 ULONG flTitle; /* attributes of field's title */
273 PVOID pTitleData; /* title data (default is string) */
274 /* If CFT_BITMAP, must be HBITMAP */
275 ULONG ulReserved; /* Reserved */
276 PVOID pUserData; /* pointer to user data */
277 struct _CLASSFIELDINFO *pNextFieldInfo; /* pointer to next linked */
278 /* CLASSFIELDINFO structure*/
279 ULONG cxWidth; /* width of field in pels */
280 ULONG offFieldData; /* offset from beginning of */
281 /* this class's data for this */
282 /* field. (first field is 0). */
283 ULONG ulLenFieldData; /* width of data in bytes. */
284 /* (4 for a pointer). */
285 PFNOWNDRW pfnOwnerDraw; /* Ownerdraw procedure for detail */
286 /* column. Can be NULL except if */
287 /* ownerdraw is being used. */
288 /* Include/Sort parameters
289 */
290 ULONG flCompare; /* Flags: for example, use the */
291 /* COMPARE_SUPPORTED flag if */
292 /* your field can be compared */
293 PFNCOMPARE pfnCompare; /* Comparison function for this */
294 /* field. Can be NULL unless */
295 /* ownerdraw is used. */
296 ULONG DefaultComparison; /* This is the default compare */
297 /* operator in the include */
298 /* page criteria dialog. (eg: */
299 /* CMP_LESS_OR_EQUAL) */
300 ULONG ulLenCompareValue; /* Maximum length of the compare */
301 /* data. Can be NULL unless */
302 /* ownerdraw is used. */
303 PVOID pDefCompareValue; /* The default value to be used */
304 /* for comparisons. Can be NULL */
305 /* unless ownerdraw is used. */
306 PVOID pMinCompareValue; /* The default value to be used */
307 /* for comparisons.Can be NULL */
308 /* unless ownerdraw is used. */
309 PVOID pMaxCompareValue; /* The default value to be used */
310 /* for comparisons.Can be NULL */
311 /* unless ownerdraw is used. */
312 PSZ pszEditControlClass; /* Window class to be used to edit*/
313 /* the compare value. Can be */
314 /* NULL unless ownerdraw is used*/
315 PFNCOMPARE pfnSort; /* Sort function for this @SM09511*/
316 /* field. Can be NULL unless */
317 /* ownerdraw is used. */
318 PSZ *pNewComp;
319 } CLASSFIELDINFO;
320
321 typedef CLASSFIELDINFO *PCLASSFIELDINFO;
322
323 #define CMP_EQUAL 0
324 #define CMP_GREATER 1
325 #define CMP_LESS 2
326 #define CMP_GREATER_OR_EQUAL 3
327 #define CMP_LESS_OR_EQUAL 4
328 #define CMP_NOT_EQUAL 5
329
330 #define NUM_CMP_VALUES 6
331
332
333 #define COMPARE_SUPPORTED 1
334 #define SORTBY_SUPPORTED 2
335
336 /* Standard notebook size constants */
337 #define STDNOTEBOOKWIDTH 290
338 #define STDNOTEBOOKHEIGHT 275
339
340 /* Confirm flags */
341 #define CONFIRM_DELETE 0x0001
342 #define CONFIRM_DELETEFOLDER 0x0002
343 #define CONFIRM_RENAMEFILESWITHEXT 0x0004
344 #define CONFIRM_KEEPASSOC 0x0008
345 #define CONFIRM_ACTION 0x0010
346 #define CONFIRM_PROGRESS 0x0020
347 #define CONFIRM_ALLOWFORCEDELETE 0x0040
348 #define CONFIRM_FORCEDELETE 0x0080
349
350 #define OK_DELETE 1
351 #define NO_DELETE 2
352 #define CANCEL_DELETE 3
353
354 #define NUM_OBJDETAILS_FIELDS 5 /* number of object details */
355
356 /* Search Type for wpclsQueryExtendedCriteria */
357
358 #define SEARCH_ALL_FOLDERS 1
359 #define SEARCH_THIS_FOLDER 2
360 #define SEARCH_THIS_TREE 3
361
362
363 /* Find method related types and constants */
364
365 typedef WPObject *OBJECT; /* FIND */
366 typedef OBJECT *POBJECT;
367 typedef M_WPObject *CLASS;
368 typedef CLASS *PCLASS;
369 typedef LHANDLE HFIND;
370 typedef HFIND *PHFIND;
371
372 /* Flags for the wpFilterPopupMenu() method */
373
374 #define CTXT_CRANOTHER 0x0001 /* Flags for ulFlags */
375 #define CTXT_NEW CTXT_CRANOTHER
376 #define CTXT_OPEN 0x0002
377 #define CTXT_WINDOW 0x0004
378 #define CTXT_SWITCHTO CTXT_WINDOW
379 #define CTXT_CLOSE 0x0008
380 #define CTXT_SETTINGS 0x0010
381 #define CTXT_PRINT 0x0020
382 #define CTXT_HELP 0x0040
383 #define CTXT_DELETE 0x0080
384 #define CTXT_COPY 0x0100
385 #define CTXT_MOVE 0x0200
386 #define CTXT_SHADOW 0x0400
387 #define CTXT_LINK CTXT_SHADOW
388 #define CTXT_PROGRAM 0x0800
389 #define CTXT_ICON 0x001000
390 #define CTXT_TREE 0x002000
391 #define CTXT_DETAILS 0x004000
392 #define CTXT_FIND 0x008000
393 #define CTXT_SELECT 0x010000
394 #define CTXT_ARRANGE 0x020000
395 #define CTXT_SORT 0x040000
396 #define CTXT_SHUTDOWN 0x080000
397 #define CTXT_LOCKUP 0x100000
398 #define CTXT_PALETTE 0x200000
399 #define CTXT_REFRESH 0x400000
400 #define CTXT_PICKUP 0x800000 /*rme88844*/
401 #define CTXT_PUTDOWN 0x1000000 /*rme88844*/
402 #define CTXT_PUTDOWN_CANCEL 0x2000000 /*rme88844*/
403
404
405 /* Flags for the wpDisplayMenu() method */
406
407 #define MENU_OBJECTPOPUP 0x00000001
408 #define MENU_OPENVIEWPOPUP 0x00000002
409 #define MENU_TITLEBARPULLDOWN 0x00000003
410 #define MENU_TITLEBARPULLDOWNINT 0x00000004
411 #define MENU_USER 0x80000000
412
413 /* common context menu ids */
414
415 #define WPMENUID_USER 0x6500
416 #define WPMENUID_PRIMARY 0
417 #define WPMENUID_OPEN 1
418 #define WPMENUID_HELP 2
419 #define WPMENUID_PRINT 3
420 #define WPMENUID_SELECT 4
421 #define WPMENUID_SORT 5
422 #define WPMENUID_TREE 123 /*DD 86092F*/
423 #define WPMENUID_FIND 8 /*DD 86092F*/
424 #define WPMENUID_CREATEANOTHER 101 /*DD 86092F*/
425 #define WPMENUID_MOVE 107 /*DD 86092F*/
426 #define WPMENUID_COPY 108 /*DD 86092F*/
427 #define WPMENUID_DELETE 109 /*DD 86092F*/
428 #define WPMENUID_PROPERTIES 112 /*DD 86092F*/
429 #define WPMENUID_SELALL 114 /*DD 86092F*/
430 #define WPMENUID_DESELALL 115 /*DD 86092F*/
431 #define WPMENUID_RESERVED1 118 /*DD 86092F*/
432 #define WPMENUID_CLOSE 120 /*DD 86092F*/
433 #define WPMENUID_FORMAT 124 /*DD 86092F*/
434 #define WPMENUID_CHKDSK 128 /*DD 86092F*/
435 #define WPMENUID_FIXDSK 129 /*DD 86092F*/
436 #define WPMENUID_PROGRAM 132 /*DD 86092F*/
437 #define WPMENUID_COPYDSK 182 /*DD 86092F*/
438 #define WPMENUID_LOCKDISK 184 /*DD 86092F*/
439 #define WPMENUID_EJECTDISK 185 /*DD 86092F*/
440 #define WPMENUID_UNLOCKDISK 186 /*DD 86092F*/
441 #define WPMENUID_PICKUP 188 /* rme77131*/
442 #define WPMENUID_PUTDOWN 189 /* rme77131*/
443 #define WPMENUID_PUTDOWN_COPY 190 /* rme77131*/
444 #define WPMENUID_PUTDOWN_MOVE 191 /* rme77131*/
445 #define WPMENUID_PUTDOWN_LINK 192 /* rme77131*/
446 #define WPMENUID_PUTDOWN_CANCEL 193 /* rme77131*/
447 #define WPMENUID_PUTDOWN_CREATE 194 /* rme77131*/
448 #define WPMENUID_ICON 303 /*DD 86092F*/
449 #define WPMENUID_DETAILS 304 /*DD 86092F*/
450 #define WPMENUID_ARRANGE 309 /*DD 86092F*/
451 #define WPMENUID_RESERVED2 315 /*DD 86092F*/
452 #define WPMENUID_CREATESHADOW 316 /*DD 86092F*/
453 #define WPMENUID_PALETTE 317 /*DD 86092F*/
454 #define WPMENUID_REFRESH 503 /*DD 86092F*/
455 #define WPMENUID_HELP_FOR_HELP 601 /*DD 86092F*/
456 #define WPMENUID_HOWTOGETHELP 601 /*DD 86092F*/
457 #define WPMENUID_EXTENDEDHELP 602 /*DD 86092F*/
458 #define WPMENUID_HELPKEYS 603 /*DD 86092F*/
459 #define WPMENUID_HELPINDEX 604 /*DD 86092F*/
460 #define WPMENUID_SHUTDOWN 704 /*DD 86092F*/
461 #define WPMENUID_LOCKUP 705 /*DD 86092F*/
462 #define WPMENUID_LOGIN 708 /*DD 86092F*/
463 #define WPMENUID_LOGOUT 709 /*DD 86092F*/
464 #define WPMENUID_ASSIGN 710 /*DD 86092F*/
465 #define WPMENUID_UNASSIGN 711 /*DD 86092F*/
466 #define WPMENUID_ACCESSNEW 712 /*DD 86092F*/
467 #define WPMENUID_SYSTEMSETUP 713 /*DD 86092F*/
468
469
470
471
472 /* Open views for the wpOpen() method */
473
474 #define OPEN_UNKNOWN -1
475 #define OPEN_DEFAULT 0
476 #define OPEN_CONTENTS 1
477 #define OPEN_SETTINGS 2
478 #define OPEN_HELP 3
479 #define OPEN_RUNNING 4
480 #define OPEN_PROMPTDLG 5
481 #define OPEN_PALETTE 121 /*SPLIT*/
482 #define OPEN_USER 0x6500
483
484
485 /* Macro to return the object associated with a given MINIRECORDCORE
486 * that was inserted using the wpCnrInsertObject method
487 */
488 #define OBJECT_FROM_PREC( prec ) ( (PVOID)( * (((PULONG)prec)-2) ) )
489
490 /* wpDrop method return code */
491
492 #define RC_DROP_DROPCOMPLETE 2
493 #define RC_DROP_ITEMCOMPLETE 1
494 #define RC_DROP_RENDERING 0
495 #define RC_DROP_ERROR -1
496
497
498
499#define VIEW_CONTENTS 0x00000001
500#define VIEW_SETTINGS 0x00000002
501#define VIEW_HELP 0x00000004
502#define VIEW_RUNNING 0x00000008
503#define VIEW_DETAILS 0x00000010
504#define VIEW_TREE 0x00000020
505#define VIEW_ANY 0xFFFFFFFF /* Special case - will find any ViewItem */
506
507
508#include <som.hh>
509
510 #pragma SOMAsDefault(on)
511class SOMClass;
512 #pragma SOMAsDefault(pop)
513 #pragma SOMAsDefault(on)
514class SOMObject;
515 #pragma SOMAsDefault(pop)
516 #pragma SOMAsDefault(on)
517class WPFolder;
518 #pragma SOMAsDefault(pop)
519 #pragma SOMAsDefault(on)
520class M_WPObject;
521 #pragma SOMAsDefault(pop)
522 #pragma SOMAsDefault(on)
523class WPObject;
524 #pragma SOMAsDefault(pop)
525#include <somobj.hh>
526#pragma SOMNonDTS(on)
527
528
529#pragma SOMAsDefault(on)
530
531
532
533/********************************************/
534
535
536
537
538/*********** From WPObject.h ******************/
539/*
540 * External name shortening if required
541 */
542#ifdef SOM_USE_SHORT_EXTERNAL_NAMES
543#define WPObjectNewClass wpobjc
544#pragma linkage(wpobjc, system)
545#define WPObjectClassData wpobjd
546#define WPObjectCClassData wpobjx
547#endif /* SOM_USE_SHORT_EXTERNAL_NAMES */
548
549#ifndef SOM_Resolve
550
551#define somresolve_(obj,mToken) (somResolve(obj,mToken))
552
553/* from oc's mtbl, with verification of o */
554#define SOM_Resolve(o, ocn, mn) \
555 (( somTD_ ## ocn ## _ ## mn ) \
556 somresolve_(SOM_TestCls(o, ocn ## ClassData.classObject), \
557 ocn ## ClassData.mn ))
558#endif
559
560#define WPObject_classObj WPObjectClassData.classObject
561#define _WPObject WPObject_classObj
562
563/*
564 * Declare the class creation procedure
565 */
566SOMEXTERN SOMClass * SOMLINK WPObjectNewClass(integer4 somtmajorVersion,
567 integer4 somtminorVersion);
568
569/*
570 * Declare the class data structure
571 */
572SOMEXTERN struct WPObjectClassDataStructure {
573 SOMClass *classObject;
574 somMToken wpSetTitle;
575 somMToken wpQueryTitle;
576 somMToken wpSetStyle;
577 somMToken wpQueryStyle;
578 somMToken wpSetIcon;
579 somMToken wpQueryIcon;
580 somMToken wpSetFolder;
581 somMToken wpQueryFolder;
582 somMToken wpObjectPrivate1;
583 somMToken wpObjectPrivate2;
584 somMToken wpSetDefaultView;
585 somMToken wpQueryDefaultView;
586 somMToken wpObjectPrivate3;
587 somMToken wpSaveState;
588 somMToken wpObjectPrivate4;
589 somMToken wpObjectPrivate5;
590 somMToken wpSaveLong;
591 somMToken wpSaveString;
592 somMToken wpSaveData;
593 somMToken wpObjectPrivate6;
594 somMToken wpRestoreState;
595 somMToken wpObjectPrivate7;
596 somMToken wpObjectPrivate8;
597 somMToken wpRestoreLong;
598 somMToken wpRestoreString;
599 somMToken wpRestoreData;
600 somMToken wpObjectPrivate9;
601 somMToken wpAllocMem;
602 somMToken wpFreeMem;
603 somMToken wpAddToObjUseList;
604 somMToken wpDeleteFromObjUseList;
605 somMToken wpFindUseItem;
606 somMToken wpSwitchTo;
607 somMToken withdrawn1;
608 somMToken wpFilterPopupMenu;
609 somMToken wpModifyPopupMenu;
610 somMToken wpMenuItemSelected;
611 somMToken wpFormatDragItem;
612 somMToken wpDrop;
613 somMToken wpDragOver;
614 somMToken wpRender;
615 somMToken wpEndConversation;
616 somMToken withdrawn10;
617 somMToken wpObjectPrivate10;
618 somMToken wpObjectPrivate11;
619 somMToken wpFree;
620 somMToken wpCopiedFromTemplate;
621 somMToken wpAddSettingsPages;
622 somMToken wpAddObjectGeneralPage;
623 somMToken wpDisplayHelp;
624 somMToken wpMenuItemHelpSelected;
625 somMToken wpInsertSettingsPage;
626 somMToken wpInsertPopupMenuItems;
627 somMToken withdrawn5;
628 somMToken withdrawn6;
629 somMToken withdrawn4;
630 somMToken withdrawn3;
631 somMToken wpCnrInsertObject;
632 somMToken wpCnrRemoveObject;
633 somMToken wpInitData;
634 somMToken wpUnInitData;
635 somMToken wpSetup;
636 somMToken wpScanSetupString;
637 somMToken wpSaveImmediate;
638 somMToken wpOpen;
639 somMToken wpClose;
640 somMToken wpHide;
641 somMToken wpRestore;
642 somMToken wpSetIconData;
643 somMToken wpQueryIconData;
644 somMToken wpObjectPrivate12;
645 somMToken wpDelete;
646 somMToken wpConfirmDelete;
647 somMToken withdrawn2;
648 somMToken withdrawn11;
649 somMToken withdrawn7;
650 somMToken wpRegisterView;
651 somMToken wpIdentify;
652 somMToken wpSetDefaultHelp;
653 somMToken wpQueryDefaultHelp;
654 somMToken wpDoesObjectMatch;
655 somMToken wpCnrRefreshDetails;
656 somMToken wpSetError;
657 somMToken wpQueryError;
658 somMToken wpDraggedOverObject;
659 somMToken wpDroppedOnObject;
660 somMToken wpSetDefaultIconPos;
661 somMToken wpQueryDefaultIconPos;
662 somMToken wpObjectPrivate13;
663 somMToken wpObjectPrivate14;
664 somMToken wpSetObjectID;
665 somMToken wpQueryObjectID;
666 somMToken wpIsDeleteable;
667 somMToken wpQueryHandle;
668 somMToken wpSaveDeferred;
669 somMToken wpAddObjectWindowPage;
670 somMToken wpQueryConcurrentView;
671 somMToken wpSetConcurrentView;
672 somMToken wpQueryMinWindow;
673 somMToken wpSetMinWindow;
674 somMToken wpViewObject;
675 somMToken wpQueryButtonAppearance;
676 somMToken wpSetButtonAppearance;
677 somMToken wpQueryConfirmations;
678 somMToken wpCnrSetEmphasis;
679 somMToken wpQueryCoreRecord;
680 somMToken wpFindViewItem;
681 somMToken wpCreateFromTemplate;
682 somMethodProc *wpQueryTrueStyle;
683 somMToken wpAssertObjectMutexSem;
684 somMToken wpReleaseObjectMutexSem;
685 somMToken wpRequestObjectMutexSem;
686 somMToken wpCreateAnother;
687 somMToken wpCreateShadowObject;
688 somMToken wpCopyObject;
689 somMToken wpMoveObject;
690 somMToken wpLockObject;
691 somMToken wpUnlockObject;
692 somMToken wpIsLocked;
693 somMToken wpRenderComplete;
694 somMToken wpQueryDetailsData;
695 somMToken wpPrintObject;
696 somMToken wpObjectPrivate15;
697 somMToken wpSetTaskRec;
698 somMToken wpObjectPrivate16;
699 somMToken wpModifyStyle;
700 somMToken wpObjectPrivate17;
701 somMToken wpFindTaskRec;
702 somMToken wpAppendObject;
703 somMToken wpReplaceObject;
704 somMToken wpQueryNameClashOptions;
705 somMToken wpConfirmObjectTitle;
706 somMToken _get_pobjNext;
707 somMToken wpQueryContainerFlagPtr;
708 somMToken wpObjectPrivate18;
709 somMToken wpObjectPrivate19;
710 somMToken wpObjectPrivate20;
711 somMToken wpCnrDeleteUseItem;
712 somMToken wpObjectReady;
713 somMToken wpIsObjectInitialized;
714 somMToken wpCreateShadowObjectExt;
715 somMToken wpObjectPrivate21;
716 somMToken wpObjectPrivate22;
717 somMToken wpObjectPrivate26;
718 somMToken wpDisplayMenu;
719 somMToken wpWaitForClose;
720 somMToken wpQueryScreenGroupID;
721 somMToken wpSetupOnce;
722 somMToken wpAddObjectGeneralPage2;
723 somMToken wpObjectPrivate23;
724 somMToken wpObjectPrivate24;
725 somMToken wpModifyMenu;
726 somMToken wpFilterMenu;
727 somMToken wpInsertMenuItems;
728 somMToken wpSetMenuStyle;
729 somMToken wpQueryMenuStyle;
730 somMToken wpObjectPrivate27;
731 somMToken wpObjectPrivate28;
732 somMToken wpObjectPrivate29;
733 somMToken wpObjectPrivate30;
734 somMToken wpQueryOpenView;
735 somMToken wpSetOpenView;
736 somMToken wpObjectPrivate31;
737 somMToken wpObjectPrivate32;
738 somMToken wpObjectPrivate33;
739} SOMDLINK WPObjectClassData;
740
741/*
742 * Declare the C specific class data structure
743 */
744SOMEXTERN struct WPObjectCClassDataStructure {
745 somMethodTabs parentMtab;
746 somDToken instanceDataToken;
747} SOMDLINK WPObjectCClassData;
748
749
750/*
751 * New and Renew macros for WPObject
752 */
753#define WPObjectNew() \
754 (_somNew(_WPObject ? _WPObject : WPObjectNewClass(WPObject_MajorVersion, WPObject_MinorVersion)))
755#define WPObjectRenew(buf) \
756 (_somRenew(_WPObject ? _WPObject : WPObjectNewClass(WPObject_MajorVersion, WPObject_MinorVersion), buf))
757
758/*
759 * Override method: somInit
760 */
761#define WPObject_somInit(somSelf) \
762 SOMObject_somInit(somSelf)
763
764/*
765 * Override method: somUninit
766 */
767#define WPObject_somUninit(somSelf) \
768 SOMObject_somUninit(somSelf)
769
770/*
771 * Override method: somDefaultInit
772 */
773#define WPObject_somDefaultInit(somSelf,ctrl) \
774 SOMObject_somDefaultInit(somSelf,ctrl)
775
776/*
777 * Override method: somDestruct
778 */
779#define WPObject_somDestruct(somSelf,doFree,ctrl) \
780 SOMObject_somDestruct(somSelf,doFree,ctrl)
781
782/*
783 * New Method: wpAddSettingsPages, inserted by CW
784 */
785typedef ULONG SOMLINK somTP_WPObject_wpAddSettingsPages(WPObject *somSelf,
786 HWND hwndNotebook);
787//#pragma linkage(somTP_WPObject_wpAddSettingsPages, system)
788typedef somTP_WPObject_wpAddSettingsPages *somTD_WPObject_wpAddSettingsPages;
789#define somMD_WPObject_wpAddSettingsPages "::WPObject::wpAddSettingsPages"
790#define WPObject_wpAddSettingsPages(somSelf,hwndNotebook) \
791 (SOM_Resolve(somSelf, WPObject, wpAddSettingsPages) \
792 (somSelf,hwndNotebook))
793#ifndef SOMGD_wpAddSettingsPages
794 #if (defined(_wpAddSettingsPages) || defined(__wpAddSettingsPages))
795 #undef _wpAddSettingsPages
796 #undef __wpAddSettingsPages
797 #define SOMGD_wpAddSettingsPages 1
798 #else
799 #define _wpAddSettingsPages WPObject_wpAddSettingsPages
800 #endif /* _wpAddSettingsPages */
801#endif /* SOMGD_wpAddSettingsPages */
802
803/*
804 * New Method: wpClose
805 */
806typedef BOOL SOMLINK somTP_WPObject_wpClose(WPObject *somSelf);
807//#pragma linkage(somTP_WPObject_wpClose, system)
808typedef somTP_WPObject_wpClose *somTD_WPObject_wpClose;
809#define somMD_WPObject_wpClose "::WPObject::wpClose"
810#define WPObject_wpClose(somSelf) \
811 (SOM_Resolve(somSelf, WPObject, wpClose) \
812 (somSelf))
813#ifndef SOMGD_wpClose
814 #if (defined(_wpClose) || defined(__wpClose))
815 #undef _wpClose
816 #undef __wpClose
817 #define SOMGD_wpClose 1
818 #else
819 #define _wpClose WPObject_wpClose
820 #endif /* _wpClose */
821#endif /* SOMGD_wpClose */
822
823
824/*
825 * New Method: wpDelete
826 */
827typedef ULONG SOMLINK somTP_WPObject_wpDelete(WPObject *somSelf,
828 ULONG fConfirmations);
829//#pragma linkage(somTP_WPObject_wpDelete, system)
830typedef somTP_WPObject_wpDelete *somTD_WPObject_wpDelete;
831#define somMD_WPObject_wpDelete "::WPObject::wpDelete"
832#define WPObject_wpDelete(somSelf,fConfirmations) \
833 (SOM_Resolve(somSelf, WPObject, wpDelete) \
834 (somSelf,fConfirmations))
835#ifndef SOMGD_wpDelete
836 #if (defined(_wpDelete) || defined(__wpDelete))
837 #undef _wpDelete
838 #undef __wpDelete
839 #define SOMGD_wpDelete 1
840 #else
841 #define _wpDelete WPObject_wpDelete
842 #endif /* _wpDelete */
843#endif /* SOMGD_wpDelete */
844
845/*
846 * New Method: wpFilterPopupMenu, inserted by CW
847 */
848typedef ULONG SOMLINK somTP_WPObject_wpFilterPopupMenu(WPObject *somSelf,
849 ULONG ulFlags,
850 HWND hwndCnr,
851 BOOL fMultiSelect);
852//#pragma linkage(somTP_WPObject_wpFilterPopupMenu, system)
853typedef somTP_WPObject_wpFilterPopupMenu *somTD_WPObject_wpFilterPopupMenu;
854#define somMD_WPObject_wpFilterPopupMenu "::WPObject::wpFilterPopupMenu"
855#define WPObject_wpFilterPopupMenu(somSelf,ulFlags,hwndCnr,fMultiSelect) \
856 (SOM_Resolve(somSelf, WPObject, wpFilterPopupMenu) \
857 (somSelf,ulFlags,hwndCnr,fMultiSelect))
858#ifndef SOMGD_wpFilterPopupMenu
859 #if (defined(_wpFilterPopupMenu) || defined(__wpFilterPopupMenu))
860 #undef _wpFilterPopupMenu
861 #undef __wpFilterPopupMenu
862 #define SOMGD_wpFilterPopupMenu 1
863 #else
864 #define _wpFilterPopupMenu WPObject_wpFilterPopupMenu
865 #endif /* _wpFilterPopupMenu */
866#endif /* SOMGD_wpFilterPopupMenu */
867
868
869
870/*
871 * New Method: wpInitData, inserted by CW
872 */
873typedef ULONG SOMLINK somTP_WPObject_wpInitData(WPObject *somSelf);
874//#pragma linkage(somTP_WPObject_wpInitData, system)
875typedef somTP_WPObject_wpInitData *somTD_WPObject_wpInitData;
876#define somMD_WPObject_wpInitData "::WPObject::wpInitData"
877#define WPObject_wpInitData(somSelf) \
878 (SOM_Resolve(somSelf, WPObject, wpInitData) \
879 (somSelf))
880#ifndef SOMGD_wpInitData
881 #if (defined(_wpInitData) || defined(__wpInitData))
882 #undef _wpInitData
883 #undef __wpInitData
884 #define SOMGD_wpInitData 1
885 #else
886 #define _wpInitData WPObject_wpInitData
887 #endif /* _wpInitData */
888#endif /* SOMGD_wpInitData */
889
890/*
891 * New Method: wpOpen, inserted by CW
892 */
893typedef HWND SOMLINK somTP_WPObject_wpOpen(WPObject *somSelf,
894 HWND hwndCnr,
895 ULONG ulView,
896 ULONG param);
897//#pragma linkage(somTP_WPObject_wpOpen, system)
898typedef somTP_WPObject_wpOpen *somTD_WPObject_wpOpen;
899#define somMD_WPObject_wpOpen "::WPObject::wpOpen"
900#define WPObject_wpOpen(somSelf,hwndCnr,ulView,param) \
901 (SOM_Resolve(somSelf, WPObject, wpOpen) \
902 (somSelf,hwndCnr,ulView,param))
903#ifndef SOMGD_wpOpen
904 #if (defined(_wpOpen) || defined(__wpOpen))
905 #undef _wpOpen
906 #undef __wpOpen
907 #define SOMGD_wpOpen 1
908 #else
909 #define _wpOpen WPObject_wpOpen
910 #endif /* _wpOpen */
911#endif /* SOMGD_wpOpen */
912
913/*
914 * New Method: wpInsertSettingsPage (CW)
915 */
916typedef ULONG SOMLINK somTP_WPObject_wpInsertSettingsPage(WPObject *somSelf,
917 HWND hwndNotebook,
918 PPAGEINFO ppageinfo);
919//#pragma linkage(somTP_WPObject_wpInsertSettingsPage, system)
920typedef somTP_WPObject_wpInsertSettingsPage *somTD_WPObject_wpInsertSettingsPage;
921#define somMD_WPObject_wpInsertSettingsPage "::WPObject::wpInsertSettingsPage"
922#define WPObject_wpInsertSettingsPage(somSelf,hwndNotebook,ppageinfo) \
923 (SOM_Resolve(somSelf, WPObject, wpInsertSettingsPage) \
924 (somSelf,hwndNotebook,ppageinfo))
925#ifndef SOMGD_wpInsertSettingsPage
926 #if (defined(_wpInsertSettingsPage) || defined(__wpInsertSettingsPage))
927 #undef _wpInsertSettingsPage
928 #undef __wpInsertSettingsPage
929 #define SOMGD_wpInsertSettingsPage 1
930 #else
931 #define _wpInsertSettingsPage WPObject_wpInsertSettingsPage
932 #endif /* _wpInsertSettingsPage */
933#endif /* SOMGD_wpInsertSettingsPage */
934
935/*
936 * New Method: wpRestoreState
937 */
938typedef BOOL SOMLINK somTP_WPObject_wpRestoreState(WPObject *somSelf,
939 ULONG ulReserved);
940//#pragma linkage(somTP_WPObject_wpRestoreState, system)
941typedef somTP_WPObject_wpRestoreState *somTD_WPObject_wpRestoreState;
942#define somMD_WPObject_wpRestoreState "::WPObject::wpRestoreState"
943#define WPObject_wpRestoreState(somSelf,ulReserved) \
944 (SOM_Resolve(somSelf, WPObject, wpRestoreState) \
945 (somSelf,ulReserved))
946#ifndef SOMGD_wpRestoreState
947 #if (defined(_wpRestoreState) || defined(__wpRestoreState))
948 #undef _wpRestoreState
949 #undef __wpRestoreState
950 #define SOMGD_wpRestoreState 1
951 #else
952 #define _wpRestoreState WPObject_wpRestoreState
953 #endif /* _wpRestoreState */
954#endif /* SOMGD_wpRestoreState */
955
956/*
957 * New Method: wpSaveState
958 */
959typedef BOOL SOMLINK somTP_WPObject_wpSaveState(WPObject *somSelf);
960//#pragma linkage(somTP_WPObject_wpSaveState, system)
961typedef somTP_WPObject_wpSaveState *somTD_WPObject_wpSaveState;
962#define somMD_WPObject_wpSaveState "::WPObject::wpSaveState"
963#define WPObject_wpSaveState(somSelf) \
964 (SOM_Resolve(somSelf, WPObject, wpSaveState) \
965 (somSelf))
966#ifndef SOMGD_wpSaveState
967 #if (defined(_wpSaveState) || defined(__wpSaveState))
968 #undef _wpSaveState
969 #undef __wpSaveState
970 #define SOMGD_wpSaveState 1
971 #else
972 #define _wpSaveState WPObject_wpSaveState
973 #endif /* _wpSaveState */
974#endif /* SOMGD_wpSaveState */
975
976/*
977 * New Method: wpSetupOnce
978 */
979typedef BOOL SOMLINK somTP_WPObject_wpSetupOnce(WPObject *somSelf,
980 PSZ pszSetupString);
981//#pragma linkage(somTP_WPObject_wpSetupOnce, system)
982typedef somTP_WPObject_wpSetupOnce *somTD_WPObject_wpSetupOnce;
983#define somMD_WPObject_wpSetupOnce "::WPObject::wpSetupOnce"
984#define WPObject_wpSetupOnce(somSelf,pszSetupString) \
985 (SOM_Resolve(somSelf, WPObject, wpSetupOnce) \
986 (somSelf,pszSetupString))
987#ifndef SOMGD_wpSetupOnce
988 #if (defined(_wpSetupOnce) || defined(__wpSetupOnce))
989 #undef _wpSetupOnce
990 #undef __wpSetupOnce
991 #define SOMGD_wpSetupOnce 1
992 #else
993 #define _wpSetupOnce WPObject_wpSetupOnce
994 #endif /* _wpSetupOnce */
995#endif /* SOMGD_wpSetupOnce */
996
997
998/*
999 * New Method: wpUnInitData
1000 */
1001typedef void SOMLINK somTP_WPObject_wpUnInitData(WPObject *somSelf);
1002//#pragma linkage(somTP_WPObject_wpUnInitData, system)
1003typedef somTP_WPObject_wpUnInitData *somTD_WPObject_wpUnInitData;
1004#define somMD_WPObject_wpUnInitData "::WPObject::wpUnInitData"
1005#define WPObject_wpUnInitData(somSelf) \
1006 (SOM_Resolve(somSelf, WPObject, wpUnInitData) \
1007 (somSelf))
1008#ifndef SOMGD_wpUnInitData
1009 #if (defined(_wpUnInitData) || defined(__wpUnInitData))
1010 #undef _wpUnInitData
1011 #undef __wpUnInitData
1012 #define SOMGD_wpUnInitData 1
1013 #else
1014 #define _wpUnInitData WPObject_wpUnInitData
1015 #endif /* _wpUnInitData */
1016#endif /* SOMGD_wpUnInitData */
1017
1018/*
1019 * New Method: wpMenuItemSelected
1020 */
1021typedef BOOL SOMLINK somTP_WPObject_wpMenuItemSelected(WPObject *somSelf,
1022 HWND hwndFrame,
1023 ULONG ulMenuId);
1024//#pragma linkage(somTP_WPObject_wpMenuItemSelected, system)
1025typedef somTP_WPObject_wpMenuItemSelected *somTD_WPObject_wpMenuItemSelected;
1026#define somMD_WPObject_wpMenuItemSelected "::WPObject::wpMenuItemSelected"
1027#define WPObject_wpMenuItemSelected(somSelf,hwndFrame,ulMenuId) \
1028 (SOM_Resolve(somSelf, WPObject, wpMenuItemSelected) \
1029 (somSelf,hwndFrame,ulMenuId))
1030#ifndef SOMGD_wpMenuItemSelected
1031 #if (defined(_wpMenuItemSelected) || defined(__wpMenuItemSelected))
1032 #undef _wpMenuItemSelected
1033 #undef __wpMenuItemSelected
1034 #define SOMGD_wpMenuItemSelected 1
1035 #else
1036 #define _wpMenuItemSelected WPObject_wpMenuItemSelected
1037 #endif /* _wpMenuItemSelected */
1038#endif /* SOMGD_wpMenuItemSelected */
1039
1040
1041
1042/*
1043 * New Method: wpModifyPopupMenu
1044 */
1045typedef BOOL SOMLINK somTP_WPObject_wpModifyPopupMenu(WPObject *somSelf,
1046 HWND hwndMenu,
1047 HWND hwndCnr,
1048 ULONG iPosition);
1049//#pragma linkage(somTP_WPObject_wpModifyPopupMenu, system)
1050typedef somTP_WPObject_wpModifyPopupMenu *somTD_WPObject_wpModifyPopupMenu;
1051#define somMD_WPObject_wpModifyPopupMenu "::WPObject::wpModifyPopupMenu"
1052#define WPObject_wpModifyPopupMenu(somSelf,hwndMenu,hwndCnr,iPosition) \
1053 (SOM_Resolve(somSelf, WPObject, wpModifyPopupMenu) \
1054 (somSelf,hwndMenu,hwndCnr,iPosition))
1055#ifndef SOMGD_wpModifyPopupMenu
1056 #if (defined(_wpModifyPopupMenu) || defined(__wpModifyPopupMenu))
1057 #undef _wpModifyPopupMenu
1058 #undef __wpModifyPopupMenu
1059 #define SOMGD_wpModifyPopupMenu 1
1060 #else
1061 #define _wpModifyPopupMenu WPObject_wpModifyPopupMenu
1062 #endif /* _wpModifyPopupMenu */
1063#endif /* SOMGD_wpModifyPopupMenu */
1064
1065/*
1066 * New Method: wpSetup
1067 */
1068typedef BOOL SOMLINK somTP_WPObject_wpSetup(WPObject *somSelf,
1069 PSZ pszSetupString);
1070//#pragma linkage(somTP_WPObject_wpSetup, system)
1071typedef somTP_WPObject_wpSetup *somTD_WPObject_wpSetup;
1072#define somMD_WPObject_wpSetup "::WPObject::wpSetup"
1073#define WPObject_wpSetup(somSelf,pszSetupString) \
1074 (SOM_Resolve(somSelf, WPObject, wpSetup) \
1075 (somSelf,pszSetupString))
1076#ifndef SOMGD_wpSetup
1077 #if (defined(_wpSetup) || defined(__wpSetup))
1078 #undef _wpSetup
1079 #undef __wpSetup
1080 #define SOMGD_wpSetup 1
1081 #else
1082 #define _wpSetup WPObject_wpSetup
1083 #endif /* _wpSetup */
1084#endif /* SOMGD_wpSetup */
1085
1086/*
1087 * New Method: wpViewObject, adapted and inserted by CW (copied from wpobject.h)
1088 */
1089
1090typedef HWND SOMLINK somTP_WPObject_wpViewObject(WPObject *somSelf,
1091 HWND hwndCnr,
1092 ULONG ulView,
1093 ULONG param);
1094//#pragma linkage(somTP_WPObject_wpViewObject, system) //comment by CW
1095typedef somTP_WPObject_wpViewObject *somTD_WPObject_wpViewObject;
1096#define somMD_WPObject_wpViewObject "::WPObject::wpViewObject"
1097#define WPObject_wpViewObject(somSelf,hwndCnr,ulView,param) \
1098 (SOM_Resolve(somSelf, WPObject, wpViewObject) \
1099 (somSelf,hwndCnr,ulView,param))
1100#ifndef SOMGD_wpViewObject
1101 #if (defined(_wpViewObject) || defined(__wpViewObject))
1102 #undef _wpViewObject
1103 #undef __wpViewObject
1104 #define SOMGD_wpViewObject 1
1105 #else
1106 #define _wpViewObject WPObject_wpViewObject
1107 #endif /* _wpViewObject */
1108#endif /* SOMGD_wpViewObject */
1109
1110/*
1111 * New Method: wpCreateShadowObjectExt
1112 */
1113typedef WPObject* SOMLINK somTP_WPObject_wpCreateShadowObjectExt(WPObject *somSelf,
1114 WPFolder* Folder,
1115 BOOL fLock,
1116 PSZ pszSetup,
1117 M_WPObject* shadowClass);
1118//#pragma linkage(somTP_WPObject_wpCreateShadowObjectExt, system)
1119typedef somTP_WPObject_wpCreateShadowObjectExt *somTD_WPObject_wpCreateShadowObjectExt;
1120#define somMD_WPObject_wpCreateShadowObjectExt "::WPObject::wpCreateShadowObjectExt"
1121#define WPObject_wpCreateShadowObjectExt(somSelf,Folder,fLock,pszSetup,shadowClass) \
1122 (SOM_Resolve(somSelf, WPObject, wpCreateShadowObjectExt) \
1123 (somSelf,Folder,fLock,pszSetup,shadowClass))
1124#ifndef SOMGD_wpCreateShadowObjectExt
1125 #if (defined(_wpCreateShadowObjectExt) || defined(__wpCreateShadowObjectExt))
1126 #undef _wpCreateShadowObjectExt
1127 #undef __wpCreateShadowObjectExt
1128 #define SOMGD_wpCreateShadowObjectExt 1
1129 #else
1130 #define _wpCreateShadowObjectExt WPObject_wpCreateShadowObjectExt
1131 #endif /* _wpCreateShadowObjectExt */
1132#endif /* SOMGD_wpCreateShadowObjectExt */
1133
1134
1135/*
1136 * New Method: wpCopiedFromTemplate
1137 */
1138typedef void SOMLINK somTP_WPObject_wpCopiedFromTemplate(WPObject *somSelf);
1139//#pragma linkage(somTP_WPObject_wpCopiedFromTemplate, system)
1140typedef somTP_WPObject_wpCopiedFromTemplate *somTD_WPObject_wpCopiedFromTemplate;
1141#define somMD_WPObject_wpCopiedFromTemplate "::WPObject::wpCopiedFromTemplate"
1142#define WPObject_wpCopiedFromTemplate(somSelf) \
1143 (SOM_Resolve(somSelf, WPObject, wpCopiedFromTemplate) \
1144 (somSelf))
1145#ifndef SOMGD_wpCopiedFromTemplate
1146 #if (defined(_wpCopiedFromTemplate) || defined(__wpCopiedFromTemplate))
1147 #undef _wpCopiedFromTemplate
1148 #undef __wpCopiedFromTemplate
1149 #define SOMGD_wpCopiedFromTemplate 1
1150 #else
1151 #define _wpCopiedFromTemplate WPObject_wpCopiedFromTemplate
1152 #endif /* _wpCopiedFromTemplate */
1153#endif /* SOMGD_wpCopiedFromTemplate */
1154
1155/*
1156 * New Method: wpDrop
1157 */
1158typedef MRESULT SOMLINK somTP_WPObject_wpDrop(WPObject *somSelf,
1159 HWND hwndCnr,
1160 PDRAGINFO pdrgInfo,
1161 PDRAGITEM pdrgItem);
1162//#pragma linkage(somTP_WPObject_wpDrop, system)
1163typedef somTP_WPObject_wpDrop *somTD_WPObject_wpDrop;
1164#define somMD_WPObject_wpDrop "::WPObject::wpDrop"
1165#define WPObject_wpDrop(somSelf,hwndCnr,pdrgInfo,pdrgItem) \
1166 (SOM_Resolve(somSelf, WPObject, wpDrop) \
1167 (somSelf,hwndCnr,pdrgInfo,pdrgItem))
1168#ifndef SOMGD_wpDrop
1169 #if (defined(_wpDrop) || defined(__wpDrop))
1170 #undef _wpDrop
1171 #undef __wpDrop
1172 #define SOMGD_wpDrop 1
1173 #else
1174 #define _wpDrop WPObject_wpDrop
1175 #endif /* _wpDrop */
1176#endif /* SOMGD_wpDrop */
1177
1178/*
1179 * New Method: wpQueryDetailsData
1180 */
1181typedef ULONG SOMLINK somTP_WPObject_wpQueryDetailsData(WPObject *somSelf,
1182 PVOID* ppDetailsData,
1183 PULONG pcp);
1184//#pragma linkage(somTP_WPObject_wpQueryDetailsData, system)
1185typedef somTP_WPObject_wpQueryDetailsData *somTD_WPObject_wpQueryDetailsData;
1186#define somMD_WPObject_wpQueryDetailsData "::WPObject::wpQueryDetailsData"
1187#define WPObject_wpQueryDetailsData(somSelf,ppDetailsData,pcp) \
1188 (SOM_Resolve(somSelf, WPObject, wpQueryDetailsData) \
1189 (somSelf,ppDetailsData,pcp))
1190#ifndef SOMGD_wpQueryDetailsData
1191 #if (defined(_wpQueryDetailsData) || defined(__wpQueryDetailsData))
1192 #undef _wpQueryDetailsData
1193 #undef __wpQueryDetailsData
1194 #define SOMGD_wpQueryDetailsData 1
1195 #else
1196 #define _wpQueryDetailsData WPObject_wpQueryDetailsData
1197 #endif /* _wpQueryDetailsData */
1198#endif /* SOMGD_wpQueryDetailsData */
1199
1200
1201
1202#ifndef SOM_DONT_USE_INHERITED_MACROS
1203#define WPObject_somDefaultCopyInit SOMObject_somDefaultCopyInit
1204#define WPObject_somDefaultAssign SOMObject_somDefaultAssign
1205#define WPObject_somDefaultConstCopyInit SOMObject_somDefaultConstCopyInit
1206#define WPObject_somDefaultVCopyInit SOMObject_somDefaultVCopyInit
1207#define WPObject_somDefaultConstVCopyInit SOMObject_somDefaultConstVCopyInit
1208#define WPObject_somDefaultConstAssign SOMObject_somDefaultConstAssign
1209#define WPObject_somDefaultVAssign SOMObject_somDefaultVAssign
1210#define WPObject_somDefaultConstVAssign SOMObject_somDefaultConstVAssign
1211#define WPObject_somFree SOMObject_somFree
1212#define WPObject_somGetClass SOMObject_somGetClass
1213#define WPObject_somGetClassName SOMObject_somGetClassName
1214#define WPObject_somGetSize SOMObject_somGetSize
1215#define WPObject_somIsA SOMObject_somIsA
1216#define WPObject_somIsInstanceOf SOMObject_somIsInstanceOf
1217#define WPObject_somRespondsTo SOMObject_somRespondsTo
1218#define WPObject_somDispatch SOMObject_somDispatch
1219#define WPObject_somClassDispatch SOMObject_somClassDispatch
1220#define WPObject_somCastObj SOMObject_somCastObj
1221#define WPObject_somResetObj SOMObject_somResetObj
1222#define WPObject_somDispatchV SOMObject_somDispatchV
1223#define WPObject_somDispatchL SOMObject_somDispatchL
1224#define WPObject_somDispatchA SOMObject_somDispatchA
1225#define WPObject_somDispatchD SOMObject_somDispatchD
1226#define WPObject_somPrintSelf SOMObject_somPrintSelf
1227#define WPObject_somDumpSelf SOMObject_somDumpSelf
1228#define WPObject_somDumpSelfInt SOMObject_somDumpSelfInt
1229#endif /* SOM_DONT_USE_INHERITED_MACROS */
1230
1231
1232
1233/************ End from WPObject.h **************/
1234
1235#pragma SOMAsDefault(on)
1236class WPObject : public SOMObject {
1237
1238 #pragma SOMClassName(*, "WPObject")
1239 #pragma SOMNoMangling(*)
1240 #pragma SOMNonDTS(*)
1241
1242 #pragma SOMClassName (WPObject, "WPObject")
1243 /* #pragma SOMMetaClass (WPObject, "M_WPObject") */
1244 #pragma SOMClassVersion (WPObject, 1, 2)
1245 #pragma SOMCallstyle (oidl)
1246 #pragma SOMAsDefault(off)
1247 #pragma SOMAsDefault(pop)
1248 public :
1249 virtual ULONG wpAddObjectGeneralPage(HWND hwndNotebook);
1250 virtual ULONG wpAddObjectGeneralPage2(HWND hwndNotebook);
1251 virtual ULONG wpAddObjectWindowPage(HWND hwndNotebook);
1252 virtual BOOL wpAddSettingsPages(HWND hwndNotebook);
1253 virtual BOOL wpAddToObjUseList(PUSEITEM pUseItem);
1254 virtual PBYTE wpAllocMem(ULONG cbBytes, PULONG prc);
1255 virtual BOOL32 wpAppendObject(WPObject* targetObject, BOOL32 fMove);
1256 virtual BOOL wpAssertObjectMutexSem();
1257 virtual BOOL wpClose();
1258 virtual PMINIRECORDCORE wpCnrInsertObject(HWND hwndCnr,
1259 PPOINTL pptlIcon,
1260 PMINIRECORDCORE preccParent,
1261 PRECORDINSERT pRecInsert);
1262 virtual BOOL wpCnrRemoveObject(HWND hwndCnr);
1263 virtual BOOL wpCnrSetEmphasis(ULONG ulEmphasisAttr, BOOL fTurnOn);
1264 virtual ULONG wpConfirmDelete(ULONG fConfirmations);
1265 virtual ULONG wpConfirmObjectTitle(WPFolder* Folder, WPObject** ppDuplicate,
1266 PSZ pszTitle, ULONG cbTitle,
1267 ULONG menuID);
1268 virtual void wpCopiedFromTemplate();
1269 virtual WPObject* wpCopyObject(WPFolder* Folder, BOOL fLock);
1270 virtual WPObject* wpCreateAnother(PSZ pszTitle, PSZ pszSetupEnv,
1271 WPFolder* Folder);
1272 virtual WPObject* wpCreateFromTemplate(WPFolder* folder,
1273 BOOL fLock);
1274 virtual WPObject* wpCreateShadowObject(WPFolder* Folder,
1275 BOOL fLock);
1276 virtual ULONG wpDelete(ULONG fConfirmations);
1277 virtual BOOL wpDeleteFromObjUseList(PUSEITEM pUseItem);
1278 virtual BOOL wpDisplayHelp(ULONG HelpPanelId, PSZ HelpLibrary);
1279 virtual HWND wpDisplayMenu(HWND hwndOwner, HWND hwndClient,
1280 POINTL* ptlPopupPt, ULONG ulMenuType,
1281 ULONG ulReserved);
1282 virtual BOOL wpDoesObjectMatch(PVOID pvoidExtendedCriteria);
1283 virtual MRESULT wpDraggedOverObject(WPObject* DraggedOverObject);
1284 virtual MRESULT wpDragOver(HWND hwndCnr, PDRAGINFO pdrgInfo);
1285 virtual MRESULT wpDrop(HWND hwndCnr, PDRAGINFO pdrgInfo,
1286 PDRAGITEM pdrgItem);
1287 virtual BOOL wpDroppedOnObject(WPObject* DroppedOnObject);
1288 virtual MRESULT wpEndConversation(ULONG ulItemID, ULONG flResult);
1289 virtual ULONG wpFilterPopupMenu(ULONG ulFlags, HWND hwndCnr,
1290 BOOL fMultiSelect);
1291 virtual PUSEITEM wpFindUseItem(ULONG type, PUSEITEM pCurrentItem);
1292 virtual BOOL wpFormatDragItem(PDRAGITEM pdrgItem);
1293 virtual BOOL wpFree();
1294 virtual BOOL wpFreeMem(PBYTE pByte);
1295 virtual BOOL wpHide();
1296 virtual void wpInitData();
1297 virtual BOOL wpInsertPopupMenuItems(HWND hwndMenu, ULONG iPosition,
1298 HMODULE hmod, ULONG MenuID,
1299 ULONG SubMenuID);
1300 virtual ULONG wpInsertSettingsPage(HWND hwndNotebook, PPAGEINFO ppageinfo);
1301 virtual BOOL wpMenuItemHelpSelected(ULONG MenuId);
1302 virtual BOOL wpMenuItemSelected(HWND hwndFrame, ULONG ulMenuId);
1303 virtual BOOL wpModifyPopupMenu(HWND hwndMenu, HWND hwndCnr,
1304 ULONG iPosition);
1305 virtual BOOL wpMoveObject(WPFolder* Folder);
1306 virtual HWND wpOpen(HWND hwndCnr, ULONG ulView, ULONG param);
1307 virtual BOOL wpPrintObject(PPRINTDEST pPrintDest, ULONG ulReserved);
1308 virtual ULONG wpQueryConcurrentView();
1309 virtual ULONG wpQueryButtonAppearance();
1310 virtual ULONG wpQueryConfirmations();
1311 virtual BOOL wpQueryDefaultHelp(PULONG pHelpPanelId, PSZ HelpLibrary);
1312 virtual ULONG wpQueryDefaultView();
1313 virtual ULONG wpQueryDetailsData(PVOID* ppDetailsData, PULONG pcp);
1314 virtual ULONG wpQueryError();
1315 virtual BOOL wpSetFolder(WPObject* container);
1316 virtual WPObject* wpQueryFolder();
1317 virtual HPOINTER wpQueryIcon();
1318 virtual ULONG wpQueryIconData(PICONINFO pIconInfo);
1319 virtual ULONG wpQueryMinWindow();
1320 virtual ULONG wpQueryNameClashOptions(ULONG menuID);
1321 virtual ULONG wpQueryStyle();
1322 virtual BOOL32 wpSetTaskRec(PTASKREC pNew, PTASKREC pOld);
1323 virtual PTASKREC wpFindTaskRec();
1324 virtual PSZ wpQueryTitle();
1325 virtual BOOL wpRegisterView(HWND hwndFrame, PSZ pszViewTitle);
1326 virtual ULONG wpReleaseObjectMutexSem();
1327 virtual MRESULT wpRender(PDRAGTRANSFER pdxfer);
1328 virtual MRESULT wpRenderComplete(PDRAGTRANSFER pdxfer, ULONG ulResult);
1329 virtual BOOL32 wpReplaceObject(WPObject* targetObject, BOOL32 fMove);
1330 virtual ULONG wpRequestObjectMutexSem(ULONG ulTimeout);
1331 virtual BOOL wpRestore();
1332 virtual BOOL wpRestoreData(PSZ pszClass, ULONG ulKey, PBYTE pValue,
1333 PULONG pcbValue);
1334 virtual BOOL wpRestoreLong(PSZ pszClass, ULONG ulKey, PULONG pulValue);
1335 virtual BOOL wpRestoreState(ULONG ulReserved);
1336 virtual BOOL wpRestoreString(PSZ pszClass, ULONG ulKey,
1337 PSZ pszValue, PULONG pcbValue);
1338 virtual BOOL wpSaveData(PSZ pszClass, ULONG ulKey, PBYTE pValue,
1339 ULONG cbValue);
1340 virtual BOOL wpSaveImmediate();
1341 virtual BOOL wpSaveDeferred();
1342 virtual BOOL wpSaveLong(PSZ pszClass, ULONG ulKey, ULONG ulValue);
1343 virtual BOOL wpSaveState();
1344 virtual BOOL wpSaveString(PSZ pszClass, ULONG ulKey, PSZ pszValue);
1345 virtual BOOL wpScanSetupString(PSZ pszSetupString, PSZ pszKey,
1346 PSZ pszValue, PULONG pcbValue);
1347 virtual void wpSetConcurrentView(ULONG ulCCView);
1348 virtual void wpSetButtonAppearance(ULONG ulButtonType);
1349 virtual BOOL wpSetDefaultHelp(ULONG HelpPanelId, PSZ HelpLibrary);
1350 virtual BOOL wpSetDefaultView(ULONG ulView);
1351 virtual BOOL wpSetError(ULONG ulErrorId);
1352 virtual USHORT wpQueryScreenGroupID(USHORT usPrevSgId);
1353 virtual BOOL wpSetupOnce(PSZ pszSetupString);
1354 virtual BOOL wpSetIcon(HPOINTER hptrNewIcon);
1355 virtual BOOL wpSetIconData(PICONINFO pIconInfo);
1356 virtual void wpSetMinWindow(ULONG ulMinWindow);
1357 virtual BOOL wpSetStyle(ULONG ulNewStyle);
1358 virtual BOOL wpModifyStyle(ULONG ulStyleFlags, ULONG ulStyleMask);
1359 virtual BOOL wpSetTitle(PSZ pszNewTitle);
1360 virtual BOOL wpSetup(PSZ pszSetupString);
1361 virtual BOOL wpSwitchTo(ULONG View);
1362 virtual void wpUnInitData();
1363 virtual HWND wpViewObject(HWND hwndCnr, ULONG ulView, ULONG param);
1364 virtual ULONG wpQueryTrueStyle();
1365 virtual HOBJECT wpQueryHandle();
1366 virtual BOOL wpUnlockObject();
1367 virtual void wpObjectReady(ULONG ulCode, WPObject* refObject);
1368 virtual BOOL wpIsObjectInitialized();
1369 virtual WPObject* wpCreateShadowObjectExt(WPFolder* Folder,
1370 BOOL fLock, PSZ pszSetup,
1371 M_WPObject* shadowClass);
1372 virtual BOOL wpCnrDeleteUseItem(HWND hwndCnr);
1373 virtual BOOL wpIsDeleteable();
1374 virtual PMINIRECORDCORE wpQueryCoreRecord();
1375 virtual BOOL wpSetObjectID(PSZ pszObjectID);
1376 virtual PSZ wpQueryObjectID();
1377 virtual BOOL wpSetDefaultIconPos(PPOINTL pPointl);
1378 virtual BOOL wpQueryDefaultIconPos(PPOINTL pPointl);
1379 virtual void wpCnrRefreshDetails();
1380 virtual PVIEWITEM wpFindViewItem(ULONG flViews, PVIEWITEM pCurrentItem);
1381 virtual void wpLockObject();
1382 virtual BOOL wpIsLocked();
1383 virtual PULONG wpQueryContainerFlagPtr();
1384 virtual ULONG wpWaitForClose(LHANDLE lhView, ULONG ulViews,
1385 long lTimeOut, BOOL bAutoClose);
1386 virtual BOOL wpIdentify(PSZ pszIdentity);
1387 virtual BOOL wpModifyMenu(
1388 HWND hwndMenu,
1389 HWND hwndCnr,
1390 ULONG iPosition,
1391 ULONG ulMenuType,
1392 ULONG ulView,
1393 ULONG ulReserved);
1394 virtual BOOL wpFilterMenu(
1395 FILTERFLAGS* pFlags,
1396 HWND hwndCnr,
1397 BOOL fMultiSelect,
1398 ULONG ulMenuType,
1399 ULONG ulView,
1400 ULONG ulReserved);
1401 virtual BOOL wpInsertMenuItems(
1402 HWND hwndMenu,
1403 ULONG iPosition,
1404 HMODULE hmod,
1405 ULONG MenuID,
1406 ULONG SubMenuID);
1407 virtual BOOL wpSetMenuStyle(ULONG ulStyle);
1408 virtual ULONG wpQueryMenuStyle();
1409
1410 WPObject();
1411 virtual ~WPObject();
1412 #pragma SOMReleaseOrder ( \
1413 "wpSetTitle", \
1414 "wpQueryTitle", \
1415 "wpSetStyle", \
1416 "wpQueryStyle", \
1417 "wpSetIcon", \
1418 "wpQueryIcon", \
1419 "wpSetFolder", \
1420 "wpQueryFolder", \
1421 *, \
1422 *, \
1423 "wpSetDefaultView", \
1424 "wpQueryDefaultView", \
1425 *, \
1426 "wpSaveState", \
1427 *, \
1428 *, \
1429 "wpSaveLong", \
1430 "wpSaveString", \
1431 "wpSaveData", \
1432 *, \
1433 "wpRestoreState", \
1434 *, \
1435 *, \
1436 "wpRestoreLong", \
1437 "wpRestoreString", \
1438 "wpRestoreData", \
1439 *, \
1440 "wpAllocMem", \
1441 "wpFreeMem", \
1442 "wpAddToObjUseList", \
1443 "wpDeleteFromObjUseList", \
1444 "wpFindUseItem", \
1445 "wpSwitchTo", \
1446 *, \
1447 "wpFilterPopupMenu", \
1448 "wpModifyPopupMenu", \
1449 "wpMenuItemSelected", \
1450 "wpFormatDragItem", \
1451 "wpDrop", \
1452 "wpDragOver", \
1453 "wpRender", \
1454 "wpEndConversation", \
1455 *, \
1456 *, \
1457 *, \
1458 "wpFree", \
1459 "wpCopiedFromTemplate", \
1460 "wpAddSettingsPages", \
1461 "wpAddObjectGeneralPage", \
1462 "wpDisplayHelp", \
1463 "wpMenuItemHelpSelected", \
1464 "wpInsertSettingsPage", \
1465 "wpInsertPopupMenuItems", \
1466 *, \
1467 *, \
1468 *, \
1469 *, \
1470 "wpCnrInsertObject", \
1471 "wpCnrRemoveObject", \
1472 "wpInitData", \
1473 "wpUnInitData", \
1474 "wpSetup", \
1475 "wpScanSetupString", \
1476 "wpSaveImmediate", \
1477 "wpOpen", \
1478 "wpClose", \
1479 "wpHide", \
1480 "wpRestore", \
1481 "wpSetIconData", \
1482 "wpQueryIconData", \
1483 *, \
1484 "wpDelete", \
1485 "wpConfirmDelete", \
1486 *, \
1487 *, \
1488 *, \
1489 "wpRegisterView", \
1490 "wpIdentify", \
1491 "wpSetDefaultHelp", \
1492 "wpQueryDefaultHelp", \
1493 "wpDoesObjectMatch", \
1494 "wpCnrRefreshDetails", \
1495 "wpSetError", \
1496 "wpQueryError", \
1497 "wpDraggedOverObject", \
1498 "wpDroppedOnObject", \
1499 "wpSetDefaultIconPos", \
1500 "wpQueryDefaultIconPos", \
1501 *, \
1502 *, \
1503 "wpSetObjectID", \
1504 "wpQueryObjectID", \
1505 "wpIsDeleteable", \
1506 "wpQueryHandle", \
1507 "wpSaveDeferred", \
1508 "wpAddObjectWindowPage", \
1509 "wpQueryConcurrentView", \
1510 "wpSetConcurrentView", \
1511 "wpQueryMinWindow", \
1512 "wpSetMinWindow", \
1513 "wpViewObject", \
1514 "wpQueryButtonAppearance", \
1515 "wpSetButtonAppearance", \
1516 "wpQueryConfirmations", \
1517 "wpCnrSetEmphasis", \
1518 "wpQueryCoreRecord", \
1519 "wpFindViewItem", \
1520 "wpCreateFromTemplate", \
1521 "wpQueryTrueStyle", \
1522 "wpAssertObjectMutexSem", \
1523 "wpReleaseObjectMutexSem", \
1524 "wpRequestObjectMutexSem", \
1525 "wpCreateAnother", \
1526 "wpCreateShadowObject", \
1527 "wpCopyObject", \
1528 "wpMoveObject", \
1529 "wpLockObject", \
1530 "wpUnlockObject", \
1531 "wpIsLocked", \
1532 "wpRenderComplete", \
1533 "wpQueryDetailsData", \
1534 "wpPrintObject", \
1535 *, \
1536 "wpSetTaskRec", \
1537 *, \
1538 "wpModifyStyle", \
1539 *, \
1540 "wpFindTaskRec", \
1541 "wpAppendObject", \
1542 "wpReplaceObject", \
1543 "wpQueryNameClashOptions", \
1544 "wpConfirmObjectTitle", \
1545 *, \
1546 "wpQueryContainerFlagPtr", \
1547 *, \
1548 *, \
1549 *, \
1550 "wpCnrDeleteUseItem", \
1551 "wpObjectReady", \
1552 "wpIsObjectInitialized", \
1553 "wpCreateShadowObjectExt", \
1554 *, \
1555 *, \
1556 *, \
1557 "wpDisplayMenu", \
1558 "wpWaitForClose", \
1559 "wpQueryScreenGroupID", \
1560 "wpSetupOnce", \
1561 "wpAddObjectGeneralPage2", \
1562 *, \
1563 *, \
1564 "wpModifyMenu", \
1565 "wpFilterMenu", \
1566 "wpInsertMenuItems", \
1567 "wpSetMenuStyle", \
1568 "wpQueryMenuStyle", \
1569 *, \
1570 *, \
1571 *, \
1572 *, \
1573 *, \
1574 *, \
1575 *, \
1576 *, \
1577 *)
1578};
1579#pragma SOMAsDefault(pop)
1580
1581 #pragma SOMNonDTS(pop)
1582/* End WPObject */
1583
1584
1585
1586
1587/* Start Class M_WPObject */
1588
1589#include <somcls.hh>
1590#pragma SOMNonDTS(on)
1591
1592#pragma SOMAsDefault(on)
1593
1594
1595/************ From WPObject.h ************/
1596
1597
1598
1599/*
1600 * External name shortening if required
1601 */
1602#ifdef SOM_USE_SHORT_EXTERNAL_NAMES
1603#define M_WPObjectNewClass wpobjc
1604//#pragma linkage(wpobjc, system)
1605#define M_WPObjectClassData wpobjd
1606#define M_WPObjectCClassData wpobjx
1607#endif /* SOM_USE_SHORT_EXTERNAL_NAMES */
1608
1609/*--------------Migration------------*/
1610#define M_WPObject_classObj M_WPObjectClassData.classObject
1611#define _M_WPObject M_WPObject_classObj
1612
1613
1614/*
1615 * Declare the class data structure
1616 */
1617SOMEXTERN struct M_WPObjectClassDataStructure {
1618 SOMClass *classObject;
1619 somMToken wpclsInitData;
1620 somMToken wpclsUnInitData;
1621 somMToken withdrawn8;
1622 somMToken wpclsMakeAwake;
1623 somMToken wpclsIncUsage;
1624 somMToken wpclsDecUsage;
1625 somMToken wpclsQueryTitle;
1626 somMToken wpclsQueryIcon;
1627 somMToken wpclsQueryDefaultHelp;
1628 somMToken wpclsQueryStyle;
1629 somMToken wpclsQueryDetailsInfo;
1630 somMToken wpclsQueryDefaultView;
1631 somMToken wpclsQueryDetails;
1632 somMToken wpclsQuerySearchInfo;
1633 somMToken wpclsQueryExtendedCriteria;
1634 somMToken wpclsCreateDefaultTemplates;
1635 somMToken withdrawn9;
1636 somMToken wpclsFindObjectFirst;
1637 somMToken wpclsFindObjectNext;
1638 somMToken wpclsFindObjectEnd;
1639 somMToken wpclsFindObjects;
1640 somMToken wpclsSetError;
1641 somMToken wpclsQueryError;
1642 somMToken wpclsQuerySettingsPageSize;
1643 somMToken wpclsSetSettingsPageSize;
1644 somMToken wpclsQueryIconData;
1645 somMToken wpclsSetIcon;
1646 somMToken wpclsSetIconData;
1647 somMToken wpclsQueryObject;
1648 somMToken wpclsObjectFromHandle;
1649 somMToken wpclsSaveDirtyObjects;
1650 somMToken wpclsLockDirtyList;
1651 somMToken wpclsUnlockDirtyList;
1652 somMToken wpclsLockRestartList;
1653 somMToken wpclsUnlockRestartList;
1654 somMToken wpclsQueryButtonAppearance;
1655 somMToken wpclsNew;
1656 somMToken wpclsQueryFolder;
1657 somMToken wpclsLockSleepyList;
1658 somMToken wpclsUnlockSleepyList;
1659 somMToken wpclsRemoveObjects;
1660 somMToken wpclsInsertMultipleObjects;
1661 somMToken wpclsINew;
1662 somMToken wpclsFindOneObject;
1663 somMToken wpclsQueryMaxAnimationIcons;
1664
1665} SOMDLINK M_WPObjectClassData;
1666
1667/*
1668 * Declare the C specific class data structure
1669 */
1670SOMEXTERN struct M_WPObjectCClassDataStructure {
1671 somMethodTabs parentMtab;
1672 somDToken instanceDataToken;
1673} SOMDLINK M_WPObjectCClassData;
1674
1675
1676
1677
1678/*
1679 * New and Renew macros for M_WPObject
1680 */
1681#define M_WPObjectNew() \
1682 (_somNew(_M_WPObject ? _M_WPObject : M_WPObjectNewClass(M_WPObject_MajorVersion, M_WPObject_MinorVersion)))
1683#define M_WPObjectRenew(buf) \
1684 (_somRenew(_M_WPObject ? _M_WPObject : M_WPObjectNewClass(M_WPObject_MajorVersion, M_WPObject_MinorVersion), buf))
1685
1686/*
1687 * Override method: somUninit
1688 */
1689#define M_WPObject_somUninit(somSelf) \
1690 SOMObject_somUninit(somSelf)
1691
1692/*
1693 * Override method: somClassReady
1694 */
1695#define M_WPObject_somClassReady(somSelf) \
1696 SOMClass_somClassReady(somSelf)
1697
1698/*
1699 * Override method: somNew
1700 */
1701#define M_WPObject_somNew(somSelf) \
1702 SOMClass_somNew(somSelf)
1703
1704/*
1705 * Override method: somRenew
1706 */
1707#define M_WPObject_somRenew(somSelf,obj) \
1708 SOMClass_somRenew(somSelf,obj)
1709
1710
1711
1712/*
1713 * New Method: wpclsObjectFromHandle
1714 */
1715typedef WPObject* SOMLINK somTP_M_WPObject_wpclsObjectFromHandle(M_WPObject *somSelf,
1716 HOBJECT hObject);
1717//#pragma linkage(somTP_M_WPObject_wpclsObjectFromHandle, system)
1718typedef somTP_M_WPObject_wpclsObjectFromHandle *somTD_M_WPObject_wpclsObjectFromHandle;
1719#define somMD_M_WPObject_wpclsObjectFromHandle "::M_WPObject::wpclsObjectFromHandle"
1720#define M_WPObject_wpclsObjectFromHandle(somSelf,hObject) \
1721 (SOM_Resolve(somSelf, M_WPObject, wpclsObjectFromHandle) \
1722 (somSelf,hObject))
1723#ifndef SOMGD_wpclsObjectFromHandle
1724 #if (defined(_wpclsObjectFromHandle) || defined(__wpclsObjectFromHandle))
1725 #undef _wpclsObjectFromHandle
1726 #undef __wpclsObjectFromHandle
1727 #define SOMGD_wpclsObjectFromHandle 1
1728 #else
1729 #define _wpclsObjectFromHandle M_WPObject_wpclsObjectFromHandle
1730 #endif /* _wpclsObjectFromHandle */
1731#endif /* SOMGD_wpclsObjectFromHandle */
1732
1733
1734/*
1735 * New Method: wpclsNew
1736 */
1737typedef WPObject* SOMLINK somTP_M_WPObject_wpclsNew(M_WPObject *somSelf,
1738 PSZ pszTitle,
1739 PSZ pszSetupEnv,
1740 WPFolder* Folder,
1741 BOOL fLock);
1742//#pragma linkage(somTP_M_WPObject_wpclsNew, system)
1743typedef somTP_M_WPObject_wpclsNew *somTD_M_WPObject_wpclsNew;
1744#define somMD_M_WPObject_wpclsNew "::M_WPObject::wpclsNew"
1745#define M_WPObject_wpclsNew(somSelf,pszTitle,pszSetupEnv,Folder,fLock) \
1746 (SOM_Resolve(somSelf, M_WPObject, wpclsNew) \
1747 (somSelf,pszTitle,pszSetupEnv,Folder,fLock))
1748#ifndef SOMGD_wpclsNew
1749 #if (defined(_wpclsNew) || defined(__wpclsNew))
1750 #undef _wpclsNew
1751 #undef __wpclsNew
1752 #define SOMGD_wpclsNew 1
1753 #else
1754 #define _wpclsNew M_WPObject_wpclsNew
1755 #endif /* _wpclsNew */
1756#endif /* SOMGD_wpclsNew */
1757
1758
1759/*
1760 * New Method: wpclsInitData
1761 */
1762typedef void SOMLINK somTP_M_WPObject_wpclsInitData(M_WPObject *somSelf);
1763//#pragma linkage(somTP_M_WPObject_wpclsInitData, system)
1764typedef somTP_M_WPObject_wpclsInitData *somTD_M_WPObject_wpclsInitData;
1765#define somMD_M_WPObject_wpclsInitData "::M_WPObject::wpclsInitData"
1766#define M_WPObject_wpclsInitData(somSelf) \
1767 (SOM_Resolve(somSelf, M_WPObject, wpclsInitData) \
1768 (somSelf))
1769#ifndef SOMGD_wpclsInitData
1770 #if (defined(_wpclsInitData) || defined(__wpclsInitData))
1771 #undef _wpclsInitData
1772 #undef __wpclsInitData
1773 #define SOMGD_wpclsInitData 1
1774 #else
1775 #define _wpclsInitData M_WPObject_wpclsInitData
1776 #endif /* _wpclsInitData */
1777#endif /* SOMGD_wpclsInitData */
1778
1779/*
1780 * New Method: wpclsQueryStyle
1781 */
1782typedef ULONG SOMLINK somTP_M_WPObject_wpclsQueryStyle(M_WPObject *somSelf);
1783//#pragma linkage(somTP_M_WPObject_wpclsQueryStyle, system)
1784typedef somTP_M_WPObject_wpclsQueryStyle *somTD_M_WPObject_wpclsQueryStyle;
1785#define somMD_M_WPObject_wpclsQueryStyle "::M_WPObject::wpclsQueryStyle"
1786#define M_WPObject_wpclsQueryStyle(somSelf) \
1787 (SOM_Resolve(somSelf, M_WPObject, wpclsQueryStyle) \
1788 (somSelf))
1789#ifndef SOMGD_wpclsQueryStyle
1790 #if (defined(_wpclsQueryStyle) || defined(__wpclsQueryStyle))
1791 #undef _wpclsQueryStyle
1792 #undef __wpclsQueryStyle
1793 #define SOMGD_wpclsQueryStyle 1
1794 #else
1795 #define _wpclsQueryStyle M_WPObject_wpclsQueryStyle
1796 #endif /* _wpclsQueryStyle */
1797#endif /* SOMGD_wpclsQueryStyle */
1798
1799/*
1800 * New Method: wpclsQueryObject
1801 */
1802typedef WPObject* SOMLINK somTP_M_WPObject_wpclsQueryObject(M_WPObject *somSelf,
1803 HOBJECT hObject);
1804//#pragma linkage(somTP_M_WPObject_wpclsQueryObject, system)
1805typedef somTP_M_WPObject_wpclsQueryObject *somTD_M_WPObject_wpclsQueryObject;
1806#define somMD_M_WPObject_wpclsQueryObject "::M_WPObject::wpclsQueryObject"
1807#define M_WPObject_wpclsQueryObject(somSelf,hObject) \
1808 (SOM_Resolve(somSelf, M_WPObject, wpclsQueryObject) \
1809 (somSelf,hObject))
1810#ifndef SOMGD_wpclsQueryObject
1811 #if (defined(_wpclsQueryObject) || defined(__wpclsQueryObject))
1812 #undef _wpclsQueryObject
1813 #undef __wpclsQueryObject
1814 #define SOMGD_wpclsQueryObject 1
1815 #else
1816 #define _wpclsQueryObject M_WPObject_wpclsQueryObject
1817 #endif /* _wpclsQueryObject */
1818#endif /* SOMGD_wpclsQueryObject */
1819
1820
1821/*
1822 * New Method: wpclsQueryDetails
1823 */
1824typedef PCLASSDETAILS SOMLINK somTP_M_WPObject_wpclsQueryDetails(M_WPObject *somSelf);
1825//#pragma linkage(somTP_M_WPObject_wpclsQueryDetails, system)
1826typedef somTP_M_WPObject_wpclsQueryDetails *somTD_M_WPObject_wpclsQueryDetails;
1827#define somMD_M_WPObject_wpclsQueryDetails "::M_WPObject::wpclsQueryDetails"
1828#define M_WPObject_wpclsQueryDetails(somSelf) \
1829 (SOM_Resolve(somSelf, M_WPObject, wpclsQueryDetails) \
1830 (somSelf))
1831#ifndef SOMGD_wpclsQueryDetails
1832 #if (defined(_wpclsQueryDetails) || defined(__wpclsQueryDetails))
1833 #undef _wpclsQueryDetails
1834 #undef __wpclsQueryDetails
1835 #define SOMGD_wpclsQueryDetails 1
1836 #else
1837 #define _wpclsQueryDetails M_WPObject_wpclsQueryDetails
1838 #endif /* _wpclsQueryDetails */
1839#endif /* SOMGD_wpclsQueryDetails */
1840
1841/*
1842 * New Method: wpclsQueryDetailsInfo
1843 */
1844typedef ULONG SOMLINK somTP_M_WPObject_wpclsQueryDetailsInfo(M_WPObject *somSelf,
1845 PCLASSFIELDINFO* ppClassFieldInfo,
1846 PULONG pSize);
1847//#pragma linkage(somTP_M_WPObject_wpclsQueryDetailsInfo, system)
1848typedef somTP_M_WPObject_wpclsQueryDetailsInfo *somTD_M_WPObject_wpclsQueryDetailsInfo;
1849#define somMD_M_WPObject_wpclsQueryDetailsInfo "::M_WPObject::wpclsQueryDetailsInfo"
1850#define M_WPObject_wpclsQueryDetailsInfo(somSelf,ppClassFieldInfo,pSize) \
1851 (SOM_Resolve(somSelf, M_WPObject, wpclsQueryDetailsInfo) \
1852 (somSelf,ppClassFieldInfo,pSize))
1853#ifndef SOMGD_wpclsQueryDetailsInfo
1854 #if (defined(_wpclsQueryDetailsInfo) || defined(__wpclsQueryDetailsInfo))
1855 #undef _wpclsQueryDetailsInfo
1856 #undef __wpclsQueryDetailsInfo
1857 #define SOMGD_wpclsQueryDetailsInfo 1
1858 #else
1859 #define _wpclsQueryDetailsInfo M_WPObject_wpclsQueryDetailsInfo
1860 #endif /* _wpclsQueryDetailsInfo */
1861#endif /* SOMGD_wpclsQueryDetailsInfo */
1862
1863
1864
1865
1866
1867class M_WPObject : public SOMClass {
1868
1869 #pragma SOMClassName(*, "M_WPObject")
1870 #pragma SOMNoMangling(*)
1871 #pragma SOMNonDTS(*)
1872
1873 #pragma SOMClassVersion (M_WPObject, 1, 2)
1874 #pragma SOMCallstyle (oidl)
1875 #pragma SOMAsDefault(off)
1876 #pragma SOMAsDefault(pop)
1877 public :
1878 virtual BOOL wpclsCreateDefaultTemplates(WPObject* Folder);
1879 virtual void wpclsInitData();
1880 virtual WPObject* wpclsMakeAwake(PSZ pszTitle, ULONG ulStyle,
1881 HPOINTER hptrIcon, POBJDATA pObjData,
1882 WPFolder* Folder, ULONG ulUser);
1883 virtual WPObject* wpclsNew(PSZ pszTitle, PSZ pszSetupEnv,
1884 WPFolder* Folder, BOOL fLock);
1885 virtual BOOL wpclsQueryDefaultHelp(PULONG pHelpPanelId,
1886 PSZ pszHelpLibrary);
1887 virtual ULONG wpclsQueryDefaultView();
1888 virtual PCLASSDETAILS wpclsQueryDetails();
1889 virtual ULONG wpclsQueryDetailsInfo(PCLASSFIELDINFO* ppClassFieldInfo,
1890 PULONG pSize);
1891 virtual BOOL wpclsQueryExtendedCriteria(PSZ pszName, ULONG ulSearchType,
1892 PVOID pvoidExtendedCriteria);
1893 virtual WPObject* wpclsQueryFolder(PSZ pszLocation, BOOL fLock);
1894 virtual HPOINTER wpclsQueryIcon();
1895 virtual void wpclsQuerySearchInfo(M_WPObject** ClassExtended,
1896 M_WPObject** ClassCreate,
1897 PULONG pulClassCriteriaSize);
1898 virtual ULONG wpclsQueryStyle();
1899 virtual PSZ wpclsQueryTitle();
1900 virtual void wpclsUnInitData();
1901 virtual BOOL wpclsFindObjectFirst(PCLASS pClassList, PHFIND phFind,
1902 PSZ pszTitle, WPFolder* Folder,
1903 BOOL fSubfolders, PVOID pExtendedCriteria,
1904 POBJECT pBuffer, PULONG pCount);
1905 virtual BOOL wpclsFindObjectNext(HFIND hFind, POBJECT pBuffer,
1906 PULONG pCount);
1907 virtual BOOL wpclsFindObjectEnd(HFIND hFind);
1908 virtual BOOL wpclsSetError(ULONG ulErrorId);
1909 virtual ULONG wpclsQueryError();
1910 virtual BOOL wpclsQuerySettingsPageSize(PSIZEL pSizl);
1911 virtual ULONG wpclsQueryIconData(PICONINFO pIconInfo);
1912 virtual WPObject* wpclsQueryObject(HOBJECT hObject);
1913 virtual ULONG wpclsQueryButtonAppearance();
1914 virtual void wpclsDecUsage();
1915 virtual void wpclsIncUsage();
1916 virtual BOOL wpclsInsertMultipleObjects(HWND hwndCnr, PPOINTL pptlIcon,
1917 PVOID* pObjectArray,
1918 PVOID pRecordParent,
1919 ULONG NumRecords);
1920 virtual WPObject* wpclsFindOneObject(HWND hwndOwner, PSZ pszFindParams);
1921 virtual BOOL wpclsSetSettingsPageSize(PSIZEL pSizl);
1922 virtual BOOL wpclsSetIconData(PICONINFO pIconInfo);
1923 virtual BOOL wpclsSetIcon(HPOINTER hptrNewIcon);
1924 virtual WPObject* wpclsObjectFromHandle(HOBJECT hObject);
1925 virtual BOOL wpclsRemoveObjects(HWND hwndCnr, PVOID* pRecordArray,
1926 ULONG NumRecords, BOOL RemoveAll);
1927 virtual ~M_WPObject();
1928 virtual void somClassReady();
1929 virtual SOMObject* somNew();
1930 virtual SOMObject* somRenew(void* obj);
1931 #pragma SOMReleaseOrder ( \
1932 "wpclsInitData", \
1933 "wpclsUnInitData", \
1934 *, \
1935 "wpclsMakeAwake", \
1936 "wpclsIncUsage", \
1937 "wpclsDecUsage", \
1938 "wpclsQueryTitle", \
1939 "wpclsQueryIcon", \
1940 "wpclsQueryDefaultHelp", \
1941 "wpclsQueryStyle", \
1942 "wpclsQueryDetailsInfo", \
1943 "wpclsQueryDefaultView", \
1944 "wpclsQueryDetails", \
1945 "wpclsQuerySearchInfo", \
1946 "wpclsQueryExtendedCriteria", \
1947 "wpclsCreateDefaultTemplates", \
1948 *, \
1949 "wpclsFindObjectFirst", \
1950 "wpclsFindObjectNext", \
1951 "wpclsFindObjectEnd", \
1952 *, \
1953 "wpclsSetError", \
1954 "wpclsQueryError", \
1955 "wpclsQuerySettingsPageSize", \
1956 "wpclsSetSettingsPageSize", \
1957 "wpclsQueryIconData", \
1958 "wpclsSetIcon", \
1959 "wpclsSetIconData", \
1960 "wpclsQueryObject", \
1961 "wpclsObjectFromHandle", \
1962 *, \
1963 *, \
1964 *, \
1965 *, \
1966 *, \
1967 "wpclsQueryButtonAppearance", \
1968 "wpclsNew", \
1969 "wpclsQueryFolder", \
1970 *, \
1971 *, \
1972 "wpclsRemoveObjects", \
1973 "wpclsInsertMultipleObjects", \
1974 *, \
1975 "wpclsFindOneObject", \
1976 *)
1977};
1978 #pragma SOMMetaClass (WPObject, "M_WPObject")
1979
1980#pragma SOMAsDefault(pop)
1981
1982 #pragma SOMNonDTS(pop)
1983/* End M_WPObject */
1984#endif /* _DTS_HH_INCLUDED_wpobject */
1985
Note: See TracBrowser for help on using the repository browser.