2 * @file buttonManager.h
3 * @brief This contains the ButtonManager class.
4 * @author Diego CACERES (diego.caceres[AT]creatis.insa-lyon.fr)
8 #ifndef CARTOBUTTONCONTAINER_H
9 #define CARTOBUTTONCONTAINER_H
12 #include <wx/bmpbuttn.h>
13 #include <wx/stattext.h>
14 #include <wx/string.h>
17 #include "buttonGroup.h"
19 /*! @namespace <creaButtonContainer>
20 * @brief Contains the creaButtonContainer library included in creaMaracasVisu.
22 namespace creaButtonContainer
24 /*! @namespace <creaButtonContainer::view>
25 * @brief Contains the implementation of the view in creaButtonContainer library.
26 * @see <a href="http://en.wikipedia.org/wiki/Model-view-controller">MVC Software Architecture</a>
30 class ButtonManager : public wxFlexGridSizer
34 /*! @typedef creaButtonContainer::model::TFunctor TFunctor;
35 * @brief Defines the TFunctor type.
37 typedef creaButtonContainer::view::Button Button;
38 /*! @typedef creaButtonContainer::model::TFunctor TFunctor;
39 * @brief Defines the TFunctor type.
41 typedef creaButtonContainer::view::ButtonGroup ButtonGroup;
42 /*! @typedef creaButtonContainer::model::TFunctor TFunctor;
43 * @brief Defines the TFunctor type.
45 typedef std::map< long, Button* > ButtonContainer;
46 //end of typedef definition.
48 // ----------------------------------------------------------------------------------
49 /*! @fn ButtonManager( );
53 // ----------------------------------------------------------------------------------
54 /*! @fn ButtonManager( ButtonGroup* buttonGroup );
58 ButtonManager( ButtonGroup* buttonGroup );
59 // ----------------------------------------------------------------------------------
60 /*! @fn ~ButtonManager( );
65 // ----------------------------------------------------------------------------------
66 /*! @fn SetGroupName( wxStaticText* groupName );
71 SetGroupName( wxStaticText* groupName );
72 // ----------------------------------------------------------------------------------
73 /*! @fn ShowButtonManager( );
78 // ----------------------------------------------------------------------------------
79 /*! @fn HideButtonManager( );
84 // ----------------------------------------------------------------------------------
86 // ----------------------------------------------------------------------------------
87 /*! @fn SetButtonManager( ButtonContainer buttonContainer );
89 * @param buttonContainer
92 SetButtonManager( ButtonContainer buttonContainer );
93 // ----------------------------------------------------------------------------------
95 wxStaticText* m_GroupName;
96 wxGridSizer* m_GridSizer;
101 #endif // CARTOBUTTONCONTAINER_H