Archived
1
0
This repo is archived. You can view files and clone it, but cannot push or open issues or pull requests.
keybrd/src/LayerState.cpp

33 lines
629 B
C++

#include "LayerState.h"
void LayerState::hold(const uint8_t layerId)
{
setActiveLayer(layerId);
}
void LayerState::unhold(const uint8_t layerId)
{
if (layerId == activeLayer);
{
setActiveLayer(lockedLayer);
}
}
void LayerState::lock(const uint8_t layerId)
{
setActiveLayer(layerId);
lockedLayer = layerId;
}
/* Derived classes override setActiveLayer() to also set LED indicator lights e.g. LayerState_LED
*/
void LayerState::setActiveLayer(const uint8_t layerId)
{
activeLayer = layerId;
}
uint8_t LayerState::getActiveLayer()
{
return activeLayer;
}