Skip to content

Commit 0f54b41

Browse files
committed
enable templ hotkeys even when buttons are hidden
1 parent 6e6f0b5 commit 0f54b41

1 file changed

Lines changed: 34 additions & 19 deletions

File tree

src/Battlescape/InventoryState.cpp

Lines changed: 34 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -224,10 +224,16 @@ InventoryState::InventoryState(bool tu, BattlescapeState *parent) : _tu(tu), _pa
224224

225225

226226
// only use copy/paste buttons in setup (i.e. non-tu) mode
227-
_game->getResourcePack()->getSurface("InvCopy")->blit(_btnCreateTemplate);
228-
_game->getResourcePack()->getSurface("InvPasteEmpty")->blit(_btnApplyTemplate);
229-
_game->getResourcePack()->getSurface("InvClear")->blit(_btnClearInventory);
230-
_updateTemplateButtons(!_tu);
227+
if (_tu)
228+
{
229+
_btnCreateTemplate->setVisible(false);
230+
_btnApplyTemplate->setVisible(false);
231+
_btnClearInventory->setVisible(false);
232+
}
233+
else
234+
{
235+
_updateTemplateButtons(true);
236+
}
231237

232238
_inv->draw();
233239
_inv->setTuMode(_tu);
@@ -590,18 +596,7 @@ void InventoryState::btnCreateTemplateClick(Action *action)
590596
(*j)->getFuseTimer()));
591597
}
592598

593-
if (_curInventoryTemplate.empty())
594-
{
595-
// use "empty template" icons
596-
_game->getResourcePack()->getSurface("InvCopy")->blit(_btnCreateTemplate);
597-
_game->getResourcePack()->getSurface("InvPasteEmpty")->blit(_btnApplyTemplate);
598-
}
599-
else
600-
{
601-
// use "active template" icons
602-
_game->getResourcePack()->getSurface("InvCopyActive")->blit(_btnCreateTemplate);
603-
_game->getResourcePack()->getSurface("InvPaste")->blit(_btnApplyTemplate);
604-
}
599+
_updateTemplateButtons(true);
605600

606601
// give audio feedback
607602
_game->getResourcePack()->getSound("BATTLE.CAT", 38)->play();
@@ -856,8 +851,28 @@ void InventoryState::txtTooltipOut(Action *action)
856851

857852
void InventoryState::_updateTemplateButtons(bool isVisible)
858853
{
859-
_btnCreateTemplate->setVisible(isVisible);
860-
_btnApplyTemplate->setVisible(isVisible);
861-
_btnClearInventory->setVisible(isVisible);
854+
if (isVisible)
855+
{
856+
_game->getResourcePack()->getSurface("InvClear")->blit(_btnClearInventory);
857+
858+
if (_curInventoryTemplate.empty())
859+
{
860+
// use "empty template" icons
861+
_game->getResourcePack()->getSurface("InvCopy")->blit(_btnCreateTemplate);
862+
_game->getResourcePack()->getSurface("InvPasteEmpty")->blit(_btnApplyTemplate);
863+
}
864+
else
865+
{
866+
// use "active template" icons
867+
_game->getResourcePack()->getSurface("InvCopyActive")->blit(_btnCreateTemplate);
868+
_game->getResourcePack()->getSurface("InvPaste")->blit(_btnApplyTemplate);
869+
}
870+
}
871+
else
872+
{
873+
_btnCreateTemplate->clear();
874+
_btnApplyTemplate->clear();
875+
_btnClearInventory->clear();
876+
}
862877
}
863878
}

0 commit comments

Comments
 (0)