]> Pileus Git - ~andy/gtk/blob - docs/reference/gdk/tmpl/windows.sgml
2.7.1
[~andy/gtk] / docs / reference / gdk / tmpl / windows.sgml
1 <!-- ##### SECTION Title ##### -->
2 Windows
3
4 <!-- ##### SECTION Short_Description ##### -->
5 Onscreen display areas in the target window system
6
7 <!-- ##### SECTION Long_Description ##### -->
8 <para>
9 A #GdkWindow is a rectangular region on the screen. It's a low-level object,
10 used to implement high-level objects such as #GtkWidget and #GtkWindow on the
11 GTK+ level. A #GtkWindow is a toplevel window, the thing a user might think of 
12 as a "window" with a titlebar and so on; a #GtkWindow may contain many #GdkWindow. 
13 For example, each #GtkButton has a #GdkWindow associated with it.
14 </para>
15
16 <!-- ##### SECTION See_Also ##### -->
17 <para>
18
19 </para>
20
21 <!-- ##### SECTION Stability_Level ##### -->
22
23
24 <!-- ##### STRUCT GdkWindow ##### -->
25 <para>
26 An opaque structure representing an onscreen drawable.
27 Pointers to structures of type #GdkPixmap, #GdkBitmap,
28 and #GdkWindow, can often be used interchangeably.
29 The type #GdkDrawable refers generically to any of
30 these types.
31 </para>
32
33
34 <!-- ##### ENUM GdkWindowType ##### -->
35 <para>
36 Describes the kind of window.
37 </para>
38
39 @GDK_WINDOW_ROOT: root window; this window has no parent, covers the entire screen, and is created by the window system
40 @GDK_WINDOW_TOPLEVEL: toplevel window (used to implement #GtkWindow)
41 @GDK_WINDOW_CHILD: child window (used to implement e.g. #GtkButton)
42 @GDK_WINDOW_DIALOG: useless/deprecated compatibility type
43 @GDK_WINDOW_TEMP: override redirect temporary window (used to implement #GtkMenu)
44 @GDK_WINDOW_FOREIGN: foreign window (see gdk_window_foreign_new())
45
46 <!-- ##### ENUM GdkWindowClass ##### -->
47 <para>
48 @GDK_INPUT_OUTPUT windows are the standard kind of window you might expect. 
49 @GDK_INPUT_ONLY windows are invisible; they are used to trap events, but 
50 you can't draw on them.
51 </para>
52
53 @GDK_INPUT_OUTPUT: window for graphics and events
54 @GDK_INPUT_ONLY: window for events only
55
56 <!-- ##### ENUM GdkWindowHints ##### -->
57 <para>
58 Used to indicate which fields of a #GdkGeometry struct should be paid attention
59 to. Also, the presence/absence of @GDK_HINT_POS, @GDK_HINT_USER_POS, and
60 @GDK_HINT_USER_SIZE is significant, though they don't directly refer to
61 #GdkGeometry fields.  @GDK_HINT_USER_POS will be set automatically by #GtkWindow
62 if you call gtk_window_move(). @GDK_HINT_USER_POS and @GDK_HINT_USER_SIZE 
63 should be set if the user specified a size/position using a --geometry 
64 command-line argument; gtk_window_parse_geometry() automatically sets these
65 flags.
66 </para>
67
68 @GDK_HINT_POS: indicates that the program has positioned the window
69 @GDK_HINT_MIN_SIZE: min size fields are set
70 @GDK_HINT_MAX_SIZE: max size fields are set
71 @GDK_HINT_BASE_SIZE: base size fields are set
72 @GDK_HINT_ASPECT: aspect ratio fields are set
73 @GDK_HINT_RESIZE_INC: resize increment fields are set
74 @GDK_HINT_WIN_GRAVITY: window gravity field is set
75 @GDK_HINT_USER_POS: indicates that the window's position was explicitly set by the user
76 @GDK_HINT_USER_SIZE: indicates that the window's size was explicitly set by the user
77
78 <!-- ##### STRUCT GdkGeometry ##### -->
79 <para>
80 The #GdkGeometry struct gives the window manager information about 
81 a window's geometry constraints. Normally you would set these on 
82 the GTK+ level using gtk_window_set_geometry_hints(). #GtkWindow 
83 then sets the hints on the #GdkWindow it creates.
84 </para>
85
86 <para>
87 gdk_window_set_geometry_hints() expects the hints to be fully valid already and
88 simply passes them to the window manager; in contrast,
89 gtk_window_set_geometry_hints() performs some interpretation. For example,
90 #GtkWindow will apply the hints to the geometry widget instead of the toplevel
91 window, if you set a geometry widget. Also, the
92 @min_width/@min_height/@max_width/@max_height fields may be set to -1, and
93 #GtkWindow will substitute the size request of the window or geometry widget. If
94 the minimum size hint is not provided, #GtkWindow will use its requisition as
95 the minimum size.  If the minimum size is provided and a geometry widget is set,
96 #GtkWindow will take the minimum size as the minimum size of the geometry widget
97 rather than the entire window. The base size is treated similarly.
98 </para>
99
100 <para>
101 The canonical use-case for gtk_window_set_geometry_hints() is to get a terminal
102 widget to resize properly. Here, the terminal text area should be the geometry
103 widget; #GtkWindow will then automatically set the base size to the size of
104 other widgets in the terminal window, such as the menubar and scrollbar.  Then,
105 the @width_inc and @height_inc fields should be set to the size of one character
106 in the terminal. Finally, the base size should be set to the size of one
107 character. The net effect is that the minimum size of the terminal 
108 will have a 1x1 character terminal area, and only terminal sizes on 
109 the "character grid" will be allowed.
110 </para>
111
112 <para>
113 Here's an example of how the terminal example would be implemented, assuming 
114 a terminal area widget called "terminal" and a toplevel window "toplevel":
115 <informalexample><programlisting>
116         GdkGeometry hints;
117
118         hints.base_width = terminal->char_width;
119         hints.base_height = terminal->char_height;
120         hints.min_width = terminal->char_width;
121         hints.min_height = terminal->char_height;
122         hints.width_inc = terminal->char_width;
123         hints.height_inc = terminal->char_height;
124
125         gtk_window_set_geometry_hints (GTK_WINDOW (toplevel),
126                                        GTK_WIDGET (terminal),
127                                        &amp;hints,
128                                        GDK_HINT_RESIZE_INC |
129                                        GDK_HINT_MIN_SIZE |
130                                        GDK_HINT_BASE_SIZE);
131 </programlisting></informalexample>
132 </para>
133
134 <para>
135 The other useful fields are the @min_aspect and @max_aspect fields; these
136 contain a width/height ratio as a floating point number. If a geometry widget is
137 set, the aspect applies to the geometry widget rather than the entire window.
138 The most common use of these hints is probably to set @min_aspect and
139 @max_aspect to the same value, thus forcing the window to keep a constant aspect
140 ratio.
141 </para>
142
143 @min_width: minimum width of window (or -1 to use requisition, with #GtkWindow only)
144 @min_height minimum height of window (or -1 to use requisition, with #GtkWindow only)
145 @min_height: 
146 @max_width: maximum width of window (or -1 to use requisition, with #GtkWindow only)
147 @max_height: maximum height of window (or -1 to use requisition, with #GtkWindow only)
148 @base_width: allowed window widths are @base_width + @width_inc * N where N is any integer (-1 allowed with #GtkWindow)
149 @base_height: allowed window widths are @base_height + @height_inc * N where N is any integer (-1 allowed with #GtkWindow)
150 @width_inc: width resize increment
151 @height_inc: height resize increment
152 @min_aspect: minimum width/height ratio
153 @max_aspect: maximum width/height ratio
154 @win_gravity: window gravity, see gtk_window_set_gravity()
155
156 <!-- ##### ENUM GdkGravity ##### -->
157 <para>
158 Defines the reference point of a window and the meaning of coordinates
159 passed to gtk_window_move(). See gtk_window_move() and the "implementation 
160 notes" section of the 
161 <ulink url="http://www.freedesktop.org/standards/wm-spec">extended 
162 window manager hints</ulink> specification for more details.
163 </para>
164
165 @GDK_GRAVITY_NORTH_WEST: the reference point is at the top left corner.
166 @GDK_GRAVITY_NORTH: the reference point is in the middle of the top edge.
167 @GDK_GRAVITY_NORTH_EAST: the reference point is at the top right corner.
168 @GDK_GRAVITY_WEST: the reference point is at the middle of the left edge.
169 @GDK_GRAVITY_CENTER: the reference point is at the center of the window.
170 @GDK_GRAVITY_EAST: the reference point is at the middle of the right edge.
171 @GDK_GRAVITY_SOUTH_WEST: the reference point is at the lower left corner.
172 @GDK_GRAVITY_SOUTH: the reference point is at the middle of the lower edge.
173 @GDK_GRAVITY_SOUTH_EAST: the reference point is at the lower right corner.
174 @GDK_GRAVITY_STATIC: the reference point is at the top left corner of the 
175    window itself, ignoring window manager decorations.
176
177 <!-- ##### ENUM GdkWindowEdge ##### -->
178 <para>
179 Determines a window edge or corner. 
180 </para>
181
182 @GDK_WINDOW_EDGE_NORTH_WEST: the top left corner.
183 @GDK_WINDOW_EDGE_NORTH: the top edge.
184 @GDK_WINDOW_EDGE_NORTH_EAST: the top right corner.
185 @GDK_WINDOW_EDGE_WEST: the left edge.
186 @GDK_WINDOW_EDGE_EAST: the right edge.
187 @GDK_WINDOW_EDGE_SOUTH_WEST: the lower left corner.
188 @GDK_WINDOW_EDGE_SOUTH: the lower edge.
189 @GDK_WINDOW_EDGE_SOUTH_EAST: the lower right corner.
190
191 <!-- ##### ENUM GdkWindowTypeHint ##### -->
192 <para>
193 These are hints for the window manager that indicate what type of function 
194 the window has. The window manager can use this when determining decoration 
195 and behaviour of the window. The hint must be set before mapping the window.
196 </para>
197 <para>
198 See the
199 <ulink url="http://www.freedesktop.org/standards/wm-spec">extended 
200 window manager hints</ulink> specification for more details about 
201 window types.
202 </para>
203
204 @GDK_WINDOW_TYPE_HINT_NORMAL: Normal toplevel window.
205 @GDK_WINDOW_TYPE_HINT_DIALOG: Dialog window.
206 @GDK_WINDOW_TYPE_HINT_MENU: Window used to implement a menu.
207 @GDK_WINDOW_TYPE_HINT_TOOLBAR: Window used to implement toolbars.
208 @GDK_WINDOW_TYPE_HINT_SPLASHSCREEN: Window used to display a splash 
209   screen during application startup.
210 @GDK_WINDOW_TYPE_HINT_UTILITY: Utility windows which are not detached 
211   toolbars or dialogs.
212 @GDK_WINDOW_TYPE_HINT_DOCK: Used for creating dock or panel windows.
213 @GDK_WINDOW_TYPE_HINT_DESKTOP: Used for creating the desktop background 
214 window.
215
216 <!-- ##### STRUCT GdkWindowAttr ##### -->
217 <para>
218 Attributes to use for a newly-created window.
219 </para>
220
221 @title: title of the window (for toplevel windows)
222 @event_mask: event mask (see gdk_window_set_events())
223 @x: X coordinate relative to parent window (see gdk_window_move())
224 @y: Y coordinate relative to parent window (see gdk_window_move())
225 @width: width of window
226 @height: height of window
227 @wclass: #GDK_INPUT_OUTPUT (normal window) or #GDK_INPUT_ONLY (invisible window that receives events)
228 @visual: #GdkVisual for window
229 @colormap: #GdkColormap for window
230 @window_type: type of window
231 @cursor: cursor for the window (see gdk_window_set_cursor())
232 @wmclass_name: don't use (see gtk_window_set_wmclass())
233 @wmclass_class: don't use (see gtk_window_set_wmclass())
234 @override_redirect: %TRUE to bypass the window manager
235
236 <!-- ##### ENUM GdkWindowAttributesType ##### -->
237 <para>
238 Used to indicate which fields in the #GdkWindowAttr struct should be
239 honored. For example, if you filled in the "cursor" and "x" fields of
240 #GdkWindowAttr, pass "@GDK_WA_X | @GDK_WA_CURSOR" to gdk_window_new().  Fields
241 in #GdkWindowAttr not covered by a bit in this enum are required; for example,
242 the @width/@height, @wclass, and @window_type fields are required, they have no
243 corresponding flag in #GdkWindowAttributesType.
244 </para>
245
246 @GDK_WA_TITLE: Honor the title field
247 @GDK_WA_X: Honor the X coordinate field
248 @GDK_WA_Y: Honor the Y coordinate field
249 @GDK_WA_CURSOR: Honor the cursor field
250 @GDK_WA_COLORMAP: Honor the colormap field
251 @GDK_WA_VISUAL: Honor the visual field
252 @GDK_WA_WMCLASS: Honor the wmclass_class and wmclass_name fields
253 @GDK_WA_NOREDIR: Honor the override_redirect field
254
255 <!-- ##### FUNCTION gdk_window_new ##### -->
256 <para>
257
258 </para>
259
260 @parent: 
261 @attributes: 
262 @attributes_mask: 
263 @Returns: 
264
265
266 <!-- ##### FUNCTION gdk_window_destroy ##### -->
267 <para>
268
269 </para>
270
271 @window: 
272
273
274 <!-- ##### MACRO gdk_window_ref ##### -->
275 <para>
276 Deprecated equivalent of g_object_ref()
277 </para>
278
279 @Returns: the window
280
281
282 <!-- ##### MACRO gdk_window_unref ##### -->
283 <para>
284 Deprecated equivalent of g_object_unref()
285 </para>
286
287
288
289 <!-- ##### FUNCTION gdk_window_get_window_type ##### -->
290 <para>
291
292 </para>
293
294 @window: 
295 @Returns: 
296
297
298 <!-- ##### FUNCTION gdk_window_at_pointer ##### -->
299 <para>
300
301 </para>
302
303 @win_x: 
304 @win_y: 
305 @Returns: 
306
307
308 <!-- ##### FUNCTION gdk_window_show ##### -->
309 <para>
310
311 </para>
312
313 @window: 
314
315
316 <!-- ##### FUNCTION gdk_window_show_unraised ##### -->
317 <para>
318
319 </para>
320
321 @window: 
322
323
324 <!-- ##### FUNCTION gdk_window_hide ##### -->
325 <para>
326
327 </para>
328
329 @window: 
330
331
332 <!-- ##### FUNCTION gdk_window_is_visible ##### -->
333 <para>
334
335 </para>
336
337 @window: 
338 @Returns: 
339
340
341 <!-- ##### FUNCTION gdk_window_is_viewable ##### -->
342 <para>
343
344 </para>
345
346 @window: 
347 @Returns: 
348
349
350 <!-- ##### FUNCTION gdk_window_get_state ##### -->
351 <para>
352
353 </para>
354
355 @window: 
356 @Returns: 
357
358
359 <!-- ##### FUNCTION gdk_window_withdraw ##### -->
360 <para>
361
362 </para>
363
364 @window: 
365
366
367 <!-- ##### FUNCTION gdk_window_iconify ##### -->
368 <para>
369
370 </para>
371
372 @window: 
373
374
375 <!-- ##### FUNCTION gdk_window_deiconify ##### -->
376 <para>
377
378 </para>
379
380 @window: 
381
382
383 <!-- ##### FUNCTION gdk_window_stick ##### -->
384 <para>
385
386 </para>
387
388 @window: 
389
390
391 <!-- ##### FUNCTION gdk_window_unstick ##### -->
392 <para>
393
394 </para>
395
396 @window: 
397
398
399 <!-- ##### FUNCTION gdk_window_maximize ##### -->
400 <para>
401
402 </para>
403
404 @window: 
405
406
407 <!-- ##### FUNCTION gdk_window_unmaximize ##### -->
408 <para>
409
410 </para>
411
412 @window: 
413
414
415 <!-- ##### FUNCTION gdk_window_fullscreen ##### -->
416 <para>
417
418 </para>
419
420 @window: 
421
422
423 <!-- ##### FUNCTION gdk_window_unfullscreen ##### -->
424 <para>
425
426 </para>
427
428 @window: 
429
430
431 <!-- ##### FUNCTION gdk_window_set_keep_above ##### -->
432 <para>
433
434 </para>
435
436 @window: 
437 @setting: 
438
439
440 <!-- ##### FUNCTION gdk_window_set_keep_below ##### -->
441 <para>
442
443 </para>
444
445 @window: 
446 @setting: 
447
448
449 <!-- ##### FUNCTION gdk_window_move ##### -->
450 <para>
451
452 </para>
453
454 @window: 
455 @x: 
456 @y: 
457
458
459 <!-- ##### FUNCTION gdk_window_resize ##### -->
460 <para>
461
462 </para>
463
464 @window: 
465 @width: 
466 @height: 
467
468
469 <!-- ##### FUNCTION gdk_window_move_resize ##### -->
470 <para>
471
472 </para>
473
474 @window: 
475 @x: 
476 @y: 
477 @width: 
478 @height: 
479
480
481 <!-- ##### FUNCTION gdk_window_scroll ##### -->
482 <para>
483
484 </para>
485
486 @window: 
487 @dx: 
488 @dy: 
489
490
491 <!-- ##### FUNCTION gdk_window_move_region ##### -->
492 <para>
493
494 </para>
495
496 @window: 
497 @region: 
498 @dx: 
499 @dy: 
500
501
502 <!-- ##### FUNCTION gdk_window_reparent ##### -->
503 <para>
504
505 </para>
506
507 @window: 
508 @new_parent: 
509 @x: 
510 @y: 
511
512
513 <!-- ##### FUNCTION gdk_window_clear ##### -->
514 <para>
515
516 </para>
517
518 @window: 
519
520
521 <!-- ##### FUNCTION gdk_window_clear_area ##### -->
522 <para>
523
524 </para>
525
526 @window: 
527 @x: 
528 @y: 
529 @width: 
530 @height: 
531
532
533 <!-- ##### FUNCTION gdk_window_clear_area_e ##### -->
534 <para>
535
536 </para>
537
538 @window: 
539 @x: 
540 @y: 
541 @width: 
542 @height: 
543
544
545 <!-- ##### MACRO gdk_window_copy_area ##### -->
546 <para>
547 Deprecated equivalent to gdk_draw_drawable(), see that function for docs
548 </para>
549
550 @drawable: a #GdkDrawable
551 @gc: a #GdkGC sharing the drawable's visual and colormap
552 @x: X position in @drawable where the rectangle should be drawn
553 @y: Y position in @drawable where the rectangle should be drawn
554 @source_drawable: the source #GdkDrawable, which may be the same as @drawable
555 @source_x: X position in @src of rectangle to draw
556 @source_y: Y position in @src of rectangle to draw
557 @width: width of rectangle to draw, or -1 for entire @src width
558 @height: height of rectangle to draw, or -1 for entire @src height
559 <!-- # Unused Parameters # -->
560 @drawable: a #GdkDrawable
561 @xdest: X position in @drawable where the rectangle should be drawn
562 @ydest: Y position in @drawable where the rectangle should be drawn
563
564
565 <!-- ##### FUNCTION gdk_window_raise ##### -->
566 <para>
567
568 </para>
569
570 @window: 
571
572
573 <!-- ##### FUNCTION gdk_window_lower ##### -->
574 <para>
575
576 </para>
577
578 @window: 
579
580
581 <!-- ##### FUNCTION gdk_window_focus ##### -->
582 <para>
583
584 </para>
585
586 @window: 
587 @timestamp: 
588
589
590 <!-- ##### FUNCTION gdk_window_register_dnd ##### -->
591 <para>
592 Registers a window as a potential drop destination.
593 </para>
594
595 @window: a #GdkWindow.
596
597
598 <!-- ##### FUNCTION gdk_window_begin_resize_drag ##### -->
599 <para>
600
601 </para>
602
603 @window: 
604 @edge: 
605 @button: 
606 @root_x: 
607 @root_y: 
608 @timestamp: 
609
610
611 <!-- ##### FUNCTION gdk_window_begin_move_drag ##### -->
612 <para>
613
614 </para>
615
616 @window: 
617 @button: 
618 @root_x: 
619 @root_y: 
620 @timestamp: 
621
622
623 <!-- ##### FUNCTION gdk_window_constrain_size ##### -->
624 <para>
625
626 </para>
627
628 @geometry: 
629 @flags: 
630 @width: 
631 @height: 
632 @new_width: 
633 @new_height: 
634
635
636 <!-- ##### FUNCTION gdk_window_begin_paint_rect ##### -->
637 <para>
638
639 </para>
640
641 @window: 
642 @rectangle: 
643
644
645 <!-- ##### FUNCTION gdk_window_begin_paint_region ##### -->
646 <para>
647
648 </para>
649
650 @window: 
651 @region: 
652
653
654 <!-- ##### FUNCTION gdk_window_end_paint ##### -->
655 <para>
656
657 </para>
658
659 @window: 
660
661
662 <!-- ##### FUNCTION gdk_window_invalidate_rect ##### -->
663 <para>
664
665 </para>
666
667 @window: 
668 @rect: 
669 @invalidate_children: 
670
671
672 <!-- ##### FUNCTION gdk_window_invalidate_region ##### -->
673 <para>
674
675 </para>
676
677 @window: 
678 @region: 
679 @invalidate_children: 
680
681
682 <!-- ##### FUNCTION gdk_window_invalidate_maybe_recurse ##### -->
683 <para>
684
685 </para>
686
687 @window: 
688 @region: 
689 @child_func: 
690 @user_data: 
691
692
693 <!-- ##### FUNCTION gdk_window_get_update_area ##### -->
694 <para>
695
696 </para>
697
698 @window: 
699 @Returns: 
700
701
702 <!-- ##### FUNCTION gdk_window_freeze_updates ##### -->
703 <para>
704
705 </para>
706
707 @window: 
708
709
710 <!-- ##### FUNCTION gdk_window_thaw_updates ##### -->
711 <para>
712
713 </para>
714
715 @window: 
716
717
718 <!-- ##### FUNCTION gdk_window_process_all_updates ##### -->
719 <para>
720
721 </para>
722
723
724
725 <!-- ##### FUNCTION gdk_window_process_updates ##### -->
726 <para>
727
728 </para>
729
730 @window: 
731 @update_children: 
732
733
734 <!-- ##### FUNCTION gdk_window_set_debug_updates ##### -->
735 <para>
736
737 </para>
738
739 @setting: 
740
741
742 <!-- ##### FUNCTION gdk_window_get_internal_paint_info ##### -->
743 <para>
744
745 </para>
746
747 @window: 
748 @real_drawable: 
749 @x_offset: 
750 @y_offset: 
751
752
753 <!-- ##### FUNCTION gdk_window_enable_synchronized_configure ##### -->
754 <para>
755
756 </para>
757
758 @window: 
759
760
761 <!-- ##### FUNCTION gdk_window_configure_finished ##### -->
762 <para>
763
764 </para>
765
766 @window: 
767
768
769 <!-- ##### FUNCTION gdk_window_set_user_data ##### -->
770 <para>
771
772 </para>
773
774 @window: 
775 @user_data: 
776
777
778 <!-- ##### FUNCTION gdk_window_set_override_redirect ##### -->
779 <para>
780
781 </para>
782
783 @window: 
784 @override_redirect: 
785
786
787 <!-- ##### FUNCTION gdk_window_set_accept_focus ##### -->
788 <para>
789
790 </para>
791
792 @window: 
793 @accept_focus: 
794
795
796 <!-- ##### FUNCTION gdk_window_set_focus_on_map ##### -->
797 <para>
798
799 </para>
800
801 @window: 
802 @focus_on_map: 
803
804
805 <!-- ##### FUNCTION gdk_window_add_filter ##### -->
806 <para>
807
808 </para>
809
810 @window: 
811 @function: 
812 @data: 
813
814
815 <!-- ##### FUNCTION gdk_window_remove_filter ##### -->
816 <para>
817
818 </para>
819
820 @window: 
821 @function: 
822 @data: 
823
824
825 <!-- ##### USER_FUNCTION GdkFilterFunc ##### -->
826 <para>
827 Specifies the type of function used to filter native events before they are
828 converted to GDK events. 
829 </para>
830
831 <para>
832 When a filter is called, @event is unpopulated, except for
833 <literal>event-&gt;window</literal>. The filter may translate the native
834 event to a GDK event and store the result in @event, or handle it without
835 translation. If the filter translates the event and processing should
836 continue, it should return <literal>GDK_FILTER_TRANSLATE</literal>.
837 </para>
838
839 @xevent: the native event to filter.
840 @event: the GDK event to which the X event will be translated.
841 @data: user data set when the filter was installed.
842 @Returns: a #GdkFilterReturn value.
843
844
845 <!-- ##### ENUM GdkFilterReturn ##### -->
846 <para>
847 Specifies the result of applying a #GdkFilterFunc to a native event.
848 </para>
849
850 @GDK_FILTER_CONTINUE: event not handled, continue processing.
851 @GDK_FILTER_TRANSLATE: native event translated into a GDK event and stored
852                        in the <literal>event</literal> structure that was passed in.
853 @GDK_FILTER_REMOVE: event handled, terminate processing.
854
855 <!-- ##### TYPEDEF GdkXEvent ##### -->
856 <para>
857 Used to represent native events (<type>XEvent</type>s for the X11 
858 backend, <type>MSG</type>s for Win32).
859 </para>
860
861
862 <!-- ##### FUNCTION gdk_window_shape_combine_mask ##### -->
863 <para>
864
865 </para>
866
867 @window: 
868 @mask: 
869 @x: 
870 @y: 
871
872
873 <!-- ##### FUNCTION gdk_window_shape_combine_region ##### -->
874 <para>
875
876 </para>
877
878 @window: 
879 @shape_region: 
880 @offset_x: 
881 @offset_y: 
882
883
884 <!-- ##### FUNCTION gdk_window_set_child_shapes ##### -->
885 <para>
886
887 </para>
888
889 @window: 
890
891
892 <!-- ##### FUNCTION gdk_window_merge_child_shapes ##### -->
893 <para>
894
895 </para>
896
897 @window: 
898
899
900 <!-- ##### FUNCTION gdk_window_set_static_gravities ##### -->
901 <para>
902
903 </para>
904
905 @window: 
906 @use_static: 
907 @Returns: 
908
909
910 <!-- ##### FUNCTION gdk_window_set_hints ##### -->
911 <para>
912
913 </para>
914
915 @window: 
916 @x: 
917 @y: 
918 @min_width: 
919 @min_height: 
920 @max_width: 
921 @max_height: 
922 @flags: 
923
924
925 <!-- ##### FUNCTION gdk_window_set_title ##### -->
926 <para>
927
928 </para>
929
930 @window: 
931 @title: 
932
933
934 <!-- ##### FUNCTION gdk_window_set_background ##### -->
935 <para>
936
937 </para>
938
939 @window: 
940 @color: 
941
942
943 <!-- ##### FUNCTION gdk_window_set_back_pixmap ##### -->
944 <para>
945
946 </para>
947
948 @window: 
949 @pixmap: 
950 @parent_relative: 
951
952
953 <!-- ##### MACRO GDK_PARENT_RELATIVE ##### -->
954 <para>
955 A special value for <literal>GdkPixmap*</literal> variables, indicating
956 that the background pixmap for a window should be inherited from the parent
957 window.
958 </para>
959
960
961
962 <!-- ##### FUNCTION gdk_window_set_cursor ##### -->
963 <para>
964
965 </para>
966
967 @window: 
968 @cursor: 
969
970
971 <!-- ##### MACRO gdk_window_set_colormap ##### -->
972 <para>
973 Deprecated equivalent to gdk_drawable_set_colormap()
974 </para>
975
976
977
978 <!-- ##### FUNCTION gdk_window_get_user_data ##### -->
979 <para>
980
981 </para>
982
983 @window: 
984 @data: 
985
986
987 <!-- ##### FUNCTION gdk_window_get_geometry ##### -->
988 <para>
989
990 </para>
991
992 @window: 
993 @x: 
994 @y: 
995 @width: 
996 @height: 
997 @depth: 
998
999
1000 <!-- ##### FUNCTION gdk_window_set_geometry_hints ##### -->
1001 <para>
1002
1003 </para>
1004
1005 @window: 
1006 @geometry: 
1007 @geom_mask: 
1008
1009
1010 <!-- ##### FUNCTION gdk_window_set_icon_list ##### -->
1011 <para>
1012
1013 </para>
1014
1015 @window: 
1016 @pixbufs: 
1017
1018
1019 <!-- ##### FUNCTION gdk_window_set_modal_hint ##### -->
1020 <para>
1021
1022 </para>
1023
1024 @window: 
1025 @modal: 
1026
1027
1028 <!-- ##### FUNCTION gdk_window_set_type_hint ##### -->
1029 <para>
1030
1031 </para>
1032
1033 @window: 
1034 @hint: 
1035
1036
1037 <!-- ##### FUNCTION gdk_window_set_skip_taskbar_hint ##### -->
1038 <para>
1039
1040 </para>
1041
1042 @window: 
1043 @skips_taskbar: 
1044
1045
1046 <!-- ##### FUNCTION gdk_window_set_skip_pager_hint ##### -->
1047 <para>
1048
1049 </para>
1050
1051 @window: 
1052 @skips_pager: 
1053
1054
1055 <!-- ##### FUNCTION gdk_window_set_urgency_hint ##### -->
1056 <para>
1057
1058 </para>
1059
1060 @window: 
1061 @urgent: 
1062
1063
1064 <!-- ##### FUNCTION gdk_window_get_position ##### -->
1065 <para>
1066
1067 </para>
1068
1069 @window: 
1070 @x: 
1071 @y: 
1072
1073
1074 <!-- ##### FUNCTION gdk_window_get_root_origin ##### -->
1075 <para>
1076
1077 </para>
1078
1079 @window: 
1080 @x: 
1081 @y: 
1082
1083
1084 <!-- ##### FUNCTION gdk_window_get_frame_extents ##### -->
1085 <para>
1086
1087 </para>
1088
1089 @window: 
1090 @rect: 
1091
1092
1093 <!-- ##### MACRO gdk_window_get_size ##### -->
1094 <para>
1095 Deprecated equivalent of gdk_drawable_get_size().
1096 </para>
1097
1098
1099
1100 <!-- ##### MACRO gdk_window_get_visual ##### -->
1101 <para>
1102 Deprecated equivalent of gdk_drawable_get_visual().
1103 </para>
1104
1105 @Returns: the #GdkVisual of the window
1106
1107
1108 <!-- ##### MACRO gdk_window_get_colormap ##### -->
1109 <para>
1110 Deprecated equivalent of gdk_drawable_get_colormap().
1111 </para>
1112
1113 @Returns: colormap for the window
1114
1115
1116 <!-- ##### MACRO gdk_window_get_type ##### -->
1117 <para>
1118 Deprecated equivalent of gdk_drawable_get_type().
1119 </para>
1120
1121 @Returns: type of drawable
1122
1123
1124 <!-- ##### FUNCTION gdk_window_get_origin ##### -->
1125 <para>
1126
1127 </para>
1128
1129 @window: 
1130 @x: 
1131 @y: 
1132 @Returns: 
1133
1134
1135 <!-- ##### FUNCTION gdk_window_get_deskrelative_origin ##### -->
1136 <para>
1137
1138 </para>
1139
1140 @window: 
1141 @x: 
1142 @y: 
1143 @Returns: 
1144
1145
1146 <!-- ##### FUNCTION gdk_window_get_pointer ##### -->
1147 <para>
1148
1149 </para>
1150
1151 @window: 
1152 @x: 
1153 @y: 
1154 @mask: 
1155 @Returns: 
1156
1157
1158 <!-- ##### ENUM GdkModifierType ##### -->
1159 <para>
1160 A set of bit-flags to indicate the state of modifier keys and mouse buttons 
1161 in various event types. Typical modifier keys are Shift, Control, Meta, Super,
1162 Hyper, Alt, Compose, Apple, CapsLock or ShiftLock. 
1163 </para>
1164 <para>
1165 Like the X Window System, GDK supports 8 modifier keys and 5 mouse buttons.
1166 </para>
1167
1168 @GDK_SHIFT_MASK: the Shift key.
1169 @GDK_LOCK_MASK: a Lock key (depending on the modifier mapping of the 
1170   X server this may either be CapsLock or ShiftLock).
1171 @GDK_CONTROL_MASK: the Control key.
1172 @GDK_MOD1_MASK: the fourth modifier key (it depends on the modifier 
1173   mapping of the X server which key is interpreted as this modifier, but 
1174   normally it is the Alt key).
1175 @GDK_MOD2_MASK: the fifth modifier key (it depends on the modifier 
1176   mapping of the X server which key is interpreted as this modifier).
1177 @GDK_MOD3_MASK: the sixth modifier key (it depends on the modifier 
1178   mapping of the X server which key is interpreted as this modifier).
1179 @GDK_MOD4_MASK: the seventh modifier key (it depends on the modifier 
1180   mapping of the X server which key is interpreted as this modifier).
1181 @GDK_MOD5_MASK: the eighth modifier key (it depends on the modifier 
1182   mapping of the X server which key is interpreted as this modifier).
1183 @GDK_BUTTON1_MASK: the first mouse button.
1184 @GDK_BUTTON2_MASK: the second mouse button.
1185 @GDK_BUTTON3_MASK: the third mouse button.
1186 @GDK_BUTTON4_MASK: the fourth mouse button.
1187 @GDK_BUTTON5_MASK: the fifth mouse button.
1188 @GDK_RELEASE_MASK: not used in GDK itself. GTK+ uses it to differentiate 
1189   between (keyval, modifiers) pairs from key press and release events.
1190 @GDK_MODIFIER_MASK: a mask covering all modifier types.
1191
1192 <!-- ##### FUNCTION gdk_window_get_parent ##### -->
1193 <para>
1194
1195 </para>
1196
1197 @window: 
1198 @Returns: 
1199
1200
1201 <!-- ##### FUNCTION gdk_window_get_toplevel ##### -->
1202 <para>
1203
1204 </para>
1205
1206 @window: 
1207 @Returns: 
1208
1209
1210 <!-- ##### FUNCTION gdk_window_get_children ##### -->
1211 <para>
1212
1213 </para>
1214
1215 @window: 
1216 @Returns: 
1217
1218
1219 <!-- ##### FUNCTION gdk_window_peek_children ##### -->
1220 <para>
1221
1222 </para>
1223
1224 @window: 
1225 @Returns: 
1226
1227
1228 <!-- ##### FUNCTION gdk_window_get_events ##### -->
1229 <para>
1230
1231 </para>
1232
1233 @window: 
1234 @Returns: 
1235
1236
1237 <!-- ##### FUNCTION gdk_window_set_events ##### -->
1238 <para>
1239
1240 </para>
1241
1242 @window: 
1243 @event_mask: 
1244
1245
1246 <!-- ##### FUNCTION gdk_window_set_icon ##### -->
1247 <para>
1248
1249 </para>
1250
1251 @window: 
1252 @icon_window: 
1253 @pixmap: 
1254 @mask: 
1255
1256
1257 <!-- ##### FUNCTION gdk_window_set_icon_name ##### -->
1258 <para>
1259
1260 </para>
1261
1262 @window: 
1263 @name: 
1264
1265
1266 <!-- ##### FUNCTION gdk_window_set_transient_for ##### -->
1267 <para>
1268
1269 </para>
1270
1271 @window: 
1272 @parent: 
1273
1274
1275 <!-- ##### FUNCTION gdk_window_set_role ##### -->
1276 <para>
1277
1278 </para>
1279
1280 @window: 
1281 @role: 
1282
1283
1284 <!-- ##### FUNCTION gdk_window_set_group ##### -->
1285 <para>
1286
1287 </para>
1288
1289 @window: 
1290 @leader: 
1291
1292
1293 <!-- ##### FUNCTION gdk_window_get_group ##### -->
1294 <para>
1295
1296 </para>
1297
1298 @window: 
1299 @Returns: 
1300
1301
1302 <!-- ##### FUNCTION gdk_window_set_decorations ##### -->
1303 <para>
1304
1305 </para>
1306
1307 @window: 
1308 @decorations: 
1309
1310
1311 <!-- ##### FUNCTION gdk_window_get_decorations ##### -->
1312 <para>
1313
1314 </para>
1315
1316 @window: The window to get the decorations from
1317 @decorations: The window decorations will be written here
1318 @Returns: %TRUE if the window has decorations set, %FALSE otherwise.
1319
1320
1321 <!-- ##### ENUM GdkWMDecoration ##### -->
1322 <para>
1323 These are hints originally defined by the Motif toolkit.
1324 The window manager can use them when determining how to decorate
1325 the window. The hint must be set before mapping the window.
1326 </para>
1327
1328 @GDK_DECOR_ALL: all decorations should be applied.
1329 @GDK_DECOR_BORDER: a frame should be drawn around the window.
1330 @GDK_DECOR_RESIZEH: the frame should have resize handles.
1331 @GDK_DECOR_TITLE: a titlebar should be placed above the window.
1332 @GDK_DECOR_MENU: a button for opening a menu should be included.
1333 @GDK_DECOR_MINIMIZE: a minimize button should be included.
1334 @GDK_DECOR_MAXIMIZE: a maximize button should be included.
1335
1336 <!-- ##### FUNCTION gdk_window_set_functions ##### -->
1337 <para>
1338
1339 </para>
1340
1341 @window: 
1342 @functions: 
1343
1344
1345 <!-- ##### ENUM GdkWMFunction ##### -->
1346 <para>
1347 These are hints originally defined by the Motif toolkit.
1348 The window manager can use them when determining the functions 
1349 to offer for the window. 
1350 The hint must be set before mapping the window.
1351 </para>
1352
1353 @GDK_FUNC_ALL: all functions should be offered.
1354 @GDK_FUNC_RESIZE: the window should be resizable.
1355 @GDK_FUNC_MOVE: the window should be movable.
1356 @GDK_FUNC_MINIMIZE: the window should be minimizable.
1357 @GDK_FUNC_MAXIMIZE: the window should be maximizable.
1358 @GDK_FUNC_CLOSE: the window should be closable.
1359
1360 <!-- ##### FUNCTION gdk_window_get_toplevels ##### -->
1361 <para>
1362
1363 </para>
1364
1365 @Returns: 
1366
1367
1368 <!-- ##### FUNCTION gdk_get_default_root_window ##### -->
1369 <para>
1370
1371 </para>
1372
1373 @Returns: 
1374
1375
1376 <!-- ##### STRUCT GdkPointerHooks ##### -->
1377 <para>
1378 A table of pointers to functions for getting quantities related to 
1379 the current pointer position. GDK has one global table of this type,
1380 which can be set using gdk_set_pointer_hooks().
1381 </para>
1382 <para>
1383 This is only useful for such low-level tools as an event recorder. 
1384 Applications should never have any reason to use this facility
1385 </para>
1386
1387 @get_pointer: Obtains the current pointer position and modifier state.
1388   The position is given in coordinates relative to the window containing 
1389   the pointer, which is returned in @window.
1390 @window_at_pointer: Obtains the window underneath the mouse pointer, 
1391   returning the location of that window in @win_x, @win_y. Returns %NULL 
1392   if the window under the mouse pointer is not known to GDK (for example, 
1393   belongs to another application).
1394
1395 <!-- ##### FUNCTION gdk_set_pointer_hooks ##### -->
1396 <para>
1397
1398 </para>
1399
1400 @new_hooks: 
1401 @Returns: 
1402
1403
1404 <!--
1405 Local variables:
1406 mode: sgml
1407 sgml-parent-document: ("../gdk-docs.sgml" "book" "refsect2" "")
1408 End:
1409 -->
1410
1411