Quintiq file version 2.0
#parent: ValueHolderLastSelected3DDriveDirectory
Response OnValueChanged () id:Response_ApplicationLibMacroPlanner_ValueHolderLastSelected3DDriveDirectory_OnValueChanged
{
  #keys: '[108684.0.1786085871]'
  Body:
  [*
    // Set value on client start
    lastUsedPath := this.Value();
    
    if( isnull( DataHolderLastSelected3DDriveDirectory.Data() ) and lastUsedPath <> '' )
    {
      directory := null( FileItem, owning );
      
      // Need to validate that the directory still exists, otherwise will throw an error
      try
      {
        provider := FileProvider::CreateFromURL( lastUsedPath );
        directory := provider.CreateFileItemFromURL( lastUsedPath );
      }
      onerror
      {
        // Set directory to null and reset to Root
        DataHolderLastSelected3DDriveDirectory.ClearData();
      }
    
      if( not isnull( directory ) )
      {
        DataHolderLastSelected3DDriveDirectory.Data( &directory );
      }
    }
  *]
  CanBindMultiple: false
  DefinitionID: 'Responsedef_ValueHolder_OnValueChanged'
}
