@colby wrote:
Component is missing after drop a component on link.
before drop
After drop
Our dropOntoLink function.
function dropOntoLink(e, obj) { var diagram = e.diagram; if (e.key == "") { var newnode = diagram.selection.first(); var oldlink = obj.part; var fromnode = oldlink.fromNode; var tonode = oldlink.toNode; oldlink.toNode = newnode; oldlink.isNew = 1; var form_port = ''; var to_port = ''; var form_count = 0; var to_count = 0; var in_out_count = 0; var old_toport = ''; var old_port_count = 0; to_port = oldlink.toPort; jQuery.each(all_connection_positions_arr[newnode.data.ComponentTypeNo], function(index, value) { if ((value.Direction == "In" || value.Direction == "InOut") && old_port_count == 0) { oldlink.toPort = "PORT_" + value.ConnectorNo; old_toport = "PORT_" + value.ConnectorNo; old_port_count++; } }); jQuery.each(all_connection_positions_arr[newnode.data.ComponentTypeNo], function(index, value) { if ((value.Direction == "Out" || value.Direction == "InOut") && form_count == 0) { if(old_toport != "PORT_" + value.ConnectorNo){ form_port = "PORT_" + value.ConnectorNo; form_count++; } } }); var link_data_arr = { from: newnode.data.key, to: tonode.data.key, fromPort: form_port, toPort: to_port, key: get_key(), text: 'Pipe', ComponentTypeNo: 3, isNew: 1, }; var blankcomponentdetails_value = blankcomponentdetails_arr[0]; var keys_arr = Object.keys(blankcomponentdetails_value); for(var i=0; i<keys_arr.length; i++) { var data_key = keys_arr[i]; var data_key_arr = data_key.split("__"); if(data_key.indexOf("__") > 0){ if(data_key_arr[6] == 'ComponentNo'){ }else{ link_data_arr[data_key] = blankcomponentdetails_value[data_key]; } } } diagram.model.addLinkData(link_data_arr); } else { myDiagram.nodeTemplateMap.each(function(nodeType) { if (nodeType.key == 'Converge Tee') { diagram.model.addNodeData(nodeType); } }); } }
Posts: 11
Participants: 2