//////////////////////////////////////////////////////////////////////
// This file was auto-generated by codelite's wxCrafter Plugin
// wxCrafter project file: compiler_page.wxcp
// Do not modify this file by hand!
//////////////////////////////////////////////////////////////////////

#ifndef _CODELITE_LITEEDITOR_COMPILER_PAGE_BASE_CLASSES_H
#define _CODELITE_LITEEDITOR_COMPILER_PAGE_BASE_CLASSES_H

// clang-format off
#include <wx/settings.h>
#include <wx/xrc/xmlres.h>
#include <wx/xrc/xh_bmp.h>
#include <wx/dialog.h>
#include <wx/iconbndl.h>
#include <wx/artprov.h>
#include <wx/sizer.h>
#include <wx/stattext.h>
#include <wx/textctrl.h>
#include <wx/statline.h>
#include <wx/button.h>
#include "clThemedTextCtrl.hpp"
#include <wx/choice.h>
#include <wx/arrstr.h>
#include <wx/panel.h>
#include <wx/toolbar.h>
#include "clToolBar.h"
#include <wx/listbox.h>
#include <wx/notebook.h>
#include <wx/imaglist.h>
#include <wx/propgrid/manager.h>
#include <wx/propgrid/property.h>
#include <wx/propgrid/advprops.h>
#include <wx/dataview.h>
#include "clThemedListCtrl.h"
#include <wx/listctrl.h>
#include <wx/splitter.h>
#include "clThemedSplitterWindow.h"
#include <wx/checkbox.h>
#include <wx/stc/stc.h>
#include "clThemedSTC.hpp"
#include "clThemedChoice.h"
#if wxVERSION_NUMBER >= 2900
#include <wx/persist.h>
#include <wx/persist/toplevel.h>
#include <wx/persist/bookctrl.h>
#include <wx/persist/treebook.h>
#endif

#ifdef WXC_FROM_DIP
#undef WXC_FROM_DIP
#endif
#if wxVERSION_NUMBER >= 3100
#define WXC_FROM_DIP(x) wxWindow::FromDIP(x, NULL)
#else
#define WXC_FROM_DIP(x) x
#endif

// clang-format on

class CompilerOptionDlgBase : public wxDialog
{
protected:
    wxStaticText* m_staticText26;
    wxTextCtrl* m_textCtrl18;
    wxStaticText* m_staticText27;
    wxTextCtrl* m_textCtrl19;
    wxStaticLine* m_staticline4;
    wxButton* m_buttonOK;
    wxButton* m_buttonCancel;

protected:
public:
    wxStaticText* GetStaticText26() { return m_staticText26; }
    wxTextCtrl* GetTextCtrl18() { return m_textCtrl18; }
    wxStaticText* GetStaticText27() { return m_staticText27; }
    wxTextCtrl* GetTextCtrl19() { return m_textCtrl19; }
    wxStaticLine* GetStaticline4() { return m_staticline4; }
    wxButton* GetButtonOK() { return m_buttonOK; }
    wxButton* GetButtonCancel() { return m_buttonCancel; }
    CompilerOptionDlgBase(wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = wxT(""),
                          const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize(-1, -1),
                          long style = wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER);
    virtual ~CompilerOptionDlgBase();
};

class CompilerPatternDlgBase : public wxDialog
{
protected:
    wxStaticText* m_staticText5;
    clThemedTextCtrl* m_textPattern;
    wxStaticText* m_staticText6;
    clThemedTextCtrl* m_textFileIndex;
    wxStaticText* m_staticText7;
    clThemedTextCtrl* m_textLineNumber;
    wxStaticText* m_staticText235;
    clThemedTextCtrl* m_textColumn;
    wxStdDialogButtonSizer* m_stdBtnSizer229;
    wxButton* m_button231;
    wxButton* m_button233;

protected:
    virtual void OnSubmit(wxCommandEvent& event) { event.Skip(); }

public:
    wxStaticText* GetStaticText5() { return m_staticText5; }
    clThemedTextCtrl* GetTextPattern() { return m_textPattern; }
    wxStaticText* GetStaticText6() { return m_staticText6; }
    clThemedTextCtrl* GetTextFileIndex() { return m_textFileIndex; }
    wxStaticText* GetStaticText7() { return m_staticText7; }
    clThemedTextCtrl* GetTextLineNumber() { return m_textLineNumber; }
    wxStaticText* GetStaticText235() { return m_staticText235; }
    clThemedTextCtrl* GetTextColumn() { return m_textColumn; }
    CompilerPatternDlgBase(wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = wxT(""),
                           const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize(-1, -1),
                           long style = wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER);
    virtual ~CompilerPatternDlgBase();
};

class NewCompilerDlgBase : public wxDialog
{
protected:
    wxStaticText* m_staticText84;
    wxTextCtrl* m_textCtrlCompilerName;
    wxStaticText* m_staticText88;
    wxChoice* m_choiceCompilers;
    wxStdDialogButtonSizer* m_stdBtnSizer75;
    wxButton* m_buttonCancel;
    wxButton* m_buttonOK;

protected:
    virtual void OnOkUI(wxUpdateUIEvent& event) { event.Skip(); }

public:
    wxStaticText* GetStaticText84() { return m_staticText84; }
    wxTextCtrl* GetTextCtrlCompilerName() { return m_textCtrlCompilerName; }
    wxStaticText* GetStaticText88() { return m_staticText88; }
    wxChoice* GetChoiceCompilers() { return m_choiceCompilers; }
    NewCompilerDlgBase(wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("New Compiler"),
                       const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize(-1, -1),
                       long style = wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER);
    virtual ~NewCompilerDlgBase();
};

class CompilerMainPageBase : public wxPanel
{
protected:
    clToolBar* m_toolbar;
    wxListBox* m_listBoxCompilers;
    wxNotebook* m_auiBook;
    wxPanel* m_panelTools;
    wxPropertyGridManager* m_pgMgrTools;
    wxPGProperty* m_pgProp94;
    wxPGProperty* m_pgPropCXX;
    wxPGProperty* m_pgPropCC;
    wxPGProperty* m_pgPropAS;
    wxPGProperty* m_pgPropLD;
    wxPGProperty* m_pgPropSharedObjectLD;
    wxPGProperty* m_pgPropAR;
    wxPGProperty* m_pgPropResourceCompiler;
    wxPGProperty* m_pgPropMAKE;
    wxPGProperty* m_pgPropMkdir;
    wxPGProperty* m_pgPropDebugger;
    wxPanel* m_panelPatterns;
    wxStaticText* m_staticText161;
    clThemedListCtrl* m_dvListCtrlErrors;
    wxButton* m_btnAddErrPattern;
    wxButton* m_btnDelErrPattern;
    wxButton* m_btnUpdateErrPattern;
    wxStaticText* m_staticText17;
    clThemedListCtrl* m_dvListCtrlWarnings;
    wxButton* m_btnAddWarnPattern;
    wxButton* m_btnDelWarnPattern;
    wxButton* m_btnUpdateWarnPattern;
    wxPanel* m_panelCompilerOptions;
    wxStaticText* m_staticText23_O;
    wxListCtrl* m_listCompilerOptions;
    wxButton* m_buttonCompilerOption;
    wxButton* m_buttonDeleteCompilerOption;
    wxPanel* m_panelLinkerOptions;
    wxStaticText* m_staticText23_L;
    wxListCtrl* m_listLinkerOptions;
    wxButton* m_buttonLinkerOption;
    wxButton* m_buttonDeleteLinkerOption;
    wxPanel* m_panelTemplates;
    clThemedSplitterWindow* m_splitter261;
    wxPanel* m_splitterPageFileTemplates;
    wxStaticText* m_staticText254;
    clThemedListCtrl* m_dvListCtrlFileTemplates;
    wxButton* m_buttonNewFileType;
    wxButton* m_buttonDeleteFileType;
    wxPanel* m_splitterPageLinkerTemplates;
    wxStaticText* m_staticLinkerLine;
    clThemedListCtrl* m_dvListCtrlLinkType;
    wxCheckBox* m_checkBoxReadObjectsFromFile;
    wxPanel* m_panelCompilerSwitches;
    wxStaticText* m_staticText8;
    wxListCtrl* m_listSwitches;
    wxPanel* m_panelAdvanced;
    wxStaticText* m_staticText18;
    wxStaticText* m_staticText141;
    wxTextCtrl* m_textCtrlGlobalIncludePath;
    wxButton* m_button67;
    wxStaticText* m_staticText16;
    wxTextCtrl* m_textCtrlGlobalLibPath;
    wxButton* m_button69;
    wxStaticText* m_staticText19;
    wxStaticText* m_staticText3;
    wxTextCtrl* m_textObjectExtension;
    wxStaticText* m_staticText24;
    wxTextCtrl* m_textDependExtension;
    wxStaticText* m_staticText25;
    wxTextCtrl* m_textPreprocessExtension;
    wxCheckBox* m_checkBoxGenerateDependenciesFiles;
    wxCheckBox* m_checkBoxObjectNameSameAsFileName;

protected:
    virtual void OnCompilerSelected(wxCommandEvent& event) { event.Skip(); }
    virtual void OnContextMenu(wxContextMenuEvent& event) { event.Skip(); }
    virtual void OnCustomEditorButtonClicked(wxCommandEvent& event) { event.Skip(); }
    virtual void OnValueChanged(wxPropertyGridEvent& event) { event.Skip(); }
    virtual void OnErrItemActivated(wxDataViewEvent& event) { event.Skip(); }
    virtual void OnErrorPatternSelectedUI(wxUpdateUIEvent& event) { event.Skip(); }
    virtual void OnBtnAddErrPattern(wxCommandEvent& event) { event.Skip(); }
    virtual void OnBtnDelErrPattern(wxCommandEvent& event) { event.Skip(); }
    virtual void OnBtnUpdateErrPattern(wxCommandEvent& event) { event.Skip(); }
    virtual void OnWarnItemActivated(wxDataViewEvent& event) { event.Skip(); }
    virtual void OnWarningPatternSelectedUI(wxUpdateUIEvent& event) { event.Skip(); }
    virtual void OnBtnAddWarnPattern(wxCommandEvent& event) { event.Skip(); }
    virtual void OnBtnDelWarnPattern(wxCommandEvent& event) { event.Skip(); }
    virtual void OnBtnUpdateWarnPattern(wxCommandEvent& event) { event.Skip(); }
    virtual void OnCompilerOptionActivated(wxListEvent& event) { event.Skip(); }
    virtual void OnCompilerOptionDeSelected(wxListEvent& event) { event.Skip(); }
    virtual void OnCompilerOptionSelected(wxListEvent& event) { event.Skip(); }
    virtual void OnNewCompilerOption(wxCommandEvent& event) { event.Skip(); }
    virtual void OnDeleteCompilerOption(wxCommandEvent& event) { event.Skip(); }
    virtual void OnLinkerOptionActivated(wxListEvent& event) { event.Skip(); }
    virtual void OnLinkerOptionDeSelected(wxListEvent& event) { event.Skip(); }
    virtual void OnLinkerOptionSelected(wxListEvent& event) { event.Skip(); }
    virtual void OnNewLinkerOption(wxCommandEvent& event) { event.Skip(); }
    virtual void OnDeleteLinkerOption(wxCommandEvent& event) { event.Skip(); }
    virtual void OnFileTypeActivated(wxDataViewEvent& event) { event.Skip(); }
    virtual void OnNewFileType(wxCommandEvent& event) { event.Skip(); }
    virtual void OnDeleteFileType(wxCommandEvent& event) { event.Skip(); }
    virtual void OnLinkLineActivated(wxDataViewEvent& event) { event.Skip(); }
    virtual void OnLinkerUseFileInput(wxCommandEvent& event) { event.Skip(); }
    virtual void OnItemActivated(wxListEvent& event) { event.Skip(); }
    virtual void OnItemSelected(wxListEvent& event) { event.Skip(); }
    virtual void OnCmdModify(wxCommandEvent& event) { event.Skip(); }
    virtual void OnEditIncludePaths(wxCommandEvent& event) { event.Skip(); }
    virtual void OnEditLibraryPaths(wxCommandEvent& event) { event.Skip(); }

public:
    clToolBar* GetToolbar() { return m_toolbar; }
    wxListBox* GetListBoxCompilers() { return m_listBoxCompilers; }
    wxPropertyGridManager* GetPgMgrTools() { return m_pgMgrTools; }
    wxPanel* GetPanelTools() { return m_panelTools; }
    wxStaticText* GetStaticText161() { return m_staticText161; }
    clThemedListCtrl* GetDvListCtrlErrors() { return m_dvListCtrlErrors; }
    wxButton* GetBtnAddErrPattern() { return m_btnAddErrPattern; }
    wxButton* GetBtnDelErrPattern() { return m_btnDelErrPattern; }
    wxButton* GetBtnUpdateErrPattern() { return m_btnUpdateErrPattern; }
    wxStaticText* GetStaticText17() { return m_staticText17; }
    clThemedListCtrl* GetDvListCtrlWarnings() { return m_dvListCtrlWarnings; }
    wxButton* GetBtnAddWarnPattern() { return m_btnAddWarnPattern; }
    wxButton* GetBtnDelWarnPattern() { return m_btnDelWarnPattern; }
    wxButton* GetBtnUpdateWarnPattern() { return m_btnUpdateWarnPattern; }
    wxPanel* GetPanelPatterns() { return m_panelPatterns; }
    wxStaticText* GetStaticText23_O() { return m_staticText23_O; }
    wxListCtrl* GetListCompilerOptions() { return m_listCompilerOptions; }
    wxButton* GetButtonCompilerOption() { return m_buttonCompilerOption; }
    wxButton* GetButtonDeleteCompilerOption() { return m_buttonDeleteCompilerOption; }
    wxPanel* GetPanelCompilerOptions() { return m_panelCompilerOptions; }
    wxStaticText* GetStaticText23_L() { return m_staticText23_L; }
    wxListCtrl* GetListLinkerOptions() { return m_listLinkerOptions; }
    wxButton* GetButtonLinkerOption() { return m_buttonLinkerOption; }
    wxButton* GetButtonDeleteLinkerOption() { return m_buttonDeleteLinkerOption; }
    wxPanel* GetPanelLinkerOptions() { return m_panelLinkerOptions; }
    wxStaticText* GetStaticText254() { return m_staticText254; }
    clThemedListCtrl* GetDvListCtrlFileTemplates() { return m_dvListCtrlFileTemplates; }
    wxButton* GetButtonNewFileType() { return m_buttonNewFileType; }
    wxButton* GetButtonDeleteFileType() { return m_buttonDeleteFileType; }
    wxPanel* GetSplitterPageFileTemplates() { return m_splitterPageFileTemplates; }
    wxStaticText* GetStaticLinkerLine() { return m_staticLinkerLine; }
    clThemedListCtrl* GetDvListCtrlLinkType() { return m_dvListCtrlLinkType; }
    wxCheckBox* GetCheckBoxReadObjectsFromFile() { return m_checkBoxReadObjectsFromFile; }
    wxPanel* GetSplitterPageLinkerTemplates() { return m_splitterPageLinkerTemplates; }
    clThemedSplitterWindow* GetSplitter261() { return m_splitter261; }
    wxPanel* GetPanelTemplates() { return m_panelTemplates; }
    wxStaticText* GetStaticText8() { return m_staticText8; }
    wxListCtrl* GetListSwitches() { return m_listSwitches; }
    wxPanel* GetPanelCompilerSwitches() { return m_panelCompilerSwitches; }
    wxStaticText* GetStaticText18() { return m_staticText18; }
    wxStaticText* GetStaticText141() { return m_staticText141; }
    wxTextCtrl* GetTextCtrlGlobalIncludePath() { return m_textCtrlGlobalIncludePath; }
    wxButton* GetButton67() { return m_button67; }
    wxStaticText* GetStaticText16() { return m_staticText16; }
    wxTextCtrl* GetTextCtrlGlobalLibPath() { return m_textCtrlGlobalLibPath; }
    wxButton* GetButton69() { return m_button69; }
    wxStaticText* GetStaticText19() { return m_staticText19; }
    wxStaticText* GetStaticText3() { return m_staticText3; }
    wxTextCtrl* GetTextObjectExtension() { return m_textObjectExtension; }
    wxStaticText* GetStaticText24() { return m_staticText24; }
    wxTextCtrl* GetTextDependExtension() { return m_textDependExtension; }
    wxStaticText* GetStaticText25() { return m_staticText25; }
    wxTextCtrl* GetTextPreprocessExtension() { return m_textPreprocessExtension; }
    wxCheckBox* GetCheckBoxGenerateDependenciesFiles() { return m_checkBoxGenerateDependenciesFiles; }
    wxCheckBox* GetCheckBoxObjectNameSameAsFileName() { return m_checkBoxObjectNameSameAsFileName; }
    wxPanel* GetPanelAdvanced() { return m_panelAdvanced; }
    wxNotebook* GetAuiBook() { return m_auiBook; }
    CompilerMainPageBase(wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition,
                         const wxSize& size = wxSize(-1, -1), long style = wxTAB_TRAVERSAL);
    virtual ~CompilerMainPageBase();
};

class EditCmpTemplateDialogBase : public wxDialog
{
protected:
    clThemedSTC* m_stc;
    wxStdDialogButtonSizer* m_stdBtnSizer279;
    wxButton* m_button281;
    wxButton* m_button283;

protected:
public:
    clThemedSTC* GetStc() { return m_stc; }
    EditCmpTemplateDialogBase(wxWindow* parent, wxWindowID id = wxID_ANY,
                              const wxString& title = _("Edit Compiler Template"),
                              const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize(-1, -1),
                              long style = wxDEFAULT_DIALOG_STYLE);
    virtual ~EditCmpTemplateDialogBase();
};

class NewFileTemplateDialogBase : public wxDialog
{
protected:
    wxStaticText* m_staticText301;
    wxTextCtrl* m_textCtrlExtension;
    wxStaticText* m_staticText305;
    clThemedChoice* m_choiceFileType;
    wxStaticText* m_staticText309;
    clThemedSTC* m_stc;
    wxStdDialogButtonSizer* m_stdBtnSizer293;
    wxButton* m_button295;
    wxButton* m_button297;

protected:
public:
    wxStaticText* GetStaticText301() { return m_staticText301; }
    wxTextCtrl* GetTextCtrlExtension() { return m_textCtrlExtension; }
    wxStaticText* GetStaticText305() { return m_staticText305; }
    clThemedChoice* GetChoiceFileType() { return m_choiceFileType; }
    wxStaticText* GetStaticText309() { return m_staticText309; }
    clThemedSTC* GetStc() { return m_stc; }
    NewFileTemplateDialogBase(wxWindow* parent, wxWindowID id = wxID_ANY,
                              const wxString& title = _("New File Type Template"),
                              const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize(-1, -1),
                              long style = wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER);
    virtual ~NewFileTemplateDialogBase();
};

#endif
