[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [51954] trunk/blender: == file browser ==

Andrea Weikert elubie at gmx.net
Tue Nov 6 21:29:15 CET 2012


Revision: 51954
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=51954
Author:   elubie
Date:     2012-11-06 20:29:14 +0000 (Tue, 06 Nov 2012)
Log Message:
-----------
== file browser ==
[#33080] Backup icons - further integration
Contributed by Georg Kronthaler, many thanks!

* enables display of correct file icon on splash screen and in Open Recent menu
* exposes filter_backup in the python api
* enables setting BLENDERFILE_BACKUP as active filter in file browser from wm_operators.c (and from .blend in case this setting will be saved in the future)
* adds a comment to slightly misleading function name file_is_blend_backup()
* Updates icon for backup files to be more consistent with icon for .blend files

Modified Paths:
--------------
    trunk/blender/release/datafiles/blender_icons.png
    trunk/blender/release/datafiles/prvicons.png
    trunk/blender/source/blender/editors/space_file/filelist.c
    trunk/blender/source/blender/editors/space_file/filesel.c
    trunk/blender/source/blender/editors/space_info/space_info.c
    trunk/blender/source/blender/windowmanager/intern/wm_operators.c

Modified: trunk/blender/release/datafiles/blender_icons.png
===================================================================
(Binary files differ)

Modified: trunk/blender/release/datafiles/prvicons.png
===================================================================
(Binary files differ)

Modified: trunk/blender/source/blender/editors/space_file/filelist.c
===================================================================
--- trunk/blender/source/blender/editors/space_file/filelist.c	2012-11-06 20:19:20 UTC (rev 51953)
+++ trunk/blender/source/blender/editors/space_file/filelist.c	2012-11-06 20:29:14 UTC (rev 51954)
@@ -744,6 +744,7 @@
 	BLI_strncpy(filelist->filter_glob, filter_glob, sizeof(filelist->filter_glob));
 }
 
+/* would recognize .blend as well */
 static int file_is_blend_backup(const char *str)
 {
 	short a, b;

Modified: trunk/blender/source/blender/editors/space_file/filesel.c
===================================================================
--- trunk/blender/source/blender/editors/space_file/filesel.c	2012-11-06 20:19:20 UTC (rev 51953)
+++ trunk/blender/source/blender/editors/space_file/filesel.c	2012-11-06 20:29:14 UTC (rev 51954)
@@ -164,6 +164,8 @@
 		params->filter = 0;
 		if (RNA_struct_find_property(op->ptr, "filter_blender"))
 			params->filter |= RNA_boolean_get(op->ptr, "filter_blender") ? BLENDERFILE : 0;
+		if (RNA_struct_find_property(op->ptr, "filter_backup"))
+			params->filter |= RNA_boolean_get(op->ptr, "filter_backup") ? BLENDERFILE_BACKUP : 0;
 		if (RNA_struct_find_property(op->ptr, "filter_image"))
 			params->filter |= RNA_boolean_get(op->ptr, "filter_image") ? IMAGEFILE : 0;
 		if (RNA_struct_find_property(op->ptr, "filter_movie"))

Modified: trunk/blender/source/blender/editors/space_info/space_info.c
===================================================================
--- trunk/blender/source/blender/editors/space_info/space_info.c	2012-11-06 20:19:20 UTC (rev 51953)
+++ trunk/blender/source/blender/editors/space_info/space_info.c	2012-11-06 20:29:14 UTC (rev 51954)
@@ -58,6 +58,7 @@
 #include "UI_view2d.h"
 
 #include "info_intern.h"  /* own include */
+#include "BLO_readfile.h"
 
 /* ******************** default callbacks for info space ***************** */
 
@@ -271,11 +272,16 @@
 static void recent_files_menu_draw(const bContext *UNUSED(C), Menu *menu)
 {
 	struct RecentFile *recent;
+	char file [FILE_MAX];
 	uiLayout *layout = menu->layout;
 	uiLayoutSetOperatorContext(layout, WM_OP_EXEC_REGION_WIN);
 	if (G.recent_files.first) {
 		for (recent = G.recent_files.first; (recent); recent = recent->next) {
-			uiItemStringO(layout, BLI_path_basename(recent->filepath), ICON_FILE_BLEND, "WM_OT_open_mainfile", "filepath", recent->filepath);
+			BLI_split_file_part(recent->filepath, file, sizeof(file));
+			if (BLO_has_bfile_extension(file))
+				uiItemStringO(layout, BLI_path_basename(recent->filepath), ICON_FILE_BLEND, "WM_OT_open_mainfile", "filepath", recent->filepath);
+			else
+				uiItemStringO(layout, BLI_path_basename(recent->filepath), ICON_FILE_BACKUP, "WM_OT_open_mainfile", "filepath", recent->filepath);
 		}
 	}
 	else {

Modified: trunk/blender/source/blender/windowmanager/intern/wm_operators.c
===================================================================
--- trunk/blender/source/blender/windowmanager/intern/wm_operators.c	2012-11-06 20:19:20 UTC (rev 51953)
+++ trunk/blender/source/blender/windowmanager/intern/wm_operators.c	2012-11-06 20:29:14 UTC (rev 51954)
@@ -903,6 +903,8 @@
 	
 	prop = RNA_def_boolean(ot->srna, "filter_blender", (filter & BLENDERFILE), "Filter .blend files", "");
 	RNA_def_property_flag(prop, PROP_HIDDEN | PROP_SKIP_SAVE);
+	prop = RNA_def_boolean(ot->srna, "filter_backup", (filter & BLENDERFILE_BACKUP), "Filter .blend files", "");
+	RNA_def_property_flag(prop, PROP_HIDDEN | PROP_SKIP_SAVE);
 	prop = RNA_def_boolean(ot->srna, "filter_image", (filter & IMAGEFILE), "Filter image files", "");
 	RNA_def_property_flag(prop, PROP_HIDDEN | PROP_SKIP_SAVE);
 	prop = RNA_def_boolean(ot->srna, "filter_movie", (filter & MOVIEFILE), "Filter movie files", "");
@@ -1332,6 +1334,7 @@
 	int i;
 	MenuType *mt = WM_menutype_find("USERPREF_MT_splash", TRUE);
 	char url[96];
+	char file [FILE_MAX];
 
 #ifndef WITH_HEADLESS
 	extern char datatoc_splash_png[];
@@ -1419,7 +1422,11 @@
 
 	uiItemL(col, IFACE_("Recent"), ICON_NONE);
 	for (recent = G.recent_files.first, i = 0; (i < 5) && (recent); recent = recent->next, i++) {
-		uiItemStringO(col, BLI_path_basename(recent->filepath), ICON_FILE_BLEND, "WM_OT_open_mainfile", "filepath", recent->filepath);
+		BLI_split_file_part(recent->filepath, file, sizeof(file));
+		if (BLO_has_bfile_extension(file))
+			uiItemStringO(col, BLI_path_basename(recent->filepath), ICON_FILE_BLEND, "WM_OT_open_mainfile", "filepath", recent->filepath);
+		else
+			uiItemStringO(col, BLI_path_basename(recent->filepath), ICON_FILE_BACKUP, "WM_OT_open_mainfile", "filepath", recent->filepath);
 	}
 
 	uiItemS(col);




More information about the Bf-blender-cvs mailing list