1 /*
2  * e-mail-folder-create-dialog.h
3  *
4  * This program is free software; you can redistribute it and/or modify it
5  * under the terms of the GNU Lesser General Public License as published by
6  * the Free Software Foundation.
7  *
8  * This program is distributed in the hope that it will be useful, but
9  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
10  * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
11  * for more details.
12  *
13  * You should have received a copy of the GNU Lesser General Public License
14  * along with this program; if not, see <http://www.gnu.org/licenses/>.
15  *
16  */
17 
18 #ifndef E_MAIL_FOLDER_CREATE_DIALOG_H
19 #define E_MAIL_FOLDER_CREATE_DIALOG_H
20 
21 #include <mail/em-folder-selector.h>
22 #include <mail/e-mail-ui-session.h>
23 
24 /* Standard GObject macros */
25 #define E_TYPE_MAIL_FOLDER_CREATE_DIALOG \
26 	(e_mail_folder_create_dialog_get_type ())
27 #define E_MAIL_FOLDER_CREATE_DIALOG(obj) \
28 	(G_TYPE_CHECK_INSTANCE_CAST \
29 	((obj), E_TYPE_MAIL_FOLDER_CREATE_DIALOG, EMailFolderCreateDialog))
30 #define E_MAIL_FOLDER_CREATE_DIALOG_CLASS(cls) \
31 	(G_TYPE_CHECK_CLASS_CAST \
32 	((cls), E_TYPE_MAIL_FOLDER_CREATE_DIALOG, EMailFolderCreateDialogClass))
33 #define E_IS_MAIL_FOLDER_CREATE_DIALOG(obj) \
34 	(G_TYPE_CHECK_INSTANCE_TYPE \
35 	((obj), E_TYPE_MAIL_FOLDER_CREATE_DIALOG))
36 #define E_IS_MAIL_FOLDER_CREATE_DIALOG_CLASS(cls) \
37 	(G_TYPE_CHECK_CLASS_TYPE \
38 	((cls), E_TYPE_MAIL_FOLDER_CREATE_DIALOG))
39 #define E_MAIL_FOLDER_CREATE_DIALOG_GET_CLASS(obj) \
40 	(G_TYPE_INSTANCE_GET_CLASS \
41 	((obj), E_TYPE_MAIL_FOLDER_CREATE_DIALOG, EMailFolderCreateDialogClass))
42 
43 G_BEGIN_DECLS
44 
45 typedef struct _EMailFolderCreateDialog EMailFolderCreateDialog;
46 typedef struct _EMailFolderCreateDialogClass EMailFolderCreateDialogClass;
47 typedef struct _EMailFolderCreateDialogPrivate EMailFolderCreateDialogPrivate;
48 
49 struct _EMailFolderCreateDialog {
50 	EMFolderSelector parent;
51 	EMailFolderCreateDialogPrivate *priv;
52 };
53 
54 struct _EMailFolderCreateDialogClass {
55 	EMFolderSelectorClass parent_class;
56 
57 	/* Signals */
58 	void		(*folder_created)
59 					(EMailFolderCreateDialog *dialog,
60 					 CamelStore *store,
61 					 const gchar *folder_name);
62 };
63 
64 GType		e_mail_folder_create_dialog_get_type
65 					(void) G_GNUC_CONST;
66 GtkWidget *	e_mail_folder_create_dialog_new
67 					(GtkWindow *parent,
68 					 EMailUISession *session);
69 EMailUISession *
70 		e_mail_folder_create_dialog_get_session
71 					(EMailFolderCreateDialog *dialog);
72 
73 G_END_DECLS
74 
75 #endif /* E_MAIL_FOLDER_CREATE_DIALOG_H */
76 
77