mirror of
https://github.com/Bodmer/TFT_eSPI.git
synced 2025-08-04 13:14:46 +02:00
Merge pull request #741 from QrackEE/fix/ambigous_pushSprite
Resolve ambigous pushSprite(int int int) methods
This commit is contained in:
@@ -739,22 +739,22 @@ void TFT_eSprite::pushSprite(int32_t x, int32_t y, uint16_t transp)
|
|||||||
// 4bpp -> 4bpp (note: color translation depends on the 2 sprites pallet colors)
|
// 4bpp -> 4bpp (note: color translation depends on the 2 sprites pallet colors)
|
||||||
// 1bpp -> 1bpp (note: color translation depends on the 2 sprites bitmap colors)
|
// 1bpp -> 1bpp (note: color translation depends on the 2 sprites bitmap colors)
|
||||||
|
|
||||||
bool TFT_eSprite::pushSprite(TFT_eSprite *spr, int32_t x, int32_t y)
|
bool TFT_eSprite::pushSprite(TFT_eSprite &spr, int32_t x, int32_t y)
|
||||||
{
|
{
|
||||||
if (!_created) return false;
|
if (!_created) return false;
|
||||||
if (!spr->created()) return false;
|
if (!spr.created()) return false;
|
||||||
|
|
||||||
// Check destination sprite compatibility
|
// Check destination sprite compatibility
|
||||||
int8_t ds_bpp = spr->getColorDepth();
|
int8_t ds_bpp = spr.getColorDepth();
|
||||||
if (_bpp == 16 && ds_bpp != 16 && ds_bpp != 8) return false;
|
if (_bpp == 16 && ds_bpp != 16 && ds_bpp != 8) return false;
|
||||||
if (_bpp == 8) return false;
|
if (_bpp == 8) return false;
|
||||||
if (_bpp == 4 && ds_bpp != 4) return false;
|
if (_bpp == 4 && ds_bpp != 4) return false;
|
||||||
if (_bpp == 1 && ds_bpp != 1) return false;
|
if (_bpp == 1 && ds_bpp != 1) return false;
|
||||||
|
|
||||||
bool oldSwapBytes = spr->getSwapBytes();
|
bool oldSwapBytes = spr.getSwapBytes();
|
||||||
spr->setSwapBytes(false);
|
spr.setSwapBytes(false);
|
||||||
spr->pushImage(x, y, _dwidth, _dheight, _img );
|
spr.pushImage(x, y, _dwidth, _dheight, _img );
|
||||||
spr->setSwapBytes(oldSwapBytes);
|
spr.setSwapBytes(oldSwapBytes);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@@ -135,7 +135,7 @@ class TFT_eSprite : public TFT_eSPI {
|
|||||||
|
|
||||||
// Push the sprite to another sprite, this fn calls pushImage() in the destination sprite class.
|
// Push the sprite to another sprite, this fn calls pushImage() in the destination sprite class.
|
||||||
// >>>>>> Using a transparent color is not supported at the moment <<<<<<
|
// >>>>>> Using a transparent color is not supported at the moment <<<<<<
|
||||||
bool pushSprite(TFT_eSprite *spr, int32_t x, int32_t y);
|
bool pushSprite(TFT_eSprite &spr, int32_t x, int32_t y);
|
||||||
|
|
||||||
// Push a windowed area of the sprite to the TFT at tx, ty
|
// Push a windowed area of the sprite to the TFT at tx, ty
|
||||||
bool pushSprite(int32_t tx, int32_t ty, int32_t sx, int32_t sy, int32_t sw, int32_t sh);
|
bool pushSprite(int32_t tx, int32_t ty, int32_t sx, int32_t sy, int32_t sw, int32_t sh);
|
||||||
|
Reference in New Issue
Block a user