Gondwana Game Engine
Gondwana is a cross-platform 2.5D game and rendering engine written in C#/.NET 8. It provides fine-grained control over rendering, timing, and scene composition, with built-in support for parallax, z-ordering, pixel overhang, collision detection, and particle effects. Gondwana targets desktop, mobile, and web platforms using SkiaSharp for graphics and NAudio for sound.
Loading...
Searching...
No Matches
Gondwana.Input.Mouse Namespace Reference

Classes

interface  IMouseAdapter
 Defines an adapter interface for accessing mouse device state, including cursor position, button presses, scroll wheel input, and keyboard modifier states. Implementations of this interface provide abstraction over various mouse input APIs to provide unified access to mouse hardware across different platforms. More...
struct  MouseButtonState
 Represents the current and transitional state of a mouse button, tracking whether the button is currently held down and whether press or release events occurred in the current polling interval. This structure is typically used to detect button state changes and differentiate between continuous button holds and momentary press/release actions. More...
class  MouseEventArgs
 Provides comprehensive data for mouse events, including cursor position (current and previous), button states with transition information, scroll wheel delta, and keyboard modifier states. This event args class is used with mouse input polling to deliver complete mouse state information to event handlers, enabling sophisticated mouse interaction handling including drag operations, modified clicks, and scroll detection. More...
class  MouseEventConfiguration
 Represents the configuration for mouse event monitoring, including movement tracking settings and timing controls for event throttling. This configuration is used to control how frequently mouse events are raised, whether mouse movement should be tracked, and whether event processing is currently paused. More...
class  MouseEventPoller
 Provides centralized polling and event management for mouse input, including button presses, cursor movement, and scroll wheel activity. This singleton class monitors mouse state and raises events with comprehensive information including button states, position data, scroll deltas, and keyboard modifier states, with support for event throttling and pause functionality. More...

Enumerations

enum  MouseButton { None = 0 , Left = 1 , Right = 2 , Middle = 4 }
 Represents mouse button identifiers that can be used individually or combined to represent multiple simultaneous button presses. This is a flags enumeration, allowing multiple buttons to be combined using bitwise operations to track complex button combinations (e.g., Left | Right for simultaneous left and right button presses). More...

Enumeration Type Documentation

◆ MouseButton

Represents mouse button identifiers that can be used individually or combined to represent multiple simultaneous button presses. This is a flags enumeration, allowing multiple buttons to be combined using bitwise operations to track complex button combinations (e.g., Left | Right for simultaneous left and right button presses).

Enumerator
None 

No mouse button is pressed. This represents the default mouse state when the cursor is not actively clicking or when all buttons have been released.

Left 

The primary (left) mouse button. This is typically used for standard clicking, selecting, and dragging operations. On most mice, this is the button under the index finger. Can be combined with Right and/or Middle for multi-button input.

Right 

The secondary (right) mouse button. This is typically used for context menus and alternate actions. On most mice, this is the button under the middle or ring finger. Can be combined with Left and/or Middle for multi-button input.

Middle 

The middle mouse button, usually implemented as a clickable scroll wheel. This is often used for special actions like opening links in new tabs or panning in applications. Can be combined with Left and/or Right for multi-button input.