Quintiq file version 2.0
#parent: #root
Method GetActivatedFormSnapshot () as LibOpt_FormSnapshot id:Method_LibOpt_GlobalState_GetActivatedFormSnapshot
{
  #keys: '[151132.0.11775721]'
  Body:
  [*
    // Get an activated LibOpt_FormSnapshot instance.
    
    formsnapshot := select( Application.Frame(), SubComponents.astype( LibOpt_FormSnapshot ), form, true );
    
    // Construct the form if it doesn't exist yet.
    if( isnull( formsnapshot ) )
    {
      formsnapshot := construct( LibOpt_FormSnapshot );
      Application.Frame().ShowForm( &formsnapshot );
    }
    
    // Set focus on the form.
    formsnapshot.Activate();
    
    // Clear the current selections in the list.
    listsnapshot := formsnapshot.ListSnapshot();
    listsnapshot.SelectByKey( Key::ZeroKey() );
    
    return formsnapshot;
  *]
}
