Commit Graph

303 Commits

Author SHA1 Message Date
Andrew Hannam
9ee7c284e6 Add GINPUT Dial, simplify GWIN input assignment
Added GINPUT Dial support and a driver that uses GADC to read the dial.
Added support for Dial inputs to the GWIN slider.
Updated the slider demo for Dial Inputs.
Simplified the assigning of inputs to GWIN "widgets" button and slider.
Updated the demo's to match the new input to button assignment.
2013-04-07 16:02:10 +10:00
Andrew Hannam
be919fc38d Create generic GWIN Draw routine
For some GWIN controls they support a Draw() routine.
For those controls the base class now supports a generic Draw routine
which will call their specific Draw routine.
The only GWIN's with a Draw routine currently are Buttons and Sliders.
2013-04-06 22:31:40 +10:00
Joel Bodenmann
48c5fbabb1 slider doc fix take one of two 2013-04-05 16:19:16 +02:00
Joel Bodenmann
9842664b92 Revert "slider doc fix"
This reverts commit c86cd58275.
2013-04-05 16:17:59 +02:00
Joel Bodenmann
c86cd58275 slider doc fix 2013-04-05 16:15:07 +02:00
Andrew Hannam
ee19104dbb GWIN slider + image support 2013-04-06 21:54:19 +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
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
Joel Bodenmann
939ca6e1d2 coding style 2013-03-31 00:52:33 +01:00
Andrew Hannam
285f1977ed GWIN doc update and poly functions
Add poly functions to GWIN
Move doxygen documentation to header file
2013-03-18 18:29:28 +10:00
Andrew Hannam
d678352b9a GWIN Graph - use GDISP point definition 2013-03-18 18:28:31 +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
Joel Bodenmann
426a12de6b doxygen fixes 2013-03-10 20:17:24 +01:00
Andrew Hannam
da37b111e4 GWIN button changes
Support a user supplied custom button drawing function.
Add arrow buttons based on the new GDISP polygon support.
2013-03-10 16:15:49 +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
Andrew Hannam
40534cbc79 Correction of copyright message 2013-03-08 00:49:52 +10:00
Joel Bodenmann
e315480c71 updated copyright - 2013 2013-03-06 23:11:01 +01:00
Joel Bodenmann
100d686f94 TDISP update 2013-03-02 22:13:44 +01:00
Andrew Hannam
dddbb25930 Add option GWIN_BUTTON_LAZY_RELEASE
Add option GWIN_BUTTON_LAZY_RELEASE. When set to true in gfxconf.h it
changes gwin button behaviour to not require the mouse/touch be over the
button when it is released.
2013-03-02 22:20:57 +10:00
Andrew Hannam
6ee8b005ae GAUDIN implemented with GADC driver 2013-03-01 09:04:52 +10:00
Andrew Hannam
9bec5967b2 GADC implementation with demo program
Also includes driver for AT91SAM7 cpu
2013-02-18 17:33:35 +10: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
08f2305aeb TDISP merge - NOT TESTED!!! 2013-02-18 08:18:09 +01:00
Joel Bodenmann
f8050a84f7 typo 2013-02-11 10:52:04 +01:00
Joel Bodenmann
6505bf6f0c VMT removal 2013-02-11 10:40:47 +01: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
851e5fb09b small GDISP fix - Thanks to George Lucian 2013-02-04 09:11:37 +01:00
Andrew Hannam
1985906bea TDISP cleanup
Seperate High level and low level code better
Implement tdispControl
Cleanup
2013-01-19 03:00:05 +10:00
Tectu
58eaf10591 Merge pull request #31 from inmarket/master
New Subsystems GADC, GAUDIN, GAUDOUT, GMISC
2013-01-17 00:56:25 -08:00
Joel Bodenmann
7d1dcb0d08 TDISP cleanup 2013-01-17 09:16:59 +01:00
Andrew Hannam
5b444276ae Implement GMISC Array Operations 2013-01-17 17:47:51 +10:00
Andrew Hannam
1fc03db586 New Subsystems GADC, GAUDIN, GAUDOUT, GMISC
Subsystem definitions and API (not fully implemented yet)
2013-01-17 15:08:34 +10:00
Joel Bodenmann
1a05e4a89a some more TDISP cleanup 2013-01-16 15:20:47 +01:00
Joel Bodenmann
a278e1c113 removed internal TDISP_LLD() macro 2013-01-16 10:37:56 +01:00
Joel Bodenmann
1f1dd62687 TDISP update 2013-01-16 10:27:42 +01:00
Joel Bodenmann
d7b85cb00e compiling bux fix 2013-01-13 11:07:43 +01:00
Joel Bodenmann
c3006aa89c small fix 2013-01-13 10:57:33 +01:00
Joel Bodenmann
83ba8748bc tdisp fixes 2013-01-12 10:00:17 +01:00
Joel Bodenmann
1c1b3c8d74 TDISP: added custom character routine 2013-01-12 09:38:38 +01:00
Joel Bodenmann
ff8e8c47d9 tdisp docs 2013-01-11 15:20:57 +01:00
Joel Bodenmann
66bb4ecb85 Merge branch 'tdisp' 2013-01-11 15:04:40 +01:00
Joel Bodenmann
dae721900b small doxygen fixes 2013-01-11 19:39:36 +01:00
Joel Bodenmann
c974ec449f tdisp update 2013-01-11 14:39:27 +01:00
Joel Bodenmann
905bb0292b some tdisp update 2013-01-11 13:25:38 +01:00
Joel Bodenmann
77a93bb43d TDISP update 2013-01-10 15:03:34 +01:00
Joel Bodenmann
d5e7afe756 4-bit mode implemented 2013-01-10 14:51:31 +01:00
Joel Bodenmann
6cc67bad84 some TDISP doxygen 2013-01-10 19:47:50 +01:00
Joel Bodenmann
a2a87ddd45 added TDISP - experimental 2013-01-09 14:29:32 +01:00
Joel Bodenmann
b75f69d7a0 more update 2012-12-21 15:21:25 +01:00
Joel Bodenmann
b6a8a15536 doxygen & cleanup 2012-12-21 15:18:22 +01:00
Joel Bodenmann
9d2f63d4b7 doxygen warning fix 2012-12-20 23:33:19 +01:00
Joel Bodenmann
bee9002fcc small doxygen cleanup 2012-12-20 19:46:34 +01:00
Joel Bodenmann
e00f8593e8 more doxygen cleanup 2012-12-19 19:48:12 +01:00
Joel Bodenmann
7a6bf59b2b GEVENT doxygen 2012-12-19 13:45:24 +01:00
Joel Bodenmann
a520a32209 more doxygen 2012-12-18 23:15:47 +01:00
Joel Bodenmann
a75653f7a1 some more doxygen 2012-12-18 22:55:03 +01:00
Joel Bodenmann
5c6027d14d some more doxygen 2012-12-18 22:49:01 +01:00
Joel Bodenmann
6e76ecde18 doxygen fix 2012-12-18 22:34:22 +01:00
Joel Bodenmann
8bc7b22ce7 doxygen 2012-12-18 22:04:35 +01:00
Joel Bodenmann
e1de308dfa ginput doxygen 2012-12-18 20:06:10 +01:00
Joel Bodenmann
9c738e00fa ginput/mouse doxygen 2012-12-18 19:46:27 +01:00
Joel Bodenmann
3a9a2a10b7 doxygen update 2012-12-16 20:43:14 +01:00
Andrew Hannam
311c0e7168 Add grids to graph demo and update graph arrows
Add grid lines to graph demo.
Update graph arrows to allow seperate control of positive and negative
axis arrowheads.
2012-12-13 22:33:05 +10:00
Andrew Hannam
d503f3a4ac Header fix for Toggle driver 2012-12-08 13:44:11 +10: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
Andrew Hannam
74e94d39b9 Split Attaching Sources to a GWIN button
Split Attaching Sources to a GWIN button to allow for new input types
that require a parameter in future eg. Keyboard will require a
parameter.
2012-12-02 17:10:27 +10:00
Andrew Hannam
b819359442 Change Mouse Poll period default to a better value 2012-12-02 16:46:39 +10:00
Andrew Hannam
99a9bf45e7 Add support for interrupt driven Toggle Inputs 2012-12-02 16:43:28 +10:00
Andrew Hannam
bc0ce07298 Static initialisation fix for a GListener 2012-11-30 00:40:28 +10:00
Joel Bodenmann
ba08afef3e doxygen 2012-11-26 21:19:32 +01:00
Andrew Hannam
8275c8820f Ginput and structure changes
GINPUT Touch including drivers
GTIMER fixes
GEVENT fixes
GWIN button completion
Structure changes to better seperate sections of a sub-system
2012-11-26 18:45:26 +10:00
Joel Bodenmann
92ed50dbf0 gwin doxygen 2012-11-20 23:12:09 +01:00
Joel Bodenmann
b0fbfdebba gtimer doxygen fix 2012-11-20 12:17:59 +01:00
Joel Bodenmann
19d45eaeda GTimer doxygen bugfix 2012-11-19 20:39:20 +01:00
Joel Bodenmann
93fdd5dcdb doxygen of gtimer 2012-11-19 20:26:19 +01:00
Andrew Hannam
a762a629aa GEVENT, GTIMER & GINPUT subsystems
GEVENT - for passing event structures from Sources to Listeners
GTIMER - thread context based once-off and periodic timers.
GINPUT - extensible, multiple device-type, input sub-system.
gevent & gtimer are code complete, ginput is definition complete but not
code complete.
2012-11-17 01:42:12 +10:00
Joel Bodenmann
3cf6d6905f removed the check for GDISP_USE_XXX since new drivers dont use this anymore 2012-11-14 21:25:48 +01:00
Joel Bodenmann
a95c4933c4 Backlight fix 2012-11-13 23:54:50 +01:00
Joel Bodenmann
81f6af7e45 backlight and contrast value changed to uint8_t 2012-11-13 23:48:21 +01:00
Joel Bodenmann
4467b814f2 implemented contrast and backlight functions for GDISP. Implemented those into ILI9320 2012-11-13 23:31:21 +01:00
Andrew Hannam
9566e80854 Remove RGB565CONVERT()
Remove RGB565CONVERT() macro
Update madlebrot demo to use hardware independant way of setting the
color.
2012-11-12 17:10:30 +10:00
Andrew Hannam
014330d3a0 gdisp Win32 Orientation support. Revert Macro
gdisp Win32 orientation support.
Revert to producing an error if GDISP_NEED_TEXT is not defined when
GWIN_NEED_CONSOLE or GWIN_NEED_BUTTON is defined.
2012-11-12 17:00:26 +10:00
Joel Bodenmann
7ccd3da85f implemented power modes for ILI9320 2012-11-12 02:35:06 +01:00
Joel Bodenmann
c0de701066 GDISP_NEED_TEXT getting set automatically if GWIN_NEED_CONSOLE or GWIN_NEED_BUTTON set to TRUE 2012-11-11 16:19:50 +01:00
Joel Bodenmann
112781baee set GWIN_NEED_CONSOLE default value to FALSE 2012-11-11 16:02:44 +01:00
Joel Bodenmann
e8ee122321 Revert "removed unused RGB565CONVERT. Please use RGB2COLOR instead"
This reverts commit 8231e9738c.
2012-11-11 13:35:24 +01:00
Andrew Hannam
8b51bcf46f Touch Fixes. Deprecate Console
Touch:
- Move defines that may be altered by the touch config file to the lld
header file.
- Move the definition of the Touch driver structure to the lld config
file.
- Changed CONVERSIONS macro to TOUCHSCREEN_CONVERSIONS
- Replaced references to GDISP_SCREEN_WIDTH with gdispGetWidth
- Renamed TOUCHSCREEN_HAS_IRQ to TOUCHSCREEN_HAS_PRESSED to match new
function name.
- Added prototypes for calibration storage functions to
touchscreen_lld.h so that either the lld driver or the application can
define the function.

Console:
-Deprecated into "old" directory. Functionality replaced by gwin.
2012-11-11 19:03:30 +10:00
Joel Bodenmann
5f90362261 touchscreen fixes 2012-11-10 17:04:20 +01:00
Joel Bodenmann
8231e9738c removed unused RGB565CONVERT. Please use RGB2COLOR instead 2012-11-10 16:49:03 +01:00
Joel Bodenmann
5a5db64288 renamed tsIRQ() into tsPressed() 2012-11-10 16:46:02 +01:00
Andrew Hannam
c069817f0c Removed some hardware dependancies in HL drivers
Removed some hardware dependancies in high level drivers that had crept
in over time.
2012-11-10 15:11:39 +10:00
Joel Bodenmann
affd9792ff added touchscreen files 2012-11-10 00:13:42 +01:00
Joel Bodenmann
87b6d98055 renamed touchpad into touchscreen 2012-11-10 00:05:01 +01:00
Joel Bodenmann
61d2238b25 small cleanup 2012-11-09 01:04:27 +01:00
Kumar Abhishek
6105b88f89 Touchpad API update to return coordinates as coord_t instead of uint16_t 2012-11-09 00:35:08 +05:30
Joel Bodenmann
9592a87826 small cosmetic fix 2012-11-07 13:45:00 +01:00
Joel Bodenmann
db0c770ca0 even more doxygen... 2012-11-03 02:56:59 +01:00
Joel Bodenmann
9ff7292013 doxygen update 2012-11-03 01:59:50 +01:00
Joel Bodenmann
1294824260 moar doxygen fixes 2012-11-02 20:26:06 +01:00
Joel Bodenmann
a922a268fd doxygen for graph 2012-10-31 01:14:11 +01:00
Andrew Hannam
d3b4c499ab GDISP fixes and new routines. Many GWIN changes.
GDISP:
Fix gdisp???Arc to use (possibly) hardware accelerated routines.
Fix Arc orientation so 0 degrees is on x axis and 90 degrees points to
the top of screen (instead of the bottom).
Add rounded box routines (if ARC support is turned on).
Add a gdispDrawStringBox to match the gdispFillStringBox routine.
Repair prototypes in wrong place in gdisp.h

GWIN:
Extract the concept of a Window Handle to allow many new features.
Allow dynamic creation of window objects as well as static
initialisation.
Seperate the console code into a console specific window type.
Add buttons as a specific window type. The drawing code is complete, the
input (touch or mouse) is still to be implemented.
2012-10-30 18:18:29 +10:00
Joel Bodenmann
a55da05d2e macro fix and whitespaces 2012-10-29 23:33:41 +01:00
Joel Bodenmann
3e846e3d5a Revert "header prototype order cleanup"
This reverts commit 218a2e89bd.
2012-10-29 03:17:52 +01:00
Joel Bodenmann
378872001e whitespaces 2012-10-29 03:11:49 +01:00
Joel Bodenmann
218a2e89bd header prototype order cleanup 2012-10-29 02:55:10 +01:00
Andrew Hannam
c5f9012fd6 Implement gdispFillArc. Add GWIN windows.
Implement gdispFillArc in gdisp.
Added gwin (GFX_USE_GWIN) - adds a window based drawing layer to GDISP.
GWIN also support chprintf text drawing like console.
2012-10-27 23:05:00 +10:00
Joel Bodenmann
563d240962 macro fixes 2012-10-24 22:51:25 +02:00
Joel Bodenmann
1527c69cc0 graph update 2012-10-24 21:10:35 +02:00
Joel Bodenmann
0c2b45dbd5 graph update 2012-10-24 21:05:23 +02:00
Joel Bodenmann
e0ca76b43c graphGetOrigin() 2012-10-24 18:59:52 +02:00
Joel Bodenmann
5c6f31741a graph - different axis and grid color 2012-10-24 18:52:25 +02:00
Joel Bodenmann
6005051ac7 graph update 2012-10-24 02:57:59 +02:00
Joel Bodenmann
5ac6912648 first graph implementation 2012-10-24 02:39:21 +02:00
Joel Bodenmann
d1f9702173 added point_t struct 2012-10-24 00:14:32 +02:00
Joel Bodenmann
7c4472cd94 added graph dummy 2012-10-24 00:12:50 +02:00
Joel Bodenmann
7b277edc59 renamed macros 2012-10-21 01:47:11 +02:00
Joel Bodenmann
ad070b0fec cleanup 2012-10-14 02:26:51 +02:00
Joel Bodenmann
a8c9db2709 renamed console fuctions to gfx 2012-10-13 19:47:20 +02:00
trsaunders
15a6687fd8 update console for latest chibios changes 2012-10-13 16:39:25 +01:00
Joel Bodenmann
c754ae0a3c fix 2012-10-13 19:35:56 +02:00
Joel Bodenmann
92fcb766b5 fix 2012-10-13 19:26:15 +02:00
Joel Bodenmann
830fa4b755 #error optimization 2012-10-13 19:11:37 +02:00
Joel Bodenmann
c02d0868bc console update 2012-10-13 02:08:02 +02:00
Joel Bodenmann
166d78c97a console updates 2012-10-13 02:04:20 +02:00
Joel Bodenmann
0eeee23788 Merge branch 'master' of github.com:Tectu/ChibiOS-GFX 2012-10-13 01:05:54 +02:00
Joel Bodenmann
6546c03250 TOUCHPADDriver_t -> TOUCHPADDriver | GConsole_t -> GConsole 2012-10-13 01:05:20 +02:00
Joel Bodenmann
15775696c9 small fix 2012-10-11 12:27:26 +02:00
Joel Bodenmann
069b0d32d8 GConsole -> GConsole_t 2012-10-11 09:27:02 +02:00
Joel Bodenmann
4a27e7c799 TOUCHPADDriver -> TOUCHPADDriver_t 2012-10-11 09:23:42 +02:00
Joel Bodenmann
3f6b604ff7 macro failsafe 2012-10-11 09:13:11 +02:00
Joel Bodenmann
b9de7e6ce3 struct cal -> struct cal_t 2012-10-10 13:46:18 +02:00
Joel Bodenmann
1ccb7f4660 rename of orientation 2012-10-05 09:20:39 +02:00
Joel Bodenmann
ec637ad2df Revert "rename of orientation"
This reverts commit d6b17a1573.
2012-10-05 09:12:57 +02:00
Joel Bodenmann
d6b17a1573 rename of orientation 2012-10-05 09:09:59 +02:00
Joel Bodenmann
1003c37e0b cleanups 2012-09-26 20:18:18 +02:00
Joel Bodenmann
5de2e9ac86 implemented touchpad calibration storage interface 2012-09-26 00:05:24 +02:00
Joel Bodenmann
0ba16c35af renaming from ChibiOS-LCD-Driver to ChibiOS/GFX 2012-09-25 00:19:10 +02:00
Andrew Hannam
7025d927ca Clip Boundary Conditions & Nokia6610 Fixes
Clipping Boundary Conditions are now fixed.
Nokia6610 Driver now works properly, also supports setting LCD contrast.
2012-09-10 20:38:54 +10:00
Andrew Hannam
3a8d39980b Changes to Console, VMT, BitBlt, Clip & Drivers
Console - Fix compile, add GDISP_NEED_CONSOLE for compilation
VMT - Fix after directory structure changes
BitBlt - Update API to allow a source bitmap position.
Clip - Add clipping support into gdisp
Arc - Allow hardware accelleration of Arc routines
Nokia6610 - Fixes to BitBlt.
2012-09-10 15:54:22 +10:00
mobyfab
11d299114f Fixes for the touchpad API. 2012-09-07 22:57:35 +02:00
Tectu
fcfab98517 added gdispDrawArc() and gdispFillArc() dummies 2012-08-24 02:35:28 +02:00
Tectu
7021da1b9e gdispSetOrientation() bugfix (by inmarket) 2012-08-22 10:05:38 +02:00
Tectu
4238378e90 added old glcd.h header backport 2012-08-21 18:18:02 +02:00
Tectu
f9dd7d52f4 coord_t from uint16_t to int16_t 2012-08-20 20:43:39 +02:00
Kumar Abhishek
a41a5911e5 Fix compiler warnings
Removed redundant dummy read from high level functions
2012-08-16 15:26:03 +05:30
Kumar Abhishek
a9beec902d XPT2046 LLD Major Update
Added 7 point median filtering to reduce noise
TOUCHPADDriver structure now encapsulates the IRQ pin, so removed
the TP_CS_ and TP_IRQ_ macros
Added generic tp_lld_read_value method to read any ADC channel from
the XPT2046, this includes on-chip temperature sensor and VBAT input
Improved SPI bus sharing, with the optional TOUCHPAD_SPI_PROLOGUE and
TOUCHPAD_SPI_EPILOGUE macros
2012-08-16 15:14:16 +05:30
Tectu
6982d7d076 moved console to src/ and include/ 2012-08-13 13:44:43 +02:00
Tectu
e27d04d002 restructure 2012-08-13 04:12:42 +02:00