/*************************************************************** * Name: ButtonGroupFactory * Purpose: Implements ButtonGroupFactory * 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: **************************************************************/ #include "buttonGroupFactory.h" namespace creaButtonContainer { namespace model { ButtonGroupFactory::ButtonGroupFactory( ) { } ButtonGroupFactory::~ButtonGroupFactory( ) { } ButtonGroupContainer ButtonGroupFactory::CreateButtonGroupContainer( wxWindow* parent, ButtonGroupModel* settings ) { ButtonGroupContainer groupView; 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 ); } return ( groupView ); } ButtonContainer ButtonGroupFactory::GetButtons( wxWindow* parent, ButtonList buttonModel ) { ButtonContainer buttonList; for( ButtonList::iterator it = buttonModel.begin( ); it != buttonModel.end( ); ++it ) { long id = wxNewId( ); buttonList[ id ] = new Button( parent, id, *it ); } return ( buttonList ); } }//ecapseman }//ecapseman