1/*
2 * gtkappchooserdialog.h: an app-chooser dialog
3 *
4 * Copyright (C) 2004 Novell, Inc.
5 * Copyright (C) 2007, 2010 Red Hat, Inc.
6 *
7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Library General Public License as
9 * published by the Free Software Foundation; either version 2 of the
10 * 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 * Library General Public License for more details.
16 *
17 * You should have received a copy of the GNU Library General Public
18 * License along with this library. If not, see <http://www.gnu.org/licenses/>.
19 *
20 * Authors: Dave Camp <[email protected]>
21 * Alexander Larsson <[email protected]>
22 * Cosimo Cecchi <[email protected]>
23 */
24
25#ifndef __GTK_APP_CHOOSER_DIALOG_H__
26#define __GTK_APP_CHOOSER_DIALOG_H__
27
28#if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION)
29#error "Only <gtk/gtk.h> can be included directly."
30#endif
31
32#include <gtk/gtkdialog.h>
33#include <gio/gio.h>
34
35G_BEGIN_DECLS
36
37#define GTK_TYPE_APP_CHOOSER_DIALOG (gtk_app_chooser_dialog_get_type ())
38#define GTK_APP_CHOOSER_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_APP_CHOOSER_DIALOG, GtkAppChooserDialog))
39#define GTK_APP_CHOOSER_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_APP_CHOOSER_DIALOG, GtkAppChooserDialogClass))
40#define GTK_IS_APP_CHOOSER_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_APP_CHOOSER_DIALOG))
41#define GTK_IS_APP_CHOOSER_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_APP_CHOOSER_DIALOG))
42#define GTK_APP_CHOOSER_DIALOG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_APP_CHOOSER_DIALOG, GtkAppChooserDialogClass))
43
44typedef struct _GtkAppChooserDialog GtkAppChooserDialog;
45typedef struct _GtkAppChooserDialogClass GtkAppChooserDialogClass;
46typedef struct _GtkAppChooserDialogPrivate GtkAppChooserDialogPrivate;
47
48struct _GtkAppChooserDialog {
49 GtkDialog parent;
50
51 /*< private >*/
52 GtkAppChooserDialogPrivate *priv;
53};
54
55/**
56 * GtkAppChooserDialogClass:
57 * @parent_class: The parent class.
58 */
59struct _GtkAppChooserDialogClass {
60 GtkDialogClass parent_class;
61
62 /*< private >*/
63
64 /* padding for future class expansion */
65 gpointer padding[16];
66};
67
68GDK_AVAILABLE_IN_ALL
69GType gtk_app_chooser_dialog_get_type (void) G_GNUC_CONST;
70
71GDK_AVAILABLE_IN_ALL
72GtkWidget * gtk_app_chooser_dialog_new (GtkWindow *parent,
73 GtkDialogFlags flags,
74 GFile *file);
75GDK_AVAILABLE_IN_ALL
76GtkWidget * gtk_app_chooser_dialog_new_for_content_type (GtkWindow *parent,
77 GtkDialogFlags flags,
78 const gchar *content_type);
79
80GDK_AVAILABLE_IN_ALL
81GtkWidget * gtk_app_chooser_dialog_get_widget (GtkAppChooserDialog *self);
82GDK_AVAILABLE_IN_ALL
83void gtk_app_chooser_dialog_set_heading (GtkAppChooserDialog *self,
84 const gchar *heading);
85GDK_AVAILABLE_IN_ALL
86const gchar * gtk_app_chooser_dialog_get_heading (GtkAppChooserDialog *self);
87
88G_END_DECLS
89
90#endif /* __GTK_APP_CHOOSER_DIALOG_H__ */
91