Sat, 6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com> * gdk/nanox/*: nano-X port work in progress. * gdk/simple.c: simple test for Gdk. * README.nanox: notes about the port: read this first! * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile with nano-X.
		
			
				
	
	
		
			601 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			601 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
 | 
						|
#include "gdk.h"
 | 
						|
#include "config.h"
 | 
						|
 | 
						|
#include "gdkwindow.h"
 | 
						|
#include "gdkprivate-nanox.h"
 | 
						|
#include "gdkprivate.h"
 | 
						|
 | 
						|
static void create_toplevel (GR_WINDOW_ID parent, GR_WINDOW_ID win, int x, int y, int width, int height);
 | 
						|
static int  manage_event (GR_EVENT *event);
 | 
						|
static void set_title (GR_WINDOW_ID win, char* title);
 | 
						|
 | 
						|
typedef struct {
 | 
						|
		char * name;
 | 
						|
		void (*create_toplevel) (GR_WINDOW_ID parent, GR_WINDOW_ID win, int x, int y, int width, int height);
 | 
						|
		int  (*manage_event) (GR_EVENT *event);
 | 
						|
		void (*set_title) (GR_WINDOW_ID win, char* title);
 | 
						|
} GdkWindowManager;
 | 
						|
 | 
						|
typedef struct {
 | 
						|
		GR_WINDOW_ID pwin;
 | 
						|
		GR_WINDOW_ID win;
 | 
						|
		char *title;
 | 
						|
		GdkWMFunction functions;
 | 
						|
		GdkWMDecoration decors;
 | 
						|
} WMInfo;
 | 
						|
 | 
						|
static GdkWindowManager test_wm = {
 | 
						|
		"test",
 | 
						|
		create_toplevel,
 | 
						|
		manage_event,
 | 
						|
		set_title
 | 
						|
};
 | 
						|
 | 
						|
static GdkWindowManager *default_wm = &test_wm;
 | 
						|
static GHashTable * wm_hash = NULL;
 | 
						|
GdkDrawableClass _gdk_windowing_window_class;
 | 
						|
 | 
						|
static void create_toplevel (GR_WINDOW_ID parent, GR_WINDOW_ID win, int x, int y, int width, int height)
 | 
						|
{
 | 
						|
		WMInfo *winfo;
 | 
						|
 | 
						|
		winfo = g_new0(WMInfo, 1);
 | 
						|
    	winfo->pwin = GrNewWindow(parent, x, y-20, width, height+20, 0, RGB(150, 50,150), WHITE);
 | 
						|
		winfo->win = win;
 | 
						|
		GrReparentWindow(winfo->pwin, win, 20, 0);
 | 
						|
		if (!wm_hash)
 | 
						|
				wm_hash = g_hash_table_new(g_int_hash, g_int_equal);
 | 
						|
		g_hash_table_insert(wm_hash, winfo->pwin, winfo);
 | 
						|
}
 | 
						|
 | 
						|
static int  manage_event (GR_EVENT *event) {
 | 
						|
		return 0;
 | 
						|
}
 | 
						|
 | 
						|
static void set_title (GR_WINDOW_ID win, char* title) {
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
static void
 | 
						|
gdk_nanox_window_destroy (GdkDrawable *drawable)
 | 
						|
{
 | 
						|
  if (!GDK_DRAWABLE_DESTROYED (drawable))
 | 
						|
    {
 | 
						|
      if (GDK_DRAWABLE_TYPE (drawable) == GDK_WINDOW_FOREIGN)
 | 
						|
	gdk_xid_table_remove (GDK_DRAWABLE_XID (drawable));
 | 
						|
      else
 | 
						|
	g_warning ("losing last reference to undestroyed window\n");
 | 
						|
    }
 | 
						|
 | 
						|
  g_free (GDK_DRAWABLE_XDATA (drawable));
 | 
						|
}
 | 
						|
 | 
						|
static GdkWindowPrivate*
 | 
						|
gdk_window_nanox_alloc() {
 | 
						|
  GdkWindow *window;
 | 
						|
  GdkWindowPrivate *private;
 | 
						|
  
 | 
						|
  static GdkDrawableClass klass;
 | 
						|
  static gboolean initialized = FALSE;
 | 
						|
 | 
						|
  if (!initialized)
 | 
						|
    {
 | 
						|
      initialized = TRUE;
 | 
						|
      
 | 
						|
      klass = _gdk_nanox_drawable_class;
 | 
						|
      klass.destroy = gdk_nanox_window_destroy;
 | 
						|
    }
 | 
						|
 | 
						|
  window = _gdk_window_alloc ();
 | 
						|
  private = (GdkWindowPrivate *)window;
 | 
						|
 | 
						|
  private->drawable.klass = &klass;
 | 
						|
  private->drawable.klass_data = g_new (GdkDrawableXData, 1);
 | 
						|
 | 
						|
  return window;
 | 
						|
}
 | 
						|
 | 
						|
static void
 | 
						|
gdk_window_internal_destroy (GdkWindow *window,
 | 
						|
			     gboolean   xdestroy,
 | 
						|
			     gboolean   our_destroy)
 | 
						|
{
 | 
						|
}
 | 
						|
 | 
						|
GR_WINDOW_ID gdk_root_window = GR_ROOT_WINDOW_ID;
 | 
						|
 | 
						|
void
 | 
						|
gdk_window_init (void)
 | 
						|
{
 | 
						|
  GdkWindowPrivate *private;
 | 
						|
 | 
						|
  gdk_parent_root = gdk_window_nanox_alloc ();
 | 
						|
  private = (GdkWindowPrivate *)gdk_parent_root;
 | 
						|
  
 | 
						|
  GDK_DRAWABLE_XDATA (gdk_parent_root)->xid = gdk_root_window;
 | 
						|
 | 
						|
  private->drawable.window_type = GDK_WINDOW_ROOT;
 | 
						|
  private->drawable.width = gdk_screen_width();
 | 
						|
  private->drawable.height = gdk_screen_height();
 | 
						|
  
 | 
						|
  gdk_window_set_events(private, -1);
 | 
						|
  gdk_xid_table_insert (&gdk_root_window, gdk_parent_root);
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
GdkWindow*
 | 
						|
gdk_window_new (GdkWindow     *parent,
 | 
						|
		GdkWindowAttr *attributes,
 | 
						|
		gint           attributes_mask)
 | 
						|
{
 | 
						|
  GR_WINDOW_ID new_win;
 | 
						|
  GdkWindowPrivate *private, *parent_private;
 | 
						|
  int x, y, width, height;
 | 
						|
  int border = 1;
 | 
						|
  
 | 
						|
  if (!parent)
 | 
						|
    parent = gdk_parent_root;
 | 
						|
 | 
						|
  if (GDK_DRAWABLE_DESTROYED (parent))
 | 
						|
    return NULL;
 | 
						|
 
 | 
						|
  private->parent = parent;
 | 
						|
 | 
						|
  parent_private = (GdkWindowPrivate*)parent;
 | 
						|
 | 
						|
  if (attributes_mask & GDK_WA_X)
 | 
						|
    x = attributes->x;
 | 
						|
  else
 | 
						|
    x = 0;
 | 
						|
  
 | 
						|
  if (attributes_mask & GDK_WA_Y)
 | 
						|
    y = attributes->y;
 | 
						|
  else
 | 
						|
    y = 0;
 | 
						|
  
 | 
						|
  width = attributes->width;
 | 
						|
  height = attributes->height;
 | 
						|
  
 | 
						|
  private = gdk_window_nanox_alloc();
 | 
						|
  private->x = x;
 | 
						|
  private->y = y;
 | 
						|
  private->drawable.width = (attributes->width > 1) ? (attributes->width) : (1);
 | 
						|
  private->drawable.height = (attributes->height > 1) ? (attributes->height) : (1);
 | 
						|
  private->drawable.window_type = attributes->window_type;
 | 
						|
 | 
						|
  if (attributes->window_type == GDK_WINDOW_TOPLEVEL || attributes->window_type == GDK_WINDOW_DIALOG)
 | 
						|
		  border = 2;
 | 
						|
  /* if toplevel reparent to our own window managed window... (check override_redirect) */
 | 
						|
  if (attributes->wclass == GDK_INPUT_OUTPUT)
 | 
						|
    new_win = GrNewWindow(GDK_WINDOW_XWINDOW(parent), x, y, width, height, border, RGB(150,150,150), WHITE);
 | 
						|
  else
 | 
						|
    new_win = GrNewInputWindow(GDK_WINDOW_XWINDOW(parent), x, y, width, height);
 | 
						|
 | 
						|
  GDK_DRAWABLE_XDATA(private)->xid = new_win;
 | 
						|
  gdk_drawable_ref(private);
 | 
						|
  
 | 
						|
  private->drawable.colormap = gdk_colormap_get_system (); 
 | 
						|
 | 
						|
  gdk_xid_table_insert (&GDK_DRAWABLE_XID(private), private);
 | 
						|
  g_message("created window %d %d %d %d %d", new_win, x, y, width, height);
 | 
						|
  GrSelectEvents(GDK_DRAWABLE_XID(private), -1);
 | 
						|
  return (GdkWindow*)private;;
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
GdkWindow *
 | 
						|
gdk_window_foreign_new (guint32 anid)
 | 
						|
{
 | 
						|
		g_message("unimplemented %s", __FUNCTION__);
 | 
						|
	return NULL;
 | 
						|
}
 | 
						|
 | 
						|
void
 | 
						|
gdk_window_destroy (GdkWindow *window)
 | 
						|
{
 | 
						|
  gdk_window_internal_destroy (window, TRUE, TRUE);
 | 
						|
  gdk_drawable_unref (window);
 | 
						|
}
 | 
						|
 | 
						|
void
 | 
						|
gdk_window_destroy_notify (GdkWindow *window)
 | 
						|
{
 | 
						|
		g_message("unimplemented %s", __FUNCTION__);
 | 
						|
}
 | 
						|
 | 
						|
void
 | 
						|
gdk_window_show (GdkWindow *window)
 | 
						|
{
 | 
						|
  GdkWindowPrivate *private;
 | 
						|
  
 | 
						|
  g_return_if_fail (window != NULL);
 | 
						|
  
 | 
						|
  private = (GdkWindowPrivate*) window;
 | 
						|
  if (!private->drawable.destroyed)
 | 
						|
    {
 | 
						|
      private->mapped = TRUE;
 | 
						|
      GrRaiseWindow (GDK_DRAWABLE_XID (window));
 | 
						|
      GrMapWindow (GDK_DRAWABLE_XID (window));
 | 
						|
    }
 | 
						|
}
 | 
						|
 | 
						|
void
 | 
						|
gdk_window_hide (GdkWindow *window)
 | 
						|
{
 | 
						|
  GdkWindowPrivate *private;
 | 
						|
  
 | 
						|
  g_return_if_fail (window != NULL);
 | 
						|
  
 | 
						|
  private = (GdkWindowPrivate*) window;
 | 
						|
  if (!private->drawable.destroyed)
 | 
						|
    {
 | 
						|
      private->mapped = FALSE;
 | 
						|
      GrUnmapWindow (GDK_DRAWABLE_XID (window));
 | 
						|
    }
 | 
						|
}
 | 
						|
 | 
						|
void
 | 
						|
gdk_window_raise (GdkWindow *window)
 | 
						|
{
 | 
						|
  g_return_if_fail (window != NULL);
 | 
						|
  g_return_if_fail (GDK_IS_WINDOW (window));
 | 
						|
  
 | 
						|
  if (!GDK_DRAWABLE_DESTROYED (window))
 | 
						|
    GrRaiseWindow (GDK_DRAWABLE_XID (window));
 | 
						|
}
 | 
						|
 | 
						|
void
 | 
						|
gdk_window_lower (GdkWindow *window)
 | 
						|
{
 | 
						|
  g_return_if_fail (window != NULL);
 | 
						|
  g_return_if_fail (GDK_IS_WINDOW (window));
 | 
						|
  
 | 
						|
  if (!GDK_DRAWABLE_DESTROYED (window))
 | 
						|
    GrLowerWindow (GDK_DRAWABLE_XID (window));
 | 
						|
}
 | 
						|
 | 
						|
void
 | 
						|
gdk_window_withdraw (GdkWindow *window)
 | 
						|
{
 | 
						|
		g_message("unimplemented %s", __FUNCTION__);
 | 
						|
}
 | 
						|
 | 
						|
void
 | 
						|
gdk_window_move (GdkWindow *window,
 | 
						|
		 gint       x,
 | 
						|
		 gint       y)
 | 
						|
{
 | 
						|
  GrMoveWindow(GDK_DRAWABLE_XID(window), x, y);
 | 
						|
}
 | 
						|
 | 
						|
void
 | 
						|
gdk_window_resize (GdkWindow *window,
 | 
						|
		   gint       width,
 | 
						|
		   gint       height)
 | 
						|
{
 | 
						|
  GrResizeWindow(GDK_DRAWABLE_XID(window), width, height);
 | 
						|
}
 | 
						|
 | 
						|
void
 | 
						|
gdk_window_move_resize (GdkWindow *window,
 | 
						|
			gint       x,
 | 
						|
			gint       y,
 | 
						|
			gint       width,
 | 
						|
			gint       height)
 | 
						|
{
 | 
						|
  GrMoveWindow(GDK_DRAWABLE_XID(window), x, y);
 | 
						|
  GrResizeWindow(GDK_DRAWABLE_XID(window), width, height);
 | 
						|
}
 | 
						|
 | 
						|
void
 | 
						|
gdk_window_reparent (GdkWindow *window,
 | 
						|
		     GdkWindow *new_parent,
 | 
						|
		     gint       x,
 | 
						|
		     gint       y)
 | 
						|
{
 | 
						|
  GrReparentWindow(GDK_DRAWABLE_XID(window), GDK_DRAWABLE_XID(new_parent), x, y);
 | 
						|
}
 | 
						|
 | 
						|
void
 | 
						|
gdk_window_clear (GdkWindow *window)
 | 
						|
{
 | 
						|
  g_return_if_fail (window != NULL);
 | 
						|
  g_return_if_fail (GDK_IS_WINDOW (window));
 | 
						|
  
 | 
						|
  if (!GDK_DRAWABLE_DESTROYED (window))
 | 
						|
    GrClearWindow (GDK_DRAWABLE_XID (window), 0);
 | 
						|
}
 | 
						|
 | 
						|
void
 | 
						|
_gdk_windowing_window_clear_area (GdkWindow *window,
 | 
						|
		       gint       x,
 | 
						|
		       gint       y,
 | 
						|
		       gint       width,
 | 
						|
		       gint       height)
 | 
						|
{
 | 
						|
  g_return_if_fail (window != NULL);
 | 
						|
  g_return_if_fail (GDK_IS_WINDOW (window));
 | 
						|
  
 | 
						|
  if (!GDK_DRAWABLE_DESTROYED (window))
 | 
						|
    GrClearWindow (GDK_DRAWABLE_XID (window), 0);
 | 
						|
}
 | 
						|
 | 
						|
void
 | 
						|
_gdk_windowing_window_clear_area_e (GdkWindow *window,
 | 
						|
		         gint       x,
 | 
						|
		         gint       y,
 | 
						|
		         gint       width,
 | 
						|
		         gint       height)
 | 
						|
{
 | 
						|
  g_return_if_fail (window != NULL);
 | 
						|
  g_return_if_fail (GDK_IS_WINDOW (window));
 | 
						|
  
 | 
						|
  if (!GDK_DRAWABLE_DESTROYED (window))
 | 
						|
    GrClearWindow (GDK_DRAWABLE_XID (window), 1);
 | 
						|
}
 | 
						|
 | 
						|
void
 | 
						|
gdk_window_set_hints (GdkWindow *window,
 | 
						|
		      gint       x,
 | 
						|
		      gint       y,
 | 
						|
		      gint       min_width,
 | 
						|
		      gint       min_height,
 | 
						|
		      gint       max_width,
 | 
						|
		      gint       max_height,
 | 
						|
		      gint       flags)
 | 
						|
{
 | 
						|
		g_message("unimplemented %s", __FUNCTION__);
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
void 
 | 
						|
gdk_window_set_geometry_hints (GdkWindow      *window,
 | 
						|
			       GdkGeometry    *geometry,
 | 
						|
			       GdkWindowHints  geom_mask)
 | 
						|
{
 | 
						|
		g_message("unimplemented %s", __FUNCTION__);
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
void
 | 
						|
gdk_window_set_title (GdkWindow   *window,
 | 
						|
		      const gchar *title)
 | 
						|
{
 | 
						|
		g_message("unimplemented %s", __FUNCTION__);
 | 
						|
}
 | 
						|
 | 
						|
void          
 | 
						|
gdk_window_set_role (GdkWindow   *window,
 | 
						|
		     const gchar *role)
 | 
						|
{
 | 
						|
		g_message("unimplemented %s", __FUNCTION__);
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
void          
 | 
						|
gdk_window_set_transient_for (GdkWindow *window, 
 | 
						|
			      GdkWindow *parent)
 | 
						|
{
 | 
						|
		g_message("unimplemented %s", __FUNCTION__);
 | 
						|
}
 | 
						|
 | 
						|
void
 | 
						|
gdk_window_set_background (GdkWindow *window,
 | 
						|
			   GdkColor  *color)
 | 
						|
{
 | 
						|
  g_return_if_fail (window != NULL);
 | 
						|
  g_return_if_fail (GDK_IS_WINDOW (window));
 | 
						|
  
 | 
						|
		g_message("unimplemented %s", __FUNCTION__);
 | 
						|
  if (GDK_DRAWABLE_DESTROYED (window))
 | 
						|
    return;
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
void
 | 
						|
gdk_window_set_back_pixmap (GdkWindow *window,
 | 
						|
			    GdkPixmap *pixmap,
 | 
						|
			    gboolean   parent_relative)
 | 
						|
{
 | 
						|
		g_message("unimplemented %s", __FUNCTION__);
 | 
						|
}
 | 
						|
 | 
						|
void
 | 
						|
gdk_window_set_cursor (GdkWindow *window,
 | 
						|
		       GdkCursor *cursor)
 | 
						|
{
 | 
						|
}
 | 
						|
 | 
						|
void
 | 
						|
gdk_window_get_geometry (GdkWindow *window,
 | 
						|
			 gint      *x,
 | 
						|
			 gint      *y,
 | 
						|
			 gint      *width,
 | 
						|
			 gint      *height,
 | 
						|
			 gint      *depth)
 | 
						|
{
 | 
						|
  GR_WINDOW_INFO winfo;
 | 
						|
  g_return_if_fail (window == NULL || GDK_IS_WINDOW (window));
 | 
						|
  
 | 
						|
  if (!window)
 | 
						|
    window = gdk_parent_root;
 | 
						|
  
 | 
						|
  if (!GDK_DRAWABLE_DESTROYED (window))
 | 
						|
    {
 | 
						|
      GrGetWindowInfo(GDK_DRAWABLE_XID(window), &winfo);
 | 
						|
	if (x)
 | 
						|
	  *x = winfo.x;
 | 
						|
	if (y)
 | 
						|
	  *y = winfo.y;
 | 
						|
	if (width)
 | 
						|
	  *width = winfo.width;
 | 
						|
	if (height)
 | 
						|
	  *height = winfo.height;
 | 
						|
	if (depth)
 | 
						|
	  *depth = 24;
 | 
						|
    }
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
gint
 | 
						|
gdk_window_get_origin (GdkWindow *window,
 | 
						|
		       gint      *x,
 | 
						|
		       gint      *y)
 | 
						|
{
 | 
						|
		g_message("unimplemented %s", __FUNCTION__);
 | 
						|
	return 0;
 | 
						|
}
 | 
						|
 | 
						|
gboolean
 | 
						|
gdk_window_get_deskrelative_origin (GdkWindow *window,
 | 
						|
				    gint      *x,
 | 
						|
				    gint      *y)
 | 
						|
{
 | 
						|
		g_message("unimplemented %s", __FUNCTION__);
 | 
						|
	return 0;
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
void
 | 
						|
gdk_window_get_root_origin (GdkWindow *window,
 | 
						|
			    gint      *x,
 | 
						|
			    gint      *y)
 | 
						|
{
 | 
						|
		g_message("unimplemented %s", __FUNCTION__);
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
GdkWindow*
 | 
						|
gdk_window_get_pointer (GdkWindow       *window,
 | 
						|
			gint            *x,
 | 
						|
			gint            *y,
 | 
						|
			GdkModifierType *mask)
 | 
						|
{
 | 
						|
		g_message("unimplemented %s", __FUNCTION__);
 | 
						|
	return NULL;
 | 
						|
}
 | 
						|
 | 
						|
GdkWindow*
 | 
						|
gdk_window_at_pointer (gint *win_x,
 | 
						|
		       gint *win_y)
 | 
						|
{
 | 
						|
		g_message("unimplemented %s", __FUNCTION__);
 | 
						|
	return NULL;
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
GList*
 | 
						|
gdk_window_get_children (GdkWindow *window)
 | 
						|
{
 | 
						|
		g_message("unimplemented %s", __FUNCTION__);
 | 
						|
	return NULL;
 | 
						|
}
 | 
						|
 | 
						|
GdkEventMask  
 | 
						|
gdk_window_get_events (GdkWindow *window)
 | 
						|
{
 | 
						|
	return -1;
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
void          
 | 
						|
gdk_window_set_events (GdkWindow       *window,
 | 
						|
		       GdkEventMask     event_mask)
 | 
						|
{
 | 
						|
  GrSelectEvents(GDK_DRAWABLE_XID(window), -1);
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
void
 | 
						|
gdk_window_shape_combine_mask (GdkWindow *window,
 | 
						|
			       GdkBitmap *mask,
 | 
						|
			       gint x, gint y)
 | 
						|
{
 | 
						|
		g_message("unimplemented %s", __FUNCTION__);
 | 
						|
}
 | 
						|
 | 
						|
void
 | 
						|
gdk_window_set_override_redirect (GdkWindow *window,
 | 
						|
				  gboolean override_redirect)
 | 
						|
{
 | 
						|
		g_message("unimplemented %s", __FUNCTION__);
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
void          
 | 
						|
gdk_window_set_icon (GdkWindow *window, 
 | 
						|
		     GdkWindow *icon_window,
 | 
						|
		     GdkPixmap *pixmap,
 | 
						|
		     GdkBitmap *mask)
 | 
						|
{
 | 
						|
		g_message("unimplemented %s", __FUNCTION__);
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
void          
 | 
						|
gdk_window_set_icon_name (GdkWindow   *window, 
 | 
						|
			  const gchar *name)
 | 
						|
{
 | 
						|
		g_message("unimplemented %s", __FUNCTION__);
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
void          
 | 
						|
gdk_window_set_group (GdkWindow *window, 
 | 
						|
		      GdkWindow *leader)
 | 
						|
{
 | 
						|
		g_message("unimplemented %s", __FUNCTION__);
 | 
						|
}
 | 
						|
 | 
						|
void
 | 
						|
gdk_window_set_decorations (GdkWindow      *window,
 | 
						|
			    GdkWMDecoration decorations)
 | 
						|
{
 | 
						|
		g_message("unimplemented %s", __FUNCTION__);
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
void
 | 
						|
gdk_window_set_functions (GdkWindow    *window,
 | 
						|
			  GdkWMFunction functions)
 | 
						|
{
 | 
						|
		g_message("unimplemented %s", __FUNCTION__);
 | 
						|
}
 | 
						|
 | 
						|
void
 | 
						|
gdk_window_set_child_shapes (GdkWindow *window)
 | 
						|
{
 | 
						|
  g_return_if_fail (window != NULL);
 | 
						|
  g_return_if_fail (GDK_IS_WINDOW (window));
 | 
						|
		g_message("unimplemented %s", __FUNCTION__);
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
void
 | 
						|
gdk_window_merge_child_shapes (GdkWindow *window)
 | 
						|
{
 | 
						|
  g_return_if_fail (window != NULL);
 | 
						|
  g_return_if_fail (GDK_IS_WINDOW (window));
 | 
						|
		g_message("unimplemented %s", __FUNCTION__);
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
gboolean 
 | 
						|
gdk_window_set_static_gravities (GdkWindow *window,
 | 
						|
				 gboolean   use_static)
 | 
						|
{
 | 
						|
		g_message("unimplemented %s", __FUNCTION__);
 | 
						|
	return 0;
 | 
						|
}
 | 
						|
 | 
						|
void
 | 
						|
_gdk_windowing_window_get_offsets (GdkWindow *window, gint      *x_offset, gint      *y_offset) {
 | 
						|
		*x_offset = *y_offset = 0;
 | 
						|
}
 | 
						|
 | 
						|
gboolean
 | 
						|
_gdk_windowing_window_queue_antiexpose (GdkWindow *window, GdkRegion *area) {
 | 
						|
	return FALSE;
 | 
						|
}
 |