From 31f355460248b2d39969590feefc9482e53c451f Mon Sep 17 00:00:00 2001 From: Joel Bodenmann Date: Sun, 28 Jul 2013 23:18:59 +0200 Subject: list update --- src/gwin/list.c | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) (limited to 'src/gwin/list.c') diff --git a/src/gwin/list.c b/src/gwin/list.c index 54bac334..2509260c 100644 --- a/src/gwin/list.c +++ b/src/gwin/list.c @@ -201,19 +201,30 @@ static void gwinListDefaultDraw(GWidgetObject* gw, void* param) { #define gcw ((GListObject *)gw) switch (role) { - // select up + // select down case 0: - _selectUp(gw); + _selectDown(gw); break; - // select down + // select up case 1: - _selectDown(gw); + _selectUp(gw); break; } #undef gcw } + + static void ToggleAssign(GWidgetObject *gw, uint16_t role, uint16_t instance) { + if (role) + ((GListObject *)gw)->t_up = instance; + else + ((GListObject *)gw)->t_dn = instance; + } + + static uint16_t ToggleGet(GWidgetObject *gw, uint16_t role) { + return role ? ((GListObject *)gw)->t_up : ((GListObject *)gw)->t_dn; + } #endif static void _destroy(GHandle gh) { @@ -244,7 +255,7 @@ static const gwidgetVMT listVMT = { #if GINPUT_NEED_TOGGLE { 2, // two toggle roles - ToggleAssin, // Assign toggles + ToggleAssign, // Assign toggles ToggleGet, // get toggles 0, ToggleOn, // process toggle on event -- cgit v1.2.3