aboutsummaryrefslogtreecommitdiff
path: root/engines/lab/interface.cpp
diff options
context:
space:
mode:
authorFilippos Karapetis2015-12-08 16:50:44 +0200
committerWillem Jan Palenstijn2015-12-23 21:33:55 +0100
commit0b2bf45a09ba2b5d1fc1593e629118c03b99f38f (patch)
tree5ce6d9031836bcb494b023f06008e62fa08b1736 /engines/lab/interface.cpp
parent2d0fab7f4c1e4c7f8e88aee6a867a98a8917de86 (diff)
downloadscummvm-rg350-0b2bf45a09ba2b5d1fc1593e629118c03b99f38f.tar.gz
scummvm-rg350-0b2bf45a09ba2b5d1fc1593e629118c03b99f38f.tar.bz2
scummvm-rg350-0b2bf45a09ba2b5d1fc1593e629118c03b99f38f.zip
LAB: Simplify the gadget enabling/disabling code
Diffstat (limited to 'engines/lab/interface.cpp')
-rw-r--r--engines/lab/interface.cpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/engines/lab/interface.cpp b/engines/lab/interface.cpp
index 13cbd1e581..d041160349 100644
--- a/engines/lab/interface.cpp
+++ b/engines/lab/interface.cpp
@@ -48,6 +48,7 @@ Gadget *createButton(uint16 x, uint16 y, uint16 id, uint16 key, Image *im, Image
gptr->_keyEquiv = key;
gptr->_image = im;
gptr->_altImage = imalt;
+ gptr->isEnabled = true;
return gptr;
} else
@@ -69,7 +70,7 @@ void drawGadgetList(GadgetList *gadgetList) {
for (GadgetList::iterator gadget = gadgetList->begin(); gadget != gadgetList->end(); ++gadget) {
(*gadget)->_image->drawImage((*gadget)->x, (*gadget)->y);
- if (GADGETOFF & (*gadget)->_flags)
+ if (!(*gadget)->isEnabled)
disableGadget((*gadget), 1);
}
}
@@ -79,7 +80,7 @@ void drawGadgetList(GadgetList *gadgetList) {
*/
void disableGadget(Gadget *curgad, uint16 pencolor) {
g_lab->_graphics->overlayRect(pencolor, curgad->x, curgad->y, curgad->x + curgad->_image->_width - 1, curgad->y + curgad->_image->_height - 1);
- curgad->_flags |= GADGETOFF;
+ curgad->isEnabled = false;
}
/**
@@ -87,7 +88,7 @@ void disableGadget(Gadget *curgad, uint16 pencolor) {
*/
void enableGadget(Gadget *curgad) {
curgad->_image->drawImage(curgad->x, curgad->y);
- curgad->_flags &= !(GADGETOFF);
+ curgad->isEnabled = true;
}
/**
@@ -114,7 +115,7 @@ Gadget *LabEngine::checkNumGadgetHit(GadgetList *gadgetList, uint16 key) {
Gadget *gadget = *gadgetItr;
if ((gkey - 1 == gadget->_gadgetID || (gkey == 0 && gadget->_gadgetID == 9) ||
(gadget->_keyEquiv != 0 && makeGadgetKeyEquiv(key) == gadget->_keyEquiv))
- && !(GADGETOFF & gadget->_flags)) {
+ && gadget->isEnabled) {
_event->mouseHide();
gadget->_altImage->drawImage(gadget->x, gadget->y);
_event->mouseShow();