[prev in list] [next in list] [prev in thread] [next in thread] 

List:       gtk-app-devel
Subject:    Re: clarification on GtkAlignment
From:       Mark Ivey <zovirl1_list () sbcglobal ! net>
Date:       2004-09-28 18:33:13
Message-ID: 1096396392.24422.35.camel () ws-mivey
[Download RAW message or body]

Ah that would explain it.  I was expecting the alignment to base
calculations off the total available space, not the total available
space minus the widget's minimum size.

Is that actually useful?  I can't think of what I would use an alignment
for except saying "give this widget 25% of the available space, starting
at the middle (50%) of the available space" only that doesn't work...

-Mark Ivey-

On Tue, 2004-09-28 at 11:10, John Finlay wrote:
> Mark Ivey wrote:
> 
> >Wow, that's unfortunate.  I didn't really want to just pad it...that
> >almost goes back to the bad days of absolute positioning.
> >
> >Anyone have any idea why the alignments aren't more "exact" with their
> >scales?  Is this intended?
> >
> >-Mark Ivey-
> >
> >On Tue, 2004-09-28 at 09:58, Stefan Kost wrote:
> >  
> >
> >>In the GNOME HIG they really suggest to use a label containg spaces for padding
> >>(I don't like that as well).
> >>That means you should put each button in a hbox(2) and put the padding label
> >>into the first slot of the hbox and your button into the second one.
> >>:-(
> >>
> >>Stefan
> >>
> >>Mark Ivey wrote:
> >>    
> >>
> >>>I don't understand something about alignments, hopefully someone can
> >>>help me out.  My window contains a 4-row vbox filled with alignments. 
> >>>Each alignment has the same settings:
> >>>	x align: 1.0
> >>>	y align: 0.0
> >>>	x scale: 0.5
> >>>	y scale: 1.0
> >>>Each alignment also contains a 1 button.  The buttons have different
> >>>labels, like this:
> >>>	a
> >>>	as
> >>>	asd
> >>>	asdf
> >>>
> >>>Now, I would expect all the buttons to take exactly half the window, but
> >>>they don't.  The buttons with shorter labels are slightly wider.  FWIW,
> >>>this happens with labels also, not just buttons
> >>>
> >>>So what's the deal?  
> >>>
> >>>My ultimate goal is to have a layout like this, where all the widgets
> >>>are lined up 1/3 of the way out from the left edge:
> >>>
> >>>Section heading
> >>>----------------
> >>>     widget
> >>>     widget
> >>>     widget
> >>>
> >>>Another section
> >>>----------------
> >>>     widget
> >>>     widget
> >>>
> >>>
> >>>...is there a better way to do it?
> >>>
> >>>      
> >>>
> My understanding of aligments is that they deal with the free space 
> beyond that required by the child widget. That means the scale factors 
> take the fraction of free space and add it to the child widget required 
> space. Likewise the align factors determine the fraction of free space 
> to be allocated to the left or above the widget. For example:
> A GtkButton widget (32 pixels wide by 32 pixels high) is placed inside a 
> GtkAlignment widget (256 pixels wide by 128 pixels high) which has 
> xalign of 0.25, yalign of 0.25, xscale of 0.25 and yscale of 0.25. The 
> horizontal free space is 256-32=224 pixels and the vertical free space 
> is 128-32=96 pixels. The button will absorb 0.25x224=56 pixels 
> horizontally and 0.25x96=24 pixels vertically since the xscale and 
> yscale are 0.25 and become 32+56=88 pixels wide by 32+24=56 pixels high. 
> This will leave 256-88=168 pixels of horizontal free space and 128-56=72 
> pixels of vertical free space. Since the xalign value is 0.25 the 
> horizontal free space will be allocated as 0.25x168=42 pixels to the 
> left of the button and 0.72x168=126 pixels to the right. Likewise given 
> a yalign value of 0.25 the vertical free space is allocated as 
> 0.25x72=18 pixels above the button and 0.75*72=54 pixels below.
> 
> John
> 
> 

_______________________________________________
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic