rockbox/apps/plugins/text_viewer
Yoshihisa Uchida 240b198d65 text viewer: can display the horizontal scroll bar.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26620 a1c6a512-1295-4272-9138-f99709370657
2010-06-06 10:52:19 +00:00
..
readme.txt text viewer: can display the horizontal scroll bar. 2010-06-06 10:52:19 +00:00
SOURCES
text_viewer.c text viewer: can be selected the number of screens per page. 2010-06-06 08:44:27 +00:00
text_viewer.make
tv_action.c
tv_action.h reworks text viewer plugin. (FS#11209) 2010-06-05 10:30:08 +00:00
tv_bookmark.c
tv_bookmark.h
tv_button.h
tv_menu.c text viewer: can display the horizontal scroll bar. 2010-06-06 10:52:19 +00:00
tv_menu.h
tv_pager.c
tv_pager.h
tv_preferences.c text viewer: can display the horizontal scroll bar. 2010-06-06 10:52:19 +00:00
tv_preferences.h text viewer: can display the horizontal scroll bar. 2010-06-06 10:52:19 +00:00
tv_reader.c
tv_reader.h
tv_screen_pos.c
tv_screen_pos.h
tv_settings.c text viewer: can display the horizontal scroll bar. 2010-06-06 10:52:19 +00:00
tv_settings.h
tv_text_processor.c
tv_text_processor.h
tv_text_reader.c
tv_text_reader.h
tv_window.c text viewer: can display the horizontal scroll bar. 2010-06-06 10:52:19 +00:00
tv_window.h

about the text viewer plugin.

Limitation
    for the target which PLUGIN_BUFFER_SIZE < 0x13000 (i.e., archos series),
    can only be read up to 999 pages.


Difference between viewer.rock
    [settings file]
       - the global setting, 'tv_global.dat' is stored.
       - Settings and bookmarks for each file, 'tv_file.dat' is stored.

      Note: when viewer.dat(viewer_file.dat) exists, tv_global.dat(tv_file.dat) is created by
            using viewer.dat(viewer_file.dat).

    [wod wrap]
          - add the following characters which can be split the line.
                '!', ',', '.', ':', ';', '?', 
                U+00b7, U+2010, U+3000, U+3001, U+3002, U+30fb, U+30fc, 
                U+ff01, U+ff0c, U+ff0d, U+ff0e, U+ff1a, U+ff1b, U+ff1f.

          - when the line split, if the line length is short ( < 0.75 * display width), 
            split the line in display width. (thus, maybe split a word)

    [line mode]
       [join]
           - break line condition has changed.
               - If the next line is a blank line or spaces only line, this line breaks.

       [reflow]
           - indent changes two spaces.
           - supports the player which does not define HAVE_LCD_BITMAP.

    [alignment]
           - the right alignment supports the player which does not define HAVE_LCD_BITMAP.

    [bookmark]
           - increased to 16 the number of bookmarks that can be registered.


TODO list
  - for the target which PLUGIN_BUFFER_SIZE < 0x13000 (i.e., archos series),   
    supports more than 999 pages of text.

  - add History feature.

  - when the line_mode is reflow, allow to specify indent spaces.

  - for the horizontal scroll, allow the select scroll by screen/scroll by column for the settings menu.

  - draw images that are linked to the text. (<img src="...">)

  - play audios that are linked to the text. (<audio src="...">)

  - more treatments of line breaking, word wrappings.
    (for example, period does not appear the top of line.)

  - whether scroll to prev/next page or scroll to top page/bottom page can be select the settings menu.