Commit: 902a103f8092b6a69e28ea76f3cfdca14dc9a8b8 Author: Hans Goudey Date: Thu Jan 20 10:36:56 2022 -0600 Branches: master https://developer.blender.org/rB902a103f8092b6a69e28ea76f3cfdca14dc9a8b8
Cleanup: Move node editor files to proper namespace This commit moves code in all node editor files to the `blender::ed::space_node` namespace, except for C API functions defined in `ED_node.h`, which can only be moved once all areas calling them are moved to C++. The change is fairly straightforward, I just moved a couple of "ED_" code blocks around to make the namespace more contiguous, and there's the method for adding a pointer to a struct in a C++ namespace in DNA. Differential Revision: https://developer.blender.org/D13871 =================================================================== M source/blender/editors/space_node/drawnode.cc M source/blender/editors/space_node/node_add.cc M source/blender/editors/space_node/node_draw.cc M source/blender/editors/space_node/node_edit.cc M source/blender/editors/space_node/node_geometry_attribute_search.cc M source/blender/editors/space_node/node_gizmo.cc M source/blender/editors/space_node/node_group.cc M source/blender/editors/space_node/node_intern.hh M source/blender/editors/space_node/node_ops.cc M source/blender/editors/space_node/node_relationships.cc M source/blender/editors/space_node/node_select.cc M source/blender/editors/space_node/node_templates.cc M source/blender/editors/space_node/node_view.cc M source/blender/editors/space_node/space_node.cc M source/blender/makesdna/DNA_space_types.h =================================================================== diff --git a/source/blender/editors/space_node/drawnode.cc b/source/blender/editors/space_node/drawnode.cc index 8474192ca23..94da7d55e5d 100644 --- a/source/blender/editors/space_node/drawnode.cc +++ b/source/blender/editors/space_node/drawnode.cc @@ -79,7 +79,7 @@ #include "NOD_texture.h" #include "node_intern.hh" /* own include */ -using blender::float2; +namespace blender::ed::space_node { /* Default flags for uiItemR(). Name is kept short since this is used a lot in this file. */ #define DEFAULT_FLAGS UI_ITEM_R_SPLIT_EMPTY_NAME @@ -160,6 +160,8 @@ static void node_buts_curvefloat(uiLayout *layout, bContext *UNUSED(C), PointerR uiTemplateCurveMapping(layout, ptr, "mapping", 0, false, false, false, false); } +} // namespace blender::ed::space_node + #define SAMPLE_FLT_ISNONE FLT_MAX /* Bad bad, 2.5 will do better? ... no it won't! */ static float _sample_col[4] = {SAMPLE_FLT_ISNONE}; @@ -173,6 +175,8 @@ void ED_node_sample_set(const float col[4]) } } +namespace blender::ed::space_node { + static void node_buts_curvecol(uiLayout *layout, bContext *UNUSED(C), PointerRNA *ptr) { bNode *node = (bNode *)ptr->data; @@ -1101,8 +1105,12 @@ static void node_socket_undefined_interface_draw_color(bContext *UNUSED(C), /** \} */ +} // namespace blender::ed::space_node + void ED_node_init_butfuncs() { + using namespace blender::ed::space_node; + /* Fallback types for undefined tree, nodes, sockets * Defined in blenkernel, but not registered in type hashes. */ @@ -1135,9 +1143,11 @@ void ED_init_custom_node_type(bNodeType *UNUSED(ntype)) void ED_init_custom_node_socket_type(bNodeSocketType *stype) { - stype->draw = node_socket_button_label; + stype->draw = blender::ed::space_node::node_socket_button_label; } +namespace blender::ed::space_node { + static const float virtual_node_socket_color[4] = {0.2, 0.2, 0.2, 1.0}; /* maps standard socket integer type to a color */ @@ -1420,14 +1430,6 @@ static void std_node_socket_interface_draw(bContext *UNUSED(C), uiLayout *layout uiItemR(layout, ptr, "hide_value", DEFAULT_FLAGS, nullptr, 0); } -void ED_init_standard_node_socket_type(bNodeSocketType *stype) -{ - stype->draw = std_node_socket_draw; - stype->draw_color = std_node_socket_draw_color; - stype->interface_draw = std_node_socket_interface_draw; - stype->interface_draw_color = std_node_socket_interface_draw_color; -} - static void node_socket_virtual_draw_color(bContext *UNUSED(C), PointerRNA *UNUSED(ptr), PointerRNA *UNUSED(node_ptr), @@ -1436,12 +1438,26 @@ static void node_socket_virtual_draw_color(bContext *UNUSED(C), copy_v4_v4(r_color, virtual_node_socket_color); } +} // namespace blender::ed::space_node + +void ED_init_standard_node_socket_type(bNodeSocketType *stype) +{ + using namespace blender::ed::space_node; + stype->draw = std_node_socket_draw; + stype->draw_color = std_node_socket_draw_color; + stype->interface_draw = std_node_socket_interface_draw; + stype->interface_draw_color = std_node_socket_interface_draw_color; +} + void ED_init_node_socket_type_virtual(bNodeSocketType *stype) { + using namespace blender::ed::space_node; stype->draw = node_socket_button_label; stype->draw_color = node_socket_virtual_draw_color; } +namespace blender::ed::space_node { + /* ************** Generic drawing ************** */ void draw_nodespace_back_pix(const bContext &C, @@ -2148,6 +2164,8 @@ void node_draw_link(const bContext &C, node_draw_link_bezier(C, v2d, snode, link, th_col1, th_col2, th_col3); } +} // namespace blender::ed::space_node + void ED_node_draw_snap(View2D *v2d, const float cent[2], float size, NodeBorder border, uint pos) { immBegin(GPU_PRIM_LINES, 4); diff --git a/source/blender/editors/space_node/node_add.cc b/source/blender/editors/space_node/node_add.cc index be29c125e5a..8e88f1fad5a 100644 --- a/source/blender/editors/space_node/node_add.cc +++ b/source/blender/editors/space_node/node_add.cc @@ -62,6 +62,8 @@ /** \name Utilities * \{ */ +namespace blender::ed::space_node { + bNode *node_add_node(const bContext &C, const char *idname, int type, float locx, float locy) { SpaceNode &snode = *CTX_wm_space_node(&C); @@ -1046,3 +1048,5 @@ void NODE_OT_new_node_tree(wmOperatorType *ot) } /** \} */ + +} // namespace blender::ed::space_node diff --git a/source/blender/editors/space_node/node_draw.cc b/source/blender/editors/space_node/node_draw.cc index ee6dbc15c15..82da890fa9b 100644 --- a/source/blender/editors/space_node/node_draw.cc +++ b/source/blender/editors/space_node/node_draw.cc @@ -88,13 +88,6 @@ #include "node_intern.hh" /* own include */ -using blender::Array; -using blender::float2; -using blender::Map; -using blender::Set; -using blender::Span; -using blender::Vector; -using blender::VectorSet; using blender::fn::CPPType; using blender::fn::FieldCPPType; using blender::fn::FieldInput; @@ -115,6 +108,8 @@ float ED_node_grid_size() void ED_node_tree_update(const bContext *C) { + using namespace blender::ed::space_node; + SpaceNode *snode = CTX_wm_space_node(C); if (snode) { snode_set_context(*C); @@ -176,6 +171,8 @@ void ED_node_tag_update_id(ID *id) } } +namespace blender::ed::space_node { + static bool compare_nodes(const bNode *a, const bNode *b) { /* These tell if either the node or any of the parent nodes is selected. @@ -1071,8 +1068,12 @@ static void node_socket_draw_nested(const bContext &C, UI_block_emboss_set(&block, old_emboss); } +} // namespace blender::ed::space_node + void ED_node_socket_draw(bNodeSocket *sock, const rcti *rect, const float color[4], float scale) { + using namespace blender::ed::space_node; + const float size = 2.25f * NODE_SOCKSIZE * scale; rcti draw_rect = *rect; float outline_color[4] = {0}; @@ -1119,6 +1120,8 @@ void ED_node_socket_draw(bNodeSocket *sock, const rcti *rect, const float color[ GPU_blend(state); } +namespace blender::ed::space_node { + /* ************** Socket callbacks *********** */ static void node_draw_preview_background(rctf *rect) @@ -2879,3 +2882,5 @@ void node_draw_space(const bContext &C, ARegion ®ion) /* Scrollers. */ UI_view2d_scrollers_draw(&v2d, nullptr); } + +} // namespace blender::ed::space_node diff --git a/source/blender/editors/space_node/node_edit.cc b/source/blender/editors/space_node/node_edit.cc index 35cd74552ec..6275e7e4656 100644 --- a/source/blender/editors/space_node/node_edit.cc +++ b/source/blender/editors/space_node/node_edit.cc @@ -76,10 +76,9 @@ #include "NOD_texture.h" #include "node_intern.hh" /* own include */ -#define USE_ESC_COMPO +namespace blender::ed::space_node { -using blender::float2; -using blender::Map; +#define USE_ESC_COMPO /* ***************** composite job manager ********************** */ @@ -320,8 +319,12 @@ static void compo_startjob(void *cjv, ntree->progress = nullptr; } +} // namespace blender::ed::space_node + void ED_node_composite_job(const bContext *C, struct bNodeTree *nodetree, Scene *scene_owner) { + using namespace blender::ed::space_node; + Main *bmain = CTX_data_main(C); Scene *scene = CTX_data_scene(C); ViewLayer *view_layer = CTX_data_view_layer(C); @@ -361,6 +364,8 @@ void ED_node_composite_job(const bContext *C, struct bNodeTree *nodetree, Scene WM_jobs_start(CTX_wm_manager(C), wm_job); } +namespace blender::ed::space_node { + /* ***************************************** */ bool composite_node_active(bContext *C) @@ -411,18 +416,20 @@ static void send_notifiers_after_tree_change(ID *id, bNodeTree *ntree) } } +} // namespace blender::ed::space_node + void ED_node_tree_propagate_change(const bContext *C, Main *bmain, bNodeTree *root_ntree) { if (C != nullptr) { SpaceNode *snode = CTX_wm_space_node(C); if (snode != nullptr && root_ntree != nullptr) { - send_notifiers_after_tree_change(snode->id, root_ntree); + blender::ed::space_node::send_notifiers_after_tree_change(snode->id, root_ntree); } } NodeTreeUpdateExtraParams params = {nullptr}; params.tree_changed_fn = [](ID *id, bNodeTree *ntree, void *UNUSED(user_data)) { - send_notifiers_after_tree_change(id, ntree); + blender::ed::space_node::send_notifiers_after_tree_change(id, ntree); DEG_id_tag_update(&ntree->id, ID_RECALC_COPY_ON_WRITE); }; params.tree_output_changed_fn = [](ID *UNUSED(id), bNodeTree *ntree, void *UNUSED(user_data)) { @@ -589,6 +596,8 @@ void ED_node_texture_default(const bContext *C, Tex *tex) BKE_ntree_update_main_tree(CTX_data_main(C), tex->nodetree, nullptr); } +namespace blender::ed::space_node { + /** * Here we set the active tree(s), even called for each redraw now, so keep it fast :) */ @@ -631,6 +640,8 @@ void snode_set_context(const bContext &C) } } +} // namespace blender::ed::space_node + void ED_node_set_active( Main *bmain, SpaceNode *snode, bNodeTree *ntree, bNode *node, bool *r_active_texture_changed) { @@ -796,6 +807,8 @@ void ED_node_post_apply_transform(bContext *UNUSED(C), bNodeTree *UNUSED(ntree)) // node_update_nodetree(C, ntree, 0.0f, 0.0f); } +namespace blender::ed::space_node { + /* ***************** generic operator functions for nodes ***************** */ #if 0 /* UNUSED */ @@ -2929,3 +2942,4 @@ void NODE_OT_cryptomatte_layer_remove(wmOperatorType *ot) /* flags */ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO; } +} // namespace blender::ed::space_node diff --git a/source/blender/editors/space_node/node_geometry_attribute_search.cc b/source/blender/editors/space_node/node_geometry_attribute_search.cc index 6f96e08d749..542e6fd748f 100644 --- a/source/blender/editors/space_node/node_geometry_attribute_search.cc +++ b/source/blender/editors/space_node/node_geometry_attribute_search.cc @@ -46,13 +46,11 @@ #include "node_intern.hh" -using blender::IndexRange; -using blender::Map; -using blender::Set; -using blender::StringRef; namespace geo_log = blender::nodes::geometry_nodes_eval_log; using geo_log::GeometryAttributeInfo; +namespace blender::ed::space_node { + struct AttributeSearchData { @@ Diff output truncated at 10240 characters. @@ _______________________________________________ Bf-blender-cvs mailing list [email protected] List details, subscription details or unsubscribe: https://lists.blender.org/mailman/listinfo/bf-blender-cvs
