Main Page | Modules | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members | Related Pages
hugin_qtbase/PanoramaDocument.qt.h
Go to the documentation of this file.00001 // -*- c-basic-offset: 4 -*- 00032 namespace HuginQt { 00033 00034 class PanoToolsOptimizerScriptFiletype : QAFiletype 00035 { 00036 00037 public: 00038 PanoToolsOptimizerScriptFiletype(QObject* parent = NULL); 00039 virtual ~PanoToolsOptimizerScriptFiletype() {} 00040 00041 }; 00042 00043 PanoToolsOptimizerScriptFiletype::PanoToolsOptimizerScriptFiletype(QObject* parent = NULL) 00044 : QAFiletype("application-x-ptoptimizer-script", 00045 tr("Hugin Project (PTOptimizer Script)"), 00046 "pto", 00047 (QStringList()<<"pto"<<"ptp"<<"pts"<<"oto"), 00048 parent) 00049 { 00050 } 00051 00052 00053 class PanoramaDocumentTemplate : public QADocumentTemplate 00054 { 00055 public: 00056 PanoramaDocumentTemplate(QObject* parent = NULL); 00057 virtual ~PanoramaDocumentTemplate() {}; 00058 00059 public: 00060 virtual QADocument* makeNewDocument(QString filePath, QAFiletype fileType, QObject* parent = NULL) =0; 00061 00062 public: 00063 virtual QAFiletype defaultFiletype() const; // PanoToolsOptimizerScriptFiletype 00064 virtual QAFiletypeSet readableTypes() const; // PanoToolsOptimizerScriptFiletype 00065 virtual QAFiletypeSet importableTypes() const; // {} 00066 virtual bool isEditable() const; // true 00067 00068 public: 00069 virtual QString displayName(); // "Hugin Project (PTOptimiser Script)" 00070 virtual QString documentTemplateID(); // "HuginQt::PanoramaDocument" 00071 }; 00072 00073 00074 class PanoramaDocument : public HuginDocument, public HuginBase::PanoramaObserver 00075 { 00076 Q_OBJECT 00077 00078 public: 00079 PanoramaDocument(QADocumentController* parent = NULL); 00080 PanoramaDocument(QString filePath, QADocumentController* parent = NULL); 00081 PanoramaDocument(QString filePath, QAFiletype fileType, QADocumentController* parent = NULL); 00082 virtual ~PanoramaDocument() {} 00083 protected: 00084 bool setContentsToFile(const QString& filePath, const QAFiletype& fileType); 00085 00086 public: 00087 virtual QADocumentTemplate* documentTemplate(); 00088 private: 00089 static PanoramaDocumentTemplate m_documentTemplate; 00090 00091 protected: 00092 virtual bool saveToPath(QString path, QAFiletype filetype); 00093 virtual bool revertDocumentToFile(QString path); 00094 00095 public: 00096 virtual AppBase::DocumentData* documentData(); 00097 virtual HuginBase::PanoramaData* panoramaData(); 00098 protected: 00099 HuginBase::Panorama o_panorama; 00100 00101 public: 00102 virtual void panoramaChanged(PanoramaData &pano); 00103 virtual void panoramaImagesChanged(PanoramaData& pano, const HuginBase::UIntSet& changed); 00104 public signal: 00105 virtual void panoramaImagesChanged(const HuginBase::UIntSet& changed); 00106 00107 }; 00108 00109 00110 } //namespace
1.3.9.1