summaryrefslogtreecommitdiff
path: root/src/gui
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui')
-rw-r--r--src/gui/inventorywindow.cpp9
-rw-r--r--src/gui/inventorywindow.h7
2 files changed, 14 insertions, 2 deletions
diff --git a/src/gui/inventorywindow.cpp b/src/gui/inventorywindow.cpp
index 591ebd2f..16ac5409 100644
--- a/src/gui/inventorywindow.cpp
+++ b/src/gui/inventorywindow.cpp
@@ -288,10 +288,18 @@ void InventoryWindow::valueChanged(const gcn::SelectionEvent &event)
(item->getQuantity() - 1));
}
+ updateButtons();
+}
+
+void InventoryWindow::updateButtons()
+{
+ Item *item = mItems->getSelectedItem();
+
if (!item || item->getQuantity() == 0)
{
mUseButton->setEnabled(false);
mDropButton->setEnabled(false);
+ mSplitButton->setEnabled(false);
return;
}
@@ -322,7 +330,6 @@ void InventoryWindow::valueChanged(const gcn::SelectionEvent &event)
mSplitButton->setEnabled(false);
}
-
void InventoryWindow::setSplitAllowed(bool allowed)
{
mSplitButton->setVisible(allowed);
diff --git a/src/gui/inventorywindow.h b/src/gui/inventorywindow.h
index f611e934..0dce0611 100644
--- a/src/gui/inventorywindow.h
+++ b/src/gui/inventorywindow.h
@@ -100,7 +100,12 @@ class InventoryWindow : public Window,
* window has been closed.
*/
void close();
-
+
+ /**
+ * Updates the buttons.
+ */
+ void updateButtons();
+
/**
* Updates the weight bar.
*/