2 # ---------------------------------------------------------------------
4 # Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image
6 # Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton
7 # Previous Authors : Laurent Guigues, Jean-Pierre Roux
8 # CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil
10 # This software is governed by the CeCILL-B license under French law and
11 # abiding by the rules of distribution of free software. You can use,
12 # modify and/ or redistribute the software under the terms of the CeCILL-B
13 # license as circulated by CEA, CNRS and INRIA at the following URL
14 # http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
15 # or in the file LICENSE.txt.
17 # As a counterpart to the access to the source code and rights to copy,
18 # modify and redistribute granted by the license, users are provided only
19 # with a limited warranty and the software's author, the holder of the
20 # economic rights, and the successive licensors have only limited
23 # The fact that you are presently reading this means that you have had
24 # knowledge of the CeCILL-B license and that you accept its terms.
25 # ------------------------------------------------------------------------
29 * wxCDMPackageManagerPanel.h
31 * Created on: Dec 10, 2012
32 * Author: Daniel Felipe Gonzalez Obando
35 #ifndef WXCDMPACKAGEMANAGERPANEL_H_
36 #define WXCDMPACKAGEMANAGERPANEL_H_
40 #include <wx/hyperlink.h>
43 #include "modelCDMProject.h"
46 * Package manager description panel. Shows the available packages in the project and the actions corresponding to package management.
48 class wxCDMPackageManagerPanel : public wxPanel
54 * Package manager description panel Constructor.
55 * @param parent Parent window reference.
56 * @param project Project class reference.
57 * @param id Panel ID. By default -1.
58 * @param caption Panel label. By default "Description Frame".
59 * @param pos Panel position. By default wxDefaultPosition.
60 * @param size Panel size. By default wxDefaultSize.
61 * @param style Panel style. By default wxDEFAULT_FRAME_STYLE.
63 wxCDMPackageManagerPanel(
65 modelCDMProject* project,
67 const wxString& caption = _("Description Frame"),
68 const wxPoint& pos = wxDefaultPosition,
69 const wxSize& size = wxDefaultSize,
70 long style = wxDEFAULT_FRAME_STYLE
76 ~wxCDMPackageManagerPanel();
79 * Package manager description panel Creator.
80 * @param parent Parent window reference.
81 * @param project Project class reference.
82 * @param id Panel ID. By default -1.
83 * @param caption Panel label. By default "Description Frame".
84 * @param pos Panel position. By default wxDefaultPosition.
85 * @param size Panel size. By default wxDefaultSize.
86 * @param style Panel style. By default wxDEFAULT_FRAME_STYLE.
90 modelCDMProject* project,
92 const wxString& caption = _("Description Frame"),
93 const wxPoint& pos = wxDefaultPosition,
94 const wxSize& size = wxDefaultSize,
95 long style = wxDEFAULT_FRAME_STYLE
99 * Creates all the controls in the panel (property and action controls).
101 void CreateControls();
104 * Retrieves the described project class reference.
105 * @return Project reference.
107 modelCDMProject* GetProject() const;
113 modelCDMProject* project;
118 * Handles when a return link is pressed.
119 * @param event Has the link reference to know where to return
121 void OnBtnReturn(wxHyperlinkEvent& event);
123 * Handles when a packages link is pressed.
124 * @param event Has the link reference to know which package was selected.
126 void OnLnkPackageSelect(wxHyperlinkEvent& event);
128 * Handles when the create package button is pressed.
130 void OnBtnCreatePackage(wxCommandEvent& event);
132 * Handles when the open package cmakelists file button is pressed.
134 void OnBtnEditCMakeLists(wxCommandEvent& event);
137 * Handles when a package link is hovered.
138 * @param event Has the link reference to know which package was selected.
140 void OnMouseEnter(wxMouseEvent& event);
142 * Handles when a package link button finishes hover.
143 * @param event Has the link reference to know which package was selected.
145 void OnMouseExit(wxMouseEvent& event);
147 * Handles when the open cmakelists file button is hovered.
149 void OnCMakeMouseEnter(wxMouseEvent& event);
151 * Handles when the open cmakelists file button finishes hover.
153 void OnCMakeMouseExit(wxMouseEvent& event);
156 #endif /* WXCDMPACKAGEMANAGERPANEL_H_ */