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 
 | 
  } 
 | 
} 
 |