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

Create a list of elements, where one can be selected by the user. More...

#include <CList.h>

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

Public Member Functions

 CList ()
 
virtual ~CList ()
 
virtual void ResetStates ()
 
virtual void AddItem (const CStrW &str, const CStrW &data)
 Adds an item last to the list. More...
 
- Public Member Functions inherited from IGUIScrollBarOwner
 IGUIScrollBarOwner ()
 
virtual ~IGUIScrollBarOwner ()
 
virtual const SGUIScrollBarStyleGetScrollBarStyle (const CStr &style) const
 Interface for the m_ScrollBar to use. More...
 
virtual void AddScrollBar (IGUIScrollBar *scrollbar)
 Add a scroll-bar. More...
 
virtual IGUIScrollBarGetScrollBar (const int &index)
 Get Scroll Bar reference (it should be transparent it's actually pointers). More...
 
virtual float GetScrollBarPos (const int index) const
 Get the position of the scroll bar at. More...
 
- Public Member Functions inherited from IGUIObject
 IGUIObject ()
 
virtual ~IGUIObject ()
 
virtual bool MouseOver ()
 Checks if mouse is hovering this object. 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...
 
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...
 
- Public Member Functions inherited from IGUITextOwner
 IGUITextOwner ()
 
virtual ~IGUITextOwner ()
 
void AddText (SGUIText *text)
 Adds a text object. More...
 
virtual void UpdateCachedSize ()
 
virtual void DrawText (size_t index, const CColor &color, const CPos &pos, float z, const CRect &clipping=CRect())
 Draws the Text. More...
 
virtual bool MouseOverIcon ()
 Test if mouse position is over an icon. More...
 

Protected Member Functions

virtual void SetupText ()
 Sets up text, should be called every time changes has been made that can change the visual. More...
 
virtual void HandleMessage (SGUIMessage &Message)
 
virtual InReaction ManuallyHandleEvent (const SDL_Event_ *ev)
 Handle events manually to catch keyboard inputting. More...
 
virtual void Draw ()
 Draws the List box. More...
 
virtual void SelectNextElement ()
 Easy select elements functions. More...
 
virtual void SelectPrevElement ()
 
virtual void SelectFirstElement ()
 
virtual void SelectLastElement ()
 
virtual bool HandleAdditionalChildren (const XMBElement &child, CXeromyces *pFile)
 Handle the <item> tag. More...
 
void UpdateAutoScroll ()
 
virtual void DrawList (const int &selected, const CStr &_sprite, const CStr &_sprite_selected, const CStr &_textcolor)
 
virtual CRect GetListRect () const
 
virtual bool GetModified () const
 
- Protected Member Functions inherited from IGUIObject
void AddSetting (const EGUISettingType &Type, const CStr &Name)
 Add a setting to m_Settings. More...
 
virtual void Destroy ()
 Calls Destroy on all children, and deallocates all memory. 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...
 
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...
 
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 Member Functions inherited from IGUITextOwner
void CalculateTextPosition (CRect &ObjSize, CPos &TextPos, SGUIText &Text)
 Calculate the position for the text, based on the alignment. More...
 

Protected Attributes

std::vector< float > m_ItemsYPositions
 List of each element's relative y position. More...
 
- Protected Attributes inherited from IGUIScrollBarOwner
std::vector< IGUIScrollBar * > m_ScrollBars
 Predominately you will only have one, but you can have as many as you like. More...
 
- 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...
 
- Protected Attributes inherited from IGUITextOwner
bool m_GeneratedTextsValid
 Whether the cached text is currently valid (if not then SetupText will be called by Draw) More...
 
std::vector< SGUIText * > m_GeneratedTexts
 Texts that are generated and ready to be rendered. More...
 

Private Attributes

bool m_Modified
 
int m_PrevSelectedItem
 
double m_LastItemClickTime
 

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...
 

Detailed Description

Create a list of elements, where one can be selected by the user.

The control will use a pre-processed text-object for each element, which will be managed by the IGUITextOwner structure.

A scroll-bar will appear when needed. This will be achieved with the IGUIScrollBarOwner structure.

Constructor & Destructor Documentation

CList::CList ( )
CList::~CList ( )
virtual

Member Function Documentation

void CList::AddItem ( const CStrW &  str,
const CStrW &  data 
)
virtual

Adds an item last to the list.

void CList::Draw ( )
protectedvirtual

Draws the List box.

Reimplemented from IGUIScrollBarOwner.

Reimplemented in CDropDown.

void CList::DrawList ( const int &  selected,
const CStr &  _sprite,
const CStr &  _sprite_selected,
const CStr &  _textcolor 
)
protectedvirtual

Reimplemented in COList.

virtual CRect CList::GetListRect ( ) const
inlineprotectedvirtual

Reimplemented in CDropDown, and COList.

virtual bool CList::GetModified ( ) const
inlineprotectedvirtual
bool CList::HandleAdditionalChildren ( const XMBElement child,
CXeromyces pFile 
)
protectedvirtual

Handle the <item> tag.

Reimplemented from IGUIObject.

Reimplemented in COList.

void CList::HandleMessage ( SGUIMessage Message)
protectedvirtual
See also
IGUIObject::HandleMessage()

Reimplemented from IGUIScrollBarOwner.

Reimplemented in CDropDown, and COList.

InReaction CList::ManuallyHandleEvent ( const SDL_Event_ ev)
protectedvirtual

Handle events manually to catch keyboard inputting.

Reimplemented from IGUIObject.

Reimplemented in CDropDown.

virtual void CList::ResetStates ( )
inlinevirtual
See also
IGUIObject::ResetStates()

Reimplemented from IGUIScrollBarOwner.

void CList::SelectFirstElement ( )
protectedvirtual
void CList::SelectLastElement ( )
protectedvirtual
void CList::SelectNextElement ( )
protectedvirtual

Easy select elements functions.

void CList::SelectPrevElement ( )
protectedvirtual
void CList::SetupText ( )
protectedvirtual

Sets up text, should be called every time changes has been made that can change the visual.

Implements IGUITextOwner.

Reimplemented in CDropDown, and COList.

void CList::UpdateAutoScroll ( )
protected

Member Data Documentation

std::vector<float> CList::m_ItemsYPositions
protected

List of each element's relative y position.

Will be one larger than m_Items, because it will end with the bottom of the last element. First element will always be zero, but still stored for easy handling.

double CList::m_LastItemClickTime
private
bool CList::m_Modified
private
int CList::m_PrevSelectedItem
private

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