[Bf-blender-cvs] [842375e1eda] temp-geometry-nodes-viewer-node: test adding shortcut for geo viewer

Jacques Lucke noreply at git.blender.org
Wed Jun 2 15:24:19 CEST 2021


Commit: 842375e1edacc6638dd7bfc3855cafb3fd5a0804
Author: Jacques Lucke
Date:   Tue Jun 1 16:23:43 2021 +0200
Branches: temp-geometry-nodes-viewer-node
https://developer.blender.org/rB842375e1edacc6638dd7bfc3855cafb3fd5a0804

test adding shortcut for geo viewer

===================================================================

M	source/blender/blenkernel/intern/node.cc
M	source/blender/editors/space_node/node_edit.c
M	source/blender/editors/space_node/node_relationships.c
M	source/blender/nodes/geometry/nodes/node_geo_viewer.cc

===================================================================

diff --git a/source/blender/blenkernel/intern/node.cc b/source/blender/blenkernel/intern/node.cc
index bbc4e1c4a55..b2ea0413005 100644
--- a/source/blender/blenkernel/intern/node.cc
+++ b/source/blender/blenkernel/intern/node.cc
@@ -3147,8 +3147,8 @@ void ntreeSetOutput(bNodeTree *ntree)
           if (ntree->type == NTREE_COMPOSIT) {
             /* same type, exception for viewer */
             if (tnode->type == node->type ||
-                (ELEM(tnode->type, CMP_NODE_VIEWER, CMP_NODE_SPLITVIEWER) &&
-                 ELEM(node->type, CMP_NODE_VIEWER, CMP_NODE_SPLITVIEWER))) {
+                (ELEM(tnode->type, CMP_NODE_VIEWER, CMP_NODE_SPLITVIEWER, GEO_NODE_VIEWER) &&
+                 ELEM(node->type, CMP_NODE_VIEWER, CMP_NODE_SPLITVIEWER, GEO_NODE_VIEWER))) {
               if (tnode->flag & NODE_DO_OUTPUT) {
                 output++;
                 if (output > 1) {
diff --git a/source/blender/editors/space_node/node_edit.c b/source/blender/editors/space_node/node_edit.c
index 330a7c8f895..0ed52c9c1d1 100644
--- a/source/blender/editors/space_node/node_edit.c
+++ b/source/blender/editors/space_node/node_edit.c
@@ -384,7 +384,7 @@ bool composite_node_editable(bContext *C)
 {
   if (ED_operator_node_editable(C)) {
     SpaceNode *snode = CTX_wm_space_node(C);
-    if (ED_node_is_compositor(snode)) {
+    if (ED_node_is_compositor(snode) || ED_node_is_geometry(snode)) {
       return true;
     }
   }
diff --git a/source/blender/editors/space_node/node_relationships.c b/source/blender/editors/space_node/node_relationships.c
index 1700a099977..d0d2a4104ed 100644
--- a/source/blender/editors/space_node/node_relationships.c
+++ b/source/blender/editors/space_node/node_relationships.c
@@ -603,14 +603,14 @@ static int node_link_viewer(const bContext *C, bNode *tonode)
   if (tonode == NULL || BLI_listbase_is_empty(&tonode->outputs)) {
     return OPERATOR_CANCELLED;
   }
-  if (ELEM(tonode->type, CMP_NODE_VIEWER, CMP_NODE_SPLITVIEWER)) {
+  if (ELEM(tonode->type, CMP_NODE_VIEWER, CMP_NODE_SPLITVIEWER, GEO_NODE_VIEWER)) {
     return OPERATOR_CANCELLED;
   }
 
   /* get viewer */
   bNode *viewer_node = NULL;
   LISTBASE_FOREACH (bNode *, node, &snode->edittree->nodes) {
-    if (ELEM(node->type, CMP_NODE_VIEWER, CMP_NODE_SPLITVIEWER)) {
+    if (ELEM(node->type, CMP_NODE_VIEWER, CMP_NODE_SPLITVIEWER, GEO_NODE_VIEWER)) {
       if (node->flag & NODE_DO_OUTPUT) {
         viewer_node = node;
         break;
@@ -620,7 +620,7 @@ static int node_link_viewer(const bContext *C, bNode *tonode)
   /* no viewer, we make one active */
   if (viewer_node == NULL) {
     LISTBASE_FOREACH (bNode *, node, &snode->edittree->nodes) {
-      if (ELEM(node->type, CMP_NODE_VIEWER, CMP_NODE_SPLITVIEWER)) {
+      if (ELEM(node->type, CMP_NODE_VIEWER, CMP_NODE_SPLITVIEWER, GEO_NODE_VIEWER)) {
         node->flag |= NODE_DO_OUTPUT;
         viewer_node = node;
         break;
diff --git a/source/blender/nodes/geometry/nodes/node_geo_viewer.cc b/source/blender/nodes/geometry/nodes/node_geo_viewer.cc
index 027949f89a7..f0b91f49f52 100644
--- a/source/blender/nodes/geometry/nodes/node_geo_viewer.cc
+++ b/source/blender/nodes/geometry/nodes/node_geo_viewer.cc
@@ -25,7 +25,7 @@ void register_node_type_geo_viewer()
 {
   static bNodeType ntype;
 
-  geo_node_type_base(&ntype, GEO_NODE_VIEWER, "Viewer", NODE_CLASS_GEOMETRY, 0);
+  geo_node_type_base(&ntype, GEO_NODE_VIEWER, "Viewer", NODE_CLASS_OUTPUT, 0);
   node_type_socket_templates(&ntype, geo_node_viewer_in, nullptr);
   nodeRegisterType(&ntype);
 }



More information about the Bf-blender-cvs mailing list