]> www.fi.muni.cz Git - evince.git/blob - shell/ev-message-area.h
[dualscreen] fix crash on ctrl+w and fix control window closing
[evince.git] / shell / ev-message-area.h
1 /* ev-message-area.h
2  *  this file is part of evince, a gnome document viewer
3  *
4  * Copyright (C) 2007 Carlos Garcia Campos
5  *
6  * Author:
7  *   Carlos Garcia Campos <carlosgc@gnome.org>
8  *
9  * Evince is free software; you can redistribute it and/or modify it
10  * under the terms of the GNU General Public License as published by
11  * the Free Software Foundation; either version 2 of the License, or
12  * (at your option) any later version.
13  *
14  * Evince is distributed in the hope that it will be useful, but
15  * WITHOUT ANY WARRANTY; without even the implied warranty of
16  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
17  * General Public License for more details.
18  *
19  * You should have received a copy of the GNU General Public License
20  * along with this program; if not, write to the Free Software
21  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
22  */
23
24 #ifndef EV_MESSAGE_AREA_H
25 #define EV_MESSAGE_AREA_H
26
27 #include <gtk/gtk.h>
28
29 G_BEGIN_DECLS
30
31 #define EV_TYPE_MESSAGE_AREA                  (ev_message_area_get_type ())
32 #define EV_MESSAGE_AREA(obj)                  (G_TYPE_CHECK_INSTANCE_CAST ((obj), EV_TYPE_MESSAGE_AREA, EvMessageArea))
33 #define EV_MESSAGE_AREA_CLASS(klass)          (G_TYPE_CHECK_CLASS_CAST ((klass), EV_TYPE_MESSAGE_AREA, EvMessageAreaClass))
34 #define EV_IS_MESSAGE_AREA(obj)               (G_TYPE_CHECK_INSTANCE_TYPE ((obj), EV_TYPE_MESSAGE_AREA))
35 #define EV_IS_MESSAGE_AREA_CLASS(klass)       (G_TYPE_CHECK_CLASS_TYPE ((klass), EV_TYPE_MESSAGE_AREA))
36 #define EV_MESSAGE_AREA_GET_CLASS(obj)        (G_TYPE_INSTANCE_GET_CLASS ((obj), EV_TYPE_MESSAGE_AREA, EvMessageAreaClass))
37
38 typedef struct _EvMessageArea        EvMessageArea;
39 typedef struct _EvMessageAreaClass   EvMessageAreaClass;
40 typedef struct _EvMessageAreaPrivate EvMessageAreaPrivate;
41
42 struct _EvMessageArea {
43         GtkInfoBar parent_instance;
44
45         /*< private >*/
46         EvMessageAreaPrivate *priv;
47 };
48
49 struct _EvMessageAreaClass {
50         GtkInfoBarClass parent_class;
51 };
52
53 GType      ev_message_area_get_type             (void) G_GNUC_CONST;
54 GtkWidget *ev_message_area_new                  (GtkMessageType type,
55                                                  const gchar   *text,
56                                                  const gchar   *first_button_text,
57                                                  ...);
58 void       ev_message_area_set_image            (EvMessageArea *area,
59                                                  GtkWidget     *image);
60 void       ev_message_area_set_image_from_stock (EvMessageArea *area,
61                                                  const gchar   *stock_id);
62 void       ev_message_area_set_text             (EvMessageArea *area,
63                                                  const gchar   *str);
64 void       ev_message_area_set_secondary_text   (EvMessageArea *area,
65                                                  const gchar   *str);
66
67 void      _ev_message_area_add_buttons_valist   (EvMessageArea *area,
68                                                  const gchar   *first_button_text,
69                                                  va_list        args);
70 GtkWidget *_ev_message_area_get_main_box        (EvMessageArea *area);
71
72 G_END_DECLS
73
74 #endif /* EV_MESSAGE_AREA_H */