aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoel Bodenmann <joel@unormal.org>2014-07-11 20:41:50 +0200
committerJoel Bodenmann <joel@unormal.org>2014-07-11 20:41:50 +0200
commit1fe4bcde39507769255080b5e98c1c09119902f2 (patch)
tree0db0fae1d5263d2d838a6b6dcfeb7f32f3836dc3
parent6bf79fdc18a3deecb989bf92a2229e6893d5fc98 (diff)
downloaduGFX-1fe4bcde39507769255080b5e98c1c09119902f2.tar.gz
uGFX-1fe4bcde39507769255080b5e98c1c09119902f2.tar.bz2
uGFX-1fe4bcde39507769255080b5e98c1c09119902f2.zip
Added gwinDrawThickLine() wrapper for corresponding GDISP call
-rw-r--r--docs/releases.txt1
-rw-r--r--src/gwin/gwin.c6
-rw-r--r--src/gwin/sys_defs.h18
3 files changed, 25 insertions, 0 deletions
diff --git a/docs/releases.txt b/docs/releases.txt
index e0c47c4a..31fe2843 100644
--- a/docs/releases.txt
+++ b/docs/releases.txt
@@ -10,6 +10,7 @@ FEATURE: Added Linux-Framebuffer board definition
FEATURE: Added FatFS support for GFILE
FEATURE: Added gfileMount() and gfileUnmount()
FEATURE: Added gfileSync()
+FEATURE: Added gwinDrawThickLine()
*** Release 2.1 ***
diff --git a/src/gwin/gwin.c b/src/gwin/gwin.c
index e1625b13..ab2e2981 100644
--- a/src/gwin/gwin.c
+++ b/src/gwin/gwin.c
@@ -226,6 +226,12 @@ void gwinDrawLine(GHandle gh, coord_t x0, coord_t y0, coord_t x1, coord_t y1) {
_gwinDrawEnd(gh);
}
+void gwinDrawThickLine(GHandle gh, coord_t x0, coord_t y0, coord_t x1, coord_t y1, coord_t width, bool_t round) {
+ if (!_gwinDrawStart(gh)) return;
+ gdispGDrawThickLine(gh->display, gh->x+x0, gh->y+y0, gh->x+x1, gh->y+y1, gh->color, width, round);
+ _gwinDrawEnd(gh);
+}
+
void gwinDrawBox(GHandle gh, coord_t x, coord_t y, coord_t cx, coord_t cy) {
if (!_gwinDrawStart(gh)) return;
gdispGDrawBox(gh->display, gh->x+x, gh->y+y, cx, cy, gh->color);
diff --git a/src/gwin/sys_defs.h b/src/gwin/sys_defs.h
index 830827b2..169b4498 100644
--- a/src/gwin/sys_defs.h
+++ b/src/gwin/sys_defs.h
@@ -601,6 +601,24 @@ extern "C" {
void gwinDrawLine(GHandle gh, coord_t x0, coord_t y0, coord_t x1, coord_t y1);
/**
+ * @brief Draw a thick line in the window
+ * @details The line thickness is specified in pixels. The line ends can
+ * be selected to be either flat or round.
+ * @note Uses gdispGFillConvexPoly() internally to perform the drawing.
+ * @note Uses the current foreground color to draw the line
+ *
+ * @param[in] gh The window handle
+ * @param[in] x0,y0 The start position
+ * @param[in] x1,y1 The end position
+ * @param[in] color The color to use
+ * @param[in] width The width of the line
+ * @param[in] round Use round ends for the line
+ *
+ * @api
+ */
+ void gwinDrawThickLine(GHandle gh, coord_t x0, coord_t y0, coord_t x1, coord_t y1, coord_t width, bool_t round);
+
+ /**
* @brief Draw a box in the window
* @note Uses the current foreground color to draw the box
* @note May leave GDISP clipping to this window's dimensions