I have went through all the samples and I just can’t figure this out.
I have got Groups working and I have Nodes working. When I drag a node onto a Group the data shows the node is grouped with my group, but no matter what I do the Group always comes to the foreground and the Node is hidden visually.
Any suggestions would be helpful.
var finishDrop = function(e, grp) { var ok = (grp !== null ? grp.addMembers(grp.diagram.selection, true) : e.diagram.commandHandler.addTopLevelParts(e.diagram.selection, true)); if (!ok) e.diagram.currentTool.doCancel(); }; var highlightGroup = function(e, grp, show) { if (!grp) return; e.handled = true; if (show) { var tool = grp.diagram.toolManager.draggingTool; var map = tool.draggedParts || tool.copiedParts; // this is a Map if (grp.canAddMembers(map.toKeySet())) { grp.isHighlighted = true; return; } } grp.isHighlighted = false; }; this.goDiagram.groupTemplate = this.goJs(go.Group, "Auto", { background: "transparent", mouseDragEnter: function(e, grp, prev) { highlightGroup(e, grp, true); }, mouseDragLeave: function(e, grp, next) { highlightGroup(e, grp, false); }, computesBoundsAfterDrag: true, mouseDrop: finishDrop, handlesDragDropForMembers: true, locationSpot: go.Spot.Center, locationObjectName: "PH", resizable: true, resizeObjectName: "PH", locationSpot: go.Spot.Center, isSubGraphExpanded: false }, new go.Binding("itemArray", "boundaryEventArray"), new go.Binding("location", "loc", go.Point.parse).makeTwoWay(go.Point.stringify), this.goJs(go.Panel, "Auto", this.goJs(go.Shape, "RoundedRectangle", { name: "PH", // fill: SubprocessNodeFill, fill: "transparent", stroke: SubprocessNodeStroke, minSize: new go.Size(ActivityNodeWidth, ActivityNodeHeight), portId: "", fromLinkable: true, toLinkable: true, cursor: "pointer", fromSpot: go.Spot.RightSide, toSpot: go.Spot.LeftSide }, new go.Binding("desiredSize", "size", go.Size.parse).makeTwoWay(go.Size.stringify), new go.Binding("strokeWidth", "isCall", function(s) { return s ? ActivityNodeStrokeWidthIsCall : ActivityNodeStrokeWidth; }) ), this.goJs(go.Panel, "Vertical", { defaultAlignment: go.Spot.Left }, this.goJs(go.TextBlock, { margin: 3, editable: true }, new go.Binding("text", "text").makeTwoWay(), new go.Binding("alignment", "isSubGraphExpanded", function(s) { return s ? go.Spot.TopLeft : go.Spot.Center; })), this.goJs(go.Placeholder, { padding: new go.Margin(5, 5) }) ) ) );
TIA
Jeff