summaryrefslogtreecommitdiff
path: root/apps/plugins
diff options
context:
space:
mode:
authorYoshihisa Uchida <uchida@rockbox.org>2010-06-29 12:23:41 +0000
committerYoshihisa Uchida <uchida@rockbox.org>2010-06-29 12:23:41 +0000
commit470226dbbfc4ca0b61ca33620c06c695d7e55d57 (patch)
tree376cf50915bf3440f613ad86f55973ae2bbdf829 /apps/plugins
parent25f44c2e1f9b12c13cab9eb8bde8e0fe0e3ba5da (diff)
downloadrockbox-470226dbbfc4ca0b61ca33620c06c695d7e55d57.zip
rockbox-470226dbbfc4ca0b61ca33620c06c695d7e55d57.tar.gz
rockbox-470226dbbfc4ca0b61ca33620c06c695d7e55d57.tar.bz2
rockbox-470226dbbfc4ca0b61ca33620c06c695d7e55d57.tar.xz
text viewer: some members of preferences change to bool. And simplify menu setting functions.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27174 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/plugins')
-rw-r--r--apps/plugins/text_viewer/tv_action.c4
-rw-r--r--apps/plugins/text_viewer/tv_display.c11
-rw-r--r--apps/plugins/text_viewer/tv_menu.c56
-rw-r--r--apps/plugins/text_viewer/tv_preferences.c16
-rw-r--r--apps/plugins/text_viewer/tv_preferences.h35
-rw-r--r--apps/plugins/text_viewer/tv_settings.c26
6 files changed, 41 insertions, 107 deletions
diff --git a/apps/plugins/text_viewer/tv_action.c b/apps/plugins/text_viewer/tv_action.c
index 5226d90..b8542da 100644
--- a/apps/plugins/text_viewer/tv_action.c
+++ b/apps/plugins/text_viewer/tv_action.c
@@ -84,7 +84,7 @@ void tv_scroll_up(unsigned mode)
{
offset_page--;
#ifdef HAVE_LCD_BITMAP
- offset_line = (preferences->page_mode == PM_OVERLAP)? 1:0;
+ offset_line = (preferences->overlap_page_mode)? 1:0;
#endif
}
tv_move_screen(offset_page, offset_line, SEEK_CUR);
@@ -100,7 +100,7 @@ void tv_scroll_down(unsigned mode)
{
offset_page++;
#ifdef HAVE_LCD_BITMAP
- offset_line = (preferences->page_mode == PM_OVERLAP)? -1:0;
+ offset_line = (preferences->overlap_page_mode)? -1:0;
#endif
}
tv_move_screen(offset_page, offset_line, SEEK_CUR);
diff --git a/apps/plugins/text_viewer/tv_display.c b/apps/plugins/text_viewer/tv_display.c
index a4b0b22..7c6fdcb 100644
--- a/apps/plugins/text_viewer/tv_display.c
+++ b/apps/plugins/text_viewer/tv_display.c
@@ -114,18 +114,15 @@ static int totalsize;
static void tv_show_header(void)
{
- unsigned header_mode = header_mode;
-
- if (preferences->header_mode == HD_PATH)
+ if (preferences->header_mode)
display->putsxy(header.x, header.y, preferences->file_name);
}
static void tv_show_footer(const struct tv_screen_pos *pos)
{
unsigned char buf[12];
- unsigned footer_mode = preferences->footer_mode;
- if (footer_mode == FT_PAGE)
+ if (preferences->footer_mode)
{
if (pos->line == 0)
rb->snprintf(buf, sizeof(buf), "%d", pos->page + 1);
@@ -262,11 +259,11 @@ void tv_set_layout(bool show_scrollbar)
header.x = 0;
header.y = 1;
header.w = vp_info.width;
- header.h = (preferences->header_mode == HD_PATH)? row_height + 1 : 0;
+ header.h = (preferences->header_mode)? row_height + 1 : 0;
footer.x = 0;
footer.w = vp_info.width;
- footer.h = (preferences->footer_mode == FT_PAGE)? row_height + 1 : 0;
+ footer.h = (preferences->footer_mode)? row_height + 1 : 0;
footer.y = vp_info.height - 1 - footer.h;
drawarea.x = scrollbar_width;
diff --git a/apps/plugins/text_viewer/tv_menu.c b/apps/plugins/text_viewer/tv_menu.c
index 7e706eb..1d1e07f 100644
--- a/apps/plugins/text_viewer/tv_menu.c
+++ b/apps/plugins/text_viewer/tv_menu.c
@@ -37,13 +37,7 @@ static struct tv_preferences new_prefs;
#ifdef HAVE_LCD_BITMAP
static bool tv_horizontal_scrollbar_setting(void)
{
- static const struct opt_items names[] = {
- {"No", -1},
- {"Yes", -1},
- };
-
- return rb->set_option("Horizontal Scrollbar", &new_prefs.horizontal_scrollbar, INT,
- names, 2, NULL);
+ return rb->set_bool("Horizontal Scrollbar", &new_prefs.horizontal_scrollbar);
}
#endif
@@ -79,13 +73,7 @@ MAKE_MENU(horizontal_scroll_menu, "Horizontal", NULL, Icon_NOICON,
#ifdef HAVE_LCD_BITMAP
static bool tv_vertical_scrollbar_setting(void)
{
- static const struct opt_items names[] = {
- {"No", -1},
- {"Yes", -1},
- };
-
- return rb->set_option("Vertical Scrollbar", &new_prefs.vertical_scrollbar, INT,
- names, 2, NULL);
+ return rb->set_bool("Vertical Scrollbar", &new_prefs.vertical_scrollbar);
}
#endif
@@ -100,15 +88,9 @@ static bool tv_vertical_scroll_mode_setting(void)
names, 2, NULL);
}
-static bool tv_page_mode_setting(void)
+static bool tv_overlap_page_mode_setting(void)
{
- static const struct opt_items names[] = {
- {"No", -1},
- {"Yes", -1},
- };
-
- return rb->set_option("Overlap Pages", &new_prefs.page_mode, INT,
- names, 2, NULL);
+ return rb->set_bool("Overlap Pages", &new_prefs.overlap_page_mode);
}
static bool tv_autoscroll_speed_setting(void)
@@ -135,7 +117,7 @@ MENUITEM_FUNCTION(vertical_scrollbar_item, 0, "Scrollbar",
#endif
MENUITEM_FUNCTION(vertical_scroll_mode_item, 0, "Scroll Mode",
tv_vertical_scroll_mode_setting, NULL, NULL, Icon_NOICON);
-MENUITEM_FUNCTION(page_mode_item, 0, "Overlap Pages", tv_page_mode_setting,
+MENUITEM_FUNCTION(overlap_page_mode_item, 0, "Overlap Pages", tv_overlap_page_mode_setting,
NULL, NULL, Icon_NOICON);
MENUITEM_FUNCTION(autoscroll_speed_item, 0, "Auto-Scroll Speed",
tv_autoscroll_speed_setting, NULL, NULL, Icon_NOICON);
@@ -146,7 +128,7 @@ MAKE_MENU(vertical_scroll_menu, "Vertical", NULL, Icon_NOICON,
#ifdef HAVE_LCD_BITMAP
&vertical_scrollbar_item,
#endif
- &vertical_scroll_mode_item, &page_mode_item, &autoscroll_speed_item,
+ &vertical_scroll_mode_item, &overlap_page_mode_item, &autoscroll_speed_item,
&narrow_mode_item);
/* */
@@ -219,37 +201,17 @@ static bool tv_alignment_setting(void)
#ifdef HAVE_LCD_BITMAP
static bool tv_header_setting(void)
{
- static const struct opt_items names[4] =
- {
- {"None", -1},
- {"File path", -1},
- };
-
- return rb->set_option("Show Header", &new_prefs.header_mode, INT,
- names, 2, NULL);
+ return rb->set_bool("Show Header", &new_prefs.header_mode);
}
static bool tv_footer_setting(void)
{
- static const struct opt_items names[4] =
- {
- {"None", -1},
- {"Page Num", -1},
- };
-
- return rb->set_option("Show Footer", &new_prefs.footer_mode, INT,
- names, 2, NULL);
+ return rb->set_bool("Show Footer", &new_prefs.footer_mode);
}
static bool tv_statusbar_setting(void)
{
- static const struct opt_items names[] = {
- {"No", -1},
- {"Yes", -1},
- };
-
- return rb->set_option("Show Statusbar", &new_prefs.statusbar, BOOL,
- names, 2, NULL);
+ return rb->set_bool("Show Statusbar", &new_prefs.statusbar);
}
static bool tv_font_setting(void)
diff --git a/apps/plugins/text_viewer/tv_preferences.c b/apps/plugins/text_viewer/tv_preferences.c
index 7d4fd3c..5e6677e 100644
--- a/apps/plugins/text_viewer/tv_preferences.c
+++ b/apps/plugins/text_viewer/tv_preferences.c
@@ -43,7 +43,7 @@ static bool tv_notify_change_preferences(const struct tv_preferences *oldp)
* - alignment
* - horizontal_scroll_mode
* - vertical_scroll_mode
- * - page_mode
+ * - overlap_page_mode
* - font
* - autoscroll_speed
* - narrow_mode
@@ -99,18 +99,18 @@ void tv_set_default_preferences(struct tv_preferences *p)
p->alignment = AL_LEFT;
p->horizontal_scroll_mode = HS_SCREEN;
p->vertical_scroll_mode = VS_PAGE;
- p->page_mode = PM_NO_OVERLAP;
- p->horizontal_scrollbar = SB_OFF;
- p->vertical_scrollbar = SB_OFF;
+ p->overlap_page_mode = false;
+ p->horizontal_scrollbar = false;
+ p->vertical_scrollbar = false;
#ifdef HAVE_LCD_BITMAP
- p->header_mode = HD_PATH;
- p->footer_mode = FT_PAGE;
+ p->header_mode = true;
+ p->footer_mode = true;
p->statusbar = true;
rb->strlcpy(p->font_name, rb->global_settings->font_file, MAX_PATH);
p->font = rb->font_get(FONT_UI);
#else
- p->header_mode = HD_NONE;
- p->footer_mode = FT_NONE;
+ p->header_mode = false;
+ p->footer_mode = false;
p->statusbar = false;
#endif
p->autoscroll_speed = 1;
diff --git a/apps/plugins/text_viewer/tv_preferences.h b/apps/plugins/text_viewer/tv_preferences.h
index 42d6fb4..bc871a7 100644
--- a/apps/plugins/text_viewer/tv_preferences.h
+++ b/apps/plugins/text_viewer/tv_preferences.h
@@ -29,12 +29,6 @@ enum {
TV_CALLBACK_ERROR,
};
-/* scrollbar_mode */
-enum {
- SB_OFF = 0,
- SB_ON,
-};
-
/* word_mode */
enum {
WM_WRAP = 0,
@@ -55,25 +49,6 @@ enum {
AL_RIGHT,
};
-/* page_mode */
-enum {
- PM_NO_OVERLAP = 0,
- PM_OVERLAP,
-};
-
-/* header_mode */
-enum {
- HD_NONE = 0,
- HD_PATH,
-};
-
-/* footer_mode */
-enum {
-
- FT_NONE = 0,
- FT_PAGE,
-};
-
/* horizontal_scroll_mode */
enum {
HS_SCREEN = 0,
@@ -99,12 +74,12 @@ struct tv_preferences {
unsigned encoding;
- unsigned horizontal_scrollbar;
- unsigned vertical_scrollbar;
+ bool horizontal_scrollbar;
+ bool vertical_scrollbar;
- unsigned page_mode;
- unsigned header_mode;
- unsigned footer_mode;
+ bool overlap_page_mode;
+ bool header_mode;
+ bool footer_mode;
unsigned horizontal_scroll_mode;
unsigned vertical_scroll_mode;
diff --git a/apps/plugins/text_viewer/tv_settings.c b/apps/plugins/text_viewer/tv_settings.c
index 45eac62..2419ae0 100644
--- a/apps/plugins/text_viewer/tv_settings.c
+++ b/apps/plugins/text_viewer/tv_settings.c
@@ -40,7 +40,7 @@
* encoding 1
* vertical_scrollbar 1
* (unused) 1 (for compatibility)
- * page_mode 1
+ * overlap_page_mode 1
* header_mode 1
* footer_mode 1
* scroll_mode 1
@@ -83,7 +83,7 @@
* encoding 1
* vertical_scrollbar 1
* (unused) 1 (for compatibility)
- * page_mode 1
+ * overlap_page_mode 1
* header_mode 1
* footer_mode 1
* scroll_mode 1
@@ -153,45 +153,45 @@ static bool tv_read_preferences(int pfd, int version, struct tv_preferences *pre
prefs->alignment = AL_LEFT;
prefs->encoding = *p++;
- prefs->vertical_scrollbar = *p++;
+ prefs->vertical_scrollbar = (*p++ != 0);
/* skip need_scrollbar */
p++;
- prefs->page_mode = *p++;
+ prefs->overlap_page_mode = (*p++ != 0);
if (version < 7)
{
prefs->statusbar = false;
if (*p > 1)
{
- prefs->header_mode = (*p & 1);
+ prefs->header_mode = ((*p & 1) != 0);
prefs->statusbar = true;
}
else
- prefs->header_mode = *p;
+ prefs->header_mode = (*p != 0);
if (*(++p) > 1)
{
- prefs->footer_mode = (*p & 1);
+ prefs->footer_mode = ((*p & 1) != 0);
prefs->statusbar = true;
}
else
- prefs->footer_mode = *p;
+ prefs->footer_mode = (*p != 0);
p++;
}
else
{
- prefs->header_mode = *p++;
- prefs->footer_mode = *p++;
+ prefs->header_mode = (*p++ != 0);
+ prefs->footer_mode = (*p++ != 0);
}
prefs->vertical_scroll_mode = *p++;
prefs->autoscroll_speed = *p++;
if (version > 2)
- prefs->horizontal_scrollbar = *p;
+ prefs->horizontal_scrollbar = (*p != 0);
else
- prefs->horizontal_scrollbar = SB_OFF;
+ prefs->horizontal_scrollbar = false;
if (version > 3)
prefs->horizontal_scroll_mode = *p++;
@@ -233,7 +233,7 @@ static bool tv_write_preferences(int pfd, const struct tv_preferences *prefs)
*p++ = prefs->vertical_scrollbar;
/* skip need_scrollbar */
p++;
- *p++ = prefs->page_mode;
+ *p++ = prefs->overlap_page_mode;
*p++ = prefs->header_mode;
*p++ = prefs->footer_mode;
*p++ = prefs->vertical_scroll_mode;