]> Pileus Git - ~andy/gtk/commitdiff
Convert GdkDevice to a GObject.
authorAlex Larsson <alexl@redhat.com>
Sat, 30 Jun 2001 04:30:32 +0000 (04:30 +0000)
committerAlexander Larsson <alexl@src.gnome.org>
Sat, 30 Jun 2001 04:30:32 +0000 (04:30 +0000)
2001-06-30  Alex Larsson  <alexl@redhat.com>

* gdk/linux-fb/gdkinput-none.c:
* gdk/linux-fb/gdkinput.c:
* gdk/linux-fb/gdkinputprivate.h:
Convert GdkDevice to a GObject.

* linux-fb/gdkprivate-fb.h:
* linux-fb/gdkvisual-fb.c:
Convert GdkVisual to a GObject.

12 files changed:
ChangeLog
ChangeLog.pre-2-0
ChangeLog.pre-2-10
ChangeLog.pre-2-2
ChangeLog.pre-2-4
ChangeLog.pre-2-6
ChangeLog.pre-2-8
gdk/linux-fb/gdkinput-none.c
gdk/linux-fb/gdkinput.c
gdk/linux-fb/gdkinputprivate.h
gdk/linux-fb/gdkprivate-fb.h
gdk/linux-fb/gdkvisual-fb.c

index 6a3e0e67782004a6ece8f2d61a9f8de5e9c6b07c..2eec9871e369645b088f5b3c1bdb36435b4fcc25 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2001-06-30  Alex Larsson  <alexl@redhat.com>
+
+       * gdk/linux-fb/gdkinput-none.c:
+       * gdk/linux-fb/gdkinput.c:
+       * gdk/linux-fb/gdkinputprivate.h:
+       Convert GdkDevice to a GObject.
+
+       * linux-fb/gdkprivate-fb.h:
+       * linux-fb/gdkvisual-fb.c:
+       Convert GdkVisual to a GObject.
+
 2001-06-29  Alex Larsson  <alexl@redhat.com>
 
        * gdk/gdkvisual.h:
index 6a3e0e67782004a6ece8f2d61a9f8de5e9c6b07c..2eec9871e369645b088f5b3c1bdb36435b4fcc25 100644 (file)
@@ -1,3 +1,14 @@
+2001-06-30  Alex Larsson  <alexl@redhat.com>
+
+       * gdk/linux-fb/gdkinput-none.c:
+       * gdk/linux-fb/gdkinput.c:
+       * gdk/linux-fb/gdkinputprivate.h:
+       Convert GdkDevice to a GObject.
+
+       * linux-fb/gdkprivate-fb.h:
+       * linux-fb/gdkvisual-fb.c:
+       Convert GdkVisual to a GObject.
+
 2001-06-29  Alex Larsson  <alexl@redhat.com>
 
        * gdk/gdkvisual.h:
index 6a3e0e67782004a6ece8f2d61a9f8de5e9c6b07c..2eec9871e369645b088f5b3c1bdb36435b4fcc25 100644 (file)
@@ -1,3 +1,14 @@
+2001-06-30  Alex Larsson  <alexl@redhat.com>
+
+       * gdk/linux-fb/gdkinput-none.c:
+       * gdk/linux-fb/gdkinput.c:
+       * gdk/linux-fb/gdkinputprivate.h:
+       Convert GdkDevice to a GObject.
+
+       * linux-fb/gdkprivate-fb.h:
+       * linux-fb/gdkvisual-fb.c:
+       Convert GdkVisual to a GObject.
+
 2001-06-29  Alex Larsson  <alexl@redhat.com>
 
        * gdk/gdkvisual.h:
index 6a3e0e67782004a6ece8f2d61a9f8de5e9c6b07c..2eec9871e369645b088f5b3c1bdb36435b4fcc25 100644 (file)
@@ -1,3 +1,14 @@
+2001-06-30  Alex Larsson  <alexl@redhat.com>
+
+       * gdk/linux-fb/gdkinput-none.c:
+       * gdk/linux-fb/gdkinput.c:
+       * gdk/linux-fb/gdkinputprivate.h:
+       Convert GdkDevice to a GObject.
+
+       * linux-fb/gdkprivate-fb.h:
+       * linux-fb/gdkvisual-fb.c:
+       Convert GdkVisual to a GObject.
+
 2001-06-29  Alex Larsson  <alexl@redhat.com>
 
        * gdk/gdkvisual.h:
index 6a3e0e67782004a6ece8f2d61a9f8de5e9c6b07c..2eec9871e369645b088f5b3c1bdb36435b4fcc25 100644 (file)
@@ -1,3 +1,14 @@
+2001-06-30  Alex Larsson  <alexl@redhat.com>
+
+       * gdk/linux-fb/gdkinput-none.c:
+       * gdk/linux-fb/gdkinput.c:
+       * gdk/linux-fb/gdkinputprivate.h:
+       Convert GdkDevice to a GObject.
+
+       * linux-fb/gdkprivate-fb.h:
+       * linux-fb/gdkvisual-fb.c:
+       Convert GdkVisual to a GObject.
+
 2001-06-29  Alex Larsson  <alexl@redhat.com>
 
        * gdk/gdkvisual.h:
index 6a3e0e67782004a6ece8f2d61a9f8de5e9c6b07c..2eec9871e369645b088f5b3c1bdb36435b4fcc25 100644 (file)
@@ -1,3 +1,14 @@
+2001-06-30  Alex Larsson  <alexl@redhat.com>
+
+       * gdk/linux-fb/gdkinput-none.c:
+       * gdk/linux-fb/gdkinput.c:
+       * gdk/linux-fb/gdkinputprivate.h:
+       Convert GdkDevice to a GObject.
+
+       * linux-fb/gdkprivate-fb.h:
+       * linux-fb/gdkvisual-fb.c:
+       Convert GdkVisual to a GObject.
+
 2001-06-29  Alex Larsson  <alexl@redhat.com>
 
        * gdk/gdkvisual.h:
index 6a3e0e67782004a6ece8f2d61a9f8de5e9c6b07c..2eec9871e369645b088f5b3c1bdb36435b4fcc25 100644 (file)
@@ -1,3 +1,14 @@
+2001-06-30  Alex Larsson  <alexl@redhat.com>
+
+       * gdk/linux-fb/gdkinput-none.c:
+       * gdk/linux-fb/gdkinput.c:
+       * gdk/linux-fb/gdkinputprivate.h:
+       Convert GdkDevice to a GObject.
+
+       * linux-fb/gdkprivate-fb.h:
+       * linux-fb/gdkvisual-fb.c:
+       Convert GdkVisual to a GObject.
+
 2001-06-29  Alex Larsson  <alexl@redhat.com>
 
        * gdk/gdkvisual.h:
index 4c0575bc4f51dd03f2ebbfb2c06fd131a065c31e..02ffc164b02168ac813d2fdf36cc916c379fca8c 100644 (file)
@@ -38,6 +38,7 @@ static void gdk_input_none_get_pointer (GdkWindow       *window,
 void
 gdk_input_init (void)
 {
+  _gdk_init_input_core ();
   gdk_input_vtable.set_mode           = NULL;
   gdk_input_vtable.set_axes           = NULL;
   gdk_input_vtable.set_key            = NULL;
index a3444c33b708bd6e883e1559b8c4654c6658afb9..c4308f6ba682a2f69b085ea79a8fbe59a390adfa 100644 (file)
@@ -37,19 +37,7 @@ static const GdkDeviceAxis gdk_input_core_axes[] = {
   { GDK_AXIS_Y, 0, 0 }
 };
 
-static GdkDevice gdk_input_core_info =
-{
-  "Core Pointer",
-  GDK_SOURCE_MOUSE,
-  GDK_MODE_SCREEN,
-  TRUE,
-  2,
-  (GdkDeviceAxis *)gdk_input_core_axes,
-  0,
-  NULL
-};
-
-GdkDevice *gdk_core_pointer = (GdkDevice *)&gdk_input_core_info;
+GdkDevice *gdk_core_pointer = NULL;
 
 /* Global variables  */
 
@@ -59,6 +47,61 @@ gint              gdk_input_ignore_core;
 GList            *gdk_input_windows;
 GList            *gdk_input_devices;
 
+void
+_gdk_init_input_core (void)
+{
+  gdk_core_pointer = g_object_new (GDK_TYPE_DEVICE, NULL);
+  
+  gdk_core_pointer->name = "Core Pointer";
+  gdk_core_pointer->source = GDK_SOURCE_MOUSE;
+  gdk_core_pointer->mode = GDK_MODE_SCREEN;
+  gdk_core_pointer->has_cursor = TRUE;
+  gdk_core_pointer->num_axes = 2;
+  gdk_core_pointer->axes = gdk_input_core_axes;
+  gdk_core_pointer->num_keys = 0;
+  gdk_core_pointer->keys = NULL;
+}
+
+static void
+gdk_device_finalize (GObject *object)
+{
+  g_error ("A GdkDevice object was finalized. This should not happen");
+}
+
+static void
+gdk_device_class_init (GObjectClass *class)
+{
+  class->finalize = gdk_device_finalize;
+}
+
+GType
+gdk_device_get_type (void)
+{
+  static GType object_type = 0;
+
+  if (!object_type)
+    {
+      static const GTypeInfo object_info =
+      {
+        sizeof (GdkDeviceClass),
+        (GBaseInitFunc) NULL,
+        (GBaseFinalizeFunc) NULL,
+        (GClassInitFunc) gdk_device_class_init,
+        NULL,           /* class_finalize */
+        NULL,           /* class_data */
+        sizeof (GdkDevicePrivate),
+        0,              /* n_preallocs */
+        (GInstanceInitFunc) NULL,
+      };
+      
+      object_type = g_type_register_static (G_TYPE_OBJECT,
+                                            "GdkDevice",
+                                            &object_info, 0);
+    }
+  
+  return object_type;
+}
+
 GList *
 gdk_devices_list (void)
 {
index 46ca8b33cd00a9ba98c1d325c4485e91dc21fea1..76004cd5cada078a246fe61a9ffc33144584836c 100644 (file)
@@ -98,6 +98,11 @@ struct _GdkDevicePrivate {
   GdkDevice  info;
 };
 
+struct _GdkDeviceClass
+{
+  GObjectClass parent_class;
+};
+
 struct _GdkInputWindow
 {
   /* gdk window */
@@ -141,6 +146,7 @@ gint               gdk_input_enable_window  (GdkWindow        *window,
                                             GdkDevicePrivate *gdkdev);
 gint               gdk_input_disable_window (GdkWindow        *window,
                                             GdkDevicePrivate *gdkdev);
+void              _gdk_init_input_core      (void);
 
 GdkDevicePrivate *gdk_input_find_device (guint32 id);
 GdkInputWindow *gdk_input_window_find (GdkWindow *window);
index c7b12f6116e20c16091512c5e1ed7a443ebd2251..5e8d32f40b6d88fb6cb528168bea4f0ccc41af2f 100644 (file)
@@ -155,9 +155,11 @@ struct _GdkFBDisplay
   int manager_blocked;
 };
 
-typedef struct {
-  GdkVisual base;
-} GdkVisualPrivateFB;
+struct _GdkVisualClass
+{
+  GObjectClass parent_class;
+};
+
 
 typedef struct {
   GHashTable *hash;
index d593d21f51ffb4a40d97ae13b91aa974c246e220..6a33541274ca439b69770951ab10e0c5ab42163e 100644 (file)
 
 static GdkVisual *system_visual = NULL;
 
+static void
+gdk_visual_finalize (GObject *object)
+{
+  g_error ("A GdkVisual object was finalized. This should not happen");
+}
+
+static void
+gdk_visual_class_init (GObjectClass *class)
+{
+  class->finalize = gdk_visual_finalize;
+}
+
+
+GType
+gdk_visual_get_type (void)
+{
+  static GType object_type = 0;
+
+  if (!object_type)
+    {
+      static const GTypeInfo object_info =
+      {
+        sizeof (GdkVisualClass),
+        (GBaseInitFunc) NULL,
+        (GBaseFinalizeFunc) NULL,
+        (GClassInitFunc) gdk_visual_class_init,
+        NULL,           /* class_finalize */
+        NULL,           /* class_data */
+        sizeof (GdkVisual),
+        0,              /* n_preallocs */
+        (GInstanceInitFunc) NULL,
+      };
+      
+      object_type = g_type_register_static (G_TYPE_OBJECT,
+                                            "GdkVisual",
+                                            &object_info, 0);
+    }
+  
+  return object_type;
+}
+
 void
 gdk_visual_init (void)
 {
-  system_visual = g_new0 (GdkVisual, 1);
+  system_visual = g_object_new (GDK_TYPE_VISUAL, NULL);
 
   system_visual->depth = system_visual->bits_per_rgb = gdk_display->modeinfo.bits_per_pixel;
   system_visual->byte_order = GDK_LSB_FIRST;
@@ -101,17 +142,6 @@ gdk_visual_init (void)
     }
 }
 
-GdkVisual*
-gdk_visual_ref (GdkVisual *visual)
-{
-  return visual;
-}
-
-void
-gdk_visual_unref (GdkVisual *visual)
-{
-}
-
 gint
 gdk_visual_get_best_depth (void)
 {