summaryrefslogtreecommitdiff
path: root/tests/testtext.c
diff options
context:
space:
mode:
authorYevgen Muntyan <muntyan@tamu.edu>2007-06-06 19:43:31 +0000
committerYevgen Muntyan <muntyan@src.gnome.org>2007-06-06 19:43:31 +0000
commit2cbaeadf43ec960d42d35479bc0bdcb14b4741d0 (patch)
treebaf0bc50a9c124ed1b1e158116a08a010efbef32 /tests/testtext.c
parentec32b2aaa3ea1c7162209e56bae950ff16def577 (diff)
downloadgtk+-2cbaeadf43ec960d42d35479bc0bdcb14b4741d0.tar.gz
new method, gtk_widget_modify_cursor() (#89314).
2007-06-06 Yevgen Muntyan <muntyan@tamu.edu> * gtk/gtkwidget.c: * gtk/gtkwidget.h: new method, gtk_widget_modify_cursor() (#89314). * gtkrc.c: * gtkrc.h: new functions _gtk_rc_style_set_rc_property() and _gtk_rc_style_unset_rc_property(). * gtk/gtk.symbols: added gtk_widget_modify_cursor. * tests/testtext.c (do_cursor_visible_changed): * tests/testgtk.c (create_styles): test it. svn path=/trunk/; revision=18066
Diffstat (limited to 'tests/testtext.c')
-rw-r--r--tests/testtext.c33
1 files changed, 30 insertions, 3 deletions
diff --git a/tests/testtext.c b/tests/testtext.c
index b1f6f532a0..af826b6ccc 100644
--- a/tests/testtext.c
+++ b/tests/testtext.c
@@ -984,13 +984,39 @@ do_editable_changed (gpointer callback_data,
}
static void
+change_cursor_color (GtkWidget *widget,
+ gboolean set)
+{
+ if (set)
+ {
+ GdkColor red = {0, 65535, 0, 0};
+ gtk_widget_modify_cursor (widget, &red, &red);
+ }
+ else
+ gtk_widget_modify_cursor (widget, NULL, NULL);
+}
+
+static void
do_cursor_visible_changed (gpointer callback_data,
guint callback_action,
GtkWidget *widget)
{
View *view = view_from_widget (widget);
- gtk_text_view_set_cursor_visible (GTK_TEXT_VIEW (view->text_view), callback_action);
+ switch (callback_action)
+ {
+ case 0:
+ gtk_text_view_set_cursor_visible (GTK_TEXT_VIEW (view->text_view), FALSE);
+ break;
+ case 1:
+ gtk_text_view_set_cursor_visible (GTK_TEXT_VIEW (view->text_view), TRUE);
+ change_cursor_color (view->text_view, FALSE);
+ break;
+ case 2:
+ gtk_text_view_set_cursor_visible (GTK_TEXT_VIEW (view->text_view), TRUE);
+ change_cursor_color (view->text_view, TRUE);
+ break;
+ }
}
static void
@@ -1946,8 +1972,9 @@ static GtkItemFactoryEntry menu_items[] =
{ "/Settings/Not editable", NULL, do_editable_changed, FALSE, "/Settings/Editable" },
{ "/Settings/sep1", NULL, NULL, 0, "<Separator>" },
- { "/Settings/Cursor visible", NULL, do_cursor_visible_changed, TRUE, "<RadioItem>" },
- { "/Settings/Cursor not visible", NULL, do_cursor_visible_changed, FALSE, "/Settings/Cursor visible" },
+ { "/Settings/Cursor normal", NULL, do_cursor_visible_changed, 1, "<RadioItem>" },
+ { "/Settings/Cursor not visible", NULL, do_cursor_visible_changed, 0, "/Settings/Cursor normal" },
+ { "/Settings/Cursor colored", NULL, do_cursor_visible_changed, 2, "/Settings/Cursor normal" },
{ "/Settings/sep1", NULL, NULL, 0, "<Separator>" },
{ "/Settings/Left-to-Right", NULL, do_direction_changed, GTK_TEXT_DIR_LTR, "<RadioItem>" },