255875a0a67dcd85bb4aefb97c62b0627bb5a01c
[hildon] / hildon-widgets / hildon-note.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 #ifndef __HILDON_NOTE_H__
25 #define __HILDON_NOTE_H__
26
27 #include <gtk/gtkdialog.h>
28 #include <gtk/gtkprogressbar.h>
29 #include <gtk/gtkicontheme.h>
30
31 G_BEGIN_DECLS
32 #define HILDON_TYPE_NOTE ( hildon_note_get_type() )
33 #define HILDON_NOTE(obj) \
34   (GTK_CHECK_CAST (obj, HILDON_TYPE_NOTE, HildonNote))
35 #define HILDON_NOTE_CLASS(klass) \
36   (GTK_CHECK_CLASS_CAST ((klass), HILDON_TYPE_NOTE, HildonNoteClass))
37 #define HILDON_IS_NOTE(obj) (GTK_CHECK_TYPE (obj, HILDON_TYPE_NOTE))
38 #define HILDON_IS_NOTE_CLASS(klass) \
39   (GTK_CHECK_CLASS_TYPE ((klass), HILDON_TYPE_NOTE))
40 typedef struct _HildonNote HildonNote;
41 typedef struct _HildonNoteClass HildonNoteClass;
42
43 enum {
44     HILDON_NOTE_CONFIRMATION_TYPE = 0,
45     HILDON_NOTE_CONFIRMATION_BUTTON_TYPE,
46     HILDON_NOTE_INFORMATION_TYPE,
47     HILDON_NOTE_INFORMATION_THEME_TYPE,
48     HILDON_NOTE_PROGRESSBAR_TYPE
49 };
50
51 struct _HildonNote {
52     GtkDialog parent;
53 };
54
55 struct _HildonNoteClass {
56     GtkDialogClass parent_class;
57 };
58
59 GtkWidget *hildon_note_new_confirmation(GtkWindow * parent,
60                                         const gchar * description);
61
62 GtkWidget *hildon_note_new_confirmation_add_buttons(GtkWindow * parent,
63                                                     const gchar *
64                                                     description, ...);
65
66 GtkWidget *hildon_note_new_confirmation_with_icon_stock(GtkWindow * parent,
67                                                         const gchar *
68                                                         description,
69                                                         const gchar *
70                                                         stock_id);
71
72 GtkWidget *hildon_note_new_confirmation_with_icon_name(GtkWindow * parent,
73                                                         const gchar *
74                                                         description,
75                                                         const gchar *
76                                                         icon_name);
77
78
79 GtkWidget *hildon_note_new_cancel_with_progress_bar(GtkWindow * parent,
80                                                     const gchar *
81                                                     description,
82                                                     GtkProgressBar *
83                                                     progressbar);
84
85 GtkWidget *hildon_note_new_information(GtkWindow * parent,
86                                        const gchar * description);
87                                        
88 GtkWidget *hildon_note_new_information_with_icon_name(GtkWindow * parent,
89                                                        const gchar *
90                                                        description,
91                                                        const gchar *
92                                                        icon_name);
93
94 GtkWidget *hildon_note_new_information_with_icon_stock(GtkWindow * parent,
95                                                        const gchar *
96                                                        description,
97                                                        const gchar *
98                                                        stock_id);
99                                                        
100 GtkWidget *hildon_note_new_information_with_icon_theme(GtkWindow * parent,
101                                                        const gchar *
102                                                        description,
103                                                        const gchar *
104                                                        icon);
105                                                        
106 void hildon_note_set_button_text(HildonNote * note, const gchar * text);
107
108 GType hildon_note_get_type(void);
109
110 G_END_DECLS
111 #endif /* __HILDON_NOTE_H__ */