[Bf-blender-cvs] [fa62b24b57a] temp-spreadsheet-editor: draw float2 attributes
Jacques Lucke
noreply at git.blender.org
Thu Feb 25 13:33:58 CET 2021
Commit: fa62b24b57a4ad2918af1c6b2407d89b1ed97ee7
Author: Jacques Lucke
Date: Thu Feb 25 13:09:36 2021 +0100
Branches: temp-spreadsheet-editor
https://developer.blender.org/rBfa62b24b57a4ad2918af1c6b2407d89b1ed97ee7
draw float2 attributes
===================================================================
M source/blender/editors/space_spreadsheet/space_spreadsheet.cc
===================================================================
diff --git a/source/blender/editors/space_spreadsheet/space_spreadsheet.cc b/source/blender/editors/space_spreadsheet/space_spreadsheet.cc
index 8bd3d98d0c4..4d633323dba 100644
--- a/source/blender/editors/space_spreadsheet/space_spreadsheet.cc
+++ b/source/blender/editors/space_spreadsheet/space_spreadsheet.cc
@@ -649,6 +649,26 @@ static void gather_spreadsheet_data(const bContext *C,
spreadsheet_layout.columns.append({100, &header_drawer, &cell_drawer});
break;
}
+ case CD_PROP_FLOAT2: {
+ static std::array<char, 2> axis_char = {'X', 'Y'};
+ for (const int i : IndexRange(2)) {
+ std::string header_name = attribute_name + " " + axis_char[i];
+ ColumnHeaderDrawer &header_drawer = resources.construct<TextColumnHeaderDrawer>(
+ "attribute header drawer", header_name);
+
+ auto get_value = [attribute, i](int index) {
+ blender::float2 value;
+ attribute->get(index, &value);
+ return value[i];
+ };
+
+ CellDrawer &cell_drawer = resources.construct<FloatCellDrawer<decltype(get_value)>>(
+ "float cell drawer", get_value);
+
+ spreadsheet_layout.columns.append({100, &header_drawer, &cell_drawer});
+ }
+ break;
+ }
case CD_PROP_FLOAT3: {
static std::array<char, 3> axis_char = {'X', 'Y', 'Z'};
for (const int i : IndexRange(3)) {
More information about the Bf-blender-cvs
mailing list