X-Git-Url: http://git.kpe.io/?p=ctsim.git;a=blobdiff_plain;f=src%2Fctsim.h;h=486224bafc3a02b50442062a9497c0f4152fa12a;hp=c240096c80db8082419bcbc5c53cd32e19ba4d95;hb=f7d2b7144f32a7bd157b7689022e62944b82fcc1;hpb=4b18b0a7fed4e25130c6edf7929d0df50b8c24ea diff --git a/src/ctsim.h b/src/ctsim.h index c240096..486224b 100644 --- a/src/ctsim.h +++ b/src/ctsim.h @@ -9,7 +9,7 @@ ** This is part of the CTSim program ** Copyright (C) 1983-2000 Kevin Rosenberg ** -** $Id: ctsim.h,v 1.3 2000/07/18 03:14:35 kevin Exp $ +** $Id: ctsim.h,v 1.11 2000/12/21 03:40:58 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 @@ -28,14 +28,28 @@ #ifndef __CTSIMH__ #define __CTSIMH__ -#include "wx/docview.h" +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif +#ifdef HAVE_DMALLOC +#include +#endif -// Define a new frame +class wxMenu; +class wxDocument; +#include "wx/docview.h" + +// Define a new frame for main window class MainFrame: public wxDocParentFrame { DECLARE_CLASS(MainFrame) private: wxTextCtrl* m_pLog; + wxMenu* m_pWindowMenu; + + enum { MAX_WINDOW_MENUITEMS = 20 }; + wxMenuItem* m_apWindowMenuItems[MAX_WINDOW_MENUITEMS]; + wxDocument* m_apWindowMenuData[MAX_WINDOW_MENUITEMS]; public: MainFrame(wxDocManager *manager, wxFrame *frame, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, const long type); @@ -45,27 +59,53 @@ public: void OnCreatePhantom (wxCommandEvent& event); void OnExit (wxCommandEvent& event); + void OnUpdateUI (wxUpdateUIEvent& event); + wxTextCtrl* getLog() { return m_pLog; } + void OnWindowMenu0 (wxCommandEvent& event); + void OnWindowMenu1 (wxCommandEvent& event); + void OnWindowMenu2 (wxCommandEvent& event); + void OnWindowMenu3 (wxCommandEvent& event); + void OnWindowMenu4 (wxCommandEvent& event); + void OnWindowMenu5 (wxCommandEvent& event); + void OnWindowMenu6 (wxCommandEvent& event); + void OnWindowMenu7 (wxCommandEvent& event); + void OnWindowMenu8 (wxCommandEvent& event); + void OnWindowMenu9 (wxCommandEvent& event); + void OnWindowMenu10 (wxCommandEvent& event); + void OnWindowMenu11 (wxCommandEvent& event); + void OnWindowMenu12 (wxCommandEvent& event); + void OnWindowMenu13 (wxCommandEvent& event); + void OnWindowMenu14 (wxCommandEvent& event); + void OnWindowMenu15 (wxCommandEvent& event); + void OnWindowMenu16 (wxCommandEvent& event); + void OnWindowMenu17 (wxCommandEvent& event); + void OnWindowMenu18 (wxCommandEvent& event); + void OnWindowMenu19 (wxCommandEvent& event); + + void DoWindowMenu (int iMenuPosition, wxCommandEvent& event); + DECLARE_EVENT_TABLE() }; + class wxDocManager; class CTSimApp: public wxApp { public: - CTSimApp(void); - bool OnInit(void); - int OnExit(void); - MainFrame* getMainFrame(void) const + CTSimApp(); + bool OnInit(); + int OnExit(); + MainFrame* getMainFrame() const { return m_pFrame; } - wxTextCtrl* getLog(void) + wxTextCtrl* getLog() { return m_pFrame->getLog(); } wxDocManager* getDocManager() { return m_docManager; } - wxString getUntitledFilename(void); + wxString getUntitledFilename(); private: wxDocManager* m_docManager; @@ -75,7 +115,7 @@ private: static struct option ctsimOptions[]; - enum { O_HELP }; + enum { O_HELP, O_VERSION }; }; DECLARE_APP(CTSimApp) @@ -91,11 +131,17 @@ enum { IFMENU_FILE_PROPERTIES, PJMENU_FILE_PROPERTIES, PHMMENU_FILE_PROPERTIES, - PJMENU_PROCESS_RECONSTRUCT, - IFMENU_VIEW_WINDOW_AUTO, - IFMENU_VIEW_WINDOW_MINMAX, + PJMENU_PROCESS_RECONSTRUCT, + IFMENU_PLOT_ROW, + IFMENU_PLOT_COL, + IFMENU_VIEW_SCALE_AUTO, + IFMENU_VIEW_SCALE_MINMAX, + IFMENU_COMPARE_IMAGES, PHMMENU_PROCESS_RASTERIZE, - PHMMENU_PROCESS_PROJECTIONS, + PHMMENU_PROCESS_PROJECTIONS, + PLOTMENU_VIEW_SCALE_MINMAX, + PLOTMENU_VIEW_SCALE_AUTO, + MAINMENU_WINDOW_BASE, }; #endif