latest update
[hildon] / hildon-widgets / hildon-file-details-dialog.h
1 /*
2  * This file is part of hildon-libs
3  *
4  * Copyright (C) 2005 Nokia Corporation.
5  *
6  * Contact: Luc Pionchon <luc.pionchon@nokia.com>
7  *
8  * This library is free software; you can redistribute it and/or
9  * modify it under the terms of the GNU Lesser General Public License
10  * as published by the Free Software Foundation; either version 2.1 of
11  * the License, or (at your option) any later version.
12  *
13  * This library is distributed in the hope that it will be useful, but
14  * WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16  * Lesser General Public License for more details.
17  *
18  * You should have received a copy of the GNU Lesser General Public
19  * License along with this library; if not, write to the Free Software
20  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
21  * 02110-1301 USA
22  *
23  */
24
25 #ifndef __HILDON_FILE_DETAILS_DIALOG_H__
26 #define __HILDON_FILE_DETAILS_DIALOG_H__
27
28 #include <gtk/gtkdialog.h>
29 #include <gtk/gtktreemodel.h>
30 #include <hildon-widgets/hildon-file-system-model.h>
31
32 G_BEGIN_DECLS
33
34 #define HILDON_TYPE_FILE_DETAILS_DIALOG \
35   (hildon_file_details_dialog_get_type ())
36 #define HILDON_FILE_DETAILS_DIALOG(obj) \
37   (G_TYPE_CHECK_INSTANCE_CAST ((obj), HILDON_TYPE_FILE_DETAILS_DIALOG,\
38    HildonFileDetailsDialog))
39 #define HILDON_FILE_DETAILS_DIALOG_CLASS(klass) \
40   (G_TYPE_CHECK_CLASS_CAST ((klass), HILDON_TYPE_FILE_DETAILS_DIALOG,\
41    HildonFileDetailsDialogClass))
42 #define HILDON_IS_FILE_DETAILS_DIALOG(obj) \
43   (G_TYPE_CHECK_INSTANCE_TYPE ((obj), HILDON_TYPE_FILE_DETAILS_DIALOG))
44 #define HILDON_IS_FILE_DETAILS_DIALOG_CLASS(klass) \
45   (G_TYPE_CHECK_CLASS_TYPE ((klass), HILDON_TYPE_FILE_DETAILS_DIALOG))
46 #define HILDON_FILE_DETAILS_DIALOG_GET_CLASS(obj) \
47   (G_TYPE_INSTANCE_GET_CLASS ((obj), HILDON_TYPE_FILE_DETAILS_DIALOG,\
48    HildonFileDetailsDialogClass))
49
50 typedef struct _HildonFileDetailsDialog HildonFileDetailsDialog;
51 typedef struct _HildonFileDetailsDialogPrivate HildonFileDetailsDialogPrivate;
52 typedef struct _HildonFileDetailsDialogClass HildonFileDetailsDialogClass;
53
54 struct _HildonFileDetailsDialog {
55   GtkDialog parent;
56   HildonFileDetailsDialogPrivate *priv;
57 };
58
59 struct _HildonFileDetailsDialogClass {
60   GtkDialogClass parent_class;
61 };
62
63 GType hildon_file_details_dialog_get_type(void) G_GNUC_CONST;
64
65 /* Depricated constructor... */
66 #ifndef HILDON_DISABLE_DEPRECATED
67 GtkWidget *hildon_file_details_dialog_new(GtkWindow * parent,
68   const gchar * filename);
69 #endif
70
71 /* New API inspired by GtkComboBox */
72 GtkWidget *hildon_file_details_dialog_new_with_model(GtkWindow *parent,
73   HildonFileSystemModel *model);
74
75 void hildon_file_details_dialog_set_file_iter(HildonFileDetailsDialog *self, GtkTreeIter *iter);
76 gboolean hildon_file_details_dialog_get_file_iter(HildonFileDetailsDialog *self, GtkTreeIter *iter);
77
78 G_END_DECLS
79
80 #endif /* __HILDON_FILEDETAILS_H__ */