void rtgui_scrollbar_set_page_step(struct rtgui_scrollbar* bar, int step) { RT_ASSERT(bar != RT_NULL); bar->page_step = step; /* disable or enable scrollbar */ if (bar->page_step > (bar->max_position - bar->min_position)) { /* disable bar */ RTGUI_WIDGET_DISABLE(RTGUI_WIDGET(bar)); } else { /* enable bar */ RTGUI_WIDGET_ENABLE(RTGUI_WIDGET(bar)); } }
void rtgui_scrollbar_set_range(rtgui_scrollbar_t* bar, int count) { RT_ASSERT(bar != RT_NULL); /* disable or enable scrollbar */ if(bar->page_step >= count) { /* disable bar */ RTGUI_WIDGET_DISABLE(bar); } else { /* enable bar */ RTGUI_WIDGET_ENABLE(bar); } /* thumb step count = item_count-item_per_page */ bar->count = (rt_int16_t)(count-bar->page_step); rtgui_scrollbar_set_thumbbar_len(bar); }