diff options
author | Matthias Clasen <mclasen@redhat.com> | 2005-04-29 14:43:50 +0000 |
---|---|---|
committer | Matthias Clasen <matthiasc@src.gnome.org> | 2005-04-29 14:43:50 +0000 |
commit | 7d2d8182b443f3ec8e6f21c59f81550c7d5db282 (patch) | |
tree | 8ecf835b8b87b4fc13bd541c165112d65f9ce36e /tests | |
parent | ee6e3ea040210dad2f611ed385ab99f4b18da30c (diff) | |
download | gtk+-7d2d8182b443f3ec8e6f21c59f81550c7d5db282.tar.gz |
Add some more attribute tests.
2005-04-29 Matthias Clasen <mclasen@redhat.com>
* tests/testtext.c: Add some more attribute tests.
* gtk/gtktexttag.c (gtk_text_tag_class_init): Correct the documentation
of the rise property. String change, but it is more important to
be correct than to be translated. (#301740)
Diffstat (limited to 'tests')
-rw-r--r-- | tests/testtext.c | 130 |
1 files changed, 129 insertions, 1 deletions
diff --git a/tests/testtext.c b/tests/testtext.c index a33c90703d..85d312c5ba 100644 --- a/tests/testtext.c +++ b/tests/testtext.c @@ -28,6 +28,10 @@ struct _Buffer GtkTextTag *invisible_tag; GtkTextTag *not_editable_tag; GtkTextTag *found_text_tag; + GtkTextTag *rise_tag; + GtkTextTag *large_tag; + GtkTextTag *indent_tag; + GtkTextTag *margin_tag; GtkTextTag *custom_tabs_tag; GSList *color_tags; guint color_cycle_timeout; @@ -1034,6 +1038,114 @@ do_apply_invisible (gpointer callback_data, } static void +do_apply_rise (gpointer callback_data, + guint callback_action, + GtkWidget *widget) +{ + View *view = view_from_widget (widget); + GtkTextIter start; + GtkTextIter end; + + if (gtk_text_buffer_get_selection_bounds (view->buffer->buffer, + &start, &end)) + { + if (callback_action) + { + gtk_text_buffer_remove_tag (view->buffer->buffer, + view->buffer->rise_tag, + &start, &end); + } + else + { + gtk_text_buffer_apply_tag (view->buffer->buffer, + view->buffer->rise_tag, + &start, &end); + } + } +} + +static void +do_apply_large (gpointer callback_data, + guint callback_action, + GtkWidget *widget) +{ + View *view = view_from_widget (widget); + GtkTextIter start; + GtkTextIter end; + + if (gtk_text_buffer_get_selection_bounds (view->buffer->buffer, + &start, &end)) + { + if (callback_action) + { + gtk_text_buffer_remove_tag (view->buffer->buffer, + view->buffer->large_tag, + &start, &end); + } + else + { + gtk_text_buffer_apply_tag (view->buffer->buffer, + view->buffer->large_tag, + &start, &end); + } + } +} + +static void +do_apply_indent (gpointer callback_data, + guint callback_action, + GtkWidget *widget) +{ + View *view = view_from_widget (widget); + GtkTextIter start; + GtkTextIter end; + + if (gtk_text_buffer_get_selection_bounds (view->buffer->buffer, + &start, &end)) + { + if (callback_action) + { + gtk_text_buffer_remove_tag (view->buffer->buffer, + view->buffer->indent_tag, + &start, &end); + } + else + { + gtk_text_buffer_apply_tag (view->buffer->buffer, + view->buffer->indent_tag, + &start, &end); + } + } +} + +static void +do_apply_margin (gpointer callback_data, + guint callback_action, + GtkWidget *widget) +{ + View *view = view_from_widget (widget); + GtkTextIter start; + GtkTextIter end; + + if (gtk_text_buffer_get_selection_bounds (view->buffer->buffer, + &start, &end)) + { + if (callback_action) + { + gtk_text_buffer_remove_tag (view->buffer->buffer, + view->buffer->margin_tag, + &start, &end); + } + else + { + gtk_text_buffer_apply_tag (view->buffer->buffer, + view->buffer->margin_tag, + &start, &end); + } + } +} + +static void do_apply_tabs (gpointer callback_data, guint callback_action, GtkWidget *widget) @@ -1555,6 +1667,10 @@ static GtkItemFactoryEntry menu_items[] = { "/Attributes/Not editable", NULL, do_apply_editable, FALSE, NULL }, { "/Attributes/Invisible", NULL, do_apply_invisible, FALSE, NULL }, { "/Attributes/Visible", NULL, do_apply_invisible, TRUE, NULL }, + { "/Attributes/Rise", NULL, do_apply_rise, FALSE, NULL }, + { "/Attributes/Large", NULL, do_apply_large, FALSE, NULL }, + { "/Attributes/Indent", NULL, do_apply_indent, FALSE, NULL }, + { "/Attributes/Margins", NULL, do_apply_margin, FALSE, NULL }, { "/Attributes/Custom tabs", NULL, do_apply_tabs, FALSE, NULL }, { "/Attributes/Default tabs", NULL, do_apply_tabs, TRUE, NULL }, { "/Attributes/Color cycles", NULL, do_apply_colors, TRUE, NULL }, @@ -1746,7 +1862,7 @@ create_buffer (void) ++i; } -#if 0 +#if 1 buffer->invisible_tag = gtk_text_buffer_create_tag (buffer->buffer, NULL, "invisible", TRUE, NULL); #endif @@ -1759,6 +1875,18 @@ create_buffer (void) buffer->found_text_tag = gtk_text_buffer_create_tag (buffer->buffer, NULL, "foreground", "red", NULL); + buffer->rise_tag = gtk_text_buffer_create_tag (buffer->buffer, NULL, + "rise", 10 * PANGO_SCALE, NULL); + + buffer->large_tag = gtk_text_buffer_create_tag (buffer->buffer, NULL, + "scale", PANGO_SCALE_X_LARGE, NULL); + + buffer->indent_tag = gtk_text_buffer_create_tag (buffer->buffer, NULL, + "indent", 20, NULL); + + buffer->margin_tag = gtk_text_buffer_create_tag (buffer->buffer, NULL, + "left_margin", 20, "right_margin", 20, NULL); + tabs = pango_tab_array_new_with_positions (4, TRUE, PANGO_TAB_LEFT, 10, |