xoreos  0.0.5
Public Member Functions | Private Member Functions | Private Attributes | List of all members
Engines::NWN::CharSpells Class Reference

#include <charspells.h>

Inheritance diagram for Engines::NWN::CharSpells:
Inheritance graph
[legend]
Collaboration diagram for Engines::NWN::CharSpells:
Collaboration graph
[legend]

Public Member Functions

 CharSpells (CharGenChoices &choices, Engines::Console *console)
 
 ~CharSpells ()
 
void reset ()
 
void fixWidgetType (const Common::UString &tag, NWN::GUI::WidgetType &type)
 
void showSpellLevel (size_t spellLevel, bool forceUpdate=false)
 
void moveSpell (WidgetListItemSpell *spellItem)
 
void showSpellHelp (Spell &spell)
 
- Public Member Functions inherited from Engines::NWN::CharGenBase
 CharGenBase (::Engines::Console *console=0)
 
 ~CharGenBase ()
 
- Public Member Functions inherited from Engines::NWN::GUI
 GUI (::Engines::Console *console=0)
 
 ~GUI ()
 
- Public Member Functions inherited from Engines::GUI
 GUI (Console *console=0)
 
virtual void show ()
 Show the GUI. More...
 
virtual void hide ()
 Hide the GUI. More...
 
uint32 run (uint32 startCode=kStartCodeNone)
 Run the GUI. More...
 
virtual void abort ()
 Abort the currently running GUI. More...
 
void addEvent (const Events::Event &event)
 Add a single event for consideration into the GUI event queue. More...
 
uint32 processEventQueue ()
 Process the current event queue. More...
 
virtual Common::UString getName () const
 

Private Member Functions

void callbackActive (Widget &widget)
 Callback that's triggered when a widget was activated. More...
 
void makeSpellsList ()
 
void computeRemainingSpells (const Aurora::TwoDARow &classRow)
 
void updateRemainLabel ()
 
void setRecommendedSpells ()
 

Private Attributes

Common::ScopedPtr< CharHelp_spellHelp
 
WidgetListBox_availListBox
 
WidgetListBox_knownListBox
 
std::vector< std::vector< Spell > > _availSpells
 
std::vector< std::vector< Spell > > _knownSpells
 
std::vector< uint8_remainingSpells
 
size_t _currentSpellLevel
 
size_t _maxLevel
 
size_t _abilityLimit
 

Additional Inherited Members

- Static Public Attributes inherited from Engines::GUI
static const uint32 kStartCodeNone = 0
 
static const uint32 kReturnCodeNone = 0
 
static const uint32 kReturnCodeAbort = 0xFFFFFFFF
 
- Protected Types inherited from Engines::NWN::GUI
enum  WidgetType {
  kWidgetTypeInvalid = - 1, kWidgetTypeFrame = 0, kWidgetTypeCloseButton = 1, kWidgetTypeCheckBox = 2,
  kWidgetTypePanel = 3, kWidgetTypeLabel = 5, kWidgetTypeSlider = 6, kWidgetTypeEditBox = 8,
  kWidgetTypeButton = 9, kWidgetTypeListBox = 100, kWidgetTypeScrollbar = 101
}
 
- Protected Member Functions inherited from Engines::NWN::GUI
void load (const Common::UString &resref)
 
virtual void initWidget (Widget &widget)
 
WidgetFramegetFrame (const Common::UString &tag, bool vital=false)
 
WidgetClosegetClose (const Common::UString &tag, bool vital=false)
 
WidgetCheckBoxgetCheckBox (const Common::UString &tag, bool vital=false)
 
WidgetPanelgetPanel (const Common::UString &tag, bool vital=false)
 
WidgetLabelgetLabel (const Common::UString &tag, bool vital=false)
 
WidgetSlidergetSlider (const Common::UString &tag, bool vital=false)
 
WidgetEditBoxgetEditBox (const Common::UString &tag, bool vital=false)
 
WidgetButtongetButton (const Common::UString &tag, bool vital=false)
 
WidgetListBoxgetListBox (const Common::UString &tag, bool vital=false)
 
WidgetScrollbargetScrollbar (const Common::UString &tag, bool vital=false)
 
- Protected Member Functions inherited from Engines::GUI
void addWidget (Widget *widget)
 Add a widget. More...
 
void removeWidget (Widget *widget)
 Remove a widget. More...
 
void clearWidgets ()
 Clear all widgets. More...
 
bool empty ()
 Check if the gui is currently empty. More...
 
bool hasWidget (const Common::UString &tag) const
 Does this specific widget exist within the GUI? More...
 
WidgetgetWidget (const Common::UString &tag, bool vital=false)
 Return a widget in the GUI. More...
 
const WidgetgetWidget (const Common::UString &tag, bool vital=false) const
 Return a widget in the GUI. More...
 
void declareGroup (const std::list< Widget *> &group)
 Put these widgets together into a group. More...
 
void removeFocus ()
 Forcefully remove the focus from the current widget. More...
 
void updateMouse ()
 Force an update of the mouse position. More...
 
virtual void mouseUp ()
 The mouse state has changed. More...
 
virtual void mouseDown ()
 
uint32 sub (GUI &gui, uint32 startCode=kStartCodeNone, bool showSelf=true, bool hideSelf=true)
 Open up a sub GUI. More...
 
void setPosition (float x, float y, float z)
 Set the GUI's position. More...
 
void getPosition (float &x, float &y, float &z) const
 Get the GUI's position. More...
 
virtual void callbackRun ()
 Callback that's triggered periodically in the run() method. More...
 
virtual void callbackTextInput (const Common::UString &text)
 Callback that's triggered when a text input is received. More...
 
virtual void callbackKeyInput (const Events::Key &key, const Events::EventType &type)
 Callback that's triggered when a key is pressed or released. More...
 
void addChild (GUI *gui)
 Add a child GUI object to this GUI. More...
 
void removeChild (GUI *gui)
 Remove a child GUI object from this GUI. More...
 
- Protected Attributes inherited from Engines::NWN::CharGenBase
CharGenChoices_choices
 
- Protected Attributes inherited from Engines::GUI
Console_console
 
Widget_currentWidget
 The widget the mouse is currently on. More...
 
uint32 _startCode
 The GUI's start code. More...
 
uint32 _returnCode
 The GUI's return code. More...
 
GUI_sub
 The currently running sub GUI. More...
 

Detailed Description

Definition at line 63 of file charspells.h.

Constructor & Destructor Documentation

◆ CharSpells()

Engines::NWN::CharSpells::CharSpells ( CharGenChoices choices,
Engines::Console console 
)

◆ ~CharSpells()

Engines::NWN::CharSpells::~CharSpells ( )

Member Function Documentation

◆ callbackActive()

void Engines::NWN::CharSpells::callbackActive ( Widget widget)
privatevirtual

Callback that's triggered when a widget was activated.

Reimplemented from Engines::GUI.

Definition at line 220 of file charspells.cpp.

References Engines::NWN::CharGenBase::_choices, _currentSpellLevel, _knownSpells, _maxLevel, Engines::GUI::_returnCode, Engines::Widget::getTag(), GfxMan, reset(), setRecommendedSpells(), Engines::NWN::CharGenChoices::setSpell(), and showSpellLevel().

Here is the call graph for this function:

◆ computeRemainingSpells()

void Engines::NWN::CharSpells::computeRemainingSpells ( const Aurora::TwoDARow classRow)
private

◆ fixWidgetType()

void Engines::NWN::CharSpells::fixWidgetType ( const Common::UString tag,
NWN::GUI::WidgetType type 
)
virtual

Reimplemented from Engines::NWN::GUI.

Definition at line 114 of file charspells.cpp.

References Common::UString::beginsWith(), and Engines::NWN::GUI::kWidgetTypeButton.

Here is the call graph for this function:

◆ makeSpellsList()

void Engines::NWN::CharSpells::makeSpellsList ( )
private

◆ moveSpell()

void Engines::NWN::CharSpells::moveSpell ( WidgetListItemSpell spellItem)

◆ reset()

void Engines::NWN::CharSpells::reset ( )
virtual

Implements Engines::NWN::CharGenBase.

Definition at line 110 of file charspells.cpp.

References makeSpellsList().

Referenced by callbackActive().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setRecommendedSpells()

void Engines::NWN::CharSpells::setRecommendedSpells ( )
private

Definition at line 415 of file charspells.cpp.

References _availSpells, Engines::NWN::CharGenBase::_choices, _currentSpellLevel, _knownSpells, _remainingSpells, Engines::NWN::CharGenChoices::getPrefSpells(), and showSpellLevel().

Referenced by callbackActive().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ showSpellHelp()

void Engines::NWN::CharSpells::showSpellHelp ( Spell spell)

Definition at line 454 of file charspells.cpp.

References _spellHelp, Engines::NWN::Spell::desc, Engines::NWN::Spell::icon, and Engines::NWN::Spell::name.

Referenced by Engines::NWN::WidgetListItemSpell::callbackHelp().

Here is the caller graph for this function:

◆ showSpellLevel()

void Engines::NWN::CharSpells::showSpellLevel ( size_t  spellLevel,
bool  forceUpdate = false 
)

◆ updateRemainLabel()

void Engines::NWN::CharSpells::updateRemainLabel ( )
private

Definition at line 411 of file charspells.cpp.

References _currentSpellLevel, _remainingSpells, Engines::NWN::GUI::getLabel(), and Engines::NWN::WidgetLabel::setText().

Referenced by makeSpellsList(), moveSpell(), and showSpellLevel().

Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ _abilityLimit

size_t Engines::NWN::CharSpells::_abilityLimit
private

Definition at line 95 of file charspells.h.

Referenced by CharSpells(), makeSpellsList(), and showSpellLevel().

◆ _availListBox

WidgetListBox* Engines::NWN::CharSpells::_availListBox
private

Definition at line 85 of file charspells.h.

Referenced by CharSpells(), moveSpell(), showSpellLevel(), and ~CharSpells().

◆ _availSpells

std::vector<std::vector<Spell> > Engines::NWN::CharSpells::_availSpells
private

Definition at line 88 of file charspells.h.

Referenced by makeSpellsList(), moveSpell(), setRecommendedSpells(), and showSpellLevel().

◆ _currentSpellLevel

size_t Engines::NWN::CharSpells::_currentSpellLevel
private

◆ _knownListBox

WidgetListBox* Engines::NWN::CharSpells::_knownListBox
private

Definition at line 86 of file charspells.h.

Referenced by CharSpells(), moveSpell(), showSpellLevel(), and ~CharSpells().

◆ _knownSpells

std::vector<std::vector<Spell> > Engines::NWN::CharSpells::_knownSpells
private

◆ _maxLevel

size_t Engines::NWN::CharSpells::_maxLevel
private

Definition at line 94 of file charspells.h.

Referenced by callbackActive(), and makeSpellsList().

◆ _remainingSpells

std::vector<uint8> Engines::NWN::CharSpells::_remainingSpells
private

◆ _spellHelp

Common::ScopedPtr<CharHelp> Engines::NWN::CharSpells::_spellHelp
private

Definition at line 83 of file charspells.h.

Referenced by CharSpells(), and showSpellHelp().


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