X-Git-Url: http://git.kpe.io/?p=ctsim.git;a=blobdiff_plain;f=src%2Fctsim.h;h=ee2ccbdbf811dc7bd845003fcdf2756dc32b17ef;hp=103f08aa195d1113ef91eeaf813fcf52f18414b0;hb=9f29c8b32c972db1178d6f8551d5cd57ceb67083;hpb=01ed72399d433ce45a0195f8acaea349a421461e diff --git a/src/ctsim.h b/src/ctsim.h index 103f08a..ee2ccbd 100644 --- a/src/ctsim.h +++ b/src/ctsim.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: ctsim.h,v 1.29 2001/01/20 08:10:33 kevin Exp $ +** $Id: ctsim.h,v 1.33 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 @@ -35,9 +35,15 @@ #include #endif +#ifndef WX_PRECOMP +#include "wx/wx.h" +#endif +#include "wx/config.h" + #ifdef MSVC #define CTSIM_MDI 1 #endif +#define CTSIM_CUSTOM_MRU 1 #if defined(CTSIM_MDI) && !wxUSE_MDI_ARCHITECTURE #error You must set wxUSE_MDI_ARCHITECTURE to 1 in setup.h! @@ -48,15 +54,13 @@ class wxMenu; class wxDocument; - class ImageFileDocument; +class ProjectionFileDocument; +class PhantomFileDocument; +class PlotFileDocument; +class TextFileDocument; #include - -#ifndef WX_PRECOMP -#include "wx/wx.h" -#endif - #include "wx/docview.h" #include "wx/textctrl.h" #include "wx/menu.h" @@ -71,14 +75,15 @@ class ImageFileDocument; // Define a new frame for main window #if CTSIM_MDI -class MainFrame: public wxMDIParentFrame +class MainFrame: public wxDocMDIParentFrame #else class MainFrame: public wxDocParentFrame #endif { - DECLARE_CLASS(MainFrame) private: - wxTextCtrl* m_pLog; + DECLARE_CLASS(MainFrame) + DECLARE_EVENT_TABLE() + wxMenu* m_pWindowMenu; enum { MAX_WINDOW_MENUITEMS = 20 }; @@ -94,7 +99,7 @@ private: double m_dDefaultFilterBandwidth; double m_dDefaultFilterInputScale; double m_dDefaultFilterOutputScale; - + #if CTSIM_WINHELP wxWinHelpController m_winHelp; #endif @@ -102,9 +107,11 @@ private: public: MainFrame(wxDocManager *manager, wxFrame *frame, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, const long type); + virtual ~MainFrame(); +#ifdef CTSIM_CUSTOM_MRU void OnMRUFile (wxCommandEvent& event); - +#endif void OnSize (wxSizeEvent& event); #if CTSIM_WINHELP @@ -130,9 +137,6 @@ public: void OnUpdateUI (wxUpdateUIEvent& event); - wxTextCtrl* getLog() - { return m_pLog; } - void OnWindowMenu0 (wxCommandEvent& event); void OnWindowMenu1 (wxCommandEvent& event); void OnWindowMenu2 (wxCommandEvent& event); @@ -155,14 +159,28 @@ public: void OnWindowMenu19 (wxCommandEvent& event); void DoWindowMenu (int iMenuPosition, wxCommandEvent& event); - - DECLARE_EVENT_TABLE() }; class wxDocManager; class CTSimApp: public wxApp { +private: + enum { O_HELP, O_VERSION }; + static struct option ctsimOptions[]; + + wxDocManager* m_docManager; + MainFrame* m_pFrame; + wxConfig* m_pConfig; + wxTextCtrl* m_pLog; + wxDocTemplate* m_pDocTemplImage; + wxDocTemplate* m_pDocTemplProjection; + wxDocTemplate* m_pDocTemplPhantom; + wxDocTemplate* m_pDocTemplPlot; + wxDocTemplate* m_pDocTemplText; + + void usage (const char* program); + public: CTSimApp(); bool OnInit(); @@ -171,7 +189,7 @@ public: { return m_pFrame; } wxTextCtrl* getLog() - { return m_pFrame->getLog(); } + { return m_pLog; } wxDocManager* getDocManager() { return m_docManager; } @@ -187,16 +205,21 @@ public: { return true; } void setIconForFrame (wxFrame* pFrame); + wxConfig* getConfig() + { return m_pConfig; } + + wxDocTemplate* getDocTemplImage() { return m_pDocTemplImage; } + wxDocTemplate* getDocTemplProjection() { return m_pDocTemplProjection; } + wxDocTemplate* getDocTemplPhantom() { return m_pDocTemplPhantom; } + wxDocTemplate* getDocTemplPlot() { return m_pDocTemplPlot; } + wxDocTemplate* getDocTemplText() { return m_pDocTemplText; } + + ProjectionFileDocument* newProjectionDoc(); + ImageFileDocument* newImageDoc(); + PhantomFileDocument* newPhantomDoc(); + PlotFileDocument* newPlotDoc(); + TextFileDocument* newTextDoc(); -private: - wxDocManager* m_docManager; - MainFrame* m_pFrame; - - void usage (const char* program); - - static struct option ctsimOptions[]; - - enum { O_HELP, O_VERSION }; }; DECLARE_APP(CTSimApp)