[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
Changing the font of a GtkTextTag
- From: Alban Deniz <adeniz baker-research com>
- To: gtk-app-devel-list gnome org
- Subject: Changing the font of a GtkTextTag
- Date: Sat, 19 Apr 2003 15:18:45 -0400
Hello,
I am having trouble changing the font of a GtkTextTag. I am using
g_object_set((gpointer) tag, "font", "sans 14", NULL);
to change the font to "sans 14". This works once. The second time I call
g_object_set, the program crashes with the message
(testc:1003): Gtk-CRITICAL **: file gtktextbtree.c: line 3418
(_gtk_text_line_get_data): assertion `line != NULL' failed
I have attached a test program that exhibits this behavior. Please let me know
if this is the correct way to change the font. I built the program with
gcc $(pkg-config --cflags --libs libgnomeui-2.0) test.c -o testc
Thanks,
Alban
#include <stdio.h>
#include <gtk/gtk.h>
gboolean delete_cb(GtkWidget *, GdkEvent *, gpointer);
int
main(int argc, char* argv[])
{
GtkWidget *top;
GtkWidget *view;
GtkTextTagTable *tagTable;
GtkTextBuffer *buffer;
GtkTextTag *tag;
GtkTextIter start, end;
/***********************************************************************/
gtk_init(&argc, &argv);
top = gtk_window_new(GTK_WINDOW_TOPLEVEL);
tagTable = gtk_text_tag_table_new();
buffer = gtk_text_buffer_new(tagTable);
view = gtk_text_view_new_with_buffer(buffer);
gtk_container_add(GTK_CONTAINER(top), view);
gtk_widget_show_all(top);
tag = gtk_text_tag_new(NULL);
gtk_text_tag_table_add(tagTable, tag);
g_object_set((gpointer) tag, "font", "sans 14", NULL);
gtk_text_buffer_set_text(buffer,
"1234567890\nabcdefghij\nklmnopqust\nuvwxyz",
-1);
gtk_text_buffer_get_bounds(buffer, &start, &end);
gtk_text_buffer_apply_tag(buffer, tag, &start, &end);
fprintf(stderr, "Calling g_object_set...");
g_object_set((gpointer) tag, "font", "sans 14", NULL);
fprintf(stderr, "done\n");
gtk_main();
return 0;
}
/** Delete signal.
*/
gboolean
delete_cb(GtkWidget* widget, GdkEvent *event, gpointer data)
{
gtk_main_quit();
return(FALSE);
}
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]