1 | /* GTK - The GIMP Toolkit |
2 | * Copyright (C) 2019 Red Hat, Inc. |
3 | * |
4 | * Authors: |
5 | * - Matthias Clasen <mclasen@redhat.com> |
6 | * |
7 | * This library is free software; you can redistribute it and/or |
8 | * modify it under the terms of the GNU Lesser General Public |
9 | * License as published by the Free Software Foundation; either |
10 | * version 2 of the License, or (at your option) any later version. |
11 | * |
12 | * This library is distributed in the hope that it will be useful, |
13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
15 | * Lesser General Public License for more details. |
16 | * |
17 | * You should have received a copy of the GNU Lesser General Public |
18 | * License along with this library. If not, see <http://www.gnu.org/licenses/>. |
19 | */ |
20 | |
21 | #ifndef __GTK_POPOVER_H__ |
22 | #define __GTK_POPOVER_H__ |
23 | |
24 | #if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION) |
25 | #error "Only <gtk/gtk.h> can be included directly." |
26 | #endif |
27 | |
28 | #include <gtk/gtkwidget.h> |
29 | |
30 | G_BEGIN_DECLS |
31 | |
32 | #define GTK_TYPE_POPOVER (gtk_popover_get_type ()) |
33 | #define GTK_POPOVER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_POPOVER, GtkPopover)) |
34 | #define GTK_POPOVER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_POPOVER, GtkPopoverClass)) |
35 | #define GTK_IS_POPOVER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_POPOVER)) |
36 | #define GTK_IS_POPOVER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_POPOVER)) |
37 | #define GTK_POPOVER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_POPOVER, GtkPopoverClass)) |
38 | |
39 | typedef struct _GtkPopover GtkPopover; |
40 | typedef struct _GtkPopoverClass GtkPopoverClass; |
41 | |
42 | struct _GtkPopover |
43 | { |
44 | GtkWidget parent; |
45 | }; |
46 | |
47 | struct _GtkPopoverClass |
48 | { |
49 | GtkWidgetClass parent_class; |
50 | |
51 | void (* closed) (GtkPopover *popover); |
52 | void (* activate_default) (GtkPopover *popover); |
53 | |
54 | /*< private >*/ |
55 | |
56 | gpointer reserved[8]; |
57 | }; |
58 | |
59 | GDK_AVAILABLE_IN_ALL |
60 | GType gtk_popover_get_type (void) G_GNUC_CONST; |
61 | |
62 | GDK_AVAILABLE_IN_ALL |
63 | GtkWidget * gtk_popover_new (void); |
64 | |
65 | GDK_AVAILABLE_IN_ALL |
66 | void gtk_popover_set_child (GtkPopover *popover, |
67 | GtkWidget *child); |
68 | GDK_AVAILABLE_IN_ALL |
69 | GtkWidget * gtk_popover_get_child (GtkPopover *popover); |
70 | |
71 | GDK_AVAILABLE_IN_ALL |
72 | void gtk_popover_set_pointing_to (GtkPopover *popover, |
73 | const GdkRectangle *rect); |
74 | GDK_AVAILABLE_IN_ALL |
75 | gboolean gtk_popover_get_pointing_to (GtkPopover *popover, |
76 | GdkRectangle *rect); |
77 | GDK_AVAILABLE_IN_ALL |
78 | void gtk_popover_set_position (GtkPopover *popover, |
79 | GtkPositionType position); |
80 | GDK_AVAILABLE_IN_ALL |
81 | GtkPositionType gtk_popover_get_position (GtkPopover *popover); |
82 | |
83 | GDK_AVAILABLE_IN_ALL |
84 | void gtk_popover_set_autohide (GtkPopover *popover, |
85 | gboolean autohide); |
86 | GDK_AVAILABLE_IN_ALL |
87 | gboolean gtk_popover_get_autohide (GtkPopover *popover); |
88 | |
89 | GDK_AVAILABLE_IN_ALL |
90 | void gtk_popover_set_has_arrow (GtkPopover *popover, |
91 | gboolean has_arrow); |
92 | GDK_AVAILABLE_IN_ALL |
93 | gboolean gtk_popover_get_has_arrow (GtkPopover *popover); |
94 | |
95 | GDK_AVAILABLE_IN_ALL |
96 | void gtk_popover_set_mnemonics_visible (GtkPopover *popover, |
97 | gboolean mnemonics_visible); |
98 | GDK_AVAILABLE_IN_ALL |
99 | gboolean gtk_popover_get_mnemonics_visible (GtkPopover *popover); |
100 | |
101 | GDK_AVAILABLE_IN_ALL |
102 | void (GtkPopover *popover); |
103 | GDK_AVAILABLE_IN_ALL |
104 | void gtk_popover_popdown (GtkPopover *popover); |
105 | |
106 | GDK_AVAILABLE_IN_ALL |
107 | void gtk_popover_set_offset (GtkPopover *popover, |
108 | int x_offset, |
109 | int y_offset); |
110 | GDK_AVAILABLE_IN_ALL |
111 | void gtk_popover_get_offset (GtkPopover *popover, |
112 | int *x_offset, |
113 | int *y_offset); |
114 | GDK_AVAILABLE_IN_ALL |
115 | void gtk_popover_set_cascade_popdown (GtkPopover *popover, |
116 | gboolean cascade_popdown); |
117 | GDK_AVAILABLE_IN_ALL |
118 | gboolean gtk_popover_get_cascade_popdown (GtkPopover *popover); |
119 | |
120 | GDK_AVAILABLE_IN_ALL |
121 | void gtk_popover_set_default_widget (GtkPopover *popover, |
122 | GtkWidget *widget); |
123 | |
124 | GDK_AVAILABLE_IN_ALL |
125 | void gtk_popover_present (GtkPopover *popover); |
126 | |
127 | |
128 | G_END_DECLS |
129 | |
130 | #endif /* __GTK_POPOVER_H__ */ |
131 | |