summaryrefslogtreecommitdiff
path: root/firmware/export/lcd-remote.h (follow)
Commit message (Collapse)AuthorAge
* put_line/scrolling: Make the scroll engine inform custom scrollers about ↵Thomas Martitz2014-01-12
| | | | | | | | | | | | | | | | | | | | | start/stop of scrolling. With the new lcd_putsxy_scroll_func() code can register custom scroll functions (put_line() makes use of that). In order for the custom scroller to be able to properly manage its userdata pointer (set via struct scrollinfo::userdata) the scroll engine must inform the scroller about start and stop of scrolling. To inform about start the lcd_scroll_* functions now return true when the line will scroll. To inform about stop the scroll engine calls into the scroller one last time, with the text set to NULL. put_line() can use this to release the userdata registered per scrolling line so that it can be recycled. This fixes that some scrolling lines became glitchy after some time because the userdata was recycled too early. Change-Id: Iff0a6ce2a4f9ae2bada1b8e62f4f5950224942a9
* lcd-common/scroll_engine: Remove unused functions lcd_puts_style_xyoffset() ↵Thomas Martitz2014-01-07
| | | | | | | | | | | | | and lcd_puts_scroll_style_xyoffset(). With this functions removed there is no exported function in firmware left that draws line decorations. Also no function supports specifying an y-offset anymore (was used for pixel accurate positioning of otherwise strictly line-based API calls). Both should be handled in apps/ now. Change-Id: Iba4b28ccc6e686c7db63e34b51ad4badae983fce
* lcd-common/scroll_engine: Remove unused functions lcd_puts_scroll_style().Thomas Martitz2014-01-07
| | | | Change-Id: Ia4f943b3738ab6e66b0e3f1507c629b36d7eba94
* lcd-common: Remove unused function lcd_puts_style_offset().Thomas Martitz2014-01-07
| | | | Change-Id: I24da23d132f933fe647416dc58e8f50879715423
* lcd-common: Remove unused function lcd_puts_style().Thomas Martitz2014-01-07
| | | | Change-Id: Id2c64c116f79b8e61a7af49b9072b3e884ffb455
* lcd-common: Remove unused function lcd_puts_offset().Thomas Martitz2014-01-07
| | | | Change-Id: I39749bf3db915e5a8ddb6e6f25eb201ea0aaf981
* lcd-common/scroll_engine: Remove unused functions lcd_puts_scroll_offset() ↵Thomas Martitz2014-01-07
| | | | | | and lcd_puts_scroll_style_offset(). Change-Id: Ia84ae88020d06a1cb634942ab5e635fd5d10ac66
* lcd-common/scroll_engine: Introduce lcd_putsxy_scroll_func().Thomas Martitz2014-01-07
| | | | | | | | | | | This function supports installing a custom scroll callback. This will be called when the scrollengine redraws the line. It allows to draw extended styles (or anything your can possible imagine) along with the text. It is also strictly pixel-based, the first pixel-based function that supports scrolling. Change-Id: I57f81ac7b3d08b877aea4cb8afa882f175ebcdfc
* scroll_engine: Add STYLE_NONE to allow for drawing lines without styling.Thomas Martitz2013-12-14
| | | | | | | This allows to draw lines without destroying styles that were drawn manually (e.g. from apps/) beforehand. Change-Id: I0de290c9343061efb115e1b76da5b76395c2b2af
* scroll_engine: Rename scroll_stop* functions to be more consistent with the ↵Thomas Martitz2013-12-14
| | | | | | lcd api. Change-Id: I8ada10b96bfb628cca0331689e8b936ae47c7e1c
* Add the 9 segment lcd funciton to remote lcdsJonathan Gordon2012-12-09
| | | | Change-Id: I00f9a067522624a87befcf95a811b49ad685029c
* lcd/skin_engine: Add the ability to draw onto the backdrop layerJonathan Gordon2012-02-28
| | | | | | | | | | | | | | The framebuffer the lcd driver uses can now be changed on the fly which means that regular lcd_* drawing functions can draw onto the "backdrop" buffer. The skin engine can use this to create layered effects. Add the tag %VB to a viewport to draw that viewport onto the backdrop layer. If you want to draw an image onto the backdrop framebuffer use %x(backdrop filename) instead of %X() inside a viewport with %VB. Change-Id: I741498e2af6d4f2d78932cabe8942317893e7cfc
* lcd drivers: Convert lcd_[remote_]framebuffer to a pointerJonathan Gordon2012-02-28
| | | | | | | | | | Change all lcd drivers to using a pointer to the static framebuffer instead of directly accessing the static array. This will let us later do fun things like dynamic framebuffer sizes (RaaA) or ability to use different buffers for different layers (dynamic skin backdrops!) Change-Id: I0a4d58a9d7b55e6c932131b929e5d4c9f9414b06
* lcd-remote-target.h: Use only in firmware/target/Rafaël Carré2012-01-07
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31614 a1c6a512-1295-4272-9138-f99709370657
* remote_detect(): move to lcd-remote.hRafaël Carré2012-01-07
| | | | | | Reorganize lcd-remote.h so it works for iaudio-m3 too git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31605 a1c6a512-1295-4272-9138-f99709370657
* move lcd remote common declarations to lcd-remote.hRafaël Carré2012-01-07
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31604 a1c6a512-1295-4272-9138-f99709370657
* TARGET_TREE is not needed anymoreRafaël Carré2012-01-07
| | | | | | spotted by jhMikeS git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31597 a1c6a512-1295-4272-9138-f99709370657
* Add new lcd_bmp and lcd_bmp_part APIs.Thomas Martitz2011-11-08
| | | | | | | | This new APIs wrap around lcd_[mono|transparent]_bitmap/_part calls and handle all kinds bitmaps. The intended use is to draw bitmaps that come from read_bmp_fd/_file. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30936 a1c6a512-1295-4272-9138-f99709370657
* Forgot to update lcd-remote.hThomas Martitz2010-10-11
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28243 a1c6a512-1295-4272-9138-f99709370657
* Rename {draw,fill}_viewport once more (to draw_border_viewport and ↵Thomas Martitz2010-10-11
| | | | | | | | fill_viewport) and remove the viewport parameter as suggested by Dave Chapman. The parameter wasn't used yet and it's not clear whether it should be a absolute or relative viewport. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28242 a1c6a512-1295-4272-9138-f99709370657
* Add _rect to {draw,fill}_viewport as suggested by Jonathan Gordon to reduce ↵Thomas Martitz2010-10-10
| | | | | | the chance to confuse it with update_viewport(). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28240 a1c6a512-1295-4272-9138-f99709370657
* Two new lcd/multi screen api convinience functions: draw_viewport(), ↵Thomas Martitz2010-10-10
| | | | | | | | | fill_viewport(). They work as the drawrect/fillrect pendants but work on a viewport basis; pass NULL to draw the current viewport (the one set with set_viewport()). In conjunction with action_get_touchscreen_press_in_vp() it should be less of a pain to draw buttons and get presses on them. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28239 a1c6a512-1295-4272-9138-f99709370657
* Fix targets with remote display, forgot to add the new functions to their ↵Thomas Martitz2010-10-06
| | | | | | header. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28215 a1c6a512-1295-4272-9138-f99709370657
* Implement lcd(_remote)_putsxyf() and export to pluginsRafaël Carré2010-08-28
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27921 a1c6a512-1295-4272-9138-f99709370657
* Revise r23225 a bit, removing the debug_printf function and implementing ↵Nils Wallménius2009-10-17
| | | | | | more generic lcd_(remote)_putsf function(s) instead and use those in more places git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23233 a1c6a512-1295-4272-9138-f99709370657
* Latest work on the bmp on-load scaler:Andrew Mahone2008-12-26
| | | | | | | | | | | | | | | | | | | | | | | | | Macros for calculating size needed for bitmap load and scaling, so that these can be compile-time constant when their inputs are. Reduce size of bayer dither by chopping all but first row of dither matrix, and replacing 2D lookup with 1D lookup and small calculation. Move some functions not related to actual bmp file loading out of bmp.c. A smaller brightness() for mono targets, and a higher-quality one for greyscale targets, both replacing the division by 10 with a shift. Port of the linear and area scalers to greyscale targets, this costs some binsize but produces better output even when dithered to 2bpp. Move duplicated row output code from inside vertical scalers to a separate row output function. Move some multiplies out of the line scaler, for a small speedup and code size reduction, as well as a small improvement in accuracy for the upscaling case. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19592 a1c6a512-1295-4272-9138-f99709370657
* Updated our source code header to explicitly mention that we are GPL v2 orDaniel Stenberg2008-06-28
| | | | | | | | | later. We still need to hunt down snippets used that are not. 1324 modified files... http://www.rockbox.org/mail/archive/rockbox-dev-archive-2008-06/0060.shtml git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17847 a1c6a512-1295-4272-9138-f99709370657
* FS#9051 - remove LCD margins... use viewports if you need them...Jonathan Gordon2008-06-23
| | | | | | | | | | | NOTE to WPS people.... %m has been removed, but (i think) because of the other %m tags it wont fail if you try loading a wps with %m|..|, it will just be ignored. Also note that if the statusbar is enabled the default viewport is 8 pixels shorter than when its not, i.e (0,0) is really (0,8) if the statusbar is shown... I dont think this will be a major issue because almost no WPS show the bar and use bitmaps... text only WPS shouldnt be affected. Please report problem screens in http://forums.rockbox.org/index.php?topic=17358.0 git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17763 a1c6a512-1295-4272-9138-f99709370657
* Convert the whole codebase to UTF-8, except docs/COMMITTERS and ↵Nicolas Pennequin2008-05-05
| | | | | | tools/creative.c, which need checking. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17369 a1c6a512-1295-4272-9138-f99709370657
* Major cleanup of checkwps - fix all warnings and add a script to build ↵Dave Chapman2008-03-26
| | | | | | versions for all supported targets (plus some unsupported ones). You now need to run the version of checkwps that matches the device your WPS is for. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16831 a1c6a512-1295-4272-9138-f99709370657
* Make the LCD remote work in the iAudio M3, M5 and X5 bootloaders. * Fix ↵Jens Arnold2008-03-12
| | | | | | viewport related init bug in the 2 bit vertically interleaved LCD driver. * Fix low bat warning in iaudio bootloader - voltages are in millivolts now. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16648 a1c6a512-1295-4272-9138-f99709370657
* Add the viewport functions to the screens API, including a new getfont() ↵Dave Chapman2008-01-08
| | | | | | function to return the font used by the current viewport. A change to the screens API makes the plugin API incompatible, so we bump version and sort. Also commit the test_viewports plugin (not built by default). This is some more of FS#8385. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16022 a1c6a512-1295-4272-9138-f99709370657
* Add viewport capabilities to all the LCD drivers, and adapt scrolling code. ↵Dave Chapman2008-01-07
| | | | | | This is the firmware/ part of FS#8385 - the changes to the WPS code still need more work and will be committed at a later date. NOTE: There are no user-visible changes with this commit - just the infrastructure. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16018 a1c6a512-1295-4272-9138-f99709370657
* Remove the "invert scroll" code since it's not used anywhere anymore (and it ↵Antoine Cellerier2007-10-15
| | | | | | was broken on color targets with gradients anyway). Closes FS #7875. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15125 a1c6a512-1295-4272-9138-f99709370657
* Enable a lot more features for simulators and add stubs where necessary, ↵Nils Wallménius2007-08-12
| | | | | | simulators should now work with identical lng and voice files as the respective target git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14299 a1c6a512-1295-4272-9138-f99709370657
* Fix warnings and errors. Remove some added stuff that wasn't needed afterall.Michael Sevakis2007-07-28
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14036 a1c6a512-1295-4272-9138-f99709370657
* Scroll on main and remote with a single thread. Change the way system ↵Michael Sevakis2007-07-28
| | | | | | messages are defined before running out is an issue (which requires a full update of rockbox on the player). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14035 a1c6a512-1295-4272-9138-f99709370657
* Give color targets the ability to display each LCD line a different color ↵Brandon Low2007-06-17
| | | | | | and use this newfangled ability to provide themable colored file types. See the comments on read_color_theme_file and the sample.colors file provided for how to use this. .colors files go in themes directory for now. This separate line color function should be trivial to add to menus and wpss. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13656 a1c6a512-1295-4272-9138-f99709370657
* Add backdrop support for LCD remotes with depth > 1-bit. Only WPS backdrops, ↵Nicolas Pennequin2007-04-25
| | | | | | but the groundwork is laid for main backdrops too (all that's really needed are menus to set/clear them). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13263 a1c6a512-1295-4272-9138-f99709370657
* Move target specific parts of the H100 remote LCD driver to target tree.Jens Arnold2007-02-25
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12485 a1c6a512-1295-4272-9138-f99709370657
* Introduced LCD_FBHEIGHT in addition to the already existing LCD_FBWIDTH to ↵Jens Arnold2007-02-20
| | | | | | ease framebuffer handling a bit. Added equivalent definitions for the remote LCD. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12419 a1c6a512-1295-4272-9138-f99709370657
* Backdrop support in the X5 remote LCD driver. Still needs to be wired to the ↵Jens Arnold2006-11-26
| | | | | | UI and settings. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11601 a1c6a512-1295-4272-9138-f99709370657
* Removed anachronisms introduced with low battery shutdown patch.Michael Sevakis2006-11-14
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11524 a1c6a512-1295-4272-9138-f99709370657
* Removed remnants of deprecated lcd_roll().Jens Arnold2006-10-31
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11409 a1c6a512-1295-4272-9138-f99709370657
* Added a small interface to screens to translate colors into remote gray ↵Michael Sevakis2006-10-14
| | | | | | levels on the x5. Splash screens paint properly with light gray. Should be adapted to a more general approach in the future. A few trailing whitespace trimmings got into a couple files but that is fine. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11218 a1c6a512-1295-4272-9138-f99709370657
* Add a define for unplugged remoteHristo Kovachev2006-07-28
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10354 a1c6a512-1295-4272-9138-f99709370657
* LCD drivers: * Slight speedup for 2bit greyscale drivers. Use the same ↵Jens Arnold2006-07-28
| | | | | | scrolltext drawing anywhere. * Cleanup, fixes and definitions in preparation for X5 remote. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10346 a1c6a512-1295-4272-9138-f99709370657
* Remote type autodetection on iriver, remote_type() returns ↵Linus Nielsen Feltzing2006-02-17
| | | | | | REMOTETYPE_H100_LCD, REMOTETYPE_H300_LCD or REMOTETYPE_H300_NONLCD git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8721 a1c6a512-1295-4272-9138-f99709370657
* Horizontal screen scrolling part 3 (by Shachar Liberman)Brandon Low2006-01-22
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8414 a1c6a512-1295-4272-9138-f99709370657
* Horizontal scrolling patch by Shachar LibermanTomas Salfischberger2006-01-22
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8412 a1c6a512-1295-4272-9138-f99709370657