/*! * @file containerSettings.cxx * @brief Implements the ContainerSettings class. * @author Diego CACERES (diego.caceres[AT]creatis.insa-lyon.fr) * @date 2011-05-19 */ #include "containerSettings.h" namespace creaButtonContainer { namespace model { // ---------------------------------------------------------------------------------- ContainerSettings::ContainerSettings( ) { } // ---------------------------------------------------------------------------------- ContainerSettings::~ContainerSettings( ) { } // ---------------------------------------------------------------------------------- ButtonGroupMap ContainerSettings::GetButtonGroupContainer( ) { return this->m_ButtonGroupContainer; } // ---------------------------------------------------------------------------------- KeyMapList ContainerSettings::GetGroupNameList( ) { return this->m_GroupNameList; } // ---------------------------------------------------------------------------------- void ContainerSettings::SetButtonGroupContainer( ButtonGroupMap bgContainer ) { this->m_ButtonGroupContainer = bgContainer; } // ---------------------------------------------------------------------------------- void ContainerSettings::SetGroupNameList( KeyMapList gNameList ) { this->m_GroupNameList = gNameList; } // ---------------------------------------------------------------------------------- void ContainerSettings::AddButton( const std::string & groupName, const std::string buttonName, const std::string iconpath, const std::string buttonDescription, FunctionEventType event ) { ButtonPair* pair = new ButtonPair( new ButtonInfo( buttonName, iconpath ), new ButtonAction( buttonDescription, event ) ); try { for( KeyMapList::iterator it = this->m_GroupNameList.begin( ); it != this->m_GroupNameList.end( ); ++it ) { if ( ( *it ).compare( groupName ) == 0 ) { 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 ( 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 } // ---------------------------------------------------------------------------------- }//ecapseman }//ecapseman