1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-07-05 00:49:09 +02:00

Remove custom flag from Quick spell panel

This commit is contained in:
Ivan Savenko
2025-06-19 12:19:24 +03:00
parent ae93cbde91
commit 14a3f5a004
5 changed files with 10 additions and 12 deletions

View File

@ -214,7 +214,6 @@ void BattleWindow::hideStickyQuickSpellWindow()
showStickyQuickSpellWindow->Bool() = false;
quickSpellWindow->disable();
quickSpellWindow->isEnabled = false;
setPositionInfoWindow();
createTimerInfoWindows();
@ -229,15 +228,9 @@ void BattleWindow::showStickyQuickSpellWindow()
auto hero = owner.getBattle()->battleGetMyHero();
if(ENGINE->screenDimensions().x >= 1050 && hero != nullptr && hero->hasSpellbook())
{
quickSpellWindow->enable();
quickSpellWindow->isEnabled = true;
}
else
{
quickSpellWindow->disable();
quickSpellWindow->isEnabled = false;
}
setPositionInfoWindow();
createTimerInfoWindows();
@ -248,7 +241,7 @@ void BattleWindow::createTimerInfoWindows()
{
OBJECT_CONSTRUCTION;
int xOffsetAttacker = quickSpellWindow->isEnabled ? -53 : 0;
int xOffsetAttacker = quickSpellWindow->isDisabled() ? 0 : -53;
if(GAME->interface()->cb->getStartInfo()->turnTimerInfo.battleTimer != 0 || GAME->interface()->cb->getStartInfo()->turnTimerInfo.unitTimer != 0)
{
@ -385,7 +378,7 @@ void BattleWindow::updateQueue()
void BattleWindow::setPositionInfoWindow()
{
int xOffsetAttacker = quickSpellWindow->isEnabled ? -53 : 0;
int xOffsetAttacker = quickSpellWindow->isDisabled() ? 0 : -53;
if(defenderHeroWindow)
{
Point position = (ENGINE->screenDimensions().x >= 1000)

View File

@ -31,7 +31,6 @@
QuickSpellPanel::QuickSpellPanel(BattleInterface & owner)
: CIntObject(0)
, owner(owner)
, isEnabled(true)
{
OBJECT_CONSTRUCTION;

View File

@ -32,8 +32,6 @@ private:
public:
static constexpr int QUICKSPELL_SLOTS = 12;
bool isEnabled; // isActive() is not working on multiple conditions, because of this we need a seperate flag
QuickSpellPanel(BattleInterface & owner);
void create();

View File

@ -121,6 +121,11 @@ void CIntObject::enable()
recActions = ALL_ACTIONS;
}
bool CIntObject::isDisabled()
{
return recActions == NO_ACTIONS;
}
void CIntObject::setEnabled(bool on)
{
if (on)

View File

@ -73,6 +73,9 @@ public:
void disable();
/// activates if needed, all activity enabled (Warning: may not be symmetric with disable if recActions was limited!)
void enable();
/// returns true if element was disabled via disable() call
bool isDisabled();
/// deactivates or activates UI element based on flag
void setEnabled(bool on);