Donner SVG 0.8.0-pre
SVG editor and embeddable C⁠+⁠+⁠20 engine.
Loading...
Searching...
No Matches
donner::editor::FramebufferUnderlayPlan Struct Reference

Everything the framebuffer underlay needs to draw one frame of document pixels. Captured by value because the underlay callback runs later in the frame, after the shell's borrowed tile views would have gone stale. More...

#include "donner/editor/DocumentPresenter.h"

Public Attributes

ViewportState viewport
 Viewport transform the tiles are placed with.
Box2d documentClipRect
 Document rect clipped to the render pane, in screen pixels.
std::vector< GlTextureCache::TileViewoverviewTiles
 Low-resolution whole-document tiles drawn beneath the active tiles.
std::vector< GlTextureCache::TileViewtiles
 Viewport-resolution tiles for this frame.
std::optional< SelectTool::ActiveDragPreviewactiveDragPreview
 Live drag preview whose transform the presented tiles are advanced by.
std::optional< SelectTool::ActiveDragPreviewdisplayedDragPreview
 Drag preview the currently presented tiles were rasterized against.
Entity suppressedLayerEntity = entt::null
 Layer whose tile must not be drawn (pen live preview, hidden layer).
bool suppressDragTargetTiles = false
 Whether drag-target tiles are suppressed for this frame.

Detailed Description

Everything the framebuffer underlay needs to draw one frame of document pixels. Captured by value because the underlay callback runs later in the frame, after the shell's borrowed tile views would have gone stale.

Member Data Documentation

◆ activeDragPreview

std::optional<SelectTool::ActiveDragPreview> donner::editor::FramebufferUnderlayPlan::activeDragPreview

Live drag preview whose transform the presented tiles are advanced by.

◆ displayedDragPreview

std::optional<SelectTool::ActiveDragPreview> donner::editor::FramebufferUnderlayPlan::displayedDragPreview

Drag preview the currently presented tiles were rasterized against.

◆ documentClipRect

Box2d donner::editor::FramebufferUnderlayPlan::documentClipRect

Document rect clipped to the render pane, in screen pixels.

◆ overviewTiles

std::vector<GlTextureCache::TileView> donner::editor::FramebufferUnderlayPlan::overviewTiles

Low-resolution whole-document tiles drawn beneath the active tiles.

◆ suppressDragTargetTiles

bool donner::editor::FramebufferUnderlayPlan::suppressDragTargetTiles = false

Whether drag-target tiles are suppressed for this frame.

◆ suppressedLayerEntity

Entity donner::editor::FramebufferUnderlayPlan::suppressedLayerEntity = entt::null

Layer whose tile must not be drawn (pen live preview, hidden layer).

◆ tiles

std::vector<GlTextureCache::TileView> donner::editor::FramebufferUnderlayPlan::tiles

Viewport-resolution tiles for this frame.

◆ viewport

ViewportState donner::editor::FramebufferUnderlayPlan::viewport

Viewport transform the tiles are placed with.


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