| 844 | } |
| 845 | |
| 846 | uint16 GUI_Widget_Scrollbar_Init(Widget *w, int16 scrollMax, int16 scrollPageSize, int16 scrollPosition) |
| 847 | { |
| 848 | uint16 position; |
| 849 | WidgetScrollbar *scrollbar; |
| 850 | |
| 851 | if (w == NULL) return 0xFFFF; |
| 852 | |
| 853 | position = GUI_Get_Scrollbar_Position(w); |
| 854 | scrollbar = w->data; |
| 855 | |
| 856 | if (scrollMax > 0) scrollbar->scrollMax = scrollMax; |
| 857 | if (scrollPageSize >= 0) scrollbar->scrollPageSize = min(scrollPageSize, scrollbar->scrollMax); |
| 858 | if (scrollPosition >= 0) scrollbar->scrollPosition = min(scrollPosition, scrollbar->scrollMax - scrollbar->scrollPageSize); |
| 859 | |
| 860 | GUI_Widget_Scrollbar_CalculateSize(scrollbar); |
| 861 | GUI_Widget_Scrollbar_CalculatePosition(scrollbar); |
| 862 | GUI_Widget_Scrollbar_Draw(w); |
| 863 | |
| 864 | if (scrollbar->drawProc != NULL) scrollbar->drawProc(w); |
| 865 | |
| 866 | return position; |
| 867 | } |
| 868 | |
| 869 | uint16 GUI_Widget_Scrollbar_CalculatePosition(WidgetScrollbar *scrollbar) |
| 870 | { |
no test coverage detected