aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoel Bodenmann <joel@unormal.org>2013-05-27 12:53:34 +0200
committerJoel Bodenmann <joel@unormal.org>2013-05-27 12:53:34 +0200
commita4ca308dd51bb780ead1e2388bffe391fcef5659 (patch)
tree4948c80d027b5e311200115ec1817a8442d7a13b
parent9c33df953dcc7bcfa1f73a7f3d275ff04e58ed17 (diff)
downloaduGFX-a4ca308dd51bb780ead1e2388bffe391fcef5659.tar.gz
uGFX-a4ca308dd51bb780ead1e2388bffe391fcef5659.tar.bz2
uGFX-a4ca308dd51bb780ead1e2388bffe391fcef5659.zip
added slider enable/disable API
-rw-r--r--include/gwin/slider.h24
-rw-r--r--src/gwin/slider.c7
2 files changed, 31 insertions, 0 deletions
diff --git a/include/gwin/slider.h b/include/gwin/slider.h
index c22dc5f4..9a51d042 100644
--- a/include/gwin/slider.h
+++ b/include/gwin/slider.h
@@ -142,6 +142,16 @@ void gwinSetSliderStyle(GHandle gh, const GSliderDrawStyle *pStyle);
void gwinSliderDraw(GHandle gh);
/**
+ * @brief Enable or disable a button
+ *
+ * @param[in] gh The window handle (must be a slider window)
+ * @param[in] enabled Enable or disable the slider
+ *
+ * @api
+ */
+void gwinSliderSetEnabled(GHandle gh, bool_t enabled);
+
+/**
* @brief Set the callback routine to perform a custom slider drawing.
*
* @param[in] gh The window handle (must be a slider window)
@@ -153,6 +163,20 @@ void gwinSliderDraw(GHandle gh);
void gwinSetSliderCustom(GHandle gh, GSliderDrawFunction fn, void *param);
/**
+ * @brief Enable a slider
+ *
+ * @api
+ */
+#define gwinEnableSlider(gh) gwinSetSliderEnabled( ((GSliderObject *)(gh)), TRUE)
+
+/**
+ * @brief Disable a slider
+ *
+ * @api
+ */
+#define gwinDisableSlider(gh) gwinSetSliderEnabled( ((GSliderObject *)(gh)), FALSE)
+
+/**
* @brief Get the current slider position.
* @return The slider position
*
diff --git a/src/gwin/slider.c b/src/gwin/slider.c
index 7f1e36bc..1f252d77 100644
--- a/src/gwin/slider.c
+++ b/src/gwin/slider.c
@@ -241,6 +241,13 @@ void gwinSetSliderCustom(GHandle gh, GSliderDrawFunction fn, void *param) {
#undef gsw
}
+void gwinSliderSetEnabled(GHandle gh, bool_t enabled) {
+ if (gh->type != GW_SLIDER)
+ return;
+
+ gh->enabled = enabled;
+}
+
void gwinSliderDraw_Std(GHandle gh, bool_t isVertical, coord_t thumbpos, const GSliderDrawStyle *pstyle, void *param) {
(void) param;