rockbox/apps/plugins/imageviewer
Solomon Peachy 2a471e288c New port: AIGO EROS Q / EROS K
The Q and K have a slightly different case, but the hardware under the
shell is completely identical.

These models are rebadged versions:

 * Hifiwalker H2   (== Q)
 * AGPTek H3       (== K)
 * Surfans F20     (== K)

Other notes:

  * Significant improvements in the shared Hiby-platform launcher/loader
    * SD card can theoretically be hot-swapped now
    * Support external USB mass storage!
  * Some consolidation of Hiby-platform targets
  * Some consolidation of plugin keymaps

Todo/known issues:

 * Keymaps need to be gone over properly
 * Convert to HAVE_SCROLLWHEEL?

Change-Id: I5a8a4f22c38a5b69392ca7c0a8ad8c4e07d9523c
2020-10-11 16:37:17 -04:00
..
bmp imageviewer: gif viewer based on giflib-5.0.2 2012-11-13 18:13:10 +01:00
gif imageviewer: Fix potential null pointer dereference 2020-06-30 21:12:12 +00:00
jpeg [1/4] Remove SH support and all archos targets 2020-07-24 21:20:13 +00:00
png Limit more variables to file scope 2015-01-11 21:40:51 +01:00
ppm lcd-24bit: Introduce a 24-bit mid-level LCD driver 2014-06-21 00:15:53 +02:00
image_decoder.c imageviewer: gif viewer based on giflib-5.0.2 2012-11-13 18:13:10 +01:00
image_decoder.h imageviewer: gif viewer based on giflib-5.0.2 2012-11-13 18:13:10 +01:00
imageviewer.c voice: rename mp3_play_* functions to voice_play_* 2020-09-20 14:52:30 +00:00
imageviewer.h imageviewer: gif viewer based on giflib-5.0.2 2012-11-13 18:13:10 +01:00
imageviewer.make Refactor and unify objcopy calls in the build system. Also now properly handles DEBUG builds on hosted targets to keep debug symbols if necessary. 2012-04-04 21:48:19 +02:00
imageviewer_button.h New port: AIGO EROS Q / EROS K 2020-10-11 16:37:17 -04:00
readme.txt image viewer: add quick guide describing how to add image decoder. also improve comments. 2011-01-16 12:45:11 +00:00
SOURCES
SUBDIRS imageviewer: gif viewer based on giflib-5.0.2 2012-11-13 18:13:10 +01:00

this document describes how to add new image decoder.

1. create a directory which name is your image decoder's name and put source files
 under the directory.
'const struct image_decoder image_decoder' and 'IMGDEC_HEADER' must be declared in
 one of your source files.
see imageviewer.h for the detail of struct image_decoder.

2. add the directory name to apps/plugins/imageviewer/SUBDIR so that the decoder
 is built.
if the decoder is supported by particular targets, surround it with #if directive.
e.g. if the decoder supports color LCD targets only,
#ifdef HAVE_LCD_COLOR
bmp
#endif

3. append appropriate entry to enum image_type in image_decoder.h, decoder_names
 and ext_list in image_decoder.c so that the imageviewer plugin can recognize
 the decoder.
if the decoder is supported by particular targets, surround them with same #if
 directive in SUBDIR.

4. add entry to apps/plugins/viewers.config
 (in format: file_extension,viewer/imageviewer) so that the file with specified 
 file extension will be opened by image viewer plugin.
if the decoder is supported by particular targets, surround it with same #if
 directive in SUBDIR.

5. add entry to apps/plugins/CATEGORIES (in format: decoder_name,viewer) so
 that the build file is copied to viewers directory.
DON'T surround this with #if directive.


notes:
if you need to use greylib functions to draw image, add the functions to
 struct imgdec_api just like gray_bitmap_part because GREY_INFO_STRUCT is
 declared in imageviewer and is not available from the decoder.