public void Dispose() { while (_balloonTipActions.Count > 0) { BalloonTipAction action = _balloonTipActions.First.Value; _balloonTipActions.RemoveFirst(); action.Dispose(); } }
private void OnBalloonTipClicked(object sender, EventArgs e) { while (_balloonTipActions.Count > 0) { BalloonTipAction action = _balloonTipActions.First.Value; _balloonTipActions.RemoveFirst(); action.Execute(sender, e); action.Dispose(); } }
private void OnBalloonTipActionTimeout(object sender, EventArgs e) { BalloonTipAction action = (BalloonTipAction)sender; try { Logging.Debug("balloon tip action timeout"); if (action.Tag is LinkedListNode <BalloonTipAction> ) { LinkedListNode <BalloonTipAction> node = action.Tag as LinkedListNode <BalloonTipAction>; _balloonTipActions.Remove(node); } } catch (Exception ex) { Logging.LogUsefulException(ex); } finally { action.Dispose(); } }