diff options
author | Thorbjørn Lindeijer <thorbjorn@lindeijer.nl> | 2012-07-31 17:55:40 +0200 |
---|---|---|
committer | Thorbjørn Lindeijer <thorbjorn@lindeijer.nl> | 2012-08-12 21:53:47 +0200 |
commit | fa7cdef831e160a275c4612a5bd4274a1fe095ea (patch) | |
tree | f49286e9e2c3428a67b2ac54593ba24fcad610af | |
parent | dfb24aff4c683471fec95392a9d3a46687f40f28 (diff) | |
download | mana-fa7cdef831e160a275c4612a5bd4274a1fe095ea.tar.gz mana-fa7cdef831e160a275c4612a5bd4274a1fe095ea.tar.bz2 mana-fa7cdef831e160a275c4612a5bd4274a1fe095ea.tar.xz mana-fa7cdef831e160a275c4612a5bd4274a1fe095ea.zip |
Removed ImageLoader and ProxyImage classes
They allowed using gcn::Image, which in turns allows using gcn::Icon
and gcn::ImageFont, but none of this is actually used anymore.
Reviewed-by: Erik Schilling
-rw-r--r-- | Xcode/mana.xcodeproj/project.pbxproj | 6 | ||||
-rw-r--r-- | mana.cbp | 2 | ||||
-rw-r--r-- | mana.files | 2 | ||||
-rw-r--r-- | src/CMakeLists.txt | 2 | ||||
-rw-r--r-- | src/graphics.cpp | 10 | ||||
-rw-r--r-- | src/graphics.h | 6 | ||||
-rw-r--r-- | src/gui/gui.cpp | 5 | ||||
-rw-r--r-- | src/resources/imageloader.cpp | 98 | ||||
-rw-r--r-- | src/resources/imageloader.h | 69 |
9 files changed, 0 insertions, 200 deletions
diff --git a/Xcode/mana.xcodeproj/project.pbxproj b/Xcode/mana.xcodeproj/project.pbxproj index 17563c6e..ec296b60 100644 --- a/Xcode/mana.xcodeproj/project.pbxproj +++ b/Xcode/mana.xcodeproj/project.pbxproj @@ -225,7 +225,6 @@ FC047CAF151E500C00C5E9E7 /* emotedb.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FC047C82151E500C00C5E9E7 /* emotedb.cpp */; }; FC047CB0151E500C00C5E9E7 /* hairdb.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FC047C84151E500C00C5E9E7 /* hairdb.cpp */; }; FC047CB1151E500C00C5E9E7 /* image.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FC047C86151E500C00C5E9E7 /* image.cpp */; }; - FC047CB2151E500C00C5E9E7 /* imageloader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FC047C88151E500C00C5E9E7 /* imageloader.cpp */; }; FC047CB3151E500C00C5E9E7 /* imageset.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FC047C8A151E500C00C5E9E7 /* imageset.cpp */; }; FC047CB4151E500C00C5E9E7 /* imagewriter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FC047C8C151E500C00C5E9E7 /* imagewriter.cpp */; }; FC047CB5151E500C00C5E9E7 /* itemdb.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FC047C8E151E500C00C5E9E7 /* itemdb.cpp */; }; @@ -767,8 +766,6 @@ FC047C85151E500C00C5E9E7 /* hairdb.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = hairdb.h; sourceTree = "<group>"; }; FC047C86151E500C00C5E9E7 /* image.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = image.cpp; sourceTree = "<group>"; }; FC047C87151E500C00C5E9E7 /* image.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = image.h; sourceTree = "<group>"; }; - FC047C88151E500C00C5E9E7 /* imageloader.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = imageloader.cpp; sourceTree = "<group>"; }; - FC047C89151E500C00C5E9E7 /* imageloader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = imageloader.h; sourceTree = "<group>"; }; FC047C8A151E500C00C5E9E7 /* imageset.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = imageset.cpp; sourceTree = "<group>"; }; FC047C8B151E500C00C5E9E7 /* imageset.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = imageset.h; sourceTree = "<group>"; }; FC047C8C151E500C00C5E9E7 /* imagewriter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = imagewriter.cpp; sourceTree = "<group>"; }; @@ -1479,8 +1476,6 @@ FC047C85151E500C00C5E9E7 /* hairdb.h */, FC047C86151E500C00C5E9E7 /* image.cpp */, FC047C87151E500C00C5E9E7 /* image.h */, - FC047C88151E500C00C5E9E7 /* imageloader.cpp */, - FC047C89151E500C00C5E9E7 /* imageloader.h */, FC047C8A151E500C00C5E9E7 /* imageset.cpp */, FC047C8B151E500C00C5E9E7 /* imageset.h */, FC047C8C151E500C00C5E9E7 /* imagewriter.cpp */, @@ -1879,7 +1874,6 @@ FC047CAF151E500C00C5E9E7 /* emotedb.cpp in Sources */, FC047CB0151E500C00C5E9E7 /* hairdb.cpp in Sources */, FC047CB1151E500C00C5E9E7 /* image.cpp in Sources */, - FC047CB2151E500C00C5E9E7 /* imageloader.cpp in Sources */, FC047CB3151E500C00C5E9E7 /* imageset.cpp in Sources */, FC047CB4151E500C00C5E9E7 /* imagewriter.cpp in Sources */, FC047CB5151E500C00C5E9E7 /* itemdb.cpp in Sources */, @@ -532,8 +532,6 @@ <Unit filename="src\resources\hairdb.h" /> <Unit filename="src\resources\image.cpp" /> <Unit filename="src\resources\image.h" /> - <Unit filename="src\resources\imageloader.cpp" /> - <Unit filename="src\resources\imageloader.h" /> <Unit filename="src\resources\imageset.cpp" /> <Unit filename="src\resources\imageset.h" /> <Unit filename="src\resources\imagewriter.cpp" /> @@ -478,8 +478,6 @@ src/resources/hairdb.cpp src/resources/hairdb.h src/resources/image.cpp src/resources/image.h -src/resources/imageloader.cpp -src/resources/imageloader.h src/resources/imageset.cpp src/resources/imageset.h src/resources/imagewriter.cpp diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 9501b617..b9aa6bb7 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -375,8 +375,6 @@ SET(SRCS resources/hairdb.h resources/image.cpp resources/image.h - resources/imageloader.cpp - resources/imageloader.h resources/imageset.h resources/imageset.cpp resources/imagewriter.cpp diff --git a/src/graphics.cpp b/src/graphics.cpp index 7b56d974..ac3735f5 100644 --- a/src/graphics.cpp +++ b/src/graphics.cpp @@ -25,7 +25,6 @@ #include "log.h" #include "resources/image.h" -#include "resources/imageloader.h" #include "utils/gettext.h" @@ -219,15 +218,6 @@ bool Graphics::drawImage(Image *image, int srcX, int srcY, int dstX, int dstY, return !(SDL_gfxBlitRGBA(image->mSDLSurface, &srcRect, mTarget, &dstRect) < 0); } -void Graphics::drawImage(gcn::Image const *image, int srcX, int srcY, - int dstX, int dstY, int width, int height) -{ - ProxyImage const *srcImage = - dynamic_cast< ProxyImage const * >(image); - assert(srcImage); - drawImage(srcImage->getImage(), srcX, srcY, dstX, dstY, width, height, true); -} - void Graphics::drawImagePattern(Image *image, int x, int y, int w, int h) { // Check that preconditions for blitting are met. diff --git a/src/graphics.h b/src/graphics.h index 6a17aab4..dc3d249e 100644 --- a/src/graphics.h +++ b/src/graphics.h @@ -102,12 +102,6 @@ class Graphics : public gcn::SDLGraphics bool drawImage(Image *image, int x, int y); /** - * Overrides with our own drawing method. - */ - void drawImage(gcn::Image const *image, int srcX, int srcY, - int dstX, int dstY, int width, int height); - - /** * Draws a resclaled version of the image */ bool drawRescaledImage(Image *image, int srcX, int srcY, diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index 78fc42fb..019d3002 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -37,7 +37,6 @@ #include "resources/image.h" #include "resources/imageset.h" -#include "resources/imageloader.h" #include "resources/resourcemanager.h" #include "resources/theme.h" @@ -88,10 +87,6 @@ Gui::Gui(Graphics *graphics): // Set graphics setGraphics(graphics); - // Set image loader - static ImageLoader imageLoader; - gcn::Image::setImageLoader(&imageLoader); - // Set input guiInput = new SDLInput; setInput(guiInput); diff --git a/src/resources/imageloader.cpp b/src/resources/imageloader.cpp deleted file mode 100644 index 262ec98c..00000000 --- a/src/resources/imageloader.cpp +++ /dev/null @@ -1,98 +0,0 @@ -/* - * The Mana Client - * Copyright (C) 2007-2009 The Mana World Development Team - * Copyright (C) 2009-2012 The Mana Developers - * - * This file is part of The Mana Client. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ - -#include "resources/imageloader.h" - -#include "resources/image.h" -#include "resources/resourcemanager.h" - -#include <guichan/color.hpp> - -#include <guichan/sdl/sdlpixel.hpp> - -#include <cassert> - -ProxyImage::ProxyImage(SDL_Surface *s): - mImage(NULL), mSDLImage(s) -{ -} - -ProxyImage::~ProxyImage() -{ - free(); -} - -void ProxyImage::free() -{ - if (mSDLImage) - { - SDL_FreeSurface(mSDLImage); - mSDLImage = NULL; - } - else if (mImage) - { - delete mImage; - mImage = NULL; - } -} - -int ProxyImage::getWidth() const -{ - return mSDLImage ? mSDLImage->w : mImage->getWidth(); -} - -int ProxyImage::getHeight() const -{ - return mSDLImage ? mSDLImage->h : mImage->getHeight(); -} - -gcn::Color ProxyImage::getPixel(int x, int y) -{ - assert(mSDLImage); - return gcn::SDLgetPixel(mSDLImage, x, y); -} - -void ProxyImage::putPixel(int x, int y, gcn::Color const &color) -{ - assert(mSDLImage); - gcn::SDLputPixel(mSDLImage, x, y, color); -} - -void ProxyImage::convertToDisplayFormat() -{ - assert(mSDLImage); - /* The picture is most probably full of the pink pixels Guichan uses for - transparency, as this function will only be called when setting an image - font. Get rid of them. */ - SDL_SetColorKey(mSDLImage, SDL_SRCCOLORKEY, - SDL_MapRGB(mSDLImage->format, 255, 0, 255)); - mImage = ::Image::load(mSDLImage); - SDL_FreeSurface(mSDLImage); - mSDLImage = NULL; -} - -gcn::Image *ImageLoader::load(const std::string &filename, bool convert) -{ - ResourceManager *resman = ResourceManager::getInstance(); - ProxyImage *i = new ProxyImage(resman->loadSDLSurface(filename)); - if (convert) i->convertToDisplayFormat(); - return i; -} diff --git a/src/resources/imageloader.h b/src/resources/imageloader.h deleted file mode 100644 index 10592142..00000000 --- a/src/resources/imageloader.h +++ /dev/null @@ -1,69 +0,0 @@ -/* - * The Mana Client - * Copyright (C) 2007-2009 The Mana World Development Team - * Copyright (C) 2009-2012 The Mana Developers - * - * This file is part of The Mana Client. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ - -#ifndef IMAGELOADER_H -#define IMAGELOADER_H - -#include <guichan/image.hpp> -#include <guichan/imageloader.hpp> - -#include <string> - -class Image; -struct SDL_Surface; - -class ProxyImage : public gcn::Image -{ - public: - ProxyImage(SDL_Surface *); - ~ProxyImage(); - - void free(); - int getWidth() const; - int getHeight() const; - gcn::Color getPixel(int x, int y); - void putPixel(int x, int y, gcn::Color const &color); - void convertToDisplayFormat(); - - /** - * Gets the image handled by this proxy. - */ - ::Image *getImage() const - { return mImage; } - - private: - ::Image *mImage; /**< The real image. */ - - /** - * An SDL surface kept around until Guichan is done reading pixels from - * an OpenGL texture. - */ - SDL_Surface *mSDLImage; -}; - -class ImageLoader : public gcn::ImageLoader -{ - public: - gcn::Image *load(const std::string &filename, - bool convertToDisplayFormat); -}; - -#endif |