]> Creatis software - crea.git/blobdiff - lib/creaDevManagerLib/wxCDMLibraryDescriptionPanel.h
Feature #1711 CreaDevManager application implementation
[crea.git] / lib / creaDevManagerLib / wxCDMLibraryDescriptionPanel.h
index 1b45877c739f08c955da25a88055cac2e00ae69c..cf05cd9e2817537fa6625da192fad9b6e48fde50 100644 (file)
 
 #include <creaWx.h>
 #include <wx/panel.h>
+#include <wx/hyperlink.h>
 
 #include "modelCDMLibrary.h"
 
+/**
+ * Library description panel. Shows the available actions on the described library.
+ */
 class wxCDMLibraryDescriptionPanel : public wxPanel
 {
   DECLARE_EVENT_TABLE()
 public:
+
+  /**
+   * Library description panel Constructor.
+   * @param parent Parent window reference.
+   * @param library Project 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.
+   */
   wxCDMLibraryDescriptionPanel(
       wxWindow* parent,
       modelCDMLibrary* library,
@@ -54,8 +69,22 @@ public:
       long style = wxDEFAULT_FRAME_STYLE
   );
 
+  /**
+   * Destructor.
+   */
   ~wxCDMLibraryDescriptionPanel();
 
+  /**
+   * Library description panel Creator.
+   * @param parent Parent window reference.
+   * @param library Project 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 was successful.
+   */
   bool Create(
       wxWindow* parent,
       modelCDMLibrary* library,
@@ -66,16 +95,73 @@ public:
       long style = wxDEFAULT_FRAME_STYLE
   );
 
+  /**
+   * Creates all the controls in the panel (property and action controls).
+   */
   void CreateControls();
 
 private:
+  /**
+   * Library described.
+   */
   modelCDMLibrary* library;
+  /**
+   * Control with the described library name.
+   */
+  wxStaticText* libraryNametc;
 
   //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 executable name button is pressed.
+   * @param event Unused.
+   */
+  void OnBtnSetExeName(wxCommandEvent& event);
+  /**
+   * Handles when a 3rd Party Library checkbox state is changed. It calls to include/exclude the selected library.
+   * @param event CheckBox event.
+   */
+  void On3rdLibraryChBChange(wxCommandEvent& event);
+  /**
+   * Handles when a Custom Library checkbox state is changed. It calls to include/exclude the selected library.
+   * @param event CheckBox event.
+   */
+  void OnLibraryChBChange(wxCommandEvent& event);
+  /**
+   * Handles when the create class button is pressed.
+   * @param event Unused.
+   */
   void OnBtnCreateClass(wxCommandEvent& event);
+  /**
+   * Handles when the create folder buttonis pressed.
+   * @param event Unused.
+   */
   void OnBtnCreateFolder(wxCommandEvent& event);
+  /**
+   * Handles when Edit Cmakelists button is pressed.
+   * @param event Unused.
+   */
   void OnBtnEditCMakeLists(wxCommandEvent& event);
+  /**
+   * Handles when the open containing folder button is pressed.
+   * @param event Unused.
+   */
+  void OnBtnOpenFolder(wxCommandEvent& event);
+  /**
+   * Handles when the edit cmakelists button is hovered.
+   * @param event Unused.
+   */
+  void OnCMakeMouseEnter(wxMouseEvent& event);
+  /**
+   * Handles when the edit cmakelists button exits hover.
+   * @param event Unused.
+   */
+  void OnCMakeMouseExit(wxMouseEvent& event);
 
 };