|
FlowArithmeticCalculator 1.0.0
Flow Arithmetic Calculator
|
Class responsible for rendering the GUI using Skia and GLFW. More...
#include <SkiaRendererImpl.h>
Inheritance diagram for gui::renderer::SkiaRendererImpl:
Collaboration diagram for gui::renderer::SkiaRendererImpl:Public Member Functions | |
| SkiaRendererImpl (gui::window::WindowBase< SkCanvas > *window, std::shared_ptr< business_logic::BlocksManager > blocksManager) | |
| Constructs a new SkiaRendererImpl. | |
| ~SkiaRendererImpl () override | |
| Destructor. | |
| SkiaRendererImpl (const SkiaRendererImpl &)=delete | |
| SkiaRendererImpl & | operator= (const SkiaRendererImpl &)=delete |
| SkiaRendererImpl (SkiaRendererImpl &&)=delete | |
| SkiaRendererImpl & | operator= (SkiaRendererImpl &&)=delete |
| void | render () |
| Renders the current frame. | |
| void | handleWindowResized (gui::window::WindowBase< SkCanvas > *window, float xScale, float yScale) |
| Handles window resize events. | |
| void | renderCenteredTextsRows (SkCanvas *canvas, const business_logic::geometry::Size2D &size, const std::vector< components::UITextsRow > &rows) override |
| Renders the texts on the canvas around the center horizontally, centered vertically. | |
Public Member Functions inherited from gui::renderer::delegate::UIRendererDelegate< SkCanvas > | |
| virtual | ~UIRendererDelegate ()=default |
Private Member Functions | |
| void | reinitializeSurface () |
| Reinitializes the Skia surface using the current width and height. | |
Private Attributes | |
| std::shared_ptr< business_logic::BlocksManager > | blocksManager |
| The blocks manager. | |
| gui::window::WindowBase< SkCanvas > * | window |
| The window. | |
| sk_sp< GrDirectContext > | grContext |
| The Skia context. | |
| sk_sp< SkSurface > | skSurface |
| The Skia surface. | |
| gui::renderer::delegate::UIRendererDelegate< SkCanvas > * | uiRendererDelegatePtr |
| The UI renderer delegate. | |
Additional Inherited Members | |
Protected Member Functions inherited from business_logic::Loggable< SkiaRendererImpl > | |
| Loggable () | |
Protected Attributes inherited from business_logic::Loggable< SkiaRendererImpl > | |
| std::shared_ptr< spdlog::logger > | logger |
Class responsible for rendering the GUI using Skia and GLFW.
Definition at line 49 of file SkiaRendererImpl.h.
| gui::renderer::SkiaRendererImpl::SkiaRendererImpl | ( | gui::window::WindowBase< SkCanvas > * | window, |
| std::shared_ptr< business_logic::BlocksManager > | blocksManager | ||
| ) |
Constructs a new SkiaRendererImpl.
| window | GLFW window handle |
| winWidth | Window width |
| winHeight | Window height |
| fbWidth | Framebuffer width |
| fbHeight | Framebuffer height |
| blocksManager | Blocks manager |
Definition at line 6 of file SkiaRendererImpl.cpp.
References reinitializeSurface(), skSurface, and window.
Here is the call graph for this function:
|
override |
Destructor.
Definition at line 60 of file SkiaRendererImpl.cpp.
|
delete |
|
delete |
| void gui::renderer::SkiaRendererImpl::handleWindowResized | ( | gui::window::WindowBase< SkCanvas > * | window, |
| float | xScale, | ||
| float | yScale | ||
| ) |
Handles window resize events.
| window | The window |
| xScale | New window x scale |
| yScale | New window y scale |
Definition at line 76 of file SkiaRendererImpl.cpp.
References gui::constants::FONT_ASPECT_BASE_WINDOW_HEIGHT, gui::constants::FONT_ASPECT_BASE_WINDOW_WIDTH, gui::window::WindowBase< Canvas >::getWindowSize(), gui::renderer::FontManager::recalculateFontSizes(), reinitializeSurface(), skSurface, and window.
Here is the call graph for this function:
|
delete |
|
delete |
|
private |
Reinitializes the Skia surface using the current width and height.
Definition at line 26 of file SkiaRendererImpl.cpp.
References gui::window::WindowBase< Canvas >::getFramebufferSize(), gui::window::WindowBase< Canvas >::getWindowSize(), grContext, business_logic::Loggable< SkiaRendererImpl >::logger, skSurface, and window.
Referenced by handleWindowResized(), and SkiaRendererImpl().
Here is the call graph for this function:
Here is the caller graph for this function:| void gui::renderer::SkiaRendererImpl::render | ( | ) |
Renders the current frame.
Definition at line 65 of file SkiaRendererImpl.cpp.
References blocksManager, gui::window::WindowBase< Canvas >::getWindowSize(), grContext, render(), skSurface, uiRendererDelegatePtr, window, and gui::renderer::colors::WINDOW_BACKGROUND_COLOR.
Referenced by render().
Here is the call graph for this function:
Here is the caller graph for this function:
|
overridevirtual |
Renders the texts on the canvas around the center horizontally, centered vertically.
| canvas | Canvas to draw on |
| size | The size of the canvas |
| rows | The rows of texts to render |
Implements gui::renderer::delegate::UIRendererDelegate< SkCanvas >.
Definition at line 94 of file SkiaRendererImpl.cpp.
References CENTERED_TEXT_ROWS_MARGIN_VERTICAL_NORM_PERCENT.
|
private |
|
private |
The Skia context.
Definition at line 118 of file SkiaRendererImpl.h.
Referenced by reinitializeSurface(), render(), and ~SkiaRendererImpl().
|
private |
The Skia surface.
Definition at line 123 of file SkiaRendererImpl.h.
Referenced by handleWindowResized(), reinitializeSurface(), render(), SkiaRendererImpl(), and ~SkiaRendererImpl().
|
private |
The UI renderer delegate.
Definition at line 133 of file SkiaRendererImpl.h.
Referenced by render().
|
private |
The window.
Definition at line 113 of file SkiaRendererImpl.h.
Referenced by handleWindowResized(), reinitializeSurface(), render(), and SkiaRendererImpl().