X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FInterface_Icons_NDimensions%2FinterfSegmentationMenu.cxx;h=e207fd2b23d43951515d0cbb4cfa41370b096c90;hb=b467cd27f8b79c7e33d1f44dd4eaaf4030c65151;hp=8ae1df67c48eb73bdcee2a949ff6d7c4d5209db5;hpb=c7aa7286e02028ade712c1284fea9439d0d3c61c;p=creaContours.git diff --git a/lib/Interface_Icons_NDimensions/interfSegmentationMenu.cxx b/lib/Interface_Icons_NDimensions/interfSegmentationMenu.cxx index 8ae1df6..e207fd2 100644 --- a/lib/Interface_Icons_NDimensions/interfSegmentationMenu.cxx +++ b/lib/Interface_Icons_NDimensions/interfSegmentationMenu.cxx @@ -1,18 +1,45 @@ +/*# --------------------------------------------------------------------- +# +# 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. +# ------------------------------------------------------------------------ */ + #include "interfSegmentationMenu.h" #include "interfMainPanel.h" interfSegmentationMenu::interfSegmentationMenu(wxWindow * parent, int sizex, int sizey,wxEvtHandler* evtHandler, std::string datdir) : interfMenuBar(parent, sizex, sizey) { - this->datadir = datdir; - contourevent = (wxContourEventHandler*)evtHandler; - infoWin = NULL; - configPanel = NULL; - segmentPanel = NULL; - spreadPanel = NULL; + this->datadir = datdir; + +/*EED Borrame + //contourevent = (wxContourEventHandler*)evtHandler; + infoWin = NULL; + configPanel = NULL; + spreadPanel = NULL; segmentPanelITK = NULL; - eventHandler = evtHandler; + //eventHandler = evtHandler; +*/ initButtons(this); } @@ -34,6 +61,11 @@ void interfSegmentationMenu::initButtons(wxEvtHandler* evtHandler) { nom.push_back("Find shapes using border snake interaction"); funct.push_back((wxObjectEventFunction) &interfSegmentationMenu:: onSnakePressed); +/*EED Borrame + 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); @@ -54,66 +86,28 @@ interfSegmentationMenu::~interfSegmentationMenu() **/ -void interfSegmentationMenu::onSegmentationPressed(wxCommandEvent& event){ - if(segmentPanel == NULL){ - segmentPanel = new wxPanel(interfMainPanel::getInstance()->getInfoPanel(), -1, wxDefaultPosition, wxDefaultSize, wxBORDER_STATIC, wxString(_T(""))); - +void interfSegmentationMenu::onSegmentationPressed(wxCommandEvent& event) +{ + interfMainPanel::getInstance()->onSegmentationPressed(); +} - 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; +void interfSegmentationMenu::onSegmentationPressedITK(wxCommandEvent& event) +{ + interfMainPanel::getInstance()->onSegmentationPressedITK(); } - -void interfSegmentationMenu::hideAxis(){ - if(axisshown){ - axisshown = false; - contourevent->showAxis(axisshown); - } +void interfSegmentationMenu::onSnakePressed(wxCommandEvent& event) +{ + interfMainPanel::getInstance()->onSnakePressed(); } -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(""))); - - flexsizer->Add(stattext,wxALIGN_CENTER | wxALIGN_CENTRE); - flexsizer->Add(panel, wxEXPAND); - segmentPanelITK->Layout(); - } - interfMainPanel::getInstance()->showPanel(segmentPanelITK); - //contourevent->showAxis(true); - //axisshown = true; +/*EED Borrame +void interfSegmentationMenu::onThreshold(wxCommandEvent& event) +{ + interfMainPanel::getInstance()->onThresholdPressed(); } +*/ +//------------------------------------------------------------------------------------------------------------ -void interfSegmentationMenu::onSnakePressed(wxCommandEvent& event){ - - contourevent->onSnakePressed(this); - -}