diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/gwin/slider.c | 4 | ||||
-rw-r--r-- | src/gwin/sys_defs.h | 18 |
2 files changed, 22 insertions, 0 deletions
diff --git a/src/gwin/slider.c b/src/gwin/slider.c index 4c91ede6..ace90365 100644 --- a/src/gwin/slider.c +++ b/src/gwin/slider.c @@ -262,6 +262,10 @@ void gwinSliderSetPosition(GHandle gh, int pos) { if (gh->vmt != (gwinVMT *)&sliderVMT) return; + // do not change the position if disabled + if (!gwinGetEnabled(gh)) + return; + if (gsw->min <= gsw->max) { if (pos < gsw->min) gsw->pos = gsw->min; else if (pos > gsw->max) gsw->pos = gsw->max; diff --git a/src/gwin/sys_defs.h b/src/gwin/sys_defs.h index ac2c98c7..f4e1c2f7 100644 --- a/src/gwin/sys_defs.h +++ b/src/gwin/sys_defs.h @@ -337,6 +337,24 @@ extern "C" { void gwinSetEnabled(GHandle gh, bool_t enabled); /** + * @brief Enables a widget + * + * @param[in] gh The window handle + * + * @api + */ + #define gwinEnable(gh) gwinSetEnabled(gh, TRUE); + + /** + * @brief Disables a widget + * + * @param[in] gh The window handle + * + * @api + */ + #define gwinDisable(gh) gwinSetEnabled(gh, FALSE); + + /** * @brief Gets the enabled state of a window * @return TRUE if enabled * |