Re: Enabling SQL text field in the SQL tab of object dialog - Mailing list pgadmin-hackers

From Guillaume Lelarge
Subject Re: Enabling SQL text field in the SQL tab of object dialog
Date
Msg-id 48747451.6040607@lelarge.info
Whole thread Raw
In response to Re: Enabling SQL text field in the SQL tab of object dialog  ("Dave Page" <dpage@postgresql.org>)
Responses Re: Enabling SQL text field in the SQL tab of object dialog  ("Dave Page" <dpage@postgresql.org>)
List pgadmin-hackers
Dave Page a écrit :
> (apologies for not reviewing the latest patch yet - we moved offices
> on Monday so I've been tied up with that for the last few days)
>

No problem, don't worry :)

> On Wed, Jul 9, 2008 at 12:07 AM, Guillaume Lelarge
> <guillaume@lelarge.info> wrote:
>
>> I worked on the remaining issue tonight and it seems I can fix it this way:
>> I add a wxFlexGridSizer and a few sizers on the .xrc file. It works well on
>> the Linux and on the Win32 plateforms (I only check with dlgDatabase.xrc
>> file). If I'm right, this means I need to add these widgets on each
>> properties' dialog that doesn't already have them (all but functions and
>> trigger' ones).
>
> I don't understand what you mean. The SQL tab is programmatically
> added to each dialogue, so what do you propose to add the sizer to in
> the XRC files?
>

The last patch I sent works on GTK+. When I try it on Windows, it works
for dlgFunction and dlgTrigger and doesn't with all other dlg*. I tried
to understand what could be wrong with dlgDatabase. dlgFunction already
has a wxFlexGridSizer on the .xrc file. The wxFlexGridSizer contains the
notebook. So, what I did is adding another wxFlexGridSizer in
dlgDatabase.xrc and a few other widgets to make it look like the
dlgFunction.xrc file. See the patch attached. This is a quick and dirty
patch... it adds Apply and Help buttons that are not handled, it also
adds a style tag (for the wxDialog) which is not necessary. Anyways,
with this new component on the xrc file, it works on Windows.

> Besides, anything that is added via an XRC file should be possible
> through C++ (the XRC files are translated to C++ in fact), so we
> shouldn't need to hack any XRC files and should able to continue with
> the current implementation in the base class.
>
> It seems to me that this is taking far too long to solve what should
> be a simple problem. Where are we going wrong? I need to try to find
> some time to look at this in more depth.
>

If you could, it would be great. But don't hurry, I can wait till you
have more time :)

Thanks.


--
Guillaume.
  http://www.postgresqlfr.org
  http://dalibo.com
Index: pgadmin/ui/dlgDatabase.xrc
===================================================================
--- pgadmin/ui/dlgDatabase.xrc    (revision 7390)
+++ pgadmin/ui/dlgDatabase.xrc    (working copy)
@@ -2,6 +2,10 @@
 <resource>
   <object class="wxDialog" name="dlgDatabase">
     <title></title>
+    <style>wxDEFAULT_DIALOG_STYLE|wxCAPTION|wxSYSTEM_MENU|wxRESIZE_BORDER|wxRESIZE_BOX|wxTHICK_FRAME</style>
+    <object class="wxFlexGridSizer">
+      <cols>1</cols>
+      <object class="sizeritem">
     <object class="wxNotebook" name="nbNotebook">
       <object class="notebookpage">
         <label>Properties</label>
@@ -168,20 +172,70 @@
         </object>
       </object>
     </object>
-    <object class="wxButton" name="wxID_HELP">
-      <label>Help</label>
-      <pos>2,220d</pos>
+        <flag>wxALL|wxGROW|wxALIGN_CENTRE</flag>
+        <border>3</border>
+      </object>
+      <growablecols>0</growablecols>
+      <growablerows>0</growablerows>
+      <object class="spacer">
+        <size>2,2d</size>
+      </object>
+      <object class="sizeritem">
+        <object class="wxFlexGridSizer">
+          <cols>9</cols>
+          <object class="spacer">
+            <size>3,3d</size>
+          </object>
+          <object class="sizeritem">
+            <object class="wxButton" name="wxID_HELP">
+              <label>Help</label>
+              <pos>135,220d</pos>
+            </object>
+          </object>
+          <object class="spacer">
+            <size>3,3d</size>
+          </object>
+          <object class="sizeritem">
+            <object class="wxButton" name="wxID_APPLY">
+              <label>Apply</label>
+            </object>
+          </object>
+          <object class="spacer">
+            <size>3,3d</size>
+          </object>
+          <object class="sizeritem">
+            <object class="wxButton" name="wxID_OK">
+              <label>&OK</label>
+              <default>1</default>
+              <pos>135,220d</pos>
+            </object>
+          </object>
+          <object class="spacer">
+            <size>3,3d</size>
+          </object>
+          <object class="sizeritem">
+            <object class="wxButton" name="wxID_CANCEL">
+              <label>&Cancel</label>
+              <pos>176,220d</pos>
+            </object>
+          </object>
+          <object class="spacer">
+            <size>3,3d</size>
+          </object>
+          <growablecols>2</growablecols>
+        </object>
+        <flag>wxTOP|wxLEFT|wxRIGHT|wxGROW</flag>
+      </object>
+      <object class="spacer">
+        <size>3,3d</size>
+      </object>
+      <object class="sizeritem">
+        <object class="unknown" name="unkStatusBar">
+          <size>-1,15d</size>
+        </object>
+        <flag>wxGROW|wxALIGN_CENTRE</flag>
+        <border>3</border>
+      </object>
     </object>
-    <object class="wxButton" name="wxID_OK">
-      <label>&OK</label>
-      <default>1</default>
-      <pos>113,220d</pos>
-    </object>
-    <object class="wxButton" name="wxID_CANCEL">
-      <label>&Cancel</label>
-      <pos>166,220d</pos>
-    </object>
-    <size>218,238d</size>
-    <style></style>
   </object>
 </resource>

pgadmin-hackers by date:

Previous
From: "Dave Page"
Date:
Subject: Re: Enabling SQL text field in the SQL tab of object dialog
Next
From: "Dave Page"
Date:
Subject: Re: Enabling SQL text field in the SQL tab of object dialog