/********************************************************************** PAGE_SCROLL_FIELD IN: frm, fld = various UI doodads dir = whether to scroll 'fld' up or down OUT: PURPOSE: Call this to scroll the field 'fld' up/down by one "page". (The caller should call update_field_scrollers immediately afterward.) **********************************************************************/ #ifndef I_AM_COLOR void page_scroll_field(FormPtr frm, FieldPtr fld, DirectionType dir) #else /* I_AM_COLOR */ void page_scroll_field(FormPtr frm, FieldPtr fld, WinDirectionType dir) #endif /* I_AM_COLOR */ { Word linesToScroll; /* how many lines can we scroll? */ if (FldScrollable(fld, dir)) { linesToScroll = FldGetVisibleLines(fld) - 1; FldScrollField(fld, linesToScroll, dir); } return; }
/*-----------------------------------------------------------------pageScroll-+ | | +----------------------------------------------------------------------------*/ void pageScroll(WinDirectionType direction) { FormPtr frm = FrmGetActiveForm(); FieldPtr field = (FieldPtr)FrmGetObjectPtr( frm, FrmGetObjectIndex(frm, MainConsoleField) ); if (FldScrollable(field, direction)) { int linesToScroll = FldGetVisibleLines(field) - 1; if (direction == winUp) linesToScroll = -linesToScroll; linesScroll(linesToScroll, true); } }
void PageScroll( Word fldindex, Word sbarindex, DirectionType dir ) { FormPtr frm=FrmGetActiveForm(); FieldPtr fld; fld = FrmGetObjectPtr( frm, FrmGetObjectIndex( frm, fldindex ) ); if( FldScrollable( fld, dir ) ) { int linesToScroll = FldGetVisibleLines( fld ) - 1; if( dir==up ) linesToScroll = -linesToScroll; ScrollLines( fldindex, sbarindex, linesToScroll, true ); } }
static void RulesScroll (WinDirectionType dir, Boolean screen) { FieldPtr field; Word fieldIndex; Word lines; fieldIndex = FrmGetObjectIndex (rulesFrm, rulesText); field = FrmGetObjectPtr (rulesFrm, fieldIndex); if (screen) { lines = FldGetVisibleLines (field) - 2; if (lines < 1) lines = 1; } else lines = 1; FldScrollField (field, lines, dir); RulesSetScrolling (); }