Quintiq file version 2.0
#parent: #root
Method ParseFormSubComponents (output owning JSONBuilder jsonbuilder, GUIComponent component) id:Method_GlobalStateTestGenerator_ParseFormSubComponents
{
  #keys: '[142876.9.227805723]'
  Body:
  [*
    name := '';
    componentkey := '';
    display := '';
    issupported := true;
    
    if( component.istype( List ) )
    {
      display := component.astype( List ).Display();
    }
    else if( component.istype( GanttChart ) )
    {
      display := component.astype( GanttChart ).Display();
    }
    else if( component.istype( CustomDrawComponent ) )
    {
      display := component.astype( CustomDrawComponent ).Display();
    }
    else if( component.istype( Dashboard ) )
    {
      display := component.astype( Dashboard ).Display();
    }
    else
    {
      issupported := false;
    }
    
    name := GlobalStateTestGenerator.GetComponentNameFromDisplay( display );
    componentkey := [String] component.Key();
    
    if( issupported )
    {
      info( ">>>> SUB:", name, componentkey, display );
      
      jsonbuilder.Add(
              JSON::Array()
                      .Add( JSON::Object()
                          .Add( 'name', name )
                          .Add( 'display', display )
                          .Add( 'componentkey', componentkey ) ) );
    }
    
    traverse( component, SubComponents, child )
    {
      GlobalStateTestGenerator.ParseFormSubComponents( &jsonbuilder, child );
    }
    
    
    
    
    
    /*
    info( padstr + '|' + name + '|' + title + '|' + formkey );
    
    GlobalStateTestGenerator.TG_UpdateUIForm( &jsonbuilder, name, title, formkey );
  *]
}
