X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=src%2Fctsim.h;h=abc16fd173e41c7473195dab2232809421e8b599;hb=52f2fdc3424cd6b5b77ad1497243e1e06739ffe6;hp=eb497b0b655c02a39a7b34d3bb9c613843c8f9de;hpb=bd4436e83682ea3b1eab32f5d3d2ee49ba0088e5;p=ctsim.git diff --git a/src/ctsim.h b/src/ctsim.h index eb497b0..abc16fd 100644 --- a/src/ctsim.h +++ b/src/ctsim.h @@ -1,15 +1,15 @@ /***************************************************************************** ** FILE IDENTIFICATION ** -** Name: ctsim.cpp -** Purpose: Top-level routines for CTSim program +** Name: ctsim.h +** Purpose: Header file for CTSim ** Programmer: Kevin Rosenberg ** Date Started: July 2000 ** ** This is part of the CTSim program ** Copyright (c) 1983-2001 Kevin Rosenberg ** -** $Id: ctsim.h,v 1.45 2001/02/11 22:23:03 kevin Exp $ +** $Id: ctsim.h,v 1.54 2001/03/02 21:11:50 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,6 +35,12 @@ #include #endif +#ifdef MSVC +#define HAVE_WXTHREADS 1 +#else +#undef HAVE_WXTHREADS +#endif + #ifndef WX_PRECOMP #include "wx/wx.h" #endif @@ -62,6 +68,8 @@ class ProjectionFileDocument; class PhantomFileDocument; class PlotFileDocument; class TextFileDocument; +class BackgroundManager; + #if wxUSE_GLCANVAS class Graph3dFileDocument; #endif @@ -73,6 +81,7 @@ class Graph3dFileDocument; #include "wx/help.h" #include "wx/html/helpctrl.h" #include "dlgezplot.h" +#include "ctsim-map.h" #if defined(__WXMSW__) || defined (MSVC) @@ -98,6 +107,7 @@ private: wxMenuItem* m_apWindowMenuItems[MAX_WINDOW_MENUITEMS]; wxDocument* m_apWindowMenuData[MAX_WINDOW_MENUITEMS]; + int m_iDefaultImportFormat; int m_iDefaultPhantomID; int m_iDefaultFilterID; int m_iDefaultFilterDomainID; @@ -114,7 +124,7 @@ private: wxCHMHelpController m_winHelp; #endif wxHtmlHelpController m_htmlHelp; - + public: MainFrame(wxDocManager *manager, wxFrame *frame, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, const long type); virtual ~MainFrame(); @@ -134,11 +144,15 @@ public: void showHelp (int commandID); void OnAbout (wxCommandEvent& event); - void OnHelpTopics (wxCommandEvent& event); void OnHelpContents (wxCommandEvent& event); + void OnHelpTips (wxCommandEvent& event); void OnCreatePhantom (wxCommandEvent& event); void OnPreferences (wxCommandEvent& event); - + void OnLogEvent (wxCommandEvent& event); // used by thread children + + void OnHelpButton (wxCommandEvent& event); + void OnImport (wxCommandEvent& event); + #if defined(CTSIM_WINHELP) && (defined(DEBUG) || defined(_DEBUG)) void OnHelpSecondary (wxCommandEvent& event); #endif @@ -179,11 +193,15 @@ class wxDocManager; class CTSimApp: public wxApp { private: - enum { O_HELP, O_VERSION }; + enum { O_HELP, O_PRINT, O_VERSION }; static struct option ctsimOptions[]; bool m_bAdvancedOptions; bool m_bSetModifyNewDocs; + bool m_bVerboseLogging; + bool m_bShowStartupTips; + long m_iCurrentTip; + bool m_bUseBackgroundTasks; wxDocManager* m_docManager; MainFrame* m_pFrame; @@ -203,6 +221,7 @@ private: void usage (const char* program); void openConfig(); void closeConfig(); + BackgroundManager* m_pBackgroundMgr; public: CTSimApp(); @@ -218,13 +237,25 @@ public: { return m_docManager; } wxString getUntitledFilename(); - + + int getNumberCPU() const { return wxThread::GetCPUCount(); } + EZPlotDialog* makeEZPlotDialog() { 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; } + bool getVerboseLogging() const { return m_bVerboseLogging; } + void setVerboseLogging (bool bVerbose) { m_bVerboseLogging = bVerbose; } + bool getStartupTips() const { return m_bShowStartupTips; } + void setStartupTips(bool bTips) { m_bShowStartupTips = bTips; } + bool getUseBackgroundTasks() const { return m_bUseBackgroundTasks; } + void setUseBackgroundTasks(bool bBkgd) { m_bUseBackgroundTasks = bBkgd; } + + BackgroundManager* getBackgroundManager() {return m_pBackgroundMgr;} + + void ShowTips(); void setIconForFrame (wxFrame* pFrame); wxConfig* getConfig() @@ -260,15 +291,16 @@ enum { MAINMENU_WINDOW_BASE = 500, MAINMENU_HELP_ABOUT = 600, MAINMENU_HELP_CONTENTS, - MAINMENU_HELP_TOPICS, + MAINMENU_HELP_TIPS, #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, + MAINMENU_LOG_EVENT, + MAINMENU_IMPORT, PJMENU_FILE_PROPERTIES, PJMENU_RECONSTRUCT_FBP, @@ -322,7 +354,8 @@ enum { PHMMENU_FILE_PROPERTIES, PHMMENU_PROCESS_RASTERIZE, PHMMENU_PROCESS_PROJECTIONS, - + + PLOTMENU_FILE_PROPERTIES, PLOTMENU_VIEW_SCALE_MINMAX, PLOTMENU_VIEW_SCALE_AUTO, PLOTMENU_VIEW_SCALE_FULL, @@ -334,6 +367,8 @@ enum { GRAPH3D_VIEW_SCALE_AUTO, GRAPH3D_VIEW_SCALE_MINMAX, GRAPH3D_VIEW_SCALE_FULL, + + RECONSTRUCTION_THREAD_EVENT, }; #endif