ReplayBlocMixin<Event extends ReplayEvent, State> mixin
A mixin which enables undo
and redo
operations
for Bloc classes.
- Superclass Constraints
- Bloc<
Event, State>
- Bloc<
- Mixin Applications
Properties
- canRedo → bool
-
Checks wether the undo/redo stack is at the current change.
no setter
- canUndo → bool
-
Checks whether the undo/redo stack is empty.
no setter
- hashCode → int
-
The hash code for this object.
no setterinherited
- isClosed → bool
-
Whether the bloc is closed.
no setterinherited
- limit ← int
-
Sets the internal
undo
/redo
size limit. By default there is no limit.no getter - runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- state → State
-
The current state.
no setterinherited
-
stream
→ Stream<
State> -
The current stream of states.
no setterinherited
Methods
-
add(
Event event) → void -
Notifies the Bloc of a new
event
which triggers all corresponding EventHandler instances.inherited -
addError(
Object error, [StackTrace? stackTrace]) → void -
Reports an
error
which triggers onError with an optional StackTrace.inherited -
clearHistory(
) → void - Clear undo/redo history.
-
close(
) → Future< void> -
Closes the
event
andstate
Streams
. This method should be called when a Bloc is no longer needed. Once close is called,events
that are added will not be processed. In addition, if close is called whileevents
are still being processed, the Bloc will finish processing the pendingevents
.inherited -
emit(
State state) → void -
emit is only for internal use and should never be called directly
outside of tests. The Emitter instance provided to each EventHandler
should be used instead.
override
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
on<
E extends Event> (EventHandler< E, State> handler, {EventTransformer<E> ? transformer}) → void -
Register event handler for an event of type
E
. There should only ever be one event handler per event typeE
.inherited -
onChange(
Change< State> change) → void -
Called whenever a
change
occurs with the givenchange
. Achange
occurs when a newstate
is emitted. onChange is called before thestate
of thecubit
is updated. onChange is a great spot to add logging/analytics for a specificcubit
.inherited -
onError(
Object error, StackTrace stackTrace) → void -
Called whenever an
error
occurs and notifies BlocObserver.onError.inherited -
onEvent(
covariant ReplayEvent event) → void -
Called whenever an
event
is added to the Bloc. A great spot to add logging/analytics at the individual Bloc level.override -
onTransition(
covariant Transition< ReplayEvent, State> transition) → void -
Called whenever a
transition
occurs with the giventransition
. Atransition
occurs when a newevent
is added and a new state isemitted
from a corresponding EventHandler.override -
redo(
) → void - Redo the previous change.
-
shouldReplay(
State state) → bool - Checks whether the given state should be replayed from the undo/redo stack.
-
toString(
) → String -
A string representation of this object.
inherited
-
undo(
) → void - Undo the last change.
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited