1 /*****************************************************************************
5 ** Purpose: Top-level routines for CTSim program
6 ** Programmer: Kevin Rosenberg
7 ** Date Started: July 2000
9 ** This is part of the CTSim program
10 ** Copyright (C) 1983-2000 Kevin Rosenberg
12 ** $Id: ctsim.h,v 1.4 2000/07/23 01:49:03 kevin Exp $
14 ** This program is free software; you can redistribute it and/or modify
15 ** it under the terms of the GNU General Public License (version 2) as
16 ** published by the Free Software Foundation.
18 ** This program is distributed in the hope that it will be useful,
19 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
20 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 ** GNU General Public License for more details.
23 ** You should have received a copy of the GNU General Public License
24 ** along with this program; if not, write to the Free Software
25 ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
26 ******************************************************************************/
31 #include "wx/docview.h"
40 class MainFrame: public wxDocParentFrame
42 DECLARE_CLASS(MainFrame)
47 MainFrame(wxDocManager *manager, wxFrame *frame, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, const long type);
49 void OnAbout (wxCommandEvent& event);
50 void OnHelpContents (wxCommandEvent& event);
51 void OnCreatePhantom (wxCommandEvent& event);
52 void OnExit (wxCommandEvent& event);
61 class CTSimApp: public wxApp
67 MainFrame* getMainFrame(void) const
69 wxTextCtrl* getLog(void)
70 { return m_pFrame->getLog(); }
71 wxDocManager* getDocManager()
72 { return m_docManager; }
74 wxString getUntitledFilename(void);
77 wxDocManager* m_docManager;
80 void usage (const char* program);
82 static struct option ctsimOptions[];
84 enum { O_HELP, O_VERSION };
89 extern class CTSimApp* theApp;
93 MAINMENU_HELP_ABOUT = 500,
94 MAINMENU_HELP_CONTENTS,
95 MAINMENU_FILE_CREATE_PHANTOM,
97 IFMENU_FILE_PROPERTIES,
98 PJMENU_FILE_PROPERTIES,
99 PHMMENU_FILE_PROPERTIES,
100 PJMENU_PROCESS_RECONSTRUCT,
101 IFMENU_VIEW_WINDOW_AUTO,
102 IFMENU_VIEW_WINDOW_MINMAX,
103 PHMMENU_PROCESS_RASTERIZE,
104 PHMMENU_PROCESS_PROJECTIONS,