ACF $AcfVersion:0$
Public Member Functions | Protected Member Functions | List of all members
idoc::CSingleDocumentTemplateBase Class Reference

Base class implementing document template for single document type. More...

#include <CSingleDocumentTemplateBase.h>

Inheritance diagram for idoc::CSingleDocumentTemplateBase:
idoc::IDocumentTemplate idoc::IDocumentTypesInfo istd::IPolymorphic idoc::CSingleDocumentTemplateComp iqtdoc::CExtendedDocumentTemplateComp

Public Member Functions

 CSingleDocumentTemplateBase ()
 
const QByteArray & GetDocumentTypeId () const
 
virtual void SetSupportedFeatures (int featureFlags)
 
virtual void SetDocumentTypeId (const QByteArray &id)
 
virtual void SetDocumentTypeName (const QString &name)
 
virtual void SetViewTypeId (const QByteArray &id)
 
virtual void SetViewTypeName (const QString &name)
 
virtual void SetDefaultDirectory (const QString &defaultDirectory)
 
virtual bool IsFeatureSupported (int featureFlags, const QByteArray &documentTypeId) const override
 Return true, if the feature(s) is supported by this document template.
 
virtual Ids GetDocumentTypeIds () const override
 Get list of supported document type IDs.
 
virtual QString GetDocumentTypeName (const QByteArray &documentTypeId) const override
 Get human readable name of some document type ID.
 
virtual ifile::IFileTypeInfoGetDocumentFileTypeInfo (const QByteArray &documentTypeId) const override
 Get file type information object for some selected document type.
 
virtual Ids GetDocumentTypeIdsForFile (const QString &filePath) const override
 Get list of supported document IDs that can handle the specified file.
 
virtual QString GetDefaultDirectory (const QString &sugestedDir="", const QByteArray *documentTypeIdPtr=NULL) const override
 Return default directory for specified document type.
 
virtual Ids GetViewTypeIds (const QByteArray &documentTypeId) const override
 Return supported view type IDs for specified document type.
 
virtual QString GetViewTypeName (const QByteArray &documentTypeId, const QByteArray &viewTypeId) const override
 Get human readable name of some view type ID.
 
- Public Member Functions inherited from idoc::IDocumentTemplate
virtual ifile::IFilePersistenceGetFileLoader (const QByteArray &documentTypeId) const =0
 Get file loader/saver for specified document ID.
 
virtual istd::IChangeableUniquePtr CreateDocument (QByteArray &documentTypeId, bool initialize=true, bool beQuiet=false, bool *ignoredFlagPtr=NULL) const =0
 Creates a document instance for document type documentTypeId.
 
virtual ViewUniquePtr CreateView (const QByteArray &documentTypeId, istd::IChangeable *documentPtr, const QByteArray &viewTypeId=QByteArray()) const =0
 Creates a view instance for document document of type viewTypeId.
 
virtual idoc::IUndoManagerUniquePtr CreateUndoManager (const QByteArray &documentTypeId, istd::IChangeable *documentPtr) const =0
 Creates an undo manager for a given document documentPtr.
 
- Public Member Functions inherited from istd::IPolymorphic
virtual ~IPolymorphic ()
 

Protected Member Functions

bool IsDocumentTypeSupported (const QByteArray &documentTypeId) const
 
bool IsViewTypeSupported (const QByteArray &viewTypeId) const
 

Additional Inherited Members

- Public Types inherited from idoc::IDocumentTemplate
typedef istd::TUniqueInterfacePtr< istd::IPolymorphicViewUniquePtr
 Type definitions for view smart pointers.
 
typedef istd::TSharedInterfacePtr< istd::IPolymorphicViewSharedPtr
 
- Public Types inherited from idoc::IDocumentTypesInfo
enum  SupportedFeatures { SF_NEW_DOCUMENT = 0x0001 , SF_EDIT_DOCUMENT = 0x0010 , SF_DEFAULT = 0xffff }
 Enumeration for supported types of operations with documents. More...
 
typedef QVector< QByteArray > Ids
 Type definition for document type ID collections.
 

Detailed Description

Base class implementing document template for single document type.

Definition at line 20 of file CSingleDocumentTemplateBase.h.

Constructor & Destructor Documentation

◆ CSingleDocumentTemplateBase()

idoc::CSingleDocumentTemplateBase::CSingleDocumentTemplateBase ( )

Member Function Documentation

◆ GetDefaultDirectory()

virtual QString idoc::CSingleDocumentTemplateBase::GetDefaultDirectory ( const QString &  sugestedDir = "",
const QByteArray *  documentTypeIdPtr = NULL 
) const
overridevirtual

Return default directory for specified document type.

Parameters
suggestedDirTemplate directory suggested by user or application.
documentTypeIdPtrOptional pointer to ID of document type.
Returns
Resolved default directory path to use for file dialogs.

If suggestedDir is provided and valid, it may be used. Otherwise, the type-specific default directory is returned.

Implements idoc::IDocumentTypesInfo.

◆ GetDocumentFileTypeInfo()

virtual ifile::IFileTypeInfo * idoc::CSingleDocumentTemplateBase::GetDocumentFileTypeInfo ( const QByteArray &  documentTypeId) const
overridevirtual

Get file type information object for some selected document type.

Parameters
documentTypeIdID of document type as returned by GetDocumentTypeIds().
Returns
Pointer to file type info providing file extensions, filters, etc., or NULL if not available.

Implements idoc::IDocumentTypesInfo.

◆ GetDocumentTypeId()

const QByteArray & idoc::CSingleDocumentTemplateBase::GetDocumentTypeId ( ) const
inline

Definition at line 65 of file CSingleDocumentTemplateBase.h.

◆ GetDocumentTypeIds()

virtual Ids idoc::CSingleDocumentTemplateBase::GetDocumentTypeIds ( ) const
overridevirtual

Get list of supported document type IDs.

Returns
Vector of document type IDs supported by this template/manager.

Implements idoc::IDocumentTypesInfo.

◆ GetDocumentTypeIdsForFile()

virtual Ids idoc::CSingleDocumentTemplateBase::GetDocumentTypeIdsForFile ( const QString &  filePath) const
overridevirtual

Get list of supported document IDs that can handle the specified file.

Parameters
filePathFull path to file to check.
Returns
Vector of document type IDs that can open/handle this file.

This method determines which document types are compatible with a given file based on file extension, content analysis, or other criteria.

Implements idoc::IDocumentTypesInfo.

Reimplemented in iqtdoc::CExtendedDocumentTemplateComp.

◆ GetDocumentTypeName()

virtual QString idoc::CSingleDocumentTemplateBase::GetDocumentTypeName ( const QByteArray &  documentTypeId) const
overridevirtual

Get human readable name of some document type ID.

Parameters
documentTypeIdID of document type as returned by GetDocumentTypeIds().
Returns
Localized, user-friendly name of the document type (e.g., "Text Document", "Image File").

Implements idoc::IDocumentTypesInfo.

◆ GetViewTypeIds()

virtual Ids idoc::CSingleDocumentTemplateBase::GetViewTypeIds ( const QByteArray &  documentTypeId) const
overridevirtual

Return supported view type IDs for specified document type.

Parameters
documentTypeIdID of document type.
Returns
Vector of view type IDs that can display this document type.

A single document type may support multiple view types (e.g., text view, hex view, preview).

Implements idoc::IDocumentTemplate.

◆ GetViewTypeName()

virtual QString idoc::CSingleDocumentTemplateBase::GetViewTypeName ( const QByteArray &  documentTypeId,
const QByteArray &  viewTypeId 
) const
overridevirtual

Get human readable name of some view type ID.

Parameters
documentTypeIdID of document type.
viewTypeIdID of view type.
Returns
Localized human-readable name for the view type (e.g., "Text View", "Hex View").

Implements idoc::IDocumentTemplate.

◆ IsDocumentTypeSupported()

bool idoc::CSingleDocumentTemplateBase::IsDocumentTypeSupported ( const QByteArray &  documentTypeId) const
inlineprotected

Definition at line 73 of file CSingleDocumentTemplateBase.h.

◆ IsFeatureSupported()

virtual bool idoc::CSingleDocumentTemplateBase::IsFeatureSupported ( int  featureFlags,
const QByteArray &  documentTypeId 
) const
overridevirtual

Return true, if the feature(s) is supported by this document template.

Parameters
featureFlagsBitwise OR of SupportedFeatures flags to check.
documentTypeIdID of document type to check.
Returns
True if all specified features are supported for this document type.

Implements idoc::IDocumentTypesInfo.

◆ IsViewTypeSupported()

bool idoc::CSingleDocumentTemplateBase::IsViewTypeSupported ( const QByteArray &  viewTypeId) const
inlineprotected

Definition at line 79 of file CSingleDocumentTemplateBase.h.

◆ SetDefaultDirectory()

virtual void idoc::CSingleDocumentTemplateBase::SetDefaultDirectory ( const QString &  defaultDirectory)
virtual

◆ SetDocumentTypeId()

virtual void idoc::CSingleDocumentTemplateBase::SetDocumentTypeId ( const QByteArray &  id)
virtual

◆ SetDocumentTypeName()

virtual void idoc::CSingleDocumentTemplateBase::SetDocumentTypeName ( const QString &  name)
virtual

◆ SetSupportedFeatures()

virtual void idoc::CSingleDocumentTemplateBase::SetSupportedFeatures ( int  featureFlags)
virtual

◆ SetViewTypeId()

virtual void idoc::CSingleDocumentTemplateBase::SetViewTypeId ( const QByteArray &  id)
virtual

◆ SetViewTypeName()

virtual void idoc::CSingleDocumentTemplateBase::SetViewTypeName ( const QString &  name)
virtual

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