2
* This file is part of the Code::Blocks IDE and licensed under the GNU Lesser General Public License, version 3
3
* http://www.gnu.org/licenses/lgpl-3.0.html
6
#ifndef NEWFROMTEMPLATEDLG_H
7
#define NEWFROMTEMPLATEDLG_H
11
#include "pluginmanager.h"
17
class ProjectTemplateLoader;
19
class NewFromTemplateDlg : public wxDialog
22
NewFromTemplateDlg(TemplateOutputType initial, const wxArrayString& user_templates);
23
virtual ~NewFromTemplateDlg();
25
ProjectTemplateLoader* GetTemplate(){ return m_Template; }
26
cbWizardPlugin* GetWizard(){ return m_pWizard; }
27
int GetWizardIndex() const { return m_WizardIndex; }
28
cbWizardPlugin* GetSelectedTemplate();
29
bool SelectedUserTemplate() const;
30
wxString GetSelectedUserTemplate() const;
32
void EndModal(int retCode);
34
void FillTemplate(ProjectTemplateLoader* pt);
35
void BuildCategories();
36
void BuildCategoriesFor(TemplateOutputType otype, wxChoice* cat);
38
void BuildListFor(TemplateOutputType otype, wxListCtrl* list, const wxChoice* cat);
40
void ClearListFor(wxListCtrl* list);
41
void OnListRightClick(wxListEvent& event);
42
void OnListActivate(wxListEvent& event);
43
void OnCategoryChanged(wxCommandEvent& event);
44
void OnEditScript(wxCommandEvent& event);
45
void OnDiscardScript(wxCommandEvent& event);
46
void OnEditGlobalScript(wxCommandEvent& event);
47
void OnViewChange(wxCommandEvent& event);
48
void OnHelp(wxCommandEvent& event);
49
void OnUpdateUI(wxUpdateUIEvent& event);
52
void EditScript(const wxString& filename);
53
wxListCtrl* GetVisibleListCtrl();
54
wxChoice* GetVisibleCategory();
55
TemplateOutputType GetVisibleOutputType() const;
57
ProjectTemplateLoader* m_Template;
58
cbWizardPlugin* m_pWizard;
60
PluginsArray m_Wizards;
64
#endif // NEWFROMTEMPLATEDLG_H