Commit Graph

112 Commits

Author SHA1 Message Date
inmarket
0f3f8f68f8 Rename lots of files to help prevent compile time name conflicts. 2014-08-20 17:42:53 +10: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
Joel Bodenmann
c2e93ebcfb bug fix 2014-05-06 17:14:30 +02:00
inmarket
37966ff16d Integrate the include files with each module. Simplifies structure of code. 2014-02-19 00:36:52 +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
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
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
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
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
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
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
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
3977ee687f First cut - beautiful new font handling by PetteriAimonen 2013-07-28 17:08:45 +10: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
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
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
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
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