/*---+----1----+----2----+----3----+----4----+----5----+----6----+----7---*/ /* EtcTerminal */ /*------------------------------------------------------------------------*/ #define __etcterminal_c__ #include "etcterminal.h" static GtkScrolledWindowClass *parent_class = NULL; static void etc_terminal_class_init(EtcTerminalClass *class) { parent_class = gtk_type_class (GTK_TYPE_SCROLLED_WINDOW); } static void etc_terminal_init(EtcTerminal *term) { term->textview = gtk_text_view_new(); gtk_widget_show(term->textview); gtk_container_add(GTK_CONTAINER(term),term->textview); } /*---+----1----+----2----+----3----+----4----+----5----+----6----+----7---*/ /* Public stuff */ /*------------------------------------------------------------------------*/ GType etc_terminal_get_type() { static GType etc_terminal_type = 0; if (!etc_terminal_type) { static const GTypeInfo etc_terminal_info = { sizeof(EtcTerminalClass), NULL, /* base init */ NULL, /* base finalize */ (GClassInitFunc)etc_terminal_class_init, NULL, /* class finalize */ NULL, /* class data */ sizeof(EtcTerminal), 0, /* n_preallocs */ (GInstanceInitFunc)etc_terminal_init, }; etc_terminal_type = g_type_register_static(GTK_TYPE_SCROLLED_WINDOW,"EtcTerminal",&etc_terminal_info,0); } return etc_terminal_type; } GtkWidget * etc_terminal_new() { GtkWidget *result = gtk_widget_new(ETC_TERMINAL_TYPE,"hadjustment", NULL,"vadjustment", NULL,NULL); /* Errors go away if I include the following line below instead of in * the instance_init function, but it seems wrong to me. */ // gtk_container_add(GTK_CONTAINER(result),ETC_TERMINAL(result)->textview); return result; }