]> www.fi.muni.cz Git - evince.git/blob - shell/ev-sidebar.h
Small rework of sidebar pages handling. See bug #164811 for details
[evince.git] / shell / ev-sidebar.h
1 /* ev-sidebar.h
2  *  this file is part of evince, a gnome document viewer
3  * 
4  * Copyright (C) 2004 Red Hat, Inc.
5  *
6  * Author:
7  *   Jonathan Blandford <jrb@alum.mit.edu>
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., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
22  */
23
24 #ifndef __EV_SIDEBAR_H__
25 #define __EV_SIDEBAR_H__
26
27 #include <gtk/gtkvbox.h>
28 #include "ev-document.h"
29
30 G_BEGIN_DECLS
31
32 typedef struct _EvSidebar EvSidebar;
33 typedef struct _EvSidebarClass EvSidebarClass;
34 typedef struct _EvSidebarPrivate EvSidebarPrivate;
35
36 #define EV_TYPE_SIDEBAR              (ev_sidebar_get_type())
37 #define EV_SIDEBAR(object)           (G_TYPE_CHECK_INSTANCE_CAST((object), EV_TYPE_SIDEBAR, EvSidebar))
38 #define EV_SIDEBAR_CLASS(klass)      (G_TYPE_CHACK_CLASS_CAST((klass), EV_TYPE_SIDEBAR, EvSidebarClass))
39 #define EV_IS_SIDEBAR(object)        (G_TYPE_CHECK_INSTANCE_TYPE((object), EV_TYPE_SIDEBAR))
40 #define EV_IS_SIDEBAR_CLASS(klass)   (G_TYPE_CHECK_CLASS_TYPE((klass), EV_TYPE_SIDEBAR))
41 #define EV_SIDEBAR_GET_CLASS(object) (G_TYPE_INSTANCE_GET_CLASS((object), EV_TYPE_SIDEBAR, EvSidebarClass))
42
43 struct _EvSidebar {
44         GtkVBox base_instance;
45
46         EvSidebarPrivate *priv;
47 };
48
49 struct _EvSidebarClass {
50         GtkVBoxClass base_class;
51 };
52
53 GType      ev_sidebar_get_type             (void);
54 GtkWidget *ev_sidebar_new                  (void);
55 void       ev_sidebar_add_page             (EvSidebar   *ev_sidebar,
56                                             GtkWidget   *main_widget);
57 void       ev_sidebar_set_document         (EvSidebar   *ev_sidebar,
58                                             EvDocument  *document);
59
60 G_END_DECLS
61
62 #endif /* __EV_SIDEBAR_H__ */
63
64