From dfa337816cf6934e17cdb3433cf55b3e10a5562b Mon Sep 17 00:00:00 2001 From: levinsv <44033647+levinsv@users.noreply.github.com> Date: Sat, 26 Jan 2019 18:29:36 +0500 Subject: [PATCH] bug fix and slow working --- README.md | 8 ++++++++ Release_(3.0)/pgAdmin3.exe | Bin 10428928 -> 10428928 bytes ctl/ctlComboBox.cpp | 2 ++ ctl/ctlSQLBox.cpp | 6 ++++-- dlg/dlgColumn.cpp | 2 ++ dlg/dlgFunction.cpp | 5 ++++- dlg/dlgTable.cpp | 2 ++ 7 files changed, 22 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 9f0b9b9..e1ca562 100644 --- a/README.md +++ b/README.md @@ -53,3 +53,11 @@ This text Russian language. - построении плана с замерами в заголовках строк указывается процент времени выполнения узла (только операции узла но не вложенных узлов) - +11.01.2019 + - исправлены падения приложения при открытии таблицы по нажатию F4 + +26.01.2019 + - исправлены падения приложения при вводе ( в окне редактирования кода) + - ускорено открытие диалога "новая функция", "новая таблицы". + + diff --git a/Release_(3.0)/pgAdmin3.exe b/Release_(3.0)/pgAdmin3.exe index 2e92771c2bde96c2fa9da0f8fb7455d467d6037b..d662342f0a4da49769dae7905a43b30ab3470f53 100644 GIT binary patch delta 4075 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 S3p9dF;3e>~;;?SM=J+3s+l@Q` delta 3616 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 + Freeze(); while (set.RowsLeft()) { OID oid = set.GetOid(0); @@ -74,6 +75,7 @@ int ctlComboBoxFix::FillOidKey(pgConn *conn, const wxChar *qry) Append(txt, oid); cnt++; } + Thaw(); return cnt; } diff --git a/ctl/ctlSQLBox.cpp b/ctl/ctlSQLBox.cpp index 71ff574..ec7e367 100644 --- a/ctl/ctlSQLBox.cpp +++ b/ctl/ctlSQLBox.cpp @@ -95,7 +95,7 @@ void ctlSQLBox::Create(wxWindow *parent, wxWindowID id, const wxPoint &pos, cons // Clear all styles StyleClearAll(); - + m_name=NULL; // Font extern sysSettings *settings; wxFont fntSQLBox = settings->GetSQLFont(); @@ -456,7 +456,9 @@ bool ctlSQLBox::DoFind(const wxString &find, const wxString &replace, bool doRep return false; } void ctlSQLBox::SetAutoReplaceList(queryMacroList *autorep) { - autoreplace=autorep; + if (!autorep) { + autoreplace = queryMacroFileProvider::LoadAutoReplace(true); + } else autoreplace=autorep; } void ctlSQLBox::SetDefFunction(wxArrayString &name, wxArrayString &def) { m_name=&name; diff --git a/dlg/dlgColumn.cpp b/dlg/dlgColumn.cpp index be68a67..a2ec0a6 100644 --- a/dlg/dlgColumn.cpp +++ b/dlg/dlgColumn.cpp @@ -270,12 +270,14 @@ int dlgColumn::Go(bool modal) wxT(" ORDER BY nspname, collname")); if (set) { + cbCollation->Freeze(); while (!set->Eof()) { wxString name = qtIdent(set->GetVal(wxT("nspname"))) + wxT(".") + qtIdent(set->GetVal(wxT("collname"))); cbCollation->Append(name); set->MoveNext(); } + cbCollation->Thaw(); delete set; } cbCollation->SetSelection(0); diff --git a/dlg/dlgFunction.cpp b/dlg/dlgFunction.cpp index fb438e8..57e906e 100644 --- a/dlg/dlgFunction.cpp +++ b/dlg/dlgFunction.cpp @@ -418,6 +418,8 @@ int dlgFunction::Go(bool modal) restrict += wxT(" AND nspname NOT LIKE E'pg\\\\_toast%' AND nspname NOT LIKE E'pg\\\\_temp%'"); DatatypeReader tr(database, restrict); + cbDatatype->Freeze(); + cbReturntype->Freeze(); while (tr.HasMore()) { pgDatatype dt = tr.GetDatatype(); @@ -430,7 +432,8 @@ int dlgFunction::Go(bool modal) cbReturntype->Append(dt.GetQuotedSchemaPrefix(database) + dt.QuotedFullName()); tr.MoveNext(); } - + cbDatatype->Thaw(); + cbReturntype->Thaw(); long sel; if (factory == &triggerFunctionFactory) { diff --git a/dlg/dlgTable.cpp b/dlg/dlgTable.cpp index b6f8a67..a4b755b 100644 --- a/dlg/dlgTable.cpp +++ b/dlg/dlgTable.cpp @@ -492,6 +492,7 @@ int dlgTable::Go(bool modal) wxT(" ORDER BY relnamespace, c.relname")); if (set) { + cbTables->Freeze(); while (!set->Eof()) { cbTables->Append(database->GetQuotedSchemaPrefix(set->GetVal(wxT("nspname"))) @@ -500,6 +501,7 @@ int dlgTable::Go(bool modal) tableOids.Add(set->GetVal(wxT("oid"))); set->MoveNext(); } + cbTables->Thaw(); delete set; } }