00001 /************************************************************************ 00002 filename: CEGUIImageset_xmlHandler.h 00003 created: 21/2/2004 00004 author: Paul D Turner 00005 00006 purpose: Defines the interface for the Imageset class 00007 *************************************************************************/ 00008 /************************************************************************* 00009 Crazy Eddie's GUI System (http://www.cegui.org.uk) 00010 Copyright (C)2004 - 2005 Paul D Turner (paul@cegui.org.uk) 00011 00012 This library is free software; you can redistribute it and/or 00013 modify it under the terms of the GNU Lesser General Public 00014 License as published by the Free Software Foundation; either 00015 version 2.1 of the License, or (at your option) any later version. 00016 00017 This library is distributed in the hope that it will be useful, 00018 but WITHOUT ANY WARRANTY; without even the implied warranty of 00019 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00020 Lesser General Public License for more details. 00021 00022 You should have received a copy of the GNU Lesser General Public 00023 License along with this library; if not, write to the Free Software 00024 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00025 *************************************************************************/ 00026 #ifndef _CEGUIImageset_xmlHandler_h_ 00027 #define _CEGUIImageset_xmlHandler_h_ 00028 00029 #include "CEGUIImageset.h" 00030 #include "CEGUIXMLHandler.h" 00031 00032 // Start of CEGUI namespace section 00033 namespace CEGUI 00034 { 00035 00036 /************************************************************************* 00037 Implementation Classes 00038 *************************************************************************/ 00043 class Imageset_xmlHandler : public XMLHandler 00044 { 00045 public: 00046 /************************************************************************* 00047 Construction & Destruction 00048 *************************************************************************/ 00056 Imageset_xmlHandler(Imageset* imageset) : d_imageset(imageset) {} 00057 00062 virtual ~Imageset_xmlHandler(void) {} 00063 00064 /************************************************************************* 00065 SAX2 Handler overrides 00066 *************************************************************************/ 00071 virtual void elementStart(const String& element, const XMLAttributes& attributes); 00072 virtual void elementEnd(const String& element); 00073 00074 /************************************************************************* 00075 Functions used by our implementation 00076 *************************************************************************/ 00077 Imageset* getImageset(void) const {return d_imageset;} 00078 00079 private: 00080 /************************************************************************* 00081 Implementation Constants 00082 *************************************************************************/ 00083 static const String ImagesetElement; 00084 static const String ImageElement; 00085 static const char ImagesetNameAttribute[]; 00086 static const char ImagesetImageFileAttribute[]; 00087 static const char ImagesetResourceGroupAttribute[]; 00088 static const char ImagesetNativeHorzResAttribute[]; 00089 static const char ImagesetNativeVertResAttribute[]; 00090 static const char ImagesetAutoScaledAttribute[]; 00091 static const char ImageNameAttribute[]; 00092 static const char ImageXPosAttribute[]; 00093 static const char ImageYPosAttribute[]; 00094 static const char ImageWidthAttribute[]; 00095 static const char ImageHeightAttribute[]; 00096 static const char ImageXOffsetAttribute[]; 00097 static const char ImageYOffsetAttribute[]; 00098 00099 /************************************************************************* 00100 Implementation Data 00101 *************************************************************************/ 00102 Imageset* d_imageset; 00103 }; 00104 00105 } // End of CEGUI namespace section 00106 00107 #endif // end of guard _CEGUIImageset_xmlHandler_h_