aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/gui/gui_picture.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/sci/gui/gui_picture.cpp')
-rw-r--r--engines/sci/gui/gui_picture.cpp11
1 files changed, 6 insertions, 5 deletions
diff --git a/engines/sci/gui/gui_picture.cpp b/engines/sci/gui/gui_picture.cpp
index aa54333688..2dc58bd312 100644
--- a/engines/sci/gui/gui_picture.cpp
+++ b/engines/sci/gui/gui_picture.cpp
@@ -27,13 +27,14 @@
#include "sci/engine/state.h"
#include "sci/tools.h"
#include "sci/gui/gui_screen.h"
+#include "sci/gui/gui_palette.h"
#include "sci/gui/gui_gfx.h"
#include "sci/gui/gui_picture.h"
namespace Sci {
-SciGuiPicture::SciGuiPicture(EngineState *state, SciGuiGfx *gfx, SciGuiScreen *screen, GuiResourceId resourceId)
- : _s(state), _gfx(gfx), _screen(screen), _resourceId(resourceId) {
+SciGuiPicture::SciGuiPicture(EngineState *state, SciGuiGfx *gfx, SciGuiScreen *screen, SciGuiPalette *palette, GuiResourceId resourceId)
+ : _s(state), _gfx(gfx), _screen(screen), _palette(palette), _resourceId(resourceId) {
assert(resourceId != -1);
initData(resourceId);
}
@@ -91,8 +92,8 @@ void SciGuiPicture::drawSci11Vga() {
GuiPalette palette;
// Create palette and set it
- CreatePaletteFromData(inbuffer + palette_data_ptr, &palette);
- _gfx->SetPalette(&palette, 2);
+ _palette->createFromData(inbuffer + palette_data_ptr, &palette);
+ _palette->set(&palette, 2);
// display Cel-data
if (has_view) {
@@ -468,7 +469,7 @@ void SciGuiPicture::drawVectorData(byte *data, int dataSize) {
palette.colors[i].used = data[curPos++];
palette.colors[i].r = data[curPos++]; palette.colors[i].g = data[curPos++]; palette.colors[i].b = data[curPos++];
}
- _gfx->SetPalette(&palette, 2);
+ _palette->set(&palette, 2);
break;
case PIC_OPX_VGA_EMBEDDED_VIEW: // draw cel
vectorGetAbsCoords(data, curPos, x, y);