Commit 001ad975 authored by Him188's avatar Him188

Make `CancellableEvent` an interface, introduce `AbstractCancellableEvent`

parent 7891ffc1
......@@ -34,18 +34,33 @@ interface Event
/**
* 可被取消的事件
*/
abstract class CancellableEvent : Event {
interface CancellableEvent {
/**
* 事件是否已取消.
*/
val cancelled: Boolean get() = _cancelled
val isCancelled: Boolean
/**
* 取消这个事件.
*/
fun cancel()
}
/**
* 可被取消的事件的实现
*/
abstract class AbstractCancellableEvent : Event, CancellableEvent {
/**
* 事件是否已取消.
*/
override val isCancelled: Boolean get() = _cancelled
private var _cancelled: Boolean = false
/**
* 取消事件.
*/
fun cancel() {
override fun cancel() {
_cancelled = true
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment