Commit Graph

644 Commits

Author SHA1 Message Date
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
53408e2cb3 Fix incorrect naming of GMISC_INVSQRT_... macros. 2013-11-09 19:13:01 +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
26f4bec2be No doxygen comments in any C file now. They are all in the h files 2013-10-28 10:47:17 +10:00
Joel Bodenmann
4b76efce1d Bugfix... how could we miss this? 2013-10-28 09:32:43 +10:00
inmarket
7a7e223d15 Add multiple display support to GWIN.
You can now create windows on multiple displays.
2013-10-24 18:36:11 +10:00
inmarket
a28dce97d8 Add multiple display support to image decoding. 2013-10-24 18:34:26 +10:00
inmarket
e642edb4e1 Store the display locally within the mouse structure.
Add ginputGetMouseDisplay()
2013-10-24 18:33:40 +10:00
inmarket
1a99b3c321 New: ginputSetMouseDisplay() to allow the mouse to work with a non-default display.
Fix: Mouse orientation fixed to match the now corrected GDISP orientation.
Comment updates
2013-10-24 16:56:09 +10:00
inmarket
6ad2ecf818 Fix invalid return value in gwin/lists.c 2013-10-24 16:51:22 +10:00
inmarket
0ea2f54637 Slight improvement to the precision of the GMISC invsqrt() function. 2013-10-24 15:25:50 +10:00
inmarket
e6f17baf61 GMISC invsqrt() function.
Fix a 64bit processor bug.
Add support for processors where the floating point and integer endianness don't match.
Add support for processors with a non-standard floating point format.
Update gdisp_streaming demo with extra comments to reflect the above changes.
2013-10-24 15:03:47 +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
Joel Bodenmann
825bbf26a1 fixed label bugs 2013-10-24 11:22:36 +10:00
Joel Bodenmann
248335c513 Added gwinLabelSetBorder() 2013-10-24 10:22:48 +10:00
Joel Bodenmann
d41109a6c7 fixed small bug 2013-10-24 09:15:28 +10:00
Joel Bodenmann
8fce1a6fce Added gwinListSetScroll 2013-10-24 09:14:27 +10:00
Joel Bodenmann
6cc80926f0 Added gwinListGetSelectedText() 2013-10-23 17:28:04 +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
Joel Bodenmann
258c97d67d fixed wrong macro 2013-10-20 17:27:42 +02: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
Joel Bodenmann
b3ee216bd2 Updates from main-line code 2013-10-06 15:47:59 +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
d704c2f6d0 New inverse square root accelerated math function 2013-09-24 16:11:29 +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
40ec5a4e52 Fix bug where freed memory is written to. 2013-09-19 08:28:26 +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
9ebd3530fa Merge branch 'master' into fonts 2013-08-01 18:13:59 +10:00
inmarket
118f87afb1 Fix GWIN lists font handling. 2013-08-01 18:13:21 +10:00
inmarket
a2632f0d31 Merge branch 'master' into fonts 2013-08-01 18:07:34 +10:00
inmarket
2e91479bd5 Add image support to GWIN Listboxes.
Updated GWIN widgets demo to match.
2013-08-01 18:05:48 +10:00
inmarket
312e759124 Add GWIN List multi-select support 2013-08-01 15:58:46 +10:00
inmarket
157ec08034 Merge branch 'master' into fonts 2013-08-01 15:06:32 +10:00
inmarket
b0b3539639 Update GWIN list.
Now supports item and page scrolling.
A few bugs fixed.
2013-08-01 14:54:25 +10:00
inmarket
58b5260013 Update some GQUEUE prototypes 2013-08-01 14:53:13 +10:00
inmarket
9d2b0b667b Add color blending to GDISP 2013-08-01 14:52:28 +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
44f3256be3 Merge branch 'master' into list 2013-07-29 16:46:48 +10:00
inmarket
e5b0168d7c Merge branch 'master' into fonts 2013-07-29 16:43:04 +10:00
inmarket
9ed89f9ad3 Change screen clear to match initial screen state (Black) in a non-GWIN situation. 2013-07-29 16:42:24 +10:00
Joel Bodenmann
3af74801dd clear after mouse calibration to avoid silly display 2013-07-29 16:40:05 +10:00
inmarket
319d79f296 Fix text padding of a right aligned checkbox 2013-07-29 16:34:10 +10:00
inmarket
978f8b6c4f Fix compile error in gwinGetPixelColor() 2013-07-29 16:33:57 +10:00
inmarket
34f06cd3c9 Fix compile error in gwinGetPixelColor() 2013-07-29 16:33:20 +10:00
inmarket
20ec12071d Fix text padding of a right aligned checkbox 2013-07-29 16:32:41 +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
Joel Bodenmann
31f3554602 list update 2013-07-28 23:18:59 +02:00
Joel Bodenmann
632566e243 list fix 2013-07-28 15:26:59 +02:00
Joel Bodenmann
30df14b595 Merge branch 'master' into list 2013-07-28 14:13:13 +02:00
Joel Bodenmann
580cf977d0 clear after mouse calibration to avoid silly display 2013-07-28 14:13:05 +02: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
Joel Bodenmann
423c28b40e cleanup 2013-07-28 07:04:04 +02:00
Joel Bodenmann
c66e5cd9cb some more list widget work 2013-07-28 07:00:08 +02:00
Joel Bodenmann
c7fdb5df2a list widget first implementation 2013-07-28 02:06:27 +02:00
Joel Bodenmann
9edb1dab8b compiler warnings 2013-07-28 01:15:36 +02:00
Joel Bodenmann
e4aae7b3f6 fixed typo in GQueue 2013-07-27 23:35:23 +02:00
Joel Bodenmann
40611e264d some more list work 2013-07-27 22:55:32 +02:00
inmarket
984e14efb7 List updates and add list demo - still work in progress 2013-07-27 22:26:16 +10:00
Joel Bodenmann
9dfcbef848 list work in progress 2013-07-27 15:23:52 +02:00
Joel Bodenmann
57eeb16aba list widget - work in progress 2013-07-25 19:15:51 +02:00
inmarket
0194b87efe Missing define for OSX 2013-07-24 13:55:54 +10:00
inmarket
772b4f79d5 Fix to extra button drawing routines 2013-07-24 13:54:45 +10:00
Joel Bodenmann
ea3048ff36 fixed OS-X port (untested) 2013-07-23 18:52:52 +02:00
Joel Bodenmann
95b1597158 removed POSIX, now having dedicated Linux and MAC OS-X ports 2013-07-23 02:12:52 +02:00
Joel Bodenmann
3eb2f4bb97 POSIX port now became Linux and OSX 2013-07-23 00:47:42 +02:00
Joel Bodenmann
fa9a957a38 posix doxygen fix 2013-07-23 00:03:00 +02:00
Joel Bodenmann
e5c6fce1d9 POSIX fix 2013-07-22 13:51:40 +02:00
inmarket
c40021af01 gfxSystemLock() and gfxSystemUnlock() are required for correct operation of some modules even under POSIX. 2013-07-22 17:06:55 +10:00
inmarket
25a0115014 This image wrapper really is meant to be there and is used by some demo apps (notepad-2) 2013-07-22 17:05:42 +10:00
Joel Bodenmann
7b4488267d GOS POSIX fixes 2013-07-22 05:50:31 +02:00
Joel Bodenmann
abca557bab removed a forgotted GDISP wrapper call in GWIN 2013-07-22 04:42:30 +02:00
Joel Bodenmann
73c5ef26f8 fixed license headers 2013-07-21 22:20:37 +02:00
Joel Bodenmann
a675834266 doxygen updates 2013-07-21 22:02:57 +02:00
inmarket
c29950c767 Initial GOS port for POSIX (Linux). Untested. 2013-07-21 17:27:54 +10:00
inmarket
45c8e9052d Small gfxHalt bug fix for Win32 platform 2013-07-21 17:27:11 +10:00
inmarket
2bef5da2f3 Added gfxRealloc() 2013-07-20 21:57:01 +10:00
inmarket
386539072c Image animation changes 2013-07-19 09:37:50 +10:00
Joel Bodenmann
cb28adcfba removed gwinImageNext() since the image box widget now automatically takes care of animated images 2013-07-18 13:51:49 +02:00
Joel Bodenmann
9c23074081 gwinImageNext() fix 2013-07-17 17:50:37 +02:00
Joel Bodenmann
259f822ba7 added list widget dummy 2013-07-17 17:49:21 +02:00
Joel Bodenmann
ceae37b7bf added gwinImageNext() 2013-07-17 05:58:03 +02:00
Joel Bodenmann
d1861f04e0 doxygen update 2013-07-17 04:44:29 +02:00
inmarket
6fe793da88 Fix missing init function for GMISC 2013-07-16 15:29:59 +10:00
inmarket
c5ec720277 Fix enabled visibility bug 2013-07-07 20:11:38 +10:00
inmarket
7f92794b11 Fix image background color bug 2013-07-07 20:11:13 +10:00
inmarket
3957505ab1 GWIN renaming, tidy up, color styles 2013-07-07 19:40:37 +10:00
inmarket
de28112a7d GDISP fix bug in non-multithread 2013-07-07 19:39:17 +10:00
inmarket
5191c278e7 Add Radio buttons (can also be used as a Tab group) 2013-07-06 01:46:34 +10:00
inmarket
ab44f32859 Remove widget structure members when they are not needed for input tracking
Also doco update for Enabled Flag
2013-07-06 01:45:24 +10:00
inmarket
f3f9b7dc01 Fix window manager bug
Window are was not being cleared properly when something was made invisible
2013-07-06 01:42:10 +10:00
inmarket
99c13615c8 Image decoders not setting image type correctly. 2013-07-04 17:00:34 +10:00
inmarket
c059f96d24 Rename gwin base image function to avoid confusion with the image gwin object. 2013-07-04 01:08:47 +10:00
inmarket
f9eed6036d Make the enabled state available to all GWIN's - not just widgets. 2013-07-04 00:59:12 +10:00
inmarket
a7198b53ff Restore gwin base class image function 2013-07-04 00:54:25 +10:00
inmarket
09a359813f Label, Image and Window Manager changes 2013-07-04 00:20:32 +10:00
Joel Bodenmann
3f80e1f89d label work in progress - not working anymore 2013-07-02 19:26:48 +02:00
Joel Bodenmann
ad57ab7967 wip 2013-07-02 08:29:38 +02:00
Joel Bodenmann
931c465265 GLabel work in progress 2013-07-01 19:53:58 +02:00
Joel Bodenmann
f188613d30 fixed image drawing boundries 2013-07-01 17:58:05 +02:00
Joel Bodenmann
6e59a6cf6c image widget first release 2013-07-01 17:40:31 +02:00
inmarket
4afd5ec744 Merge branch 'GWIN' into image 2013-07-01 17:47:35 +10:00
Joel Bodenmann
de27a6c2db image widget implementation work in progress 2013-07-01 10:10:45 +02:00
inmarket
956af8d3cb Merge branch 'master' into GWIN 2013-07-01 17:37:34 +10:00
inmarket
dd43a37b9b Add gdispImageIsOpen() function. 2013-07-01 17:36:47 +10:00
inmarket
57d3632e36 GWIN Init structures are const (read-only to GWIN) 2013-07-01 17:34:13 +10:00
inmarket
8ed9e763c0 GWIN reduce Initialisation parameters and fix visibility issues 2013-06-24 22:58:37 +10:00
inmarket
ed0bac9765 License header updates 2013-06-15 21:37:22 +10:00
inmarket
49b3e8f55a License header updates 2013-06-15 21:09:02 +10:00
inmarket
2cb35d6815 Clean up GWIN Event assignment. Optimise event efficiency. 2013-06-10 17:18:01 +10:00
inmarket
777ec6af7c Add a simple GWIN window manager, Change the way GWIN visibility works 2013-06-08 02:27:59 +10:00
inmarket
663caba662 GWIN fixes 2013-06-06 16:48:30 +10:00
inmarket
7baf5c5d44 New simplified gwin using a pseudo class structure. 2013-06-06 14:33:32 +10:00
Joel Bodenmann
eebecad9f7 checkbox cleanup 2013-06-04 10:23:55 +02:00
Joel Bodenmann
9945b011a9 added custom render interface for checkboxes 2013-06-03 17:36:39 +02:00
Joel Bodenmann
2cd0bc13d5 checkbox event fix 2013-06-03 12:23:12 +02:00
Joel Bodenmann
48b4c6f6ba member state of checkbox is now called isChecked 2013-06-02 18:59:51 +02:00
Joel Bodenmann
446f41297d some more checkbox fixes 2013-06-02 18:52:42 +02:00
Joel Bodenmann
809b8ccc60 GWIN checkbox fix 2013-06-02 18:43:19 +02:00
Joel Bodenmann
dadcf535d4 added default theme 2013-06-02 16:15:46 +02:00
inmarket
e9f60dae38 Fix license issues and GOS issues in TDISP 2013-06-02 18:58:12 +10:00
inmarket
1c258a8273 GOS updates 2013-06-02 18:57:22 +10:00
Joel Bodenmann
0fe42a94b1 added basic implementation of checkboxes (functional) 2013-06-02 06:14:49 +02:00
Joel Bodenmann
d0f5d9c7f9 added basic implementation of checkboxes (functional) 2013-06-02 06:13:28 +02:00
Joel Bodenmann
ebc30c02bc TDISP update 2013-06-01 01:37:53 +02:00
Joel Bodenmann
c4f39fcdde added obsolete #warning to gdispInit() 2013-05-30 16:58:33 +02:00
Joel Bodenmann
a4ca308dd5 added slider enable/disable API 2013-05-27 12:53:34 +02:00
inmarket
8fcbf4e5d5 More GOS module changes
GQUEUE as a seperate module
GOS changes including basic Win32 O/S support
2013-05-26 02:06:55 +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
Joel Bodenmann
757b28531f added enable and disable APIs to high level GWIN code 2013-05-20 16:18:10 +02:00
Joel Bodenmann
92883c795e button fix 2013-05-20 16:04:38 +02:00
Joel Bodenmann
d4e0ce8b70 added gwin enabled parameter and implemented button enable/disable functions 2013-05-20 07:01:20 +02:00
Joel Bodenmann
4d4a78f415 cleanup & tdisp warning fix 2013-05-20 05:59:28 +02:00
Joel Bodenmann
5d4de9e0ee TDISP fixes 2013-05-15 18:02:07 +02:00
Joel Bodenmann
11a71cb080 TDISP fixes 2013-05-15 18:00:42 +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
Andrew Hannam
3374aa25c6 Reinsertion of doxygen headers
Reinsertion of doxygen headers that got lost in license change
2013-05-06 14:44:47 +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
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
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
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
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
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
a2cb02abbf Fix compiler warning 2013-03-08 00:52:33 +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
b91e619573 __inline becomes inline because most compilers dont like the prefix 2013-03-04 23:50:21 +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
57435fb4c2 Fix to allow destroying of gwin buttons 2013-03-02 22:03:40 +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
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
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
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
249a1b345f added tdisp demo 2013-01-11 15:04:33 +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
f2219b5353 doxygen fix 2012-12-21 09:41:01 +01:00
Andrew Hannam
9da1afa34a Using ginput with polling allow thread preemption
GINPUT when being exclusively polled by the application, did not allow
pre-emption of the main thread and therefore some platforms (Win32) the
mouse/toggle stopped working.
2012-12-20 18:32:33 +10: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
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
9c738e00fa ginput/mouse doxygen 2012-12-18 19:46:27 +01:00
Joel Bodenmann
f115d43753 SSD1289 calibration clear fix 2012-12-17 22:33:00 +01:00
Joel Bodenmann
69c2c7ef91 dirty dirty dirty very very dirty reset_viewport for mouse calibration fix 2012-12-17 00:27:01 +01:00
Joel Bodenmann
d47cf26d31 SSD1289 reset_viewport quick fix 2012-12-17 00:16:15 +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
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
ec89b8e82d Fixes to GWIN graph and demo 2012-12-06 22:24:28 +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
1394b41d48 GWIN Button bug fix
GWIN Buttons are now tested and working.
2012-12-02 16:47:11 +10:00
Andrew Hannam
99a9bf45e7 Add support for interrupt driven Toggle Inputs 2012-12-02 16:43:28 +10:00
Andrew Hannam
64ceade60c GINPUT Touch Calibration
Improvements to error detection and displaying that to the user during a
calibration.
Also introduced a hack to allow initialisation of a touch device without
an automatic calibration for when the user application wants to do
something with the raw readings first.
2012-11-30 00:44:24 +10:00
Andrew Hannam
e741d6045b GWIN Console Clear Fix
When a GWIN Console is cleared, set the cursor back to the top left
corner.
2012-11-30 00:41:43 +10:00
Joel Bodenmann
ba08afef3e doxygen 2012-11-26 21:19:32 +01:00
Joel Bodenmann
1aef326a77 src/gwin/button.c macro fix 2012-11-26 20:46:56 +01:00
Joel Bodenmann
f1fb0a9b98 Revert "macro fix on src/gwin/button.c"
This reverts commit b7a8366140.
2012-11-26 19:56:22 +01:00
Joel Bodenmann
b7a8366140 macro fix on src/gwin/button.c 2012-11-26 18:23:29 +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
ac5267af6a touchscreen fix 2012-11-26 00:35:02 +01:00
Joel Bodenmann
9c74a08131 implemented MCU touchscreen driver 2012-11-25 23:33:10 +01:00
Joel Bodenmann
dfb9f92eb1 cleanup of source files 2012-11-21 11:06:04 +01:00
Joel Bodenmann
e0052718e3 typo 2012-11-21 10:22:00 +01:00
Joel Bodenmann
1b30c77ab3 in gwin.c GDISP_SET_CLIP -> GDISP_NEED_CLIP 2012-11-21 10:21:43 +01:00
Joel Bodenmann
cafb454745 GEVENT doxygen 2012-11-19 21:43:22 +01:00
Joel Bodenmann
19d45eaeda GTimer doxygen bugfix 2012-11-19 20:39:20 +01:00
Joel Bodenmann
8515ed53f5 more SSD1289 and touchscreen workaround 2012-11-17 14:05:23 +01:00
Andrew Hannam
d1836d49fe Fix compiler warnings
Fix compiler warnings in gwin.c
2012-11-17 18:24:24 +10:00
Andrew Hannam
59c13aa33b Change dynamic memory allocator in GWIN
Change dynamic memory allocator in GWIN to use the ChibiOS routines
2012-11-17 18:09:11 +10: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
Andrew Hannam
67ae847970 Win32 orientation & gwin console line clear fixes
Fixes to Win32 orientation for scrolling
Improve the way line clearing is handled in gwin consoles.
2012-11-12 18:49:47 +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
e8020a88c9 fixed touchscreen output and removed console code 2012-11-11 15:16:12 +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
44bb28ed92 small doxygen fix 2012-11-11 05:31:48 +01:00
Joel Bodenmann
f05315e0c0 small doxygen fix 2012-11-11 05:11:00 +01:00
Joel Bodenmann
b6c5a0882e GWIN doxygen fix 2012-11-11 04:41:59 +01:00
Joel Bodenmann
ccf7fc3068 cleanup 2012-11-10 18:39:00 +01:00
Tectu
800869979f Merge pull request #15 from mobyfab/master
Inverted touchpad fix
2012-11-10 08:13:05 -08:00
Joel Bodenmann
37b5067de8 small doxygen update 2012-11-10 17:37:44 +01:00
mobyfab
1ba2539b6c Adding TOUCHSCREEN_XY_INVERTED define to the calibration function. 2012-11-10 17:10:19 +01:00
Joel Bodenmann
5f90362261 touchscreen fixes 2012-11-10 17:04:20 +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
995c9835c2 small macro update 2012-11-09 23:10:38 +01:00
Joel Bodenmann
61d2238b25 small cleanup 2012-11-09 01:04:27 +01:00
Kumar Abhishek
f75a2ae91e Touchpad Updates - 3 point calibration support +
Touchpad reads now return coord_t instead of uint16_t
tpTransform function does the calibration transformation instead of
the original functions
2012-11-09 00:41:22 +05:30
Joel Bodenmann
a178db6f13 Revert "doxygen tweaks - not complete yet"
This reverts commit b86c313aa2.
2012-11-07 01:34:39 +01:00
Joel Bodenmann
b86c313aa2 doxygen tweaks - not complete yet 2012-11-06 23:55:45 +01:00
Joel Bodenmann
a39a8427d9 removed doxygen of static internal functions 2012-11-06 23:26:33 +01:00
Joel Bodenmann
8c1ffacd2e small doxygen fix 2012-11-05 20:14:03 +01:00
Joel Bodenmann
fa5ea79150 cleanup of doxygen 2012-11-03 21:03:29 +01:00
Joel Bodenmann
ecc3989355 and the final touch of doxygen... 2012-11-03 03:01:13 +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
397b5074e8 docs 2012-11-02 09:33:56 +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
797f0626ba fixed compiler warnings 2012-10-28 21:38:23 +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
9bcabe082a graphDrawNets() fix 2012-10-25 00:37:46 +02:00
Joel Bodenmann
56b350d096 graph fix 2012-10-25 00:36:15 +02:00
Joel Bodenmann
707ade1f2f graph - added boundary checks 2012-10-24 22:21:49 +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
0004d3824b graphDrawDots() fix 2012-10-24 19:25:35 +02:00
Joel Bodenmann
875edbd44d graph fix 2012-10-24 19:05:16 +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
e121b31a70 graphDrawDot() fix 2012-10-24 17:40:35 +02:00
Joel Bodenmann
03ccc151c3 graphDrawOneQuadrant() fix 2012-10-24 16:47:52 +02:00
Joel Bodenmann
e0c8011553 graph grid drawing fix 2012-10-24 16:38:43 +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
7c4472cd94 added graph dummy 2012-10-24 00:12:50 +02:00
Joel Bodenmann
c51096f8f2 renamed calibration storage interface 2012-10-23 06:30:17 +02:00
Joel Bodenmann
0685eb445a touchpad calibration storage update 2012-10-23 06:19:18 +02:00
Joel Bodenmann
9379d17303 touchpad calibration storage update 2012-10-23 06:10:57 +02:00
Joel Bodenmann
34a64b13c4 whitespaces 2012-10-23 02:57:38 +02:00
Joel Bodenmann
8da73efced SSD1289 setViewPort bugfix 2012-10-23 02:34:20 +02:00
Joel Bodenmann
a4a815f6f3 added delay to gdispControl() to fix some timing issues 2012-10-23 01:25:42 +02:00
Joel Bodenmann
7b277edc59 renamed macros 2012-10-21 01:47:11 +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
9c3b5a0145 console fix 2012-10-13 02:39:17 +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
cf1a759ad6 SCREEN_WIDTH and SCREEN_HEIGHT renamed to GDISP_SCREEN_WIDTH and GDISP_SCREEN_HEIGHT 2012-10-11 01:41:18 +02:00
Joel Bodenmann
b9de7e6ce3 struct cal -> struct cal_t 2012-10-10 13:46:18 +02:00
Joel Bodenmann
db5d270a40 cleanup 2012-10-08 00:26:18 +02:00
mobyfab
424dde2d8c Adding a define for electrically inverted touchpads. 2012-10-07 22:12:09 +02:00
Kumar Abhishek
2702bb4a2d Merge remote-tracking branch 'upstream/master'
Conflicts:
	src/touchpad.c

Fix conflicts
2012-10-05 22:20:45 +05:30
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
Kumar Abhishek
c35988ffb5 Touchpad Issue Fix
Fixed interchanged cases of landscape and landscapeInv in tpReadX()
and tpReadY()
2012-10-04 15:12:57 +05:30
Joel Bodenmann
1003c37e0b cleanups 2012-09-26 20:18:18 +02:00
Joel Bodenmann
68a7d2b754 compiler warning fix 2012-09-26 13:43:04 +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
Joel Bodenmann
bb2da23012 fixed gdispDrawArc() 2012-09-23 00:06:17 +02:00
mobyfab
da83b0955f Some cleaning.
Fixed and tested DMA blitarea for SSD1963.
2012-09-18 22:55:02 +02: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
661d0bb2fe cleanups & docs 2012-08-28 16:39:05 +02:00
Tectu
d71a621790 cleanup 2012-08-28 16:25:22 +02:00
Tectu
2c7cbc1dd7 implemented gdispDrawArc() by noether 2012-08-28 16:24:00 +02:00
Tectu
8fd1de6ef5 first try to implement gdispDrawARC() (not working yet) 2012-08-24 15:54:32 +02:00
Tectu
580c00b8f8 console patch (thanks to inmarket for helping) 2012-08-24 11:37:47 +02:00
Tectu
e24afca5e4 Merge branch 'master' of github.com:Tectu/ChibiOS-LCD-Driver 2012-08-24 02:37:03 +02:00
Tectu
fcfab98517 added gdispDrawArc() and gdispFillArc() dummies 2012-08-24 02:35:28 +02:00
Tectu
bee96e39ad fixed touchpad orientation 2012-08-22 16:33:40 +02:00
Kumar Abhishek
a41a5911e5 Fix compiler warnings
Removed redundant dummy read from high level functions
2012-08-16 15:26:03 +05:30
trsaunders
ee99456a9e fix spelling 2012-08-13 21:53:52 +01:00
trsaunders
61f527498f only enable console code if driver support is available 2012-08-13 21:46:58 +01:00
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