Struct PenAxisEvent
Represents an event that occurs when a pen axis changes
public struct PenAxisEvent : ICommonEvent<PenAxisEvent>, ICommonEvent, ISpanFormattable, IFormattable
- Implements
- Inherited Members
Remarks
You might get some of these events even if the pen isn't touching the tablet.
Associated EventTypes:
Properties
Axis
Gets or sets the pen axis that changed
public PenAxis Axis { readonly get; set; }
Property Value
- PenAxis
The pen axis that changed
Remarks
To get the value associated with the changed axis, use the Value property.
See the PenAxis enumeration for more information about the possible axes and their meanings.
PenId
Gets or sets the pen instance ID for the Pen associated with the event
public uint PenId { readonly get; set; }
Property Value
- uint
The pen instance ID for the Pen associated with the event
PenState
Gets or sets the state of the pen input at the time of the event
public PenInputFlags PenState { readonly get; set; }
Property Value
- PenInputFlags
The state of the pen input at the time of the event
Timestamp
Gets or sets the timestamp of the current event
public ulong Timestamp { readonly get; set; }
Property Value
- ulong
The timestamp of the current event, in nanoseconds in nanoseconds since the initialization of SDL
Remarks
The value of this property usually describes the time passed, in nanoseconds since the initialization of SDL. It can be properly populated by using NanosecondTicks.
Type
Gets or sets the type of the current event
public EventType Type { readonly get; set; }
Property Value
Remarks
When setting this property, the value must be PenAxisChanged. Otherwise, it will lead the property to throw an ArgumentException!
Exceptions
- ArgumentException
When setting this property, the value was not PenAxisChanged
Value
Gets or sets the value for the axis specified through Axis
public float Value { readonly get; set; }
Property Value
Remarks
See the PenAxis enumeration for more information about the possible axes and their meanings.
WindowId
Gets or sets the window Id of the Window with pen focus, if any
public uint WindowId { readonly get; set; }
Property Value
- uint
The window Id of the Window with pen focus, if any, or
0
X
Gets or sets the X coordinate of the pen touch
public float X { readonly get; set; }
Property Value
Y
Gets or sets the Y coordinate of the pen touch
public float Y { readonly get; set; }
Property Value
Methods
ToString()
Returns the fully qualified type name of this instance.
public override readonly string ToString()
Returns
- string
The fully qualified type name.
ToString(IFormatProvider?)
Formats the value of the current instance using the specified format.
public readonly string ToString(IFormatProvider? formatProvider)
Parameters
formatProviderIFormatProviderThe provider to use to format the value.
-or-
A null reference (
Nothingin Visual Basic) to obtain the numeric format information from the current locale setting of the operating system.
Returns
- string
The value of the current instance in the specified format.
ToString(string?)
Formats the value of the current instance using the specified format.
public readonly string ToString(string? format)
Parameters
formatstringThe format to use.
-or-
A null reference (
Nothingin Visual Basic) to use the default format defined for the type of the IFormattable implementation.
Returns
- string
The value of the current instance in the specified format.
ToString(string?, IFormatProvider?)
Formats the value of the current instance using the specified format.
public readonly string ToString(string? format, IFormatProvider? formatProvider)
Parameters
formatstringThe format to use.
-or-
A null reference (
Nothingin Visual Basic) to use the default format defined for the type of the IFormattable implementation.formatProviderIFormatProviderThe provider to use to format the value.
-or-
A null reference (
Nothingin Visual Basic) to obtain the numeric format information from the current locale setting of the operating system.
Returns
- string
The value of the current instance in the specified format.
TryFormat(Span<char>, out int, ReadOnlySpan<char>, IFormatProvider?)
Tries to format the value of the current instance into the provided span of characters.
public readonly bool TryFormat(Span<char> destination, out int charsWritten, ReadOnlySpan<char> format = default, IFormatProvider? provider = null)
Parameters
destinationSpan<char>The span in which to write this instance's value formatted as a span of characters.
charsWrittenintWhen this method returns, contains the number of characters that were written in
destination.formatReadOnlySpan<char>A span containing the characters that represent a standard or custom format string that defines the acceptable format for
destination.providerIFormatProviderAn optional object that supplies culture-specific formatting information for
destination.
Returns
Operators
explicit operator PenAxisEvent(in Event)
Converts a general Event to an event of type PenAxisEvent
public static explicit operator PenAxisEvent(in Event @event)
Parameters
eventEventThe general Event to convert to an event of type PenAxisEvent
Returns
Remarks
The Type of the given event must be PenAxisChanged.
Otherwise, it will lead the method to throw an ArgumentException!
Exceptions
- ArgumentException
The Type of the given
eventwas not PenAxisChanged
implicit operator Event(in PenAxisEvent)
Converts an event of type PenAxisEvent to a general Event
public static implicit operator Event(in PenAxisEvent @event)
Parameters
eventPenAxisEventThe event of type PenAxisEvent to convert to a general Event
Returns
Remarks
This conversion usually requires the event to be copied into a new general Event structure. Note: This can impact performance!