X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FcreaDevManagerLib%2FwxCDMAppliDescriptionPanel.h;h=a12c31f459521906559fb430e1657c70caf4d5fe;hb=0cc6a7e002ad79de9453517108d7456fd44ddfdb;hp=b77b3fdcd9fa7ad239bb18b5fe88fe9199fbe506;hpb=5413640f931dc9bc9b3c24a27f42c3cf40c35072;p=crea.git diff --git a/lib/creaDevManagerLib/wxCDMAppliDescriptionPanel.h b/lib/creaDevManagerLib/wxCDMAppliDescriptionPanel.h index b77b3fd..a12c31f 100644 --- a/lib/creaDevManagerLib/wxCDMAppliDescriptionPanel.h +++ b/lib/creaDevManagerLib/wxCDMAppliDescriptionPanel.h @@ -36,15 +36,27 @@ #define WXCDMAPPLIDESCRIPTIONPANEL_H_ #include -#include #include #include "modelCDMAppli.h" -class wxCDMAppliDescriptionPanel : public wxPanel +/** + * Application manager description panel. Shows the available applications in the project and the actions corresponding to application management. + */ +class wxCDMAppliDescriptionPanel : public wxScrolledWindow { DECLARE_EVENT_TABLE() public: + /** + * Application manager description panel Constructor. + * @param parent Parent window reference. + * @param appli Application manager class reference. + * @param id Panel ID. By default -1. + * @param caption Panel label. By default "Description Frame". + * @param pos Panel position. By default wxDefaultPosition. + * @param size Panel size. By default wxDefaultSize. + * @param style Panel style. By default wxDEFAULT_FRAME_STYLE. + */ wxCDMAppliDescriptionPanel( wxWindow* parent, modelCDMAppli* appli, @@ -57,6 +69,17 @@ public: ~wxCDMAppliDescriptionPanel(); + /** + * Application manager description panel Creator. + * @param parent Parent window reference. + * @param appli Application manager class reference. + * @param id Panel ID. By default -1. + * @param caption Panel label. By default "Description Frame". + * @param pos Panel position. By default wxDefaultPosition. + * @param size Panel size. By default wxDefaultSize. + * @param style Panel style. By default wxDEFAULT_FRAME_STYLE. + * @return True if the creation was successful. + */ bool Create( wxWindow* parent, modelCDMAppli* appli, @@ -67,17 +90,65 @@ public: long style = wxDEFAULT_FRAME_STYLE ); + /** + * Creates all the controls in the panel (property and action controls). + */ void CreateControls(); private: + /** + * Application manager described. + */ modelCDMAppli* appli; //handlers protected: + /** + * Handles when the create application button is pressed. + */ void OnBtnCreateApplication(wxCommandEvent& event); + /** + * Handles when the open package cmakelists file button is pressed. + */ void OnBtnEditCMakeLists(wxCommandEvent& event); + /** + * Handles when a application checkbox is (un)checked. + * @param event Has the link reference to know which application was selected. + */ + void OnChBApplicationChange(wxCommandEvent& event); + /** + * Handles when an application link is pressed. + * @param event Has the link reference to know which application was selected. + */ void OnLnkApplicationSelect(wxHyperlinkEvent& event); - void OnBtnReturn(wxCommandEvent& event); + /** + * Handles when a return link is pressed. + * @param event Has the link reference to know where to return + */ + void OnBtnReturn(wxHyperlinkEvent& event); + /** + * Handles when the open folder button is pressed. + */ + void OnBtnOpenFolder(wxCommandEvent& event); + + /** + * Handles when a application link is hovered. + * @param event Has the link reference to know which application was selected. + */ + void OnMouseEnter(wxMouseEvent& event); + /** + * Handles when a application link button finishes hover. + * @param event Has the link reference to know which application was selected. + */ + void OnMouseExit(wxMouseEvent& event); + /** + * Handles when the open cmakelists file button is hovered. + */ + void OnCMakeMouseEnter(wxMouseEvent& event); + /** + * Handles when the open cmakelists file button finishes hover. + */ + void OnCMakeMouseExit(wxMouseEvent& event); };