X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FcreaDevManagerLib%2FwxCDMBlackBoxDescriptionPanel.h;h=fb0291ba24a1ab535c6b5920d9e5755775004cd0;hb=0cc6a7e002ad79de9453517108d7456fd44ddfdb;hp=e14e621044cd6c247401739f77660df3494d8c20;hpb=58e994c7ddc088821aa0f583354216c6376405c8;p=crea.git diff --git a/lib/creaDevManagerLib/wxCDMBlackBoxDescriptionPanel.h b/lib/creaDevManagerLib/wxCDMBlackBoxDescriptionPanel.h index e14e621..fb0291b 100644 --- a/lib/creaDevManagerLib/wxCDMBlackBoxDescriptionPanel.h +++ b/lib/creaDevManagerLib/wxCDMBlackBoxDescriptionPanel.h @@ -36,14 +36,27 @@ #define WXCDMBLACKBOXDESCRIPTIONPANEL_H_ #include -#include +#include #include "modelCDMBlackBox.h" -class wxCDMBlackBoxDescriptionPanel : public wxPanel +/** + * Black box description panel. Shows the properties and available actions for the described black box. + */ +class wxCDMBlackBoxDescriptionPanel : public wxScrolledWindow { DECLARE_EVENT_TABLE() public: + /** + * Black box description panel Constructor. + * @param parent Parent window reference. + * @param blackBox Black box 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. + */ wxCDMBlackBoxDescriptionPanel( wxWindow* parent, modelCDMBlackBox* blackBox, @@ -54,8 +67,22 @@ public: long style = wxDEFAULT_FRAME_STYLE ); + /** + * Destructor. + */ ~wxCDMBlackBoxDescriptionPanel(); + /** + * Black box description panel Creator. + * @param parent Parent window reference. + * @param blackBox Black box 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 creatios was successful. + */ bool Create( wxWindow* parent, modelCDMBlackBox* blackBox, @@ -66,15 +93,78 @@ public: long style = wxDEFAULT_FRAME_STYLE ); + /** + * Creates all the controls in the panel (property and action controls). + */ void CreateControls(); private: + /** + * Black box described. + */ modelCDMBlackBox* blackBox; + /** + * Black box author control. + */ + wxStaticText* authortc; + /** + * Black box description control + */ + wxStaticText* descriptiontc; + /** + * Black box categories control. + */ + wxStaticText* categoriestc; //handlers protected: + /** + * 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 set author button is pressed. + */ + void OnBtnSetAuthor(wxCommandEvent& event); + /** + * Handles when the set description button is pressed. + */ + void OnBtnSetDescription(wxCommandEvent& event); + /** + * Handles when the set categories button is pressed. + */ + void OnBtnSetCategories(wxCommandEvent& event); + /** + * Handles when the open Cxx button is pressed. + */ void OnBtnOpenCxx(wxCommandEvent& event); + /** + * Handles when the open Hxx button is pressed. + */ void OnBtnOpenHxx(wxCommandEvent& event); + /** + * Handles when the open Folder button is pressed. + */ + void OnBtnOpenFolder(wxCommandEvent& event); + + /** + * Handles when the open Cxx button is hovered. + */ + void OnCxxMouseEnter(wxMouseEvent& event); + /** + * Handles when the open Cxx button finishes hover. + */ + void OnCxxMouseExit(wxMouseEvent& event); + /** + * Handles when the open Hxx button is hovered. + */ + void OnHxxMouseEnter(wxMouseEvent& event); + /** + * Handles when the open Hxx button finishes hover. + */ + void OnHxxMouseExit(wxMouseEvent& event); + };