# CEGUIImageset_xmlHandler.h

    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_