]> Creatis software - creaMaracasVisu.git/blob - lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/view/include/buttonGroup.h
Diego Caceres: Changes in CMakeLists.txt.
[creaMaracasVisu.git] / lib / maracasVisuLib / src / interface / wxWindows / widgets / creaButtonContainer / view / include / buttonGroup.h
1 /***************************************************************
2  * Name:      ButtonGroup.h
3  * Purpose:   Defines a group of buttons in wxWidgets
4  * Author:    Diego CACERES (diego.caceres[AT]creatis.insa-lyon.fr)
5  * Modified:  2011-05-09
6  * Copyright: Diego CACERES (http://www.creatis.insa-lyon.fr/~caceres/)
7  * License:
8  **************************************************************/
9
10 #ifndef BUTTONGROUP_H
11 #define BUTTONGROUP_H
12
13 //Library Definition
14 #include <map>
15 #include <list>
16 #include <wx/stattext.h>
17
18 #include "button.h"
19
20 namespace creaButtonContainer
21 {
22         namespace view
23         {
24                 //Typedef definition
25                 typedef creaButtonContainer::view::Button Button;
26                 typedef std::map< long, Button* > ButtonContainer;
27                 typedef std::list< long > IdButtonContainer;
28
29                 /**
30                  Class Description: This class defines a ButtonGroup.
31                  **/
32                 class ButtonGroup
33                 {
34                         public:
35                                 ButtonGroup( wxStaticText* groupName, ButtonContainer buttons );
36                                 virtual
37                                 ~ButtonGroup( );
38                                 Button*
39                                 GetButton( long id );
40                                 ButtonContainer
41                                 GetButtonContainer( );
42                                 IdButtonContainer
43                                 GetButtonIdContainer( );
44                                 wxStaticText*
45                                 GetGroupName( );
46                         private:
47                                 wxStaticText* m_GroupName;
48                                 ButtonContainer m_Buttons;
49                 };
50         }//ecapseman
51 }//ecapseman
52
53 #endif // BUTTONGROUP_H