void WMSetScrollViewHasVerticalScroller(WMScrollView *sPtr, Bool flag) { if (flag) { if (sPtr->flags.hasVScroller) return; sPtr->flags.hasVScroller = 1; sPtr->vScroller = WMCreateScroller(sPtr); WMSetScrollerAction(sPtr->vScroller, doScrolling, sPtr); WMSetScrollerArrowsPosition(sPtr->vScroller, WSAMaxEnd); /* make it a vert. scroller */ WMResizeWidget(sPtr->vScroller, 1, 2); if (W_VIEW_REALIZED(sPtr->view)) { WMRealizeWidget(sPtr->vScroller); } reorganizeInterior(sPtr); WMMapWidget(sPtr->vScroller); } else { if (!sPtr->flags.hasVScroller) return; sPtr->flags.hasVScroller = 0; WMUnmapWidget(sPtr->vScroller); WMDestroyWidget(sPtr->vScroller); sPtr->vScroller = NULL; reorganizeInterior(sPtr); } }
void WMSetScrollViewHasHorizontalScroller(WMScrollView *sPtr, Bool flag) { if (flag) { if (sPtr->flags.hasHScroller) return; sPtr->flags.hasHScroller = 1; sPtr->hScroller = WMCreateScroller(sPtr); WMSetScrollerAction(sPtr->hScroller, doScrolling, sPtr); /* make it a horiz. scroller */ WMResizeWidget(sPtr->hScroller, 2, 1); if (W_VIEW_REALIZED(sPtr->view)) { WMRealizeWidget(sPtr->hScroller); } reorganizeInterior(sPtr); WMMapWidget(sPtr->hScroller); } else { if (!sPtr->flags.hasHScroller) return; WMUnmapWidget(sPtr->hScroller); WMDestroyWidget(sPtr->hScroller); sPtr->hScroller = NULL; sPtr->flags.hasHScroller = 0; reorganizeInterior(sPtr); } }
static void setupScroller(WMBrowser * bPtr) { WMScroller *sPtr; int y; y = bPtr->view->size.height - SCROLLER_WIDTH - 1; sPtr = WMCreateScroller(bPtr); WMSetScrollerAction(sPtr, scrollCallback, bPtr); WMMoveWidget(sPtr, 1, y); WMResizeWidget(sPtr, bPtr->view->size.width - 2, SCROLLER_WIDTH); bPtr->scroller = sPtr; WMMapWidget(sPtr); }