Donner SVG 0.8.0
0.8.0 ยท ebf353960.8.0 main
SVG editor and embeddable C⁠+⁠+⁠20 engine.
Loading...
Searching...
No Matches
donner::editor::repro::ReproEvent Struct Reference

One discrete event that fired within a frame. Frame-state (mouse position, button mask) lives on the owning frame record; this captures only events that can't be reconstructed from continuous state (key presses, character input, wheel deltas, resizes). More...

#include "donner/editor/repro/ReproFile.h"

Public Types

enum class  Kind {
  MouseDown ,
  MouseUp ,
  KeyDown ,
  KeyUp ,
  Char ,
  Wheel ,
  Resize ,
  Focus
}
 Discrete input event types supported by the replay format.

Public Attributes

Kind kind = Kind::MouseDown
 Type of this discrete event.
int mouseButton = 0
 Mouse button index for MouseDown/MouseUp: 0 left, 1 right, 2 middle.
int key = 0
 ImGui key enum value for KeyDown/KeyUp, stored as an int without including imgui.h.
int modifiers = 0
 Ctrl/Shift/Alt/Super flags packed into bits 0-3, respectively.
std::uint32_t codepoint = 0
 UTF-32 code point for Char events.
float wheelDeltaX = 0.0f
 Horizontal wheel delta for Wheel events.
float wheelDeltaY = 0.0f
 Vertical wheel delta for Wheel events.
int width = 0
 Logical window width for Resize events, before DPI scaling.
int height = 0
 Logical window height for Resize events, before DPI scaling.
bool focusOn = true
 Focus on/off for Focus events.
std::optional< ReproHit > hit
 Hit-test checkpoint for MouseDown events.

Detailed Description

One discrete event that fired within a frame. Frame-state (mouse position, button mask) lives on the owning frame record; this captures only events that can't be reconstructed from continuous state (key presses, character input, wheel deltas, resizes).


The documentation for this struct was generated from the following file: