diff options
author | Dalai Felinto <dfelinto@gmail.com> | 2009-07-07 11:25:44 +0400 |
---|---|---|
committer | Dalai Felinto <dfelinto@gmail.com> | 2009-07-07 11:25:44 +0400 |
commit | cfd5046c9e4a6617a20cfc7e59519a84d3c18b9d (patch) | |
tree | 2c2c1180a69c5996ad7ebbca151234469cdf475a /source/blender/editors/space_file/filelist.h | |
parent | 79633056ac3848237d8bb8245523501905582f2e (diff) |
2.5 filebrowser: previous/next + bugfix + elubie's changes and cleanup
* Previous/Next Folder browser
* bugfix: "open most recently opened directory".
* Previous and Next functionalities:
- use BACKSPACE to navigate to previous folders
- use SHIFT+BACKSPACE to navigate forward
- once you change the folder by other ways the forward folder list is cleared
* bug fix: the sfile->params->dir set through ED_fileselect_set_params wasn't correct. According to the code taking the settings from the existing (previous) filebrowser is a temp solution. In that case this is a fix for a temp solution :)
(changes in: wm_event_system.c, filesel.c and ED_fileselect.h)
** Andrea(elubie): we can get away of the folderlist_clear_next test if we manually pass a boolean to file_change_dir (e.g. file_change_dir(sfile, true)). I tried not to mess up with your changes here. It's slightly slower (and maybe hacky) but its's more conservative IMHO.
(my first commit to 2.5 ... that was a good reason to put my paper on hold :p)
Diffstat (limited to 'source/blender/editors/space_file/filelist.h')
-rw-r--r-- | source/blender/editors/space_file/filelist.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/source/blender/editors/space_file/filelist.h b/source/blender/editors/space_file/filelist.h index e929e028849..0f8db98b7ab 100644 --- a/source/blender/editors/space_file/filelist.h +++ b/source/blender/editors/space_file/filelist.h @@ -38,6 +38,7 @@ extern "C" { #endif struct FileList; +struct FolderList; struct direntry; struct BlendHandle; struct Scene; @@ -70,6 +71,11 @@ int filelist_empty(struct FileList* filelist); void filelist_parent(struct FileList* filelist); void filelist_setfiletypes(struct FileList* filelist, short has_quicktime); +struct ListBase * folderlist_new(); +void folderlist_free(struct ListBase* folderlist); +void folderlist_popdir(struct ListBase* folderlist, const char *dir); +void folderlist_pushdir(struct ListBase* folderlist, const char *dir); +int folderlist_clear_next(struct SpaceFile* sfile); #ifdef __cplusplus } |