gfx::GuiScreen Class Reference

Screen class. More...

#include <gfx_gui.hh>

List of all members.

Public Member Functions

 GuiScreen (GuiBase &gui)
 ~GuiScreen ()
void Draw (void)
void SetVisi (bool f)
bool IfVisi (void)
void ToggleVisi (void)
void SetSens (bool f)
void ToggleSens (void)
bool IfSens (void)
void SetVisiSens (bool f)
void Print (const char *text, uint textLen, fp x, fp y, eFontMode fontMode)
void Print (const char *text, uint textLen, fp x, fp y, eFontMode fontMode, const RGBA rgba)
void PrintTimer (Seconds seconds, const PrintDesc &desc)
uint PrintTimerPopulation (void)
bool IfPrintTimerDuplicate (const char *str)
void SetPrintColor (const RGBA rgba)
void PushPrint (eScreenFontType type, eScreenFontSize size)
void PushPrint (eScreenFontType type, eScreenFontSize size, const RGBA rgba)
void PopPrint (void)
GuiButtonNewButton (fp x, fp y, eFontMode fontMode, fnMouseButtonCallback callback)
void DeleteButton (GuiButton *button)

Private Member Functions

void PushFont (Gfont &gfont, eScreenFontType type, eScreenFontSize size, const RGBA rgba)
void PopFont (Gfont &gfont)
void LinkObject (GuiObject *obj)
void UnlinkObject (GuiObject *obj)

Private Attributes

GuiBasemGui
bool mVisible
bool mSensitive
Dlink< GuiScreen > * mLinkScreen
uint mPrintTimerCnt
Gfont mGfont
Dlist< GuiObjectmObjectDlist
stack< GfontmGfontStack

Friends

class GuiBase
class GuiObject


Detailed Description

Screen class.

Users should call Gui::NewScreen().


Constructor & Destructor Documentation

gfx::GuiScreen::GuiScreen ( GuiBase gui  )  [explicit]

ctor/dtor.

gfx::GuiScreen::~GuiScreen (  ) 


Member Function Documentation

void gfx::GuiScreen::Draw ( void   ) 

Draw all objects in the screen.

void gfx::GuiScreen::SetVisi ( bool  f  )  [inline]

bool gfx::GuiScreen::IfVisi ( void   )  [inline]

void gfx::GuiScreen::ToggleVisi ( void   )  [inline]

void gfx::GuiScreen::SetSens ( bool  f  )  [inline]

void gfx::GuiScreen::ToggleSens ( void   )  [inline]

bool gfx::GuiScreen::IfSens ( void   )  [inline]

void gfx::GuiScreen::SetVisiSens ( bool  f  )  [inline]

void gfx::GuiScreen::Print ( const char *  text,
uint  textLen,
fp  x,
fp  y,
eFontMode  fontMode 
)

Font::Print() wrapper. See gfx_font.hh. Unlike PrintTimer(), the application must repetively call Print() on every frame.

void gfx::GuiScreen::Print ( const char *  text,
uint  textLen,
fp  x,
fp  y,
eFontMode  fontMode,
const RGBA  rgba 
)

void gfx::GuiScreen::PrintTimer ( Seconds  seconds,
const PrintDesc desc 
)

Print a message that expires. Unlike regular Print(), the Gui class code is responsible for drawing the message text on every frame.

uint gfx::GuiScreen::PrintTimerPopulation ( void   )  [inline]

bool gfx::GuiScreen::IfPrintTimerDuplicate ( const char *  str  ) 

Return true if any GuiPrint object with an outstanding timer matches the passed string. Used to avoid printing duplicate messages.

void gfx::GuiScreen::SetPrintColor ( const RGBA  rgba  ) 

Set color used by Print().

void gfx::GuiScreen::PushPrint ( eScreenFontType  type,
eScreenFontSize  size 
)

Interface to change and restore fonts. PushPrint() does push-then-change operations.

void gfx::GuiScreen::PushPrint ( eScreenFontType  type,
eScreenFontSize  size,
const RGBA  rgba 
)

void gfx::GuiScreen::PopPrint ( void   ) 

void gfx::GuiScreen::PushFont ( Gfont gfont,
eScreenFontType  type,
eScreenFontSize  size,
const RGBA  rgba 
) [private]

Push/pop fonts in this screen.

void gfx::GuiScreen::PopFont ( Gfont gfont  )  [private]

GuiButton * gfx::GuiScreen::NewButton ( fp  x,
fp  y,
eFontMode  fontMode,
fnMouseButtonCallback  callback 
)

Button wrapper.

void gfx::GuiScreen::DeleteButton ( GuiButton button  ) 

void gfx::GuiScreen::LinkObject ( GuiObject obj  )  [private]

Manage list of objects in screen.

void gfx::GuiScreen::UnlinkObject ( GuiObject obj  )  [private]


Friends And Related Function Documentation

friend class GuiBase [friend]

friend class GuiObject [friend]


Member Data Documentation

GuiBase& gfx::GuiScreen::mGui [private]

bool gfx::GuiScreen::mVisible [private]

bool gfx::GuiScreen::mSensitive [private]

Dlink<GuiScreen>* gfx::GuiScreen::mLinkScreen [private]

uint gfx::GuiScreen::mPrintTimerCnt [private]

Gfont gfx::GuiScreen::mGfont [private]

Dlist<GuiObject> gfx::GuiScreen::mObjectDlist [private]

stack<Gfont> gfx::GuiScreen::mGfontStack [private]


The documentation for this class was generated from the following files: Palomino 3D Engine documents generated by doxygen 1.5.3 on Fri Nov 23 11:26:26 2007