X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FInterface_Icons_NDimensions%2FinterfMainPanel.h;h=d6a40a97c5f2846f293c01a1971da8e6228c83c4;hb=ef966ac5e14dc46db8fc657c7892c9af975eb2a3;hp=90d2a30bfbef6543bb6d968c16d45dba99d868e0;hpb=eadfc36256b2a77d2c3073d9249ce3020c2f554b;p=creaContours.git diff --git a/lib/Interface_Icons_NDimensions/interfMainPanel.h b/lib/Interface_Icons_NDimensions/interfMainPanel.h index 90d2a30..d6a40a9 100644 --- a/lib/Interface_Icons_NDimensions/interfMainPanel.h +++ b/lib/Interface_Icons_NDimensions/interfMainPanel.h @@ -1,3 +1,28 @@ +/*# --------------------------------------------------------------------- +# +# Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image +# pour la Sant�) +# Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton +# Previous Authors : Laurent Guigues, Jean-Pierre Roux +# CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil +# +# This software is governed by the CeCILL-B license under French law and +# abiding by the rules of distribution of free software. You can use, +# modify and/ or redistribute the software under the terms of the CeCILL-B +# license as circulated by CEA, CNRS and INRIA at the following URL +# http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html +# or in the file LICENSE.txt. +# +# As a counterpart to the access to the source code and rights to copy, +# modify and redistribute granted by the license, users are provided only +# with a limited warranty and the software's author, the holder of the +# economic rights, and the successive licensors have only limited +# liability. +# +# The fact that you are presently reading this means that you have had +# knowledge of the CeCILL-B license and that you accept its terms. +# ------------------------------------------------------------------------ */ + #ifndef __interfMainPanel_h_INCLUDED_H__ #define __interfMainPanel_h_INCLUDED_H__ @@ -14,8 +39,9 @@ #include "interfToolsSpreadPanel.h" #include "interfSegmentationMenu.h" #include "interfMenuBar.h" -#include "interfSegmentationPanels.h" #include "interfToolsPanels.h" +#include "interfSegmentationPanels.h" +#include "interfImageToolsMenu.h" #include #include @@ -29,7 +55,7 @@ class interfMainPanel : public wxPanel { public: - + interfMainPanel(wxWindow * parent, int sizex, int sizey, wxEvtHandler * evtHandler, std::string datadir = "data/Icons"); ~interfMainPanel(void); @@ -53,14 +79,14 @@ public: /** ** Adds a new checkbox to the scrolledwindow using the checkboxsizer ** @Params id of contour - ** + ** **/ void addContourCheckBox(std::string id); /** ** Removes a checkbox from the list of checkboxes in the flexsizer (checkboxsizer) ** @Params id of contour - ** + ** **/ void removeContourCheckBox(std::string id); @@ -74,12 +100,12 @@ public: void onActionButtonPressed1( wxCommandEvent& event ); /** - ** Shows the panel in the + ** Shows the panel in the **/ void showPanel(wxWindow* panel); /** - ** Hides the panel in the + ** Hides the panel in the **/ void hidePanel( ); @@ -87,14 +113,14 @@ public: ** 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 onCreateContourLine( ); // RaC 09-09 --------------------- void onCreateContourPoints( ); // RaC 09-09 --------------------- @@ -102,7 +128,7 @@ public: // RaC 10-09 --------------------- void onCreateContourPolygon( ); // RaC 10-09 --------------------- - + void onCreateContoursBullEye(wxPanel* panBull); ///////////////////////////////// void onDeleteContour(); @@ -117,6 +143,8 @@ public: ////////////////////////// void onLoad(); void onSave(); + void onImport(); + void onTest(); /////////////////////////////7 void RefreshInterface(); vtkImageData* getImageData(); @@ -131,6 +159,7 @@ public: void onMirrorAxisHide(); void onMirrorChangeWidth(int width); void onThresholdPressed(); + void onColorLayerImagePressed(); void setLabelSegmentationPanelVTK(wxString tmpString); void onSegmentationPressed(); void onSegmentationPressedITK(); @@ -140,10 +169,13 @@ public: int getWindowLevel(); void onBrigthnessColorWindowLevel(int colorwindow,int windowlevel); void onInterpolation(bool interpolate); + void onShowTextContour(bool show); + void onBeforAfterContour(bool before, bool after); void onSpreadPressed(); void onConfigurationPressed(); void resetAppend(); void onSpreadAdd(); + void onSpreadAddAll(); void appendStringSpread(std::string val); void onSpreadGo(int type); void setStringSpread(std::string stringtemp); @@ -151,7 +183,7 @@ public: void getInstantVector(std::vector& tempVector); std::vector getOutlinesName(int slide); void onInformationContourLabels(int typeContourGroup,int selection,int minZ,int maxZ,int grayRangeMin,int grayRangeMax); - void setStringInfoPanel(wxString tmpString); + void setStringInfoPanel(wxString tmpString); void setRowLabelInfoPanel(int z, wxString tempString); int getNumberColsInformationPanel(); void appendColsInformationPanel(int _numberOfVariablesStatistics); @@ -165,29 +197,31 @@ public: virtual bool Show(bool show); void ShowResultImages(int typeContourGroup, int selection, int minZ, int maxZ); void SetContourGroup(int contourGroup); + void onFlipContours(); + void FlipContours(int typeContourFlip, int flipDirection); -//CMRU 29-08-09----------------------------------------------------------------------------------------------- +//CMRU 29-08-09----------------------------------------------------------------------------------------------- + /** * Associates the current selected contour with a label */ void onPrintLabel(); - - + /** * Calculates the pixel value in milimeters according to the current contour if the selected contour is a Line Contour * @param size Size in milimeters of the selected contour * @param unit Measurement unit */ void onCalibration(wxString size, int unit); - + /** * Calculate the pixel value in milimeters * @param realSize Size of the contour in milimeters * @param sizePixel Size of the contour in pixels */ double onePixelSize (double realSize,double sizePixel); - + /** * Returns the value of a pixel in milimeters */ @@ -195,7 +229,7 @@ public: //------------------------------------------------------------------------------------------------------------ private: - + static interfMainPanel* interfmainpanel; @@ -207,6 +241,7 @@ private: wxPanel* menubar3; wxPanel* menubar4; wxPanel* menubar5; + wxPanel* menubar6; wxWindow* currentWindow; wxSplitterWindow* splitterwindow; @@ -215,12 +250,12 @@ private: wxPanel* infoPanelMask; //CMRU 17-08-09 ------------------------------------------------------------------ - + /** * Panel with the calibration options */ wxPanel* infoPanelCalibration; - + /** * Panel who contains the calibration panel and the information panel mask */ @@ -229,7 +264,7 @@ private: /** * Value of a pixel in milimeters */ - double _pixelValue; + double _pixelValue; //-------------------------------------------------------------------------------- wxStaticText* statictext; @@ -238,6 +273,7 @@ private: wxStaticText* statictext3; wxStaticText* statictext4; wxStaticText* statictext5; + wxStaticText* statictext6; std::string PANEL; std::string PANEL1; @@ -245,23 +281,32 @@ private: std::string PANEL3; 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; + std::string PANEL6; + + wxPanel *segmentPanel; + wxPanel *segmentationPanel; + wxPanel *segmentPanelITK; + wxPanel *configPanel; + wxPanel *spreadPanel; + interfSpreadPanel *panelSpread; + wxWindow *infoWin; + wxPanel *informationPanel; + + wxPanel *testPanel; + interfTestPanel *panelTest; + + wxPanel *flipPanel; + interfFlipPanel *panelFlip; + wxPanel *mirrorPanel; + interfMirrorPanel *panelMirror; + + wxPanel *thresholdPanel; + wxPanel *colorImageLayerPanel; + bool axisshown; bool refLineShown; - + //This attribute contains the panel in charge of adding and removing the corresponding checkboxes in //list of contours interfToolsSpreadPanel* toolspread; @@ -288,7 +333,7 @@ private: **/ wxPanel* setMenuTextSizer(wxWindow* parent, wxPanel* panel, wxStaticText* text); - + }; #endif