X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=src%2Fdocs.h;h=54fa2a4ed3107e6fa41176c3b56d038d14c93425;hb=d3a6bf4aa2ccd32ed7671d1d97777dfc414df51d;hp=116347ccdd2fe3198d5072d654b7eb68c1c2af9f;hpb=c551b53b39a7571cf52831f5e117be1cca95c420;p=ctsim.git diff --git a/src/docs.h b/src/docs.h index 116347c..54fa2a4 100644 --- a/src/docs.h +++ b/src/docs.h @@ -7,9 +7,9 @@ ** Date Started: July 2000 ** ** This is part of the CTSim program -** Copyright (C) 1983-2000 Kevin Rosenberg +** Copyright (c) 1983-2001 Kevin Rosenberg ** -** $Id: docs.h,v 1.8 2000/12/22 04:18:00 kevin Exp $ +** $Id: docs.h,v 1.17 2001/01/30 05:05:41 kevin Exp $ ** ** This program is free software; you can redistribute it and/or modify ** it under the terms of the GNU General Public License (version 2) as @@ -34,108 +34,144 @@ #include "wx/docview.h" +// #include "views.h" #include "imagefile.h" #include "phantom.h" #include "projections.h" #include "plotfile.h" +class ProjectionFileView; +class PhantomFileView; +class ImageFileView; +class PlotFileView; +class TextFileView; + class ImageFileDocument: public wxDocument { - DECLARE_DYNAMIC_CLASS(ImageFileDocument) private: - ImageFile m_imageFile; + DECLARE_DYNAMIC_CLASS(ImageFileDocument) + ImageFile* m_pImageFile; + bool m_bBadFileOpen; public: virtual bool OnSaveDocument (const wxString& filename); virtual bool OnOpenDocument (const wxString& filename); virtual bool IsModified () const; - virtual bool OnCloseDocument (); + virtual bool Revert (); virtual void Modify (bool mod); - ImageFileDocument () {} - ~ImageFileDocument () {} - - const ImageFile& getImageFile() const - { return m_imageFile; } - - ImageFile& getImageFile() - { return m_imageFile; } + ImageFileDocument () + : m_bBadFileOpen(false) + { + m_pImageFile = new ImageFile; + } + + virtual ~ImageFileDocument () + { + delete m_pImageFile; + } + + const ImageFile& getImageFile() const { return *m_pImageFile; } + ImageFile& getImageFile() { return *m_pImageFile; } + void setImageFile (ImageFile* pImageFile) + { + delete m_pImageFile; + m_pImageFile = pImageFile; + } + + ImageFileView* getView() const; + bool getBadFileOpen() const { return m_bBadFileOpen; } + void setBadFileOpen() { m_bBadFileOpen = true; } }; class ProjectionFileDocument: public wxDocument { - DECLARE_DYNAMIC_CLASS(ProjectionFileDocument) private: - Projections m_projectionFile; + DECLARE_DYNAMIC_CLASS(ProjectionFileDocument) + Projections* m_pProjectionFile; + bool m_bBadFileOpen; public: virtual bool OnSaveDocument (const wxString& filename); virtual bool OnOpenDocument (const wxString& filename); virtual bool IsModified () const; - virtual bool OnCloseDocument (); virtual void Modify (bool mod); - ProjectionFileDocument () {} - ~ProjectionFileDocument () {} - - const Projections& getProjections () const - { return m_projectionFile; } - - Projections& getProjections () - { return m_projectionFile; } + ProjectionFileDocument () + : m_bBadFileOpen(false) + { + m_pProjectionFile = new Projections; + } + + virtual ~ProjectionFileDocument () + { + delete m_pProjectionFile; + } + + const Projections& getProjections () const { return *m_pProjectionFile; } + Projections& getProjections () { return *m_pProjectionFile; } + + void setProjections (Projections* pProjections) + { delete m_pProjectionFile; + m_pProjectionFile = pProjections; + } + + ProjectionFileView* getView() const; + bool getBadFileOpen() const { return m_bBadFileOpen; } + void setBadFileOpen() { m_bBadFileOpen = true; } }; -class PhantomDocument: public wxDocument +class PhantomFileDocument: public wxDocument { - DECLARE_DYNAMIC_CLASS(PhantomDocument) - private: + DECLARE_DYNAMIC_CLASS(PhantomFileDocument) Phantom m_phantom; int m_idPhantom; wxString m_namePhantom; + bool m_bBadFileOpen; public: - PhantomDocument () - : m_idPhantom(Phantom::PHM_INVALID) - {} + PhantomFileDocument () + : m_idPhantom(Phantom::PHM_INVALID), m_bBadFileOpen(false) + {} - ~PhantomDocument () - {} + virtual ~PhantomFileDocument () + {} - const int getPhantomID () const - { return m_idPhantom; } + const int getPhantomID () const { return m_idPhantom; } - const wxString& getPhantomName () const - { return m_namePhantom; } + const wxString& getPhantomName () const { return m_namePhantom; } - const Phantom& getPhantom () const - { return m_phantom; } + const Phantom& getPhantom () const { return m_phantom; } - Phantom& getPhantom () - { return m_phantom; } + Phantom& getPhantom () { return m_phantom; } virtual bool OnOpenDocument (const wxString& filename); - virtual bool OnCloseDocument (); + virtual bool OnSaveDocument (const wxString& filename); virtual bool IsModified () const; virtual void Modify (bool mod); + PhantomFileView* getView() const; + bool getBadFileOpen() const { return m_bBadFileOpen; } + void setBadFileOpen() { m_bBadFileOpen = true; } }; - - + + class PlotFileDocument: public wxDocument { - DECLARE_DYNAMIC_CLASS(PlotFileDocument) - private: + DECLARE_DYNAMIC_CLASS(PlotFileDocument) PlotFile m_plot; wxString m_namePlot; + bool m_bBadFileOpen; public: PlotFileDocument () - {} + : m_bBadFileOpen(false) + {} - ~PlotFileDocument () + virtual ~PlotFileDocument () {} const wxString& getPlotName () const @@ -144,13 +180,41 @@ public: const PlotFile& getPlotFile () const { return m_plot; } - PlotFile& getPlotFile () - { return m_plot; } - + PlotFile& getPlotFile () + { return m_plot; } + virtual bool OnOpenDocument (const wxString& filename); - virtual bool OnCloseDocument (); + virtual bool OnSaveDocument (const wxString& filename); virtual bool IsModified () const; virtual void Modify (bool mod); + PlotFileView* getView() const; + bool getBadFileOpen() const { return m_bBadFileOpen; } + void setBadFileOpen() { m_bBadFileOpen = true; } +}; + + +class TextFileDocument: public wxDocument +{ + private: + DECLARE_DYNAMIC_CLASS(TextFileDocument) + bool m_bBadFileOpen; + + public: + TextFileDocument(void) + : m_bBadFileOpen(false) + {} + + virtual ~TextFileDocument(void) {} + + virtual bool OnSaveDocument(const wxString& filename); + virtual bool OnOpenDocument(const wxString& filename); + virtual bool IsModified(void) const; + + wxTextCtrl* getTextCtrl(); + + TextFileView* getView() const; + bool getBadFileOpen() const { return m_bBadFileOpen; } + void setBadFileOpen() { m_bBadFileOpen = true; } };