diff options
Diffstat (limited to 'src/gui/status.cpp')
-rw-r--r-- | src/gui/status.cpp | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/gui/status.cpp b/src/gui/status.cpp index 40b7d8c4..e5482f09 100644 --- a/src/gui/status.cpp +++ b/src/gui/status.cpp @@ -40,8 +40,16 @@ StatusWindow::StatusWindow(): jobExpLabel = new gcn::Label("Job"); statsButton = new Button("Stats"); + statsButton->setEventId("Stats"); + statsButton->addActionListener(this); + skillsButton = new Button("Skills"); + skillsButton->setEventId("Skills"); + skillsButton->addActionListener(this); + inventoryButton = new Button("Inventory"); + inventoryButton->setEventId("Inventory"); + inventoryButton->addActionListener(this); hp->setPosition(WIN_BORDER, WIN_BORDER); sp->setPosition(WIN_BORDER, hp->getY() + hp->getHeight() + CONTROLS_SEPARATOR); @@ -150,3 +158,19 @@ void StatusWindow::update() delete[] tempstr; } + +void StatusWindow::action(const std::string& eventId) { + + if (eventId == "Stats") { + // Show / Hide the stats dialog + statsWindow->setVisible(!statsWindow->isVisible()); + } + if (eventId == "Skills") { + // Show / Hide the skills dialog + skillDialog->setVisible(!skillDialog->isVisible()); + } + if (eventId == "Inventory") { + // Show / Hide the inventory dialog + inventoryWindow->setVisible(!inventoryWindow->isVisible()); + } +} |