Aha, found it! I needed to set the "contentPadding" property to zero.
That fixed the issue. I don't know why I didn't see that before, even
after seeing the value in the Firebug DOM properties. Once I looked at
the theme appearance contents for the window class, it was staring me in
the face.
Thanks,
Gene
On Sun, 2009-06-07 at 22:53 -0400, Gene Amtower wrote:
> Wow, this can't be that difficult, so I hope this is a bug in the
> Qooxdoo Window widget code. I hate to say that, but the alternative
> is bleak for me. ;-)
>
> I've created a Standalone application that adds a Scroll object and
> Desktop object to the main application, and then I add a Window object
> to the Desktop as an action menu that gets shown immediately. Then I
> add a new hidden Window object to the desktop by extending the Window
> class in my own new class file. This hidden window is shown for a
> particular action button on the action menu window.
>
> Everything works great, and the hidden window is shown through a
> button listener in the action menu successfully. The only problem is
> that I want to add new Composite widgets inside the new window to
> segment the window into sections, but I can't seem to get them to
> cover the full width of the target Window object. I've tried to use
> ".set" to set the margin and padding properties to "0", and I've tried
> to use the "setter" methods to set the margin and padding properties
> to 0 as well. I've tried to set these properties on both the Window
> object and the internal "pane" child of the Window.
>
> I also tried to use the Basic layout manager and add the Composite at
> {0,0}, but this position starts from inside the margins that are
> getting forced.
>
> I also tried to set the margin and padding properties to 1 instead of
> 0, but that didn't make any difference at all.
>
> It seems that no matter what I do, I've got a consistent space around
> the inside of the Window pane that prevents me from extending my new
> Composite object from border to border. When I look at the DOM
> properties in Firebug, I see that my properties are clearly being set
> to 0, but I also see padding properties from the theme that are $
> $theme_contentPaddingLeft = 10, e.g. This is about the margin I'm
> seeing, so this seems suspicious.
>
> I wonder if the theme padding value is overriding or interfering with
> the properties I'm trying to set through the Window object. Or is
> this because I should use something other than the Composite to
> segment the window pane into separate sections? Or is there yet
> another bit of code to add to override the theme padding value? Do I
> need to create my own custom theme for this window object based on the
> existing window theme to override these values? Please note, whatever
> solution I use, I need to be able to apply different colors to each
> separate section in the Window pane, which is why I'm trying to use
> Composite objects.
>
> I'm reviewing the development "source" version in Firefox 2.0 on
> RedHat FC3 Linux. In a "build" version on the server, loaded into IE6
> on WinXP, it does the same thing.
>
> I'd appreciate any insight into what I'm doing that might be wrong, or
> if this appears to be a bug in the Window object class code related to
> margins/padding. The target Window object and internal Composite
> creation are shown in the code below. You'll see I've left in the
> various attempts at setting margin and padding to zero - I know
> they're likely redundant...
>
> Thanks,
>
> Gene
>
>
>
> > this.set({
> > width : 700,
> > height : 500,
> > margin : 0,
> > padding : 0,
> > allowGrowX: false,
> > allowGrowY: false,
> > allowShrinkX: false,
> > allowShrinkY: false
> > });
> > this.setMargin(0);
> > this.setPadding(0);
> > this.setShowMinimize(false);
> > this.setShowMaximize(false);
> > this.setLayout(new qx.ui.layout.Basic());
> > this.getChildControl("pane").set({
> > margin : 0,
> > padding : 0
> > });
> > this.getChildControl("pane").setMargin(0);
> > this.getChildControl("pane").setPadding(0);
> > this.getChildControl("pane").setBackgroundColor("order-pane");
> > var titlebox = new qx.ui.container.Composite(new
> > qx.ui.layout.Basic());
> > titlebox.set({
> > width : 700,
> > height : 50,
> > backgroundColor : "ordertitle-pane"
> > });
> >
> > this.add(titlebox, {left:0, top:0});
> > screenTitle = new qx.ui.basic.Label("Orders").set({
> > appearance: "menusubtitle",
> > allowGrowX: false,
> > allowGrowY: false,
> > allowShrinkX: false,
> > allowShrinkY: false
> > });
> > titlebox.add(screenTitle, {left:5, top:5});
>
> ------------------------------------------------------------------------------
> OpenSolaris 2009.06 is a cutting edge operating system for enterprises
> looking to deploy the next generation of Solaris that includes the latest
> innovations from Sun and the OpenSource community. Download a copy and
> enjoy capabilities such as Networking, Storage and Virtualization.
> Go to: http://p.sf.net/sfu/opensolaris-get
> _______________________________________________ qooxdoo-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
------------------------------------------------------------------------------
OpenSolaris 2009.06 is a cutting edge operating system for enterprises
looking to deploy the next generation of Solaris that includes the latest
innovations from Sun and the OpenSource community. Download a copy and
enjoy capabilities such as Networking, Storage and Virtualization.
Go to: http://p.sf.net/sfu/opensolaris-get
_______________________________________________
qooxdoo-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel