Mercurial > geeqie.yaz
comparison src/view_file_icon.c @ 659:542bb47fef04
Merge vflist_pop_menu() and vficon_pop_menu() into vf_pop_menu().
author | zas_ |
---|---|
date | Tue, 13 May 2008 20:13:44 +0000 |
parents | dc09f544d292 |
children | 8268cbe682f1 |
comparison
equal
deleted
inserted
replaced
658:dc09f544d292 | 659:542bb47fef04 |
---|---|
199 ViewFile *vf = data; | 199 ViewFile *vf = data; |
200 | 200 |
201 file_util_rename(NULL, vf_pop_menu_file_list(vf), vf->listview); | 201 file_util_rename(NULL, vf_pop_menu_file_list(vf), vf->listview); |
202 } | 202 } |
203 | 203 |
204 static void vficon_pop_menu_show_names_cb(GtkWidget *widget, gpointer data) | 204 void vficon_pop_menu_show_names_cb(GtkWidget *widget, gpointer data) |
205 { | 205 { |
206 ViewFile *vf = data; | 206 ViewFile *vf = data; |
207 | 207 |
208 vficon_toggle_filenames(vf); | 208 vficon_toggle_filenames(vf); |
209 } | 209 } |
219 { | 219 { |
220 ViewFile *vf = data; | 220 ViewFile *vf = data; |
221 vficon_selection_remove(vf, VFICON_INFO(vf, click_id), SELECTION_PRELIGHT, NULL); | 221 vficon_selection_remove(vf, VFICON_INFO(vf, click_id), SELECTION_PRELIGHT, NULL); |
222 VFICON_INFO(vf, click_id) = NULL; | 222 VFICON_INFO(vf, click_id) = NULL; |
223 vf->popup = NULL; | 223 vf->popup = NULL; |
224 } | |
225 | |
226 static GtkWidget *vficon_pop_menu(ViewFile *vf) | |
227 { | |
228 GtkWidget *menu; | |
229 GtkWidget *item; | |
230 GtkWidget *submenu; | |
231 gint active; | |
232 | |
233 active = (VFICON_INFO(vf, click_id) != NULL); | |
234 | |
235 menu = popup_menu_short_lived(); | |
236 | |
237 g_signal_connect(G_OBJECT(menu), "destroy", | |
238 G_CALLBACK(vf_popup_destroy_cb), vf); | |
239 | |
240 submenu_add_edit(menu, &item, G_CALLBACK(vf_pop_menu_edit_cb), vf); | |
241 gtk_widget_set_sensitive(item, active); | |
242 | |
243 menu_item_add_stock_sensitive(menu, _("_Properties"), GTK_STOCK_PROPERTIES, active, | |
244 G_CALLBACK(vf_pop_menu_info_cb), vf); | |
245 | |
246 menu_item_add_stock_sensitive(menu, _("View in _new window"), GTK_STOCK_NEW, active, | |
247 G_CALLBACK(vficon_pop_menu_view_cb), vf); | |
248 menu_item_add_divider(menu); | |
249 | |
250 menu_item_add_stock_sensitive(menu, _("_Copy..."), GTK_STOCK_COPY, active, | |
251 G_CALLBACK(vf_pop_menu_copy_cb), vf); | |
252 menu_item_add_sensitive(menu, _("_Move..."), active, | |
253 G_CALLBACK(vf_pop_menu_move_cb), vf); | |
254 menu_item_add_sensitive(menu, _("_Rename..."), active, | |
255 G_CALLBACK(vf_pop_menu_rename_cb), vf); | |
256 menu_item_add_stock_sensitive(menu, _("_Delete..."), GTK_STOCK_DELETE, active, | |
257 G_CALLBACK(vf_pop_menu_delete_cb), vf); | |
258 if (options->show_copy_path) | |
259 menu_item_add_sensitive(menu, _("_Copy path"), active, | |
260 G_CALLBACK(vf_pop_menu_copy_path_cb), vf); | |
261 menu_item_add_divider(menu); | |
262 | |
263 submenu = submenu_add_sort(NULL, G_CALLBACK(vf_pop_menu_sort_cb), vf, | |
264 FALSE, FALSE, TRUE, vf->sort_method); | |
265 menu_item_add_divider(submenu); | |
266 menu_item_add_check(submenu, _("Ascending"), vf->sort_ascend, | |
267 G_CALLBACK(vf_pop_menu_sort_ascend_cb), vf); | |
268 | |
269 item = menu_item_add(menu, _("_Sort"), NULL, NULL); | |
270 gtk_menu_item_set_submenu(GTK_MENU_ITEM(item), submenu); | |
271 | |
272 menu_item_add_check(menu, _("View as _icons"), TRUE, | |
273 G_CALLBACK(vf_pop_menu_toggle_view_type_cb), vf); | |
274 menu_item_add_check(menu, _("Show filename _text"), VFICON_INFO(vf, show_text), | |
275 G_CALLBACK(vficon_pop_menu_show_names_cb), vf); | |
276 menu_item_add_stock(menu, _("Re_fresh"), GTK_STOCK_REFRESH, G_CALLBACK(vf_pop_menu_refresh_cb), vf); | |
277 | |
278 return menu; | |
279 } | 224 } |
280 | 225 |
281 /* | 226 /* |
282 *------------------------------------------------------------------- | 227 *------------------------------------------------------------------- |
283 * signals | 228 * signals |
1290 VFICON_INFO(vf, click_id) = id; | 1235 VFICON_INFO(vf, click_id) = id; |
1291 | 1236 |
1292 vficon_selection_add(vf, VFICON_INFO(vf, click_id), SELECTION_PRELIGHT, NULL); | 1237 vficon_selection_add(vf, VFICON_INFO(vf, click_id), SELECTION_PRELIGHT, NULL); |
1293 tip_unschedule(vf); | 1238 tip_unschedule(vf); |
1294 | 1239 |
1295 vf->popup = vficon_pop_menu(vf); | 1240 vf->popup = vf_pop_menu(vf); |
1296 gtk_menu_popup(GTK_MENU(vf->popup), NULL, NULL, vfi_menu_position_cb, vf, 0, GDK_CURRENT_TIME); | 1241 gtk_menu_popup(GTK_MENU(vf->popup), NULL, NULL, vfi_menu_position_cb, vf, 0, GDK_CURRENT_TIME); |
1297 break; | 1242 break; |
1298 default: | 1243 default: |
1299 stop_signal = FALSE; | 1244 stop_signal = FALSE; |
1300 break; | 1245 break; |
1394 layout_image_full_screen_start(vf->layout); | 1339 layout_image_full_screen_start(vf->layout); |
1395 } | 1340 } |
1396 #endif | 1341 #endif |
1397 break; | 1342 break; |
1398 case MOUSE_BUTTON_RIGHT: | 1343 case MOUSE_BUTTON_RIGHT: |
1399 vf->popup = vficon_pop_menu(vf); | 1344 vf->popup = vf_pop_menu(vf); |
1400 gtk_menu_popup(GTK_MENU(vf->popup), NULL, NULL, NULL, NULL, bevent->button, bevent->time); | 1345 gtk_menu_popup(GTK_MENU(vf->popup), NULL, NULL, NULL, NULL, bevent->button, bevent->time); |
1401 break; | 1346 break; |
1402 default: | 1347 default: |
1403 break; | 1348 break; |
1404 } | 1349 } |