DrivenMouseCursor class abstract
Defines a MouseCursor whose value depends on a set of WidgetEvents 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 SystemMouseCursors.click, since a disabled list tile doesn't respond to mouse clicks. ListTile's default mouse cursor is a DrivenMouseCursor.clickable, which resolves to SystemMouseCursors.basic when the button is disabled.
To use a DrivenMouseCursor, you should create a subclass of
DrivenMouseCursor and implement the abstract resolve
method.
{@tool dartpad} This example defines a mouse cursor that resolves to SystemMouseCursors.forbidden when its widget is disabled.
{@end-tool}
This class should only be used for parameters which are documented to take DrivenMouseCursor, otherwise only the default state will be used.
See also:
- MouseCursor for introduction on the mouse cursor system.
- SystemMouseCursors, which defines cursors that are supported by native platforms.
- Inheritance
-
- Object
- MouseCursor
- DrivenMouseCursor
- Implemented types
Constructors
- DrivenMouseCursor()
-
Abstract const constructor. This constructor enables subclasses to provide
const constructors so that they can be used in const expressions.
const
Properties
- debugDescription → String
-
A very short description of the mouse cursor.
no setterinherited
- hashCode → int
-
The hash code for this object.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
createSession(
int device) → MouseCursorSession -
Associate a pointing device to this cursor.
override
-
debugFillProperties(
DiagnosticPropertiesBuilder properties) → void -
Add additional properties associated with the node.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
resolve(
Set< WidgetEvent> states) → MouseCursor -
Returns a MouseCursor that's to be used when a Material component is in
the specified state.
override
-
toDiagnosticsNode(
{String? name, DiagnosticsTreeStyle? style}) → DiagnosticsNode -
Returns a debug representation of the object that is used by debugging
tools and by DiagnosticsNode.toStringDeep.
inherited
-
toString(
{DiagnosticLevel minLevel = DiagnosticLevel.info}) → String -
A string representation of this object.
inherited
-
toStringShort(
) → String -
A brief description of this object, usually just the runtimeType and the
hashCode.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Constants
- clickable → const DrivenMouseCursor
- A mouse cursor for clickable material widgets, which resolves differently when the widget is disabled.
- textable → const DrivenMouseCursor
- A mouse cursor for material widgets related to text, which resolves differently when the widget is disabled.