From 413637151f0eb471ff6b28feddc028c374f96401 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Thu, 15 Sep 2016 19:37:39 +0300 Subject: Add type into ShopListBox. --- src/gui/widgets/selldialog.cpp | 3 ++- src/gui/widgets/shoplistbox.cpp | 8 ++++++-- src/gui/widgets/shoplistbox.h | 15 +++++++++++++-- 3 files changed, 21 insertions(+), 5 deletions(-) (limited to 'src/gui/widgets') diff --git a/src/gui/widgets/selldialog.cpp b/src/gui/widgets/selldialog.cpp index c0b7fdd24..dbeab87ca 100644 --- a/src/gui/widgets/selldialog.cpp +++ b/src/gui/widgets/selldialog.cpp @@ -96,7 +96,8 @@ void SellDialog::postInit() mShopItemList = CREATEWIDGETR(ShopListBox, this, mShopItems, - mShopItems); + mShopItems, + ShopListBoxType::Unknown); mShopItemList->setProtectItems(true); mScrollArea = new ScrollArea(this, mShopItemList, getOptionBool("showbackground"), "sell_background.xml"); diff --git a/src/gui/widgets/shoplistbox.cpp b/src/gui/widgets/shoplistbox.cpp index 5d083a30f..3ce06ba0d 100644 --- a/src/gui/widgets/shoplistbox.cpp +++ b/src/gui/widgets/shoplistbox.cpp @@ -46,12 +46,14 @@ const int ITEM_ICON_SIZE = 32; ShopListBox::ShopListBox(const Widget2 *const widget, - ListModel *const listModel) : + ListModel *const listModel, + const ShopListBoxTypeT type) : ListBox(widget, listModel, "shoplistbox.xml"), mPlayerMoney(0), mShopItems(nullptr), mBackgroundColor(getThemeColor(ThemeColorId::BACKGROUND)), mWarningColor(getThemeColor(ThemeColorId::SHOP_WARNING)), + mType(type), mPriceCheck(true), mProtectItems(false) { @@ -62,12 +64,14 @@ ShopListBox::ShopListBox(const Widget2 *const widget, ShopListBox::ShopListBox(const Widget2 *const widget, ListModel *const listModel, - ShopItems *const shopListModel) : + ShopItems *const shopListModel, + const ShopListBoxTypeT type) : ListBox(widget, listModel, "shoplistbox.xml"), mPlayerMoney(0), mShopItems(shopListModel), mBackgroundColor(getThemeColor(ThemeColorId::BACKGROUND)), mWarningColor(getThemeColor(ThemeColorId::SHOP_WARNING)), + mType(type), mPriceCheck(true), mProtectItems(false) { diff --git a/src/gui/widgets/shoplistbox.h b/src/gui/widgets/shoplistbox.h index cc4504c82..471f6eadc 100644 --- a/src/gui/widgets/shoplistbox.h +++ b/src/gui/widgets/shoplistbox.h @@ -25,6 +25,8 @@ #include "gui/widgets/listbox.h" +#include "enums/gui/shoplistboxtype.h" + class ShopItems; /** @@ -41,14 +43,16 @@ class ShopListBox final : public ListBox * Constructor. */ ShopListBox(const Widget2 *const widget, - ListModel *const listModel); + ListModel *const listModel, + const ShopListBoxTypeT type); /** * Constructor with shopitems */ ShopListBox(const Widget2 *const widget, ListModel *const listModel, - ShopItems *const shopListModel); + ShopItems *const shopListModel, + const ShopListBoxTypeT type); A_DELETE_COPY(ShopListBox) @@ -84,6 +88,12 @@ class ShopListBox final : public ListBox void setProtectItems(bool p) { mProtectItems = p; } + void setType(const ShopListBoxTypeT type) + { mType = type; } + + ShopListBoxType getType() const + { return mType; } + private: int mPlayerMoney; @@ -95,6 +105,7 @@ class ShopListBox final : public ListBox Color mBackgroundColor; Color mWarningColor; + ShopListBoxTypeT mType; bool mPriceCheck; bool mProtectItems; -- cgit v1.2.3-70-g09d2