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

#ifndef _CODELITE_LITEEDITOR_WXCRAFTER_BASE_CLASSES_H
#define _CODELITE_LITEEDITOR_WXCRAFTER_BASE_CLASSES_H

// clang-format off
#include <wx/settings.h>
#include <wx/xrc/xmlres.h>
#include <wx/xrc/xh_bmp.h>
#include <wx/panel.h>
#include <wx/artprov.h>
#include <wx/sizer.h>
#include <wx/splitter.h>
#include <wx/choice.h>
#include <wx/arrstr.h>
#include <wx/imaglist.h>
#include <wx/bitmap.h>
#include <map>
#include <wx/icon.h>
#include <wx/dialog.h>
#include <wx/iconbndl.h>
#include <wx/dataview.h>
#include "clThemedListCtrl.h"
#include <wx/button.h>
#include <wx/filepicker.h>
#include "clThemedSplitterWindow.h"
#include <wx/stattext.h>
#include <wx/treectrl.h>
#include "clThemedTreeCtrl.h"
#include <wx/simplebook.h>
#include <wx/toolbar.h>
#include "clToolBar.h"
#include "clConfigurationSelectionCtrl.h"
#include "fileview.h"
#include <wx/frame.h>
#include <wx/menu.h>
#include <wx/textctrl.h>
#include <wx/statbmp.h>
#include <wx/bannerwindow.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 NavBarControlBaseClass : public wxPanel
{
protected:
    wxSplitterWindow* m_splitter;
    wxPanel* m_splitterPage39;
    wxChoice* m_scope;
    wxPanel* m_splitterPage41;
    wxChoice* m_func;

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

public:
    wxChoice* GetScope() { return m_scope; }
    wxPanel* GetSplitterPage39() { return m_splitterPage39; }
    wxChoice* GetFunc() { return m_func; }
    wxPanel* GetSplitterPage41() { return m_splitterPage41; }
    wxSplitterWindow* GetSplitter() { return m_splitter; }
    NavBarControlBaseClass(wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize(-1,-1), long style = wxWANTS_CHARS|wxTAB_TRAVERSAL|wxTRANSPARENT_WINDOW);
    virtual ~NavBarControlBaseClass();
};


class NewProjImgList : public wxImageList
{
protected:
    // Maintain a map of all bitmaps representd by their name
    std::map<wxString, wxBitmap> m_bitmaps;
    // The requested image resolution (can be one of @2x, @1.5x, @1.25x or an empty string (the default)
    wxString m_resolution;
    int m_imagesWidth;
    int m_imagesHeight;


protected:

public:
    NewProjImgList();
    const wxBitmap& Bitmap(const wxString &name) const {
        if ( !m_bitmaps.count(name + m_resolution) )
            return wxNullBitmap;
        return m_bitmaps.find(name + m_resolution)->second;
    }

    void SetBitmapResolution(const wxString &res = wxEmptyString) {
        m_resolution = res;
    }

    virtual ~NewProjImgList();
};


class AddFunctionsImplBaseDlg : public wxDialog
{
protected:
    clThemedListCtrl* m_dvListCtrl;
    wxButton* m_button133;
    wxButton* m_button135;
    wxFilePickerCtrl* m_filePicker;
    wxButton* m_button121;
    wxButton* m_button123;

protected:
    virtual void OnCheckAll(wxCommandEvent& event) { event.Skip(); }
    virtual void OnUncheckAll(wxCommandEvent& event) { event.Skip(); }
    virtual void OnOKUI(wxUpdateUIEvent& event) { event.Skip(); }

public:
    clThemedListCtrl* GetDvListCtrl() { return m_dvListCtrl; }
    wxButton* GetButton133() { return m_button133; }
    wxButton* GetButton135() { return m_button135; }
    wxFilePickerCtrl* GetFilePicker() { return m_filePicker; }
    wxButton* GetButton121() { return m_button121; }
    wxButton* GetButton123() { return m_button123; }
    AddFunctionsImplBaseDlg(wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Add function implementation"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize(-1,-1), long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER);
    virtual ~AddFunctionsImplBaseDlg();
};


class WelcomePageBase : public wxPanel
{
protected:
    clThemedSplitterWindow* m_mainPanel;
    wxPanel* m_buttonsPage;
    wxGridSizer* buttons_sizer;
    wxPanel* m_listPage;
    wxPanel* m_panelList;
    wxStaticText* m_staticText0;
    clThemedTreeCtrl* m_dvTreeCtrlWorkspaces;

protected:
    virtual void OnSize(wxSizeEvent& event) { event.Skip(); }
    virtual void OnWorkspaceActivated(wxTreeEvent& event) { event.Skip(); }

public:
    wxPanel* GetButtonsPage() { return m_buttonsPage; }
    wxStaticText* GetStaticText0() { return m_staticText0; }
    clThemedTreeCtrl* GetDvTreeCtrlWorkspaces() { return m_dvTreeCtrlWorkspaces; }
    wxPanel* GetPanelList() { return m_panelList; }
    wxPanel* GetListPage() { return m_listPage; }
    clThemedSplitterWindow* GetMainPanel() { return m_mainPanel; }
    WelcomePageBase(wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize(-1,-1), long style = wxTAB_TRAVERSAL);
    virtual ~WelcomePageBase();
};


class WorkspaceTabBase : public wxPanel
{
protected:
    wxSimplebook* m_simpleBook;
    wxPanel* m_panelCxx;
    wxPanel* m_panel625;
    clToolBar* m_toolbar580;
    clConfigurationSelectionCtrl* m_configChangeCtrl;
    clThemedSplitterWindow* m_splitter;
    wxPanel* m_splitterPagePinnedProjects;
    clThemedListCtrl* m_dvListCtrlPinnedProjects;
    wxPanel* m_splitterPageTreeView;
    FileViewTree* m_fileView;

protected:
    virtual void OnPinnedCxxProjectContextMenu(wxDataViewEvent& event) { event.Skip(); }
    virtual void OnPinnedCxxProjectSelected(wxDataViewEvent& event) { event.Skip(); }

public:
    clToolBar* GetToolbar580() { return m_toolbar580; }
    clConfigurationSelectionCtrl* GetConfigChangeCtrl() { return m_configChangeCtrl; }
    wxPanel* GetPanel625() { return m_panel625; }
    clThemedListCtrl* GetDvListCtrlPinnedProjects() { return m_dvListCtrlPinnedProjects; }
    wxPanel* GetSplitterPagePinnedProjects() { return m_splitterPagePinnedProjects; }
    FileViewTree* GetFileView() { return m_fileView; }
    wxPanel* GetSplitterPageTreeView() { return m_splitterPageTreeView; }
    clThemedSplitterWindow* GetSplitter() { return m_splitter; }
    wxPanel* GetPanelCxx() { return m_panelCxx; }
    wxSimplebook* GetSimpleBook() { return m_simpleBook; }
    WorkspaceTabBase(wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize(-1,-1), long style = wxTAB_TRAVERSAL);
    virtual ~WorkspaceTabBase();
};


class EditorFrameBase : public wxFrame
{
protected:
    wxPanel* m_mainPanel;
    clToolBar* m_toolbar;
    wxMenuBar* m_menuBar587;
    wxMenu* FILE;
    wxMenuItem* m_menuItemSave;
    wxMenuItem* m_menuItemReload;
    wxMenuItem* m_menuItemSEPARATOR;
    wxMenuItem* m_menuItemClose;
    wxMenu* EDIT;
    wxMenuItem* m_menuItemFind;
    wxMenuItem* m_menuItemUndo;
    wxMenuItem* m_menuItemRedo;

protected:
    virtual void OnCloseWindow(wxCloseEvent& event) { event.Skip(); }
    virtual void OnSave(wxCommandEvent& event) { event.Skip(); }
    virtual void OnSaveUI(wxUpdateUIEvent& event) { event.Skip(); }
    virtual void OnReload(wxCommandEvent& event) { event.Skip(); }
    virtual void OnClose(wxCommandEvent& event) { event.Skip(); }
    virtual void OnCloseUI(wxUpdateUIEvent& event) { event.Skip(); }
    virtual void OnFind(wxCommandEvent& event) { event.Skip(); }
    virtual void OnFindUI(wxUpdateUIEvent& event) { event.Skip(); }
    virtual void OnUndo(wxCommandEvent& event) { event.Skip(); }
    virtual void OnUndoUI(wxUpdateUIEvent& event) { event.Skip(); }
    virtual void OnRedo(wxCommandEvent& event) { event.Skip(); }
    virtual void OnRedoUI(wxUpdateUIEvent& event) { event.Skip(); }

public:
    clToolBar* GetToolbar() { return m_toolbar; }
    wxPanel* GetMainPanel() { return m_mainPanel; }
    wxMenuBar* GetMenuBar587() { return m_menuBar587; }
    EditorFrameBase(wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("EditorFrame"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize(800,600), long style = wxDEFAULT_FRAME_STYLE);
    virtual ~EditorFrameBase();
};


class OpenFolderDlgBase : public wxDialog
{
protected:
    wxStaticText* m_staticText479;
    wxTextCtrl* m_textCtrlFolder;
    wxStdDialogButtonSizer* m_stdBtnSizer473;
    wxButton* m_button475;
    wxButton* m_button477;

protected:

public:
    wxStaticText* GetStaticText479() { return m_staticText479; }
    wxTextCtrl* GetTextCtrlFolder() { return m_textCtrlFolder; }
    OpenFolderDlgBase(wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Open Folder"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize(-1,-1), long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER);
    virtual ~OpenFolderDlgBase();
};


class DefaultWorkspacePageBase : public wxPanel
{
protected:
    wxStaticText* m_staticText523;
    wxStaticBitmap* m_staticBitmap521;

protected:

public:
    wxStaticText* GetStaticText523() { return m_staticText523; }
    wxStaticBitmap* GetStaticBitmap521() { return m_staticBitmap521; }
    DefaultWorkspacePageBase(wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize(400,300), long style = wxTAB_TRAVERSAL|wxBORDER_NONE);
    virtual ~DefaultWorkspacePageBase();
};


class SelectDropTargetBaseDlg : public wxDialog
{
protected:
    wxBannerWindow* m_banner;
    wxDataViewListCtrl* m_dvListCtrl;
    wxStdDialogButtonSizer* m_stdBtnSizer543;
    wxButton* m_button545;
    wxButton* m_button547;

protected:
    virtual void OnSelectionActivated(wxDataViewEvent& event) { event.Skip(); }
    virtual void OnOKUI(wxUpdateUIEvent& event) { event.Skip(); }
    virtual void OnOK(wxCommandEvent& event) { event.Skip(); }

public:
    wxBannerWindow* GetBanner() { return m_banner; }
    wxDataViewListCtrl* GetDvListCtrl() { return m_dvListCtrl; }
    SelectDropTargetBaseDlg(wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Select View"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize(400,400), long style = wxDEFAULT_DIALOG_STYLE|wxSTAY_ON_TOP);
    virtual ~SelectDropTargetBaseDlg();
};

#endif
