Ardour  9.0-pre0-582-g084a23a80d
ydkmm/ydkmm/gdkmm/window.h
Go to the documentation of this file.
1 // -*- c++ -*-
2 // Generated by gmmproc 2.45.3 -- DO NOT MODIFY!
3 #ifndef _GDKMM_WINDOW_H
4 #define _GDKMM_WINDOW_H
5 
6 #include <gdkmmconfig.h>
7 
8 
9 #include <glibmm/ustring.h>
10 #include <sigc++/sigc++.h>
11 
12 /* Copyright(C) 1998-2002 The gtkmm Development Team
13  *
14  * This library is free software; you can redistribute it and/or
15  * modify it under the terms of the GNU Lesser General Public
16  * License as published by the Free Software Foundation; either
17  * version 2.1 of the License or(at your option) any later version.
18  *
19  * This library is distributed in the hope that it will be useful
20  * but WITHOUT ANY WARRANTY; without even the implied warranty of
21  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
22  * Lesser General Public License for more details.
23  *
24  * You should have received a copy of the GNU Lesser General Public
25  * License along with this library; if not write to the Free
26  * Software Foundation Inc. 675 Mass Ave Cambridge MA 02139 USA.
27  */
28 
29 
30 #include <gdkmm/region.h>
31 #include <gdkmm/drawable.h>
32 #include <gdkmm/bitmap.h>
33 //#include <gdkmm/cursor.h>
34 #include <gdkmm/dragcontext.h>
35 #include <gdkmm/types.h>
36 
37 
38 #ifndef DOXYGEN_SHOULD_SKIP_THIS
39 extern "C" {
40 // Custom struct prototype, because this isn't what the code-generator expects:
41 typedef struct _GdkDrawable GdkWindow;
42 } // extern "C"
43 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
44 
45 #ifndef DOXYGEN_SHOULD_SKIP_THIS
46 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
47 
48 
49 #ifndef DOXYGEN_SHOULD_SKIP_THIS
50 namespace Gdk
51 { class Window_Class; } // namespace Gdk
52 #endif //DOXYGEN_SHOULD_SKIP_THIS
53 
54 namespace Gdk
55 {
56 
72 {
73  EXPOSURE_MASK = 1 << 1,
82  KEY_PRESS_MASK = 1 << 10,
83  KEY_RELEASE_MASK = 1 << 11,
84  ENTER_NOTIFY_MASK = 1 << 12,
85  LEAVE_NOTIFY_MASK = 1 << 13,
86  FOCUS_CHANGE_MASK = 1 << 14,
87  STRUCTURE_MASK = 1 << 15,
90  PROXIMITY_IN_MASK = 1 << 18,
91  PROXIMITY_OUT_MASK = 1 << 19,
92  SUBSTRUCTURE_MASK = 1 << 20,
93  SCROLL_MASK = 1 << 21,
94  TOUCH_BEGIN_MASK = 1 << 22,
95  TOUCH_UPDATE_MASK = 1 << 23,
96  TOUCH_END_MASK = 1 << 24,
97  ALL_EVENTS_MASK = 0x3FFFFE
98 };
99 
102  { return static_cast<EventMask>(static_cast<unsigned>(lhs) | static_cast<unsigned>(rhs)); }
103 
106  { return static_cast<EventMask>(static_cast<unsigned>(lhs) & static_cast<unsigned>(rhs)); }
107 
110  { return static_cast<EventMask>(static_cast<unsigned>(lhs) ^ static_cast<unsigned>(rhs)); }
111 
114  { return static_cast<EventMask>(~static_cast<unsigned>(flags)); }
115 
118  { return (lhs = static_cast<EventMask>(static_cast<unsigned>(lhs) | static_cast<unsigned>(rhs))); }
119 
122  { return (lhs = static_cast<EventMask>(static_cast<unsigned>(lhs) & static_cast<unsigned>(rhs))); }
123 
126  { return (lhs = static_cast<EventMask>(static_cast<unsigned>(lhs) ^ static_cast<unsigned>(rhs))); }
127 
128 } // namespace Gdk
129 
130 
131 #ifndef DOXYGEN_SHOULD_SKIP_THIS
132 namespace Glib
133 {
134 
135 template <>
136 class Value<Gdk::EventMask> : public Glib::Value_Flags<Gdk::EventMask>
137 {
138 public:
139  static GType value_type() G_GNUC_CONST;
140 };
141 
142 } // namespace Glib
143 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
144 
145 
146 namespace Gdk
147 {
148 
162 {
169  WINDOW_STATE_BELOW = 1 << 6
170 };
171 
174  { return static_cast<WindowState>(static_cast<unsigned>(lhs) | static_cast<unsigned>(rhs)); }
175 
178  { return static_cast<WindowState>(static_cast<unsigned>(lhs) & static_cast<unsigned>(rhs)); }
179 
182  { return static_cast<WindowState>(static_cast<unsigned>(lhs) ^ static_cast<unsigned>(rhs)); }
183 
186  { return static_cast<WindowState>(~static_cast<unsigned>(flags)); }
187 
190  { return (lhs = static_cast<WindowState>(static_cast<unsigned>(lhs) | static_cast<unsigned>(rhs))); }
191 
194  { return (lhs = static_cast<WindowState>(static_cast<unsigned>(lhs) & static_cast<unsigned>(rhs))); }
195 
198  { return (lhs = static_cast<WindowState>(static_cast<unsigned>(lhs) ^ static_cast<unsigned>(rhs))); }
199 
200 } // namespace Gdk
201 
202 
203 #ifndef DOXYGEN_SHOULD_SKIP_THIS
204 namespace Glib
205 {
206 
207 template <>
208 class Value<Gdk::WindowState> : public Glib::Value_Flags<Gdk::WindowState>
209 {
210 public:
211  static GType value_type() G_GNUC_CONST;
212 };
213 
214 } // namespace Glib
215 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
216 
217 
218 namespace Gdk
219 {
220 
226 {
234 };
235 
236 } // namespace Gdk
237 
238 
239 #ifndef DOXYGEN_SHOULD_SKIP_THIS
240 namespace Glib
241 {
242 
243 template <>
244 class Value<Gdk::WindowType> : public Glib::Value_Enum<Gdk::WindowType>
245 {
246 public:
247  static GType value_type() G_GNUC_CONST;
248 };
249 
250 } // namespace Glib
251 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
252 
253 
254 namespace Gdk
255 {
256 
270 {
271  WA_TITLE = 1 << 1,
272  WA_X = 1 << 2,
273  WA_Y = 1 << 3,
274  WA_CURSOR = 1 << 4,
275  WA_COLORMAP = 1 << 5,
276  WA_VISUAL = 1 << 6,
277  WA_WMCLASS = 1 << 7,
278  WA_NOREDIR = 1 << 8,
279  WA_TYPE_HINT = 1 << 9
280 };
281 
284  { return static_cast<WindowAttributesType>(static_cast<unsigned>(lhs) | static_cast<unsigned>(rhs)); }
285 
288  { return static_cast<WindowAttributesType>(static_cast<unsigned>(lhs) & static_cast<unsigned>(rhs)); }
289 
292  { return static_cast<WindowAttributesType>(static_cast<unsigned>(lhs) ^ static_cast<unsigned>(rhs)); }
293 
296  { return static_cast<WindowAttributesType>(~static_cast<unsigned>(flags)); }
297 
300  { return (lhs = static_cast<WindowAttributesType>(static_cast<unsigned>(lhs) | static_cast<unsigned>(rhs))); }
301 
304  { return (lhs = static_cast<WindowAttributesType>(static_cast<unsigned>(lhs) & static_cast<unsigned>(rhs))); }
305 
308  { return (lhs = static_cast<WindowAttributesType>(static_cast<unsigned>(lhs) ^ static_cast<unsigned>(rhs))); }
309 
310 } // namespace Gdk
311 
312 
313 #ifndef DOXYGEN_SHOULD_SKIP_THIS
314 namespace Glib
315 {
316 
317 template <>
318 class Value<Gdk::WindowAttributesType> : public Glib::Value_Flags<Gdk::WindowAttributesType>
319 {
320 public:
321  static GType value_type() G_GNUC_CONST;
322 };
323 
324 } // namespace Glib
325 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
326 
327 
328 namespace Gdk
329 {
330 
344 {
345  HINT_POS = 1 << 0,
346  HINT_MIN_SIZE = 1 << 1,
347  HINT_MAX_SIZE = 1 << 2,
348  HINT_BASE_SIZE = 1 << 3,
349  HINT_ASPECT = 1 << 4,
350  HINT_RESIZE_INC = 1 << 5,
352  HINT_USER_POS = 1 << 7,
353  HINT_USER_SIZE = 1 << 8
354 };
355 
358  { return static_cast<WindowHints>(static_cast<unsigned>(lhs) | static_cast<unsigned>(rhs)); }
359 
362  { return static_cast<WindowHints>(static_cast<unsigned>(lhs) & static_cast<unsigned>(rhs)); }
363 
366  { return static_cast<WindowHints>(static_cast<unsigned>(lhs) ^ static_cast<unsigned>(rhs)); }
367 
370  { return static_cast<WindowHints>(~static_cast<unsigned>(flags)); }
371 
374  { return (lhs = static_cast<WindowHints>(static_cast<unsigned>(lhs) | static_cast<unsigned>(rhs))); }
375 
378  { return (lhs = static_cast<WindowHints>(static_cast<unsigned>(lhs) & static_cast<unsigned>(rhs))); }
379 
382  { return (lhs = static_cast<WindowHints>(static_cast<unsigned>(lhs) ^ static_cast<unsigned>(rhs))); }
383 
384 } // namespace Gdk
385 
386 
387 #ifndef DOXYGEN_SHOULD_SKIP_THIS
388 namespace Glib
389 {
390 
391 template <>
392 class Value<Gdk::WindowHints> : public Glib::Value_Flags<Gdk::WindowHints>
393 {
394 public:
395  static GType value_type() G_GNUC_CONST;
396 };
397 
398 } // namespace Glib
399 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
400 
401 
402 namespace Gdk
403 {
404 
410 {
425 };
426 
427 } // namespace Gdk
428 
429 
430 #ifndef DOXYGEN_SHOULD_SKIP_THIS
431 namespace Glib
432 {
433 
434 template <>
435 class Value<Gdk::WindowTypeHint> : public Glib::Value_Enum<Gdk::WindowTypeHint>
436 {
437 public:
438  static GType value_type() G_GNUC_CONST;
439 };
440 
441 } // namespace Glib
442 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
443 
444 
445 namespace Gdk
446 {
447 
461 {
462  DECOR_ALL = 1 << 0,
463  DECOR_BORDER = 1 << 1,
464  DECOR_RESIZEH = 1 << 2,
465  DECOR_TITLE = 1 << 3,
466  DECOR_MENU = 1 << 4,
467  DECOR_MINIMIZE = 1 << 5,
468  DECOR_MAXIMIZE = 1 << 6
469 };
470 
473  { return static_cast<WMDecoration>(static_cast<unsigned>(lhs) | static_cast<unsigned>(rhs)); }
474 
477  { return static_cast<WMDecoration>(static_cast<unsigned>(lhs) & static_cast<unsigned>(rhs)); }
478 
481  { return static_cast<WMDecoration>(static_cast<unsigned>(lhs) ^ static_cast<unsigned>(rhs)); }
482 
485  { return static_cast<WMDecoration>(~static_cast<unsigned>(flags)); }
486 
489  { return (lhs = static_cast<WMDecoration>(static_cast<unsigned>(lhs) | static_cast<unsigned>(rhs))); }
490 
493  { return (lhs = static_cast<WMDecoration>(static_cast<unsigned>(lhs) & static_cast<unsigned>(rhs))); }
494 
497  { return (lhs = static_cast<WMDecoration>(static_cast<unsigned>(lhs) ^ static_cast<unsigned>(rhs))); }
498 
499 } // namespace Gdk
500 
501 
502 #ifndef DOXYGEN_SHOULD_SKIP_THIS
503 namespace Glib
504 {
505 
506 template <>
507 class Value<Gdk::WMDecoration> : public Glib::Value_Flags<Gdk::WMDecoration>
508 {
509 public:
510  static GType value_type() G_GNUC_CONST;
511 };
512 
513 } // namespace Glib
514 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
515 
516 
517 namespace Gdk
518 {
519 
533 {
534  FUNC_ALL = 1 << 0,
535  FUNC_RESIZE = 1 << 1,
536  FUNC_MOVE = 1 << 2,
537  FUNC_MINIMIZE = 1 << 3,
538  FUNC_MAXIMIZE = 1 << 4,
539  FUNC_CLOSE = 1 << 5
540 };
541 
544  { return static_cast<WMFunction>(static_cast<unsigned>(lhs) | static_cast<unsigned>(rhs)); }
545 
548  { return static_cast<WMFunction>(static_cast<unsigned>(lhs) & static_cast<unsigned>(rhs)); }
549 
552  { return static_cast<WMFunction>(static_cast<unsigned>(lhs) ^ static_cast<unsigned>(rhs)); }
553 
556  { return static_cast<WMFunction>(~static_cast<unsigned>(flags)); }
557 
560  { return (lhs = static_cast<WMFunction>(static_cast<unsigned>(lhs) | static_cast<unsigned>(rhs))); }
561 
564  { return (lhs = static_cast<WMFunction>(static_cast<unsigned>(lhs) & static_cast<unsigned>(rhs))); }
565 
568  { return (lhs = static_cast<WMFunction>(static_cast<unsigned>(lhs) ^ static_cast<unsigned>(rhs))); }
569 
570 } // namespace Gdk
571 
572 
573 #ifndef DOXYGEN_SHOULD_SKIP_THIS
574 namespace Glib
575 {
576 
577 template <>
578 class Value<Gdk::WMFunction> : public Glib::Value_Flags<Gdk::WMFunction>
579 {
580 public:
581  static GType value_type() G_GNUC_CONST;
582 };
583 
584 } // namespace Glib
585 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
586 
587 
588 namespace Gdk
589 {
590 
596 {
605 };
606 
607 } // namespace Gdk
608 
609 
610 #ifndef DOXYGEN_SHOULD_SKIP_THIS
611 namespace Glib
612 {
613 
614 template <>
615 class Value<Gdk::WindowEdge> : public Glib::Value_Enum<Gdk::WindowEdge>
616 {
617 public:
618  static GType value_type() G_GNUC_CONST;
619 };
620 
621 } // namespace Glib
622 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
623 
624 
625 namespace Gdk
626 {
627 
633 {
644 };
645 
646 } // namespace Gdk
647 
648 
649 #ifndef DOXYGEN_SHOULD_SKIP_THIS
650 namespace Glib
651 {
652 
653 template <>
654 class Value<Gdk::Gravity> : public Glib::Value_Enum<Gdk::Gravity>
655 {
656 public:
657  static GType value_type() G_GNUC_CONST;
658 };
659 
660 } // namespace Glib
661 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
662 
663 
664 namespace Gdk
665 {
666 
672 {
678 };
679 
680 } // namespace Gdk
681 
682 
683 #ifndef DOXYGEN_SHOULD_SKIP_THIS
684 namespace Glib
685 {
686 
687 template <>
688 class Value<Gdk::GrabStatus> : public Glib::Value_Enum<Gdk::GrabStatus>
689 {
690 public:
691  static GType value_type() G_GNUC_CONST;
692 };
693 
694 } // namespace Glib
695 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
696 
697 
698 namespace Gdk
699 {
700 
701 
702 class Cursor;
703 
710 class Window : public Gdk::Drawable
711 {
712  // GdkWindow is a typedef to GdkDrawable, but it's actually a GdkWindowObject.
713 
714 #ifndef DOXYGEN_SHOULD_SKIP_THIS
715 
716 public:
717  typedef Window CppObjectType;
718  typedef Window_Class CppClassType;
719  typedef GdkWindow BaseObjectType;
720  typedef GdkWindowObjectClass BaseClassType;
721 
722 private: friend class Window_Class;
723  static CppClassType window_class_;
724 
725 private:
726  // noncopyable
727  Window(const Window&);
728  Window& operator=(const Window&);
729 
730 protected:
731  explicit Window(const Glib::ConstructParams& construct_params);
732  explicit Window(GdkWindow* castitem);
733 
734 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
735 
736 public:
737  virtual ~Window();
738 
741  static GType get_type() G_GNUC_CONST;
742 
743 #ifndef DOXYGEN_SHOULD_SKIP_THIS
744 
745 
746  static GType get_base_type() G_GNUC_CONST;
747 #endif
748 
750  GdkWindow* gobj() { return reinterpret_cast<GdkWindow*>(gobject_); }
751 
753  const GdkWindow* gobj() const { return reinterpret_cast<GdkWindow*>(gobject_); }
754 
757 
758 private:
759 
760 
761 protected:
762  Window(const Glib::RefPtr<Window>& parent, GdkWindowAttr* attributes, int attributes_mask);
763 
764 public:
765 
766  static Glib::RefPtr<Window> create(const Glib::RefPtr<Window>& parent, GdkWindowAttr* attributes, int attributes_mask);
767 
768 
774 
775 
780  Glib::RefPtr<Visual> get_visual();
781 
786  Glib::RefPtr<const Visual> get_visual() const;
787 
788 
793  Glib::RefPtr<Screen> get_screen();
794 
799  Glib::RefPtr<const Screen> get_screen() const;
800 
801 
806  Glib::RefPtr<Display> get_display();
807 
812  Glib::RefPtr<const Display> get_display() const;
813 
814 
825  void show();
826 
832  void hide();
833 
838  void withdraw();
839 
849 
862  void move(int x, int y);
863 
876  void resize(int width, int height);
877 
888  void move_resize(int x, int y, int width, int height);
889 
897  void reparent(const Glib::RefPtr<Window>& new_parent, int x, int y);
898 
901  void clear();
902 
910  void clear_area(int x, int y, int width, int height);
911 
923  void clear_area_e(int x, int y, int width, int height);
924 
933  void raise();
934 
946  void lower();
947 
948 
963  void restack(const Glib::RefPtr<Window>& sibling, bool above);
964 
974  void restack(bool above);
975 
976 
982  void focus(guint32 timestamp);
983 
994  void set_user_data(gpointer user_data);
995 
1007  void set_override_redirect(bool override_redirect = true);
1008 
1009  //We could wrap these with a Slot instead of a C callback, but these methods are very low-level anyway.
1010 
1023  void add_filter(GdkFilterFunc function, gpointer data);
1024 
1030  void remove_filter(GdkFilterFunc function, gpointer data);
1031 
1032 
1040  void scroll(int dx, int dy);
1041 
1052  void move_region(const Region& region, int dx, int dy);
1053 
1064 
1065 
1086  void shape_combine_mask(const Glib::RefPtr<Bitmap>& mask, int x, int y);
1088 
1089 
1110  void shape_combine_region(const Region& shape_region, int offset_x, int offset_y);
1111 
1118 
1125  bool get_composited() const;
1126 
1152  void set_composited(bool composited = TRUE);
1153 
1164 
1165 
1187  void input_shape_combine_mask(const Glib::RefPtr<Bitmap>& mask, int x, int y);
1188 
1210  void input_shape_combine_region(const Region& shape_region, int offset_x, int offset_y);
1211 
1218 
1229 
1230 
1236  bool is_visible() const;
1237 
1245  bool is_viewable() const;
1246 
1251  bool is_input_only() const;
1252 
1257  bool is_shaped() const;
1258 
1265 
1274  bool set_static_gravities(bool use_static = true);
1275 
1281  bool has_native() const;
1282 
1293 
1299 
1305  bool get_modal_hint() const;
1306 
1317  void set_modal_hint(bool modal = true);
1318 
1344  void set_geometry_hints(const Geometry& geometry, WindowHints geom_mask);
1345 
1358  static void set_sm_client_id(const Glib::ustring& sm_client_id);
1359  static void unset_sm_client_id();
1360 
1361  //Note: The rectangle parameter was made const in GTK+ 2.16, but we can't change that in our C++ API. TODO: Change it when we can do an ABI break.
1362 
1363 
1371 
1414 
1423  void end_paint();
1424 
1441  void flush();
1442 
1451  void set_title(const Glib::ustring& title);
1452 
1468  void set_role(const Glib::ustring& role);
1469 
1475  void set_startup_id(const Glib::ustring& startup_id);
1476 
1487  void set_transient_for(const Glib::RefPtr<Window>& parent);
1488 
1502 
1518  void set_back_pixmap(const Glib::RefPtr<Pixmap>& pixmap, bool parent_relative = true);
1519 
1529 
1530 
1538  ::Cairo::RefPtr< ::Cairo::Pattern> get_background_pattern();
1539 
1540 
1548  ::Cairo::RefPtr<const ::Cairo::Pattern> get_background_pattern() const;
1549 
1550 
1557  void set_cursor(const Cursor& cursor);
1558 
1562  void set_cursor();
1563 
1564  //TODO: GdkCursor is a ref-counted boxed type,
1565  //so we could add a copy constructor and then return by value.
1566  //We would also need a Cursor::operator bool() to check for a null value.
1567  //TODO: _WRAP_METHOD(Cursor get_cursor(), gdk_window_get_cursor)
1568 
1569 
1575  void get_user_data(gpointer* data);
1576 
1605  void get_geometry(int& x, int& y, int& width, int& height, int& depth) const;
1606 
1615  int get_width() const;
1616 
1625  int get_height() const;
1626 
1638  void get_position(int& x, int& y) const;
1639 
1649  int get_origin(int& x, int& y) const;
1650 
1661  void get_root_coords(int x, int y, int& root_x, int& root_y);
1662 
1687  void coords_to_parent(double x, double y, double& parent_x, double& parent_y);
1688 
1711  void coords_from_parent(double parent_x, double parent_y, double& x, double& y);
1712 
1713 
1720  void get_root_origin(int& x, int& y) const;
1721 
1730 
1745  Glib::RefPtr<Window> get_pointer(int& x, int& y, ModifierType& mask);
1746 
1761  Glib::RefPtr<Window> get_parent();
1762 
1777  Glib::RefPtr<const Window> get_parent() const;
1778 
1792  Glib::RefPtr<Window> get_toplevel();
1793 
1807  Glib::RefPtr<const Window> get_toplevel() const;
1808 
1809 
1818  Glib::RefPtr<Window> get_effective_parent();
1819 
1828  Glib::RefPtr<const Window> get_effective_parent() const;
1829 
1839  Glib::RefPtr<Window> get_effective_toplevel();
1840  //gtkmmproc error: gdk_window_effective_get_toplevel : method defs lookup failed (1)
1841 
1842 
1853  Glib::ListHandle< Glib::RefPtr<Window> > get_children();
1854 
1865  Glib::ListHandle< Glib::RefPtr<const Window> > get_children() const;
1866  //gdk_window_peek_children() is the same as gdk_window_get_children() with different memory mangement of the list.
1867 
1868 
1874 
1882  void set_events(EventMask event_mask);
1883 
1884 
1895  void set_icon_list(const Glib::ListHandle< Glib::RefPtr<Gdk::Pixbuf> >& pixbufs);
1896 
1907  void set_icon(const Glib::RefPtr<Window>& icon_window, const Glib::RefPtr<Pixmap>& pixmap, const Glib::RefPtr<Bitmap>& mask);
1908  void set_icon(const Glib::RefPtr<Window>& icon_window, const Glib::RefPtr<Pixmap>& pixmap);
1909  void unset_icon();
1910 
1924  void set_icon_name(const Glib::ustring& name);
1925 
1926 
1940  void set_group(const Glib::RefPtr<Window>& leader);
1941 
1946  Glib::RefPtr<Window> get_group();
1947 
1952  Glib::RefPtr<const Window> get_group() const;
1953 
1954 
1972  void set_decorations(WMDecoration decorations);
1973 
1979  bool get_decorations(WMDecoration& decorations) const;
1980 
1997  void set_functions(WMFunction functions);
1998 
1999 
2000 #ifndef GDKMM_DISABLE_DEPRECATED
2001 
2009  static Glib::ListHandle< Glib::RefPtr<Window> > get_toplevels();
2010 #endif // GDKMM_DISABLE_DEPRECATED
2011 
2012 
2034  ::Cairo::RefPtr< ::Cairo::Surface> create_similar_surface(::Cairo::Content content, int width, int height);
2035 
2036 
2041  void beep();
2042 
2043 
2050  void iconify();
2051 
2058  void deiconify();
2059 
2070  void stick();
2071 
2075  void unstick();
2076 
2089  void maximize();
2090 
2103  void unmaximize();
2104 
2106 
2119  void begin_resize_drag(WindowEdge edge, int button, int root_x, int root_y, guint32 timestamp);
2120 
2133  void begin_move_drag(int button, int root_x, int root_y, guint32 timestamp);
2134 
2141  Glib::RefPtr<DragContext> drag_begin(const Glib::StringArrayHandle& targets);
2142 
2143 
2152  void invalidate_rect(const Rectangle& rect, bool invalidate_children);
2153 
2158  void invalidate(bool invalidate_children);
2159 
2160 
2182  void invalidate_region(const Region& region, bool invalidate_children = true);
2183 
2184 
2194  //This method should not have a const version - see the docs.
2195 
2196 
2204 
2208 
2212  static void process_all_updates();
2213 
2225  void process_updates(bool update_children);
2226 
2249  static void set_debug_updates(bool setting = true);
2250 
2261  static void constrain_size(const Geometry& geometry, guint flags, int width, int height, int& new_width, int& new_height);
2262  void get_internal_paint_info(Glib::RefPtr<Drawable>& real_drawable, int& x_offset, int& y_offset) const;
2263 
2264 
2277 
2288 
2289 
2299  void set_skip_taskbar_hint(bool skips_taskbar = true);
2300 
2312  void set_skip_pager_hint(bool skips_pager = true);
2313 
2314 
2320  void set_urgency_hint(bool urgent = true);
2321 
2322 
2337  void fullscreen();
2338 
2351 
2352 
2353  GrabStatus pointer_grab(bool owner_events, EventMask event_mask, const Glib::RefPtr<const Window>& confine_to, const Cursor& cursor, guint32 time_);
2354 
2364  GrabStatus pointer_grab(bool owner_events, EventMask event_mask, const Cursor& cursor, guint32 timestamp);
2365 
2374  GrabStatus pointer_grab(bool owner_events, EventMask event_mask, guint32 timestamp);
2375 
2376 
2383  static void pointer_ungrab(guint32 timestamp);
2384 
2385  GrabStatus keyboard_grab(bool owner_events, guint32 timestamp);
2386 
2393  static void keyboard_ungrab(guint32 timestamp);
2394 
2395 
2408  void set_keep_above(bool setting = true);
2409 
2422  void set_keep_below(bool setting = true);
2423 
2424 
2438  void set_opacity(double opacity);
2439 
2440 
2446  bool get_accept_focus() const;
2447 
2456  void set_accept_focus(bool accept_focus = true);
2457 
2458 
2465  bool get_focus_on_map() const;
2466 
2478  void set_focus_on_map(bool focus_on_map);
2479 
2480 
2486  static Glib::RefPtr<Window> get_default_root_window();
2487 
2488 
2496  Glib::RefPtr<Pixmap> get_offscreen_pixmap();
2497 
2505  Glib::RefPtr<const Pixmap> get_offscreen_pixmap() const;
2506 
2507 
2514  Glib::RefPtr<Window> get_offscreen_embedder();
2515 
2522  Glib::RefPtr<const Window> get_offscreen_embedder() const;
2523 
2524 
2534  void set_offscreen_embedder(const Glib::RefPtr<Window>& embedder);
2535 
2536 
2557  void redirect_to_drawable(const Glib::RefPtr<Drawable>& drawable, int src_x, int src_y, int dest_x, int dest_y, int width, int height);
2558 
2563 
2564 
2570 
2571  //TODO: Wrap these? Find out when they are emitted and if they are useful outside of GTK+, and improve the C docs.
2572  //_WRAP_SIGNAL(Glib::RefPtr<Gdk::Window> pick_embedded_child(double x, double y), pick-embedded-child, no_default_handler)
2573  //_WRAP_SIGNAL(Glib::RefPtr<Gdk::Window> to_embedder(double offscreen_x, double offscreen_y, double& embedder_x, double& embedder_y), to-embedder, no_default_handler)
2574  //_WRAP_SIGNAL(Glib::RefPtr<Gdk::Window> from_embedder(double embedder_x, double embedder_y, double& offscreen_x, double& offscreen_y), from-embedder, no_default_handler)
2575 
2576 
2577  //TODO: _WRAP_PROPERTY("cursor", Cursor)
2578 
2579 
2580 public:
2581 
2582 public:
2583  //C++ methods used to invoke GTK+ virtual functions:
2584 
2585 protected:
2586  //GTK+ Virtual Functions (override these to change behaviour):
2587 
2588  //Default Signal Handlers::
2589 
2590 
2591 };
2592 
2593 } // namespace Gdk
2594 
2595 
2596 namespace Glib
2597 {
2606  Glib::RefPtr<Gdk::Window> wrap(GdkWindowObject* object, bool take_copy = false);
2607 }
2608 
2609 
2610 #endif /* _GDKMM_WINDOW_H */
2611 
WindowType
Definition: Window.h:23
Glib::RefPtr< const Display > get_display() const
void set_child_shapes()
void fullscreen()
GdkWindow * gobj()
Provides access to the underlying C GObject.
void get_root_origin(int &x, int &y) const
void set_icon(const Glib::RefPtr< Window > &icon_window, const Glib::RefPtr< Pixmap > &pixmap, const Glib::RefPtr< Bitmap > &mask)
Glib::RefPtr< Window > get_effective_parent()
void thaw_updates()
Glib::RefPtr< Window > get_toplevel()
EventMask get_events() const
void restack(bool above)
void freeze_updates()
void invalidate_region(const Region &region, bool invalidate_children=true)
void coords_from_parent(double parent_x, double parent_y, double &x, double &y)
void clear_area_e(int x, int y, int width, int height)
void get_root_coords(int x, int y, int &root_x, int &root_y)
void move_region(const Region &region, int dx, int dy)
void reparent(const Glib::RefPtr< Window > &new_parent, int x, int y)
void set_keep_below(bool setting=true)
Glib::RefPtr< const Window > get_parent() const
void end_paint()
void set_modal_hint(bool modal=true)
void unstick()
bool get_decorations(WMDecoration &decorations) const
void set_startup_id(const Glib::ustring &startup_id)
void lower()
void set_back_pixmap(const Glib::RefPtr< Pixmap > &pixmap, bool parent_relative=true)
bool has_native() const
void set_functions(WMFunction functions)
GrabStatus pointer_grab(bool owner_events, EventMask event_mask, guint32 timestamp)
void deiconify()
void coords_to_parent(double x, double y, double &parent_x, double &parent_y)
void show_unraised()
void flush()
bool ensure_native()
void set_keep_above(bool setting=true)
bool get_focus_on_map() const
Glib::RefPtr< Pixmap > get_offscreen_pixmap()
void set_skip_taskbar_hint(bool skips_taskbar=true)
int get_origin(int &x, int &y) const
void enable_synchronized_configure()
int get_width() const
void set_background(const Color &color)
bool get_modal_hint() const
static void process_all_updates()
void add_filter(GdkFilterFunc function, gpointer data)
void set_type_hint(WindowTypeHint hint)
void unfullscreen()
void merge_child_shapes()
static Glib::RefPtr< Window > create(const Glib::RefPtr< Window > &parent, GdkWindowAttr *attributes, int attributes_mask)
void input_shape_combine_mask(const Glib::RefPtr< Bitmap > &mask, int x, int y)
void set_child_input_shapes()
void maximize()
bool is_viewable() const
void shape_combine_region(const Region &shape_region, int offset_x, int offset_y)
void begin_resize_drag(WindowEdge edge, int button, int root_x, int root_y, guint32 timestamp)
Glib::RefPtr< Window > get_offscreen_embedder()
::Cairo::RefPtr< ::Cairo::Pattern > get_background_pattern()
void register_dnd()
void get_internal_paint_info(Glib::RefPtr< Drawable > &real_drawable, int &x_offset, int &y_offset) const
Glib::RefPtr< Window > get_effective_toplevel()
bool is_visible() const
void remove_redirection()
static void set_sm_client_id(const Glib::ustring &sm_client_id)
void clear_area(int x, int y, int width, int height)
Glib::RefPtr< const Window > get_offscreen_embedder() const
Region get_update_area()
void clear()
Glib::ListHandle< Glib::RefPtr< Window > > get_children()
bool get_accept_focus() const
static Glib::RefPtr< Window > get_default_root_window()
Glib::RefPtr< const Window > get_effective_parent() const
Glib::RefPtr< const Window > get_group() const
GrabStatus pointer_grab(bool owner_events, EventMask event_mask, const Glib::RefPtr< const Window > &confine_to, const Cursor &cursor, guint32 time_)
void iconify()
void set_user_data(gpointer user_data)
void set_geometry_hints(const Geometry &geometry, WindowHints geom_mask)
void process_updates(bool update_children)
bool is_shaped() const
void unset_icon()
void unset_back_pixmap()
void stick()
static void set_debug_updates(bool setting=true)
bool set_static_gravities(bool use_static=true)
static void constrain_size(const Geometry &geometry, guint flags, int width, int height, int &new_width, int &new_height)
void focus(guint32 timestamp)
Glib::RefPtr< Window > get_pointer(int &x, int &y, ModifierType &mask)
WindowTypeHint get_type_hint()
void scroll(int dx, int dy)
void get_position(int &x, int &y) const
void shape_combine_mask(const Glib::RefPtr< Bitmap > &mask, int x, int y)
void get_user_data(gpointer *data)
Window(const Glib::RefPtr< Window > &parent, GdkWindowAttr *attributes, int attributes_mask)
virtual ~Window()
void set_decorations(WMDecoration decorations)
int get_height() const
void set_title(const Glib::ustring &title)
Glib::RefPtr< const Window > get_toplevel() const
void set_icon(const Glib::RefPtr< Window > &icon_window, const Glib::RefPtr< Pixmap > &pixmap)
void unset_shape_combine_mask()
void restack(const Glib::RefPtr< Window > &sibling, bool above)
Glib::RefPtr< Screen > get_screen()
void set_urgency_hint(bool urgent=true)
void remove_filter(GdkFilterFunc function, gpointer data)
void begin_paint_rect(Rectangle &rectangle)
::Cairo::RefPtr< ::Cairo::Surface > create_similar_surface(::Cairo::Content content, int width, int height)
Glib::RefPtr< DragContext > drag_begin(const Glib::StringArrayHandle &targets)
GrabStatus pointer_grab(bool owner_events, EventMask event_mask, const Cursor &cursor, guint32 timestamp)
void set_skip_pager_hint(bool skips_pager=true)
void withdraw()
Glib::RefPtr< Visual > get_visual()
void redirect_to_drawable(const Glib::RefPtr< Drawable > &drawable, int src_x, int src_y, int dest_x, int dest_y, int width, int height)
void set_override_redirect(bool override_redirect=true)
const GdkWindow * gobj() const
Provides access to the underlying C GObject.
static GType get_type() G_GNUC_CONST
void set_icon_list(const Glib::ListHandle< Glib::RefPtr< Gdk::Pixbuf > > &pixbufs)
void get_frame_extents(Rectangle &rect)
void get_geometry(int &x, int &y, int &width, int &height, int &depth) const
void invalidate(bool invalidate_children)
static void unset_sm_client_id()
void set_transient_for(const Glib::RefPtr< Window > &parent)
void set_cursor()
void set_composited(bool composited=TRUE)
void set_cursor(const Cursor &cursor)
void set_offscreen_embedder(const Glib::RefPtr< Window > &embedder)
Glib::ListHandle< Glib::RefPtr< const Window > > get_children() const
void move(int x, int y)
static Glib::ListHandle< Glib::RefPtr< Window > > get_toplevels()
void set_events(EventMask event_mask)
Glib::RefPtr< const Pixmap > get_offscreen_pixmap() const
Glib::RefPtr< Window > get_parent()
void resize(int width, int height)
void set_group(const Glib::RefPtr< Window > &leader)
void set_icon_name(const Glib::ustring &name)
Glib::RefPtr< Gdk::Window > wrap(GdkWindowObject *object, bool take_copy=false)
static void pointer_ungrab(guint32 timestamp)
void set_accept_focus(bool accept_focus=true)
bool is_input_only() const
Glib::RefPtr< Display > get_display()
Glib::RefPtr< Window > get_group()
void unmaximize()
static void keyboard_ungrab(guint32 timestamp)
WindowState get_state() const
GdkWindow * gobj_copy()
Provides access to the underlying C instance. The caller is responsible for unrefing it....
void set_focus_on_map(bool focus_on_map)
void merge_child_input_shapes()
void begin_paint_region(const Region &region)
::Cairo::RefPtr< const ::Cairo::Pattern > get_background_pattern() const
WindowType get_window_type() const
void configure_finished()
GrabStatus keyboard_grab(bool owner_events, guint32 timestamp)
void set_role(const Glib::ustring &role)
void geometry_changed()
void begin_move_drag(int button, int root_x, int root_y, guint32 timestamp)
void set_opacity(double opacity)
bool get_composited() const
Glib::RefPtr< const Visual > get_visual() const
void move_resize(int x, int y, int width, int height)
Glib::RefPtr< const Screen > get_screen() const
void input_shape_combine_region(const Region &shape_region, int offset_x, int offset_y)
void invalidate_rect(const Rectangle &rect, bool invalidate_children)
GdkFilterReturn(* GdkFilterFunc)(GdkXEvent *xevent, GdkEvent *event, gpointer data)
Definition: gdkevents.h:88
WMFunction operator^(WMFunction lhs, WMFunction rhs)
WMFunction & operator^=(WMFunction &lhs, WMFunction rhs)
WMFunction & operator|=(WMFunction &lhs, WMFunction rhs)
WMFunction & operator&=(WMFunction &lhs, WMFunction rhs)
DragAction operator&(DragAction lhs, DragAction rhs)
Definition: dragcontext.h:82
DragAction & operator|=(DragAction &lhs, DragAction rhs)
Definition: dragcontext.h:94
WMFunction operator&(WMFunction lhs, WMFunction rhs)
DragAction operator~(DragAction flags)
Definition: dragcontext.h:90
DragAction & operator^=(DragAction &lhs, DragAction rhs)
Definition: dragcontext.h:102
WMFunction operator|(WMFunction lhs, WMFunction rhs)
DragAction & operator&=(DragAction &lhs, DragAction rhs)
Definition: dragcontext.h:98
DragAction operator^(DragAction lhs, DragAction rhs)
Definition: dragcontext.h:86
WMFunction operator~(WMFunction flags)
DragAction operator|(DragAction lhs, DragAction rhs)
Definition: dragcontext.h:78
@ WINDOW_TYPE_HINT_NOTIFICATION
@ WINDOW_TYPE_HINT_DROPDOWN_MENU
@ WINDOW_TYPE_HINT_SPLASHSCREEN
GtkImageIconNameData name
Definition: gtkimage.h:6
GtkImagePixmapData pixmap
Definition: gtkimage.h:0
PBD::PropertyDescriptor< uint32_t > color
PBD::PropertyDescriptor< bool > region
GdkGeometry Geometry
void rectangle(Cairo::RefPtr< Cairo::Context > context, double x, double y, double w, double h, double r=10)
Definition: lobject.h:100
gint height
Definition: xcursors.h:1
gint width
Definition: xcursors.h:1