Ardour  9.0-pre0-582-g084a23a80d
gdkinternals.h
Go to the documentation of this file.
1 /* GDK - The GIMP Drawing Kit
2  * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
3  *
4  * This library is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU Lesser General Public
6  * License as published by the Free Software Foundation; either
7  * version 2 of the License, or (at your option) any later version.
8  *
9  * This library is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12  * Lesser General Public License for more details.
13  *
14  * You should have received a copy of the GNU Lesser General Public
15  * License along with this library; if not, write to the
16  * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
17  * Boston, MA 02111-1307, USA.
18  */
19 
20 /*
21  * Modified by the GTK+ Team and others 1997-2000. See the AUTHORS
22  * file for a list of people on the GTK+ Team. See the ChangeLog
23  * files for a list of changes. These files are distributed with
24  * GTK+ at ftp://ftp.gtk.org/pub/gtk/.
25  */
26 
27 /* Uninstalled header defining types and functions internal to GDK */
28 
29 #ifndef __GDK_INTERNALS_H__
30 #define __GDK_INTERNALS_H__
31 
32 #include <gio/gio.h>
33 #include <gdk/gdktypes.h>
34 #include <gdk/gdkwindow.h>
35 #include <gdk/gdkprivate.h>
36 #ifdef USE_MEDIALIB
37 #include <gdk/gdkmedialib.h>
38 #endif
39 
40 G_BEGIN_DECLS
41 
42 /**********************
43  * General Facilities *
44  **********************/
45 
46 /* Debugging support */
47 
48 typedef struct _GdkColorInfo GdkColorInfo;
49 typedef struct _GdkEventFilter GdkEventFilter;
50 typedef struct _GdkClientFilter GdkClientFilter;
51 
52 typedef enum {
53  GDK_COLOR_WRITEABLE = 1 << 0
55 
57 {
59  guint ref_count;
60 };
61 
62 typedef enum {
65 
67  GdkFilterFunc function;
68  gpointer data;
70  guint ref_count;
71 };
72 
75  GdkFilterFunc function;
76  gpointer data;
77 };
78 
79 typedef enum {
80  GDK_DEBUG_MISC = 1 << 0,
81  GDK_DEBUG_EVENTS = 1 << 1,
82  GDK_DEBUG_DND = 1 << 2,
83  GDK_DEBUG_XIM = 1 << 3,
86  GDK_DEBUG_GDKRGB = 1 << 6,
87  GDK_DEBUG_GC = 1 << 7,
88  GDK_DEBUG_PIXMAP = 1 << 8,
89  GDK_DEBUG_IMAGE = 1 << 9,
90  GDK_DEBUG_INPUT = 1 <<10,
91  GDK_DEBUG_CURSOR = 1 <<11,
94  GDK_DEBUG_DRAW = 1 <<14,
96  GDK_DEBUG_TOUCH = 1 <<16
98 
99 #ifndef GDK_DISABLE_DEPRECATED
100 
101 typedef struct _GdkFontPrivate GdkFontPrivate;
102 
104 {
106  guint ref_count;
107 };
108 
109 #endif /* GDK_DISABLE_DEPRECATED */
110 
111 extern GList *_gdk_default_filters;
113 extern gint _gdk_error_code;
114 extern gint _gdk_error_warnings;
115 
116 extern guint _gdk_debug_flags;
117 extern gboolean _gdk_native_windows;
118 
119 #ifdef G_ENABLE_DEBUG
120 
121 #define GDK_NOTE(type,action) G_STMT_START { \
122  if (_gdk_debug_flags & GDK_DEBUG_##type) \
123  { action; }; } G_STMT_END
124 
125 #else /* !G_ENABLE_DEBUG */
126 
127 #define GDK_NOTE(type,action)
128 
129 #endif /* G_ENABLE_DEBUG */
130 
131 /* Arg parsing */
132 
133 typedef enum
134 {
141 
142 typedef struct _GdkArgContext GdkArgContext;
143 typedef struct _GdkArgDesc GdkArgDesc;
144 
145 typedef void (*GdkArgFunc) (const char *name, const char *arg, gpointer data);
146 
148 {
149  GPtrArray *tables;
150  gpointer cb_data;
151 };
152 
154 {
155  const char *name;
157  gpointer location;
159 };
160 
161 /* Event handling */
162 
163 typedef struct _GdkEventPrivate GdkEventPrivate;
164 
165 typedef enum
166 {
167  /* Following flag is set for events on the event queue during
168  * translation and cleared afterwards.
169  */
170  GDK_EVENT_PENDING = 1 << 0
172 
174 {
176  guint flags;
178  gpointer windowing_data;
179 };
180 
181 /* Tracks information about the pointer grab on this display */
182 typedef struct
183 {
186  gulong serial_start;
187  gulong serial_end; /* exclusive, i.e. not active on serial_end */
188  gboolean owner_events;
189  guint event_mask;
190  gboolean implicit;
191  guint32 time;
192 
193  gboolean activated;
194  gboolean implicit_ungrab;
196 
197 typedef struct _GdkInputWindow GdkInputWindow;
198 
199 /* Private version of GdkWindowObject. The initial part of this strucuture
200  is public for historical reasons. Don't change that part */
201 typedef struct _GdkWindowPaint GdkWindowPaint;
202 
204 {
205  /* vvvvvvv THIS PART IS PUBLIC. DON'T CHANGE vvvvvvvvvvvvvv */
207 
208  GdkDrawable *impl; /* window-system-specific delegate object */
209 
211 
212  gpointer user_data;
213 
214  gint x;
215  gint y;
216 
218 
219  GList *filters;
220  GList *children;
221 
224 
225  GSList *paint_stack;
226 
229 
230  guint8 window_type;
231  guint8 depth;
232  guint8 resize_count;
233 
235 
236  guint guffaw_gravity : 1;
237  guint input_only : 1;
238  guint modal_hint : 1;
239  guint composited : 1;
240 
241  guint destroyed : 2;
242 
243  guint accept_focus : 1;
244  guint focus_on_map : 1;
245  guint shaped : 1;
246 
248 
250 
252 
253  /* ^^^^^^^^^^ THIS PART IS PUBLIC. DON'T CHANGE ^^^^^^^^^^ */
254 
255  /* The GdkWindowObject that has the impl, ref:ed if another window.
256  * This ref is required to keep the wrapper of the impl window alive
257  * for as long as any GdkWindow references the impl. */
259  int abs_x, abs_y; /* Absolute offset in impl */
260  gint width, height;
261  guint32 clip_tag;
262  GdkRegion *clip_region; /* Clip region (wrt toplevel) in window coords */
263  GdkRegion *clip_region_with_children; /* Clip region in window coords */
268  guint visibility : 2; /* The visibility wrt the toplevel (i.e. based on clip_region) */
269  guint native_visibility : 2; /* the native visibility of a impl windows */
270  guint viewable : 1; /* mapped and all parents mapped */
271  guint applied_shape : 1;
272 
275  GdkInputWindow *input_window; /* only set for impl windows */
276 
278 
281 
282  cairo_surface_t *cairo_surface;
283  guint outstanding_surfaces; /* only set on impl window */
284 
285  cairo_pattern_t *background;
286 };
287 
288 #define GDK_WINDOW_TYPE(d) (((GdkWindowObject*)(GDK_WINDOW (d)))->window_type)
289 #define GDK_WINDOW_DESTROYED(d) (((GdkWindowObject*)(GDK_WINDOW (d)))->destroyed)
290 
291 extern GdkEventFunc _gdk_event_func; /* Callback for events */
292 extern gpointer _gdk_event_data;
293 extern GDestroyNotify _gdk_event_notify;
294 
295 extern GSList *_gdk_displays;
296 extern gchar *_gdk_display_name;
297 extern gint _gdk_screen_number;
298 extern gchar *_gdk_display_arg_name;
299 
302 
304  GdkEventFilter *filter);
305 
308  GList *node);
310  GdkEvent *event);
312  GdkEvent *event);
314  GdkEvent *after_event,
315  GdkEvent *event);
317  GdkEvent *after_event,
318  GdkEvent *event);
320  GdkEvent *event);
321 
323  GdkEvent *dst);
325 
327  GdkWindowState unset_flags,
328  GdkWindowState set_flags);
329 
330 #define GDK_SCRATCH_IMAGE_WIDTH 256
331 #define GDK_SCRATCH_IMAGE_HEIGHT 64
332 
334  GdkImageType type,
335  GdkVisual *visual,
336  gint width,
337  gint height,
338  gint depth);
340  gint width,
341  gint height,
342  gint depth,
343  gint *x,
344  gint *y);
345 
347  GdkImage *image,
348  gint src_x,
349  gint src_y,
350  gint dest_x,
351  gint dest_y,
352  gint width,
353  gint height);
354 
355 cairo_surface_t *_gdk_drawable_ref_cairo_surface (GdkDrawable *drawable);
356 
358 cairo_surface_t * _gdk_drawable_create_cairo_surface (GdkDrawable *drawable,
359  int width,
360  int height);
361 
362 /* GC caching */
364  gboolean graphics_exposures);
366 
368  cairo_t *cr,
369  const GdkColor *override_foreground,
370  GdkBitmap *override_stipple,
371  gboolean gc_changed,
372  GdkDrawable *target_drawable);
373 
374 /*************************************
375  * Interfaces used by windowing code *
376  *************************************/
377 
379  gint width,
380  gint height,
381  gint depth);
383  const gchar *data,
384  gint width,
385  gint height,
386  gint depth,
387  const GdkColor *fg,
388  const GdkColor *bg);
390  const gchar *data,
391  gint width,
392  gint height);
393 
395  GdkWindow *real_parent,
396  GdkScreen *screen,
397  GdkVisual *visual,
398  GdkEventMask event_mask,
399  GdkWindowAttr *attributes,
400  gint attributes_mask);
402  gboolean foreign_destroy);
406 
408  GdkRegion *expose_region);
409 
411 
412 const char *_gdk_get_sm_client_id (void);
413 
414 void _gdk_gc_init (GdkGC *gc,
415  GdkDrawable *drawable,
416  GdkGCValues *values,
417  GdkGCValuesMask values_mask);
418 
428  guint32 region_tag,
429  GdkRegion *region,
430  int offset_x,
431  int offset_y);
434  GdkRegion *region,
435  gboolean reset_origin);
437 
439  GdkGC *gc,
440  gpointer *priv_data,
441  gint *x_offset_out,
442  gint *y_offset_out);
443 void _gdk_drawable_end_direct_draw (gpointer priv_data);
444 
445 
446 /*****************************************
447  * Interfaces provided by windowing code *
448  *****************************************/
449 
450 /* Font/string functions implemented in module-specific code */
451 gint _gdk_font_strlen (GdkFont *font, const char *str);
453 
455 
457 
459 
460 extern const GOptionEntry _gdk_windowing_args[];
462 
463 gchar *_gdk_windowing_substitute_screen_number (const gchar *display_name,
464  gint screen_number);
465 
468  gint *x_offset,
469  gint *y_offset);
474 
475 
477  GdkScreen **screen,
478  gint *x,
479  gint *y,
480  GdkModifierType *mask);
482  gint *win_x,
483  gint *win_y,
484  GdkModifierType *mask,
485  gboolean get_toplevel);
487  GdkWindow *native,
488  gboolean owner_events,
489  GdkEventMask event_mask,
490  GdkWindow *confine_to,
491  GdkCursor *cursor,
492  guint32 time);
494  GList *event_link,
495  GdkEvent *event,
496  gulong serial);
497 
499  GdkRegion *expose_region);
502 
503 /* Return the number of bits-per-pixel for images of the specified depth. */
505  gint depth);
506 
507 
508 #define GDK_WINDOW_IS_MAPPED(window) ((((GdkWindowObject*)window)->state & GDK_WINDOW_STATE_WITHDRAWN) == 0)
509 
510 
511 /* Called when gdk_window_destroy() is called on a foreign window
512  * or an ancestor of the foreign window. It should generally reparent
513  * the window out of it's current heirarchy, hide it, and then
514  * send a message to the owner requesting that the window be destroyed.
515  */
517 
519  const gchar *sm_client_id);
520 
522  gboolean composited);
523 
524 #define GDK_TYPE_PAINTABLE (_gdk_paintable_get_type ())
525 #define GDK_PAINTABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GDK_TYPE_PAINTABLE, GdkPaintable))
526 #define GDK_IS_PAINTABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GDK_TYPE_PAINTABLE))
527 #define GDK_PAINTABLE_GET_IFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GDK_TYPE_PAINTABLE, GdkPaintableIface))
528 
529 typedef struct _GdkPaintable GdkPaintable;
531 
533 {
534  GTypeInterface g_iface;
535 
536  void (* begin_paint_region) (GdkPaintable *paintable,
537  GdkWindow *window,
538  const GdkRegion *region);
539  void (* end_paint) (GdkPaintable *paintable);
540 };
541 
542 GType _gdk_paintable_get_type (void) G_GNUC_CONST;
543 
544 /* Implementation types */
545 GType _gdk_window_impl_get_type (void) G_GNUC_CONST;
546 GType _gdk_pixmap_impl_get_type (void) G_GNUC_CONST;
547 
548 
565  const GdkRegion *region,
566  gboolean reset_origin);
567 
578  GdkGC *src_gc);
579 
580 /* Queries the current foreground color of a GdkGC */
582  GdkColor *color);
583 /* Queries the current background color of a GdkGC */
585  GdkColor *color);
586 
588 {
591  gint workspace;
592  guint32 timestamp;
593  GIcon *icon;
594  char *icon_name;
595 };
596 
597 char *_gdk_windowing_get_startup_notify_id (GAppLaunchContext *context,
598  GAppInfo *info,
599  GList *files);
600 void _gdk_windowing_launch_failed (GAppLaunchContext *context,
601  const char *startup_notify_id);
602 
605  gulong current_serial);
608  GdkWindow *window,
609  GdkWindow *native_window,
610  gboolean owner_events,
611  GdkEventMask event_mask,
612  unsigned long serial_start,
613  guint32 time,
614  gboolean implicit);
616  gulong serial);
618  gulong serial,
619  GdkWindow *if_child,
620  gboolean implicit);
622  GdkWindow *window,
623  GdkWindow *native_window,
624  gboolean owner_events,
625  unsigned long serial,
626  guint32 time);
628  gboolean implicit);
630 
631 
633  GdkRegion *region);
634 
635 void _gdk_windowing_set_cairo_surface_size (cairo_surface_t *surface,
636  int width,
637  int height);
638 
640  int width,
641  int height);
643  int x, int y);
645  double x, double y,
646  double *found_x,
647  double *found_y);
648 
650  GdkRegion *damaged_region);
651 
653  GdkEventType type,
654  GdkEvent *event_in_queue,
655  gboolean before_event);
657  GdkWindow *child);
658 
660  GdkWindow *src,
661  GdkWindow *dest,
662  GdkCrossingMode mode,
663  gint toplevel_x,
664  gint toplevel_y,
665  GdkModifierType mask,
666  guint32 time_,
667  GdkEvent *event_in_queue,
668  gulong serial,
669  gboolean non_linear);
671  GdkWindow *window);
672 
673 
675 
677  GdkWindow *base_window,
678  gboolean do_children,
679  gint *base_x_offset,
680  gint *base_y_offset);
681 gboolean _gdk_window_has_impl (GdkWindow *window);
684  GdkEventType event_type,
685  GdkModifierType mask,
686  int x, int y,
687  gulong serial);
689 
690 /*****************************
691  * offscreen window routines *
692  *****************************/
693 typedef struct _GdkOffscreenWindow GdkOffscreenWindow;
694 #define GDK_TYPE_OFFSCREEN_WINDOW (gdk_offscreen_window_get_type())
695 #define GDK_OFFSCREEN_WINDOW(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GDK_TYPE_OFFSCREEN_WINDOW, GdkOffscreenWindow))
696 #define GDK_IS_OFFSCREEN_WINDOW(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GDK_TYPE_OFFSCREEN_WINDOW))
700  GdkScreen *screen,
701  GdkVisual *visual,
702  GdkWindowAttr *attributes,
703  gint attributes_mask);
704 
705 
706 /************************************
707  * Initialization and exit routines *
708  ************************************/
709 
710 void _gdk_image_exit (void);
712 
713 extern void (*_gdk_modal_notify)(GdkWindow*, gboolean);
714 
715 G_END_DECLS
716 
717 #endif /* __GDK_INTERNALS_H__ */
GdkEventMask
Definition: gdkevents.h:166
GdkEventType
Definition: gdkevents.h:117
GdkFilterReturn(* GdkFilterFunc)(GdkXEvent *xevent, GdkEvent *event, gpointer data)
Definition: gdkevents.h:88
GdkCrossingMode
Definition: gdkevents.h:233
void(* GdkEventFunc)(GdkEvent *event, gpointer data)
Definition: gdkevents.h:71
GdkWindowState
Definition: gdkevents.h:249
typedefG_BEGIN_DECLS struct _GdkGCValues GdkGCValues
Definition: gdkgc.h:39
GdkFill
Definition: gdkgc.h:63
GdkSubwindowMode
Definition: gdkgc.h:133
GdkGCValuesMask
Definition: gdkgc.h:139
GdkImageType
Definition: gdkimage.h:50
GDestroyNotify _gdk_event_notify
GList * _gdk_event_queue_insert_before(GdkDisplay *display, GdkEvent *after_event, GdkEvent *event)
void _gdk_windowing_gc_copy(GdkGC *dst_gc, GdkGC *src_gc)
void _gdk_synthesize_crossing_events_for_geometry_change(GdkWindow *changed_window)
GdkRegion * _gdk_windowing_get_shape_for_mask(GdkBitmap *mask)
void _gdk_windowing_set_default_display(GdkDisplay *display)
GdkEventFilterFlags
Definition: gdkinternals.h:62
@ GDK_EVENT_FILTER_REMOVED
Definition: gdkinternals.h:63
gulong _gdk_windowing_window_get_next_serial(GdkDisplay *display)
gboolean _gdk_window_update_viewable(GdkWindow *window)
gint _gdk_screen_number
GdkDrawable * _gdk_drawable_begin_direct_draw(GdkDrawable *drawable, GdkGC *gc, gpointer *priv_data, gint *x_offset_out, gint *y_offset_out)
gint _gdk_windowing_get_bits_for_depth(GdkDisplay *display, gint depth)
GdkPixmap * _gdk_bitmap_create_from_data(GdkDrawable *drawable, const gchar *data, gint width, gint height)
gchar * _gdk_windowing_substitute_screen_number(const gchar *display_name, gint screen_number)
void(* GdkArgFunc)(const char *name, const char *arg, gpointer data)
Definition: gdkinternals.h:145
void _gdk_windowing_get_pointer(GdkDisplay *display, GdkScreen **screen, gint *x, gint *y, GdkModifierType *mask)
void _gdk_event_button_generate(GdkDisplay *display, GdkEvent *event)
GList * _gdk_event_queue_append(GdkDisplay *display, GdkEvent *event)
gboolean _gdk_gc_get_exposures(GdkGC *gc)
GdkSubwindowMode _gdk_gc_get_subwindow(GdkGC *gc)
GdkArgType
Definition: gdkinternals.h:134
@ GDK_ARG_NOBOOL
Definition: gdkinternals.h:138
@ GDK_ARG_CALLBACK
Definition: gdkinternals.h:139
@ GDK_ARG_BOOL
Definition: gdkinternals.h:137
@ GDK_ARG_INT
Definition: gdkinternals.h:136
@ GDK_ARG_STRING
Definition: gdkinternals.h:135
void gdk_synthesize_window_state(GdkWindow *window, GdkWindowState unset_flags, GdkWindowState set_flags)
gpointer _gdk_event_data
GdkPointerGrabInfo * _gdk_display_get_last_pointer_grab(GdkDisplay *display)
GdkPixmap * _gdk_gc_get_tile(GdkGC *gc)
GdkDebugFlag
Definition: gdkinternals.h:79
@ GDK_DEBUG_COLORMAP
Definition: gdkinternals.h:85
@ GDK_DEBUG_GC
Definition: gdkinternals.h:87
@ GDK_DEBUG_DND
Definition: gdkinternals.h:82
@ GDK_DEBUG_GDKRGB
Definition: gdkinternals.h:86
@ GDK_DEBUG_DRAW
Definition: gdkinternals.h:94
@ GDK_DEBUG_CURSOR
Definition: gdkinternals.h:91
@ GDK_DEBUG_EVENTS
Definition: gdkinternals.h:81
@ GDK_DEBUG_TOUCH
Definition: gdkinternals.h:96
@ GDK_DEBUG_INPUT
Definition: gdkinternals.h:90
@ GDK_DEBUG_XINERAMA
Definition: gdkinternals.h:93
@ GDK_DEBUG_PIXMAP
Definition: gdkinternals.h:88
@ GDK_DEBUG_EVENTLOOP
Definition: gdkinternals.h:95
@ GDK_DEBUG_MISC
Definition: gdkinternals.h:80
@ GDK_DEBUG_MULTIHEAD
Definition: gdkinternals.h:92
@ GDK_DEBUG_NOGRABS
Definition: gdkinternals.h:84
@ GDK_DEBUG_IMAGE
Definition: gdkinternals.h:89
@ GDK_DEBUG_XIM
Definition: gdkinternals.h:83
void _gdk_windowing_before_process_all_updates(void)
void _gdk_windowing_after_process_all_updates(void)
GdkWindow * _gdk_window_get_impl_window(GdkWindow *window)
void _gdk_windowing_display_set_sm_client_id(GdkDisplay *display, const gchar *sm_client_id)
char * _gdk_windowing_get_startup_notify_id(GAppLaunchContext *context, GAppInfo *info, GList *files)
void _gdk_offscreen_window_new(GdkWindow *window, GdkScreen *screen, GdkVisual *visual, GdkWindowAttr *attributes, gint attributes_mask)
void _gdk_windowing_window_beep(GdkWindow *window)
GdkRegion * _gdk_windowing_window_get_input_shape(GdkWindow *window)
void _gdk_display_unset_has_keyboard_grab(GdkDisplay *display, gboolean implicit)
guint32 _gdk_gc_get_bg_pixel(GdkGC *gc)
GdkRegion * _gdk_windowing_window_get_shape(GdkWindow *window)
gboolean _gdk_native_windows
GdkRegion * _gdk_window_calculate_full_clip_region(GdkWindow *window, GdkWindow *base_window, gboolean do_children, gint *base_x_offset, gint *base_y_offset)
void _gdk_cursor_destroy(GdkCursor *cursor)
void _gdk_window_destroy(GdkWindow *window, gboolean foreign_destroy)
GList * _gdk_default_filters
GdkImage * _gdk_drawable_copy_to_image(GdkDrawable *drawable, GdkImage *image, gint src_x, gint src_y, gint dest_x, gint dest_y, gint width, gint height)
void _gdk_windowing_gc_set_clip_region(GdkGC *gc, const GdkRegion *region, gboolean reset_origin)
GdkWindow * _gdk_window_get_input_window_for_event(GdkWindow *native_window, GdkEventType event_type, GdkModifierType mask, int x, int y, gulong serial)
cairo_surface_t * _gdk_drawable_ref_cairo_surface(GdkDrawable *drawable)
typedefG_BEGIN_DECLS struct _GdkColorInfo GdkColorInfo
Definition: gdkinternals.h:48
GdkRegion * _gdk_region_new_from_yxbanded_rects(GdkRectangle *rects, int n_rects)
gchar * _gdk_display_arg_name
GdkEvent * _gdk_event_unqueue(GdkDisplay *display)
gchar * _gdk_display_name
struct _GdkOffscreenWindow GdkOffscreenWindow
Definition: gdkinternals.h:693
void _gdk_window_process_updates_recurse(GdkWindow *window, GdkRegion *expose_region)
void _gdk_windowing_gc_get_background(GdkGC *gc, GdkColor *color)
const GOptionEntry _gdk_windowing_args[]
GdkEvent * _gdk_make_event(GdkWindow *window, GdkEventType type, GdkEvent *event_in_queue, gboolean before_event)
GdkWindow * _gdk_parent_root
cairo_surface_t * _gdk_windowing_create_cairo_surface(GdkDrawable *drawable, int width, int height)
const char * _gdk_get_sm_client_id(void)
void _gdk_window_clear_update_area(GdkWindow *window)
GdkWindow * _gdk_windowing_window_at_pointer(GdkDisplay *display, gint *win_x, gint *win_y, GdkModifierType *mask, gboolean get_toplevel)
GdkBitmap * _gdk_gc_get_clip_mask(GdkGC *gc)
void _gdk_window_invalidate_for_expose(GdkWindow *window, GdkRegion *region)
GdkGrabStatus _gdk_windowing_pointer_grab(GdkWindow *window, GdkWindow *native, gboolean owner_events, GdkEventMask event_mask, GdkWindow *confine_to, GdkCursor *cursor, guint32 time)
guint _gdk_debug_flags
gint _gdk_font_strlen(GdkFont *font, const char *str)
GdkGC * _gdk_drawable_get_scratch_gc(GdkDrawable *drawable, gboolean graphics_exposures)
gboolean _gdk_window_has_impl(GdkWindow *window)
GdkPointerGrabInfo * _gdk_display_get_active_pointer_grab(GdkDisplay *display)
void _gdk_window_add_damage(GdkWindow *toplevel, GdkRegion *damaged_region)
void _gdk_gc_remove_drawable_clip(GdkGC *gc)
void _gdk_windowing_launch_failed(GAppLaunchContext *context, const char *startup_notify_id)
void _gdk_event_queue_remove_link(GdkDisplay *display, GList *node)
GdkColorInfoFlags
Definition: gdkinternals.h:52
@ GDK_COLOR_WRITEABLE
Definition: gdkinternals.h:53
void _gdk_display_set_has_keyboard_grab(GdkDisplay *display, GdkWindow *window, GdkWindow *native_window, gboolean owner_events, unsigned long serial, guint32 time)
GList * _gdk_event_queue_prepend(GdkDisplay *display, GdkEvent *event)
GdkRegion * _gdk_gc_get_clip_region(GdkGC *gc)
void _gdk_window_impl_new(GdkWindow *window, GdkWindow *real_parent, GdkScreen *screen, GdkVisual *visual, GdkEventMask event_mask, GdkWindowAttr *attributes, gint attributes_mask)
GdkDrawable * _gdk_drawable_get_source_drawable(GdkDrawable *drawable)
void _gdk_image_exit(void)
GdkFill _gdk_gc_get_fill(GdkGC *gc)
void _gdk_gc_add_drawable_clip(GdkGC *gc, guint32 region_tag, GdkRegion *region, int offset_x, int offset_y)
GdkPixmap * _gdk_pixmap_create_from_data(GdkDrawable *drawable, const gchar *data, gint width, gint height, gint depth, const GdkColor *fg, const GdkColor *bg)
void _gdk_colormap_real_destroy(GdkColormap *colormap)
GdkBitmap * _gdk_gc_get_stipple(GdkGC *gc)
void _gdk_display_set_window_under_pointer(GdkDisplay *display, GdkWindow *window)
void _gdk_windowing_set_cairo_surface_size(cairo_surface_t *surface, int width, int height)
GdkGC * _gdk_drawable_get_subwindow_scratch_gc(GdkDrawable *drawable)
void _gdk_synthesize_crossing_events(GdkDisplay *display, GdkWindow *src, GdkWindow *dest, GdkCrossingMode mode, gint toplevel_x, gint toplevel_y, GdkModifierType mask, guint32 time_, GdkEvent *event_in_queue, gulong serial, gboolean non_linear)
GType _gdk_pixmap_impl_get_type(void) G_GNUC_CONST
struct _GdkPaintable GdkPaintable
Definition: gdkinternals.h:529
void _gdk_font_destroy(GdkFont *font)
void _gdk_display_pointer_grab_update(GdkDisplay *display, gulong current_serial)
GdkImage * _gdk_image_get_scratch(GdkScreen *screen, gint width, gint height, gint depth, gint *x, gint *y)
void _gdk_drawable_end_direct_draw(gpointer priv_data)
GdkWindow * _gdk_window_find_child_at(GdkWindow *window, int x, int y)
GType _gdk_paintable_get_type(void) G_GNUC_CONST
void _gdk_windowing_init(void)
gboolean _gdk_display_end_pointer_grab(GdkDisplay *display, gulong serial, GdkWindow *if_child, gboolean implicit)
void _gdk_events_queue(GdkDisplay *display)
void _gdk_event_filter_unref(GdkWindow *window, GdkEventFilter *filter)
void _gdk_windowing_window_get_offsets(GdkWindow *window, gint *x_offset, gint *y_offset)
GdkDrawable * _gdk_offscreen_window_get_real_drawable(GdkOffscreenWindow *window)
GdkImage * _gdk_image_new_for_depth(GdkScreen *screen, GdkImageType type, GdkVisual *visual, gint width, gint height, gint depth)
void _gdk_window_update_size(GdkWindow *window)
gboolean _gdk_window_event_parent_of(GdkWindow *parent, GdkWindow *child)
GdkPointerGrabInfo * _gdk_display_has_pointer_grab(GdkDisplay *display, gulong serial)
gint _gdk_error_warnings
void _gdk_gc_update_context(GdkGC *gc, cairo_t *cr, const GdkColor *override_foreground, GdkBitmap *override_stipple, gboolean gc_changed, GdkDrawable *target_drawable)
void _gdk_gc_set_clip_region_internal(GdkGC *gc, GdkRegion *region, gboolean reset_origin)
GdkEventFlags
Definition: gdkinternals.h:166
@ GDK_EVENT_PENDING
Definition: gdkinternals.h:170
GType _gdk_window_impl_get_type(void) G_GNUC_CONST
GSList * _gdk_displays
GType gdk_offscreen_window_get_type(void)
void _gdk_screen_close(GdkScreen *screen)
void _gdk_gc_init(GdkGC *gc, GdkDrawable *drawable, GdkGCValues *values, GdkGCValuesMask values_mask)
void _gdk_windowing_event_data_free(GdkEvent *event)
void _gdk_windowing_got_event(GdkDisplay *display, GList *event_link, GdkEvent *event, gulong serial)
void _gdk_display_enable_motion_hints(GdkDisplay *display)
guint32 _gdk_gc_get_fg_pixel(GdkGC *gc)
GdkPixmap * _gdk_pixmap_new(GdkDrawable *drawable, gint width, gint height, gint depth)
void _gdk_windowing_window_process_updates_recurse(GdkWindow *window, GdkRegion *expose_region)
void _gdk_windowing_gc_get_foreground(GdkGC *gc, GdkColor *color)
GdkPointerGrabInfo * _gdk_display_add_pointer_grab(GdkDisplay *display, GdkWindow *window, GdkWindow *native_window, gboolean owner_events, GdkEventMask event_mask, unsigned long serial_start, guint32 time, gboolean implicit)
struct _GdkWindowPaint GdkWindowPaint
Definition: gdkinternals.h:201
void _gdk_windowing_exit(void)
GdkWindow * _gdk_window_find_descendant_at(GdkWindow *toplevel, double x, double y, double *found_x, double *found_y)
void _gdk_windowing_window_set_composited(GdkWindow *window, gboolean composited)
gint _gdk_error_code
cairo_surface_t * _gdk_drawable_create_cairo_surface(GdkDrawable *drawable, int width, int height)
void(* _gdk_modal_notify)(GdkWindow *, gboolean)
GList * _gdk_event_queue_find_first(GdkDisplay *display)
GdkEventFunc _gdk_event_func
void _gdk_windowing_window_destroy_foreign(GdkWindow *window)
void _gdk_windowing_event_data_copy(const GdkEvent *src, GdkEvent *dst)
GList * _gdk_event_queue_insert_after(GdkDisplay *display, GdkEvent *after_event, GdkEvent *event)
struct _GdkAtom * GdkAtom
Definition: gdktypes.h:80
GdkGrabStatus
Definition: gdktypes.h:176
GdkModifierType
Definition: gdktypes.h:127
GtkImageIconNameData name
Definition: gtkimage.h:6
GtkImageImageData image
Definition: gtkimage.h:1
PBD::PropertyDescriptor< uint32_t > color
PBD::PropertyDescriptor< bool > region
Transmitter info
GdkWindow * window
Definition: gdkinternals.h:184
gboolean implicit_ungrab
Definition: gdkinternals.h:194
GdkWindow * native_window
Definition: gdkinternals.h:185
GPtrArray * tables
Definition: gdkinternals.h:149
gpointer cb_data
Definition: gdkinternals.h:150
gpointer location
Definition: gdkinternals.h:157
GdkArgFunc callback
Definition: gdkinternals.h:158
const char * name
Definition: gdkinternals.h:155
GdkArgType type
Definition: gdkinternals.h:156
GdkColorInfoFlags flags
Definition: gdkinternals.h:58
GdkEventFilterFlags flags
Definition: gdkinternals.h:69
gpointer windowing_data
Definition: gdkinternals.h:178
GdkScreen * screen
Definition: gdkinternals.h:177
Definition: gdkgc.h:190
void(* end_paint)(GdkPaintable *paintable)
Definition: gdkinternals.h:539
GTypeInterface g_iface
Definition: gdkinternals.h:534
void(* begin_paint_region)(GdkPaintable *paintable, GdkWindow *window, const GdkRegion *region)
Definition: gdkinternals.h:536
GdkRegion * update_area
Definition: gdkinternals.h:227
GdkCursor * cursor
Definition: gdkinternals.h:264
cairo_surface_t * cairo_surface
Definition: gdkinternals.h:282
GdkDrawable * impl
Definition: gdkinternals.h:208
GdkPixmap * bg_pixmap
Definition: gdkinternals.h:223
guint update_and_descendants_freeze_count
Definition: gdkinternals.h:249
gint8 toplevel_window_type
Definition: gdkinternals.h:265
GdkRegion * input_shape
Definition: gdkinternals.h:280
guint update_freeze_count
Definition: gdkinternals.h:228
guint num_offscreen_children
Definition: gdkinternals.h:273
GdkRegion * clip_region
Definition: gdkinternals.h:262
GdkDrawable parent_instance
Definition: gdkinternals.h:206
GdkEventMask event_mask
Definition: gdkinternals.h:247
guint outstanding_surfaces
Definition: gdkinternals.h:283
guint synthesize_crossing_event_queued
Definition: gdkinternals.h:266
GdkWindowPaint * implicit_paint
Definition: gdkinternals.h:274
GdkInputWindow * input_window
Definition: gdkinternals.h:275
GSList * paint_stack
Definition: gdkinternals.h:225
GdkWindowObject * parent
Definition: gdkinternals.h:210
GdkWindowObject * impl_window
Definition: gdkinternals.h:258
GList * outstanding_moves
Definition: gdkinternals.h:277
GdkWindowRedirect * redirect
Definition: gdkinternals.h:251
GdkRegion * shape
Definition: gdkinternals.h:279
guint effective_visibility
Definition: gdkinternals.h:267
GdkWindowState state
Definition: gdkinternals.h:234
cairo_pattern_t * background
Definition: gdkinternals.h:285
gpointer user_data
Definition: gdkinternals.h:212
GdkRegion * clip_region_with_children
Definition: gdkinternals.h:263
gint height
Definition: xcursors.h:1
gint width
Definition: xcursors.h:1