1/* GTK - The GIMP Toolkit
2 * gtknativedialog.h: Native dialog
3 * Copyright (C) 2015, Red Hat, Inc.
4 *
5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Lesser General Public
7 * License as published by the Free Software Foundation; either
8 * version 2 of the License, or (at your option) any later version.
9 *
10 * This library is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Lesser General Public License for more details.
14 *
15 * You should have received a copy of the GNU Lesser General Public
16 * License along with this library. If not, see <http://www.gnu.org/licenses/>.
17 */
18
19#ifndef __GTK_NATIVE_DIALOG_H__
20#define __GTK_NATIVE_DIALOG_H__
21
22#if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION)
23#error "Only <gtk/gtk.h> can be included directly."
24#endif
25
26#include <gtk/gtkwindow.h>
27
28G_BEGIN_DECLS
29
30#define GTK_TYPE_NATIVE_DIALOG (gtk_native_dialog_get_type ())
31
32GDK_AVAILABLE_IN_3_20
33G_DECLARE_DERIVABLE_TYPE (GtkNativeDialog, gtk_native_dialog, GTK, NATIVE_DIALOG, GObject)
34
35struct _GtkNativeDialogClass
36{
37 GObjectClass parent_class;
38
39 void (* response) (GtkNativeDialog *self, gint response_id);
40
41 /* <private> */
42 void (* show) (GtkNativeDialog *self);
43 void (* hide) (GtkNativeDialog *self);
44
45 /* Padding for future expansion */
46 void (*_gtk_reserved1) (void);
47 void (*_gtk_reserved2) (void);
48 void (*_gtk_reserved3) (void);
49 void (*_gtk_reserved4) (void);
50};
51
52GDK_AVAILABLE_IN_3_20
53void gtk_native_dialog_show (GtkNativeDialog *self);
54GDK_AVAILABLE_IN_3_20
55void gtk_native_dialog_hide (GtkNativeDialog *self);
56GDK_AVAILABLE_IN_3_20
57void gtk_native_dialog_destroy (GtkNativeDialog *self);
58GDK_AVAILABLE_IN_3_20
59gboolean gtk_native_dialog_get_visible (GtkNativeDialog *self);
60GDK_AVAILABLE_IN_3_20
61void gtk_native_dialog_set_modal (GtkNativeDialog *self,
62 gboolean modal);
63GDK_AVAILABLE_IN_3_20
64gboolean gtk_native_dialog_get_modal (GtkNativeDialog *self);
65GDK_AVAILABLE_IN_3_20
66void gtk_native_dialog_set_title (GtkNativeDialog *self,
67 const char *title);
68GDK_AVAILABLE_IN_3_20
69const char * gtk_native_dialog_get_title (GtkNativeDialog *self);
70GDK_AVAILABLE_IN_3_20
71void gtk_native_dialog_set_transient_for (GtkNativeDialog *self,
72 GtkWindow *parent);
73GDK_AVAILABLE_IN_3_20
74GtkWindow * gtk_native_dialog_get_transient_for (GtkNativeDialog *self);
75
76GDK_AVAILABLE_IN_3_20
77gint gtk_native_dialog_run (GtkNativeDialog *self);
78
79G_END_DECLS
80
81#endif /* __GTK_NATIVE_DIALOG_H__ */
82