summaryrefslogtreecommitdiffstats
path: root/xparts/mozilla/kmozilla_ext.c
diff options
context:
space:
mode:
Diffstat (limited to 'xparts/mozilla/kmozilla_ext.c')
-rw-r--r--xparts/mozilla/kmozilla_ext.c125
1 files changed, 125 insertions, 0 deletions
diff --git a/xparts/mozilla/kmozilla_ext.c b/xparts/mozilla/kmozilla_ext.c
new file mode 100644
index 00000000..15195136
--- /dev/null
+++ b/xparts/mozilla/kmozilla_ext.c
@@ -0,0 +1,125 @@
+#include "kmozilla_ext.h"
+
+#include <gdk/gdkx.h>
+
+#include <dcopc/util.h>
+#include <dcopc/marshal.h>
+#include <dcopc/dcopc.h>
+
+#include <string.h>
+#include <stdio.h>
+#include <assert.h>
+#include <stdlib.h>
+
+typedef struct _GtkKmozillaExtensionPrivate GtkKmozillaExtensionPrivate;
+
+struct _GtkKmozillaExtensionPrivate {
+ GtkKmozilla *moz;
+};
+
+#define P ((GtkKmozillaExtensionPrivate *)(ext->data))
+#define CLASS(obj) GTK_KMOZILLAEXTENSION_CLASS(GTK_OBJECT(obj)->klass)
+
+
+/* class and instance initialization */
+
+static void
+gtk_kmozilla_extension_class_init(GtkKmozillaExtensionClass *klass);
+
+static void
+gtk_kmozilla_extension_init(GtkKmozillaExtension *part);
+
+static void
+gtk_kmozilla_extension_destroy( GtkObject *obj );
+
+/* virtual functions */
+static const char * save_state( GtkXBrowserExtension *ext );
+static void restore_state ( GtkXBrowserExtension *ext, const char *state, unsigned int size );
+
+static GtkXBrowserExtensionClass *parent_class = 0;
+
+/* --------------------------- implementations --------------------------------------- */
+
+/* type information */
+GtkType
+gtk_kmozilla_extension_get_type(void)
+{
+ static GtkType part_type = 0;
+ if (!part_type)
+ {
+ static const GtkTypeInfo part_info =
+ {
+ "GtkKmozillaExtension",
+ sizeof(GtkKmozillaExtension),
+ sizeof(GtkKmozillaExtensionClass),
+ (GtkClassInitFunc)gtk_kmozilla_extension_class_init,
+ (GtkObjectInitFunc)gtk_kmozilla_extension_init,
+ 0,
+ 0,
+ 0
+ };
+ part_type = gtk_type_unique(GTK_TYPE_XBROWSEREXTENSION, &part_info);
+ }
+ return part_type;
+}
+
+/* class and instance initialization */
+static void
+gtk_kmozilla_extension_class_init(GtkKmozillaExtensionClass *klass)
+{
+ GtkObjectClass *object_class = (GtkObjectClass *)klass;
+ DcopObjectClass *dcop_class = DCOP_OBJECT_CLASS(klass);
+ GtkXBrowserExtensionClass *be_class = GTK_XBROWSEREXTENSION_CLASS(klass);
+
+ parent_class = (GtkXBrowserExtensionClass *)gtk_type_class(gtk_xbrowserextension_get_type());
+
+ object_class->destroy = gtk_kmozilla_extension_destroy;
+
+ be_class->save_state = save_state;
+ be_class->restore_state = restore_state;
+
+ g_message( "gtk_kmozillaextension_class_init\n" );
+}
+
+static void
+gtk_kmozilla_extension_init(GtkKmozillaExtension *part)
+{
+ GtkKmozillaExtensionPrivate *d;
+ d = g_new( GtkKmozillaExtensionPrivate, 1 );
+ part->data = d;
+
+ dcop_object_set_id( DCOP_OBJECT(part), "KmozillaExtensionClient" );
+
+ g_message( "gtk_kmozillaextension_init\n" );
+}
+
+GtkKmozillaExtension *gtk_kmozilla_extension_new (void)
+{
+ return (GtkKmozillaExtension *) gtk_type_new(gtk_kmozilla_extension_get_type());
+}
+
+
+void gtk_kmozilla_extension_destroy( GtkObject *obj )
+{
+ GtkKmozillaExtension *part = GTK_KMOZILLA_EXTENSION(obj);
+ GtkKmozillaExtensionPrivate *d = (GtkKmozillaExtensionPrivate *) part->data;
+ g_free( d );
+
+ GTK_OBJECT_CLASS(parent_class)->destroy(obj);
+}
+
+void kmozilla_extension_set_mozilla( GtkKmozillaExtension *ext, GtkKmozilla *moz )
+{
+ P->moz = moz;
+}
+
+static const char * save_state( GtkXBrowserExtension *ext )
+{
+ g_warning("Extension::save_state!");
+ return 0;
+}
+
+static void restore_state ( GtkXBrowserExtension *ext, const char *state, unsigned int size )
+{
+ g_warning("Extension::restore_state!");
+}