]> Pileus Git - ~andy/gtk/blobdiff - gdk/gdkinternals.h
Practically everything changed.
[~andy/gtk] / gdk / gdkinternals.h
index f97b97be043b401df5ca1579b6be083a0e5abdd4..ff8df66c4ae44d4c858ca2326cdbca6144922245 100644 (file)
@@ -1,4 +1,4 @@
-/* GDK - The GIMP Drawing Kit
+/* GDK - The GTK+ Drawing Kit
  * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
  *
  * This library is free software; you can redistribute it and/or
 
 /* Uninstalled header defining types and functions internal to GDK */
 
+#ifndef __GDK_INTERNALS_H__
+#define __GDK_INTERNALS_H__
+
+#include <gio/gio.h>
 #include <gdk/gdktypes.h>
 #include <gdk/gdkwindow.h>
 #include <gdk/gdkprivate.h>
+#ifdef USE_MEDIALIB
+#include <gdk/gdkmedialib.h>
+#endif
 
-#ifndef __GDK_INTERNALS_H__
-#define __GDK_INTERNALS_H__
+G_BEGIN_DECLS
 
 /**********************
  * General Facilities * 
@@ -160,6 +166,7 @@ struct _GdkEventPrivate
   GdkEvent   event;
   guint      flags;
   GdkScreen *screen;
+  gpointer   windowing_data;
 };
 
 extern GdkEventFunc   _gdk_event_func;    /* Callback for events */
@@ -177,11 +184,17 @@ GdkEvent* _gdk_event_unqueue (GdkDisplay *display);
 GList* _gdk_event_queue_find_first  (GdkDisplay *display);
 void   _gdk_event_queue_remove_link (GdkDisplay *display,
                                     GList      *node);
+GList*  _gdk_event_queue_prepend    (GdkDisplay *display,
+                                    GdkEvent   *event);
 GList*  _gdk_event_queue_append     (GdkDisplay *display,
                                     GdkEvent   *event);
 void _gdk_event_button_generate     (GdkDisplay *display,
                                     GdkEvent   *event);
 
+void _gdk_windowing_event_data_copy (const GdkEvent *src,
+                                     GdkEvent       *dst);
+void _gdk_windowing_event_data_free (GdkEvent       *event);
+
 void gdk_synthesize_window_state (GdkWindow     *window,
                                   GdkWindowState unset_flags,
                                   GdkWindowState set_flags);
@@ -217,21 +230,24 @@ cairo_surface_t *_gdk_drawable_ref_cairo_surface (GdkDrawable *drawable);
 GdkGC *_gdk_drawable_get_scratch_gc (GdkDrawable *drawable,
                                     gboolean     graphics_exposures);
 
-void _gdk_gc_update_context (GdkGC     *gc,
-                            cairo_t   *cr,
-                            GdkColor  *override_foreground,
-                            GdkBitmap *override_stipple,
-                            gboolean   gc_changed);
+void _gdk_gc_update_context (GdkGC          *gc,
+                            cairo_t        *cr,
+                            const GdkColor *override_foreground,
+                            GdkBitmap      *override_stipple,
+                            gboolean        gc_changed);
 
 /*************************************
  * Interfaces used by windowing code *
  *************************************/
 
-void       _gdk_window_destroy           (GdkWindow   *window,
-                                         gboolean     foreign_destroy);
-void       _gdk_window_clear_update_area (GdkWindow   *window);
+GdkWindow *_gdk_window_new               (GdkWindow     *window,
+                                          GdkWindowAttr *attributes,
+                                          gint           attributes_mask);
+void       _gdk_window_destroy           (GdkWindow     *window,
+                                         gboolean       foreign_destroy);
+void       _gdk_window_clear_update_area (GdkWindow     *window);
 
-void       _gdk_screen_close             (GdkScreen   *screen);
+void       _gdk_screen_close             (GdkScreen     *screen);
 
 const char *_gdk_get_sm_client_id (void);
 
@@ -270,16 +286,6 @@ gchar *_gdk_windowing_substitute_screen_number (const gchar *display_name,
 void     _gdk_windowing_window_get_offsets      (GdkWindow  *window,
                                                 gint       *x_offset,
                                                 gint       *y_offset);
-void     _gdk_windowing_window_clear_area       (GdkWindow  *window,
-                                                gint        x,
-                                                gint        y,
-                                                gint        width,
-                                                gint        height);
-void     _gdk_windowing_window_clear_area_e     (GdkWindow  *window,
-                                                gint        x,
-                                                gint        y,
-                                                gint        width,
-                                                gint        height);
 
 void       _gdk_windowing_get_pointer        (GdkDisplay       *display,
                                              GdkScreen       **screen,
@@ -299,6 +305,11 @@ GdkWindow* _gdk_windowing_window_at_pointer  (GdkDisplay       *display,
 gint _gdk_windowing_get_bits_for_depth (GdkDisplay *display,
                                        gint        depth);
 
+void       _gdk_window_reparent                   (GdkWindow     *window,
+                                                  GdkWindow     *new_parent,
+                                                  gint           x,
+                                                  gint           y);
+
 #define GDK_WINDOW_IS_MAPPED(window) ((((GdkWindowObject*)window)->state & GDK_WINDOW_STATE_WITHDRAWN) == 0)
 
 /* Called before processing updates for a window. This gives the windowing
@@ -307,8 +318,8 @@ gint _gdk_windowing_get_bits_for_depth (GdkDisplay *display,
  * the region; if the result is TRUE, then the windowing layer is responsible
  * for destroying the region later.
  */
-gboolean _gdk_windowing_window_queue_antiexpose (GdkWindow  *window,
-                                                GdkRegion  *area);
+gboolean _gdk_windowing_window_queue_antiexpose (GdkWindow *window,
+                                                GdkRegion *area);
 
 /* Called to do the windowing system specific part of gdk_window_destroy(),
  *
@@ -352,16 +363,16 @@ struct _GdkPaintableIface
 {
   GTypeInterface g_iface;
   
-  void (* begin_paint_region) (GdkPaintable *paintable,
-                              GdkRegion    *region);
-  void (* end_paint)          (GdkPaintable *paintable);
-
-  void (* invalidate_maybe_recurse) (GdkPaintable *paintable,
-                                    GdkRegion    *region,
-                                    gboolean    (*child_func) (GdkWindow *, gpointer),
-                                    gpointer      user_data);
-  void (* process_updates)          (GdkPaintable *paintable,
-                                    gboolean      update_children);
+  void (* begin_paint_region)       (GdkPaintable    *paintable,
+                                     const GdkRegion *region);
+  void (* end_paint)                (GdkPaintable    *paintable);
+
+  void (* invalidate_maybe_recurse) (GdkPaintable    *paintable,
+                                    const GdkRegion *region,
+                                    gboolean       (*child_func) (GdkWindow *, gpointer),
+                                    gpointer         user_data);
+  void (* process_updates)          (GdkPaintable    *paintable,
+                                    gboolean         update_children);
 };
 
 GType _gdk_paintable_get_type (void) G_GNUC_CONST;
@@ -385,8 +396,8 @@ GType _gdk_pixmap_impl_get_type (void) G_GNUC_CONST;
  * When this function is called, _gdk_gc_get_clip_region
  * will already return the new region.
  **/
-void _gdk_windowing_gc_set_clip_region (GdkGC     *gc,
-                                       GdkRegion *region);
+void _gdk_windowing_gc_set_clip_region (GdkGC           *gc,
+                                       const GdkRegion *region);
 
 /**
  * _gdk_windowing_gc_copy:
@@ -407,6 +418,23 @@ void _gdk_windowing_gc_get_foreground (GdkGC    *gc,
 void _gdk_windowing_gc_get_background (GdkGC    *gc,
                                       GdkColor *color);
 
+struct GdkAppLaunchContextPrivate
+{
+  GdkDisplay *display;
+  GdkScreen *screen;
+  gint workspace;
+  guint32 timestamp;
+  GIcon *icon;
+  char *icon_name;
+};
+
+char *_gdk_windowing_get_startup_notify_id (GAppLaunchContext *context,
+                                           GAppInfo          *info, 
+                                           GList             *files);
+void  _gdk_windowing_launch_failed         (GAppLaunchContext *context, 
+                                           const char        *startup_notify_id);
+
+
 /************************************
  * Initialization and exit routines *
  ************************************/