summaryrefslogtreecommitdiff
path: root/src/gui
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2011-08-16 22:52:46 +0300
committerAndrei Karas <akaras@inbox.ru>2011-08-16 22:52:46 +0300
commitfa68f4ad4b2f776af834f8209b51761f6c2ba125 (patch)
treee6ffa76bedd1ed8bae3b859814482d3cf6359183 /src/gui
parent658a7a325114783627c7c6c870bfe01791f9f63e (diff)
downloadplus-fa68f4ad4b2f776af834f8209b51761f6c2ba125.tar.gz
plus-fa68f4ad4b2f776af834f8209b51761f6c2ba125.tar.bz2
plus-fa68f4ad4b2f776af834f8209b51761f6c2ba125.tar.xz
plus-fa68f4ad4b2f776af834f8209b51761f6c2ba125.zip
Show shop sign to other players only if shop is not empty.
Diffstat (limited to 'src/gui')
-rw-r--r--src/gui/shopwindow.cpp9
-rw-r--r--src/gui/shopwindow.h2
-rw-r--r--src/gui/widgets/shopitems.cpp5
-rw-r--r--src/gui/widgets/shopitems.h2
4 files changed, 18 insertions, 0 deletions
diff --git a/src/gui/shopwindow.cpp b/src/gui/shopwindow.cpp
index 68ea57314..4311a04d2 100644
--- a/src/gui/shopwindow.cpp
+++ b/src/gui/shopwindow.cpp
@@ -803,3 +803,12 @@ int ShopWindow::sumAmount(Item *shopItem)
}
return sum;
}
+
+bool ShopWindow::isShopEmpty()
+{
+ if (!mBuyShopItems || !mSellShopItems)
+ return true;
+ if (mBuyShopItems->empty() && mSellShopItems->empty())
+ return true;
+ return false;
+}
diff --git a/src/gui/shopwindow.h b/src/gui/shopwindow.h
index e07803225..e3fd9a5ca 100644
--- a/src/gui/shopwindow.h
+++ b/src/gui/shopwindow.h
@@ -133,6 +133,8 @@ class ShopWindow : public Window, public gcn::ActionListener,
bool checkFloodCounter(int &counterTime);
+ bool isShopEmpty();
+
private:
void startTrade();
diff --git a/src/gui/widgets/shopitems.cpp b/src/gui/widgets/shopitems.cpp
index c5bcd88c4..e15445b77 100644
--- a/src/gui/widgets/shopitems.cpp
+++ b/src/gui/widgets/shopitems.cpp
@@ -43,6 +43,11 @@ int ShopItems::getNumberOfElements()
return static_cast<int>(mShopItems.size());
}
+bool ShopItems::empty()
+{
+ return mShopItems.empty();
+}
+
std::string ShopItems::getElementAt(int i)
{
if (i < 0 || static_cast<unsigned>(i) >= mShopItems.size()
diff --git a/src/gui/widgets/shopitems.h b/src/gui/widgets/shopitems.h
index abfcffb71..29d24cb64 100644
--- a/src/gui/widgets/shopitems.h
+++ b/src/gui/widgets/shopitems.h
@@ -76,6 +76,8 @@ class ShopItems : public gcn::ListModel
*/
int getNumberOfElements();
+ bool empty();
+
/**
* Returns the name of item number i in the shop.
*