-/***************************************************************
- * Name: @file buttonContainerController.h
- * Purpose: @brief This contains ContainerSettings class
- * Author: @author Diego CACERES (diego.caceres[AT]creatis.insa-lyon.fr)
- * Modified: 2011-05-09
- * Copyright: Diego CACERES (http://www.creatis.insa-lyon.fr/~caceres/)
- * License:
- **************************************************************/
+/*# ---------------------------------------------------------------------
+#
+# 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
+ * @brief This contains the ButtonContainerController class implementation
+ * @author Diego CACERES (diego.caceres[AT]creatis.insa-lyon.fr)
+ * @date 2011-06-02
+ */
#include "buttonContainerController.h"
-using namespace std;
namespace creaButtonContainer
{
namespace controller
{
+ // ----------------------------------------------------------------------------------
ButtonContainerController::ButtonContainerController( BCPanel* panel )
{
+ std::cout<< "MLER | ButtonContainerController::ButtonContainerController( BCPanel* panel )" << std::endl;
this->m_BCPanel = panel;
}
+ // ----------------------------------------------------------------------------------
ButtonContainerController::~ButtonContainerController( )
{
}
+ // ----------------------------------------------------------------------------------
void
ButtonContainerController::AddEvents( )
{
- //Adding ButtonManagerEvents
- for( GroupManagerList::iterator it =
- this->m_BCPanel->m_GroupManagerList.begin( ); it
- != this->m_BCPanel->m_GroupManagerList.end( ); ++it )
+ try
{
- this->Connect( ( *it ).first, wxEVT_COMMAND_BUTTON_CLICKED,
- (wxObjectEventFunction) &ButtonContainerController::ButtonExpEvent );
- }//rof
+ 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 )
+ {
+ 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 )
- {
- KeyList keylist = ( *it )->GetButtonIdContainer( );
- for( KeyList::iterator it2 = keylist.begin( ); it2 != keylist.end( ); ++it2 )
+ //Adding ButtonEvents
+ for( ButtonGroupList::iterator it =
+ this->m_BCPanel->m_ButtonGroupList.begin( ); it
+ != this->m_BCPanel->m_ButtonGroupList.end( ); ++it )
{
- this->Connect( ( *it2 ), wxEVT_COMMAND_BUTTON_CLICKED,
- (wxObjectEventFunction) &ButtonContainerController::ButtonEvent );
+ 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
- }//rof
+ }//yrt
+ catch ( const std::exception& e )
+ {
+ std::cerr << "ButtonContainerController::AddEvents( ) exception: "
+ << e.what( ) << std::endl;
+ }//hctac
}
- // -------------------------------------------------------------------
+ // ----------------------------------------------------------------------------------
void
ButtonContainerController::ButtonExpEvent( wxCommandEvent& event )
{
long id = event.GetId( );
+ std::cout<< "MLER | ButtonContainerController:: ButtonExpEvent( wxCommandEvent& event )" << std::endl;
- if ( this->m_BCPanel->m_GroupManagerList[ id ]->GetButton( )->GetLabel( ).Cmp(
- _("+") ) == 0 )
+ try
{
- this->m_BCPanel->m_GroupManagerList[ id ]->GetButton( )->SetLabel(
- _("-") );
- this->m_BCPanel->m_GroupManagerList[ id ]->HideSubPanel( false );
- }
- else if ( this->m_BCPanel->m_GroupManagerList[ id ]->GetButton( )->GetLabel( ).Cmp(
- _("-") ) == 0 )
+ //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 )
+ {
+ 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 );
- }
- this->m_BCPanel->FitSizer( );
+ std::cerr
+ << "ButtonContainerController::ButtonExpEvent( wxCommandEvent& event ) exception: "
+ << e.what( ) << std::endl;
+ }//hctac
}
- // -------------------------------------------------------------------
+ // ----------------------------------------------------------------------------------
void
ButtonContainerController::ButtonEvent( wxCommandEvent& event )
{
- for( ButtonGroupList::iterator it =
- this->m_BCPanel->m_ButtonGroupList.begin( ); it
- != this->m_BCPanel->m_ButtonGroupList.end( ); ++it )
+ 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 )
+ {
+ if ( ( *it )->GetButton( event.GetId( ) ) != NULL )
+ {
+ ( *it )->GetButton( event.GetId( ) )->Execute( );
+ }//fi
+ }//rof
+ }//yrt
+ catch ( const std::exception& e )
{
- if ( ( *it )->GetButton( event.GetId( ) ) != NULL )
- ( *it )->GetButton( event.GetId( ) )->Execute( );
- }
+ std::cerr
+ << "ButtonContainerController::ButtonEvent( wxCommandEvent& event ) exception: "
+ << e.what( ) << std::endl;
+ }//hctac
}
+ // ----------------------------------------------------------------------------------
+
+
}//ecapsename
}//ecapsename