2 * @file PanelButtonContainer
3 * @brief This contains the ButtonContainerSettings class.
4 * @author Diego CACERES (diego.caceres[AT]creatis.insa-lyon.fr)
8 #ifndef PANELBUTTONCONTAINER_H_
9 #define PANELBUTTONCONTAINER_H_
12 #include <wx/aui/aui.h>
15 #include "containerSettings.h"
16 #include "buttonContainerPanel.h"
17 #include "buttonContainerSettings.h"
20 /*! @namespace <creaPanelButtonContainer>
21 * @brief Contains the creaPanelButtonContainer library included in creaMaracasVisu.
23 namespace creaPanelButtonContainer
25 /*! @class PanelButtonContainer panelButtonContainer.h "panelButtonContainer.h"
26 * @brief This class contains the PanelButtonContainer. It derives from wxPanel.
27 * @see <a href="http://docs.wxwidgets.org/stable/wx_wxpanel.html">wxPanel</a>
29 class PanelButtonContainer : public wxPanel
33 /*! typedef creaButtonContainer::model::TFunctor TFunctor;
34 * @brief Defines the TFunctor type.
36 typedef creaPanelButtonContainer::ButtonContainerSettings
37 ButtonContainerSettings;
38 /*! typedef creaButtonContainer::model::TFunctor TFunctor;
39 * @brief Defines the TFunctor type.
41 typedef creaButtonContainer::view::ButtonContainerPanel
43 // ----------------------------------------------------------------------------------
44 //end of typedef definition.
46 // ----------------------------------------------------------------------------------
47 /*! @fn PanelButtonContainer( wxWindow* parent, ButtonContainerSettings* bcSettings );
48 * @brief This is the parameterized constructor.
52 PanelButtonContainer( wxWindow* parent,
53 ButtonContainerSettings* bcSettings );
54 // ----------------------------------------------------------------------------------
55 /*! @fn virtual PanelButtonContainer( );
56 * @brief This is the destructor.
59 ~PanelButtonContainer( );
60 // ----------------------------------------------------------------------------------
61 /*! @fn void UpdatePanel( const std::string &buttonName );
62 * @brief This method Updates the m_ButtonPanel for a panel
63 * of the clicked button in creaButtonContainer.
67 UpdatePanel( const std::string &buttonName );
68 // ----------------------------------------------------------------------------------
69 /*! @fn void GenericButtonEvent( const std::string &buttonName );
70 * @brief This method is the function that calls the panels contained in the buttons
71 * (in creaButtonContainer is the function contained in the functors to be called back.
75 GenericButtonEvent( const std::string &buttonName );
76 // ----------------------------------------------------------------------------------
79 ButtonContainerSettings* m_ButtonContainerSettings; //!<This is the buttonContainer settings.
81 ButtonContainerPanel* m_ButtonContainerPanel; //!<This is the panel with de buttons (creaButtonContainer)
82 wxAuiManager* m_AuiManager; //!<The AUI Manager for the panels.
83 wxPanel* m_ButtonPanel; //!<This is the panel used to contain the panels of the buttons. (it changes with the buttonAction)
84 DECLARE_EVENT_TABLE() //!<Event Table declaration.
88 #endif // PANELBUTTONCONTAINER_H_