summaryrefslogtreecommitdiffstats
path: root/apps/gui/viewport.c
diff options
context:
space:
mode:
authorThomas Martitz <kugel@rockbox.org>2009-09-05 23:57:09 +0000
committerThomas Martitz <kugel@rockbox.org>2009-09-05 23:57:09 +0000
commitc17037a80266e9e97643e8c34459f3ac81510be0 (patch)
treea28fa4f0bb9339cdd6d900276e4694f8be5a02ee /apps/gui/viewport.c
parenta17d06ccc3b589cfc5eb92edbea3c09494b1ed48 (diff)
downloadrockbox-c17037a80266e9e97643e8c34459f3ac81510be0.tar.gz
rockbox-c17037a80266e9e97643e8c34459f3ac81510be0.zip
Factor out/generalise the function that checks whether a point is within a viewport to, and use it in the wps' touchregion code. This corrects the check that was done there.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22638 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/gui/viewport.c')
-rw-r--r--apps/gui/viewport.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/apps/gui/viewport.c b/apps/gui/viewport.c
index e05cd78970..63f0b8fc20 100644
--- a/apps/gui/viewport.c
+++ b/apps/gui/viewport.c
@@ -401,4 +401,13 @@ static unsigned viewport_init_ui_vp(void)
return ret;
}
+#ifdef HAVE_TOUCHSCREEN
+/* check if a point (x and y coordinates) are within a viewport */
+bool viewport_point_within_vp(const struct viewport *vp, int x, int y)
+{
+ bool is_x = (x >= vp->x && x < (vp->x + vp->width));
+ bool is_y = (y >= vp->y && y < (vp->y + vp->height));
+ return (is_x && is_y);
+}
+#endif /* HAVE_TOUCHSCREEN */
#endif /* HAVE_LCD_BITMAP */