aboutsummaryrefslogtreecommitdiff
path: root/engines/mads/screen.cpp
diff options
context:
space:
mode:
authorPaul Gilbert2014-06-05 22:15:31 -0400
committerPaul Gilbert2014-06-05 22:15:31 -0400
commit9aee739a18048b5395b04c005e5aaf6a2515ff66 (patch)
tree59c468785f2b633478147141260c3aa054960d08 /engines/mads/screen.cpp
parent26a2a125ed178046dc8f0d09fe1831041c5a7b32 (diff)
downloadscummvm-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.cpp11
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];