VodBox 77694d76e8 UI: Add Accessibility menu to settings
This change introduces an accessibility menu to settings, along with
options for overriding the colors used by OBS in the mixer and in the
preview to be more color blind friendly than the options provided by the
current theme.
2022-07-27 21:37:30 -04:00

1436 lines
29 KiB
Plaintext

/******************************************************************************/
/* Copyright (C) 2014-2015 by Philippe Groarke <philippe.groarke@gmail.com> */
/* */
/* */
/* This program is free software: you can redistribute it and/or modify */
/* it under the terms of the GNU General Public License as published by */
/* the Free Software Foundation, either version 2 of the License, or */
/* (at your option) any later version. */
/* */
/* This program is distributed in the hope that it will be useful, */
/* but WITHOUT ANY WARRANTY; without even the implied warranty of */
/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the */
/* GNU General Public License for more details. */
/* */
/* */
/* You should have received a copy of the GNU General Public License */
/* along with this program. If not, see <http://www.gnu.org/licenses/>. */
/******************************************************************************/
/* Colors */
/* Custom theme information. This will set the application's QPalette, as
* well as pass to QML via the OBSTheme object.
* Can also use OBSTheme::disabled, OBSTheme::active, and OBSTheme::inactive.
* Using it without will set all three (making 'active' a bit redundant) */
OBSTheme {
window: rgb(31,33,42);
windowText: rgb(255,254,255);
base: rgb(43,46,56);
alternateBase: rgb(11,10,11);
text: rgb(255,254,255);
button: rgb(60,64,75);
buttonText: rgb(255,254,255);
brightText: rgb(255,254,255);
light: rgb(88,87,88);
mid: rgb(31,33,42);
dark: rgb(43,46,56);
shadow: rgb(11,10,11);
primary: rgb(40,76,184);
primaryLight: rgb(54,92,192);
primaryDark: rgb(25,27,38);
highlight: rgb(42,130,218);
highlightText: rgb(255,254,255);
link: rgb(77,166,255);
linkVisited: rgb(77,166,255);
}
OBSTheme::disabled {
windowText: rgb(153,153,153);
text: rgb(153,153,153);
button: rgb(27,29,34);
buttonText: rgb(43,46,56);
brightText: rgb(43,46,56);
}
OBSTheme::inactive {
text: rgb(255,254,255);
highlight: rgb(25,28,34);
highlightText: rgb(255,255,255);
}
/* Default widget style, we override only what is needed. */
QWidget {
alternate-background-color: palette(base);
color: palette(text);
selection-background-color: rgb(40,76,184);
selection-color: palette(text);
font-size: 10pt;
}
QWidget:disabled {
color: rgb(153,153,153);
}
/* Container windows */
QDialog,
QMainWindow,
QStatusBar,
QMenuBar,
QMenu {
background-color: palette(window);
}
/* macOS Separator Fix */
QMainWindow::separator {
background: transparent;
width: 4px;
height: 4px;
}
/* General Widgets */
QLabel,
QGroupBox,
QCheckBox {
background: transparent;
}
QComboBox,
QCheckBox,
QPushButton,
QSpinBox,
QDoubleSpinBox {
margin-top: 3px;
margin-bottom: 3px;
}
QListWidget QWidget,
SceneTree QWidget,
SourceTree QWidget {
margin-top: 0;
margin-bottom: 0;
}
* [frameShape="1"], * [frameShape="2"], * [frameShape="3"], * [frameShape="4"], * [frameShape="5"], * [frameShape="6"] {
border: 1px solid palette(dark);
}
/* Misc */
QAbstractItemView, QStackedWidget#stackedMixerArea QWidget {
background-color: palette(base);
}
QToolTip {
background-color: palette(base);
color: palette(text);
border: none;
}
/* Context Menu */
QMenu::item:disabled {
color: rgb(153,153,153);
}
QMenu::item:disabled {
background: transparent;
}
/* Top Menu Bar Items */
QMenuBar::item {
background-color: transparent;
}
QMenuBar::item:selected {
background: rgb(40,76,184);
}
/* Item Lists */
QListWidget::item {
color: palette(text);
}
SceneTree::item,
SourceTree::item {
padding: 3px;
color: palette(text);
margin-bottom: 1px;
margin-top: 1px;
border: 0px solid transparent;
}
QListWidget::item:selected,
SceneTree::item:selected,
SourceTree::item:selected {
background-color: rgb(40,76,184);
}
QListWidget::item:hover,
SceneTree::item:hover,
SourceTree::item:hover,
QListWidget::item:selected:hover,
SceneTree::item:selected:hover,
SourceTree::item:selected:hover {
background-color: rgb(54,92,192);
color: palette(text);
}
QListWidget::item:disabled,
QListWidget::item:hover {
background: transparent;
color: rgb(153,153,153);
}
QListWidget QLineEdit,
SceneTree QLineEdit,
SourceTree QLineEdit {
padding: 0px;
padding-bottom: 2px;
margin: 0px;
border: 1px solid #FFF;
border-radius: 2px;
}
QListWidget QLineEdit:focus,
SceneTree QLineEdit:focus,
SourceTree QLineEdit:focus {
border: 1px solid #FFF;
}
/* Settings QList */
OBSBasicSettings QListWidget {
border-radius: 4px;
}
OBSBasicSettings QListWidget::item {
padding-left: 4px;
padding-top: 5px;
padding-bottom: 5px;
}
/* Dock Widget */
OBSDock > QWidget {
background: palette(dark);
border-bottom-left-radius: 4px;
border-bottom-right-radius: 4px;
}
OBSDock QFrame {
background: palette(dark);
border-bottom-left-radius: 4px;
border-bottom-right-radius: 4px;
}
#transitionsContainer QPushButton {
margin: 0px 0px;
padding: 4px 6px;
}
OBSDock QLabel {
background: transparent;
}
OBSDock QComboBox,
OBSDock QPushButton {
margin: 1px 2px;
}
QDockWidget {
font-size: 10.5pt;
font-weight: bold;
titlebar-close-icon: url('./Dark/Close.svg');
titlebar-normal-icon: url('./Dark/Popout.svg');
}
QDockWidget::title {
text-align: left;
background-color: palette(button);
padding: 6px 8px;
border-top-left-radius: 4px;
border-top-right-radius: 4px;
}
QDockWidget::close-button, QDockWidget::float-button {
border: 0px solid transparent;
border-radius: 4px;
background: transparent;
margin-right: 1px;
opacity: .5;
}
QDockWidget::close-button:hover, QDockWidget::float-button:hover {
background: rgb(79,83,94);
opacity: 1;
}
QDockWidget::close-button:pressed, QDockWidget::float-button:pressed {
padding: 1px -1px -1px 1px;
}
QScrollArea {
border-radius: 4px;
}
OBSBasicStatusBar {
margin-top: 8px;
}
/* Group Box */
QGroupBox {
background: palette(dark);
border-radius: 8px;
padding-top: 32px;
padding-bottom: 8px;
font-weight: bold;
margin-bottom: 6px;
}
QGroupBox::title {
subcontrol-origin: margin;
left: 4px;
top: 4px;
}
/* ScrollBars */
::corner {
background-color: palette(window);
border: none;
}
QScrollBar:vertical {
background-color: transparent;
width: 14px;
margin: 0px;
}
QScrollBar::add-line:vertical, QScrollBar::sub-line:vertical {
border: none;
background: none;
height: 0px;
}
QScrollBar::up-arrow:vertical, QScrollBar::down-arrow:vertical, QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical {
border: none;
background: none;
color: none;
}
QScrollBar:horizontal {
background-color: transparent;
height: 14px;
margin: 0px;
}
QScrollBar::add-line:horizontal, QScrollBar::sub-line:horizontal {
border: none;
background: none;
width: 0px;
}
QScrollBar::left-arrow:horizontal, QScrollBar::right-arrow:horizontal, QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal {
border: none;
background: none;
color: none;
}
QScrollBar::handle {
background-color: palette(button);
margin: 2px;
border-radius: 2px;
border: 1px solid palette(button);
}
QScrollBar::handle:hover {
background-color: rgb(79,83,94);
border-color: rgb(79,83,94);
}
QScrollBar::handle:pressed {
background-color: rgb(40,76,184);
border-color: rgb(40,76,184);
}
QScrollBar::handle:vertical {
min-height: 20px;
}
QScrollBar::handle:horizontal {
min-width: 20px;
}
/* Source Context Bar */
#contextContainer {
background-color: palette(dark);
margin-top: 4px;
border-radius: 4px;
}
#contextContainer QPushButton {
padding-left: 12px;
padding-right: 12px;
}
QPushButton#sourcePropertiesButton {
qproperty-icon: url(./Dark/settings/general.svg);
}
QPushButton#sourceFiltersButton {
qproperty-icon: url(./Dark/filter.svg);
}
/* Scenes and Sources toolbar */
QToolBar {
background-color: palette(dark);
border: none;
padding: 0px;
margin: 4px 0px;
}
QToolButton {
background-color: rgb(60,64,75);
padding: 4px 6px;
margin: 0px 2px;
border-radius: 2px;
}
QToolButton:last-child {
margin-right: 0px;
}
QToolButton:hover {
background-color: rgb(79,83,94);
}
QToolButton:pressed {
background-color: rgb(25,27,38);
}
* [themeID="addIconSmall"] {
qproperty-icon: url(./Dark/plus.svg);
}
* [themeID="removeIconSmall"] {
qproperty-icon: url(./Dark/trash.svg);
}
* [themeID="propertiesIconSmall"] {
qproperty-icon: url(./Dark/settings/general.svg);
}
* [themeID="configIconSmall"] {
qproperty-icon: url(./Dark/settings/general.svg);
}
* [themeID="menuIconSmall"] {
qproperty-icon: url(./Dark/dots-vert.svg);
}
* [themeID="refreshIconSmall"] {
qproperty-icon: url(./Dark/refresh.svg);
}
#sourceInteractButton {
qproperty-icon: url(./Dark/interact.svg);
}
* [themeID="upArrowIconSmall"] {
qproperty-icon: url(./Dark/up.svg);
}
* [themeID="downArrowIconSmall"] {
qproperty-icon: url(./Dark/down.svg);
}
* [themeID="pauseIconSmall"] {
qproperty-icon: url(./Dark/media-pause.svg);
}
QToolBarExtension {
background: palette(button);
min-width: 12px;
max-width: 12px;
padding: 4px 0px;
margin-left: 0px;
qproperty-icon: url(./Dark/dots-vert.svg);
}
/* Tab Widget */
QTabWidget::pane { /* The tab widget frame */
border-top: 4px solid palette(base);
}
QTabWidget::tab-bar {
alignment: left;
}
QTabBar QToolButton {
background: rgb(44,46,53);
border: none;
}
QTabBar::tab:top {
border-top-left-radius: 4px;
border-top-right-radius: 4px;
}
QTabBar::tab:bottom {
border-bottom-left-radius: 4px;
border-bottom-right-radius: 4px;
}
QTabBar::tab {
background: palette(dark);
color: palette(text);
border: none;
padding: 8px 12px;
min-width: 50px;
margin: 1px 2px;
}
QTabBar::tab:pressed {
background: rgb(25,27,38);
}
QTabBar::tab:hover {
background: rgb(79,83,94);
color: palette(text);
}
QTabBar::tab:selected {
background: rgb(60,64,75);
color: palette(text);
}
QTabBar::tab:top:selected {
border-bottom: 2px solid rgb(250,250,250);
}
QTabBar::tab:bottom:selected {
border-top: 2px solid rgb(250,250,250);
}
QTabBar QToolButton {
background: palette(button);
min-width: 16px;
padding: 0px;
}
/* ComboBox */
QComboBox,
QDateTimeEdit {
background-color: rgb(60,64,75);
border-style: solid;
border: 1px;
border-radius: 3px;
border-color: rgb(60,64,75);
padding: 4px;
padding-left: 10px;
}
QComboBox:hover,
QComboBox:selected,
QDateTimeEdit:hover,
QDateTimeEdit:selected {
background-color: rgb(79,83,94);
}
QComboBox::drop-down,
QDateTimeEdit::drop-down {
border:none;
border-left: 1px solid rgb(25,28,34);
width: 20px;
}
QComboBox::down-arrow,
QDateTimeEdit::down-arrow {
qproperty-alignment: AlignTop;
image: url(./Dark/updown.svg);
width: 100%;
}
QComboBox:on,
QDateTimeEdit:on {
background-color: rgb(25,27,38);
}
QComboBox:editable:hover {
}
QComboBox::drop-down:editable,
QDateTimeEdit::drop-down:editable {
border-top-right-radius: 3px;
border-bottom-right-radius: 3px;
}
QComboBox::down-arrow:editable,
QDateTimeEdit::down-arrow:editable {
qproperty-alignment: AlignTop;
image: url(./Dark/down.svg);
width: 8%;
}
/* Textedits etc */
QLineEdit, QTextEdit, QPlainTextEdit {
background-color: palette(button);
border: none;
border-radius: 3px;
padding: 5px 2px 5px 7px;
border: 2px solid transparent;
}
QLineEdit:hover,
QTestEdit:hover,
QPlainTextEdit:hover {
border: 2px solid rgb(99,102,111);
}
QLineEdit:focus,
QTestEdit:focus,
QPlainTextEdit:focus {
background-color: palette(mid);
border: 2px solid rgb(40,76,184);
}
/* Spinbox and doubleSpinbox */
QSpinBox,
QDoubleSpinBox {
background-color: palette(button);
border: 2px solid palette(button);
border-radius: 4px;
margin-right: 3px;
padding: 3px 0px 4px 5px;
}
QSpinBox:hover,
QDoubleSpinBox:hover {
border: 2px solid rgb(99,102,111);
}
QSpinBox:focus,
QDoubleSpinBox:focus {
background-color: palette(mid);
border: 2px solid rgb(40,76,184);
}
QSpinBox::up-button, QDoubleSpinBox::up-button {
subcontrol-origin: padding;
subcontrol-position: top right; /* position at the top right corner */
right: 2px;
border-radius: 3px;
border-width: 0;
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
border-bottom-width: 0;
}
QSpinBox::down-button, QDoubleSpinBox::down-button {
subcontrol-origin: padding;
subcontrol-position: bottom right; /* position at the top right corner */
right: 2px;
border-radius: 3px;
border-width: 0;
border-top-left-radius: 0;
border-top-right-radius: 0;
border-top-width: 0;
}
QSpinBox::up-button:hover, QSpinBox::down-button:hover, QDoubleSpinBox::up-button:hover, QDoubleSpinBox::down-button:hover {
background-color: rgb(79,83,94);
}
QSpinBox::up-button:pressed, QSpinBox::down-button:pressed, QDoubleSpinBox::up-button:pressed, QDoubleSpinBox::down-button:pressed {
background-color: rgb(25,27,38);
}
QSpinBox::up-button:disabled, QSpinBox::up-button:off, QSpinBox::down-button:disabled, QSpinBox::down-button:off {
background-color: rgb(25,27,38);
}
QDoubleSpinBox::up-button:disabled, QDoubleSpinBox::up-button:off, QDoubleSpinBox::down-button:disabled, QDoubleSpinBox::down-button:off {
background-color: rgb(25,27,38);
}
QSpinBox::up-arrow, QDoubleSpinBox::up-arrow {
image: url(./Dark/up.svg);
width: 100%;
margin: 2px;
}
QSpinBox::down-arrow, QDoubleSpinBox::down-arrow {
image: url(./Dark/down.svg);
width: 100%;
padding: 2px;
}
/* Controls Dock */
#controlsDock QPushButton {
margin: 1px;
}
#streamButton,
#recordButton,
QPushButton[themeID="replayBufferButton"],
#broadcastButton {
padding: 10px;
}
/* Primary Control Button Checked Coloring */
#streamButton:!hover:!pressed:checked,
#recordButton:!hover:!pressed:checked,
QPushButton[themeID="replayBufferButton"]:!hover:!pressed:checked,
#modeSwitch:!hover:!pressed:checked,
#broadcastButton:!hover:!pressed:checked {
background: rgb(40,76,184);
}
/* Primary Control Button Hover Coloring */
#streamButton:hover:!pressed:checked,
#recordButton:hover:!pressed:checked,
QPushButton[themeID="replayBufferButton"]:!pressed:checked,
#modeSwitch:hover:!pressed:checked,
#broadcastButton:hover:!pressed:checked {
background: rgb(54,92,192);
color: palette(text);
}
/* Buttons */
QPushButton {
color: palette(text);
background-color: palette(button);
min-height: 18px;
border: none;
border-radius: 4px;
padding: 6px 16px;
}
QPushButton::flat {
background-color: rgb(60,64,75);
}
QPushButton:checked {
background-color: rgb(40,76,184);
}
QPushButton:hover {
background-color: rgb(79,83,94);
}
QPushButton:pressed {
background-color: rgb(25,27,38);
}
QPushButton:disabled {
background-color: rgb(25,27,38);
}
QPushButton::menu-indicator {
image: url(./Dark/down.svg);
subcontrol-position: right;
subcontrol-origin: padding;
width: 25px;
}
/* Sliders */
QSlider::groove:horizontal {
background-color: rgb(60,64,75);
height: 4px;
border: none;
border-radius: 2px;
}
QSlider::handle:horizontal {
background-color: palette(text);
border: 1px solid palette(mid);
border-radius: 3px;
height: 10px;
width: 18px;
margin: -3px 0; /* handle is placed by default on the contents rect of the groove. Expand outside the groove */
}
QSlider::handle:horizontal:pressed {
background-color: palette(text);
}
QSlider::sub-page:horizontal {
background-color: palette(highlight);
border-radius: 2px;
}
QSlider::sub-page:horizontal:disabled {
background-color: palette(dark);
border-radius: 2px;
}
QSlider::groove:vertical {
background-color: rgb(60,64,75);
width: 4px;
border: none;
border-radius: 2px;
}
QSlider::handle:vertical {
background-color: palette(text);
border: 1px solid palette(mid);
border-radius: 3px;
width: 10px;
height: 18px;
margin: 0 -3px; /* handle is placed by default on the contents rect of the groove. Expand outside the groove */
}
QSlider::handle:vertical:pressed {
background-color: palette(text);
}
QSlider::add-page:vertical {
background-color: palette(highlight);
border-radius: 2px;
}
QSlider::add-page:vertical:disabled {
background-color: rgb(50,49,50);
border-radius: 2px;
}
QSlider::handle:hover {
background-color: rgb(200,199,200);
}
QSlider::handle:disabled {
background-color: rgb(68,75,110);
}
/* Volume Control */
#stackedMixerArea QPushButton {
min-width: 16px;
padding: 4px 8px;
}
/* This is an incredibly cursed but necessary fix */
#stackedMixerArea QPushButton:!hover {
background-color: palette(button);
}
#stackedMixerArea QPushButton:hover {
background-color: rgb(79,83,94);
}
#stackedMixerArea QPushButton:pressed {
background-color: rgb(25,27,38);
}
VolumeMeter {
qproperty-backgroundNominalColor: rgb(66,112,24);
qproperty-backgroundWarningColor: rgb(112,91,28);
qproperty-backgroundErrorColor: rgb(112,39,53);
qproperty-foregroundNominalColor: rgb(115,189,49);
qproperty-foregroundWarningColor: rgb(189,144,9);
qproperty-foregroundErrorColor: rgb(189,47,73);
qproperty-magnitudeColor: rgb(0,0,0);
qproperty-majorTickColor: palette(text);
qproperty-minorTickColor: palette(light);
}
/* Status Bar */
QStatusBar::item {
border: none;
}
/* Table View */
QTableView {
background: palette(base);
gridline-color: palette(light);
}
QTableView::item {
margin: 0px;
padding: 0px;
}
QTableView QLineEdit {
background: palette(mid);
padding: 0;
margin: 0;
}
QTableView QPushButton,
QTableView QToolButton {
margin: 1px 1px 2px;
}
QHeaderView::section {
background-color: palette(button);
color: palette(text);
border: none;
border-left: 1px solid palette(window);
border-right: 1px solid palette(window);
padding: 2px 4px;
margin-bottom: 2px;
}
/* Mute CheckBox */
MuteCheckBox {
margin: 4px 0px 0px;
}
MuteCheckBox::indicator:checked {
image: url(./Dark/mute.svg);
}
MuteCheckBox::indicator:unchecked {
image: url(./Dark/settings/audio.svg);
}
OBSHotkeyLabel[hotkeyPairHover=true] {
color: rgb(53,82,222);
}
/* Pause */
PauseCheckBox {
outline: none;
}
PauseCheckBox::indicator:checked {
image: url(:/res/images/media-pause.svg);
}
PauseCheckBox::indicator:unchecked {
image: url(:/res/images/media-play.svg);
}
/* Label warning/error */
QLabel#warningLabel {
color: rgb(192,128,0);
font-weight: bold;
}
QLabel#errorLabel {
color: rgb(192,0,0);
font-weight: bold;
}
* [themeID="warning"] {
color: rgb(192,128,0);
font-weight: bold;
}
* [themeID="error"] {
color: rgb(192,0,0);
font-weight: bold;
}
* [themeID="good"] {
color: rgb(0,192,0);
font-weight: bold;
}
/* About dialog */
* [themeID="aboutName"] {
font-size: 26pt;
font-weight: bold;
}
* [themeID="aboutVersion"] {
font-size: 12pt;
margin-bottom: 20px;
}
* [themeID="aboutInfo"] {
margin-bottom: 20px;
}
* [themeID="aboutHLayout"] {
background-color: palette(base);
}
/* Canvas / Preview background color */
OBSQTDisplay {
qproperty-displayBackgroundColor: rgb(25,27,38);
border-radius: 10px;
}
/* Filters Window */
OBSBasicFilters #widget,
OBSBasicFilters #widget_2 {
margin: 0px;
padding: 0px;
padding-bottom: 4px;
}
OBSBasicFilters #widget QPushButton,
OBSBasicFilters #widget_2 QPushButton {
min-width: 16px;
padding: 4px 8px;
margin-top: 0px;
}
/* Preview/Program labels */
* [themeID="previewProgramLabels"] {
font-size: 14pt;
font-weight: bold;
color: rgb(210,210,210);
margin-bottom: 4px;
}
/* Settings Icons */
OBSBasicSettings {
qproperty-generalIcon: url(./Dark/settings/general.svg);
qproperty-streamIcon: url(./Dark/settings/stream.svg);
qproperty-outputIcon: url(./Dark/settings/output.svg);
qproperty-audioIcon: url(./Dark/settings/audio.svg);
qproperty-videoIcon: url(./Dark/settings/video.svg);
qproperty-hotkeysIcon: url(./Dark/settings/hotkeys.svg);
qproperty-accessibilityIcon: url(./Dark/settings/accessibility.svg);
qproperty-advancedIcon: url(./Dark/settings/advanced.svg);
}
/* Checkboxes */
QCheckBox {
}
QCheckBox::indicator,
QGroupBox::indicator {
width: 18px;
height: 18px;
}
QGroupBox::indicator {
margin-left: 2px;
}
QCheckBox::indicator:unchecked {
image: url(./Yami/checkbox_unchecked.svg);
}
QCheckBox::indicator:unchecked:hover,
QGroupBox::indicator:unchecked:hover {
border: none;
image: url(./Yami/checkbox_unchecked_focus.svg);
}
QCheckBox::indicator:checked {
image: url(./Yami/checkbox_checked.svg);
}
QCheckBox::indicator:checked:hover,
QGroupBox::indicator:checked:hover {
border: none;
image: url(./Yami/checkbox_checked_focus.svg);
}
QCheckBox::indicator:checked:disabled,
QGroupBox::indicator:checked:disabled {
image: url(./Yami/checkbox_checked_disabled.svg);
}
QCheckBox::indicator:unchecked:disabled,
QGroupBox::indicator:unchecked:disabled {
image: url(./Yami/checkbox_unchecked_disabled.svg);
}
/* Locked CheckBox */
LockedCheckBox {
outline: none;
background: transparent;
margin-left: -2px;
}
LockedCheckBox::indicator:checked,
LockedCheckBox::indicator:checked:hover {
image: url(./Dark/locked.svg);
}
LockedCheckBox::indicator:unchecked,
LockedCheckBox::indicator:unchecked:hover {
image: url(:res/images/unlocked.svg);
}
/* Visibility CheckBox */
VisibilityCheckBox {
outline: none;
background: transparent;
margin-left: -1px;
}
VisibilityCheckBox::indicator:checked,
VisibilityCheckBox::indicator:checked:hover {
image: url(./Dark/visible.svg);
}
VisibilityCheckBox::indicator:unchecked,
VisibilityCheckBox::indicator:unchecked:hover {
image: url(:res/images/invisible.svg);
}
* [themeID="trashIcon"] {
qproperty-icon: url(./Dark/trash.svg);
}
* [themeID="revertIcon"] {
qproperty-icon: url(./Dark/revert.svg);
}
QPushButton#extraPanelDelete {
background-color: palette(mid);
}
QPushButton#extraPanelDelete:hover {
background-color: rgb(68,75,110);
}
QPushButton#extraPanelDelete:pressed {
background-color: palette(dark);
}
/* Mute CheckBox */
MuteCheckBox {
outline: none;
}
MuteCheckBox::indicator:checked {
image: url(./Dark/mute.svg);
}
MuteCheckBox::indicator:unchecked {
image: url(./Dark/settings/audio.svg);
}
MuteCheckBox::indicator:unchecked:hover {
image: url(./Dark/settings/audio.svg);
}
MuteCheckBox::indicator:unchecked:focus {
image: url(./Dark/settings/audio.svg);
}
MuteCheckBox::indicator:checked:hover {
image: url(./Dark/mute.svg);
}
MuteCheckBox::indicator:checked:focus {
image: url(./Dark/mute.svg);
}
MuteCheckBox::indicator:checked:disabled {
image: url(./Dark/mute.svg);
}
MuteCheckBox::indicator:unchecked:disabled {
image: url(./Dark/settings/audio.svg);
}
#hotkeyFilterReset {
margin-top: 0px;
}
OBSHotkeyWidget {
padding: 8px 0px;
margin: 2px 0px;
}
OBSHotkeyLabel {
padding: 4px 0px;
}
OBSHotkeyLabel[hotkeyPairHover=true] {
color: rgb(53,82,222);
}
OBSHotkeyWidget QPushButton {
min-width: 16px;
padding: 4px 4px;
margin-top: 0px;
margin-left: 4px;
}
/* Sources List Group Collapse Checkbox */
SourceTreeSubItemCheckBox {
background: transparent;
outline: none;
padding: 0px;
}
SourceTreeSubItemCheckBox::indicator {
width: 12px;
height: 12px;
}
SourceTreeSubItemCheckBox::indicator:checked,
SourceTreeSubItemCheckBox::indicator:checked:hover {
image: url(./Dark/expand.svg);
}
SourceTreeSubItemCheckBox::indicator:unchecked,
SourceTreeSubItemCheckBox::indicator:unchecked:hover {
image: url(./Dark/down.svg);
}
/* Source Icons */
OBSBasic {
qproperty-imageIcon: url(./Dark/sources/image.svg);
qproperty-colorIcon: url(./Dark/sources/brush.svg);
qproperty-slideshowIcon: url(./Dark/sources/slideshow.svg);
qproperty-audioInputIcon: url(./Dark/sources/microphone.svg);
qproperty-audioOutputIcon: url(./Dark/settings/audio.svg);
qproperty-desktopCapIcon: url(./Dark/settings/video.svg);
qproperty-windowCapIcon: url(./Dark/sources/window.svg);
qproperty-gameCapIcon: url(./Dark/sources/gamepad.svg);
qproperty-cameraIcon: url(./Dark/sources/camera.svg);
qproperty-textIcon: url(./Dark/sources/text.svg);
qproperty-mediaIcon: url(./Dark/sources/media.svg);
qproperty-browserIcon: url(./Dark/sources/globe.svg);
qproperty-groupIcon: url(./Dark/sources/group.svg);
qproperty-sceneIcon: url(./Dark/sources/scene.svg);
qproperty-defaultIcon: url(./Dark/sources/default.svg);
qproperty-audioProcessOutputIcon: url(./Dark/sources/windowaudio.svg);
}
/* Scene Tree Grid Mode */
SceneTree {
qproperty-gridItemWidth: 150;
qproperty-gridItemHeight: 27;
}
*[gridMode="true"] SceneTree::item {
color: palette(text);
background-color: palette(button);
border-radius: 4px;
}
*[gridMode="true"] SceneTree::item:selected {
background-color: rgb(51,69,163);
}
*[gridMode="true"] SceneTree::item:checked {
background-color: rgb(51,69,163);
}
*[gridMode="true"] SceneTree::item:hover {
background-color: rgb(79,83,94);
}
/* Save icon */
* [themeID="replayIconSmall"] {
qproperty-icon: url(./Dark/save.svg);
}
/* Studio Mode T-Bar */
QSlider[themeID="tBarSlider"] {
height: 24px;
}
QSlider::groove:horizontal[themeID="tBarSlider"] {
border: 1px solid #4c4c4c;
height: 5px;
background: palette(dark);
}
QSlider::sub-page:horizontal[themeID="tBarSlider"] {
background: palette(dark);
border: 1px solid #4c4c4c;
}
QSlider::handle:horizontal[themeID="tBarSlider"] {
background-color: #d2d2d2;
width: 12px;
height: 24px;
margin: -24px 0px;
}
/* Media icons */
* [themeID="playIcon"] {
qproperty-icon: url(./Dark/media/media_play.svg);
}
* [themeID="pauseIcon"] {
qproperty-icon: url(./Dark/media/media_pause.svg);
}
* [themeID="restartIcon"] {
qproperty-icon: url(./Dark/media/media_restart.svg);
}
* [themeID="stopIcon"] {
qproperty-icon: url(./Dark/media/media_stop.svg);
}
* [themeID="nextIcon"] {
qproperty-icon: url(./Dark/media/media_next.svg);
}
* [themeID="previousIcon"] {
qproperty-icon: url(./Dark/media/media_previous.svg);
}
/* YouTube Integration */
OBSYoutubeActions {
qproperty-thumbPlaceholder: url(./Dark/sources/image.svg);
}
#ytEventList QLabel {
color: palette(text);
background-color: palette(button);
border: none;
border-radius: 3px;
padding: 4px 20px;
}
#ytEventList QLabel:hover {
background-color: rgb(79,83,94);
}
#ytEventList QLabel[isSelectedEvent=true] {
background-color: rgb(40,76,184);
border: none;
}
#ytEventList QLabel[isSelectedEvent=true]:hover {
background-color: rgb(54,92,192);
color: palette(text);
}
/* Calendar Widget */
QDateTimeEdit::down-arrow {
qproperty-alignment: AlignTop;
image: url(./Dark/down.svg);
width: 100%;
}
QDateTimeEdit:on {
background-color: palette(mid);
}
/* Calendar Top Bar */
QCalendarWidget QWidget#qt_calendar_navigationbar {
background-color: palette(base);
padding: 4px 8px;
}
/* Calendar Top Bar Buttons */
QCalendarWidget QToolButton {
background-color: palette(button);
padding: 2px 16px;
border-radius: 3px;
margin: 2px;
}
#qt_calendar_monthbutton::menu-indicator {
image: url(./Dark/down.svg);
subcontrol-position: right;
padding-top: 2px;
padding-right: 6px;
height: 10px;
width: 10px;
}
QCalendarWidget #qt_calendar_prevmonth {
padding: 2px;
qproperty-icon: url(./Dark/left.svg);
icon-size: 16px, 16px;
}
QCalendarWidget #qt_calendar_nextmonth {
padding: 2px;
qproperty-icon: url(./Dark/expand.svg);
icon-size: 16px, 16px;
}
QCalendarWidget QToolButton:hover {
background-color: rgb(79,83,94);
border-radius: 3px;
}
QCalendarWidget QToolButton:pressed {
background-color: rgb(25,27,38);
}
/* Month Dropdown Menu */
QCalendarWidget QMenu {
}
/* Year spinbox */
QCalendarWidget QSpinBox {
background-color: rgb(25,27,38);
border: none;
border-radius: 3px;
margin: 0px 3px 0px 0px;
padding: 4px 16px;
}
QCalendarWidget QSpinBox::up-button { subcontrol-origin: border; subcontrol-position: top right; width: 16px; }
QCalendarWidget QSpinBox::down-button {subcontrol-origin: border; subcontrol-position: bottom right; width: 16px;}
QCalendarWidget QSpinBox::up-arrow { width: 10px; height: 10px; }
QCalendarWidget QSpinBox::down-arrow { width: 10px; height: 10px; }
/* Days of the Week Bar */
QCalendarWidget QWidget { alternate-background-color: palette(mid); }
QCalendarWidget QAbstractItemView:enabled {
background-color: palette(base);
color: palette(text);
}
QCalendarWidget QAbstractItemView:disabled {
color: rgb(122,121,122);
}
/* VirtualCam Plugin Fixes */
#VirtualProperties QWidget {
margin-top: 0;
margin-bottom: 0;
}