5namespace Stroika::Frameworks::Led {
7#if qStroika_Frameworks_Led_SupportGDI
13 inline Led_ClipFormat EmbeddedObjectCreatorRegistry::Assoc::GetIthFormat (
size_t i)
const
15 Assert (fFormatTagCount >= 1);
16 Require (i < fFormatTagCount);
17 return (fFormatTagCount == 1) ? fFormatTag : fFormatTags[i];
21 inline EmbeddedObjectCreatorRegistry::EmbeddedObjectCreatorRegistry ()
25 inline EmbeddedObjectCreatorRegistry& EmbeddedObjectCreatorRegistry::Get ()
27 if (sThe ==
nullptr) {
28 sThe =
new EmbeddedObjectCreatorRegistry ();
32 inline void EmbeddedObjectCreatorRegistry::AddAssoc (Assoc assoc)
34 fAssocList.push_back (assoc);
36 inline void EmbeddedObjectCreatorRegistry::AddAssoc (
const char* embeddingTag,
37 SimpleEmbeddedObjectStyleMarker* (*memReader) (
const char* embeddingTag,
38 const void* data,
size_t len))
41 assoc.fFormatTagCount = 0;
42 memcpy (assoc.fEmbeddingTag, embeddingTag, sizeof (assoc.fEmbeddingTag));
43 assoc.fReadFromMemory = memReader;
44 assoc.fReadFromFlavorPackage =
nullptr;
47 inline void EmbeddedObjectCreatorRegistry::AddAssoc (Led_ClipFormat clipFormat,
const char* embeddingTag,
48 SimpleEmbeddedObjectStyleMarker* (*memReader) (
const char* embeddingTag,
49 const void* data,
size_t len),
50 SimpleEmbeddedObjectStyleMarker* (*packageReader) (ReaderFlavorPackage& flavorPackage))
53 assoc.fFormatTag = clipFormat;
54 assoc.fFormatTagCount = 1;
55 memcpy (assoc.fEmbeddingTag, embeddingTag, sizeof (assoc.fEmbeddingTag));
56 assoc.fReadFromMemory = memReader;
57 assoc.fReadFromFlavorPackage = packageReader;
60 inline void EmbeddedObjectCreatorRegistry::AddAssoc (
const Led_ClipFormat* clipFormats,
size_t clipFormatCount,
const char* embeddingTag,
61 SimpleEmbeddedObjectStyleMarker* (*memReader) (
const char* embeddingTag,
62 const void* data,
size_t len),
63 SimpleEmbeddedObjectStyleMarker* (*packageReader) (ReaderFlavorPackage& flavorPackage))
66 assoc.fFormatTags = clipFormats;
67 assoc.fFormatTagCount = clipFormatCount;
68 memcpy (assoc.fEmbeddingTag, embeddingTag, sizeof (assoc.fEmbeddingTag));
69 assoc.fReadFromMemory = memReader;
70 assoc.fReadFromFlavorPackage = packageReader;
73 inline const vector<EmbeddedObjectCreatorRegistry::Assoc>& EmbeddedObjectCreatorRegistry::GetAssocList ()
const
77 inline void EmbeddedObjectCreatorRegistry::SetAssocList (
const vector<Assoc>& assocList)
79 fAssocList = assocList;
88 inline const SimpleEmbeddedObjectStyleMarker::CommandNames& SimpleEmbeddedObjectStyleMarker::GetCommandNames ()
96 inline void SimpleEmbeddedObjectStyleMarker::SetCommandNames (
const SimpleEmbeddedObjectStyleMarker::CommandNames& cmdNames)
98 sCommandNames = cmdNames;
101#if qStroika_Foundation_Common_Platform_MacOS || qStroika_Foundation_Common_Platform_Windows
103 inline StandardMacPictureStyleMarker::PictureHandle StandardMacPictureStyleMarker::GetPictureHandle ()
const
106 return fPictureHandle;
108 inline size_t StandardMacPictureStyleMarker::GetPictureByteSize ()
const
110#if qStroika_Foundation_Common_Platform_MacOS
111 return ::GetHandleSize (Handle (fPictureHandle));
112#elif qStroika_Foundation_Common_Platform_Windows
120 inline const Led_DIB* StandardDIBStyleMarker::GetDIBData ()
const
126#if qStroika_Foundation_Common_Platform_MacOS || qStroika_Foundation_Common_Platform_Windows
128 inline StandardMacPictureStyleMarker::PictureHandle StandardMacPictureWithURLStyleMarker::GetPictureHandle ()
const
131 return fPictureHandle;
133 inline size_t StandardMacPictureWithURLStyleMarker::GetPictureByteSize ()
const
135#if qStroika_Foundation_Common_Platform_MacOS
136 return ::GetHandleSize (Handle (fPictureHandle));
137#elif qStroika_Foundation_Common_Platform_Windows
145 inline const Led_DIB* StandardDIBWithURLStyleMarker::GetDIBData ()
const
159 inline TWIPS_Point StandardUnknownTypeStyleMarker::GetShownSize ()
const
163 inline const void* StandardUnknownTypeStyleMarker::GetData ()
const
167 inline size_t StandardUnknownTypeStyleMarker::GetDataLength ()
const