// Windows GWW.SR copysdnww rgsdoc bubblingww get "BRAVO.DF" // Incoming procedures external [ establishww errhlt ] // Incoming statics external [ dcb; cdcb; // ** GYPSY ADDED: rgdirpage rgsdoc; rgview; vwwcurrent; selection; selaux; sww; ] // Outgoing procedures external [ enww; makeroomww; copydnww; bubblingww; // ** ] // Outgoing statics external [ macww rgdoc rgcpfdispl rgyfirst rgylast rgdlfirst rgdllast rgmaxdl vdlhint; pbmfirstfree; fcp; rghpused; macdl; rgccomp; rgcdlblank; ] // Local statics static [ macww rgdoc rgcpfdispl rgyfirst rgylast rgdlfirst rgdllast rgmaxdl vdlhint; pbmfirstfree; fcp; rghpused; macdl; rgccomp; rgcdlblank; ] // E N W W let enww(proc,doc) be for ww = 0 to macww-1 do if rgdoc ! ww eq doc then [ establishww(ww); proc(ww); ] // M A K E R O O M W W // catalogue no. = 122 and makeroomww(wwparam) be [ if macww eq maxww then errhlt("wwo"); for ww = macww-1 to wwparam by -1 do copydnww(ww+1,ww); macww = macww+1; ] // C O P Y D N W W // and copydnww(ww1,ww2) be [ rgdoc ! ww1 = rgdoc ! ww2; rgsdoc ! ww1 = rgsdoc ! ww2; // ** GYPSY rgview ! ww1 = rgview ! ww2; // ** GYPSY rgdirpage ! ww1 = rgdirpage ! ww2; // ** GYPSY rgcpfdispl ! ww1 = rgcpfdispl ! ww2; rgyfirst ! ww1 = rgyfirst ! ww2; rgylast ! ww1 = rgylast ! ww2; rgdlfirst ! ww1 = rgdlfirst ! ww2; rgdllast ! ww1 = rgdllast ! ww2; rgmaxdl ! ww1 = rgmaxdl ! ww2; ] // ** GYPSY ADDED: and bubblingww(ww, dir) be [ if vwwcurrent ge ww then vwwcurrent = vwwcurrent + dir if vwwcurrent le 1 then vwwcurrent = 2 if selection >> SEL.ww ge ww then selection >> SEL.ww = selection >> SEL.ww + dir if selaux >> SEL.ww ge ww then selaux >> SEL.ww = selaux >> SEL.ww + dir sww = sww + dir ]