inmarket
1ed7559ef0
Handle antialiased font drawing when using word-wrap
2015-11-04 15:05:16 +10:00
Joel Bodenmann
615819441b
Fixing previously introduced bug in gdispDrawStringBox()
2015-11-02 12:25:24 +01:00
Joel Bodenmann
58f6e0452e
Fixing compiler warnings
2015-11-02 12:24:13 +01:00
Joel Bodenmann
2dcd3509c9
Fixing word-wrap
2015-11-02 09:26:32 +01:00
Joel Bodenmann
69de17687c
Fixing compiler warnings
...
pull-request sent to upstream
2015-10-30 16:40:08 +01:00
Joel Bodenmann
051b3a9acc
Doxygen
2015-10-30 15:39:18 +01:00
Joel Bodenmann
ee2b82271d
Adding word-wrap support for gdispDrawStringBox() and gdispFillStringBox()
...
Thanks to Koryagin Dmitry for this contribution
2015-10-30 15:37:55 +01:00
inmarket
48a9d334b7
Replace all inline definitions with GFXINLINE
2015-10-23 18:24:49 +10:00
Joel Bodenmann
fd7e047bf8
Moving INLINE macro to gfx.h main file as inlined functions are also used outside of gdisp.h
2015-10-20 20:00:45 +02:00
inmarket
64a184fc59
Fix compiler warning
2015-10-06 12:03:24 +10:00
inmarket
53cb1af757
Add extra font metrics
2015-10-06 12:02:58 +10:00
inmarket
9d62e631cf
Allow a zero sized clipping region
2015-07-08 13:34:53 +10:00
Joel Bodenmann
380c41b766
Improving Pixmap API
2015-07-03 17:08:28 +02:00
Joel Bodenmann
e9c03c857e
Improvind doxygen
2015-06-18 15:38:34 +02:00
inmarket
ccde54722f
Added ability to compile ugfx as a single file (excluding driver and board files).
...
Simply compile src/gfx_mk.c
2015-06-08 14:14:40 +10:00
inmarket
aa7ebf9c26
Add the license to the makefiles
2015-06-08 12:11:37 +10:00
Joel Bodenmann
37ab4ec1cd
Fixing doxygen
2015-05-16 20:17:50 +02:00
inmarket
1a09f151e2
Fix to LLD driver color conversions.
2015-05-10 17:12:00 +10:00
inmarket
beacfaa994
Fix in color conversions for some strange compilers that don't do macro expansion in the highest available integer format
2015-04-07 23:20:16 +10:00
inmarket
601fd6855d
Add more pixel format support
2015-04-07 23:19:10 +10:00
inmarket
f44b1c6412
Small fix for scrolling
2015-04-07 23:18:32 +10:00
inmarket
39459872b2
Fix pixel error rounding in gdispDrawConvexPoly().
...
The corrects strange gwin arrow button appearances for certain sizes.
2015-02-14 10:38:24 +10:00
inmarket
143d9be295
Change ugfx startup logo to white so it shows up on monochrome displays
2015-02-07 23:33:02 +10:00
inmarket
f12e847c30
Fix compiler warnings for some drivers
2015-02-05 00:20:37 +10:00
inmarket
adebde7a99
Fix multiple display/keyboard/mouse problem with some compilers.
2015-01-27 13:42:11 +10:00
inmarket
fa8167b94d
Big file rename to reduce problems with brain-dead IDE's that don't handle project file hierarchies well.
...
Naming is more consistent with the new scheme.
May affect some third party drivers (header file renames).
2015-01-21 17:26:24 +10:00
inmarket
8b221b803a
Compile fix for default orientation with pixmaps.
2015-01-14 18:39:12 +10:00
inmarket
b68cfa0c29
Support dynamic displays at compile time, don't re-orient pixmaps at initialisation time.
2015-01-13 14:28:56 +10:00
inmarket
ef00cac45d
Add support and demo for pixmaps (in memory drawing)
2015-01-13 13:50:46 +10:00
inmarket
9ddf7c4284
Protect against NULL strings
2015-01-03 18:41:11 +10:00
Joel Bodenmann
30b47f1581
Fixing wrong font name in DejaVuSans20_aa font
2014-11-29 11:13:44 +01:00
Joel Bodenmann
0718866107
Fixing bug in gdispGDrawRoundedBox()
2014-11-29 11:08:32 +01:00
Joel Bodenmann
8e54d01db1
Fixing Doxygen
2014-11-28 19:47:57 +01:00
inmarket
bd3a58ccfc
Fix some extern structure definitions that cause problems with some compilers
2014-11-26 13:02:47 +10:00
Joel Bodenmann
fe976dac66
Fixing font names of newly added DejaVuSans20 and DejaVuSans20_aa
2014-11-17 21:42:03 +01:00
inmarket
8ca6fad9fd
Add DejaVuSans font in 20 point as a standard font
2014-11-15 15:20:47 +10:00
inmarket
599a163181
Spacing, comments and spelling mistakes
2014-11-15 15:19:46 +10:00
Joel Bodenmann
1541ae0d37
Adding GDISP_NEED_ARCSECTOR stuff that was missing
2014-10-28 12:02:47 +10:00
inmarket
3825cec8f8
Added new arc sector drawing routines (Thanks to steved for the inspiration).
...
Added demo to match.
2014-10-27 16:44:53 +10:00
inmarket
4b348f43ad
Update buildfonts.sh to match change to fonts.h
2014-10-06 15:57:37 +10:00
Joel Bodenmann
5427d3efe5
Fixing inclusion problem
2014-10-05 15:03:12 +02:00
inmarket
b7a89b2ada
doxygen updates
2014-09-29 16:09:08 +10:00
inmarket
b42a2098eb
Change to GDriver to support an initialisation parameter
2014-09-26 16:35:34 +10:00
inmarket
9f720b1f12
C decls on GDISP functions
2014-09-25 17:45:03 +10:00
inmarket
4886403bc6
Expose the GDISP_STARTUP_COLOR setting for the initial color of displays
2014-09-25 17:44:50 +10:00
inmarket
3a520359a0
GDISP updates to match previous GDRIVER and multiple display updates
2014-09-17 09:34:08 +10:00
inmarket
036ad5d3dd
SImplify the options for multiple displays.
...
This will also be more compatible with newmouse infrastructure
2014-09-17 08:45:40 +10:00
inmarket
683ac0ab7f
Fixes to gdriver to make uGFXnet displays work
2014-09-13 14:50:32 +10:00
inmarket
0c7c74112e
GDRIVER now working for GDISP including multiple displays.
...
Still uses old GDISP driver model for now
Untested with uGFXnet.
Still to come: Input drivers etc
2014-08-23 17:55:42 +10:00
inmarket
0f3f8f68f8
Rename lots of files to help prevent compile time name conflicts.
2014-08-20 17:42:53 +10:00
Joel Bodenmann
52f40d7618
Fixing compile bug for NATIVE image format
2014-08-07 23:11:44 +02:00
inmarket
ed14e4ca56
Some improvements for the Kiel C compiler
2014-07-29 10:57:01 +10:00
inmarket
3a98279583
Add gdispContrastColor() and remove divides from gdispBlendColors()
2014-05-11 20:05:31 +10:00
inmarket
1c75b6c352
spacing
2014-05-11 13:13:18 +10:00
inmarket
cf5867b33d
New gdispImageInit() call to initialise a gdispImage structure
...
Use in gwinImage
2014-05-09 21:30:00 +10:00
Joel Bodenmann
c2e93ebcfb
bug fix
2014-05-06 17:14:30 +02:00
inmarket
8f6c04e120
Image bug-fix that caused crashes with the new GFILE/GWIN images.
2014-05-01 16:43:32 +10:00
Joel Bodenmann
e9179545af
doxygen fixes
2014-03-28 20:18:03 +01:00
inmarket
37966ff16d
Integrate the include files with each module. Simplifies structure of code.
2014-02-19 00:36:52 +10:00
inmarket
695bcbee5b
Update GDISP image code to fully use new GFILE's
2014-02-07 14:06:08 +10:00
inmarket
71aeb15d58
Start changing GDISP images to use a simpler API based on GFILE's.
2014-02-07 01:36:31 +10:00
inmarket
de7aafe785
Fix font clipping properly. Previous fix did not bound the font display in the x direction.
2014-02-03 17:58:43 +10:00
Joel Bodenmann
a11f7da536
added deinit() routines for all modules (not implemented so far)
2014-02-02 19:24:43 +01:00
Joel Bodenmann
2a0dfcf1c1
fixed clipping issue when widget text is long than the widget itself
2014-02-01 16:04:07 +01:00
Joel Bodenmann
1f3f8bdbe6
fixes in gdispImage nativ format by Marc Pignat
2014-01-17 08:04:35 +01:00
inmarket
d9f02858fd
Replace NULL's with 0 as NULL is not defined by the Raw32 GOS.
2013-12-21 13:21:59 +10:00
Petteri Aimonen
985a3ca43a
gdispDrawThickLine: handle zero-length lines correctly.
2013-12-19 18:00:49 +01:00
Joel Bodenmann
ee69db45b3
Fix integer overflow in gdispGDrawThickLine().
...
Handling the whole width/height range with Newton algorithm was too
difficult. Switched to bisection search with a separate prescaling
step.
2013-12-18 00:38:17 +01:00
Joel Bodenmann
d16dda2180
GDISP startup logo now optional
2013-12-16 20:11:51 +01:00
Joel Bodenmann
87a7658b57
Improve gdispDrawThickLine() when the line length is short.
2013-12-14 23:30:39 +01:00
Joel Bodenmann
f3d9b08f82
typo
2013-12-08 22:50:28 +01:00
Joel Bodenmann
ace1948817
added gdispGDrawThickLine()
2013-12-08 21:13:54 +01:00
inmarket
cec125a53b
Revert "INLINE -> inline"
...
This reverts commit d4c4740bcf
.
2013-11-30 11:00:49 +10:00
Joel Bodenmann
d4c4740bcf
INLINE -> inline
2013-11-27 16:42:28 +01:00
inmarket
7f1b78a067
Replace color format conversion macros with proper routines to prevent side effects with using the macro.
...
Also fix a number of compiler warnings.
2013-11-17 23:32:19 +10:00
inmarket
0892135e23
Re-order the GDISP initialisation routine so that it initialises all displays before it tries to draw on any of them.
...
This also simplifies code.
2013-11-16 01:54:37 +10:00
inmarket
c726de8521
Boundary condition fixes to Arcs
...
Fix multiple display support for rounded boxes.
2013-11-14 09:18:08 +10:00
inmarket
5cc1c5d67b
Fix some compiler warnings.
2013-11-10 21:33:28 +10:00
inmarket
1f99d5c9fa
Add support for a default application orientation.
...
Also remove old unneeded GDISP_USE_CUSTOM_BOARD macro
2013-11-09 19:18:59 +10:00
inmarket
daa4e8bbd7
Add support for a portrait and landscape orientation modes.
2013-11-09 19:17:22 +10:00
inmarket
250adaf028
Fixes to gdisp vertical scrolling.
...
Also added improved optimisation for drivers without blit but with a fill routine.
2013-11-05 13:45:19 +10:00
inmarket
a28dce97d8
Add multiple display support to image decoding.
2013-10-24 18:34:26 +10:00
inmarket
21afd2b8f1
Created a crude auto-scaling logo (for startup)
2013-10-24 13:59:03 +10:00
inmarket
452cfc1b13
Add GDISP_NEED_TIMERFLUSH to enable automatic display flushing on a timer.
2013-10-24 12:57:20 +10:00
inmarket
4a5506df0a
Fixes to GDISP for streaming drivers.
...
Turn optimisation back on for SSD1289 driver
2013-10-24 11:32:46 +10:00
inmarket
27b5383c1b
Fix typos in drivers
2013-10-22 15:52:31 +10:00
Joel Bodenmann
459fbf6781
fixes
2013-10-21 13:47:59 +02:00
inmarket
0b9db701a1
Fix missing case in gdispStreamStop().
...
Add support for controllers that need flushing.
Add both automatic and manual flushing (via the gdispFlush() method)
2013-10-21 13:34:55 +10:00
Joel Bodenmann
2bd4758569
compiler warnings
2013-10-21 07:56:23 +10:00
inmarket
87a6af81f4
Change to gdisp low level driver API. Display number is now in the GDriver structure (It was required for a Nokia driver).
2013-10-19 15:36:05 +10:00
inmarket
86a5734912
Multiple controller support can now auto-detect hardware capabilities at run-time.
...
Specific hardware support can still be turned off or on via macros in gfxconf.h to improve efficiency.
Multiple Display demo updated to match.
2013-10-16 01:39:56 +10:00
inmarket
ea4af865f1
Compile time fix to text rendering.
...
Updated gdisp Get/Set Display routines to a more logical API.
2013-10-14 08:55:15 +10:00
inmarket
d22bc07e7a
Multiple displays across one or more controllers is now fully supported.
...
Only the Win32 driver supports this so far.
Other drivers are currently broken due to API changes and will be fixed.
2013-10-12 13:24:40 +10:00
inmarket
884db04e8c
New optimisation method for some streaming drivers. It should improve speed by about 30% for those controllers that support it.
2013-10-02 16:29:02 +10:00
inmarket
6499da5be3
SSD1289 streaming driver (untested)
...
X streaming driver (untested)
Nokia6610 fixes
Read pixel streaming support for low level driver.
2013-09-30 00:05:07 +10:00
inmarket
548eb3c981
GDISP Streaming bug fixes and new optimisation method
2013-09-27 01:37:32 +10:00
inmarket
9c55df5467
Fix compiler warning in image code
2013-09-27 01:35:29 +10:00
inmarket
30154560b6
Rename a macro and fix some bugs
2013-09-25 17:17:05 +10:00
inmarket
973e34089e
GDISP streaming bug fixes
...
Win32 bitmap support
Win32 Rotation is back to front. Need to check touch and other drivers.
2013-09-24 16:10:15 +10:00
inmarket
b25ac5e667
Scrolling emulation when not supported by hardware
...
Start of new multiple display support
GDISP performance optimisations
Documentation updates
Win32 driver updates
2013-09-18 23:46:37 +10:00
inmarket
01a6d6ff95
Fix some compiler warnings
2013-09-18 23:36:35 +10:00
inmarket
6e4437255b
GDISP revamp - stage 1
...
New low level driver interface: Only Win32 ported currently
Significant reduction in GDISP stack usage
Improved performance particularly for native streaming drivers
New circle, ellipse, arc routines (draw and fill) that are significantly more efficient and don't overdraw
New arc draw algorithm that measures angles correctly.
New arc fill algorithm for that actually works without overdrawing or gaps.
Much more to come...
2013-09-06 12:29:06 +10:00
inmarket
4394266679
Update fonts files to allow compiling without GDISP_NEED_TEXT.
2013-09-06 12:23:48 +10:00
inmarket
323f53e1dc
Improve font name searching.
2013-08-17 23:33:31 +10:00
inmarket
a2b27a6f5c
Add new hand built bitmap fonts to replace old UI1 and UI2.
...
Allow scaled fonts to be staticly defined.
Update new fonts handling so UI1 and UI2 have Narrow and Double variants.
Update example gfxconf.h.
Fix new font rules.
Add support for an application program to add their own fonts.
Make system font handling includes root relative.
2013-08-17 23:32:53 +10:00
inmarket
db18904892
From mcufont upstream: Fix tab handling in mf_get_string_width
2013-07-30 14:20:26 +10:00
inmarket
99642e2a99
From mcufont upstream: Fix inconsistency between UTF8 and other encodings
2013-07-30 14:19:50 +10:00
inmarket
0ee1b20451
Add font baseline to the starting point of string rendering.
...
Otherwise the limit calculation will cut off the first character
on larger fonts, like DejaVuSans24.
2013-07-30 14:19:05 +10:00
inmarket
7f15192fe8
Fix rule handling to help the end user get things right.
...
Tidied up anti-alias where the hardware does not support pixel read-back.
2013-07-29 16:31:54 +10:00
inmarket
7c303eb72e
Vastly simplify GDISP mcufont interface code.
...
Fix boundary cases.
Prevent overwriting of defined display area.
Improve performance.
Remove hardware acceleration for fonts (unlikely anyway unles the hardware understood our software font structures)
2013-07-29 16:29:25 +10:00
inmarket
12085b8014
Fix compiler warnings, operating system dependancies, and non-portable code.
2013-07-29 16:25:20 +10:00
inmarket
be8b3cd210
Updated license headers on new font code
2013-07-28 17:22:24 +10:00
inmarket
3977ee687f
First cut - beautiful new font handling by PetteriAimonen
2013-07-28 17:08:45 +10:00
inmarket
0194b87efe
Missing define for OSX
2013-07-24 13:55:54 +10:00
Joel Bodenmann
ea3048ff36
fixed OS-X port (untested)
2013-07-23 18:52:52 +02:00
Joel Bodenmann
73c5ef26f8
fixed license headers
2013-07-21 22:20:37 +02:00
inmarket
0c7609b51e
GDISP fix bug in non-multithread
2013-07-08 08:30:48 +10:00
inmarket
f7e7a5dae4
Image decoders not setting image type correctly.
2013-07-08 08:30:06 +10:00
inmarket
dd43a37b9b
Add gdispImageIsOpen() function.
2013-07-01 17:36:47 +10:00
inmarket
ed0bac9765
License header updates
2013-06-15 21:37:22 +10:00
inmarket
1c258a8273
GOS updates
2013-06-02 18:57:22 +10:00
inmarket
7fbfde42aa
GOS module, for operating system independance
...
GMISC fast floating point trig
GMISC fast fixed point trig
2013-05-25 01:26:52 +10:00
Abhishek Kumar
4e7c1b00ca
Fix GIF rendering issue
...
Uninitialized cache values causes stability issues in systems
Cache initialized to 0 fixes it.
2013-05-21 14:00:17 +07:00
Joel Bodenmann
8d5fa39dd9
docs
2013-05-20 19:15:20 +02:00
Andrew Hannam
88fd3ad62e
More Image Fixes
...
GIF Interlaced offset Fixes and area reveal offset fixes
2013-05-09 23:51:56 +10:00
Andrew Hannam
734ef12fdf
Image Decoder Fixes
...
Fixes to memory allocation for BMP and NATIVE
Fixes to source offset images for GIF
2013-05-09 23:39:38 +10:00
Joel Bodenmann
6c38d5b310
updated license headers
2013-05-03 16:36:17 +02:00
Joel Bodenmann
296e74f3e0
Revert "updated license headers"
...
This reverts commit 0a26d9983b
.
2013-05-02 01:53:28 +02:00
Joel Bodenmann
0a26d9983b
updated license headers
2013-05-02 01:50:09 +02:00
Andrew Hannam
a02c124940
GIF image handling
...
GIF image handling
Updates to Image structure to make memory accounting optional
Add set image background color to handle animated transparency.
2013-04-20 21:19:26 +10:00
Andrew Hannam
553b3682fa
Change Memory Reader prototype
...
Change Memory Reader prototype to prevent signed, unsigned warning
2013-04-04 21:01:49 +10:00
Andrew Hannam
40e6d9c532
Fixes to RLE_4, RLE_8 and 16 bit BMP images
...
BMP image handling now complete.
The only standard BMP feature not supported is transparency (alpha).
2013-04-03 14:58:35 +10:00
Andrew Hannam
64971549fd
New GDISP image handling with demo
...
Images currently support Native and BMP (except RLE4,8 and 16 bit - due
to bugs)
Supports reading from Memory, BaseFileStream or real files (only on the
Win32 simulator).
Move gdisp_pictures demo to better refect its purpose.
Bug fixes for BMP RLE4,8 & 16 bit to come very soon
GIF support very soon.
2013-04-03 13:51:43 +10:00
Andrew Hannam
cc5729dedd
Change GDISP poly fns to support translation
...
Change GDISP poly fns to support translation - required for adding poly
functions to GWIN
2013-03-18 18:27:52 +10:00
Andrew Hannam
40b390908c
GDISP changes including polygon support
...
Add polygon drawing
Add convex polygon filling
Start support for a monochrome display
Move gdisp doxygen to header file
Restructure the balance between gdisp.h and gdisp_lld.h
Remove old extern font definitions (now always use gdispOpenFont)
Make public the GDISP structure and change macros to suit (faster for
the application).
gdispQuery is now optional.
2013-03-10 16:14:32 +10:00
Andrew Hannam
8a40457c86
Revert "GDISP changes including polygon support"
...
This reverts commit 269262ef9b
.
2013-03-10 16:12:13 +10:00
Andrew Hannam
269262ef9b
GDISP changes including polygon support
...
Add polygon drawing
Add convex polygon filling
Start support for a monochrome display
Move gdisp doxygen to header file
Restructure the balance between gdisp.h and gdisp_lld.h
Remove old extern font definitions (now always use gdispOpenFont)
Make public the GDISP structure and change macros to suit (faster for
the application).
gdispQuery is now optional.
2013-03-10 16:11:41 +10:00
Joel Bodenmann
e315480c71
updated copyright - 2013
2013-03-06 23:11:01 +01:00
Andrew Hannam
9329b22086
Fix compile error in GDISP
...
Fix compile error with wrongly named include file
Revert lld_gdisp naming convention to gdisp_lld to fix problem and be
consitant with all other low level drivers.
2013-02-18 17:29:08 +10:00
Joel Bodenmann
60b16e8685
more GDISP_LLD() cleanup
2013-02-11 10:26:34 +01:00
Joel Bodenmann
1bfc5a9f85
removed GDISP_LLD() macro - fix
2013-02-11 09:25:45 +01:00
Joel Bodenmann
885b3d53b3
removed GDISP_LLD() macro
2013-02-11 09:25:26 +01:00
Joel Bodenmann
3a9a2a10b7
doxygen update
2012-12-16 20:43:14 +01:00
Andrew Hannam
5873d87ca2
Add GDISP font routines. Fix demo bugs
...
Add GDISP font routines to Open and Close a font by name.
Allows wildcard searching for fonts.
Old global font variables are now only optionally included (soon to be
deprecated).
More demo fixing
2012-12-07 00:52:01 +10:00
Andrew Hannam
07f3483535
Restructure
...
Create global include file called gfx.h which knows about sub-system
dependancies.
Deprecate Touchscreen (GINPUT touch is now working properly)
Merge Graph into GWIN
Change directory structure to reflect sub-system structure
Many small bugs fixed
Split Nokia6610 gdisp driver into GE8 and GE12 controller versions
Fixed broken demos.
GFX sub-systems are now clearly defined and new ones should be much
easier to add.
2012-12-06 18:45:54 +10:00