pango r2538 - in trunk: . pango
- From: behdad svn gnome org
- To: svn-commits-list gnome org
- Subject: pango r2538 - in trunk: . pango
- Date: Tue, 8 Jan 2008 22:55:15 +0000 (GMT)
Author: behdad
Date: Tue Jan 8 22:55:14 2008
New Revision: 2538
URL: http://svn.gnome.org/viewvc/pango?rev=2538&view=rev
Log:
2008-01-08 Behdad Esfahbod <behdad gnome org>
* pango/pango-layout.c: Ignore indent if aligned center, and document
so. This assumption was present in some places and not the others.
Fixed now.
Modified:
trunk/ChangeLog
trunk/pango/pango-layout.c
Modified: trunk/pango/pango-layout.c
==============================================================================
--- trunk/pango/pango-layout.c (original)
+++ trunk/pango/pango-layout.c Tue Jan 8 22:55:14 2008
@@ -451,6 +451,9 @@
* of @indent will produce a hanging indentation. That is, the first line will
* have the full width, and subsequent lines will be indented by the
* absolute value of @indent.
+ *
+ * The indent setting is ignored if layout alignment is set to
+ * %PANGO_ALIGN_CENTER.
**/
void
pango_layout_set_indent (PangoLayout *layout,
@@ -3314,10 +3317,18 @@
if (layout->ellipsize != PANGO_ELLIPSIZE_NONE)
state->remaining_width = -1;
- else if (state->first_line)
- state->remaining_width = (layout->indent >= 0) ? layout->width - layout->indent : layout->width;
else
- state->remaining_width = (layout->indent >= 0) ? layout->width : layout->width + layout->indent;
+ {
+ state->remaining_width = layout->width;
+
+ if (layout->alignment != PANGO_ALIGN_CENTER)
+ {
+ if (state->first_line && layout->indent >= 0)
+ state->remaining_width -= layout->indent;
+ else if (!state->first_line && layout->indent < 0)
+ state->remaining_width += layout->indent;
+ }
+ }
DEBUG ("starting to fill line", line, state);
while (state->items)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]