backlight.cpp 520 Bytes
#include "backlight.h"

#include "system.h"

namespace {
int setting = 7;
bool lowered = false;
}

void Backlight::lower()
{
    lowered = true;

    int t = setting - 2;
    if (t < 0)
        System::setBacklight(0);
    else
        System::setBacklight(t);
}

void Backlight::restore()
{
    lowered = false;

    System::setBacklight(setting);
}

void Backlight::set(int level)
{
    if (level < 0 || level > 7)
        return;

    setting = level;

    if (lowered)
        lower();
    else
        restore();
}