X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FcreaDevManagerLib%2FwxCDMFolderDescriptionPanel.h;h=f06f0ce692052f62c118e5f38f078339e69ef02e;hb=0cc6a7e002ad79de9453517108d7456fd44ddfdb;hp=514984e3258e02db41a75ddc92960a4caf4dcd09;hpb=609d8d48cae96384e664ec6b000e8ecfcbad6459;p=crea.git diff --git a/lib/creaDevManagerLib/wxCDMFolderDescriptionPanel.h b/lib/creaDevManagerLib/wxCDMFolderDescriptionPanel.h index 514984e..f06f0ce 100644 --- a/lib/creaDevManagerLib/wxCDMFolderDescriptionPanel.h +++ b/lib/creaDevManagerLib/wxCDMFolderDescriptionPanel.h @@ -36,14 +36,27 @@ #define WXCDMFOLDERDESCRIPTIONPANEL_H_ #include -#include +#include #include "modelCDMFolder.h" -class wxCDMFolderDescriptionPanel : public wxPanel +/** + * Folder description panel. Shows the properties of the referenced folder and the available actions. + */ +class wxCDMFolderDescriptionPanel : public wxScrolledWindow { DECLARE_EVENT_TABLE() public: + /** + * Folder description panel Constructor. + * @param parent Parent window reference. + * @param folder Folder 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. + */ wxCDMFolderDescriptionPanel( wxWindow* parent, modelCDMFolder* folder, @@ -54,8 +67,22 @@ public: long style = wxDEFAULT_FRAME_STYLE ); + /** + * Destructor. + */ ~wxCDMFolderDescriptionPanel(); + /** + * Folder description panel Creator. + * @param parent Parent window reference. + * @param folder Folder 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 creation is successful. + */ bool Create( wxWindow* parent, modelCDMFolder* folder, @@ -66,18 +93,48 @@ public: long style = wxDEFAULT_FRAME_STYLE ); + /** + * Creates all the controls in the panel (property and action controls). + */ void CreateControls(); private: + /** + * Folder described. + */ modelCDMFolder* folder; //handlers protected: - 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 package cmakelists file button is pressed. + */ void OnBtnEditCMakeLists(wxCommandEvent& event); + /** + * Handles when the create class button is pressed. + */ + void OnBtnCreateClass(wxCommandEvent& event); + /** + * Handles when the create folder button is pressed. + */ + void OnBtnCreateFolder(wxCommandEvent& event); + /** + * Handles when the open in explorer button is pressed. + */ void OnBtnOpenInExplorer(wxCommandEvent& 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); };