1 /***************************************************************
2 * Name: @file ButtonGroupFactory.h
3 * Purpose: @brief This contains ButtonGroupFactory Class
4 * Author: @author Diego CACERES (diego.caceres[AT]creatis.insa-lyon.fr)
6 * Copyright: Diego CACERES (http://www.creatis.insa-lyon.fr/~caceres/)
8 **************************************************************/
10 #ifndef BUTTONGROUPFACTORY_H
11 #define BUTTONGROUPFACTORY_H
13 #include <wx/window.h>
19 #include "buttonGroup.h"
20 #include "containerSettings.h"
23 ///@namespace <creaButtonContainer>
24 namespace creaButtonContainer
30 typedef creaButtonContainer::view::Button Button;
31 typedef creaButtonContainer::view::ButtonGroup ButtonGroup;
32 typedef creaButtonContainer::model::ContainerSettings ButtonGroupModel;
33 typedef std::list< ButtonGroup* > ButtonGroupContainer;
34 typedef std::map< long, Button* > ButtonContainer;
35 /// @class ButtonGroupFactory
36 /// @brief This class is the factory of a group of wxButtons
37 class ButtonGroupFactory
42 * @brief This is the default constructor.
44 ButtonGroupFactory( );
47 * @brief this is the destructor.
50 ~ButtonGroupFactory( );
53 * @brief This function allows to create the ButtonGroupContainer.
54 * @param the wxWindow* parent to be attached.
55 * @param The Container settings.
56 * @return The wx button group container.
59 CreateButtonGroupContainer( wxWindow* parent,
60 ButtonGroupModel* settings );
63 * @brief This function allows to create a wx button container for a group.
64 * @param the wxWindow* parent to be attached.
65 * @param The button list with its own information.
66 * @return The wx button container.
69 GetButtons( wxWindow* parent, ButtonList buttonModel );
74 #endif // CARTOBUTTONFACTORY_H