diff options
author | Jacques Lucke <jacques@blender.org> | 2021-03-05 15:36:51 +0300 |
---|---|---|
committer | Jacques Lucke <jacques@blender.org> | 2021-03-05 15:36:51 +0300 |
commit | 8ff310861c5776b770020068e5a85d0a5aa1b7e4 (patch) | |
tree | 9a1a15811ae8a3edbe8d29c2dcf8e33023288493 /source/blender/editors | |
parent | 46194c68cf89c64e35dcdb2a4d436105fc3d8e93 (diff) |
cleanup
Diffstat (limited to 'source/blender/editors')
-rw-r--r-- | source/blender/editors/space_spreadsheet/spreadsheet_from_python.cc | 32 |
1 files changed, 18 insertions, 14 deletions
diff --git a/source/blender/editors/space_spreadsheet/spreadsheet_from_python.cc b/source/blender/editors/space_spreadsheet/spreadsheet_from_python.cc index 01703bbaacb..2de9e9e3d34 100644 --- a/source/blender/editors/space_spreadsheet/spreadsheet_from_python.cc +++ b/source/blender/editors/space_spreadsheet/spreadsheet_from_python.cc @@ -138,21 +138,25 @@ class PythonSpreadsheetDrawer : public SpreadsheetDrawer { } if (PyTuple_Check(py_cell_content)) { PyObject *py_rna_ptr = PyTuple_GetItem(py_cell_content, 0); - PyObject *py_name = PyTuple_GetItem(py_cell_content, 1); - const char *prop_name = PyUnicode_AsUTF8(py_name); + PyObject *py_prop_path = PyTuple_GetItem(py_cell_content, 1); + const char *prop_path = PyUnicode_AsUTF8(py_prop_path); BPy_StructRNA *py_struct_rna = (BPy_StructRNA *)py_rna_ptr; - PointerRNA ptr = py_struct_rna->ptr; - PropertyRNA *prop = RNA_struct_find_property(&ptr, prop_name); - uiDefAutoButR(params.block, - &ptr, - prop, - -1, - "", - ICON_NONE, - params.xmin, - params.ymin, - params.width, - params.height); + PointerRNA ptr; + PropertyRNA *prop = nullptr; + int index; + RNA_path_resolve_full(&py_struct_rna->ptr, prop_path, &ptr, &prop, &index); + if (prop != nullptr) { + uiDefAutoButR(params.block, + &ptr, + prop, + index, + "", + ICON_NONE, + params.xmin, + params.ymin, + params.width, + params.height); + } } } }; |