void gui_browser_gotofile ( struct vfsref vr  ) 

Go to the parent directory of the VFS reference and select the item which shares the same filename.

Definition at line 221 of file gui_browser.c.

00222 {
00223         struct vfsref *vrp, *vrn;
00224         unsigned int idx;
00225 
00226         if ((vrp = vfs_lookup("..", NULL, vfs_filename(vr), 1)) == NULL)
00227                 goto bad;
00228         if (vfs_populate(vrp) != 0) {
00229                 /* Permission denied? */
00230                 vfs_close(vrp);
00231                 goto bad;
00232         }
00233         
00234         for (vrn = vfs_list_first(vfs_population(vrp)), idx = 1;
00235             vrn != NULL; vrn = vfs_list_next(vrn), idx++) {
00236                 /* Select the previous directory */
00237                 if (strcmp(vfs_name(vr), vfs_name(vrn)) == 0)
00238                         break;
00239         }
00240 
00241         /* Change the directory */
00242         gui_browser_cleanup_flist();
00243         vfs_close(vr_curdir);
00244         vr_curdir = vrp;
00245         gui_vfslist_setlist(win_browser, vfs_population(vr_curdir));
00246 
00247         if (vrn != NULL)
00248                 gui_vfslist_setselected(win_browser, vrn, idx);
00249 
00250         return;
00251 bad:
00252         gui_msgbar_warn(_("Unable to enter the parent directory."));
00253 }

Here is the call graph for this function:

Here is the caller graph for this function:

 All Data Structures Files Functions Variables Defines
Generated on Mon Mar 15 04:45:21 2010 for herrie by  doxygen 1.6.3