summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Martitz <kugel@rockbox.org>2013-12-28 15:10:46 +0100
committerThomas Martitz <kugel@rockbox.org>2014-01-07 11:49:53 +0100
commit5752d029fd80e87fe522d7d5e952a56dc371d65e (patch)
tree6ae883172947987e0ba5eb59259db9437dedfc1e
parentbc9a45b05f2b16e3413e53db5a33515c68933738 (diff)
downloadrockbox-5752d02.tar.gz
rockbox-5752d02.zip
icons: Provide accessors to the icon format (mono or native).
This is needed by the upcoming put_line() api to apply different drawmodes depending on the format. Change-Id: I626a7369a6e75c9c46af1ca5e4f1a9d401899b68
-rw-r--r--apps/gui/icon.c14
-rw-r--r--apps/gui/icon.h8
2 files changed, 22 insertions, 0 deletions
diff --git a/apps/gui/icon.c b/apps/gui/icon.c
index e943338af5..73f37e5140 100644
--- a/apps/gui/icon.c
+++ b/apps/gui/icon.c
@@ -277,3 +277,17 @@ int get_icon_height(enum screen_type screen_type)
{
return ICON_HEIGHT(screen_type);
}
+
+#if (LCD_DEPTH > 1) || defined(HAVE_REMOTE_LCD) && (LCD_REMOTE_DEPTH > 1)
+int get_icon_format(enum screen_type screen)
+{
+ const struct bitmap *iconset;
+
+ if (iconsets[Iconset_user][screen].loaded)
+ iconset = &iconsets[Iconset_user][screen].bmp;
+ else
+ iconset = inbuilt_iconset[screen];
+
+ return iconset->format;
+}
+#endif
diff --git a/apps/gui/icon.h b/apps/gui/icon.h
index 9304ad9077..e095ccfc4c 100644
--- a/apps/gui/icon.h
+++ b/apps/gui/icon.h
@@ -113,6 +113,14 @@ void icons_init(void);
#else
int get_icon_width(enum screen_type screen_type);
int get_icon_height(enum screen_type screen_type);
+int get_icon_format(enum screen_type screen_type);
+#endif
+
+#if (LCD_DEPTH > 1) || defined(HAVE_REMOTE_LCD) && (LCD_REMOTE_DEPTH > 1) \
+ && !defined(HAVE_LCD_CHARCELLS)
+int get_icon_format(enum screen_type screen_type);
+#else
+# define get_icon_format(a) FORMAT_MONO
#endif