Hi,

I took a look at the maintenance window. There was less work than I
first thought. I added sizers and dropped the "RECREATE" checkbox which
did nothing (perhaps we should also do the latter in the 1.10 branch).

Patch attached.

Comments?


-- 
Guillaume.
 http://www.postgresqlfr.org
 http://dalibo.com
diff --git a/pgadmin/frm/frmMaintenance.cpp b/pgadmin/frm/frmMaintenance.cpp
index ea33b85..453d1d4 100644
--- a/pgadmin/frm/frmMaintenance.cpp
+++ b/pgadmin/frm/frmMaintenance.cpp
@@ -33,12 +33,9 @@ END_EVENT_TABLE()
 
 #define nbNotebook              CTRL_NOTEBOOK("nbNotebook")
 #define rbxAction               CTRL_RADIOBOX("rbxAction")
-#define sbxOptions              CTRL_STATICBOX("sbxOptions")
 #define chkFull                 CTRL_CHECKBOX("chkFull")
 #define chkFreeze               CTRL_CHECKBOX("chkFreeze")
 #define chkAnalyze              CTRL_CHECKBOX("chkAnalyze")
-#define sbxReindexOptions       CTRL_STATICBOX("sbxReindexOptions")
-#define chkRecreate             CTRL_CHECKBOX("chkRecreate")
 #define chkVerbose              CTRL_CHECKBOX("chkVerbose")
 
 #define stBitmap                CTRL("stBitmap", wxStaticBitmap)
@@ -95,14 +92,16 @@ wxString frmMaintenance::GetHelpPage() const
 void frmMaintenance::OnAction(wxCommandEvent& ev)
 {
     bool isVacuum = (rbxAction->GetSelection() == 0);
-    sbxOptions->Enable(isVacuum);
     chkFull->Enable(isVacuum);
     chkFreeze->Enable(isVacuum);
     chkAnalyze->Enable(isVacuum);
 
     bool isReindex = (rbxAction->GetSelection() == 2);
-    sbxReindexOptions->Enable(isReindex && (object->GetMetaType() == PGM_DATABASE || object->GetMetaType() == PGM_INDEX || object->GetMetaType() == PGM_PRIMARYKEY || object->GetMetaType() == PGM_UNIQUE));
-    chkRecreate->Enable(isReindex && object->GetMetaType() == PGM_INDEX);
+    if (isReindex)
+    {
+        chkVerbose->SetValue(false);
+    }
+    chkVerbose->Enable(!isReindex);
 }
 
 
@@ -148,19 +147,10 @@ wxString frmMaintenance::GetSql()
             {
                 sql = wxT("REINDEX INDEX ") + object->GetQuotedFullIdentifier();
             }
-            else
+            else // Database, Tables, and Index (but not Constraintes ones)
             {
-                if (chkRecreate->GetValue())
-                {
-                    sql = wxT("DROP INDEX ") + object->GetQuotedFullIdentifier() + wxT(";\n")
-                        + ((pgIndex*)object)->GetCreate()
-                        + object->GetCommentSql();
-                }
-                else
-                {
-                    sql = wxT("REINDEX ") + object->GetTypeName().Upper()
-                        + wxT(" ") + object->GetQuotedFullIdentifier();
-                }
+                sql = wxT("REINDEX ") + object->GetTypeName().Upper()
+                    + wxT(" ") + object->GetQuotedFullIdentifier();
             }
             break;
         }
diff --git a/pgadmin/ui/frmMaintenance.xrc b/pgadmin/ui/frmMaintenance.xrc
index 7dc116d..048ab00 100644
--- a/pgadmin/ui/frmMaintenance.xrc
+++ b/pgadmin/ui/frmMaintenance.xrc
@@ -7,64 +7,80 @@
     <object class="wxFlexGridSizer">
       <cols>1</cols>
       <rows>2</rows>
+      <growablecols>0</growablecols>
+      <growablerows>0</growablerows>
       <object class="sizeritem">
         <object class="wxNotebook" name="nbNotebook">
+          <style>wxNB_BOTTOM</style>
           <object class="notebookpage">
             <label>Options</label>
             <object class="wxPanel" name="pnlOptions">
-              <object class="wxRadioBox" name="rbxAction">
-                <label>Maintenance operation</label>
-                <content>
-                  <item>VACUUM</item>
-                  <item>ANALYZE</item>
-                  <item>REINDEX</item>
-                </content>
-                <selection>0</selection>
-                <dimension>3</dimension>
-                <pos>5,5d</pos>
-                <size>180,-1d</size>
-                <dimension>3</dimension>
-                <style>wxRA_SPECIFY_COLS</style>
-              </object>
-              <object class="wxStaticBox" name="sbxOptions">
-                <label>VACUUM options</label>
-                <pos>5,40d</pos>
-                <size>85,50d</size>
-              </object>
-              <object class="wxCheckBox" name="chkFull">
-                <label>FULL</label>
-                <pos>22,52d</pos>
-              </object>
-              <object class="wxCheckBox" name="chkFreeze">
-                <label>FREEZE</label>
-                <pos>22,64d</pos>
-              </object>
-              <object class="wxCheckBox" name="chkAnalyze">
-                <label>ANALYZE</label>
-                <checked>1</checked>
-                <pos>22,76d</pos>
+              <object class="wxFlexGridSizer">
+                <cols>1</cols>
+                <rows>3</rows>
+                <vgap>5</vgap>
+                <hgap>5</hgap>
+                <growablecols>0</growablecols>
+                <object class="sizeritem">
+                  <object class="wxRadioBox" name="rbxAction">
+                    <label>Maintenance operation</label>
+                    <content>
+                      <item>VACUUM</item>
+                      <item>ANALYZE</item>
+                      <item>REINDEX</item>
+                    </content>
+                    <selection>0</selection>
+                    <style>wxRA_SPECIFY_ROWS</style>
+                  </object>
+                  <flag>wxEXPAND|wxALIGN_CENTER_VERTICAL|wxTOP|wxLEFT|wxRIGHT</flag>
+                  <border>4</border>
+                </object>
+                <object class="sizeritem">
+                  <object class="wxStaticBoxSizer">
+                    <label>VACUUM options</label>
+                    <cols>3</cols>
+                    <rows>1</rows>
+                    <vgap>5</vgap>
+                    <hgap>5</hgap>
+                    <growablecols>0</growablecols>
+                    <orient>wxHORIZONTAL</orient>
+                    <object class="sizeritem">
+                      <object class="wxCheckBox" name="chkFull">
+                        <label>FULL</label>
+                      </object>
+                      <flag>wxEXPAND|wxALIGN_CENTER_VERTICAL|wxTOP|wxLEFT|wxRIGHT</flag>
+                      <border>4</border>
+                    </object>
+                    <object class="sizeritem">
+                      <object class="wxCheckBox" name="chkFreeze">
+                        <label>FREEZE</label>
+                      </object>
+                      <flag>wxEXPAND|wxALIGN_CENTER_VERTICAL|wxTOP|wxLEFT|wxRIGHT</flag>
+                      <border>4</border>
+                    </object>
+                    <object class="sizeritem">
+                      <object class="wxCheckBox" name="chkAnalyze">
+                        <label>ANALYZE</label>
+                      </object>
+                      <flag>wxEXPAND|wxALIGN_CENTER_VERTICAL|wxTOP|wxLEFT|wxRIGHT</flag>
+                      <border>4</border>
+                    </object>
+                  </object>
+                  <flag>wxEXPAND|wxALIGN_CENTER_VERTICAL|wxTOP|wxLEFT|wxRIGHT</flag>
+                  <border>4</border>
+                </object>
+                <object class="sizeritem">
+                  <object class="wxCheckBox" name="chkVerbose">
+                    <label>Verbose messages</label>
+                    <checked>1</checked>
+                  </object>
+                  <flag>wxEXPAND|wxALIGN_CENTER_VERTICAL|wxTOP|wxLEFT|wxRIGHT</flag>
+                  <border>4</border>
+                </object>
               </object>
-              <object class="wxStaticBox" name="sbxReindexOptions">
-                <label>REINDEX options</label>
-                <pos>100,40d</pos>
-                <size>85,40d</size>
-              </object>
-              <object class="wxCheckBox" name="chkRecreate">
-                <label>RECREATE</label>
-                <pos>113,52d</pos>
-              </object>
-              <object class="wxCheckBox" name="chkVerbose">
-                <label>Verbose messages</label>
-                <checked>1</checked>
-                <pos>8,95d</pos>
-              </object>
-              <style></style>
             </object>
             <selected>1</selected>
           </object>
-          <pos>2,2d</pos>
-          <size>195,126d</size>
-          <style>wxNB_BOTTOM</style>
           <object class="notebookpage">
             <label>Messages</label>
             <object class="wxTextCtrl" name="txtMessages">
@@ -110,8 +126,6 @@
         </object>
         <flag>wxEXPAND|wxGROW</flag>
       </object>
-      <growablecols>0</growablecols>
-      <growablerows>0</growablerows>
     </object>
   </object>
 </resource>
-- 
Sent via pgadmin-hackers mailing list ([email protected])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgadmin-hackers

Reply via email to