summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/invent.cc
diff options
context:
space:
mode:
Diffstat (limited to 'crawl-ref/source/invent.cc')
-rw-r--r--crawl-ref/source/invent.cc12
1 files changed, 10 insertions, 2 deletions
diff --git a/crawl-ref/source/invent.cc b/crawl-ref/source/invent.cc
index 014054a747..cb0f5ececf 100644
--- a/crawl-ref/source/invent.cc
+++ b/crawl-ref/source/invent.cc
@@ -171,8 +171,9 @@ const int InvEntry::item_freshness() const
void InvEntry::select(int qty)
{
- if ( item && item->quantity < qty )
+ if (item && item->quantity < qty)
qty = item->quantity;
+
MenuEntry::select(qty);
}
@@ -298,7 +299,7 @@ void InvEntry::set_show_glyph(bool doshow)
InvMenu::InvMenu(int mflags)
: Menu(mflags, "inventory", false), type(MT_INVLIST), pre_select(NULL),
- title_annotate(NULL)
+ title_annotate(NULL), allow_toggle(false), menu_action(ACT_EXAMINE)
{
mdisplay->set_num_columns(2);
}
@@ -749,6 +750,13 @@ bool InvMenu::process_key( int key )
draw_select_count(0, true);
return (true);
}
+ else if (key == '!')
+ {
+ sel.clear();
+ menu_action = (action)((menu_action+1) % ACT_NUM);
+ update_title();
+ return (true);
+ }
return Menu::process_key( key );
}