Crazy Eddies GUI System: CEGUIAnimation_xmlHandler.h Source File

Crazy Eddies GUI System 0.7.6

- Main Page
- Related Pages
- Namespaces
- Classes
- Files

- File List

CEGUIAnimation_xmlHandler.h

    00001 /***********************************************************************
    00002     filename:   CEGUIAnimation_xmlHandler.h
    00003     created:    Wed Aug 11 2010
    00004     author:     Paul D Turner <paul@cegui.org.uk>
    00005 *************************************************************************/
    00006 /***************************************************************************
    00007  *   Copyright (C) 2004 - 2010 Paul D Turner & The CEGUI Development Team
    00008  *
    00009  *   Permission is hereby granted, free of charge, to any person obtaining
    00010  *   a copy of this software and associated documentation files (the
    00011  *   "Software"), to deal in the Software without restriction, including
    00012  *   without limitation the rights to use, copy, modify, merge, publish,
    00013  *   distribute, sublicense, and/or sell copies of the Software, and to
    00014  *   permit persons to whom the Software is furnished to do so, subject to
    00015  *   the following conditions:
    00016  *
    00017  *   The above copyright notice and this permission notice shall be
    00018  *   included in all copies or substantial portions of the Software.
    00019  *
    00020  *   THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
    00021  *   EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
    00022  *   MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
    00023  *   IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
    00024  *   OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
    00025  *   ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
    00026  *   OTHER DEALINGS IN THE SOFTWARE.
    00027  ***************************************************************************/
    00028 #ifndef _CEGUIAnimation_xmlHandler_h_
    00029 #define _CEGUIAnimation_xmlHandler_h_
    00030
    00031 #include "CEGUIChainedXMLHandler.h"
    00032 #include "CEGUIString.h"
    00033
    00034 // Start of CEGUI namespace section
    00035 namespace CEGUI
    00036 {
    00038 class CEGUIEXPORT Animation_xmlHandler : public ChainedXMLHandler
    00039 {
    00040 public:
    00041     Animation_xmlHandler();
    00042     ~Animation_xmlHandler();
    00043
    00044 protected:
    00045     // implement ChainedXMLHandler interface.
    00046     void elementStartLocal(const String& element,
    00047                            const XMLAttributes& attributes);
    00048     void elementEndLocal(const String& element);
    00049 };
    00050
    00051 //----------------------------------------------------------------------------//
    00053 class CEGUIEXPORT AnimationDefinitionHandler : public ChainedXMLHandler
    00054 {
    00055 public:
    00057     static const String ElementName;
    00058
    00059     AnimationDefinitionHandler(const XMLAttributes& attributes,
    00060                                const String& name_prefix);
    00061     ~AnimationDefinitionHandler();
    00062
    00063 protected:
    00064     // implement ChainedXMLHandler interface.
    00065     void elementStartLocal(const String& element,
    00066                            const XMLAttributes& attributes);
    00067     void elementEndLocal(const String& element);
    00068
    00070     Animation* d_anim;
    00071 };
    00072
    00073 //----------------------------------------------------------------------------//
    00075 class CEGUIEXPORT AnimationAffectorHandler : public ChainedXMLHandler
    00076 {
    00077 public:
    00079     static const String ElementName;
    00080
    00081     AnimationAffectorHandler(const XMLAttributes& attributes,
    00082                              Animation& anim);
    00083     ~AnimationAffectorHandler();
    00084
    00085 protected:
    00086     // implement ChainedXMLHandler interface.
    00087     void elementStartLocal(const String& element,
    00088                            const XMLAttributes& attributes);
    00089     void elementEndLocal(const String& element);
    00090
    00092     Affector* d_affector;
    00093 };
    00094
    00095 //----------------------------------------------------------------------------//
    00097 class CEGUIEXPORT AnimationKeyFrameHandler : public ChainedXMLHandler
    00098 {
    00099 public:
    00101     static const String ElementName;
    00102
    00103     AnimationKeyFrameHandler(const XMLAttributes& attributes,
    00104                              Affector& affector);
    00105     ~AnimationKeyFrameHandler();
    00106
    00107 protected:
    00108     // implement ChainedXMLHandler interface.
    00109     void elementStartLocal(const String& element,
    00110                            const XMLAttributes& attributes);
    00111     void elementEndLocal(const String& element);
    00112 };
    00113
    00114 //----------------------------------------------------------------------------//
    00116 class CEGUIEXPORT AnimationSubscriptionHandler : public ChainedXMLHandler
    00117 {
    00118 public:
    00120     static const String ElementName;
    00121
    00122     AnimationSubscriptionHandler(const XMLAttributes& attributes,
    00123                                  Animation& anim);
    00124     ~AnimationSubscriptionHandler();
    00125
    00126 protected:
    00127     // implement ChainedXMLHandler interface.
    00128     void elementStartLocal(const String& element,
    00129                            const XMLAttributes& attributes);
    00130     void elementEndLocal(const String& element);
    00131 };
    00132
    00133 } // End of  CEGUI namespace section
    00134
    00135 #endif  // end of guard _CEGUIAnimation_xmlHandler_h_
    00136