diff options
author | Nicola Mettifogo | 2009-03-23 00:56:05 +0000 |
---|---|---|
committer | Nicola Mettifogo | 2009-03-23 00:56:05 +0000 |
commit | 71f42a954988bfe490d9c76e16edfa06873fe1b8 (patch) | |
tree | e641a159bd307189d96dc6afca2efbec56f9316e /engines/parallaction/graphics.h | |
parent | e3f9acc3e6c66ab42e6e992536c933069771c99e (diff) | |
download | scummvm-rg350-71f42a954988bfe490d9c76e16edfa06873fe1b8.tar.gz scummvm-rg350-71f42a954988bfe490d9c76e16edfa06873fe1b8.tar.bz2 scummvm-rg350-71f42a954988bfe490d9c76e16edfa06873fe1b8.zip |
Fully implemented scrolling.
svn-id: r39622
Diffstat (limited to 'engines/parallaction/graphics.h')
-rw-r--r-- | engines/parallaction/graphics.h | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/engines/parallaction/graphics.h b/engines/parallaction/graphics.h index 2816729eb6..e7e7c7fb41 100644 --- a/engines/parallaction/graphics.h +++ b/engines/parallaction/graphics.h @@ -478,8 +478,13 @@ public: void setProjectorProgram(int16 *data); int16 *_nextProjectorPos; - int getScrollPos(); - void setScrollPos(int scrollX); + // start programmatic relative scroll + void initiateScroll(int deltaX, int deltaY); + // immediate and absolute x,y scroll + void setScrollPosX(int scrollX); + void setScrollPosY(int scrollY); + // return current scroll position + void getScrollPos(Common::Point &p); // init Gfx(Parallaction* vm); @@ -512,9 +517,14 @@ protected: Graphics::Surface _backBuffer; void copyRectToScreen(const byte *buf, int pitch, int x, int y, int w, int h); - int _scrollPos; - int _minScroll, _maxScroll; + int _scrollPosX, _scrollPosY; + int _minScrollX, _maxScrollX, _minScrollY, _maxScrollY; + uint32 _requestedHScrollSteps; + uint32 _requestedVScrollSteps; + int32 _requestedHScrollDir; + int32 _requestedVScrollDir; + void scroll(); #define NO_FLOATING_LABEL 1000 GfxObjArray _labels; |