1
1

Merge branch 'blender-v3.2-release'

This commit is contained in:
2022-05-09 16:35:25 +02:00
2 changed files with 11 additions and 5 deletions

View File

@@ -91,7 +91,7 @@ const char *BKE_unit_identifier_get(const void *usys_pt, int index);
double BKE_unit_scalar_get(const void *usys_pt, int index);
bool BKE_unit_is_suppressed(const void *usys_pt, int index);
/** Aligned with #PropertyUnit. */
/** Aligned with #PropertyUnit and `bpyunits_ucategories_items` in `bpy_utils_units.c`. */
enum {
B_UNIT_NONE = 0,
B_UNIT_LENGTH = 1,

View File

@@ -35,7 +35,7 @@ static const char *bpyunits_usystem_items[] = {
NULL,
};
static const char *bpyunits_ucategorie_items[] = {
static const char *bpyunits_ucategories_items[] = {
"NONE",
"LENGTH",
"AREA",
@@ -43,20 +43,26 @@ static const char *bpyunits_ucategorie_items[] = {
"MASS",
"ROTATION",
"TIME",
"TIME_ABSOLUTE",
"VELOCITY",
"ACCELERATION",
"CAMERA",
"POWER",
"TEMPERATURE",
NULL,
};
BLI_STATIC_ASSERT(
ARRAY_SIZE(bpyunits_ucategories_items) == B_UNIT_TYPE_TOT + 1,
"`bpyunits_ucategories_items` should match `B_UNIT_` enum items in `BKE_units.h`")
/**
* These fields are just empty placeholders, actual values get set in initializations functions.
* This allows us to avoid many handwriting, and above all,
* to keep all systems/categories definition stuff in `BKE_unit.h`.
*/
static PyStructSequence_Field bpyunits_systems_fields[ARRAY_SIZE(bpyunits_usystem_items)];
static PyStructSequence_Field bpyunits_categories_fields[ARRAY_SIZE(bpyunits_ucategorie_items)];
static PyStructSequence_Field bpyunits_categories_fields[ARRAY_SIZE(bpyunits_ucategories_items)];
static PyStructSequence_Desc bpyunits_systems_desc = {
"bpy.utils.units.systems", /* name */
@@ -114,7 +120,7 @@ static bool bpyunits_validate(const char *usys_str, const char *ucat_str, int *r
return false;
}
*r_ucat = BLI_str_index_in_array(ucat_str, bpyunits_ucategorie_items);
*r_ucat = BLI_str_index_in_array(ucat_str, bpyunits_ucategories_items);
if (*r_ucat < 0) {
PyErr_Format(PyExc_ValueError, "Unknown unit category specified: %.200s.", ucat_str);
return false;
@@ -356,7 +362,7 @@ PyObject *BPY_utils_units(void)
/* bpy.utils.units.categories */
item = py_structseq_from_strings(
&BPyUnitsCategoriesType, &bpyunits_categories_desc, bpyunits_ucategorie_items);
&BPyUnitsCategoriesType, &bpyunits_categories_desc, bpyunits_ucategories_items);
PyModule_AddObject(submodule, "categories", item); /* steals ref */
return submodule;