diff options
author | Paul Gilbert | 2014-06-05 22:15:31 -0400 |
---|---|---|
committer | Paul Gilbert | 2014-06-05 22:15:31 -0400 |
commit | 9aee739a18048b5395b04c005e5aaf6a2515ff66 (patch) | |
tree | 59c468785f2b633478147141260c3aa054960d08 /engines/mads/screen.cpp | |
parent | 26a2a125ed178046dc8f0d09fe1831041c5a7b32 (diff) | |
download | scummvm-rg350-9aee739a18048b5395b04c005e5aaf6a2515ff66.tar.gz scummvm-rg350-9aee739a18048b5395b04c005e5aaf6a2515ff66.tar.bz2 scummvm-rg350-9aee739a18048b5395b04c005e5aaf6a2515ff66.zip |
MADS: Implemented support methods for ScreenDialog base class
Diffstat (limited to 'engines/mads/screen.cpp')
-rw-r--r-- | engines/mads/screen.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/engines/mads/screen.cpp b/engines/mads/screen.cpp index 91aa3abdb0..7e8710db56 100644 --- a/engines/mads/screen.cpp +++ b/engines/mads/screen.cpp @@ -364,6 +364,17 @@ void ScreenObjects::check(bool scanFlag) { } } +int ScreenObjects::scan(const Common::Point &pt, int layer) { + for (uint i = 1; i <= size(); ++i) { + ScreenObject &sObj = (*this)[i]; + if (sObj._active && sObj._bounds.contains(pt) && sObj._layer == layer) + return i; + } + + // Entry not found + return 0; +} + int ScreenObjects::scanBackwards(const Common::Point &pt, int layer) { for (int i = (int)size(); i >= 1; --i) { ScreenObject &sObj = (*this)[i]; |