summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOwen Taylor <otaylor@redhat.com>2000-07-02 22:30:54 +0000
committerOwen Taylor <otaylor@src.gnome.org>2000-07-02 22:30:54 +0000
commit0c2240ba379ceb5f3773171cc80a8c640f34e839 (patch)
tree40a189258bbfd061ebb76bdb142d8a12dab718bb
parent4e09f86e48c730c053bb524ca09173ce136c2084 (diff)
downloadgtk+-0c2240ba379ceb5f3773171cc80a8c640f34e839.tar.gz
Add a 'text' argument to set the initial text.
Sun Jul 2 18:19:50 2000 Owen Taylor <otaylor@redhat.com> * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to set the initial text. * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c gtk/gtkvscale.c: Adapt to new argument of create_pango_layout(). * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new pango_layout_set_font_description to simplify.
-rw-r--r--ChangeLog13
-rw-r--r--ChangeLog.pre-2-013
-rw-r--r--ChangeLog.pre-2-1013
-rw-r--r--ChangeLog.pre-2-213
-rw-r--r--ChangeLog.pre-2-413
-rw-r--r--ChangeLog.pre-2-613
-rw-r--r--ChangeLog.pre-2-813
-rw-r--r--gtk/gtkaccellabel.c6
-rw-r--r--gtk/gtkcalendar.c14
-rw-r--r--gtk/gtkclist.c9
-rw-r--r--gtk/gtkentry.c2
-rw-r--r--gtk/gtkhruler.c3
-rw-r--r--gtk/gtkhscale.c4
-rw-r--r--gtk/gtklabel.c5
-rw-r--r--gtk/gtkprogressbar.c6
-rw-r--r--gtk/gtkscale.c2
-rw-r--r--gtk/gtkvruler.c3
-rw-r--r--gtk/gtkvscale.c3
-rw-r--r--gtk/gtkwidget.c7
-rw-r--r--gtk/gtkwidget.h7
20 files changed, 122 insertions, 40 deletions
diff --git a/ChangeLog b/ChangeLog
index 2026ddbab2..f7a675fa3d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,16 @@
+Sun Jul 2 18:19:50 2000 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
+ set the initial text.
+
+ * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
+ gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
+ gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
+ gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
+
+ * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
+ pango_layout_set_font_description to simplify.
+
Sun Jul 2 17:43:41 2000 Owen Taylor <otaylor@redhat.com>
* gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
diff --git a/ChangeLog.pre-2-0 b/ChangeLog.pre-2-0
index 2026ddbab2..f7a675fa3d 100644
--- a/ChangeLog.pre-2-0
+++ b/ChangeLog.pre-2-0
@@ -1,3 +1,16 @@
+Sun Jul 2 18:19:50 2000 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
+ set the initial text.
+
+ * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
+ gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
+ gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
+ gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
+
+ * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
+ pango_layout_set_font_description to simplify.
+
Sun Jul 2 17:43:41 2000 Owen Taylor <otaylor@redhat.com>
* gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10
index 2026ddbab2..f7a675fa3d 100644
--- a/ChangeLog.pre-2-10
+++ b/ChangeLog.pre-2-10
@@ -1,3 +1,16 @@
+Sun Jul 2 18:19:50 2000 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
+ set the initial text.
+
+ * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
+ gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
+ gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
+ gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
+
+ * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
+ pango_layout_set_font_description to simplify.
+
Sun Jul 2 17:43:41 2000 Owen Taylor <otaylor@redhat.com>
* gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
diff --git a/ChangeLog.pre-2-2 b/ChangeLog.pre-2-2
index 2026ddbab2..f7a675fa3d 100644
--- a/ChangeLog.pre-2-2
+++ b/ChangeLog.pre-2-2
@@ -1,3 +1,16 @@
+Sun Jul 2 18:19:50 2000 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
+ set the initial text.
+
+ * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
+ gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
+ gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
+ gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
+
+ * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
+ pango_layout_set_font_description to simplify.
+
Sun Jul 2 17:43:41 2000 Owen Taylor <otaylor@redhat.com>
* gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4
index 2026ddbab2..f7a675fa3d 100644
--- a/ChangeLog.pre-2-4
+++ b/ChangeLog.pre-2-4
@@ -1,3 +1,16 @@
+Sun Jul 2 18:19:50 2000 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
+ set the initial text.
+
+ * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
+ gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
+ gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
+ gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
+
+ * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
+ pango_layout_set_font_description to simplify.
+
Sun Jul 2 17:43:41 2000 Owen Taylor <otaylor@redhat.com>
* gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6
index 2026ddbab2..f7a675fa3d 100644
--- a/ChangeLog.pre-2-6
+++ b/ChangeLog.pre-2-6
@@ -1,3 +1,16 @@
+Sun Jul 2 18:19:50 2000 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
+ set the initial text.
+
+ * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
+ gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
+ gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
+ gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
+
+ * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
+ pango_layout_set_font_description to simplify.
+
Sun Jul 2 17:43:41 2000 Owen Taylor <otaylor@redhat.com>
* gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8
index 2026ddbab2..f7a675fa3d 100644
--- a/ChangeLog.pre-2-8
+++ b/ChangeLog.pre-2-8
@@ -1,3 +1,16 @@
+Sun Jul 2 18:19:50 2000 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
+ set the initial text.
+
+ * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
+ gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
+ gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
+ gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
+
+ * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
+ pango_layout_set_font_description to simplify.
+
Sun Jul 2 17:43:41 2000 Owen Taylor <otaylor@redhat.com>
* gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
diff --git a/gtk/gtkaccellabel.c b/gtk/gtkaccellabel.c
index 36a2610073..000432a437 100644
--- a/gtk/gtkaccellabel.c
+++ b/gtk/gtkaccellabel.c
@@ -242,8 +242,7 @@ gtk_accel_label_size_request (GtkWidget *widget,
if (GTK_WIDGET_CLASS (parent_class)->size_request)
GTK_WIDGET_CLASS (parent_class)->size_request (widget, requisition);
- layout = gtk_widget_create_pango_layout (widget);
- pango_layout_set_text (layout, accel_label->accel_string, -1);
+ layout = gtk_widget_create_pango_layout (widget, accel_label->accel_string);
pango_layout_get_pixel_size (layout, &width, NULL);
accel_label->accel_string_width = width;
@@ -288,8 +287,7 @@ gtk_accel_label_expose_event (GtkWidget *widget,
(widget->requisition.height - misc->ypad * 2)) *
misc->yalign) + 1.5;
- layout = gtk_widget_create_pango_layout (widget);
- pango_layout_set_text (layout, accel_label->accel_string, -1);
+ layout = gtk_widget_create_pango_layout (widget, accel_label->accel_string);
if (GTK_WIDGET_STATE (accel_label) == GTK_STATE_INSENSITIVE)
gdk_draw_layout (widget->window,
diff --git a/gtk/gtkcalendar.c b/gtk/gtkcalendar.c
index 3442dc5ed4..45208c8c2b 100644
--- a/gtk/gtkcalendar.c
+++ b/gtk/gtkcalendar.c
@@ -1168,7 +1168,7 @@ gtk_calendar_size_request (GtkWidget *widget,
calendar = GTK_CALENDAR (widget);
private_data = GTK_CALENDAR_PRIVATE_DATA (widget);
- layout = gtk_widget_create_pango_layout (widget);
+ layout = gtk_widget_create_pango_layout (widget, NULL);
/*
* Calculate the requisition width for the widget.
@@ -1561,10 +1561,8 @@ gtk_calendar_paint_header (GtkWidget *widget)
0, 0, header_width, private_data->header_h);
- layout = gtk_widget_create_pango_layout (widget);
-
sprintf (buffer, "%d", calendar->year);
- pango_layout_set_text (layout, buffer, -1);
+ layout = gtk_widget_create_pango_layout (widget, buffer);
pango_layout_get_pixel_extents (layout, NULL, &logical_rect);
/* Draw title */
@@ -1668,7 +1666,7 @@ gtk_calendar_paint_day_names (GtkWidget *widget)
* Write the labels
*/
- layout = gtk_widget_create_pango_layout (widget);
+ layout = gtk_widget_create_pango_layout (widget, NULL);
gdk_gc_set_foreground (gc, &widget->style->fg[GTK_STATE_SELECTED]);
for (i = 0; i < 7; i++)
@@ -1752,7 +1750,7 @@ gtk_calendar_paint_week_numbers (GtkWidget *widget)
* Write the labels
*/
- layout = gtk_widget_create_pango_layout (widget);
+ layout = gtk_widget_create_pango_layout (widget, NULL);
gdk_gc_set_foreground (gc, &widget->style->fg[GTK_STATE_SELECTED]);
day_height = row_height (calendar);
@@ -1900,10 +1898,8 @@ gtk_calendar_paint_day (GtkWidget *widget,
}
- layout = gtk_widget_create_pango_layout (widget);
-
sprintf (buffer, "%d", day);
- pango_layout_set_text (layout, buffer, -1);
+ layout = gtk_widget_create_pango_layout (widget, buffer);
pango_layout_get_pixel_extents (layout, NULL, &logical_rect);
x_loc -= logical_rect.width;
diff --git a/gtk/gtkclist.c b/gtk/gtkclist.c
index 0964c273c1..3eef07c79b 100644
--- a/gtk/gtkclist.c
+++ b/gtk/gtkclist.c
@@ -2500,7 +2500,6 @@ _gtk_clist_create_cell_layout (GtkCList *clist,
GtkCListRow *clist_row,
gint column)
{
- PangoContext *context;
PangoLayout *layout;
GtkStyle *style;
GtkCell *cell;
@@ -2522,11 +2521,11 @@ _gtk_clist_create_cell_layout (GtkCList *clist,
if (!text)
return NULL;
- layout = gtk_widget_create_pango_layout (GTK_WIDGET (clist));
+ layout = gtk_widget_create_pango_layout (GTK_WIDGET (clist),
+ ((cell->type == GTK_CELL_PIXTEXT) ?
+ GTK_CELL_PIXTEXT (*cell)->text :
+ GTK_CELL_TEXT (*cell)->text));
pango_layout_set_font_description (layout, style->font_desc);
- pango_layout_set_text (layout, ((cell->type == GTK_CELL_PIXTEXT) ?
- GTK_CELL_PIXTEXT (*cell)->text :
- GTK_CELL_TEXT (*cell)->text), -1);
return layout;
diff --git a/gtk/gtkentry.c b/gtk/gtkentry.c
index 991843f2a5..9a3a1948a6 100644
--- a/gtk/gtkentry.c
+++ b/gtk/gtkentry.c
@@ -1165,7 +1165,7 @@ gtk_entry_ensure_layout (GtkEntry *entry)
if (!entry->layout)
{
- entry->layout = gtk_widget_create_pango_layout (widget);
+ entry->layout = gtk_widget_create_pango_layout (widget, NULL);
pango_layout_set_text (entry->layout, entry->text, entry->n_bytes);
}
}
diff --git a/gtk/gtkhruler.c b/gtk/gtkhruler.c
index 7f5ee26b39..1a35fea71b 100644
--- a/gtk/gtkhruler.c
+++ b/gtk/gtkhruler.c
@@ -172,8 +172,7 @@ gtk_hruler_draw_ticks (GtkRuler *ruler)
digit_height = PANGO_PIXELS (ink_rect.height) + 2;
digit_offset = ink_rect.y;
- layout = gtk_widget_create_pango_layout (widget);
- pango_layout_set_text (layout, "012456789", -1);
+ layout = gtk_widget_create_pango_layout (widget, "012456789");
pango_layout_get_extents (layout, &ink_rect, &logical_rect);
digit_height = PANGO_PIXELS (ink_rect.height) + 1;
diff --git a/gtk/gtkhscale.c b/gtk/gtkhscale.c
index 5b5cfa7119..ec1c29d30f 100644
--- a/gtk/gtkhscale.c
+++ b/gtk/gtkhscale.c
@@ -525,9 +525,7 @@ gtk_hscale_draw_value (GtkScale *scale)
PangoRectangle logical_rect;
sprintf (buffer, "%0.*f", GTK_RANGE (scale)->digits, GTK_RANGE (scale)->adjustment->value);
-
- layout = gtk_widget_create_pango_layout (widget);
- pango_layout_set_text (layout, buffer, -1);
+ layout = gtk_widget_create_pango_layout (widget, buffer);
pango_layout_get_pixel_extents (layout, NULL, &logical_rect);
switch (scale->value_pos)
diff --git a/gtk/gtklabel.c b/gtk/gtklabel.c
index 31e74abf60..21c08f8f5d 100644
--- a/gtk/gtklabel.c
+++ b/gtk/gtklabel.c
@@ -400,12 +400,11 @@ gtk_label_size_request (GtkWidget *widget,
PangoAlignment align = PANGO_ALIGN_LEFT; /* Quiet gcc */
PangoAttrList *attrs = gtk_label_pattern_to_attrs (label);
- label->layout = gtk_widget_create_pango_layout (widget);
+ label->layout = gtk_widget_create_pango_layout (widget, label->label);
+
pango_layout_set_attributes (label->layout, attrs);
pango_attr_list_unref (attrs);
- pango_layout_set_text (label->layout, label->label, -1);
-
switch (label->jtype)
{
case GTK_JUSTIFY_LEFT:
diff --git a/gtk/gtkprogressbar.c b/gtk/gtkprogressbar.c
index 770dbe9efe..e1db4c6b93 100644
--- a/gtk/gtkprogressbar.c
+++ b/gtk/gtkprogressbar.c
@@ -363,8 +363,7 @@ gtk_progress_bar_size_request (GtkWidget *widget,
{
buf = gtk_progress_get_text_from_value (progress, progress->adjustment->upper);
- layout = gtk_widget_create_pango_layout (widget);
- pango_layout_set_text (layout, buf, -1);
+ layout = gtk_widget_create_pango_layout (widget, buf);
pango_layout_get_pixel_extents (layout, NULL, &logical_rect);
g_object_unref (G_OBJECT (layout));
@@ -710,8 +709,7 @@ gtk_progress_bar_paint (GtkProgress *progress)
buf = gtk_progress_get_current_text (progress);
- layout = gtk_widget_create_pango_layout (widget);
- pango_layout_set_text (layout, buf, -1);
+ layout = gtk_widget_create_pango_layout (widget, buf);
pango_layout_get_pixel_extents (layout, NULL, &logical_rect);
x = widget->style->xthickness + 1 +
diff --git a/gtk/gtkscale.c b/gtk/gtkscale.c
index a23b816142..2aa5483f4f 100644
--- a/gtk/gtkscale.c
+++ b/gtk/gtkscale.c
@@ -280,7 +280,7 @@ gtk_scale_get_value_size (GtkScale *scale,
range = GTK_RANGE (scale);
- layout = gtk_widget_create_pango_layout (GTK_WIDGET (scale));
+ layout = gtk_widget_create_pango_layout (GTK_WIDGET (scale), NULL);
value = ABS (range->adjustment->lower);
if (value == 0) value = 1;
diff --git a/gtk/gtkvruler.c b/gtk/gtkvruler.c
index 1d9266be37..74567f8d3b 100644
--- a/gtk/gtkvruler.c
+++ b/gtk/gtkvruler.c
@@ -167,8 +167,7 @@ gtk_vruler_draw_ticks (GtkRuler *ruler)
xthickness = widget->style->xthickness;
ythickness = widget->style->ythickness;
- layout = gtk_widget_create_pango_layout (widget);
- pango_layout_set_text (layout, "012456789", -1);
+ layout = gtk_widget_create_pango_layout (widget, "012456789");
pango_layout_get_extents (layout, &ink_rect, &logical_rect);
digit_height = PANGO_PIXELS (ink_rect.height) + 2;
diff --git a/gtk/gtkvscale.c b/gtk/gtkvscale.c
index dd5782846d..b69f1c1761 100644
--- a/gtk/gtkvscale.c
+++ b/gtk/gtkvscale.c
@@ -530,8 +530,7 @@ gtk_vscale_draw_value (GtkScale *scale)
sprintf (buffer, "%0.*f", GTK_RANGE (scale)->digits, GTK_RANGE (scale)->adjustment->value);
- layout = gtk_widget_create_pango_layout (widget);
- pango_layout_set_text (layout, buffer, strlen (buffer));
+ layout = gtk_widget_create_pango_layout (widget, buffer);
pango_layout_get_pixel_extents (layout, NULL, &logical_rect);
switch (scale->value_pos)
diff --git a/gtk/gtkwidget.c b/gtk/gtkwidget.c
index 37d134b668..65735a6b1a 100644
--- a/gtk/gtkwidget.c
+++ b/gtk/gtkwidget.c
@@ -3293,6 +3293,7 @@ gtk_widget_create_pango_context (GtkWidget *widget)
/**
* gtk_widget_create_pango_layout:
* @widget: a #PangoWidget
+ * @text: text to set on the layout (can be %NULL)
*
* Create a new #PangoLayout with the appropriate colormap,
* font description, and base direction for drawing text for
@@ -3306,7 +3307,8 @@ gtk_widget_create_pango_context (GtkWidget *widget)
* Return value: the new #PangoLayout
**/
PangoLayout *
-gtk_widget_create_pango_layout (GtkWidget *widget)
+gtk_widget_create_pango_layout (GtkWidget *widget,
+ const gchar *text)
{
PangoLayout *layout;
PangoContext *context;
@@ -3316,6 +3318,9 @@ gtk_widget_create_pango_layout (GtkWidget *widget)
context = gtk_widget_get_pango_context (widget);
layout = pango_layout_new (context);
+ if (text)
+ pango_layout_set_text (layout, text, -1);
+
return layout;
}
diff --git a/gtk/gtkwidget.h b/gtk/gtkwidget.h
index c85dfd5537..a10d20b59d 100644
--- a/gtk/gtkwidget.h
+++ b/gtk/gtkwidget.h
@@ -575,9 +575,10 @@ void gtk_widget_restore_default_style (GtkWidget *widget);
void gtk_widget_modify_style (GtkWidget *widget,
GtkRcStyle *style);
-PangoContext *gtk_widget_create_pango_context (GtkWidget *widget);
-PangoContext *gtk_widget_get_pango_context (GtkWidget *widget);
-PangoLayout *gtk_widget_create_pango_layout (GtkWidget *widget);
+PangoContext *gtk_widget_create_pango_context (GtkWidget *widget);
+PangoContext *gtk_widget_get_pango_context (GtkWidget *widget);
+PangoLayout *gtk_widget_create_pango_layout (GtkWidget *widget,
+ const gchar *text);
/* handle composite names for GTK_COMPOSITE_CHILD widgets,
* the returned name is newly allocated.