pgadmin3/include/dlg/dlgVariable.h
lsv 5ee53e086f New features of the Query Editor
1. Добавлена возможность быстрой подстановки слов на латинице по нажатию
   Alt+RIGHT. Возможность включается настройкой "Use word hints".
   Список слов составляется при загрузке запроса и по мере ввода новых слов.
2. Добавлена возможность заменять при выполнении запроса переменные вида
   $1, $2, ... или :variableName1 на пользовательские значения введённые
   в диалоге. Пока можно заменять переменные в запросах select,update,delete,insert.
   Перед отправкой запроса на сервер переменные заменяются простой текстовой заменой.
   Запрос который выполнен на сервере можно посмотреть на вкладке История.
   Возможность включается настройкой "Replace variables in a query".
   Выделить правой кнопкой выполненый запрос не получиться т.к. текст выполненого запроса
   и текст в редакторе будет отличаться.
2024-12-17 18:34:48 +05:00

48 lines
1.2 KiB
C++

//////////////////////////////////////////////////////////////////////////
//
// pgAdmin III - PostgreSQL Tools
//
// Copyright (C) 2002 - 2016, The pgAdmin Development Team
// This software is released under the PostgreSQL Licence
//
// dlgVariable.h - Variables replace
//
//////////////////////////////////////////////////////////////////////////
#ifndef dlgVariable_H
#define dlgVariable_H
//#include "pgAdmin3.h"
#include "dlg/dlgClasses.h"
#include "ctl/ctlAuiNotebook.h"
class ctlSQLBox;
struct var_query { int position = -1; wxString txtVar; wxString txtReplace; };
// Class declarations
class dlgVariable : public pgDialog
{
public:
dlgVariable(ctlSQLBox *parent,wxString &query, std::vector<var_query> &var_list);
~dlgVariable();
void FindNext();
wxString GetQuery();
void OnChangeCombo(wxCommandEvent& ev);
private:
void OnClose(wxCloseEvent &ev);
void OnCancel(wxCommandEvent &ev);
void OnChange(wxCommandEvent &ev);
void OnOk(wxCommandEvent &ev);
void OnIgnore(wxCommandEvent &ev);
void ResetTabOrder();
void SaveSettings();
wxString modquery,originalquery;
std::map<wxString, int> unic_name;
std::vector<var_query> v_list;
wxJSONValue opt;
DECLARE_EVENT_TABLE()
};
#endif