Switching fast-trade from Shift-Enter to Shift-Down

Technically, from SELECT_ALL to CURSOR_DOWN_FAST, to avoid blocking the new native Select All functionality.
As a bonus, the new key repeats as you hold it down.
develop
Eric Wald 2014-11-06 22:14:00 -07:00
parent 777b2f6416
commit 7fb82131c7
3 changed files with 4 additions and 4 deletions

@ -1969,7 +1969,7 @@ the contents separately from the container. This forcefully skips child
reagents.</p>
</td>
</tr>
<tr class="field"><th class="field-name">fast-trade:</th><td class="field-body"><p class="first">Makes Shift-Enter in the Move Goods to Depot and Trade screens select
<tr class="field"><th class="field-name">fast-trade:</th><td class="field-body"><p class="first">Makes Shift-Down in the Move Goods to Depot and Trade screens select
the current item (fully, in case of a stack), and scroll down one line.</p>
</td>
</tr>

@ -1266,7 +1266,7 @@ Subcommands that persist until disabled or DF quit:
in advmode. The issue is that the screen tries to force you to select
the contents separately from the container. This forcefully skips child
reagents.
:fast-trade: Makes Shift-Enter in the Move Goods to Depot and Trade screens select
:fast-trade: Makes Shift-Down in the Move Goods to Depot and Trade screens select
the current item (fully, in case of a stack), and scroll down one line.
:military-stable-assign: Preserve list order and cursor position when assigning to squad,
i.e. stop the rightmost list of the Positions page of the military

@ -5,7 +5,7 @@ struct fast_trade_assign_hook : df::viewscreen_layer_assigntradest {
DEFINE_VMETHOD_INTERPOSE(void, feed, (set<df::interface_key> *input))
{
if (layer_objects[1]->active && input->count(interface_key::SELECT_ALL))
if (layer_objects[1]->active && input->count(interface_key::CURSOR_DOWN_FAST))
{
set<df::interface_key> tmp; tmp.insert(interface_key::SELECT);
INTERPOSE_NEXT(feed)(&tmp);
@ -25,7 +25,7 @@ struct fast_trade_select_hook : df::viewscreen_tradegoodsst {
DEFINE_VMETHOD_INTERPOSE(void, feed, (set<df::interface_key> *input))
{
if (!(is_unloading || !has_traders || in_edit_count)
&& input->count(interface_key::SELECT_ALL))
&& input->count(interface_key::CURSOR_DOWN_FAST))
{
set<df::interface_key> tmp; tmp.insert(interface_key::SELECT);
INTERPOSE_NEXT(feed)(&tmp);