Simple GUI Library
Sgl::ImageView Class Referencefinal
Inheritance diagram for Sgl::ImageView:
Collaboration diagram for Sgl::ImageView:

Public Member Functions

 ImageView (Image *image=nullptr, bool preserveRatio=false)
 
virtual ComponentgetHitComponent (int32_t x, int32_t y) override
 
virtual void render (const Sml::Rectangle< int32_t > &targetRegion) override
 
virtual void layout () override
 
virtual void prerender () override
 
virtual bool isResizable () const override
 
const ImagegetImage () const
 
void setImage (const Image *image)
 
float getRatio () const
 
bool getPreserveRatio () const
 
void setPreserveRatio (bool preserveRatio)
 
int32_t getFitWidth () const
 
void setFitWidth (int32_t width)
 
int32_t getFitHeight () const
 
void setFitHeight (int32_t height)
 
virtual int32_t computePrefWidth (int32_t height=-1) const override
 
virtual int32_t computePrefHeight (int32_t width=-1) const override
 
virtual int32_t computeMinWidth (int32_t height=-1) const override
 
virtual int32_t computeMinHeight (int32_t width=-1) const override
 
virtual int32_t computeMaxWidth (int32_t height=-1) const override
 
virtual int32_t computeMaxHeight (int32_t width=-1) const override
 
- Public Member Functions inherited from Sgl::Component
virtual bool containsComponent (Component *component)
 
virtual Sml::EventDispatchChain * buildEventDispatchChain (Sml::EventDispatchChain *chain) override
 
bool isVisible () const
 
void setVisible (bool visible)
 
bool isInteractable () const
 
void setInteractable (bool interactable)
 
Visibility getVisibility () const
 
void setVisibility (Visibility visibility)
 
bool isFocused () const
 
bool isHovered () const
 
void requestFocus ()
 
void requestDrag ()
 
const ShadowgetShadow () const
 
void setShadow (const ShadowSpecification *specification)
 
GuiEventDispatchergetEventDispatcher ()
 
ScenegetScene ()
 
void setScene (Scene *scene)
 
const ParentgetParent () const
 
ParentgetModifiableParent ()
 
void setParent (Parent *parent)
 
Sml::Vec2i computeLocalToScenePos (const Sml::Vec2i &localPos) const
 
Sml::Vec2i computeSceneToLocalPos (const Sml::Vec2i &scenePos) const
 
Sml::Rectangle< int32_t > getOriginBounds () const
 
const Sml::Rectangle< int32_t > & getLayoutBounds () const
 
const Sml::Vec2i & getLayoutPos () const
 
int32_t getLayoutX () const
 
int32_t getLayoutY () const
 
int32_t getLayoutWidth () const
 
int32_t getLayoutHeight () const
 
void setLayoutX (int32_t x)
 
void setLayoutY (int32_t y)
 
void setLayoutWidth (int32_t width)
 
void setLayoutHeight (int32_t height)
 
Sml::Vec2i computeScenePos ()
 

Additional Inherited Members

- Public Types inherited from Sgl::Component
enum class  Visibility { INVISIBLE_DISABLED = 0b00 , INVISIBLE_INTERACTABLE = 0b01 , VISIBLE_DISABLED = 0b10 , VISIBLE_INTERACTABLE = 0b11 }
 Used to determine if Component should be rendered and targeted by events. More...
 
- Public Attributes inherited from Sgl::Component
friend Scene
 
- Static Public Attributes inherited from Sgl::Component
static const int32_t USE_COMPUTED_SIZE = INT32_MIN
 
static const int32_t UNLIMITED_SIZE = INT32_MAX
 
- Protected Member Functions inherited from Sgl::Component
void updateShadow ()
 
void renderShadow (const Sml::Rectangle< int32_t > &targetRegion)
 
virtual void setSceneInSceneTree (Scene *scene)
 
- Protected Attributes inherited from Sgl::Component
Visibility m_Visibility = Visibility::VISIBLE_INTERACTABLE
 
bool m_Focused = false
 
bool m_Hovered = false
 
Shadow m_Shadow
 
GuiEventDispatcher m_Dispatcher
 
Scenem_Scene = nullptr
 
Parentm_Parent = nullptr
 
Sml::Rectangle< int32_t > m_LayoutBounds = {{0, 0}, 0, 0}
 

Detailed Description

Definition at line 16 of file image_view.h.

Constructor & Destructor Documentation

◆ ImageView()

Sgl::ImageView::ImageView ( Image image = nullptr,
bool  preserveRatio = false 
)

Definition at line 13 of file image_view.cpp.

Member Function Documentation

◆ computeMaxHeight()

int32_t Sgl::ImageView::computeMaxHeight ( int32_t  width = -1) const
overridevirtual

Implements Sgl::Component.

Definition at line 98 of file image_view.cpp.

◆ computeMaxWidth()

int32_t Sgl::ImageView::computeMaxWidth ( int32_t  height = -1) const
overridevirtual

Implements Sgl::Component.

Definition at line 97 of file image_view.cpp.

◆ computeMinHeight()

int32_t Sgl::ImageView::computeMinHeight ( int32_t  width = -1) const
overridevirtual

Implements Sgl::Component.

Definition at line 95 of file image_view.cpp.

◆ computeMinWidth()

int32_t Sgl::ImageView::computeMinWidth ( int32_t  height = -1) const
overridevirtual

Implements Sgl::Component.

Definition at line 94 of file image_view.cpp.

◆ computePrefHeight()

int32_t Sgl::ImageView::computePrefHeight ( int32_t  width = -1) const
overridevirtual

Implements Sgl::Component.

Definition at line 82 of file image_view.cpp.

◆ computePrefWidth()

int32_t Sgl::ImageView::computePrefWidth ( int32_t  height = -1) const
overridevirtual

Implements Sgl::Component.

Definition at line 70 of file image_view.cpp.

◆ getFitHeight()

int32_t Sgl::ImageView::getFitHeight ( ) const

Definition at line 55 of file image_view.cpp.

◆ getFitWidth()

int32_t Sgl::ImageView::getFitWidth ( ) const

Definition at line 52 of file image_view.cpp.

◆ getHitComponent()

Component * Sgl::ImageView::getHitComponent ( int32_t  x,
int32_t  y 
)
overridevirtual

Reimplemented from Sgl::Component.

Definition at line 16 of file image_view.cpp.

◆ getImage()

const Image * Sgl::ImageView::getImage ( ) const

Definition at line 41 of file image_view.cpp.

◆ getPreserveRatio()

bool Sgl::ImageView::getPreserveRatio ( ) const

Definition at line 49 of file image_view.cpp.

◆ getRatio()

float Sgl::ImageView::getRatio ( ) const

Definition at line 44 of file image_view.cpp.

◆ isResizable()

bool Sgl::ImageView::isResizable ( ) const
overridevirtual

Implements Sgl::Component.

Definition at line 39 of file image_view.cpp.

◆ layout()

void Sgl::ImageView::layout ( )
overridevirtual

Reimplemented from Sgl::Component.

Definition at line 36 of file image_view.cpp.

◆ prerender()

void Sgl::ImageView::prerender ( )
overridevirtual

Reimplemented from Sgl::Component.

Definition at line 37 of file image_view.cpp.

◆ render()

void Sgl::ImageView::render ( const Sml::Rectangle< int32_t > &  targetRegion)
overridevirtual

Implements Sgl::Component.

Definition at line 26 of file image_view.cpp.

◆ setFitHeight()

void Sgl::ImageView::setFitHeight ( int32_t  height)

Definition at line 56 of file image_view.cpp.

◆ setFitWidth()

void Sgl::ImageView::setFitWidth ( int32_t  width)

Definition at line 53 of file image_view.cpp.

◆ setImage()

void Sgl::ImageView::setImage ( const Image image)

Definition at line 42 of file image_view.cpp.

◆ setPreserveRatio()

void Sgl::ImageView::setPreserveRatio ( bool  preserveRatio)

Definition at line 50 of file image_view.cpp.


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