diff options
Diffstat (limited to 'src/gui/widgets')
-rw-r--r-- | src/gui/widgets/selldialog.cpp | 13 | ||||
-rw-r--r-- | src/gui/widgets/selldialog.h | 11 | ||||
-rw-r--r-- | src/gui/widgets/shoplistbox.cpp | 7 |
3 files changed, 17 insertions, 14 deletions
diff --git a/src/gui/widgets/selldialog.cpp b/src/gui/widgets/selldialog.cpp index 3ad8e5e7e..76cea21f2 100644 --- a/src/gui/widgets/selldialog.cpp +++ b/src/gui/widgets/selldialog.cpp @@ -218,18 +218,19 @@ void SellDialog::addItem(const Item *const item, const int price) mShopItemList->adjustSize(); } -void SellDialog::addItem(const int id, - const int type, - const ItemColor color, - const int amount, - const int price) +ShopItem *SellDialog::addItem(const int id, + const int type, + const ItemColor color, + const int amount, + const int price) { - mShopItems->addItem(id, + ShopItem *const item = mShopItems->addItem(id, type, color, amount, price); mShopItemList->adjustSize(); + return item; } diff --git a/src/gui/widgets/selldialog.h b/src/gui/widgets/selldialog.h index 92008df38..e94619f1f 100644 --- a/src/gui/widgets/selldialog.h +++ b/src/gui/widgets/selldialog.h @@ -34,6 +34,7 @@ class Button; class Item; class Label; class ScrollArea; +class ShopItem; class ShopItems; class ShopListBox; class Slider; @@ -93,11 +94,11 @@ class SellDialog notfinal : public Window, */ void setVisible(Visible visible) override final; - void addItem(const int id, - const int type, - const ItemColor color, - const int amount, - const int price); + ShopItem *addItem(const int id, + const int type, + const ItemColor color, + const int amount, + const int price); /** * Returns true if any instances exist. diff --git a/src/gui/widgets/shoplistbox.cpp b/src/gui/widgets/shoplistbox.cpp index c8f1bd889..6cdf58d2e 100644 --- a/src/gui/widgets/shoplistbox.cpp +++ b/src/gui/widgets/shoplistbox.cpp @@ -106,9 +106,10 @@ void ShopListBox::draw(Graphics *graphics) Color* backgroundColor = &mBackgroundColor; ShopItem *const item = mShopItems->at(i); - if (item && ((mShopItems && mPlayerMoney < item->getPrice() - && mPriceCheck) - || (mProtectItems && PlayerInfo::isItemProtected(item->getId())))) + if (item && + (item->getDisabled() || + (mShopItems && mPlayerMoney < item->getPrice() && mPriceCheck) || + (mProtectItems && PlayerInfo::isItemProtected(item->getId())))) { if (i != mSelected) { |