aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/graphics/maciconbar.h
diff options
context:
space:
mode:
authorMatthew Hoops2011-02-20 01:20:04 -0500
committerMatthew Hoops2011-02-20 12:44:59 -0500
commitdceb1391cb92126891b805494b4645272c7fddbe (patch)
treebb1cd4b1215d59f6548209a059893712704b33c1 /engines/sci/graphics/maciconbar.h
parentfe250d275564e9dfcfbbf16926852d9cfcf17fc1 (diff)
downloadscummvm-rg350-dceb1391cb92126891b805494b4645272c7fddbe.tar.gz
scummvm-rg350-dceb1391cb92126891b805494b4645272c7fddbe.tar.bz2
scummvm-rg350-dceb1391cb92126891b805494b4645272c7fddbe.zip
SCI: Cache all icon bar images from the start
Diffstat (limited to 'engines/sci/graphics/maciconbar.h')
-rw-r--r--engines/sci/graphics/maciconbar.h15
1 files changed, 12 insertions, 3 deletions
diff --git a/engines/sci/graphics/maciconbar.h b/engines/sci/graphics/maciconbar.h
index 71e65fcb40..0731da497d 100644
--- a/engines/sci/graphics/maciconbar.h
+++ b/engines/sci/graphics/maciconbar.h
@@ -38,15 +38,24 @@ namespace Sci {
class GfxMacIconBar {
public:
- GfxMacIconBar() {}
- ~GfxMacIconBar() {}
+ GfxMacIconBar();
+ ~GfxMacIconBar();
void addIcon(reg_t obj);
void drawIcons();
private:
- Common::Array<reg_t> _iconBarObjects;
+ struct IconBarItem {
+ reg_t object;
+ Graphics::Surface *nonSelectedImage;
+ Graphics::Surface *selectedImage;
+ Common::Rect rect;
+ };
+ Common::Array<IconBarItem> _iconBarItems;
+ uint32 _lastX;
+
+ Graphics::Surface *createImage(uint32 iconIndex, bool isSelected);
void remapColors(Graphics::Surface *surf, byte *palette);
};