Scroll around in a superbitmap, translate coordinates in non-superbitmap layer.
Source position: layers.pas line 106
procedure ScrollLayer( |
dummy: LongInt; |
Layer: PLayer; |
dx: LongInt; |
dy: LongInt |
); |
dummy |
|
unused |
Layer |
|
pointer to a layer |
dx |
|
delta to add to current x scroll value |
dy |
|
delta to add to current y scroll value |
For a SuperBitMap Layer:
Update the SuperBitMap from the layer display, then copy bits between Layer and SuperBitMap to reposition layer over different portion of SuperBitMap.
For nonSuperBitMap layers, all (x,y) pairs are adjusted by the scroll(x,y) value in the layer. To cause (0,0) to actually be drawn at (3,10) use ScrollLayer(-3,-10). This can be useful along with InstallClipRegion to simulate Intuition GZZWindows without the overhead of an extra layer.
ay not handle (dx,dy) which attempts to move the layer outside the layer's SuperBitMap bounds.