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

#ifndef _CODELITE_DATABASEEXPLORER_GUI_BASE_CLASSES_H
#define _CODELITE_DATABASEEXPLORER_GUI_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/stc/stc.h>
#include "clTableWithPagination.h"
#include <wx/treectrl.h>
#include "clThemedTreeCtrl.h"
#include <wx/dialog.h>
#include <wx/iconbndl.h>
#include <wx/notebook.h>
#include <wx/imaglist.h>
#include <wx/stattext.h>
#include <wx/filepicker.h>
#include <wx/listctrl.h>
#include <wx/textctrl.h>
#include <wx/listbox.h>
#include <wx/button.h>
#include <wx/statbox.h>
#include <wx/choice.h>
#include <wx/arrstr.h>
#include <wx/frame.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 _SqlCommandPanel : public wxPanel
{
protected:
    wxSplitterWindow* m_splitter1;
    wxPanel* m_panel13;
    wxStyledTextCtrl* m_scintillaSQL;
    wxPanel* m_panel14;
    clTableWithPagination* m_table;

protected:
public:
    wxStyledTextCtrl* GetScintillaSQL() { return m_scintillaSQL; }
    wxPanel* GetPanel13() { return m_panel13; }
    clTableWithPagination* GetTable() { return m_table; }
    wxPanel* GetPanel14() { return m_panel14; }
    wxSplitterWindow* GetSplitter1() { return m_splitter1; }
    _SqlCommandPanel(wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition,
                     const wxSize& size = wxSize(-1, -1), long style = wxTAB_TRAVERSAL);
    virtual ~_SqlCommandPanel();
};

class _DbViewerPanel : public wxPanel
{
protected:
    clThemedTreeCtrl* m_treeDatabases;

protected:
    virtual void OnDnDStart(wxTreeEvent& event) { event.Skip(); }
    virtual void OnItemActivate(wxTreeEvent& event) { event.Skip(); }
    virtual void OnItemSelectionChange(wxTreeEvent& event) { event.Skip(); }
    virtual void OnContextMenu(wxTreeEvent& event) { event.Skip(); }
    virtual void OnItemRightClick(wxTreeEvent& event) { event.Skip(); }

public:
    clThemedTreeCtrl* GetTreeDatabases() { return m_treeDatabases; }
    _DbViewerPanel(wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition,
                   const wxSize& size = wxSize(200, 100), long style = wxTAB_TRAVERSAL);
    virtual ~_DbViewerPanel();
};

class _DBSettingsDialog : public wxDialog
{
protected:
    wxNotebook* m_notebook2;
    wxPanel* m_Sqlite;
    wxStaticText* m_staticText11;
    wxFilePickerCtrl* m_filePickerSqlite;
    wxListCtrl* m_listCtrlRecentFiles;
    wxPanel* m_MySqlPanel;
    wxStaticText* m_staticText10;
    wxTextCtrl* m_txName;
    wxStaticText* m_staticText1;
    wxTextCtrl* m_txServer;
    wxStaticText* m_staticText2;
    wxTextCtrl* m_txUserName;
    wxStaticText* m_staticText3;
    wxTextCtrl* m_txPassword;
    wxListBox* m_listBox2;
    wxPanel* m_PostgrePanel;
    wxStaticText* m_staticText101;
    wxTextCtrl* m_txPgName;
    wxStaticText* m_staticText12;
    wxTextCtrl* m_txPgServer;
    wxStaticText* m_staticText35;
    wxTextCtrl* m_txPgPort;
    wxStaticText* m_staticText21;
    wxTextCtrl* m_txPgUserName;
    wxStaticText* m_staticText31;
    wxTextCtrl* m_txPgPassword;
    wxStaticText* m_staticText24;
    wxTextCtrl* m_txPgDatabase;
    wxListBox* m_listBoxPg;
    wxButton* m_button36;
    wxButton* m_button35;

protected:
    virtual void OnItemActivated(wxListEvent& event) { event.Skip(); }
    virtual void OnItemSelected(wxListEvent& event) { event.Skip(); }
    virtual void OnItemKeyDown(wxListEvent& event) { event.Skip(); }
    virtual void OnMySqlPassKeyDown(wxKeyEvent& event) { event.Skip(); }
    virtual void OnHistoryClick(wxCommandEvent& event) { event.Skip(); }
    virtual void OnHistoryDClick(wxCommandEvent& event) { event.Skip(); }
    virtual void OnHistoruUI(wxUpdateUIEvent& event) { event.Skip(); }
    virtual void OnPgSqlKeyDown(wxKeyEvent& event) { event.Skip(); }
    virtual void OnPgHistoryClick(wxCommandEvent& event) { event.Skip(); }
    virtual void OnPgHistoryDClick(wxCommandEvent& event) { event.Skip(); }
    virtual void OnDlgOK(wxCommandEvent& event) { event.Skip(); }

public:
    wxStaticText* GetStaticText11() { return m_staticText11; }
    wxFilePickerCtrl* GetFilePickerSqlite() { return m_filePickerSqlite; }
    wxListCtrl* GetListCtrlRecentFiles() { return m_listCtrlRecentFiles; }
    wxPanel* GetSqlite() { return m_Sqlite; }
    wxStaticText* GetStaticText10() { return m_staticText10; }
    wxTextCtrl* GetTxName() { return m_txName; }
    wxStaticText* GetStaticText1() { return m_staticText1; }
    wxTextCtrl* GetTxServer() { return m_txServer; }
    wxStaticText* GetStaticText2() { return m_staticText2; }
    wxTextCtrl* GetTxUserName() { return m_txUserName; }
    wxStaticText* GetStaticText3() { return m_staticText3; }
    wxTextCtrl* GetTxPassword() { return m_txPassword; }
    wxListBox* GetListBox2() { return m_listBox2; }
    wxPanel* GetMySqlPanel() { return m_MySqlPanel; }
    wxStaticText* GetStaticText101() { return m_staticText101; }
    wxTextCtrl* GetTxPgName() { return m_txPgName; }
    wxStaticText* GetStaticText12() { return m_staticText12; }
    wxTextCtrl* GetTxPgServer() { return m_txPgServer; }
    wxStaticText* GetStaticText35() { return m_staticText35; }
    wxTextCtrl* GetTxPgPort() { return m_txPgPort; }
    wxStaticText* GetStaticText21() { return m_staticText21; }
    wxTextCtrl* GetTxPgUserName() { return m_txPgUserName; }
    wxStaticText* GetStaticText31() { return m_staticText31; }
    wxTextCtrl* GetTxPgPassword() { return m_txPgPassword; }
    wxStaticText* GetStaticText24() { return m_staticText24; }
    wxTextCtrl* GetTxPgDatabase() { return m_txPgDatabase; }
    wxListBox* GetListBoxPg() { return m_listBoxPg; }
    wxPanel* GetPostgrePanel() { return m_PostgrePanel; }
    wxNotebook* GetNotebook2() { return m_notebook2; }
    wxButton* GetButton36() { return m_button36; }
    wxButton* GetButton35() { return m_button35; }
    _DBSettingsDialog(wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Connection settings"),
                      const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize(-1, -1),
                      long style = wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER);
    virtual ~_DBSettingsDialog();
};

class _LogDialog : public wxDialog
{
protected:
    wxTextCtrl* m_textCtrl11;
    wxButton* m_button18;

protected:
    virtual void OnCloseClick(wxCommandEvent& event) { event.Skip(); }
    virtual void OnCloseUI(wxUpdateUIEvent& event) { event.Skip(); }

public:
    wxTextCtrl* GetTextCtrl11() { return m_textCtrl11; }
    wxButton* GetButton18() { return m_button18; }
    _LogDialog(wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Database log"),
               const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize(640, 460),
               long style = wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER | wxMAXIMIZE_BOX);
    virtual ~_LogDialog();
};

class _ClassGenerateDialog : public wxDialog
{
protected:
    wxStaticText* m_staticText30;
    wxTextCtrl* m_txPrefix;
    wxStaticText* m_staticText31;
    wxTextCtrl* m_txPostfix;
    wxStaticText* m_staticText28;
    wxDirPickerCtrl* m_dirPicker;
    wxStaticText* m_staticText34;
    wxTextCtrl* m_txVirtualDir;
    wxButton* m_btnBrowseVirtualDir;
    wxStaticText* m_staticText36;
    wxChoice* m_choiceTemplates;
    wxStaticText* m_staticText29;
    wxTextCtrl* m_textLog;
    wxButton* m_button26;
    wxButton* m_button25;

protected:
    virtual void OnBtnBrowseClick(wxCommandEvent& event) { event.Skip(); }
    virtual void OnCancelClick(wxCommandEvent& event) { event.Skip(); }
    virtual void OnGenerateClick(wxCommandEvent& event) { event.Skip(); }

public:
    wxStaticText* GetStaticText30() { return m_staticText30; }
    wxTextCtrl* GetTxPrefix() { return m_txPrefix; }
    wxStaticText* GetStaticText31() { return m_staticText31; }
    wxTextCtrl* GetTxPostfix() { return m_txPostfix; }
    wxStaticText* GetStaticText28() { return m_staticText28; }
    wxDirPickerCtrl* GetDirPicker() { return m_dirPicker; }
    wxStaticText* GetStaticText34() { return m_staticText34; }
    wxTextCtrl* GetTxVirtualDir() { return m_txVirtualDir; }
    wxButton* GetBtnBrowseVirtualDir() { return m_btnBrowseVirtualDir; }
    wxStaticText* GetStaticText36() { return m_staticText36; }
    wxChoice* GetChoiceTemplates() { return m_choiceTemplates; }
    wxStaticText* GetStaticText29() { return m_staticText29; }
    wxTextCtrl* GetTextLog() { return m_textLog; }
    wxButton* GetButton26() { return m_button26; }
    wxButton* GetButton25() { return m_button25; }
    _ClassGenerateDialog(wxWindow* parent, wxWindowID id = wxID_ANY,
                         const wxString& title = _("Class generator dialog"), const wxPoint& pos = wxDefaultPosition,
                         const wxSize& size = wxSize(-1, -1), long style = wxDEFAULT_DIALOG_STYLE);
    virtual ~_ClassGenerateDialog();
};

class DbExplorerFrameBase : public wxFrame
{
protected:
protected:
public:
    DbExplorerFrameBase(wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = wxT(""),
                        const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize(500, 300),
                        long style = wxDEFAULT_FRAME_STYLE);
    virtual ~DbExplorerFrameBase();
};

#endif
