22#ifndef NANCY_GRAPHICS_H
23#define NANCY_GRAPHICS_H
25#include "common/path.h"
27#include "graphics/screen.h"
29#include "engines/nancy/font.h"
48byte colorChannelToByte(
float channel);
49void argbToChannels(uint32 argb,
float *channels);
50uint32 channelsToArgb(
const float *channels);
54float getBlendAmount(
float seconds,
float rate);
57bool blendColor(
float *current, uint32 target,
float amount);
62 kFontColorDisabled = 1,
65 kFontColorMouseOver = 4,
66 kFontColorPressed = 5,
67 kNumFontColorStates = 6
76 void draw(
bool updateScreen =
true);
79 void loadSystemFonts(
const IFF &fontIFF);
89 void suppressNextDraw();
91 const Font *getFont(uint
id)
const {
return id < _fonts.
size() ? &_fonts[id] :
nullptr; }
94 uint32 getFontColor(uint
id,
const Graphics::PixelFormat &format, FontColorState state = kFontColorNormal)
const;
101 bool isGameScaled()
const {
return !_gameSurface.
empty(); }
113 uint32 getTransColor() {
return _transColor; }
128 bool getIsSuppressed()
const {
return _isSuppressed; }
144 bool isInLayer(
const RenderObject &
object, Layer layer)
const;
153 static int objectComparator(
const void *a,
const void *b);
165 uint32 colors[kNumFontColorStates] = {};
178 uint32 _transColor = 0;
181 bool _wasZoomed =
false;
size_type size() const
Definition: array.h:316
Definition: managed_surface.h:51
bool empty() const
Definition: managed_surface.h:214
Definition: graphics.h:71
Definition: renderobject.h:48
Val & getOrCreateVal(const Key &key)
Definition: hashmap.h:626
Definition: actionmanager.h:32
Definition: enginedata.h:1095