Quintiq file version 2.0
|
#parent: CustomDrawComponentSupplyChainVisualization/CustomDrawDataLayerNode
|
Response OnClickObject (
|
shadow[SCVPISPIPNode] object
|
) id:Response_CustomDrawComponentSupplyChainVisualization_CustomDrawDataLayerNode_OnClickObject
|
{
|
#keys: '[132894.0.1050777934]'
|
Body:
|
[*
|
// Click expand nav panel selection
|
pispip := object.ProductInStockingPointInPeriod();
|
pisp := pispip.ProductInStockingPoint_MP();
|
|
index := DataHolderSelectedNodes.Data().Find( object );
|
found := index >= 0;
|
|
// Verify the node clicked is not the focused one( double clicked )
|
// because we are not going to make any changes to the list
|
// if the user clicks on the focused node
|
notInFocus := not exists( DataHolderFocusedPISPIP.Data(), Elements, e,
|
e.ProductInStockingPoint_MP() = pisp )
|
|
if( notInFocus )
|
{
|
if ( action.IsControl() or action.IsShift() )
|
{
|
if( found ) // Deselect object if we ctrl / shift click on a selected node
|
{
|
DataHolderSelectedNodes.Data().Delete( index );
|
|
DataHolderProducts.Data().Delete( DataHolderProducts.Data().Find( pisp.Product_MP() ) );
|
DataHolderStockingPoints.Data().Delete( DataHolderStockingPoints.Data().Find( pisp.StockingPoint_MP() ) );
|
}
|
else // Add it to the current selection if it has yet been selected
|
{
|
DataHolderSelectedNodes.Data().Add( object );
|
DataHolderProducts.Data().Add( pisp.Product_MP() )
|
DataHolderStockingPoints.Data().Add( pisp.StockingPoint_MP() );
|
}
|
}
|
// If the user clicks on a node instead of ctrl / shift clicking,
|
// we flush all the previously selected nodes and select only the one newly clicked
|
else
|
{
|
// Clear previously selected nodes
|
FormSupplyChainVisualization.ClearSelectedNodes();
|
// Add newly clicked node into selection
|
DataHolderSelectedNodes.Data().Add( object );
|
DataHolderProducts.Data().Add( pisp.Product_MP() );
|
DataHolderStockingPoints.Data().Add( pisp.StockingPoint_MP() );
|
}
|
}
|
*]
|
CanBindMultiple: false
|
DefinitionID: 'Responsedef_CustomDrawBaseDataLayer_OnClickObject'
|
}
|