X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FInterface_Icons_NDimensions%2FinterfToolsMenu.cxx;h=7f97b64be8aa3261c759fd3f4b768935ac462bea;hb=refs%2Fheads%2Fvtk9itk4wx3-macos;hp=d92b5a5737e154b36b3cf9e6d9d97834543d1b9f;hpb=23633c5496dd702cc9b332468f5daba67d608aca;p=creaContours.git diff --git a/lib/Interface_Icons_NDimensions/interfToolsMenu.cxx b/lib/Interface_Icons_NDimensions/interfToolsMenu.cxx index d92b5a5..7f97b64 100644 --- a/lib/Interface_Icons_NDimensions/interfToolsMenu.cxx +++ b/lib/Interface_Icons_NDimensions/interfToolsMenu.cxx @@ -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. +# ------------------------------------------------------------------------ */ + #include "interfToolsMenu.h" #include "interfMainPanel.h" @@ -5,14 +30,17 @@ interfToolsMenu::interfToolsMenu(wxWindow * parent, int sizex, int sizey,wxEvtHa : interfMenuBar(parent, sizex, sizey) { this->datadir = datdir; - contourevent = (wxContourEventHandler*)evtHandler; - infoWin = NULL; - configPanel = NULL; - segmentPanel = NULL; - spreadPanel = NULL; + //contourevent = (wxContourEventHandler*)evtHandler; + //infoWin = NULL; + +/*EED Borrame + configPanel = NULL; + segmentPanel = NULL; + spreadPanel = NULL; segmentPanelITK = NULL; - eventHandler = evtHandler; +// eventHandler = evtHandler; +*/ initButtons(this); } @@ -24,25 +52,32 @@ void interfToolsMenu::initButtons(wxEvtHandler* evtHandler) { path.push_back(datadir + "/Spread.png"); nom.push_back("The selected contour will spread through all slides"); - funct.push_back((wxObjectEventFunction) &interfMenuBar:: onActionButtonPressed); + funct.push_back((wxObjectEventFunction) &interfToolsMenu:: onRigidPressed); path.push_back(datadir + "/Spread1.png"); nom.push_back("Select more than one contour and find the contours between them"); funct.push_back((wxObjectEventFunction) &interfToolsMenu:: onSpreadPressed); - - path.push_back(datadir + "/info.png"); - nom.push_back("Information of the contours in the scene"); - funct.push_back((wxObjectEventFunction) &interfToolsMenu:: onInformationPressed); + path.push_back(datadir + "/Mirror.png"); + nom.push_back("Create an Axis and select a contour to mirror it accordingly"); + funct.push_back((wxObjectEventFunction) &interfToolsMenu:: onMirrorPressed); + +//CMRU 17-08-09 ------------------------------------------------------------------ + path.push_back(datadir + "/Letter.PNG"); + nom.push_back("Insert a Label"); + funct.push_back((wxObjectEventFunction)&interfToolsMenu::onPrintLabel); +//------------------------------------------------------------------------------- - path.push_back(datadir + "/pignon.png"); - nom.push_back("Configuration of the window"); - funct.push_back((wxObjectEventFunction) &interfToolsMenu:: onConfigurationPressed); + path.push_back(datadir + "/FlipContours.png"); + nom.push_back("Flop contours"); + funct.push_back((wxObjectEventFunction) &interfToolsMenu:: onFlipPressed); + + this->addButtons(path, nom); this->setVectorFunction(funct); - this->setButtonName(0, wxContour_ActionCommandsID::CHANGE_TOOL); + //this->setButtonName(0, wxContour_ActionCommandsID::CHANGE_TOOL); this->connectEvents(evtHandler); @@ -59,94 +94,28 @@ interfToolsMenu::~interfToolsMenu() ** it uses attribute eventHandler to call the methods define by the application. ** see setEventHandler(wxEventHandler*) **/ -void interfToolsMenu::onRigidPressed(wxCommandEvent& event){ - +void interfToolsMenu::onRigidPressed(wxCommandEvent& event) +{ + interfMainPanel::getInstance()->onRigidPressed(); } -void interfToolsMenu::onSpreadPressed(wxCommandEvent& event){ - - - if(spreadPanel==NULL){ - - spreadPanel = new wxPanel(interfMainPanel::getInstance()->getInfoPanel(), -1, wxDefaultPosition, wxDefaultSize, wxBORDER_STATIC, wxString("")); - wxFlexGridSizer* flexsizer = new wxFlexGridSizer(1); - spreadPanel->SetSizer(flexsizer, true); - spreadPanel->SetAutoLayout( true ); - spreadPanel->SetEventHandler(this->contourevent); - - wxPanel* panel = contourevent->getSpreadPanel(spreadPanel); - - - wxStaticText* stattext = new wxStaticText(spreadPanel, -1, wxString(" Automatic Spread "), wxDefaultPosition, - wxDefaultSize, wxALIGN_CENTRE|wxBORDER_SIMPLE|wxFULL_REPAINT_ON_RESIZE, wxString("")); - - flexsizer->Add(stattext,wxALIGN_CENTER | wxALIGN_CENTRE); - flexsizer->Add(panel, wxEXPAND); - spreadPanel->Layout(); - } - interfMainPanel::getInstance()->showPanel(spreadPanel); - hideAxis(); +void interfToolsMenu::onSpreadPressed(wxCommandEvent& event) +{ + interfMainPanel::getInstance()->onSpreadPressed(); } - -void interfToolsMenu::onInformationPressed(wxCommandEvent& event){ - - if(infoWin ==NULL){ - infoWin = new wxFrame (interfMainPanel::getInstance()->getInfoPanel(), -1,_T(" Spread "), wxDefaultPosition, wxDefaultSize, wxFRAME_TOOL_WINDOW|wxSYSTEM_MENU | wxCAPTION | wxCLIP_CHILDREN |wxFRAME_FLOAT_ON_PARENT | wxRESIZE_BORDER ); - infoWin->SetSize( wxSize(500,450) ); - - wxSize sizepanel(200,300); - wxPanel *panel = contourevent->getInformationPanel(infoWin); - - wxBoxSizer * sizerPanel = new wxBoxSizer(wxHORIZONTAL); - sizerPanel -> Add( panel->GetSizer() , 1, wxEXPAND ,0); - - infoWin->SetSizer( sizerPanel ); - infoWin->SetAutoLayout( true ); - infoWin->Layout(); - - infoWin->Show(); - - }else { - - if (infoWin->IsShown()==true) - { - infoWin->Show(false); - } else { - contourevent->FillGridWithContoursInformation(); - infoWin->Show(true); - } - } +void interfToolsMenu::onMirrorPressed(wxCommandEvent& event) +{ + interfMainPanel::getInstance()->onMirrorPressed(); } -void interfToolsMenu::onConfigurationPressed(wxCommandEvent& event){ - - if(configPanel == NULL){ - configPanel = new wxPanel(interfMainPanel::getInstance()->getInfoPanel(), -1, wxDefaultPosition, wxDefaultSize, wxNO_BORDER, wxString("")); - wxFlexGridSizer* flexsizer = new wxFlexGridSizer(1); - configPanel->SetSizer(flexsizer, true); - configPanel->SetAutoLayout( true ); - configPanel->SetEventHandler(this->contourevent); - - wxPanel* panel = contourevent->getConfigurationPanel(configPanel); - - wxStaticText* stattext = new wxStaticText(configPanel, -1, wxString(" Interface Configuration "), wxDefaultPosition, - wxDefaultSize, wxALIGN_CENTRE|wxBORDER_SIMPLE|wxFULL_REPAINT_ON_RESIZE, wxString("")); - - flexsizer->Add(stattext,wxALIGN_CENTER | wxALIGN_CENTRE); - - flexsizer->Add(panel, wxEXPAND); - configPanel->Layout(); - - } - interfMainPanel::getInstance()->showPanel(configPanel); - - hideAxis(); +void interfToolsMenu::onPrintLabel(wxCommandEvent& event) +{ + interfMainPanel::getInstance()->onPrintLabel(); } -void interfToolsMenu::hideAxis(){ - if(axisshown){ - axisshown = false; - contourevent->showAxis(axisshown); - } +void interfToolsMenu::onFlipPressed(wxCommandEvent& event) +{ + printf("EED interfToolsMenu::onFlipLabel \n"); + interfMainPanel::getInstance()->onFlipContours(); }