From bcdbc39b6efe7391866c81ef82a2e9358b6c3ff4 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Tue, 5 Jul 2016 23:34:33 +0300 Subject: Add menu for selected skill for now with item only "set skill level". Also add chat command /showskilllevels SKILL --- src/gui/widgets/skilllistbox.h | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) (limited to 'src/gui/widgets') diff --git a/src/gui/widgets/skilllistbox.h b/src/gui/widgets/skilllistbox.h index 8415e0cab..b6feb194f 100644 --- a/src/gui/widgets/skilllistbox.h +++ b/src/gui/widgets/skilllistbox.h @@ -232,21 +232,29 @@ class SkillListBox final : public ListBox void mousePressed(MouseEvent &event) override final { ListBox::mousePressed(event); - if (event.getButton() == MouseButton::LEFT) + const MouseButtonT button = event.getButton(); + if (button == MouseButton::LEFT || + button == MouseButton::RIGHT) { const SkillInfo *const skill = getSkillByEvent(event); if (!skill) return; event.consume(); mSkillClicked = true; - if (event.getX() > - getWidth() - mPadding - skill->skillLevelWidth) + SkillModel *const model = static_cast( + mListModel); + if (model && + mSelected >= 0 && + model->getSkillAt(mSelected) == skill) { - SkillModel *const model = static_cast( - mListModel); - if (model && - mSelected >= 0 && - model->getSkillAt(mSelected) == skill) + skillPopup->hide(); + if (button == MouseButton::LEFT && + event.getX() > + getWidth() - mPadding - skill->skillLevelWidth) + { + popupMenu->showSkillLevelPopup(skill); + } + else if (button == MouseButton::RIGHT) { popupMenu->showSkillPopup(skill); } -- cgit v1.2.3-60-g2f50