arsa  2.7
IGUIElementFactory.h
Go to the documentation of this file.
1 // Copyright (C) 2002-2012 Nikolaus Gebhardt
2 // This file is part of the "Irrlicht Engine".
3 // For conditions of distribution and use, see copyright notice in irrlicht.h
4 
5 #ifndef __I_GUI_ELEMENT_FACTORY_H_INCLUDED__
6 #define __I_GUI_ELEMENT_FACTORY_H_INCLUDED__
7 
8 #include "IReferenceCounted.h"
9 #include "EGUIElementTypes.h"
10 
11 namespace irr
12 {
13 
14 namespace gui
15 {
16  class IGUIElement;
17 
19 
26  class IGUIElementFactory : public virtual IReferenceCounted
27  {
28  public:
29 
31 
35 
37 
40  virtual IGUIElement* addGUIElement(const c8* typeName, IGUIElement* parent=0) = 0;
41 
43  virtual s32 getCreatableGUIElementTypeCount() const = 0;
44 
46 
48  virtual EGUI_ELEMENT_TYPE getCreateableGUIElementType(s32 idx) const = 0;
49 
51 
53  virtual const c8* getCreateableGUIElementTypeName(s32 idx) const = 0;
54 
56 
58  virtual const c8* getCreateableGUIElementTypeName(EGUI_ELEMENT_TYPE type) const = 0;
59  };
60 
61 
62 } // end namespace gui
63 } // end namespace irr
64 
65 #endif // __I_GUI_ELEMENT_FACTORY_H_INCLUDED__
66 
EGUI_ELEMENT_TYPE
List of all basic Irrlicht GUI elements.
char c8
8 bit character variable.
Definition: irrTypes.h:35
Everything in the Irrlicht Engine can be found in this namespace.
Definition: CARSADPad.h:6
virtual const c8 * getCreateableGUIElementTypeName(s32 idx) const =0
Get type name of a creatable GUI element type by index.
signed int s32
32 bit signed variable.
Definition: irrTypes.h:70
Interface making it possible to dynamically create GUI elements.
Base class of all GUI elements.
Definition: IGUIElement.h:23
virtual s32 getCreatableGUIElementTypeCount() const =0
Get amount of GUI element types this factory is able to create.
Base class of most objects of the Irrlicht Engine.
GLuint GLuint GLsizei GLenum type
Definition: SDL_opengl.h:1571
virtual EGUI_ELEMENT_TYPE getCreateableGUIElementType(s32 idx) const =0
Get type of a creatable element type.
virtual IGUIElement * addGUIElement(EGUI_ELEMENT_TYPE type, IGUIElement *parent=0)=0
adds an element to the gui environment based on its type id