]> www.fi.muni.cz Git - evince.git/blob - shell/ev-window.h
Remove the preview mode from EvWindow. EvPrintOperation now launches
[evince.git] / shell / ev-window.h
1 /* this file is part of evince, a gnome document viewer
2  *
3  *  Copyright (C) 2004 Martin Kretzschmar
4  *
5  *  Author:
6  *    Martin Kretzschmar <martink@gnome.org>
7  *
8  * Evince is free software; you can redistribute it and/or modify it
9  * under the terms of the GNU General Public License as published by
10  * the Free Software Foundation; either version 2 of the License, or
11  * (at your option) any later version.
12  *
13  * Evince 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  * General Public License for more details.
17  *
18  * You should have received a copy of the GNU General Public License
19  * along with this program; if not, write to the Free Software
20  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
21  */
22
23 #ifndef EV_WINDOW_H
24 #define EV_WINDOW_H
25
26 #include <glib.h>
27 #include <gtk/gtk.h>
28
29 #include "ev-link.h"
30 #include "ev-page-cache.h"
31
32 G_BEGIN_DECLS
33
34 typedef enum {
35         EV_WINDOW_MODE_NORMAL,
36         EV_WINDOW_MODE_FULLSCREEN,
37         EV_WINDOW_MODE_PRESENTATION
38 } EvWindowRunMode;
39
40 typedef struct {
41         gint start;
42         gint end;
43 } EvPrintRange;
44
45 typedef enum {
46         EV_PRINT_PAGE_SET_ALL,
47         EV_PRINT_PAGE_SET_EVEN,
48         EV_PRINT_PAGE_SET_ODD
49 } EvPrintPageSet;
50
51 typedef struct _EvWindow EvWindow;
52 typedef struct _EvWindowClass EvWindowClass;
53 typedef struct _EvWindowPrivate EvWindowPrivate;
54
55 #define EV_TYPE_WINDOW                  (ev_window_get_type())
56 #define EV_WINDOW(object)               (G_TYPE_CHECK_INSTANCE_CAST((object), EV_TYPE_WINDOW, EvWindow))
57 #define EV_WINDOW_CLASS(klass)          (G_TYPE_CHECK_CLASS_CAST((klass), EV_TYPE_WINDOW, EvWindowClass))
58 #define EV_IS_WINDOW(object)            (G_TYPE_CHECK_INSTANCE_TYPE((object), EV_TYPE_WINDOW))
59 #define EV_IS_WINDOW_CLASS(klass)       (G_TYPE_CHECK_CLASS_TYPE((klass), EV_TYPE_WINDOW))
60 #define EV_WINDOW_GET_CLASS(object)     (G_TYPE_INSTANCE_GET_CLASS((object), EV_TYPE_WINDOW, EvWindowClass))
61
62
63 struct _EvWindow {
64         GtkWindow               base_instance;
65         EvWindowPrivate         *priv;
66 };
67
68 struct _EvWindowClass {
69         GtkWindowClass          base_class;
70 };
71
72 GType           ev_window_get_type        (void);
73 GtkWidget      *ev_window_new             (void);
74 const char     *ev_window_get_uri         (EvWindow       *ev_window);
75 void            ev_window_open_uri        (EvWindow       *ev_window,
76                                            const char     *uri,
77                                            EvLinkDest     *dest,
78                                            EvWindowRunMode mode,
79                                            const gchar    *search_string);
80 gboolean        ev_window_is_empty        (const EvWindow *ev_window);
81 void            ev_window_print_range     (EvWindow       *ev_window,
82                                            int             first_page,
83                                            int             last_page);
84
85 G_END_DECLS
86
87 #endif /* !EV_WINDOW_H */