Layers is a C++ theme framework that empowers users and gives them full control over app appearances.
class ComboBox :
public LDefinable, public Widget
{
protected:
LAttribute* corner_radii
{ new LAttribute("Corner Radii", 5.0) }
LAttribute* fill
{ new LAttribute("Fill", "#001122") };
LAttribute* text_color
{ new LAttribute("Text Color", "#ffffff") };
void paint(Widget* widget);
};
{
"ComboBox": {
"attributes": {
"Corner Radii": 5.0
"Fill": "L:Theme/Tertiary",
"Text Color": "L:Theme/Foreground"
},
"children": {
"DropMenu": {
// ...
}
}
}
}
{
"Blue": {
"attributes": {
"Foreground": "#3cf9ff",
"Gradient": [
"0:#363f57",
"1:#424e66"
],
"Primary": "#333c4f",
"Secondary": "#282f41",
"Tertiary": "#1a2436"
}
}
}
{
"Color Dialog": {
"attributes": {
"Border.Fill": "L:rainbow_gradient"
}
},
"Gradient Dialog": {
"attributes": {
"Border.Fill": "L:rainbow_gradient"
}
},
"Main Window": {
"attributes": {
"Border.Fill": "L:rainbow_gradient"
}
}
}
Layers data is stored externally in JSON format on the user's system. This means that it can be manipulated by external software, such as Nebula.