ICF 3.0.5.47
Technical documentation of ICF Libraries
idoc::TMultiPageDocumentWrap< Base > Class Template Reference

Generic implementation of IMultiPageDocument interface. More...

#include <TMultiPageDocumentWrap.h>

Inheritance diagram for idoc::TMultiPageDocumentWrap< Base >:
Collaboration diagram for idoc::TMultiPageDocumentWrap< Base >:

Classes

struct  Page
 

Public Types

typedef Base BaseClass
 
typedef CStandardDocumentMetaInfo BaseClass2
 
- Public Types inherited from idoc::IDocumentMetaInfo
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_ICF_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 , SO_CHANGE_LOCK = 1 << 5
}
 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...
 
- Public Types inherited from iprm::IOptionsList
enum  ChangeFlags { CF_OPTIONS_CHANGED = 0x8263d86 , CF_OPTION_RENAMED }
 Flags for changes related to this interface. More...
 
enum  OptionsFlags { SCF_NONE = 0 , SCF_SUPPORT_UNIQUE_ID = 256 , SFC_DISABLE_ALLOWED = 32 }
 Flags for control constraints behavior. More...
 

Public Member Functions

int GetPagesCount () const override
 
const istd::IChangeableGetDocumentPage (int pageIndex) const override
 
const idoc::IDocumentMetaInfoGetPageMetaInfo (int pageIndex) const override
 
void ResetPages () override
 
bool RemovePage (int pageIndex) override
 
const IDocumentMetaInfoGetDocumentMetaInfo () const override
 
int GetOptionsFlags () const override
 Get constraints flags.
 
int GetOptionsCount () const override
 Get number of managed options.
 
QString GetOptionName (int index) const override
 Get name of specified option.
 
QString GetOptionDescription (int index) const override
 Get human readable description for a option with the index index.
 
QByteArray GetOptionId (int index) const override
 Get option ID.
 
bool IsOptionEnabled (int index) const override
 Return true if the option is enabled and can be selected.
 
bool Serialize (iser::IArchive &archive) override
 Load or store state of this object as a archive stream.
 
bool CopyFrom (const istd::IChangeable &object, CompatibilityMode mode=CM_WITHOUT_REFS) override
 Copy this object from another one.
 
bool ResetData (CompatibilityMode mode) override
 Reset data to its default state.
 
- Public Member Functions inherited from idoc::CStandardDocumentMetaInfo
MetaInfoTypes GetMetaInfoTypes (bool allowReadOnly=true) const override
 Get list of contained meta info types.
 
QVariant GetMetaInfo (int metaInfoType) const override
 Get document's meta info.
 
bool SetMetaInfo (int metaInfoType, const QVariant &metaInfo) override
 Set new document's meta information for a given meta type.
 
QString GetMetaInfoName (int metaInfoType) const override
 Get a human readable name for a given meta information type.
 
QString GetMetaInfoDescription (int metaInfoType) const override
 Get a human readable description for a given meta information type.
 
bool IsMetaInfoWritable (int metaInfoType) const override
 Check if meta information can be changed.
 
bool IsEqual (const IChangeable &object) const override
 
bool CopyFrom (const IChangeable &object, CompatibilityMode mode=CM_WITHOUT_REFS) override
 
std::unique_ptr< istd::IChangeableCloneMe (CompatibilityMode mode=CM_WITHOUT_REFS) const override
 Make a copy of this object.
 
- Public Member Functions inherited from idoc::IDocumentMetaInfo
- Public Member Functions inherited from istd::IChangeable
virtual int GetSupportedOperations () const
 Get set of flags for supported operations.
 
virtual bool IsEqual (const IChangeable &object) const
 Compare this object with another object.
 
virtual QMutex * GetChangesLock () const
 Get mutex beeing locked during changes, if available.
 
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 iser::ISerializable
virtual quint32 GetMinimalVersion (int versionId) const
 Get minimal needed version to correct storing of this data.
 
- Public Member Functions inherited from iprm::IOptionsList

Protected Types

typedef std::vector< PagePages
 

Protected Member Functions

virtual bool SerializePage (iser::IArchive &archive, Page &pageItem)
 Serialize a single page item into or from the archive.
 
- 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.
 

Protected Attributes

Pages m_documentPages
 

Additional Inherited Members

- Static Public Member Functions inherited from istd::IChangeable
static const ChangeSetGetNoChanges ()
 Get empty set of changes.
 
static const ChangeSetGetAnyChange ()
 Get anonymous change set.
 
static const ChangeSetGetAllChanges ()
 Get anonymous change set.
 
static const ChangeSetGetDelegatedChanges ()
 Get delegated change set.
 
- Static Public Member Functions inherited from iprm::IOptionsList
static int FindIndexById (const QByteArray &id, const iprm::IOptionsList &list)
 Helper function to find the option index by ID.
 

Detailed Description

template<class Base>
class idoc::TMultiPageDocumentWrap< Base >

Generic implementation of IMultiPageDocument interface.

Definition at line 30 of file TMultiPageDocumentWrap.h.

Member Typedef Documentation

◆ BaseClass

template<class Base >
Base idoc::TMultiPageDocumentWrap< Base >::BaseClass

Definition at line 36 of file TMultiPageDocumentWrap.h.

◆ BaseClass2

template<class Base >
CStandardDocumentMetaInfo idoc::TMultiPageDocumentWrap< Base >::BaseClass2

Definition at line 37 of file TMultiPageDocumentWrap.h.

◆ Pages

template<class Base >
std::vector<Page> idoc::TMultiPageDocumentWrap< Base >::Pages
protected

Definition at line 76 of file TMultiPageDocumentWrap.h.

Member Function Documentation

◆ CopyFrom()

template<class Base >
bool idoc::TMultiPageDocumentWrap< Base >::CopyFrom ( const istd::IChangeable & object,
CompatibilityMode mode = CM_WITHOUT_REFS )
overridevirtual

◆ GetDocumentMetaInfo()

template<class Base >
const IDocumentMetaInfo & idoc::TMultiPageDocumentWrap< Base >::GetDocumentMetaInfo ( ) const
override

Definition at line 140 of file TMultiPageDocumentWrap.h.

◆ GetDocumentPage()

template<class Base >
const istd::IChangeable & idoc::TMultiPageDocumentWrap< Base >::GetDocumentPage ( int pageIndex) const
override

Definition at line 94 of file TMultiPageDocumentWrap.h.

◆ GetOptionDescription()

template<class Base >
QString idoc::TMultiPageDocumentWrap< Base >::GetOptionDescription ( int index) const
overridevirtual

Get human readable description for a option with the index index.

Implements iprm::IOptionsList.

Definition at line 173 of file TMultiPageDocumentWrap.h.

◆ GetOptionId()

template<class Base >
QByteArray idoc::TMultiPageDocumentWrap< Base >::GetOptionId ( int index) const
overridevirtual

Get option ID.

The option ID must be unique, if flag SCF_SUPPORT_UNIQUE_ID is set.

See also
OptionsFlags

Implements iprm::IOptionsList.

Definition at line 180 of file TMultiPageDocumentWrap.h.

◆ GetOptionName()

template<class Base >
QString idoc::TMultiPageDocumentWrap< Base >::GetOptionName ( int index) const
overridevirtual

Get name of specified option.

Implements iprm::IOptionsList.

Definition at line 163 of file TMultiPageDocumentWrap.h.

References idoc::IDocumentMetaInfo::MIT_TITLE.

◆ GetOptionsCount()

template<class Base >
int idoc::TMultiPageDocumentWrap< Base >::GetOptionsCount ( ) const
overridevirtual

Get number of managed options.

Implements iprm::IOptionsList.

Definition at line 156 of file TMultiPageDocumentWrap.h.

◆ GetOptionsFlags()

template<class Base >
int idoc::TMultiPageDocumentWrap< Base >::GetOptionsFlags ( ) const
overridevirtual

Get constraints flags.

The flags describes how the constraints object mantainance

Implements iprm::IOptionsList.

Definition at line 149 of file TMultiPageDocumentWrap.h.

◆ GetPageMetaInfo()

template<class Base >
const idoc::IDocumentMetaInfo * idoc::TMultiPageDocumentWrap< Base >::GetPageMetaInfo ( int pageIndex) const
override

Definition at line 105 of file TMultiPageDocumentWrap.h.

◆ GetPagesCount()

template<class Base >
int idoc::TMultiPageDocumentWrap< Base >::GetPagesCount ( ) const
override

Definition at line 87 of file TMultiPageDocumentWrap.h.

◆ IsOptionEnabled()

template<class Base >
bool idoc::TMultiPageDocumentWrap< Base >::IsOptionEnabled ( int index) const
overridevirtual

Return true if the option is enabled and can be selected.

Implements iprm::IOptionsList.

Definition at line 187 of file TMultiPageDocumentWrap.h.

◆ RemovePage()

template<class Base >
bool idoc::TMultiPageDocumentWrap< Base >::RemovePage ( int pageIndex)
override

Definition at line 124 of file TMultiPageDocumentWrap.h.

◆ ResetData()

template<class Base >
bool idoc::TMultiPageDocumentWrap< Base >::ResetData ( CompatibilityMode mode)
overridevirtual

Reset data to its default state.

Default implementation in istd::IChangeable does nothing. You may check, if this functionality is supported over GetSupportedOperations().

Returns
true if the operation was successful, and false otherwise.

Reimplemented from idoc::CStandardDocumentMetaInfo.

Definition at line 328 of file TMultiPageDocumentWrap.h.

◆ ResetPages()

template<class Base >
void idoc::TMultiPageDocumentWrap< Base >::ResetPages ( )
override

Definition at line 115 of file TMultiPageDocumentWrap.h.

◆ Serialize()

template<class Base >
bool idoc::TMultiPageDocumentWrap< Base >::Serialize ( iser::IArchive & archive)
overridevirtual

Load or store state of this object as a archive stream.

Type of operation is depending on archive type.

See also
iser::IArchive

Reimplemented from idoc::CStandardDocumentMetaInfo.

Definition at line 196 of file TMultiPageDocumentWrap.h.

References iser::IArchive::BeginMultiTag(), iser::IArchive::BeginTag(), iser::IArchive::EndTag(), iser::IArchive::IsChanging(), iser::CArchiveTag::TT_GROUP, and iser::CArchiveTag::TT_MULTIPLE.

◆ SerializePage()

Member Data Documentation

◆ m_documentPages

template<class Base >
Pages idoc::TMultiPageDocumentWrap< Base >::m_documentPages
protected

The documentation for this class was generated from the following file:

© Witold Gantzke and Kirill Lepskiy