public AdHelper(string applicationId, string adUnitId) { _applicationId = applicationId; _adUnitId = adUnitId; _ad = new InterstitialAd(); _ad.AdReady += (s, e) => AfterReady?.Invoke(); _ad.Completed += (s, e) => { if (IsReady) { AfterComplete?.Invoke(); } }; _ad.Cancelled += (s, e) => AfterCanceled?.Invoke(); _ad.ErrorOccurred += (s, e) => AfterError?.Invoke(e); }
public override void Visit(CommandVisitor visitor) { base.Visit(visitor); if (AfterComplete != null) { AfterComplete.Visit(visitor); } if (BeforeCreate != null) { BeforeCreate.Visit(visitor); } if (InputControls != null) { foreach (var item in InputControls) { item.Visit(visitor); } } }
public override CommandResult Do(IExecutionContext context) { _context = context; FlowLayoutPanel mainPanel = null; context.ControlContainer.Invoke(new Action(() => { context.ControlContainer.SuspendLayout(); context.ControlContainer.Controls.Clear(); context.ControlContainer.Text = FormCaption; mainPanel = new FlowLayoutPanel { Dock = DockStyle.Fill }; context.ControlContainer.Controls.Add(mainPanel); } )); if (BeforeCreate != null) { BeforeCreate.Do(context); } CreateUserInputControls(mainPanel); CreateCommonControls(); context.ControlContainer.Invoke(new Action <bool>(context.ControlContainer.ResumeLayout), true); _nextWaitHandle.WaitOne(); if (AfterComplete != null && _commandResult == CommandResult.Next) { AfterComplete.Do(context); } context.ControlContainer.Invoke(new Action(context.ControlContainer.Controls.Clear), null); return(_commandResult); }