X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;ds=sidebyside;f=lib%2FInterface_Icons_NDimensions%2FinterfMainPanel.h;h=7b2fe74aab4272f02e00ad9ad005ecc33df1e9bb;hb=6a87048f2bdaa4212eb3bd324c222d7015eb3500;hp=8cec369f7055ca11ac46faf8660d5045cb817603;hpb=192dfdf774a06066eff90e9c50916723c8592706;p=creaContours.git diff --git a/lib/Interface_Icons_NDimensions/interfMainPanel.h b/lib/Interface_Icons_NDimensions/interfMainPanel.h index 8cec369..7b2fe74 100644 --- a/lib/Interface_Icons_NDimensions/interfMainPanel.h +++ b/lib/Interface_Icons_NDimensions/interfMainPanel.h @@ -1,7 +1,10 @@ +#ifndef __interfMainPanel_h_INCLUDED_H__ +#define __interfMainPanel_h_INCLUDED_H__ + #pragma once #include -#include "wxContourEventHandler.h" +//#include "wxContourEventHandler.h" #include "interfNewContourMenu.h" #include "interfIOMenu.h" @@ -9,7 +12,10 @@ #include "interfDeleteMenu.h" #include "interfToolsMenu.h" #include "interfToolsSpreadPanel.h" +#include "interfSegmentationMenu.h" #include "interfMenuBar.h" +#include "interfSegmentationPanels.h" +#include "interfToolsPanels.h" #include #include @@ -18,6 +24,8 @@ #include #include +#include "vtkImageData.h" + class interfMainPanel : public wxPanel { public: @@ -28,16 +36,19 @@ public: /** This method should be called the first time by the parent class ** in creates all the panels the first time **/ - static interfMainPanel* getInstance(wxWindow* parent, wxEvtHandler * evtHandler, std::string datadir); + static interfMainPanel* getInstance(wxWindow* parent, std::string datadir, wxEvtHandler * evtHandler=NULL ); /** This method should be called the first time by the parent class ** in creates all the panels the first time **/ - static interfMainPanel* getInstance(wxWindow* parent, wxEvtHandler * evtHandler); + static interfMainPanel* getInstance(wxWindow* parent, wxEvtHandler * evtHandler=NULL); /** ** Gets the instance of the class **/ static interfMainPanel* getInstance(); - + /** + ** Ressts the instance of the class + **/ + static void resetInstance(); /** ** Adds a new checkbox to the scrolledwindow using the checkboxsizer @@ -66,11 +77,122 @@ public: ** Shows the panel in the **/ void showPanel(wxWindow* panel); + + /** + ** Hides the panel in the + **/ + void hidePanel( ); + /** ** Gets the Information panel **/ wxPanel* getInfoPanel(); + /** + ** This methods connect the event in the class interfNewContourMenu with the world of the appli + **/ + void onCreateContourSpline( ); + void onCreateContourRectangle( ); + void onCreateContourCircle( ); + void onCreateContourLine( ); + void onCreateContoursBullEye(wxPanel* panBull); + ///////////////////////////////// + void onDeleteContour(); + void onDeleteContoursActSlice(); + void onDeleteAllContours(); + ///////////////////////// + void onCopy(); + void onPaste(); + void onUndo(); + void onRedo(); + + ////////////////////////// + void onLoad(); + void onSave(); +/////////////////////////////7 + void RefreshInterface(); + + vtkImageData* getImageData(); + + void getImageRange(double[2]); + + void onSegmentationOneSlice(int isovalue,int sampling,int method); + + void onSegmentationOneSliceITK(wxString distance, wxString sigma, wxString alfa, wxString beta, wxString propagation, wxString iterations, wxString inflation); + + int GetImageDataSizeZ(); + + void GetImageDataRange(double *range); + + void onSegmentationAllSlice(int minZ,int maxZ,int isovalue,int sampling,int method); + + void onMirror(); + + void onMirrorChangeWidth(int width); + + void onThreshold(int minVal, int maxVal); + + void onThresholdPressed(); + + void setLabelSegmentationPanelVTK(wxString tmpString); + + void onSegmentationPressed(); + + void onSegmentationPressedITK(); + + void onRigidPressed(); + + void onWidthOfContour(double width); + + int getColorWindow(); + int getWindowLevel(); + + void onBrigthnessColorWindowLevel(int colorwindow,int windowlevel); + + void onInterpolation(bool interpolate); + + void onSpreadPressed(); + + void onConfigurationPressed(); + + void resetAppend(); + + void onSpreadAdd(); + + void appendStringSpread(std::string val); + + void onSpreadGo(int type); + + void setStringSpread(std::string stringtemp); + + void onInformationPressed(); + + + void getInstantVector(std::vector& tempVector); + + std::vector getOutlinesName(int slide); + + void onInformationContourLabels(int typeContourGroup,int selection,int minZ,int maxZ); + + void setStringInfoPanel(wxString tmpString); + + void setRowLabelInfoPanel(int z, wxString tempString); + + int getNumberColsInformationPanel(); + + void appendColsInformationPanel(int _numberOfVariablesStatistics); + + void setCellValueInfoPanel(int z,int tmpIntA,wxString tempString); + + void setColLableInfoPanel(int tmpIntB ,wxString tmpTitleString); + + void onSaveResults(std::string directory,std::string namefile, std::string filename,int typeContourGroup); + + wxString getCellValue(int j,int i); + + void onSnakePressed(); + + void onMirrorPressed(); private: @@ -104,6 +226,23 @@ private: std::string PANEL4; std::string PANEL5; + wxPanel* segmentPanel; + wxPanel* segmentationPanel; + wxPanel* segmentPanelITK; + wxPanel* configPanel; + wxPanel* spreadPanel; + interfSpreadPanel* panelSpread; + wxWindow* infoWin; + wxPanel* informationPanel; + + wxPanel* mirrorPanel; + interfMirrorPanel* panelMirror; + wxPanel* thresholdPanel; + interfThresholdPanel* panelThreshold; + + bool axisshown; + bool refLineShown; + bool thresholdShown; //This attribute contains the panel in charge of adding and removing the corresponding checkboxes in //list of contours @@ -132,5 +271,7 @@ private: wxPanel* setMenuTextSizer(wxWindow* parent, wxPanel* panel, wxStaticText* text); - }; + +#endif +