summaryrefslogtreecommitdiff
path: root/apps/plugins/text_viewer/tv_preferences.h
diff options
context:
space:
mode:
authorYoshihisa Uchida <uchida@rockbox.org>2010-06-05 10:30:08 +0000
committerYoshihisa Uchida <uchida@rockbox.org>2010-06-05 10:30:08 +0000
commitfdba8404503af0448586615330a7b27f2ced531c (patch)
treebb15677a7a720675ac2666f11e62042f3b2639ad /apps/plugins/text_viewer/tv_preferences.h
parent991e92fd3dc15f1e365761264c26305559ddb0a4 (diff)
reworks text viewer plugin. (FS#11209)
new text viewer plugin: text_viewer.rock. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26571 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/plugins/text_viewer/tv_preferences.h')
-rw-r--r--apps/plugins/text_viewer/tv_preferences.h129
1 files changed, 129 insertions, 0 deletions
diff --git a/apps/plugins/text_viewer/tv_preferences.h b/apps/plugins/text_viewer/tv_preferences.h
new file mode 100644
index 0000000000..64ab0d102f
--- /dev/null
+++ b/apps/plugins/text_viewer/tv_preferences.h
@@ -0,0 +1,129 @@
+/***************************************************************************
+ * __________ __ ___.
+ * Open \______ \ ____ ____ | | _\_ |__ _______ ___
+ * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
+ * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
+ * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
+ * \/ \/ \/ \/ \/
+ * $Id$
+ *
+ * Copyright (C) 2002 Gilles Roux
+ * 2003 Garrett Derner
+ * 2010 Yoshihisa Uchida
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ****************************************************************************/
+#ifndef PLUGIN_TEXT_VIEWER_PREFERENCES_H
+#define PLUGIN_TEXT_VIEWER_PREFERENCES_H
+
+struct tv_preferences {
+ enum {
+ WRAP = 0,
+ CHOP,
+ } word_mode;
+
+ enum {
+ NORMAL = 0,
+ JOIN,
+ EXPAND,
+ REFLOW,
+ } line_mode;
+
+ enum {
+ NARROW = 0,
+ WIDE,
+ } view_mode;
+
+ enum {
+ LEFT = 0,
+ RIGHT,
+ } alignment;
+
+ enum codepages encoding;
+
+ enum {
+ SB_OFF = 0,
+ SB_ON,
+ } scrollbar_mode;
+
+ enum {
+ NO_OVERLAP = 0,
+ OVERLAP,
+ } page_mode;
+
+ enum {
+ HD_NONE = 0,
+ HD_PATH,
+ HD_SBAR,
+ HD_BOTH,
+ } header_mode;
+
+ enum {
+ FT_NONE = 0,
+ FT_PAGE,
+ FT_SBAR,
+ FT_BOTH,
+ } footer_mode;
+
+ enum {
+ PAGE=0,
+ LINE,
+ } scroll_mode;
+
+ int autoscroll_speed;
+
+ unsigned char font_name[MAX_PATH];
+#ifdef HAVE_LCD_BITMAP
+ struct font *font;
+#endif
+ unsigned char file_name[MAX_PATH];
+};
+
+/*
+ * return the preferences
+ *
+ * return
+ * the pointer the preferences
+ */
+const struct tv_preferences *tv_get_preferences(void);
+
+/*
+ * change the preferences
+ *
+ * [In] new_prefs
+ * new preferences
+ */
+void tv_set_preferences(const struct tv_preferences *new_prefs);
+
+/*
+ * copy the preferences
+ *
+ * [Out] copy_prefs
+ * the preferences in copy destination
+ */
+void tv_copy_preferences(struct tv_preferences *copy_prefs);
+
+/*
+ * set the default settings
+ *
+ * [Out] p
+ * the preferences which store the default settings
+ */
+void tv_set_default_preferences(struct tv_preferences *p);
+
+/*
+ * register the function to be executed when the current preferences is changed
+ *
+ * [In] listner
+ * the function to be executed when the current preferences is changed
+ */
+void tv_add_preferences_change_listner(void (*listner)(const struct tv_preferences *oldp));
+
+#endif