mirror of
https://github.com/levinsv/pgadmin3.git
synced 2026-05-15 14:15:49 -06:00
154 lines
No EOL
3.2 KiB
C++
154 lines
No EOL
3.2 KiB
C++
//////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// pgAdmin III - PostgreSQL Tools
|
|
//
|
|
// Copyright (C) 2002 - 2016, The pgAdmin Development Team
|
|
// This software is released under the PostgreSQL Licence
|
|
//
|
|
// pgEventTrigger.h PostgreSQL Event Trigger
|
|
//
|
|
//////////////////////////////////////////////////////////////////////////
|
|
|
|
#ifndef PGEVENTTRIGGER_H
|
|
#define PGEVENTTRIGGER_H
|
|
|
|
#include "pgDatabase.h"
|
|
|
|
class pgCollection;
|
|
class pgFunction;
|
|
|
|
class pgEventTriggerFactory : public pgDatabaseObjFactory
|
|
{
|
|
public:
|
|
pgEventTriggerFactory();
|
|
virtual dlgProperty *CreateDialog(frmMain *frame, pgObject *node, pgObject *parent);
|
|
virtual pgObject *CreateObjects(pgCollection *obj, ctlTree *browser, const wxString &restr = wxEmptyString);
|
|
virtual pgCollection *CreateCollection(pgObject *obj);
|
|
virtual ~pgEventTriggerFactory() {};
|
|
|
|
int GetClosedIconId()
|
|
{
|
|
return closedId;
|
|
}
|
|
|
|
protected:
|
|
int closedId;
|
|
};
|
|
|
|
extern pgEventTriggerFactory eventTriggerFactory;
|
|
|
|
class pgEventTrigger : public pgDatabaseObject
|
|
{
|
|
public:
|
|
pgEventTrigger(const wxString &newName = wxT(""));
|
|
~pgEventTrigger();
|
|
wxString GetTranslatedMessage(int kindOfMessage) const;
|
|
void ShowTreeDetail(ctlTree *browser, frmMain *form = 0, ctlListView *properties = 0, ctlSQLBox *sqlPane = 0);
|
|
bool DropObject(wxFrame *frame, ctlTree *browser, bool cascaded);
|
|
bool IsUpToDate();
|
|
wxString GetSql(ctlTree *browser);
|
|
pgObject *Refresh(ctlTree *browser, const wxTreeItemId item);
|
|
|
|
int GetIconId();
|
|
|
|
wxString GetFunction() const
|
|
{
|
|
return function;
|
|
}
|
|
void iSetFunction(const wxString &s)
|
|
{
|
|
function = s ;
|
|
}
|
|
wxString GetWhen() const
|
|
{
|
|
return when;
|
|
}
|
|
void iSetWhen(const wxString &s)
|
|
{
|
|
when = s;
|
|
}
|
|
OID GetFunctionOid() const
|
|
{
|
|
return functionOid;
|
|
}
|
|
void iSetFunctionOid(const OID d)
|
|
{
|
|
functionOid = d;
|
|
}
|
|
OID GetSchemaOid() const
|
|
{
|
|
return schemaOid;
|
|
}
|
|
void iSetSchemaOid(const OID d)
|
|
{
|
|
schemaOid = d;
|
|
}
|
|
wxString GetSource() const
|
|
{
|
|
return source;
|
|
}
|
|
void iSetSource(const wxString &s)
|
|
{
|
|
source = s;
|
|
}
|
|
wxString GetLanguage() const
|
|
{
|
|
return language;
|
|
}
|
|
void iSetLanguage(const wxString &s)
|
|
{
|
|
language = s;
|
|
}
|
|
wxString GetEventName() const
|
|
{
|
|
return eventName;
|
|
}
|
|
wxString GetEnableStatus() const
|
|
{
|
|
return enableStatus;
|
|
}
|
|
void iSetEnableStatus(const wxString &s)
|
|
{
|
|
enableStatus = s;
|
|
}
|
|
void iSetEventName(const wxString &s)
|
|
{
|
|
eventName = s;
|
|
}
|
|
|
|
bool GetEnabled() const
|
|
{
|
|
return enabled;
|
|
}
|
|
void iSetEnabled(const bool b)
|
|
{
|
|
enabled = b;
|
|
}
|
|
void SetEnabled(ctlTree *browser, const bool b);
|
|
void SetDirty();
|
|
|
|
private:
|
|
wxString function, when, language, source, eventName, enableStatus;
|
|
OID functionOid, schemaOid;
|
|
bool enabled;
|
|
pgFunction *eventTriggerFunction;
|
|
pgSchema *eventTriggerFunctionSchema;
|
|
};
|
|
|
|
class pgEventTriggerCollection : public pgDatabaseObjCollection
|
|
{
|
|
public:
|
|
pgEventTriggerCollection(pgaFactory *factory, pgDatabase *db);
|
|
wxString GetTranslatedMessage(int kindOfMessage) const;
|
|
};
|
|
|
|
class enabledisableEventTriggerFactory : public contextActionFactory
|
|
{
|
|
public:
|
|
enabledisableEventTriggerFactory(menuFactoryList *list, wxMenu *mnu, ctlMenuToolbar *toolbar);
|
|
wxWindow *StartDialog(frmMain *form, pgObject *obj);
|
|
bool CheckEnable(pgObject *obj);
|
|
bool CheckChecked(pgObject *obj);
|
|
};
|
|
|
|
#endif |