From 3c6c4d236dd41550927d9180688f40c127301431 Mon Sep 17 00:00:00 2001 From: espinosa Date: Sat, 31 Jan 2015 16:58:25 +0100 Subject: [PATCH] Code cleaning done --- .../bbcreaMaracasVisuPanelButtonContainer.cxx | 2 +- .../bbcreaMaracasVisuPanelButtonContainer.h | 2 +- .../controller/buttonContainerController.cxx | 171 ++++---- .../model/buttonGroupFactory.cxx | 3 - .../model/buttonGroupFactory.h | 67 ++-- .../model/containerSettings.cxx | 182 ++++----- .../model/containerSettings.h | 2 - .../creaButtonContainer/model/functor.txx | 141 ++++--- .../creaButtonContainer/model/listConfig.cxx | 97 ----- .../creaButtonContainer/model/listConfig.h | 76 ---- .../model/listGroupFactory.cxx | 94 ----- .../model/listGroupFactory.h | 82 ---- .../model/structBCSettings.h | 51 ++- .../creaButtonContainer/view/button.cxx | 7 - .../view/buttonContainerPanel.cxx | 117 +++--- .../view/buttonContainerPanel.h | 103 +++-- .../creaButtonContainer/view/buttonGroup.cxx | 109 +++--- .../view/buttonManager.cxx | 165 +++----- .../creaButtonContainer/view/buttonManager.h | 82 ++-- .../creaButtonContainer/view/groupManager.cxx | 131 +++---- .../creaButtonContainer/view/groupManager.h | 80 ++-- .../creaButtonContainer/view/listGroup.cxx | 98 ----- .../creaButtonContainer/view/listGroup.h | 84 ---- .../creaButtonContainer/view/listWx.cxx | 241 ++++-------- .../widgets/creaButtonContainer/view/listWx.h | 88 ++--- .../buttonContainerSettings.cxx | 364 ++++++++---------- .../buttonContainerSettings.h | 143 ++++--- .../creaPanelButtonContainer.cxx | 300 ++++++--------- .../creaPanelButtonContainer.h | 106 +++-- .../listConfigPanel.cxx | 316 ++------------- .../listConfigPanel.h | 134 ++----- 31 files changed, 1189 insertions(+), 2449 deletions(-) delete mode 100644 lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/listConfig.cxx delete mode 100644 lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/listConfig.h delete mode 100644 lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/listGroupFactory.cxx delete mode 100644 lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/listGroupFactory.h delete mode 100644 lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/view/listGroup.cxx delete mode 100644 lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/view/listGroup.h diff --git a/bbtk/src/bbcreaMaracasVisuPanelButtonContainer.cxx b/bbtk/src/bbcreaMaracasVisuPanelButtonContainer.cxx index 3386357..b98efdd 100644 --- a/bbtk/src/bbcreaMaracasVisuPanelButtonContainer.cxx +++ b/bbtk/src/bbcreaMaracasVisuPanelButtonContainer.cxx @@ -44,7 +44,7 @@ PanelButtonContainer::Process( ) printf("EED PanelButtonContainer::Process %d\n", bbGetInputIn( ).size() ); - settings->AddButtons(bbGetInputIn( ), bbGetInputType()); + settings->InitModel(bbGetInputIn( ), bbGetInputType()); PBContainer* panel = new PBContainer( myPanel, settings, bbGetInputType() ); diff --git a/bbtk/src/bbcreaMaracasVisuPanelButtonContainer.h b/bbtk/src/bbcreaMaracasVisuPanelButtonContainer.h index 89c5e3d..b363276 100644 --- a/bbtk/src/bbcreaMaracasVisuPanelButtonContainer.h +++ b/bbtk/src/bbcreaMaracasVisuPanelButtonContainer.h @@ -71,7 +71,7 @@ BBTK_BEGIN_DESCRIBE_BLACK_BOX(PanelButtonContainer,bbtk::WxBlackBox); BBTK_INPUT(PanelButtonContainer,Title,"Title prepended to the text",std::string,""); BBTK_INPUT(PanelButtonContainer,In,"ButtonContainerSettings List",BCStructVectorType,""); - BBTK_INPUT(PanelButtonContainer,Type,"Type container",int,""); + BBTK_INPUT(PanelButtonContainer,Type,"Type container (0: Button Container ; 1: List Container ; 2: Configurable List Container)",int,""); BBTK_END_DESCRIBE_BLACK_BOX(PanelButtonContainer); //===== diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/controller/buttonContainerController.cxx b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/controller/buttonContainerController.cxx index 1ac95c8..a7c1102 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/controller/buttonContainerController.cxx +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/controller/buttonContainerController.cxx @@ -1,27 +1,27 @@ /*# --------------------------------------------------------------------- -# -# 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. -# ------------------------------------------------------------------------ */ + # + # 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. + # ------------------------------------------------------------------------ */ /*! * @file buttonContainerController.cxx @@ -37,112 +37,105 @@ namespace creaButtonContainer namespace controller { // ---------------------------------------------------------------------------------- - ButtonContainerController::ButtonContainerController( BCPanel* panel ) + ButtonContainerController::ButtonContainerController(BCPanel* panel) { - std::cout<< "MLER | ButtonContainerController::ButtonContainerController( BCPanel* panel )" << std::endl; this->m_BCPanel = panel; } // ---------------------------------------------------------------------------------- - ButtonContainerController::~ButtonContainerController( ) + ButtonContainerController::~ButtonContainerController() { } // ---------------------------------------------------------------------------------- - void - ButtonContainerController::AddEvents( ) + void ButtonContainerController::AddEvents() { try { - std::cout<< "MLER | ButtonContainerController:: AddEvents( )" << std::endl; //Adding ButtonManagerEvents - for( GroupManagerList::iterator it = - this->m_BCPanel->m_GroupManagerList.begin( ); it - != this->m_BCPanel->m_GroupManagerList.end( ); ++it ) + for (GroupManagerList::iterator it = + this->m_BCPanel->m_GroupManagerList.begin(); + it != this->m_BCPanel->m_GroupManagerList.end(); ++it) { - this->Connect( - ( *it ).first, - wxEVT_COMMAND_BUTTON_CLICKED, - (wxObjectEventFunction) &ButtonContainerController::ButtonExpEvent ); - }//rof + this->Connect((*it).first, wxEVT_COMMAND_BUTTON_CLICKED, + (wxObjectEventFunction) + & ButtonContainerController::ButtonExpEvent); + } //rof //Adding ButtonEvents - for( ButtonGroupList::iterator it = - this->m_BCPanel->m_ButtonGroupList.begin( ); it - != this->m_BCPanel->m_ButtonGroupList.end( ); ++it ) + for (ButtonGroupList::iterator it = + this->m_BCPanel->m_ButtonGroupList.begin(); + it != this->m_BCPanel->m_ButtonGroupList.end(); ++it) { - KeyList keylist = ( *it )->GetButtonIdContainer( ); - for( KeyList::iterator it2 = keylist.begin( ); it2 != keylist.end( ); ++it2 ) + KeyList keylist = (*it)->GetButtonIdContainer(); + for (KeyList::iterator it2 = keylist.begin(); it2 != keylist.end(); + ++it2) { - this->Connect( ( *it2 ), wxEVT_COMMAND_BUTTON_CLICKED, - (wxObjectEventFunction) &ButtonContainerController::ButtonEvent ); - }//rof - }//rof - }//yrt - catch ( const std::exception& e ) + this->Connect((*it2), wxEVT_COMMAND_BUTTON_CLICKED, + (wxObjectEventFunction) + & ButtonContainerController::ButtonEvent); + } //rof + } //rof + } //yrt + catch (const std::exception& e) { std::cerr << "ButtonContainerController::AddEvents( ) exception: " - << e.what( ) << std::endl; - }//hctac + << e.what() << std::endl; + } //hctac } // ---------------------------------------------------------------------------------- - void - ButtonContainerController::ButtonExpEvent( wxCommandEvent& event ) + void ButtonContainerController::ButtonExpEvent(wxCommandEvent& event) { - long id = event.GetId( ); - std::cout<< "MLER | ButtonContainerController:: ButtonExpEvent( wxCommandEvent& event )" << std::endl; + long id = event.GetId(); try { //changing the button label when its clicked and then hide the buttons of the group. - if ( this->m_BCPanel->m_GroupManagerList[ id ]->GetButton( )->GetLabel( ).Cmp( - _( "+" ) ) == 0 ) + if (this->m_BCPanel->m_GroupManagerList[id]->GetButton()->GetLabel().Cmp( + _("+")) == 0) { - this->m_BCPanel->m_GroupManagerList[ id ]->GetButton( )->SetLabel( - _( "-" ) ); - this->m_BCPanel->m_GroupManagerList[ id ]->HideSubPanel( false ); - }//fi - else if ( this->m_BCPanel->m_GroupManagerList[ id ]->GetButton( )->GetLabel( ).Cmp( - _( "-" ) ) == 0 ) + this->m_BCPanel->m_GroupManagerList[id]->GetButton()->SetLabel( + _("-")); + this->m_BCPanel->m_GroupManagerList[id]->HideSubPanel(false); + } //fi + else if (this->m_BCPanel->m_GroupManagerList[id]->GetButton()->GetLabel().Cmp( + _("-")) == 0) { - this->m_BCPanel->m_GroupManagerList[ id ]->GetButton( )->SetLabel( - _( "+" ) ); - this->m_BCPanel->m_GroupManagerList[ id ]->HideSubPanel( true ); - }//fi esle - this->m_BCPanel->FitSizer( ); - }//yrt - catch ( const std::exception& e ) + this->m_BCPanel->m_GroupManagerList[id]->GetButton()->SetLabel( + _("+")); + this->m_BCPanel->m_GroupManagerList[id]->HideSubPanel(true); + } //fi esle + this->m_BCPanel->FitSizer(); + } //yrt + catch (const std::exception& e) { std::cerr - << "ButtonContainerController::ButtonExpEvent( wxCommandEvent& event ) exception: " - << e.what( ) << std::endl; - }//hctac + << "ButtonContainerController::ButtonExpEvent( wxCommandEvent& event ) exception: " + << e.what() << std::endl; + } //hctac } // ---------------------------------------------------------------------------------- - void - ButtonContainerController::ButtonEvent( wxCommandEvent& event ) + void ButtonContainerController::ButtonEvent(wxCommandEvent& event) { - std::cout<< "MLER | ButtonContainerController:: ButtonEvent( wxCommandEvent& event )" << std::endl; try { - for( ButtonGroupList::iterator it = - this->m_BCPanel->m_ButtonGroupList.begin( ); it - != this->m_BCPanel->m_ButtonGroupList.end( ); ++it ) + for (ButtonGroupList::iterator it = + this->m_BCPanel->m_ButtonGroupList.begin(); + it != this->m_BCPanel->m_ButtonGroupList.end(); ++it) { - if ( ( *it )->GetButton( event.GetId( ) ) != NULL ) + if ((*it)->GetButton(event.GetId()) != NULL) { - ( *it )->GetButton( event.GetId( ) )->Execute( ); - }//fi - }//rof - }//yrt - catch ( const std::exception& e ) + (*it)->GetButton(event.GetId())->Execute(); + } //fi + } //rof + } //yrt + catch (const std::exception& e) { std::cerr - << "ButtonContainerController::ButtonEvent( wxCommandEvent& event ) exception: " - << e.what( ) << std::endl; - }//hctac + << "ButtonContainerController::ButtonEvent( wxCommandEvent& event ) exception: " + << e.what() << std::endl; + } //hctac } // ---------------------------------------------------------------------------------- - }//ecapsename -}//ecapsename +} //ecapsename diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/buttonGroupFactory.cxx b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/buttonGroupFactory.cxx index eb29cf0..e871e85 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/buttonGroupFactory.cxx +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/buttonGroupFactory.cxx @@ -39,7 +39,6 @@ namespace creaButtonContainer // ---------------------------------------------------------------------------------- ButtonGroupFactory::ButtonGroupFactory( ) { - std::cout<< "MLER | ButtonGroupFactory::ButtonGroupFactory( )" << std::endl; } // ---------------------------------------------------------------------------------- ButtonGroupFactory::~ButtonGroupFactory( ) @@ -52,7 +51,6 @@ namespace creaButtonContainer ButtonGroupContainer groupView; try { - std::cout<< "MLER | ButtonGroupFactory::CreateButtonGroupContainer()" << std::endl; ButtonGroupMap map = settings->GetButtonGroupContainer( ); for( ButtonGroupMap::iterator it = map.begin( ); it != map.end( ); ++it ) { @@ -77,7 +75,6 @@ namespace creaButtonContainer { ButtonContainer buttonList; - std::cout<< "MLER | ButtonGroupFactory::GetButtons()" << std::endl; try { for( ButtonList::iterator it = buttonModel.begin( ); it diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/buttonGroupFactory.h b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/buttonGroupFactory.h index a349df6..bafea13 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/buttonGroupFactory.h +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/buttonGroupFactory.h @@ -1,27 +1,27 @@ /*# --------------------------------------------------------------------- -# -# 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. -# ------------------------------------------------------------------------ */ + # + # 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. + # ------------------------------------------------------------------------ */ /*! * @file buttonGroupFactory.h @@ -79,26 +79,26 @@ namespace creaButtonContainer /*! @typedef std::list< ButtonGroup* > ButtonGroupContainer; * @brief Defines the ButtonGroupContainer type. */ - typedef std::list< ButtonGroup* > ButtonGroupContainer; + typedef std::list ButtonGroupContainer; // ---------------------------------------------------------------------------------- /*! @typedef std::map< long, Button* > ButtonContainer; * @brief Defines the ButtonContainer type. */ - typedef std::map< long, Button* > ButtonContainer; + typedef std::map ButtonContainer; // ---------------------------------------------------------------------------------- //end of typedef definition public: /*! @fn ButtonGroupFactory::ButtonGroupFactory( ); * @brief This is the default constructor. */ - ButtonGroupFactory( ); + ButtonGroupFactory(); // ------------------------------------------------------------------------------- /*! @fn virtual ButtonGroupFactory::~ButtonGroupFactory( ); * @brief This is the destructor. */ virtual - ~ButtonGroupFactory( ); - + ~ButtonGroupFactory(); + /*! @fn ButtonGroupContainer ButtonGroupFactory::CreateButtonGroupContainer( wxWindow* parent, ButtonGroupModel* settings ); * @brief This method creates the ButtonGroupContainer. * @param parent the wxWindow* parent to be attached. @@ -107,10 +107,9 @@ namespace creaButtonContainer * @return ButtonGroupContainer The wx button group container. */ ButtonGroupContainer - CreateButtonGroupContainer( wxWindow* parent, - ButtonGroupModel* settings ); + CreateButtonGroupContainer(wxWindow* parent, + ButtonGroupModel* settings); private: - /*! @fn ButtonContainer ButtonGroupFactory::GetButtons( wxWindow* parent, ButtonList buttonModel ); * @brief This method creates a wx button container for a group. @@ -120,9 +119,9 @@ namespace creaButtonContainer * @return ButtonContainer The wx button container. */ ButtonContainer - GetButtons( wxWindow* parent, ButtonList buttonModel ); + GetButtons(wxWindow* parent, ButtonList buttonModel); }; - }//ecapseman -}//ecapseman + } //ecapseman +} //ecapseman #endif // CARTOBUTTONFACTORY_H diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/containerSettings.cxx b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/containerSettings.cxx index 45d2932..0b6b21c 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/containerSettings.cxx +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/containerSettings.cxx @@ -1,27 +1,27 @@ /*# --------------------------------------------------------------------- -# -# 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. -# ------------------------------------------------------------------------ */ + # + # 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. + # ------------------------------------------------------------------------ */ /*! * @file containerSettings.cxx @@ -37,134 +37,118 @@ namespace creaButtonContainer namespace model { // ---------------------------------------------------------------------------------- - ContainerSettings::ContainerSettings( ) + ContainerSettings::ContainerSettings() { } // ---------------------------------------------------------------------------------- - ContainerSettings::~ContainerSettings( ) + ContainerSettings::~ContainerSettings() { } - + // ---------------------------------------------------------------------------------- - ButtonGroupMap - ContainerSettings::GetButtonGroupContainer( ) + ButtonGroupMap ContainerSettings::GetButtonGroupContainer() { - std::cout<< "MLER | ContainerSettings::GetButtonGroupContainer( )" << std::endl; - return ( this->m_ButtonGroupContainer ); + return (this->m_ButtonGroupContainer); } // ---------------------------------------------------------------------------------- - KeyMapList - ContainerSettings::GetGroupNameList( ) + KeyMapList ContainerSettings::GetGroupNameList() { - std::cout<< "MLER | ContainerSettings::GetGroupNameList( )" << std::endl; - return ( this->m_GroupNameList ); + return (this->m_GroupNameList); } - + // ---------------------------------------------------------------------------------- - void - ContainerSettings::SetButtonGroupContainer(ButtonGroupMap bgContainer) + void ContainerSettings::SetButtonGroupContainer(ButtonGroupMap bgContainer) { - std::cout<< "MLER | ContainerSettings:: SetButtonGroupContainer(ButtonGroupMap bgContainer)" << std::endl; this->m_ButtonGroupContainer = bgContainer; } // ---------------------------------------------------------------------------------- - void - ContainerSettings::SetGroupNameList( KeyMapList gNameList ) + void ContainerSettings::SetGroupNameList(KeyMapList gNameList) { - std::cout<< "MLER | ContainerSettings::SetGroupNameList" << std::endl; this->m_GroupNameList = gNameList; } - - // ---------------------------------------------------------------------------------- - + // ---------------------------------------------------------------------------------- - void - ContainerSettings::AddButton( const StringType & groupName, - const StringType &buttonName, const wxBitmap &icon, - const StringType &buttonDescription, FunctionEventType event ) + void ContainerSettings::AddButton(const StringType & groupName, + const StringType &buttonName, const wxBitmap &icon, + const StringType &buttonDescription, FunctionEventType event) { - std::cout<< "MLER | ContainerSettings::AddButton( const StringType & groupName," << std::endl; - ButtonPair* pair = new ButtonPair( - new ButtonInfo( buttonName, icon ), - new ButtonAction( buttonDescription, event ) ); + ButtonPair* pair = new ButtonPair(new ButtonInfo(buttonName, icon), + new ButtonAction(buttonDescription, event)); try { - for( KeyMapList::iterator it = this->m_GroupNameList.begin( ); it - != this->m_GroupNameList.end( ); ++it ) + for (KeyMapList::iterator it = this->m_GroupNameList.begin(); + it != this->m_GroupNameList.end(); ++it) { - if ( ( *it ).compare( groupName ) == 0 ) + if ((*it).compare(groupName) == 0) { - std::cout<<"MLER ContainerSettings // AddButton : it "<<*it <m_ButtonGroupContainer[ groupName ].push_back( pair ); + this->m_ButtonGroupContainer[groupName].push_back(pair); return; - }//fi - }//rof - this->m_GroupNameList.push_back( groupName ); - this->m_ButtonGroupContainer[ groupName ].push_back( pair ); - }//yrt - catch ( const std::exception& e ) + } //fi + } //rof + this->m_GroupNameList.push_back(groupName); + this->m_ButtonGroupContainer[groupName].push_back(pair); + } //yrt + catch (const std::exception& e) { std::cerr - << "ContainerSettings::AddButton( const std::string & groupName," - << "const std::string buttonName, const std::string iconpath," - << "const std::string buttonDescription, FunctionEventType event ) exception: " - << e.what( ) << std::endl; - }//hctac + << "ContainerSettings::AddButton( const std::string & groupName," + << "const std::string buttonName, const std::string iconpath," + << "const std::string buttonDescription, FunctionEventType event ) exception: " + << e.what() << std::endl; + } //hctac } // ---------------------------------------------------------------------------------- - void - ContainerSettings::AddButton( BCSettingsStruct* info ) + void ContainerSettings::AddButton(BCSettingsStruct* info) { - std::cout<< "MLER | ContainerSettings::AddButton( BCSettingsStruct* info )" << std::endl; + ButtonPair* pair = new ButtonPair( - new ButtonInfo( info->buttonName, info->icon ), - new ButtonAction( info->buttonDescription, info->eventFunction ) ); + new ButtonInfo(info->buttonName, info->icon), + new ButtonAction(info->buttonDescription, info->eventFunction)); try { - for( KeyMapList::iterator it = this->m_GroupNameList.begin( ); it - != this->m_GroupNameList.end( ); ++it ) + for (KeyMapList::iterator it = this->m_GroupNameList.begin(); + it != this->m_GroupNameList.end(); ++it) { - if ( ( *it ).compare( info->groupName ) == 0 ) + if ((*it).compare(info->groupName) == 0) { - this->m_ButtonGroupContainer[ info->groupName ].push_back( pair ); + this->m_ButtonGroupContainer[info->groupName].push_back(pair); return; - }//fi - }//rof - this->m_GroupNameList.push_back( info->groupName ); - this->m_ButtonGroupContainer[ info->groupName ].push_back( pair ); - }//yrt - catch ( const std::exception& e ) + } //fi + } //rof + this->m_GroupNameList.push_back(info->groupName); + this->m_ButtonGroupContainer[info->groupName].push_back(pair); + } //yrt + catch (const std::exception& e) { std::cerr - << "void ContainerSettings::AddButton( BCSettingsStruct* info ) " - << "exception: " << e.what( ) << std::endl; - }//hctac + << "void ContainerSettings::AddButton( BCSettingsStruct* info ) " + << "exception: " << e.what() << std::endl; + } //hctac } // ---------------------------------------------------------------------------------- - void - ContainerSettings::AddButtons( BCStructVectorType infoList ) + void ContainerSettings::AddButtons(BCStructVectorType infoList) { - std::cout<< "MLER | ContainerSettings::AddButtons( BCStructVectorType infoList )" << std::endl; + try { - for( BCStructVectorType::iterator it = infoList.begin( ); it - != infoList.end( ); ++it ) + for (BCStructVectorType::iterator it = infoList.begin(); + it != infoList.end(); ++it) { - this->AddButton( *it ); - }//rof - }//yrt - catch ( const std::exception& e ) + this->AddButton(*it); + } //rof + } //yrt + catch (const std::exception& e) { std::cerr - << "ContainerSettings::AddButtons( BCStructVectorType infoList ) " - << "exception: " << e.what( ) << std::endl; - }//hctac + << "ContainerSettings::AddButtons( BCStructVectorType infoList ) " + << "exception: " << e.what() << std::endl; + } //hctac } // ---------------------------------------------------------------------------------- }//ecapseman -}//ecapseman +} //ecapseman diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/containerSettings.h b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/containerSettings.h index 05c326f..2e359a2 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/containerSettings.h +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/containerSettings.h @@ -35,7 +35,6 @@ #include #include -//EED-MLER #include #include "structBCSettings.h" #include "system.h" @@ -160,7 +159,6 @@ namespace creaButtonContainer ButtonGroupMap m_ButtonGroupContainer; //! - TConcreteFunctor< TClass >::TConcreteFunctor( TClass* _pt2Object, void - (TClass::*_fpt)( const ButtonIDType &buttonName ) ) - { - this->pt2Object = _pt2Object; - this->fpt = _fpt; - } - // ------------------------------------------------------------------------------- - // override operator "()" // execute member functions - template< typename TClass > - void - TConcreteFunctor< TClass >::operator()( const ButtonIDType &buttonName ) - {std::cout << "MLER - TConcreteFunctor< TClass >::operator():" << buttonName << std::endl; - try - { - ( *pt2Object.*fpt )( buttonName ); - }//yrt - catch ( const std::exception& e ) - { - std::cerr<< "TConcreteFunctor< TClass >::operator()( const ButtonIDType &buttonName )" - <<" exception: " << e.what( ) << std::endl; - }//hctac - } - // ------------------------------------------------------------------------------- - // override function "Call" // execute member function - template< typename TClass > - void - TConcreteFunctor< TClass >::Call( const ButtonIDType &buttonName ) - { - std::cout << "MLER - TConcreteFunctor< TClass >::Call " << buttonName << std::endl; - try - { - ( *pt2Object.*fpt )( buttonName ); - }//yrt - catch ( const std::exception& e ) - { - std::cerr<< "TConcreteFunctor< TClass >::Call( const ButtonIDType &buttonName )" - <<" exception: " << e.what( ) << std::endl; - }//hctac - } - }//ecapseman -}//ecapseman + namespace model + { + // constructor - takes pointer to an object and pointer to a member and stores + // them in two private variables + // ------------------------------------------------------------------------------- + template + TConcreteFunctor::TConcreteFunctor(TClass* _pt2Object, + void (TClass::*_fpt)(const ButtonIDType &buttonName)) + { + this->pt2Object = _pt2Object; + this->fpt = _fpt; + } + // ------------------------------------------------------------------------------- + // override operator "()" // execute member functions + template + void TConcreteFunctor::operator()(const ButtonIDType &buttonName) + { + try + { + (*pt2Object.*fpt)(buttonName); + } //yrt + catch (const std::exception& e) + { + std::cerr + << "TConcreteFunctor< TClass >::operator()( const ButtonIDType &buttonName )" + << " exception: " << e.what() << std::endl; + } //hctac + } + // ------------------------------------------------------------------------------- + // override function "Call" // execute member function + template + void TConcreteFunctor::Call(const ButtonIDType &buttonName) + { + try + { + (*pt2Object.*fpt)(buttonName); + } //yrt + catch (const std::exception& e) + { + std::cerr + << "TConcreteFunctor< TClass >::Call( const ButtonIDType &buttonName )" + << " exception: " << e.what() << std::endl; + } //hctac + } + } //ecapseman +} //ecapseman diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/listConfig.cxx b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/listConfig.cxx deleted file mode 100644 index b96741c..0000000 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/listConfig.cxx +++ /dev/null @@ -1,97 +0,0 @@ -/*# --------------------------------------------------------------------- -# -# 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 "listConfig.h" - -namespace creaButtonContainer -{ - namespace model - { - - ListConfig::ListConfig(ItemsMap items) - { - m_itemsMap = items; - - } - - ListConfig::~ListConfig() - { - - } - - ListConfig::ItemsMap - ListConfig::AddFinalItems(std::string name) - { - std::cout<< "MLER | ListConfig::AddFinalItems(std::string name)" << std::endl; - - ItemsMap::iterator it1 = m_finalItems.find(name); - - if(it1 == m_finalItems.end()) - { - for(ItemsMap::iterator it=this->m_itemsMap.begin(); it!=this->m_itemsMap.end(); ++it) - { - if((it->first).compare(name) != 0 ) - { - std::cout << "Item en finalItems: "<< name << std::endl; - m_finalItems[name] = it->second; - } - } - } - std::cout << "FinalItems Add" << m_finalItems.size() << std::endl; - - return (m_finalItems); - } - - ListConfig::ItemsMap - ListConfig::DelFinalItems(std::string name) - { - std::cout<< "MLER | ListConfig::DelFinalItems(std::string name)" << std::endl; - ItemsMap::iterator it1; - - //if(m_finalItems.empty()) - std::cout<<"name item -----test A"<< name <m_finalItems.begin(); it!=this->m_finalItems.end();++it) - { - if((it->first).compare(name) == 0 ) - { - std::cout << "Item a borrar: "<< name << std::endl; - - it1 = m_finalItems.find(name); - m_finalItems.erase(it1); - - } - } - } - - std::cout<< "si borre tengo --- test 2 "<< m_finalItems.size() << std::endl; - - return (m_finalItems); - } - - }//namespace model -}//namespace creaButtonContainer diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/listConfig.h b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/listConfig.h deleted file mode 100644 index 0c8edcc..0000000 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/listConfig.h +++ /dev/null @@ -1,76 +0,0 @@ -/*# --------------------------------------------------------------------- -# -# 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 LISTCONFIG_H -#define LISTCONFIG_H - -#include - -#include -#include -#include - -//#include "listWx.h" -//#include "listConfigPanel.h" -#include "functor.h" - -namespace creaButtonContainer -{ - namespace model - { - class ListConfig - { - public: - //typedef creaButtonContainer::model::TFunctor TFunctor; - typedef std::map ItemsMap; - - - - //ListConfig(ItemsMap items, TFunctor* functor); - ListConfig(ItemsMap items); - ~ListConfig(); - - //ItemsMap - //GetItemsMap(); - - ItemsMap - AddFinalItems(std::string name); - - ItemsMap - DelFinalItems(std::string name); - - private: - - ItemsMap m_itemsMap; - TFunctor* functor; - ItemsMap m_finalItems; - - - }; - - } -} - -#endif // LISTCONFIG_H diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/listGroupFactory.cxx b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/listGroupFactory.cxx deleted file mode 100644 index 91df61b..0000000 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/listGroupFactory.cxx +++ /dev/null @@ -1,94 +0,0 @@ -/*# --------------------------------------------------------------------- -# -# 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 "listGroupFactory.h" - -namespace creaButtonContainer -{ - namespace model - { - // ---------------------------------------------------------------------------------- - ListGroupFactory::ListGroupFactory( ) - { - } - // ---------------------------------------------------------------------------------- - ListGroupFactory::~ListGroupFactory( ) - { - } - - // ---------------------------------------------------------------------------------- - ListGroupFactory::ButtonGroupContainer ListGroupFactory::CreateButtonGroupContainer( wxWindow* parent, ButtonGroupModel* settings ) - { - ButtonGroupContainer groupView; - try - { - std::cout<< std::endl << " MLER listGroupFactory.cxx / CreateButtonGroupContainer(): " << std::endl; - ButtonGroupMap map = settings->GetButtonGroupContainer( ); - for( ButtonGroupMap::iterator it = map.begin( ); it != map.end( ); ++it ) - { - wxString groupNameAux( ( *it ).first.c_str( ), wxConvUTF8 ); - wxStaticText* wxGroupName = new wxStaticText( parent, -1, groupNameAux, wxDefaultPosition, wxDefaultSize, 0, _T("GroupText") ); - ButtonGroup* group = new ButtonGroup( wxGroupName, this->GetButtons( parent, ( *it ).second ) ); - groupView.push_back( group ); - }//rof - }//yrt - catch ( const std::exception& e ) - { - std::cerr - << "ButtonGroupFactory::CreateButtonGroupContainer( wxWindow* parent, ButtonGroupModel* settings )" - << " exception: " << e.what( ) << std::endl; - }//chtac - return ( groupView ); - } - - - // ---------------------------------------------------------------------------------- - ListGroupFactory::ButtonContainer ListGroupFactory::GetButtons( wxWindow* parent, ButtonList buttonModel ) - { - ButtonContainer buttonList; - try - { - for( ButtonList::iterator it = buttonModel.begin( ); it - != buttonModel.end( ); ++it ) - { - long id = wxNewId( ); - buttonList[ id ] = new Button( parent, id, *it ); - } - } - catch ( const std::exception& e ) - { - std::cerr - << "ButtonGroupFactory::GetButtons( wxWindow* parent, ButtonList buttonModel )" - << "exception: " << e.what( ) << std::endl; - }//chtac - - return ( buttonList ); // JPR - } - // ---------------------------------------------------------------------------------- - }//ecapseman -}//ecapseman*/ - - diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/listGroupFactory.h b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/listGroupFactory.h deleted file mode 100644 index aece2e4..0000000 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/listGroupFactory.h +++ /dev/null @@ -1,82 +0,0 @@ -/*# --------------------------------------------------------------------- -# -# 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 LISTGROUPFACTORY_H -#define LISTGROUPFACTORY_H - -#include - -#include "system.h" -#include "button.h" -#include "listGroup.h" -#include "containerSettings.h" - - -namespace creaButtonContainer -{ - - namespace model - { - - class ListGroupFactory - { - public: - - typedef creaButtonContainer::view::ListWx Button; - // ---------------------------------------------------------------------------------- - - typedef creaButtonContainer::view::ListGroup ButtonGroup; - // ---------------------------------------------------------------------------------- - - typedef creaButtonContainer::model::ContainerSettings ButtonGroupModel; - // ---------------------------------------------------------------------------------- - - typedef std::list< ButtonGroup* > ButtonGroupContainer; - // ---------------------------------------------------------------------------------- - - typedef std::map< long, Button* > ButtonContainer; - // ---------------------------------------------------------------------------------- - //end of typedef definition - public: - - ListGroupFactory( ); - // ------------------------------------------------------------------------------- - - virtual - ~ListGroupFactory( ); - - ButtonGroupContainer - CreateButtonGroupContainer( wxWindow* parent, - ButtonGroupModel* settings ); - private: - - - ButtonContainer - GetButtons( wxWindow* parent, ButtonList buttonModel ); - }; - }//ecapseman -}//ecapseman - -#endif // LISTGROUPFACTORY_H*/ diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/structBCSettings.h b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/structBCSettings.h index de3a304..033f29b 100755 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/structBCSettings.h +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/structBCSettings.h @@ -1,27 +1,27 @@ /*# --------------------------------------------------------------------- -# -# 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. -# ------------------------------------------------------------------------ */ + # + # 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. + # ------------------------------------------------------------------------ */ /*! * @file structBCSettings.h @@ -56,11 +56,8 @@ namespace creaButtonContainer StringType iconpath; //! - StringType itemsList; }; } //ecapseman } //ecapseman diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/view/button.cxx b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/view/button.cxx index 7c81882..69d72c1 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/view/button.cxx +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/view/button.cxx @@ -39,8 +39,6 @@ namespace creaButtonContainer // ---------------------------------------------------------------------------------- Button::Button( wxWindow* parent, long id, ButtonPair* pair ) { - std::cout<< "MLER | Button::Button()" << std::endl; - this->m_ButtonPair = pair; StringType wXbuttonName = this->m_ButtonPair->first->first; BitmapType wXicon = this->m_ButtonPair->first->second; @@ -63,7 +61,6 @@ namespace creaButtonContainer StringType Button::GetButtonName( ) { - std::cout<< "MLER | Button::GetButtonName( )" << std::endl; return ( this->m_ButtonPair->first->first ); } @@ -71,7 +68,6 @@ namespace creaButtonContainer BitmapType Button::GetIcon( ) { - std::cout<< "MLER | Button::GetIcon( )" << std::endl; return ( this->m_ButtonPair->first->second ); } @@ -86,7 +82,6 @@ namespace creaButtonContainer StringType Button::GetDescription( ) { - std::cout<< "MLER | Button::GetDescription( )" << std::endl; return ( this->m_ButtonPair->second->first ); } @@ -94,14 +89,12 @@ namespace creaButtonContainer void Button::Execute( ) { - std::cout<< "MLER | Button::Execute( )" << std::endl; try { TFunctor* vTable[ ] = { this->m_ButtonPair->second->second }; vTable[ 0 ]->Call( this->m_ButtonPair->first->first ); - std::cout<< "Call Button: " << this->m_ButtonPair->first->first <SetButtonGroupContainer( factory.CreateButtonGroupContainer( this, settings ) ); - this->PanelInit( ); this->m_ButtonCController = new BCController( this ); this->m_ButtonCController->AddEvents( ); this->SetEventHandler( this->m_ButtonCController ); } - + // ---------------------------------------------------------------------------------- - ButtonContainerPanel::~ButtonContainerPanel( ) + ButtonContainerPanel::~ButtonContainerPanel() { } - + // ---------------------------------------------------------------------------------- - void ButtonContainerPanel::SetButtonGroupContainer(ButtonGroupList groupContainer ) + void ButtonContainerPanel::SetButtonGroupContainer( + ButtonGroupList groupContainer) { - std::cout<< "MLER | ButtonContainerPanel::SetButtonGroupContainer()" << std::endl; + this->m_ButtonGroupList = groupContainer; } + // ---------------------------------------------------------------------------------- - /*void ButtonContainerPanel::SetListGroupContainer(ListGroupList groupContainer ) - { - this->m_ListGroupList = groupContainer; - }*/ - - // ---------------------------------------------------------------------------------- - void ButtonContainerPanel::PanelInit( ) + void ButtonContainerPanel::PanelInit() { - std::cout<< "MLER | ButtonContainerPanel::PanelInit( )" << std::endl; try { - + // EED 20/01/2012 flag 01 - this->m_Sizer = new Sizer( 0, 1, 0, 0 ); + this->m_Sizer = new Sizer(0, 1, 0, 0); - for( ButtonGroupList::iterator it = this->m_ButtonGroupList.begin( ); it != this->m_ButtonGroupList.end( ); ++it ) - { - GroupManager* manager = new GroupManager( this, *it ); - this->m_GroupManagerList[ manager->GetButtonID( ) ] = manager; - this->m_Sizer->Add( manager, 1, wxALL | wxALIGN_LEFT | wxALIGN_TOP, 5 ); - } + for (ButtonGroupList::iterator it = this->m_ButtonGroupList.begin(); + it != this->m_ButtonGroupList.end(); ++it) + { + GroupManager* manager = new GroupManager(this, *it); + this->m_GroupManagerList[manager->GetButtonID()] = manager; + this->m_Sizer->Add(manager, 1, wxALL | wxALIGN_LEFT | wxALIGN_TOP, 5); + } - this->SetSizer( this->m_Sizer ); - this->Layout( ); - this->FitSizer( ); - }//yrt - catch ( const std::exception& e ) + this->SetSizer(this->m_Sizer); + this->Layout(); + this->FitSizer(); + } //yrt + catch (const std::exception& e) { std::cerr << "ButtonContainerPanel::PanelInit( ) " << "exception: " - << e.what( ) << std::endl; - }//hctac + << e.what() << std::endl; + } //hctac } - + // ---------------------------------------------------------------------------------- - void ButtonContainerPanel::FitSizer( ) + void ButtonContainerPanel::FitSizer() { - std::cout<< "MLER | ButtonContainerPanel::FitSizer( )" << std::endl; - this->m_Sizer->Fit( this ); - this->m_Sizer->FitInside( this ); - this->SetScrollRate( 20, 20 ); - this->m_Sizer->SetSizeHints( this ); + this->m_Sizer->Fit(this); + this->m_Sizer->FitInside(this); + this->SetScrollRate(20, 20); + this->m_Sizer->SetSizeHints(this); } // ---------------------------------------------------------------------------------- }//ecapseman -}//ecapseman +} //ecapseman diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/view/buttonContainerPanel.h b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/view/buttonContainerPanel.h index f16da5e..86dd513 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/view/buttonContainerPanel.h +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/view/buttonContainerPanel.h @@ -1,27 +1,27 @@ /*# --------------------------------------------------------------------- -# -# 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. -# ------------------------------------------------------------------------ */ + # + # 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. + # ------------------------------------------------------------------------ */ /*! * @file buttonContainerController.h @@ -46,8 +46,6 @@ #include "buttonGroupFactory.h" #include "containerSettings.h" #include "buttonContainerController.h" -//EED-MLER #include "listGroup.h" -//EED-MLER #include "listGroupFactory.h" /*! @namespace * @brief Contains the creaButtonContainer library included in creaMaracasVisu. @@ -80,7 +78,7 @@ namespace creaButtonContainer * @bug The scrolled it doesn't work! (to be changed soon) * @see wxScrolledWindow */ - class ButtonContainerPanel : public wxScrolledWindow + class ButtonContainerPanel: public wxScrolledWindow { public: //typedef definition @@ -98,12 +96,12 @@ namespace creaButtonContainer /*! @typedef std::list< ButtonGroup* > ButtonGroupList; * @brief Defines the ButtonGroupList type. */ - typedef std::list< ButtonGroup* > ButtonGroupList; + typedef std::list ButtonGroupList; // ---------------------------------------------------------------------------------- /*! @typedef std::map< long, GroupManager* > GroupManagerList; * @brief Defines the GroupManagerList type. */ - typedef std::map< long, GroupManager* > GroupManagerList; + typedef std::map GroupManagerList; // ---------------------------------------------------------------------------------- /*! @typedef wxFlexGridSizer Sizer; * @brief Defines the Sizer type. @@ -113,35 +111,22 @@ namespace creaButtonContainer /*! @typedef std::list< long > KeyList; * @brief Defines the KeyList type. */ - typedef std::list< long > KeyList; + typedef std::list KeyList; // ---------------------------------------------------------------------------------- /*! @typedef creaButtonContainer::model::ContainerSettings ButtonGroupSettings; * @brief Defines the ButtonGroupSettings type. */ - typedef creaButtonContainer::model::ContainerSettings - ButtonGroupSettings; + typedef creaButtonContainer::model::ContainerSettings ButtonGroupSettings; // ---------------------------------------------------------------------------------- /*! @typedef creaButtonContainer::model::ButtonGroupFactory ButtonGroupFactory; * @brief Defines the ButtonGroupFactory type. */ - typedef creaButtonContainer::model::ButtonGroupFactory - ButtonGroupFactory; + typedef creaButtonContainer::model::ButtonGroupFactory ButtonGroupFactory; // ---------------------------------------------------------------------------------- /*! creaButtonContainer::controller::ButtonContainerController BCController; * @brief Defines the BCController type. */ - typedef creaButtonContainer::controller::ButtonContainerController - BCController; - - - //typedef creaButtonContainer::model::ListGroupFactory ListGroupFactory; - - //typedef creaButtonContainer::view::ListGroup ListGroup; - - //typedef std::list< ListGroup* > ListGroupList; - - //typedef creaButtonContainer::model::ListGroupFactory ListGroupFactory; - + typedef creaButtonContainer::controller::ButtonContainerController BCController; // ---------------------------------------------------------------------------------- //end of typedef definition @@ -151,27 +136,27 @@ namespace creaButtonContainer * @param parent wxWindow pointer to parent. * @param settings ButtonGroupSettings Pointer to button container settings. */ - ButtonContainerPanel( wxWindow* parent, ButtonGroupSettings* settings); + ButtonContainerPanel(wxWindow* parent, ButtonGroupSettings* settings); // ---------------------------------------------------------------------------------- /*! @fn ~ButtonContainerPanel( ); * @brief This is the destructor. */ virtual - ~ButtonContainerPanel( ); + ~ButtonContainerPanel(); // ---------------------------------------------------------------------------------- /*! @fn SetGroupContainer( ButtonGroupList groupContainer ); * @brief This method sets the settings to the container. * @param groupContainer */ void - SetButtonGroupContainer( ButtonGroupList groupContainer ); + SetButtonGroupContainer(ButtonGroupList groupContainer); // ---------------------------------------------------------------------------------- /*! @fn PanelInit( ); * This method initializes the panel. * @exception std::bad_alloc */ void - PanelInit( ); + PanelInit(); // ---------------------------------------------------------------------------------- //void @@ -181,22 +166,20 @@ namespace creaButtonContainer * This method fits and organizes the sizer. */ void - FitSizer( ); + FitSizer(); // ---------------------------------------------------------------------------------- public: friend class creaButtonContainer::controller::ButtonContainerController; private: - GroupManagerList m_GroupManagerList; //!m_GroupName = groupName; this->m_Buttons = cartoButtons; } - + // ---------------------------------------------------------------------------------- - ButtonGroup::~ButtonGroup( ) + ButtonGroup::~ButtonGroup() { } - + // ---------------------------------------------------------------------------------- - ButtonGroup::ButtonContainer - ButtonGroup::GetButtonContainer( ) + ButtonGroup::ButtonContainer ButtonGroup::GetButtonContainer() { - std::cout<< "MLER | ButtonGroup::GetButtonContainer( )" << std::endl; - return ( this->m_Buttons ); + return (this->m_Buttons); } - + // ---------------------------------------------------------------------------------- wxStaticText* - ButtonGroup::GetGroupName( ) + ButtonGroup::GetGroupName() { - return ( this->m_GroupName ); + return (this->m_GroupName); } - + // ---------------------------------------------------------------------------------- - ButtonGroup::IdButtonContainer - ButtonGroup::GetButtonIdContainer( ) + ButtonGroup::IdButtonContainer ButtonGroup::GetButtonIdContainer() { - std::cout<< "MLER | ButtonGroup::GetButtonIdContainer( )" << std::endl; IdButtonContainer idContainer; try { - for( ButtonContainer::iterator it = this->m_Buttons.begin( ); it - != this->m_Buttons.end( ); ++it ) + for (ButtonContainer::iterator it = this->m_Buttons.begin(); + it != this->m_Buttons.end(); ++it) { - idContainer.push_back( ( *it ).first ); - }//rof - }//yrt - catch ( std::exception& e ) + idContainer.push_back((*it).first); + } //rof + } //yrt + catch (std::exception& e) { std::cerr << "ButtonGroup::GetButtonIdContainer( )" << "exception: " - << e.what( ) << std::endl; - }//hctac - return ( idContainer ); + << e.what() << std::endl; + } //hctac + return (idContainer); } - + // ---------------------------------------------------------------------------------- Button* - ButtonGroup::GetButton( long id ) + ButtonGroup::GetButton(long id) { - std::cout<< "MLER | ButtonGroup::GetButton( long id )" << std::endl; try { //return ( this->m_Buttons[ id ] ); // JPR - }//yrt - catch ( std::exception& e ) + } //yrt + catch (std::exception& e) { std::cerr << "ButtonGroup::GetButton( long id )" << "exception: " - << e.what( ) << std::endl; - }//hctac - return ( this->m_Buttons[ id ] );// JPR + << e.what() << std::endl; + } //hctac + return (this->m_Buttons[id]); // JPR } // ---------------------------------------------------------------------------------- }//ecapseman -}//ecapseman +} //ecapseman diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/view/buttonManager.cxx b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/view/buttonManager.cxx index 4454d0c..952cb65 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/view/buttonManager.cxx +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/view/buttonManager.cxx @@ -1,27 +1,27 @@ /*# --------------------------------------------------------------------- -# -# 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. -# ------------------------------------------------------------------------ */ + # + # 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. + # ------------------------------------------------------------------------ */ /*! * @file buttonManager.cxx @@ -37,121 +37,74 @@ namespace creaButtonContainer namespace view { // ---------------------------------------------------------------------------------- - ButtonManager::ButtonManager( ) : - wxFlexGridSizer( 0, 1, 0, 0 ) + ButtonManager::ButtonManager() + : wxFlexGridSizer(0, 1, 0, 0) { - std::cout<< "MLER | ButtonManager::ButtonManager( )" << std::endl; } - + //EED 20/01/2012 Flag03 // ---------------------------------------------------------------------------------- - ButtonManager::ButtonManager( ButtonGroup* buttonGroup ) : - wxFlexGridSizer( 0, 1, 0, 0 ) + ButtonManager::ButtonManager(ButtonGroup* buttonGroup) + : wxFlexGridSizer(0, 1, 0, 0) { try { - std::cout<< "MLER | ButtonManager::ButtonManager( ButtonGroup* buttonGroup )" << std::endl; - this->SetGroupName( buttonGroup->GetGroupName( ) ); - this->SetButtonManager( buttonGroup->GetButtonContainer( ) ); - }//yrt - catch ( const std::exception& e ) + this->SetGroupName(buttonGroup->GetGroupName()); + this->SetButtonManager(buttonGroup->GetButtonContainer()); + } //yrt + catch (const std::exception& e) { - std::cerr << "Button::Execute( ) exception: " << e.what( ) << std::endl; - }//hctac + std::cerr << "Button::Execute( ) exception: " << e.what() << std::endl; + } //hctac } + // ---------------------------------------------------------------------------------- - //MLER - /*ButtonManager::ButtonManager (ListGroup* buttonGroup): - wxFlexGridSizer( 0, 1, 0, 0 ) - { - try - { - std::cout << " MLER buttonManager.cxx / ButtonManager(ListGroup* buttonGroup) " << std::endl; - this->SetGroupName( buttonGroup->GetGroupName( ) ); - this->SetListManager(buttonGroup->GetButtonContainer( ) ); - }//yrt - catch ( const std::exception& e ) - { - std::cerr << "Button::Execute( ) exception: " << e.what( ) << std::endl; - }//hctac - }*/ - // ---------------------------------------------------------------------------------- - ButtonManager::~ButtonManager( ) + ButtonManager::~ButtonManager() { } - + // ---------------------------------------------------------------------------------- - void ButtonManager::SetGroupName( wxStaticText* groupName ) + void ButtonManager::SetGroupName(wxStaticText* groupName) { - std::cout<< "MLER | ButtonManager::SetGroupName( wxStaticText* groupName )" << std::endl; this->m_GroupName = groupName; - this->Add( this->m_GroupName, -1, wxALL | wxALIGN_LEFT | wxALIGN_TOP, 5 ); + this->Add(this->m_GroupName, -1, wxALL | wxALIGN_LEFT | wxALIGN_TOP, 5); } - + // ---------------------------------------------------------------------------------- - void ButtonManager::SetButtonManager( ButtonContainer buttonContainer ) + void ButtonManager::SetButtonManager(ButtonContainer buttonContainer) { - std::cout<< "MLER | ButtonManager::SetButtonManager( ButtonContainer buttonContainer )" << std::endl; try { - if ( this->m_GroupName != NULL ) + if (this->m_GroupName != NULL) { - this->m_GridSizer = new wxGridSizer( 0, 3, 0, 0 ); - for( ButtonContainer::iterator it = buttonContainer.begin( ); it!= buttonContainer.end( ); ++it ) + this->m_GridSizer = new wxGridSizer(0, 3, 0, 0); + for (ButtonContainer::iterator it = buttonContainer.begin(); + it != buttonContainer.end(); ++it) { - this->m_GridSizer->Add( ( *it ).second, -1, wxALL | wxALIGN_LEFT | wxALIGN_TOP, 5 ); + this->m_GridSizer->Add((*it).second, -1, + wxALL | wxALIGN_LEFT | wxALIGN_TOP, 5); } - this->Add( m_GridSizer, -1, wxALL | wxALIGN_LEFT | wxALIGN_TOP, 5 ); - }//fi - }//yrt - catch ( const std::exception& e ) + this->Add(m_GridSizer, -1, wxALL | wxALIGN_LEFT | wxALIGN_TOP, 5); + } //fi + } //yrt + catch (const std::exception& e) { std::cerr - << "ButtonManager::SetButtonManager( ButtonContainer buttonContainer )" - << "exception: " << e.what( ) << std::endl; - }//hctac + << "ButtonManager::SetButtonManager( ButtonContainer buttonContainer )" + << "exception: " << e.what() << std::endl; + } //hctac } // ---------------------------------------------------------------------------------- - /*void ButtonManager::SetListManager(ListContainer buttonContainer ) - { - try - { - if ( this->m_GroupName != NULL ) - { - this->m_GridSizer = new wxGridSizer( 0, 3, 0, 0 ); - for( ListContainer::iterator it = buttonContainer.begin( ); it!= buttonContainer.end( ); ++it ) - { - this->m_GridSizer->Add( ( *it ).second, -1, wxALL | wxALIGN_LEFT | wxALIGN_TOP, 5 ); - } - this->Add( m_GridSizer, -1, wxALL | wxALIGN_LEFT | wxALIGN_TOP, 5 ); - }//fi - }//yrt - catch ( const std::exception& e ) - { - std::cerr - << "ButtonManager::SetButtonManager( ButtonContainer buttonContainer )" - << "exception: " << e.what( ) << std::endl; - }//hctac - }*/ - // ---------------------------------------------------------------------------------- - - - - - void - ButtonManager::ShowButtonManager( ) + void ButtonManager::ShowButtonManager() { - std::cout<< "MLER | ButtonManager::ShowButtonManager( )" << std::endl; - this->Show( this->m_GridSizer, true, false ); + this->Show(this->m_GridSizer, true, false); } // ---------------------------------------------------------------------------------- - void - ButtonManager::HideButtonManager( ) + void ButtonManager::HideButtonManager() { - std::cout<< "MLER | ButtonManager::HideButtonManager( )" << std::endl; - this->Show( this->m_GridSizer, false, false ); + this->Show(this->m_GridSizer, false, false); } // ---------------------------------------------------------------------------------- }//ecapseman -}//ecapseman +} //ecapseman diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/view/buttonManager.h b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/view/buttonManager.h index 7edb9bc..57c105f 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/view/buttonManager.h +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/view/buttonManager.h @@ -1,27 +1,27 @@ /*# --------------------------------------------------------------------- -# -# 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. -# ------------------------------------------------------------------------ */ + # + # 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. + # ------------------------------------------------------------------------ */ /*! * @file buttonManager.h @@ -43,8 +43,6 @@ #include "button.h" #include "buttonGroup.h" -#include "listWx.h" -#include "listGroup.h" /*! @namespace * @brief Contains the creaButtonContainer library included in creaMaracasVisu. @@ -62,7 +60,7 @@ namespace creaButtonContainer * @details This class describes a wxFlexGridSizer with the button manager. * @see wxFlexGridSizer */ - class ButtonManager : public wxFlexGridSizer + class ButtonManager: public wxFlexGridSizer { public: //typedef definition. @@ -80,11 +78,8 @@ namespace creaButtonContainer /*! @typedef std::map< long, Button* > ButtonContainer; * @brief Defines the ButtonContainer type. */ - typedef std::map< long, Button* > ButtonContainer; + typedef std::map ButtonContainer; // ---------------------------------------------------------------------------------- - //MLER - //typedef creaButtonContainer::view::ListGroup ListGroup; - //typedef std::map ListContainer; //end of typedef definition. public: @@ -93,44 +88,42 @@ namespace creaButtonContainer * @brief This is the default constructor. * @exception std::bad_alloc */ - ButtonManager( ); + ButtonManager(); // ---------------------------------------------------------------------------------- /*! @fn ButtonManager( ButtonGroup* buttonGroup ); * @brief This is the parameterized constructor * @param buttonGroup The group of buttons. */ - ButtonManager( ButtonGroup* buttonGroup ); - // ---------------------------------------------------------------------------------- - //MLER - //ButtonManager (ListGroup* buttonGroup); + ButtonManager(ButtonGroup* buttonGroup); + // ---------------------------------------------------------------------------------- /*! @fn ~ButtonManager( ); * @brief This is the destructor. */ virtual - ~ButtonManager( ); + ~ButtonManager(); // ---------------------------------------------------------------------------------- /*! @fn SetGroupName( wxStaticText* groupName ); * @details Sets the groupName. * @param groupName */ void - SetGroupName( wxStaticText* groupName ); + SetGroupName(wxStaticText* groupName); // ---------------------------------------------------------------------------------- /*! @fn ShowButtonManager( ); * @brief This method shows the ButtonManager */ void - ShowButtonManager( ); + ShowButtonManager(); // ---------------------------------------------------------------------------------- /*! @fn HideButtonManager( ); * @brief This method hides the ButtonManager. * @exception std::bad_alloc */ void - HideButtonManager( ); + HideButtonManager(); // ---------------------------------------------------------------------------------- private: // ---------------------------------------------------------------------------------- @@ -139,19 +132,14 @@ namespace creaButtonContainer * @param buttonContainer */ void - SetButtonManager( ButtonContainer buttonContainer ); + SetButtonManager(ButtonContainer buttonContainer); // ---------------------------------------------------------------------------------- - //MLER - /*void - SetListManager( ListContainer buttonContainer );*/ - // ---------------------------------------------------------------------------------- - private: wxStaticText* m_GroupName; //!m_IDExpButton = wxNewId( ); - this->m_ExpansionButton = new ExpansionButton( parent, this->m_IDExpButton, _("-"), wxDefaultPosition, wxSize( 20, 20 ), 0, wxDefaultValidator, _T("EXPBUTTON") ); - this->Add( m_ExpansionButton, 1, wxALL | wxALIGN_LEFT | wxALIGN_TOP, 5 ); - this->m_ButtonManager = new ButtonManager( buttonGroup ); - this->Add( this->m_ButtonManager, 1, wxALL | wxALIGN_LEFT | wxALIGN_TOP, 5 ); + this->m_IDExpButton = wxNewId(); + this->m_ExpansionButton = new ExpansionButton(parent, this->m_IDExpButton, + _("-"), wxDefaultPosition, wxSize(20, 20), 0, wxDefaultValidator, + _T("EXPBUTTON")); + this->Add(m_ExpansionButton, 1, wxALL | wxALIGN_LEFT | wxALIGN_TOP, 5); + this->m_ButtonManager = new ButtonManager(buttonGroup); + this->Add(this->m_ButtonManager, 1, wxALL | wxALIGN_LEFT | wxALIGN_TOP, + 5); } - - /*GroupManager::GroupManager(wxWindow* parent, ListGroup* buttonGroup ): - wxFlexGridSizer( 1, 0, 0, 0 ) - { - std::cout << " MLER groupManager.cxx / GroupManager(ListGroup* buttonGroup) " << std::endl; - this->m_IDExpButton = wxNewId( ); - this->m_ExpansionButton = new ExpansionButton( parent, this->m_IDExpButton, _("-"), wxDefaultPosition, wxSize( 20, 20 ), 0, wxDefaultValidator, _T("EXPBUTTON") ); - this->Add( m_ExpansionButton, 1, wxALL | wxALIGN_LEFT | wxALIGN_TOP, 5 ); - this->m_ButtonManager = new ButtonManager( buttonGroup ); - this->Add( this->m_ButtonManager, 1, wxALL | wxALIGN_LEFT | wxALIGN_TOP, 5 ); - }//MLER*/ // ---------------------------------------------------------------------------------- - GroupManager::~GroupManager( ) + GroupManager::~GroupManager() { } - + // ---------------------------------------------------------------------------------- - long - GroupManager::GetButtonID( ) + long GroupManager::GetButtonID() { - std::cout<< "MLER | GroupManager::GetButtonID( )" << std::endl; - return ( this->m_IDExpButton ); + return (this->m_IDExpButton); } - + // ---------------------------------------------------------------------------------- GroupManager::ExpansionButton* - GroupManager::GetButton( ) + GroupManager::GetButton() { - std::cout<< "MLER | GroupManager::GetButton( )" << std::endl; - return ( this->m_ExpansionButton ); + return (this->m_ExpansionButton); } - + // ---------------------------------------------------------------------------------- ButtonManager* - GroupManager::GetButtonManager( ) + GroupManager::GetButtonManager() { - return ( this->m_ButtonManager ); + return (this->m_ButtonManager); } - + // ---------------------------------------------------------------------------------- - void - GroupManager::SetButtonID( long id ) + void GroupManager::SetButtonID(long id) { this->m_IDExpButton = id; } - + // ---------------------------------------------------------------------------------- - void - GroupManager::SetButton( ExpansionButton* button ) + void GroupManager::SetButton(ExpansionButton* button) { this->m_ExpansionButton = button; } - + // ---------------------------------------------------------------------------------- - void - GroupManager::SetButtonManager( ButtonManager* container ) + void GroupManager::SetButtonManager(ButtonManager* container) { this->m_ButtonManager = container; } - + // ---------------------------------------------------------------------------------- - void - GroupManager::HideSubPanel( bool hide ) + void GroupManager::HideSubPanel(bool hide) { - std::cout<< "MLER | GroupManager::HideSubPanel( bool hide )" << std::endl; - if ( hide == true ) + if (hide == true) { - this->m_ButtonManager->HideButtonManager( ); - }//fi + this->m_ButtonManager->HideButtonManager(); + } //fi else { - this->m_ButtonManager->ShowButtonManager( ); - }//esle + this->m_ButtonManager->ShowButtonManager(); + } //esle } // ---------------------------------------------------------------------------------- }//ecapseman -}//ecapseman +} //ecapseman diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/view/groupManager.h b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/view/groupManager.h index ab69ab4..7c9539d 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/view/groupManager.h +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/view/groupManager.h @@ -1,27 +1,27 @@ /*# --------------------------------------------------------------------- -# -# 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. -# ------------------------------------------------------------------------ */ + # + # 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. + # ------------------------------------------------------------------------ */ /*! * @file groupManager.h @@ -43,7 +43,6 @@ #include "buttonManager.h" #include "buttonGroup.h" -#include "listGroup.h" /*! @namespace * @brief Contains the creaButtonContainer library included in creaMaracasVisu. @@ -61,7 +60,7 @@ namespace creaButtonContainer * @details This class describes a wxFlexGridSizer with the group manager. * @see wxFlexGridSizer */ - class GroupManager : public wxFlexGridSizer + class GroupManager: public wxFlexGridSizer { public: //typedef definition @@ -76,8 +75,6 @@ namespace creaButtonContainer */ typedef wxButton ExpansionButton; // ---------------------------------------------------------------------------------- - //MLER - //typedef creaButtonContainer::view::ListGroup ListGroup; //end of typedef definition. public: @@ -87,75 +84,70 @@ namespace creaButtonContainer * @param parent The wxWindow* parent * @param buttonGroup The pointer to the ButtonGroup. */ - GroupManager( wxWindow* parent, ButtonGroup* buttonGroup ); + GroupManager(wxWindow* parent, ButtonGroup* buttonGroup); // ---------------------------------------------------------------------------------- - - //MLER - //GroupManager( wxWindow* parent, ListGroup* listGroup ); /*! @fn ~GroupManager( ); * @brief This is the destructor. - */ + */ virtual - ~GroupManager( ); + ~GroupManager(); // ---------------------------------------------------------------------------------- /*! @fn GetButtonID( ); * @brief This method returns the Button ID. * @return */ long - GetButtonID( ); + GetButtonID(); // ---------------------------------------------------------------------------------- /*! @fn GetButton( ); * @brief This method returns the expansion button. * @return */ ExpansionButton* - GetButton( ); + GetButton(); // ---------------------------------------------------------------------------------- /*! @fn GetButtonManager( ); * @brief This method returns the manager of the buttons. * @return */ ButtonManager* - GetButtonManager( ); + GetButtonManager(); // ---------------------------------------------------------------------------------- /*! @fn SetButtonID( long id ); * @brief This method sets the ID of the expansion button. * @param id */ void - SetButtonID( long id ); + SetButtonID(long id); // ---------------------------------------------------------------------------------- /*! @fn SetButton( ExpansionButton* button ); * @brief This method sets the expansion button. * @param button */ void - SetButton( ExpansionButton* button ); + SetButton(ExpansionButton* button); // ---------------------------------------------------------------------------------- /*! @fn SetButtonManager( ButtonManager* manager ); * @brief This method Sets the ButtonManager * @param manager A pointer with the manager. */ void - SetButtonManager( ButtonManager* manager ); + SetButtonManager(ButtonManager* manager); // ---------------------------------------------------------------------------------- /*! @fn HideSubPanel( bool hide ); * @brief This method hides the subPanel (Hides the buttons). * @param hide True if you need to hide the buttons. */ void - HideSubPanel( bool hide ); + HideSubPanel(bool hide); private: long m_IDExpButton; //!m_GroupName = groupName; - this->m_Buttons = cartoButtons; - } - - // ---------------------------------------------------------------------------------- - ListGroup::~ListGroup( ) - { - } - - // ---------------------------------------------------------------------------------- - ListGroup::ButtonContainer - ListGroup::GetButtonContainer( ) - { - return ( this->m_Buttons ); - } - - // ---------------------------------------------------------------------------------- - wxStaticText* - ListGroup::GetGroupName( ) - { - return ( this->m_GroupName ); - } - - // ---------------------------------------------------------------------------------- - ListGroup::IdButtonContainer - ListGroup::GetButtonIdContainer( ) - { - IdButtonContainer idContainer; - try - { - for( ButtonContainer::iterator it = this->m_Buttons.begin( ); it - != this->m_Buttons.end( ); ++it ) - { - idContainer.push_back( ( *it ).first ); - }//rof - }//yrt - catch ( std::exception& e ) - { - std::cerr << "ButtonGroup::GetButtonIdContainer( )" << "exception: " - << e.what( ) << std::endl; - }//hctac - return ( idContainer ); - } - - // ---------------------------------------------------------------------------------- - ListGroup::Button* - ListGroup::GetButton( long id ) - { - try - { - //return ( this->m_Buttons[ id ] ); // JPR - }//yrt - catch ( std::exception& e ) - { - std::cerr << "ButtonGroup::GetButton( long id )" << "exception: " - << e.what( ) << std::endl; - }//hctac - return ( this->m_Buttons[ id ] );// JPR - } - // ---------------------------------------------------------------------------------- - }//ecapseman -}//ecapseman*/ - - diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/view/listGroup.h b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/view/listGroup.h deleted file mode 100644 index 494fe33..0000000 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/view/listGroup.h +++ /dev/null @@ -1,84 +0,0 @@ -/*# --------------------------------------------------------------------- -# -# 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 LISTGROUP_H -#define LISTGROUP_H - -/*//Library Definition -#include - -#include -#include -#include - -#include "listWx.h" - -namespace creaButtonContainer -{ - - namespace view - { - - class ListGroup - { - public: - - typedef creaButtonContainer::view::ListWx Button; - - typedef std::map< long, Button* > ButtonContainer; - - typedef std::list< long > IdButtonContainer; - public: - - ListGroup( wxStaticText* groupName, ButtonContainer buttons ); - // ---------------------------------------------------------------------------------- - - virtual - ~ListGroup( ); - // ---------------------------------------------------------------------------------- - - Button* - GetButton( long id ); - // ---------------------------------------------------------------------------------- - - ButtonContainer - GetButtonContainer( ); - // ---------------------------------------------------------------------------------- - - IdButtonContainer - GetButtonIdContainer( ); - // ---------------------------------------------------------------------------------- - - wxStaticText* - GetGroupName( ); - // ---------------------------------------------------------------------------------- - private: - wxStaticText* m_GroupName; //!m_itemsMap = iMap; + this->m_Functor = functor; - this->functor = functor; + wxBoxSizer* sizer = new wxBoxSizer(wxHORIZONTAL); - wxFlexGridSizer* sizer = new wxFlexGridSizer(1); - sizer->Add( new wxStaticText(this,-1, _("Lista"))); - sizer->AddGrowableCol(0); this->SetSizer(sizer); - listBox = new wxListBox(this,-1); - m_functorEnabled = true; - - std::cout << "is ListBox"<< listBox->GetId()<< std::endl; - // this->Connect( -1,wxEVT_COMMAND_CHOICE_SELECTED, - // (wxObjectEventFunction) (void (wxPanel::*)(wxEvent&))(&ListWx::ListEvent) ); - //this->Connect(wxEVT_COMMAND_LISTBOX_DOUBLECLICKED, - // wxCommandEventHandler(ListWx::ListEvent)); + this->m_ListBox = new wxListBox(this, -1); + this->m_FunctorEnabled = true; this->Connect(wxEVT_COMMAND_LISTBOX_SELECTED, - wxCommandEventHandler(ListWx::ListEvent)); + wxCommandEventHandler(ListWx::ListEvent)); - //FillList(0); - - - sizer->Add(listBox,1,wxGROW); + if (!iVector.empty()) + { + for (ItemsVector::iterator it = iVector.begin(); it != iVector.end(); + ++it) + { + std::string key = it->first; + this->m_ListBox->Append(wxString(key.c_str(), wxConvUTF8)); + } + } + sizer->Add(this->m_ListBox,1,wxGROW); } - // ---------------------------------------------------------------------------------- - ListWx::ListWx( wxWindow* parent, wxWindowID id, ItemsMap iMap,TFunctor* functor, - std::string c) : wxPanel(parent,id) + ListWx::ListWx(wxWindow* parent, wxWindowID id, TFunctor* functor) { - std::cout<< "MLER | ListWx::ListWx" << std::endl; - - this->m_itemsMap = iMap; - this->functor = functor; - - wxFlexGridSizer* sizer = new wxFlexGridSizer(1); - - sizer->Add( new wxStaticText(this,-1, _("Lista Configurable"))); - sizer->AddGrowableCol(0); - this->SetSizer(sizer); - - listBox = new wxListBox(this,-1); - - std::cout << "is ListBox"<< listBox->GetId()<< std::endl; - - button = new wxButton(this, 1, _("Configurar"), - wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, wxString(c.c_str(), wxConvUTF8)); - - sizer->Add(listBox,1,wxGROW); - sizer->Add(button,2,wxGROW); - - // m_listConfigPanel = new ListConfigPanel(this,1,_("Configuracion"),m_itemsMap); - m_listConfig = new ListConfig(m_itemsMap); - - //wxEVT_COMMAND_LISTBOX_SELECTED - this->Connect(wxEVT_COMMAND_LISTBOX_SELECTED, - wxCommandEventHandler(ListWx::ListEvent)); - - //FillList(); } - // ---------------------------------------------------------------------------------- - ListWx::~ListWx( ) + ListWx::~ListWx() { - } - // ---------------------------------------------------------------------------------- - void - ListWx::FillList() - { - this->listBox->Clear(); - std::cout<<"clear"<m_itemsMap.begin(); it!=this->m_itemsMap.end(); ++it) - { - std::string key = it->first; - int v = listBox->FindString(wxString(key.c_str(), wxConvUTF8)); - if(v == -1) - listBox->Append( wxString(key.c_str(), wxConvUTF8)); - } - listBox->Update(); - this->Update(); } + // ---------------------------------------------------------------------------------- - void - ListWx::ListEvent( wxCommandEvent& event ) + void ListWx::ListEvent(wxCommandEvent& event) { - if(!this->IsFunctorEnabled()) + if (!this->IsFunctorEnabled()) return; - else{ - try + else { - std::cout<< "MLER | ListWx::ListEvent( wxListEvent& event )" << std::endl; - - int iSelection; - iSelection = listBox->GetSelection(); + try + { + std::cout << "MLER | ListWx::ListEvent( wxListEvent& event )" + << std::endl; - wxString itemNom = listBox->GetString(iSelection); - std::string itemNomC = std::string(itemNom.mb_str()); + int iSelection; + iSelection = this->m_ListBox->GetSelection(); - this->functor->Call(itemNomC); - std::cout<<"mmmmmmmmmmmmmmmmmmmmmmm"<m_ListBox->GetString(iSelection); + std::string itemNomC = std::string(itemNom.mb_str()); + this->m_Functor->Call(itemNomC); - }//yrt - catch ( const std::exception& e ) - { - std::cerr - << "ButtonContainerController::ButtonEvent( wxCommandEvent& event ) exception: " - << e.what( ) << std::endl; - }//hctac + } //yrt + catch (const std::exception& e) + { + std::cerr + << "ButtonContainerController::ButtonEvent( wxCommandEvent& event ) exception: " + << e.what() << std::endl; + } //hctac } } // ---------------------------------------------------------------------------------- - - - ListWx::ItemsMap - ListWx::GetItemsMap() - { - return m_itemsMap; - } - void ListWx::SetFunctorEnabled(const bool& enabled) { - m_functorEnabled = enabled; + this->m_FunctorEnabled = enabled; } - + // ---------------------------------------------------------------------------------- bool ListWx::IsFunctorEnabled() const { - return m_functorEnabled; - } - - ListWx::TFunctor* - ListWx::GetWxListFunctor() - { - return this->functor; - } - - void ListWx::AddItemToMap(std::string key, wxPanel* panel) - { - this->m_itemsMap[key] = panel; + return this->m_FunctorEnabled; } - wxListBox* - ListWx::GetListBox() const - { - return this->listBox; - } - - - void ListWx::DeleteItemFromMap(std::string key) - { - std::cout<< "MLER | ListConfig::DelFinalItems(std::string name)" << std::endl; - ItemsMap::iterator it1; - - //if(m_finalItems.empty()) - std::cout<<"name item -----test A"<< key <m_itemsMap.empty()) - { - for(ItemsMap::iterator it= this->m_itemsMap.begin(); it!=this->m_itemsMap.end();++it) - { - if((it->first).compare(key) == 0 ) - { - std::cout << "Item a borrar: "<< key << std::endl; - it1 = m_itemsMap.find(key); - m_itemsMap.erase(it1); - - } - } - } - std::cout<< "si borre tengo --- test 2 "<< m_itemsMap.size() << std::endl; - } - - - }//ecapseman -}//ecapseman - + } //ecapseman +} //ecapseman diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/view/listWx.h b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/view/listWx.h index 3465529..4b682c8 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/view/listWx.h +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/view/listWx.h @@ -28,83 +28,59 @@ //#include #include -#include #include -#include -//#include -#include -#include #include #include +#include -#include #include -#include "functor.h" -#include +#include +#include +#include "functor.h" #include "system.h" -#include "listConfig.h" -//#include "listConfigPanel.h" - -namespace creaButtonContainer { -namespace view { +namespace creaButtonContainer +{ -class ListWx: public wxPanel { -public: + namespace view + { - typedef creaButtonContainer::model::TFunctor TFunctor; - typedef std::map ItemsMap; - typedef creaButtonContainer::model::ListConfig ListConfig; + class ListWx: public wxPanel + { + public: -public: + typedef creaButtonContainer::model::TFunctor TFunctor; + typedef std::pair ListAction; + typedef std::vector ItemsVector; - ListWx(wxWindow* parent, wxWindowID id, ItemsMap iMap, TFunctor* functor); - ListWx(wxWindow* parent, wxWindowID id, ItemsMap iMap, TFunctor* functor, - std::string c); - // ---------------------------------------------------------------------------------- + public: - virtual - ~ListWx(); - // ---------------------------------------------------------------------------------- + ListWx(wxWindow* parent, wxWindowID id, ItemsVector iVector, + TFunctor* functor); + ListWx(wxWindow* parent, wxWindowID id, TFunctor* functor); - long - GetID(); + virtual + ~ListWx(); - void - FillList(); + void + ListEvent(wxCommandEvent& event); - void - ListEvent(wxCommandEvent& event); + void + SetFunctorEnabled(const bool& enabled); - ItemsMap - GetItemsMap(); + bool + IsFunctorEnabled() const; - TFunctor* - GetWxListFunctor(); + private: - void SetFunctorEnabled(const bool& enabled); + wxListBox* m_ListBox; - void AddItemToMap(std::string key, wxPanel* panel); + TFunctor* m_Functor; + bool m_FunctorEnabled; - void DeleteItemFromMap(std::string key); - - bool IsFunctorEnabled() const; - - wxListBox* - GetListBox() const; - - // ---------------------------------------------------------------------------------- -private: - ItemsMap m_itemsMap; //! - TFunctor* functor; - wxListBox* listBox; - wxFlexGridSizer* sizer; - wxButton* button; - bool m_functorEnabled; - ListConfig* m_listConfig; -}; -} //ecapseman + }; + } //ecapseman } //ecapseman #endif // LISTWX_H diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaPanelButtonContainer/buttonContainerSettings.cxx b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaPanelButtonContainer/buttonContainerSettings.cxx index 66ba48e..f7ccecc 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaPanelButtonContainer/buttonContainerSettings.cxx +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaPanelButtonContainer/buttonContainerSettings.cxx @@ -1,27 +1,27 @@ /*# --------------------------------------------------------------------- -# -# 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. -# ------------------------------------------------------------------------ */ + # + # 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. + # ------------------------------------------------------------------------ */ /*! * @file buttonContainerSettings.cxx @@ -35,292 +35,256 @@ namespace creaPanelButtonContainer { // ---------------------------------------------------------------------------------- - ButtonContainerSettings::ButtonContainerSettings( ) + ButtonContainerSettings::ButtonContainerSettings() { } // ---------------------------------------------------------------------------------- - ButtonContainerSettings::~ButtonContainerSettings( ) + ButtonContainerSettings::~ButtonContainerSettings() { } - + // ---------------------------------------------------------------------------------- - ButtonContainerSettings::ButtonGroupMap - ButtonContainerSettings::GetButtonGroupContainer( ) + ButtonContainerSettings::ButtonGroupMap ButtonContainerSettings::GetButtonGroupContainer() { - std::cout<< "MLER | ButtonContainerSettings:: GetButtonGroupContainer( ) " << std::endl; return m_ButtonGroupContainer; } // ---------------------------------------------------------------------------------- - ButtonContainerSettings::KeyMapList - ButtonContainerSettings::GetGroupNameList( ) + ButtonContainerSettings::KeyMapList ButtonContainerSettings::GetGroupNameList() { - std::cout<< "MLER | ButtonContainerSettings:: GetGroupNameList( ) " << std::endl; return m_GroupNameList; } // ---------------------------------------------------------------------------------- //GetButtonPanel returns the panel associated to the buttonAction - ButtonContainerSettings::PanelButton - ButtonContainerSettings::GetPanelButton( const StringType &buttonName ) + ButtonContainerSettings::PanelButton ButtonContainerSettings::GetPanelButton( + const StringType &buttonName) { try { - std::cout<< "MLER | ButtonContainerSettings:: GetPanelButton " << std::endl; - - for( KeyMapList::iterator it = this->m_GroupNameList.begin( ); it - != this->m_GroupNameList.end( ); ++it ) - { - - //std::cout<< std::endl<<"MLER ButtonContainerSettings // GetPanelButton :: it "<< *it<m_ButtonGroupContainer[ ( *it ) ]; - for( ButtonList::iterator it1 = list.begin( ); it1 != list.end( ); ++it1 ) - { - if ( ( *it1 )->first->first.compare( buttonName ) == 0 ) - { - return ( ( *it1 )->second->second ); - }//fi - }//rof - }//rof - }//yrt - catch ( std::exception& e ) - { - std::cerr - << "ButtonContainerSettings::GetPanelButton( const StringType &buttonName ) " - << "exception: " << e.what( ) << std::endl; - }//hctac - return ( NULL ); - } - // ---------------------------------------------------------------------------------- - ButtonContainerSettings::PanelButton - ButtonContainerSettings::GetPanelList( const StringType &buttonName ) - { - std::cout<< "MLER | ButtonContainerSettings:: GetPanelList " << std::endl; - - - try { - - for( ItemsMap::iterator it= this->m_itemsMap.begin(); it!=this->m_itemsMap.end(); ++it ) + for (KeyMapList::iterator it = this->m_GroupNameList.begin(); + it != this->m_GroupNameList.end(); ++it) { - if( (*it).first.compare(buttonName) == 0 ) + ButtonList list = this->m_ButtonGroupContainer[(*it)]; + for (ButtonList::iterator it1 = list.begin(); it1 != list.end(); ++it1) { - std::cout<<"debe retornar" << std::endl; - return ( (*it).second ); - } - } - - - }catch ( std::exception& e ) + if ((*it1)->first->first.compare(buttonName) == 0) + return ((*it1)->second->second); + } //rof + } //rof + } //yrt + catch (std::exception& e) { std::cerr - << "ButtonContainerSettings::GetPanelButton( const StringType &buttonName ) " - << "exception: " << e.what( ) << std::endl; - }//hctac + << "ButtonContainerSettings::GetPanelButton( const StringType &buttonName ) " + << "exception: " << e.what() << std::endl; + } //hctac return (NULL); - } - // ---------------------------------------------------------------------------------- ButtonContainerSettings::ButtonGroupSettings* - ButtonContainerSettings::GetButtonGroupSettings( TFunctor* functor ) + ButtonContainerSettings::GetButtonGroupSettings(TFunctor* functor) { ButtonGroupSettings* settings = NULL; try { - std::cout<< "MLER | ButtonContainerSettings:: GetButtonGroupSettings() " << std::endl; - settings = new ButtonGroupSettings( ); + settings = new ButtonGroupSettings(); - for( KeyMapList::iterator it = this->m_GroupNameList.begin( ); it - != this->m_GroupNameList.end( ); ++it ) + for (KeyMapList::iterator it = this->m_GroupNameList.begin(); + it != this->m_GroupNameList.end(); ++it) { - ButtonList list = this->m_ButtonGroupContainer[ ( *it ) ]; + ButtonList list = this->m_ButtonGroupContainer[(*it)]; - for( ButtonList::iterator it1 = list.begin( ); it1 != list.end( ); ++it1 ) + for (ButtonList::iterator it1 = list.begin(); it1 != list.end(); ++it1) { - std::cout<<"MLER ButtonContainerSettings // GetButtonGroupSettings :: groupName "<< *it<first->first <AddButton( ( *it ), ( *it1 )->first->first, ( *it1 )->first->second, ( *it1 )->second->first, functor ); - }//rof - }//rof - }//yrt - catch ( std::exception& e ) + settings->AddButton((*it), (*it1)->first->first, + (*it1)->first->second, (*it1)->second->first, functor); + } //rof + } //rof + } //yrt + catch (std::exception& e) { std::cerr - << "ButtonContainerSettings::GetPanelButton( const StringType &buttonName ) " - << "exception: " << e.what( ) << std::endl; - }//hctac - return ( settings ); + << "ButtonContainerSettings::GetPanelButton( const StringType &buttonName ) " + << "exception: " << e.what() << std::endl; + } //hctac + return (settings); } // ---------------------------------------------------------------------------------- - void - ButtonContainerSettings::SetButtonGroupContainer( - ButtonGroupMap m_ButtonGroupContainer ) + void ButtonContainerSettings::SetButtonGroupContainer( + ButtonGroupMap m_ButtonGroupContainer) { - std::cout<< "MLER | ButtonContainerSettings:: SetButtonGroupContainer() " << std::endl; this->m_ButtonGroupContainer = m_ButtonGroupContainer; } // ---------------------------------------------------------------------------------- - void - ButtonContainerSettings::SetGroupNameList( KeyMapList m_GroupNameList ) + void ButtonContainerSettings::SetGroupNameList(KeyMapList m_GroupNameList) { - std::cout<< "MLER | ButtonContainerSettings:: SetGroupNameList() " << std::endl; this->m_GroupNameList = m_GroupNameList; } - + // ---------------------------------------------------------------------------------- - void - ButtonContainerSettings::AddButton( const StringType & groupName, - const StringType &buttonName, const wxBitmap &icon, - const StringType &buttonDescription, PanelButton panel ) + void ButtonContainerSettings::AddButton(const StringType & groupName, + const StringType &buttonName, const wxBitmap &icon, + const StringType &buttonDescription, PanelButton panel) { try { - std::cout<< "MLER | ButtonContainerSettings:: AddButton( const StringType & groupName ..) " << std::endl; - //builds the button information //I don't know the try catch doesn't work!! - if ( panel == NULL ) + if (panel == NULL) { std::cerr << "ButtonContainerSettings::AddButton" - << "exception: NULL Pointer in panel " << std::endl; - exit( 1 ); + << "exception: NULL Pointer in panel " << std::endl; + exit(1); } - panel->Show( false ); + panel->Show(false); - ButtonPair* pair = new ButtonPair( - new ButtonInfo( buttonName, icon ), - new ActionButton( buttonDescription, panel ) ); + ButtonPair* pair = new ButtonPair(new ButtonInfo(buttonName, icon), + new ActionButton(buttonDescription, panel)); - for( KeyMapList::iterator it = this->m_GroupNameList.begin( ); it - != this->m_GroupNameList.end( ); ++it ) + for (KeyMapList::iterator it = this->m_GroupNameList.begin(); + it != this->m_GroupNameList.end(); ++it) { - if ( ( *it ).compare( groupName ) == 0 ) + if ((*it).compare(groupName) == 0) { - this->m_ButtonGroupContainer[ groupName ].push_back( pair ); + this->m_ButtonGroupContainer[groupName].push_back(pair); return; - }//fi - }//rof - this->m_GroupNameList.push_back( groupName ); - this->m_ButtonGroupContainer[ groupName ].push_back( pair ); - }//yrt - catch ( const std::exception& e ) + } //fi + } //rof + this->m_GroupNameList.push_back(groupName); + this->m_ButtonGroupContainer[groupName].push_back(pair); + } //yrt + catch (const std::exception& e) { std::cerr - << "ButtonContainerSettings::AddButton( const StringType & groupName," - << "const StringType &buttonName, const StringType &iconpath," - << "const StringType &buttonDescription, PanelButton panel ) " - << "exception: " << e.what( ) << std::endl; - }//hctac + << "ButtonContainerSettings::AddButton( const StringType & groupName," + << "const StringType &buttonName, const StringType &iconpath," + << "const StringType &buttonDescription, PanelButton panel ) " + << "exception: " << e.what() << std::endl; + } //hctac } - + // ---------------------------------------------------------------------------------- - void - ButtonContainerSettings::AddButton( BCPSettingsStruct* info ) + void ButtonContainerSettings::AddButton(BCPSettingsStruct* info) { try { - std::cout<< "MLER | ButtonContainerSettings:: AddButton( BCPSettingsStruct* info )" << std::endl; - //builds the button information //I don't know the try catch doesn't work!! - if ( info->panel == NULL ) + if (info->panel == NULL) { std::cerr << "ButtonContainerSettings::AddButton" - << "exception: NULL Pointer in panel " << std::endl; - exit( 1 ); + << "exception: NULL Pointer in panel " << std::endl; + exit(1); } - info->panel->Show( false ); + info->panel->Show(false); ButtonPair* pair = new ButtonPair( - new ButtonInfo( info->buttonName, info->icon ), - new ActionButton( info->buttonDescription, info->panel ) ); - for( KeyMapList::iterator it = this->m_GroupNameList.begin( ); it - != this->m_GroupNameList.end( ); ++it ) + new ButtonInfo(info->buttonName, info->icon), + new ActionButton(info->buttonDescription, info->panel)); + for (KeyMapList::iterator it = this->m_GroupNameList.begin(); + it != this->m_GroupNameList.end(); ++it) { - if ( ( *it ).compare( info->groupName ) == 0 ) + if ((*it).compare(info->groupName) == 0) { - this->m_ButtonGroupContainer[ info->groupName ].push_back( pair ); + this->m_ButtonGroupContainer[info->groupName].push_back(pair); return; - }//fi - }//rof - this->m_GroupNameList.push_back( info->groupName ); - this->m_ButtonGroupContainer[ info->groupName ].push_back( pair ); - }//yrt - catch ( const std::exception& e ) + } //fi + } //rof + this->m_GroupNameList.push_back(info->groupName); + this->m_ButtonGroupContainer[info->groupName].push_back(pair); + } //yrt + catch (const std::exception& e) { std::cerr - << "ButtonContainerSettings::AddButton( BCPSettingsStruct* info )" - << "exception: " << e.what( ) << std::endl; - exit( 1 ); - }//hctac + << "ButtonContainerSettings::AddButton( BCPSettingsStruct* info )" + << "exception: " << e.what() << std::endl; + exit(1); + } //hctac } - + // ---------------------------------------------------------------------------------- - void - ButtonContainerSettings::AddButtons( BCStructVectorType infoList, int type ) + void ButtonContainerSettings::InitModel(BCStructVectorType infoList, int type) { - std::cout<< "MLER | ButtonContainerSettings:: AddButtons( BCStructVectorType infoList, int type )" << std::endl; try { - for( BCStructVectorType::iterator it = infoList.begin( ); it - != infoList.end( ); ++it ) + for (BCStructVectorType::iterator it = infoList.begin(); + it != infoList.end(); ++it) { - if( type == 0 ) - this->AddButton( *it ); - else if( type == 1 || type == 2) + if (type == 0) + this->AddButton(*it); + else if (type == 1 || type == 2) this->AddItems(*it); - }//rof - }//yrt - catch ( std::exception& e ) + } //rof + } //yrt + catch (std::exception& e) { std::cerr - << "ButtonContainerSettings::AddButtons( BCStructVectorType infoList )" - << "exception: " << e.what( ) << std::endl; - }//hctac + << "ButtonContainerSettings::AddButtons( BCStructVectorType infoList )" + << "exception: " << e.what() << std::endl; + } //hctac } - void - ButtonContainerSettings::AddItems(BCPSettingsStruct* info) + // ---------------------------------------------------------------------------------- + //MLER + void ButtonContainerSettings::AddItems(BCPSettingsStruct* info) { try { - std::cout<< "MLER | ButtonContainerSettings:: AddItems(BCPSettingsStruct* info)" << std::endl; - //builds the button information + //build the button information //I don't know the try catch doesn't work!! - if ( info->panel == NULL ) + if (info->panel == NULL) { std::cerr << "ButtonContainerSettings::AddItems" - << "exception: NULL Pointer in panel " << std::endl; - exit( 1 ); + << "exception: NULL Pointer in panel " << std::endl; + exit(1); } + info->panel->Show(false); + std::string key = info->groupName + ":" + info->buttonName; + m_ItemsVector.push_back(ListAction(key, info->panel)); - info->panel->Show( false ); - - std::string mapKey = info->groupName + ":" + info->buttonName; - m_itemsMap[mapKey] = info->panel; - - }//yrt - catch ( const std::exception& e ) + } //yrt + catch (const std::exception& e) { std::cerr - << "ButtonContainerSettings::AddButton( BCPSettingsStruct* info )" - << "exception: " << e.what( ) << std::endl; - exit( 1 ); - }//hctac + << "ButtonContainerSettings::AddButton( BCPSettingsStruct* info )" + << "exception: " << e.what() << std::endl; + exit(1); + } //hctac + } + // ---------------------------------------------------------------------------------- + ButtonContainerSettings::ItemsVector ButtonContainerSettings::GetItemsVector() + { + return this->m_ItemsVector; } - ButtonContainerSettings::ItemsMap - ButtonContainerSettings::GetItemsMap() + // ---------------------------------------------------------------------------------- + wxPanel* + ButtonContainerSettings::GetPanelList(const StringType &buttonName) { - std::cout<< "MLER | ButtonContainerSettings:: GetItemsMap()" << std::endl; + try + { + for (ItemsVector::iterator it = this->m_ItemsVector.begin(); + it != this->m_ItemsVector.end(); ++it) + { + if ((*it).first.compare(buttonName) == 0) + return ((*it).second); - return m_itemsMap; - } + } + } catch (std::exception& e) + { + std::cerr + << "ButtonContainerSettings::GetPanelButton( const StringType &buttonName ) " + << "exception: " << e.what() << std::endl; + } //hctac + return (NULL); + + } +//MLER // ---------------------------------------------------------------------------------- }//ecapseman diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaPanelButtonContainer/buttonContainerSettings.h b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaPanelButtonContainer/buttonContainerSettings.h index ccd01c5..3d71e1a 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaPanelButtonContainer/buttonContainerSettings.h +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaPanelButtonContainer/buttonContainerSettings.h @@ -1,27 +1,27 @@ /*# --------------------------------------------------------------------- -# -# 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. -# ------------------------------------------------------------------------ */ + # + # 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. + # ------------------------------------------------------------------------ */ /*! * @file buttonContainerSettings.h @@ -46,7 +46,6 @@ #include "containerSettings.h" #include "functor.h" - /*! @namespace * @brief Contains the creaPanelButtonContainer library included in creaMaracasVisu. */ @@ -82,79 +81,80 @@ namespace creaPanelButtonContainer // ---------------------------------------------------------------------------------- /*! @typedef std::pair< std::string, PanelButton > ActionButton; * @brief Defines the ActionButton type. - * First is the button description, Second FunctionEventType + * First is the button name, Second FunctionEventType */ - typedef std::pair< std::string, PanelButton > ActionButton; - + typedef std::pair ActionButton; + // ---------------------------------------------------------------------------------- /*! @typedef std::pair< std::string, wxBitmap > ButtonInfo; * @brief Defines the ButtonInfo type. * First is the ButtonName, Second is the ImageIcon */ - typedef std::pair< std::string, wxBitmap > ButtonInfo; - + typedef std::pair ButtonInfo; + // ---------------------------------------------------------------------------------- /*! @typedef std::pair< ButtonInfo*, ActionButton* > ButtonPair; * @brief Defines the ButtonPair type. */ - typedef std::pair< ButtonInfo*, ActionButton* > ButtonPair; + typedef std::pair ButtonPair; // ---------------------------------------------------------------------------------- /*! @typedef std::list< std::string > KeyMapList; * @brief Defines the KeyMapList type. */ - typedef std::list< std::string > KeyMapList; - + typedef std::list KeyMapList; + // ---------------------------------------------------------------------------------- /*! @typedef std::list< ButtonPair* > ButtonList; * @brief Defines the ButtonList type. */ - typedef std::list< ButtonPair* > ButtonList; - + typedef std::list ButtonList; + // ---------------------------------------------------------------------------------- /*! @typedef std::map< std::string, ButtonList > ButtonGroupMap; * @brief Defines the ButtonGroupMap type. */ - typedef std::map< std::string, ButtonList > ButtonGroupMap; + typedef std::map ButtonGroupMap; // ---------------------------------------------------------------------------------- /*! @typedef std::vector< BCPSettingsStruct* > BCStructVectorType; * @brief Defines the BCStructVectorType type. */ - typedef std::vector< BCPSettingsStruct* > BCStructVectorType; + typedef std::vector BCStructVectorType; //end typedef definition - // ---------------------------------------------------------------------------------- - /*! @class ButtonContainerSettings buttonContainerSettings.h "buttonContainerSettings.h" - * @brief This class contains the settings of the button container. - */ - typedef std::map< std::string, wxPanel* > ItemsMap; + //MLER + typedef std::pair ListAction; + typedef std::vector ItemsVector; + //MLER - public: + // ---------------------------------------------------------------------------------- + + public: // ---------------------------------------------------------------------------------- /*! @fn ButtonContainerSettings( ); * @brief This is the default constructor. */ - ButtonContainerSettings( ); + ButtonContainerSettings(); // ---------------------------------------------------------------------------------- /*! @fn virtual ~ButtonContainerSettings( ); * @brief This is the destructor. */ virtual - ~ButtonContainerSettings( ); - + ~ButtonContainerSettings(); + // ---------------------------------------------------------------------------------- /*! @fn ButtonGroupMap GetButtonGroupContainer( ); * @brief This method returns ButtonGroupMap with all buttons. * @return */ ButtonGroupMap - GetButtonGroupContainer( ); + GetButtonGroupContainer(); // ---------------------------------------------------------------------------------- /*! @fn KeyMapList GetGroupNameList( ); * @brief This method returns a KeyMapsList with the name of the groups. * @return */ KeyMapList - GetGroupNameList( ); + GetGroupNameList(); // ---------------------------------------------------------------------------------- /*! @fn PanelButton GetPanelButton( const std::string &buttonName ); * @brief This method returns the panel of a button. @@ -163,7 +163,7 @@ namespace creaPanelButtonContainer * @return */ PanelButton - GetPanelButton( const std::string &buttonName ); + GetPanelButton(const std::string &buttonName); // ---------------------------------------------------------------------------------- /*! @fn ButtonGroupSettings* GetButtonGroupSettings( TFunctor* functor ); * @brief this method return the settings the generic settings for creaButtonContainer. @@ -172,7 +172,7 @@ namespace creaPanelButtonContainer * @return */ ButtonGroupSettings* - GetButtonGroupSettings( TFunctor* functor ); + GetButtonGroupSettings(TFunctor* functor); // ---------------------------------------------------------------------------------- /*! @fn void SetButtonGroupContainer( ButtonGroupMap bGroupContainer ); * @brief This method sets the button group container. @@ -180,24 +180,21 @@ namespace creaPanelButtonContainer */ // ---------------------------------------------------------------------------------- - ButtonGroupSettings* GetListGroupSettings(); // ---------------------------------------------------------------------------------- - - void - SetButtonGroupContainer( ButtonGroupMap bGroupContainer ); + SetButtonGroupContainer(ButtonGroupMap bGroupContainer); // ---------------------------------------------------------------------------------- /*! @fn void SetGroupNameList( KeyMapList gNameList ); * @brief this method sets the groupName list * @param gNameList */ void - SetGroupNameList( KeyMapList gNameList ); - + SetGroupNameList(KeyMapList gNameList); + // ---------------------------------------------------------------------------------- /*! @fn void AddButton( const std::string &groupName, const std::string &buttonName, const std::string &iconpath, const std::string &buttonDescription, @@ -211,10 +208,10 @@ namespace creaPanelButtonContainer * @exception std::bad_alloc */ void - AddButton( const std::string &groupName, const std::string &buttonName, - const wxBitmap &icon, const std::string &buttonDescription, - PanelButton panel ); - + AddButton(const std::string &groupName, const std::string &buttonName, + const wxBitmap &icon, const std::string &buttonDescription, + PanelButton panel); + // ---------------------------------------------------------------------------------- /*! @fn void AddButton( BCPSettingsStruct* info ); * @brief This method adds a new button into a group of buttons. @@ -222,8 +219,8 @@ namespace creaPanelButtonContainer * @exception std::bad_alloc */ void - AddButton( BCPSettingsStruct* info ); - + AddButton(BCPSettingsStruct* info); + // ---------------------------------------------------------------------------------- /*! @fn void AddButtons( BCStructVectorType infoList ); * @brief This method adds new buttons into the container. @@ -231,25 +228,27 @@ namespace creaPanelButtonContainer * @exception std::bad_alloc */ void - AddButtons( BCStructVectorType infoList, int type ); - + InitModel(BCStructVectorType infoList, int type); + // ---------------------------------------------------------------------------------- + //MLER void AddItems(BCPSettingsStruct* info); + // ---------------------------------------------------------------------------------- + ItemsVector + GetItemsVector(); - ItemsMap - GetItemsMap(); - - PanelButton - GetPanelList( const StringType &buttonName ); - + wxPanel* + GetPanelList(const StringType &buttonName); + //MLER // ---------------------------------------------------------------------------------- private: ButtonGroupMap m_ButtonGroupContainer; //! TConcreteFunctor; - // ---------------------------------------------------------------------------------- - PanelButtonContainer::PanelButtonContainer( wxWindow* parent, ButtonContainerSettings* bcSettings, int type ) - : wxPanel( parent, -1, wxDefaultPosition, wxDefaultSize, wxDEFAULT_FRAME_STYLE, _T("creaPanelButtonContainer") ) +// ---------------------------------------------------------------------------------- + typedef creaButtonContainer::model::TConcreteFunctor< PanelButtonContainer > TConcreteFunctor; +// ---------------------------------------------------------------------------------- + PanelButtonContainer::PanelButtonContainer(wxWindow* parent, + ButtonContainerSettings* bcSettings, int type) + : wxPanel(parent, -1, wxDefaultPosition, wxDefaultSize, + wxDEFAULT_FRAME_STYLE, _T("creaPanelButtonContainer")) { - std::cout<< "MLER | creaPanelButtonContainer:: PanelButtonContainer() " << std::endl; - this->m_ButtonContainerSettings = bcSettings; - - //Class that manages the event!!! - //EED 20/01/2012 - TConcreteFunctor* functor = new TConcreteFunctor( this, &PanelButtonContainer::GenericButtonEvent ); -// TConcreteFunctor* functor = new TConcreteFunctor( this->m_ButtonPanel, &PanelButtonContainer::GenericButtonEvent ); - //end of the event definition - - TConcreteFunctor* lFunctor = new TConcreteFunctor( this, &PanelButtonContainer::GenericListEvent ); - //MLER - //Using AuiManager to Manage the Panels - this->m_AuiManager = new wxAuiManager( this, wxAUI_MGR_DEFAULT ); - + this->m_AuiManager = new wxAuiManager(this, wxAUI_MGR_DEFAULT); - if(type == 0) + if (type == 0) { - this->m_ButtonPanel = new wxPanel( this ); - std::cout << "tipo 0; new ButtonContainerPanel"<m_ButtonContainerPanel = new ButtonContainerPanel( this, this->m_ButtonContainerSettings->GetButtonGroupSettings( functor ) ); - - this->m_AuiManager->AddPane( this->m_ButtonContainerPanel,wxAuiPaneInfo( ).Name( _T("ButtonContainerPanel") ).Caption(_("ButtonContainerPanel") ). CaptionVisible( true ).CloseButton(false ).Center( ).Resizable( true ) ); - this->m_AuiManager->AddPane(this->m_ButtonPanel, wxAuiPaneInfo( ).Name( _T("ButtonPanel") ).Caption( _("ButtonPanel") ). CaptionVisible(true ).CloseButton( false ).Bottom( ).Resizable( true ) ); + //Class that manages the event!!! + //EED 20/01/2012 + TConcreteFunctor* functor = new TConcreteFunctor(this, + &PanelButtonContainer::GenericButtonEvent); + //end of the event definition + this->m_EventPanel = new wxPanel(this); + this->m_ButtonContainerPanel = new ButtonContainerPanel(this, + this->m_ButtonContainerSettings->GetButtonGroupSettings(functor)); + //Bottom Panel + this->m_AuiManager->AddPane(this->m_EventPanel, + wxAuiPaneInfo().Name(_T("EventPanel")).Caption(_("EventPanel")).CaptionVisible( + true).MinimizeButton().MaximizeButton().CloseButton(false).Center().Resizable( + true)); + //Top Panel + this->m_AuiManager->AddPane(this->m_ButtonContainerPanel, + wxAuiPaneInfo().Name(_T("ButtonContainerPanel")).DefaultPane().Caption( + _("ButtonContainerPanel")).PinButton().CaptionVisible( + true).CloseButton(false).Center().Resizable(true)); } - else if( type == 1) + else if (type == 1) { - this->m_ListPanel = new wxPanel(this); - std::cout << "tipo 1; new LIstWx"<mylist = new ListWx(this, -1,this->m_ButtonContainerSettings->GetItemsMap(), lFunctor); - mylist->FillList(); - this->m_AuiManager->AddPane( this->mylist,wxAuiPaneInfo( ).Name( _T("ListContainerPanel") ).Caption(_("ListContainerPanel") ). CaptionVisible( true ).CloseButton(false ).Center( ).Resizable( true ) ); - this->m_AuiManager->AddPane(this->m_ListPanel, wxAuiPaneInfo( ).Name( _T("ListPanel") ).Caption( _("ListPanel") ). CaptionVisible(true ).CloseButton( false ).Bottom( ).Resizable( true ) ); + TConcreteFunctor* lFunctor = new TConcreteFunctor(this, + &PanelButtonContainer::GenericListEvent); + + this->m_EventPanel = new wxPanel(this); + std::cout << "tipo 1; new LIstWx" << std::endl; + + this->m_ListWxPanel = new ListWx(this, -1, + this->m_ButtonContainerSettings->GetItemsVector(), lFunctor); + + //Bottom Panel + this->m_AuiManager->AddPane(this->m_EventPanel, + wxAuiPaneInfo().Name(_T("EventPanel")).Caption(_("EventPanel")).CaptionVisible( + true).MinimizeButton().MaximizeButton().CloseButton(false).Center().Resizable( + true)); + //Top Panel + this->m_AuiManager->AddPane(this->m_ListWxPanel, + wxAuiPaneInfo().Name(_T("ListContainerPanel")).DefaultPane().Caption( + _("ListContainerPanel")).PinButton().CaptionVisible( + true).CloseButton(false).Center().Resizable(true)); } - else if( type == 2) + else if(type == 2) { - this->m_ListPanel = new wxPanel(this); - - panelUp = new wxPanel(this, -1, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL, _T("ListConfigContainerPanel")); - wxBoxSizer* mainSizer = new wxBoxSizer(wxHORIZONTAL); - - //======= - wxBoxSizer* listSizer = new wxBoxSizer(wxVERTICAL); - - this->mylist = new ListWx(panelUp,-1,this->m_ButtonContainerSettings->GetItemsMap(),lFunctor); - this->mylist->Show(false); - ItemsMap empty; - this->myConfiglist = new ListWx(panelUp,-1, empty,lFunctor); - listSizer->Add(this->myConfiglist,0,wxEXPAND); - listSizer->Add(this->mylist,0,wxEXPAND); - mainSizer->Add(listSizer,0,wxEXPAND|wxALL,7); - - //======= - wxBoxSizer* buttonSizer = new wxBoxSizer(wxVERTICAL); - - button = new wxButton(panelUp, -1, _("Configurar"), - wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _("Configurar")); - - buttonSizer->Add(button,0,wxEXPAND); - mainSizer->Add(buttonSizer,0,wxEXPAND|wxALL,14); - //======= - - panelUp->SetSizer(mainSizer); - - this->m_AuiManager->AddPane( panelUp,wxAuiPaneInfo( ).Name( _T("ListConfigContainerPanel") ).Caption(_("ListConfigContainerPanel") ). CaptionVisible( true ).CloseButton(false ).Center( ).Resizable( true ) ); - this->m_AuiManager->AddPane(this->m_ListPanel, wxAuiPaneInfo( ).Name( _T("ListPanel") ).Caption( _("ListPanel") ). CaptionVisible(true ).CloseButton( false ).Bottom( ).Resizable( true ) ); } //MLER - this->m_AuiManager->Update( ); - //m_listConfigPanel = new ListConfigPanel(this,1,_("Configuracion"),mylist); - - this->Connect(wxEVT_COMMAND_BUTTON_CLICKED, - wxCommandEventHandler(PanelButtonContainer::ButtonEvent)); - + this->m_AuiManager->Update(); } - // ---------------------------------------------------------------------------------- - PanelButtonContainer::~PanelButtonContainer( ) +// ---------------------------------------------------------------------------------- + PanelButtonContainer::~PanelButtonContainer() { } - // ---------------------------------------------------------------------------------- - void - PanelButtonContainer::UpdatePanel( const std::string &buttonName ) +// ---------------------------------------------------------------------------------- + void PanelButtonContainer::UpdatePanel(const std::string &buttonName) { try { - std::cout<< "MLER | creaPanelButtonContainer:: UpdatePanel() " << std::endl; - //Hiding the last CartoSettingsPanel - this->m_ButtonPanel->Show( false ); + this->m_EventPanel->Show(false); //Finding the CartoSettingsPanel of the ButtonClicket - this->m_ButtonPanel = this->m_ButtonContainerSettings->GetPanelButton(buttonName ); - std::cout<< buttonName << "---testEvento 2 "<m_EventPanel = this->m_ButtonContainerSettings->GetPanelButton( + buttonName); //changing the parent of the panel! - if ( this->m_ButtonPanel->GetParent( ) != this ) + if (this->m_EventPanel->GetParent() != this) { - this->m_ButtonPanel->Reparent( this ); - }//fi - //Panel Management - this->m_AuiManager->GetPane( _T("ButtonPanel") ).window = this->m_ButtonPanel; + this->m_EventPanel->Reparent(this); + } //fi + //Panel Management + this->m_AuiManager->GetPane(_T("EventPanel")).window = this->m_EventPanel; //Updating the manager - this->m_AuiManager->Update( ); - }//yrt - catch ( const std::exception& e ) + this->m_AuiManager->Update(); + } //yrt + catch (const std::exception& e) { std::cerr - << "PanelButtonContainer::UpdatePanel( const std::string &buttonName )" - << "exception: " << e.what( ) << std::endl; + << "PanelButtonContainer::UpdatePanel( const std::string &buttonName )" + << "exception: " << e.what() << std::endl; std::cout << "Maybe the panel of the button is NULL" << std::endl; - exit( 1 ); - }//hctac - } - // ---------------------------------------------------------------------------------- - void - PanelButtonContainer::GenericButtonEvent( const std::string &buttonName ) - { - std::cout<< "MLER | creaPanelButtonContainer:: GenericButtonEvent() " << std::endl; - std::cout<< buttonName << "---testEvento 1 "<UpdatePanel( buttonName ); + exit(1); + } //hctac } // ---------------------------------------------------------------------------------- - - void - PanelButtonContainer::UpdateListPanel( const std::string &buttonName ) + void PanelButtonContainer::GenericButtonEvent(const std::string &buttonName) { - try{ - - std::cout<< "MLER | creaPanelButtonContainer:: UpdateListPanel() " << std::endl; - std::cout<< buttonName << " --- test 2 "<m_ListPanel->Show( false ); - - this->m_ListPanel = this->m_ButtonContainerSettings->GetPanelList(buttonName ); - - if ( this->m_ListPanel->GetParent( ) != this ) - { - this->m_ListPanel->Reparent( this ); - }//fi - //Panel Management - this->m_AuiManager->GetPane( _T("ListPanel") ).window = this->m_ListPanel; - //Updating the manager - this->m_AuiManager->Update( ); - - }catch( const std::exception& e ) - { - std::cerr - << "PanelButtonContainer::UpdatePanel( const std::string &buttonName )" - << "exception: " << e.what( ) << std::endl; - std::cout << "Maybe the panel of the list is NULL" << std::endl; - exit( 1 ); - }//hctac + this->UpdatePanel(buttonName); } - void - PanelButtonContainer::GenericListEvent( const std::string &buttonName ) + // ---------------------------------------------------------------------------------- + //MLER + void PanelButtonContainer::GenericListEvent(const std::string &buttonName) { - std::cout<< "MLER | creaPanelButtonContainer:: GenericListEvent() " << std::endl; - std::cout<< buttonName << " --- test 3 "<UpdateListPanel( buttonName ); + this->UpdateListPanel(buttonName); } - void - PanelButtonContainer::ButtonEvent ( wxCommandEvent& event ) + // ---------------------------------------------------------------------------------- + void PanelButtonContainer::UpdateListPanel(const std::string &buttonName) { + try + { + this->m_EventPanel->Show(false); + this->m_EventPanel = this->m_ButtonContainerSettings->GetPanelList( + buttonName); - m_listConfigPanel = new ListConfigPanel(this,-1,_("Configuracion"), mylist, myConfiglist); - - std::cout<< "BUtton Event"<m_EventPanel->GetParent() != this) + { + this->m_EventPanel->Reparent(this); + } //fi + //Panel Management + this->m_AuiManager->GetPane(_T("EventPanel")).window = this->m_EventPanel; + //Updating the manager + this->m_AuiManager->Update(); - m_listConfigPanel->ShowModal(); - this->myConfiglist->Reparent(panelUp); - this->myConfiglist->Show(true); - this->myConfiglist->SetFunctorEnabled(true); - this->myConfiglist->Update(); - this->m_AuiManager->Update( ); - this->m_ListPanel->Show(false); + } catch (const std::exception& e) + { + std::cerr + << "PanelButtonContainer::UpdatePanel( const std::string &buttonName )" + << "exception: " << e.what() << std::endl; + std::cout << "Maybe the panel of the list is NULL" << std::endl; + exit(1); + } //hctac } - - +// ---------------------------------------------------------------------------------- }//ecapseman - diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaPanelButtonContainer/creaPanelButtonContainer.h b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaPanelButtonContainer/creaPanelButtonContainer.h index 6677627..c7e5c09 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaPanelButtonContainer/creaPanelButtonContainer.h +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaPanelButtonContainer/creaPanelButtonContainer.h @@ -1,27 +1,27 @@ /*# --------------------------------------------------------------------- -# -# 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. -# ------------------------------------------------------------------------ */ + # + # 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. + # ------------------------------------------------------------------------ */ /*! * @file PanelButtonContainer @@ -54,7 +54,7 @@ namespace creaPanelButtonContainer * @brief This class contains the PanelButtonContainer. It derives from wxPanel. * @see wxPanel */ - class PanelButtonContainer : public wxPanel + class PanelButtonContainer: public wxPanel { public: //typedef definition. @@ -62,17 +62,23 @@ namespace creaPanelButtonContainer /*! typedef creaPanelButtonContainer::ButtonContainerSettings ButtonContainerSettings; * @brief Defines the ButtonContainerSettings type. */ - typedef creaPanelButtonContainer::ButtonContainerSettings - ButtonContainerSettings; + typedef creaPanelButtonContainer::ButtonContainerSettings ButtonContainerSettings; /*! typedef creaButtonContainer::view::ButtonContainerPanel ButtonContainerPanel; * @brief Defines the ButtonContainerPanel type. */ - typedef creaButtonContainer::view::ButtonContainerPanel - ButtonContainerPanel; + typedef creaButtonContainer::view::ButtonContainerPanel ButtonContainerPanel; + + //MLER + /*! typedef creaButtonContainer::view::ListWx ListWx; + * @brief Defines a ListWx for (Configurable) List Container. + * This class inherits from wxPanel and contains a wxListBox + */ typedef creaButtonContainer::view::ListWx ListWx; - typedef creaPanelButtonContainer::ListConfigPanel - ListConfigPanel; - typedef std::map ItemsMap; + /*! typedef creaPanelButtonContainer::ListConfigPanel ListConfigPanel; + * @brief Defines a ListConfigPanel to configure + */ + typedef creaPanelButtonContainer::ListConfigPanel ListConfigPanel; + //End MLER // ---------------------------------------------------------------------------------- //end of typedef definition. @@ -83,14 +89,14 @@ namespace creaPanelButtonContainer * @param parent The wxWindow pointer to parent * @param bcSettings //The buttonContainerSettings */ - PanelButtonContainer( wxWindow* parent, - ButtonContainerSettings* bcSettings, int type ); + PanelButtonContainer(wxWindow* parent, + ButtonContainerSettings* bcSettings, int type); // ---------------------------------------------------------------------------------- /*! @fn virtual PanelButtonContainer( ); * @brief This is the destructor. */ virtual - ~PanelButtonContainer( ); + ~PanelButtonContainer(); // ---------------------------------------------------------------------------------- /*! @fn void UpdatePanel( const std::string &buttonName ); * @brief This method Updates the m_ButtonPanel to a panel @@ -98,7 +104,7 @@ namespace creaPanelButtonContainer * @param buttonName */ void - UpdatePanel( const std::string &buttonName ); + UpdatePanel(const std::string &buttonName); // ---------------------------------------------------------------------------------- /*! @fn void GenericButtonEvent( const std::string &buttonName ); * @brief This method is the function that calls the panels contained in the buttons @@ -106,22 +112,14 @@ namespace creaPanelButtonContainer * @param buttonName The name of the button */ void - GenericButtonEvent( const std::string &buttonName ); - + GenericButtonEvent(const std::string &buttonName); // ---------------------------------------------------------------------------------- - void - UpdateListPanel( const std::string &buttonName ); - - void - GenericListEvent( const std::string &buttonName ); - //MLER - void - ButtonEvent ( wxCommandEvent& event ); + GenericListEvent(const std::string &buttonName); void - ListEvent( wxCommandEvent& event ); + UpdateListPanel(const std::string &buttonName); // ---------------------------------------------------------------------------------- private: @@ -130,18 +128,14 @@ namespace creaPanelButtonContainer //Panel ButtonContainerPanel* m_ButtonContainerPanel; //!Reparent(this); - m_listWx->Show(true); - m_listWx->SetFunctorEnabled(false); - m_listWx->FillList(); - - m_finalListWx = currentList; - m_finalListWx->Reparent(this); - m_finalListWx->SetFunctorEnabled(false); - m_finalListWx->Show(true); - m_finalListWx->FillList(); - - wxFlexGridSizer* sizer = new wxFlexGridSizer(2,1,0,0); - //sizer->Add( new wxStaticText(this,-1, _("Lista Configurable"))); - this->SetSizer(sizer); - - - wxBoxSizer* sizerUp = new wxBoxSizer(wxHORIZONTAL); - - //wxPanel* panel1 = new wxPanel(this, -1, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL, - // _T("Panel 1")); - - //wxBoxSizer* sizerList1 = new wxBoxSizer(wxVERTICAL); - - //panel1->Add(m_listWx,0,wxEXPAND); - //listBox = new wxListBox(panel1,-1,wxDefaultPosition,wxDefaultSize, 0, 0, 0, - // wxDefaultValidator, _("ListBox")); - - //sizerList1->Add(panel1,0,wxEXPAND); - - //panel1->SetSizer(sizerList1); - //sizerList1->Fit(panel1); - //sizerList1->SetSizeHints(panel1); - - sizerUp->Add(m_listWx, 0, wxEXPAND); - //======== - - wxPanel* panel2 = new wxPanel(this, -1, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL, _T("Panel 2")); - wxBoxSizer* sizerList2 = new wxBoxSizer(wxVERTICAL); - - buttonAdd = new wxButton(panel2, 1, _(">"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("Add")); - sizerList2->Add(buttonAdd, 0, wxEXPAND); - - buttonDel = new wxButton(panel2, 2, _("<"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("Delete")); - sizerList2->Add(buttonDel, 0, wxEXPAND); - - panel2->SetSizer(sizerList2); - sizerList2->Fit(panel2); - sizerList2->SetSizeHints(panel2); - - sizerUp->Add(panel2, 0, wxEXPAND); - - //======== - - //wxPanel* panel3 = new wxPanel(this, -1, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL, _T("Panel 3")); - //wxBoxSizer* sizerList3 = new wxBoxSizer(wxHORIZONTAL); - - //finalListBox = new wxListBox(panel3, -1, wxDefaultPosition, wxDefaultSize, 0, 0, 0, - // wxDefaultValidator, _T("finalListBox")); - //sizerList3->Add(m_finalListWx, 0, wxEXPAND); - - //panel3->SetSizer(sizerList3); - //sizerList3->Fit(panel3); - //sizerList3->SetSizeHints(panel3); - - sizerUp->Add(m_finalListWx, 0, wxEXPAND); - //sizer->Add(sizerUp, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); - - //FillList(); - - //======= - wxPanel* panel5 = new wxPanel(this, -1, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL, _T("Panel 5")); - wxBoxSizer* sizerList4 = new wxBoxSizer(wxVERTICAL); - - upButton = new wxButton(panel5, 3, _("/\\"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("upButton")); - sizerList4->Add(upButton, 0, wxEXPAND); - - downButton = new wxButton(panel5, 4, _("V"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("downButton")); - sizerList4->Add(downButton, 0, wxEXPAND); - - panel5->SetSizer(sizerList4); - sizerList4->Fit(panel5); - sizerList4->SetSizeHints(panel5); - sizerUp->Add(panel5, 0, wxEXPAND); - - //======== - wxBoxSizer* sizerBotones = new wxBoxSizer(wxHORIZONTAL); - wxPanel* panel4 = new wxPanel(this, -1, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL, _T("Panel 4")); - - okButton = new wxButton(panel4, 5, _("Ok"), wxPoint(0,8), wxDefaultSize, 0, wxDefaultValidator, _T("Ok")); - cancelButton = new wxButton(panel4, 6, _("Cancel"), wxPoint(88,8), wxDefaultSize, 0, wxDefaultValidator, _T("Cancel")); - - sizerBotones->Add(panel4, 0, wxEXPAND); - - sizer->Add(sizerUp,0,wxEXPAND); - sizer->Add(sizerBotones, 1, wxALL|wxALIGN_CENTER_HORIZONTAL); - - - // SetSizer(sizer); - //SetSizer(sizer); - //Layout(); - - //--------------------------------------------------------------------------------------------- - // Manejo de Eventos - - //Evento Cancel - Connect(6,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&ListConfigPanel::OnQuit); - - //EventoSeleccionarLista - //Connect(wxEVT_COMMAND_LISTBOX_SELECTED,wxCommandEventHandler(ListConfigPanel::ListItemEvent)); - - //EventoAdd - Connect(1,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&ListConfigPanel::OnAdd); - - //EventoOk - Connect(5,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&ListConfigPanel::OkEvent); - - //EventoDelete - Connect(2,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&ListConfigPanel::OnDelete); - - } - - ListConfigPanel::~ListConfigPanel() - { - - } - - ListConfigPanel::ItemsMap - ListConfigPanel::GetFinalItemsMap() - { - return m_finalItems; - } - - void - ListConfigPanel::SetFinalItems(ItemsMap finalItems) - { - m_finalItems = finalItems; - } - - void - ListConfigPanel::FillList(int i) - { - /*if(i == 0) - { - m_itemsMap = m_listWx->GetItemsMap(); - - for (ItemsMap::iterator it=this->m_itemsMap.begin(); it!=this->m_itemsMap.end(); ++it) - { - std::string key = it->first; - listBox->Append( wxString(key.c_str(), wxConvUTF8)); - } - } - if(i == 1) - { - std::cout << "ListConfigPanel::FillList items : "<< m_finalItems.size()<Clear(); - - if(!m_finalItems.empty()) - { - for (ItemsMap::iterator it=this->m_finalItems.begin(); it!=this->m_finalItems.end(); ++it) - { - std::string key = it->first; - int v = finalListBox->FindString(wxString(key.c_str(), wxConvUTF8)); - - if(v == -1) - finalListBox->Append( wxString(key.c_str(), wxConvUTF8)); - } - } - - - }*/ - } - - void - ListConfigPanel::OnQuit(wxCommandEvent& event) - { - std::cout<<"Onquit"<GetSelection(); - - wxString itemNom = listBox->GetString(iSelection); - std::string itemNomC = std::string(itemNom.mb_str());*/ - - } - - - void - ListConfigPanel::OnAdd(wxCommandEvent& event) - { - std::cout<<"MLER |ListConfigPanel::OnAdd"<GetListBox()->GetStringSelection(); - std::string item = std::string(itSel.mb_str()); - - - if(!itSel.empty()) - { - wxPanel* mPanel = m_listWx->GetItemsMap()[item]; - m_finalListWx->AddItemToMap(item, mPanel); - m_finalListWx->FillList(); - } - - //wxMessageBox( _("Seleccione un elemento"), wxOK | wxICON_INFORMATION ); - - std::cout << "FinalItemsAdd" << m_finalItems.size() << std::endl; - } - - void - ListConfigPanel::OnDelete(wxCommandEvent& event) - { - std::cout<<"MLER |ListConfigPanel::OnDelete"<GetListBox()->GetStringSelection(); - std::string item = std::string(itSel.mb_str()); - if(!itSel.empty()) - { - m_finalListWx->DeleteItemFromMap(item); - m_finalListWx->FillList(); - } - - std::cout << "FinalItems Delete" << m_finalItems.size() << std::endl; - } - - void - ListConfigPanel::OkEvent(wxCommandEvent& event) - { - std::cout<<"MLER |ListConfigPanel::OkEvent"<EndModal(1); - } - - void - ListConfigPanel::UpEvent(wxCommandEvent& event) - { - std::cout<<"Up Event"<m_finalListWx; - } - } diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaPanelButtonContainer/listConfigPanel.h b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaPanelButtonContainer/listConfigPanel.h index 5e03947..6e7a5ed 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaPanelButtonContainer/listConfigPanel.h +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaPanelButtonContainer/listConfigPanel.h @@ -1,27 +1,27 @@ /*# --------------------------------------------------------------------- -# -# 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. -# ------------------------------------------------------------------------ */ + # + # 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 LISTCONFIGPANEL_H #define LISTCONFIGPANEL_H @@ -30,101 +30,19 @@ #include #include - -#include #include #include #include "functor.h" -#include "listConfig.h" #include "listWx.h" - namespace creaPanelButtonContainer { - /*namespace controller - { - //class ButtonContainerController; - }*/ - - - class ListConfigPanel : public wxDialog - { - public: - - typedef std::map ItemsMap; - typedef creaButtonContainer::model::TFunctor TFunctor; - typedef creaButtonContainer::model::ListConfig ListConfig; - typedef creaButtonContainer::view::ListWx ListWx; - //typedef std::vector NomItem; - - - ListConfigPanel(wxWindow* parent, wxWindowID id,const wxString& title, ListWx* modelList, ListWx* currentList); - - ~ListConfigPanel(); - - ItemsMap - GetFinalItemsMap(); - - void - SetFinalItems(ItemsMap finalItems); - - void - FillList(int i); - - void - OnQuit(wxCommandEvent& event); - - void - ListItemEvent(wxCommandEvent& event); - - void - OnAdd(wxCommandEvent& event); - - void - OnDelete(wxCommandEvent& event); - - void - OkEvent(wxCommandEvent& event); - - void - UpEvent(wxCommandEvent& event); - - void - DownEvent(wxCommandEvent& event); - - void - RefreshViewEvent(wxCommandEvent& event); - - ListWx* - GetFinalListWx(); - - - //public: - //friend class creaButtonContainer::controller::ButtonContainerController; - - private: - ItemsMap m_itemsMap; - //TFunctor* functor; - ItemsMap m_finalItems; - //NomItem m_itemsVector; - - wxButton* buttonAdd; - wxButton* buttonDel; - - wxButton* okButton; - wxButton* cancelButton; - - wxButton* upButton; - wxButton* downButton; - - ListWx* m_listWx; - ListWx* m_finalListWx; - ListConfig* m_listConfig; - - }; + class ListConfigPanel: public wxDialog + { + }; } #endif // LISTCONFIGPANEL_H -- 2.47.1