48 lines
1.3 KiB
C
48 lines
1.3 KiB
C
|
// Copyright (C) 2007 Id Software, Inc.
|
||
|
//
|
||
|
|
||
|
|
||
|
#ifndef __GAME_GUIS_USERINTERFACEWINDOW_SHAPED_H__
|
||
|
#define __GAME_GUIS_USERINTERFACEWINDOW_SHAPED_H__
|
||
|
|
||
|
#include "UserInterfaceTypes.h"
|
||
|
|
||
|
extern const char sdUITemplateFunctionInstance_IdentifierShaped[];
|
||
|
/*
|
||
|
============
|
||
|
sdUIWindow_Shaped
|
||
|
============
|
||
|
*/
|
||
|
class sdUIWindow_Shaped :
|
||
|
public sdUIWindow {
|
||
|
public:
|
||
|
|
||
|
typedef sdUITemplateFunction< sdUIWindow_Shaped > ShapedTemplateFunction;
|
||
|
|
||
|
public:
|
||
|
sdUIWindow_Shaped( void );
|
||
|
virtual ~sdUIWindow_Shaped( void );
|
||
|
|
||
|
virtual const char* GetScopeClassName() const { return "sdUIWindow_Shaped"; }
|
||
|
virtual const ShapedTemplateFunction* FindFunction( const char* name );
|
||
|
|
||
|
virtual sdUIFunctionInstance* GetFunction( const char* name );
|
||
|
static void InitFunctions();
|
||
|
static void ShutdownFunctions( void ) { shapedFunctions.DeleteContents(); }
|
||
|
|
||
|
virtual bool RunNamedMethod( const char* name, sdUIFunctionStack& stack );
|
||
|
|
||
|
void Script_PushShapeVertex( sdUIFunctionStack& stack );
|
||
|
|
||
|
void Script_DrawMaterialShape( sdUIFunctionStack& stack );
|
||
|
|
||
|
protected:
|
||
|
virtual void DrawLocal();
|
||
|
|
||
|
private:
|
||
|
idWinding2D drawWinding;
|
||
|
static idHashMap< ShapedTemplateFunction* > shapedFunctions;
|
||
|
};
|
||
|
|
||
|
#endif // __GAME_GUIS_USERINTERFACEWINDOW_SHAPED_H__
|