// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
#include "BatteryWidgetBase.hpp"
#include "BoxLayout.hpp"
namespace gui
{
BatteryWidgetBase::BatteryWidgetBase(Item *parent, uint32_t x, uint32_t y, uint32_t w, uint32_t h)
: HBox(parent, x, y, w, h)
{
setBorderColor(gui::ColorNoColor);
}
void BatteryWidgetBase::show(const Store::Battery batteryContext, bool shown)
{
if (shown) {
setVisible(true);
switch (batteryContext.state) {
case Store::Battery::State::Discharging:
[[fallthrough]];
case Store::Battery::State::PluggedNotCharging:
showBatteryLevel(batteryContext.level);
break;
case Store::Battery::State::Charging:
showBatteryCharging();
break;
case Store::Battery::State::ChargingDone:
showBatteryChargingDone();
break;
}
}
else {
setVisible(false);
}
}
} // namespace gui