Cleanup main.h header
[geeqie.git] / src / layout-image.h
1 /*
2  * Copyright (C) 2006 John Ellis
3  * Copyright (C) 2008 - 2016 The Geeqie Team
4  *
5  * Author: John Ellis
6  *
7  * This program is free software; you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation; either version 2 of the License, or
10  * (at your option) any later version.
11  *
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License along
18  * with this program; if not, write to the Free Software Foundation, Inc.,
19  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
20  */
21
22 #ifndef LAYOUT_IMAGE_H
23 #define LAYOUT_IMAGE_H
24
25 #include <gtk/gtk.h>
26
27 #include "typedefs.h"
28
29 struct CollectInfo;
30 struct CollectionData;
31 struct FileData;
32 struct LayoutWindow;
33
34 GtkWidget *layout_image_new(LayoutWindow *lw, gint i);
35 void layout_image_activate(LayoutWindow *lw, gint i, gboolean force);
36 GtkWidget *layout_image_setup_split_none(LayoutWindow *lw);
37 GtkWidget *layout_image_setup_split_hv(LayoutWindow *lw, gboolean horizontal);
38 GtkWidget *layout_image_setup_split(LayoutWindow *lw, ImageSplitMode mode);
39
40 void layout_image_set_fd(LayoutWindow *lw, FileData *fd);
41 void layout_image_set_with_ahead(LayoutWindow *lw, FileData *fd, FileData *read_ahead_fd);
42
43 void layout_image_set_index(LayoutWindow *lw, gint index);
44 void layout_image_set_collection(LayoutWindow *lw, CollectionData *cd, CollectInfo *info);
45
46 void layout_image_refresh(LayoutWindow *lw);
47
48 void layout_image_color_profile_set(LayoutWindow *lw,
49                                     gint input_type,
50                                     gboolean use_image);
51 gboolean layout_image_color_profile_get(LayoutWindow *lw,
52                                     gint *input_type,
53                                     gboolean *use_image);
54 void layout_image_color_profile_set_use(LayoutWindow *lw, gint enable);
55 gboolean layout_image_color_profile_get_use(LayoutWindow *lw);
56 gboolean layout_image_color_profile_get_status(LayoutWindow *lw, gchar **image_profile, gchar **screen_profile);
57
58
59 const gchar *layout_image_get_path(LayoutWindow *lw);
60 FileData *layout_image_get_fd(LayoutWindow *lw);
61 CollectionData *layout_image_get_collection(LayoutWindow *lw, CollectInfo **info);
62 gint layout_image_get_index(LayoutWindow *lw);
63
64
65 void layout_image_scroll(LayoutWindow *lw, gint x, gint y, gboolean connect_scroll);
66 void layout_image_zoom_adjust(LayoutWindow *lw, gdouble increment, gboolean connect_zoom);
67 void layout_image_zoom_adjust_at_point(LayoutWindow *lw, gdouble increment, gint x, gint y, gboolean connect_zoom);
68 void layout_image_zoom_set(LayoutWindow *lw, gdouble zoom, gboolean connect_zoom);
69 void layout_image_zoom_set_fill_geometry(LayoutWindow *lw, gboolean vertical, gboolean connect_zoom);
70 void layout_image_alter_orientation(LayoutWindow *lw, AlterType type);
71 void layout_image_set_desaturate(LayoutWindow *lw, gboolean desaturate);
72 gboolean layout_image_get_desaturate(LayoutWindow *lw);
73 void layout_image_set_overunderexposed(LayoutWindow *lw, gboolean overunderexposed);
74 void layout_image_set_ignore_alpha(LayoutWindow *lw, gboolean ignore_alpha);
75
76 void layout_image_rating(LayoutWindow *lw, const gchar *rating);
77
78 /*
79 gint layout_image_stereo_get(LayoutWindow *lw);
80 void layout_image_stereo_set(LayoutWindow *lw, gint stereo_mode);
81 */
82 void layout_image_stereo_swap(LayoutWindow *lw);
83
84 gint layout_image_stereo_pixbuf_get(LayoutWindow *lw);
85 void layout_image_stereo_pixbuf_set(LayoutWindow *lw, gint stereo_mode);
86
87 void layout_image_next(LayoutWindow *lw);
88 void layout_image_prev(LayoutWindow *lw);
89 void layout_image_first(LayoutWindow *lw);
90 void layout_image_last(LayoutWindow *lw);
91
92 void layout_image_menu_popup(LayoutWindow *lw);
93
94 void layout_image_to_root(LayoutWindow *lw);
95
96 void layout_image_full_screen_start(LayoutWindow *lw);
97 void layout_image_full_screen_stop(LayoutWindow *lw);
98 void layout_image_full_screen_toggle(LayoutWindow *lw);
99 gboolean layout_image_full_screen_active(LayoutWindow *lw);
100
101 void layout_image_slideshow_start(LayoutWindow *lw);
102 void layout_image_slideshow_start_from_list(LayoutWindow *lw, GList *list);
103 void layout_image_slideshow_stop(LayoutWindow *lw);
104 void layout_image_slideshow_toggle(LayoutWindow *lw);
105 gboolean layout_image_slideshow_active(LayoutWindow *lw);
106 gboolean layout_image_slideshow_pause_toggle(LayoutWindow *lw);
107 gboolean layout_image_slideshow_paused(LayoutWindow *lw);
108
109 void layout_image_animate_toggle(LayoutWindow *lw);
110
111 void layout_image_notify_cb(FileData *fd, NotifyType type, gpointer data);
112 void layout_image_reset_orientation(LayoutWindow *lw);
113 #endif
114 /* vim: set shiftwidth=8 softtabstop=0 cindent cinoptions={1s: */