[Bf-blender-cvs] [0330b0552b9] master: Cleanup: Explicitly pass icon size to generation function, not just bool
Julian Eisel
noreply at git.blender.org
Sat Jan 2 15:37:04 CET 2021
Commit: 0330b0552b90e647df3ea1f2094f4517df26250d
Author: Julian Eisel
Date: Sat Jan 2 15:29:01 2021 +0100
Branches: master
https://developer.blender.org/rB0330b0552b90e647df3ea1f2094f4517df26250d
Cleanup: Explicitly pass icon size to generation function, not just bool
* This way you don't have to look up the function declaration to know what the
boolean value means.
* You can call the function in a loop over the available sizes and pass the
index as size.
* Makes it easier to add a new size in future if needed.
===================================================================
M source/blender/editors/asset/asset_edit.c
M source/blender/editors/include/UI_interface_icons.h
M source/blender/editors/interface/interface_icons.c
M source/blender/editors/util/ed_util_ops.c
M source/blender/windowmanager/intern/wm_operators.c
===================================================================
diff --git a/source/blender/editors/asset/asset_edit.c b/source/blender/editors/asset/asset_edit.c
index 5333c08c66a..3dca87d3a03 100644
--- a/source/blender/editors/asset/asset_edit.c
+++ b/source/blender/editors/asset/asset_edit.c
@@ -45,7 +45,7 @@ bool ED_asset_mark_id(const bContext *C, ID *id)
id->asset_data = BKE_asset_metadata_create();
- UI_icon_render_id(C, NULL, id, true, true);
+ UI_icon_render_id(C, NULL, id, ICON_SIZE_PREVIEW, true);
return true;
}
diff --git a/source/blender/editors/include/UI_interface_icons.h b/source/blender/editors/include/UI_interface_icons.h
index 78fcd6e7dfa..d77a87e7200 100644
--- a/source/blender/editors/include/UI_interface_icons.h
+++ b/source/blender/editors/include/UI_interface_icons.h
@@ -76,7 +76,7 @@ bool UI_icon_get_theme_color(int icon_id, unsigned char color[4]);
void UI_icon_render_id(const struct bContext *C,
struct Scene *scene,
struct ID *id,
- const bool big,
+ const enum eIconSizes size,
const bool use_job);
int UI_icon_preview_to_render_size(enum eIconSizes size);
diff --git a/source/blender/editors/interface/interface_icons.c b/source/blender/editors/interface/interface_icons.c
index 1a214d6a899..4e1088edb82 100644
--- a/source/blender/editors/interface/interface_icons.c
+++ b/source/blender/editors/interface/interface_icons.c
@@ -1955,7 +1955,8 @@ static void ui_id_preview_image_render_size(
/**
* Note that if an ID doesn't support jobs for preview creation, \a use_job will be ignored.
*/
-void UI_icon_render_id(const bContext *C, Scene *scene, ID *id, const bool big, const bool use_job)
+void UI_icon_render_id(
+ const bContext *C, Scene *scene, ID *id, const enum eIconSizes size, const bool use_job)
{
PreviewImage *pi = BKE_previewimg_id_ensure(id);
@@ -1963,14 +1964,7 @@ void UI_icon_render_id(const bContext *C, Scene *scene, ID *id, const bool big,
return;
}
- if (big) {
- /* bigger preview size */
- ui_id_preview_image_render_size(C, scene, id, pi, ICON_SIZE_PREVIEW, use_job);
- }
- else {
- /* icon size */
- ui_id_preview_image_render_size(C, scene, id, pi, ICON_SIZE_ICON, use_job);
- }
+ ui_id_preview_image_render_size(C, scene, id, pi, size, use_job);
}
static void ui_id_icon_render(const bContext *C, ID *id, bool use_jobs)
@@ -2170,7 +2164,7 @@ int ui_id_icon_get(const bContext *C, ID *id, const bool big)
case ID_LA: /* fall through */
iconid = BKE_icon_id_ensure(id);
/* checks if not exists, or changed */
- UI_icon_render_id(C, NULL, id, big, true);
+ UI_icon_render_id(C, NULL, id, big ? ICON_SIZE_PREVIEW : ICON_SIZE_ICON, true);
break;
case ID_SCR:
iconid = ui_id_screen_get_icon(C, id);
diff --git a/source/blender/editors/util/ed_util_ops.c b/source/blender/editors/util/ed_util_ops.c
index 88df20c5966..bb531b11b12 100644
--- a/source/blender/editors/util/ed_util_ops.c
+++ b/source/blender/editors/util/ed_util_ops.c
@@ -131,7 +131,7 @@ static int lib_id_generate_preview_exec(bContext *C, wmOperator *UNUSED(op))
if (preview) {
BKE_previewimg_clear(preview);
}
- UI_icon_render_id(C, NULL, id, true, true);
+ UI_icon_render_id(C, NULL, id, ICON_SIZE_PREVIEW, true);
WM_event_add_notifier(C, NC_ASSET, NULL);
diff --git a/source/blender/windowmanager/intern/wm_operators.c b/source/blender/windowmanager/intern/wm_operators.c
index 4d80cf7749c..5a64b42a653 100644
--- a/source/blender/windowmanager/intern/wm_operators.c
+++ b/source/blender/windowmanager/intern/wm_operators.c
@@ -3314,8 +3314,8 @@ static void previews_id_ensure(bContext *C, Scene *scene, ID *id)
/* Only preview non-library datablocks, lib ones do not pertain to this .blend file!
* Same goes for ID with no user. */
if (!ID_IS_LINKED(id) && (id->us != 0)) {
- UI_icon_render_id(C, scene, id, false, false);
- UI_icon_render_id(C, scene, id, true, false);
+ UI_icon_render_id(C, scene, id, ICON_SIZE_ICON, false);
+ UI_icon_render_id(C, scene, id, ICON_SIZE_PREVIEW, false);
}
}
More information about the Bf-blender-cvs
mailing list