X-Git-Url: https://de.git.xonotic.org/?p=xonotic%2Fnetradiant.git;a=blobdiff_plain;f=radiant%2Fimage.cpp;h=c81b3617ab7fe5527d9c8c45ac2fc6c83623db2b;hp=7375efbc1888539f70f19eb048b42b59a47723ea;hb=e4287c28bb2dafedc81c66e63951d947cfbeb225;hpb=12b372f89ce109a4db9d510884fbe7d05af79870 diff --git a/radiant/image.cpp b/radiant/image.cpp index 7375efbc..c81b3617 100644 --- a/radiant/image.cpp +++ b/radiant/image.cpp @@ -1,23 +1,23 @@ /* -Copyright (C) 2001-2006, William Joseph. -All Rights Reserved. + Copyright (C) 2001-2006, William Joseph. + All Rights Reserved. -This file is part of GtkRadiant. + This file is part of GtkRadiant. -GtkRadiant 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 -(at your option) any later version. + GtkRadiant 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 + (at your option) any later version. -GtkRadiant 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. + GtkRadiant 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 GtkRadiant; if not, write to the Free Software -Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ + You should have received a copy of the GNU General Public License + along with GtkRadiant; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ #include "image.h" @@ -35,36 +35,30 @@ typedef Modules<_QERPlugImageTable> ImageModules; ImageModules& Textures_getImageModules(); /// \brief Returns a new image for the first file matching \p name in one of the available texture formats, or 0 if no file is found. -Image* QERApp_LoadImage(void* environment, const char* name) -{ - Image* image = 0; - class LoadImageVisitor : public ImageModules::Visitor - { - const char* m_name; - Image*& m_image; - public: - LoadImageVisitor(const char* name, Image*& image) - : m_name(name), m_image(image) - { - } - void visit(const char* name, const _QERPlugImageTable& table) - { - if(m_image == 0) - { - StringOutputStream fullname(256); - fullname << m_name << '.' << name; - ArchiveFile* file = GlobalFileSystem().openFile(fullname.c_str()); - if(file != 0) - { - m_image = table.loadImage(*file); - file->release(); - } - } - } - } visitor(name, image); +Image* QERApp_LoadImage( void* environment, const char* name ){ + Image* image = 0; + class LoadImageVisitor : public ImageModules::Visitor + { + const char* m_name; + Image*& m_image; +public: + LoadImageVisitor( const char* name, Image*& image ) + : m_name( name ), m_image( image ){ + } + void visit( const char* name, const _QERPlugImageTable& table ) const { + if ( m_image == 0 ) { + StringOutputStream fullname( 256 ); + fullname << m_name << '.' << name; + ArchiveFile* file = GlobalFileSystem().openFile( fullname.c_str() ); + if ( file != 0 ) { + m_image = table.loadImage( *file ); + file->release(); + } + } + } + }; - Textures_getImageModules().foreachModule(visitor); + Textures_getImageModules().foreachModule( LoadImageVisitor( name, image ) ); - return image; + return image; } -