diff options
author | Andrea Weikert <elubie@gmx.net> | 2012-09-18 01:29:30 +0400 |
---|---|---|
committer | Andrea Weikert <elubie@gmx.net> | 2012-09-18 01:29:30 +0400 |
commit | dd3636a6d4fbbddc700f5b2fc8a083a7416b445b (patch) | |
tree | dafe1a222a5b653632945f4434a7d8cf78c893df /source/blender/editors/space_file/file_panels.c | |
parent | f5395107cc36ed3ffebf57a4f17f90db15fccbd1 (diff) |
== filebrowser ==
further fixes for 'RECENT' files panel in filebrowser:
* Also add the recent folder at the head if it is not yet in the list
* since we now insert at the head, we need to remove the skipping of the first entries if there are too many. Now correctly leaving the last elements unwritten.
* Another consequence of inserting at the head is that we don't want to reverse the list in the recent panel anymore - got rid of the corresponding code.
Diffstat (limited to 'source/blender/editors/space_file/file_panels.c')
-rw-r--r-- | source/blender/editors/space_file/file_panels.c | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/source/blender/editors/space_file/file_panels.c b/source/blender/editors/space_file/file_panels.c index 51bd660e126..415155af486 100644 --- a/source/blender/editors/space_file/file_panels.c +++ b/source/blender/editors/space_file/file_panels.c @@ -67,14 +67,14 @@ static void file_panel_cb(bContext *C, void *arg_entry, void *UNUSED(arg_v)) WM_operator_properties_free(&ptr); } -static void file_panel_category(const bContext *C, Panel *pa, FSMenuCategory category, short *nr, int icon, int allow_delete, int reverse) +static void file_panel_category(const bContext *C, Panel *pa, FSMenuCategory category, short *nr, int icon, int allow_delete) { SpaceFile *sfile = CTX_wm_space_file(C); uiBlock *block; uiBut *but; uiLayout *box, *col; struct FSMenu *fsmenu = fsmenu_get(); - int i, i_iter, nentries = fsmenu_get_nentries(fsmenu, category); + int i, nentries = fsmenu_get_nentries(fsmenu, category); /* reset each time */ *nr = -1; @@ -89,13 +89,11 @@ static void file_panel_category(const bContext *C, Panel *pa, FSMenuCategory cat box = uiLayoutBox(pa->layout); col = uiLayoutColumn(box, TRUE); - for (i_iter = 0; i_iter < nentries; ++i_iter) { + for (i = 0; i < nentries; ++i) { char dir[FILE_MAX]; char temp[FILE_MAX]; uiLayout *layout = uiLayoutRow(col, FALSE); char *entry; - - i = reverse ? nentries - (i_iter + 1) : i_iter; entry = fsmenu_get_entry(fsmenu, category, i); @@ -134,7 +132,7 @@ static void file_panel_system(const bContext *C, Panel *pa) SpaceFile *sfile = CTX_wm_space_file(C); if (sfile) - file_panel_category(C, pa, FS_CATEGORY_SYSTEM, &sfile->systemnr, ICON_DISK_DRIVE, 0, 0); + file_panel_category(C, pa, FS_CATEGORY_SYSTEM, &sfile->systemnr, ICON_DISK_DRIVE, 0); } static void file_panel_bookmarks(const bContext *C, Panel *pa) @@ -147,7 +145,7 @@ static void file_panel_bookmarks(const bContext *C, Panel *pa) uiItemO(row, IFACE_("Add"), ICON_ZOOMIN, "file.bookmark_add"); uiItemL(row, NULL, ICON_NONE); - file_panel_category(C, pa, FS_CATEGORY_BOOKMARKS, &sfile->bookmarknr, ICON_BOOKMARKS, 1, 0); + file_panel_category(C, pa, FS_CATEGORY_BOOKMARKS, &sfile->bookmarknr, ICON_BOOKMARKS, 1); } } @@ -157,7 +155,7 @@ static void file_panel_recent(const bContext *C, Panel *pa) if (sfile) { if (!(U.uiflag & USER_HIDE_RECENT) ) { - file_panel_category(C, pa, FS_CATEGORY_RECENT, &sfile->recentnr, ICON_FILE_FOLDER, 0, 1); + file_panel_category(C, pa, FS_CATEGORY_RECENT, &sfile->recentnr, ICON_FILE_FOLDER, 0); } } } |