/*****************************************************************************
** FILE IDENTIFICATION
**
-** Name: doc.h
+** Name: docs.h
** Purpose: Header file for Document routines of CTSim program
** Programmer: Kevin Rosenberg
** 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.1 2000/07/13 07:01:59 kevin Exp $
+** $Id: docs.h,v 1.15 2001/01/28 19:10:18 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
#define __DOCSH__
#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:
+ DECLARE_DYNAMIC_CLASS(ImageFileDocument)
ImageFile m_imageFile;
public:
- virtual bool OnSaveDocument(const wxString& filename);
- virtual bool OnOpenDocument(const wxString& filename);
- virtual bool IsModified(void) const;
- virtual void Modify(bool mod);
+ virtual bool OnSaveDocument (const wxString& filename);
+ virtual bool OnOpenDocument (const wxString& filename);
+ virtual bool IsModified () const;
+ virtual void Modify (bool mod);
- ImageFileDocument(void) {}
- ~ImageFileDocument(void) {}
+ ImageFileDocument () {}
+ virtual ~ImageFileDocument () {}
- const ImageFile& getImageFile(void) const
- { return m_imageFile; }
+ const ImageFile& getImageFile() const { return m_imageFile; }
- ImageFile& getImageFile(void)
- { return m_imageFile; }
+ ImageFile& getImageFile() { return m_imageFile; }
+ ImageFileView* getView() const;
};
class ProjectionFileDocument: public wxDocument
{
- DECLARE_DYNAMIC_CLASS(ProjectionFileDocument)
private:
+ DECLARE_DYNAMIC_CLASS(ProjectionFileDocument)
Projections m_projectionFile;
public:
- virtual bool OnSaveDocument(const wxString& filename);
- virtual bool OnOpenDocument(const wxString& filename);
- virtual bool IsModified(void) const;
- virtual void Modify(bool mod);
+ virtual bool OnSaveDocument (const wxString& filename);
+ virtual bool OnOpenDocument (const wxString& filename);
+ virtual bool IsModified () const;
+ virtual void Modify (bool mod);
- ProjectionFileDocument(void) {}
- ~ProjectionFileDocument(void) {}
+ ProjectionFileDocument () {}
+ virtual ~ProjectionFileDocument () {}
- const Projections& getProjections(void) const
- { return m_projectionFile; }
+ const Projections& getProjections () const { return m_projectionFile; }
+ Projections& getProjections () { return m_projectionFile; }
- Projections& getProjections(void)
- { return m_projectionFile; }
+ ProjectionFileView* getView() const;
};
-class TextEditDocument: public wxDocument
+
+class PhantomFileDocument: public wxDocument
{
- DECLARE_DYNAMIC_CLASS(TextEditDocument)
private:
+ DECLARE_DYNAMIC_CLASS(PhantomFileDocument)
+ Phantom m_phantom;
+ int m_idPhantom;
+ wxString m_namePhantom;
+
public:
- virtual bool OnSaveDocument(const wxString& filename);
- virtual bool OnOpenDocument(const wxString& filename);
- virtual bool IsModified(void) const;
- virtual void Modify(bool mod);
-
- TextEditDocument(void) {}
- ~TextEditDocument(void) {}
+ PhantomFileDocument ()
+ : m_idPhantom(Phantom::PHM_INVALID)
+ {}
+
+ virtual ~PhantomFileDocument ()
+ {}
+
+ const int getPhantomID () const { return m_idPhantom; }
+
+ const wxString& getPhantomName () const { return m_namePhantom; }
+
+ const Phantom& getPhantom () const { return m_phantom; }
+
+ Phantom& getPhantom () { return m_phantom; }
+
+ virtual bool OnOpenDocument (const wxString& filename);
+ virtual bool OnSaveDocument (const wxString& filename);
+ virtual bool IsModified () const;
+ virtual void Modify (bool mod);
+ PhantomFileView* getView() const;
+};
+
+
+class PlotFileDocument: public wxDocument
+{
+private:
+ DECLARE_DYNAMIC_CLASS(PlotFileDocument)
+ PlotFile m_plot;
+ wxString m_namePlot;
+
+public:
+ PlotFileDocument ()
+ {}
+
+ virtual ~PlotFileDocument ()
+ {}
+
+ const wxString& getPlotName () const
+ { return m_namePlot; }
+
+ const PlotFile& getPlotFile () const
+ { return m_plot; }
+
+ PlotFile& getPlotFile ()
+ { return m_plot; }
+
+ virtual bool OnOpenDocument (const wxString& filename);
+ virtual bool OnSaveDocument (const wxString& filename);
+ virtual bool IsModified () const;
+ virtual void Modify (bool mod);
+ PlotFileView* getView() const;
+};
+
+#include "views.h"
+
+class TextFileDocument: public wxDocument
+{
+ private:
+ DECLARE_DYNAMIC_CLASS(TextFileDocument)
+
+ public:
+ TextFileDocument(void) {}
+ virtual ~TextFileDocument(void) {}
+
+ virtual bool OnSaveDocument(const wxString& filename);
+ virtual bool OnOpenDocument(const wxString& filename);
+ virtual bool IsModified(void) const;
+
+ wxTextCtrl* getTextCtrl()
+ { return dynamic_cast<TextFileView*>(GetFirstView())->getTextCtrl(); }
+
+ TextFileView* getView() const;
};