#include <surface.h>
Public Member Functions | |
BaseSurface () | |
BaseSurface (int width, int height) | |
BaseSurface (int width_, int height_, const Graphics::PixelFormat &pf) | |
virtual void | SHblitFrom (const Graphics::Surface &src) |
virtual void | SHblitFrom (const Graphics::Surface &src, const Common::Point &destPos) |
virtual void | SHblitFrom (const Graphics::Surface &src, const Common::Point &destPos, const Common::Rect &srcBounds) |
virtual void | SHbitmapBlitFrom (const byte *src, int width, int height, int pitchSrc, const Common::Point &pt, int overrideColor=0) |
virtual void | SHtransBlitFrom (const ImageFrame &src, const Common::Point &pt, bool flipped=false, int overrideColor=0, int scaleVal=0x100) |
virtual void | SHtransBlitFrom (const Graphics::Surface &src, const Common::Point &pt, bool flipped=false, int overrideColor=0, int scaleVal=0x100) |
virtual void | SHfillRect (const Common::Rect &r, uint color) |
virtual uint16 | width () const |
virtual uint16 | height () const |
void | writeString (const Common::String &str, const Common::Point &pt, uint overrideColor) |
void | writeFancyString (const Common::String &str, const Common::Point &pt, uint overrideColor1, uint overrideColor2) |
Public Member Functions inherited from Graphics::Screen | |
Screen (int width, int height) | |
Screen (int width, int height, PixelFormat pixelFormat) | |
bool | isDirty () const |
void | makeAllDirty () |
virtual void | clearDirtyRects () |
virtual void | addDirtyRect (const Common::Rect &r) |
virtual void | update () |
virtual void | updateScreen () |
void | getPalette (byte palette[PALETTE_SIZE]) |
void | getPalette (byte *palette, uint start, uint num) |
Graphics::Palette | getPalette (uint start=0, uint num=PALETTE_COUNT) |
void | setPalette (const byte palette[PALETTE_SIZE]) |
void | setPalette (const byte *palette, uint start, uint num) |
void | setPalette (const Graphics::Palette &pal, uint start=0) |
void | clearPalette () |
Public Member Functions inherited from Graphics::ManagedSurface | |
bool | clip (Common::Rect &srcBounds, Common::Rect &destBounds) const |
ManagedSurface () | |
ManagedSurface (const ManagedSurface &surf) | |
ManagedSurface (ManagedSurface &&surf) | |
ManagedSurface (int width, int height) | |
ManagedSurface (int width, int height, const Graphics::PixelFormat &pixelFormat) | |
ManagedSurface (ManagedSurface &surf, const Common::Rect &bounds) | |
ManagedSurface (Surface *surf, DisposeAfterUse::Flag disposeAfterUse=DisposeAfterUse::YES) | |
ManagedSurface (const Surface *surf) | |
virtual | ~ManagedSurface () |
operator const Surface & () const | |
const Surface & | rawSurface () const |
Surface * | surfacePtr () |
ManagedSurface & | operator= (const ManagedSurface &surf) |
ManagedSurface & | operator= (ManagedSurface &&surf) |
bool | empty () const |
DisposeAfterUse::Flag | disposeAfterUse () const |
uint32 | getPixel (int x, int y) const |
void | setPixel (int x, int y, uint32 pixel) |
const void * | getBasePtr (int x, int y) const |
void * | getBasePtr (int x, int y) |
void * | getPixels () |
const void * | getPixels () const |
virtual void | setPixels (void *newPixels) |
virtual void | create (int16 width, int16 height) |
virtual void | create (int16 width, int16 height, const PixelFormat &pixelFormat) |
virtual void | create (ManagedSurface &surf, const Common::Rect &bounds) |
virtual void | free () |
const Common::Point | getOffsetFromOwner () const |
const Common::Rect | getBounds () const |
void | simpleBlitFrom (const Surface &src, const Palette *srcPalette=nullptr) |
void | simpleBlitFrom (const Surface &src, const Common::Point &destPos, const Palette *srcPalette=nullptr) |
void | simpleBlitFrom (const Surface &src, const Common::Rect &srcRect, const Common::Point &destPos, const Palette *srcPalette=nullptr) |
void | simpleBlitFrom (const ManagedSurface &src) |
void | simpleBlitFrom (const ManagedSurface &src, const Common::Point &destPos) |
void | simpleBlitFrom (const ManagedSurface &src, const Common::Rect &srcRect, const Common::Point &destPos) |
void | blitFrom (const Surface &src, const Palette *srcPalette=nullptr) |
void | blitFrom (const Surface &src, const Common::Point &destPos, const Palette *srcPalette=nullptr) |
void | blitFrom (const Surface &src, const Common::Rect &srcRect, const Common::Point &destPos, const Palette *srcPalette=nullptr) |
void | blitFrom (const Surface &src, const Common::Rect &srcRect, const Common::Rect &destRect, const Palette *srcPalette=nullptr) |
void | blitFrom (const ManagedSurface &src, const Common::Rect &srcRect, const Common::Rect &destRect) |
void | blitFrom (const ManagedSurface &src) |
void | blitFrom (const ManagedSurface &src, const Common::Point &destPos) |
void | blitFrom (const ManagedSurface &src, const Common::Rect &srcRect, const Common::Point &destPos) |
void | transBlitFrom (const Surface &src, uint32 transColor=0, bool flipped=false, uint32 overrideColor=0, uint32 srcAlpha=0xff, const Palette *srcPalette=nullptr) |
void | transBlitFrom (const Surface &src, const Common::Point &destPos, uint32 transColor=0, bool flipped=false, uint32 overrideColor=0, uint32 srcAlpha=0xff, const Palette *srcPalette=nullptr) |
void | transBlitFrom (const Surface &src, const Common::Point &destPos, const ManagedSurface &mask, const Palette *srcPalette=nullptr) |
void | transBlitFrom (const Surface &src, const Common::Point &destPos, const Surface &mask, const Palette *srcPalette=nullptr) |
void | transBlitFrom (const Surface &src, const Common::Rect &srcRect, const Common::Point &destPos, uint32 transColor=0, bool flipped=false, uint32 overrideColor=0, uint32 srcAlpha=0xff, const Palette *srcPalette=nullptr) |
void | transBlitFrom (const Surface &src, const Common::Rect &srcRect, const Common::Rect &destRect, const Palette *srcPalette) |
void | transBlitFrom (const Surface &src, const Common::Rect &srcRect, const Common::Rect &destRect, uint32 transColor=0, bool flipped=false, uint32 overrideColor=0, uint32 srcAlpha=0xff, const Surface *mask=nullptr, bool maskOnly=false, const Palette *srcPalette=nullptr) |
void | transBlitFrom (const ManagedSurface &src, uint32 transColor=0, bool flipped=false, uint32 overrideColor=0, uint32 srcAlpha=0xff) |
void | transBlitFrom (const ManagedSurface &src, const Common::Point &destPos, uint32 transColor=0, bool flipped=false, uint32 overrideColor=0, uint32 srcAlpha=0xff) |
void | transBlitFrom (const ManagedSurface &src, const Common::Point &destPos, const ManagedSurface &mask) |
void | transBlitFrom (const ManagedSurface &src, const Common::Rect &srcRect, const Common::Point &destPos, uint32 transColor=0, bool flipped=false, uint32 overrideColor=0, uint32 srcAlpha=0xff) |
void | transBlitFrom (const ManagedSurface &src, const Common::Rect &srcRect, const Common::Rect &destRect, uint32 transColor=0, bool flipped=false, uint32 overrideColor=0, uint32 srcAlpha=0xff, const Surface *mask=nullptr, bool maskOnly=false) |
void | rawBlitFrom (const ManagedSurface &src, const Common::Rect &srcRect, const Common::Point &destPos) |
Common::Rect | blendBlitTo (ManagedSurface &target, const int posX=0, const int posY=0, const int flipping=FLIP_NONE, const Common::Rect *srcRect=nullptr, const uint colorMod=(uint32)(((255)<< 24)|((255)<< 16)|((255)<< 8)|(255)), const int width=-1, const int height=-1, const TSpriteBlendMode blend=BLEND_NORMAL, const AlphaType alphaType=ALPHA_FULL) |
Renders this surface onto target. More... | |
Common::Rect | blendBlitTo (Surface &target, const int posX=0, const int posY=0, const int flipping=FLIP_NONE, const Common::Rect *srcRect=nullptr, const uint colorMod=(uint32)(((255)<< 24)|((255)<< 16)|((255)<< 8)|(255)), const int width=-1, const int height=-1, const TSpriteBlendMode blend=BLEND_NORMAL, const AlphaType alphaType=ALPHA_FULL) |
void | clear (uint32 color=0) |
void | markAllDirty () |
void | copyRectToSurface (const void *buffer, int srcPitch, int destX, int destY, int width, int height) |
void | copyRectToSurface (const Graphics::Surface &srcSurface, int destX, int destY, const Common::Rect subRect) |
void | copyRectToSurfaceWithKey (const void *buffer, int srcPitch, int destX, int destY, int width, int height, uint32 key) |
void | copyRectToSurfaceWithKey (const Graphics::Surface &srcSurface, int destX, int destY, const Common::Rect subRect, uint32 key) |
void | copyFrom (const ManagedSurface &surf) |
void | copyFrom (const Surface &surf) |
void | convertFrom (const ManagedSurface &surf, const PixelFormat &fmt) |
void | convertFrom (const Surface &surf, const PixelFormat &fmt) |
ManagedSurface * | scale (int16 newWidth, int16 newHeight, bool filtering=false) const |
ManagedSurface * | rotoscale (const TransformStruct &transform, bool filtering=false) const |
Rotoscale function; this returns a transformed version of this surface after rotation and scaling. Please do not use this if angle == 0, use plain old scaling function. More... | |
void | drawLine (int x0, int y0, int x1, int y1, uint32 color) |
void | drawThickLine (int x0, int y0, int x1, int y1, int penX, int penY, uint32 color) |
void | hLine (int x, int y, int x2, uint32 color) |
void | vLine (int x, int y, int y2, uint32 color) |
void | fillRect (Common::Rect r, uint32 color) |
void | frameRect (const Common::Rect &r, uint32 color) |
AlphaType | detectAlpha () const |
Surface | getSubArea (const Common::Rect &area) |
void | convertToInPlace (const PixelFormat &dstFormat) |
void | convertToInPlace (const PixelFormat &dstFormat, const byte *palette, uint16 paletteCount) |
uint | getTransparentColor () const |
void | setTransparentColor (uint32 color) |
void | clearTransparentColor () |
bool | hasTransparentColor () const |
void | clearPalette () |
bool | hasPalette () const |
void | grabPalette (byte *colors, uint start, uint num) const |
void | setPalette (const byte *colors, uint start, uint num) |
Public Member Functions inherited from Sherlock::Fonts | |
void | setFont (int fontNum) |
int | stringWidth (const Common::String &str) |
int | stringHeight (const Common::String &str) |
int | charWidth (const char *str, int &idx) |
int | charWidth (char ch) |
int | charHeight (unsigned char c) |
int | fontHeight () const |
int | widestChar () const |
int | fontNumber () const |
Common::Array< Common::String > | wordWrap (const Common::String &str, uint maxWidth, Common::String &rem, uint maxChars=Common::String::npos, uint maxLines=Common::String::npos, bool skipHeadAt=false) |
Common::Array< Common::String > | wordWrap (const Common::String &str, uint maxWidth, uint maxChars=Common::String::npos, uint maxLines=Common::String::npos, bool skipHeadAt=false) |
Additional Inherited Members | |
Static Public Member Functions inherited from Graphics::ManagedSurface | |
static bool | isBlendBlitPixelFormatSupported (const PixelFormat &src, const PixelFormat &dst) |
Static Public Member Functions inherited from Sherlock::Fonts | |
static void | setVm (SherlockEngine *vm) |
static void | freeFont () |
static bool | isModifiedEucCn () |
static bool | isBig5 () |
static Common::String | unescape (const Common::String &in) |
Public Attributes inherited from Graphics::ManagedSurface | |
int16 & | w |
int16 & | h |
int32 & | pitch |
PixelFormat & | format |
Static Public Attributes inherited from Sherlock::Fonts | |
static const int | kChineseWidth = 16 |
static const int | kChineseHeight = 16 |
Protected Member Functions inherited from Graphics::Screen | |
void | mergeDirtyRects () |
bool | unionRectangle (Common::Rect &destRect, const Common::Rect &src1, const Common::Rect &src2) |
Protected Member Functions inherited from Graphics::ManagedSurface | |
void | simpleBlitFromInner (const Surface &src, const Common::Rect &srcRect, const Common::Point &destPos, const Palette *srcPalette, bool transparentColorSet, uint transparentColor) |
void | blitFromInner (const Surface &src, const Common::Rect &srcRect, const Common::Rect &destRect, const Palette *srcPalette) |
void | transBlitFromInner (const Surface &src, const Common::Rect &srcRect, const Common::Rect &destRect, uint32 transColor, bool flipped, uint32 overrideColor, uint32 srcAlpha, const Palette *srcPalette, const Palette *dstPalette, const Surface *mask, bool maskOnly) |
Static Protected Member Functions inherited from Sherlock::Fonts | |
static void | writeString (BaseSurface *surface, const Common::String &str, const Common::Point &pt, int overrideColor=0) |
Protected Attributes inherited from Graphics::Screen | |
Common::List< Common::Rect > | _dirtyRects |
Static Protected Attributes inherited from Sherlock::Fonts | |
static SherlockEngine * | _vm |
Implements a base surface that combines both a managed surface and the font drawing code. It also introduces a series of drawing method stubs that the 3DO Serrated Scalpel screen overrides to implement sprite doubling
Sherlock::BaseSurface::BaseSurface | ( | ) |
Constructor
Sherlock::BaseSurface::BaseSurface | ( | int | width, |
int | height | ||
) |
Constructor
|
inlinevirtual |
Draws a surface on this surface
Reimplemented in Sherlock::Scalpel::Scalpel3DOScreen.
|
inlinevirtual |
Draws a surface at a given position within this surface
Reimplemented in Sherlock::Scalpel::Scalpel3DOScreen.
|
inlinevirtual |
Draws a sub-section of a surface at a given position within this surface
Reimplemented in Sherlock::Scalpel::Scalpel3DOScreen.
|
virtual |
Draws an image frame at a given position within this surface with transparency
Reimplemented in Sherlock::Scalpel::Scalpel3DOScreen.
|
virtual |
Draws an image frame at a given position within this surface with transparency
Reimplemented in Sherlock::Scalpel::Scalpel3DOScreen.
|
inlinevirtual |
Fill a given area of the surface with a given color
Reimplemented in Sherlock::Scalpel::Scalpel3DOScreen.
|
inlinevirtual |
Return the width of the surface
Reimplemented in Sherlock::Scalpel::Scalpel3DOScreen.
|
inlinevirtual |
Return the height of the surface
Reimplemented in Sherlock::Scalpel::Scalpel3DOScreen.
void Sherlock::BaseSurface::writeString | ( | const Common::String & | str, |
const Common::Point & | pt, | ||
uint | overrideColor | ||
) |
Draws the given string into the back buffer using the images stored in _font
void Sherlock::BaseSurface::writeFancyString | ( | const Common::String & | str, |
const Common::Point & | pt, | ||
uint | overrideColor1, | ||
uint | overrideColor2 | ||
) |
Draws a fancy version of the given string at the given position