On 17 June 2011 18:16, Thom Brown <t...@linux.com> wrote: > On 16 June 2011 15:41, Dave Page <dp...@pgadmin.org> wrote: >> On Thu, Jun 16, 2011 at 2:45 PM, Thom Brown <t...@linux.com> wrote: >>> Hi, >>> >>> I'm using PgAdmin III 1.14.0 beta 1 and noticed that if I go into the >>> properties dialog box for a table, the Fill Factor field cannot be >>> modified. I've manually altered a table so that the fill factor is >>> set to a valid value, re-checked the properties box and can see my new >>> value in the Fill Factor field. However, it still cannot be modified. >> >> This appears to be a missing feature. We need to add code to support >> adjustment of the fill factor on existing tables. >> >>> Also, the properties dialog box for a primary key also has a Fill >>> Factor field, and values can be entered into it, but the OK button >>> stays greyed out and the SQL tab shows nothing to be changed. >> >> That has the same issue, plus a bug which leaves the field enabled. >> I'll push a fix for the bug - a patch would be cool for the new >> feature though :-p > > Very well then. Dodgy patch attached.
And again without ugly whitespace. -- Thom Brown Twitter: @darkixion IRC (freenode): dark_ixion Registered Linux user: #516935 EnterpriseDB UK: http://www.enterprisedb.com The Enterprise PostgreSQL Company
diff --git a/pgadmin/dlg/dlgTable.cpp b/pgadmin/dlg/dlgTable.cpp index 72c2cae..b82f364 100644 --- a/pgadmin/dlg/dlgTable.cpp +++ b/pgadmin/dlg/dlgTable.cpp @@ -105,6 +105,7 @@ BEGIN_EVENT_TABLE(dlgTable, dlgSecurityProperty) EVT_CHECKBOX(XRCID("chkUnlogged"), dlgProperty::OnChange) EVT_TEXT(XRCID("cbTablespace"), dlgProperty::OnChange) EVT_COMBOBOX(XRCID("cbTablespace"), dlgProperty::OnChange) + EVT_TEXT(XRCID("txtFillFactor"), dlgProperty::OnChange) EVT_COMBOBOX(XRCID("cbOfType"), dlgTable::OnChangeOfType) EVT_CHECKBOX(XRCID("chkHasOids"), dlgProperty::OnChange) EVT_TEXT(XRCID("cbTables"), dlgTable::OnChangeTable) @@ -745,13 +746,10 @@ int dlgTable::Go(bool modal) if (table) { txtFillFactor->SetValue(table->GetFillFactor()); - txtFillFactor->Disable(); - } - else - { - txtFillFactor->Enable(); - txtFillFactor->SetValidator(numericValidator); } + + txtFillFactor->SetValidator(numericValidator); + txtFillFactor->Enable(); } else { @@ -933,6 +931,13 @@ wxString dlgTable::GetSql() + wxT(" SET TABLESPACE ") + qtIdent(cbTablespace->GetValue()) + wxT(";\n"); + if (txtFillFactor->GetValue().Trim().Length() > 0) + { + sql += wxT("ALTER TABLE ") + tabname + + wxT("\n SET (FILLFACTOR=") + + txtFillFactor->GetValue() + wxT(");\n"); + } + if (connection->BackendMinimumVersion(8, 1)) { if (!chkCustomVac->GetValue())
-- Sent via pgadmin-support mailing list (pgadmin-support@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgadmin-support