]> Creatis software - creaMaracasVisu.git/blob - lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/view/button.h
ea30b2024bf45340c1eb49faa4fb4a4db41e0f31
[creaMaracasVisu.git] / lib / maracasVisuLib / src / interface / wxWindows / widgets / creaButtonContainer / view / button.h
1 /************************************************************************************//*!
2  * Name:      @file button.h
3  * Purpose:   @brief This contains the Button class
4  * Author:    @author Diego CACERES (diego.caceres[AT]creatis.insa-lyon.fr)
5  * Modified:  2011-05-18
6  * Copyright:
7  * License:
8  ***************************************************************************************/
9
10 #ifndef BUTTON_H
11 #define BUTTON_H
12
13 //! @include <wx/bmpbuttn.h>
14 #include <wx/bmpbuttn.h>
15 //! @include <<wx/image.h>
16 #include <wx/image.h>
17 //! @include <wx/string.h>
18 #include <wx/string.h>
19 //! @include <string>
20 #include <string>
21 //! @include <iostream>
22 #include <iostream>
23 //! @include "functor.h"
24 #include "functor.h"
25 //! @include "system.h"
26 #include "system.h"
27
28 //!     @namespace <creaButtonContainer>
29 namespace creaButtonContainer
30 {
31         //!     @namespace <view>
32         namespace view
33         {
34                 /*! @class ContainerSettings containerSettings.h "containerSettings.h"
35                  *      @brief This class contains the settings of the button container.
36                  *  This class describes how to add new buttons to the container.
37                  */
38                 class Button : public wxBitmapButton
39                 {
40                         public:
41                                 /*!     @typedef creaButtonContainer::model::ContainerSettings ButtonGroupModel;
42                                  *      @brief Defines the ButtonGroupModel type.
43                                  */
44                                 typedef creaButtonContainer::model::TFunctor TFunctor;
45                         public:
46                                 // ----------------------------------------------------------------------------------
47                                 /*! @fn void ContainerSettings::ContainerSettings( )
48                                  *      @brief This is the constructor.
49                                  */
50                                 Button( wxWindow* parent, long id, ButtonPair* pair );
51                                 // ----------------------------------------------------------------------------------
52                                 /*! @fn void ContainerSettings::ContainerSettings( )
53                                  *      @brief This is the constructor.
54                                  */
55                                 virtual
56                                 ~Button( );
57                                 // ----------------------------------------------------------------------------------
58                                 /*! @fn KeyMapList ContainerSettings::GetGroupNameList( )
59                                  *      @brief This function returns a container with the name of the groups.
60                                  *      @return KeyMapList A list with the name of the button groups.
61                                  */
62                                 long
63                                 GetID( );
64                                 // ----------------------------------------------------------------------------------
65                                 /*! @fn KeyMapList ContainerSettings::GetGroupNameList( )
66                                  *      @brief This function returns a container with the name of the groups.
67                                  *      @return long A list with the name of the button groups.
68                                  */
69                                 std::string
70                                 GetButtonName( );
71                                 // ----------------------------------------------------------------------------------
72                                 /*! @fn KeyMapList ContainerSettings::GetGroupNameList( )
73                                  *      @brief This function returns a container with the name of the groups.
74                                  *      @return std::string A list with the name of the button groups.
75                                  */
76                                 std::string
77                                 GetIconPath( );
78                                 // ----------------------------------------------------------------------------------
79                                 /*! @fn KeyMapList ContainerSettings::GetGroupNameList( )
80                                  *      @brief This function returns a container with the name of the groups.
81                                  *      @return std::string A list with the name of the button groups.
82                                  */
83                                 std::string
84                                 GetDescription( );
85                                 // ----------------------------------------------------------------------------------
86                                 /*! @fn KeyMapList ContainerSettings::GetGroupNameList( )
87                                  *      @brief This function returns a container with the name of the groups.
88                                  *      @return std::string A list with the name of the button groups.
89                                  */
90                                 void
91                                 Execute( );
92                                 // ----------------------------------------------------------------------------------
93                         private:
94                                 ButtonPair* m_ButtonPair; //! <ButtonPair* ButtonPail pointer.
95                 };
96         }//ecapseman
97 }//ecapseman
98
99 #endif // BUTTON_H