: interfMenuBar(parent, sizex, sizey)
{
this->datadir = datdir;
- contourevent = (wxContourEventHandler*)evtHandler;
+ //contourevent = (wxContourEventHandler*)evtHandler;
infoWin = NULL;
configPanel = NULL;
- segmentPanel = NULL;
spreadPanel = NULL;
segmentPanelITK = NULL;
- eventHandler = evtHandler;
+ //eventHandler = evtHandler;
initButtons(this);
}
nom.push_back("Find shapes using border snake interaction");
funct.push_back((wxObjectEventFunction) &interfSegmentationMenu:: onSnakePressed);
+ path.push_back(datadir + "/Mirror.png");
+ nom.push_back("Create an Axis and select a contour to mirror it accordingly");
+ funct.push_back((wxObjectEventFunction) &interfSegmentationMenu:: onMirrorPressed);
+
+ path.push_back(datadir + "/Threshold.png");
+ nom.push_back("Superpose a 'Red Image' to the selected Image Threshold");
+ funct.push_back((wxObjectEventFunction)&interfSegmentationMenu::onThreshold);
+
this->addButtons(path, nom);
this->setVectorFunction(funct);
void interfSegmentationMenu::onSegmentationPressed(wxCommandEvent& event){
- if(segmentPanel == NULL){
- segmentPanel = new wxPanel(interfMainPanel::getInstance()->getInfoPanel(), -1, wxDefaultPosition, wxDefaultSize, wxBORDER_STATIC, wxString(_T("")));
-
-
- wxFlexGridSizer* flexsizer = new wxFlexGridSizer(1);
- segmentPanel->SetSizer(flexsizer, true);
- segmentPanel->SetAutoLayout( true );
- segmentPanel->SetEventHandler(this->contourevent);
-
- wxPanel* panel = contourevent->getSegmentationPanel(segmentPanel);
-
- wxStaticText* stattext = new wxStaticText(segmentPanel, -1, wxString(_T(" Automatic Segmentation ")), wxDefaultPosition,
- wxDefaultSize, wxALIGN_CENTRE|wxBORDER_SIMPLE|wxFULL_REPAINT_ON_RESIZE, wxString(_T("")));
-
- flexsizer->Add(stattext,wxALIGN_CENTER | wxALIGN_CENTRE);
- flexsizer->Add(panel, wxEXPAND);
- segmentPanel->Layout();
- }
- interfMainPanel::getInstance()->showPanel(segmentPanel);
- contourevent->showAxis(true);
- axisshown = true;
+ interfMainPanel::getInstance()->onSegmentationPressed();
}
-void interfSegmentationMenu::hideAxis(){
- if(axisshown){
- axisshown = false;
- contourevent->showAxis(axisshown);
- }
-}
void interfSegmentationMenu::onSegmentationPressedITK(wxCommandEvent& event){
- if(segmentPanelITK == NULL){
- segmentPanelITK = new wxPanel(interfMainPanel::getInstance()->getInfoPanel(), -1, wxDefaultPosition, wxDefaultSize, wxBORDER_STATIC, wxString(_T("")));
-
-
- wxFlexGridSizer* flexsizer = new wxFlexGridSizer(1);
- segmentPanelITK->SetSizer(flexsizer, true);
- segmentPanelITK->SetAutoLayout( true );
- segmentPanelITK->SetEventHandler(this->contourevent);
-
- wxPanel* panel = contourevent->getSegmentationPanelITK(segmentPanelITK);
-
- wxStaticText* stattext = new wxStaticText(segmentPanelITK, -1, wxString(_T(" Automatic ITK Segmentation ")), wxDefaultPosition,
- wxDefaultSize, wxALIGN_CENTRE|wxBORDER_SIMPLE|wxFULL_REPAINT_ON_RESIZE, wxString(_T("")));
+ interfMainPanel::getInstance()->onSegmentationPressedITK();
- flexsizer->Add(stattext,wxALIGN_CENTER | wxALIGN_CENTRE);
- flexsizer->Add(panel, wxEXPAND);
- segmentPanelITK->Layout();
- }
- interfMainPanel::getInstance()->showPanel(segmentPanelITK);
- //contourevent->showAxis(true);
- //axisshown = true;
+
}
void interfSegmentationMenu::onSnakePressed(wxCommandEvent& event){
- contourevent->onSnakePressed(this);
+ interfMainPanel::getInstance()->onSnakePressed();
}
+
+void interfSegmentationMenu::onMirrorPressed(wxCommandEvent& event){
+
+ interfMainPanel::getInstance()->onMirrorPressed();
+
+}
+
+void interfSegmentationMenu::onThreshold(wxCommandEvent& event){
+
+ interfMainPanel::getInstance()->onThresholdPressed();
+
+}
+
+//------------------------------------------------------------------------------------------------------------
+