Blender Git Loki
Git Commits -> Revision 71eaf87
Revision 71eaf87 by Hans Goudey (master) April 14, 2021, 16:11 (GMT) |
Geometry Nodes: Add domain and data type to attribute search This patch adds domain and data type information to each row of the attribute search menu. The data type is displayed on the right, just like how the list is exposed for the existing point cloud and hair attribute panels. The domain is exposed on the left like the menu hierarchy from menu search. For the implementation, the attribute hint information is stored as a set instead of a multi-value map so that every item (which we need to point to descretely in the search process) contains the necessary data type and domain information by itself. We also need to allocate a new struct for every button, which requires a change to allow passing a newly allocated argument to search buttons. Note that the search does't yet handle the case where there are two attributes with the same name but different domains or data types in the input geometry set. That will be handled as a separate improvement. Differential Revision: https://developer.blender.org/D10623 |
Commit Details:
Full Hash: 71eaf872c2db37fcc00f269bcb7e8949b2711942
Parent Commit: d705335
Lines Changed: +109, -46
11 Modified Paths:
/source/blender/blenkernel/BKE_node_ui_storage.hh (+12, -6) (Diff)
/source/blender/blenkernel/intern/node_ui_storage.cc (+2, -2) (Diff)
/source/blender/editors/include/UI_interface.h (+1, -0) (Diff)
/source/blender/editors/interface/interface.c (+13, -3) (Diff)
/source/blender/editors/interface/interface_layout.c (+1, -0) (Diff)
/source/blender/editors/interface/interface_templates.c (+1, -0) (Diff)
/source/blender/editors/interface/interface_template_search_menu.c (+1, -0) (Diff)
/source/blender/editors/interface/interface_template_search_operator.c (+1, -0) (Diff)
/source/blender/editors/space_node/node_geometry_attribute_search.cc (+67, -32) (Diff)
/source/blender/editors/space_node/node_select.c (+2, -1) (Diff)
/source/blender/editors/space_outliner/outliner_tools.c (+8, -2) (Diff)
/source/blender/blenkernel/intern/node_ui_storage.cc (+2, -2) (Diff)
/source/blender/editors/include/UI_interface.h (+1, -0) (Diff)
/source/blender/editors/interface/interface.c (+13, -3) (Diff)
/source/blender/editors/interface/interface_layout.c (+1, -0) (Diff)
/source/blender/editors/interface/interface_templates.c (+1, -0) (Diff)
/source/blender/editors/interface/interface_template_search_menu.c (+1, -0) (Diff)
/source/blender/editors/interface/interface_template_search_operator.c (+1, -0) (Diff)
/source/blender/editors/space_node/node_geometry_attribute_search.cc (+67, -32) (Diff)
/source/blender/editors/space_node/node_select.c (+2, -1) (Diff)
/source/blender/editors/space_outliner/outliner_tools.c (+8, -2) (Diff)