X-Git-Url: http://git.kpe.io/?p=ctsim.git;a=blobdiff_plain;f=src%2Fctsim.h;h=c87880332c2fff2104e4bf4e44f9dd2a0de71036;hp=99b94b86ae6b8019fe0a111fdb940101c2efdf3b;hb=d3fa225aa232e132cc198672c4fc148f96a1ab8c;hpb=593439890a507e49b5a2a6fa4d463adca61d42c3 diff --git a/src/ctsim.h b/src/ctsim.h index 99b94b8..c878803 100644 --- a/src/ctsim.h +++ b/src/ctsim.h @@ -9,7 +9,7 @@ ** This is part of the CTSim program ** Copyright (c) 1983-2001 Kevin Rosenberg ** -** $Id: ctsim.h,v 1.35 2001/01/29 23:11:32 kevin Exp $ +** $Id: ctsim.h,v 1.43 2001/02/11 04:56:38 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 @@ -39,6 +39,7 @@ #include "wx/wx.h" #endif #include "wx/config.h" +#include "wx/msw/helpchm.h" #ifdef MSVC #define CTSIM_MDI 1 @@ -59,6 +60,9 @@ class ProjectionFileDocument; class PhantomFileDocument; class PlotFileDocument; class TextFileDocument; +#if wxUSE_GLCANVAS +class Graph3dFileDocument; +#endif #include #include "wx/docview.h" @@ -102,8 +106,10 @@ private: double m_dDefaultFilterInputScale; double m_dDefaultFilterOutputScale; + bool m_bShuttingDown; + #if CTSIM_WINHELP - wxWinHelpController m_winHelp; + wxCHMHelpController m_winHelp; #endif wxHtmlHelpController m_htmlHelp; @@ -117,7 +123,7 @@ public: void OnSize (wxSizeEvent& event); #if CTSIM_WINHELP - wxWinHelpController& getWinHelpController() + wxCHMHelpController& getWinHelpController() {return m_winHelp; } #endif wxHtmlHelpController& getHtmlHelpController() @@ -129,6 +135,7 @@ public: void OnHelpTopics (wxCommandEvent& event); void OnHelpContents (wxCommandEvent& event); void OnCreatePhantom (wxCommandEvent& event); + void OnPreferences (wxCommandEvent& event); #if defined(CTSIM_WINHELP) && (defined(DEBUG) || defined(_DEBUG)) void OnHelpSecondary (wxCommandEvent& event); @@ -161,6 +168,8 @@ public: void OnWindowMenu19 (wxCommandEvent& event); void DoWindowMenu (int iMenuPosition, wxCommandEvent& event); + + bool getShuttingDown() const { return m_bShuttingDown; } }; @@ -170,7 +179,8 @@ class CTSimApp: public wxApp private: enum { O_HELP, O_VERSION }; static struct option ctsimOptions[]; - + + bool m_bAdvancedOptions; wxDocManager* m_docManager; MainFrame* m_pFrame; wxConfig* m_pConfig; @@ -180,6 +190,10 @@ private: wxDocTemplate* m_pDocTemplPhantom; wxDocTemplate* m_pDocTemplPlot; wxDocTemplate* m_pDocTemplText; +#if wxUSE_GLCANVAS + wxDocTemplate* m_pDocTemplGraph3d; +#endif + TextFileDocument* m_pLogDoc; void usage (const char* program); @@ -203,7 +217,9 @@ public: { return new EZPlotDialog (m_pFrame); } void getCompatibleImages (const ImageFileDocument* pIFDoc, std::vector& vecIF); - + bool getAdvancedOptions() const { return m_bAdvancedOptions; } + void setAdvancedOptions (bool bAdv) { m_bAdvancedOptions = bAdv; } + void setIconForFrame (wxFrame* pFrame); wxConfig* getConfig() { return m_pConfig; } @@ -213,6 +229,9 @@ public: wxDocTemplate* getDocTemplPhantom() { return m_pDocTemplPhantom; } wxDocTemplate* getDocTemplPlot() { return m_pDocTemplPlot; } wxDocTemplate* getDocTemplText() { return m_pDocTemplText; } +#if wxUSE_GLCANVAS + wxDocTemplate* getDocTemplGraph3d() { return m_pDocTemplGraph3d; } +#endif TextFileDocument* getLogDoc() { return m_pLogDoc; } ProjectionFileDocument* newProjectionDoc(); @@ -220,7 +239,9 @@ public: PhantomFileDocument* newPhantomDoc(); PlotFileDocument* newPlotDoc(); TextFileDocument* newTextDoc(); - +#if wxUSE_GLCANVAS + Graph3dFileDocument* newGraph3dDoc(); +#endif }; DECLARE_APP(CTSimApp) @@ -232,11 +253,14 @@ enum { MAINMENU_HELP_ABOUT = 600, MAINMENU_HELP_CONTENTS, MAINMENU_HELP_TOPICS, +#if defined(CTSIM_WINHELP) && (defined(DEBUG) || defined(_DEBUG)) MAINMENU_HELP_SECONDARY, +#endif MAINMENU_FILE_CREATE_PHANTOM, MAINMENU_FILE_CREATE_FILTER, MAINMENU_FILE_EXIT, + MAINMENU_FILE_PREFERENCES, PJMENU_FILE_PROPERTIES, PJMENU_RECONSTRUCT_FBP, @@ -265,7 +289,10 @@ enum { IFMENU_IMAGE_SUBTRACT, IFMENU_IMAGE_MULTIPLY, IFMENU_IMAGE_DIVIDE, - +#if wxUSE_GLCANVAS + IFMENU_IMAGE_CONVERT3D, +#endif + IFMENU_FILTER_INVERTVALUES, IFMENU_FILTER_SQRT, IFMENU_FILTER_SQUARE, @@ -291,6 +318,14 @@ enum { PLOTMENU_VIEW_SCALE_MINMAX, PLOTMENU_VIEW_SCALE_AUTO, PLOTMENU_VIEW_SCALE_FULL, + + GRAPH3D_VIEW_SURFACE, + GRAPH3D_VIEW_COLOR, + GRAPH3D_VIEW_LIGHTING, + GRAPH3D_VIEW_SMOOTH, + GRAPH3D_VIEW_SCALE_AUTO, + GRAPH3D_VIEW_SCALE_MINMAX, + GRAPH3D_VIEW_SCALE_FULL, }; #endif