DiagramCubit class

Inheritance

Constructors

DiagramCubit({required CalculateDiagramUseCase calculateDiagramUseCase, required ValidateDiagramUseCase validateDiagramUseCase, required AddChildNodeUseCase addChildNodeUseCase, required UpdateNodeUseCase updateNodeUseCase})

Properties

hashCode int
The hash code for this object.
no setterinherited
isClosed bool
Whether the bloc is closed.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
state DiagramState
The current state.
no setterinherited
stream Stream<DiagramState>
The current stream of states.
no setterinherited

Methods

addChild(String parentId, ElectricalNode childNode, Offset childPosition) Future<void>
Add a child node to a specific parent
addError(Object error, [StackTrace? stackTrace]) → void
Reports an error which triggers onError with an optional StackTrace.
inherited
close() Future<void>
Closes the instance. This method should be called when the instance is no longer needed. Once close is called, the instance can no longer be used.
inherited
emit(DiagramState state) → void
Updates the state to the provided state. emit does nothing if the state being emitted is equal to the current state.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
onChange(Change<DiagramState> change) → void
Called whenever a change occurs with the given change. A change occurs when a new state is emitted. onChange is called before the state of the cubit is updated. onChange is a great spot to add logging/analytics for a specific cubit.
inherited
onError(Object error, StackTrace stackTrace) → void
Called whenever an error occurs and notifies BlocObserver.onError.
inherited
redo() → void
removeNode(String nodeId) → void
Removes a node by ID and validates diagram
setRoot(ElectricalNode root) → void
Sets the Root Node of the diagram (e.g. initial load or new project)
toString() String
A string representation of this object.
inherited
undo() → void
updateNodePosition(String id, Offset newPos, {bool saveState = true}) → void
updateNodeProperties(String nodeId, ElectricalNode updateFn(ElectricalNode)) Future<void>
Updates a node's properties ensuring immutability
validateDiagram({RegulatoryStandard? standard}) Future<void>
Triggers calculation and validation

Operators

operator ==(Object other) bool
The equality operator.
inherited