#include <juce_RenderingHelpers.h>


Public Member Functions | |
| StackBasedLowLevelGraphicsContext (uint64_t frameIn) | |
| void | addTransform (const AffineTransform &t) override |
| void | beginTransparencyLayer (float opacity) override |
| bool | clipRegionIntersects (const Rectangle< int > &r) override |
| void | clipToImageAlpha (const Image &im, const AffineTransform &t) override |
| void | clipToPath (const Path &path, const AffineTransform &t) override |
| bool | clipToRectangle (const Rectangle< int > &r) override |
| bool | clipToRectangleList (const RectangleList< int > &r) override |
| virtual void | drawEllipse (const Rectangle< float > &area, float lineThickness) |
| void | drawGlyphs (Span< const uint16_t > glyphs, Span< const Point< float > > positions, const AffineTransform &t) override |
| Uses the current font to draw the provided glyph numbers. | |
| void | drawImage (const Image &im, const AffineTransform &t) override |
| void | drawLine (const Line< float > &line) override |
| virtual void | drawLineWithThickness (const Line< float > &line, float lineThickness) |
| virtual void | drawRect (const Rectangle< float > &rect, float lineThickness) |
| virtual void | drawRoundedRectangle (const Rectangle< float > &r, float cornerSize, float lineThickness) |
| void | endTransparencyLayer () override |
| void | excludeClipRectangle (const Rectangle< int > &r) override |
| virtual void | fillAll () |
| virtual void | fillEllipse (const Rectangle< float > &area) |
| void | fillPath (const Path &path, const AffineTransform &t) override |
| void | fillRect (const Rectangle< float > &r) override |
| void | fillRect (const Rectangle< int > &r, bool replace) override |
| void | fillRectList (const RectangleList< float > &list) override |
| virtual void | fillRoundedRectangle (const Rectangle< float > &r, float cornerSize) |
| Rectangle< int > | getClipBounds () const override |
| const Font & | getFont () override |
| uint64_t | getFrameId () const override |
| Returns an integer that uniquely identifies the current frame. | |
| float | getPhysicalPixelScaleFactor () const override |
| virtual std::unique_ptr< ImageType > | getPreferredImageTypeForTemporaryImages () const =0 |
| Returns the optimal ImageType for creating temporary images in this GraphicsContext. | |
| bool | isClipEmpty () const override |
| bool | isVectorDevice () const override |
| Returns true if this device is vector-based, e.g. | |
| void | restoreState () override |
| void | saveState () override |
| void | setFill (const FillType &fillType) override |
| void | setFont (const Font &newFont) override |
| void | setInterpolationQuality (Graphics::ResamplingQuality quality) override |
| void | setOpacity (float newOpacity) override |
| void | setOrigin (Point< int > o) override |
| Moves the origin to a new position. | |
| virtual void | strokePath (const Path &path, const PathStrokeType &strokeType, const AffineTransform &transform) |
Protected Member Functions | |
| StackBasedLowLevelGraphicsContext ()=default | |
| StackBasedLowLevelGraphicsContext (SavedStateType *initialState) | |
| void | drawGlyph (uint16_t i, const AffineTransform &t) |
Protected Attributes | |
| uint64_t | frame = 0 |
| RenderingHelpers::SavedStateStack< SavedStateType > | stack |
|
inlineexplicit |
|
inlineexplicitprotected |
|
protecteddefault |
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
inlineprotected |
References juce::AffineTransform::followedBy(), juce::RenderingHelpers::GlyphCache::getInstance(), juce::roundToInt(), juce::AffineTransform::scale(), and juce::RenderingHelpers::StackBasedLowLevelGraphicsContext< SavedStateType >::stack.
Referenced by juce::RenderingHelpers::StackBasedLowLevelGraphicsContext< SavedStateType >::drawGlyphs().
|
inlineoverridevirtual |
Uses the current font to draw the provided glyph numbers.
Implements juce::LowLevelGraphicsContext.
References juce::RenderingHelpers::StackBasedLowLevelGraphicsContext< SavedStateType >::drawGlyph(), juce::enumerate(), juce::AffineTransform::followedBy(), jassert, juce::Span< Value, Extent >::size(), and juce::AffineTransform::translation().
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
inlinevirtualinherited |
Reimplemented in juce::Direct2DGraphicsContext, and juce::CoreGraphicsContext.
|
inlinevirtualinherited |
Reimplemented in juce::Direct2DGraphicsContext.
References juce::RectangleList< ValueType >::addWithoutMerging().
|
inlinevirtualinherited |
Reimplemented in juce::Direct2DGraphicsContext, and juce::CoreGraphicsContext.
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
inlinevirtualinherited |
Reimplemented in juce::CoreGraphicsContext.
|
inlinevirtualinherited |
Reimplemented in juce::CoreGraphicsContext, and juce::Direct2DGraphicsContext.
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
inlineoverridevirtual |
Implements juce::LowLevelGraphicsContext.
References juce::list, and juce::RenderingHelpers::StackBasedLowLevelGraphicsContext< SavedStateType >::stack.
|
inlinevirtualinherited |
Reimplemented in juce::Direct2DGraphicsContext, and juce::CoreGraphicsContext.
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
inlineoverridevirtual |
Returns an integer that uniquely identifies the current frame.
Useful for debugging/logging.
Implements juce::LowLevelGraphicsContext.
References juce::RenderingHelpers::StackBasedLowLevelGraphicsContext< SavedStateType >::frame.
|
inlineoverridevirtual |
|
pure virtualinherited |
Returns the optimal ImageType for creating temporary images in this GraphicsContext.
While this typically matches the GraphicsContext's native ImageType, certain scenarios may benefit from using a different format for temporary operations (e.g., for performance, memory efficiency, or specific rendering requirements).
Implemented in juce::LowLevelGraphicsSoftwareRenderer, juce::CoreGraphicsContext, and juce::Direct2DGraphicsContext.
|
inlineoverridevirtual |
|
inlineoverridevirtual |
Returns true if this device is vector-based, e.g.
a printer.
Implements juce::LowLevelGraphicsContext.
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
inlineoverridevirtual |
Moves the origin to a new position.
The coordinates are relative to the current origin, and indicate the new position of (0, 0).
Implements juce::LowLevelGraphicsContext.
References juce::RenderingHelpers::StackBasedLowLevelGraphicsContext< SavedStateType >::stack.
|
inlinevirtualinherited |
Reimplemented in juce::Direct2DGraphicsContext, and juce::CoreGraphicsContext.
References juce::PathStrokeType::createStrokedPath().
|
protected |
|
protected |
Referenced by juce::RenderingHelpers::StackBasedLowLevelGraphicsContext< SavedStateType >::addTransform(), juce::RenderingHelpers::StackBasedLowLevelGraphicsContext< SavedStateType >::beginTransparencyLayer(), juce::RenderingHelpers::StackBasedLowLevelGraphicsContext< SavedStateType >::clipRegionIntersects(), juce::RenderingHelpers::StackBasedLowLevelGraphicsContext< SavedStateType >::clipToImageAlpha(), juce::RenderingHelpers::StackBasedLowLevelGraphicsContext< SavedStateType >::clipToPath(), juce::RenderingHelpers::StackBasedLowLevelGraphicsContext< SavedStateType >::clipToRectangle(), juce::RenderingHelpers::StackBasedLowLevelGraphicsContext< SavedStateType >::clipToRectangleList(), juce::RenderingHelpers::StackBasedLowLevelGraphicsContext< SavedStateType >::drawGlyph(), juce::RenderingHelpers::StackBasedLowLevelGraphicsContext< SavedStateType >::drawImage(), juce::RenderingHelpers::StackBasedLowLevelGraphicsContext< SavedStateType >::drawLine(), juce::RenderingHelpers::StackBasedLowLevelGraphicsContext< SavedStateType >::endTransparencyLayer(), juce::RenderingHelpers::StackBasedLowLevelGraphicsContext< SavedStateType >::excludeClipRectangle(), juce::RenderingHelpers::StackBasedLowLevelGraphicsContext< SavedStateType >::fillPath(), juce::RenderingHelpers::StackBasedLowLevelGraphicsContext< SavedStateType >::fillRect(), juce::RenderingHelpers::StackBasedLowLevelGraphicsContext< SavedStateType >::fillRect(), juce::RenderingHelpers::StackBasedLowLevelGraphicsContext< SavedStateType >::fillRectList(), juce::RenderingHelpers::StackBasedLowLevelGraphicsContext< SavedStateType >::getClipBounds(), juce::RenderingHelpers::StackBasedLowLevelGraphicsContext< SavedStateType >::getFont(), juce::RenderingHelpers::StackBasedLowLevelGraphicsContext< SavedStateType >::getPhysicalPixelScaleFactor(), juce::RenderingHelpers::StackBasedLowLevelGraphicsContext< SavedStateType >::isClipEmpty(), juce::RenderingHelpers::StackBasedLowLevelGraphicsContext< SavedStateType >::restoreState(), juce::RenderingHelpers::StackBasedLowLevelGraphicsContext< SavedStateType >::saveState(), juce::RenderingHelpers::StackBasedLowLevelGraphicsContext< SavedStateType >::setFill(), juce::RenderingHelpers::StackBasedLowLevelGraphicsContext< SavedStateType >::setFont(), juce::RenderingHelpers::StackBasedLowLevelGraphicsContext< SavedStateType >::setInterpolationQuality(), juce::RenderingHelpers::StackBasedLowLevelGraphicsContext< SavedStateType >::setOpacity(), and juce::RenderingHelpers::StackBasedLowLevelGraphicsContext< SavedStateType >::setOrigin().