Mercurial > pub > ImplabNet
comparison Implab.Fx/ControlBoundPromise.cs @ 138:f75cfa58e3d4 v2
added ICancellable.Cancel(Exception) to allow specify the reason of cancellation
| author | cin |
|---|---|
| date | Tue, 17 Feb 2015 18:16:26 +0300 |
| parents | 2573b562e328 |
| children | 706fccb85524 |
comparison
equal
deleted
inserted
replaced
| 137:238e15580926 | 138:f75cfa58e3d4 |
|---|---|
| 17 m_target.BeginInvoke(new Action<IDeferred<T>>(base.SignalSuccess), handler); | 17 m_target.BeginInvoke(new Action<IDeferred<T>>(base.SignalSuccess), handler); |
| 18 else | 18 else |
| 19 base.SignalSuccess(handler); | 19 base.SignalSuccess(handler); |
| 20 } | 20 } |
| 21 | 21 |
| 22 protected override void SignalCancelled(IDeferred<T> handler) { | 22 protected override void SignalCancelled(IDeferred<T> handler, Exception reason) { |
| 23 if (m_target.InvokeRequired) | 23 if (m_target.InvokeRequired) |
| 24 m_target.BeginInvoke(new Action<IDeferred<T>>(base.SignalCancelled), handler); | 24 m_target.BeginInvoke(new Action<IDeferred<T>,Exception>(base.SignalCancelled), handler, reason); |
| 25 else | 25 else |
| 26 base.SignalCancelled(handler); | 26 base.SignalCancelled(handler, reason); |
| 27 } | 27 } |
| 28 | 28 |
| 29 protected override void SignalError(IDeferred<T> handler, Exception error) { | 29 protected override void SignalError(IDeferred<T> handler, Exception error) { |
| 30 if (m_target.InvokeRequired) | 30 if (m_target.InvokeRequired) |
| 31 m_target.BeginInvoke(new Action<IDeferred<T>,Exception>(base.SignalError), handler, error); | 31 m_target.BeginInvoke(new Action<IDeferred<T>,Exception>(base.SignalError), handler, error); |
