Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
input_events.hpp File Reference

Input event types with modifier keys and pointer IDs. More...

#include <pulp/view/geometry.hpp>
#include <cstdint>
#include <string>

Go to the source code of this file.

Classes

struct  pulp::view::MouseEvent
 Rich mouse/pointer event with position, modifiers, button state, pointer ID, and stylus properties. More...
struct  pulp::view::GestureEvent
 High-level gesture event for pinch (scale) and rotate. More...
struct  pulp::view::KeyEvent
 Rich key event with key code, modifiers, and repeat state. More...
struct  pulp::view::TextInputEvent
 Text input from IME or keyboard composition (separate from KeyEvent). More...

Namespaces

namespace  pulp
namespace  pulp::view
 Hover-cursor tracking for platform window hosts.

Enumerations

enum  pulp::view::Modifier : uint16_t {
  pulp::view::kModNone = 0 , pulp::view::kModShift = 1 << 0 , pulp::view::kModCtrl = 1 << 1 , pulp::view::kModAlt = 1 << 2 ,
  pulp::view::kModMeta = 1 << 3 , pulp::view::kModCmd = 1 << 4
}
enum class  pulp::view::KeyCode : int {
  pulp::view::unknown = 0 , pulp::view::a = 'a' , pulp::view::b = 'b' , pulp::view::c = 'c' ,
  pulp::view::d = 'd' , pulp::view::e = 'e' , pulp::view::f = 'f' , pulp::view::g = 'g' ,
  pulp::view::h = 'h' , pulp::view::i = 'i' , pulp::view::j = 'j' , pulp::view::k = 'k' ,
  pulp::view::l = 'l' , pulp::view::m = 'm' , pulp::view::n = 'n' , pulp::view::o = 'o' ,
  pulp::view::p = 'p' , pulp::view::q = 'q' , pulp::view::r = 'r' , pulp::view::s = 's' ,
  pulp::view::t = 't' , pulp::view::u = 'u' , pulp::view::v = 'v' , pulp::view::w = 'w' ,
  pulp::view::x = 'x' , pulp::view::y = 'y' , pulp::view::z = 'z' , pulp::view::num0 = '0' ,
  pulp::view::num1 = '1' , pulp::view::num2 = '2' , pulp::view::num3 = '3' , pulp::view::num4 = '4' ,
  pulp::view::num5 = '5' , pulp::view::num6 = '6' , pulp::view::num7 = '7' , pulp::view::num8 = '8' ,
  pulp::view::num9 = '9' , pulp::view::semicolon = ';' , pulp::view::apostrophe = '\'' , pulp::view::left = 256 ,
  pulp::view::right , pulp::view::up , pulp::view::down , pulp::view::home ,
  pulp::view::end_ , pulp::view::page_up , pulp::view::page_down , pulp::view::backspace = 270 ,
  pulp::view::delete_ , pulp::view::tab , pulp::view::enter , pulp::view::escape ,
  pulp::view::space = ' ' , pulp::view::f1 = 290 , pulp::view::f2 , pulp::view::f3 ,
  pulp::view::f4 , pulp::view::f5 , pulp::view::f6 , pulp::view::f7 ,
  pulp::view::f8 , pulp::view::f9 , pulp::view::f10 , pulp::view::f11 ,
  pulp::view::f12
}
enum class  pulp::view::MouseButton : uint8_t { pulp::view::none = 0 , pulp::view::left = 1 , pulp::view::right = 2 , pulp::view::middle = 3 }
 Mouse button identifiers. More...
enum class  pulp::view::PointerType : uint8_t { pulp::view::mouse = 0 , pulp::view::touch = 1 , pulp::view::pen = 2 }
 Pointer device type (W3C PointerEvent.pointerType). More...
enum class  pulp::view::MousePhase : uint8_t {
  pulp::view::automatic = 0 , pulp::view::press , pulp::view::drag , pulp::view::release ,
  pulp::view::hover
}
 Explicit press/drag/release phase for a pointer gesture. More...
enum class  pulp::view::GesturePhase : uint8_t { pulp::view::began = 0 , pulp::view::changed = 1 , pulp::view::ended = 2 , pulp::view::cancelled = 3 }

Functions

bool pulp::view::is_main_modifier (uint16_t mods)
 True if the primary action modifier is held (Cmd on macOS, Ctrl on Windows/Linux).

Detailed Description

Input event types with modifier keys and pointer IDs.

Replaces the bare on_mouse_down(Point) API with rich event objects.