/*! * @file buttonManager.h * @brief This contains the ButtonManager class. * @author Diego CACERES (diego.caceres[AT]creatis.insa-lyon.fr) * @date 2011-05-19 */ #ifndef CARTOBUTTONCONTAINER_H #define CARTOBUTTONCONTAINER_H #include #include #include #include #include #include "button.h" #include "buttonGroup.h" /*! @namespace * @brief Contains the creaButtonContainer library included in creaMaracasVisu. */ namespace creaButtonContainer { /*! @namespace * @brief Contains the implementation of the view in creaButtonContainer library. * @see MVC Software Architecture */ namespace view { class ButtonManager : public wxFlexGridSizer { public: //typedef definition. /*! @typedef creaButtonContainer::model::TFunctor TFunctor; * @brief Defines the TFunctor type. */ typedef creaButtonContainer::view::Button Button; /*! @typedef creaButtonContainer::model::TFunctor TFunctor; * @brief Defines the TFunctor type. */ typedef creaButtonContainer::view::ButtonGroup ButtonGroup; /*! @typedef creaButtonContainer::model::TFunctor TFunctor; * @brief Defines the TFunctor type. */ typedef std::map< long, Button* > ButtonContainer; //end of typedef definition. public: // ---------------------------------------------------------------------------------- /*! @fn ButtonManager( ); * */ ButtonManager( ); // ---------------------------------------------------------------------------------- /*! @fn ButtonManager( ButtonGroup* buttonGroup ); * * @param buttonGroup */ ButtonManager( ButtonGroup* buttonGroup ); // ---------------------------------------------------------------------------------- /*! @fn ~ButtonManager( ); * */ virtual ~ButtonManager( ); // ---------------------------------------------------------------------------------- /*! @fn SetGroupName( wxStaticText* groupName ); * * @param groupName */ void SetGroupName( wxStaticText* groupName ); // ---------------------------------------------------------------------------------- /*! @fn ShowButtonManager( ); * */ void ShowButtonManager( ); // ---------------------------------------------------------------------------------- /*! @fn HideButtonManager( ); * */ void HideButtonManager( ); // ---------------------------------------------------------------------------------- private: // ---------------------------------------------------------------------------------- /*! @fn SetButtonManager( ButtonContainer buttonContainer ); * * @param buttonContainer */ void SetButtonManager( ButtonContainer buttonContainer ); // ---------------------------------------------------------------------------------- private: wxStaticText* m_GroupName; wxGridSizer* m_GridSizer; }; }//ecapseman }//ecapseman #endif // CARTOBUTTONCONTAINER_H