27 #ifndef __PMFLAVORTYPES__ 28 #define __PMFLAVORTYPES__ 35 #if defined MACINTOSH || defined WASM 38 kScrapFlavorTypePicture =
'PICT',
39 kScrapFlavorTypeText =
'TEXT',
40 kScrapFlavorTypeTextStyle =
'styl',
41 kScrapFlavorTypeMovie =
'moov',
42 kScrapFlavorTypeSound =
'snd ',
43 kScrapFlavorTypeUnicode =
'utxt',
44 kScrapFlavorTypeUnicodeStyle =
'ustl',
49 kPasteboardTypeFileURLPromise_FakeOSType =
'nDfp',
50 kPasteboardTypeFilePromiseContent_FakeOSType =
'nDfc' 53 typedef OSType FlavorType;
56 #if defined MACINTOSH || defined UNIX || defined WASM 58 typedef uint32 ExternalPMFlavor;
60 typedef uint32 PMFlavor;
64 #define XferFlavor(flavor) XferInt32((int32&) flavor) 67 typedef CLIPFORMAT ExternalPMFlavor;
68 typedef CLIPFORMAT PMFlavor;
76 inline ExternalPMFlavor RegisterExternalFlavor(TCHAR* flavorString )
78 return ::RegisterClipboardFormat(flavorString );
86 inline void GetExternalFlavorName(ExternalPMFlavor flavor,
PMString& flavorString)
89 int count = ::GetClipboardFormatName(flavor, buffer, 500);
90 (count > 0)? flavorString.
SetXString((UTF16TextChar *)buffer, count) : flavorString.
clear();
95 #define XferFlavor(flavor) XferInt16((int16&) flavor) 101 const PMFlavor kNoFlavor =
static_cast<PMFlavor
>(0);
103 const ExternalPMFlavor kNoExternalFlavor =
static_cast<ExternalPMFlavor
>(0);
106 typedef uint32 PMFlavorFlags;
112 const PMFlavorFlags kNormalFlavorFlag =
static_cast<PMFlavorFlags
>(0);
114 const PMFlavorFlags kSenderOnlyFlavorFlag =
static_cast<PMFlavorFlags
>(1);
116 const PMFlavorFlags kSenderTranslatedFlavorFlag =
static_cast<PMFlavorFlags
>(2);
118 const PMFlavorFlags kFlavorNotSavedFlag =
static_cast<PMFlavorFlags
>(4);
120 const PMFlavorFlags kSystemTranslatedFlavorFlag =
static_cast<PMFlavorFlags
>(0x00000100);
122 const PMFlavorFlags kMacDragDropFlavorFlagMask =
static_cast<PMFlavorFlags
>(0x00000107);
124 const PMFlavorFlags kMacScrapFlavorFlagMask =
static_cast<PMFlavorFlags
>(0x00000003);
126 const PMFlavorFlags kWinOLEFlavorFlagMask =
static_cast<PMFlavorFlags
>(0x00000000);
130 typedef uint16 PMFlavorPriority;
136 const PMFlavorPriority kUnknownFlavorPriority =
static_cast<PMFlavorPriority
>(0);
139 const PMFlavorPriority kHighestFlavorPriority =
static_cast<PMFlavorPriority
>(250);
141 const PMFlavorPriority kSecondFlavorPriority =
static_cast<PMFlavorPriority
>(kHighestFlavorPriority - 1);
143 const PMFlavorPriority kThirdFlavorPriority =
static_cast<PMFlavorPriority
>(kHighestFlavorPriority - 2);
145 const PMFlavorPriority kFourthFlavorPriority =
static_cast<PMFlavorPriority
>(kHighestFlavorPriority - 3);
147 const PMFlavorPriority kFifthFlavorPriority =
static_cast<PMFlavorPriority
>(kHighestFlavorPriority - 4);
149 const PMFlavorPriority kSixthFlavorPriority =
static_cast<PMFlavorPriority
>(kHighestFlavorPriority - 5);
151 const PMFlavorPriority kSeventhFlavorPriority =
static_cast<PMFlavorPriority
>(kHighestFlavorPriority - 6);
153 const PMFlavorPriority kEighthFlavorPriority =
static_cast<PMFlavorPriority
>(kHighestFlavorPriority - 7);
155 const PMFlavorPriority kNinthFlavorPriority =
static_cast<PMFlavorPriority
>(kHighestFlavorPriority - 8);
157 const PMFlavorPriority kTenthFlavorPriority =
static_cast<PMFlavorPriority
>(kHighestFlavorPriority - 9);
164 const PMFlavorPriority kOverrideDropTargetHelper_RejectDrop_FlavorPriority =
static_cast<PMFlavorPriority
>(300);
168 const PMFlavorPriority kOverrideDEHandlerHelper_IgnoreFlavor_FlavorPriority =
static_cast<PMFlavorPriority
>(301);
184 fFlavor(kNoExternalFlavor),
185 fFlavorFlags(kNormalFlavorFlag),
186 fFlavorPriority(kUnknownFlavorPriority) {}
195 DataExchangeResponse(bool16 canDo, ExternalPMFlavor flavor, PMFlavorFlags flavorFlags = kNormalFlavorFlag, PMFlavorPriority priority = kUnknownFlavorPriority)
198 fFlavorFlags(flavorFlags),
199 fFlavorPriority(priority) {}
203 : fCanDo(other.fCanDo),
204 fFlavor(other.fFlavor),
205 fFlavorFlags(other.fFlavorFlags),
206 fFlavorPriority(other.fFlavorPriority) {}
208 bool operator==(
const DataExchangeResponse&)
const { ASSERT_FAIL(
"appease K2Vector.Location");
return false; }
211 bool16
CanDo()
const {
return fCanDo;}
227 ExternalPMFlavor fFlavor;
228 PMFlavorFlags fFlavorFlags;
229 PMFlavorPriority fFlavorPriority;
236 bool16 AppendPromiseIfUnique(OrderedPromiseList& orderedPromiseList,
const DataExchangeResponse& promise);
238 bool16 AppendFlavorIfUnique(ExternalPMFlavorList& flavorList,
const ExternalPMFlavor& flavor);
241 inline int32 minFlavorIndex(int32 a, int32 b)
243 if (a >= 0 && b >= 0)
244 return (a < b) ? a : b;
252 inline K2Vector<ExternalPMFlavor>::iterator minFlavorIter(K2Vector<ExternalPMFlavor>::iterator a, K2Vector<ExternalPMFlavor>::iterator b)
254 return (a < b) ? a : b;
264 extern const ExternalPMFlavor kTEXTExternalFlavor;
266 extern const ExternalPMFlavor kUNICODETEXTExternalFlavor;
269 extern const ExternalPMFlavor kDesktopExternalFlavor;
273 extern const ExternalPMFlavor kUNICODESTYLExternalFlavor;
275 extern const ExternalPMFlavor kSTYLExternalFlavor;
277 extern const ExternalPMFlavor kPICTExternalFlavor;
280 extern const ExternalPMFlavor kPasteboardTypeFileURLPromiseExternalFlavor;
281 extern const ExternalPMFlavor kPasteboardTypeFileURLPromiseContentExternalFlavor;
284 extern const ExternalPMFlavor kPMPrivateClipboardMarkerFlavor;
287 #define flavorTypeFileURL 'furl' 291 extern const ExternalPMFlavor kBITMAPExternalFlavor;
293 extern const ExternalPMFlavor kDIBExternalFlavor;
295 extern const ExternalPMFlavor kMetafileExternalFlavor;
297 extern const ExternalPMFlavor kEnhMetafileExternalFlavor;
301 extern const ExternalPMFlavor kPageItemXMLSnippetExternalFlavor;
303 extern const ExternalPMFlavor kStructureXMLSnippetExternalFlavor;
305 extern const ExternalPMFlavor kPMColorExternalFlavor;
308 extern const ExternalPMFlavor kAICBExternalFlavor;
310 extern const ExternalPMFlavor kPDFExternalFlavor;
312 extern const ExternalPMFlavor kTIFFExternalFlavor;
315 extern const ExternalPMFlavor kRGBColorExternalFlavor;
317 extern const ExternalPMFlavor kCMYKColorExternalFlavor;
320 extern const ExternalPMFlavor kRTFExternalFlavor;
323 extern const ExternalPMFlavor kURLExternalFlavor;
326 extern const ExternalPMFlavor kVersionCueItemExternalFlavor;
329 extern const ExternalPMFlavor kINXExternalFlavor;
332 extern const ExternalPMFlavor kOWLExternalFlavor;
335 extern const ExternalPMFlavor kChromiumExternalFlavor;
338 extern const ExternalPMFlavor kJsonTextExternalFlavor;
341 extern const ExternalPMFlavor kMathMLExternalFlavor;
351 extern const PMFlavor kTEXTFlavor;
354 extern const PMFlavor kPageItemFlavor;
356 extern const PMFlavor kPMTextFlavor;
358 extern const PMFlavor kPMColorFlavor;
360 extern const PMFlavor kPMTableFlavor;
362 extern const PMFlavor kChromiumFlavor;
364 extern const PMFlavor kMathMLFlavor;
369 extern const PMFlavor kPMLayerProxyFlavor;
371 extern const PMFlavor kPMLayerZOrderFlavor;
373 extern const PMFlavor kPMLayerEyeFlavor;
375 extern const PMFlavor kPMLayerPencilFlavor;
377 extern const PMFlavor kPMLayerPageItemZOrderFlavor;
379 extern const PMFlavor kPMLayerPageItemDupDeleteFlavor;
383 extern const PMFlavor kPMCharStyleListFlavor;
385 extern const PMFlavor kPMParaStyleListFlavor;
390 extern const PMFlavor kPMSwatchesZOrderFlavor;
392 extern const PMFlavor kPMSwatchesFlavor;
394 extern const PMFlavor kPMSwatchLibSwatchesFlavor;
396 extern const PMFlavor kPMStrokeColorFlavor;
398 extern const PMFlavor kPMFillColorFlavor;
404 extern const PMFlavor kPMPageFlavor;
406 extern const PMFlavor kPMPagesFlavor;
408 extern const PMFlavor kPMSpreadFlavor;
410 extern const PMFlavor kPMSpreadsFlavor;
412 extern const PMFlavor kPMMasterPageFlavor;
414 extern const PMFlavor kPMMasterSpreadFlavor;
416 extern const PMFlavor kPMMasterSpreadsFlavor;
420 extern const PMFlavor kPMSysFileFlavor;
422 extern const PMFlavor kPMRTFFlavor;
424 extern const PMFlavor kPMBookContentZOrderFlavor;
426 extern const PMFlavor kPMIndexSortOptionZOrderFlavor;
428 extern const PMFlavor kPMXMLNodeFlavor;
430 extern const PMFlavor kPMNamedGridListFlavor;
431 extern const PMFlavor kPMInkListZOrderFlavor;
433 extern const PMFlavor kPMTrapStyleListFlavor;
438 extern const PMFlavor kPMTOCZOrderListFlavor;
440 extern const PMFlavor kPMTOCZOrderListAddFlavor;
443 extern const PMFlavor kPMIndexTopicFlavor;
445 extern const PMFlavor kPMHyperlinkListFlavor;
446 extern const PMFlavor kPMBookmarkListFlavor;
451 extern const PMFlavor kXMLStructureElementFlavor;
453 extern const PMFlavor kXMLStructureDragDropFlavor;
455 extern const PMFlavor kXMLTagDragDropFlavor;
458 extern const PMFlavor kPMURLFlavor;
460 extern const PMFlavor kSepPrvEyeFlavor;
464 extern const PMFlavor kPMObjectStyleListFlavor;
465 extern const PMFlavor kPMDefaultTextObjStyleFlavor;
466 extern const PMFlavor kPMDefaultGraphicObjStyleFlavor;
467 extern const PMFlavor kPMDefaultFrameGridObjStyleFlavor;
470 extern const PMFlavor kPMTimingPanelDragDropFlavor;
472 extern const PMFlavor kStoryListDragDropFlavor;
473 extern const PMFlavor kDictOrderDragDropFlavor;
475 extern const PMFlavor kPMJBXContentListFlavor;
476 extern const PMFlavor kPMJBXLinkListFlavor;
478 extern const PMFlavor kPSDLayerEyeFlavor;
479 extern const PMFlavor kXMLRulesDragDropFlavor;
480 extern const PMFlavor kXPEffectsDDFlavor;
483 extern const PMFlavor kPMTableStyleListFlavor;
484 extern const PMFlavor kPMCellStyleListFlavor;
486 extern const PMFlavor kPMConditionTagListFlavor;
488 extern const PMFlavor kMSOStateDragDropFlavor;
491 extern const PMFlavor kArticlePanelDragDropFlavor;
493 extern const PMFlavor kListItemsDragDropFlavor;
495 extern const PMFlavor kPMListBoxZOrderFlavor;
498 extern const PMFlavor kPMStateProxyFlavor;
499 extern const PMFlavor kPMStateEyeFlavor;
502 extern const PMFlavor kCollaborationPanelDragDropFlavor;
507 #endif //__PMFLAVORTYPES__