annotate src/layout_util.c @ 276:4f526d436873

Implement secure rc file saving. First data is written to a temporary file, then if nothing was wrong, this file is renamed to the final name. This way the risk of corrupted rc file is greatly reduced. The code is borrowed from ELinks (http://elinks.cz).
author zas_
date Tue, 08 Apr 2008 21:55:58 +0000
parents e0e2c2b72c5a
children 04abf5b160eb
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1 /*
196
f6e307c7bad6 rename GQview -> Geeqie over the code
nadvornik
parents: 163
diff changeset
2 * Geeqie
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
3 * (C) 2004 John Ellis
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
4 *
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
5 * Author: John Ellis
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
6 *
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
7 * This software is released under the GNU General Public License (GNU GPL).
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
8 * Please read the included file COPYING for more information.
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
9 * This software comes with no warranty of any kind, use at your own risk!
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
10 */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
11
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
12
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
13 #include "gqview.h"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
14 #include "layout_util.h"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
15
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
16 #include "bar_info.h"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
17 #include "bar_exif.h"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
18 #include "bar_sort.h"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
19 #include "cache_maint.h"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
20 #include "collect.h"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
21 #include "collect-dlg.h"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
22 #include "dupe.h"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
23 #include "editors.h"
249
c1d7b6d5f228 Add missing #include.
zas_
parents: 196
diff changeset
24 #include "filelist.h"
94
50dc5a14d37b Thu Nov 2 17:51:31 2006 John Ellis <johne@verizon.net>
gqview
parents: 86
diff changeset
25 #include "img-view.h"
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
26 #include "info.h"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
27 #include "layout_image.h"
12
147f4c4b9025 ##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents: 9
diff changeset
28 #include "pan-view.h"
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
29 #include "pixbuf_util.h"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
30 #include "preferences.h"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
31 #include "print.h"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
32 #include "search.h"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
33 #include "utilops.h"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
34 #include "ui_bookmark.h"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
35 #include "ui_fileops.h"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
36 #include "ui_menu.h"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
37 #include "ui_misc.h"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
38 #include "ui_tabcomp.h"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
39
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
40 #include <gdk/gdkkeysyms.h> /* for keyboard values */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
41
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
42
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
43 #define MENU_EDIT_ACTION_OFFSET 16
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
44
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
45
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
46 /*
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
47 *-----------------------------------------------------------------------------
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
48 * keyboard handler
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
49 *-----------------------------------------------------------------------------
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
50 */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
51
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
52 static guint tree_key_overrides[] = {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
53 GDK_Page_Up, GDK_KP_Page_Up,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
54 GDK_Page_Down, GDK_KP_Page_Down,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
55 GDK_Home, GDK_KP_Home,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
56 GDK_End, GDK_KP_End
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
57 };
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
58
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
59 static gint layout_key_match(guint keyval)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
60 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
61 gint i;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
62
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
63 for (i = 0; i < sizeof(tree_key_overrides) / sizeof(guint); i++)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
64 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
65 if (keyval == tree_key_overrides[i]) return TRUE;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
66 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
67
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
68 return FALSE;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
69 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
70
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
71 gint layout_key_press_cb(GtkWidget *widget, GdkEventKey *event, gpointer data)
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
72 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
73 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
74 gint stop_signal = FALSE;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
75 gint x = 0;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
76 gint y = 0;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
77
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
78 if (lw->path_entry && GTK_WIDGET_HAS_FOCUS(lw->path_entry))
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
79 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
80 if (event->keyval == GDK_Escape && lw->path)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
81 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
82 gtk_entry_set_text(GTK_ENTRY(lw->path_entry), lw->path);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
83 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
84
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
85 /* the gtkaccelgroup of the window is stealing presses before they get to the entry (and more),
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
86 * so when the some widgets have focus, give them priority (HACK)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
87 */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
88 if (gtk_widget_event(lw->path_entry, (GdkEvent *)event))
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
89 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
90 return TRUE;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
91 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
92 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
93 if (lw->vdt && GTK_WIDGET_HAS_FOCUS(lw->vdt->treeview) &&
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
94 !layout_key_match(event->keyval) &&
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
95 gtk_widget_event(lw->vdt->treeview, (GdkEvent *)event))
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
96 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
97 return TRUE;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
98 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
99 if (lw->bar_info &&
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
100 bar_info_event(lw->bar_info, (GdkEvent *)event))
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
101 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
102 return TRUE;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
103 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
104
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
105 /*
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
106 if (event->type == GDK_KEY_PRESS && lw->full_screen &&
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
107 gtk_accel_groups_activate(G_OBJECT(lw->window), event->keyval, event->state))
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
108 return TRUE;
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
109 */
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
110
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
111 if (lw->image &&
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
112 (GTK_WIDGET_HAS_FOCUS(lw->image->widget) || (lw->tools && widget == lw->window) || lw->full_screen) )
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
113 {
84
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
114 stop_signal = TRUE;
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
115 switch (event->keyval)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
116 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
117 case GDK_Left: case GDK_KP_Left:
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
118 x -= 1;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
119 break;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
120 case GDK_Right: case GDK_KP_Right:
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
121 x += 1;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
122 break;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
123 case GDK_Up: case GDK_KP_Up:
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
124 y -= 1;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
125 break;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
126 case GDK_Down: case GDK_KP_Down:
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
127 y += 1;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
128 break;
84
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
129 default:
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
130 stop_signal = FALSE;
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
131 break;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
132 }
94
50dc5a14d37b Thu Nov 2 17:51:31 2006 John Ellis <johne@verizon.net>
gqview
parents: 86
diff changeset
133
50dc5a14d37b Thu Nov 2 17:51:31 2006 John Ellis <johne@verizon.net>
gqview
parents: 86
diff changeset
134 if (!stop_signal &&
50dc5a14d37b Thu Nov 2 17:51:31 2006 John Ellis <johne@verizon.net>
gqview
parents: 86
diff changeset
135 !(event->state & GDK_CONTROL_MASK))
50dc5a14d37b Thu Nov 2 17:51:31 2006 John Ellis <johne@verizon.net>
gqview
parents: 86
diff changeset
136 {
50dc5a14d37b Thu Nov 2 17:51:31 2006 John Ellis <johne@verizon.net>
gqview
parents: 86
diff changeset
137 stop_signal = TRUE;
50dc5a14d37b Thu Nov 2 17:51:31 2006 John Ellis <johne@verizon.net>
gqview
parents: 86
diff changeset
138 switch (event->keyval)
50dc5a14d37b Thu Nov 2 17:51:31 2006 John Ellis <johne@verizon.net>
gqview
parents: 86
diff changeset
139 {
50dc5a14d37b Thu Nov 2 17:51:31 2006 John Ellis <johne@verizon.net>
gqview
parents: 86
diff changeset
140 case GDK_Menu:
50dc5a14d37b Thu Nov 2 17:51:31 2006 John Ellis <johne@verizon.net>
gqview
parents: 86
diff changeset
141 layout_image_menu_popup(lw);
50dc5a14d37b Thu Nov 2 17:51:31 2006 John Ellis <johne@verizon.net>
gqview
parents: 86
diff changeset
142 break;
50dc5a14d37b Thu Nov 2 17:51:31 2006 John Ellis <johne@verizon.net>
gqview
parents: 86
diff changeset
143 default:
50dc5a14d37b Thu Nov 2 17:51:31 2006 John Ellis <johne@verizon.net>
gqview
parents: 86
diff changeset
144 stop_signal = FALSE;
50dc5a14d37b Thu Nov 2 17:51:31 2006 John Ellis <johne@verizon.net>
gqview
parents: 86
diff changeset
145 break;
50dc5a14d37b Thu Nov 2 17:51:31 2006 John Ellis <johne@verizon.net>
gqview
parents: 86
diff changeset
146 }
50dc5a14d37b Thu Nov 2 17:51:31 2006 John Ellis <johne@verizon.net>
gqview
parents: 86
diff changeset
147 }
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
148 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
149
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
150 if (x != 0 || y!= 0)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
151 {
84
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
152 if (event->state & GDK_SHIFT_MASK)
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
153 {
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
154 x *= 3;
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
155 y *= 3;
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
156 }
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
157
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
158 keyboard_scroll_calc(&x, &y, event);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
159 layout_image_scroll(lw, x, y);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
160 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
161
84
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
162 if (stop_signal) return stop_signal;
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
163
94
50dc5a14d37b Thu Nov 2 17:51:31 2006 John Ellis <johne@verizon.net>
gqview
parents: 86
diff changeset
164 if (event->state & GDK_CONTROL_MASK)
50dc5a14d37b Thu Nov 2 17:51:31 2006 John Ellis <johne@verizon.net>
gqview
parents: 86
diff changeset
165 {
159
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
166 stop_signal = FALSE;
94
50dc5a14d37b Thu Nov 2 17:51:31 2006 John Ellis <johne@verizon.net>
gqview
parents: 86
diff changeset
167 }
50dc5a14d37b Thu Nov 2 17:51:31 2006 John Ellis <johne@verizon.net>
gqview
parents: 86
diff changeset
168 else
84
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
169 {
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
170 stop_signal = TRUE;
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
171 switch (event->keyval)
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
172 {
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
173 case '+': case GDK_KP_Add:
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
174 layout_image_zoom_adjust(lw, get_zoom_increment());
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
175 break;
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
176 case GDK_KP_Subtract:
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
177 layout_image_zoom_adjust(lw, -get_zoom_increment());
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
178 break;
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
179 case GDK_KP_Multiply:
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
180 layout_image_zoom_set(lw, 0.0);
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
181 break;
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
182 case GDK_KP_Divide:
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
183 layout_image_zoom_set(lw, 1.0);
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
184 break;
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
185 case GDK_Page_Up: case GDK_KP_Page_Up:
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
186 layout_image_prev(lw);
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
187 break;
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
188 case GDK_Page_Down: case GDK_KP_Page_Down:
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
189 layout_image_next(lw);
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
190 break;
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
191 case GDK_Delete: case GDK_KP_Delete:
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
192 if (enable_delete_key)
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
193 {
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
194 file_util_delete(NULL, layout_selection_list(lw), widget);
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
195 }
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
196 break;
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
197 case GDK_Escape:
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
198 /* FIXME:interrupting thumbs no longer allowed */
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
199 #if 0
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
200 interrupt_thumbs();
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
201 #endif
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
202 break;
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
203 case 'P': case 'p':
94
50dc5a14d37b Thu Nov 2 17:51:31 2006 John Ellis <johne@verizon.net>
gqview
parents: 86
diff changeset
204 if (!event->state & GDK_SHIFT_MASK)
50dc5a14d37b Thu Nov 2 17:51:31 2006 John Ellis <johne@verizon.net>
gqview
parents: 86
diff changeset
205 {
50dc5a14d37b Thu Nov 2 17:51:31 2006 John Ellis <johne@verizon.net>
gqview
parents: 86
diff changeset
206 layout_image_slideshow_pause_toggle(lw);
50dc5a14d37b Thu Nov 2 17:51:31 2006 John Ellis <johne@verizon.net>
gqview
parents: 86
diff changeset
207 }
50dc5a14d37b Thu Nov 2 17:51:31 2006 John Ellis <johne@verizon.net>
gqview
parents: 86
diff changeset
208 else
50dc5a14d37b Thu Nov 2 17:51:31 2006 John Ellis <johne@verizon.net>
gqview
parents: 86
diff changeset
209 {
50dc5a14d37b Thu Nov 2 17:51:31 2006 John Ellis <johne@verizon.net>
gqview
parents: 86
diff changeset
210 stop_signal = FALSE;
50dc5a14d37b Thu Nov 2 17:51:31 2006 John Ellis <johne@verizon.net>
gqview
parents: 86
diff changeset
211 }
84
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
212 break;
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
213 case 'V': case 'v':
86
cade6a52a165 Mon Oct 23 05:34:29 2006 John Ellis <johne@verizon.net>
gqview
parents: 84
diff changeset
214 case GDK_F11:
94
50dc5a14d37b Thu Nov 2 17:51:31 2006 John Ellis <johne@verizon.net>
gqview
parents: 86
diff changeset
215 layout_image_full_screen_toggle(lw);
84
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
216 break;
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
217 default:
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
218 stop_signal = FALSE;
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
219 break;
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
220 }
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
221 }
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
222
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
223 #if 0
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
224 if (stop_signal) g_signal_stop_emission_by_name(G_OBJECT(widget), "key_press_event");
84
ba3c39002a24 Fri Oct 20 08:00:08 2006 John Ellis <johne@verizon.net>
gqview
parents: 82
diff changeset
225 #endif
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
226
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
227 return stop_signal;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
228 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
229
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
230 void layout_keyboard_init(LayoutWindow *lw, GtkWidget *window)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
231 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
232 g_signal_connect(G_OBJECT(window), "key_press_event",
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
233 G_CALLBACK(layout_key_press_cb), lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
234 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
235
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
236 /*
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
237 *-----------------------------------------------------------------------------
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
238 * menu callbacks
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
239 *-----------------------------------------------------------------------------
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
240 */
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
241
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
242
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
243 static GtkWidget *layout_window(LayoutWindow *lw)
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
244 {
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
245 return lw->full_screen ? lw->full_screen->window : lw->window;
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
246 }
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
247
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
248 static void layout_menu_new_window_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
249 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
250 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
251 LayoutWindow *nw;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
252
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
253 if (lw->full_screen)
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
254 layout_image_full_screen_stop(lw);
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
255
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
256 nw = layout_new(NULL, FALSE, FALSE);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
257 layout_sort_set(nw, file_sort_method, file_sort_ascending);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
258 layout_set_path(nw, layout_get_path(lw));
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
259 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
260
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
261 static void layout_menu_new_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
262 {
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
263 LayoutWindow *lw = data;
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
264 if (lw->full_screen)
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
265 layout_image_full_screen_stop(lw);
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
266 collection_window_new(NULL);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
267 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
268
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
269 static void layout_menu_open_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
270 {
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
271 LayoutWindow *lw = data;
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
272 if (lw->full_screen)
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
273 layout_image_full_screen_stop(lw);
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
274 collection_dialog_load(NULL);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
275 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
276
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
277 static void layout_menu_search_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
278 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
279 LayoutWindow *lw = data;
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
280 if (lw->full_screen)
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
281 layout_image_full_screen_stop(lw);
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
282
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
283 search_new(lw->path, layout_image_get_path(lw));
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
284 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
285
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
286 static void layout_menu_dupes_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
287 {
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
288 LayoutWindow *lw = data;
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
289 if (lw->full_screen)
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
290 layout_image_full_screen_stop(lw);
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
291
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
292 dupe_window_new(DUPE_MATCH_NAME);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
293 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
294
12
147f4c4b9025 ##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents: 9
diff changeset
295 static void layout_menu_pan_cb(GtkAction *action, gpointer data)
147f4c4b9025 ##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents: 9
diff changeset
296 {
147f4c4b9025 ##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents: 9
diff changeset
297 LayoutWindow *lw = data;
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
298 if (lw->full_screen)
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
299 layout_image_full_screen_stop(lw);
12
147f4c4b9025 ##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents: 9
diff changeset
300
147f4c4b9025 ##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents: 9
diff changeset
301 pan_window_new(layout_get_path(lw));
147f4c4b9025 ##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents: 9
diff changeset
302 }
147f4c4b9025 ##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents: 9
diff changeset
303
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
304 static void layout_menu_print_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
305 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
306 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
307
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
308 print_window_new(layout_image_get_fd(lw), layout_selection_list(lw), layout_list(lw), layout_window(lw));
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
309 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
310
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
311 static void layout_menu_dir_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
312 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
313 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
314
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
315 file_util_create_dir(lw->path, layout_window(lw));
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
316 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
317
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
318 static void layout_menu_copy_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
319 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
320 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
321
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
322 file_util_copy(NULL, layout_selection_list(lw), NULL, layout_window(lw));
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
323 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
324
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
325 static void layout_menu_move_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
326 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
327 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
328
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
329 file_util_move(NULL, layout_selection_list(lw), NULL, layout_window(lw));
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
330 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
331
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
332 static void layout_menu_rename_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
333 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
334 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
335
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
336 file_util_rename(NULL, layout_selection_list(lw), layout_window(lw));
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
337 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
338
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
339 static void layout_menu_delete_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
340 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
341 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
342
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
343 file_util_delete(NULL, layout_selection_list(lw), layout_window(lw));
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
344 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
345
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
346 static void layout_menu_close_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
347 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
348 LayoutWindow *lw = data;
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
349 if (lw->full_screen)
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
350 layout_image_full_screen_stop(lw);
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
351
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
352 layout_close(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
353 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
354
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
355 static void layout_menu_exit_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
356 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
357 exit_gqview();
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
358 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
359
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
360 static void layout_menu_alter_90_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
361 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
362 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
363
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
364 layout_image_alter(lw, ALTER_ROTATE_90);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
365 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
366
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
367 static void layout_menu_alter_90cc_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
368 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
369 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
370
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
371 layout_image_alter(lw, ALTER_ROTATE_90_CC);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
372 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
373
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
374 static void layout_menu_alter_180_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
375 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
376 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
377
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
378 layout_image_alter(lw, ALTER_ROTATE_180);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
379 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
380
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
381 static void layout_menu_alter_mirror_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
382 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
383 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
384
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
385 layout_image_alter(lw, ALTER_MIRROR);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
386 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
387
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
388 static void layout_menu_alter_flip_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
389 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
390 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
391
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
392 layout_image_alter(lw, ALTER_FLIP);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
393 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
394
82
a4c1b7014e6e Thu Oct 19 15:20:51 2006 John Ellis <johne@verizon.net>
gqview
parents: 41
diff changeset
395 static void layout_menu_alter_desaturate_cb(GtkAction *action, gpointer data)
a4c1b7014e6e Thu Oct 19 15:20:51 2006 John Ellis <johne@verizon.net>
gqview
parents: 41
diff changeset
396 {
a4c1b7014e6e Thu Oct 19 15:20:51 2006 John Ellis <johne@verizon.net>
gqview
parents: 41
diff changeset
397 LayoutWindow *lw = data;
a4c1b7014e6e Thu Oct 19 15:20:51 2006 John Ellis <johne@verizon.net>
gqview
parents: 41
diff changeset
398
a4c1b7014e6e Thu Oct 19 15:20:51 2006 John Ellis <johne@verizon.net>
gqview
parents: 41
diff changeset
399 layout_image_alter(lw, ALTER_DESATURATE);
a4c1b7014e6e Thu Oct 19 15:20:51 2006 John Ellis <johne@verizon.net>
gqview
parents: 41
diff changeset
400 }
a4c1b7014e6e Thu Oct 19 15:20:51 2006 John Ellis <johne@verizon.net>
gqview
parents: 41
diff changeset
401
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
402 static void layout_menu_info_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
403 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
404 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
405 GList *list;
138
71e1ebee420e replaced gchar* path with FileData *fd
nadvornik
parents: 132
diff changeset
406 FileData *fd = NULL;
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
407
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
408 list = layout_selection_list(lw);
138
71e1ebee420e replaced gchar* path with FileData *fd
nadvornik
parents: 132
diff changeset
409 if (!list) fd = layout_image_get_fd(lw);
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
410
138
71e1ebee420e replaced gchar* path with FileData *fd
nadvornik
parents: 132
diff changeset
411 info_window_new(fd, list);
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
412 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
413
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
414
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
415 static void layout_menu_config_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
416 {
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
417 LayoutWindow *lw = data;
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
418 if (lw->full_screen)
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
419 layout_image_full_screen_stop(lw);
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
420
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
421 show_config_window();
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
422 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
423
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
424 static void layout_menu_remove_thumb_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
425 {
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
426 LayoutWindow *lw = data;
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
427 if (lw->full_screen)
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
428 layout_image_full_screen_stop(lw);
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
429
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
430 cache_manager_show();
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
431 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
432
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
433 static void layout_menu_wallpaper_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
434 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
435 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
436
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
437 layout_image_to_root(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
438 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
439
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
440 static void layout_menu_zoom_in_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
441 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
442 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
443
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
444 layout_image_zoom_adjust(lw, get_zoom_increment());
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
445 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
446
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
447 static void layout_menu_zoom_out_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
448 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
449 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
450
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
451 layout_image_zoom_adjust(lw, -get_zoom_increment());
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
452 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
453
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
454 static void layout_menu_zoom_1_1_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
455 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
456 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
457
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
458 layout_image_zoom_set(lw, 1.0);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
459 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
460
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
461 static void layout_menu_zoom_fit_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
462 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
463 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
464
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
465 layout_image_zoom_set(lw, 0.0);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
466 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
467
159
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
468 static void layout_menu_zoom_fit_hor_cb(GtkAction *action, gpointer data)
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
469 {
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
470 LayoutWindow *lw = data;
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
471
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
472 layout_image_zoom_set_fill_geometry(lw, TRUE);
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
473 }
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
474
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
475 static void layout_menu_zoom_fit_vert_cb(GtkAction *action, gpointer data)
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
476 {
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
477 LayoutWindow *lw = data;
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
478
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
479 layout_image_zoom_set_fill_geometry(lw, FALSE);
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
480 }
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
481
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
482 static void layout_menu_zoom_2_1_cb(GtkAction *action, gpointer data)
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
483 {
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
484 LayoutWindow *lw = data;
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
485
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
486 layout_image_zoom_set(lw, 2.0);
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
487 }
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
488
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
489 static void layout_menu_zoom_3_1_cb(GtkAction *action, gpointer data)
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
490 {
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
491 LayoutWindow *lw = data;
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
492
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
493 layout_image_zoom_set(lw, 3.0);
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
494 }
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
495 static void layout_menu_zoom_4_1_cb(GtkAction *action, gpointer data)
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
496 {
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
497 LayoutWindow *lw = data;
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
498
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
499 layout_image_zoom_set(lw, 4.0);
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
500 }
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
501
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
502 static void layout_menu_zoom_1_2_cb(GtkAction *action, gpointer data)
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
503 {
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
504 LayoutWindow *lw = data;
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
505
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
506 layout_image_zoom_set(lw, -2.0);
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
507 }
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
508
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
509 static void layout_menu_zoom_1_3_cb(GtkAction *action, gpointer data)
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
510 {
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
511 LayoutWindow *lw = data;
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
512
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
513 layout_image_zoom_set(lw, -3.0);
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
514 }
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
515
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
516 static void layout_menu_zoom_1_4_cb(GtkAction *action, gpointer data)
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
517 {
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
518 LayoutWindow *lw = data;
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
519
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
520 layout_image_zoom_set(lw, -4.0);
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
521 }
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
522
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
523
156
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
524 static void layout_menu_split_cb(GtkRadioAction *action, GtkRadioAction *current, gpointer data)
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
525 {
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
526 LayoutWindow *lw = data;
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
527 if (lw->full_screen)
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
528 layout_image_full_screen_stop(lw);
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
529
156
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
530 ImageSplitMode mode = gtk_radio_action_get_current_value(action);
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
531
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
532 if (mode == lw->split_mode) mode = 0; /* toggle back */
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
533
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
534 layout_split_change(lw, mode);
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
535 }
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
536
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
537 static void layout_menu_connect_scroll_cb(GtkToggleAction *action, gpointer data)
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
538 {
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
539 LayoutWindow *lw = data;
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
540 lw->connect_scroll = gtk_toggle_action_get_active(action);
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
541 }
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
542
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
543 static void layout_menu_connect_zoom_cb(GtkToggleAction *action, gpointer data)
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
544 {
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
545 LayoutWindow *lw = data;
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
546 lw->connect_zoom = gtk_toggle_action_get_active(action);
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
547 }
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
548
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
549
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
550 static void layout_menu_thumb_cb(GtkToggleAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
551 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
552 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
553
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
554 layout_thumb_set(lw, gtk_toggle_action_get_active(action));
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
555 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
556
132
661cd91e5a7e First implementation of marks for all photos.
bruclik
parents: 122
diff changeset
557
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
558 static void layout_menu_list_cb(GtkRadioAction *action, GtkRadioAction *current, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
559 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
560 LayoutWindow *lw = data;
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
561 if (lw->full_screen)
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
562 layout_image_full_screen_stop(lw);
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
563
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
564 layout_views_set(lw, lw->tree_view, (gtk_radio_action_get_current_value(action) == 1));
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
565 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
566
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
567 static void layout_menu_tree_cb(GtkToggleAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
568 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
569 LayoutWindow *lw = data;
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
570 if (lw->full_screen)
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
571 layout_image_full_screen_stop(lw);
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
572
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
573 layout_views_set(lw, gtk_toggle_action_get_active(action), lw->icon_view);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
574 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
575
159
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
576 static void layout_menu_view_in_new_window_cb(GtkAction *action, gpointer data)
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
577 {
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
578 LayoutWindow *lw = data;
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
579
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
580 if (lw->full_screen)
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
581 layout_image_full_screen_stop(lw);
159
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
582 view_window_new(layout_image_get_fd(lw));
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
583 }
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
584
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
585 static void layout_menu_fullscreen_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
586 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
587 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
588
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
589 layout_image_full_screen_toggle(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
590 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
591
159
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
592 static void layout_menu_overlay_cb(GtkAction *action, gpointer data)
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
593 {
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
594 LayoutWindow *lw = data;
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
595
273
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
596 if (image_osd_get(lw->image, NULL, NULL))
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
597 {
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
598 if (image_osd_histogram_onoff_status(lw->image))
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
599 {
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
600 image_osd_histogram_onoff_toggle(lw->image, 0);
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
601 layout_image_overlay_update(lw);
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
602 }
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
603 else
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
604 layout_image_overlay_toggle(lw);
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
605 }
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
606 else
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
607 {
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
608 layout_image_overlay_toggle(lw);
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
609 image_osd_histogram_onoff_toggle(lw->image, 1);
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
610 layout_image_overlay_update(lw);
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
611 }
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
612 }
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
613
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
614 static void layout_menu_histogram_chan_cb(GtkAction *action, gpointer data)
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
615 {
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
616 LayoutWindow *lw = data;
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
617
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
618 image_osd_histogram_chan_toggle(lw->image);
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
619 layout_image_overlay_update(lw);
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
620 }
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
621
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
622 static void layout_menu_histogram_log_cb(GtkAction *action, gpointer data)
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
623 {
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
624 LayoutWindow *lw = data;
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
625
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
626 image_osd_histogram_log_toggle(lw->image);
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
627 layout_image_overlay_update(lw);
159
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
628 }
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
629
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
630 static void layout_menu_refresh_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
631 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
632 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
633
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
634 layout_refresh(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
635 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
636
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
637 static void layout_menu_float_cb(GtkToggleAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
638 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
639 LayoutWindow *lw = data;
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
640 if (lw->full_screen)
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
641 layout_image_full_screen_stop(lw);
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
642
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
643 if (lw->tools_float != gtk_toggle_action_get_active(action))
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
644 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
645 layout_tools_float_toggle(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
646 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
647 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
648
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
649 static void layout_menu_hide_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
650 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
651 LayoutWindow *lw = data;
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
652 if (lw->full_screen)
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
653 layout_image_full_screen_stop(lw);
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
654
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
655 layout_tools_hide_toggle(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
656 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
657
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
658 static void layout_menu_toolbar_cb(GtkToggleAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
659 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
660 LayoutWindow *lw = data;
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
661 if (lw->full_screen)
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
662 layout_image_full_screen_stop(lw);
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
663
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
664 if (lw->toolbar_hidden != gtk_toggle_action_get_active(action))
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
665 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
666 layout_toolbar_toggle(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
667 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
668 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
669
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
670 static void layout_menu_bar_info_cb(GtkToggleAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
671 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
672 LayoutWindow *lw = data;
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
673 if (lw->full_screen)
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
674 layout_image_full_screen_stop(lw);
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
675
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
676 if (lw->bar_info_enabled != gtk_toggle_action_get_active(action))
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
677 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
678 layout_bar_info_toggle(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
679 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
680 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
681
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
682 static void layout_menu_bar_exif_cb(GtkToggleAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
683 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
684 LayoutWindow *lw = data;
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
685 if (lw->full_screen)
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
686 layout_image_full_screen_stop(lw);
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
687
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
688 if (lw->bar_exif_enabled != gtk_toggle_action_get_active(action))
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
689 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
690 layout_bar_exif_toggle(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
691 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
692 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
693
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
694 static void layout_menu_bar_sort_cb(GtkToggleAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
695 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
696 LayoutWindow *lw = data;
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
697 if (lw->full_screen)
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
698 layout_image_full_screen_stop(lw);
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
699
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
700 if (lw->bar_sort_enabled != gtk_toggle_action_get_active(action))
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
701 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
702 layout_bar_sort_toggle(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
703 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
704 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
705
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
706 static void layout_menu_slideshow_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
707 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
708 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
709
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
710 layout_image_slideshow_toggle(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
711 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
712
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
713 static void layout_menu_help_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
714 {
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
715 LayoutWindow *lw = data;
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
716 if (lw->full_screen)
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
717 layout_image_full_screen_stop(lw);
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
718 help_window_show("html_contents");
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
719 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
720
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
721 static void layout_menu_help_keys_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
722 {
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
723 LayoutWindow *lw = data;
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
724 if (lw->full_screen)
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
725 layout_image_full_screen_stop(lw);
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
726 help_window_show("documentation");
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
727 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
728
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
729 static void layout_menu_notes_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
730 {
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
731 LayoutWindow *lw = data;
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
732 if (lw->full_screen)
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
733 layout_image_full_screen_stop(lw);
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
734 help_window_show("release_notes");
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
735 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
736
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
737 static void layout_menu_about_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
738 {
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
739 LayoutWindow *lw = data;
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
740 if (lw->full_screen)
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
741 layout_image_full_screen_stop(lw);
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
742 show_about_window();
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
743 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
744
162
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
745
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
746 /*
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
747 *-----------------------------------------------------------------------------
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
748 * select menu
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
749 *-----------------------------------------------------------------------------
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
750 */
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
751
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
752 static void layout_menu_select_all_cb(GtkAction *action, gpointer data)
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
753 {
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
754 LayoutWindow *lw = data;
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
755
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
756 layout_select_all(lw);
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
757 }
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
758
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
759 static void layout_menu_unselect_all_cb(GtkAction *action, gpointer data)
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
760 {
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
761 LayoutWindow *lw = data;
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
762
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
763 layout_select_none(lw);
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
764 }
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
765
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
766 static void layout_menu_marks_cb(GtkToggleAction *action, gpointer data)
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
767 {
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
768 LayoutWindow *lw = data;
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
769
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
770 layout_marks_set(lw, gtk_toggle_action_get_active(action));
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
771 }
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
772
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
773
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
774 static void layout_menu_set_mark_sel_cb(GtkAction *action, gpointer data)
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
775 {
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
776 LayoutWindow *lw = data;
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
777 gint mark = GPOINTER_TO_INT(g_object_get_data(G_OBJECT(action), "mark_num"));
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
778 g_assert(mark >= 1 && mark <= FILEDATA_MARKS_SIZE);
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
779 mark--;
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
780
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
781 layout_selection_to_mark(lw, mark, STM_MODE_SET);
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
782 }
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
783
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
784 static void layout_menu_res_mark_sel_cb(GtkAction *action, gpointer data)
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
785 {
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
786 LayoutWindow *lw = data;
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
787 gint mark = GPOINTER_TO_INT(g_object_get_data(G_OBJECT(action), "mark_num"));
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
788 g_assert(mark >= 1 && mark <= FILEDATA_MARKS_SIZE);
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
789 mark--;
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
790
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
791 layout_selection_to_mark(lw, mark, STM_MODE_RESET);
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
792 }
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
793
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
794 static void layout_menu_toggle_mark_sel_cb(GtkAction *action, gpointer data)
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
795 {
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
796 LayoutWindow *lw = data;
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
797 gint mark = GPOINTER_TO_INT(g_object_get_data(G_OBJECT(action), "mark_num"));
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
798 g_assert(mark >= 1 && mark <= FILEDATA_MARKS_SIZE);
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
799 mark--;
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
800
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
801 layout_selection_to_mark(lw, mark, STM_MODE_TOGGLE);
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
802 }
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
803
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
804 static void layout_menu_sel_mark_cb(GtkAction *action, gpointer data)
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
805 {
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
806 LayoutWindow *lw = data;
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
807 gint mark = GPOINTER_TO_INT(g_object_get_data(G_OBJECT(action), "mark_num"));
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
808 g_assert(mark >= 1 && mark <= FILEDATA_MARKS_SIZE);
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
809 mark--;
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
810
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
811 layout_mark_to_selection(lw, mark, MTS_MODE_SET);
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
812 }
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
813
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
814 static void layout_menu_sel_mark_or_cb(GtkAction *action, gpointer data)
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
815 {
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
816 LayoutWindow *lw = data;
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
817 gint mark = GPOINTER_TO_INT(g_object_get_data(G_OBJECT(action), "mark_num"));
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
818 g_assert(mark >= 1 && mark <= FILEDATA_MARKS_SIZE);
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
819 mark--;
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
820
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
821 layout_mark_to_selection(lw, mark, MTS_MODE_OR);
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
822 }
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
823
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
824 static void layout_menu_sel_mark_and_cb(GtkAction *action, gpointer data)
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
825 {
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
826 LayoutWindow *lw = data;
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
827 gint mark = GPOINTER_TO_INT(g_object_get_data(G_OBJECT(action), "mark_num"));
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
828 g_assert(mark >= 1 && mark <= FILEDATA_MARKS_SIZE);
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
829 mark--;
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
830
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
831 layout_mark_to_selection(lw, mark, MTS_MODE_AND);
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
832 }
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
833
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
834 static void layout_menu_sel_mark_minus_cb(GtkAction *action, gpointer data)
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
835 {
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
836 LayoutWindow *lw = data;
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
837 gint mark = GPOINTER_TO_INT(g_object_get_data(G_OBJECT(action), "mark_num"));
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
838 g_assert(mark >= 1 && mark <= FILEDATA_MARKS_SIZE);
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
839 mark--;
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
840
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
841 layout_mark_to_selection(lw, mark, MTS_MODE_MINUS);
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
842 }
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
843
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
844
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
845 /*
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
846 *-----------------------------------------------------------------------------
159
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
847 * go menu
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
848 *-----------------------------------------------------------------------------
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
849 */
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
850
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
851 static void layout_menu_image_first_cb(GtkAction *action, gpointer data)
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
852 {
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
853 LayoutWindow *lw = data;
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
854 layout_image_first(lw);
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
855 }
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
856
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
857 static void layout_menu_image_prev_cb(GtkAction *action, gpointer data)
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
858 {
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
859 LayoutWindow *lw = data;
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
860 layout_image_prev(lw);
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
861 }
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
862
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
863 static void layout_menu_image_next_cb(GtkAction *action, gpointer data)
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
864 {
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
865 LayoutWindow *lw = data;
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
866 layout_image_next(lw);
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
867 }
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
868
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
869 static void layout_menu_image_last_cb(GtkAction *action, gpointer data)
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
870 {
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
871 LayoutWindow *lw = data;
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
872 layout_image_last(lw);
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
873 }
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
874
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
875
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
876 /*
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
877 *-----------------------------------------------------------------------------
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
878 * edit menu
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
879 *-----------------------------------------------------------------------------
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
880 */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
881
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
882 static void layout_menu_edit_cb(GtkAction *action, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
883 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
884 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
885 GList *list;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
886 gint n;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
887
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
888 n = GPOINTER_TO_INT(g_object_get_data(G_OBJECT(action), "edit_index"));
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
889
160
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
890
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
891 if (lw->full_screen && !editor_window_flag_set(n))
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
892 {
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
893 layout_image_full_screen_stop(lw);
85657b4766c9 use accels also in fullscreen mode
nadvornik
parents: 159
diff changeset
894 }
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
895 list = layout_selection_list(lw);
138
71e1ebee420e replaced gchar* path with FileData *fd
nadvornik
parents: 132
diff changeset
896 start_editor_from_filelist(n, list);
71e1ebee420e replaced gchar* path with FileData *fd
nadvornik
parents: 132
diff changeset
897 filelist_free(list);
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
898 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
899
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
900 static void layout_menu_edit_update(LayoutWindow *lw)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
901 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
902 gint i;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
903
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
904 /* main edit menu */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
905
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
906 if (!lw->action_group) return;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
907
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
908 for (i = 0; i < 10; i++)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
909 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
910 gchar *key;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
911 GtkAction *action;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
912
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
913 key = g_strdup_printf("Editor%d", i);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
914
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
915 action = gtk_action_group_get_action(lw->action_group, key);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
916 g_object_set_data(G_OBJECT(action), "edit_index", GINT_TO_POINTER(i));
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
917
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
918 if (editor_command[i] && strlen(editor_command[i]) > 0)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
919 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
920 gchar *text;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
921
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
922 if (editor_name[i] && strlen(editor_name[i]) > 0)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
923 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
924 text = g_strdup_printf(_("in %s..."), editor_name[i]);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
925 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
926 else
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
927 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
928 text = g_strdup(_("in (unknown)..."));
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
929 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
930 g_object_set(action, "label", text,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
931 "sensitive", TRUE, NULL);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
932 g_free(text);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
933 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
934 else
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
935 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
936 g_object_set(action, "label", _("empty"),
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
937 "sensitive", FALSE, NULL);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
938 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
939
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
940 g_free(key);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
941 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
942 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
943
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
944 void layout_edit_update_all(void)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
945 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
946 GList *work;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
947
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
948 work = layout_window_list;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
949 while (work)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
950 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
951 LayoutWindow *lw = work->data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
952 work = work->next;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
953
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
954 layout_menu_edit_update(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
955 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
956 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
957
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
958 /*
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
959 *-----------------------------------------------------------------------------
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
960 * recent menu
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
961 *-----------------------------------------------------------------------------
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
962 */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
963
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
964 static void layout_menu_recent_cb(GtkWidget *widget, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
965 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
966 gint n;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
967 gchar *path;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
968
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
969 n = GPOINTER_TO_INT(g_object_get_data(G_OBJECT(widget), "recent_index"));
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
970
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
971 path = g_list_nth_data(history_list_get_by_key("recent"), n);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
972
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
973 if (!path) return;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
974
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
975 /* make a copy of it */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
976 path = g_strdup(path);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
977 collection_window_new(path);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
978 g_free(path);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
979 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
980
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
981 static void layout_menu_recent_update(LayoutWindow *lw)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
982 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
983 GtkWidget *menu;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
984 GtkWidget *recent;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
985 GtkWidget *item;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
986 GList *list;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
987 gint n;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
988
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
989 if (!lw->ui_manager) return;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
990
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
991 list = history_list_get_by_key("recent");
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
992 n = 0;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
993
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
994 menu = gtk_menu_new();
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
995
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
996 while (list)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
997 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
998 item = menu_item_add_simple(menu, filename_from_path((gchar *)list->data),
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
999 G_CALLBACK(layout_menu_recent_cb), lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1000 g_object_set_data(G_OBJECT(item), "recent_index", GINT_TO_POINTER(n));
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1001 list = list->next;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1002 n++;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1003 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1004
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1005 if (n == 0)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1006 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1007 menu_item_add(menu, _("Empty"), NULL, NULL);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1008 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1009
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1010 recent = gtk_ui_manager_get_widget(lw->ui_manager, "/MainMenu/FileMenu/OpenRecent");
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1011 gtk_menu_item_set_submenu(GTK_MENU_ITEM(recent), menu);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1012 gtk_widget_set_sensitive(recent, (n != 0));
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1013 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1014
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1015 void layout_recent_update_all(void)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1016 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1017 GList *work;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1018
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1019 work = layout_window_list;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1020 while (work)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1021 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1022 LayoutWindow *lw = work->data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1023 work = work->next;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1024
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1025 layout_menu_recent_update(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1026 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1027 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1028
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1029 void layout_recent_add_path(const gchar *path)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1030 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1031 if (!path) return;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1032
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1033 history_list_add_to_key("recent", path, recent_list_max);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1034
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1035 layout_recent_update_all();
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1036 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1037
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1038 /*
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1039 *-----------------------------------------------------------------------------
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1040 * menu
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1041 *-----------------------------------------------------------------------------
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1042 */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1043
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1044 #define CB G_CALLBACK
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1045
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1046 static GtkActionEntry menu_entries[] = {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1047 { "FileMenu", NULL, N_("_File") },
159
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1048 { "GoMenu", NULL, N_("_Go") },
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1049 { "EditMenu", NULL, N_("_Edit") },
162
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1050 { "SelectMenu", NULL, N_("_Select") },
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1051 { "AdjustMenu", NULL, N_("_Adjust") },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1052 { "ViewMenu", NULL, N_("_View") },
159
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1053 { "ZoomMenu", NULL, N_("_Zoom") },
156
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
1054 { "SplitMenu", NULL, N_("_Split") },
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1055 { "HelpMenu", NULL, N_("_Help") },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1056
159
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1057 { "FirstImage", GTK_STOCK_GOTO_TOP, N_("_First Image"), "Home", NULL, CB(layout_menu_image_first_cb) },
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1058 { "PrevImage", GTK_STOCK_GO_UP, N_("_Previous Image"), "BackSpace", NULL, CB(layout_menu_image_prev_cb) },
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1059 { "NextImage", GTK_STOCK_GO_DOWN, N_("_Next Image"), "space", NULL, CB(layout_menu_image_next_cb) },
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1060 { "LastImage", GTK_STOCK_GOTO_BOTTOM, N_("_Last Image"), "End", NULL, CB(layout_menu_image_last_cb) },
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1061
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1062
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1063 { "NewWindow", GTK_STOCK_NEW, N_("New _window"), NULL, NULL, CB(layout_menu_new_window_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1064 { "NewCollection", GTK_STOCK_INDEX,N_("_New collection"), "C", NULL, CB(layout_menu_new_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1065 { "OpenCollection", GTK_STOCK_OPEN, N_("_Open collection..."),"O", NULL, CB(layout_menu_open_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1066 { "OpenRecent", NULL, N_("Open _recent") },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1067 { "Search", GTK_STOCK_FIND, N_("_Search..."), "F3", NULL, CB(layout_menu_search_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1068 { "FindDupes", GTK_STOCK_FIND, N_("_Find duplicates..."),"D", NULL, CB(layout_menu_dupes_cb) },
12
147f4c4b9025 ##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents: 9
diff changeset
1069 { "PanView", NULL, N_("Pan _view"), "<control>J", NULL, CB(layout_menu_pan_cb) },
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1070 { "Print", GTK_STOCK_PRINT,N_("_Print..."), "<shift>P", NULL, CB(layout_menu_print_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1071 { "NewFolder", NULL, N_("N_ew folder..."), "<control>F", NULL, CB(layout_menu_dir_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1072 { "Copy", NULL, N_("_Copy..."), "<control>C", NULL, CB(layout_menu_copy_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1073 { "Move", NULL, N_("_Move..."), "<control>M", NULL, CB(layout_menu_move_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1074 { "Rename", NULL, N_("_Rename..."), "<control>R", NULL, CB(layout_menu_rename_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1075 { "Delete", GTK_STOCK_DELETE, N_("_Delete..."), "<control>D", NULL, CB(layout_menu_delete_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1076 { "CloseWindow", GTK_STOCK_CLOSE,N_("C_lose window"), "<control>W", NULL, CB(layout_menu_close_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1077 { "Quit", GTK_STOCK_QUIT, N_("_Quit"), "<control>Q", NULL, CB(layout_menu_exit_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1078
163
e3f12d4abc04 <num> toggles mark num
nadvornik
parents: 162
diff changeset
1079 { "Editor0", NULL, "editor0", NULL, NULL, CB(layout_menu_edit_cb) },
e3f12d4abc04 <num> toggles mark num
nadvornik
parents: 162
diff changeset
1080 { "Editor1", NULL, "editor1", NULL, NULL, CB(layout_menu_edit_cb) },
e3f12d4abc04 <num> toggles mark num
nadvornik
parents: 162
diff changeset
1081 { "Editor2", NULL, "editor2", NULL, NULL, CB(layout_menu_edit_cb) },
e3f12d4abc04 <num> toggles mark num
nadvornik
parents: 162
diff changeset
1082 { "Editor3", NULL, "editor3", NULL, NULL, CB(layout_menu_edit_cb) },
e3f12d4abc04 <num> toggles mark num
nadvornik
parents: 162
diff changeset
1083 { "Editor4", NULL, "editor4", NULL, NULL, CB(layout_menu_edit_cb) },
e3f12d4abc04 <num> toggles mark num
nadvornik
parents: 162
diff changeset
1084 { "Editor5", NULL, "editor5", NULL, NULL, CB(layout_menu_edit_cb) },
e3f12d4abc04 <num> toggles mark num
nadvornik
parents: 162
diff changeset
1085 { "Editor6", NULL, "editor6", NULL, NULL, CB(layout_menu_edit_cb) },
e3f12d4abc04 <num> toggles mark num
nadvornik
parents: 162
diff changeset
1086 { "Editor7", NULL, "editor7", NULL, NULL, CB(layout_menu_edit_cb) },
e3f12d4abc04 <num> toggles mark num
nadvornik
parents: 162
diff changeset
1087 { "Editor8", NULL, "editor8", NULL, NULL, CB(layout_menu_edit_cb) },
e3f12d4abc04 <num> toggles mark num
nadvornik
parents: 162
diff changeset
1088 { "Editor9", NULL, "editor9", NULL, NULL, CB(layout_menu_edit_cb) },
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1089 { "RotateCW", NULL, N_("_Rotate clockwise"), "bracketright", NULL, CB(layout_menu_alter_90_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1090 { "RotateCCW", NULL, N_("Rotate _counterclockwise"), "bracketleft", NULL, CB(layout_menu_alter_90cc_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1091 { "Rotate180", NULL, N_("Rotate 1_80"), "<shift>R", NULL, CB(layout_menu_alter_180_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1092 { "Mirror", NULL, N_("_Mirror"), "<shift>M", NULL, CB(layout_menu_alter_mirror_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1093 { "Flip", NULL, N_("_Flip"), "<shift>F", NULL, CB(layout_menu_alter_flip_cb) },
82
a4c1b7014e6e Thu Oct 19 15:20:51 2006 John Ellis <johne@verizon.net>
gqview
parents: 41
diff changeset
1094 { "Grayscale", NULL, N_("_Grayscale"), "<shift>G", NULL, CB(layout_menu_alter_desaturate_cb) },
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1095 { "Properties",GTK_STOCK_PROPERTIES, N_("_Properties"), "<control>P", NULL, CB(layout_menu_info_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1096 { "SelectAll", NULL, N_("Select _all"), "<control>A", NULL, CB(layout_menu_select_all_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1097 { "SelectNone", NULL, N_("Select _none"), "<control><shift>A",NULL, CB(layout_menu_unselect_all_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1098 { "Preferences",GTK_STOCK_PREFERENCES,N_("P_references..."), "<control>O", NULL, CB(layout_menu_config_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1099 { "Maintenance", NULL, N_("_Thumbnail maintenance..."),NULL, NULL, CB(layout_menu_remove_thumb_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1100 { "Wallpaper", NULL, N_("Set as _wallpaper"),NULL, NULL, CB(layout_menu_wallpaper_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1101
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1102 { "ZoomIn", GTK_STOCK_ZOOM_IN, N_("Zoom _in"), "equal", NULL, CB(layout_menu_zoom_in_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1103 { "ZoomOut", GTK_STOCK_ZOOM_OUT, N_("Zoom _out"), "minus", NULL, CB(layout_menu_zoom_out_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1104 { "Zoom100", GTK_STOCK_ZOOM_100, N_("Zoom _1:1"), "Z", NULL, CB(layout_menu_zoom_1_1_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1105 { "ZoomFit", GTK_STOCK_ZOOM_FIT, N_("_Zoom to fit"), "X", NULL, CB(layout_menu_zoom_fit_cb) },
159
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1106 { "ZoomFillHor", NULL, N_("Fit _Horizontally"),"H", NULL, CB(layout_menu_zoom_fit_hor_cb) },
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1107 { "ZoomFillVert", NULL, N_("Fit _Vorizontally"),"W", NULL, CB(layout_menu_zoom_fit_vert_cb) },
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1108 { "Zoom200", NULL, N_("Zoom _2:1"), NULL, NULL, CB(layout_menu_zoom_2_1_cb) },
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1109 { "Zoom300", NULL, N_("Zoom _3:1"), NULL, NULL, CB(layout_menu_zoom_3_1_cb) },
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1110 { "Zoom400", NULL, N_("Zoom _4:1"), NULL, NULL, CB(layout_menu_zoom_4_1_cb) },
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1111 { "Zoom50", NULL, N_("Zoom 1:2"), NULL, NULL, CB(layout_menu_zoom_1_2_cb) },
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1112 { "Zoom33", NULL, N_("Zoom 1:3"), NULL, NULL, CB(layout_menu_zoom_1_3_cb) },
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1113 { "Zoom25", NULL, N_("Zoom 1:4"), NULL, NULL, CB(layout_menu_zoom_1_4_cb) },
156
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
1114
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
1115
159
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1116 { "ViewInNewWindow", NULL, N_("_View in new window"), "<control>V", NULL, CB(layout_menu_view_in_new_window_cb) },
156
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
1117
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1118 { "FullScreen", NULL, N_("F_ull screen"), "F", NULL, CB(layout_menu_fullscreen_cb) },
159
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1119 { "ImageOverlay", NULL, N_("_Image Overlay"), "I", NULL, CB(layout_menu_overlay_cb) },
273
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
1120 { "HistogramChan", NULL, N_("Histogram _channels"), "K", NULL, CB(layout_menu_histogram_chan_cb) },
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
1121 { "HistogramLog", NULL, N_("Histogram _log mode"), "J", NULL, CB(layout_menu_histogram_log_cb) },
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1122 { "HideTools", NULL, N_("_Hide file list"), "<control>H", NULL, CB(layout_menu_hide_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1123 { "SlideShow", NULL, N_("Toggle _slideshow"),"S", NULL, CB(layout_menu_slideshow_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1124 { "Refresh", GTK_STOCK_REFRESH, N_("_Refresh"), "R", NULL, CB(layout_menu_refresh_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1125
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1126 { "HelpContents", GTK_STOCK_HELP, N_("_Contents"), "F1", NULL, CB(layout_menu_help_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1127 { "HelpShortcuts", NULL, N_("_Keyboard shortcuts"),NULL, NULL, CB(layout_menu_help_keys_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1128 { "HelpNotes", NULL, N_("_Release notes"), NULL, NULL, CB(layout_menu_notes_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1129 { "About", NULL, N_("_About"), NULL, NULL, CB(layout_menu_about_cb) }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1130 };
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1131
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1132 static GtkToggleActionEntry menu_toggle_entries[] = {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1133 { "Thumbnails", NULL, N_("_Thumbnails"), "T", NULL, CB(layout_menu_thumb_cb) },
162
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1134 { "ShowMarks", NULL, N_("Show _Marks"), "M", NULL, CB(layout_menu_marks_cb) },
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1135 { "FolderTree", NULL, N_("Tr_ee"), "<control>T", NULL, CB(layout_menu_tree_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1136 { "FloatTools", NULL, N_("_Float file list"), "L", NULL, CB(layout_menu_float_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1137 { "HideToolbar", NULL, N_("Hide tool_bar"), NULL, NULL, CB(layout_menu_toolbar_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1138 { "SBarKeywords", NULL, N_("_Keywords"), "<control>K", NULL, CB(layout_menu_bar_info_cb) },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1139 { "SBarExif", NULL, N_("E_xif data"), "<control>E", NULL, CB(layout_menu_bar_exif_cb) },
156
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
1140 { "SBarSort", NULL, N_("Sort _manager"), "<control>S", NULL, CB(layout_menu_bar_sort_cb) },
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
1141 { "ConnectScroll", NULL, N_("Connected scroll"), "<control>U", NULL, CB(layout_menu_connect_scroll_cb) },
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
1142 { "ConnectZoom", NULL, N_("Connected zoom"), "<control>Y", NULL, CB(layout_menu_connect_zoom_cb) }
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1143 };
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1144
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1145 static GtkRadioActionEntry menu_radio_entries[] = {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1146 { "ViewList", NULL, N_("_List"), "<control>L", NULL, 0 },
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1147 { "ViewIcons", NULL, N_("I_cons"), "<control>I", NULL, 1 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1148 };
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1149
156
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
1150 static GtkRadioActionEntry menu_split_radio_entries[] = {
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
1151 { "SplitHorizontal", NULL, N_("Horizontal"), "E", NULL, SPLIT_HOR },
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
1152 { "SplitVertical", NULL, N_("Vertical"), "U", NULL, SPLIT_VERT },
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
1153 { "SplitQuad", NULL, N_("Quad"), "Q", NULL, SPLIT_QUAD },
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
1154 { "SplitSingle", NULL, N_("Single"), "Y", NULL, SPLIT_NONE }
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
1155 };
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
1156
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1157 #undef CB
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1158
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1159 static const char *menu_ui_description =
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1160 "<ui>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1161 " <menubar name='MainMenu'>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1162 " <menu action='FileMenu'>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1163 " <menuitem action='NewWindow'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1164 " <menuitem action='NewCollection'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1165 " <menuitem action='OpenCollection'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1166 " <menuitem action='OpenRecent'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1167 " <separator/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1168 " <menuitem action='Search'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1169 " <menuitem action='FindDupes'/>"
12
147f4c4b9025 ##### Note: GQview CVS on sourceforge is not always up to date, please use #####
gqview
parents: 9
diff changeset
1170 " <menuitem action='PanView'/>"
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1171 " <separator/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1172 " <menuitem action='Print'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1173 " <menuitem action='NewFolder'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1174 " <separator/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1175 " <menuitem action='Copy'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1176 " <menuitem action='Move'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1177 " <menuitem action='Rename'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1178 " <menuitem action='Delete'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1179 " <separator/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1180 " <menuitem action='CloseWindow'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1181 " <menuitem action='Quit'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1182 " </menu>"
159
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1183 " <menu action='GoMenu'>"
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1184 " <menuitem action='FirstImage'/>"
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1185 " <menuitem action='PrevImage'/>"
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1186 " <menuitem action='NextImage'/>"
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1187 " <menuitem action='LastImage'/>"
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1188 " </menu>"
162
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1189 " <menu action='SelectMenu'>"
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1190 " <menuitem action='SelectAll'/>"
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1191 " <menuitem action='SelectNone'/>"
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1192 " <separator/>"
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1193 " <menuitem action='ShowMarks'/>"
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1194 " <separator/>"
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1195 " </menu>"
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1196 " <menu action='EditMenu'>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1197 " <menuitem action='Editor0'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1198 " <menuitem action='Editor1'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1199 " <menuitem action='Editor2'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1200 " <menuitem action='Editor3'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1201 " <menuitem action='Editor4'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1202 " <menuitem action='Editor5'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1203 " <menuitem action='Editor6'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1204 " <menuitem action='Editor7'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1205 " <menuitem action='Editor8'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1206 " <menuitem action='Editor9'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1207 " <separator/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1208 " <menu action='AdjustMenu'>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1209 " <menuitem action='RotateCW'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1210 " <menuitem action='RotateCCW'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1211 " <menuitem action='Rotate180'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1212 " <menuitem action='Mirror'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1213 " <menuitem action='Flip'/>"
82
a4c1b7014e6e Thu Oct 19 15:20:51 2006 John Ellis <johne@verizon.net>
gqview
parents: 41
diff changeset
1214 " <menuitem action='Grayscale'/>"
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1215 " </menu>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1216 " <menuitem action='Properties'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1217 " <separator/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1218 " <menuitem action='Preferences'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1219 " <menuitem action='Maintenance'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1220 " <separator/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1221 " <menuitem action='Wallpaper'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1222 " </menu>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1223 " <menu action='ViewMenu'>"
159
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1224 " <menuitem action='ViewInNewWindow'/>"
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1225 " <separator/>"
159
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1226 " <menu action='ZoomMenu'>"
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1227 " <menuitem action='ZoomIn'/>"
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1228 " <menuitem action='ZoomOut'/>"
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1229 " <menuitem action='ZoomFit'/>"
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1230 " <menuitem action='ZoomFillHor'/>"
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1231 " <menuitem action='ZoomFillVert'/>"
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1232 " <menuitem action='Zoom100'/>"
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1233 " <menuitem action='Zoom200'/>"
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1234 " <menuitem action='Zoom300'/>"
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1235 " <menuitem action='Zoom400'/>"
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1236 " <menuitem action='Zoom50'/>"
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1237 " <menuitem action='Zoom33'/>"
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1238 " <menuitem action='Zoom25'/>"
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1239 " </menu>"
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1240 " <separator/>"
156
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
1241 " <menu action='SplitMenu'>"
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
1242 " <menuitem action='SplitHorizontal'/>"
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
1243 " <menuitem action='SplitVertical'/>"
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
1244 " <menuitem action='SplitQuad'/>"
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
1245 " <menuitem action='SplitSingle'/>"
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
1246 " </menu>"
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
1247 " <menuitem action='ConnectScroll'/>"
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
1248 " <menuitem action='ConnectZoom'/>"
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
1249 " <separator/>"
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1250 " <menuitem action='Thumbnails'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1251 " <menuitem action='ViewList'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1252 " <menuitem action='ViewIcons'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1253 " <separator/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1254 " <menuitem action='FolderTree'/>"
159
436376b60867 moved some actions to menu and accels
nadvornik
parents: 156
diff changeset
1255 " <menuitem action='ImageOverlay'/>"
273
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
1256 " <menuitem action='HistogramChan'/>"
e0e2c2b72c5a reworked the histogram patch by Uwe Ohse, most of the code is in
nadvornik
parents: 249
diff changeset
1257 " <menuitem action='HistogramLog'/>"
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1258 " <menuitem action='FullScreen'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1259 " <separator/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1260 " <menuitem action='FloatTools'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1261 " <menuitem action='HideTools'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1262 " <menuitem action='HideToolbar'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1263 " <separator/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1264 " <menuitem action='SBarKeywords'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1265 " <menuitem action='SBarExif'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1266 " <menuitem action='SBarSort'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1267 " <separator/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1268 " <menuitem action='SlideShow'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1269 " <menuitem action='Refresh'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1270 " </menu>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1271 " <menu action='HelpMenu'>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1272 " <separator/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1273 " <menuitem action='HelpContents'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1274 " <menuitem action='HelpShortcuts'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1275 " <menuitem action='HelpNotes'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1276 " <separator/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1277 " <menuitem action='About'/>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1278 " </menu>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1279 " </menubar>"
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1280 "</ui>";
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1281
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1282
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1283 static gchar *menu_translate(const gchar *path, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1284 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1285 return _(path);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1286 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1287
162
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1288 static void layout_actions_setup_mark(LayoutWindow *lw, gint mark, char *name_tmpl, char *label_tmpl, char *accel_tmpl, GCallback cb)
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1289 {
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1290 char name[50];
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1291 char label[100];
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1292 char accel[50];
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1293 GtkActionEntry entry = { name, NULL, label, accel, NULL, cb };
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1294 GtkAction *action;
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1295
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1296 g_snprintf(name, sizeof(name), name_tmpl, mark);
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1297 g_snprintf(label, sizeof(label), label_tmpl, mark);
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1298 if (accel_tmpl)
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1299 g_snprintf(accel, sizeof(accel), accel_tmpl, mark % 10);
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1300 else
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1301 accel[0] = 0;
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1302 gtk_action_group_add_actions(lw->action_group, &entry, 1, lw);
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1303 action = gtk_action_group_get_action(lw->action_group, name);
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1304 g_object_set_data(G_OBJECT(action), "mark_num", GINT_TO_POINTER(mark));
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1305 }
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1306
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1307 static void layout_actions_setup_marks(LayoutWindow *lw)
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1308 {
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1309 int mark;
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1310 GError *error;
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1311 GString *desc = g_string_new(
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1312 "<ui>"
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1313 " <menubar name='MainMenu'>"
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1314 " <menu action='SelectMenu'>");
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1315
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1316 for (mark = 1; mark <= FILEDATA_MARKS_SIZE; mark++)
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1317 {
163
e3f12d4abc04 <num> toggles mark num
nadvornik
parents: 162
diff changeset
1318 layout_actions_setup_mark(lw, mark, "Mark%d", _("Mark _%d"), NULL, NULL);
e3f12d4abc04 <num> toggles mark num
nadvornik
parents: 162
diff changeset
1319 layout_actions_setup_mark(lw, mark, "SetMark%d", _("_Set mark %d"), NULL, G_CALLBACK(layout_menu_set_mark_sel_cb));
e3f12d4abc04 <num> toggles mark num
nadvornik
parents: 162
diff changeset
1320 layout_actions_setup_mark(lw, mark, "ResetMark%d", _("_Reset mark %d"), NULL, G_CALLBACK(layout_menu_res_mark_sel_cb));
e3f12d4abc04 <num> toggles mark num
nadvornik
parents: 162
diff changeset
1321 layout_actions_setup_mark(lw, mark, "ToggleMark%d", _("_Toggle mark %d"), "%d", G_CALLBACK(layout_menu_toggle_mark_sel_cb));
e3f12d4abc04 <num> toggles mark num
nadvornik
parents: 162
diff changeset
1322 layout_actions_setup_mark(lw, mark, "SelectMark%d", _("_Select mark %d"), "<control>%d", G_CALLBACK(layout_menu_sel_mark_cb));
e3f12d4abc04 <num> toggles mark num
nadvornik
parents: 162
diff changeset
1323 layout_actions_setup_mark(lw, mark, "AddMark%d", _("_Add mark %d"), NULL, G_CALLBACK(layout_menu_sel_mark_or_cb));
e3f12d4abc04 <num> toggles mark num
nadvornik
parents: 162
diff changeset
1324 layout_actions_setup_mark(lw, mark, "IntMark%d", _("_Intersection with mark %d"), NULL, G_CALLBACK(layout_menu_sel_mark_and_cb));
e3f12d4abc04 <num> toggles mark num
nadvornik
parents: 162
diff changeset
1325 layout_actions_setup_mark(lw, mark, "UnselMark%d", _("_Unselect mark %d"), NULL, G_CALLBACK(layout_menu_sel_mark_minus_cb));
162
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1326
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1327 g_string_append_printf(desc,
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1328 " <menu action='Mark%d'>"
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1329 " <menuitem action='ToggleMark%d'/>"
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1330 " <menuitem action='SetMark%d'/>"
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1331 " <menuitem action='ResetMark%d'/>"
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1332 " <separator/>"
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1333 " <menuitem action='SelectMark%d'/>"
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1334 " <menuitem action='AddMark%d'/>"
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1335 " <menuitem action='IntMark%d'/>"
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1336 " <menuitem action='UnselMark%d'/>"
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1337 " </menu>",
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1338 mark, mark, mark, mark, mark, mark, mark, mark);
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1339 }
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1340
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1341 g_string_append(desc,
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1342 " </menu>"
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1343 " </menubar>"
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1344 "</ui>" );
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1345
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1346 error = NULL;
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1347 if (!gtk_ui_manager_add_ui_from_string(lw->ui_manager, desc->str, -1, &error))
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1348 {
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1349 g_message ("building menus failed: %s", error->message);
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1350 g_error_free (error);
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1351 exit (EXIT_FAILURE);
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1352 }
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1353 g_string_free(desc, TRUE);
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1354 }
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1355
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1356 void layout_actions_setup(LayoutWindow *lw)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1357 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1358 GError *error;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1359
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1360 if (lw->ui_manager) return;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1361
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1362 lw->action_group = gtk_action_group_new ("MenuActions");
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1363 gtk_action_group_set_translate_func(lw->action_group, menu_translate, NULL, NULL);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1364
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1365 gtk_action_group_add_actions(lw->action_group,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1366 menu_entries, G_N_ELEMENTS(menu_entries), lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1367 gtk_action_group_add_toggle_actions(lw->action_group,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1368 menu_toggle_entries, G_N_ELEMENTS(menu_toggle_entries), lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1369 gtk_action_group_add_radio_actions(lw->action_group,
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1370 menu_radio_entries, G_N_ELEMENTS(menu_radio_entries),
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1371 0, G_CALLBACK(layout_menu_list_cb), lw);
156
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
1372 gtk_action_group_add_radio_actions(lw->action_group,
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
1373 menu_split_radio_entries, G_N_ELEMENTS(menu_split_radio_entries),
dd6dc0a55d3d better integration of split image functions into menu
nadvornik
parents: 138
diff changeset
1374 0, G_CALLBACK(layout_menu_split_cb), lw);
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1375
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1376 lw->ui_manager = gtk_ui_manager_new();
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1377 gtk_ui_manager_set_add_tearoffs(lw->ui_manager, TRUE);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1378 gtk_ui_manager_insert_action_group(lw->ui_manager, lw->action_group, 0);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1379
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1380 error = NULL;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1381 if (!gtk_ui_manager_add_ui_from_string(lw->ui_manager, menu_ui_description, -1, &error))
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1382 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1383 g_message ("building menus failed: %s", error->message);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1384 g_error_free (error);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1385 exit (EXIT_FAILURE);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1386 }
162
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1387
1a42a2451575 created menu "Select" with selection and marks operations
nadvornik
parents: 160
diff changeset
1388 layout_actions_setup_marks(lw);
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1389 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1390
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1391 void layout_actions_add_window(LayoutWindow *lw, GtkWidget *window)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1392 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1393 GtkAccelGroup *group;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1394
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1395 if (!lw->ui_manager) return;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1396
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1397 group = gtk_ui_manager_get_accel_group(lw->ui_manager);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1398 gtk_window_add_accel_group(GTK_WINDOW(window), group);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1399 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1400
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1401 GtkWidget *layout_actions_menu_bar(LayoutWindow *lw)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1402 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1403 return gtk_ui_manager_get_widget(lw->ui_manager, "/MainMenu");
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1404 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1405
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1406
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1407 /*
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1408 *-----------------------------------------------------------------------------
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1409 * toolbar
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1410 *-----------------------------------------------------------------------------
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1411 */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1412
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1413 static void layout_button_thumb_cb(GtkWidget *widget, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1414 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1415 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1416
41
6281cc38e5ca Wed Apr 27 15:17:57 2005 John Ellis <johne@verizon.net>
gqview
parents: 12
diff changeset
1417 layout_thumb_set(lw, gtk_toggle_tool_button_get_active(GTK_TOGGLE_TOOL_BUTTON(widget)));
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1418 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1419
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1420 static void layout_button_home_cb(GtkWidget *widget, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1421 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1422 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1423 const gchar *path = homedir();
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1424
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1425 if (path) layout_set_path(lw, path);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1426 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1427
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1428 static void layout_button_refresh_cb(GtkWidget *widget, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1429 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1430 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1431
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1432 layout_refresh(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1433 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1434
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1435 static void layout_button_zoom_in_cb(GtkWidget *widget, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1436 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1437 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1438
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1439 layout_image_zoom_adjust(lw, get_zoom_increment());
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1440 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1441
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1442 static void layout_button_zoom_out_cb(GtkWidget *widget, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1443 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1444 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1445
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1446 layout_image_zoom_adjust(lw, -get_zoom_increment());
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1447 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1448
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1449 static void layout_button_zoom_fit_cb(GtkWidget *widget, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1450 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1451 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1452
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1453 layout_image_zoom_set(lw, 0.0);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1454 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1455
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1456 static void layout_button_zoom_1_1_cb(GtkWidget *widget, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1457 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1458 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1459
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1460 layout_image_zoom_set(lw, 1.0);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1461 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1462
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1463 static void layout_button_config_cb(GtkWidget *widget, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1464 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1465 show_config_window();
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1466 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1467
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1468 static void layout_button_float_cb(GtkWidget *widget, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1469 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1470 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1471
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1472 layout_tools_float_toggle(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1473 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1474
41
6281cc38e5ca Wed Apr 27 15:17:57 2005 John Ellis <johne@verizon.net>
gqview
parents: 12
diff changeset
1475 static void layout_button_custom_icon(GtkWidget *button, const gchar *key)
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1476 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1477 GtkWidget *icon;
41
6281cc38e5ca Wed Apr 27 15:17:57 2005 John Ellis <johne@verizon.net>
gqview
parents: 12
diff changeset
1478 GdkPixbuf *pixbuf;
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1479
41
6281cc38e5ca Wed Apr 27 15:17:57 2005 John Ellis <johne@verizon.net>
gqview
parents: 12
diff changeset
1480 pixbuf = pixbuf_inline(key);
6281cc38e5ca Wed Apr 27 15:17:57 2005 John Ellis <johne@verizon.net>
gqview
parents: 12
diff changeset
1481 if (!pixbuf) return;
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1482
41
6281cc38e5ca Wed Apr 27 15:17:57 2005 John Ellis <johne@verizon.net>
gqview
parents: 12
diff changeset
1483 icon = gtk_image_new_from_pixbuf(pixbuf);
6281cc38e5ca Wed Apr 27 15:17:57 2005 John Ellis <johne@verizon.net>
gqview
parents: 12
diff changeset
1484 g_object_unref(pixbuf);
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1485
41
6281cc38e5ca Wed Apr 27 15:17:57 2005 John Ellis <johne@verizon.net>
gqview
parents: 12
diff changeset
1486 pref_toolbar_button_set_icon(button, icon, NULL);
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1487 gtk_widget_show(icon);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1488 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1489
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1490 GtkWidget *layout_button_bar(LayoutWindow *lw)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1491 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1492 GtkWidget *box;
41
6281cc38e5ca Wed Apr 27 15:17:57 2005 John Ellis <johne@verizon.net>
gqview
parents: 12
diff changeset
1493 GtkWidget *button;
6281cc38e5ca Wed Apr 27 15:17:57 2005 John Ellis <johne@verizon.net>
gqview
parents: 12
diff changeset
1494
6281cc38e5ca Wed Apr 27 15:17:57 2005 John Ellis <johne@verizon.net>
gqview
parents: 12
diff changeset
1495 box = pref_toolbar_new(NULL, GTK_TOOLBAR_ICONS);
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1496
41
6281cc38e5ca Wed Apr 27 15:17:57 2005 John Ellis <johne@verizon.net>
gqview
parents: 12
diff changeset
1497 button = pref_toolbar_button(box, NULL, _("_Thumbnails"), TRUE,
6281cc38e5ca Wed Apr 27 15:17:57 2005 John Ellis <johne@verizon.net>
gqview
parents: 12
diff changeset
1498 _("Show thumbnails"), G_CALLBACK(layout_button_thumb_cb), lw);
6281cc38e5ca Wed Apr 27 15:17:57 2005 John Ellis <johne@verizon.net>
gqview
parents: 12
diff changeset
1499 layout_button_custom_icon(button, PIXBUF_INLINE_ICON_THUMB);
6281cc38e5ca Wed Apr 27 15:17:57 2005 John Ellis <johne@verizon.net>
gqview
parents: 12
diff changeset
1500 lw->thumb_button = button;
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1501
41
6281cc38e5ca Wed Apr 27 15:17:57 2005 John Ellis <johne@verizon.net>
gqview
parents: 12
diff changeset
1502 pref_toolbar_button(box, GTK_STOCK_HOME, NULL, FALSE,
6281cc38e5ca Wed Apr 27 15:17:57 2005 John Ellis <johne@verizon.net>
gqview
parents: 12
diff changeset
1503 _("Change to home folder"), G_CALLBACK(layout_button_home_cb), lw);
6281cc38e5ca Wed Apr 27 15:17:57 2005 John Ellis <johne@verizon.net>
gqview
parents: 12
diff changeset
1504 pref_toolbar_button(box, GTK_STOCK_REFRESH, NULL, FALSE,
6281cc38e5ca Wed Apr 27 15:17:57 2005 John Ellis <johne@verizon.net>
gqview
parents: 12
diff changeset
1505 _("Refresh file list"), G_CALLBACK(layout_button_refresh_cb), lw);
6281cc38e5ca Wed Apr 27 15:17:57 2005 John Ellis <johne@verizon.net>
gqview
parents: 12
diff changeset
1506 pref_toolbar_button(box, GTK_STOCK_ZOOM_IN, NULL, FALSE,
6281cc38e5ca Wed Apr 27 15:17:57 2005 John Ellis <johne@verizon.net>
gqview
parents: 12
diff changeset
1507 _("Zoom in"), G_CALLBACK(layout_button_zoom_in_cb), lw);
6281cc38e5ca Wed Apr 27 15:17:57 2005 John Ellis <johne@verizon.net>
gqview
parents: 12
diff changeset
1508 pref_toolbar_button(box, GTK_STOCK_ZOOM_OUT, NULL, FALSE,
6281cc38e5ca Wed Apr 27 15:17:57 2005 John Ellis <johne@verizon.net>
gqview
parents: 12
diff changeset
1509 _("Zoom out"), G_CALLBACK(layout_button_zoom_out_cb), lw);
6281cc38e5ca Wed Apr 27 15:17:57 2005 John Ellis <johne@verizon.net>
gqview
parents: 12
diff changeset
1510 pref_toolbar_button(box, GTK_STOCK_ZOOM_FIT, NULL, FALSE,
6281cc38e5ca Wed Apr 27 15:17:57 2005 John Ellis <johne@verizon.net>
gqview
parents: 12
diff changeset
1511 _("Fit image to window"), G_CALLBACK(layout_button_zoom_fit_cb), lw);
6281cc38e5ca Wed Apr 27 15:17:57 2005 John Ellis <johne@verizon.net>
gqview
parents: 12
diff changeset
1512 pref_toolbar_button(box, GTK_STOCK_ZOOM_100, NULL, FALSE,
6281cc38e5ca Wed Apr 27 15:17:57 2005 John Ellis <johne@verizon.net>
gqview
parents: 12
diff changeset
1513 _("Set zoom 1:1"), G_CALLBACK(layout_button_zoom_1_1_cb), lw);
6281cc38e5ca Wed Apr 27 15:17:57 2005 John Ellis <johne@verizon.net>
gqview
parents: 12
diff changeset
1514 pref_toolbar_button(box, GTK_STOCK_PREFERENCES, NULL, FALSE,
6281cc38e5ca Wed Apr 27 15:17:57 2005 John Ellis <johne@verizon.net>
gqview
parents: 12
diff changeset
1515 _("Configure options"), G_CALLBACK(layout_button_config_cb), lw);
6281cc38e5ca Wed Apr 27 15:17:57 2005 John Ellis <johne@verizon.net>
gqview
parents: 12
diff changeset
1516 button = pref_toolbar_button(box, NULL, _("_Float"), FALSE,
6281cc38e5ca Wed Apr 27 15:17:57 2005 John Ellis <johne@verizon.net>
gqview
parents: 12
diff changeset
1517 _("Float Controls"), G_CALLBACK(layout_button_float_cb), lw);
6281cc38e5ca Wed Apr 27 15:17:57 2005 John Ellis <johne@verizon.net>
gqview
parents: 12
diff changeset
1518 layout_button_custom_icon(button, PIXBUF_INLINE_ICON_FLOAT);
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1519
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1520 return box;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1521 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1522
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1523 /*
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1524 *-----------------------------------------------------------------------------
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1525 * misc
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1526 *-----------------------------------------------------------------------------
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1527 */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1528
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1529 static void layout_util_sync_views(LayoutWindow *lw)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1530 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1531 GtkAction *action;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1532
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1533 if (!lw->action_group) return;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1534
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1535 action = gtk_action_group_get_action(lw->action_group, "FolderTree");
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1536 gtk_toggle_action_set_active(GTK_TOGGLE_ACTION(action), lw->tree_view);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1537
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1538 action = gtk_action_group_get_action(lw->action_group, "ViewIcons");
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1539 gtk_toggle_action_set_active(GTK_TOGGLE_ACTION(action), lw->icon_view);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1540
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1541 action = gtk_action_group_get_action(lw->action_group, "FloatTools");
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1542 gtk_toggle_action_set_active(GTK_TOGGLE_ACTION(action), lw->tools_float);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1543
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1544 action = gtk_action_group_get_action(lw->action_group, "SBarKeywords");
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1545 gtk_toggle_action_set_active(GTK_TOGGLE_ACTION(action), lw->bar_info_enabled);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1546
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1547 action = gtk_action_group_get_action(lw->action_group, "SBarExif");
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1548 gtk_toggle_action_set_active(GTK_TOGGLE_ACTION(action), lw->bar_exif_enabled);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1549
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1550 action = gtk_action_group_get_action(lw->action_group, "SBarSort");
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1551 gtk_toggle_action_set_active(GTK_TOGGLE_ACTION(action), lw->bar_sort_enabled);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1552
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1553 action = gtk_action_group_get_action(lw->action_group, "HideToolbar");
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1554 gtk_toggle_action_set_active(GTK_TOGGLE_ACTION(action), lw->toolbar_hidden);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1555 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1556
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1557 void layout_util_sync_thumb(LayoutWindow *lw)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1558 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1559 GtkAction *action;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1560
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1561 if (!lw->action_group) return;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1562
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1563 action = gtk_action_group_get_action(lw->action_group, "Thumbnails");
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1564 gtk_toggle_action_set_active(GTK_TOGGLE_ACTION(action), lw->thumbs_enabled);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1565 g_object_set(action, "sensitive", !lw->icon_view, NULL);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1566
41
6281cc38e5ca Wed Apr 27 15:17:57 2005 John Ellis <johne@verizon.net>
gqview
parents: 12
diff changeset
1567 gtk_toggle_tool_button_set_active(GTK_TOGGLE_TOOL_BUTTON(lw->thumb_button), lw->thumbs_enabled);
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1568 gtk_widget_set_sensitive(lw->thumb_button, !lw->icon_view);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1569 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1570
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1571 void layout_util_sync(LayoutWindow *lw)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1572 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1573 layout_util_sync_views(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1574 layout_util_sync_thumb(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1575 layout_menu_recent_update(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1576 layout_menu_edit_update(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1577 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1578
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1579 /*
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1580 *-----------------------------------------------------------------------------
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1581 * icons (since all the toolbar icons are included here, best place as any)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1582 *-----------------------------------------------------------------------------
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1583 */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1584
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1585 PixmapFolders *folder_icons_new(void)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1586 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1587 PixmapFolders *pf;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1588
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1589 pf = g_new0(PixmapFolders, 1);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1590
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1591 pf->close = pixbuf_inline(PIXBUF_INLINE_FOLDER_CLOSED);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1592 pf->open = pixbuf_inline(PIXBUF_INLINE_FOLDER_OPEN);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1593 pf->deny = pixbuf_inline(PIXBUF_INLINE_FOLDER_LOCKED);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1594 pf->parent = pixbuf_inline(PIXBUF_INLINE_FOLDER_UP);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1595
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1596 return pf;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1597 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1598
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1599 void folder_icons_free(PixmapFolders *pf)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1600 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1601 if (!pf) return;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1602
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1603 g_object_unref(pf->close);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1604 g_object_unref(pf->open);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1605 g_object_unref(pf->deny);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1606 g_object_unref(pf->parent);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1607
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1608 g_free(pf);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1609 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1610
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1611 /*
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1612 *-----------------------------------------------------------------------------
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1613 * sidebars
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1614 *-----------------------------------------------------------------------------
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1615 */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1616
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1617 #define SIDEBAR_WIDTH 288
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1618
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1619 static void layout_bar_info_destroyed(GtkWidget *widget, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1620 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1621 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1622
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1623 lw->bar_info = NULL;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1624
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1625 if (lw->utility_box)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1626 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1627 /* destroyed from within itself */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1628 lw->bar_info_enabled = FALSE;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1629 layout_util_sync_views(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1630 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1631 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1632
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1633 static GList *layout_bar_info_list_cb(gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1634 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1635 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1636
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1637 return layout_selection_list(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1638 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1639
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1640 static void layout_bar_info_new(LayoutWindow *lw)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1641 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1642 if (!lw->utility_box) return;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1643
138
71e1ebee420e replaced gchar* path with FileData *fd
nadvornik
parents: 132
diff changeset
1644 lw->bar_info = bar_info_new(layout_image_get_fd(lw), FALSE, lw->utility_box);
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1645 bar_info_set_selection_func(lw->bar_info, layout_bar_info_list_cb, lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1646 bar_info_selection(lw->bar_info, layout_selection_count(lw, NULL) - 1);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1647 bar_info_size_request(lw->bar_info, SIDEBAR_WIDTH * 3 / 4);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1648 g_signal_connect(G_OBJECT(lw->bar_info), "destroy",
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1649 G_CALLBACK(layout_bar_info_destroyed), lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1650 lw->bar_info_enabled = TRUE;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1651
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1652 gtk_box_pack_start(GTK_BOX(lw->utility_box), lw->bar_info, FALSE, FALSE, 0);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1653 gtk_widget_show(lw->bar_info);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1654 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1655
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1656 static void layout_bar_info_close(LayoutWindow *lw)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1657 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1658 if (lw->bar_info)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1659 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1660 bar_info_close(lw->bar_info);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1661 lw->bar_info = NULL;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1662 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1663 lw->bar_info_enabled = FALSE;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1664 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1665
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1666 void layout_bar_info_toggle(LayoutWindow *lw)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1667 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1668 if (lw->bar_info_enabled)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1669 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1670 layout_bar_info_close(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1671 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1672 else
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1673 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1674 layout_bar_info_new(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1675 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1676 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1677
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1678 static void layout_bar_info_new_image(LayoutWindow *lw)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1679 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1680 if (!lw->bar_info || !lw->bar_info_enabled) return;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1681
138
71e1ebee420e replaced gchar* path with FileData *fd
nadvornik
parents: 132
diff changeset
1682 bar_info_set(lw->bar_info, layout_image_get_fd(lw));
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1683 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1684
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1685 static void layout_bar_info_new_selection(LayoutWindow *lw, gint count)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1686 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1687 if (!lw->bar_info || !lw->bar_info_enabled) return;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1688
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1689 bar_info_selection(lw->bar_info, count - 1);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1690 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1691
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1692 static void layout_bar_info_maint_renamed(LayoutWindow *lw)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1693 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1694 if (!lw->bar_info || !lw->bar_info_enabled) return;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1695
138
71e1ebee420e replaced gchar* path with FileData *fd
nadvornik
parents: 132
diff changeset
1696 bar_info_maint_renamed(lw->bar_info, layout_image_get_fd(lw));
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1697 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1698
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1699 static void layout_bar_exif_destroyed(GtkWidget *widget, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1700 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1701 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1702
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1703 if (lw->bar_exif)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1704 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1705 lw->bar_exif_advanced = bar_exif_is_advanced(lw->bar_exif);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1706 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1707
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1708 lw->bar_exif = NULL;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1709 if (lw->utility_box)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1710 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1711 /* destroyed from within itself */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1712 lw->bar_exif_enabled = FALSE;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1713 layout_util_sync_views(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1714 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1715 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1716
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1717 static void layout_bar_exif_sized(GtkWidget *widget, GtkAllocation *allocation, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1718 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1719 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1720
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1721 if (lw->bar_exif)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1722 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1723 lw->bar_exif_size = allocation->width;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1724 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1725 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1726
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1727 static void layout_bar_exif_new(LayoutWindow *lw)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1728 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1729 if (!lw->utility_box) return;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1730
138
71e1ebee420e replaced gchar* path with FileData *fd
nadvornik
parents: 132
diff changeset
1731 lw->bar_exif = bar_exif_new(TRUE, layout_image_get_fd(lw),
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1732 lw->bar_exif_advanced, lw->utility_box);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1733 g_signal_connect(G_OBJECT(lw->bar_exif), "destroy",
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1734 G_CALLBACK(layout_bar_exif_destroyed), lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1735 g_signal_connect(G_OBJECT(lw->bar_exif), "size_allocate",
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1736 G_CALLBACK(layout_bar_exif_sized), lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1737 lw->bar_exif_enabled = TRUE;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1738
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1739 if (lw->bar_exif_size < 1) lw->bar_exif_size = SIDEBAR_WIDTH;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1740 gtk_widget_set_size_request(lw->bar_exif, lw->bar_exif_size, -1);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1741 gtk_box_pack_start(GTK_BOX(lw->utility_box), lw->bar_exif, FALSE, FALSE, 0);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1742 if (lw->bar_info) gtk_box_reorder_child(GTK_BOX(lw->utility_box), lw->bar_exif, 1);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1743 gtk_widget_show(lw->bar_exif);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1744 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1745
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1746 static void layout_bar_exif_close(LayoutWindow *lw)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1747 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1748 if (lw->bar_exif)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1749 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1750 bar_exif_close(lw->bar_exif);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1751 lw->bar_exif = NULL;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1752 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1753 lw->bar_exif_enabled = FALSE;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1754 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1755
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1756 void layout_bar_exif_toggle(LayoutWindow *lw)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1757 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1758 if (lw->bar_exif_enabled)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1759 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1760 layout_bar_exif_close(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1761 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1762 else
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1763 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1764 layout_bar_exif_new(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1765 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1766 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1767
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1768 static void layout_bar_exif_new_image(LayoutWindow *lw)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1769 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1770 if (!lw->bar_exif || !lw->bar_exif_enabled) return;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1771
138
71e1ebee420e replaced gchar* path with FileData *fd
nadvornik
parents: 132
diff changeset
1772 bar_exif_set(lw->bar_exif, layout_image_get_fd(lw));
9
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1773 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1774
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1775 static void layout_bar_sort_destroyed(GtkWidget *widget, gpointer data)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1776 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1777 LayoutWindow *lw = data;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1778
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1779 lw->bar_sort = NULL;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1780
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1781 if (lw->utility_box)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1782 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1783 /* destroyed from within itself */
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1784 lw->bar_sort_enabled = FALSE;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1785
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1786 layout_util_sync_views(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1787 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1788 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1789
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1790 static void layout_bar_sort_new(LayoutWindow *lw)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1791 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1792 if (!lw->utility_box) return;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1793
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1794 lw->bar_sort = bar_sort_new(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1795 g_signal_connect(G_OBJECT(lw->bar_sort), "destroy",
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1796 G_CALLBACK(layout_bar_sort_destroyed), lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1797 lw->bar_sort_enabled = TRUE;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1798
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1799 gtk_box_pack_end(GTK_BOX(lw->utility_box), lw->bar_sort, FALSE, FALSE, 0);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1800 gtk_widget_show(lw->bar_sort);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1801 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1802
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1803 static void layout_bar_sort_close(LayoutWindow *lw)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1804 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1805 if (lw->bar_sort)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1806 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1807 bar_sort_close(lw->bar_sort);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1808 lw->bar_sort = NULL;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1809 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1810 lw->bar_sort_enabled = FALSE;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1811 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1812
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1813 void layout_bar_sort_toggle(LayoutWindow *lw)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1814 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1815 if (lw->bar_sort_enabled)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1816 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1817 layout_bar_sort_close(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1818 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1819 else
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1820 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1821 layout_bar_sort_new(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1822 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1823 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1824
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1825 void layout_bars_new_image(LayoutWindow *lw)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1826 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1827 layout_bar_info_new_image(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1828 layout_bar_exif_new_image(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1829 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1830
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1831 void layout_bars_new_selection(LayoutWindow *lw, gint count)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1832 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1833 layout_bar_info_new_selection(lw, count);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1834 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1835
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1836 GtkWidget *layout_bars_prepare(LayoutWindow *lw, GtkWidget *image)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1837 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1838 lw->utility_box = gtk_hbox_new(FALSE, PREF_PAD_GAP);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1839 gtk_box_pack_start(GTK_BOX(lw->utility_box), image, TRUE, TRUE, 0);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1840 gtk_widget_show(image);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1841
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1842 if (lw->bar_sort_enabled)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1843 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1844 layout_bar_sort_new(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1845 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1846
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1847 if (lw->bar_info_enabled)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1848 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1849 layout_bar_info_new(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1850 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1851
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1852 if (lw->bar_exif_enabled)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1853 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1854 layout_bar_exif_new(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1855 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1856
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1857 return lw->utility_box;
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1858 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1859
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1860 void layout_bars_close(LayoutWindow *lw)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1861 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1862 layout_bar_sort_close(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1863 layout_bar_exif_close(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1864 layout_bar_info_close(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1865 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1866
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1867 void layout_bars_maint_renamed(LayoutWindow *lw)
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1868 {
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1869 layout_bar_info_maint_renamed(lw);
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1870 }
d907d608745f Sync to GQview 1.5.9 release.
gqview
parents:
diff changeset
1871