unraid-monitor/src/Theme.h

84 lines
2.7 KiB
C++

#pragma once
#include <QString>
namespace Theme {
// Farbpalette
inline const char *BG = "#131519";
inline const char *CARD = "#1b1e24";
inline const char *BORDER = "#262b33";
inline const char *TEXT = "#d6dae2";
inline const char *MUTED = "#8a93a3";
inline const char *ACCENT = "#ff8c2f"; // Unraid-Orange
inline const char *GREEN = "#3fb950";
inline const char *YELLOW = "#d29922";
inline const char *RED = "#f85149";
inline QString styleSheet()
{
return QStringLiteral(R"(
QMainWindow, QDialog { background-color: %1; }
QWidget { color: %4; font-size: 13px; }
QScrollArea { border: none; background: %1; }
QWidget#scrollContent { background: %1; }
QFrame#card {
background-color: %2;
border: 1px solid %3;
border-radius: 10px;
}
QLabel { background: transparent; }
QLabel#cardTitle { font-size: 14px; font-weight: 600; color: #f0f2f5; }
QLabel#appTitle { font-size: 18px; font-weight: 700; color: %6; }
QLabel#muted { color: %5; }
QLabel#sectionLabel { color: %5; font-size: 11px; font-weight: 600; }
QLabel#tableHeader { color: %5; font-size: 11px; font-weight: 600; }
QToolButton, QPushButton {
background-color: #232830;
border: 1px solid %3;
border-radius: 6px;
padding: 6px 14px;
color: %4;
}
QToolButton:hover, QPushButton:hover { background-color: #2c323c; border-color: %6; }
QToolButton:pressed, QPushButton:pressed { background-color: #1b1e24; }
QLineEdit, QSpinBox {
background-color: #11141a;
border: 1px solid %3;
border-radius: 6px;
padding: 6px 8px;
color: %4;
selection-background-color: %6;
}
QLineEdit:focus, QSpinBox:focus { border-color: %6; }
QSpinBox::up-button, QSpinBox::down-button { width: 0; }
QCheckBox { spacing: 8px; }
QCheckBox::indicator {
width: 16px; height: 16px;
border: 1px solid %3; border-radius: 4px;
background: #11141a;
}
QCheckBox::indicator:checked { background-color: %6; border-color: %6; }
QStatusBar { background: %1; color: %5; border-top: 1px solid %3; }
QStatusBar::item { border: none; }
QScrollBar:vertical { background: %1; width: 10px; margin: 0; }
QScrollBar::handle:vertical { background: #2c323c; border-radius: 5px; min-height: 30px; }
QScrollBar::handle:vertical:hover { background: #3a4250; }
QScrollBar::add-line:vertical, QScrollBar::sub-line:vertical { height: 0; }
QScrollBar:horizontal { background: %1; height: 10px; margin: 0; }
QScrollBar::handle:horizontal { background: #2c323c; border-radius: 5px; min-width: 30px; }
QScrollBar::add-line:horizontal, QScrollBar::sub-line:horizontal { width: 0; }
QToolTip { background-color: #232830; color: %4; border: 1px solid %3; }
)")
.arg(BG, CARD, BORDER, TEXT, MUTED, ACCENT);
}
} // namespace Theme