Commit Graph

107 Commits

Author SHA1 Message Date
Bodmer 73ff86b85b Support external font classes in button class
Original Adafruit button rendering code can be used with an external font class if "textFont" is set to 255.

See #1536
2022-01-08 14:50:44 +00:00
Bodmer 1242ba14d1 Bug fix 2022-01-08 02:02:29 +00:00
Bodmer 8a2398451b RP2040: add SPI PIO interface option, enhance 8 bit parallel PIO
The RP2040 processors can now drive 8 bit parallel and SPI displays using the PIO hardware.

The PIO offloads the processor by providing:
1. PIO managed setWindow sequence
2. PIO managed block and screen fill
2022-01-02 01:08:22 +00:00
Bodmer a474f4cd23 Fix #1313 2021-12-12 01:33:27 +00:00
Bodmer 9bf9c0940f Update for GC9A01 display
Correct sprite rendering
GC9A01 expects exact number of pixels to fill setWindow area.
2021-11-28 13:57:15 +00:00
Bodmer e23d8e083b Correct comments 2021-11-03 23:45:16 +00:00
Bodmer 8164629397 Fix #1168 2021-05-11 21:38:26 +01:00
Bodmer 91c34afc49 Replace deprecated boolean type
Note that Processing sketches (pde type) do not accept bool, so boolean is correct.
2021-03-31 13:52:42 +01:00
Bodmer 2bf4d15b02 Fix #1022 2021-02-23 22:38:03 +00:00
Bodmer 5f171eeefd
Fix #923 and #915 2021-01-08 23:53:28 +00:00
Bodmer 9fec44b6ea Implement #896 plus minor changes
When rendering a smooth font in a sprite the anti-aliasing will pick up the sprite background colour if the text background colour is not set.
2020-12-31 17:58:28 +00:00
Bodmer 63dc212061
Correct white=transparent bug 2020-12-15 16:50:12 +00:00
Bodmer ad0130309c Add pushToSprite with transparent colour
New function:
pushToSprite(TFT_eSprite *spr, int32_t x, int32_t y, uint16_t transp)
// Note: The following sprite to sprite colour depths are currently supported:
//    Source    Destination
//    16bpp  -> 16bpp
//    16bpp  ->  8bpp
//     8bpp  ->  8bpp
//     1bpp  ->  1bpp
2020-12-02 13:39:19 +00:00
Bodmer 42e6fc87ff Feature update
Add ILI9225 support
Add viewport feature to Sprites
Rationalise common TFT_eSPI and Sprite functions and variables to use inherited functions width(), height(), rotation(), write(), pivot, cursor, swapBytes.
2020-12-01 20:06:32 +00:00
Bodmer 788048155c
Fix #827 (function ambiguity with Arduino DUE) 2020-11-17 18:40:39 +00:00
Bodmer 505ca81a70 Complete viewport update 2020-10-11 22:36:02 +01:00
Bodmer 13d217dc89 Add viewport feature
2 new example sketches added for viewport demonstration
2020-10-06 00:51:41 +01:00
Bodmer 0c49b71dd4
Fix #751 2020-09-14 21:40:20 +01:00
Bodmer d7fdcc0991 Fix #740 and #704
#740: To avoid ambiguity the pushSprite for writing a sprite to another sprite has been renamed pushToSprite

#704: Change to 18 bit colurs for SSD1963 with SPI interface

Remove outdated TFT_SPIFFS_Jpeg example
2020-09-07 22:04:42 +01:00
Bodmer 4c314c5c33
Revert "Resolve ambigous pushSprite(int int int) methods" 2020-09-07 13:05:59 +01:00
QrackEE ddf03d43ea Resolve ambigous pushSprite(int int int) methods 2020-09-05 16:54:24 +02:00
Bodmer 731228d13a Fix deleteSprite
Fixes #736 and also delete color map even if the sprite has not been created.
2020-08-28 21:18:26 +01:00
Bodmer 52ee45b30b Correct medium warnings #702 2020-08-05 23:37:24 +01:00
Bodmer cfcb9c6632 Revert "Elimnate some warnings #702"
This reverts commit 31125ca5ac.
2020-08-05 23:13:59 +01:00
Bodmer 31125ca5ac Elimnate some warnings #702 2020-08-05 23:01:59 +01:00
Bodmer dc114db01b Srite class updates + others
Add 2 new pushSprite functions:
1. Sprite to sprite
2. windowed are of sprite to screen
Examples to follow
Bug fixes to sprite class
2020-08-05 20:06:44 +01:00
Bodmer c124688ab1
Fix #697
Untested but looks correct!
2020-07-19 10:45:36 +01:00
Bodmer a6d50ea5ef #682 Add created() function for sprites
New function added:
  bool created(void);
to check if sprite has been rotated. Example:

if ( !spr.created() ) Serial.println("Sprite has not been created");
2020-07-07 00:52:55 +01:00
Bodmer 61f1c5f98e
Merge pull request #641 from kamorris/kamorris-patch-1
Add 4bit images to sprites, with an example and a tool to produce the images from bmp files.
2020-06-19 10:05:01 +01:00
Bodmer b5826586fc Allow 4bpp Sprites to be rotated
4bpp Sprites can now be pushed to the TFT with a rotation
2020-06-05 16:05:04 +01:00
kamorris 5ffd4feac4 prepare for merging. 2020-05-25 17:09:56 -07:00
Bodmer 00ac129667 Update Sprite.cpp 2020-05-05 21:36:05 +01:00
Bodmer f6748bf906 Add ESP32 SPI DMA capability
DMA test examples now work on ESP32
2020-05-05 21:21:28 +01:00
Bodmer 90af737fa1 Fix #606 inconsistency + others
TFT_eFEX also needs updating so Rotated_Sprite_3 example renders correctly.

pushImage for FLASH images updated so partly off-screen images are correctly rendered.
2020-04-26 17:05:19 +01:00
Bodmer e937a3496f Diagnostic sketch update + others
Read_User_Setup updated to be compatible with STM32 and new structure format.
Reduction in compiler warnings
Update Sprite destructor
Update version to 2.2.1
2020-04-16 14:33:42 +01:00
Bodmer 875b451590 Fix Sprite 1bpp scroll bug
Sprite scroll function fixed for 1bpp
readPixelValue() updated

Performance of circle drawing functions improved.

Version raised to 2.2.0
2020-03-30 21:51:26 +01:00
Bodmer 5ab0a08d1d Fix #588 2020-03-29 18:42:25 +01:00
Bodmer 89bf0ce6c1 Fix #581 plus
Update 4 bit Sprite code
Update Animate_Dial example to use italic font with minimised character set, add original jpeg graphic.
Raise to 2.1.8
2020-03-25 14:27:38 +00:00
Bodmer 611ca4b223
Update Sprite.cpp 2020-03-20 02:30:26 +00:00
Bodmer 7f7cc24b00 Add new animated dial example
See Sprite "Animated_dial" example.
2020-03-20 00:30:12 +00:00
Bodmer bdf2c9ba75
Fix #572 2020-03-19 22:20:48 +00:00
Bodmer 0161814c9a Add smooth font wrapping in a Sprite
See #558
2020-03-01 18:40:54 +00:00
Bodmer db7a9987d3 Increase precision for Sprite to Sprite rotations
Based on pull request #543
2020-02-16 17:06:58 +00:00
Bodmer 83d202dd08
Merge pull request #543 from lovyan03/master
update: pushRotated tweak.
2020-02-16 16:57:28 +00:00
Bodmer 0fd8803ba2 Add smooth fonts in program memory for ESP32/8266
The 4 new smooth font  "Font_Demo_1/2/3/4_Array" examples now work on ESP32 and ESP8266.
2020-02-15 23:58:21 +00:00
Bodmer 771b52f841
Fix #546 2020-02-15 11:28:31 +00:00
Bodmer c689b4211d Add FLASH based anti-aliased fonts
Processors (such as STM32) that are not supported by a SPIFFS library can now use anti-aliased (smooth) fonts stored in FLASH (program) memory.
2020-02-14 23:54:37 +00:00
lovyan03 39fe08f987 update: pushRotated tweak. 2020-02-11 12:50:04 +09:00
Bodmer 443be934a7 Add PSRAM switch
Typical use to disable use of PSRAM for the sprite storage:
sprite.setAttribute(PSRAM_ENABLE, false); // true to enable
Minor update for recent button class update
2020-02-06 20:34:36 +00:00
Bodmer 87aca91218 Merge branch 'master' of https://github.com/Bodmer/TFT_eSPI 2020-02-06 13:38:13 +00:00