[Bf-blender-cvs] [1c64543] master: Cleanup of SpaceFile, from asset-experiments branch mostly.

Bastien Montagne noreply at git.blender.org
Sun Feb 15 16:42:21 CET 2015


Commit: 1c64543aefd5c78540dc3de5254c0dd54649ca81
Author: Bastien Montagne
Date:   Sun Feb 15 16:26:41 2015 +0100
Branches: master
https://developer.blender.org/rB1c64543aefd5c78540dc3de5254c0dd54649ca81

Cleanup of SpaceFile, from asset-experiments branch mostly.

Helps keeping diff with branch relevant and clean...

===================================================================

M	source/blender/editors/space_file/file_draw.c
M	source/blender/editors/space_file/file_ops.c
M	source/blender/editors/space_file/filelist.c

===================================================================

diff --git a/source/blender/editors/space_file/file_draw.c b/source/blender/editors/space_file/file_draw.c
index 9fe6ed7..a00799c 100644
--- a/source/blender/editors/space_file/file_draw.c
+++ b/source/blender/editors/space_file/file_draw.c
@@ -287,8 +287,9 @@ static void file_draw_icon(uiBlock *block, char *path, int sx, int sy, int icon,
 
 	but = uiDefIconBut(block, UI_BTYPE_LABEL, 0, icon, x, y, width, height, NULL, 0.0f, 0.0f, 0.0f, 0.0f, "");
 
-	if (drag)
+	if (drag) {
 		UI_but_drag_set_path(but, path);
+	}
 }
 
 
@@ -324,70 +325,70 @@ void file_calc_previews(const bContext *C, ARegion *ar)
 
 static void file_draw_preview(uiBlock *block, struct direntry *file, int sx, int sy, ImBuf *imb, FileLayout *layout, bool dropshadow, bool drag)
 {
-	if (imb) {
-		uiBut *but;
-		float fx, fy;
-		float dx, dy;
-		int xco, yco;
-		float scaledx, scaledy;
-		float scale;
-		int ex, ey;
-		
-		if ((imb->x * UI_DPI_FAC > layout->prv_w) ||
-		    (imb->y * UI_DPI_FAC > layout->prv_h))
-		{
-			if (imb->x > imb->y) {
-				scaledx = (float)layout->prv_w;
-				scaledy =  ( (float)imb->y / (float)imb->x) * layout->prv_w;
-				scale = scaledx / imb->x;
-			}
-			else {
-				scaledy = (float)layout->prv_h;
-				scaledx =  ( (float)imb->x / (float)imb->y) * layout->prv_h;
-				scale = scaledy / imb->y;
-			}
+	uiBut *but;
+	float fx, fy;
+	float dx, dy;
+	int xco, yco;
+	float scaledx, scaledy;
+	float scale;
+	int ex, ey;
+
+	BLI_assert(imb != NULL);
+
+	if ((imb->x * UI_DPI_FAC > layout->prv_w) ||
+	    (imb->y * UI_DPI_FAC > layout->prv_h))
+	{
+		if (imb->x > imb->y) {
+			scaledx = (float)layout->prv_w;
+			scaledy =  ( (float)imb->y / (float)imb->x) * layout->prv_w;
+			scale = scaledx / imb->x;
 		}
 		else {
-			scaledx = (float)imb->x * UI_DPI_FAC;
-			scaledy = (float)imb->y * UI_DPI_FAC;
-			scale = UI_DPI_FAC;
+			scaledy = (float)layout->prv_h;
+			scaledx =  ( (float)imb->x / (float)imb->y) * layout->prv_h;
+			scale = scaledy / imb->y;
 		}
+	}
+	else {
+		scaledx = (float)imb->x * UI_DPI_FAC;
+		scaledy = (float)imb->y * UI_DPI_FAC;
+		scale = UI_DPI_FAC;
+	}
 
-		ex = (int)scaledx;
-		ey = (int)scaledy;
-		fx = ((float)layout->prv_w - (float)ex) / 2.0f;
-		fy = ((float)layout->prv_h - (float)ey) / 2.0f;
-		dx = (fx + 0.5f + layout->prv_border_x);
-		dy = (fy + 0.5f - layout->prv_border_y);
-		xco = sx + (int)dx;
-		yco = sy - layout->prv_h + (int)dy;
-		
-		glBlendFunc(GL_SRC_ALPHA,  GL_ONE_MINUS_SRC_ALPHA);
-		
-		/* shadow */
-		if (dropshadow)
-			UI_draw_box_shadow(220, (float)xco, (float)yco, (float)(xco + ex), (float)(yco + ey));
+	ex = (int)scaledx;
+	ey = (int)scaledy;
+	fx = ((float)layout->prv_w - (float)ex) / 2.0f;
+	fy = ((float)layout->prv_h - (float)ey) / 2.0f;
+	dx = (fx + 0.5f + layout->prv_border_x);
+	dy = (fy + 0.5f - layout->prv_border_y);
+	xco = sx + (int)dx;
+	yco = sy - layout->prv_h + (int)dy;
 
-		glEnable(GL_BLEND);
-		
-		/* the image */
-		glColor4f(1.0, 1.0, 1.0, 1.0);
-		glaDrawPixelsTexScaled((float)xco, (float)yco, imb->x, imb->y, GL_RGBA, GL_UNSIGNED_BYTE, GL_NEAREST, imb->rect, scale, scale);
-		
-		/* border */
-		if (dropshadow) {
-			glColor4f(0.0f, 0.0f, 0.0f, 0.4f);
-			fdrawbox((float)xco, (float)yco, (float)(xco + ex), (float)(yco + ey));
-		}
-		
-		/* dragregion */
-		if (drag) {
-			but = uiDefBut(block, UI_BTYPE_LABEL, 0, "", xco, yco, ex, ey, NULL, 0.0, 0.0, 0, 0, "");
-			UI_but_drag_set_image(but, file->path, get_file_icon(file), imb, scale);
-		}
-		
-		glDisable(GL_BLEND);
+	glBlendFunc(GL_SRC_ALPHA,  GL_ONE_MINUS_SRC_ALPHA);
+
+	/* shadow */
+	if (dropshadow)
+		UI_draw_box_shadow(220, (float)xco, (float)yco, (float)(xco + ex), (float)(yco + ey));
+
+	glEnable(GL_BLEND);
+
+	/* the image */
+	glColor4f(1.0, 1.0, 1.0, 1.0);
+	glaDrawPixelsTexScaled((float)xco, (float)yco, imb->x, imb->y, GL_RGBA, GL_UNSIGNED_BYTE, GL_NEAREST, imb->rect, scale, scale);
+
+	/* border */
+	if (dropshadow) {
+		glColor4f(0.0f, 0.0f, 0.0f, 0.4f);
+		fdrawbox((float)xco, (float)yco, (float)(xco + ex), (float)(yco + ey));
 	}
+
+	/* dragregion */
+	if (drag) {
+		but = uiDefBut(block, UI_BTYPE_LABEL, 0, "", xco, yco, ex, ey, NULL, 0.0, 0.0, 0, 0, "");
+		UI_but_drag_set_image(but, file->path, get_file_icon(file), imb, scale);
+	}
+
+	glDisable(GL_BLEND);
 }
 
 static void renamebutton_cb(bContext *C, void *UNUSED(arg1), char *oldname)
@@ -519,7 +520,7 @@ void file_draw_list(const bContext *C, ARegion *ar)
 		sy = (int)(v2d->tot.ymax - sy);
 
 		file = filelist_file(files, i);
-		
+
 		UI_ThemeColor4(TH_TEXT);
 
 
@@ -547,7 +548,7 @@ void file_draw_list(const bContext *C, ARegion *ar)
 				imb = filelist_geticon(files, i);
 				is_icon = 1;
 			}
-			
+
 			file_draw_preview(block, file, sx, sy, imb, layout, !is_icon && (file->flags & FILE_TYPE_IMAGE), do_drag);
 		}
 		else {
diff --git a/source/blender/editors/space_file/file_ops.c b/source/blender/editors/space_file/file_ops.c
index ddf9545..6cc4446 100644
--- a/source/blender/editors/space_file/file_ops.c
+++ b/source/blender/editors/space_file/file_ops.c
@@ -179,16 +179,18 @@ static FileSelect file_select_do(bContext *C, int selected_idx, bool do_diropen)
 		params->active_file = selected_idx;
 
 		if (S_ISDIR(file->type)) {
+			const bool is_parent_dir = FILENAME_IS_PARENT(file->relname);
+
 			if (do_diropen == false) {
 				params->file[0] = '\0';
 				retval = FILE_SELECT_DIR;
 			}
 			/* the path is too long and we are not going up! */
-			else if (!FILENAME_IS_PARENT(file->relname) && strlen(params->dir) + strlen(file->relname) >= FILE_MAX) {
+			else if (!is_parent_dir && strlen(params->dir) + strlen(file->relname) >= FILE_MAX) {
 				// XXX error("Path too long, cannot enter this directory");
 			}
 			else {
-				if (FILENAME_IS_PARENT(file->relname)) {
+				if (is_parent_dir) {
 					/* avoids /../../ */
 					BLI_parent_dir(params->dir);
 				}
diff --git a/source/blender/editors/space_file/filelist.c b/source/blender/editors/space_file/filelist.c
index f6175be..66acd7d 100644
--- a/source/blender/editors/space_file/filelist.c
+++ b/source/blender/editors/space_file/filelist.c
@@ -37,10 +37,10 @@
 #include <string.h>
 
 #ifndef WIN32
-#include <unistd.h>
+#  include <unistd.h>
 #else
-#include <io.h>
-#include <direct.h>
+#  include <io.h>
+#  include <direct.h>
 #endif   
 #include "MEM_guardedalloc.h"
 
@@ -58,10 +58,10 @@
 #include "BKE_global.h"
 #include "BKE_library.h"
 #include "BKE_icons.h"
+#include "BKE_idcode.h"
 #include "BKE_main.h"
 #include "BKE_report.h"
 #include "BLO_readfile.h"
-#include "BKE_idcode.h"
 
 #include "DNA_space_types.h"
 
@@ -91,7 +91,7 @@ typedef struct FolderList {
 
 ListBase *folderlist_new(void)
 {
-	ListBase *p = MEM_callocN(sizeof(ListBase), "folderlist");
+	ListBase *p = MEM_callocN(sizeof(*p), __func__);
 	return p;
 }
 
@@ -128,7 +128,7 @@ void folderlist_pushdir(ListBase *folderlist, const char *dir)
 	}
 
 	/* create next folder element */
-	folder = (FolderList *)MEM_mallocN(sizeof(FolderList), "FolderList");
+	folder = MEM_mallocN(sizeof(*folder), __func__);
 	folder->foldername = BLI_strdup(dir);
 
 	/* add it to the end of the list */
@@ -178,7 +178,7 @@ ListBase *folderlist_duplicate(ListBase *folderlist)
 {
 	
 	if (folderlist) {
-		ListBase *folderlistn = MEM_callocN(sizeof(ListBase), "copy folderlist");
+		ListBase *folderlistn = MEM_callocN(sizeof(*folderlistn), __func__);
 		FolderList *folder;
 		
 		BLI_duplicatelist(folderlistn, folderlist);
@@ -286,25 +286,30 @@ static int compare_direntry_generic(const struct direntry *entry1, const struct
 	/* type is equal to stat.st_mode */
 
 	if (compare_is_directory(entry1)) {
-		if (compare_is_directory(entry2) == 0) return (-1);
+		if (compare_is_directory(entry2) == 0) {
+			return -1;
+		}
 	}
-	else {
-		if (compare_is_directory(entry2)) return (1);
+	else if (compare_is_directory(entry2)) {
+		return 1;
 	}
+
 	if (S_ISREG(entry1->type)) {
-		if (S_ISREG(entry2->type) == 0) return (-1);
+		if (!S_ISREG(entry2->type)) {
+			return -1;
+		}
 	}
-	else {
-		if (S_ISREG(entry2->type)) return (1);
+	else if (S_ISREG(entry2->type)) {
+		return 1;
 	}
-	if ((entry1->type & S_IFMT) < (entry2->type & S_IFMT)) return (-1);
-	if ((entry1->type & S_IFMT) > (entry2->type & S_IFMT)) return (1);
+	if ((entry1->type & S_IFMT) < (entry2->type & S_IFMT)) return -1;
+	if ((entry1->type & S_IFMT) > (entry2->type & S_IFMT)) return 1;
 	
 	/* make sure "." and ".." are always first */
-	if (FILENAME_IS_CURRENT(entry1->relname)) return (-1);
-	if (FILENAME_IS_CURRENT(entry2->relname)) return (1);
-	if (FILENAME_IS_PARENT(entry1->relname)) return (-1);
-	if (FILENAME_IS_PARENT(entry2->relname)) return (1);
+	if (FILENAME_IS_CURRENT(entry1->relname)) return -1;
+	if (FILENAME_IS_CURRENT(entry2->relname)) return 1;
+	if (FILENAME_IS_PARENT(entry1->relname)) return -1;
+	if (FILENAME_IS_PARENT(entry2->relname)) return 1;
 	
 	return 0;
 }
@@ -325,15 +330,15 @@ static int compare_date(const void *a1, const void *a2)
 {
 	const struct direntry *entry1 = a1, *entry2 = a2;
 	int ret;
-	
+
 	if ((ret = compare_direntry_generic(entry1, entry2))) {
 		return ret;
 	}
 	
 	if (entry1->s.st_mtime < entry2->s.st_mtime) return 1;
 	if (entry1->s.st_mtime > entry2->s.st_mtime) return -1;
-	
-	else return BLI_natstrcmp(entry1->relname, entry2->relname);
+
+	return BLI_natstrcmp(entry1->relname, entry2->relname);
 }
 
 static int compare_size(const void *a1, const void *a2)	
@@ -347,7 +352,8 @@ static int compare_size(const void *a1, const void *a2)
 	
 	if (entry1->s.st_size < entry2->s.st_size) return 1;
 	if (entry1->s.st_size > entry2->s.st_size) return -1;
-	else return BLI_natstrcmp(entry1->relname, entry2->relname);
+
+	return BLI_natstrcmp(entry1->relname, entry2->relname);
 }
 
 static int compare_extension(const void *a1, const void *a2)
@@ -368,7 +374,7 @@ static int compare_extension(const void *a1, const void *a2)
 	if (!sufix1) sufix1 = nil;
 	if (!sufix2) sufix2 = nil;
 
-	return (BLI_strcasecmp(sufix1, sufix2));
+	return BLI_strcasecmp(sufix1, sufix2);
 }
 
 bool filelist_need_sorting(struct FileList *filelist)
@@ -521,7 +527,7 @@ void filelist_filter(FileList *filelist)
 	}
 
 	/* Note: maybe we could even accept filelist->fidx to be filelist->numfiles -len allocated? *

@@ Diff output truncated at 10240 characters. @@




More information about the Bf-blender-cvs mailing list