X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FInterface_Icons_NDimensions%2FinterfMainPanel.cxx;h=1dc37456e1670b69399872282a7f6337b10ea1a4;hb=498505024562b776b91e25ca30f6e9c6bbd1f963;hp=cca064646a7ad5b550606c77b4eba06f27bd2af4;hpb=03596c3a81a960624efaadc28a4cfc52d831ec98;p=creaContours.git diff --git a/lib/Interface_Icons_NDimensions/interfMainPanel.cxx b/lib/Interface_Icons_NDimensions/interfMainPanel.cxx index cca0646..1dc3745 100644 --- a/lib/Interface_Icons_NDimensions/interfMainPanel.cxx +++ b/lib/Interface_Icons_NDimensions/interfMainPanel.cxx @@ -1,15 +1,5 @@ #include "interfMainPanel.h" -/* -#include "interfNewContourMenu.h" -#include "interfIOMenu.h" -#include "interfEditMenu.h" -#include "interfDeleteMenu.h" -#include "interfToolsMenu.h" -#include "interfToolsSpreadPanel.h" -#include "interfMenuBar.h" -#include "interfSegmentationMenu.h" -*/ interfMainPanel* interfMainPanel::interfmainpanel=NULL; wxFrame* interfMainPanel::_newframe=NULL; @@ -18,23 +8,28 @@ interfMainPanel::interfMainPanel(wxWindow * parent, int sizex, int sizey, wxEvtH : wxPanel(parent, -1, wxDefaultPosition, wxSize(sizex, sizey), wxBORDER_SUNKEN) { - PANEL = "New Contour"; - PANEL1 = "I/O"; - PANEL2 = "Edit"; - PANEL3 = "Delete"; - PANEL4 = "Tools"; - PANEL5 = "Segmentation"; - segmentPanel = NULL; - segmentPanelITK = NULL; - configPanel = NULL; - spreadPanel = NULL; - infoWin = NULL; - infoPanel = NULL; - infoPanelMask = NULL; - informationPanel = NULL; - mirrorPanel = NULL; - thresholdPanel = NULL; - currentWindow = NULL; + PANEL = "New Contour"; + PANEL1 = "I/O"; + PANEL2 = "Edit"; + PANEL3 = "Delete"; + PANEL4 = "Contour Tools"; + PANEL5 = "Segmentation"; +//EED 07/07/2010 + PANEL6 = "Image Tools"; + + segmentPanel = NULL; + segmentPanelITK = NULL; + configPanel = NULL; + spreadPanel = NULL; + infoWin = NULL; + infoPanel = NULL; + infoPanelMask = NULL; + informationPanel = NULL; + mirrorPanel = NULL; + thresholdPanel = NULL; + colorImageLayerPanel = NULL; + currentWindow = NULL; + testPanel = NULL; //CMRU 17-08-09 ------------------------------------------------------------------ infoPanelCalibration = NULL; @@ -45,7 +40,7 @@ interfMainPanel::interfMainPanel(wxWindow * parent, int sizex, int sizey, wxEvtH splitterwindow->SetMinimumPaneSize( 10 ); sizey = sizey/8; - wxPanel* toolpanel = new wxPanel(splitterwindow, -1, wxDefaultPosition, wxDefaultSize, wxBORDER_NONE, wxString(_T(""))); + wxPanel* toolpanel = new wxPanel(splitterwindow, -1, wxDefaultPosition, wxDefaultSize, wxBORDER_DOUBLE, wxString(_T(""))); wxFlexGridSizer* flexsizer = new wxFlexGridSizer(6,2,1,1); toolpanel->SetSizer(flexsizer, true); @@ -63,6 +58,10 @@ interfMainPanel::interfMainPanel(wxWindow * parent, int sizex, int sizey, wxEvtH b4->SetClientData(&PANEL4); wxButton* b5 = getButton(toolpanel); b5->SetClientData(&PANEL5); +//EED 07/07/2010 + wxButton* b6 = getButton(toolpanel); + b6->SetClientData(&PANEL6); + wxPanel* mentex = new wxPanel(toolpanel, -1, wxDefaultPosition, wxDefaultSize, wxBORDER_NONE, wxString(_T(""))); wxPanel* mentex1 = new wxPanel(toolpanel, -1, wxDefaultPosition, wxDefaultSize, wxBORDER_NONE, wxString(_T(""))); @@ -70,6 +69,8 @@ interfMainPanel::interfMainPanel(wxWindow * parent, int sizex, int sizey, wxEvtH wxPanel* mentex3 = new wxPanel(toolpanel, -1, wxDefaultPosition, wxDefaultSize, wxBORDER_NONE, wxString(_T(""))); wxPanel* mentex4 = new wxPanel(toolpanel, -1, wxDefaultPosition, wxDefaultSize, wxBORDER_NONE, wxString(_T(""))); wxPanel* mentex5 = new wxPanel(toolpanel, -1, wxDefaultPosition, wxDefaultSize, wxBORDER_NONE, wxString(_T(""))); +//EED 07/07/2010 + wxPanel* mentex6 = new wxPanel(toolpanel, -1, wxDefaultPosition, wxDefaultSize, wxBORDER_NONE, wxString(_T(""))); menubar = new interfNewContourMenu (mentex, sizex, sizey, evtHandler, datadir); menubar1 = new interfIOMenu (mentex1, sizex, sizey, evtHandler, datadir); @@ -77,6 +78,7 @@ interfMainPanel::interfMainPanel(wxWindow * parent, int sizex, int sizey, wxEvtH menubar3 = new interfDeleteMenu (mentex3, sizex, sizey, evtHandler, datadir); menubar4 = new interfToolsMenu (mentex4, sizex ,sizey, evtHandler, datadir); menubar5 = new interfSegmentationMenu(mentex5, sizex, sizey, evtHandler, datadir); + menubar6 = new interfImageToolsMenu(mentex6, sizex, sizey, evtHandler, datadir); statictext = getText(mentex, PANEL); statictext1 = getText(mentex1, PANEL1); @@ -84,6 +86,7 @@ interfMainPanel::interfMainPanel(wxWindow * parent, int sizex, int sizey, wxEvtH statictext3 = getText(mentex3, PANEL3); statictext4 = getText(mentex4, PANEL4); statictext5 = getText(mentex5, PANEL5); + statictext6 = getText(mentex6, PANEL6); flexsizer->Add(b, wxFIXED_MINSIZE); flexsizer->Add(setMenuTextSizer(mentex, menubar,statictext), wxFIXED_MINSIZE); @@ -102,18 +105,22 @@ interfMainPanel::interfMainPanel(wxWindow * parent, int sizex, int sizey, wxEvtH flexsizer->Add(b5, wxFIXED_MINSIZE); flexsizer->Add(setMenuTextSizer(mentex5, menubar5,statictext5), wxFIXED_MINSIZE); + flexsizer->Add(b6, wxFIXED_MINSIZE); + flexsizer->Add(setMenuTextSizer(mentex6, menubar6,statictext6), wxFIXED_MINSIZE); toolpanel->Update(); toolpanel->Layout(); - infoPanel = new wxPanel(splitterwindow, -1, wxDefaultPosition, wxDefaultSize, wxNO_BORDER, wxString(_T(""))); + infoPanel = new wxPanel(splitterwindow, -1, wxDefaultPosition, wxDefaultSize, wxBORDER_DOUBLE, wxString(_T(""))); wxFlexGridSizer* infosizer = new wxFlexGridSizer(1,1,2,2); infoPanel->SetSizer(infosizer, true); infoPanel->SetAutoLayout( true ); splitterwindow->Initialize(toolpanel); splitterwindow->SetSashGravity(1); - splitterwindow->SplitHorizontally(toolpanel, infoPanel); +//EED splitterwindow->SetSashPosition(600); + splitterwindow->SetSashSize(5); + splitterwindow->SplitHorizontally(toolpanel, infoPanel,8*73); Connect(b->GetId(), wxEVT_COMMAND_BUTTON_CLICKED, (wxObjectEventFunction)&interfMainPanel::onActionButtonPressed1); Connect(b1->GetId(), wxEVT_COMMAND_BUTTON_CLICKED, (wxObjectEventFunction)&interfMainPanel::onActionButtonPressed1); @@ -121,6 +128,7 @@ interfMainPanel::interfMainPanel(wxWindow * parent, int sizex, int sizey, wxEvtH Connect(b3->GetId(), wxEVT_COMMAND_BUTTON_CLICKED, (wxObjectEventFunction)&interfMainPanel::onActionButtonPressed1); Connect(b4->GetId(), wxEVT_COMMAND_BUTTON_CLICKED, (wxObjectEventFunction)&interfMainPanel::onActionButtonPressed1); Connect(b5->GetId(), wxEVT_COMMAND_BUTTON_CLICKED, (wxObjectEventFunction)&interfMainPanel::onActionButtonPressed1); + Connect(b6->GetId(), wxEVT_COMMAND_BUTTON_CLICKED, (wxObjectEventFunction)&interfMainPanel::onActionButtonPressed1); this->Layout(); } @@ -236,6 +244,9 @@ void interfMainPanel::onActionButtonPressed1( wxCommandEvent& event ) }else if(dstring.compare(PANEL5)==0){ dmenu = menubar5; text = statictext5; + }else if(dstring.compare(PANEL6)==0){ + dmenu = menubar6; + text = statictext6; } if(wxStrcmp(b->GetLabel(),_T("+"))==0 ){ @@ -248,7 +259,7 @@ void interfMainPanel::onActionButtonPressed1( wxCommandEvent& event ) b->SetLabel(_T("+")); } - sizechange *= dmenu->GetSize().GetHeight(); + sizechange *= (dmenu->GetSize().GetHeight()-10); splitterwindow->SetSashPosition(splitterwindow->GetSashPosition()+sizechange); this->Layout(); @@ -372,6 +383,14 @@ void interfMainPanel::onCreateContourPoints( ) } // RaC 09-09 --------------------- +// RaC 10-09 --------------------- +void interfMainPanel::onCreateContourPolygon( ) +{ + wxContourMainFrame::getInstance()->showAxis(false); + wxContourMainFrame::getInstance()->onCreateContourPolygon(); +} +// RaC 10-09 --------------------- + void interfMainPanel::onCreateContoursBullEye(wxPanel* panBull) { wxContourMainFrame::getInstance()->showAxis(false); @@ -426,6 +445,32 @@ void interfMainPanel::onSave() wxContourMainFrame::getInstance()->onSave(); } +void interfMainPanel::onImport(){ + wxContourMainFrame::getInstance()->onImport(); +} + +void interfMainPanel::onTest(){ + if(testPanel==NULL) + { + testPanel = new wxPanel(interfMainPanel::getInstance()->getInfoPanel(), -1, wxDefaultPosition, + wxDefaultSize, wxBORDER_STATIC, wxString(_T(""))); + wxFlexGridSizer* flexsizer = new wxFlexGridSizer(1); + testPanel->SetSizer(flexsizer, true); + testPanel->SetAutoLayout( true ); + panelTest = new interfTestPanel(testPanel); + + wxStaticText* stattext = new wxStaticText(mirrorPanel, -1, + wxString(_T(" Test Panel ")), + wxDefaultPosition, wxDefaultSize, + wxALIGN_CENTRE|wxBORDER_SIMPLE|wxFULL_REPAINT_ON_RESIZE, wxString(_T(""))); + + flexsizer->Add(stattext,wxALIGN_CENTER | wxALIGN_CENTRE); + flexsizer->Add(panelTest, wxEXPAND); + testPanel->Layout(); + showPanel(testPanel); + } +} + void interfMainPanel::RefreshInterface() { wxContourMainFrame::getInstance()->RefreshInterface(); @@ -747,6 +792,11 @@ void interfMainPanel::setColLableInfoPanel(int tmpIntB,wxString tmpTitleString) } +void interfMainPanel::SetScalarRange(int grayRangeMin,int grayRangeMax) +{ + wxContourMainFrame::getInstance()->SetScalarRange(grayRangeMin, grayRangeMax); +} + void interfMainPanel::onSaveResults(std::string directory,std::string namefile, std::string filename, int typeContourGroup, int selection, int minZ, int maxZ ,bool XYZValues, bool contourImage, bool statistics) { @@ -827,12 +877,30 @@ void interfMainPanel::onMirrorChangeWidth(int width) wxContourMainFrame::getInstance()->refLineChangeWidth(width); } - +//EED 07/07/2010 +void interfMainPanel::onColorLayerImagePressed() +{ + // Color Image Layer view control panel + if(colorImageLayerPanel == NULL){ + colorImageLayerPanel = new wxPanel(interfMainPanel::getInstance()->getInfoPanel(), -1, wxDefaultPosition, wxDefaultSize, wxNO_BORDER, wxString(_T(""))); + wxFlexGridSizer* flexsizer = new wxFlexGridSizer(1); + colorImageLayerPanel->SetSizer(flexsizer, true); + colorImageLayerPanel->SetAutoLayout( true ); + //configPanel->SetEventHandler(this->contourevent); + wxPanel *panel = wxContourMainFrame::getInstance()->getColorLayerImageViewPanel( colorImageLayerPanel ); + wxStaticText* stattext = new wxStaticText(colorImageLayerPanel, -1, wxString(_T(" Color Image Layer ")), wxDefaultPosition, + wxDefaultSize, wxALIGN_CENTRE|wxBORDER_SIMPLE|wxFULL_REPAINT_ON_RESIZE, wxString(_T(""))); + flexsizer->Add(stattext,wxALIGN_CENTER | wxALIGN_CENTRE); + flexsizer->Add(panel, wxEXPAND); + colorImageLayerPanel->Layout(); + } + showPanel(colorImageLayerPanel); + wxContourMainFrame::getInstance()->changeInstant(); +} //EED01 void interfMainPanel::onThresholdPressed() -{ - +{ // Threshold view control panel if(thresholdPanel == NULL){ thresholdPanel = new wxPanel(interfMainPanel::getInstance()->getInfoPanel(), -1, wxDefaultPosition, wxDefaultSize, wxNO_BORDER, wxString(_T(""))); @@ -843,12 +911,9 @@ void interfMainPanel::onThresholdPressed() wxPanel *panel = wxContourMainFrame::getInstance()->getThresholdImageViewPanel( thresholdPanel ); wxStaticText* stattext = new wxStaticText(thresholdPanel, -1, wxString(_T(" Threshold segmentation ")), wxDefaultPosition, wxDefaultSize, wxALIGN_CENTRE|wxBORDER_SIMPLE|wxFULL_REPAINT_ON_RESIZE, wxString(_T(""))); - flexsizer->Add(stattext,wxALIGN_CENTER | wxALIGN_CENTRE); - flexsizer->Add(panel, wxEXPAND); - thresholdPanel->Layout(); - + thresholdPanel->Layout(); } showPanel(thresholdPanel); wxContourMainFrame::getInstance()->changeInstant();