X-Git-Url: http://git.kpe.io/?p=ctsim.git;a=blobdiff_plain;f=src%2Fctsim.h;h=e1055babb1c7872eec19c942ea61c90ca201ab21;hp=b944560cf7aee791c892a2f869f683ddcd58096d;hb=23f5654dacb1952c15bda92c2606fae3a55e48ad;hpb=67a6c34b5a6f38d34e8cbe66091853f453fd2d7a diff --git a/src/ctsim.h b/src/ctsim.h index b944560..e1055ba 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.15 2000/12/29 19:30:08 kevin Exp $ +** $Id: ctsim.h,v 1.21 2001/01/04 21:28:41 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 @@ -36,11 +36,15 @@ #endif class wxMenu; -class wxDocument; -class ImageFileDocument; -#include +class wxDocument; + +class ImageFileDocument; + +#include + + +#include "wx/docview.h" -#include "wx/docview.h" // Define a new frame for main window class MainFrame: public wxDocParentFrame @@ -54,12 +58,26 @@ private: wxMenuItem* m_apWindowMenuItems[MAX_WINDOW_MENUITEMS]; wxDocument* m_apWindowMenuData[MAX_WINDOW_MENUITEMS]; + + int m_iDefaultPhantomID; + int m_iDefaultFilterID; + int m_iDefaultFilterDomainID; + unsigned int m_iDefaultFilterXSize; + unsigned int m_iDefaultFilterYSize; + double m_dDefaultFilterParam; + double m_dDefaultFilterBandwidth; + double m_dDefaultFilterInputScale; + double m_dDefaultFilterOutputScale; + + public: MainFrame(wxDocManager *manager, wxFrame *frame, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, const long type); void OnAbout (wxCommandEvent& event); void OnHelpContents (wxCommandEvent& event); void OnCreatePhantom (wxCommandEvent& event); + + void OnCreateFilter (wxCommandEvent& event); void OnExit (wxCommandEvent& event); void OnUpdateUI (wxUpdateUIEvent& event); @@ -109,11 +127,16 @@ public: { return m_docManager; } wxString getUntitledFilename(); - - void getCompatibleImages (const ImageFileDocument* pIFDoc, std::vector& vecIF); - - bool getSetModifyNewDocs() const - { return false; } + + + void getCompatibleImages (const ImageFileDocument* pIFDoc, std::vector& vecIF); + + + + bool getSetModifyNewDocs() const + + { return true; } + private: wxDocManager* m_docManager; @@ -132,35 +155,62 @@ extern class CTSimApp* theApp; enum { - MAINMENU_HELP_ABOUT = 500, - MAINMENU_HELP_CONTENTS, - MAINMENU_FILE_CREATE_PHANTOM, - MAINMENU_FILE_EXIT, - IFMENU_FILE_PROPERTIES, - PJMENU_FILE_PROPERTIES, - PHMMENU_FILE_PROPERTIES, - PJMENU_PROCESS_RECONSTRUCT, - IFMENU_PLOT_ROW, + MAINMENU_HELP_ABOUT = 500, + MAINMENU_HELP_CONTENTS, + MAINMENU_FILE_CREATE_PHANTOM, + + MAINMENU_FILE_CREATE_FILTER, + MAINMENU_FILE_EXIT, + + IFMENU_FILE_PROPERTIES, + + PJMENU_FILE_PROPERTIES, + PJMENU_RECONSTRUCT_FBP, + PJMENU_RECONSTRUCT_FOURIER, + PJMENU_CONVERT_POLAR, + PJMENU_CONVERT_FFT_POLAR, + + IFMENU_FILE_EXPORT, + + IFMENU_PLOT_ROW, IFMENU_PLOT_COL, - IFMENU_VIEW_SCALE_AUTO, - IFMENU_VIEW_SCALE_MINMAX, - IFMENU_COMPARE_IMAGES, - IFMENU_COMPARE_ROW, - IFMENU_COMPARE_COL, - IFMENU_PROCESS_INVERTVALUES, - IFMENU_PROCESS_SQRT, - IFMENU_PROCESS_SQUARE, - IFMENU_PROCESS_LOG, - IFMENU_PROCESS_EXP, - IFMENU_PROCESS_FOURIER, - IFMENU_PROCESS_INVERSE_FOURIER, - IFMENU_PROCESS_MAGNITUDE, - IFMENU_PROCESS_PHASE, - PHMMENU_PROCESS_RASTERIZE, - PHMMENU_PROCESS_PROJECTIONS, - PLOTMENU_VIEW_SCALE_MINMAX, + IFMENU_PLOT_HISTOGRAM, + + IFMENU_VIEW_SCALE_AUTO, + IFMENU_VIEW_SCALE_MINMAX, + IFMENU_VIEW_SCALE_FULL, + + IFMENU_COMPARE_IMAGES, + IFMENU_COMPARE_ROW, + IFMENU_COMPARE_COL, + IFMENU_IMAGE_SCALESIZE, + IFMENU_IMAGE_ADD, + IFMENU_IMAGE_SUBTRACT, + IFMENU_IMAGE_MULTIPLY, + IFMENU_IMAGE_DIVIDE, + + IFMENU_FILTER_INVERTVALUES, + IFMENU_FILTER_SQRT, + IFMENU_FILTER_SQUARE, + IFMENU_FILTER_LOG, + IFMENU_FILTER_EXP, + IFMENU_FILTER_FOURIER, + IFMENU_FILTER_INVERSE_FOURIER, + IFMENU_FILTER_FFT, + IFMENU_FILTER_IFFT, + IFMENU_FILTER_MAGNITUDE, + IFMENU_FILTER_PHASE, + IFMENU_FILTER_SHUFFLENATURALTOFOURIERORDER, + IFMENU_FILTER_SHUFFLEFOURIERTONATURALORDER, + + PHMMENU_FILE_PROPERTIES, + PHMMENU_PROCESS_RASTERIZE, + PHMMENU_PROCESS_PROJECTIONS, + + PLOTMENU_VIEW_SCALE_MINMAX, PLOTMENU_VIEW_SCALE_AUTO, - MAINMENU_WINDOW_BASE, + PLOTMENU_VIEW_SCALE_FULL, + MAINMENU_WINDOW_BASE, }; #endif