#include #include "gtk-xmhtml-parser.h" enum { TEST, LAST_SIGNAL }; static gint xmhtml_parser_signals [LAST_SIGNAL] = { 0 }; static void Destroy (TWidget w); static void gtk_xmhtml_parser_class_init (GtkXmHTMLParserClass *class) { GtkObjectClass *object_class; object_class = (GtkObjectClass*) class; object_class->destroy = (void (*)(GtkObject *)) Destroy; xmhtml_parser_signals [TEST] = gtk_signal_new ("testsignal", GTK_RUN_FIRST, object_class->type, GTK_SIGNAL_OFFSET (GtkXmHTMLParserClass, testsignal), gtk_signal_default_marshaller, GTK_TYPE_NONE, 0); gtk_object_class_add_signals (object_class, xmhtml_parser_signals, LAST_SIGNAL); } static void gtk_xmhtml_parser_init (GtkXmHTMLParser *parser) { ATTR(alias_table) = (XmHTMLAliasTable)NULL; ATTR(nalias) = 0; ATTR(source) = (String)NULL; ATTR(source_len) = 0; /* list of objects is always initialized to contain a head text element */ ATTR(objects) = (XmHTMLObject*)NULL; ATTR(head) = newElement(parser, HT_ZTEXT, NULL, NULL, FALSE, FALSE); ATTR(current) = ATTR(head); ATTR(nelements) = 0; ATTR(ntext) = 1; ATTR(loop_count) = 0; ATTR(index) = 0; ATTR(inserted) = 0; ATTR(line_len) = 0; ATTR(cnt) = 0; ATTR(num_lines) = 0; ATTR(err_count) = 0; /* parser state stack is always initialized to HT_DOCTYPE */ ATTR(base.id) = HT_DOCTYPE; ATTR(base.next) = (stateStack*)NULL; ATTR(stack) = &(parser->parser.base); ATTR(depth) = 0; /* automatic is True when XmNparserCallback is installed */ ATTR(automatic) = (parser->parser.parser_callback ? TRUE:FALSE); ATTR(unbalanced) = FALSE; ATTR(html32) = TRUE; ATTR(have_body) = FALSE; ATTR(reset) = TRUE; ATTR(active) = FALSE; ATTR(terminated) = FALSE; ATTR(mime_type) = g_strdup ("text/html"); ATTR(progressive) = FALSE; } guint gtk_xmthml_parser_get_type () { static guint data_type = 0; if (!data_type){ GtkTypeInfo data_info = { "GtkXmHTMLParser", sizeof (GtkXmHTMLParser), sizeof (GtkXmHTMLParserClass), (GtkClassInitFunc) gtk_xmhtml_parser_class_init, (GtkObjectInitFunc) gtk_xmhtml_parser_init, (GtkArgSetFunc) NULL, (GtkArgGetFunc) NULL, }; data_type = gtk_type_unique (gtk_object_get_type (), &data_info); } return data_type; } GtkObject* gtk_xmhtml_parser_new () { GtkXmHTMLParser *parser; parser = gtk_type_new (gtk_xmhtml_parser_get_type ()); return GTK_OBJECT (parser); }