]> Creatis software - crea.git/blobdiff - lib/creaDevManagerLib/wxCDMBlackBoxDescriptionPanel.h
Feature #1711 CreaDevManager application implementation
[crea.git] / lib / creaDevManagerLib / wxCDMBlackBoxDescriptionPanel.h
index c4be2fb6076593d369b8d5579d61ae676df473d2..fb0291ba24a1ab535c6b5920d9e5755775004cd0 100644 (file)
 #define WXCDMBLACKBOXDESCRIPTIONPANEL_H_
 
 #include <creaWx.h>
-#include <wx/panel.h>
+#include <wx/hyperlink.h>
 
 #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,24 +93,79 @@ 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:
-  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 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);
+
+
 };
 
 #endif /* WXCDMBLACKBOXDESCRIPTIONPANEL_H_ */