| Quintiq file version 2.0 | 
| #parent: #root | 
| Method GetPanel () as LibOpt_Panel id:Method_LibOpt_FormBase_GetPanel | 
| { | 
|   #keys: '[139164.0.361144649]' | 
|   Body: | 
|   [* | 
|     // Returns the instance of the LibOpt_Panel control | 
|     // that was added to the consuming application. | 
|     panelOutput := this.DataHolderPanel().Data(); | 
|      | 
|     if ( isnull( panelOutput ) ) | 
|     { | 
|       set := selectset( this.Application(), SubComponents, sc, true ); | 
|       safetyCounter := 0; | 
|       panel := null( GUIComponent ); | 
|       while ( set.Size() > 0 and safetyCounter < 20 and isnull( panel ) ) | 
|       { | 
|         panel := select( set, Elements, p, p.istype( LibOpt_Panel ) ); | 
|         if ( isnull( panel ) ) | 
|         { | 
|           set := selectset( set, Elements.SubComponents, sc, true ); | 
|         } | 
|         safetyCounter++; | 
|       } | 
|        | 
|       // Warn the consumer of this library that the panel has not been | 
|       // added to the main form. | 
|       if ( isnull( panel ) ) | 
|       { | 
|         info( "Components: Could not find an instance of the LibOpt_Panel component. Please add this component to your application's main toolbar. " ); | 
|       } | 
|       else | 
|       { | 
|         panelOutput := panel.astype( LibOpt_Panel ) | 
|         this.DataHolderPanel().Data( panelOutput ); | 
|       } | 
|     } | 
|     return panelOutput; | 
|   *] | 
| } |