CStandardDocumentMetaInfo.h
Go to the documentation of this file.
1 #ifndef idoc_CStandardDocumentMetaInfo_included
2 #define idoc_CStandardDocumentMetaInfo_included
3 
4 
5 // Qt includes
6 #include <QtCore/QMap>
7 
8 // ACF includes
9 #include <iser/ISerializable.h>
10 #include <idoc/IDocumentMetaInfo.h>
11 
12 
13 namespace idoc
14 {
15 
16 
21  virtual public IDocumentMetaInfo,
22  virtual public iser::ISerializable
23 {
24 public:
25  // reimplemented (idoc::IDocumentMetaInfo)
26  virtual MetaInfoTypes GetMetaInfoTypes(bool allowReadOnly = true) const;
27  virtual QVariant GetMetaInfo(int metaInfoType) const;
28  virtual bool SetMetaInfo(int metaInfoType, const QVariant& metaInfo);
29  virtual QString GetMetaInfoName(int metaInfoType) const;
30  virtual QString GetMetaInfoDescription(int metaInfoType) const;
31  virtual bool IsMetaInfoWritable(int metaInfoType) const;
32 
33  // reimplemented (iser::ISerializable)
34  virtual bool Serialize(iser::IArchive& archive);
35 
36  // reimplemented (istd::IChangeable)
37  virtual bool IsEqual(const IChangeable& object) const;
38  virtual bool CopyFrom(const IChangeable& object, CompatibilityMode mode = CM_WITHOUT_REFS);
40 
41 private:
42  typedef QMap<int, QVariant> MetaInfoMap;
43  MetaInfoMap m_infosMap;
44 };
45 
46 
47 } // namespace idoc
48 
49 
50 #endif // !idoc_CStandardDocumentMetaInfo_included
51 
52 
External references are simple ignored.
Definition: IChangeable.h:197
CompatibilityMode
Control how relationship betweeen objects are interpreted.
Definition: IChangeable.h:186
Interface for document meta-information.
Common class for all classes which objects can be archived or restored from archive.
Definition: ISerializable.h:23
Implementation of the basic document's meta information.
virtual QString GetMetaInfoDescription(int metaInfoType) const
Get a human readable description for a given meta information type.
Represent input/output persistence archive.
Definition: IArchive.h:30
Common interface for data model objects, which can be changed.
Definition: IChangeable.h:24
virtual QString GetMetaInfoName(int metaInfoType) const
Get a human readable name for a given meta information type.
virtual bool Serialize(iser::IArchive &archive)
Load or store state of this object as a archive stream.
virtual bool IsEqual(const IChangeable &object) const
virtual MetaInfoTypes GetMetaInfoTypes(bool allowReadOnly=true) const
Get list of contained meta info types.
virtual bool SetMetaInfo(int metaInfoType, const QVariant &metaInfo)
Set new document's meta information for a given meta type.
virtual QVariant GetMetaInfo(int metaInfoType) const
Get document's meta info.
virtual bool CopyFrom(const IChangeable &object, CompatibilityMode mode=CM_WITHOUT_REFS)
virtual istd::IChangeable * CloneMe(CompatibilityMode mode=CM_WITHOUT_REFS) const
Make a copy of this object.
virtual bool IsMetaInfoWritable(int metaInfoType) const
Check if meta information can be changed.

© 2007-2017 Witold Gantzke and Kirill Lepskiy