summaryrefslogtreecommitdiff
path: root/src/gui
diff options
context:
space:
mode:
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.
*