Donner 0.5.1
Embeddable browser-grade SVG2 engine
Loading...
Searching...
No Matches
donner::editor::ViewportInteractionController Class Reference

Owns viewport/input state for the render pane: zoom/pan, pending click dispatch, and frame timing history. More...

#include "donner/editor/ViewportInteractionController.h"

Public Member Functions

ViewportStateviewport ()
const ViewportStateviewport () const
FrameHistoryframeHistory ()
const FrameHistoryframeHistory () const
void noteFrameDelta (float deltaMs)
void updatePaneLayout (const Vector2d &paneOrigin, const Vector2d &paneSize, const std::optional< Box2d > &documentViewBox)
void updateDevicePixelRatio (double devicePixelRatio)
void resetToActualSize ()
void applyZoom (double factor, const Vector2d &focalScreen)
void updatePanState (bool paneHovered, bool spaceHeld, bool middleDown, bool leftDown, const ImVec2 &mousePosition)
bool panning () const
void consumeScrollEvents (std::vector< RenderPaneScrollEvent > &events, const Box2d &paneRect, bool modalCapturingInput, double wheelZoomStep, double panPixelsPerScrollUnit)
void bufferPendingClick (const Vector2d &documentPoint, MouseModifiers modifiers)
const std::optional< PendingClick > & pendingClick () const
void clearPendingClick ()

Detailed Description

Owns viewport/input state for the render pane: zoom/pan, pending click dispatch, and frame timing history.


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