|
ACF $AcfVersion:0$
|
Interface for document meta-information. More...
#include <IDocumentMetaInfo.h>
Public Types | |
| enum | ChangeFlags { CF_METAINFO = 0xd83067d } |
| Data model change notification flags. More... | |
| enum | MetaInfoType { MIT_TITLE , MIT_AUTHOR , MIT_CREATOR , MIT_DESCRIPTION , MIT_CREATION_TIME , MIT_MODIFICATION_TIME , MIT_CREATOR_VERSION , MIT_DOCUMENT_VERSION , MIT_CONTENT_CHECKSUM , MIT_USER = 1024 } |
| Type of the meta information. More... | |
| typedef QSet< int > | MetaInfoTypes |
Public Types inherited from istd::IChangeable | |
| enum | ChangeFlags { CF_ACF_INTERNAL = 0 , CF_ALL_DATA , CF_ANY , CF_DESTROYING , CF_DELEGATED , CF_NO_UNDO } |
| Data model change notification flags. More... | |
| enum | SupportedOperations { SO_NONE = 0 , SO_OBSERVE = 1 << 0 , SO_COPY = 1 << 1 , SO_CLONE = 1 << 2 , SO_COMPARE = 1 << 3 , SO_RESET = 1 << 4 } |
| Flags for supported operations. More... | |
| enum | CompatibilityMode { CM_STRICT , CM_WITHOUT_REFS , CM_WITH_REFS , CM_CONVERT } |
| Control how relationship betweeen objects are interpreted. More... | |
| typedef QMultiMap< QByteArray, QVariant > | ChangeInfoMap |
Public Member Functions | |
| virtual MetaInfoTypes | GetMetaInfoTypes (bool allowReadOnly=true) const =0 |
| Get list of contained meta info types. | |
| virtual QVariant | GetMetaInfo (int metaInfoType) const =0 |
| Get document's meta info. | |
| virtual bool | SetMetaInfo (int metaInfoType, const QVariant &metaInfo)=0 |
| Set new document's meta information for a given meta type. | |
| virtual void | RemoveMetaInfo (int metaInfoType)=0 |
| Remove document's meta information for a given meta type. | |
| virtual QByteArray | GetMetaInfoId (int metaInfoType) const =0 |
| Get an unique ID of the meta information. | |
| virtual QString | GetMetaInfoName (int metaInfoType) const =0 |
| Get a human readable name for a given meta information type. | |
| virtual QString | GetMetaInfoDescription (int metaInfoType) const =0 |
| Get a human readable description for a given meta information type. | |
| virtual bool | IsMetaInfoWritable (int metaInfoType) const =0 |
| Check if meta information can be changed. | |
Public Member Functions inherited from istd::IChangeable | |
| virtual int | GetSupportedOperations () const |
| Get set of flags for supported operations. | |
| virtual bool | CopyFrom (const IChangeable &object, CompatibilityMode mode=CM_WITHOUT_REFS) |
| Copy this object from another one. | |
| virtual bool | IsEqual (const IChangeable &object) const |
| Compare this object with another object. | |
| virtual istd::TUniqueInterfacePtr< istd::IChangeable > | CloneMe (CompatibilityMode mode=CM_WITHOUT_REFS) const |
| Make a copy of this object. | |
| virtual bool | ResetData (CompatibilityMode mode=CM_WITHOUT_REFS) |
| Reset data to its default state. | |
| virtual void | BeginChanges (const ChangeSet &changeSet) |
| Starts the change transaction. | |
| virtual void | EndChanges (const ChangeSet &changeSet) |
| Ends the change transaction. | |
| virtual void | BeginChangeGroup (const ChangeSet &changeSet) |
| Starts group of changes. | |
| virtual void | EndChangeGroup (const ChangeSet &changeSet) |
| Ends group of changes. | |
Public Member Functions inherited from istd::IPolymorphic | |
| virtual | ~IPolymorphic () |
Static Public Member Functions | |
| template<class T > | |
| static std::optional< T > | GetMetaInfoT (const idoc::IDocumentMetaInfo &metaInfo, int key) |
| Type-safe retrieval of metadata values. | |
Static Public Member Functions inherited from istd::IChangeable | |
| static const ChangeSet & | GetNoChanges () |
| Get empty set of changes. | |
| static const ChangeSet & | GetAnyChange () |
| Get anonymous change set. | |
| static const ChangeSet & | GetAllChanges () |
| Get anonymous change set. | |
| static const ChangeSet & | GetDelegatedChanges () |
| Get delegated change set. | |
Additional Inherited Members | |
Protected Member Functions inherited from istd::IChangeable | |
| virtual void | OnBeginChanges () |
| Callback function for begin change event. | |
| virtual void | OnEndChanges (const ChangeSet &changeSet) |
| Callback function for end change event. | |
Interface for document meta-information.
Meta-information provides descriptive data about a document that is separate from the document's actual content. This includes properties like title, author, creation date, modification date, description, and custom user-defined metadata.
Meta-information is typically stored alongside the document content and can be used for:
The interface supports both standard metadata types (defined in MetaInfoType enum) and custom user-defined types (starting from MIT_USER).
Definition at line 69 of file IDocumentMetaInfo.h.
| typedef QSet<int> idoc::IDocumentMetaInfo::MetaInfoTypes |
Definition at line 140 of file IDocumentMetaInfo.h.
Data model change notification flags.
| Enumerator | |
|---|---|
| CF_METAINFO | Meta information has been changed. |
Definition at line 76 of file IDocumentMetaInfo.h.
Type of the meta information.
Definition at line 87 of file IDocumentMetaInfo.h.
|
pure virtual |
Get document's meta info.
Implemented in idoc::CStandardDocumentMetaInfo.
Referenced by GetMetaInfoT().
|
pure virtual |
Get a human readable description for a given meta information type.
Implemented in idoc::CStandardDocumentMetaInfo.
|
pure virtual |
Get an unique ID of the meta information.
Implemented in idoc::CStandardDocumentMetaInfo.
|
pure virtual |
Get a human readable name for a given meta information type.
Implemented in idoc::CStandardDocumentMetaInfo.
|
inlinestatic |
Type-safe retrieval of metadata values.
This static template helper method provides a convenient way to retrieve metadata with automatic type checking. It wraps the GetMetaInfo() call and performs runtime type validation to ensure the stored value matches the requested type.
| T | The expected type of the metadata value (e.g., QString, QDateTime). |
| metaInfo | Reference to the document metadata interface to query. |
| key | The metadata type identifier (e.g., MIT_TITLE, MIT_AUTHOR, or custom types >= MIT_USER). |
Definition at line 223 of file IDocumentMetaInfo.h.
References GetMetaInfo(), and I_IF_DEBUG.
|
pure virtual |
Get list of contained meta info types.
| allowReadOnly | if enabled, read only types will be also listed out, if this flag is false only the writable types will be returned. |
Implemented in idoc::CStandardDocumentMetaInfo.
|
pure virtual |
Check if meta information can be changed.
Implemented in idoc::CStandardDocumentMetaInfo.
|
pure virtual |
Remove document's meta information for a given meta type.
Implemented in idoc::CStandardDocumentMetaInfo.
|
pure virtual |
Set new document's meta information for a given meta type.
Implemented in idoc::CStandardDocumentMetaInfo.