Re: Vertically aligning components in St
- From: Giovanni Campagna <scampa giovanni gmail com>
- To: Jason Heeris <jason heeris gmail com>
- Cc: gnome-shell-list <gnome-shell-list gnome org>
- Subject: Re: Vertically aligning components in St
- Date: Sat, 2 Mar 2013 15:11:32 +0100
2013/3/2 Jason Heeris <jason heeris gmail com>:
I've been trying to vertically align components in an St.BoxLayout
(with vertical = false), but nothing I do seems to have any affect.
I've tried setting 'vertical-align' in the CSS for a component, and
setting y_align and y_expand on both the components and the BoxLayout.
The components always end up aligned along the top edge of the
BoxLayout.
CSS vertical-align is not implemented, and StBoxLayout doesn't use the
standard [xy]_align and [xy]_expand properties.
Instead, it uses [xy]_align and [xy]_fill child properties, that you
can set with .add(actor, { y_align: St.Align.MIDDLE }).
Alternatively, you can use a regular StWidget and set a
ClutterBoxLayout layout manager. That would honor the align and expand
properties on the actor.
How can I vertically centre components? Or better yet, can I align
text-based components (eg. labels and text fields) along the text
baseline?
Unfortunately, baseline alignment is not implemented anywhere in the
gnome libraries. See
https://mail.gnome.org/archives/gtk-devel-list/2013-February/msg00130.html
for a discussion of implementing it in gtk+, but it'll take time
before its copied to St as well.
Giovanni
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]