Mercurial > geeqie.yaz
diff src/view_dir.c @ 401:0a2e1b130a25
Add some wrappers in view_dir.c and simplify even more.
author | zas_ |
---|---|
date | Thu, 17 Apr 2008 20:03:49 +0000 |
parents | 35346871af88 |
children | f6046e1b3622 |
line wrap: on
line diff
--- a/src/view_dir.c Thu Apr 17 19:57:41 2008 +0000 +++ b/src/view_dir.c Thu Apr 17 20:03:49 2008 +0000 @@ -30,7 +30,7 @@ { "FolderTree", NULL, N_("Tr_ee"), "<control>T", NULL, DIRVIEW_TREE }, }; -void vd_destroy_cb(GtkWidget *widget, gpointer data) +static void vd_destroy_cb(GtkWidget *widget, gpointer data) { ViewDir *vd = data; @@ -41,8 +41,12 @@ gtk_widget_destroy(vd->popup); } - if (vd->widget_destroy_cb) vd->widget_destroy_cb(widget, data); - + switch(vd->type) + { + case DIRVIEW_LIST: vdlist_destroy_cb(widget, data); break; + case DIRVIEW_TREE: vdtree_destroy_cb(widget, data); break; + } + if (vd->pf) folder_icons_free(vd->pf); if (vd->drop_list) filelist_free(vd->drop_list); @@ -918,3 +922,30 @@ return FALSE; } +gint vd_press_key_cb(GtkWidget *widget, GdkEventKey *event, gpointer data) +{ + ViewDir *vd = data; + gint ret = FALSE; + + switch(vd->type) + { + case DIRVIEW_LIST: ret = vdlist_press_key_cb(widget, event, data); break; + case DIRVIEW_TREE: ret = vdtree_press_key_cb(widget, event, data); break; + } + + return ret; +} + +gint vd_press_cb(GtkWidget *widget, GdkEventButton *bevent, gpointer data) +{ + ViewDir *vd = data; + gint ret = FALSE; + + switch(vd->type) + { + case DIRVIEW_LIST: ret = vdlist_press_cb(widget, bevent, data); break; + case DIRVIEW_TREE: ret = vdtree_press_cb(widget, bevent, data); break; + } + + return ret; +}