Quintiq file version 2.0
#parent: #root
Method CreateEvent (
  internal[GUIComponent] parent_i,
  LibCal_Calendar owner_i,
  DateTime contextMenuTime_i
) as LibCal_Event id:Method_LibCal_GlobalState_CreateEvent_863
{
  #keys: '[146730.0.1353182269]'
  Body:
  [*
    // Create a new Event.
    // No EventCategory is provided, this will result in the general category being used.
    event := null( LibCal_Event );
    
    // Use the time if possible.
    if( contextMenuTime_i.IsFinite() )
    {
      start := LibCal_GlobalState.DetermineStartOfEvent( contextMenuTime_i, owner_i.GetTimeZone() );
      end   := LibCal_GlobalState.DetermineEndOfEvent( start );
      event := LibCal_GlobalState.CreateEvent( parent_i, owner_i, start, end );
    }
    else
    {
      event := LibCal_GlobalState.CreateEvent( this, owner_i );
    }
    
    return event;
  *]
}
