//
// Tools_GUIMenu_Element_Animation.h
//
// Created by RDM - 16 April 2007
//
// Copyright (C) 2007 Rebellion, All Rights Reserved.
//

#ifdef ASURA_USE_PRAGMA_ONCE
#pragma once
#endif

#ifndef __TOOLS_GUIMENU_ELEMENT_ANIMATION_H__
#define __TOOLS_GUIMENU_ELEMENT_ANIMATION_H__

#ifdef ASURA_USE_GUI_MENU_SYSTEM

/************/
/* Includes */
/************/

// asura

// tools
#include "GUIMenu/Tools_GUIMenu_Element_Base.h"

/***********/
/* Classes */
/***********/

class Asura_GUIMenu_Element_Animation;


/*************************************************************
 *
 * Class Name    : Tools_GUIMenu_Element_Animation
 *
 * Author        : Richard May
 *
 * Description   : Tools interface for 3D anim element for the GUI system
 *
 *************************************************************/
class Tools_GUIMenu_Element_Animation : public Tools_GUIMenu_Element_Base
{
private:
	typedef Tools_GUIMenu_Element_Base PARENT;

public :
	Tools_GUIMenu_Element_Animation( Asura_GUIMenu_Element_Animation* pxAsuraAnim, Tools_GUIMenu_Root* pxToolsParent );
	~Tools_GUIMenu_Element_Animation();

	virtual void Update();

protected :
	/* Helper Functions. */
	virtual void AddOverlayControls(Asura_Overlay* pxOverlay,Asura_Vector_2& xOffset);	

//	virtual const char* GetLocalDataFlagName(u_int uFlagValue) const;
//	virtual bool IsModifierTypeSupported( ASURA_GUIMENU_MODIFY_TYPE eType ) const;
//	virtual void AddModifierOverlayControls(Asura_GUIMenu_Modifier* pxModifier, Asura_Vector_2& xOffset);
//	virtual void InitialiseModifier(Asura_GUIMenu_Modifier* pxModifier);
//	virtual void CleanupModifierEditing();

	/* Static Functions. */
	static void AddSkinPickerDialog( const char* szName, Asura_Overlay* pxOverlay, Asura_Vector_2& xOffset, Asura_Hash_ID* puOutputValue, Asura_String& xDisplayString, const char* szHelpText=NULL, bool* pbChanged=NULL );
	static void ChooseSkin( int iData );

	/* Data */
	Asura_GUIMenu_Element_Animation* m_pxAsuraAnim;
};

/***************/
/* End of File */
/***************/

#endif //ASURA_USE_GUI_MENU_SYSTEM
#endif//__TOOLS_GUIMENU_ELEMENT_ANIMATION_H__