MaterialStateMouseCursor class

Defines a MouseCursor whose value depends on a set of MaterialStates which represent the interactive state of a component.

This kind of MouseCursor is useful when the set of interactive actions a widget supports varies with its state. For example, a mouse pointer hovering over a disabled ListTile should not display, since a disabled list tile doesn't respond to mouse clicks. ListTile's default mouse cursor is a MaterialStateMouseCursor.clickable, which resolves to SystemMouseCursors.basic when the button is disabled.

To use a MaterialStateMouseCursor, you should create a subclass of MaterialStateMouseCursor and implement the abstract resolve method.

This example defines a mouse cursor that resolves to SystemMouseCursors.forbidden when its widget is disabled.
To create a local project with this code sample, run:
flutter create --sample=material.MaterialStateMouseCursor.1 mysample

This class should only be used for parameters which are documented to take MaterialStateMouseCursor, otherwise only the default state will be used.

See also:

Implemented types


Creates a MaterialStateMouseCursor.


debugDescription String
A very short description of the mouse cursor. [...]
read-only, inherited
hashCode int
The hash code for this object. [...]
read-only, inherited
runtimeType Type
A representation of the runtime type of the object.
read-only, inherited


createSession(int device) MouseCursorSession
Associate a pointing device to this cursor. [...]
@protected, override
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Add additional properties associated with the node. [...]
@mustCallSuper, @protected, inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed. [...]
resolve(Set<MaterialState> states) MouseCursor
Returns a MouseCursor that's to be used when a Material component is in the specified state. [...]
toDiagnosticsNode({String name, DiagnosticsTreeStyle style}) DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by DiagnosticsNode.toStringDeep. [...]
toString({DiagnosticLevel minLevel:}) String
Returns a string representation of this object.
toStringShort() String
A brief description of this object, usually just the runtimeType and the hashCode. [...]


operator ==(Object other) bool
The equality operator. [...]


clickable → const MaterialStateMouseCursor
A mouse cursor for clickable material widgets, which resolves differently when the widget is disabled. [...]
_EnabledAndDisabledMouseCursor(enabledCursor:, disabledCursor: SystemMouseCursors.basic, name: 'clickable')
textable → const MaterialStateMouseCursor
A mouse cursor for material widgets related to text, which resolves differently when the widget is disabled. [...]
_EnabledAndDisabledMouseCursor(enabledCursor: SystemMouseCursors.text, disabledCursor: SystemMouseCursors.basic, name: 'textable')