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