TGUI  1.5
Loading...
Searching...
No Matches
tgui::BackendTextureRaylib Class Reference

Texture implementation that makes use of raylib. More...

#include <TGUI/Backend/Renderer/Raylib/BackendTextureRaylib.hpp>

Inheritance diagram for tgui::BackendTextureRaylib:
tgui::BackendTexture

Public Member Functions

 ~BackendTextureRaylib () override
 Destructor.
 
bool loadTextureOnly (Vector2u size, const std::uint8_t *pixels, bool smooth) override
 Loads the texture from an array of 32-bits RGBA pixels, but don't take ownership of the pixels.
 
void setSmooth (bool smooth) override
 Changes whether the smooth filter is enabled or not.
 
TGUI_NODISCARD const Texture2D & getInternalTexture () const
 Returns a pointer to the internal Texture2D.
 
void replaceInternalTexture (const Texture2D &texture)
 Replaces the internal texture by a different one.
 
- Public Member Functions inherited from tgui::BackendTexture
 BackendTexture (const BackendTexture &)=delete
 
 BackendTexture (BackendTexture &&)=delete
 
BackendTextureoperator= (const BackendTexture &)=delete
 
BackendTextureoperator= (BackendTexture &&)=delete
 
 BackendTexture ()=default
 Default constructor.
 
virtual ~BackendTexture ()=default
 Virtual destructor.
 
bool load (Vector2u size, std::unique_ptr< std::uint8_t[]> pixels, bool smooth)
 Loads the texture from an array of 32-bits RGBA pixels.
 
TGUI_NODISCARD Vector2u getSize () const
 Returns the size of the entire image.
 
TGUI_NODISCARD bool isSmooth () const
 Returns whether the smooth filter is enabled or not.
 
TGUI_NODISCARD bool isTransparentPixel (Vector2u pixel) const
 Checks if a certain pixel is transparent.
 
TGUI_NODISCARD const std::uint8_t * getPixels () const
 Returns a pointer to the pixels (read-only)
 

Protected Attributes

Texture2D m_texture
 
- Protected Attributes inherited from tgui::BackendTexture
Vector2u m_imageSize
 
std::unique_ptr< std::uint8_t[]> m_pixels
 
bool m_isSmooth = true
 

Detailed Description

Texture implementation that makes use of raylib.

Since
TGUI 1.3

Member Function Documentation

◆ getInternalTexture()

TGUI_NODISCARD const Texture2D & tgui::BackendTextureRaylib::getInternalTexture ( ) const

Returns a pointer to the internal Texture2D.

Returns
Pointer to internal texture, or nullptr when the texture was not initialized yet

◆ loadTextureOnly()

bool tgui::BackendTextureRaylib::loadTextureOnly ( Vector2u size,
const std::uint8_t * pixels,
bool smooth )
overridevirtual

Loads the texture from an array of 32-bits RGBA pixels, but don't take ownership of the pixels.

Parameters
sizeWidth and height of the image to create
pixelsPointer to array of size.x*size.y*4 bytes with RGBA pixels, or nullptr to create an empty texture
smoothShould the smooth filter be enabled or not?
Warning
Unlike the load function, loadTextureOnly won't store the pixels and isTransparentPixel thus won't work

Reimplemented from tgui::BackendTexture.

◆ replaceInternalTexture()

void tgui::BackendTextureRaylib::replaceInternalTexture ( const Texture2D & texture)

Replaces the internal texture by a different one.

Parameters
textureTexture to copy

This will remove the pixel data stored by this object and reset its smoothing and size based on the new texture.

Warning
Ownership of the texture is transferred by calling this function. The UnloadTexture function will be called when this object is destroyed and it should NOT be called by the caller of replaceInternalTexture.

◆ setSmooth()

void tgui::BackendTextureRaylib::setSmooth ( bool smooth)
overridevirtual

Changes whether the smooth filter is enabled or not.

Parameters
smoothTrue if smoothing should be enabled, false if it should be disabled

Reimplemented from tgui::BackendTexture.


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