diff options
author | Andrei Karas <akaras@inbox.ru> | 2012-02-29 22:44:19 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2012-02-29 22:44:19 +0300 |
commit | b3f55809a8a56a5acf180371f05163091263cbda (patch) | |
tree | a76167c666e6085a281090bffd797883093adf1a /src/gui | |
parent | c53136fce2b1cca1bb9273255ad86f0aded747c2 (diff) | |
download | manaplus-b3f55809a8a56a5acf180371f05163091263cbda.tar.gz manaplus-b3f55809a8a56a5acf180371f05163091263cbda.tar.bz2 manaplus-b3f55809a8a56a5acf180371f05163091263cbda.tar.xz manaplus-b3f55809a8a56a5acf180371f05163091263cbda.zip |
Fix npc menu focus/defocus issue.
Diffstat (limited to 'src/gui')
-rw-r--r-- | src/gui/npcdialog.cpp | 11 | ||||
-rw-r--r-- | src/gui/npcdialog.h | 2 |
2 files changed, 13 insertions, 0 deletions
diff --git a/src/gui/npcdialog.cpp b/src/gui/npcdialog.cpp index 362d9db9d..1aeb76ec2 100644 --- a/src/gui/npcdialog.cpp +++ b/src/gui/npcdialog.cpp @@ -342,9 +342,20 @@ void NpcDialog::parseListItems(const std::string &itemString) mItems.push_back(tmp); if (!mItems.empty()) + { mItemList->setSelected(0); + mItemList->requestFocus(); + } else + { mItemList->setSelected(-1); + } +} + +void NpcDialog::refocus() +{ + if (!mItems.empty()) + mItemList->requestFocus(); } void NpcDialog::textRequest(const std::string &defaultText) diff --git a/src/gui/npcdialog.h b/src/gui/npcdialog.h index d4288d5c9..7bd2ee76d 100644 --- a/src/gui/npcdialog.h +++ b/src/gui/npcdialog.h @@ -177,6 +177,8 @@ class NpcDialog : public Window, public gcn::ActionListener, void restoreCamera(); + void refocus(); + private: typedef std::list<NpcDialog*> DialogList; static DialogList instances; |