diff options
author | Havoc Pennington <hp@pobox.com> | 2000-11-09 04:51:53 +0000 |
---|---|---|
committer | Havoc Pennington <hp@src.gnome.org> | 2000-11-09 04:51:53 +0000 |
commit | 167e741e93acf018566531d01c2c85a309741116 (patch) | |
tree | 3818913a3c011f1348af512daa402b573716688c | |
parent | bbabca88a35b7f38b15835eaf182204c870500a5 (diff) | |
download | gdk-pixbuf-167e741e93acf018566531d01c2c85a309741116.tar.gz |
Add visible and visible_set args, don't know where these had gone, I
2000-11-08 Havoc Pennington <hp@pobox.com>
* gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
visible_set args, don't know where these had gone, I thought they
used to be there
* gtk/testtext.c: Add a menu item to apply invisibility tag;
now we can test the feature and see that it's totally broken.
-rw-r--r-- | ChangeLog | 11 | ||||
-rw-r--r-- | ChangeLog.pre-2-0 | 11 | ||||
-rw-r--r-- | ChangeLog.pre-2-10 | 11 | ||||
-rw-r--r-- | ChangeLog.pre-2-2 | 11 | ||||
-rw-r--r-- | ChangeLog.pre-2-4 | 11 | ||||
-rw-r--r-- | ChangeLog.pre-2-6 | 11 | ||||
-rw-r--r-- | ChangeLog.pre-2-8 | 11 | ||||
-rw-r--r-- | gtk/gtktexttag.c | 23 | ||||
-rw-r--r-- | gtk/testtext.c | 34 | ||||
-rw-r--r-- | tests/testtext.c | 34 |
10 files changed, 158 insertions, 10 deletions
@@ -1,12 +1,21 @@ 2000-11-08 Havoc Pennington <hp@pobox.com> + * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and + visible_set args, don't know where these had gone, I thought they + used to be there + + * gtk/testtext.c: Add a menu item to apply invisibility tag; + now we can test the feature and see that it's totally broken. + +2000-11-08 Havoc Pennington <hp@pobox.com> + Make DND copy pixbufs and tags when source and target share a tag table. * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the in-process GTK_TEXT_BUFFER_CONTENTS target (gtk_text_view_drag_data_received): Paste from - GTK_TEXT_BUFFER_CONTENTS if we receive it. + GTK_TEXT_BUFFER_CONTENTS if we receive it. 2000-11-08 Alexander Larsson <alexl@redhat.com> diff --git a/ChangeLog.pre-2-0 b/ChangeLog.pre-2-0 index c099cb80a..842f540d9 100644 --- a/ChangeLog.pre-2-0 +++ b/ChangeLog.pre-2-0 @@ -1,12 +1,21 @@ 2000-11-08 Havoc Pennington <hp@pobox.com> + * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and + visible_set args, don't know where these had gone, I thought they + used to be there + + * gtk/testtext.c: Add a menu item to apply invisibility tag; + now we can test the feature and see that it's totally broken. + +2000-11-08 Havoc Pennington <hp@pobox.com> + Make DND copy pixbufs and tags when source and target share a tag table. * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the in-process GTK_TEXT_BUFFER_CONTENTS target (gtk_text_view_drag_data_received): Paste from - GTK_TEXT_BUFFER_CONTENTS if we receive it. + GTK_TEXT_BUFFER_CONTENTS if we receive it. 2000-11-08 Alexander Larsson <alexl@redhat.com> diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index c099cb80a..842f540d9 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,12 +1,21 @@ 2000-11-08 Havoc Pennington <hp@pobox.com> + * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and + visible_set args, don't know where these had gone, I thought they + used to be there + + * gtk/testtext.c: Add a menu item to apply invisibility tag; + now we can test the feature and see that it's totally broken. + +2000-11-08 Havoc Pennington <hp@pobox.com> + Make DND copy pixbufs and tags when source and target share a tag table. * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the in-process GTK_TEXT_BUFFER_CONTENTS target (gtk_text_view_drag_data_received): Paste from - GTK_TEXT_BUFFER_CONTENTS if we receive it. + GTK_TEXT_BUFFER_CONTENTS if we receive it. 2000-11-08 Alexander Larsson <alexl@redhat.com> diff --git a/ChangeLog.pre-2-2 b/ChangeLog.pre-2-2 index c099cb80a..842f540d9 100644 --- a/ChangeLog.pre-2-2 +++ b/ChangeLog.pre-2-2 @@ -1,12 +1,21 @@ 2000-11-08 Havoc Pennington <hp@pobox.com> + * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and + visible_set args, don't know where these had gone, I thought they + used to be there + + * gtk/testtext.c: Add a menu item to apply invisibility tag; + now we can test the feature and see that it's totally broken. + +2000-11-08 Havoc Pennington <hp@pobox.com> + Make DND copy pixbufs and tags when source and target share a tag table. * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the in-process GTK_TEXT_BUFFER_CONTENTS target (gtk_text_view_drag_data_received): Paste from - GTK_TEXT_BUFFER_CONTENTS if we receive it. + GTK_TEXT_BUFFER_CONTENTS if we receive it. 2000-11-08 Alexander Larsson <alexl@redhat.com> diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index c099cb80a..842f540d9 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,12 +1,21 @@ 2000-11-08 Havoc Pennington <hp@pobox.com> + * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and + visible_set args, don't know where these had gone, I thought they + used to be there + + * gtk/testtext.c: Add a menu item to apply invisibility tag; + now we can test the feature and see that it's totally broken. + +2000-11-08 Havoc Pennington <hp@pobox.com> + Make DND copy pixbufs and tags when source and target share a tag table. * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the in-process GTK_TEXT_BUFFER_CONTENTS target (gtk_text_view_drag_data_received): Paste from - GTK_TEXT_BUFFER_CONTENTS if we receive it. + GTK_TEXT_BUFFER_CONTENTS if we receive it. 2000-11-08 Alexander Larsson <alexl@redhat.com> diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index c099cb80a..842f540d9 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,12 +1,21 @@ 2000-11-08 Havoc Pennington <hp@pobox.com> + * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and + visible_set args, don't know where these had gone, I thought they + used to be there + + * gtk/testtext.c: Add a menu item to apply invisibility tag; + now we can test the feature and see that it's totally broken. + +2000-11-08 Havoc Pennington <hp@pobox.com> + Make DND copy pixbufs and tags when source and target share a tag table. * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the in-process GTK_TEXT_BUFFER_CONTENTS target (gtk_text_view_drag_data_received): Paste from - GTK_TEXT_BUFFER_CONTENTS if we receive it. + GTK_TEXT_BUFFER_CONTENTS if we receive it. 2000-11-08 Alexander Larsson <alexl@redhat.com> diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index c099cb80a..842f540d9 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,12 +1,21 @@ 2000-11-08 Havoc Pennington <hp@pobox.com> + * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and + visible_set args, don't know where these had gone, I thought they + used to be there + + * gtk/testtext.c: Add a menu item to apply invisibility tag; + now we can test the feature and see that it's totally broken. + +2000-11-08 Havoc Pennington <hp@pobox.com> + Make DND copy pixbufs and tags when source and target share a tag table. * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the in-process GTK_TEXT_BUFFER_CONTENTS target (gtk_text_view_drag_data_received): Paste from - GTK_TEXT_BUFFER_CONTENTS if we receive it. + GTK_TEXT_BUFFER_CONTENTS if we receive it. 2000-11-08 Alexander Larsson <alexl@redhat.com> diff --git a/gtk/gtktexttag.c b/gtk/gtktexttag.c index 03d8aa9ea..af9a30087 100644 --- a/gtk/gtktexttag.c +++ b/gtk/gtktexttag.c @@ -92,7 +92,8 @@ enum { ARG_BG_FULL_HEIGHT, ARG_LANGUAGE, ARG_TABS, - + ARG_INVISIBLE, + /* Whether-a-style-arg-is-set args */ ARG_BACKGROUND_SET, ARG_FOREGROUND_SET, @@ -116,6 +117,7 @@ enum { ARG_BG_FULL_HEIGHT_SET, ARG_LANGUAGE_SET, ARG_TABS_SET, + ARG_INVISIBLE_SET, LAST_ARG }; @@ -223,7 +225,9 @@ gtk_text_tag_class_init (GtkTextTagClass *klass) GTK_ARG_READWRITE, ARG_WRAP_MODE); gtk_object_add_arg_type ("GtkTextTag::tabs", GTK_TYPE_POINTER, GTK_ARG_READWRITE, ARG_TABS); - + gtk_object_add_arg_type ("GtkTextTag::invisible", GTK_TYPE_BOOL, + GTK_ARG_READWRITE, ARG_INVISIBLE); + /* Style args are set or not */ gtk_object_add_arg_type ("GtkTextTag::background_set", GTK_TYPE_BOOL, GTK_ARG_READWRITE, ARG_BACKGROUND_SET); @@ -269,7 +273,9 @@ gtk_text_tag_class_init (GtkTextTagClass *klass) GTK_ARG_READWRITE, ARG_WRAP_MODE_SET); gtk_object_add_arg_type ("GtkTextTag::tabs_set", GTK_TYPE_BOOL, GTK_ARG_READWRITE, ARG_TABS_SET); - + gtk_object_add_arg_type ("GtkTextTag::invisible_set", GTK_TYPE_BOOL, + GTK_ARG_READWRITE, ARG_INVISIBLE_SET); + signals[EVENT] = gtk_signal_new ("event", @@ -610,6 +616,12 @@ gtk_text_tag_set_arg (GtkObject *object, GtkArg *arg, guint arg_id) size_changed = TRUE; break; + case ARG_INVISIBLE: + text_tag->invisible_set = TRUE; + text_tag->values->invisible = GTK_VALUE_BOOL (*arg); + size_changed = TRUE; + break; + /* Whether the value should be used... */ case ARG_BACKGROUND_SET: @@ -706,6 +718,11 @@ gtk_text_tag_set_arg (GtkObject *object, GtkArg *arg, guint arg_id) size_changed = TRUE; break; + case ARG_INVISIBLE_SET: + text_tag->invisible_set = GTK_VALUE_BOOL (*arg); + size_changed = TRUE; + break; + default: g_assert_not_reached (); break; diff --git a/gtk/testtext.c b/gtk/testtext.c index 12cfcd089..5424dc0f7 100644 --- a/gtk/testtext.c +++ b/gtk/testtext.c @@ -20,6 +20,7 @@ struct _Buffer GtkTextBuffer *buffer; char *filename; gint untitled_serial; + GtkTextTag *invisible_tag; GtkTextTag *not_editable_tag; GtkTextTag *found_text_tag; GtkTextTag *custom_tabs_tag; @@ -905,6 +906,32 @@ do_apply_editable (gpointer callback_data, } } +static void +do_apply_invisible (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->invisible_tag, + &start, &end); + } + else + { + gtk_text_buffer_apply_tag (view->buffer->buffer, + view->buffer->invisible_tag, + &start, &end); + } + } +} static void do_apply_tabs (gpointer callback_data, @@ -1087,6 +1114,8 @@ static GtkItemFactoryEntry menu_items[] = { "/_Attributes", NULL, 0, 0, "<Branch>" }, { "/Attributes/Editable", NULL, do_apply_editable, TRUE, NULL }, { "/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/Custom tabs", NULL, do_apply_tabs, FALSE, NULL }, { "/Attributes/Default tabs", NULL, do_apply_tabs, TRUE, NULL }, { "/_Test", NULL, 0, 0, "<Branch>" }, @@ -1254,6 +1283,11 @@ create_buffer (void) buffer->filename = NULL; buffer->untitled_serial = -1; + buffer->invisible_tag = gtk_text_buffer_create_tag (buffer->buffer, NULL); + gtk_object_set (GTK_OBJECT (buffer->invisible_tag), + "invisible", TRUE, + NULL); + buffer->not_editable_tag = gtk_text_buffer_create_tag (buffer->buffer, NULL); gtk_object_set (GTK_OBJECT (buffer->not_editable_tag), "editable", FALSE, diff --git a/tests/testtext.c b/tests/testtext.c index 12cfcd089..5424dc0f7 100644 --- a/tests/testtext.c +++ b/tests/testtext.c @@ -20,6 +20,7 @@ struct _Buffer GtkTextBuffer *buffer; char *filename; gint untitled_serial; + GtkTextTag *invisible_tag; GtkTextTag *not_editable_tag; GtkTextTag *found_text_tag; GtkTextTag *custom_tabs_tag; @@ -905,6 +906,32 @@ do_apply_editable (gpointer callback_data, } } +static void +do_apply_invisible (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->invisible_tag, + &start, &end); + } + else + { + gtk_text_buffer_apply_tag (view->buffer->buffer, + view->buffer->invisible_tag, + &start, &end); + } + } +} static void do_apply_tabs (gpointer callback_data, @@ -1087,6 +1114,8 @@ static GtkItemFactoryEntry menu_items[] = { "/_Attributes", NULL, 0, 0, "<Branch>" }, { "/Attributes/Editable", NULL, do_apply_editable, TRUE, NULL }, { "/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/Custom tabs", NULL, do_apply_tabs, FALSE, NULL }, { "/Attributes/Default tabs", NULL, do_apply_tabs, TRUE, NULL }, { "/_Test", NULL, 0, 0, "<Branch>" }, @@ -1254,6 +1283,11 @@ create_buffer (void) buffer->filename = NULL; buffer->untitled_serial = -1; + buffer->invisible_tag = gtk_text_buffer_create_tag (buffer->buffer, NULL); + gtk_object_set (GTK_OBJECT (buffer->invisible_tag), + "invisible", TRUE, + NULL); + buffer->not_editable_tag = gtk_text_buffer_create_tag (buffer->buffer, NULL); gtk_object_set (GTK_OBJECT (buffer->not_editable_tag), "editable", FALSE, |