[glabels/vala] Fix layout problems with center and right text alignment with text box
- From: Jim Evins <jimevins src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [glabels/vala] Fix layout problems with center and right text alignment with text box
- Date: Fri, 23 May 2014 02:22:17 +0000 (UTC)
commit 6d78f8420f8727b7714dfd1d409c32ccff26de49
Author: Jim Evins <evins snaught com>
Date: Thu May 22 22:20:01 2014 -0400
Fix layout problems with center and right text alignment with text box
Pango layout width should be 6 points smaller than text width to account
for a 3 left and right margin.
glabels/label_object_text.vala | 12 ++++++++----
1 files changed, 8 insertions(+), 4 deletions(-)
---
diff --git a/glabels/label_object_text.vala b/glabels/label_object_text.vala
index 866b613..de390bf 100644
--- a/glabels/label_object_text.vala
+++ b/glabels/label_object_text.vala
@@ -481,7 +481,7 @@ namespace glabels
layout.set_text( text, -1 );
layout.set_spacing( (int)(scaled_font_size * (text_line_spacing-1) *
Pango.SCALE/scale_x + 0.5) );
- layout.set_width( (int)(w * Pango.SCALE/scale_x + 0.5) );
+ layout.set_width( (int)((w - 2*TEXT_MARGIN)*Pango.SCALE/scale_x + 0.5) );
layout.set_wrap( Pango.WrapMode.WORD );
layout.set_alignment( text_alignment );
@@ -653,7 +653,7 @@ namespace glabels
}
else
{
- layout.set_width( (int)(_w_raw * Pango.SCALE + 0.5) );
+ layout.set_width( (int)((_w_raw - TEXT_MARGIN)*Pango.SCALE + 0.5) );
}
int iw, ih;
@@ -665,10 +665,14 @@ namespace glabels
}
else
{
- _w = iw / Pango.SCALE + 2*TEXT_MARGIN;
+ /*
+ * Grow box to include left and right margins. +1 point to
+ * to give a little extra room to prevent text from wrapping.
+ */
+ _w = iw / (double)Pango.SCALE + 2*TEXT_MARGIN + 1;
}
- double h_temp = ih / Pango.SCALE;
+ double h_temp = ih / (double)Pango.SCALE;
if ( h_temp < _h_raw )
{
_h = h_raw;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]