1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84
|
//////////////////////////////////////////////////////////////////////////
//
// pgAdmin III - PostgreSQL Tools
//
// Copyright (C) 2002 - 2014, The pgAdmin Development Team
// This software is released under the PostgreSQL Licence
//
// frmMainConfig.h - Backend configuration tool
//
//////////////////////////////////////////////////////////////////////////
#ifndef FRMMAINCONFIG_H
#define FRMMAINCONFIG_H
#include "utils/pgconfig.h"
#include "frm/frmConfig.h"
#include "dlg/dlgClasses.h"
#include "utils/factory.h"
class ctlListView;
class pgServer;
WX_DECLARE_OBJARRAY(pgConfigOrgLine, pgConfigOrgLineArray);
class frmMainConfig : public frmConfig
{
public:
frmMainConfig(const wxString &title, const wxString &configFile);
frmMainConfig(frmMain *parent, pgServer *server = 0);
~frmMainConfig();
protected:
void DisplayFile(const wxString &str);
void WriteFile(pgConn *conn = 0);
wxString GetHintString();
wxString GetHelpPage() const;
private:
void Init();
void Init(pgSettingReader *reader);
void InitForm();
void FillList(const wxString &categoryMember, const wxString &altCategoryMember = wxEmptyString);
void FillList(wxArrayString *category);
void OnContents(wxCommandEvent &event);
void OnUndo(wxCommandEvent &event);
void OnEditSetting(wxListEvent &event);
void OnSelectSetting(wxListEvent &event);
void UpdateLine(int line);
void OnOpen(wxCommandEvent &event);
ctlListView *cfgList;
pgSettingItemHashmap options;
pgCategoryHashmap categories;
pgConfigOrgLineArray lines;
wxString serverVersionNumber;
DECLARE_EVENT_TABLE()
};
class mainConfigFactory : public actionFactory
{
public:
mainConfigFactory(menuFactoryList *list, wxMenu *mnu, ctlMenuToolbar *toolbar);
wxWindow *StartDialog(frmMain *form, pgObject *obj);
bool CheckEnable(pgObject *obj);
};
class mainConfigFileFactory : public actionFactory
{
public:
mainConfigFileFactory(menuFactoryList *list, wxMenu *mnu, ctlMenuToolbar *toolbar);
wxWindow *StartDialog(frmMain *form, pgObject *obj);
};
#endif
|