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 * wxCDMProjectDescriptionPanel.h
31 * Created on: Nov 27, 2012
32 * Author: Daniel Felipe Gonzalez Obando
35 #ifndef WXCDMPROJECTDESCRIPTIONPANEL_H_
36 #define WXCDMPROJECTDESCRIPTIONPANEL_H_
41 #include "modelCDMProject.h"
44 * Project Description Panel. Shows the project properties and the principal actions for the project.
46 class wxCDMProjectDescriptionPanel : public wxPanel
52 * Project Description panel Constructor.
53 * @param parent Parent window reference.
54 * @param project Project class reference.
55 * @param id Panel ID. By default -1.
56 * @param caption Panel label. By default "Description Frame".
57 * @param pos Panel position. By default wxDefaultPosition.
58 * @param size Panel size. By default wxDefaultSize.
59 * @param style Panel style. By default wxDEFAULT_FRAME_STYLE.
61 wxCDMProjectDescriptionPanel(
63 modelCDMProject* project,
65 const wxString& caption = _("Description Frame"),
66 const wxPoint& pos = wxDefaultPosition,
67 const wxSize& size = wxDefaultSize,
68 long style = wxDEFAULT_FRAME_STYLE
74 ~wxCDMProjectDescriptionPanel();
77 * Project Description panel Creator.
78 * @param parent Parent window reference.
79 * @param project Project class reference.
80 * @param id Panel ID. By default -1.
81 * @param caption Panel label. By default "Description Frame".
82 * @param pos Panel position. By default wxDefaultPosition.
83 * @param size Panel size. By default wxDefaultSize.
84 * @param style Panel style. By default wxDEFAULT_FRAME_STYLE.
85 * @return True if creation was successful.
89 modelCDMProject* project,
91 const wxString& caption = _("Description Frame"),
92 const wxPoint& pos = wxDefaultPosition,
93 const wxSize& size = wxDefaultSize,
94 long style = wxDEFAULT_FRAME_STYLE
98 * Creates all the controls in the panel (property and action controls).
100 void CreateControls();
103 * Retrieves the described project class reference.
104 * @return Project reference.
106 modelCDMProject* GetProject() const;
112 modelCDMProject* project;
114 * Text control showing the project version.
116 wxStaticText* versiontc;
118 * Text control showing the project version date.
120 wxStaticText* versionDatetc;
122 * Text control showing the project build path.
124 wxStaticText* buildPathtc;
129 * Handles when the manage packages button is pressed.
131 void OnBtnManagePackages(wxCommandEvent& event);
133 * Handles when the manage libraries button is pressed.
135 void OnBtnManageLibraries(wxCommandEvent& event);
137 * Handles when the manage applications button is pressed.
139 void OnBtnManageApplications(wxCommandEvent& event);
141 * Handles when the open cmakelists file button is pressed.
143 void OnBtnEditCMakeLists(wxCommandEvent& event);
145 * Handles when the choose build path button is pressed.
147 void OnBtnSetBuildPath(wxCommandEvent& event);
149 * Handles when the open containing folder button is pressed.
151 void OnBtnOpenFolder(wxCommandEvent& event);
153 * Handles when the set version button is pressed.
155 void OnBtnSetVersion(wxCommandEvent& event);
158 * Handles when the open cmakelists file button is hovered.
160 void OnCMakeMouseEnter(wxMouseEvent& event);
162 * Handles when the open cmakelists file button finishes hover.
164 void OnCMakeMouseExit(wxMouseEvent& event);
166 * Handles when the manage applications button is hovered.
168 void OnAppliMouseEnter(wxMouseEvent& event);
170 * Handles when the manage applications file button finishes hover.
172 void OnAppliMouseExit(wxMouseEvent& event);
174 * Handles when the manage libraries button is hovered.
176 void OnLibMouseEnter(wxMouseEvent& event);
178 * Handles when the manage libraries button finishes hover.
180 void OnLibMouseExit(wxMouseEvent& event);
183 #endif /* WXCDMPROJECTDESCRIPTIONPANEL_H_ */