Pyrogenesis  trunk
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
CMiniMap Class Reference

#include <MiniMap.h>

Inheritance diagram for CMiniMap:
Inheritance graph
[legend]
Collaboration diagram for CMiniMap:
Collaboration graph
[legend]

Public Member Functions

 CMiniMap ()
 
virtual ~CMiniMap ()
 
- Public Member Functions inherited from IGUIObject
 IGUIObject ()
 
virtual ~IGUIObject ()
 
virtual bool MouseOverIcon ()
 Test if mouse position is over an icon. More...
 
const CStr & GetName () const
 Get object name, name is unique. More...
 
void SetName (const CStr &Name)
 Get object name. More...
 
CStr GetPresentableName () const
 
void AddToPointersMap (map_pObjects &ObjectMap)
 Adds object and its children to the map, it's name being the first part, and the second being itself. More...
 
void AddChild (IGUIObject *pChild)
 Notice nothing will be returned or thrown if the child hasn't been inputted into the GUI yet. More...
 
vector_pObjects::iterator begin ()
 
vector_pObjects::iterator end ()
 
bool SettingExists (const CStr &Setting) const
 Checks if settings exists, only available for derived classes that has this set up, that's why the base class just returns false. More...
 
virtual void UpdateCachedSize ()
 All sizes are relative to resolution, and the calculation is not wanted in real time, therefore it is cached, update the cached size with this function. More...
 
PSRETURN SetSetting (const CStr &Setting, const CStrW &Value, const bool &SkipMessage=false)
 Set a setting by string, regardless of what type it is. More...
 
PSRETURN GetSettingType (const CStr &Setting, EGUISettingType &Type) const
 Retrieves the type of a named setting. More...
 
void RegisterScriptHandler (const CStr &Action, const CStr &Code, CGUI *pGUI)
 Set the script handler for a particular object-specific action. More...
 
JSObject * GetJSObject ()
 Retrieves the JSObject representing this GUI object. More...
 
CGUIGetGUI ()
 
const CGUIGetGUI () const
 
void SetFocus ()
 Take focus! More...
 

Protected Member Functions

virtual void Draw ()
 Draws the object. More...
 
virtual void HandleMessage (SGUIMessage &Message)
 
virtual bool MouseOver ()
 
void CreateTextures ()
 
void RebuildTerrainTexture ()
 
void Destroy ()
 Calls Destroy on all children, and deallocates all memory. More...
 
void SetCameraPos ()
 
void FireWorldClickEvent (int button, int clicks)
 
void DrawTexture (CShaderProgramPtr shader, float coordMax, float angle, float x, float y, float x2, float y2, float z)
 
void DrawViewRect (CMatrix3D transform)
 
void GetMouseWorldCoordinates (float &x, float &z)
 
float GetAngle ()
 
- Protected Member Functions inherited from IGUIObject
void AddSetting (const EGUISettingType &Type, const CStr &Name)
 Add a setting to m_Settings. More...
 
virtual InReaction ManuallyHandleEvent (const SDL_Event_ *ev)
 Some objects need to handle the SDL_Event_ manually. More...
 
void LoadStyle (CGUI &GUIinstance, const CStr &StyleName)
 Loads a style. More...
 
void LoadStyle (const SGUIStyle &Style)
 Loads a style. More...
 
virtual float GetBufferedZ () const
 Returns not the Z value, but the actual buffered Z value, i.e. More...
 
void SetGUI (CGUI *const &pGUI)
 
void SetParent (IGUIObject *pParent)
 Set parent of this object. More...
 
virtual void ResetStates ()
 Reset internal state of this object. More...
 
bool IsFocused () const
 Check if object is focused. More...
 
IGUIObjectGetParent () const
 NOTE! This will not just return m_pParent, when that is need use it! There is one exception to it, when the parent is the top-node (the object that isn't a real object), this will return NULL, so that the top-node's children are seemingly parentless. More...
 
CPos GetMousePos () const
 Get Mouse from CGUI. More...
 
virtual bool HandleAdditionalChildren (const XMBElement &child, CXeromyces *pFile)
 Handle additional children to the <object>-tag. More...
 
InReaction SendEvent (EGUIMessageType type, const CStr &EventName)
 Send event to this GUI object (HandleMessage and ScriptEvent) More...
 
void ScriptEvent (const CStr &Action)
 Execute the script for a particular action. More...
 
void ScriptEvent (const CStr &Action, JS::HandleValue Argument)
 Execute the script for a particular action. More...
 
void SetScriptHandler (const CStr &Action, JS::HandleObject Function)
 
void UpdateMouseOver (IGUIObject *const &pMouseOver)
 Inputes the object that is currently hovered, this function updates this object accordingly (i.e. More...
 

Protected Attributes

const CTerrainm_Terrain
 
const CCameram_Camera
 
bool m_Clicking
 
GLuint m_TerrainTexture
 
u32m_TerrainData
 
bool m_TerrainDirty
 
ssize_t m_Width
 
ssize_t m_Height
 
ssize_t m_MapSize
 
GLsizei m_TextureSize
 
float m_MapScale
 
float m_ShallowPassageHeight
 
float m_WaterHeight
 
VertexIndexArray m_IndexArray
 
VertexArray m_VertexArray
 
VertexArray::Attribute m_AttributePos
 
VertexArray::Attribute m_AttributeColor
 
size_t m_EntitiesDrawn
 
double m_PingDuration
 
double m_HalfBlinkDuration
 
double m_NextBlinkTime
 
bool m_BlinkState
 
- Protected Attributes inherited from IGUIObject
CRect m_CachedActualSize
 Cached size, real size m_Size is actually dependent on resolution and can have different real outcomes, this is the real outcome cached to avoid slow calculations in real time. More...
 
CStr m_Name
 
vector_pObjects m_Children
 
IGUIObjectm_pParent
 
double m_LastClickTime [6]
 
bool m_MouseHovering
 This is an array of true or false, each element is associated with a string representing a setting. More...
 

Additional Inherited Members

- Public Attributes inherited from IGUIObject
std::map< CStr, SGUISettingm_Settings
 Settings pool, all an object's settings are located here If a derived object has got more settings that the base settings, it's because they have a new version of the function SetupSettings(). More...
 

Constructor & Destructor Documentation

CMiniMap::CMiniMap ( )
CMiniMap::~CMiniMap ( )
virtual

Member Function Documentation

void CMiniMap::CreateTextures ( )
protected
void CMiniMap::Destroy ( )
protectedvirtual

Calls Destroy on all children, and deallocates all memory.

MEGA TODO Should it destroy it's children?

Reimplemented from IGUIObject.

void CMiniMap::Draw ( )
protectedvirtual

Draws the object.

Exceptions
PSERRORif any. But this will mostlikely be very rare since if an object is drawn unsuccessfully it'll probably only output in the Error log, and not disrupt the whole GUI drawing.

Implements IGUIObject.

void CMiniMap::DrawTexture ( CShaderProgramPtr  shader,
float  coordMax,
float  angle,
float  x,
float  y,
float  x2,
float  y2,
float  z 
)
protected
void CMiniMap::DrawViewRect ( CMatrix3D  transform)
protected
void CMiniMap::FireWorldClickEvent ( int  button,
int  clicks 
)
protected
float CMiniMap::GetAngle ( )
protected
void CMiniMap::GetMouseWorldCoordinates ( float &  x,
float &  z 
)
protected
void CMiniMap::HandleMessage ( SGUIMessage Message)
protectedvirtual
See also
IGUIObject::HandleMessage()

Reimplemented from IGUIObject.

bool CMiniMap::MouseOver ( )
protectedvirtual
See also
IGUIObject::MouseOver()

Reimplemented from IGUIObject.

void CMiniMap::RebuildTerrainTexture ( )
protected
void CMiniMap::SetCameraPos ( )
protected

Member Data Documentation

VertexArray::Attribute CMiniMap::m_AttributeColor
protected
VertexArray::Attribute CMiniMap::m_AttributePos
protected
bool CMiniMap::m_BlinkState
protected
const CCamera* CMiniMap::m_Camera
protected
bool CMiniMap::m_Clicking
protected
size_t CMiniMap::m_EntitiesDrawn
protected
double CMiniMap::m_HalfBlinkDuration
protected
ssize_t CMiniMap::m_Height
protected
VertexIndexArray CMiniMap::m_IndexArray
protected
float CMiniMap::m_MapScale
protected
ssize_t CMiniMap::m_MapSize
protected
double CMiniMap::m_NextBlinkTime
protected
double CMiniMap::m_PingDuration
protected
float CMiniMap::m_ShallowPassageHeight
protected
const CTerrain* CMiniMap::m_Terrain
protected
u32* CMiniMap::m_TerrainData
protected
bool CMiniMap::m_TerrainDirty
protected
GLuint CMiniMap::m_TerrainTexture
protected
GLsizei CMiniMap::m_TextureSize
protected
VertexArray CMiniMap::m_VertexArray
protected
float CMiniMap::m_WaterHeight
protected
ssize_t CMiniMap::m_Width
protected

The documentation for this class was generated from the following files: