Luanti 5.10.0-dev
 
Loading...
Searching...
No Matches
guiscalingfilter.cpp File Reference
#include "guiscalingfilter.h"
#include "imagefilters.h"
#include "porting.h"
#include "settings.h"
#include "util/numeric.h"
#include <cstdio>
#include "client/renderingengine.h"
#include <IImage.h>
#include <ITexture.h>
#include <IVideoDriver.h>
+ Include dependency graph for guiscalingfilter.cpp:

Functions

void guiScalingCache (const io::path &key, video::IVideoDriver *driver, video::IImage *value)
 
void guiScalingCacheClear ()
 
video::ITexture * guiScalingResizeCached (video::IVideoDriver *driver, video::ITexture *src, const core::rect< s32 > &srcrect, const core::rect< s32 > &destrect)
 
video::ITexture * guiScalingImageButton (video::IVideoDriver *driver, video::ITexture *src, s32 width, s32 height)
 
void draw2DImageFilterScaled (video::IVideoDriver *driver, video::ITexture *txr, const core::rect< s32 > &destrect, const core::rect< s32 > &srcrect, const core::rect< s32 > *cliprect, const video::SColor *const colors, bool usealpha)
 
void draw2DImage9Slice (video::IVideoDriver *driver, video::ITexture *texture, const core::rect< s32 > &destrect, const core::rect< s32 > &srcrect, const core::rect< s32 > &middlerect, const core::rect< s32 > *cliprect, const video::SColor *const colors)
 

Variables

static std::map< io::path, video::IImage * > g_imgCache
 
static std::map< io::path, video::ITexture * > g_txrCache
 

Function Documentation

◆ draw2DImage9Slice()

void draw2DImage9Slice ( video::IVideoDriver * driver,
video::ITexture * texture,
const core::rect< s32 > & destrect,
const core::rect< s32 > & srcrect,
const core::rect< s32 > & middlerect,
const core::rect< s32 > * cliprect,
const video::SColor *const colors )

References draw2DImageFilterScaled().

Referenced by GUIAnimatedImage::draw(), GUIBackgroundImage::draw(), and GUIButton::draw().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ draw2DImageFilterScaled()

void draw2DImageFilterScaled ( video::IVideoDriver * driver,
video::ITexture * txr,
const core::rect< s32 > & destrect,
const core::rect< s32 > & srcrect,
const core::rect< s32 > * cliprect,
const video::SColor *const colors,
bool usealpha )

References guiScalingResizeCached().

Referenced by GUIAnimatedImage::draw(), GUIBackgroundImage::draw(), draw2DImage9Slice(), RenderingEngine::draw_load_screen(), GUIEngine::drawBackground(), Hud::drawCompassTranslate(), Hud::drawCrosshair(), GUIEngine::drawFooter(), GUIEngine::drawHeader(), Hud::drawItem(), Hud::drawItems(), drawItemStack(), Hud::drawLuaElements(), GUIEngine::drawOverlay(), and Hud::drawStatbar().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ guiScalingCache()

void guiScalingCache ( const io::path & key,
video::IVideoDriver * driver,
video::IImage * value )

References g_imgCache, g_settings, and Settings::getBool().

Referenced by TextureSource::generateTexture(), and TextureSource::rebuildTexture().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ guiScalingCacheClear()

void guiScalingCacheClear ( )

References g_imgCache, g_txrCache, and RenderingEngine::get_video_driver().

Referenced by Client::~Client(), and Client::afterContentReceived().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ guiScalingImageButton()

video::ITexture * guiScalingImageButton ( video::IVideoDriver * driver,
video::ITexture * src,
s32 width,
s32 height )

References guiScalingResizeCached().

Referenced by load_button_texture(), GUIButton::setFromStyle(), and GUIButtonImage::setFromStyle().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ guiScalingResizeCached()

video::ITexture * guiScalingResizeCached ( video::IVideoDriver * driver,
video::ITexture * src,
const core::rect< s32 > & srcrect,
const core::rect< s32 > & destrect )

References errorstream, g_imgCache, g_settings, g_txrCache, Settings::getBool(), imageCleanTransparent(), imageScaleNNAA(), porting::mt_snprintf(), and npot2().

Referenced by draw2DImageFilterScaled(), and guiScalingImageButton().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Variable Documentation

◆ g_imgCache

std::map<io::path, video::IImage *> g_imgCache
static

◆ g_txrCache

std::map<io::path, video::ITexture *> g_txrCache
static