From 215e0ceb2a76be8580e1e460d9e52325ff06d211 Mon Sep 17 00:00:00 2001 From: levinsv <44033647+levinsv@users.noreply.github.com> Date: Wed, 22 Apr 2020 22:24:24 +0500 Subject: [PATCH] Add many output windows --- README.md | 9 +++ Release_(3.0)/pgAdmin3.exe | Bin 10815488 -> 10815488 bytes ctl/ctlSQLBox.cpp | 3 +- frm/frmQuery.cpp | 156 +++++++++++++++++++++++++++++++++++-- include/frm/frmQuery.h | 8 +- include/frm/menu.h | 1 + utils/misc.cpp | 9 ++- 7 files changed, 174 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index 75c3f55..00597dc 100644 --- a/README.md +++ b/README.md @@ -116,8 +116,17 @@ This text Russian language. * в окне SQL инструкции создания таблицы теперь отображаются новые параметры хранения * в описании колонок учтены generated и identity колонки +22.04.2020 + - добавлена возможность содавать дополнительные окна для вывода результатов запроса (не более 9). + Для этого запрос нужно выполнить по нажатию Shift+F8. Вывод результатов при выполнении F8 производиться в текущую активную закладку. + Окна вывода отмечаются белым квадратом если они были использованы текущей закладкой запросов. + - при щелчке правой кнопкой мыши на активной закладке результатов в окне запросов выделяется запрос связанный с этим результатом. + - в окне запросов последний выполненый запрос отмечается зелеными стрелками. + - при автосохранении закладок, сохраняется позиция курсора + + diff --git a/Release_(3.0)/pgAdmin3.exe b/Release_(3.0)/pgAdmin3.exe index c25cf1d4c27a3be47c9d06634f73b0bb4a650ea7..35b03cfc8f720375fee5d523589d2b32f947f271 100644 GIT binary patch delta 102423 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 z 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�T*xeuKyG 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 diff --git a/ctl/ctlSQLBox.cpp b/ctl/ctlSQLBox.cpp index bb3c43c..8ecebfd 100644 --- a/ctl/ctlSQLBox.cpp +++ b/ctl/ctlSQLBox.cpp @@ -186,6 +186,8 @@ void ctlSQLBox::Create(wxWindow *parent, wxWindowID id, const wxPoint &pos, cons MarkerDefine(wxSTC_MARKNUM_FOLDER, wxSTC_MARK_BOXPLUS, *wxWHITE, *wxBLACK); MarkerDefine(wxSTC_MARKNUM_FOLDEROPEN, wxSTC_MARK_BOXMINUS, *wxWHITE, *wxBLACK); + MarkerDefine(1,wxSTC_MARK_ARROW,*wxBLACK,*wxGREEN); + SetProperty(wxT("fold"), wxT("1")); SetFoldFlags(16); @@ -498,7 +500,6 @@ void ctlSQLBox::OnKeyDown(wxKeyEvent &event) //GetIndicatorCurrent()==s_indicHighlight IndicatorClearRange(0,GetTextLength()); fix_pos=-1; - } // Check for braces that aren't in comment styles, diff --git a/frm/frmQuery.cpp b/frm/frmQuery.cpp index 220e526..0437c8b 100644 --- a/frm/frmQuery.cpp +++ b/frm/frmQuery.cpp @@ -126,6 +126,7 @@ BEGIN_EVENT_TABLE(frmQuery, pgFrame) EVT_MENU(MNU_UNDO, frmQuery::OnUndo) EVT_MENU(MNU_REDO, frmQuery::OnRedo) EVT_MENU(MNU_EXECUTE, frmQuery::OnExecute) + EVT_MENU(MNU_EXECUTE_2, frmQuery::OnExecuteShift) EVT_MENU(MNU_EXECPGS, frmQuery::OnExecScript) EVT_MENU(MNU_EXECFILE, frmQuery::OnExecFile) EVT_MENU(MNU_EXPLAIN, frmQuery::OnExplain) @@ -184,6 +185,7 @@ BEGIN_EVENT_TABLE(frmQuery, pgFrame) EVT_MENU(PGSCRIPT_COMPLETE, frmQuery::OnScriptComplete) EVT_AUINOTEBOOK_PAGE_CHANGED(CTL_NTBKCENTER, frmQuery::OnChangeNotebook) EVT_AUINOTEBOOK_PAGE_CHANGED(CTL_NTBKGQB, frmQuery::OnChangeNotebookOutpane) + EVT_AUINOTEBOOK_TAB_RIGHT_DOWN(CTL_NTBKGQB, frmQuery::OnNotebookOutpaneTabRDown) EVT_AUINOTEBOOK_PAGE_CHANGED(CTL_SQLQUERYBOOK, frmQuery::OnSqlBookPageChanged) EVT_AUINOTEBOOK_PAGE_CHANGING(CTL_SQLQUERYBOOK, frmQuery::OnSqlBookPageChanging) EVT_AUINOTEBOOK_PAGE_CLOSE(CTL_SQLQUERYBOOK, frmQuery::OnSqlBookPageClose) @@ -336,6 +338,7 @@ frmQuery::frmQuery(frmMain *form, const wxString &_title, pgConn *_conn, const w queryMenu = new wxMenu(); queryMenu->Append(MNU_EXECUTE, _("&Execute\tF8"), _("Execute query")); + queryMenu->Append(MNU_EXECUTE_2, _("&Execute new output\tShift-F8"), _("Execute query in new output")); queryMenu->Append(MNU_EXECPGS, _("Execute &pgScript\tF6"), _("Execute pgScript")); queryMenu->Append(MNU_EXECFILE, _("Execute to file\tF5"), _("Execute query, write result to file")); queryMenu->Append(MNU_EXPLAIN, _("E&xplain\tF7"), _("Explain query")); @@ -560,7 +563,12 @@ frmQuery::frmQuery(frmMain *form, const wxString &_title, pgConn *_conn, const w // Results pane outputPane = new ctlAuiNotebook(this, CTL_NTBKGQB, wxDefaultPosition, wxSize(500, 300), wxAUI_NB_TOP | wxAUI_NB_TAB_SPLIT | wxAUI_NB_TAB_MOVE | wxAUI_NB_SCROLL_BUTTONS | wxAUI_NB_WINDOWLIST_BUTTON); sqlResult = new ctlSQLResult(outputPane, conn, CTL_SQLRESULT, wxDefaultPosition, wxDefaultSize); + + int len = sizeof(ctlSQL) / sizeof(ctlSQL[0]); + for (int i=0;iSetFont(settings->GetSQLFont()); @@ -719,9 +727,20 @@ frmQuery::frmQuery(frmMain *form, const wxString &_title, pgConn *_conn, const w { file.Read(str); file.Close(); } if (!str.IsEmpty()) { + wxString fline=str.BeforeFirst('@'); + int l=fline.Length(); + if (fline.Find('\n')>=0) l=0; + long nl=0; + if (l>0) fline.ToLong(&nl); + if (l>0) { + fline=str.Mid(l+1); + str=fline; + } sqlQuery->SetText(str); sqlQuery->Colourise(0, str.Length()); sqlQuery->EmptyUndoBuffer(); + + sqlQuery->GotoPos(nl); wxSafeYield(); // needed to process sqlQuery modify event //sqlQuery->SetFilename(lastPath); sqlQuery->SetChanged(true); @@ -1229,7 +1248,9 @@ void frmQuery::OnChangeConnection(wxCommandEvent &ev) { conn = (pgConn *)cbConnection->GetClientData(sel); SqlBookSetDatabase(conn); - sqlResult->SetConnection(conn); + int len = sizeof(ctlSQL) / sizeof(ctlSQL[0]); + for (int i=0;iSetConnection(conn); + //sqlResult->SetConnection(conn); pgScript->SetConnection(conn); title = wxT("Query - ") + cbConnection->GetValue(); setExtendedTitle(); @@ -1359,6 +1380,18 @@ void frmQuery::OnChangeNotebookOutpane(wxAuiNotebookEvent &event) } //showMessage(); } + if (wxDynamicCast(outputPane->GetPage(curpage), ctlSQLResult)) + { + ctlSQLResult *c=wxDynamicCast(outputPane->GetPage(curpage), ctlSQLResult); + int len = sizeof(ctlSQL) / sizeof(ctlSQL[0]); + for (int i=0;iCmdKeyExecute(wxSTC_CMD_TAB); } @@ -1469,6 +1502,7 @@ wxWindow *frmQuery::currentControl() wxWindow *wnd = FindFocus(); if (wnd == outputPane) { + wnd = sqlResult; switch (outputPane->GetSelection()) { case 0: @@ -1920,8 +1954,10 @@ void frmQuery::OnClose(wxCloseEvent &event) manager.Update(); Hide(); + int len = sizeof(ctlSQL) / sizeof(ctlSQL[0]); + for (int i=0;iDisconnect(wxID_ANY, wxEVT_SET_FOCUS, wxFocusEventHandler(frmQuery::OnFocus)); - sqlResult->Disconnect(wxID_ANY, wxEVT_SET_FOCUS, wxFocusEventHandler(frmQuery::OnFocus)); +// sqlResult->Disconnect(wxID_ANY, wxEVT_SET_FOCUS, wxFocusEventHandler(frmQuery::OnFocus)); msgResult->Disconnect(wxID_ANY, wxEVT_SET_FOCUS, wxFocusEventHandler(frmQuery::OnFocus)); msgHistory->Disconnect(wxID_ANY, wxEVT_SET_FOCUS, wxFocusEventHandler(frmQuery::OnFocus)); @@ -1932,7 +1968,9 @@ void frmQuery::OnClose(wxCloseEvent &event) settings->SetExplainBuffers(queryMenu->IsChecked(MNU_BUFFERS)); settings->SetExplainTiming(queryMenu->IsChecked(MNU_TIMING)); - sqlResult->Abort(); // to make sure conn is unused + for (int i=0;iAbort(); + +// sqlResult->Abort(); // to make sure conn is unused Destroy(); @@ -2135,6 +2173,10 @@ void frmQuery::SaveTempFile() wxUtfFile file(tempDir+wxT("\\")+filename, wxFile::write, modeUnicode ? wxFONTENCODING_UTF8 : wxFONTENCODING_DEFAULT); if (file.IsOpened()) { + int nl=sqlQuery->GetCurrentPos(); + wxString strnl; + strnl=wxString::Format(_("%i@"), nl); + file.Write(strnl); if ((file.Write(sqlQuery->GetText()) == 0) && (!modeUnicode)) wxMessageBox(_("Query text incomplete.\nQuery contained characters that could not be converted to the local charset.\nPlease correct the data or try using UTF8 instead.")); file.Close(); @@ -2521,7 +2563,7 @@ void frmQuery::OnExplain(wxCommandEvent &event) // Add a \n first. sql += wxT("\n;\nROLLBACK;"); } - + sqlQuery->MarkerDeleteAll(1); execQuery(sql, resultToRetrieve, true, offset, false, true, verbose); } @@ -2645,6 +2687,24 @@ void frmQuery::SelectQuery() { delete [] q; } +void frmQuery::OnExecuteShift(wxCommandEvent &event) +{ + //add new page outpane + int len = sizeof(ctlSQL) / sizeof(ctlSQL[0]); + wxString titlename; + for (int i=0;iAddPage(sqlResult, titlename); + sqlResult->Connect(wxID_ANY, wxEVT_SET_FOCUS, wxFocusEventHandler(frmQuery::OnFocus)); + indexResult=i; + ctlSQL[i]=sqlResult; + ctlSBox[i]=sqlQuery; + break; + }; + OnExecute(event); +} void frmQuery::OnExecute(wxCommandEvent &event) { if(sqlNotebook->GetSelection() == 1) @@ -2664,6 +2724,20 @@ void frmQuery::OnExecute(wxCommandEvent &event) if (query.IsNull()) return; + // set marker sqlQueryExec->MarkerAdd(line, 0); // wxSTC_MARK_CIRCLE + int en=sqlQuery->GetSelectionEnd(); + int st=-1; + if (sqlQueryExecLast==sqlQuery) sqlQuery->MarkerDeleteAll(1); + + if (en>=0) { + st=sqlQuery->GetSelectionStart(); + int hline=sqlQuery->LineFromPosition(st); + int eline=sqlQuery->LineFromPosition(en); + for (int i=hline;i<=eline;i++) { + sqlQuery->MarkerAdd(i,1); + } + //sqlResult->SetRangeLineExecuteSQL(hline,eline); + } execQuery(query); sqlQuery->SetFocus(); } @@ -2810,6 +2884,7 @@ void frmQuery::setTools(const bool running) bool canEndTransaction = (!running && conn->GetTxStatus() != PQTRANS_IDLE); toolBar->EnableTool(MNU_EXECUTE, !running); + toolBar->EnableTool(MNU_EXECUTE_2, !running); toolBar->EnableTool(MNU_EXECPGS, !running); toolBar->EnableTool(MNU_EXECFILE, !running); toolBar->EnableTool(MNU_EXPLAIN, !running); @@ -2817,6 +2892,7 @@ void frmQuery::setTools(const bool running) toolBar->EnableTool(MNU_DOCOMMIT, canEndTransaction); toolBar->EnableTool(MNU_DOROLLBACK, canEndTransaction); queryMenu->Enable(MNU_EXECUTE, !running); + queryMenu->Enable(MNU_EXECUTE_2, !running); queryMenu->Enable(MNU_EXECPGS, !running); queryMenu->Enable(MNU_EXECFILE, !running); queryMenu->Enable(MNU_EXPLAIN, !running); @@ -2858,13 +2934,23 @@ void frmQuery::execQuery(const wxString &query, int resultToRetrieve, bool singl sqlQuery->MarkerDeleteAll(0); sqlQuery->StartStyling(0, wxSTC_INDICS_MASK); sqlQuery->SetStyling(sqlQuery->GetText().Length(), 0); + + int i=sqlQueryBook->GetSelection(); + sqlQueryBook->SetPageBitmap(i,CreateBitmap(wxColour(255,0,0))); if (!sqlQuery->IsChanged()) setExtendedTitle(); aborted = false; isfilterresult=false; + + sqlResult=ctlSQL[indexResult]; sqlResult->ClearFilter(); + ctlSBox[indexResult]=sqlQuery; + // + int idx=outputPane->GetPageIndex(sqlResult); + outputPane->SetPageBitmap(idx,CreateBitmap(wxNullColour)); + QueryExecInfo *qi = new QueryExecInfo(); qi->queryOffset = queryOffset; qi->toFileExportForm = NULL; @@ -3259,7 +3345,8 @@ void frmQuery::OnQueryComplete(pgQueryResultEvent &ev) if (line < maxLine) { sqlQueryExec->GotoPos(sPos); - sqlQueryExec->MarkerAdd(line, 0); + // wxSTC_MARK_ARROW = 2 + sqlQueryExec->MarkerAdd(line, 0); // wxSTC_MARK_CIRCLE if (!sqlQueryExec->IsChanged()) setExtendedTitle(); @@ -3272,7 +3359,13 @@ void frmQuery::OnQueryComplete(pgQueryResultEvent &ev) else { done = true; - outputPane->SetSelection(0); + for(int i=0;iGetPageCount();i++) + { + if (wxDynamicCast(outputPane->GetPage(i), ctlSQLResult)==sqlResult) { + outputPane->SetSelection(i); + } + } + long rowsTotal = sqlResult->NumRows(); if (qi->toFileExportForm) @@ -3559,6 +3652,13 @@ void frmQuery::completeQuery(bool done, bool explain, bool verbose) // Change the output pane caption so the user knows which tab the result came from sqlQueryExecLast = sqlQueryExec; SetOutputPaneCaption(true); + for (int i=0;iGetPageCount();i++) + if ((sqlQueryBook->GetPageBitmap(i)).IsOk()) sqlQueryBook->SetPageBitmap(i,wxNullBitmap); + //int i=sqlQueryBook->GetPageCount()-1; + //sqlQueryBook->SetPageBitmap(i,CreateBitmap(wxNullColour)); + + //int i=sqlQueryBook->GetSelection() if (); + sqlQueryExec = NULL; sqlQuery->SetFocus(); @@ -3964,6 +4064,29 @@ void frmQuery::OnSqlBookPageChanged(wxAuiNotebookEvent &event) // Update UI with chosen query's info SetEOLModeDisplay(sqlQuery->GetEOLMode()); setExtendedTitle(); + curpage = outputPane->GetSelection(); + ctlSQLResult *r; + r=NULL; + if (wxDynamicCast(outputPane->GetPage(curpage), ctlSQLResult)) { + ctlSQLResult *r = wxDynamicCast(outputPane->GetPage(curpage), ctlSQLResult); + } + int pos=-1; + //if (r!=NULL) for (int i=0;iGetPageIndex(ctlSQL[i]); + + if (ctlSBox[i]==sqlQuery) { + outputPane->SetPageBitmap(idx,CreateBitmap(wxNullColour)); + pos=i; + } else + { + outputPane->SetPageBitmap(idx,wxNullBitmap); + } + } + } sqlQuery->SetFocus(); //wxMessageBox(wxT("OnSqlBookPageChanged ")); @@ -4001,6 +4124,25 @@ void frmQuery::OnSqlBookPageClosed(wxAuiNotebookEvent &event) //wxSleep(5); // wxMessageBox(wxT("OnSqlBookPageClosed end")); } + +void frmQuery::OnNotebookOutpaneTabRDown(wxAuiNotebookEvent &event) { +//ctlSQL + size_t curpage = outputPane->GetSelection(); + if ( event.GetSelection()!=curpage) return; + wxBitmap b=outputPane->GetPageBitmap(curpage); + if (b.IsOk()) { + if (sqlQuery!=NULL) { + wxString sql=sqlResult->sqlquerytext; + if (!sqlQuery->Find(sql,false,false,false,true,false,true)) { + wxString t=sqlQuery->GetText(); + if (t.Find(sql)>-1) { + SetStatusText("Found",1); + } + } + + } + } +} void frmQuery::OnSqlBookTabRDown (wxAuiNotebookEvent &event) { size_t curpage = sqlQueryBook->GetSelection(); ctlSQLBox *sqlQuery = wxDynamicCast(sqlQueryBook->GetPage(curpage), ctlSQLBox); @@ -4122,6 +4264,8 @@ void frmQuery::SqlBookDisconnectPage(ctlSQLBox *box) { box->Disconnect(wxID_ANY, wxEVT_SET_FOCUS, wxFocusEventHandler(frmQuery::OnFocus)); box->Disconnect(wxID_ANY, wxEVT_KILL_FOCUS, wxFocusEventHandler(frmQuery::OnFocus)); + for (int k=0;k