| Quintiq file version 2.0 | 
| #parent: CustomDrawRC | 
| Response OnSelectionChanged ( | 
|   structured[Object] selection | 
| ) id:Response_CustomDrawRC_OnSelectionChanged_593 | 
| { | 
|   #keys: '[139394.0.1568823439]' | 
|   CanBindMultiple: false | 
|   DefinitionID: 'Responsedef_WebCustomDraw_OnSelectionChanged' | 
|   QuillAction | 
|   { | 
|     Body: | 
|     [* | 
|       // Update dataholders with objects | 
|       // Input outputs | 
|       oios := selectset( selection, Elements.astype( Operation ).OperationInputOutput, oio, true ); | 
|       oios := oios.Union( selectset( selection, Elements.astype( OperationInputOutput ), oio, true ) ); | 
|       // special handling for PISP nodes that are linked to multiple inputs and outputs | 
|       oios := oios.Union( selectset( selection, Elements.astype( OperationInputPISPNode ).PISPNodeInRouting.PISPOperationInputEdge.OperationInput, oi, | 
|                                      not oi.IsElementOfInputGroup() ) ); | 
|       oios := oios.Union( selectset( selection, Elements.astype( OperationOutputPISPNode ).PISPNodeInRouting.PISPOperationOutputEdge.OperationOutput, oo, | 
|                                      not oo.IsElementOfInputGroup() ) ); | 
|       DataHolderOperationInputOutputs.Data( oios.Copy() ); | 
|        | 
|       // Input groups | 
|       oigs := selectset( selection, Elements.astype( Operation ).OperationInputGroup, oig, true ); | 
|       oigs := oigs.Union( selectset( selection, Elements.astype( OperationInputGroup ), oio, true ) ); | 
|       oigs := oigs.Union( selectset( selection, Elements.astype( OperationInputOutputPISPNode ).PISPNodeInRouting.OperationBOM.OperationInput.OperationInputGroup, oig, true ) ); | 
|        | 
|       DataHolderOperationInputGroups.Data( oigs.Copy() ); | 
|     *] | 
|     GroupServerCalls: false | 
|   } | 
| } |