summaryrefslogtreecommitdiff
path: root/src/gui/windows
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2017-02-01 00:43:24 +0300
committerAndrei Karas <akaras@inbox.ru>2017-02-01 00:45:05 +0300
commit2c273a20b2cd3e1628840f2d87df16f0cce9ad33 (patch)
tree853d172e0fd05117d84eda712912ba2843bb87e2 /src/gui/windows
parent35481061f62111f916a39ce3cac6a314579418f9 (diff)
downloadplus-2c273a20b2cd3e1628840f2d87df16f0cce9ad33.tar.gz
plus-2c273a20b2cd3e1628840f2d87df16f0cce9ad33.tar.bz2
plus-2c273a20b2cd3e1628840f2d87df16f0cce9ad33.tar.xz
plus-2c273a20b2cd3e1628840f2d87df16f0cce9ad33.zip
Set currency to buy dialog based on selected npc type id.
For now this type never set.
Diffstat (limited to 'src/gui/windows')
-rw-r--r--src/gui/windows/buydialog.cpp12
-rw-r--r--src/gui/windows/buydialog.h10
-rw-r--r--src/gui/windows/shopwindow.cpp6
3 files changed, 19 insertions, 9 deletions
diff --git a/src/gui/windows/buydialog.cpp b/src/gui/windows/buydialog.cpp
index c5fdac885..620c95817 100644
--- a/src/gui/windows/buydialog.cpp
+++ b/src/gui/windows/buydialog.cpp
@@ -203,7 +203,8 @@ BuyDialog::BuyDialog() :
init();
}
-BuyDialog::BuyDialog(const BeingId npcId) :
+BuyDialog::BuyDialog(const BeingId npcId,
+ const std::string &currency) :
// TRANSLATORS: buy dialog name
Window(_("Buy"), Modal_false, nullptr, "buy.xml"),
ActionListener(),
@@ -214,6 +215,7 @@ BuyDialog::BuyDialog(const BeingId npcId) :
this, "namefilter", true)),
mFilterLabel(nullptr),
mNick(),
+ mCurrency(currency),
mNpcId(npcId),
mMoney(0),
mAmountItems(0),
@@ -224,7 +226,8 @@ BuyDialog::BuyDialog(const BeingId npcId) :
}
#ifdef TMWA_SUPPORT
-BuyDialog::BuyDialog(std::string nick) :
+BuyDialog::BuyDialog(const std::string &nick,
+ const std::string &currency) :
// TRANSLATORS: buy dialog name
Window(_("Buy"), Modal_false, nullptr, "buy.xml"),
ActionListener(),
@@ -236,6 +239,7 @@ BuyDialog::BuyDialog(std::string nick) :
this, "namefilter", true)),
mFilterLabel(nullptr),
mNick(nick),
+ mCurrency(currency),
mNpcId(fromInt(Nick, BeingId)),
mMoney(0),
mAmountItems(0),
@@ -246,7 +250,8 @@ BuyDialog::BuyDialog(std::string nick) :
}
#endif // TMWA_SUPPORT
-BuyDialog::BuyDialog(const Being *const being) :
+BuyDialog::BuyDialog(const Being *const being,
+ const std::string &currency) :
// TRANSLATORS: buy dialog name
Window(_("Buy"), Modal_false, nullptr, "buy.xml"),
ActionListener(),
@@ -258,6 +263,7 @@ BuyDialog::BuyDialog(const Being *const being) :
this, "namefilter", true)),
mFilterLabel(nullptr),
mNick(being ? being->getName() : std::string()),
+ mCurrency(currency),
mNpcId(fromInt(Vending, BeingId)),
mMoney(0),
mAmountItems(0),
diff --git a/src/gui/windows/buydialog.h b/src/gui/windows/buydialog.h
index 4fdd4f210..7914c0ef3 100644
--- a/src/gui/windows/buydialog.h
+++ b/src/gui/windows/buydialog.h
@@ -68,7 +68,8 @@ class BuyDialog final : public Window,
*
* @see Window::Window
*/
- explicit BuyDialog(const BeingId npcId);
+ BuyDialog(const BeingId npcId,
+ const std::string &currency);
#ifdef TMWA_SUPPORT
/**
@@ -76,7 +77,8 @@ class BuyDialog final : public Window,
*
* @see Window::Window
*/
- explicit BuyDialog(std::string nick);
+ BuyDialog(const std::string &nick,
+ const std::string &currency);
#endif // TMWA_SUPPORT
/**
@@ -84,7 +86,8 @@ class BuyDialog final : public Window,
*
* @see Window::Window
*/
- explicit BuyDialog(const Being *const being);
+ BuyDialog(const Being *const being,
+ const std::string &currency);
A_DELETE_COPY(BuyDialog)
@@ -193,6 +196,7 @@ class BuyDialog final : public Window,
Label *mFilterLabel;
std::string mNick;
+ std::string mCurrency;
BeingId mNpcId;
int mMoney;
int mAmountItems;
diff --git a/src/gui/windows/shopwindow.cpp b/src/gui/windows/shopwindow.cpp
index d7b629a4e..b09b44a46 100644
--- a/src/gui/windows/shopwindow.cpp
+++ b/src/gui/windows/shopwindow.cpp
@@ -23,6 +23,8 @@
#include "gui/windows/shopwindow.h"
#ifdef TMWA_SUPPORT
+#include "const/resources/currency.h"
+
#include "gui/windows/buydialog.h"
#include "gui/windows/chatwindow.h"
#include "gui/windows/confirmdialog.h"
@@ -829,7 +831,7 @@ void ShopWindow::showList(const std::string &nick, std::string data)
if (data.find("B1") == 0)
{
data = data.substr(2);
- CREATEWIDGETV(buyDialog, BuyDialog, nick);
+ CREATEWIDGETV(buyDialog, BuyDialog, nick, DEFAULT_CURRENCY);
}
else if (data.find("S1") == 0)
{
@@ -854,7 +856,6 @@ void ShopWindow::showList(const std::string &nick, std::string data)
const int id = decodeStr(data.substr(f, 2));
const int price = decodeStr(data.substr(f + 2, 4));
int amount = decodeStr(data.substr(f + 6, 3));
- // +++ need impliment colors?
if (buyDialog && amount > 0)
{
buyDialog->addItem(id,
@@ -865,7 +866,6 @@ void ShopWindow::showList(const std::string &nick, std::string data)
}
if (sellDialog)
{
- // +++ need support for colors
const Item *const item = inv->findItem(id, ItemColor_zero);
if (item)
{