From 62a466e53cbb49c5338f8ea7f96b46e00d3b0bc4 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Fri, 14 Dec 2012 01:18:59 +0300 Subject: Add popup list. Replace listbox in dropdown to popup list. --- src/gui/popupmenu.cpp | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'src/gui/popupmenu.cpp') diff --git a/src/gui/popupmenu.cpp b/src/gui/popupmenu.cpp index 4d781f5ac..5a75cb71d 100644 --- a/src/gui/popupmenu.cpp +++ b/src/gui/popupmenu.cpp @@ -70,6 +70,8 @@ #include "utils/gettext.h" +#include + #include "debug.h" extern int serverVersion; @@ -2187,6 +2189,21 @@ void PopupMenu::addPickupFilter(const std::string &name) } } +void PopupMenu::showPopup(const int x, const int y, gcn::ListModel *model) +{ + if (!model) + return; + + mBrowserBox->clearRows(); + for (int f = 0, sz = model->getNumberOfElements(); f < sz; f ++) + { + mBrowserBox->addRow(strprintf("dropdown_%d", f), + model->getElementAt(f).c_str()); + } + mBrowserBox->addRow("cancel", _("Cancel")); + showPopup(x, y); +} + RenameListener::RenameListener() : gcn::ActionListener(), mMapItem(nullptr), -- cgit v1.2.3-60-g2f50