Index: CHANGELOG.txt
===================================================================
RCS file: /projects/pgadmin3/CHANGELOG.txt,v
retrieving revision 1.98
retrieving revision 1.99
diff -LCHANGELOG.txt -LCHANGELOG.txt -u -w -r1.98 -r1.99
--- CHANGELOG.txt
+++ CHANGELOG.txt
@@ -16,6 +16,7 @@
+ - 2004-05-10 DP Generate function SQL correctly when the return type needs a schema specification
- 2004-05-04 DP Prevent duplication of functional indexes
- 2004-03-30 AP *** no initial language selection (using system default)
- 2004-03-25 AP *** Allow initial selection of language "Default"
Index: frmQuery.h
===================================================================
RCS file: /projects/pgadmin3/src/include/frmQuery.h,v
retrieving revision 1.20
retrieving revision 1.21
diff -Lsrc/include/frmQuery.h -Lsrc/include/frmQuery.h -u -w -r1.20 -r1.21
--- src/include/frmQuery.h
+++ src/include/frmQuery.h
@@ -78,7 +78,7 @@
wxString title;
wxString lastFilename, lastDir, lastPath;
- bool changed, aborted;
+ bool changed, loaded, aborted;
bool lastFileFormat;
DECLARE_EVENT_TABLE()
Index: pgFunction.cpp
===================================================================
RCS file: /projects/pgadmin3/src/schema/pgFunction.cpp,v
retrieving revision 1.33
retrieving revision 1.34
diff -Lsrc/schema/pgFunction.cpp -Lsrc/schema/pgFunction.cpp -u -w -r1.33 -r1.34
--- src/schema/pgFunction.cpp
+++ src/schema/pgFunction.cpp
@@ -140,9 +140,10 @@
pgFunction *function=0;
pgSet *functions = obj->GetDatabase()->ExecuteSet(
- wxT("SELECT pr.oid, pr.*, TYP.typname, lanname, pg_get_userbyid(proowner) as funcowner, description\n")
+ wxT("SELECT pr.oid, pr.*, TYP.typname, TYPNS.nspname AS typnsp, lanname, pg_get_userbyid(proowner) as funcowner, description\n")
wxT(" FROM pg_proc pr\n")
wxT(" JOIN pg_type TYP ON TYP.oid=prorettype\n")
+ wxT(" JOIN pg_namespace TYPNS ON TYPNS.oid=TYP.typnamespace\n")
wxT(" JOIN pg_language LNG ON LNG.oid=prolang\n")
wxT(" LEFT OUTER JOIN pg_description des ON des.objoid=pr.oid\n")
+ restriction +
@@ -164,7 +165,7 @@
function->iSetOwner(functions->GetVal(wxT("funcowner")));
function->iSetAcl(functions->GetVal(wxT("proacl")));
function->iSetArgCount(functions->GetLong(wxT("pronargs")));
- function->iSetReturnType(functions->GetVal(wxT("typname")));
+ function->iSetReturnType(obj->GetDatabase()->GetSchemaPrefix(functions->GetVal(wxT("typnsp"))) + functions->GetVal(wxT("typname")));
function->iSetComment(functions->GetVal(wxT("description")));
wxString oids=functions->GetVal(wxT("proargtypes"));
function->iSetArgTypeOids(oids);
Index: frmQuery.cpp
===================================================================
RCS file: /projects/pgadmin3/src/ui/frmQuery.cpp,v
retrieving revision 1.65
retrieving revision 1.66
diff -Lsrc/ui/frmQuery.cpp -Lsrc/ui/frmQuery.cpp -u -w -r1.65 -r1.66
--- src/ui/frmQuery.cpp
+++ src/ui/frmQuery.cpp
@@ -91,6 +91,7 @@
mainForm=form;
title = _title;
conn=_conn;
+ loaded = false;
SetIcon(wxIcon(sql_xpm));
wxWindowBase::SetFont(settings->GetSystemFont());
@@ -219,9 +220,8 @@
horizontal->SplitHorizontally(sqlQuery, output, splitpos);
sqlQuery->SetText(query);
- changed = !query.IsNull() && settings->GetStickySql();
- if (changed)
- setExtendedTitle();
+ changed = false;
+
updateMenu();
queryMenu->Enable(MNU_SAVEHISTORY, false);
queryMenu->Enable(MNU_CLEARHISTORY, false);
@@ -333,6 +333,7 @@
{
Show(TRUE);
sqlQuery->SetFocus();
+ loaded = true;
}
@@ -545,6 +546,7 @@
void frmQuery::setExtendedTitle()
{
wxString chgStr;
+
if (changed)
chgStr = wxT(" *");
@@ -621,6 +623,9 @@
void frmQuery::OnChangeStc(wxStyledTextEvent& event)
{
+ if (!loaded)
+ return;
+
if (!changed)
{
changed=true;