Quintiq file version 2.0 
 | 
#parent: #root 
 | 
StaticMethod Delete ( 
 | 
  ScenarioNodes scenarionodes, 
 | 
  ScenarioManager owner 
 | 
) 
 | 
{ 
 | 
  Description: 'Move scenarios to recycle bin' 
 | 
  TextBody: 
 | 
  [* 
 | 
    // Cannot use ScenarioManager::DeleteObjects because the logic is different. 
 | 
    before := null( ScenarioNode ); 
 | 
    isdeleted := false; 
 | 
     
 | 
    traverse( scenarionodes, Elements, e, e.istype( Scenario ) ) 
 | 
    { 
 | 
      // Move child node to under object's parent, 
 | 
      // we don't want to delete the child scenarios if its parent is not a folder and its deleted 
 | 
      traverse( e, Children, child ) 
 | 
      { 
 | 
        e.Parent().MoveAfter( child, before ); 
 | 
      } 
 | 
    } 
 | 
     
 | 
    recyclebin := select( scenarionodes, Elements.ScenarioManager.ScenarioNode.astype( ScenarioFolder ), folder, true, folder.IsRecycleBin() ); 
 | 
     
 | 
    if( not isnull ( recyclebin ) ) 
 | 
    { 
 | 
      recyclebin.Move( scenarionodes, isdeleted ); 
 | 
    } 
 | 
  *] 
 | 
} 
 |