One immutable geometry/resource decision shared by document and selection drawing. More...
#include <memory>#include <optional>#include <vector>#include "donner/editor/CapturedPresentation.h"#include "donner/editor/GlTextureCache.h"#include "donner/editor/SelectTool.h"#include "donner/editor/ViewportState.h"Classes | |
| struct | donner::editor::PresentationDecorations |
| Transient UI adornments, distinct from selection geometry captured with the document pixels. More... | |
| struct | donner::editor::FramePresentationBuildResult |
| A sealed frame, when available, and the exact work needed to complete its presentation. More... | |
| struct | donner::editor::FramePresentationInput |
| Input intent consumed once while sealing a frame; draw callbacks cannot consult it later. More... | |
| class | donner::editor::FramePresentation |
| Immutable, validated pixel/geometry binding used by every draw pass for a presented frame. More... | |
Namespaces | |
| namespace | donner |
| Top-level Donner namespace, which is split into different sub-namespaces such as donner::svg and donner::css. | |
Enumerations | |
| enum class | donner::editor::FramePresentationFailure { None , MissingResources , InvalidInput , MissingOverview , IncompatiblePose , InsufficientCoverage , MissingSelectionGeometry , UploadRefused , MissingTextEditingGeometry } |
| The missing proof that prevented an otherwise coherent frame from being installed. | |
Functions | |
| Transform2d | donner::editor::PresentedFramebufferFromDocumentTransform (const ViewportState &viewport, const Vector2d &framebufferFromLogicalScale) |
| Resolve one camera mapping shared by pixel and chrome placement. | |
| std::optional< Box2d > | donner::editor::PresentedImageClipRect (const Box2d &paneRect, const Box2d &imageRect) |
| Intersect the artboard with the pane, refusing invalid or empty rectangles. | |
One immutable geometry/resource decision shared by document and selection drawing.
| Transform2d donner::editor::PresentedFramebufferFromDocumentTransform | ( | const ViewportState & | viewport, |
| const Vector2d & | framebufferFromLogicalScale ) |
Resolve one camera mapping shared by pixel and chrome placement.
| viewport | Camera and logical pane geometry. |
| framebufferFromLogicalScale | Physical pixels per logical pixel, independently per axis. |
|
nodiscard |
Intersect the artboard with the pane, refusing invalid or empty rectangles.
| paneRect | Logical pane clip. |
| imageRect | Artboard extent in the same coordinate space. |