toString method
A string representation of this object.
Some classes have a default textual representation,
often paired with a static parse function (like int.parse).
These classes will provide the textual representation as
their string representation.
Other classes have no meaningful textual representation
that a program will care about.
Such classes will typically override toString to provide
useful information when inspecting the object,
mainly for debugging or logging.
Implementation
@override
String toString() {
var s = '';
if (KeyMod.contains(mod, KeyMod.ctrl)) s += 'ctrl+';
if (KeyMod.contains(mod, KeyMod.alt)) s += 'alt+';
if (KeyMod.contains(mod, KeyMod.shift)) s += 'shift+';
final str = MouseButton.toName(button);
if (str.isEmpty) {
s += 'unknown';
} else if (str != 'none') {
s += str;
}
if (s.isNotEmpty && !s.endsWith('+')) {
s += ' ';
}
s += '($x,$y)';
return s;
}