3 * @brief This contains the GroupManager class
4 * @author Diego CACERES (diego.caceres[AT]creatis.insa-lyon.fr)
12 #include <wx/button.h>
13 #include <wx/stattext.h>
19 #include "buttonManager.h"
20 #include "buttonGroup.h"
22 /*! @namespace <creaButtonContainer>
23 * @brief Contains the creaButtonContainer library included in creaMaracasVisu.
25 namespace creaButtonContainer
27 /*! @namespace <creaButtonContainer::view>
28 * @brief Contains the implementation of the view in creaButtonContainer library.
29 * @see <a href="http://en.wikipedia.org/wiki/Model-view-controller">MVC Software Architecture</a>
33 /*! @class GroupManager groupManager.h "groupManager.h"
34 * @brief This class contains the GroupManager.
35 * @details This class describes a wxFlexGridSizer with the group manager.
36 * @see <a href="http://docs.wxwidgets.org/stable/wx_wxflexGridSizer.html">wxFlexGridSizer</a>
38 class GroupManager : public wxFlexGridSizer
42 // ----------------------------------------------------------------------------------
43 /*! @typedef creaButtonContainer::view::ButtonGroup ButtonGroup;
44 * @brief Defines the ButtonGroup type.
46 typedef creaButtonContainer::view::ButtonGroup ButtonGroup;
47 // ----------------------------------------------------------------------------------
48 /*! @typedef wxButton ExpansionButton;
49 * @brief Defines the ExpansionButton type.
51 typedef wxButton ExpansionButton;
52 // ----------------------------------------------------------------------------------
53 //end of typedef definition.
55 // ----------------------------------------------------------------------------------
56 /*! @fn GroupManager( wxWindow* parent, ButtonGroup* buttonGroup );
57 * @brief This is the parameterized constructor.
58 * @param parent The wxWindow* parent
59 * @param buttonGroup The pointer to the ButtonGroup.
61 GroupManager( wxWindow* parent, ButtonGroup* buttonGroup );
62 // ----------------------------------------------------------------------------------
63 /*! @fn ~GroupManager( );
64 * @brief This is the destructor.
68 // ----------------------------------------------------------------------------------
69 /*! @fn GetButtonID( );
70 * @brief This method returns the Button ID.
75 // ----------------------------------------------------------------------------------
77 * @brief This method returns the expansion button.
82 // ----------------------------------------------------------------------------------
83 /*! @fn GetButtonManager( );
84 * @brief This method returns the manager of the buttons.
89 // ----------------------------------------------------------------------------------
90 /*! @fn SetButtonID( long id );
91 * @brief This method sets the ID of the expansion button.
95 SetButtonID( long id );
96 // ----------------------------------------------------------------------------------
97 /*! @fn SetButton( ExpansionButton* button );
98 * @brief This method sets the expansion button.
102 SetButton( ExpansionButton* button );
103 // ----------------------------------------------------------------------------------
104 /*! @fn SetButtonManager( ButtonManager* manager );
105 * @brief This method Sets the ButtonManager
106 * @param manager A pointer with the manager.
109 SetButtonManager( ButtonManager* manager );
110 // ----------------------------------------------------------------------------------
111 /*! @fn HideSubPanel( bool hide );
112 * @brief This method hides the subPanel (Hides the buttons).
113 * @param hide True if you need to hide the buttons.
116 HideSubPanel( bool hide );
119 long m_IDExpButton; //!<ID of "+""-" expansion button.
120 ExpansionButton* m_ExpansionButton; //!<The expansion button.
121 ButtonManager* m_ButtonManager; //!<The button manager.
126 #endif // GROUPMANAGER_H