diff options
-rw-r--r-- | src/gui/npcdialog.cpp | 6 | ||||
-rw-r--r-- | src/gui/npcdialog.h | 5 |
2 files changed, 11 insertions, 0 deletions
diff --git a/src/gui/npcdialog.cpp b/src/gui/npcdialog.cpp index 61e2204d..ec863c79 100644 --- a/src/gui/npcdialog.cpp +++ b/src/gui/npcdialog.cpp @@ -307,6 +307,11 @@ void NpcDialog::addChoice(const std::string &choice) mItems.push_back(choice); } +void NpcDialog::initChoiceSelection() +{ + mItemList->setSelected(0); +} + void NpcDialog::textRequest(const std::string &defaultText) { mActionState = NPC_ACTION_INPUT; @@ -542,6 +547,7 @@ void NpcEventListener::event(Event::Channel channel, int count = event.getInt("choiceCount"); for (int i = 1; i <= count; i++) dialog->addChoice(event.getString("choice" + toString(i))); + dialog->initChoiceSelection(); } else if (event.getType() == Event::IntegerInput) { diff --git a/src/gui/npcdialog.h b/src/gui/npcdialog.h index 86a0e70c..abea5753 100644 --- a/src/gui/npcdialog.h +++ b/src/gui/npcdialog.h @@ -116,6 +116,11 @@ class NpcDialog : public Window, void addChoice(const std::string &); /** + * Put focus on the first choice. + */ + void initChoiceSelection(); + + /** * Requests a text string from the user. */ void textRequest(const std::string &defaultText = ""); |