diff --git a/src/Gui/PreferencePacks/CMakeLists.txt b/src/Gui/PreferencePacks/CMakeLists.txt index e7c235b9e0..7b9a17260d 100644 --- a/src/Gui/PreferencePacks/CMakeLists.txt +++ b/src/Gui/PreferencePacks/CMakeLists.txt @@ -4,7 +4,9 @@ SET(PreferencePacks_Files ) SET(PreferencePacks_Directories -"FreeCAD Classic Colors" +"Classic theme" +"Dark theme" +"Light theme" ) ADD_CUSTOM_TARGET(PreferencePacks_data ALL diff --git a/src/Gui/PreferencePacks/FreeCAD Classic Colors/FreeCAD Classic Colors.cfg b/src/Gui/PreferencePacks/Classic theme/Classic theme.cfg similarity index 100% rename from src/Gui/PreferencePacks/FreeCAD Classic Colors/FreeCAD Classic Colors.cfg rename to src/Gui/PreferencePacks/Classic theme/Classic theme.cfg diff --git a/src/Gui/PreferencePacks/Dark theme/Dark theme.cfg b/src/Gui/PreferencePacks/Dark theme/Dark theme.cfg new file mode 100644 index 0000000000..b2c3dfc0e2 --- /dev/null +++ b/src/Gui/PreferencePacks/Dark theme/Dark theme.cfg @@ -0,0 +1,105 @@ + + + + + + + + + + + + + + + + + + + + + + + + #9b4de6 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Darker-blue.qss + + + + + diff --git a/src/Gui/PreferencePacks/Light theme/Light theme.cfg b/src/Gui/PreferencePacks/Light theme/Light theme.cfg new file mode 100644 index 0000000000..9f1de86bf6 --- /dev/null +++ b/src/Gui/PreferencePacks/Light theme/Light theme.cfg @@ -0,0 +1,71 @@ + + + + + + + + + + + + + + + + + #feff9e + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Light-blue.qss + + + + + + diff --git a/src/Gui/PreferencePacks/package.xml b/src/Gui/PreferencePacks/package.xml index 31e1eadb47..85cb651f66 100644 --- a/src/Gui/PreferencePacks/package.xml +++ b/src/Gui/PreferencePacks/package.xml @@ -3,17 +3,39 @@ Built-In Preference Packs Preference Packs included with the FreeCAD distribution 1.0.0 - No Maintainer + MisterMaker LGPL2 https://github.com/FreeCAD/FreeCAD - FreeCAD Classic Colors - FreeCAD default colors for core app and included Mods. + Classic theme + Removes stylesheets, and applies the classic purple/gray background. Resets all colors to default 1.0.0 built-in - colors + background + no stylesheet + classic theme + + + Dark theme + Applies a dark background and a darker stylesheet, you can choose other stylesheets as you wish. + 0.5.0 + built-in + dark + background + stylesheet + theme + + + Light theme + Applies a light background and a light stylesheet, you can choose other stylesheets as you wish. + 0.5.0 + built-in + light + background + stylesheet + theme diff --git a/src/Gui/Stylesheets/CMakeLists.txt b/src/Gui/Stylesheets/CMakeLists.txt index 2e07d61990..4ce327c3d5 100644 --- a/src/Gui/Stylesheets/CMakeLists.txt +++ b/src/Gui/Stylesheets/CMakeLists.txt @@ -4,14 +4,25 @@ SET(Stylesheets_Files "Dark-blue.qss" "Dark-green.qss" "Dark-orange.qss" + "Dark-pink.qss" "Darker-blue.qss" "Darker-green.qss" "Darker-orange.qss" + "Darker-pink.qss" "Light-blue.qss" "Light-green.qss" "Light-orange.qss" + "Light-pink.qss" "Dark-contrast.qss" "ProDark.qss" + "Dark-modern-green.qss" + "Dark-modern-orange.qss" + "Dark-modern-pink.qss" + "Dark-modern-blue.qss" + "Light-modern-blue.qss" + "Light-modern-pink.qss" + "Light-modern-orange.qss" + "Light-modern-green.qss" ) # Find all the image files diff --git a/src/Gui/Stylesheets/Dark-blue.qss b/src/Gui/Stylesheets/Dark-blue.qss index 5ec40443ed..f1314d8c88 100644 --- a/src/Gui/Stylesheets/Dark-blue.qss +++ b/src/Gui/Stylesheets/Dark-blue.qss @@ -1,71 +1,40 @@ /* ABOUT ============================================================================================================ -version 2.21 -Qt theme (stylesheet) specially developed for FreeCAD (https://www.freecad.org/). -It might work with other software that uses Qt styling. +Revised stylesheet based on the original from Pablo Gil Fernández made by MisterMaker - -LICENSE +KNOWN BUGS and TO DO ============================================================================================================ -Copyright (c) 2019 Pablo Gil Fernández +Please, follow the link to get updated information: +https://forum.freecad.org/viewtopic.php?t=78431 -This work is licensed under the Creative Commons Attribution-ShareAlike 4.0 International License. -To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/4.0/. - - -INSTALLATION +INSTALLATION WHEN NECESSARY ============================================================================================================ 1) Place the .qss files and /images/ folder in the path that fits your OS: OSX = /Users/[YOUR_USER_NAME]/Library/Preferences/FreeCAD/Gui/Stylesheets/ WINDOWS = C:/[INSTALLATION_PATH]/FreeCAD/data/Gui/Stylesheets/ LINUX = /home/[YOUR_USER_NAME]/.FreeCAD/Gui/Stylesheets/ - -CUSTOMIZATION ============================================================================================================ -If you would like to change the overall look/style of the theme, just find and replace following colors in the whole file: - BACKGROUND (darker to lighter) - black - #1e1e1e - #3c3c3c - #505050 - #5a5a5a - #646464 - #6e6e6e = main background color - #787878 - #8c8c8c - #a0a0a0 - #b4b4b4 - #bebebe - #c8c8c8 - #d2d2d2 - #e0e0e0 - #f5f5f5 - white - - SELECTION (darker to lighter) - #1b3774 - #2053c0 - #3874f2 - #5e90fa = main selection color - #6f9efa = used to build QSpinBox up and down buttons, it's used as color in the middle - #7cabf9 - #adc5ed - #cbd8e6 +TO MODIFY USE THESE COLORS: + #4882ff + #3f7cff -KNOWN BUGS and TO DO -============================================================================================================ -Please, follow the link to get updated information: https://forum.freecad.org/viewtopic.php?f=10&t=12417 +See Qt documentation: -*/ + - https://doc.qt.io/qt-5/stylesheet.html + - https://doc.qt.io/qt-5/stylesheet-reference.html + - https://doc.qt.io/qt-5/stylesheet-examples.html + +--------------------------------------------------------------------------- */ -/*================================================================================================== -Reset elements -==================================================================================================*/ -/* Resetting everything helps to unify styles across different operating systems */ +/* Reset elements ------------------------------------------------------------ + +Resetting everything helps to unify styles across different operating systems + +--------------------------------------------------------------------------- */ * { padding: 0px; margin: 0px; @@ -73,2249 +42,2492 @@ Reset elements border-style: none; border-image: none; outline: 0; - color: black; /* Default color for labels and different text elements that usually use dark colors */ -} + } -/* specific reset for elements inside QToolBar */ -QToolBar * { + /* specific reset for elements inside QToolBar */ + QToolBar * { margin: 0px; padding: 0px; -} + } + /*hacks */ + Gui--PropertyEditor--PropertyEditor QLineEdit:read-only, + Gui--PropertyEditor--PropertyEditor QLineEdit:disabled, + Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:read-only, + Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:disabled { + color: transparent; + border-color: transparent; + background-color: transparent; + selection-color: transparent; + selection-background-color: transparent; -/*================================================================================================== -Main window -==================================================================================================*/ -QMainWindow, -QDialog, -QDockWidget, -QToolBar { - background-color: #6e6e6e; /* main background color */ -} + } + Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel, + Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel:disabled { + color: transparent; + background-color: transparent; + border: none; + border-radius: 1px; + margin: 0px; + padding: 0px; + } -QMdiArea { + Gui--PropertyEditor--PropertyEditor QSpinBox, + Gui--PropertyEditor--PropertyEditor QDoubleSpinBox, + Gui--PropertyEditor--PropertyEditor QAbstractSpinBox, + Gui--PropertyEditor--PropertyEditor QLineEdit, + Gui--PropertyEditor--PropertyEditor QComboBox { + margin-left: 0px; + margin-right: 0px; + padding-top: 0px; + padding-bottom: 0px; + + } + + /*================================================================================================== + Main window + ==================================================================================================*/ + QMainWindow, + QDialog, + QDockWidget, + QToolBar { + background-color: #7F7F7F; /* main background color */ + } + + QMdiArea { background-image: url(qss:images_dark-light/background_freecad_dark.svg); background-position: center center; background-repeat: no-repeat; -} + } + /*navgation src/Mod/Tux/NavigationIndicatorGui.py */ + Gui--NavigationIndicatorGui--BlenderNavigationStyle { + /*QAction#a4 {*/ + qproperty-icon: url(:/icons/icons/NavigationBlender_light.svg); + } + /*===== + /* QWidget ---------------------------------------------------------------- + --------------------------------------------------------------------------- */ + QWidget { + background-color: #7F7F7F; + border: 0px solid #696968; + padding: 0px; + color: White; + selection-background-color: #4882ff; + selection-color: White; + } -/*================================================================================================== -Sub windows -==================================================================================================*/ -QMdiSubWindow { - border:1px solid #505050; - margin-top: 30px; - margin-left: 4px; - margin-right: 4px; - margin-bottom:4px; -} - - -/*================================================================================================== -MENUS -==================================================================================================*/ -QMenuBar, -QMenuBar::item { - color: #e0e0e0; - background-color: #6e6e6e; /* main background color */ -} - -QMenu, -QMenu::item { - color: #e0e0e0; - background-color: #5a5a5a; - text-decoration: none; -} - -QMenuBar::item:selected, -QMenuBar::item:pressed, -QMenu::item:selected, -QMenu::item:pressed { - color: white; - background-color: #5e90fa; -} - -QMenu::right-arrow { - width: 10px; - height: 10px; - image:url(qss:images_dark-light/right_arrow_dark.svg); - margin-right: 2px; -} - -QMenu::right-arrow:selected { - image:url(qss:images_dark-light/right_arrow_lighter.svg); -} - -QMenu::item { - padding: 2px 4px; /* make room for icon at left */ - border: 1px solid transparent; /* reserve space for selection border */ -} - -QMenu::icon { - margin-left: 1px; - margin-right: 1px; -} - -QMenu::icon:checked { /* appearance of a 'checked' icon */ - background: #5e90fa; - border: 2px #5e90fa; - position: absolute; - border-radius: 2px; -} - -QMenu::separator { - height: 1px; - background-color: rgba(255,255,255,30); - margin: 6px 4px; -} - -QMenu::indicator:non-exclusive:checked { - color: white; -} - -/* Fix for elements inside a drop-down menu */ -QMenu QRadioButton, -QMenu QCheckBox, -QMenu QPushButton, -QMenu QToolButton { - color: white; /* same as regular QRadioButton and QCheckBox */ -} - -QMenu QRadioButton:hover, -QMenu QCheckBox:hover, -QMenu QPushButton:hover, -QMenu QToolButton:hover, -QMenu QPushButton:pressed, -QMenu QToolButton:pressed, -QMenu QPushButton:selected, -QMenu QToolButton:selected { - color: white; - background-color: #5e90fa; /* same as QMenu::item:selected and QMenu::item:pressed */ -} - -QMenu QRadioButton:disabled, -QMenu QCheckBox:disabled { - color: #f5f5f5; -} - -QMenu QRadioButton::indicator:disabled, -QMenu QCheckBox::indicator:disabled { - color: #f5f5f5; + QWidget:disabled { background-color: transparent; - border: 1px solid #f5f5f5; -} + color: #c2c7cb; + selection-background-color: #4882ff; + selection-color: #c2c7cb; + } + QWidget::item:selected { + background-color: #4882ff; + } -/*================================================================================================== -Tool bar -==================================================================================================*/ -QToolBar { - border: none; - padding: 2px; -} + /* Causes issue with colorselector. + QWidget::item:hover:!selected { + background-color: #4882ff; + }*/ -QToolBar::handle:top, -QToolBar::handle:bottom, -QToolBar::handle:horizontal { - background-image: url(qss:images_dark-light/Hmovetoolbar_dark.svg); - width: 10px; - margin: 4px 2px; - background-position: top right; - background-repeat: repeat-y; -} + /* QMainWindow ------------------------------------------------------------ -QToolBar::handle:left, -QToolBar::handle:right, -QToolBar::handle:vertical { - background-image: url(qss:images_dark-light/Vmovetoolbar_dark.svg); - height: 10px; - margin: 2px 4px; - background-position: left bottom; - background-repeat: repeat-x; -} + This adjusts the splitter in the dock widget, not qsplitter + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmainwindow -QToolBar::separator:top, -QToolBar::separator:bottom, -QToolBar::separator:horizontal { - width: 1px; - margin: 6px 4px; - background-color: rgba(0,0,0,30); -} - -QToolBar::separator:left, -QToolBar::separator:right, -QToolBar::separator:vertical { - height: 1px; - margin: 4px 6px; - background-color: rgba(0,0,0,30); -} - - -/*================================================================================================== -Group box -==================================================================================================*/ -QGroupBox { - color: rgba(0,0,0,120); - border:1px solid rgba(0, 0, 0, 20); /* lighter than its own border-color */; - border-radius: 3px; - margin-top: 10px; - padding: 6px; - background-color: rgba(255, 255, 255, 15); -} - -QGroupBox::title { - top: -8px; - left: 12px; -} - -/* NOTE: QGroupBox checkboxes are styles with regular ones so that the all get the same style */ -/* QGroupBox::indicator { - width: 13px; - height: 13px; -} - -QGroupBox::indicator:unchecked { - image: url(:/images/checkbox_unchecked.png); -} */ - - -/*================================================================================================== -Tooltip -==================================================================================================*/ -QToolTip { - color: #1e1e1e; - background-color: #b4b4b4; - /*opacity: 90%; doesn't correctly work */ - padding: 4px; - border-radius: 3px; /* has no effect */ -} - - -/*================================================================================================== -Dock widget -==================================================================================================*/ -QDockWidget { - color: rgba(0,0,0,120); - titlebar-close-icon: url(qss:images_dark-light/close_dark.svg); - titlebar-normal-icon: url(qss:images_dark-light/undock_dark.svg); -} - -QDockWidget::title { - text-align: center; - background-color: rgba(0,0,0,20); - border: 4px solid #6e6e6e; /* fix to simulate margin between this :title and tabs */ /* same as main background color */ - border-radius: 6px; /* bigger than normal due to previous border fix */ - padding: 4px 0px; /* also needed because of previous border fix */ -} - -QDockWidget::close-button, -QDockWidget::float-button { - border: none; - background: transparent; - border-radius: 3px; - subcontrol-origin: padding; - subcontrol-position: right center; -} - -QDockWidget::close-button { - right: 4px; -} - -QDockWidget::float-button { - right: 22px; -} - -QDockWidget::close-button:hover, -QDockWidget::float-button:hover { - background-color: rgba(255,255,255,15); -} - -QDockWidget::close-button:pressed, -QDockWidget::float-button:pressed { - background-color: rgba(255,255,255,30); -} - -/* fix for Python Console (probably there is a smarter way to arrive to it) */ -QDockWidget > QFrame { - background-color: #c8c8c8; - border: 1px solid #505050; -} - - -/*================================================================================================== -Progress bar -==================================================================================================*/ -QProgressBar, -QProgressBar:horizontal { - color: white; - background-color: rgba(0,0,0,10); - text-align: center; - border: 1px solid rgba(0,0,0,80); + --------------------------------------------------------------------------- */ + QMainWindow::separator { + /*background-color: #3c3c3c;*/ + border: 0px solid #696968; + spacing: 0px; padding: 1px; - border-radius: 3px; -} -QProgressBar::chunk, -QProgressBar::chunk:horizontal { - background-color: qlineargradient(spread:pad, x1:1, y1:0.545, x2:1, y2:0, stop:0 #3874f2, stop:1 #5e90fa); - border-radius: 3px; -} + } + QMainWindow::separator:vertical:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,stop:0.2 transparent,stop:0.5 #4882ff, stop:0.8 transparent); + /*background-color: #4882ff;*/ + image: url(qss:images_dark-light/splitter_vertical_light.svg); + } -/*================================================================================================== -Scroll -==================================================================================================*/ -QAbstractScrollArea { - border-radius: 2px; - background-color: transparent; -} + QMainWindow::separator:horizontal:hover { + background-color: qlineargradient(x1:0, y1:0, x2:1, y2:0,stop:0.2 transparent,stop:0.5 #4882ff, stop:0.8 transparent); + /*background-color: #4882ff;*/ + image: url(qss:images_dark-light/splitter_horizontal_light.svg); + } -QAbstractScrollArea::corner { + QMainWindow::separator:horizontal { + width: 4px; + margin-top: 0.1px; + margin-bottom: 0.1px; + /* image: url(qss:images_dark-light/splitter_horizontal_dark.svg);*/ + } + + QMainWindow::separator:vertical { + height: 4px; + margin-left: 0.1px; + margin-right: 0.1px; + /* image: url(qss:images_dark-light/splitter_vertical_dark.svg);*/ + } + + /* QToolTip --------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtooltip + + --------------------------------------------------------------------------- */ + QToolTip { + background-color: #505050; + color: White; + /* If you remove the border property, background stops working on Windows */ border: none; - background-color: transparent; -} + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Remove opacity, fix #174 - may need to use RGBA */ + } -QScrollBar:horizontal { - background-color: transparent; - height: 15px; - margin: 0px; -} + /* QStatusBar ------------------------------------------------------------- -QScrollBar::handle:vertical, -QScrollBar::handle:horizontal { - background-color: rgba(0,0,0,80); -} + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qstatusbar -QScrollBar::handle:vertical:hover, -QScrollBar::handle:horizontal:hover { - background-color: rgba(0,0,0,100); -} + --------------------------------------------------------------------------- */ + QStatusBar { + border: 0px solid #3c3c3c; + /* Fixes Spyder #9120, #9121 */ + background: #7F7F7F; + /* Fixes #205, white vertical borders separating items */ + } -QScrollBar::handle:horizontal { - min-width: 5px; - border-radius: 3px; - margin: 4px 15px; -} + QStatusBar::item { + border: none; + } -QScrollBar::sub-line:horizontal { - margin: 1px 3px 0px 3px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/left_arrow_light.svg); - width: 6px; - height: 10px; - subcontrol-position: left; - subcontrol-origin: margin; -} + QStatusBar QToolTip { + background-color: #7F7F7F; + border: 1px solid #696968; + color: #7F7F7F; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Reducing transparency to read better */ + opacity: 230; + } -QScrollBar::add-line:horizontal { - margin: 1px 3px 0px 3px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/right_arrow_light.svg); - width: 6px; - height: 10px; - subcontrol-position: right; - subcontrol-origin: margin; -} + QStatusBar QLabel { + /* Fixes Spyder #9120, #9121 */ + background: transparent; + } -QScrollBar::sub-line:horizontal:hover, -QScrollBar::sub-line:horizontal:on { - border-image: url(qss:images_dark-light/left_arrow_lighter.svg); -} + /* QCheckBox -------------------------------------------------------------- -QScrollBar::add-line:horizontal:hover, -QScrollBar::add-line:horizontal:on { - border-image: url(qss:images_dark-light/right_arrow_lighter.svg); -} + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcheckbox -QScrollBar::up-arrow:horizontal, -QScrollBar::down-arrow:horizontal { - background-color: none; -} - -QScrollBar::add-page:horizontal, -QScrollBar::sub-page:horizontal { - background-color: transparent; -} - -QScrollBar:vertical { - background-color: transparent; - width: 15px; - margin: 0px; -} - -QScrollBar::handle:vertical { - min-height: 5px; - border-radius: 3px; - margin: 15px 4px; -} - -QScrollBar::sub-line:vertical { - margin: 3px 0px 3px 1px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/up_arrow_light.svg); - height: 6px; - width: 10px; - subcontrol-position: top; - subcontrol-origin: margin; -} - -QScrollBar::add-line:vertical { - margin: 3px 0px 3px 1px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/down_arrow_light.svg); - height: 6px; - width: 10px; - subcontrol-position: bottom; - subcontrol-origin: margin; -} - -QScrollBar::sub-line:vertical:hover, -QScrollBar::sub-line:vertical:on { - border-image: url(qss:images_dark-light/up_arrow_lighter.svg); -} - -QScrollBar::add-line:vertical:hover, -QScrollBar::add-line:vertical:on { - border-image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -QScrollBar::up-arrow:vertical, -QScrollBar::down-arrow:vertical { - background-color: none; -} - -QScrollBar::add-page:vertical, -QScrollBar::sub-page:vertical { - background-color: transparent; -} - - -/*================================================================================================== -Tab bar -==================================================================================================*/ -QTabWidget::pane { - background-color: transparent; /* temporal (transparent background) */ /* tab content background color */ - position: absolute; -} - -QTabWidget::pane:top { - top: -1px; - border-top: 1px solid #5a5a5a; -} - -QTabWidget::pane:bottom { - bottom: -1px; - border-bottom: 1px solid #5a5a5a; -} - -QTabWidget::pane:left { - right: -1px; - border-right: 1px solid #5a5a5a; -} - -QTabWidget::pane:right { - left: -1px; - border-left: 1px solid #5a5a5a; -} - -QTabWidget::tab-bar:top, -QTabWidget::tab-bar:bottom { - left: 10px; -} - -QTabWidget::tab-bar:left, -QTabWidget::tab-bar:right { - top: 10px; -} - -QTabBar { - qproperty-drawBase: 0; /* important */ - background-color: transparent; -} - -/* Workaround for QTabBars created from docked QDockWidgets which don't draw the border if not set and reset as follows: */ -QTabBar { - border-top: 1px solid #5a5a5a; /* set color for all QTabBars */ -} -QDockWidget QTabBar { - border-color: transparent; /* set color for all QTabBars but ones created from QDockWidget */ -} -QDialog QTabBar { - border-color: transparent; /* set color for QTabBars inside Preferences dialog */ -} -/* end fix */ - -QTabBar::tab { - background-color: transparent; + --------------------------------------------------------------------------- */ + QCheckBox { + color: white; + padding: 0px; + outline: none; border: 1px solid transparent; - padding: 3px; -} + background-color: transparent; + } -QTabBar::tab:top, -QTabBar::tab:bottom { - border-top-width: 4px; /* same as selected tab colored border in order to center close-button */ - border-bottom-width: 4px; /* same as selected tab colored border in order to center close-button */ - min-width: 11ex; - margin-left: 2px; - margin-right: 2px; -} + QCheckBox:focus { + border: 1px solid #3f7cff; + } -QTabBar::tab:left, -QTabBar::tab:right { - border-left-width: 4px; /* same as selected tab colored border in order to center close-button */ - border-right-width: 4px; /* same as selected tab colored border in order to center close-button */ - min-height: 14ex; - margin-top: 2px; - margin-bottom: 2px; -} + QCheckBox QWidget:disabled { + background-color: transparent; + color: #c2c7cb; + } -QTabBar::tab:selected { - color: #d2d2d2; - background-color: #6e6e6e; /* same as tab content background color */ - border-color: #5a5a5a; -} - -QTabBar::tab:top:selected { - border-top: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #5e90fa, stop:1 #3874f2); /* selection color */ - border-bottom-color: #6e6e6e; /* same as tab content background color */ -} - -QTabBar::tab:bottom:selected { - border-bottom: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #5e90fa, stop:1 #3874f2); /* selection color */ - border-top-color: #6e6e6e; /* same as tab content background color */ -} - -QTabBar::tab:right:selected { - border-left: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:1, y2:0, stop:0 #5e90fa, stop:1 #3874f2); /* selection color */ - border-right-color: #6e6e6e; /* same as tab content background color */ -} - -QTabBar::tab:left:selected { - border-right: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:1, y2:0, stop:0 #5e90fa, stop:1 #3874f2); /* selection color */ - border-left-color: #6e6e6e; /* same as tab content background color */ -} - -QTabBar::tab:!selected { - color: rgba(0,0,0,120); -} - -QTabBar::tab:!selected:hover { - color: rgba(0,0,0,180); - background-color: rgba(0,0,0,20); -} - -QTabBar::tab:first:selected { - margin-left: 0; /* the first selected tab has nothing to overlap with on the left */ -} - -QTabBar::tab:last:selected { - margin-right: 0; /* the last selected tab has nothing to overlap with on the right */ -} - -QTabBar::tab:only-one { - margin: 0; /* if there is only one tab, we don't want overlapping margins */ -} - -/* hack to access Preference TabBar background */ -QDialog#Gui__Dialog__DlgPreferences > QFrame QFrame { - background-color: transparent; /* main background color (in Windows is #6e6e6e) */ -} - -/* fix for previous hack that broke QTabWidget background on Windows */ -QDialog#Gui__Dialog__DlgPreferences QTabWidget::pane { - background-color: transparent; /* temporal (transparent background) */ -} - -/* hack to correctly align Preferences icon list on OSX */ -QDialog#Gui__Dialog__DlgPreferences > QListView { - min-width: 130px; -} - -/* unique styles for sections inside Preferences */ -QDialog#Gui__Dialog__DlgPreferences > QListView::item { - border-radius: 4px; -} - -QDialog#Gui__Dialog__DlgPreferences > QListView::item:hover { - background-color: #b4b4b4; -} - -QDialog#Gui__Dialog__DlgPreferences > QListView::item:selected { + QCheckBox::indicator { color: white; - background-color: #5e90fa; -} - - -/*================================================================================================== -Tab bar buttons -==================================================================================================*/ -/* Close button */ -QTabBar::close-button { - subcontrol-origin: margin; - subcontrol-position: center right; /* only works for QT 4.6 and newer */; - border-radius: 2px; - background-image: url(qss:images_dark-light/close_dark.svg); - background-position: center center; - background-repeat: none; -} - -QTabBar::close-button:hover { - background-color: rgba(255,255,255,20); -} - -QTabBar::close-button:pressed { - background-color: rgba(255,255,255,30); -} - -/* Fix for lists inside Model tab */ -QDockWidget QTreeView, -QDockWidget QListView, -QDockWidget QTableView { - margin: 6px; - border: 1px solid #505050; /* same as regular QTreeView, QListView and QTableView */ - min-height: 40px; /* necessary in some areas of FreeCAD */ -} - -/* Buttons to scroll tabs if there is not space to show all of them: */ -QTabBar::scroller { - width: 20px; /* the width of the scroll buttons */ -} - -QTabBar QToolButton, -QTabBar QToolButton:hover { - background-color: #6e6e6e; /* same as main background color */ -} - -QTabBar QToolButton::right-arrow:enabled { - image: url(qss:images_dark-light/right_arrow_dark.svg); -} - -QTabBar QToolButton::right-arrow:disabled, -QTabBar QToolButton::right-arrow:off { - image: url(qss:images_dark-light/right_arrow_disabled_dark.svg); -} - -QTabBar QToolButton::right-arrow:hover { - image: url(qss:images_dark-light/right_arrow_darker.svg); -} - - QTabBar QToolButton::left-arrow:enabled { - image: url(qss:images_dark-light/left_arrow_dark.svg); -} - - QTabBar QToolButton::left-arrow:disabled, - QTabBar QToolButton::left-arrow:off { - image: url(qss:images_dark-light/left_arrow_disabled_dark.svg); -} - - QTabBar QToolButton::left-arrow:hover { - image: url(qss:images_dark-light/left_arrow_darker.svg); -} - - QTabBar QToolButton::up-arrow:enabled { - image: url(qss:images_dark-light/up_arrow_dark.svg); -} - - QTabBar QToolButton::up-arrow:disabled, - QTabBar QToolButton::up-arrow:off { - image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); -} - - QTabBar QToolButton::up-arrow:hover { - image: url(qss:images_dark-light/up_arrow_darker.svg); -} - - QTabBar QToolButton::down-arrow:enabled { - image: url(qss:images_dark-light/down_arrow_dark.svg); -} - - QTabBar QToolButton::down-arrow:disabled, - QTabBar QToolButton::down-arrow:off { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - - QTabBar QToolButton::down-arrow:hover { - image: url(qss:images_dark-light/down_arrow_darker.svg); -} - -QTabBar::tear { - /* default OS tear better */ -} - - -/*================================================================================================== -Tree and list views -==================================================================================================*/ -QTreeView, -QListView, -QTableView { - background-color: #c8c8c8; - alternate-background-color: #bebebe; /* related with QListView background */ - border: 1px solid #505050; - selection-color: white; - selection-background-color: #5e90fa; /* should be similar to QListView::item selected background-color */ - show-decoration-selected: 1; /* make the selection span the entire width of the view */ - border-radius: 3px; -} - -QListView::item:hover, -QTreeView::item:hover { - background-color: transparent; /* fix to homogenize it on all OSs */ -} - -QListView::item:selected, -QTreeView::item:selected { - color: white; /* should be similar to QListView selection-color */ - background-color: #5e90fa; /* should be similar to QListView selection-background-color */ - show-decoration-selected: 1; /* make the selection span the entire width of the view */ -} - -/* Property Editor QTreeView (FreeCAD custom widget) */ -Gui--PropertyEditor--PropertyEditor { - gridline-color: #a0a0a0; /* same as Group header background */ -} - -/* fix for column items background when a link is present */ -Gui--PropertyEditor--PropertyEditor > QWidget > QFrame:focus { - background-color: #cbd8e6; /* same as focused background color */ -} - -/* hack to hide weird redundant information inside the value of a Placement cell */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel, -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel:disabled { - color: transparent; - background-color: transparent; - border: none; - border-radius: 0px; - margin: 0px; - padding: 0px; -} - -/* hack to hide non editable cells inside Property values */ -Gui--PropertyEditor--PropertyEditor QLineEdit:read-only, -Gui--PropertyEditor--PropertyEditor QLineEdit:disabled, -Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:read-only, -Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:disabled { - color: transparent; - border-color: transparent; - background-color: transparent; - selection-color: transparent; - selection-background-color: transparent; -} - -/* hack to hide weird redundant information inside cells with links and no editable data (but editable via "..." button) */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel { - color: black; - background-color: #cbd8e6; -} - -/* hack to disable margin inside Property values to following elements */ -Gui--PropertyEditor--PropertyEditor QSpinBox, -Gui--PropertyEditor--PropertyEditor QDoubleSpinBox, -Gui--PropertyEditor--PropertyEditor QAbstractSpinBox, -Gui--PropertyEditor--PropertyEditor QLineEdit, -Gui--PropertyEditor--PropertyEditor QComboBox { - margin-left: 0px; - margin-right: 0px; - padding-top: 0px; - padding-bottom: 0px; -} - -/* reset min-height to 0px inside list views */ -QTreeView > QWidget > QComboBox, -QTreeView > QWidget > QAbstractSpinBox, -QTreeView > QWidget > QSpinBox, -QTreeView > QWidget > QDoubleSpinBox, -QTreeView > QWidget > QLineEdit, -QTreeView > QWidget > QTextEdit, -QTreeView > QWidget > QTimeEdit, -QTreeView > QWidget > QDateEdit, -QTreeView > QWidget > QDateTimeEdit, -QTreeView > QWidget > Gui--ColorButton { - min-height: 0px; -} - -/* set border-radius to 0px inside list views */ -QTreeView > QWidget > QComboBox, -QTreeView > QWidget > QAbstractSpinBox, -QTreeView > QWidget > QSpinBox, -QTreeView > QWidget > QDoubleSpinBox, -QTreeView > QWidget > QLineEdit, -QTreeView > QWidget > QTextEdit, -QTreeView > QWidget > QTimeEdit, -QTreeView > QWidget > QDateEdit, -QTreeView > QWidget > QDateTimeEdit, -QTreeView > QWidget > QComboBox:drop-down, -QTreeView > QWidget > QAbstractSpinBox:up-button, -QTreeView > QWidget > QSpinBox:up-button, -QTreeView > QWidget > QDoubleSpinBox:up-button, -QTreeView > QWidget > QTimeEdit:up-button, -QTreeView > QWidget > QDateEdit:up-button, -QTreeView > QWidget > QDateTimeEdit:up-button, -QTreeView > QWidget > QAbstractSpinBox:down-button, -QTreeView > QWidget > QSpinBox:down-button, -QTreeView > QWidget > QDoubleSpinBox:down-button, -QTreeView > QWidget > QTimeEdit:down-button, -QTreeView > QWidget > QDateEdit:down-button, -QTreeView > QWidget > QDateTimeEdit:down-button, -QTreeView > QWidget > Gui--ColorButton { - border-radius: 0px; -} - -/* set focus colors to best viewing the editable fields */ -QTreeView > QWidget > QComboBox:focus, -QTreeView > QWidget > QAbstractSpinBox:focus, -QTreeView > QWidget > QSpinBox:focus, -QTreeView > QWidget > QDoubleSpinBox:focus, -QTreeView > QWidget > QLineEdit:focus, -QTreeView > QWidget > QTextEdit:focus, -QTreeView > QWidget > QTimeEdit:focus, -QTreeView > QWidget > QDateEdit:focus, -QTreeView > QWidget > QDateTimeEdit:focus { - border-color: #cbd8e6; /* same as focused background color */ - border-bottom-color: #7cabf9; /* same as focused border color */ -} - -QTreeView > QWidget > QAbstractSpinBox:read-only, -QTreeView > QWidget > QSpinBox:read-only, -QTreeView > QWidget > QDoubleSpinBox:read-only, -QTreeView > QWidget > QLineEdit:read-only, -QTreeView > QWidget > QTextEdit:read-only, -QTreeView > QWidget > QTimeEdit:read-only, -QTreeView > QWidget > QDateEdit:read-only, -QTreeView > QWidget > QDateTimeEdit:read-only { - color: transparent; - background-color: transparent; - border-color: transparent; -} - -/* Fix to correctly (not totally) draw QTextEdit on OSX at Page properties: "Page result", "Template" and "Editable Texts" */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QWidget { - min-height: 14px; - border-radius: 0px; /* reset */ -} - - -/*================================================================================================== -Header of tree and list views -==================================================================================================*/ -QHeaderView { - color: #c8c8c8; background-color: #505050; - border-top-left-radius: 2px; /* 1px less than its container */ - border-top-right-radius: 2px; /* 1px less than its container */ - border-bottom-left-radius: 0px; - border-bottom-right-radius: 0px; -} + width: 12px; + height: 12px; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); + } -QHeaderView::section { - border:none; - padding: 4px 6px; + QCheckBox::indicator:unchecked { background-color: #505050; -} + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); + } -QHeaderView::section:horizontal { - padding: 4px 6px; /* left and right value similar to QHeaderView::section */ - border-right: 1px solid rgba(255,255,255,30); -} + QCheckBox::indicator:unchecked:hover, QCheckBox::indicator:unchecked:focus, QCheckBox::indicator:unchecked:pressed { + background-color: #4882ff; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); + } -QHeaderView::section:vertical { - border-bottom: 1px solid rgba(255,255,255,30); -} + QCheckBox::indicator:unchecked:disabled { + background-color: #7F7F7F; + image:url(qss:images_dark-light/checkbox_unchecked_disabled.svg); + } -QTableCornerButton::section { + QCheckBox::indicator:checked { background-color: #505050; - border-top: none; - border-left: none; - border-right: 1px solid rgba(255,255,255,30); - border-bottom: 1px solid rgba(255,255,255,30); -} + /*border: 1px solid #696968; /* QRadioButton has the same color */ + image:url(qss:images_dark-light/checkbox_light.svg); + } -QHeaderView::section:last { - border-right: none; -} + QCheckBox::indicator:checked:hover, QCheckBox::indicator:checked:pressed { + background-color: #4882ff; + } -QHeaderView::up-arrow { - image: url(qss:images_dark-light/up_arrow_light.svg); -} + QCheckBox::indicator:checked:disabled { + background-color: #7F7F7F; + image: url(qss:images_dark-light/check_light.svg); + } -QHeaderView::up-arrow:hover { - image: url(qss:images_dark-light/up_arrow_lighter.svg); -} + QCheckBox::indicator:indeterminate { + background-color: #505050; + border: 1px solid #696968; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); + } -QHeaderView::down-arrow { - image: url(qss:images_dark-light/down_arrow_light.svg); -} + QCheckBox::indicator:indeterminate:disabled { + background-color: #7F7F7F; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); + } -QHeaderView::down-arrow:hover { - image: url(qss:images_dark-light/down_arrow_lighter.svg); -} + QCheckBox::indicator:indeterminate:hover, QCheckBox::indicator:indeterminate:pressed { + background-color: #4882ff; /* QRadioButton has the same color */ + } -/* Group header inside Property Editor (FreeCAD custom widget) */ -Gui--PropertyEditor--PropertyEditor { - qproperty-groupTextColor: #505050; - qproperty-groupBackground: #8c8c8c; -} + /* QGroupBox -------------------------------------------------------------- + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qgroupbox -/*================================================================================================== -Branch system for QTreeViews -==================================================================================================*/ -QTreeView::branch { - background: transparent; -} - -QTreeView::branch:has-siblings:!adjoins-item { - border-image: url(qss:images_dark-light/branch_vline_dark.svg) 0; -} - -QTreeView::branch:has-siblings:adjoins-item { - border-image: url(qss:images_dark-light/branch_more_dark.svg) 0; -} - -QTreeView::branch:!has-children:!has-siblings:adjoins-item { - border-image: url(qss:images_dark-light/branch_end_dark.svg) 0; -} - -QTreeView::branch:closed:has-children:has-siblings { - border-image: url(qss:images_dark-light/branch_more_closed_dark.svg) 0; -} - -QTreeView::branch:has-children:!has-siblings:closed { - border-image: url(qss:images_dark-light/branch_end_closed_dark.svg) 0; -} - -QTreeView::branch:open:has-children:has-siblings { - border-image: url(qss:images_dark-light/branch_more_open_dark.svg) 0; -} - -QTreeView::branch:open:has-children:!has-siblings { - border-image: url(qss:images_dark-light/branch_end_open_dark.svg) 0; -} - - -/*================================================================================================== -Splitter and windows separator -==================================================================================================*/ -QSplitter::handle { - margin: 0px 11px; - padding: 0px; -} - -QSplitter::handle:horizontal { - background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); - background-position: center center; - background-repeat: none; - margin: 4px 2px 4px 2px; - width: 2px; -} - -QSplitter::handle:vertical { - background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); - background-position: center center; - background-repeat: none; - margin: 2px 4px 2px 4px; - height: 2px; -} - -/* Similar to the splitter is the following window separator (but horizontal/vertical is on the opposite way) */ -QMainWindow::separator { - background-position: center center; - background-repeat: none; -} - -QMainWindow::separator:horizontal { - height: 2px; - background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); - margin: 4px 2px 4px 2px; -} - -QMainWindow::separator:vertical { - width: 2px; - background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); - margin: 2px 4px 2px 4px; -} - - -/*================================================================================================== -Text/Python editor (macros, etc...) -==================================================================================================*/ -QPlainTextEdit, -QPlainTextEdit:focus { - background-color: #c8c8c8; - selection-color: white; - selection-background-color: #3874f2; - border: 1px solid #505050; - border-radius: 3px; - margin: 4px; -} - - -/*================================================================================================== -Tasks panel (custom FreeCAD class) -==================================================================================================*/ -/* Action group */ -QFrame[class="panel"] { - background-color: transparent; /* temporal (transparent background) */ -} - -QSint--ActionGroup { - padding: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ - margin: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ -} - -/* Separator line */ -QSint--ActionGroup QFrame[height="1"], -QSint--ActionGroup QFrame[height="2"], -QSint--ActionGroup QFrame[height="3"], -QSint--ActionGroup QFrame[width="1"], -QSint--ActionGroup QFrame[width="2"], -QSint--ActionGroup QFrame[width="3"] { - border-color: rgba(0,0,0,60); -} - -/* Panel header */ -QSint--ActionGroup QFrame[class="header"] { - border: none; - background-color: #505050; /* Task Panel Header background color */ - border-top-left-radius: 3px; - border-top-right-radius: 3px; - border-bottom-left-radius: 0px; - border-bottom-right-radius: 0px; - margin: 0px; - padding: 0px; -} - -QSint--ActionGroup QFrame[class="header"]:hover { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #5e90fa, stop:1 #3874f2); -} - -QSint--ActionGroup QToolButton[class="header"] { - color: #e0e0e0; /* Task Panel Header text color */ - text-align: left; + --------------------------------------------------------------------------- */ + QGroupBox { font-weight: bold; - border: none; - margin: 0px; - padding: 0px; -} - -QSint--ActionGroup QFrame[class="header"] QLabel { - background-color: transparent; - background-image: url(qss:images_dark-light/down_arrow_light.svg); - background-repeat: none; - background-position: center center; - padding: 0px; - margin: 0px; -} - -QSint--ActionGroup QFrame[class="header"] QLabel:hover { - background-color: transparent; - background-image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"] { - background-color: transparent; - background-image: url(qss:images_dark-light/up_arrow_light.svg); - background-repeat: none; - background-position: center center; - padding: 0px; - margin: 0px; -} - -QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"]:hover { - background-color: transparent; - background-image: url(qss:images_dark-light/up_arrow_lighter.svg); -} - -QSint--ActionGroup QFrame[class="content"] { - background-color: #8c8c8c; /* Task Panel background color */ - margin: 0px; - padding: 0px; - border: none; - border-top-left-radius: 0px; - border-top-right-radius: 0px; - border-bottom-left-radius: 3px; - border-bottom-right-radius: 3px; -} - -QSint--ActionGroup QFrame[class="content"] > QWidget { - background-color: #8c8c8c; /* Task Panel background color */ -} - -/* Fixs for tabs inside Task Panel */ -QSint--ActionGroup QFrame[class="content"] QTabBar::tab:top:selected { - border-bottom-color: #8c8c8c; /* same as Task Panel background color */ -} - -QSint--ActionGroup QFrame[class="content"] QTabBar::tab:bottom:selected { - border-top-color: #8c8c8c; /* same as Task Panel background color */ -} - -QSint--ActionGroup QFrame[class="content"] QTabBar::tab:right:selected { - border-right-color: #8c8c8c; /* same as Task Panel background color */ -} - -QSint--ActionGroup QFrame[class="content"] QTabBar::tab:left:selected { - border-left-color: #8c8c8c; /* same as Task Panel background color */ -} - -/* Fix for buttons with icons that showed cropped (still not happy with result) */ -QSint--ActionGroup QFrame[class="content"] > QWidget > QPushButton { - padding: 2px; /* bigger padding crops text and icons... */ - margin: 0px; -} - -/* Fix for lists inside task panels */ -/* QSint--ActionGroup QFrame[class="content"] QTreeView, -QSint--ActionGroup QFrame[class="content"] QListView, -QSint--ActionGroup QFrame[class="content"] QTableView { - color: #f5f5f5; - background-color: #787878; -} */ - - -/*================================================================================================== -Buttons -==================================================================================================*/ -/* Common */ -QComboBox, -QAbstractSpinBox, -QSpinBox, -QDoubleSpinBox, -QLineEdit, -QTextEdit, -QTimeEdit, -QDateEdit, -QDateTimeEdit { - color: #bebebe; - background-color: #5a5a5a; - selection-color: white; - selection-background-color: #3874f2; - border: 1px solid #5a5a5a; - border-radius: 3px; - min-width: 50px; /* it ensures the default value is correctly displayed */ - min-height: 20px; /* important to be a pair number in order to up/down buttons to be divisible by two (if not set could create a blank line in Ubuntu. Its downside is that it's needed to reset it (min-width: 0px) on following elements that can't have it such as fields inside QToolBar and inside QTreeView (Property editor) */ - padding: 1px 2px; /* temporal: could don't be compatible with elements inside Tree/List view */ -} - -/* more contrast for QTexEdits */ -QTextEdit { - color: black; -} - -/* shifts text/number editable field to the left to make space for the up/down or drop-down buttons */ -QComboBox, -QAbstractSpinBox, -QSpinBox, -QDoubleSpinBox, -QTimeEdit, -QDateEdit, -QDateTimeEdit { - padding-right: 20px; -} - -/* when QTextEdit are no editable (like Report view)*/ -QTextEdit:!editable, -QTextEdit:!editable:focus { - background-color: #c8c8c8; - border: 1px solid #505050; -} - -QComboBox:focus, -QAbstractSpinBox:focus, -QSpinBox:focus, -QDoubleSpinBox:focus, -QLineEdit:focus, -QTextEdit:focus, -QTimeEdit:focus, -QDateEdit:focus, -QDateTimeEdit:focus { - color: black; - border-color: #7cabf9; - border-right-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #5e90fa, stop:1 #7cabf9); /* same as up/down or drop-down button color */ - background-color: #cbd8e6; -} - -QComboBox:disabled, -QAbstractSpinBox:disabled, -QSpinBox:disabled, -QDoubleSpinBox:disabled, -QLineEdit:disabled, -QTextEdit:disabled, -QTimeEdit:disabled, -QDateEdit:disabled, -QDateTimeEdit:disabled { - color: #787878; - background-color: #5a5a5a; /* same as enabled color */ - border-color: #5a5a5a; /* same as enabled color */ -} - -QAbstractSpinBox:up-button, -QSpinBox:up-button, -QDoubleSpinBox:up-button, -QTimeEdit:up-button, -QDateEdit:up-button, -QDateTimeEdit:up-button, -QAbstractSpinBox:down-button, -QSpinBox:down-button, -QDoubleSpinBox:down-button, -QTimeEdit:down-button, -QDateEdit:down-button, -QDateTimeEdit:down-button { - background-color: #505050; /* same color for QComboBox background-color */ - subcontrol-origin: border; /* important */ - width: 20px; /* same as QComboBox ... QDateTimeEdit padding-right */ -} - -QAbstractSpinBox:up-button, -QSpinBox:up-button, -QDoubleSpinBox:up-button, -QTimeEdit:up-button, -QDateEdit:up-button, -QDateTimeEdit:up-button { - subcontrol-position: top right; - border-top-right-radius: 3px; -} - -QAbstractSpinBox:down-button, -QSpinBox:down-button, -QDoubleSpinBox:down-button, -QTimeEdit:down-button, -QDateEdit:down-button, -QDateTimeEdit:down-button { - subcontrol-position: bottom right; - border-bottom-right-radius: 3px; -} - -QAbstractSpinBox:up-button:focus, -QSpinBox:up-button:focus, -QDoubleSpinBox:up-button:focus, -QTimeEdit:up-button:focus, -QDateEdit:up-button:focus, -QDateTimeEdit:up-button:focus { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #6f9efa, stop:1 #7cabf9); -} - -QAbstractSpinBox:down-button:focus, -QSpinBox:down-button:focus, -QDoubleSpinBox:down-button:focus, -QTimeEdit:down-button:focus, -QDateEdit:down-button:focus, -QDateTimeEdit:down-button:focus { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #5e90fa, stop:1 #6f9efa); -} - -QAbstractSpinBox:up-button:disabled, -QSpinBox:up-button:disabled, -QDoubleSpinBox:up-button:disabled, -QTimeEdit:up-button:disabled, -QDateEdit:up-button:disabled, -QDateTimeEdit:up-button:disabled, -QAbstractSpinBox:down-button:disabled, -QSpinBox:down-button:disabled, -QDoubleSpinBox:down-button:disabled, -QTimeEdit:down-button:disabled, -QDateEdit:down-button:disabled, -QDateTimeEdit:down-button:disabled { - background-color: transparent; -} - -QAbstractSpinBox::up-arrow, -QSpinBox::up-arrow, -QDoubleSpinBox::up-arrow, -QTimeEdit::up-arrow, -QDateEdit::up-arrow, -QDateTimeEdit::up-arrow { - image: url(qss:images_dark-light/up_arrow_light.svg); - top: 2px; /* fix symmetry between up and down images */ -} - -QAbstractSpinBox::up-arrow:focus, -QSpinBox::up-arrow:focus, -QDoubleSpinBox::up-arrow:focus, -QTimeEdit::up-arrow:focus, -QDateEdit::up-arrow:focus, -QDateTimeEdit::up-arrow:focus { - image: url(qss:images_dark-light/up_arrow_lighter.svg); -} - -QAbstractSpinBox::up-arrow:off, -QSpinBox::up-arrow:off, -QDoubleSpinBox::up-arrow:off, -QTimeEdit::up-arrow:off, -QDateEdit::up-arrow:off, -QDateTimeEdit::up-arrow:off { - image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); -} - -QAbstractSpinBox::up-arrow:disabled, -QSpinBox::up-arrow:disabled, -QDoubleSpinBox::up-arrow:disabled, -QTimeEdit::up-arrow:disabled, -QDateEdit::up-arrow:disabled, -QDateTimeEdit::up-arrow:disabled { - image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); -} - -QAbstractSpinBox::down-arrow, -QSpinBox::down-arrow, -QDoubleSpinBox::down-arrow, -QTimeEdit::down-arrow, -QDateEdit::down-arrow, -QDateTimeEdit::down-arrow { - image: url(qss:images_dark-light/down_arrow_light.svg); - bottom: 0px; /* fix simetry between up and down images */ -} - -QAbstractSpinBox::down-arrow:focus, -QSpinBox::down-arrow:focus, -QDoubleSpinBox::down-arrow:focus, -QTimeEdit::down-arrow:focus, -QDateEdit::down-arrow:focus, -QDateTimeEdit::down-arrow:focus { - image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -QAbstractSpinBox::down-arrow:off, -QSpinBox::down-arrow:off, -QDoubleSpinBox::down-arrow:off, -QTimeEdit::down-arrow:off, -QDateEdit::down-arrow:off, -QDateTimeEdit::down-arrow:off { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - -QAbstractSpinBox::down-arrow:disabled, -QSpinBox::down-arrow:disabled, -QDoubleSpinBox::down-arrow:disabled, -QTimeEdit::down-arrow:disabled, -QDateEdit::down-arrow:disabled, -QDateTimeEdit::down-arrow:disabled { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - -/* ComboBox */ - -QComboBox::drop-down { - background-color: #505050; /* same color as up/down QSpinBox ... QDateTimeView background-color */ - subcontrol-origin: border; /* important */ - subcontrol-position: top right; - width: 20px; - border-top-right-radius: 3px; - border-bottom-right-radius: 3px; -} - -QComboBox::drop-down:on, -QComboBox::drop-down:focus { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #5e90fa, stop:1 #7cabf9); -} - -QComboBox::down-arrow { - image: url(qss:images_dark-light/down_arrow_light.svg); -} - -QComboBox::down-arrow:on, -QComboBox::down-arrow:focus { - image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -QComboBox::down-arrow:off, -QComboBox::down-arrow:disabled { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - -/* ComboBox menu */ -QComboBox { - selection-color: white; - selection-background-color: #5e90fa; -} - -QComboBox QAbstractItemView { - color: #bebebe; /* same as regular QComboBox color */ - background-color: transparent; - selection-color: white; - selection-background-color: #5e90fa; - border-width: 5px 0px 5px 0px; - border-style: solid; - border-color: transparent; - margin: 0px -1px 0px 0px; /* hack for Mac... try it on Windows and Linux */ -} - - -/*================================================================================================== -Push button -==================================================================================================*/ -QPushButton { - color: #e0e0e0; - text-align: center; - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #6e6e6e, stop:1 #646464); - border: 1px solid #5a5a5a; - border-bottom-color: #505050; /* simulates shadow under the button */ - padding: 4px 22px; - margin: 4px 4px; - min-height: 16px; /* same as QTabBar QPushButton min-width */ - border-radius: 4px; -} - -QPushButton:hover, -QPushButton:focus { - color: white; - border-color: #3874f2; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #5e90fa, stop:1 #3874f2); -} - -QPushButton:disabled, -QPushButton:disabled:checked { - color: #787878; - background-color: #5a5a5a; /* same as enabled color */ - border-color: #5a5a5a; /* same as enabled color */ -} - -QPushButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #3874f2, stop:1 #5e90fa); -} - -QPushButton:checked { - background-color: #5e90fa; - border-color: #3874f2; -} - -/* Color Buttons */ -Gui--ColorButton, -Gui--ColorButton:disabled { - padding: 0px; /* reset */ - margin: 0px; /* reset */ -} - -Gui--ColorButton { - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #6e6e6e, stop:1 #646464); - border: 1px solid #5a5a5a; - border-bottom-color: #505050; /* simulates shadow under the button */ -} - -Gui--ColorButton:disabled { - border-color: transparent; - background-color: rgba(0,0,0,10); -} - -Gui--ColorButton:hover, -Gui--ColorButton:focus { - border-color: #3874f2; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #5e90fa, stop:1 #3874f2); -} - -Gui--ColorButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #3874f2, stop:1 #5e90fa); -} - -/* Pushbutton style for "..." inside Placement cell which launches Placement tool */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QPushButton, -Gui--PropertyEditor--PropertyEditor > QWidget > QPushButton { - background-color: #6e6e6e; - border: 1px solid #5a5a5a; - min-width: 16px; /* reset it due to larger value on regular QPushButton, same or bigger value as regular QPushButton min-height */ - border-radius: 0px; - margin: 0px; /* reset */ - padding: 0px; /* reset */ -} - -Gui--PropertyEditor--PropertyEditor > QWidget > QPushButton { - text-align:left; - padding-left: 2px; -} - -/* Fix for Expressions description QFrame that is "broken" with initial reset */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QWidget > QWidget > QFrame { - background-color: #6e6e6e; /* main background color */ - border: 1px solid #5a5a5a; - border-radius: 2px; - padding: 2px 6px; -} - -QPushButton:checked { - background-color: #5e90fa; - border-color: #3874f2; -} - -/*================================================================================================== -Tool button Icon fix in save dialogs -==================================================================================================*/ -/* found under Tools -> Save Picture */ /* Draft -> ShapeString -> Font file */ - -QFileDialog#QFileDialog QToolButton { - background-color: transparent; - padding: 1px; - border: 1px; - margin: 0px; -} - - -/*================================================================================================== -Tool button inside QDialogs that works as QPushButtons -==================================================================================================*/ -/* found under Tools -> Customize -> Macros -> Pixmap "..." button */ -QDialog QToolButton { - color: #e0e0e0; - text-align: center; - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #6e6e6e, stop:1 #646464); - border: 1px solid #5a5a5a; - border-bottom-color: #505050; /* simulates shadow under the button */ - padding: 0px; /* different than regular QPushButton */ - margin: 2px; /* different than regular QPushButton */ - min-height: 16px; /* same as QTabBar QPushButton min-width */ - border-radius: 4px; -} - -QDialog QToolButton:hover, -QDialog QToolButton:focus { - color: white; - border-color: #3874f2; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #5e90fa, stop:1 #3874f2); -} - -QDialog QToolButton:disabled, -QDialog QToolButton:disabled:checked { - color: #6e6e6e; - border-color: #5a5a5a; - background-color: #5a5a5a; -} - -QDialog QToolButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #3874f2, stop:1 #5e90fa); -} - - -/*================================================================================================== -Tool button inside Task Panel content that works as QPushButtons -==================================================================================================*/ -/* found inside Part Design Workbench and "make a draft on a face" Task panel options */ -QSint--ActionGroup QFrame[class="content"] QToolButton { - color: #e0e0e0; - text-align: center; - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #6e6e6e, stop:1 #646464); - border: 1px solid #5a5a5a; - border-bottom-color: #505050; /* simulates shadow under the button */ - padding: 2px 6px; /* different than regular QPushButton */ - margin: 2px; /* different than regular QPushButton */ - min-height: 16px; /* same as QTabBar QPushButton min-width */ - border-radius: 4px; -} - -QSint--ActionGroup QFrame[class="content"] QToolButton:hover, -QSint--ActionGroup QFrame[class="content"] QToolButton:focus { - color: white; - border-color: #3874f2; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #5e90fa, stop:1 #3874f2); -} - -QSint--ActionGroup QFrame[class="content"] QToolButton:disabled, -QSint--ActionGroup QFrame[class="content"] QToolButton:disabled:checked { - color: #6e6e6e; - border-color: #5a5a5a; - background-color: #5a5a5a; -} - -QSint--ActionGroup QFrame[class="content"] QToolButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #3874f2, stop:1 #5e90fa); -} - -/* QToolButtons with a menu found in Sketcher task panel*/ -QSint--ActionGroup QToolButton::menu-button { - border: none; - border-top-right-radius: 4px; - border-bottom-right-radius: 4px; + border: 1px solid #696968; + border-radius: 1.9px; padding: 2px; - width: 16px; /* 16px width + 4px for border = 20px allocated above */ - outline: none; - background-color: transparent; -} + margin-top: 10px; + margin-bottom: 4px; + } -QSint--ActionGroup QToolButton#settingsButton, -QSint--ActionGroup QToolButton#filterButton, -QSint--ActionGroup QToolButton#manualUpdate { - padding-right: 20px; /* make way for the popup button */ -} + QGroupBox::title { + subcontrol-origin: margin; + subcontrol-position: top left; + left: 4px; + padding-left: 2px; + padding-right: 4px; + padding-top: 6px; + } -/* to give widget inside the menu same look as regular menu */ -QSint--ActionGroup QToolButton#filterButton QListWidget { - color: #e0e0e0; - background-color: #5a5a5a; - padding: 0px; - margin: 0px; -} + QGroupBox::indicator { + color: white; + background-color: #3c3c3c; + border: 1px solid #696968; + width: 12px; + height: 12px; + border-radius:1px; + } - -/*================================================================================================== -Radio button -==================================================================================================*/ -QRadioButton::indicator:unchecked{ - color: black; - background-color: rgba(255,255,255,20); - border: 1px solid #5a5a5a; -} - -QRadioButton::indicator:checked { - background-color: #5e90fa; /* QCheckBox has the same color */ - border: 1px solid #3874f2; /* QCheckBox has the same color */ - image:url(qss:images_dark-light/radiobutton_light.svg); -} - -QRadioButton, -QRadioButton:disabled { - color: black; - padding: 3px; - outline: none; - background-color: transparent; -} - -QRadioButton::indicator { - width: 11px; - height: 11px; - border-radius: 6px; -} - -QRadioButton::indicator:pressed { - border-color: #adc5ed; -} - -QRadioButton::indicator:disabled { - color: #f5f5f5; - background-color: transparent; - border: 1px solid #f5f5f5; -} - -QRadioButton:focus { - border: none; -} - - -/*================================================================================================== -Checkbox -==================================================================================================*/ -QCheckBox, -QCheckBox:disabled { - color: black; - padding: 3px; - outline: none; - background-color: transparent; -} - -QCheckBox::indicator, -QGroupBox::indicator { - color: black; - background-color: rgba(255,255,255,20); - border: 1px solid #5a5a5a; - width: 11px; - height: 11px; - border-radius:2px; -} - -QCheckBox::indicator:pressed, -QCheckBox::indicator:non-exclusive:checked:pressed, -QCheckBox::indicator:indeterminate:pressed, -QCheckBox::indicator:checked:pressed, -QGroupBox::indicator:pressed, -QGroupBox::indicator:non-exclusive:checked:pressed, -QGroupBox::indicator:indeterminate:pressed, -QGroupBox::indicator:checked:pressed { - border-color: #adc5ed; -} - -QCheckBox::indicator:checked, -QGroupBox::indicator:checked { - background-color: #5e90fa; /* QRadioButton has the same color */ - border: 1px solid #3874f2; /* QRadioButton has the same color */ - image:url(qss:images_dark-light/checkbox_light.svg); -} - -QCheckBox:disabled { - color: rgba(255,255,255,40); - background-color: transparent; -} - -QCheckBox::indicator:disabled, -QGroupBox::indicator:disabled { - background-color: rgba(255,255,255,20); - border: 1px solid rgba(255,255,255,20); -} - -QCheckBox::indicator:indeterminate, -QGroupBox::indicator:indeterminate { - background-color: #5e90fa; - border: 1px solid #3874f2; + QGroupBox::indicator:unchecked { + background-color: #696968; + border: 1px solid #696968; image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); -} + } -QCheckBox:focus { - border: none; -} + QGroupBox::indicator:unchecked:hover, QGroupBox::indicator:unchecked:focus, QGroupBox::indicator:unchecked:pressed { + background-color: #4882ff; + } - -/*================================================================================================== -Checkboxes inside QListWidget and QTreeView -==================================================================================================*/ -QListWidget::indicator, -QTreeView::indicator { - color: #c8c8c8; - background-color: rgba(255,255,255,20); - border: 1px solid #5a5a5a; - width: 11px; - height: 11px; - border-radius:2px; -} - -/* fix for QTreeView::indicator losing its margin */ -QTreeView::indicator { - margin: 3px; -} - -QListWidget::indicator:selected, -QTreeView::indicator:selected { - background-color: #e6e6e6; -} - -QListWidget::indicator:checked:selected, -QListWidget::indicator:indeterminate:selected, -QTreeView::indicator:checked:selected, -QTreeView::indicator:indeterminate:selected { - background-color: #7cabf9; /* slightly lighter than default */ - border-color: #2053c0; /* slightly darker than default */ -} - -QListWidget::indicator:pressed, -QListWidget::indicator:non-exclusive:checked:pressed, -QListWidget::indicator:indeterminate:pressed, -QListWidget::indicator:checked:pressed, -QTreeView::indicator:pressed, -QTreeView::indicator:non-exclusive:checked:pressed, -QTreeView::indicator:indeterminate:pressed, -QTreeView::indicator:checked:pressed { - border-color: #adc5ed; -} - -QListWidget::indicator:checked, -QTreeView::indicator:checked { - background-color: #5e90fa; /* QRadioButton has the same color */ - border: 1px solid #3874f2; /* QRadioButton has the same color */ - image:url(qss:images_dark-light/checkbox_light.svg); -} - -QListWidget::indicator:disabled, -QTreeView::indicator:disabled { - background-color: rgba(255,255,255,20); - border: 1px solid rgba(255,255,255,20); -} - -QListWidget::indicator:indeterminate, -QTreeView::indicator:indeterminate { - background-color: #5e90fa; - border: 1px solid #3874f2; - image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); -} - - -/*================================================================================================== -Slider -==================================================================================================*/ -QSlider, -QSlider:active, -QSlider:!active { - border: none; - background-color: transparent; -} - -QSlider:horizontal { - padding: 0px 10px; -} - -QSlider:vertical { - padding: 10px 0px; -} - -QSlider::groove { - background-color: rgba(0,0,0,30); - border: 1px solid rgba(0,0,0,40); - border-radius: 5px; - margin: 4px 0px; -} - -QSlider::groove:horizontal { - height: 8px; -} - -QSlider::groove:vertical { - width: 8px; -} - -QSlider::groove:horizontal:disabled, -QSlider::groove:vertical:disabled { - border-color: #5a5a5a; - background-color: #5a5a5a; -} - -QSlider::handle:horizontal, -QSlider::handle:vertical { + QGroupBox::indicator:unchecked:disabled { background-color: #505050; - border: 1px solid #505050; + border: 1px solid #696968; + } + + QGroupBox::indicator:checked { + border: none; + image:url(qss:images_dark-light/checkbox_light.svg); + } + + QGroupBox::indicator:checked:hover, QGroupBox::indicator:checked:focus, QGroupBox::indicator:checked:pressed { + background-color: #4882ff; + } + + QGroupBox::indicator:checked:disabled { + background-color: #4882ff; + } + + /* QRadioButton ----------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qradiobutton + + --------------------------------------------------------------------------- */ + QRadioButton { + background-color: transparent; + color: White; + border: none; + spacing: 4px; + padding-top: 4px; + padding-bottom: 4px; + outline: none; + } + + QRadioButton:focus { + border: 1px solid #3f7cff; + } + + QRadioButton:disabled { + background-color: #696968; + color: #353535; + } + + QRadioButton QWidget { + background-color: transparent; + color: White; + spacing: 0px; + padding: 0px; + outline: none; + border: none; + } + + QRadioButton::indicator { + background-color: #3c3c3c; + border: 1px solid #696968; + border-radius: 6px; + margin-left: 0px; + height: 11px; + width: 11px; + } + + QRadioButton::indicator:unchecked { + /*image:url(qss:images_dark-light/radiobutton_light.svg);*/ + } + + QRadioButton::indicator:unchecked:hover, QRadioButton::indicator:unchecked:pressed { + background-color: #4882ff; + border: 1px solid #4882ff; + border-radius: 6px; + } + + QRadioButton::indicator:unchecked:disabled { + /*image:url(qss:images_dark-light/radiobutton_dark.svg);*/ + border: 1px solid #696968; + } + + QRadioButton::indicator:checked { + image:url(qss:images_dark-light/radiobutton_light.svg); + } + + QRadioButton::indicator:checked:hover, QRadioButton::indicator:checked:pressed { + background-color: #4882ff; + border: 1px solid #4882ff; + border-radius: 6px; + image:url(qss:images_dark-light/radiobutton_light.svg); + } + + QRadioButton::indicator:checked:disabled { + outline: none; + background-color: #696968; + image:url(qss:images_dark-light/radiobutton_dark.svg); + } + + /* QMenuBar --------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenubar + + --------------------------------------------------------------------------- */ + QMenuBar { + background-color: #505050; + /*padding: 1px; + border: 0px solid rgba(0,0,0,140);*/ + color: White; + selection-background-color: #4882ff; + } + + QMenuBar:focus { + border: 1px solid #3f7cff; + } + + QMenuBar::item { + background: transparent; + /*padding-left:5px; + padding-right: 5px; + padding-bottom: 1px; + padding-top: 1px;*/ + } + + QMenuBar::item:selected { + background: transparent; + border: 0px solid #696968; + background-color: #4882ff; + } + + QMenuBar::item:pressed { + /*padding: 2px; + padding-left: 10px; + padding-right: 10px;*/ + border: 0px solid #696968; + background-color: #4882ff; + color: White; + /*margin-bottom: 0px; + padding-bottom: 0px;*/ + } + + /* QMenu ------------------------------------------------------------------ + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenu + + --------------------------------------------------------------------------- */ + QMenu { + border-bottom: 2px rgba(0,0,0,140); + border-right: 2px rgba(0,0,0,140); + color: White; + margin: 0px; + background-color: #505050; + selection-background-color: #4882ff; + } + + QMenu::separator { + height: 2px; + background-color: #3c3c3c; + margin-left: 30%; + margin-right: 30%; + } + + QMenu::item { + background-color: transparent; + padding: 2px 2px; /* make room for icon at left */ + /* Reserve space for selection border */ + border: 0px transparent #696968; + } + + QMenu::item:selected { + color: White; + background-color: #4882ff; + } + + QMenu::item:pressed { + background-color: #4882ff; + } + + QMenu::icon { + margin-left: 5px; width: 14px; height: 14px; - border-radius: 8px; -} + } -QSlider::handle:horizontal { - margin: -4px 0; -} - -QSlider::handle:vertical { - margin: 0 -4px; -} - -QSlider::handle:horizontal:hover, -QSlider::handle:vertical:hover, -QSlider::handle:horizontal:pressed, -QSlider::handle:vertical:pressed { - border-color: #5e90fa; - background-color: #5e90fa; -} - -QSlider::handle:horizontal:disabled, -QSlider::handle:vertical:disabled { - border-color: #5a5a5a; - background-color: #5a5a5a; -} - - -/*================================================================================================== -Toolbar buttons -==================================================================================================*/ -/*QToolBar > QComboBox, disabled because creates different margins for body and drop-down button */ -QToolBar > QAbstractSpinBox, -QToolBar > QSpinBox, -QToolBar > QDoubleSpinBox, -QToolBar > QLineEdit, -QToolBar > QTextEdit, -QToolBar > QTimeEdit, -QToolBar > QDateEdit, -QToolBar > QDateTimeEdit { - margin: 0px 2px; + QMenu::indicator { + margin-left: 2px; + margin-right: 2px; padding: 0px; - min-width: 70px; /* necessary to show its content */ -} + width: 12px; + height: 12px; + /* non-exclusive indicator = check box style indicator (see QActionGroup::setExclusive) */ + /* exclusive indicator = radio button style indicator (see QActionGroup::setExclusive) */ + } -QToolBar > QComboBox, -QToolBar > QAbstractSpinBox, -QToolBar > QSpinBox, -QToolBar > QDoubleSpinBox, -QToolBar > QLineEdit, -QToolBar > QTextEdit, -QToolBar > QTimeEdit, -QToolBar > QDateEdit, -QToolBar > QDateTimeEdit { - min-height: 0px; /* reset it inside Tool Bar due to the user ability to set the "size of toolbar icons" inside Preferences */ -} + QMenu::icon:checked { /* appearance of a 'checked' icon */ + background: #3f7cff; + margin-left: -5px; + border: 5px solid #3f7cff; + position: absolute; + border-radius: 0px; + } + QMenu::indicator:non-exclusive:unchecked { + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); + } -QToolBar > QPushButton { - padding: 0px; - margin: 1px; /* doesn't work with :left, :right:, :top or :bottom sub-controls */ - min-width: 16px; /* could not be larger due to switchable Preferences "Size of toolbar icons" */ - min-height: 16px; /* could not be larger due to switchable Preferences "Size of toolbar icons" */ - border-radius: 4px; /* same as regular QPushButton */ -} - -QToolBar > QPushButton:checked { - border: 1px solid #7cabf9; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #cbd8e6, stop:1 #7cabf9); -} - -QToolBar > QPushButton:!checked { - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #6e6e6e, stop:1 #646464); - border: 1px solid #5a5a5a; - border-bottom-color: #505050; /* simulates shadow under the button */ - text-align: left; /* bug fix #4559 */ -} - -QToolBar > QPushButton:checked:hover { - border-color: #6f9efa; -} - -QToolBar > QPushButton:!checked:hover { - color: #cbd8e6; - border-color: #505050; -} - -QToolBar > QPushButton:checked:pressed { - background-color: #7cabf9; -} - -QToolBar > QPushButton:!checked:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #5a5a5a, stop:1 #6e6e6e); -} - -QToolBar > QPushButton:checked:disabled, -QToolBar > QPushButton:!checked:disabled { + QMenu::indicator:non-exclusive:unchecked:hover, QMenu::indicator:non-exclusive:unchecked:focus, QMenu::indicator:non-exclusive:unchecked:pressed { border: none; - background-color: transparent; -} + background: #4882ff; + } -QToolBar > QToolButton { - margin: 2px; - padding: 2px; - border-radius: 3px; -} + QMenu::indicator:non-exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_disabled.svg); + } -QToolBar > QToolButton:hover { - background-color: rgba(0,0,0,20); -} + QMenu::indicator:non-exclusive:checked { + image:url(qss:images_dark-light/checkbox_light.svg); + } -QToolBar > QToolButton:pressed { - background-color: rgba(0,0,0,30); -} - -/* ToolBar menu buttons (buttons with drop-down menu) */ -QToolBar > QToolButton#qt_toolbutton_menubutton { - padding-right: 20px; /* Hack to add more width to buttons with menu */ - border: 1px solid transparent; - border-radius: 3px; -} - -QToolBar > QToolButton#qt_toolbutton_menubutton:hover, -QToolBar > QToolButton#qt_toolbutton_menubutton:pressed, -QToolBar > QToolButton#qt_toolbutton_menubutton:open { - border: 1px solid #7cabf9; -} - -QToolBar QToolButton::menu-button, -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button { + QMenu::indicator:non-exclusive:checked:hover, QMenu::indicator:non-exclusive:checked:focus, QMenu::indicator:non-exclusive:checked:pressed { + border: none; + background: #4882ff; + } + + QMenu::indicator:non-exclusive:checked:disabled { + image:url(qss:images_dark-light/checkbox_checked_disabled.svg); + } + + QMenu::indicator:non-exclusive:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); + } + + QMenu::indicator:non-exclusive:indeterminate:disabled { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); + } + + QMenu::indicator:non-exclusive:indeterminate:focus, QMenu::indicator:non-exclusive:indeterminate:hover, QMenu::indicator:non-exclusive:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); + } + + QMenu::indicator:exclusive:unchecked { + image: url(qss:images_dark-light/transparent.svg); + } + + QMenu::indicator:exclusive:unchecked:hover, QMenu::indicator:exclusive:unchecked:focus, QMenu::indicator:exclusive:unchecked:pressed { border: none; - border-top-right-radius: 3px; - border-bottom-right-radius: 3px; - width: 16px; /* 16px width + 4px for border = 20px allocated above */ outline: none; + background: #4882ff; + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); + } + + QMenu::indicator:exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); + } + + QMenu::indicator:exclusive:checked { + border: none; + outline: none; + image: url(qss:images_dark-light/radiobutton_light.svg); + } + + QMenu::indicator:exclusive:checked:hover, QMenu::indicator:exclusive:checked:focus, QMenu::indicator:exclusive:checked:pressed { + border: none; + outline: none; + background: #4882ff; + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); + } + + QMenu::indicator:exclusive:checked:disabled { + outline: none; + image: url(qss:images_dark-light/radiobutton_light.svg); + } + + QMenu::right-arrow { + margin: 5px; + padding-left: 12px; + image:url(qss:images_dark-light/right_arrow_lighter.svg); + height: 12px; + width: 12px; background-color: transparent; + } + + /* QAbstractItemView ------------------------------------------------------ + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + + --------------------------------------------------------------------------- */ + QAbstractItemView { + alternate-background-color: #5b5b5b; + color: White; + border: 1px solid #696968; + border-radius: 2px; + } + + QAbstractItemView QLineEdit { + padding: 2px; + } + + /* QAbstractScrollArea ---------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + + --------------------------------------------------------------------------- */ + QAbstractScrollArea { + background-color: transparent; + border: 0px solid #696968; + border-radius: 0px; + /* fix #159 */ + padding: 0px; + /* remove min-height to fix #244 */ + color: White; + } + + QAbstractScrollArea:disabled { + color: #353535; + } + + /* QScrollArea ------------------------------------------------------------ + + --------------------------------------------------------------------------- + text input field disabled!!!!*/ + QScrollArea QWidget:disabled { + background-color: #7F7F7F; + } + + /* QScrollBar ------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qscrollbar + + --------------------------------------------------------------------------- */ + QScrollBar:horizontal { + height: 16px; + margin: 2px 8px 2px 8px; + border: 0px solid #696968; + border-radius: 1.9px; + background-color: #7F7F7F; + } + + QScrollBar:vertical { + background-color: #7F7F7F; + width: 16px; + margin: 8px 2px 8px 2px; + border: 0px solid #696968; + border-radius: 1.9px; + } + + QScrollBar::handle:horizontal { + background-color: #696969; + border: 1px solid #7F7F7F; + border-radius: 4px; + min-width: 8px; + } + + QScrollBar::handle:horizontal:hover { + background-color: #4882ff; + border: #696968; + border-radius: 4px; + min-width: 8px; + } + + QScrollBar::handle:horizontal:focus { + border: 1px solid #3f7cff; + } + + QScrollBar::handle:vertical { + background-color: #696969; + border: 1px solid #696968; + min-height: 8px; + border-radius: 4px; + } + + QScrollBar::handle:vertical:hover { + background-color: #4882ff; + border: #696968; + border-radius: 4px; + min-height: 8px; + } + + QScrollBar::handle:vertical:focus { + border: 1px solid #3f7cff; + } + + QScrollBar::add-line:horizontal { + border-image: url(qss:images_dark-light/right_arrow_light.svg); + height: 9px; + width: 5px; + subcontrol-position: right; + subcontrol-origin: margin; + } + + QScrollBar::add-line:horizontal:hover, QScrollBar::add-line:horizontal:on { + border-image: url(qss:images_dark-light/right_arrow_lighter.svg); + height: 9px; + width: 5px; + subcontrol-position: right; + subcontrol-origin: margin; + } + + QScrollBar::add-line:vertical { + border-image: url(qss:images_dark-light/down_arrow_light.svg); + height: 5px; + width: 9px; + subcontrol-position: bottom; + subcontrol-origin: margin; + } + + QScrollBar::add-line:vertical:hover, QScrollBar::add-line:vertical:on { + border-image: url(qss:images_dark-light/down_arrow_lighter.svg); + height: 5px; + width: 9px; + subcontrol-position: bottom; + subcontrol-origin: margin; + } + + QScrollBar::sub-line:horizontal { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/left_arrow_light.svg); + height: 9px; + width: 5px; + subcontrol-position: left; + subcontrol-origin: margin; + } + + QScrollBar::sub-line:horizontal:hover, QScrollBar::sub-line:horizontal:on { + border-image: url(qss:images_dark-light/left_arrow_lighter.svg); + height: 9px; + width: 5px; + subcontrol-position: left; + subcontrol-origin: margin; + } + + QScrollBar::sub-line:vertical { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/up_arrow_light.svg); + height: 5px; + width: 9px; + subcontrol-position: top; + subcontrol-origin: margin; + } + + QScrollBar::sub-line:vertical:hover, QScrollBar::sub-line:vertical:on { + background-color: #4882ff; + border-image: url(qss:images_dark-light/up_arrow_lighter.svg); + height: 5px; + width: 9px; + subcontrol-position: top; + subcontrol-origin: margin; + } + + QScrollBar::up-arrow:horizontal, QScrollBar::down-arrow:horizontal { + background: none; + } + + QScrollBar::up-arrow:vertical, QScrollBar::down-arrow:vertical { + background: none; + } + + QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal { + background: none; + } + + QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical { + background: none; + } + + /* QTextEdit -------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-specific-widgets + + + report view + --------------------------------------------------------------------------- */ + QTextEdit { + background-color: #7F7F7F; + color: White; + border-radius: 1.9px; + border: 0px solid #696968; + } + + QTextEdit:focus { + border: 1px solid #3f7cff; + } + + QTextEdit:selected { + background: #346792; + color: white; + } + + /* QPlainTextEdit --------------------------------------------------------- + Python + --------------------------------------------------------------------------- */ + QPlainTextEdit { + background-color: #3c3c3c; + color: White; + border-radius: 1.9px; + border: 0px solid #696968; + } + + QPlainTextEdit:focus { + border: 1px solid #3f7cff; + } + + QPlainTextEdit:selected { + background: #4882ff; + color: White; + } + + /* QSizeGrip -------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsizegrip + + --------------------------------------------------------------------------- */ + QSizeGrip { + background: transparent; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/sizegrip_light.svg); + } + + /* QStackedWidget --------------------------------------------------------- + + --------------------------------------------------------------------------- */ + QStackedWidget { + padding: 0px; + border: 0px solid #696968; + } + + /* QToolBar --------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbar + + --------------------------------------------------------------------------- */ + QToolBar { + background-color: #7F7F7F; + border-bottom: 0px solid rgba(0,0,0,120); + padding: 1px; + font-weight: bold; + spacing: 1px; + } + + QToolBar:disabled { + /* Fixes #272 */ + background-color: #7F7F7F; + } + + QToolBar::handle:horizontal { + width: 8px; + margin: 3px 3px; + background-position: top right; + background-repeat: repeat-y; + background-image: url(qss:images_dark-light/Hmovetoolbar_light.svg); + } + + QToolBar::handle:vertical { + height: 8px; + margin: 3px 3px; + background-position: left bottom; + background-repeat: repeat-x; + background-image: url(qss:images_dark-light/Vmovetoolbar_light.svg); + } + + QToolBar::separator:horizontal { + width: 2px; + margin: 4px 4px; + background-color: transparent; + } + + QToolBar::separator:vertical { + height: 2px; + margin: 4px 4px; + background-color: transparent; + } + + /*The "show more" button (it can also be stylable with "QToolBarExtension" icon is not working Qproperty works but breaks when you move the toolbar see also */ + QToolButton#qt_toolbar_ext_button { + margin: 0px; + padding: 0px; + background-color: #696969; + /*background-image: url(qss:images_dark-light/more_light.svg);*/ + background-repeat: none; + background-position: center center; + } + + QToolButton#qt_toolbar_ext_button:hover { + /*background-image: url(qss:images_dark-light/more_light.svg);*/ + background-color: #4882ff; + } + + QToolButton#qt_toolbar_ext_button:on { + /*background-image: url(qss:images_dark-light/more_light.svg);*/ + border-color: #696968; + background-color: #4882ff; + } + + + /* QAbstractSpinBox ------------------------------------------------------- + + --------------------------------------------------------------------------- */ + QAbstractSpinBox, + QSpinBox { + background-color: #505050; + border: 1px solid transparent; + color: White; + /* This fixes 103, 111 */ + /* padding-top: 0px; + /* This fixes 103, 111 */ + /*padding-bottom: 0px; + /*padding-left: 4px; + /*padding-right: 4px; + border-radius: 1.9px;*/ + min-height: 1.7em; + /* min-width: 5px; removed to fix 109 */ + } + + QAbstractSpinBox:up-button { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051); + subcontrol-origin: border; + subcontrol-position: top right; + border: 1px solid transparent; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-bottom: -1px;*/ + } + + QAbstractSpinBox::up-arrow, QAbstractSpinBox::up-arrow:disabled, QAbstractSpinBox::up-arrow:off { + image: url(qss:images_dark-light/up_arrow_disabled_light.svg); + /* height: 8px; + width: 8px;*/ + } + + QAbstractSpinBox::up-arrow:hover { + image: url(qss:images_dark-light/up_arrow_lighter.svg); + } + + QAbstractSpinBox:down-button { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051); + subcontrol-origin: border; + subcontrol-position: bottom right; + border: 1px solid transparent; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-top: -1px;*/ + } + + QAbstractSpinBox::down-arrow, QAbstractSpinBox::down-arrow:disabled, QAbstractSpinBox::down-arrow:off { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + /*height: 8px; + width: 8px;*/ + } + + QAbstractSpinBox::down-arrow:hover { + image: url(qss:images_dark-light/down_arrow_lighter.svg); + } + + QAbstractSpinBox:hover { + /*border: 1px solid #4882ff; + color: White;*/ + } + + QAbstractSpinBox:focus { + border: 1px solid #3f7cff; + } + + QAbstractSpinBox:selected { + background: #3f7cff; + /*color: White;*/ + } + + /* ------------------------------------------------------------------------ */ + /* DISPLAYS --------------------------------------------------------------- */ + /* ------------------------------------------------------------------------ */ + /* QLabel ----------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe + + --------------------------------------------------------------------------- */ + QLabel { + background-color: transparent; + border: 0px solid #696968; + padding: 2px; + margin: 0px; + color: White; + } + + QLabel:disabled { + background-color: transparent; + border: 0px solid #696968; + color: #c2c7cb; + } + + QLabel[haslink="true"] { + color: orange; + } + + + /* QTextBrowser ----------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + + --------------------------------------------------------------------------- */ + QTextBrowser { + background-color: #505050; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; + } + + QTextBrowser:disabled { + background-color: #7F7F7F; + border: 1px solid #696968; + color: #c2c7cb; + border-radius: 1.9px; + } + + QTextBrowser:hover, QTextBrowser:!hover, QTextBrowser:selected, QTextBrowser:pressed { + border: 1px solid #4882ff; + } + + /* QGraphicsView ---------------------------------------------------------- + + --------------------------------------------------------------------------- */ + QGraphicsView { + background-color: transparent; + border: 0px solid #4882ff; + color: White; + border-radius: 0px; + } + + QGraphicsView:disabled { + background-color: #505050; + border: 0px solid #696968; + color: #c2c7cb; + border-radius: 0px; + } + + QGraphicsView:hover, QGraphicsView:!hover, QGraphicsView:selected, QGraphicsView:pressed { + border: 0px solid #ff00f7; + } + + /* QCalendarWidget -------------------------------------------------------- + + --------------------------------------------------------------------------- */ + QCalendarWidget { + border: 1px solid #696968; + border-radius: 1.9px; + } + + QCalendarWidget:disabled { + background-color: #353535; + color: #c2c7cb; + } + + /* QLCDNumber ------------------------------------------------------------- + + --------------------------------------------------------------------------- */ + QLCDNumber { + background-color: #1aff00; + color: White; + } + + QLCDNumber:disabled { + background-color: #7F7F7F; + color: #c2c7cb; + } + + /* QProgressBar ----------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qprogressbar + + --------------------------------------------------------------------------- */ + QProgressBar { + background-color: #c2c7cb; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; + text-align: center; + } + + QProgressBar:disabled { + background-color: #505050; + border: 1px solid #696968; + color: #696969; + border-radius: 1.9px; + text-align: center; + } + + QProgressBar::chunk { + background-color: #4882ff; + color: #7F7F7F; + border-radius: 1.9px; + } + + QProgressBar::chunk:disabled { + background-color: #505050; + color: #696968; + border-radius: 1.9px; + } + + /* ------------------------------------------------------------------------ */ + /* BUTTONS ---------------------------------------------------------------- */ + /* ------------------------------------------------------------------------ */ + /* QPushButton ------------------------------------------------------------ + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qpushbutton + + --------------------------------------------------------------------------- */ + QPushButton { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051); + color: White; + border: 1px solid #505051; + border-bottom-color: #1e1e1e; /* simulates shadow under the button */ + border-radius: 4px; + padding: 2px; + } + + QPushButton:disabled { + background-color: #7F7F7F; + color: #c2c7cb; + + } + + QPushButton:checked { + background-color: #4882ff; + outline: none; + } + + QPushButton:checked:disabled { + background-color: #4882ff; + color: #3c3c3c; + outline: none; + } + + QPushButton:checked:selected { + background: #4882ff; + } + + QPushButton:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #4882ff, stop:1 #3f7cff); + color: White; + } + + QPushButton:pressed { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #3f7cff, stop:1 #4882ff); } -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button:hover, -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button:pressed, -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button:open { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #5e90fa, stop:1 #7cabf9); -} + QPushButton:selected { + background: #3f7cff; + color: White; + } -QToolBar > QToolButton::menu-arrow { - background-image: url(qss:images_dark-light/down_arrow_dark.svg); - background-position: center center; - background-repeat: none; + QPushButton::menu-indicator { subcontrol-origin: padding; subcontrol-position: bottom right; - height: 10px; /* same as arrow image */ -} + bottom: 4px; + } -QToolBar > QToolButton::menu-arrow:hover { - background-image: url(qss:images_dark-light/down_arrow_lighter.svg); -} + QDialogButtonBox QPushButton { + /* Issue # 194 # 248 - Special case of QPushButton inside dialogs, for better UI */ + min-width: 80px; + } -QToolBar > QToolButton::menu-arrow:open { - background-image: url(qss:images_dark-light/down_arrow_lighter.svg); -} + /* QToolButton ------------------------------------------------------------ -/* when QToolButton is checked: */ -QToolBar > QToolButton:checked { - border: 1px solid #7cabf9; - background-color: rgba(124,171,249,60); /* transparency for #7cabf9 color */ -} + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbutton -QToolBar > QToolButton:checked:hover { - border: 1px solid #7cabf9; - background-color: rgba(124,171,249,80); /* transparency for #7cabf9 color */ -} - -/*The "show more" button (it can also be stylable with "QToolBarExtension" */ -QToolBar QToolButton#qt_toolbar_ext_button { - margin: 0px; + --------------------------------------------------------------------------- */ + QToolButton { + background-color: transparent; + color: White; + border-radius: 1px; padding: 0px; - /*background-image: url(qss:images_dark-light/more_dark.svg);*/ - image: transparent; + outline: none; + border: none; + /* The subcontrols below are used only in the DelayedPopup mode */ + /* The subcontrols below are used only in the MenuButtonPopup mode */ + /* The subcontrol below is used only in the InstantPopup or DelayedPopup mode */ + } + + QToolButton:disabled { + background-color: rgba(0, 0, 0, 0.065); + color: #c2c7cb; + border-radius: 1px; + padding: 0px; + } + + QToolButton:checked { + background-color: #4882ff; + border-radius: 1.9px; + padding: 0px; + outline: none; + } + + QToolButton:checked:disabled { + background-color: #b65555; + color: #c2c7cb; + border-radius: 1.9px; + padding: 0px; + outline: none; + } + + QToolButton:checked:hover { + background-color: #4882ff; + color: White; + } + + QToolButton:checked:pressed { + background-color: #4882ff; + } + + QToolButton:checked:selected { + background: #3f7cff; + color: White; + } + + QToolButton:hover { + background-color: #4882ff; + color: White; + } + + QToolButton:pressed { + background-color: #3f7cff; + } + + QToolButton:selected { + background: #4882ff; + color: White; + } + + QToolButton[popupMode="0"] { + /* Only for DelayedPopup */ + padding-right: 20px; + } + + QToolButton[popupMode="1"] { + /* Only for MenuButtonPopup */ + padding-right: 20px; + } + QToolButton[popupMode="0"]::menu-button { + border: none; + } + + QToolButton[popupMode="0"]::menu-button:hover { + border: none; + border-left: 2px solid #fe0000; + border-radius: 0px; + } + QToolButton[popupMode="1"]::menu-button { + border: none; + } + + QToolButton[popupMode="1"]::menu-button:hover { + border: none; + border-left: 2px solid #e5ff00; + border-radius: 0px; + } + + QToolButton[popupMode="2"] { + /* Only for InstantPopup */ + padding-right: 20px; + } + + QToolButton::menu-button { + border-bottom: 0px solid #ffffff; + border-radius: 2px; + /* 16px width + 4px for border = 20px allocated above */ + width: 1.6ex; + padding: 2px; + border-radius: 2px; + border: 0px #000000; + } + + QToolButton::menu-button:hover { + /* background: rgba(0, 0, 0, 0.5);*/ + + } + + QToolButton::menu-button:checked:hover { + /* background: rgba(0, 0, 0, 0.5);*/ + } + + QToolButton::menu-indicator { + /* Exclude a shift for better image */ + subcontrol-position: right bottom; + /* Shift it a bit */ + } + + QToolButton::menu-arrow { + image: url(qss:images_dark-light/more_arrow_light.svg); + width: 1.5ex; + height: 1.5ex; + subcontrol-position: right bottom; + background: transparent; + } + QToolButton::menu-arrow:open { + subcontrol-position: right bottom; + image: url(qss:images_dark-light/more_arrow_light.svg); + } + QToolButton::menu-arrow:hover { + image: url(qss:images_dark-light/more_arrow_light.svg); + background-color: rgba(0, 0, 0, 0.498); + border: 1px solid rgba(0, 0, 0, 0.498); + } + + /* QCommandLinkButton ----------------------------------------------------- + + --------------------------------------------------------------------------- */ + QCommandLinkButton { + background-color: transparent; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; + padding: 0px; + margin: 0px; + } + + QCommandLinkButton:disabled { + background-color: transparent; + color: #c2c7cb; + } + + /* ------------------------------------------------------------------------ */ + /* INPUTS - NO FIELDS ----------------------------------------------------- */ + /* ------------------------------------------------------------------------ */ + /* QComboBox -------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + + --------------------------------------------------------------------------- */ + QComboBox { + border: 1px solid transparent; + background: #505050; + border-radius: 2px; + selection-background-color: #4882ff; + padding-left: 2px; + padding-right: 2px; + /* padding-right = 36; 4 + 16*2 See scrollbar size */ + /* changed to 4px to fix #239 */ + /* Fixes #103, #111 */ + min-height: 1.5em; + /* padding-top: 2px; removed to fix #132 */ + /* padding-bottom: 2px; removed to fix #132 */ + /* min-width: 75px; removed to fix #109 */ + /* Needed to remove indicator - fix #132 */ + } + QComboBox:editable { + background: #505050; + } + QComboBox QAbstractItemView { + border: 0px solid #696968; + border-radius: 0px; + background-color: #505050; + selection-background-color: #4882ff; + } + + QComboBox QAbstractItemView:hover { + background-color:#505050; + color: White; + } + + QComboBox QAbstractItemView:selected { + background: #4882ff; + color: White; + } + + QComboBox QAbstractItemView:alternate { + background: #3c3c3c; + } + + QComboBox:disabled { + background-color: #7F7F7F; + color: #353535; + } + + QComboBox:hover { + /*background-color: #4882ff;*/ + border: 1px solid #4882ff; + } + + QComboBox:focus { + border: 1px solid #3f7cff; + } + + QComboBox:on { + selection-background-color: #3f7cff; + } + + QComboBox::indicator { + border: none; + border-radius: 0px; + background-color: transparent; + selection-background-color: transparent; + color: transparent; + selection-color: #4882ff; + /* Needed to remove indicator - fix #132 */ + } + + QComboBox::indicator:alternate { + background: #696968; + } + + QComboBox::item { + /* Remove to fix #282, #285 and MR #288*/ + /*&:checked { + font-weight: bold; + } + + &:selected { + border: 0px solid transparent; + } + */ + } + + QComboBox::item:alternate { + background: #3c3c3c; + } + + QComboBox::drop-down { + subcontrol-origin: padding; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051); + subcontrol-position: top right; + width: 14px; + border-left: 1px solid transparent; + } + QComboBox::drop-down:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #4882ff, stop:1 #3f7cff); + } + + QComboBox::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + height: 10px; + width: 10px; + } + + QComboBox::down-arrow:on, QComboBox::down-arrow:hover, QComboBox::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_lighter.svg); + } + + + /*================================================================================================== + Tasks panel (custom FreeCAD class) + ==================================================================================================*/ + Gui--PropertyEditor--PropertyEditor { + qproperty-groupTextColor: white; + qproperty-groupBackground: #3c3c3c; + border: 0px solid #696968; + + } + + /* Action group */ + QFrame[class="panel"] { + background-color: transparent; /* temporal (transparent background) */ + + } + + QSint--ActionGroup { + padding: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ + margin: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ + } + + /* Separator line */ + QSint--ActionGroup QFrame[height="1"], + QSint--ActionGroup QFrame[height="2"], + QSint--ActionGroup QFrame[height="3"], + QSint--ActionGroup QFrame[width="1"], + QSint--ActionGroup QFrame[width="2"], + QSint--ActionGroup QFrame[width="3"] { + border-color: rgba(0,0,0,60); + } + + /* Panel header */ + QSint--ActionGroup QFrame[class="header"] { + border-top: 1px solid #696968; + border-left: 1px solid #696968; + border-right: 1px solid #696968; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051); + border-top-left-radius: 3px; + border-top-right-radius: 3px; + border-bottom-left-radius: 0px; + border-bottom-right-radius: 0px; + margin: 0px; + padding: 0px; + } + + QSint--ActionGroup QFrame[class="header"]:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #4882ff, stop:1 #3f7cff); + } + + QSint--ActionGroup QToolButton[class="header"] { + color: white; /* Task Panel Header text color */ + text-align: left; + font-weight: bold; + border: none; + margin: 0px; + padding: 0px; + } + + QSint--ActionGroup QFrame[class="header"] QLabel { + background-color: transparent; + background-image: url(qss:images_dark-light/down_arrow_light.svg); + background-repeat: none; + background-position: center center; + padding: 0px; + margin: 0px; + } + + QSint--ActionGroup QFrame[class="header"] QLabel:hover { + background-color: transparent; + background-image: url(qss:images_dark-light/down_arrow_lighter.svg); + } + + QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"] { + background-color: transparent; + background-image: url(qss:images_dark-light/up_arrow_light.svg); + background-repeat: none; + background-position: center center; + padding: 0px; + margin: 0px; + } + + QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"]:hover { + background-color: transparent; + background-image: url(qss:images_dark-light/up_arrow_lighter.svg); + } + + QSint--ActionGroup QFrame[class="content"] { + background-color: transparent; /* Task Panel background color */ + margin: 0px; + padding: 0px; + border-bottom: 1px solid #696968; + border-left: 1px solid #696968; + border-right: 1px solid #696968; + border-top-left-radius: 0px; + border-top-right-radius: 0px; + border-bottom-left-radius: 3px; + border-bottom-right-radius: 3px; + } + + QSint--ActionGroup QFrame[class="content"] > QWidget { + background-color: #7F7F7F; /* Task Panel background color */ + } + + /* Fixs for tabs inside Task Panel */ + QSint--ActionGroup QFrame[class="content"] QTabBar::tab:top:selected { + border-bottom-color: #4882ff; /* same as Task Panel background color */ + } + + QSint--ActionGroup QFrame[class="content"] QTabBar::tab:bottom:selected { + border-top-color: #4882ff; /* same as Task Panel background color */ + } + + QSint--ActionGroup QFrame[class="content"] QTabBar::tab:right:selected { + border-right-color: #4882ff; /* same as Task Panel background color */ + } + + QSint--ActionGroup QFrame[class="content"] QTabBar::tab:left:selected { + border-left-color: #4882ff; /* same as Task Panel background color */ + } + + /* Fix for buttons with icons that showed cropped (still not happy with result) */ + QSint--ActionGroup QFrame[class="content"] > QWidget > QPushButton { + padding: 2px; /* bigger padding crops text and icons... */ + margin: 0px; + } + + /* Fix for lists inside task panels */ /* sketcher constraints list */ + QSint--ActionGroup QFrame[class="content"] QTreeView, + QSint--ActionGroup QFrame[class="content"] QListView, + QSint--ActionGroup QFrame[class="content"] QTableView { + color: white; + background-color: #505050; + } + + + /* found inside Part Design Workbench and "make a draft on a face" Task panel options */ + QSint--ActionGroup QFrame[class="content"] QToolButton { + color: white; + text-align: center; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051); + border: 0px solid #adadad; + padding: 1px 1px; /* different than regular QPushButton */ + margin: 0px; /* different than regular QPushButton */ + min-height: 16px; /* same as QTabBar QPushButton min-width */ + border-radius: 1px; + } + + QSint--ActionGroup QFrame[class="content"] QToolButton:hover{ + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #4882ff, stop:1 #3f7cff); + + } + QSint--ActionGroup QFrame[class="content"] QToolButton:focus { + border: 1px solid #3f7cff; + } + + QSint--ActionGroup QFrame[class="content"] QToolButton:disabled, + QSint--ActionGroup QFrame[class="content"] QToolButton:disabled:checked { + color: #696969; + background-color: #505050; + } + + QSint--ActionGroup QFrame[class="content"] QToolButton:pressed { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #4882ff, stop:1 #3f7cff); + + } + + /* QSlider ---------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qslider + + --------------------------------------------------------------------------- */ + QSlider:disabled { + background: #7F7F7F; + } + + QSlider:focus { + border: 1px solid #3f7cff; + } + + QSlider::groove:horizontal { + background: #7F7F7F; + border: 1px solid #696968; + height: 4px; + margin: 0px; + border-radius: 1.9px; + } + + QSlider::groove:vertical { + background: #4882ff; + border: 1px solid #696968; + width: 4px; + margin: 0px; + border-radius: 1.9px; + } + + QSlider::add-page:vertical { + background: #4882ff; + border: 1px solid #696968; + width: 4px; + margin: 0px; + border-radius: 1.9px; + } + + QSlider::add-page:vertical :disabled { + background: #696968; + } + + QSlider::sub-page:horizontal { + background: #4882ff; + border: 1px solid #0073ff; + height: 4px; + margin: 0px; + border-radius: 1.9px; + } + + QSlider::sub-page:horizontal:disabled { + background: #4882ff; + } + + QSlider::handle:horizontal { + background: #353535; + border: 1px solid #7F7F7F; + width: 8px; + height: 8px; + margin: -8px 0px; + border-radius: 1.9px; + } + + QSlider::handle:horizontal:hover { + background: #4882ff; + border: 1px solid #4882ff; + } + + QSlider::handle:horizontal:focus { + border: 1px solid #3f7cff; + } + + QSlider::handle:vertical { + background: #c2c7cb; + border: 1px solid #696968; + width: 8px; + height: 8px; + margin: 0 -8px; + border-radius: 1.9px; + } + + QSlider::handle:vertical:hover { + background: #4882ff; + border: 2px solid #4882ff; + } + + QSlider::handle:vertical:focus { + border: 1px solid #3f7cff; + } + + /* QLineEdit -------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlineedit + + --------------------------------------------------------------------------- */ + QLineEdit { + background-color: #505050; + padding-top: 2px; + /* This QLineEdit fix 103, 111 */ + padding-bottom: 2px; + /* This QLineEdit fix 103, 111 */ + padding-left: 4px; + padding-right: 4px; + border-style: solid; + border: 1px solid #696968; + border-radius: 2px; + color: White; + } + + QLineEdit:disabled { + background-color: #7F7F7F; + color: #c2c7cb; + } + + QLineEdit:hover { + border: 1px solid #4882ff; + color: White; + } + + QLineEdit:focus { + border: 2px solid #3f7cff; + } + + QLineEdit:selected { + background-color: #4882ff; + color: white; + } + + /* QTabWiget -------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + + --------------------------------------------------------------------------- */ + QTabWidget { + padding: 2px; + selection-background-color: #4882ff; + } + + QTabWidget QWidget { + /* Fixes #189 */ + border-radius: 1.9px; + } + + QTabWidget::pane { + margin: 0px; + /* Fixes double border inside pane with pyqt5 */ + padding: 0px; + } + + QTabWidget::pane:selected { + background-color: #4882ff; + border: 1px solid #346792; + } + /* QTabBar ---------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + + --------------------------------------------------------------------------- */ + QTabBar, QDockWidget QTabBar { + qproperty-drawBase: 0; + /* left: 5px; move to the right by 5px - removed for fix */ + } + + QTabBar::close-button, QDockWidget QTabBar::close-button { + border: 0; + margin: 0; + padding: 1px; + image: url(qss:images_dark-light/close_light.svg); + } + + QTabBar::close-button:hover, QDockWidget QTabBar::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); + /*background-color: rgba(255, 0, 0, 0.3);*/ + } + + QTabBar::close-button:pressed, QDockWidget QTabBar::close-button:pressed { + image: url(qss:images_dark-light/close_.svg); + } + + QTabBar::tab, QDockWidget QTabBar::tab { + /* !selected and disabled ----------------------------------------- */ + /* selected ------------------------------------------------------- */ + padding: 4px; + } + + QTabBar::tab:top:selected:disabled, QDockWidget QTabBar::tab:top:selected:disabled { + color: #f5f5f5; + } + + QTabBar::tab:bottom:selected:disabled, QDockWidget QTabBar::tab:bottom:selected:disabled { + color: #f5f5f5; + } + + QTabBar::tab:left:selected:disabled, QDockWidget QTabBar::tab:left:selected:disabled { + color: #f5f5f5; + } + + QTabBar::tab:right:selected:disabled, QDockWidget QTabBar::tab:right:selected:disabled { + color: #f5f5f5; + } + + QTabBar::tab:top:!selected:disabled, QDockWidget QTabBar::tab:top:!selected:disabled { + color: #f5f5f5; + } + + QTabBar::tab:bottom:!selected:disabled, QDockWidget QTabBar::tab:bottom:!selected:disabled { + color: #f5f5f5; + + } + + QTabBar::tab:left:!selected:disabled, QDockWidget QTabBar::tab:left:!selected:disabled { + color: #f5f5f5; + + } + + QTabBar::tab:right:!selected:disabled, QDockWidget QTabBar::tab:right:!selected:disabled { + color: #f5f5f5; + } + + QTabBar::tab:top:!selected, QDockWidget QTabBar::tab:top:!selected { + color: #f5f5f5; + } + + QTabBar::tab:bottom:!selected, QDockWidget QTabBar::tab:bottom:!selected { + color: #f5f5f5; + } + + QTabBar::tab:left:!selected, QDockWidget QTabBar::tab:left:!selected { + color: #f5f5f5; + } + + QTabBar::tab:right:!selected, QDockWidget QTabBar::tab:right:!selected { + color: #f5f5f5; + } + + QTabBar::tab:top, QDockWidget QTabBar::tab:top { + color: #f5f5f5; + margin-left: 0px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + min-width: 5px; + border-bottom: 1px solid #696969; /* same as tab content background color */ + border-radius: 0px; + } + + QTabBar::tab:top:selected, QDockWidget QTabBar::tab:top:selected { + color: white; + border-top: 4px solid #4882ff; /* selection color */ + border-bottom: 1px solid transparent; /* same as tab content background color */ + border-left: 1px solid #696969; + border-right: 1px solid #696969; + } + + QTabBar::tab:top:!selected:hover, QDockWidget QTabBar::tab:top:!selected:hover { + /*border: 1px solid #4882ff;*/ + border: 0px solid #4882ff; + background-color: #4882ff; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; + } + + QTabBar::tab:bottom, QDockWidget QTabBar::tab:bottom { + color: #f5f5f5; + margin-left: 0px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + min-width: 5px; + border-top: 1px solid #696969; /* same as tab content background color */ + border-radius: 0px; + } + + QTabBar::tab:bottom:selected, QDockWidget QTabBar::tab:bottom:selected { + color: white; + border-bottom: 4px solid #4882ff; /* selection color */ + border-top: 1px solid transparent; /* same as tab content background color */ + border-left: 1px solid #696969; + border-right: 1px solid #696969; + + } + + QTabBar::tab:bottom:!selected:hover, QDockWidget QTabBar::tab:bottom:!selected:hover { + /*border: 1px solid #4882ff;*/ + border: 0px solid #4882ff; + background-color: #4882ff; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; + } + + QTabBar::tab:left, QDockWidget QTabBar::tab:left { + background-color: #7F7F7F; + margin-top: 2px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + border-radius: 4px; + min-height: 5px; + } + + QTabBar::tab:left:selected, QDockWidget QTabBar::tab:left:selected { + background-color: #7F7F7F; + border: 0px solid #3f7cff; + } + + QTabBar::tab:left:!selected:hover, QDockWidget QTabBar::tab:left:!selected:hover { + border: 0px solid #4882ff; + background-color: #4882ff; + /* Fixes different behavior #271 */ + margin-right: 0px; + padding-right: -1px; + } + + QTabBar::tab:right, QDockWidget QTabBar::tab:right { + background-color: #7F7F7F; + margin-top: 2px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + min-height: 5px; + border: 10px; + } + + QTabBar::tab:right:selected, QDockWidget QTabBar::tab:right:selected { + background-color: #7F7F7F; + border: 0px solid #3f7cff; + } + + QTabBar::tab:right:!selected:hover, QDockWidget QTabBar::tab:right:!selected:hover { + border: 0px solid #4882ff; + background-color: #4882ff; + /* Fixes different behavior #271 */ + margin-left: 0px; + padding-left: 0px; + } + + QTabBar QToolButton, QDockWidget QTabBar QToolButton { + /* Fixes #136 */ + background-color: #7F7F7F; + height: 12px; + width: 12px; + } + + QTabBar QToolButton:pressed, QDockWidget QTabBar QToolButton:pressed { + border: 0px solid #4882ff; + background-color: #4882ff; + } + + QTabBar QToolButton:pressed:hover, QDockWidget QTabBar QToolButton:pressed:hover { + border: 0px solid #4882ff; + background-color: #4882ff; + } + + QTabBar QToolButton::left-arrow:enabled, QDockWidget QTabBar QToolButton::left-arrow:enabled { + image: url(qss:images_dark-light/left_arrow_lighter.svg); + } + + QTabBar QToolButton::left-arrow:disabled, QDockWidget QTabBar QToolButton::left-arrow:disabled { + image: url(qss:images_dark-light/left_arrow_disabled_light.svg); + } + + QTabBar QToolButton::right-arrow:enabled, QDockWidget QTabBar QToolButton::right-arrow:enabled { + image: url(qss:images_dark-light/right_arrow_lighter.svg); + } + + QTabBar QToolButton::right-arrow:disabled, QDockWidget QTabBar QToolButton::right-arrow:disabled { + image: url(qss:images_dark-light/right_arrow_disabled_light.svg); + } + + /* QDockWiget ------------------------------------------------------------- + + --------------------------------------------------------------------------- */ + QDockWidget { + background-color: #7F7F7F; + border: 1px solid #505051; + border-radius: 1.9px; + titlebar-close-icon: url(qss:images_dark-light/transparent.svg); + titlebar-normal-icon: url(qss:images_dark-light/transparent.svg); + } + + QDockWidget::title { + /* Better size for title bar */ + padding: 3px; + spacing: 4px; + border: none; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051); + text-align: center; + font-weight: bold; + } + + QDockWidget::close-button { + icon-size: 10px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/close_light.svg); + } + + QDockWidget::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); + } + + QDockWidget::close-button:pressed { + image: url(qss:images_dark-light/close_light.svg); + } + + QDockWidget::float-button { + icon-size: 12px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/undock_light.svg); + } + + QDockWidget::float-button:hover { + /*background-color: #4882ff;*/ + image: url(qss:images_dark-light/undock_blue.svg); + } + + QDockWidget::float-button:pressed { + image: url(qss:images_dark-light/undock_light.svg); + } + + /* QTreeView QListView QTableView ----------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtreeview + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlistview + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtableview + + --------------------------------------------------------------------------- */ + QTreeView::branch { + background: transparent; + } + + QTreeView::branch:has-siblings:!adjoins-item { + border-image: url(qss:images_dark-light/branch_vline_light.svg) 0; + } + + QTreeView::branch:has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_more_light.svg) 0; + } + + QTreeView::branch:!has-children:!has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_end_light.svg) 0; + } + + QTreeView::branch:closed:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_closed_light.svg) 0; + } + + QTreeView::branch:has-children:!has-siblings:closed { + border-image: url(qss:images_dark-light/branch_end_closed_light.svg) 0; + } + + QTreeView::branch:open:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_open_light.svg) 0; + } + + QTreeView::branch:open:has-children:!has-siblings { + border-image: url(qss:images_dark-light/branch_end_open_light.svg) 0; + } + + QTreeView::indicator:checked, + QListView::indicator:checked, + QTableView::indicator:checked, + QColumnView::indicator:checked { + image: url(qss:images_dark-light/checkbox_light.svg); + } + + QTreeView::indicator:checked:hover, QTreeView::indicator:checked:focus, QTreeView::indicator:checked:pressed, + QListView::indicator:checked:hover, + QListView::indicator:checked:focus, + QListView::indicator:checked:pressed, + QTableView::indicator:checked:hover, + QTableView::indicator:checked:focus, + QTableView::indicator:checked:pressed, + QColumnView::indicator:checked:hover, + QColumnView::indicator:checked:focus, + QColumnView::indicator:checked:pressed { + image: url(qss:images_dark-light/checkbox_light_hover.svg); + } + + QTreeView::indicator:unchecked, + QListView::indicator:unchecked, + QTableView::indicator:unchecked, + QColumnView::indicator:unchecked { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); + } + + QTreeView::indicator:unchecked:hover, QTreeView::indicator:unchecked:focus, QTreeView::indicator:unchecked:pressed, + QListView::indicator:unchecked:hover, + QListView::indicator:unchecked:focus, + QListView::indicator:unchecked:pressed, + QTableView::indicator:unchecked:hover, + QTableView::indicator:unchecked:focus, + QTableView::indicator:unchecked:pressed, + QColumnView::indicator:unchecked:hover, + QColumnView::indicator:unchecked:focus, + QColumnView::indicator:unchecked:pressed { + image: url(qss:images_dark-light/checkbox_unchecked_hover_light.svg); + } + + QTreeView::indicator:indeterminate, + QListView::indicator:indeterminate, + QTableView::indicator:indeterminate, + QColumnView::indicator:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); + } + + QTreeView::indicator:indeterminate:hover, QTreeView::indicator:indeterminate:focus, QTreeView::indicator:indeterminate:pressed, + QListView::indicator:indeterminate:hover, + QListView::indicator:indeterminate:focus, + QListView::indicator:indeterminate:pressed, + QTableView::indicator:indeterminate:hover, + QTableView::indicator:indeterminate:focus, + QTableView::indicator:indeterminate:pressed, + QColumnView::indicator:indeterminate:hover, + QColumnView::indicator:indeterminate:focus, + QColumnView::indicator:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); + } + + QTreeView, + QListView, + QTableView, + QColumnView { + background-color: #7F7F7F; /* background of a lot of stuff including spreadsheets.*/ + border: 0px solid #696968; + color: White; + gridline-color: #696968; + border-radius: 0px; + } + +QTableView, +QListView { + background-color: rgba(0, 0, 0, 0.232); /* background of a lot of stuff including spreadsheets.*/ +} + + + QTreeView:disabled, + QListView:disabled, + QTableView:disabled, + QColumnView:disabled { + background-color: #505050; + color: #c2c7cb; + } + + QTreeView:selected, + QListView:selected, + QTableView:selected, + QColumnView:selected { + background-color: #4882ff; + color: White; + } + + QTreeView:focus, + QListView:focus, + QTableView:focus, + QColumnView:focus { + border: 1px solid #3f7cff; + } + + QTreeView::item:pressed, + QListView::item:pressed, + QTableView::item:pressed, + QColumnView::item:pressed { + background-color: #4882ff; + } + + QTreeView::item:selected:active, + QListView::item:selected:active, + QTableView::item:selected:active, + QColumnView::item:selected:active { + background-color: #4882ff; + } + + QTreeView::item:selected:!active, + QListView::item:selected:!active, + QTableView::item:selected:!active, + QColumnView::item:selected:!active { + color: White; + background-color: #353535; + } + + QTreeView::item:!selected:hover, + QListView::item:!selected:hover, + QTableView::item:!selected:hover, + QColumnView::item:!selected:hover { + outline: 0; + color: White; + background-color: #4882ff; + } + + QTableCornerButton::section { + background-color: #7F7F7F; + border: 1px transparent #696968; + border-radius: 0px; + } + + QTableView::item { + color: white; + } + QTableView { + /*qproperty-AliasedCellBackgroundColor: #f700ff;*/ + /*qproperty-aliasBgColor: #f700ff;*/ + } + + /* QHeaderView ------------------------------------------------------------ + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qheaderview + + --------------------------------------------------------------------------- */ + QHeaderView { + background-color: transparent; + text-align: center; + } + + QHeaderView:disabled { + background-color: #7f7f7f; + color: rgb(174, 174, 174); + } + + QHeaderView::section { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051); + color: White; + border: 1px solid #505051; + font-size: 13px; + font-weight: bold; + } + + QHeaderView::section::horizontal { + padding-top: 1px; + padding-bottom: 1px; + padding-left: 5px; + padding-right: 0px; + } + + QHeaderView::section::horizontal::first, QHeaderView::section::horizontal::only-one { + border-left: 0px solid #696968; + } + + QHeaderView::section::horizontal:disabled { + color: #353535; + } + + QHeaderView::section::vertical { + padding-top: 1px; + padding-bottom: 0; + padding-left: 1px; + padding-right: 0px; + border-top: 0px solid #696968; + } + + QHeaderView::section::vertical::first, QHeaderView::section::vertical::only-one { + border-top: 2px solid #505051; + } + + QHeaderView::section::vertical:disabled { + border-top: 2px solid #505051; + } + + QHeaderView::down-arrow { + /* Those settings (border/width/height/background-color) solve bug */ + /* transparent arrow background and size */ + background-color: transparent; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/down_arrow_light.svg); + } + + QHeaderView::up-arrow { + background-color: transparent; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/up_arrow_light.svg); + } + + /* QToolBox -------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbox + used in PATH + + --------------------------------------------------------------------------- */ + QToolBox { + padding: 0px; + border: 1px solid #696969; + border-radius: 4px; + background-color: transparent; + } + + QToolBox:selected { + padding: 0px; + border: 0px solid #4882ff; + } + + QToolBox::tab { + background-color: transparent; + border: 0px solid #696969; + color: white; + background-image: url(qss:images_dark-light/down_arrow_lighter.svg); background-repeat: none; background-position: center left; -} + } -QToolBar QToolButton#qt_toolbar_ext_button:hover { - /*background-image: url(qss:images_dark-light/more_light.svg);*/ - border-color: #5a5a5a; - background-color: #5a5a5a; -} + QToolBox::tab:disabled { + color: #696969; + } -QToolBar QToolButton#qt_toolbar_ext_button:on { - /*background-image: url(qss:images_dark-light/more_light.svg);*/ - border-color: #5a5a5a; - background-color: #5a5a5a; -} + QToolBox::tab:selected { + background-color: #696969; + background-image: url(qss:images_dark-light/transparent.svg); + padding-right: 5px; + background-repeat: none; + } - -/*================================================================================================== -Tables (spreadsheets) -==================================================================================================*/ -QTableView { - gridline-color: #a0a0a0; - selection-color: #1b3774; - selection-background-color: #cbd8e6; -} - -QTableView::item:hover { - background-color: rgba(0,0,0,10); /* temporal: is it displayed in Linux or Windows? on OSX it isn't */ -} - -QTableView::item:disabled { - color: #8c8c8c; -} - -QTableView::item:selected { - color: #1b3774; - border-color: #cbd8e6; /* same as focused background color */ - border-bottom-color: #7cabf9; /* same as focused border color */ -} - -/* fix for elements inside the cells */ -QTableView > QWidget > QComboBox, -QTableView > QWidget > QAbstractSpinBox, -QTableView > QWidget > QSpinBox, -QTableView > QWidget > QDoubleSpinBox, -QTableView > QWidget > QLineEdit, -QTableView > QWidget > QTextEdit, -QTableView > QWidget > QTimeEdit, -QTableView > QWidget > QDateEdit, -QTableView > QWidget > QDateTimeEdit, -QTableView > QWidget > QComboBox:drop-down, -QTableView > QWidget > QAbstractSpinBox:up-button, -QTableView > QWidget > QSpinBox:up-button, -QTableView > QWidget > QDoubleSpinBox:up-button, -QTableView > QWidget > QTimeEdit:up-button, -QTableView > QWidget > QDateEdit:up-button, -QTableView > QWidget > QDateTimeEdit:up-button, -QTableView > QWidget > QAbstractSpinBox:down-button, -QTableView > QWidget > QSpinBox:down-button, -QTableView > QWidget > QDoubleSpinBox:down-button, -QTableView > QWidget > QTimeEdit:down-button, -QTableView > QWidget > QDateEdit:down-button, -QTableView > QWidget > QDateTimeEdit:down-button, -QTableView > QWidget > Gui--ColorButton { - border-radius: 0px; -} - -QTableView > QWidget > QComboBox, -QTableView > QWidget > QAbstractSpinBox, -QTableView > QWidget > QSpinBox, -QTableView > QWidget > QDoubleSpinBox, -QTableView > QWidget > QLineEdit, -QTableView > QWidget > QTextEdit, -QTableView > QWidget > QTimeEdit, -QTableView > QWidget > QDateEdit, -QTableView > QWidget > QDateTimeEdit { - color: black; - background-color: transparent; - border-color: transparent; -} - -QTableView > QWidget > QComboBox:drop-down, -QTableView > QWidget > QAbstractSpinBox:up-button, -QTableView > QWidget > QSpinBox:up-button, -QTableView > QWidget > QDoubleSpinBox:up-button, -QTableView > QWidget > QTimeEdit:up-button, -QTableView > QWidget > QDateEdit:up-button, -QTableView > QWidget > QDateTimeEdit:up-button, -QTableView > QWidget > QAbstractSpinBox:down-button, -QTableView > QWidget > QSpinBox:down-button, -QTableView > QWidget > QDoubleSpinBox:down-button, -QTableView > QWidget > QTimeEdit:down-button, -QTableView > QWidget > QDateEdit:down-button, -QTableView > QWidget > QDateTimeEdit:down-button, -QTableView > QWidget > Gui--ColorButton { - background-color: rgba(0,0,0,30); -} - -QTableView > QWidget > QComboBox:focus, -QTableView > QWidget > QAbstractSpinBox:focus, -QTableView > QWidget > QSpinBox:focus, -QTableView > QWidget > QDoubleSpinBox:focus, -QTableView > QWidget > QLineEdit:focus, -QTableView > QWidget > QTextEdit:focus, -QTableView > QWidget > QTimeEdit:focus, -QTableView > QWidget > QDateEdit:focus, -QTableView > QWidget > QDateTimeEdit:focus { - color: #1b3774; - selection-color: white; - selection-background-color: #5e90fa; - border-color: #cbd8e6; - background-color: #cbd8e6; -} - -QTableView > QWidget > QComboBox:disabled, -QTableView > QWidget > QAbstractSpinBox:disabled, -QTableView > QWidget > QSpinBox:disabled, -QTableView > QWidget > QDoubleSpinBox:disabled, -QTableView > QWidget > QLineEdit:disabled, -QTableView > QWidget > QTextEdit:disabled, -QTableView > QWidget > QTimeEdit:disabled, -QTableView > QWidget > QDateEdit:disabled, -QTableView > QWidget > QDateTimeEdit:disabled { - color: rgba(0,0,0,120); - background-color: transparent; - border-color: transparent; -} - -QTableView > QWidget > QComboBox:read-only, -QTableView > QWidget > QAbstractSpinBox:read-only, -QTableView > QWidget > QSpinBox:read-only, -QTableView > QWidget > QDoubleSpinBox:read-only, -QTableView > QWidget > QLineEdit:read-only, -QTableView > QWidget > QTextEdit:read-only, -QTableView > QWidget > QTimeEdit:read-only, -QTableView > QWidget > QDateEdit:read-only, -QTableView > QWidget > QDateTimeEdit:read-only { - color: black; - background-color: transparent; - border-color: transparent; -} - - -/*================================================================================================== -SELECTORTOOLBAR widget (3rd party plugin) -==================================================================================================*/ -QToolBar:horizontal#Selector, -QToolBar:vertical#Selector { - background-color: rgba(0,0,0,120); - margin: 0px; - padding: 0px; -} - -QToolBar::handle:top#Selector, -QToolBar::handle:bottom#Selector, -QToolBar::handle:horizontal#Selector { - alignment: bottom left; -} - -QToolBar::handle:left#Selector, -QToolBar::handle:right#Selector, -QToolBar::handle:vertical#Selector { - width: 100%; - alignment: center left; -} - -QToolBar:top#Selector QToolButton, -QToolBar:bottom#Selector QToolButton, -QToolBar:horizontal#Selector QToolButton { - alignment: bottom left; -} - -QToolBar:left#Selector QToolButton, -QToolBar:right#Selector QToolButton, -QToolBar:vertical#Selector QToolButton { - alignment: center left; -} - -QToolButton[toolbar_orientation="horizontal"] { - /* nothing, when Horizontal there's no need to add special parameters */ -} - -QToolButton[toolbar_orientation="vertical"] { - /* nothing, when Horizontal there's no need to add special parameters */ -} - -QToolBar#Selector QToolButton { - border: none; - margin: 0px; - padding: 2px 6px; - border-radius: 0px; -} - -/* Active tab */ -QToolBar#Selector QToolButton:checked { + QToolBox::tab:selected:disabled { + background-color: #696969; + border-bottom: 0px solid #cccccc; color: white; - background-color: #6e6e6e; -} + } -/* Unactive tabs */ -QToolBar#Selector QToolButton:!checked { - color: rgba(255,255,255,160); + QToolBox::tab:!selected { + + } + + QToolBox::tab:!selected:disabled { + background-color: #7F7F7F; + } + + QToolBox::tab:hover { + background-color: #4882ff; + } + + QToolBox QScrollArea QWidget QWidget { + padding: 0px; + border: 0px; background-color: transparent; - margin: 0px; -} + } -/* Unactive tabs (hover) */ -QToolBar#Selector QToolButton:!checked:hover { - color: rgba(255,255,255,255); - background-color: rgba(255,255,255,20); -} + /* QFrame ----------------------------------------------------------------- -/* Unactive tabs (pressed) */ -QToolBar#Selector QToolButton:!checked:pressed { - background-color: rgba(255,255,255,40); -} + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe + https://doc.qt.io/qt-5/qframe.html#-prop + https://doc.qt.io/qt-5/qframe.html#details + https://stackoverflow.com/questions/14581498/qt-stylesheet-for-hline-vline-color + --------------------------------------------------------------------------- */ + /* (dot) .QFrame fix #141, #126, #123 */ + .QFrame { + border-radius: 0px; + border: 0px solid #696968; + background-color: #696969; + /* No frame */ + /* HLine */ + /* HLine */ + } -/*================================================================================================== -TABBAR widget (3rd party plugin) -==================================================================================================*/ -QTabWidget#TabBar > QTabBar { - border-top: 0; -} + .QFrame[frameShape="0"] { + border-radius: 1.9px; + border: 1px solid #696968; + } -QTabWidget#TabBar > QTabBar::tab:top, -QTabWidget#TabBar > QTabBar::tab:bottom { - min-width: -1; -} + .QFrame[frameShape="4"] { + max-height: 1px; + border: none; + background-color: #696968; + } -QTabWidget#TabBar > QTabBar::tab:left, -QTabWidget#TabBar > QTabBar::tab:right { - min-height: -1; -} + .QFrame[frameShape="5"] { + max-width: 1px; + border: none; + background-color: #7F7F7F; + } + /* QSplitter -------------------------------------------------------------- -/*================================================================================================== -EXPERIMENTAL -==================================================================================================*/ + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsplitter -/* Fix for preventing elements in different rows to accidentally overlap */ -QDialog QGroupBox QFrame { - margin: 2px 0px; -} + --------------------------------------------------------------------------- */ + QSplitter { + background-color: #3c3c3c; + spacing: 1px; + padding: 1px; + margin: 1px; + } -*[mandatoryField="true"] { background-color: cyan } + QSplitter::handle { + margin: 0px 0px; + padding: 0px; + } -/* Hack to avoid QPushButton text partially hidden under menu-indicator */ -QPushButton#NavigationIndicator::menu-indicator { - image: none; - width: 0px; -} + QSplitter::handle:horizontal { + background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + width: 1px; + } + QSplitter::handle:vertical { + background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + height: 1px; + } -/*================================================================================================== -SKETCHER -==================================================================================================*/ + QSplitter::handle:hover { + background-image: url(qss:images_dark-light/splitter_horizontal_light.svg); + background-position: center center; + background-repeat: none; + background-color: #4882ff; + } -Gui--StatefulLabel[state="empty_sketch"] { - color : rgba(255,255,255,127); /* 50% opacity white */ -} -Gui--StatefulLabel[state="under_constrained"] { - color : rgba(255,255,255,255); /* White */ -} -Gui--StatefulLabel[state="conflicting_constraints"] { - color : rgba(255,0,0,255); /* Red */ -} -Gui--StatefulLabel[state="malformed_constraints"] { - color : rgba(255,0,0,255); /* Red */ -} -Gui--StatefulLabel[state="redundant_constraints"] { - color : rgba(255,69,0,255); /* Orange red */ -} -Gui--StatefulLabel[state="partially_redundant_constraints"] { - color : rgba(65,105,225,255); /* Royal blue */ -} -Gui--StatefulLabel[state="solver_failed"] { - color : rgba(255,0,0,255); /* Red */ - font-weight: bold; -} -Gui--StatefulLabel[state="fully_constrained"] { - color : rgba(0,255,0,255); /* Green */ - font-weight: bold; -} -Gui--UrlLabel { - color : rgba(0,91,255,255); /* Deep sky blue */ - text-decoration : underline; -} + /* QDateEdit, QDateTimeEdit ----------------------------------------------- + --------------------------------------------------------------------------- */ + QDateEdit, QDateTimeEdit { + selection-background-color: #4882ff; + border-style: solid; + border: 1px solid #696968; + border-radius: 1.9px; + /* This fixes 103, 111 */ + padding-top: 2px; + /* This fixes 103, 111 */ + padding-bottom: 2px; + padding-left: 4px; + padding-right: 4px; + min-width: 10px; + } + + QDateEdit:on, QDateTimeEdit:on { + selection-background-color: #4882ff; + } + + QDateEdit::drop-down, QDateTimeEdit::drop-down { + subcontrol-origin: padding; + subcontrol-position: top right; + width: 12px; + border-left: 1px solid #696968; + } + + QDateEdit::down-arrow, QDateTimeEdit::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + height: 8px; + width: 8px; + } + + QDateEdit::down-arrow:on, QDateEdit::down-arrow:hover, QDateEdit::down-arrow:focus, QDateTimeEdit::down-arrow:on, QDateTimeEdit::down-arrow:hover, QDateTimeEdit::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_lighter.svg); + } + + QDateEdit QAbstractItemView, QDateTimeEdit QAbstractItemView { + background-color: #7F7F7F; + border-radius: 2px; + border: 1px solid #696968; + selection-background-color: #4882ff; + } + + /* QAbstractView ---------------------------------------------------------- + + --------------------------------------------------------------------------- */ + QAbstractView:hover { + border: 1px solid #4882ff; + color: White; + } + + QAbstractView:selected { + background: #4882ff; + color: White; + } + + /* PlotWidget ------------------------------------------------------------- + + --------------------------------------------------------------------------- */ + PlotWidget { + /* Fix cut labels in plots #134 */ + padding: 0px; + } \ No newline at end of file diff --git a/src/Gui/Stylesheets/Dark-green.qss b/src/Gui/Stylesheets/Dark-green.qss index 77c0c7eaa0..b7587ea296 100644 --- a/src/Gui/Stylesheets/Dark-green.qss +++ b/src/Gui/Stylesheets/Dark-green.qss @@ -1,793 +1,56 @@ /* ABOUT ============================================================================================================ -version 2.21 -Qt theme (stylesheet) specially developed for FreeCAD (https://www.freecad.org/). -It might work with other software that uses Qt styling. +Revised stylesheet based on the original from Pablo Gil Fernández made by MisterMaker - -LICENSE +KNOWN BUGS and TO DO ============================================================================================================ -Copyright (c) 2019 Pablo Gil Fernández +Please, follow the link to get updated information: +https://forum.freecad.org/viewtopic.php?t=78431 -This work is licensed under the Creative Commons Attribution-ShareAlike 4.0 International License. -To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/4.0/. - - -INSTALLATION +INSTALLATION WHEN NECESSARY ============================================================================================================ 1) Place the .qss files and /images/ folder in the path that fits your OS: OSX = /Users/[YOUR_USER_NAME]/Library/Preferences/FreeCAD/Gui/Stylesheets/ WINDOWS = C:/[INSTALLATION_PATH]/FreeCAD/data/Gui/Stylesheets/ LINUX = /home/[YOUR_USER_NAME]/.FreeCAD/Gui/Stylesheets/ - -CUSTOMIZATION ============================================================================================================ -If you would like to change the overall look/style of the theme, just find and replace following colors in the whole file: - BACKGROUND (darker to lighter) - black - #1e1e1e - #3c3c3c - #505050 - #5a5a5a - #646464 - #6e6e6e = main background color - #787878 - #8c8c8c - #a0a0a0 - #b4b4b4 - #bebebe - #c8c8c8 - #d2d2d2 - #e0e0e0 - #f5f5f5 - white - - SELECTION (darker to lighter) - #566214 - #74831d - #819c0c - #94b30f = main selection color - #9bbc12 = used to build QSpinBox up and down buttons, it's used as color in the middle - #a5c61a - #c5d675 - #dadfc5 +TO MODIFY USE THESE COLORS: + #a1bd00 + #819700 -KNOWN BUGS and TO DO -============================================================================================================ -Please, follow the link to get updated information: https://forum.freecad.org/viewtopic.php?f=10&t=12417 +See Qt documentation: -*/ + - https://doc.qt.io/qt-5/stylesheet.html + - https://doc.qt.io/qt-5/stylesheet-reference.html + - https://doc.qt.io/qt-5/stylesheet-examples.html + +--------------------------------------------------------------------------- */ -/*================================================================================================== -Reset elements -==================================================================================================*/ -/* Resetting everything helps to unify styles across different operating systems */ +/* Reset elements ------------------------------------------------------------ + +Resetting everything helps to unify styles across different operating systems + +--------------------------------------------------------------------------- */ * { - padding: 0px; - margin: 0px; - border: 0px; - border-style: none; - border-image: none; - outline: 0; - color: black; /* Default color for labels and different text elements that usually use dark colors */ + padding: 0px; + margin: 0px; + border: 0px; + border-style: none; + border-image: none; + outline: 0; } /* specific reset for elements inside QToolBar */ QToolBar * { - margin: 0px; - padding: 0px; + margin: 0px; + padding: 0px; } - -/*================================================================================================== -Main window -==================================================================================================*/ -QMainWindow, -QDialog, -QDockWidget, -QToolBar { - background-color: #6e6e6e; /* main background color */ -} - -QMdiArea { - background-image: url(qss:images_dark-light/background_freecad_dark.svg); - background-position: center center; - background-repeat: no-repeat; -} - - -/*================================================================================================== -Sub windows -==================================================================================================*/ -QMdiSubWindow { - border:1px solid #505050; - margin-top: 30px; - margin-left: 4px; - margin-right: 4px; - margin-bottom:4px; -} - - -/*================================================================================================== -MENUS -==================================================================================================*/ -QMenuBar, -QMenuBar::item { - color: #e0e0e0; - background-color: #6e6e6e; /* main background color */ -} - -QMenu, -QMenu::item { - color: #e0e0e0; - background-color: #5a5a5a; - text-decoration: none; -} - -QMenuBar::item:selected, -QMenuBar::item:pressed, -QMenu::item:selected, -QMenu::item:pressed { - color: white; - background-color: #94b30f; -} - -QMenu::right-arrow { - width: 10px; - height: 10px; - image:url(qss:images_dark-light/right_arrow_dark.svg); - margin-right: 2px; -} - -QMenu::right-arrow:selected { - image:url(qss:images_dark-light/right_arrow_lighter.svg); -} - -QMenu::item { - padding: 2px 4px; /* make room for icon at left */ - border: 1px solid transparent; /* reserve space for selection border */ -} - -QMenu::icon { - margin-left: 1px; - margin-right: 1px; -} - -QMenu::icon:checked { /* appearance of a 'checked' icon */ - background: #94b30f; - border: 2px #94b30f; - position: absolute; - border-radius: 2px; -} - -QMenu::separator { - height: 1px; - background-color: rgba(255,255,255,30); - margin: 6px 4px; -} - -QMenu::indicator:non-exclusive:checked { - color: white; -} - -/* Fix for elements inside a drop-down menu */ -QMenu QRadioButton, -QMenu QCheckBox, -QMenu QPushButton, -QMenu QToolButton { - color: white; /* same as regular QRadioButton and QCheckBox */ -} - -QMenu QRadioButton:hover, -QMenu QCheckBox:hover, -QMenu QPushButton:hover, -QMenu QToolButton:hover, -QMenu QPushButton:pressed, -QMenu QToolButton:pressed, -QMenu QPushButton:selected, -QMenu QToolButton:selected { - color: white; - background-color: #94b30f; /* same as QMenu::item:selected and QMenu::item:pressed */ -} - -QMenu QRadioButton:disabled, -QMenu QCheckBox:disabled { - color: #f5f5f5; -} - -QMenu QRadioButton::indicator:disabled, -QMenu QCheckBox::indicator:disabled { - color: #f5f5f5; - background-color: transparent; - border: 1px solid #f5f5f5; -} - - -/*================================================================================================== -Tool bar -==================================================================================================*/ -QToolBar { - border: none; - padding: 2px; -} - -QToolBar::handle:top, -QToolBar::handle:bottom, -QToolBar::handle:horizontal { - background-image: url(qss:images_dark-light/Hmovetoolbar_dark.svg); - width: 10px; - margin: 4px 2px; - background-position: top right; - background-repeat: repeat-y; -} - -QToolBar::handle:left, -QToolBar::handle:right, -QToolBar::handle:vertical { - background-image: url(qss:images_dark-light/Vmovetoolbar_dark.svg); - height: 10px; - margin: 2px 4px; - background-position: left bottom; - background-repeat: repeat-x; -} - -QToolBar::separator:top, -QToolBar::separator:bottom, -QToolBar::separator:horizontal { - width: 1px; - margin: 6px 4px; - background-color: rgba(0,0,0,30); -} - -QToolBar::separator:left, -QToolBar::separator:right, -QToolBar::separator:vertical { - height: 1px; - margin: 4px 6px; - background-color: rgba(0,0,0,30); -} - - -/*================================================================================================== -Group box -==================================================================================================*/ -QGroupBox { - color: rgba(0,0,0,120); - border:1px solid rgba(0, 0, 0, 20); /* lighter than its own border-color */; - border-radius: 3px; - margin-top: 10px; - padding: 6px; - background-color: rgba(255, 255, 255, 15); -} - -QGroupBox::title { - top: -8px; - left: 12px; -} - -/* NOTE: QGroupBox checkboxes are styles with regular ones so that the all get the same style */ -/* QGroupBox::indicator { - width: 13px; - height: 13px; -} - -QGroupBox::indicator:unchecked { - image: url(:/images/checkbox_unchecked.png); -} */ - - -/*================================================================================================== -Tooltip -==================================================================================================*/ -QToolTip { - color: #1e1e1e; - background-color: #b4b4b4; - /*opacity: 90%; doesn't correctly work */ - padding: 4px; - border-radius: 3px; /* has no effect */ -} - - -/*================================================================================================== -Dock widget -==================================================================================================*/ -QDockWidget { - color: rgba(0,0,0,120); - titlebar-close-icon: url(qss:images_dark-light/close_dark.svg); - titlebar-normal-icon: url(qss:images_dark-light/undock_dark.svg); -} - -QDockWidget::title { - text-align: center; - background-color: rgba(0,0,0,20); - border: 4px solid #6e6e6e; /* fix to simulate margin between this :title and tabs */ /* same as main background color */ - border-radius: 6px; /* bigger than normal due to previous border fix */ - padding: 4px 0px; /* also needed because of previous border fix */ -} - -QDockWidget::close-button, -QDockWidget::float-button { - border: none; - background: transparent; - border-radius: 3px; - subcontrol-origin: padding; - subcontrol-position: right center; -} - -QDockWidget::close-button { - right: 4px; -} - -QDockWidget::float-button { - right: 22px; -} - -QDockWidget::close-button:hover, -QDockWidget::float-button:hover { - background-color: rgba(255,255,255,15); -} - -QDockWidget::close-button:pressed, -QDockWidget::float-button:pressed { - background-color: rgba(255,255,255,30); -} - -/* fix for Python Console (probably there is a smarter way to arrive to it) */ -QDockWidget > QFrame { - background-color: #c8c8c8; - border: 1px solid #505050; -} - - -/*================================================================================================== -Progress bar -==================================================================================================*/ -QProgressBar, -QProgressBar:horizontal { - color: white; - background-color: rgba(0,0,0,10); - text-align: center; - border: 1px solid rgba(0,0,0,80); - padding: 1px; - border-radius: 3px; -} -QProgressBar::chunk, -QProgressBar::chunk:horizontal { - background-color: qlineargradient(spread:pad, x1:1, y1:0.545, x2:1, y2:0, stop:0 #819c0c, stop:1 #94b30f); - border-radius: 3px; -} - - -/*================================================================================================== -Scroll -==================================================================================================*/ -QAbstractScrollArea { - border-radius: 2px; - background-color: transparent; -} - -QAbstractScrollArea::corner { - border: none; - background-color: transparent; -} - -QScrollBar:horizontal { - background-color: transparent; - height: 15px; - margin: 0px; -} - -QScrollBar::handle:vertical, -QScrollBar::handle:horizontal { - background-color: rgba(0,0,0,80); -} - -QScrollBar::handle:vertical:hover, -QScrollBar::handle:horizontal:hover { - background-color: rgba(0,0,0,100); -} - -QScrollBar::handle:horizontal { - min-width: 5px; - border-radius: 3px; - margin: 4px 15px; -} - -QScrollBar::sub-line:horizontal { - margin: 1px 3px 0px 3px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/left_arrow_light.svg); - width: 6px; - height: 10px; - subcontrol-position: left; - subcontrol-origin: margin; -} - -QScrollBar::add-line:horizontal { - margin: 1px 3px 0px 3px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/right_arrow_light.svg); - width: 6px; - height: 10px; - subcontrol-position: right; - subcontrol-origin: margin; -} - -QScrollBar::sub-line:horizontal:hover, -QScrollBar::sub-line:horizontal:on { - border-image: url(qss:images_dark-light/left_arrow_lighter.svg); -} - -QScrollBar::add-line:horizontal:hover, -QScrollBar::add-line:horizontal:on { - border-image: url(qss:images_dark-light/right_arrow_lighter.svg); -} - -QScrollBar::up-arrow:horizontal, -QScrollBar::down-arrow:horizontal { - background-color: none; -} - -QScrollBar::add-page:horizontal, -QScrollBar::sub-page:horizontal { - background-color: transparent; -} - -QScrollBar:vertical { - background-color: transparent; - width: 15px; - margin: 0px; -} - -QScrollBar::handle:vertical { - min-height: 5px; - border-radius: 3px; - margin: 15px 4px; -} - -QScrollBar::sub-line:vertical { - margin: 3px 0px 3px 1px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/up_arrow_light.svg); - height: 6px; - width: 10px; - subcontrol-position: top; - subcontrol-origin: margin; -} - -QScrollBar::add-line:vertical { - margin: 3px 0px 3px 1px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/down_arrow_light.svg); - height: 6px; - width: 10px; - subcontrol-position: bottom; - subcontrol-origin: margin; -} - -QScrollBar::sub-line:vertical:hover, -QScrollBar::sub-line:vertical:on { - border-image: url(qss:images_dark-light/up_arrow_lighter.svg); -} - -QScrollBar::add-line:vertical:hover, -QScrollBar::add-line:vertical:on { - border-image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -QScrollBar::up-arrow:vertical, -QScrollBar::down-arrow:vertical { - background-color: none; -} - -QScrollBar::add-page:vertical, -QScrollBar::sub-page:vertical { - background-color: transparent; -} - - -/*================================================================================================== -Tab bar -==================================================================================================*/ -QTabWidget::pane { - background-color: transparent; /* temporal (transparent background) */ /* tab content background color */ - position: absolute; -} - -QTabWidget::pane:top { - top: -1px; - border-top: 1px solid #5a5a5a; -} - -QTabWidget::pane:bottom { - bottom: -1px; - border-bottom: 1px solid #5a5a5a; -} - -QTabWidget::pane:left { - right: -1px; - border-right: 1px solid #5a5a5a; -} - -QTabWidget::pane:right { - left: -1px; - border-left: 1px solid #5a5a5a; -} - -QTabWidget::tab-bar:top, -QTabWidget::tab-bar:bottom { - left: 10px; -} - -QTabWidget::tab-bar:left, -QTabWidget::tab-bar:right { - top: 10px; -} - -QTabBar { - qproperty-drawBase: 0; /* important */ - background-color: transparent; -} - -/* Workaround for QTabBars created from docked QDockWidgets which don't draw the border if not set and reset as follows: */ -QTabBar { - border-top: 1px solid #5a5a5a; /* set color for all QTabBars */ -} -QDockWidget QTabBar { - border-color: transparent; /* set color for all QTabBars but ones created from QDockWidget */ -} -QDialog QTabBar { - border-color: transparent; /* set color for QTabBars inside Preferences dialog */ -} -/* end fix */ - -QTabBar::tab { - background-color: transparent; - border: 1px solid transparent; - padding: 3px; -} - -QTabBar::tab:top, -QTabBar::tab:bottom { - border-top-width: 4px; /* same as selected tab colored border in order to center close-button */ - border-bottom-width: 4px; /* same as selected tab colored border in order to center close-button */ - min-width: 11ex; - margin-left: 2px; - margin-right: 2px; -} - -QTabBar::tab:left, -QTabBar::tab:right { - border-left-width: 4px; /* same as selected tab colored border in order to center close-button */ - border-right-width: 4px; /* same as selected tab colored border in order to center close-button */ - min-height: 14ex; - margin-top: 2px; - margin-bottom: 2px; -} - -QTabBar::tab:selected { - color: #d2d2d2; - background-color: #6e6e6e; /* same as tab content background color */ - border-color: #5a5a5a; -} - -QTabBar::tab:top:selected { - border-top: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #94b30f, stop:1 #819c0c); /* selection color */ - border-bottom-color: #6e6e6e; /* same as tab content background color */ -} - -QTabBar::tab:bottom:selected { - border-bottom: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #94b30f, stop:1 #819c0c); /* selection color */ - border-top-color: #6e6e6e; /* same as tab content background color */ -} - -QTabBar::tab:right:selected { - border-left: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:1, y2:0, stop:0 #94b30f, stop:1 #819c0c); /* selection color */ - border-right-color: #6e6e6e; /* same as tab content background color */ -} - -QTabBar::tab:left:selected { - border-right: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:1, y2:0, stop:0 #94b30f, stop:1 #819c0c); /* selection color */ - border-left-color: #6e6e6e; /* same as tab content background color */ -} - -QTabBar::tab:!selected { - color: rgba(0,0,0,120); -} - -QTabBar::tab:!selected:hover { - color: rgba(0,0,0,180); - background-color: rgba(0,0,0,20); -} - -QTabBar::tab:first:selected { - margin-left: 0; /* the first selected tab has nothing to overlap with on the left */ -} - -QTabBar::tab:last:selected { - margin-right: 0; /* the last selected tab has nothing to overlap with on the right */ -} - -QTabBar::tab:only-one { - margin: 0; /* if there is only one tab, we don't want overlapping margins */ -} - -/* hack to access Preference TabBar background */ -QDialog#Gui__Dialog__DlgPreferences > QFrame QFrame { - background-color: transparent; /* main background color (in Windows is #6e6e6e) */ -} - -/* fix for previous hack that broke QTabWidget background on Windows */ -QDialog#Gui__Dialog__DlgPreferences QTabWidget::pane { - background-color: transparent; /* temporal (transparent background) */ -} - -/* hack to correctly align Preferences icon list on OSX */ -QDialog#Gui__Dialog__DlgPreferences > QListView { - min-width: 130px; -} - -/* unique styles for sections inside Preferences */ -QDialog#Gui__Dialog__DlgPreferences > QListView::item { - border-radius: 4px; -} - -QDialog#Gui__Dialog__DlgPreferences > QListView::item:hover { - background-color: #b4b4b4; -} - -QDialog#Gui__Dialog__DlgPreferences > QListView::item:selected { - color: white; - background-color: #94b30f; -} - - -/*================================================================================================== -Tab bar buttons -==================================================================================================*/ -/* Close button */ -QTabBar::close-button { - subcontrol-origin: margin; - subcontrol-position: center right; /* only works for QT 4.6 and newer */; - border-radius: 2px; - background-image: url(qss:images_dark-light/close_dark.svg); - background-position: center center; - background-repeat: none; -} - -QTabBar::close-button:hover { - background-color: rgba(255,255,255,20); -} - -QTabBar::close-button:pressed { - background-color: rgba(255,255,255,30); -} - -/* Fix for lists inside Model tab */ -QDockWidget QTreeView, -QDockWidget QListView, -QDockWidget QTableView { - margin: 6px; - border: 1px solid #505050; /* same as regular QTreeView, QListView and QTableView */ - min-height: 40px; /* necessary in some areas of FreeCAD */ -} - -/* Buttons to scroll tabs if there is not space to show all of them: */ -QTabBar::scroller { - width: 20px; /* the width of the scroll buttons */ -} - -QTabBar QToolButton, -QTabBar QToolButton:hover { - background-color: #6e6e6e; /* same as main background color */ -} - -QTabBar QToolButton::right-arrow:enabled { - image: url(qss:images_dark-light/right_arrow_dark.svg); -} - -QTabBar QToolButton::right-arrow:disabled, -QTabBar QToolButton::right-arrow:off { - image: url(qss:images_dark-light/right_arrow_disabled_dark.svg); -} - -QTabBar QToolButton::right-arrow:hover { - image: url(qss:images_dark-light/right_arrow_darker.svg); -} - - QTabBar QToolButton::left-arrow:enabled { - image: url(qss:images_dark-light/left_arrow_dark.svg); -} - - QTabBar QToolButton::left-arrow:disabled, - QTabBar QToolButton::left-arrow:off { - image: url(qss:images_dark-light/left_arrow_disabled_dark.svg); -} - - QTabBar QToolButton::left-arrow:hover { - image: url(qss:images_dark-light/left_arrow_darker.svg); -} - - QTabBar QToolButton::up-arrow:enabled { - image: url(qss:images_dark-light/up_arrow_dark.svg); -} - - QTabBar QToolButton::up-arrow:disabled, - QTabBar QToolButton::up-arrow:off { - image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); -} - - QTabBar QToolButton::up-arrow:hover { - image: url(qss:images_dark-light/up_arrow_darker.svg); -} - - QTabBar QToolButton::down-arrow:enabled { - image: url(qss:images_dark-light/down_arrow_dark.svg); -} - - QTabBar QToolButton::down-arrow:disabled, - QTabBar QToolButton::down-arrow:off { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - - QTabBar QToolButton::down-arrow:hover { - image: url(qss:images_dark-light/down_arrow_darker.svg); -} - -QTabBar::tear { - /* default OS tear better */ -} - - -/*================================================================================================== -Tree and list views -==================================================================================================*/ -QTreeView, -QListView, -QTableView { - background-color: #c8c8c8; - alternate-background-color: #bebebe; /* related with QListView background */ - border: 1px solid #505050; - selection-color: white; - selection-background-color: #94b30f; /* should be similar to QListView::item selected background-color */ - show-decoration-selected: 1; /* make the selection span the entire width of the view */ - border-radius: 3px; -} - -QListView::item:hover, -QTreeView::item:hover { - background-color: transparent; /* fix to homogenize it on all OSs */ -} - -QListView::item:selected, -QTreeView::item:selected { - color: white; /* should be similar to QListView selection-color */ - background-color: #94b30f; /* should be similar to QListView selection-background-color */ - show-decoration-selected: 1; /* make the selection span the entire width of the view */ -} - -/* Property Editor QTreeView (FreeCAD custom widget) */ -Gui--PropertyEditor--PropertyEditor { - gridline-color: #a0a0a0; /* same as Group header background */ -} - -/* fix for column items background when a link is present */ -Gui--PropertyEditor--PropertyEditor > QWidget > QFrame:focus { - background-color: #dadfc5; /* same as focused background color */ -} - -/* hack to hide weird redundant information inside the value of a Placement cell */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel, -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel:disabled { - color: transparent; - background-color: transparent; - border: none; - border-radius: 0px; - margin: 0px; - padding: 0px; -} - -/* hack to hide non editable cells inside Property values */ +/*hacks */ Gui--PropertyEditor--PropertyEditor QLineEdit:read-only, Gui--PropertyEditor--PropertyEditor QLineEdit:disabled, Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:read-only, @@ -797,15 +60,18 @@ Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:disabled { background-color: transparent; selection-color: transparent; selection-background-color: transparent; + +} +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel, +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel:disabled { + color: transparent; + background-color: transparent; + border: none; + border-radius: 1px; + margin: 0px; + padding: 0px; } -/* hack to hide weird redundant information inside cells with links and no editable data (but editable via "..." button) */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel { - color: black; - background-color: #dadfc5; -} - -/* hack to disable margin inside Property values to following elements */ Gui--PropertyEditor--PropertyEditor QSpinBox, Gui--PropertyEditor--PropertyEditor QDoubleSpinBox, Gui--PropertyEditor--PropertyEditor QAbstractSpinBox, @@ -815,249 +81,1413 @@ Gui--PropertyEditor--PropertyEditor QComboBox { margin-right: 0px; padding-top: 0px; padding-bottom: 0px; -} -/* reset min-height to 0px inside list views */ -QTreeView > QWidget > QComboBox, -QTreeView > QWidget > QAbstractSpinBox, -QTreeView > QWidget > QSpinBox, -QTreeView > QWidget > QDoubleSpinBox, -QTreeView > QWidget > QLineEdit, -QTreeView > QWidget > QTextEdit, -QTreeView > QWidget > QTimeEdit, -QTreeView > QWidget > QDateEdit, -QTreeView > QWidget > QDateTimeEdit, -QTreeView > QWidget > Gui--ColorButton { - min-height: 0px; } -/* set border-radius to 0px inside list views */ -QTreeView > QWidget > QComboBox, -QTreeView > QWidget > QAbstractSpinBox, -QTreeView > QWidget > QSpinBox, -QTreeView > QWidget > QDoubleSpinBox, -QTreeView > QWidget > QLineEdit, -QTreeView > QWidget > QTextEdit, -QTreeView > QWidget > QTimeEdit, -QTreeView > QWidget > QDateEdit, -QTreeView > QWidget > QDateTimeEdit, -QTreeView > QWidget > QComboBox:drop-down, -QTreeView > QWidget > QAbstractSpinBox:up-button, -QTreeView > QWidget > QSpinBox:up-button, -QTreeView > QWidget > QDoubleSpinBox:up-button, -QTreeView > QWidget > QTimeEdit:up-button, -QTreeView > QWidget > QDateEdit:up-button, -QTreeView > QWidget > QDateTimeEdit:up-button, -QTreeView > QWidget > QAbstractSpinBox:down-button, -QTreeView > QWidget > QSpinBox:down-button, -QTreeView > QWidget > QDoubleSpinBox:down-button, -QTreeView > QWidget > QTimeEdit:down-button, -QTreeView > QWidget > QDateEdit:down-button, -QTreeView > QWidget > QDateTimeEdit:down-button, -QTreeView > QWidget > Gui--ColorButton { - border-radius: 0px; -} - -/* set focus colors to best viewing the editable fields */ -QTreeView > QWidget > QComboBox:focus, -QTreeView > QWidget > QAbstractSpinBox:focus, -QTreeView > QWidget > QSpinBox:focus, -QTreeView > QWidget > QDoubleSpinBox:focus, -QTreeView > QWidget > QLineEdit:focus, -QTreeView > QWidget > QTextEdit:focus, -QTreeView > QWidget > QTimeEdit:focus, -QTreeView > QWidget > QDateEdit:focus, -QTreeView > QWidget > QDateTimeEdit:focus { - border-color: #dadfc5; /* same as focused background color */ - border-bottom-color: #a5c61a; /* same as focused border color */ -} - -QTreeView > QWidget > QAbstractSpinBox:read-only, -QTreeView > QWidget > QSpinBox:read-only, -QTreeView > QWidget > QDoubleSpinBox:read-only, -QTreeView > QWidget > QLineEdit:read-only, -QTreeView > QWidget > QTextEdit:read-only, -QTreeView > QWidget > QTimeEdit:read-only, -QTreeView > QWidget > QDateEdit:read-only, -QTreeView > QWidget > QDateTimeEdit:read-only { - color: transparent; - background-color: transparent; - border-color: transparent; -} - -/* Fix to correctly (not totally) draw QTextEdit on OSX at Page properties: "Page result", "Template" and "Editable Texts" */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QWidget { - min-height: 14px; - border-radius: 0px; /* reset */ -} - - /*================================================================================================== -Header of tree and list views +Main window ==================================================================================================*/ -QHeaderView { - color: #c8c8c8; - background-color: #505050; - border-top-left-radius: 2px; /* 1px less than its container */ - border-top-right-radius: 2px; /* 1px less than its container */ - border-bottom-left-radius: 0px; - border-bottom-right-radius: 0px; +QMainWindow, +QDialog, +QDockWidget, +QToolBar { + background-color: #7F7F7F; /* main background color */ } -QHeaderView::section { - border:none; - padding: 4px 6px; - background-color: #505050; +QMdiArea { + background-image: url(qss:images_dark-light/background_freecad_dark.svg); + background-position: center center; + background-repeat: no-repeat; +} +/*navgation src/Mod/Tux/NavigationIndicatorGui.py */ +Gui--NavigationIndicatorGui--BlenderNavigationStyle { +/*QAction#a4 {*/ + qproperty-icon: url(:/icons/icons/NavigationBlender_light.svg); +} +/*===== +/* QWidget ---------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QWidget { + background-color: #7F7F7F; + border: 0px solid #696968; + padding: 0px; + color: White; + selection-background-color: #a1bd00; + selection-color: White; } -QHeaderView::section:horizontal { - padding: 4px 6px; /* left and right value similar to QHeaderView::section */ - border-right: 1px solid rgba(255,255,255,30); +QWidget:disabled { + background-color: transparent; + color: #c2c7cb; + selection-background-color: #a1bd00; + selection-color: #c2c7cb; } -QHeaderView::section:vertical { - border-bottom: 1px solid rgba(255,255,255,30); +QWidget::item:selected { + background-color: #a1bd00; } -QTableCornerButton::section { - background-color: #505050; - border-top: none; - border-left: none; - border-right: 1px solid rgba(255,255,255,30); - border-bottom: 1px solid rgba(255,255,255,30); -} + /* Causes issue with colorselector. + QWidget::item:hover:!selected { + background-color: #a1bd00; + }*/ -QHeaderView::section:last { - border-right: none; -} +/* QMainWindow ------------------------------------------------------------ -QHeaderView::up-arrow { - image: url(qss:images_dark-light/up_arrow_light.svg); -} +This adjusts the splitter in the dock widget, not qsplitter +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmainwindow -QHeaderView::up-arrow:hover { - image: url(qss:images_dark-light/up_arrow_lighter.svg); -} - -QHeaderView::down-arrow { - image: url(qss:images_dark-light/down_arrow_light.svg); -} - -QHeaderView::down-arrow:hover { - image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -/* Group header inside Property Editor (FreeCAD custom widget) */ -Gui--PropertyEditor--PropertyEditor { - qproperty-groupTextColor: #505050; - qproperty-groupBackground: #8c8c8c; -} - - -/*================================================================================================== -Branch system for QTreeViews -==================================================================================================*/ -QTreeView::branch { - background: transparent; -} - -QTreeView::branch:has-siblings:!adjoins-item { - border-image: url(qss:images_dark-light/branch_vline_dark.svg) 0; -} - -QTreeView::branch:has-siblings:adjoins-item { - border-image: url(qss:images_dark-light/branch_more_dark.svg) 0; -} - -QTreeView::branch:!has-children:!has-siblings:adjoins-item { - border-image: url(qss:images_dark-light/branch_end_dark.svg) 0; -} - -QTreeView::branch:closed:has-children:has-siblings { - border-image: url(qss:images_dark-light/branch_more_closed_dark.svg) 0; -} - -QTreeView::branch:has-children:!has-siblings:closed { - border-image: url(qss:images_dark-light/branch_end_closed_dark.svg) 0; -} - -QTreeView::branch:open:has-children:has-siblings { - border-image: url(qss:images_dark-light/branch_more_open_dark.svg) 0; -} - -QTreeView::branch:open:has-children:!has-siblings { - border-image: url(qss:images_dark-light/branch_end_open_dark.svg) 0; -} - - -/*================================================================================================== -Splitter and windows separator -==================================================================================================*/ -QSplitter::handle { - margin: 0px 11px; - padding: 0px; -} - -QSplitter::handle:horizontal { - background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); - background-position: center center; - background-repeat: none; - margin: 4px 2px 4px 2px; - width: 2px; -} - -QSplitter::handle:vertical { - background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); - background-position: center center; - background-repeat: none; - margin: 2px 4px 2px 4px; - height: 2px; -} - -/* Similar to the splitter is the following window separator (but horizontal/vertical is on the opposite way) */ +--------------------------------------------------------------------------- */ QMainWindow::separator { - background-position: center center; - background-repeat: none; + /*background-color: #3c3c3c;*/ + border: 0px solid #696968; + spacing: 0px; + padding: 1px; +} + +QMainWindow::separator:vertical:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,stop:0.2 transparent,stop:0.5 #a1bd00, stop:0.8 transparent); + /*background-color: #a1bd00;*/ + image: url(qss:images_dark-light/splitter_vertical_light.svg); +} + +QMainWindow::separator:horizontal:hover { + background-color: qlineargradient(x1:0, y1:0, x2:1, y2:0,stop:0.2 transparent,stop:0.5 #a1bd00, stop:0.8 transparent); + /*background-color: #a1bd00;*/ + image: url(qss:images_dark-light/splitter_horizontal_light.svg); } QMainWindow::separator:horizontal { - height: 2px; - background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); - margin: 4px 2px 4px 2px; + width: 4px; + margin-top: 0.1px; + margin-bottom: 0.1px; + /* image: url(qss:images_dark-light/splitter_horizontal_dark.svg);*/ } QMainWindow::separator:vertical { - width: 2px; - background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); - margin: 2px 4px 2px 4px; + height: 4px; + margin-left: 0.1px; + margin-right: 0.1px; + /* image: url(qss:images_dark-light/splitter_vertical_dark.svg);*/ +} + +/* QToolTip --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtooltip + +--------------------------------------------------------------------------- */ +QToolTip { + background-color: #505050; + color: White; + /* If you remove the border property, background stops working on Windows */ + border: none; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Remove opacity, fix #174 - may need to use RGBA */ +} + +/* QStatusBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qstatusbar + +--------------------------------------------------------------------------- */ +QStatusBar { + border: 0px solid #3c3c3c; + /* Fixes Spyder #9120, #9121 */ + background: #7F7F7F; + /* Fixes #205, white vertical borders separating items */ +} + +QStatusBar::item { + border: none; +} + +QStatusBar QToolTip { + background-color: #7F7F7F; + border: 1px solid #696968; + color: #7F7F7F; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Reducing transparency to read better */ + opacity: 230; +} + +QStatusBar QLabel { + /* Fixes Spyder #9120, #9121 */ + background: transparent; +} + +/* QCheckBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcheckbox + +--------------------------------------------------------------------------- */ +QCheckBox { + color: white; + padding: 0px; + outline: none; + border: 1px solid transparent; + background-color: transparent; +} + +QCheckBox:focus { + border: 1px solid #819700; +} + +QCheckBox QWidget:disabled { + background-color: transparent; + color: #c2c7cb; +} + +QCheckBox::indicator { + color: white; + background-color: #505050; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QCheckBox::indicator:unchecked { + background-color: #505050; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QCheckBox::indicator:unchecked:hover, QCheckBox::indicator:unchecked:focus, QCheckBox::indicator:unchecked:pressed { + background-color: #a1bd00; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QCheckBox::indicator:unchecked:disabled { + background-color: #7F7F7F; + image:url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QCheckBox::indicator:checked { + background-color: #505050; + /*border: 1px solid #696968; /* QRadioButton has the same color */ + image:url(qss:images_dark-light/checkbox_light.svg); +} + +QCheckBox::indicator:checked:hover, QCheckBox::indicator:checked:pressed { + background-color: #a1bd00; +} + +QCheckBox::indicator:checked:disabled { + background-color: #7F7F7F; + image: url(qss:images_dark-light/check_light.svg); +} + +QCheckBox::indicator:indeterminate { + background-color: #505050; + border: 1px solid #696968; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QCheckBox::indicator:indeterminate:disabled { + background-color: #7F7F7F; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QCheckBox::indicator:indeterminate:hover, QCheckBox::indicator:indeterminate:pressed { + background-color: #a1bd00; /* QRadioButton has the same color */ +} + +/* QGroupBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qgroupbox + +--------------------------------------------------------------------------- */ +QGroupBox { + font-weight: bold; + border: 1px solid #696968; + border-radius: 1.9px; + padding: 2px; + margin-top: 10px; + margin-bottom: 4px; +} + +QGroupBox::title { + subcontrol-origin: margin; + subcontrol-position: top left; + left: 4px; + padding-left: 2px; + padding-right: 4px; + padding-top: 6px; +} + +QGroupBox::indicator { + color: white; + background-color: #3c3c3c; + border: 1px solid #696968; + width: 12px; + height: 12px; + border-radius:1px; +} + +QGroupBox::indicator:unchecked { + background-color: #696968; + border: 1px solid #696968; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QGroupBox::indicator:unchecked:hover, QGroupBox::indicator:unchecked:focus, QGroupBox::indicator:unchecked:pressed { + background-color: #a1bd00; +} + +QGroupBox::indicator:unchecked:disabled { + background-color: #505050; + border: 1px solid #696968; +} + +QGroupBox::indicator:checked { + border: none; + image:url(qss:images_dark-light/checkbox_light.svg); +} + +QGroupBox::indicator:checked:hover, QGroupBox::indicator:checked:focus, QGroupBox::indicator:checked:pressed { + background-color: #a1bd00; +} + +QGroupBox::indicator:checked:disabled { + background-color: #a1bd00; +} + +/* QRadioButton ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qradiobutton + +--------------------------------------------------------------------------- */ +QRadioButton { + background-color: transparent; + color: White; + border: none; + spacing: 4px; + padding-top: 4px; + padding-bottom: 4px; + outline: none; +} + +QRadioButton:focus { + border: 1px solid #819700; +} + +QRadioButton:disabled { + background-color: #696968; + color: #353535; +} + +QRadioButton QWidget { + background-color: transparent; + color: White; + spacing: 0px; + padding: 0px; + outline: none; + border: none; +} + +QRadioButton::indicator { + background-color: #3c3c3c; + border: 1px solid #696968; + border-radius: 6px; + margin-left: 0px; + height: 11px; + width: 11px; +} + +QRadioButton::indicator:unchecked { + /*image:url(qss:images_dark-light/radiobutton_light.svg);*/ +} + +QRadioButton::indicator:unchecked:hover, QRadioButton::indicator:unchecked:pressed { + background-color: #a1bd00; + border: 1px solid #a1bd00; + border-radius: 6px; +} + +QRadioButton::indicator:unchecked:disabled { + /*image:url(qss:images_dark-light/radiobutton_dark.svg);*/ + border: 1px solid #696968; +} + +QRadioButton::indicator:checked { + image:url(qss:images_dark-light/radiobutton_light.svg); +} + +QRadioButton::indicator:checked:hover, QRadioButton::indicator:checked:pressed { + background-color: #a1bd00; + border: 1px solid #a1bd00; + border-radius: 6px; + image:url(qss:images_dark-light/radiobutton_light.svg); +} + +QRadioButton::indicator:checked:disabled { + outline: none; + background-color: #696968; + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +/* QMenuBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenubar + +--------------------------------------------------------------------------- */ +QMenuBar { + background-color: #505050; + /*padding: 1px; + border: 0px solid rgba(0,0,0,140);*/ + color: White; + selection-background-color: #a1bd00; +} + +QMenuBar:focus { + border: 1px solid #819700; +} + +QMenuBar::item { + background: transparent; + /*padding-left:5px; + padding-right: 5px; + padding-bottom: 1px; + padding-top: 1px;*/ +} + +QMenuBar::item:selected { + background: transparent; + border: 0px solid #696968; + background-color: #a1bd00; +} + +QMenuBar::item:pressed { + /*padding: 2px; + padding-left: 10px; + padding-right: 10px;*/ + border: 0px solid #696968; + background-color: #a1bd00; + color: White; + /*margin-bottom: 0px; + padding-bottom: 0px;*/ +} + +/* QMenu ------------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenu + +--------------------------------------------------------------------------- */ +QMenu { + border-bottom: 2px rgba(0,0,0,140); + border-right: 2px rgba(0,0,0,140); + color: White; + margin: 0px; + background-color: #505050; + selection-background-color: #a1bd00; +} + +QMenu::separator { + height: 2px; + background-color: #3c3c3c; + margin-left: 30%; + margin-right: 30%; +} + +QMenu::item { + background-color: transparent; + padding: 2px 2px; /* make room for icon at left */ + /* Reserve space for selection border */ + border: 0px transparent #696968; +} + +QMenu::item:selected { + color: White; + background-color: #a1bd00; +} + +QMenu::item:pressed { + background-color: #a1bd00; +} + +QMenu::icon { + margin-left: 5px; + width: 14px; + height: 14px; +} + +QMenu::indicator { + margin-left: 2px; + margin-right: 2px; + padding: 0px; + width: 12px; + height: 12px; + /* non-exclusive indicator = check box style indicator (see QActionGroup::setExclusive) */ + /* exclusive indicator = radio button style indicator (see QActionGroup::setExclusive) */ +} + +QMenu::icon:checked { /* appearance of a 'checked' icon */ + background: #819700; + margin-left: -5px; + border: 5px solid #819700; + position: absolute; + border-radius: 0px; +} +QMenu::indicator:non-exclusive:unchecked { + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:non-exclusive:unchecked:hover, QMenu::indicator:non-exclusive:unchecked:focus, QMenu::indicator:non-exclusive:unchecked:pressed { + border: none; + background: #a1bd00; +} + +QMenu::indicator:non-exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QMenu::indicator:non-exclusive:checked { + image:url(qss:images_dark-light/checkbox_light.svg); +} + +QMenu::indicator:non-exclusive:checked:hover, QMenu::indicator:non-exclusive:checked:focus, QMenu::indicator:non-exclusive:checked:pressed { + border: none; + background: #a1bd00; +} + +QMenu::indicator:non-exclusive:checked:disabled { + image:url(qss:images_dark-light/checkbox_checked_disabled.svg); +} + +QMenu::indicator:non-exclusive:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:disabled { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:focus, QMenu::indicator:non-exclusive:indeterminate:hover, QMenu::indicator:non-exclusive:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QMenu::indicator:exclusive:unchecked { + image: url(qss:images_dark-light/transparent.svg); +} + +QMenu::indicator:exclusive:unchecked:hover, QMenu::indicator:exclusive:unchecked:focus, QMenu::indicator:exclusive:unchecked:pressed { + border: none; + outline: none; + background: #a1bd00; + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:checked { + border: none; + outline: none; + image: url(qss:images_dark-light/radiobutton_light.svg); +} + +QMenu::indicator:exclusive:checked:hover, QMenu::indicator:exclusive:checked:focus, QMenu::indicator:exclusive:checked:pressed { + border: none; + outline: none; + background: #a1bd00; + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:checked:disabled { + outline: none; + image: url(qss:images_dark-light/radiobutton_light.svg); +} + +QMenu::right-arrow { + margin: 5px; + padding-left: 12px; + image:url(qss:images_dark-light/right_arrow_lighter.svg); + height: 12px; + width: 12px; + background-color: transparent; +} + +/* QAbstractItemView ------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QAbstractItemView { + alternate-background-color: #5b5b5b; + color: White; + border: 1px solid #696968; + border-radius: 2px; +} + +QAbstractItemView QLineEdit { + padding: 2px; +} + +/* QAbstractScrollArea ---------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QAbstractScrollArea { + background-color: transparent; + border: 0px solid #696968; + border-radius: 0px; + /* fix #159 */ + padding: 0px; + /* remove min-height to fix #244 */ + color: White; +} + +QAbstractScrollArea:disabled { + color: #353535; +} + +/* QScrollArea ------------------------------------------------------------ + +--------------------------------------------------------------------------- +text input field disabled!!!!*/ +QScrollArea QWidget:disabled { + background-color: #7F7F7F; +} + +/* QScrollBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qscrollbar + +--------------------------------------------------------------------------- */ +QScrollBar:horizontal { + height: 16px; + margin: 2px 8px 2px 8px; + border: 0px solid #696968; + border-radius: 1.9px; + background-color: #7F7F7F; +} + +QScrollBar:vertical { + background-color: #7F7F7F; + width: 16px; + margin: 8px 2px 8px 2px; + border: 0px solid #696968; + border-radius: 1.9px; +} + +QScrollBar::handle:horizontal { + background-color: #696969; + border: 1px solid #7F7F7F; + border-radius: 4px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:hover { + background-color: #a1bd00; + border: #696968; + border-radius: 4px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:focus { + border: 1px solid #819700; +} + +QScrollBar::handle:vertical { + background-color: #696969; + border: 1px solid #696968; + min-height: 8px; + border-radius: 4px; +} + +QScrollBar::handle:vertical:hover { + background-color: #a1bd00; + border: #696968; + border-radius: 4px; + min-height: 8px; +} + +QScrollBar::handle:vertical:focus { + border: 1px solid #819700; +} + +QScrollBar::add-line:horizontal { + border-image: url(qss:images_dark-light/right_arrow_light.svg); + height: 9px; + width: 5px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:horizontal:hover, QScrollBar::add-line:horizontal:on { + border-image: url(qss:images_dark-light/right_arrow_lighter.svg); + height: 9px; + width: 5px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical { + border-image: url(qss:images_dark-light/down_arrow_light.svg); + height: 5px; + width: 9px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical:hover, QScrollBar::add-line:vertical:on { + border-image: url(qss:images_dark-light/down_arrow_lighter.svg); + height: 5px; + width: 9px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/left_arrow_light.svg); + height: 9px; + width: 5px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal:hover, QScrollBar::sub-line:horizontal:on { + border-image: url(qss:images_dark-light/left_arrow_lighter.svg); + height: 9px; + width: 5px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/up_arrow_light.svg); + height: 5px; + width: 9px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical:hover, QScrollBar::sub-line:vertical:on { + background-color: #a1bd00; + border-image: url(qss:images_dark-light/up_arrow_lighter.svg); + height: 5px; + width: 9px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::up-arrow:horizontal, QScrollBar::down-arrow:horizontal { + background: none; +} + +QScrollBar::up-arrow:vertical, QScrollBar::down-arrow:vertical { + background: none; +} + +QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal { + background: none; +} + +QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical { + background: none; +} + +/* QTextEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-specific-widgets + + +report view +--------------------------------------------------------------------------- */ +QTextEdit { + background-color: #7F7F7F; + color: White; + border-radius: 1.9px; + border: 0px solid #696968; +} + +QTextEdit:focus { + border: 1px solid #819700; +} + +QTextEdit:selected { + background: #346792; + color: white; +} + +/* QPlainTextEdit --------------------------------------------------------- +Python +--------------------------------------------------------------------------- */ +QPlainTextEdit { + background-color: #3c3c3c; + color: White; + border-radius: 1.9px; + border: 0px solid #696968; +} + +QPlainTextEdit:focus { + border: 1px solid #819700; +} + +QPlainTextEdit:selected { + background: #a1bd00; + color: White; +} + +/* QSizeGrip -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsizegrip + +--------------------------------------------------------------------------- */ +QSizeGrip { + background: transparent; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/sizegrip_light.svg); +} + +/* QStackedWidget --------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QStackedWidget { + padding: 0px; + border: 0px solid #696968; +} + +/* QToolBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbar + +--------------------------------------------------------------------------- */ +QToolBar { + background-color: #7F7F7F; + border-bottom: 0px solid rgba(0,0,0,120); + padding: 1px; + font-weight: bold; + spacing: 1px; +} + +QToolBar:disabled { + /* Fixes #272 */ + background-color: #7F7F7F; +} + +QToolBar::handle:horizontal { + width: 8px; + margin: 3px 3px; + background-position: top right; + background-repeat: repeat-y; + background-image: url(qss:images_dark-light/Hmovetoolbar_light.svg); +} + +QToolBar::handle:vertical { + height: 8px; + margin: 3px 3px; + background-position: left bottom; + background-repeat: repeat-x; + background-image: url(qss:images_dark-light/Vmovetoolbar_light.svg); +} + +QToolBar::separator:horizontal { + width: 2px; + margin: 4px 4px; + background-color: transparent; +} + +QToolBar::separator:vertical { + height: 2px; + margin: 4px 4px; + background-color: transparent; +} + +/*The "show more" button (it can also be stylable with "QToolBarExtension" icon is not working Qproperty works but breaks when you move the toolbar see also */ +QToolButton#qt_toolbar_ext_button { +margin: 0px; +padding: 0px; +background-color: #696969; +/*background-image: url(qss:images_dark-light/more_light.svg);*/ +background-repeat: none; +background-position: center center; +} + +QToolButton#qt_toolbar_ext_button:hover { +/*background-image: url(qss:images_dark-light/more_light.svg);*/ +background-color: #a1bd00; +} + +QToolButton#qt_toolbar_ext_button:on { +/*background-image: url(qss:images_dark-light/more_light.svg);*/ +border-color: #696968; +background-color: #a1bd00; } -/*================================================================================================== -Text/Python editor (macros, etc...) -==================================================================================================*/ -QPlainTextEdit, -QPlainTextEdit:focus { - background-color: #c8c8c8; - selection-color: white; - selection-background-color: #819c0c; - border: 1px solid #505050; - border-radius: 3px; - margin: 4px; +/* QAbstractSpinBox ------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractSpinBox, +QSpinBox { + background-color: #505050; + border: 1px solid transparent; + color: White; + /* This fixes 103, 111 */ + /* padding-top: 0px; + /* This fixes 103, 111 */ + /*padding-bottom: 0px; + /*padding-left: 4px; + /*padding-right: 4px; + border-radius: 1.9px;*/ + min-height: 1.7em; + /* min-width: 5px; removed to fix 109 */ +} + +QAbstractSpinBox:up-button { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051); + subcontrol-origin: border; + subcontrol-position: top right; + border: 1px solid transparent; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-bottom: -1px;*/ +} + +QAbstractSpinBox::up-arrow, QAbstractSpinBox::up-arrow:disabled, QAbstractSpinBox::up-arrow:off { + image: url(qss:images_dark-light/up_arrow_disabled_light.svg); + /* height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::up-arrow:hover { + image: url(qss:images_dark-light/up_arrow_lighter.svg); +} + +QAbstractSpinBox:down-button { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051); + subcontrol-origin: border; + subcontrol-position: bottom right; + border: 1px solid transparent; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-top: -1px;*/ +} + +QAbstractSpinBox::down-arrow, QAbstractSpinBox::down-arrow:disabled, QAbstractSpinBox::down-arrow:off { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + /*height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::down-arrow:hover { + image: url(qss:images_dark-light/down_arrow_lighter.svg); +} + +QAbstractSpinBox:hover { + /*border: 1px solid #a1bd00; + color: White;*/ +} + +QAbstractSpinBox:focus { + border: 1px solid #819700; +} + +QAbstractSpinBox:selected { + background: #819700; + /*color: White;*/ +} + +/* ------------------------------------------------------------------------ */ +/* DISPLAYS --------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QLabel ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe + +--------------------------------------------------------------------------- */ +QLabel { + background-color: transparent; + border: 0px solid #696968; + padding: 2px; + margin: 0px; + color: White; +} + +QLabel:disabled { + background-color: transparent; + border: 0px solid #696968; + color: #c2c7cb; +} + +QLabel[haslink="true"] { + color: orange; +} + + +/* QTextBrowser ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QTextBrowser { + background-color: #505050; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; +} + +QTextBrowser:disabled { + background-color: #7F7F7F; + border: 1px solid #696968; + color: #c2c7cb; + border-radius: 1.9px; +} + +QTextBrowser:hover, QTextBrowser:!hover, QTextBrowser:selected, QTextBrowser:pressed { + border: 1px solid #a1bd00; +} + +/* QGraphicsView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QGraphicsView { + background-color: transparent; + border: 0px solid #a1bd00; + color: White; + border-radius: 0px; +} + +QGraphicsView:disabled { + background-color: #505050; + border: 0px solid #696968; + color: #c2c7cb; + border-radius: 0px; +} + +QGraphicsView:hover, QGraphicsView:!hover, QGraphicsView:selected, QGraphicsView:pressed { + border: 0px solid #ff00f7; +} + +/* QCalendarWidget -------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCalendarWidget { + border: 1px solid #696968; + border-radius: 1.9px; +} + +QCalendarWidget:disabled { + background-color: #353535; + color: #c2c7cb; +} + +/* QLCDNumber ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QLCDNumber { + background-color: #1aff00; + color: White; +} + +QLCDNumber:disabled { + background-color: #7F7F7F; + color: #c2c7cb; +} + +/* QProgressBar ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qprogressbar + +--------------------------------------------------------------------------- */ +QProgressBar { + background-color: #c2c7cb; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar:disabled { + background-color: #505050; + border: 1px solid #696968; + color: #696969; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar::chunk { + background-color: #a1bd00; + color: #7F7F7F; + border-radius: 1.9px; +} + +QProgressBar::chunk:disabled { + background-color: #505050; + color: #696968; + border-radius: 1.9px; +} + +/* ------------------------------------------------------------------------ */ +/* BUTTONS ---------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QPushButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qpushbutton + +--------------------------------------------------------------------------- */ +QPushButton { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051); + color: White; + border: 1px solid #505051; + border-bottom-color: #1e1e1e; /* simulates shadow under the button */ + border-radius: 4px; + padding: 2px; +} + +QPushButton:disabled { + background-color: #7F7F7F; + color: #c2c7cb; + +} + +QPushButton:checked { + background-color: #a1bd00; + outline: none; +} + +QPushButton:checked:disabled { + background-color: #a1bd00; + color: #3c3c3c; + outline: none; +} + +QPushButton:checked:selected { + background: #a1bd00; +} + +QPushButton:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #a1bd00, stop:1 #819700); + color: White; +} + +QPushButton:pressed { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #819700, stop:1 #a1bd00); +} + +QPushButton:selected { + background: #819700; + color: White; +} + +QPushButton::menu-indicator { + subcontrol-origin: padding; + subcontrol-position: bottom right; + bottom: 4px; +} + +QDialogButtonBox QPushButton { + /* Issue # 194 # 248 - Special case of QPushButton inside dialogs, for better UI */ + min-width: 80px; +} + +/* QToolButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbutton + +--------------------------------------------------------------------------- */ +QToolButton { + background-color: transparent; + color: White; + border-radius: 1px; + padding: 0px; + outline: none; + border: none; + /* The subcontrols below are used only in the DelayedPopup mode */ + /* The subcontrols below are used only in the MenuButtonPopup mode */ + /* The subcontrol below is used only in the InstantPopup or DelayedPopup mode */ +} + +QToolButton:disabled { + background-color: rgba(0, 0, 0, 0.065); + color: #c2c7cb; + border-radius: 1px; + padding: 0px; +} + +QToolButton:checked { + background-color: #a1bd00; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:disabled { + background-color: #b65555; + color: #c2c7cb; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:hover { + background-color: #a1bd00; + color: White; +} + +QToolButton:checked:pressed { + background-color: #a1bd00; +} + +QToolButton:checked:selected { + background: #819700; + color: White; +} + +QToolButton:hover { + background-color: #a1bd00; + color: White; +} + +QToolButton:pressed { + background-color: #819700; +} + +QToolButton:selected { + background: #a1bd00; + color: White; +} + +QToolButton[popupMode="0"] { + /* Only for DelayedPopup */ + padding-right: 20px; +} + +QToolButton[popupMode="1"] { + /* Only for MenuButtonPopup */ + padding-right: 20px; +} +QToolButton[popupMode="0"]::menu-button { + border: none; +} + +QToolButton[popupMode="0"]::menu-button:hover { + border: none; + border-left: 2px solid #fe0000; + border-radius: 0px; +} +QToolButton[popupMode="1"]::menu-button { + border: none; +} + +QToolButton[popupMode="1"]::menu-button:hover { + border: none; + border-left: 2px solid #e5ff00; + border-radius: 0px; +} + +QToolButton[popupMode="2"] { + /* Only for InstantPopup */ + padding-right: 20px; +} + +QToolButton::menu-button { + border-bottom: 0px solid #ffffff; + border-radius: 2px; + /* 16px width + 4px for border = 20px allocated above */ + width: 1.6ex; + padding: 2px; + border-radius: 2px; + border: 0px #000000; +} + +QToolButton::menu-button:hover { + /* background: rgba(0, 0, 0, 0.5);*/ + +} + +QToolButton::menu-button:checked:hover { + /* background: rgba(0, 0, 0, 0.5);*/ +} + +QToolButton::menu-indicator { + /* Exclude a shift for better image */ + subcontrol-position: right bottom; + /* Shift it a bit */ +} + +QToolButton::menu-arrow { + image: url(qss:images_dark-light/more_arrow_light.svg); + width: 1.5ex; + height: 1.5ex; + subcontrol-position: right bottom; + background: transparent; +} +QToolButton::menu-arrow:open { + subcontrol-position: right bottom; + image: url(qss:images_dark-light/more_arrow_light.svg); +} +QToolButton::menu-arrow:hover { + image: url(qss:images_dark-light/more_arrow_light.svg); + background-color: rgba(0, 0, 0, 0.498); + border: 1px solid rgba(0, 0, 0, 0.498); +} + +/* QCommandLinkButton ----------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCommandLinkButton { + background-color: transparent; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; + padding: 0px; + margin: 0px; +} + +QCommandLinkButton:disabled { + background-color: transparent; + color: #c2c7cb; +} + +/* ------------------------------------------------------------------------ */ +/* INPUTS - NO FIELDS ----------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QComboBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QComboBox { + border: 1px solid transparent; + background: #505050; + border-radius: 2px; + selection-background-color: #a1bd00; + padding-left: 2px; + padding-right: 2px; + /* padding-right = 36; 4 + 16*2 See scrollbar size */ + /* changed to 4px to fix #239 */ + /* Fixes #103, #111 */ + min-height: 1.5em; + /* padding-top: 2px; removed to fix #132 */ + /* padding-bottom: 2px; removed to fix #132 */ + /* min-width: 75px; removed to fix #109 */ + /* Needed to remove indicator - fix #132 */ +} +QComboBox:editable { + background: #505050; +} +QComboBox QAbstractItemView { + border: 0px solid #696968; + border-radius: 0px; + background-color: #505050; + selection-background-color: #a1bd00; +} + +QComboBox QAbstractItemView:hover { + background-color:#505050; + color: White; +} + +QComboBox QAbstractItemView:selected { + background: #a1bd00; + color: White; +} + +QComboBox QAbstractItemView:alternate { + background: #3c3c3c; +} + +QComboBox:disabled { + background-color: #7F7F7F; + color: #353535; +} + +QComboBox:hover { + /*background-color: #a1bd00;*/ + border: 1px solid #a1bd00; +} + +QComboBox:focus { + border: 1px solid #819700; +} + +QComboBox:on { + selection-background-color: #819700; +} + +QComboBox::indicator { + border: none; + border-radius: 0px; + background-color: transparent; + selection-background-color: transparent; + color: transparent; + selection-color: #a1bd00; + /* Needed to remove indicator - fix #132 */ +} + +QComboBox::indicator:alternate { + background: #696968; +} + +QComboBox::item { + /* Remove to fix #282, #285 and MR #288*/ + /*&:checked { + font-weight: bold; + } + + &:selected { + border: 0px solid transparent; + } + */ +} + +QComboBox::item:alternate { + background: #3c3c3c; +} + +QComboBox::drop-down { + subcontrol-origin: padding; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051); + subcontrol-position: top right; + width: 14px; + border-left: 1px solid transparent; +} +QComboBox::drop-down:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #a1bd00, stop:1 #819700); +} + +QComboBox::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + height: 10px; + width: 10px; +} + +QComboBox::down-arrow:on, QComboBox::down-arrow:hover, QComboBox::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_lighter.svg); } /*================================================================================================== Tasks panel (custom FreeCAD class) ==================================================================================================*/ +Gui--PropertyEditor--PropertyEditor { + qproperty-groupTextColor: white; + qproperty-groupBackground: #3c3c3c; + border: 0px solid #696968; + +} + /* Action group */ QFrame[class="panel"] { - background-color: transparent; /* temporal (transparent background) */ +background-color: transparent; /* temporal (transparent background) */ + } QSint--ActionGroup { - padding: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ - margin: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +padding: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +margin: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ } /* Separator line */ @@ -1067,1252 +1497,1037 @@ QSint--ActionGroup QFrame[height="3"], QSint--ActionGroup QFrame[width="1"], QSint--ActionGroup QFrame[width="2"], QSint--ActionGroup QFrame[width="3"] { - border-color: rgba(0,0,0,60); +border-color: rgba(0,0,0,60); } /* Panel header */ QSint--ActionGroup QFrame[class="header"] { - border: none; - background-color: #505050; /* Task Panel Header background color */ - border-top-left-radius: 3px; - border-top-right-radius: 3px; - border-bottom-left-radius: 0px; - border-bottom-right-radius: 0px; - margin: 0px; - padding: 0px; +border-top: 1px solid #696968; +border-left: 1px solid #696968; +border-right: 1px solid #696968; +background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051); +border-top-left-radius: 3px; +border-top-right-radius: 3px; +border-bottom-left-radius: 0px; +border-bottom-right-radius: 0px; +margin: 0px; +padding: 0px; } QSint--ActionGroup QFrame[class="header"]:hover { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #94b30f, stop:1 #819c0c); +background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #a1bd00, stop:1 #819700); } QSint--ActionGroup QToolButton[class="header"] { - color: #e0e0e0; /* Task Panel Header text color */ - text-align: left; - font-weight: bold; - border: none; - margin: 0px; - padding: 0px; +color: white; /* Task Panel Header text color */ +text-align: left; +font-weight: bold; +border: none; +margin: 0px; +padding: 0px; } QSint--ActionGroup QFrame[class="header"] QLabel { - background-color: transparent; - background-image: url(qss:images_dark-light/down_arrow_light.svg); - background-repeat: none; - background-position: center center; - padding: 0px; - margin: 0px; +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_light.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; } QSint--ActionGroup QFrame[class="header"] QLabel:hover { - background-color: transparent; - background-image: url(qss:images_dark-light/down_arrow_lighter.svg); +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_lighter.svg); } QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"] { - background-color: transparent; - background-image: url(qss:images_dark-light/up_arrow_light.svg); - background-repeat: none; - background-position: center center; - padding: 0px; - margin: 0px; +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_light.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; } QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"]:hover { - background-color: transparent; - background-image: url(qss:images_dark-light/up_arrow_lighter.svg); +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_lighter.svg); } QSint--ActionGroup QFrame[class="content"] { - background-color: #8c8c8c; /* Task Panel background color */ - margin: 0px; - padding: 0px; - border: none; - border-top-left-radius: 0px; - border-top-right-radius: 0px; - border-bottom-left-radius: 3px; - border-bottom-right-radius: 3px; +background-color: transparent; /* Task Panel background color */ +margin: 0px; +padding: 0px; +border-bottom: 1px solid #696968; +border-left: 1px solid #696968; +border-right: 1px solid #696968; +border-top-left-radius: 0px; +border-top-right-radius: 0px; +border-bottom-left-radius: 3px; +border-bottom-right-radius: 3px; } QSint--ActionGroup QFrame[class="content"] > QWidget { - background-color: #8c8c8c; /* Task Panel background color */ +background-color: #7F7F7F; /* Task Panel background color */ } /* Fixs for tabs inside Task Panel */ QSint--ActionGroup QFrame[class="content"] QTabBar::tab:top:selected { - border-bottom-color: #8c8c8c; /* same as Task Panel background color */ +border-bottom-color: #a1bd00; /* same as Task Panel background color */ } QSint--ActionGroup QFrame[class="content"] QTabBar::tab:bottom:selected { - border-top-color: #8c8c8c; /* same as Task Panel background color */ +border-top-color: #a1bd00; /* same as Task Panel background color */ } QSint--ActionGroup QFrame[class="content"] QTabBar::tab:right:selected { - border-right-color: #8c8c8c; /* same as Task Panel background color */ +border-right-color: #a1bd00; /* same as Task Panel background color */ } QSint--ActionGroup QFrame[class="content"] QTabBar::tab:left:selected { - border-left-color: #8c8c8c; /* same as Task Panel background color */ +border-left-color: #a1bd00; /* same as Task Panel background color */ } /* Fix for buttons with icons that showed cropped (still not happy with result) */ QSint--ActionGroup QFrame[class="content"] > QWidget > QPushButton { - padding: 2px; /* bigger padding crops text and icons... */ - margin: 0px; +padding: 2px; /* bigger padding crops text and icons... */ +margin: 0px; } -/* Fix for lists inside task panels */ -/* QSint--ActionGroup QFrame[class="content"] QTreeView, +/* Fix for lists inside task panels */ /* sketcher constraints list */ +QSint--ActionGroup QFrame[class="content"] QTreeView, QSint--ActionGroup QFrame[class="content"] QListView, QSint--ActionGroup QFrame[class="content"] QTableView { - color: #f5f5f5; - background-color: #787878; -} */ - - -/*================================================================================================== -Buttons -==================================================================================================*/ -/* Common */ -QComboBox, -QAbstractSpinBox, -QSpinBox, -QDoubleSpinBox, -QLineEdit, -QTextEdit, -QTimeEdit, -QDateEdit, -QDateTimeEdit { - color: #bebebe; - background-color: #5a5a5a; - selection-color: white; - selection-background-color: #819c0c; - border: 1px solid #5a5a5a; - border-radius: 3px; - min-width: 50px; /* it ensures the default value is correctly displayed */ - min-height: 20px; /* important to be a pair number in order to up/down buttons to be divisible by two (if not set could create a blank line in Ubuntu. Its downside is that it's needed to reset it (min-width: 0px) on following elements that can't have it such as fields inside QToolBar and inside QTreeView (Property editor) */ - padding: 1px 2px; /* temporal: could don't be compatible with elements inside Tree/List view */ -} - -/* more contrast for QTexEdits */ -QTextEdit { - color: black; -} - -/* shifts text/number editable field to the left to make space for the up/down or drop-down buttons */ -QComboBox, -QAbstractSpinBox, -QSpinBox, -QDoubleSpinBox, -QTimeEdit, -QDateEdit, -QDateTimeEdit { - padding-right: 20px; -} - -/* when QTextEdit are no editable (like Report view)*/ -QTextEdit:!editable, -QTextEdit:!editable:focus { - background-color: #c8c8c8; - border: 1px solid #505050; -} - -QComboBox:focus, -QAbstractSpinBox:focus, -QSpinBox:focus, -QDoubleSpinBox:focus, -QLineEdit:focus, -QTextEdit:focus, -QTimeEdit:focus, -QDateEdit:focus, -QDateTimeEdit:focus { - color: black; - border-color: #a5c61a; - border-right-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #94b30f, stop:1 #a5c61a); /* same as up/down or drop-down button color */ - background-color: #dadfc5; -} - -QComboBox:disabled, -QAbstractSpinBox:disabled, -QSpinBox:disabled, -QDoubleSpinBox:disabled, -QLineEdit:disabled, -QTextEdit:disabled, -QTimeEdit:disabled, -QDateEdit:disabled, -QDateTimeEdit:disabled { - color: #787878; - background-color: #5a5a5a; /* same as enabled color */ - border-color: #5a5a5a; /* same as enabled color */ -} - -QAbstractSpinBox:up-button, -QSpinBox:up-button, -QDoubleSpinBox:up-button, -QTimeEdit:up-button, -QDateEdit:up-button, -QDateTimeEdit:up-button, -QAbstractSpinBox:down-button, -QSpinBox:down-button, -QDoubleSpinBox:down-button, -QTimeEdit:down-button, -QDateEdit:down-button, -QDateTimeEdit:down-button { - background-color: #505050; /* same color for QComboBox background-color */ - subcontrol-origin: border; /* important */ - width: 20px; /* same as QComboBox ... QDateTimeEdit padding-right */ -} - -QAbstractSpinBox:up-button, -QSpinBox:up-button, -QDoubleSpinBox:up-button, -QTimeEdit:up-button, -QDateEdit:up-button, -QDateTimeEdit:up-button { - subcontrol-position: top right; - border-top-right-radius: 3px; -} - -QAbstractSpinBox:down-button, -QSpinBox:down-button, -QDoubleSpinBox:down-button, -QTimeEdit:down-button, -QDateEdit:down-button, -QDateTimeEdit:down-button { - subcontrol-position: bottom right; - border-bottom-right-radius: 3px; -} - -QAbstractSpinBox:up-button:focus, -QSpinBox:up-button:focus, -QDoubleSpinBox:up-button:focus, -QTimeEdit:up-button:focus, -QDateEdit:up-button:focus, -QDateTimeEdit:up-button:focus { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #9bbc12, stop:1 #a5c61a); -} - -QAbstractSpinBox:down-button:focus, -QSpinBox:down-button:focus, -QDoubleSpinBox:down-button:focus, -QTimeEdit:down-button:focus, -QDateEdit:down-button:focus, -QDateTimeEdit:down-button:focus { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #94b30f, stop:1 #9bbc12); -} - -QAbstractSpinBox:up-button:disabled, -QSpinBox:up-button:disabled, -QDoubleSpinBox:up-button:disabled, -QTimeEdit:up-button:disabled, -QDateEdit:up-button:disabled, -QDateTimeEdit:up-button:disabled, -QAbstractSpinBox:down-button:disabled, -QSpinBox:down-button:disabled, -QDoubleSpinBox:down-button:disabled, -QTimeEdit:down-button:disabled, -QDateEdit:down-button:disabled, -QDateTimeEdit:down-button:disabled { - background-color: transparent; -} - -QAbstractSpinBox::up-arrow, -QSpinBox::up-arrow, -QDoubleSpinBox::up-arrow, -QTimeEdit::up-arrow, -QDateEdit::up-arrow, -QDateTimeEdit::up-arrow { - image: url(qss:images_dark-light/up_arrow_light.svg); - top: 2px; /* fix symmetry between up and down images */ -} - -QAbstractSpinBox::up-arrow:focus, -QSpinBox::up-arrow:focus, -QDoubleSpinBox::up-arrow:focus, -QTimeEdit::up-arrow:focus, -QDateEdit::up-arrow:focus, -QDateTimeEdit::up-arrow:focus { - image: url(qss:images_dark-light/up_arrow_lighter.svg); -} - -QAbstractSpinBox::up-arrow:off, -QSpinBox::up-arrow:off, -QDoubleSpinBox::up-arrow:off, -QTimeEdit::up-arrow:off, -QDateEdit::up-arrow:off, -QDateTimeEdit::up-arrow:off { - image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); -} - -QAbstractSpinBox::up-arrow:disabled, -QSpinBox::up-arrow:disabled, -QDoubleSpinBox::up-arrow:disabled, -QTimeEdit::up-arrow:disabled, -QDateEdit::up-arrow:disabled, -QDateTimeEdit::up-arrow:disabled { - image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); -} - -QAbstractSpinBox::down-arrow, -QSpinBox::down-arrow, -QDoubleSpinBox::down-arrow, -QTimeEdit::down-arrow, -QDateEdit::down-arrow, -QDateTimeEdit::down-arrow { - image: url(qss:images_dark-light/down_arrow_light.svg); - bottom: 0px; /* fix simetry between up and down images */ -} - -QAbstractSpinBox::down-arrow:focus, -QSpinBox::down-arrow:focus, -QDoubleSpinBox::down-arrow:focus, -QTimeEdit::down-arrow:focus, -QDateEdit::down-arrow:focus, -QDateTimeEdit::down-arrow:focus { - image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -QAbstractSpinBox::down-arrow:off, -QSpinBox::down-arrow:off, -QDoubleSpinBox::down-arrow:off, -QTimeEdit::down-arrow:off, -QDateEdit::down-arrow:off, -QDateTimeEdit::down-arrow:off { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - -QAbstractSpinBox::down-arrow:disabled, -QSpinBox::down-arrow:disabled, -QDoubleSpinBox::down-arrow:disabled, -QTimeEdit::down-arrow:disabled, -QDateEdit::down-arrow:disabled, -QDateTimeEdit::down-arrow:disabled { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - -/* ComboBox */ - -QComboBox::drop-down { - background-color: #505050; /* same color as up/down QSpinBox ... QDateTimeView background-color */ - subcontrol-origin: border; /* important */ - subcontrol-position: top right; - width: 20px; - border-top-right-radius: 3px; - border-bottom-right-radius: 3px; -} - -QComboBox::drop-down:on, -QComboBox::drop-down:focus { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #94b30f, stop:1 #a5c61a); -} - -QComboBox::down-arrow { - image: url(qss:images_dark-light/down_arrow_light.svg); -} - -QComboBox::down-arrow:on, -QComboBox::down-arrow:focus { - image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -QComboBox::down-arrow:off, -QComboBox::down-arrow:disabled { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - -/* ComboBox menu */ -QComboBox { - selection-color: white; - selection-background-color: #94b30f; -} - -QComboBox QAbstractItemView { - color: #bebebe; /* same as regular QComboBox color */ - background-color: transparent; - selection-color: white; - selection-background-color: #94b30f; - border-width: 5px 0px 5px 0px; - border-style: solid; - border-color: transparent; - margin: 0px -1px 0px 0px; /* hack for Mac... try it on Windows and Linux */ +color: white; +background-color: #505050; } -/*================================================================================================== -Push button -==================================================================================================*/ -QPushButton { - color: #e0e0e0; - text-align: center; - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #6e6e6e, stop:1 #646464); - border: 1px solid #5a5a5a; - border-bottom-color: #505050; /* simulates shadow under the button */ - padding: 4px 22px; - margin: 4px 4px; - min-height: 16px; /* same as QTabBar QPushButton min-width */ - border-radius: 4px; -} - -QPushButton:hover, -QPushButton:focus { - color: white; - border-color: #819c0c; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #94b30f, stop:1 #819c0c); -} - -QPushButton:disabled, -QPushButton:disabled:checked { - color: #787878; - background-color: #5a5a5a; /* same as enabled color */ - border-color: #5a5a5a; /* same as enabled color */ -} - -QPushButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #819c0c, stop:1 #94b30f); -} - -QPushButton:checked { - background-color: #94b30f; - border-color: #819c0c; -} - -/* Color Buttons */ -Gui--ColorButton, -Gui--ColorButton:disabled { - padding: 0px; /* reset */ - margin: 0px; /* reset */ -} - -Gui--ColorButton { - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #6e6e6e, stop:1 #646464); - border: 1px solid #5a5a5a; - border-bottom-color: #505050; /* simulates shadow under the button */ -} - -Gui--ColorButton:disabled { - border-color: transparent; - background-color: rgba(0,0,0,10); -} - -Gui--ColorButton:hover, -Gui--ColorButton:focus { - border-color: #819c0c; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #94b30f, stop:1 #819c0c); -} - -Gui--ColorButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #819c0c, stop:1 #94b30f); -} - -/* Pushbutton style for "..." inside Placement cell which launches Placement tool */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QPushButton, -Gui--PropertyEditor--PropertyEditor > QWidget > QPushButton { - background-color: #6e6e6e; - border: 1px solid #5a5a5a; - min-width: 16px; /* reset it due to larger value on regular QPushButton, same or bigger value as regular QPushButton min-height */ - border-radius: 0px; - margin: 0px; /* reset */ - padding: 0px; /* reset */ -} - -Gui--PropertyEditor--PropertyEditor > QWidget > QPushButton { - text-align:left; - padding-left: 2px; -} - -/* Fix for Expressions description QFrame that is "broken" with initial reset */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QWidget > QWidget > QFrame { - background-color: #6e6e6e; /* main background color */ - border: 1px solid #5a5a5a; - border-radius: 2px; - padding: 2px 6px; -} - -QPushButton:checked { - background-color: #94b30f; - border-color: #819c0c; -} - -/*================================================================================================== -Tool button Icon fix in save dialogs -==================================================================================================*/ -/* found under Tools -> Save Picture */ /* Draft -> ShapeString -> Font file */ - -QFileDialog#QFileDialog QToolButton { - background-color: transparent; - padding: 1px; - border: 1px; - margin: 0px; -} - -/*================================================================================================== -Tool button inside QDialogs that works as QPushButtons -==================================================================================================*/ -/* found under Tools -> Customize -> Macros -> Pixmap "..." button */ -QDialog QToolButton { - color: #e0e0e0; - text-align: center; - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #6e6e6e, stop:1 #646464); - border: 1px solid #5a5a5a; - border-bottom-color: #505050; /* simulates shadow under the button */ - padding: 0px; /* different than regular QPushButton */ - margin: 2px; /* different than regular QPushButton */ - min-height: 16px; /* same as QTabBar QPushButton min-width */ - border-radius: 4px; -} - -QDialog QToolButton:hover, -QDialog QToolButton:focus { - color: white; - border-color: #819c0c; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #94b30f, stop:1 #819c0c); -} - -QDialog QToolButton:disabled, -QDialog QToolButton:disabled:checked { - color: #6e6e6e; - border-color: #5a5a5a; - background-color: #5a5a5a; -} - -QDialog QToolButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #819c0c, stop:1 #94b30f); -} - - -/*================================================================================================== -Tool button inside Task Panel content that works as QPushButtons -==================================================================================================*/ /* found inside Part Design Workbench and "make a draft on a face" Task panel options */ QSint--ActionGroup QFrame[class="content"] QToolButton { - color: #e0e0e0; - text-align: center; - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #6e6e6e, stop:1 #646464); - border: 1px solid #5a5a5a; - border-bottom-color: #505050; /* simulates shadow under the button */ - padding: 2px 6px; /* different than regular QPushButton */ - margin: 2px; /* different than regular QPushButton */ - min-height: 16px; /* same as QTabBar QPushButton min-width */ - border-radius: 4px; + color: white; + text-align: center; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051); + border: 0px solid #adadad; + padding: 1px 1px; /* different than regular QPushButton */ + margin: 0px; /* different than regular QPushButton */ + min-height: 16px; /* same as QTabBar QPushButton min-width */ + border-radius: 1px; } -QSint--ActionGroup QFrame[class="content"] QToolButton:hover, +QSint--ActionGroup QFrame[class="content"] QToolButton:hover{ + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #a1bd00, stop:1 #819700); + +} QSint--ActionGroup QFrame[class="content"] QToolButton:focus { - color: white; - border-color: #819c0c; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #94b30f, stop:1 #819c0c); + border: 1px solid #819700; } QSint--ActionGroup QFrame[class="content"] QToolButton:disabled, QSint--ActionGroup QFrame[class="content"] QToolButton:disabled:checked { - color: #6e6e6e; - border-color: #5a5a5a; - background-color: #5a5a5a; + color: #696969; + background-color: #505050; } QSint--ActionGroup QFrame[class="content"] QToolButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #819c0c, stop:1 #94b30f); + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #a1bd00, stop:1 #819700); + } -/* QToolButtons with a menu found in Sketcher task panel*/ -QSint--ActionGroup QToolButton::menu-button { - border: none; - border-top-right-radius: 4px; - border-bottom-right-radius: 4px; - padding: 2px; - width: 16px; /* 16px width + 4px for border = 20px allocated above */ - outline: none; - background-color: transparent; +/* QSlider ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qslider + +--------------------------------------------------------------------------- */ +QSlider:disabled { + background: #7F7F7F; } -QSint--ActionGroup QToolButton#settingsButton, -QSint--ActionGroup QToolButton#filterButton, -QSint--ActionGroup QToolButton#manualUpdate { - padding-right: 20px; /* make way for the popup button */ -} - -/* to give widget inside the menu same look as regular menu */ -QSint--ActionGroup QToolButton#filterButton QListWidget { - color: #e0e0e0; - background-color: #5a5a5a; - padding: 0px; - margin: 0px; -} - - -/*================================================================================================== -Radio button -==================================================================================================*/ -QRadioButton::indicator:unchecked{ - color: black; - background-color: rgba(255,255,255,20); - border: 1px solid #5a5a5a; -} - -QRadioButton::indicator:checked { - background-color: #94b30f; /* QCheckBox has the same color */ - border: 1px solid #819c0c; /* QCheckBox has the same color */ - image:url(qss:images_dark-light/radiobutton_light.svg); -} - -QRadioButton, -QRadioButton:disabled { - color: black; - padding: 3px; - outline: none; - background-color: transparent; -} - -QRadioButton::indicator { - width: 11px; - height: 11px; - border-radius: 6px; -} - -QRadioButton::indicator:pressed { - border-color: #c5d675; -} - -QRadioButton::indicator:disabled { - color: #f5f5f5; - background-color: transparent; - border: 1px solid #f5f5f5; -} - -QRadioButton:focus { - border: none; -} - - -/*================================================================================================== -Checkbox -==================================================================================================*/ -QCheckBox, -QCheckBox:disabled { - color: black; - padding: 3px; - outline: none; - background-color: transparent; -} - -QCheckBox::indicator, -QGroupBox::indicator { - color: black; - background-color: rgba(255,255,255,20); - border: 1px solid #5a5a5a; - width: 11px; - height: 11px; - border-radius:2px; -} - -QCheckBox::indicator:pressed, -QCheckBox::indicator:non-exclusive:checked:pressed, -QCheckBox::indicator:indeterminate:pressed, -QCheckBox::indicator:checked:pressed, -QGroupBox::indicator:pressed, -QGroupBox::indicator:non-exclusive:checked:pressed, -QGroupBox::indicator:indeterminate:pressed, -QGroupBox::indicator:checked:pressed { - border-color: #c5d675; -} - -QCheckBox::indicator:checked, -QGroupBox::indicator:checked { - background-color: #94b30f; /* QRadioButton has the same color */ - border: 1px solid #819c0c; /* QRadioButton has the same color */ - image:url(qss:images_dark-light/checkbox_light.svg); -} - -QCheckBox:disabled { - color: rgba(255,255,255,40); - background-color: transparent; -} - -QCheckBox::indicator:disabled, -QGroupBox::indicator:disabled { - background-color: rgba(255,255,255,20); - border: 1px solid rgba(255,255,255,20); -} - -QCheckBox::indicator:indeterminate, -QGroupBox::indicator:indeterminate { - background-color: #94b30f; - border: 1px solid #819c0c; - image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); -} - -QCheckBox:focus { - border: none; -} - - -/*================================================================================================== -Checkboxes inside QListWidget and QTreeView -==================================================================================================*/ -QListWidget::indicator, -QTreeView::indicator { - color: #c8c8c8; - background-color: rgba(255,255,255,20); - border: 1px solid #5a5a5a; - width: 11px; - height: 11px; - border-radius:2px; -} - -/* fix for QTreeView::indicator losing its margin */ -QTreeView::indicator { - margin: 3px; -} - -QListWidget::indicator:selected, -QTreeView::indicator:selected { - background-color: #e6e6e6; -} - -QListWidget::indicator:checked:selected, -QListWidget::indicator:indeterminate:selected, -QTreeView::indicator:checked:selected, -QTreeView::indicator:indeterminate:selected { - background-color: #a5c61a; /* slightly lighter than default */ - border-color: #74831d; /* slightly darker than default */ -} - -QListWidget::indicator:pressed, -QListWidget::indicator:non-exclusive:checked:pressed, -QListWidget::indicator:indeterminate:pressed, -QListWidget::indicator:checked:pressed, -QTreeView::indicator:pressed, -QTreeView::indicator:non-exclusive:checked:pressed, -QTreeView::indicator:indeterminate:pressed, -QTreeView::indicator:checked:pressed { - border-color: #c5d675; -} - -QListWidget::indicator:checked, -QTreeView::indicator:checked { - background-color: #94b30f; /* QRadioButton has the same color */ - border: 1px solid #819c0c; /* QRadioButton has the same color */ - image:url(qss:images_dark-light/checkbox_light.svg); -} - -QListWidget::indicator:disabled, -QTreeView::indicator:disabled { - background-color: rgba(255,255,255,20); - border: 1px solid rgba(255,255,255,20); -} - -QListWidget::indicator:indeterminate, -QTreeView::indicator:indeterminate { - background-color: #94b30f; - border: 1px solid #819c0c; - image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); -} - - -/*================================================================================================== -Slider -==================================================================================================*/ -QSlider, -QSlider:active, -QSlider:!active { - border: none; - background-color: transparent; -} - -QSlider:horizontal { - padding: 0px 10px; -} - -QSlider:vertical { - padding: 10px 0px; -} - -QSlider::groove { - background-color: rgba(0,0,0,30); - border: 1px solid rgba(0,0,0,40); - border-radius: 5px; - margin: 4px 0px; +QSlider:focus { + border: 1px solid #819700; } QSlider::groove:horizontal { - height: 8px; + background: #7F7F7F; + border: 1px solid #696968; + height: 4px; + margin: 0px; + border-radius: 1.9px; } QSlider::groove:vertical { - width: 8px; + background: #a1bd00; + border: 1px solid #696968; + width: 4px; + margin: 0px; + border-radius: 1.9px; } -QSlider::groove:horizontal:disabled, -QSlider::groove:vertical:disabled { - border-color: #5a5a5a; - background-color: #5a5a5a; +QSlider::add-page:vertical { + background: #a1bd00; + border: 1px solid #696968; + width: 4px; + margin: 0px; + border-radius: 1.9px; } -QSlider::handle:horizontal, -QSlider::handle:vertical { - background-color: #505050; - border: 1px solid #505050; - width: 14px; - height: 14px; - border-radius: 8px; +QSlider::add-page:vertical :disabled { + background: #696968; +} + +QSlider::sub-page:horizontal { + background: #a1bd00; + border: 1px solid #0073ff; + height: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::sub-page:horizontal:disabled { + background: #a1bd00; } QSlider::handle:horizontal { - margin: -4px 0; + background: #353535; + border: 1px solid #7F7F7F; + width: 8px; + height: 8px; + margin: -8px 0px; + border-radius: 1.9px; +} + +QSlider::handle:horizontal:hover { + background: #a1bd00; + border: 1px solid #a1bd00; +} + +QSlider::handle:horizontal:focus { + border: 1px solid #819700; } QSlider::handle:vertical { - margin: 0 -4px; + background: #c2c7cb; + border: 1px solid #696968; + width: 8px; + height: 8px; + margin: 0 -8px; + border-radius: 1.9px; } -QSlider::handle:horizontal:hover, -QSlider::handle:vertical:hover, -QSlider::handle:horizontal:pressed, -QSlider::handle:vertical:pressed { - border-color: #94b30f; - background-color: #94b30f; +QSlider::handle:vertical:hover { + background: #a1bd00; + border: 2px solid #a1bd00; } -QSlider::handle:horizontal:disabled, -QSlider::handle:vertical:disabled { - border-color: #5a5a5a; - background-color: #5a5a5a; +QSlider::handle:vertical:focus { + border: 1px solid #819700; +} + +/* QLineEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlineedit + +--------------------------------------------------------------------------- */ +QLineEdit { + background-color: #505050; + padding-top: 2px; + /* This QLineEdit fix 103, 111 */ + padding-bottom: 2px; + /* This QLineEdit fix 103, 111 */ + padding-left: 4px; + padding-right: 4px; + border-style: solid; + border: 1px solid #696968; + border-radius: 2px; + color: White; +} + +QLineEdit:disabled { + background-color: #7F7F7F; + color: #c2c7cb; +} + +QLineEdit:hover { + border: 1px solid #a1bd00; + color: White; +} + +QLineEdit:focus { + border: 2px solid #819700; +} + +QLineEdit:selected { + background-color: #a1bd00; + color: white; +} + +/* QTabWiget -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabWidget { + padding: 2px; + selection-background-color: #a1bd00; +} + +QTabWidget QWidget { + /* Fixes #189 */ + border-radius: 1.9px; +} + +QTabWidget::pane { + margin: 0px; + /* Fixes double border inside pane with pyqt5 */ + padding: 0px; +} + +QTabWidget::pane:selected { + background-color: #a1bd00; + border: 1px solid #346792; +} +/* QTabBar ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabBar, QDockWidget QTabBar { + qproperty-drawBase: 0; + /* left: 5px; move to the right by 5px - removed for fix */ +} + +QTabBar::close-button, QDockWidget QTabBar::close-button { + border: 0; + margin: 0; + padding: 1px; + image: url(qss:images_dark-light/close_light.svg); +} + +QTabBar::close-button:hover, QDockWidget QTabBar::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); + /*background-color: rgba(255, 0, 0, 0.3);*/ +} + +QTabBar::close-button:pressed, QDockWidget QTabBar::close-button:pressed { + image: url(qss:images_dark-light/close_.svg); +} + +QTabBar::tab, QDockWidget QTabBar::tab { + /* !selected and disabled ----------------------------------------- */ + /* selected ------------------------------------------------------- */ + padding: 4px; +} + +QTabBar::tab:top:selected:disabled, QDockWidget QTabBar::tab:top:selected:disabled { + color: #f5f5f5; +} + +QTabBar::tab:bottom:selected:disabled, QDockWidget QTabBar::tab:bottom:selected:disabled { + color: #f5f5f5; +} + +QTabBar::tab:left:selected:disabled, QDockWidget QTabBar::tab:left:selected:disabled { + color: #f5f5f5; +} + +QTabBar::tab:right:selected:disabled, QDockWidget QTabBar::tab:right:selected:disabled { + color: #f5f5f5; +} + +QTabBar::tab:top:!selected:disabled, QDockWidget QTabBar::tab:top:!selected:disabled { + color: #f5f5f5; +} + +QTabBar::tab:bottom:!selected:disabled, QDockWidget QTabBar::tab:bottom:!selected:disabled { + color: #f5f5f5; + +} + +QTabBar::tab:left:!selected:disabled, QDockWidget QTabBar::tab:left:!selected:disabled { + color: #f5f5f5; + +} + +QTabBar::tab:right:!selected:disabled, QDockWidget QTabBar::tab:right:!selected:disabled { + color: #f5f5f5; +} + +QTabBar::tab:top:!selected, QDockWidget QTabBar::tab:top:!selected { + color: #f5f5f5; +} + +QTabBar::tab:bottom:!selected, QDockWidget QTabBar::tab:bottom:!selected { + color: #f5f5f5; +} + +QTabBar::tab:left:!selected, QDockWidget QTabBar::tab:left:!selected { + color: #f5f5f5; +} + +QTabBar::tab:right:!selected, QDockWidget QTabBar::tab:right:!selected { + color: #f5f5f5; +} + +QTabBar::tab:top, QDockWidget QTabBar::tab:top { + color: #f5f5f5; + margin-left: 0px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + min-width: 5px; + border-bottom: 1px solid #696969; /* same as tab content background color */ + border-radius: 0px; +} + +QTabBar::tab:top:selected, QDockWidget QTabBar::tab:top:selected { + color: white; + border-top: 4px solid #a1bd00; /* selection color */ + border-bottom: 1px solid transparent; /* same as tab content background color */ + border-left: 1px solid #696969; + border-right: 1px solid #696969; + } + +QTabBar::tab:top:!selected:hover, QDockWidget QTabBar::tab:top:!selected:hover { + /*border: 1px solid #a1bd00;*/ + border: 0px solid #a1bd00; + background-color: #a1bd00; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; +} + +QTabBar::tab:bottom, QDockWidget QTabBar::tab:bottom { + color: #f5f5f5; + margin-left: 0px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + min-width: 5px; + border-top: 1px solid #696969; /* same as tab content background color */ + border-radius: 0px; +} + +QTabBar::tab:bottom:selected, QDockWidget QTabBar::tab:bottom:selected { + color: white; + border-bottom: 4px solid #a1bd00; /* selection color */ + border-top: 1px solid transparent; /* same as tab content background color */ + border-left: 1px solid #696969; + border-right: 1px solid #696969; + +} + +QTabBar::tab:bottom:!selected:hover, QDockWidget QTabBar::tab:bottom:!selected:hover { +/*border: 1px solid #a1bd00;*/ + border: 0px solid #a1bd00; + background-color: #a1bd00; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; +} + +QTabBar::tab:left, QDockWidget QTabBar::tab:left { + background-color: #7F7F7F; + margin-top: 2px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + border-radius: 4px; + min-height: 5px; +} + +QTabBar::tab:left:selected, QDockWidget QTabBar::tab:left:selected { + background-color: #7F7F7F; + border: 0px solid #819700; +} + +QTabBar::tab:left:!selected:hover, QDockWidget QTabBar::tab:left:!selected:hover { + border: 0px solid #a1bd00; + background-color: #a1bd00; + /* Fixes different behavior #271 */ + margin-right: 0px; + padding-right: -1px; +} + +QTabBar::tab:right, QDockWidget QTabBar::tab:right { + background-color: #7F7F7F; + margin-top: 2px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + min-height: 5px; + border: 10px; +} + +QTabBar::tab:right:selected, QDockWidget QTabBar::tab:right:selected { + background-color: #7F7F7F; + border: 0px solid #819700; +} + +QTabBar::tab:right:!selected:hover, QDockWidget QTabBar::tab:right:!selected:hover { + border: 0px solid #a1bd00; + background-color: #a1bd00; + /* Fixes different behavior #271 */ + margin-left: 0px; + padding-left: 0px; +} + +QTabBar QToolButton, QDockWidget QTabBar QToolButton { + /* Fixes #136 */ + background-color: #7F7F7F; + height: 12px; + width: 12px; +} + +QTabBar QToolButton:pressed, QDockWidget QTabBar QToolButton:pressed { + border: 0px solid #a1bd00; + background-color: #a1bd00; +} + +QTabBar QToolButton:pressed:hover, QDockWidget QTabBar QToolButton:pressed:hover { + border: 0px solid #a1bd00; + background-color: #a1bd00; +} + +QTabBar QToolButton::left-arrow:enabled, QDockWidget QTabBar QToolButton::left-arrow:enabled { + image: url(qss:images_dark-light/left_arrow_lighter.svg); +} + +QTabBar QToolButton::left-arrow:disabled, QDockWidget QTabBar QToolButton::left-arrow:disabled { + image: url(qss:images_dark-light/left_arrow_disabled_light.svg); +} + +QTabBar QToolButton::right-arrow:enabled, QDockWidget QTabBar QToolButton::right-arrow:enabled { + image: url(qss:images_dark-light/right_arrow_lighter.svg); +} + +QTabBar QToolButton::right-arrow:disabled, QDockWidget QTabBar QToolButton::right-arrow:disabled { + image: url(qss:images_dark-light/right_arrow_disabled_light.svg); +} + +/* QDockWiget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QDockWidget { + background-color: #7F7F7F; + border: 1px solid #505051; + border-radius: 1.9px; + titlebar-close-icon: url(qss:images_dark-light/transparent.svg); + titlebar-normal-icon: url(qss:images_dark-light/transparent.svg); +} + +QDockWidget::title { + /* Better size for title bar */ + padding: 3px; + spacing: 4px; + border: none; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051); + text-align: center; + font-weight: bold; +} + +QDockWidget::close-button { + icon-size: 10px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/close_light.svg); +} + +QDockWidget::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); +} + +QDockWidget::close-button:pressed { + image: url(qss:images_dark-light/close_light.svg); +} + +QDockWidget::float-button { + icon-size: 12px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/undock_light.svg); +} + +QDockWidget::float-button:hover { + /*background-color: #a1bd00;*/ + image: url(qss:images_dark-light/undock_blue.svg); +} + +QDockWidget::float-button:pressed { + image: url(qss:images_dark-light/undock_light.svg); +} + +/* QTreeView QListView QTableView ----------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtreeview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlistview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtableview + +--------------------------------------------------------------------------- */ +QTreeView::branch { + background: transparent; +} + +QTreeView::branch:has-siblings:!adjoins-item { + border-image: url(qss:images_dark-light/branch_vline_light.svg) 0; +} + +QTreeView::branch:has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_more_light.svg) 0; +} + +QTreeView::branch:!has-children:!has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_end_light.svg) 0; +} + +QTreeView::branch:closed:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_closed_light.svg) 0; +} + +QTreeView::branch:has-children:!has-siblings:closed { + border-image: url(qss:images_dark-light/branch_end_closed_light.svg) 0; +} + +QTreeView::branch:open:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_open_light.svg) 0; +} + +QTreeView::branch:open:has-children:!has-siblings { + border-image: url(qss:images_dark-light/branch_end_open_light.svg) 0; +} + +QTreeView::indicator:checked, +QListView::indicator:checked, +QTableView::indicator:checked, +QColumnView::indicator:checked { + image: url(qss:images_dark-light/checkbox_light.svg); +} + +QTreeView::indicator:checked:hover, QTreeView::indicator:checked:focus, QTreeView::indicator:checked:pressed, +QListView::indicator:checked:hover, +QListView::indicator:checked:focus, +QListView::indicator:checked:pressed, +QTableView::indicator:checked:hover, +QTableView::indicator:checked:focus, +QTableView::indicator:checked:pressed, +QColumnView::indicator:checked:hover, +QColumnView::indicator:checked:focus, +QColumnView::indicator:checked:pressed { + image: url(qss:images_dark-light/checkbox_light_hover.svg); +} + +QTreeView::indicator:unchecked, +QListView::indicator:unchecked, +QTableView::indicator:unchecked, +QColumnView::indicator:unchecked { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QTreeView::indicator:unchecked:hover, QTreeView::indicator:unchecked:focus, QTreeView::indicator:unchecked:pressed, +QListView::indicator:unchecked:hover, +QListView::indicator:unchecked:focus, +QListView::indicator:unchecked:pressed, +QTableView::indicator:unchecked:hover, +QTableView::indicator:unchecked:focus, +QTableView::indicator:unchecked:pressed, +QColumnView::indicator:unchecked:hover, +QColumnView::indicator:unchecked:focus, +QColumnView::indicator:unchecked:pressed { + image: url(qss:images_dark-light/checkbox_unchecked_hover_light.svg); +} + +QTreeView::indicator:indeterminate, +QListView::indicator:indeterminate, +QTableView::indicator:indeterminate, +QColumnView::indicator:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QTreeView::indicator:indeterminate:hover, QTreeView::indicator:indeterminate:focus, QTreeView::indicator:indeterminate:pressed, +QListView::indicator:indeterminate:hover, +QListView::indicator:indeterminate:focus, +QListView::indicator:indeterminate:pressed, +QTableView::indicator:indeterminate:hover, +QTableView::indicator:indeterminate:focus, +QTableView::indicator:indeterminate:pressed, +QColumnView::indicator:indeterminate:hover, +QColumnView::indicator:indeterminate:focus, +QColumnView::indicator:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QTreeView, +QListView, +QTableView, +QColumnView { + background-color: #7F7F7F; /* background of a lot of stuff including spreadsheets.*/ + border: 0px solid #696968; + color: White; + gridline-color: #696968; + border-radius: 0px; +} + +QTableView, +QListView { + background-color: rgba(0, 0, 0, 0.232); /* background of a lot of stuff including spreadsheets.*/ } -/*================================================================================================== -Toolbar buttons -==================================================================================================*/ -/*QToolBar > QComboBox, disabled because creates different margins for body and drop-down button */ -QToolBar > QAbstractSpinBox, -QToolBar > QSpinBox, -QToolBar > QDoubleSpinBox, -QToolBar > QLineEdit, -QToolBar > QTextEdit, -QToolBar > QTimeEdit, -QToolBar > QDateEdit, -QToolBar > QDateTimeEdit { - margin: 0px 2px; - padding: 0px; - min-width: 70px; /* necessary to show its content */ +QTreeView:disabled, +QListView:disabled, +QTableView:disabled, +QColumnView:disabled { + background-color: #505050; + color: #c2c7cb; } -QToolBar > QComboBox, -QToolBar > QAbstractSpinBox, -QToolBar > QSpinBox, -QToolBar > QDoubleSpinBox, -QToolBar > QLineEdit, -QToolBar > QTextEdit, -QToolBar > QTimeEdit, -QToolBar > QDateEdit, -QToolBar > QDateTimeEdit { - min-height: 0px; /* reset it inside Tool Bar due to the user ability to set the "size of toolbar icons" inside Preferences */ +QTreeView:selected, +QListView:selected, +QTableView:selected, +QColumnView:selected { + background-color: #a1bd00; + color: White; } -QToolBar > QPushButton { - padding: 0px; - margin: 1px; /* doesn't work with :left, :right:, :top or :bottom sub-controls */ - min-width: 16px; /* could not be larger due to switchable Preferences "Size of toolbar icons" */ - min-height: 16px; /* could not be larger due to switchable Preferences "Size of toolbar icons" */ - border-radius: 4px; /* same as regular QPushButton */ +QTreeView:focus, +QListView:focus, +QTableView:focus, +QColumnView:focus { + border: 1px solid #819700; } -QToolBar > QPushButton:checked { - border: 1px solid #a5c61a; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #dadfc5, stop:1 #a5c61a); +QTreeView::item:pressed, +QListView::item:pressed, +QTableView::item:pressed, +QColumnView::item:pressed { + background-color: #a1bd00; } -QToolBar > QPushButton:!checked { - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #6e6e6e, stop:1 #646464); - border: 1px solid #5a5a5a; - border-bottom-color: #505050; /* simulates shadow under the button */ - text-align: left; /* bug fix #4559 */ +QTreeView::item:selected:active, +QListView::item:selected:active, +QTableView::item:selected:active, +QColumnView::item:selected:active { + background-color: #a1bd00; } -QToolBar > QPushButton:checked:hover { - border-color: #9bbc12; +QTreeView::item:selected:!active, +QListView::item:selected:!active, +QTableView::item:selected:!active, +QColumnView::item:selected:!active { + color: White; + background-color: #353535; } -QToolBar > QPushButton:!checked:hover { - color: #dadfc5; - border-color: #505050; +QTreeView::item:!selected:hover, +QListView::item:!selected:hover, +QTableView::item:!selected:hover, +QColumnView::item:!selected:hover { + outline: 0; + color: White; + background-color: #a1bd00; } -QToolBar > QPushButton:checked:pressed { - background-color: #a5c61a; +QTableCornerButton::section { + background-color: #7F7F7F; + border: 1px transparent #696968; + border-radius: 0px; } -QToolBar > QPushButton:!checked:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #5a5a5a, stop:1 #6e6e6e); -} - -QToolBar > QPushButton:checked:disabled, -QToolBar > QPushButton:!checked:disabled { - border: none; - background-color: transparent; -} - -QToolBar > QToolButton { - margin: 2px; - padding: 2px; - border-radius: 3px; -} - -QToolBar > QToolButton:hover { - background-color: rgba(0,0,0,20); -} - -QToolBar > QToolButton:pressed { - background-color: rgba(0,0,0,30); -} - -/* ToolBar menu buttons (buttons with drop-down menu) */ -QToolBar > QToolButton#qt_toolbutton_menubutton { - padding-right: 20px; /* Hack to add more width to buttons with menu */ - border: 1px solid transparent; - border-radius: 3px; -} - -QToolBar > QToolButton#qt_toolbutton_menubutton:hover, -QToolBar > QToolButton#qt_toolbutton_menubutton:pressed, -QToolBar > QToolButton#qt_toolbutton_menubutton:open { - border: 1px solid #a5c61a; -} - -QToolBar QToolButton::menu-button, -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button { - border: none; - border-top-right-radius: 3px; - border-bottom-right-radius: 3px; - width: 16px; /* 16px width + 4px for border = 20px allocated above */ - outline: none; - background-color: transparent; -} - -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button:hover, -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button:pressed, -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button:open { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #94b30f, stop:1 #a5c61a); -} - -QToolBar > QToolButton::menu-arrow { - background-image: url(qss:images_dark-light/down_arrow_dark.svg); - background-position: center center; - background-repeat: none; - subcontrol-origin: padding; - subcontrol-position: bottom right; - height: 10px; /* same as arrow image */ -} - -QToolBar > QToolButton::menu-arrow:hover { - background-image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -QToolBar > QToolButton::menu-arrow:open { - background-image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -/* when QToolButton is checked: */ -QToolBar > QToolButton:checked { - border: 1px solid #a5c61a; - background-color: rgba(124,171,249,60); /* transparency for #a5c61a color */ -} - -QToolBar > QToolButton:checked:hover { - border: 1px solid #a5c61a; - background-color: rgba(124,171,249,80); /* transparency for #a5c61a color */ -} - -/*The "show more" button (it can also be stylable with "QToolBarExtension" */ -QToolBar QToolButton#qt_toolbar_ext_button { - margin: 0px; - padding: 0px; - /*background-image: url(qss:images_dark-light/more_dark.svg);*/ - image: transparent; - background-repeat: none; - background-position: center left; -} - -QToolBar QToolButton#qt_toolbar_ext_button:hover { - /*background-image: url(qss:images_dark-light/more_light.svg);*/ - border-color: #5a5a5a; - background-color: #5a5a5a; -} - -QToolBar QToolButton#qt_toolbar_ext_button:on { - /*background-image: url(qss:images_dark-light/more_light.svg);*/ - border-color: #5a5a5a; - background-color: #5a5a5a; -} - - -/*================================================================================================== -Tables (spreadsheets) -==================================================================================================*/ -QTableView { - gridline-color: #a0a0a0; - selection-color: #566214; - selection-background-color: #dadfc5; -} - -QTableView::item:hover { - background-color: rgba(0,0,0,10); /* temporal: is it displayed in Linux or Windows? on OSX it isn't */ -} - -QTableView::item:disabled { - color: #8c8c8c; -} - -QTableView::item:selected { - color: #566214; - border-color: #dadfc5; /* same as focused background color */ - border-bottom-color: #a5c61a; /* same as focused border color */ -} - -/* fix for elements inside the cells */ -QTableView > QWidget > QComboBox, -QTableView > QWidget > QAbstractSpinBox, -QTableView > QWidget > QSpinBox, -QTableView > QWidget > QDoubleSpinBox, -QTableView > QWidget > QLineEdit, -QTableView > QWidget > QTextEdit, -QTableView > QWidget > QTimeEdit, -QTableView > QWidget > QDateEdit, -QTableView > QWidget > QDateTimeEdit, -QTableView > QWidget > QComboBox:drop-down, -QTableView > QWidget > QAbstractSpinBox:up-button, -QTableView > QWidget > QSpinBox:up-button, -QTableView > QWidget > QDoubleSpinBox:up-button, -QTableView > QWidget > QTimeEdit:up-button, -QTableView > QWidget > QDateEdit:up-button, -QTableView > QWidget > QDateTimeEdit:up-button, -QTableView > QWidget > QAbstractSpinBox:down-button, -QTableView > QWidget > QSpinBox:down-button, -QTableView > QWidget > QDoubleSpinBox:down-button, -QTableView > QWidget > QTimeEdit:down-button, -QTableView > QWidget > QDateEdit:down-button, -QTableView > QWidget > QDateTimeEdit:down-button, -QTableView > QWidget > Gui--ColorButton { - border-radius: 0px; -} - -QTableView > QWidget > QComboBox, -QTableView > QWidget > QAbstractSpinBox, -QTableView > QWidget > QSpinBox, -QTableView > QWidget > QDoubleSpinBox, -QTableView > QWidget > QLineEdit, -QTableView > QWidget > QTextEdit, -QTableView > QWidget > QTimeEdit, -QTableView > QWidget > QDateEdit, -QTableView > QWidget > QDateTimeEdit { - color: black; - background-color: transparent; - border-color: transparent; -} - -QTableView > QWidget > QComboBox:drop-down, -QTableView > QWidget > QAbstractSpinBox:up-button, -QTableView > QWidget > QSpinBox:up-button, -QTableView > QWidget > QDoubleSpinBox:up-button, -QTableView > QWidget > QTimeEdit:up-button, -QTableView > QWidget > QDateEdit:up-button, -QTableView > QWidget > QDateTimeEdit:up-button, -QTableView > QWidget > QAbstractSpinBox:down-button, -QTableView > QWidget > QSpinBox:down-button, -QTableView > QWidget > QDoubleSpinBox:down-button, -QTableView > QWidget > QTimeEdit:down-button, -QTableView > QWidget > QDateEdit:down-button, -QTableView > QWidget > QDateTimeEdit:down-button, -QTableView > QWidget > Gui--ColorButton { - background-color: rgba(0,0,0,30); -} - -QTableView > QWidget > QComboBox:focus, -QTableView > QWidget > QAbstractSpinBox:focus, -QTableView > QWidget > QSpinBox:focus, -QTableView > QWidget > QDoubleSpinBox:focus, -QTableView > QWidget > QLineEdit:focus, -QTableView > QWidget > QTextEdit:focus, -QTableView > QWidget > QTimeEdit:focus, -QTableView > QWidget > QDateEdit:focus, -QTableView > QWidget > QDateTimeEdit:focus { - color: #566214; - selection-color: white; - selection-background-color: #94b30f; - border-color: #dadfc5; - background-color: #dadfc5; -} - -QTableView > QWidget > QComboBox:disabled, -QTableView > QWidget > QAbstractSpinBox:disabled, -QTableView > QWidget > QSpinBox:disabled, -QTableView > QWidget > QDoubleSpinBox:disabled, -QTableView > QWidget > QLineEdit:disabled, -QTableView > QWidget > QTextEdit:disabled, -QTableView > QWidget > QTimeEdit:disabled, -QTableView > QWidget > QDateEdit:disabled, -QTableView > QWidget > QDateTimeEdit:disabled { - color: rgba(0,0,0,120); - background-color: transparent; - border-color: transparent; -} - -QTableView > QWidget > QComboBox:read-only, -QTableView > QWidget > QAbstractSpinBox:read-only, -QTableView > QWidget > QSpinBox:read-only, -QTableView > QWidget > QDoubleSpinBox:read-only, -QTableView > QWidget > QLineEdit:read-only, -QTableView > QWidget > QTextEdit:read-only, -QTableView > QWidget > QTimeEdit:read-only, -QTableView > QWidget > QDateEdit:read-only, -QTableView > QWidget > QDateTimeEdit:read-only { - color: black; - background-color: transparent; - border-color: transparent; -} - - -/*================================================================================================== -SELECTORTOOLBAR widget (3rd party plugin) -==================================================================================================*/ -QToolBar:horizontal#Selector, -QToolBar:vertical#Selector { - background-color: rgba(0,0,0,120); - margin: 0px; - padding: 0px; -} - -QToolBar::handle:top#Selector, -QToolBar::handle:bottom#Selector, -QToolBar::handle:horizontal#Selector { - alignment: bottom left; -} - -QToolBar::handle:left#Selector, -QToolBar::handle:right#Selector, -QToolBar::handle:vertical#Selector { - width: 100%; - alignment: center left; -} - -QToolBar:top#Selector QToolButton, -QToolBar:bottom#Selector QToolButton, -QToolBar:horizontal#Selector QToolButton { - alignment: bottom left; -} - -QToolBar:left#Selector QToolButton, -QToolBar:right#Selector QToolButton, -QToolBar:vertical#Selector QToolButton { - alignment: center left; -} - -QToolButton[toolbar_orientation="horizontal"] { - /* nothing, when Horizontal there's no need to add special parameters */ -} - -QToolButton[toolbar_orientation="vertical"] { - /* nothing, when Horizontal there's no need to add special parameters */ -} - -QToolBar#Selector QToolButton { - border: none; - margin: 0px; - padding: 2px 6px; - border-radius: 0px; -} - -/* Active tab */ -QToolBar#Selector QToolButton:checked { +QTableView::item { color: white; - background-color: #6e6e6e; +} +QTableView { + /*qproperty-AliasedCellBackgroundColor: #f700ff;*/ + /*qproperty-aliasBgColor: #f700ff;*/ } -/* Unactive tabs */ -QToolBar#Selector QToolButton:!checked { - color: rgba(255,255,255,160); - background-color: transparent; - margin: 0px; +/* QHeaderView ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qheaderview + +--------------------------------------------------------------------------- */ +QHeaderView { + background-color: transparent; + text-align: center; } -/* Unactive tabs (hover) */ -QToolBar#Selector QToolButton:!checked:hover { - color: rgba(255,255,255,255); - background-color: rgba(255,255,255,20); +QHeaderView:disabled { + background-color: #7f7f7f; + color: rgb(174, 174, 174); } -/* Unactive tabs (pressed) */ -QToolBar#Selector QToolButton:!checked:pressed { - background-color: rgba(255,255,255,40); +QHeaderView::section { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051); + color: White; + border: 1px solid #505051; + font-size: 13px; + font-weight: bold; } - -/*================================================================================================== -TABBAR widget (3rd party plugin) -==================================================================================================*/ -QTabWidget#TabBar > QTabBar { - border-top: 0; +QHeaderView::section::horizontal { + padding-top: 1px; + padding-bottom: 1px; + padding-left: 5px; + padding-right: 0px; } -QTabWidget#TabBar > QTabBar::tab:top, -QTabWidget#TabBar > QTabBar::tab:bottom { - min-width: -1; +QHeaderView::section::horizontal::first, QHeaderView::section::horizontal::only-one { + border-left: 0px solid #696968; } -QTabWidget#TabBar > QTabBar::tab:left, -QTabWidget#TabBar > QTabBar::tab:right { - min-height: -1; +QHeaderView::section::horizontal:disabled { + color: #353535; } - -/*================================================================================================== -EXPERIMENTAL -==================================================================================================*/ - -/* Fix for preventing elements in different rows to accidentally overlap */ -QDialog QGroupBox QFrame { - margin: 2px 0px; +QHeaderView::section::vertical { + padding-top: 1px; + padding-bottom: 0; + padding-left: 1px; + padding-right: 0px; + border-top: 0px solid #696968; } -*[mandatoryField="true"] { background-color: cyan } - -/* Hack to avoid QPushButton text partially hidden under menu-indicator */ -QPushButton#NavigationIndicator::menu-indicator { - image: none; - width: 0px; +QHeaderView::section::vertical::first, QHeaderView::section::vertical::only-one { + border-top: 2px solid #505051; } -/*================================================================================================== -SKETCHER -==================================================================================================*/ +QHeaderView::section::vertical:disabled { + border-top: 2px solid #505051; +} -Gui--StatefulLabel[state="empty_sketch"] { - color : rgba(255,255,255,127); /* 50% opacity white */ +QHeaderView::down-arrow { + /* Those settings (border/width/height/background-color) solve bug */ + /* transparent arrow background and size */ + background-color: transparent; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/down_arrow_light.svg); } -Gui--StatefulLabel[state="under_constrained"] { - color : rgba(255,255,255,255); /* White */ + +QHeaderView::up-arrow { + background-color: transparent; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/up_arrow_light.svg); } -Gui--StatefulLabel[state="conflicting_constraints"] { - color : rgba(255,0,0,255); /* Red */ + +/* QToolBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbox +used in PATH + +--------------------------------------------------------------------------- */ +QToolBox { + padding: 0px; + border: 1px solid #696969; + border-radius: 4px; + background-color: transparent; } -Gui--StatefulLabel[state="malformed_constraints"] { - color : rgba(255,0,0,255); /* Red */ + +QToolBox:selected { + padding: 0px; + border: 0px solid #a1bd00; } -Gui--StatefulLabel[state="redundant_constraints"] { - color : rgba(255,69,0,255); /* Orange red */ + +QToolBox::tab { + background-color: transparent; + border: 0px solid #696969; + color: white; + background-image: url(qss:images_dark-light/down_arrow_lighter.svg); + background-repeat: none; + background-position: center left; } -Gui--StatefulLabel[state="partially_redundant_constraints"] { - color : rgba(65,105,225,255); /* Royal blue */ + +QToolBox::tab:disabled { + color: #696969; } -Gui--StatefulLabel[state="solver_failed"] { - color : rgba(255,0,0,255); /* Red */ - font-weight: bold; + +QToolBox::tab:selected { + background-color: #696969; + background-image: url(qss:images_dark-light/transparent.svg); + padding-right: 5px; + background-repeat: none; } -Gui--StatefulLabel[state="fully_constrained"] { - color : rgba(0,255,0,255); /* Green */ - font-weight: bold; + +QToolBox::tab:selected:disabled { + background-color: #696969; + border-bottom: 0px solid #cccccc; + color: white; } -Gui--UrlLabel { - color : rgba(0,91,255,255); /* Deep sky blue */ - text-decoration : underline; + +QToolBox::tab:!selected { + } + +QToolBox::tab:!selected:disabled { + background-color: #7F7F7F; +} + +QToolBox::tab:hover { + background-color: #a1bd00; + } + +QToolBox QScrollArea QWidget QWidget { + padding: 0px; + border: 0px; + background-color: transparent; +} + +/* QFrame ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe +https://doc.qt.io/qt-5/qframe.html#-prop +https://doc.qt.io/qt-5/qframe.html#details +https://stackoverflow.com/questions/14581498/qt-stylesheet-for-hline-vline-color + +--------------------------------------------------------------------------- */ +/* (dot) .QFrame fix #141, #126, #123 */ +.QFrame { + border-radius: 0px; + border: 0px solid #696968; + background-color: #696969; + /* No frame */ + /* HLine */ + /* HLine */ +} + +.QFrame[frameShape="0"] { + border-radius: 1.9px; + border: 1px solid #696968; +} + +.QFrame[frameShape="4"] { + max-height: 1px; + border: none; + background-color: #696968; +} + +.QFrame[frameShape="5"] { + max-width: 1px; + border: none; + background-color: #7F7F7F; +} + +/* QSplitter -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsplitter + +--------------------------------------------------------------------------- */ +QSplitter { + background-color: #3c3c3c; + spacing: 1px; + padding: 1px; + margin: 1px; +} + +QSplitter::handle { + margin: 0px 0px; + padding: 0px; +} + +QSplitter::handle:horizontal { + background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + width: 1px; +} + +QSplitter::handle:vertical { + background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + height: 1px; +} + +QSplitter::handle:hover { + background-image: url(qss:images_dark-light/splitter_horizontal_light.svg); + background-position: center center; + background-repeat: none; + background-color: #a1bd00; +} + +/* QDateEdit, QDateTimeEdit ----------------------------------------------- + +--------------------------------------------------------------------------- */ +QDateEdit, QDateTimeEdit { + selection-background-color: #a1bd00; + border-style: solid; + border: 1px solid #696968; + border-radius: 1.9px; + /* This fixes 103, 111 */ + padding-top: 2px; + /* This fixes 103, 111 */ + padding-bottom: 2px; + padding-left: 4px; + padding-right: 4px; + min-width: 10px; +} + +QDateEdit:on, QDateTimeEdit:on { + selection-background-color: #a1bd00; +} + +QDateEdit::drop-down, QDateTimeEdit::drop-down { + subcontrol-origin: padding; + subcontrol-position: top right; + width: 12px; + border-left: 1px solid #696968; +} + +QDateEdit::down-arrow, QDateTimeEdit::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + height: 8px; + width: 8px; +} + +QDateEdit::down-arrow:on, QDateEdit::down-arrow:hover, QDateEdit::down-arrow:focus, QDateTimeEdit::down-arrow:on, QDateTimeEdit::down-arrow:hover, QDateTimeEdit::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_lighter.svg); +} + +QDateEdit QAbstractItemView, QDateTimeEdit QAbstractItemView { + background-color: #7F7F7F; + border-radius: 2px; + border: 1px solid #696968; + selection-background-color: #a1bd00; +} + +/* QAbstractView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractView:hover { + border: 1px solid #a1bd00; + color: White; +} + +QAbstractView:selected { + background: #a1bd00; + color: White; +} + +/* PlotWidget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +PlotWidget { + /* Fix cut labels in plots #134 */ + padding: 0px; +} \ No newline at end of file diff --git a/src/Gui/Stylesheets/Dark-modern-blue.qss b/src/Gui/Stylesheets/Dark-modern-blue.qss new file mode 100644 index 0000000000..785362366b --- /dev/null +++ b/src/Gui/Stylesheets/Dark-modern-blue.qss @@ -0,0 +1,2577 @@ +/* +ABOUT +============================================================================================================ +Revised stylesheet based on the original from Pablo Gil Fernández made by MisterMaker + +KNOWN BUGS and TO DO +============================================================================================================ +Please, follow the link to get updated information: +https://forum.freecad.org/viewtopic.php?t=78431 + +INSTALLATION WHEN NECESSARY +============================================================================================================ +1) Place the .qss files and /images/ folder in the path that fits your OS: + OSX = /Users/[YOUR_USER_NAME]/Library/Preferences/FreeCAD/Gui/Stylesheets/ + WINDOWS = C:/[INSTALLATION_PATH]/FreeCAD/data/Gui/Stylesheets/ + LINUX = /home/[YOUR_USER_NAME]/.FreeCAD/Gui/Stylesheets/ + +============================================================================================================ +TO MODIFY USE THESE COLORS: + #557bb6 + #560062 + + +See Qt documentation: + + - https://doc.qt.io/qt-5/stylesheet.html + - https://doc.qt.io/qt-5/stylesheet-reference.html + - https://doc.qt.io/qt-5/stylesheet-examples.html + +--------------------------------------------------------------------------- */ + + +/* Reset elements ------------------------------------------------------------ + +Resetting everything helps to unify styles across different operating systems + +--------------------------------------------------------------------------- */ +* { + padding: 0px; + margin: 0px; + border: 0px; + border-style: none; + border-image: none; + outline: 0; +} + +/* specific reset for elements inside QToolBar */ +QToolBar * { + margin: 0px; + padding: 0px; +} + +/*hacks */ +Gui--PropertyEditor--PropertyEditor QLineEdit:read-only, +Gui--PropertyEditor--PropertyEditor QLineEdit:disabled, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:read-only, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:disabled { + color: transparent; + border-color: transparent; + background-color: transparent; + selection-color: transparent; + selection-background-color: transparent; + +} +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel, +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel:disabled { + color: transparent; + background-color: transparent; + border: none; + border-radius: 1px; + margin: 0px; + padding: 0px; +} + +Gui--PropertyEditor--PropertyEditor QSpinBox, +Gui--PropertyEditor--PropertyEditor QDoubleSpinBox, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox, +Gui--PropertyEditor--PropertyEditor QLineEdit, +Gui--PropertyEditor--PropertyEditor QComboBox { + margin-left: 0px; + margin-right: 0px; + padding-top: 0px; + padding-bottom: 0px; + +} + +/*================================================================================================== +Main window +==================================================================================================*/ +QMainWindow, +QDialog, +QDockWidget, +QToolBar { + background-color: #2b2b2b; /* main background color */ +} + +QMdiArea { + background-image: url(qss:images_dark-light/background_freecad_dark.svg); + background-position: center center; + background-repeat: no-repeat; +} +/*navgation src/Mod/Tux/NavigationIndicatorGui.py */ +Gui--NavigationIndicatorGui--BlenderNavigationStyle { +/*QAction#a4 {*/ + qproperty-icon: url(:/icons/icons/NavigationBlender_light.svg); +} +/*===== +/* QWidget ---------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QWidget { + background-color: #2b2b2b; + border: 0px solid #696968; + padding: 0px; + color: White; + selection-background-color: #557bb6; + selection-color: White; +} + +QWidget:disabled { + background-color: transparent; + color: #c2c7cb; + selection-background-color: #557bb6; + selection-color: #c2c7cb; +} + +QWidget::item:selected { + background-color: #557bb6; +} + + /* Causes issue with colorselector. + QWidget::item:hover:!selected { + background-color: #557bb6; + }*/ + +/* QMainWindow ------------------------------------------------------------ + +This adjusts the splitter in the dock widget, not qsplitter +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmainwindow + +--------------------------------------------------------------------------- */ +QMainWindow::separator { + /*background-color: #3c3c3c;*/ + border: 0px solid #696968; + spacing: 0px; + padding: 1px; +} + +QMainWindow::separator:vertical:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,stop:0.2 transparent,stop:0.5 #557bb6, stop:0.8 transparent); + /*background-color: #557bb6;*/ + image: url(qss:images_dark-light/splitter_vertical_light.svg); +} + +QMainWindow::separator:horizontal:hover { + background-color: qlineargradient(x1:0, y1:0, x2:1, y2:0,stop:0.2 transparent,stop:0.5 #557bb6, stop:0.8 transparent); + /*background-color: #557bb6;*/ + image: url(qss:images_dark-light/splitter_horizontal_light.svg); +} + +QMainWindow::separator:horizontal { + width: 4px; + margin-top: 0.1px; + margin-bottom: 0.1px; + /* image: url(qss:images_dark-light/splitter_horizontal_dark.svg);*/ +} + +QMainWindow::separator:vertical { + height: 4px; + margin-left: 0.1px; + margin-right: 0.1px; + /* image: url(qss:images_dark-light/splitter_vertical_dark.svg);*/ +} + +/* QToolTip --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtooltip + +--------------------------------------------------------------------------- */ +QToolTip { + background-color: #1c1b22; + color: White; + /* If you remove the border property, background stops working on Windows */ + border: none; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Remove opacity, fix #174 - may need to use RGBA */ +} + +/* QStatusBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qstatusbar + +--------------------------------------------------------------------------- */ +QStatusBar { + border: 0px solid #3c3c3c; + /* Fixes Spyder #9120, #9121 */ + background: #2b2b2b; + /* Fixes #205, white vertical borders separating items */ +} + +QStatusBar::item { + border: none; +} + +QStatusBar QToolTip { + background-color: #2b2b2b; + border: 1px solid #696968; + color: #2b2b2b; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Reducing transparency to read better */ + opacity: 230; +} + +QStatusBar QLabel { + /* Fixes Spyder #9120, #9121 */ + background: transparent; +} + +/* QCheckBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcheckbox + +--------------------------------------------------------------------------- */ +QCheckBox { + color: white; + padding: 0px; + outline: none; + border: 1px solid transparent; + background-color: transparent; +} + +QCheckBox:focus { + border: 1px solid #560062; +} + +QCheckBox QWidget:disabled { + background-color: transparent; + color: #c2c7cb; +} + +QCheckBox::indicator { + color: white; + background-color: #1c1b22; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QCheckBox::indicator:unchecked { + background-color: #1c1b22; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QCheckBox::indicator:unchecked:hover, QCheckBox::indicator:unchecked:focus, QCheckBox::indicator:unchecked:pressed { + background-color: #557BB6; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QCheckBox::indicator:unchecked:disabled { + background-color: #2b2b2b; + image:url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QCheckBox::indicator:checked { + background-color: #1c1b22; + /*border: 1px solid #696968; /* QRadioButton has the same color */ + image:url(qss:images_dark-light/checkbox_light.svg); +} + +QCheckBox::indicator:checked:hover, QCheckBox::indicator:checked:pressed { + background-color: #557BB6; +} + +QCheckBox::indicator:checked:disabled { + background-color: #2b2b2b; + image: url(qss:images_dark-light/check_light.svg); +} + +QCheckBox::indicator:indeterminate { + background-color: #1c1b22; + border: 1px solid #696968; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QCheckBox::indicator:indeterminate:disabled { + background-color: #2b2b2b; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QCheckBox::indicator:indeterminate:hover, QCheckBox::indicator:indeterminate:pressed { + background-color: #557BB6; /* QRadioButton has the same color */ +} + +/* QGroupBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qgroupbox + +--------------------------------------------------------------------------- */ +QGroupBox { + font-weight: bold; + border: 1px solid #696968; + border-radius: 1.9px; + padding: 2px; + margin-top: 10px; + margin-bottom: 4px; +} + +QGroupBox::title { + subcontrol-origin: margin; + subcontrol-position: top left; + left: 4px; + padding-left: 2px; + padding-right: 4px; + padding-top: 6px; +} + +QGroupBox::indicator { + color: white; + background-color: #3c3c3c; + border: 1px solid #696968; + width: 12px; + height: 12px; + border-radius:1px; +} + +QGroupBox::indicator:unchecked { + background-color: #696968; + border: 1px solid #696968; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QGroupBox::indicator:unchecked:hover, QGroupBox::indicator:unchecked:focus, QGroupBox::indicator:unchecked:pressed { + background-color: #557BB6; +} + +QGroupBox::indicator:unchecked:disabled { + background-color: #1c1b22; + border: 1px solid #696968; +} + +QGroupBox::indicator:checked { + border: none; + image:url(qss:images_dark-light/checkbox_light.svg); +} + +QGroupBox::indicator:checked:hover, QGroupBox::indicator:checked:focus, QGroupBox::indicator:checked:pressed { + background-color: #557BB6; +} + +QGroupBox::indicator:checked:disabled { + background-color: #557BB6; +} + +/* QRadioButton ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qradiobutton + +--------------------------------------------------------------------------- */ +QRadioButton { + background-color: transparent; + color: White; + border: none; + spacing: 4px; + padding-top: 4px; + padding-bottom: 4px; + outline: none; +} + +QRadioButton:focus { + border: 1px solid #560062; +} + +QRadioButton:disabled { + background-color: #696968; + color: #353535; +} + +QRadioButton QWidget { + background-color: transparent; + color: White; + spacing: 0px; + padding: 0px; + outline: none; + border: none; +} + +QRadioButton::indicator { + background-color: #3c3c3c; + border: 1px solid #696968; + border-radius: 6px; + margin-left: 0px; + height: 11px; + width: 11px; +} + +QRadioButton::indicator:unchecked { + /*image:url(qss:images_dark-light/radiobutton_light.svg);*/ +} + +QRadioButton::indicator:unchecked:hover, QRadioButton::indicator:unchecked:pressed { + background-color: #557bb6; + border: 1px solid #557bb6; + border-radius: 6px; +} + +QRadioButton::indicator:unchecked:disabled { + /*image:url(qss:images_dark-light/radiobutton_dark.svg);*/ + border: 1px solid #696968; +} + +QRadioButton::indicator:checked { + image:url(qss:images_dark-light/radiobutton_light.svg); +} + +QRadioButton::indicator:checked:hover, QRadioButton::indicator:checked:pressed { + background-color: #557bb6; + border: 1px solid #557bb6; + border-radius: 6px; + image:url(qss:images_dark-light/radiobutton_light.svg); +} + +QRadioButton::indicator:checked:disabled { + outline: none; + background-color: #696968; + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +/* QMenuBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenubar + +--------------------------------------------------------------------------- */ +QMenuBar { + background-color: #161616; + /*padding: 1px; + border: 0px solid rgba(0,0,0,140);*/ + color: White; + selection-background-color: #557bb6; +} + +QMenuBar:focus { + border: 1px solid #560062; +} + +QMenuBar::item { + background: transparent; + /*padding-left:5px; + padding-right: 5px; + padding-bottom: 1px; + padding-top: 1px;*/ +} + +QMenuBar::item:selected { + background: transparent; + border: 0px solid #696968; + background-color: #557bb6; +} + +QMenuBar::item:pressed { + /*padding: 2px; + padding-left: 10px; + padding-right: 10px;*/ + border: 0px solid #696968; + background-color: #557bb6; + color: White; + /*margin-bottom: 0px; + padding-bottom: 0px;*/ +} + +/* QMenu ------------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenu + +--------------------------------------------------------------------------- */ +QMenu { + border-bottom: 2px rgba(0,0,0,140); + border-right: 2px rgba(0,0,0,140); + color: White; + margin: 0px; + background-color: #161616; + selection-background-color: #557bb6; +} + +QMenu::separator { + height: 2px; + background-color: #3c3c3c; + margin-left: 30%; + margin-right: 30%; +} + +QMenu::item { + background-color: transparent; + padding: 2px 2px; /* make room for icon at left */ + /* Reserve space for selection border */ + border: 0px transparent #696968; +} + +QMenu::item:selected { + color: White; + background-color: #557bb6; +} + +QMenu::item:pressed { + background-color: #557bb6; +} + +QMenu::icon { + margin-left: 5px; + width: 14px; + height: 14px; +} + +QMenu::indicator { + margin-left: 2px; + margin-right: 2px; + padding: 0px; + width: 12px; + height: 12px; + /* non-exclusive indicator = check box style indicator (see QActionGroup::setExclusive) */ + /* exclusive indicator = radio button style indicator (see QActionGroup::setExclusive) */ +} + +QMenu::icon:checked { /* appearance of a 'checked' icon */ + background: #560062; + margin-left: -5px; + border: 5px solid #560062; + position: absolute; + border-radius: 0px; +} +QMenu::indicator:non-exclusive:unchecked { + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:non-exclusive:unchecked:hover, QMenu::indicator:non-exclusive:unchecked:focus, QMenu::indicator:non-exclusive:unchecked:pressed { + border: none; + background: #557BB6; +} + +QMenu::indicator:non-exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QMenu::indicator:non-exclusive:checked { + image:url(qss:images_dark-light/checkbox_light.svg); +} + +QMenu::indicator:non-exclusive:checked:hover, QMenu::indicator:non-exclusive:checked:focus, QMenu::indicator:non-exclusive:checked:pressed { + border: none; + background: #557BB6; +} + +QMenu::indicator:non-exclusive:checked:disabled { + image:url(qss:images_dark-light/checkbox_checked_disabled.svg); +} + +QMenu::indicator:non-exclusive:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:disabled { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:focus, QMenu::indicator:non-exclusive:indeterminate:hover, QMenu::indicator:non-exclusive:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QMenu::indicator:exclusive:unchecked { + image: url(qss:images_dark-light/transparent.svg); +} + +QMenu::indicator:exclusive:unchecked:hover, QMenu::indicator:exclusive:unchecked:focus, QMenu::indicator:exclusive:unchecked:pressed { + border: none; + outline: none; + background: #557BB6; + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:checked { + border: none; + outline: none; + image: url(qss:images_dark-light/radiobutton_light.svg); +} + +QMenu::indicator:exclusive:checked:hover, QMenu::indicator:exclusive:checked:focus, QMenu::indicator:exclusive:checked:pressed { + border: none; + outline: none; + background: #557BB6; + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:checked:disabled { + outline: none; + image: url(qss:images_dark-light/radiobutton_light.svg); +} + +QMenu::right-arrow { + margin: 5px; + padding-left: 12px; + image:url(qss:images_dark-light/right_arrow_lighter.svg); + height: 12px; + width: 12px; + background-color: transparent; +} + +/* QAbstractItemView ------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QAbstractItemView { + alternate-background-color: #5b5b5b; + color: White; + border: 1px solid #696968; + border-radius: 2px; +} + +QAbstractItemView QLineEdit { + padding: 2px; +} + +/* QAbstractScrollArea ---------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QAbstractScrollArea { + background-color: transparent; + border: 0px solid #696968; + border-radius: 0px; + /* fix #159 */ + padding: 0px; + /* remove min-height to fix #244 */ + color: White; +} + +QAbstractScrollArea:disabled { + color: #353535; +} + +/* QScrollArea ------------------------------------------------------------ + +--------------------------------------------------------------------------- +text input field disabled!!!!*/ +QScrollArea QWidget:disabled { + background-color: #2b2b2b; +} + +/* QScrollBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qscrollbar + +--------------------------------------------------------------------------- */ +QScrollBar:horizontal { + height: 16px; + margin: 2px 16px 2px 16px; + border: 0px solid #696968; + border-radius: 1.9px; + background-color: #2b2b2b; +} + +QScrollBar:vertical { + background-color: #2b2b2b; + width: 16px; + margin: 16px 2px 16px 2px; + border: 0px solid #696968; + border-radius: 1.9px; +} + +QScrollBar::handle:horizontal { + background-color: #696969; + border: 1px solid #2b2b2b; + border-radius: 1.9px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:hover { + background-color: #557bb6; + border: #696968; + border-radius: 1.9px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:focus { + border: 1px solid #560062; +} + +QScrollBar::handle:vertical { + background-color: #696969; + border: 1px solid #696968; + min-height: 8px; + border-radius: 1.9px; +} + +QScrollBar::handle:vertical:hover { + background-color: #557bb6; + border: #696968; + border-radius: 1.9px; + min-height: 8px; +} + +QScrollBar::handle:vertical:focus { + border: 1px solid #560062; +} + +QScrollBar::add-line:horizontal { + border-image: url(qss:images_dark-light/right_arrow_light.svg); + height: 9px; + width: 5px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:horizontal:hover, QScrollBar::add-line:horizontal:on { + border-image: url(qss:images_dark-light/right_arrow_lighter.svg); + + height: 9px; + width: 5px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical { + border-image: url(qss:images_dark-light/down_arrow_light.svg); + height: 5px; + width: 9px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical:hover, QScrollBar::add-line:vertical:on { + border-image: url(qss:images_dark-light/down_arrow_lighter.svg); + height: 5px; + width: 9px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/left_arrow_light.svg); + height: 9px; + width: 5px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal:hover, QScrollBar::sub-line:horizontal:on { + border-image: url(qss:images_dark-light/left_arrow_lighter.svg); + height: 9px; + width: 5px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/up_arrow_light.svg); + height: 5px; + width: 9px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical:hover, QScrollBar::sub-line:vertical:on { + border-image: url(qss:images_dark-light/up_arrow_lighter.svg); + height: 5px; + width: 9px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::up-arrow:horizontal, QScrollBar::down-arrow:horizontal { + background: none; +} + +QScrollBar::up-arrow:vertical, QScrollBar::down-arrow:vertical { + background: none; +} + +QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal { + background: none; +} + +QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical { + background: none; +} + +/* QTextEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-specific-widgets + + +report view +--------------------------------------------------------------------------- */ +QTextEdit { + background-color: #2b2b2b; + color: White; + border-radius: 1.9px; + border: 0px solid #696968; +} + +QTextEdit:focus { + border: 1px solid #560062; +} + +QTextEdit:selected { + background: #346792; + color: white; +} + +/* QPlainTextEdit --------------------------------------------------------- +Python +--------------------------------------------------------------------------- */ +QPlainTextEdit { + background-color: #3c3c3c; + color: White; + border-radius: 1.9px; + border: 0px solid #696968; +} + +QPlainTextEdit:focus { + border: 1px solid #560062; +} + +QPlainTextEdit:selected { + background: #557bb6; + color: White; +} + +/* QSizeGrip -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsizegrip + +--------------------------------------------------------------------------- */ +QSizeGrip { + background: transparent; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/sizegrip_light.svg); +} + +/* QStackedWidget --------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QStackedWidget { + padding: 0px; + border: 0px solid #696968; +} + +/* QToolBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbar + +--------------------------------------------------------------------------- */ +QToolBar { + background-color: #2b2b2b; + border-bottom: 0px solid rgba(0,0,0,120); + padding: 1px; + font-weight: bold; + spacing: 1px; +} + +QToolBar:disabled { + /* Fixes #272 */ + background-color: #2b2b2b; +} + +QToolBar::handle:horizontal { + width: 8px; + margin: 3px 3px; + background-position: top right; + background-repeat: repeat-y; + background-image: url(qss:images_dark-light/Hmovetoolbar_light.svg); +} + +QToolBar::handle:vertical { + height: 8px; + margin: 3px 3px; + background-position: left bottom; + background-repeat: repeat-x; + background-image: url(qss:images_dark-light/Vmovetoolbar_light.svg); +} + +QToolBar::separator:horizontal { + width: 2px; + margin: 4px 4px; + background-color: transparent; +} + +QToolBar::separator:vertical { + height: 2px; + margin: 4px 4px; + background-color: transparent; +} + +/*The "show more" button (it can also be stylable with "QToolBarExtension" icon is not working Qproperty works but breaks when you move the toolbar see also */ +QToolButton#qt_toolbar_ext_button { +margin: 0px; +padding: 0px; +background-color: #696969; +/*background-image: url(qss:images_dark-light/more_light.svg);*/ +background-repeat: none; +background-position: center center; +} + +QToolButton#qt_toolbar_ext_button:hover { +/*background-image: url(qss:images_dark-light/more_light.svg);*/ +background-color: #557bb6; +} + +QToolButton#qt_toolbar_ext_button:on { +/*background-image: url(qss:images_dark-light/more_light.svg);*/ +border-color: #696968; +background-color: #557bb6; +} + + +/* QAbstractSpinBox ------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractSpinBox, +QSpinBox { + background-color: #1c1b22; + border: 1px solid transparent; + color: White; + /* This fixes 103, 111 */ + /* padding-top: 0px; + /* This fixes 103, 111 */ + /*padding-bottom: 0px; + /*padding-left: 4px; + /*padding-right: 4px; + border-radius: 1.9px;*/ + min-height: 1.7em; + /* min-width: 5px; removed to fix 109 */ +} + +QAbstractSpinBox:up-button { + background-color: #696968; + subcontrol-origin: border; + subcontrol-position: top right; + border-left: 1px solid transparent; + border-bottom: 1px solid #1c1b22; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-bottom: -1px;*/ +} + +QAbstractSpinBox::up-arrow, QAbstractSpinBox::up-arrow:disabled, QAbstractSpinBox::up-arrow:off { + image: url(qss:images_dark-light/up_arrow_disabled_light.svg); + /* height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::up-arrow:hover { + /*background-color: #557bb6;*/ + image: url(qss:images_dark-light/up_arrow_lighter.svg); +} + +QAbstractSpinBox:down-button { + background-color: #696968; + subcontrol-origin: border; + subcontrol-position: bottom right; + border-left: 1px solid #696968; + border-top: 1px solid #696968; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-top: -1px;*/ +} + +QAbstractSpinBox::down-arrow, QAbstractSpinBox::down-arrow:disabled, QAbstractSpinBox::down-arrow:off { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + /*height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::down-arrow:hover { + image: url(qss:images_dark-light/down_arrow_lighter.svg); +} + +QAbstractSpinBox:hover { + /*border: 1px solid #557bb6; + color: White;*/ +} + +QAbstractSpinBox:focus { + border: 1px solid #560062; +} + +QAbstractSpinBox:selected { + background: #560062; + /*color: White;*/ +} + +/* ------------------------------------------------------------------------ */ +/* DISPLAYS --------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QLabel ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe + +--------------------------------------------------------------------------- */ +QLabel { + background-color: transparent; + border: 0px solid #696968; + padding: 2px; + margin: 0px; + color: White; +} + +QLabel:disabled { + background-color: transparent; + border: 0px solid #696968; + color: #c2c7cb; +} + +QLabel[haslink="true"] { + color: orange; +} + + +/* QTextBrowser ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QTextBrowser { + background-color: #1c1b22; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; +} + +QTextBrowser:disabled { + background-color: #2b2b2b; + border: 1px solid #696968; + color: #c2c7cb; + border-radius: 1.9px; +} + +QTextBrowser:hover, QTextBrowser:!hover, QTextBrowser:selected, QTextBrowser:pressed { + border: 1px solid #557bb6; +} + +/* QGraphicsView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QGraphicsView { + background-color: transparent; + border: 0px solid #557bb6; + color: White; + border-radius: 0px; +} + +QGraphicsView:disabled { + background-color: #1c1b22; + border: 0px solid #696968; + color: #c2c7cb; + border-radius: 0px; +} + +QGraphicsView:hover, QGraphicsView:!hover, QGraphicsView:selected, QGraphicsView:pressed { + border: 0px solid #ff00f7; +} + +/* QCalendarWidget -------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCalendarWidget { + border: 1px solid #696968; + border-radius: 1.9px; +} + +QCalendarWidget:disabled { + background-color: #353535; + color: #c2c7cb; +} + +/* QLCDNumber ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QLCDNumber { + background-color: #1aff00; + color: White; +} + +QLCDNumber:disabled { + background-color: #2b2b2b; + color: #c2c7cb; +} + +/* QProgressBar ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qprogressbar + +--------------------------------------------------------------------------- */ +QProgressBar { + background-color: #c2c7cb; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar:disabled { + background-color: #161616; + border: 1px solid #696968; + color: #696969; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar::chunk { + background-color: #557bb6; + color: #2b2b2b; + border-radius: 1.9px; +} + +QProgressBar::chunk:disabled { + background-color: #161616; + color: #696968; + border-radius: 1.9px; +} + +/* ------------------------------------------------------------------------ */ +/* BUTTONS ---------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QPushButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qpushbutton + +--------------------------------------------------------------------------- */ +QPushButton { + background-color: #696969; + color: White; + border-radius: 2px; + padding: 2px; + outline: none; + border: none; +} + +QPushButton:disabled { + background-color: #2b2b2b; + color: #c2c7cb; + border-radius: 2px; + padding: 2px; +} + +QPushButton:checked { + background-color: #557bb6; + border-radius: 2px; + padding: 2px; + outline: none; +} + +QPushButton:checked:disabled { + background-color: #557bb6; + color: #3c3c3c; + border-radius: 2px; + padding: 2px; + outline: none; +} + +QPushButton:checked:selected { + background: #557bb6; +} + +QPushButton:hover { + background-color: #557bb6; + color: White; +} + +QPushButton:pressed { + background-color: #557bb6; +} + +QPushButton:selected { + background: #560062; + color: White; +} + +QPushButton::menu-indicator { + subcontrol-origin: padding; + subcontrol-position: bottom right; + bottom: 4px; +} + +QDialogButtonBox QPushButton { + /* Issue # 194 # 248 - Special case of QPushButton inside dialogs, for better UI */ + min-width: 80px; +} + +/* QToolButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbutton + +--------------------------------------------------------------------------- */ +QToolButton { + background-color: transparent; + color: White; + border-radius: 1px; + padding: 0px; + outline: none; + border: none; + /* The subcontrols below are used only in the DelayedPopup mode */ + /* The subcontrols below are used only in the MenuButtonPopup mode */ + /* The subcontrol below is used only in the InstantPopup or DelayedPopup mode */ +} + +QToolButton:disabled { + background-color: rgba(0, 0, 0, 0.065); + color: transparent; + border-radius: 1px; + padding: 0px; + opacity: 1.0; +} + +QToolButton:checked { + background-color: #557bb6; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:disabled { + background-color: #b65555; + color: #c2c7cb; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:hover { + background-color: #557bb6; + color: White; +} + +QToolButton:checked:pressed { + background-color: #557bb6; +} + +QToolButton:checked:selected { + background: #560062; + color: White; +} + +QToolButton:hover { + background-color: #557bb6; + color: White; +} + +QToolButton:pressed { + background-color: #560062; +} + +QToolButton:selected { + background: #557bb6; + color: White; +} + +QToolButton[popupMode="0"] { + /* Only for DelayedPopup */ + padding-right: 20px; +} + +QToolButton[popupMode="1"] { + /* Only for MenuButtonPopup */ + padding-right: 20px; +} +QToolButton[popupMode="0"]::menu-button { + border: none; +} + +QToolButton[popupMode="0"]::menu-button:hover { + border: none; + border-left: 2px solid #fe0000; + border-radius: 0px; +} +QToolButton[popupMode="1"]::menu-button { + border: none; +} + +QToolButton[popupMode="1"]::menu-button:hover { + border: none; + border-left: 2px solid #e5ff00; + border-radius: 0px; +} + +QToolButton[popupMode="2"] { + /* Only for InstantPopup */ + padding-right: 20px; +} + +QToolButton::menu-button { + border-bottom: 0px solid #ffffff; + border-radius: 2px; + /* 16px width + 4px for border = 20px allocated above */ + width: 1.6ex; + padding: 2px; + border-radius: 2px; + border: 0px #000000; +} + +QToolButton::menu-button:hover { + /* background: rgba(0, 0, 0, 0.5);*/ + +} + +QToolButton::menu-button:checked:hover { + /* background: rgba(0, 0, 0, 0.5);*/ +} + +QToolButton::menu-indicator { + /* Exclude a shift for better image */ + subcontrol-position: right bottom; + /* Shift it a bit */ +} + +QToolButton::menu-arrow { + image: url(qss:images_dark-light/more_arrow_light.svg); + width: 1.5ex; + height: 1.5ex; + subcontrol-position: right bottom; + background: transparent; +} +QToolButton::menu-arrow:open { + subcontrol-position: right bottom; + image: url(qss:images_dark-light/more_arrow_light.svg); +} +QToolButton::menu-arrow:hover { + image: url(qss:images_dark-light/more_arrow_light.svg); + background-color: rgba(0, 0, 0, 0.498); + border: 1px solid rgba(0, 0, 0, 0.498); +} + +/* QCommandLinkButton ----------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCommandLinkButton { + background-color: transparent; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; + padding: 0px; + margin: 0px; +} + +QCommandLinkButton:disabled { + background-color: transparent; + color: #c2c7cb; +} + +/* ------------------------------------------------------------------------ */ +/* INPUTS - NO FIELDS ----------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QComboBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QComboBox { + border: 1px solid transparent; + background: #1c1b22; + border-radius: 2px; + selection-background-color: #557bb6; + padding-left: 2px; + padding-right: 2px; + /* padding-right = 36; 4 + 16*2 See scrollbar size */ + /* changed to 4px to fix #239 */ + /* Fixes #103, #111 */ + min-height: 1.5em; + /* padding-top: 2px; removed to fix #132 */ + /* padding-bottom: 2px; removed to fix #132 */ + /* min-width: 75px; removed to fix #109 */ + /* Needed to remove indicator - fix #132 */ +} +QComboBox:editable { + background: #1c1b22; +} +QComboBox QAbstractItemView { + border: 0px solid #696968; + border-radius: 0px; + background-color: #1c1b22; + selection-background-color: #557bb6; +} + +QComboBox QAbstractItemView:hover { + background-color:Black; + color: White; +} + +QComboBox QAbstractItemView:selected { + background: #557bb6; + color: White; +} + +QComboBox QAbstractItemView:alternate { + background: #3c3c3c; +} + +QComboBox:disabled { + background-color: #2b2b2b; + color: #353535; +} + +QComboBox:hover { + /*background-color: #557bb6;*/ + border: 1px solid #557bb6; +} + +QComboBox:focus { + border: 1px solid #560062; +} + +QComboBox:on { + selection-background-color: #560062; +} + +QComboBox::indicator { + border: none; + border-radius: 0px; + background-color: transparent; + selection-background-color: transparent; + color: transparent; + selection-color: #557bb6; + /* Needed to remove indicator - fix #132 */ +} + +QComboBox::indicator:alternate { + background: #696968; +} + +QComboBox::item { + /* Remove to fix #282, #285 and MR #288*/ + /*&:checked { + font-weight: bold; + } + + &:selected { + border: 0px solid transparent; + } + */ +} + +QComboBox::item:alternate { + background: #3c3c3c; +} + +QComboBox::drop-down { + subcontrol-origin: padding; + background-color: #696969; + subcontrol-position: top right; + width: 14px; + border-left: 1px solid #696968; +} +QComboBox::drop-down:hover { + background-color: #557bb6; +} + +QComboBox::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + height: 10px; + width: 10px; +} + +QComboBox::down-arrow:on, QComboBox::down-arrow:hover, QComboBox::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_lighter.svg); +} + + +/*================================================================================================== +Tasks panel (custom FreeCAD class) +==================================================================================================*/ +Gui--PropertyEditor--PropertyEditor { + qproperty-groupTextColor: white; + qproperty-groupBackground: #3c3c3c; + border: 0px solid #696968; + +} + +/* Action group */ +QFrame[class="panel"] { +background-color: transparent; /* temporal (transparent background) */ + +} + +QSint--ActionGroup { +padding: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +margin: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +} + +/* Separator line */ +QSint--ActionGroup QFrame[height="1"], +QSint--ActionGroup QFrame[height="2"], +QSint--ActionGroup QFrame[height="3"], +QSint--ActionGroup QFrame[width="1"], +QSint--ActionGroup QFrame[width="2"], +QSint--ActionGroup QFrame[width="3"] { +border-color: rgba(0,0,0,60); +} + +/* Panel header */ +QSint--ActionGroup QFrame[class="header"] { +border-top: 1px solid #696968; +border-left: 1px solid #696968; +border-right: 1px solid #696968; +background-color: #696969; /* Task Panel Header background color */ +border-top-left-radius: 3px; +border-top-right-radius: 3px; +border-bottom-left-radius: 0px; +border-bottom-right-radius: 0px; +margin: 0px; +padding: 0px; +} + +QSint--ActionGroup QFrame[class="header"]:hover { +background-color: #557BB6; +} + +QSint--ActionGroup QToolButton[class="header"] { +color: white; /* Task Panel Header text color */ +text-align: left; +font-weight: bold; +border: none; +margin: 0px; +padding: 0px; +} + +QSint--ActionGroup QFrame[class="header"] QLabel { +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_light.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; +} + +QSint--ActionGroup QFrame[class="header"] QLabel:hover { +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_lighter.svg); +} + +QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"] { +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_light.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; +} + +QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"]:hover { +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_lighter.svg); +} + +QSint--ActionGroup QFrame[class="content"] { +background-color: transparent; /* Task Panel background color */ +margin: 0px; +padding: 0px; +border-bottom: 1px solid #696968; +border-left: 1px solid #696968; +border-right: 1px solid #696968; +border-top-left-radius: 0px; +border-top-right-radius: 0px; +border-bottom-left-radius: 3px; +border-bottom-right-radius: 3px; +} + +QSint--ActionGroup QFrame[class="content"] > QWidget { +background-color: #2b2b2b; /* Task Panel background color */ +} + +/* Fixs for tabs inside Task Panel */ +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:top:selected { +border-bottom-color: #557bb6; /* same as Task Panel background color */ +} + +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:bottom:selected { +border-top-color: #557bb6; /* same as Task Panel background color */ +} + +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:right:selected { +border-right-color: #557bb6; /* same as Task Panel background color */ +} + +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:left:selected { +border-left-color: #557bb6; /* same as Task Panel background color */ +} + +/* Fix for buttons with icons that showed cropped (still not happy with result) */ +QSint--ActionGroup QFrame[class="content"] > QWidget > QPushButton { +padding: 2px; /* bigger padding crops text and icons... */ +margin: 0px; +} + +/* Fix for lists inside task panels */ /* sketcher constraints list */ +QSint--ActionGroup QFrame[class="content"] QTreeView, +QSint--ActionGroup QFrame[class="content"] QListView, +QSint--ActionGroup QFrame[class="content"] QTableView { +color: white; +background-color: black; +} + + +/* found inside Part Design Workbench and "make a draft on a face" Task panel options */ +QSint--ActionGroup QFrame[class="content"] QToolButton { + color: white; + text-align: center; + background-color: #696969; + border: 0px solid #adadad; + padding: 1px 1px; /* different than regular QPushButton */ + margin: 0px; /* different than regular QPushButton */ + min-height: 16px; /* same as QTabBar QPushButton min-width */ + border-radius: 1px; +} + +QSint--ActionGroup QFrame[class="content"] QToolButton:hover{ + background: #557bb6; + border: 1px solid #557bb6; +} +QSint--ActionGroup QFrame[class="content"] QToolButton:focus { + border: 1px solid #560062; +} + +QSint--ActionGroup QFrame[class="content"] QToolButton:disabled, +QSint--ActionGroup QFrame[class="content"] QToolButton:disabled:checked { + color: #696969; + background-color: #1c1b22; +} + +QSint--ActionGroup QFrame[class="content"] QToolButton:pressed { + background: #557bb6; + border: 1px solid #557bb6; +} + +/* QSlider ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qslider + +--------------------------------------------------------------------------- */ +QSlider:disabled { + background: #2b2b2b; +} + +QSlider:focus { + border: 1px solid #560062; +} + +QSlider::groove:horizontal { + background: #2b2b2b; + border: 1px solid #696968; + height: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::groove:vertical { + background: #557bb6; + border: 1px solid #696968; + width: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::add-page:vertical { + background: #557bb6; + border: 1px solid #696968; + width: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::add-page:vertical :disabled { + background: #696968; +} + +QSlider::sub-page:horizontal { + background: #557bb6; + border: 1px solid #0073ff; + height: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::sub-page:horizontal:disabled { + background: #557bb6; +} + +QSlider::handle:horizontal { + background: #353535; + border: 1px solid #2b2b2b; + width: 8px; + height: 8px; + margin: -8px 0px; + border-radius: 1.9px; +} + +QSlider::handle:horizontal:hover { + background: #557bb6; + border: 1px solid #557bb6; +} + +QSlider::handle:horizontal:focus { + border: 1px solid #560062; +} + +QSlider::handle:vertical { + background: #c2c7cb; + border: 1px solid #696968; + width: 8px; + height: 8px; + margin: 0 -8px; + border-radius: 1.9px; +} + +QSlider::handle:vertical:hover { + background: #557bb6; + border: 2px solid #557bb6; +} + +QSlider::handle:vertical:focus { + border: 1px solid #560062; +} + +/* QLineEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlineedit + +--------------------------------------------------------------------------- */ +QLineEdit { + background-color: #1c1b22; + padding-top: 2px; + /* This QLineEdit fix 103, 111 */ + padding-bottom: 2px; + /* This QLineEdit fix 103, 111 */ + padding-left: 4px; + padding-right: 4px; + border-style: solid; + border: 1px solid #696968; + border-radius: 2px; + color: White; +} + +QLineEdit:disabled { + background-color: #2b2b2b; + color: #c2c7cb; +} + +QLineEdit:hover { + border: 1px solid #557bb6; + color: White; +} + +QLineEdit:focus { + border: 2px solid #560062; +} + +QLineEdit:selected { + background-color: #557bb6; + color: white; +} + +/* QTabWiget -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabWidget { + padding: 2px; + selection-background-color: #557bb6; +} + +QTabWidget QWidget { + /* Fixes #189 */ + border-radius: 1.9px; +} + +QTabWidget::pane { + border: 0px solid #8c00ffa1; + border-radius: 1.9px; + margin: 0px; + /* Fixes double border inside pane with pyqt5 */ + padding: 0px; +} + +QTabWidget::pane:selected { + background-color: #557bb6; + border: 1px solid #346792; +} +/* QTabBar ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabBar, QDockWidget QTabBar { + qproperty-drawBase: 0; + border-radius: 2px; + margin: 0px; + padding: 2px; + border: 0; + alignment: center; + /* left: 5px; move to the right by 5px - removed for fix */ +} + +QTabBar::close-button, QDockWidget QTabBar::close-button { + border: 0; + margin: 0; + padding: 1px; + image: url(qss:images_dark-light/close_light.svg); +} + +QTabBar::close-button:hover, QDockWidget QTabBar::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); + /*background-color: rgba(255, 0, 0, 0.3);*/ +} + +QTabBar::close-button:pressed, QDockWidget QTabBar::close-button:pressed { + image: url(qss:images_dark-light/close_.svg); +} + +QTabBar::tab, QDockWidget QTabBar::tab { + /* !selected and disabled ----------------------------------------- */ + /* selected ------------------------------------------------------- */ +} + +QTabBar::tab:top:selected:disabled, QDockWidget QTabBar::tab:top:selected:disabled { + border-bottom: 3px solid #696969; + color: #515151; + background-color: #696969; +} + +QTabBar::tab:bottom:selected:disabled, QDockWidget QTabBar::tab:bottom:selected:disabled { + border-top: 3px solid #696969; + color: #515151; + background-color: #696969; +} + +QTabBar::tab:left:selected:disabled, QDockWidget QTabBar::tab:left:selected:disabled { + border-right: 3px solid #696969; + color: #515151; + background-color: #696969; +} + +QTabBar::tab:right:selected:disabled, QDockWidget QTabBar::tab:right:selected:disabled { + border-left: 3px solid #696969; + color: #515151; + background-color: #696969; +} + +QTabBar::tab:top:!selected:disabled, QDockWidget QTabBar::tab:top:!selected:disabled { + border-bottom: 3px solid #696969; + color: #515151; + background-color: #696969; +} + +QTabBar::tab:bottom:!selected:disabled, QDockWidget QTabBar::tab:bottom:!selected:disabled { + border-top: 3px solid #696969; + color: #515151; + background-color: #696969; +} + +QTabBar::tab:left:!selected:disabled, QDockWidget QTabBar::tab:left:!selected:disabled { + border-right: 3px solid #696969; + color: #515151; + background-color: #696969; +} + +QTabBar::tab:right:!selected:disabled, QDockWidget QTabBar::tab:right:!selected:disabled { + border-left: 3px solid #696969; + color: #515151; + background-color: #696969; +} + +QTabBar::tab:top:!selected, QDockWidget QTabBar::tab:top:!selected { + border-bottom: 2px solid #696969; + margin-top: 2px; +} + +QTabBar::tab:bottom:!selected, QDockWidget QTabBar::tab:bottom:!selected { + border-top: 2px solid #696969; + margin-bottom: 2px; +} + +QTabBar::tab:left:!selected, QDockWidget QTabBar::tab:left:!selected { + border-left: 2px solid #696969; + margin-right: 2px; +} + +QTabBar::tab:right:!selected, QDockWidget QTabBar::tab:right:!selected { + border-right: 2px solid #696969; + margin-left: 2px; +} + +QTabBar::tab:top, QDockWidget QTabBar::tab:top { + background-color: #696969; + margin-left: 3px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + min-width: 5px; + border: 0px solid #696969; + border-radius: 4px; +} + +QTabBar::tab:top:selected, QDockWidget QTabBar::tab:top:selected { + background-color: #2b2b2b; + /*border: 1px solid #560062; + border-radius: 4px; + margin-left: 4px; + margin-right: 4px; + padding-left: 3px; + padding-right: 3px;*/ +} + +QTabBar::tab:top:!selected:hover, QDockWidget QTabBar::tab:top:!selected:hover { + /*border: 1px solid #557bb6;*/ + border: 0px solid #557bb6; + background-color: #557bb6; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; +} + +QTabBar::tab:bottom, QDockWidget QTabBar::tab:bottom { + border: 0px solid #696969; + background-color: #696969; + margin-left: 3px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + border-radius: 4px; + min-width: 5px; +} + +QTabBar::tab:bottom:selected, QDockWidget QTabBar::tab:bottom:selected { + background-color: #2b2b2b; + /*border: 1px solid #560062; + border-radius: 4px; + margin-left: 4px; + margin-right: 4px; + padding-left: 3px; + padding-right: 3px;*/ +} + +QTabBar::tab:bottom:!selected:hover, QDockWidget QTabBar::tab:bottom:!selected:hover { +/*border: 1px solid #557bb6;*/ + border: 0px solid #557bb6; + background-color: #557bb6; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; +} + +QTabBar::tab:left, QDockWidget QTabBar::tab:left { + background-color: #2b2b2b; + margin-top: 2px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + border-radius: 4px; + min-height: 5px; +} + +QTabBar::tab:left:selected, QDockWidget QTabBar::tab:left:selected { + background-color: #2b2b2b; + border: 0px solid #560062; +} + +QTabBar::tab:left:!selected:hover, QDockWidget QTabBar::tab:left:!selected:hover { + border: 0px solid #557bb6; + background-color: #557bb6; + /* Fixes different behavior #271 */ + margin-right: 0px; + padding-right: -1px; +} + +QTabBar::tab:right, QDockWidget QTabBar::tab:right { + background-color: #2b2b2b; + margin-top: 2px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + min-height: 5px; + border: 10px; +} + +QTabBar::tab:right:selected, QDockWidget QTabBar::tab:right:selected { + background-color: #2b2b2b; + border: 0px solid #560062; +} + +QTabBar::tab:right:!selected:hover, QDockWidget QTabBar::tab:right:!selected:hover { + border: 0px solid #557bb6; + background-color: #557bb6; + /* Fixes different behavior #271 */ + margin-left: 0px; + padding-left: 0px; +} + +QTabBar QToolButton, QDockWidget QTabBar QToolButton { + /* Fixes #136 */ + background-color: #2b2b2b; + height: 12px; + width: 12px; +} + +QTabBar QToolButton:pressed, QDockWidget QTabBar QToolButton:pressed { + border: 0px solid #557bb6; + background-color: #557bb6; +} + +QTabBar QToolButton:pressed:hover, QDockWidget QTabBar QToolButton:pressed:hover { + border: 0px solid #557bb6; + background-color: #557bb6; +} + +QTabBar QToolButton::left-arrow:enabled, QDockWidget QTabBar QToolButton::left-arrow:enabled { + image: url(qss:images_dark-light/left_arrow_lighter.svg); +} + +QTabBar QToolButton::left-arrow:disabled, QDockWidget QTabBar QToolButton::left-arrow:disabled { + image: url(qss:images_dark-light/left_arrow_disabled_light.svg); +} + +QTabBar QToolButton::right-arrow:enabled, QDockWidget QTabBar QToolButton::right-arrow:enabled { + image: url(qss:images_dark-light/right_arrow_lighter.svg); +} + +QTabBar QToolButton::right-arrow:disabled, QDockWidget QTabBar QToolButton::right-arrow:disabled { + image: url(qss:images_dark-light/right_arrow_disabled_light.svg); +} + +/* QDockWiget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QDockWidget { + background-color: #2b2b2b; + border: 1px solid #696968; + border-radius: 1.9px; + titlebar-close-icon: url(qss:images_dark-light/transparent.svg); + titlebar-normal-icon: url(qss:images_dark-light/transparent.svg); +} + +QDockWidget::title { + /* Better size for title bar */ + padding: 3px; + spacing: 4px; + border: none; + background-color: #2b2b2b; + text-align: center; + font-weight: bold; +} + +QDockWidget::close-button { + icon-size: 10px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/close_light.svg); +} + +QDockWidget::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); +} + +QDockWidget::close-button:pressed { + image: url(qss:images_dark-light/close_light.svg); +} + +QDockWidget::float-button { + icon-size: 12px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/undock_light.svg); +} + +QDockWidget::float-button:hover { + /*background-color: #557bb6;*/ + image: url(qss:images_dark-light/undock_blue.svg); +} + +QDockWidget::float-button:pressed { + image: url(qss:images_dark-light/undock_light.svg); +} + +/* QTreeView QListView QTableView ----------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtreeview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlistview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtableview + +--------------------------------------------------------------------------- */ +QTreeView::branch { + background: transparent; +} + +QTreeView::branch:has-siblings:!adjoins-item { + border-image: url(qss:images_dark-light/branch_vline_light.svg) 0; +} + +QTreeView::branch:has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_more_light.svg) 0; +} + +QTreeView::branch:!has-children:!has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_end_light.svg) 0; +} + +QTreeView::branch:closed:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_closed_light.svg) 0; +} + +QTreeView::branch:has-children:!has-siblings:closed { + border-image: url(qss:images_dark-light/branch_end_closed_light.svg) 0; +} + +QTreeView::branch:open:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_open_light.svg) 0; +} + +QTreeView::branch:open:has-children:!has-siblings { + border-image: url(qss:images_dark-light/branch_end_open_light.svg) 0; +} + +QTreeView::indicator:checked, +QListView::indicator:checked, +QTableView::indicator:checked, +QColumnView::indicator:checked { + image: url(qss:images_dark-light/checkbox_light.svg); +} + +QTreeView::indicator:checked:hover, QTreeView::indicator:checked:focus, QTreeView::indicator:checked:pressed, +QListView::indicator:checked:hover, +QListView::indicator:checked:focus, +QListView::indicator:checked:pressed, +QTableView::indicator:checked:hover, +QTableView::indicator:checked:focus, +QTableView::indicator:checked:pressed, +QColumnView::indicator:checked:hover, +QColumnView::indicator:checked:focus, +QColumnView::indicator:checked:pressed { + image: url(qss:images_dark-light/checkbox_light_hover.svg); +} + +QTreeView::indicator:unchecked, +QListView::indicator:unchecked, +QTableView::indicator:unchecked, +QColumnView::indicator:unchecked { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QTreeView::indicator:unchecked:hover, QTreeView::indicator:unchecked:focus, QTreeView::indicator:unchecked:pressed, +QListView::indicator:unchecked:hover, +QListView::indicator:unchecked:focus, +QListView::indicator:unchecked:pressed, +QTableView::indicator:unchecked:hover, +QTableView::indicator:unchecked:focus, +QTableView::indicator:unchecked:pressed, +QColumnView::indicator:unchecked:hover, +QColumnView::indicator:unchecked:focus, +QColumnView::indicator:unchecked:pressed { + image: url(qss:images_dark-light/checkbox_unchecked_hover_light.svg); +} + +QTreeView::indicator:indeterminate, +QListView::indicator:indeterminate, +QTableView::indicator:indeterminate, +QColumnView::indicator:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QTreeView::indicator:indeterminate:hover, QTreeView::indicator:indeterminate:focus, QTreeView::indicator:indeterminate:pressed, +QListView::indicator:indeterminate:hover, +QListView::indicator:indeterminate:focus, +QListView::indicator:indeterminate:pressed, +QTableView::indicator:indeterminate:hover, +QTableView::indicator:indeterminate:focus, +QTableView::indicator:indeterminate:pressed, +QColumnView::indicator:indeterminate:hover, +QColumnView::indicator:indeterminate:focus, +QColumnView::indicator:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QTreeView, +QListView, +QTableView, +QColumnView { + background-color: #2b2b2b; /* background of a lot of stuff including spreadsheets.*/ + border: 0px solid #696968; + color: White; + gridline-color: #696968; + border-radius: 0px; +} + +QTableView, +QListView { + background-color: rgba(0, 0, 0, 0.232); /* background of a lot of stuff including spreadsheets.*/ +} + + +QTreeView:disabled, +QListView:disabled, +QTableView:disabled, +QColumnView:disabled { + background-color: #1c1b22; + color: #c2c7cb; +} + +QTreeView:selected, +QListView:selected, +QTableView:selected, +QColumnView:selected { + background-color: #557bb6; + color: White; +} + +QTreeView:focus, +QListView:focus, +QTableView:focus, +QColumnView:focus { + border: 1px solid #560062; +} + +QTreeView::item:pressed, +QListView::item:pressed, +QTableView::item:pressed, +QColumnView::item:pressed { + background-color: #557bb6; +} + +QTreeView::item:selected:active, +QListView::item:selected:active, +QTableView::item:selected:active, +QColumnView::item:selected:active { + background-color: #557bb6; +} + +QTreeView::item:selected:!active, +QListView::item:selected:!active, +QTableView::item:selected:!active, +QColumnView::item:selected:!active { + color: White; + background-color: #353535; +} + +QTreeView::item:!selected:hover, +QListView::item:!selected:hover, +QTableView::item:!selected:hover, +QColumnView::item:!selected:hover { + outline: 0; + color: White; + background-color: #557bb6; +} + +QTableCornerButton::section { + background-color: #2b2b2b; + border: 1px transparent #696968; + border-radius: 0px; +} + +QTableView::item { + color: white; +} +QTableView { + /*qproperty-AliasedCellBackgroundColor: #f700ff;*/ + /*qproperty-aliasBgColor: #f700ff;*/ +} + +/* QHeaderView ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qheaderview + +--------------------------------------------------------------------------- */ +QHeaderView { + background-color: #2b2b2b; + border: 1px solid #696968; + padding: 0; + margin: 0; + border-radius: 0px; + text-align: center; +} + +QHeaderView:disabled { + background-color: #2b2b2b; + border: 1px solid #696968; + color: rgb(174, 174, 174); +} + +QHeaderView::section { + background-color: #3c3c3c; + color: White; + border-radius: 0px; + font-size: 13px; + font-weight: bold; + text-align: center; +} + +QHeaderView::section::horizontal { + padding-top: 0; + padding-bottom: 0; + padding-left: 10px; + padding-right: 10px; + border-left: 1px solid #696968; +} + +QHeaderView::section::horizontal::first, QHeaderView::section::horizontal::only-one { + border-left: 1px solid #696968; + padding-left: 15px; +} + +QHeaderView::section::horizontal:disabled { + color: #353535; +} + +QHeaderView::section::vertical { + padding-top: 0; + padding-bottom: 0; + padding-left: 1px; + padding-right: 1px; + border-top: 1px solid #696968; +} + +QHeaderView::section::vertical::first, QHeaderView::section::vertical::only-one { + border-top: 1px solid #696968; +} + +QHeaderView::section::vertical:disabled { + color: #7a7a7a; +} + +QHeaderView::down-arrow { + /* Those settings (border/width/height/background-color) solve bug */ + /* transparent arrow background and size */ + background-color: #696969; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/down_arrow_light.svg); +} + +QHeaderView::up-arrow { + background-color: #696969; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/up_arrow_light.svg); +} + +/* QToolBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbox +used in PATH + +--------------------------------------------------------------------------- */ +QToolBox { + padding: 0px; + border: 1px solid #696969; + border-radius: 4px; + background-color: transparent; +} + +QToolBox:selected { + padding: 0px; + border: 0px solid #557bb6; +} + +QToolBox::tab { + background-color: #696969; + border: 0px solid #696969; + color: white; + background-image: url(qss:images_dark-light/down_arrow_lighter.svg); + background-repeat: none; + background-position: center left; +} + +QToolBox::tab:disabled { + color: #696969; +} + +QToolBox::tab:selected { + background-color: #696969; + background-image: url(qss:images_dark-light/transparent.svg); + padding-right: 5px; + background-repeat: none; +} + +QToolBox::tab:selected:disabled { + background-color: #696969; + border-bottom: 0px solid #cccccc; + color: white; +} + +QToolBox::tab:!selected { + +} + +QToolBox::tab:!selected:disabled { + background-color: #2b2b2b; +} + +QToolBox::tab:hover { + background-color: #557bb6; + } + +QToolBox QScrollArea QWidget QWidget { + padding: 0px; + border: 0px; + background-color: transparent; +} + +/* QFrame ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe +https://doc.qt.io/qt-5/qframe.html#-prop +https://doc.qt.io/qt-5/qframe.html#details +https://stackoverflow.com/questions/14581498/qt-stylesheet-for-hline-vline-color + +--------------------------------------------------------------------------- */ +/* (dot) .QFrame fix #141, #126, #123 */ +.QFrame { + border-radius: 0px; + border: 0px solid #696968; + background-color: #696969; + /* No frame */ + /* HLine */ + /* HLine */ +} + +.QFrame[frameShape="0"] { + border-radius: 1.9px; + border: 1px solid #696968; +} + +.QFrame[frameShape="4"] { + max-height: 1px; + border: none; + background-color: #696968; +} + +.QFrame[frameShape="5"] { + max-width: 1px; + border: none; + background-color: #2b2b2b; +} + +/* QSplitter -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsplitter + +--------------------------------------------------------------------------- */ +QSplitter { + background-color: #3c3c3c; + spacing: 1px; + padding: 1px; + margin: 1px; +} + +QSplitter::handle { + margin: 0px 0px; + padding: 0px; +} + +QSplitter::handle:horizontal { + background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + width: 1px; +} + +QSplitter::handle:vertical { + background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + height: 1px; +} + +QSplitter::handle:hover { + background-image: url(qss:images_dark-light/splitter_horizontal_light.svg); + background-position: center center; + background-repeat: none; + background-color: #557bb6; +} + +/* QDateEdit, QDateTimeEdit ----------------------------------------------- + +--------------------------------------------------------------------------- */ +QDateEdit, QDateTimeEdit { + selection-background-color: #557bb6; + border-style: solid; + border: 1px solid #696968; + border-radius: 1.9px; + /* This fixes 103, 111 */ + padding-top: 2px; + /* This fixes 103, 111 */ + padding-bottom: 2px; + padding-left: 4px; + padding-right: 4px; + min-width: 10px; +} + +QDateEdit:on, QDateTimeEdit:on { + selection-background-color: #557bb6; +} + +QDateEdit::drop-down, QDateTimeEdit::drop-down { + subcontrol-origin: padding; + subcontrol-position: top right; + width: 12px; + border-left: 1px solid #696968; +} + +QDateEdit::down-arrow, QDateTimeEdit::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + height: 8px; + width: 8px; +} + +QDateEdit::down-arrow:on, QDateEdit::down-arrow:hover, QDateEdit::down-arrow:focus, QDateTimeEdit::down-arrow:on, QDateTimeEdit::down-arrow:hover, QDateTimeEdit::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_lighter.svg); +} + +QDateEdit QAbstractItemView, QDateTimeEdit QAbstractItemView { + background-color: #2b2b2b; + border-radius: 2px; + border: 1px solid #696968; + selection-background-color: #557bb6; +} + +/* QAbstractView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractView:hover { + border: 1px solid #557bb6; + color: White; +} + +QAbstractView:selected { + background: #557bb6; + color: White; +} + +/* PlotWidget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +PlotWidget { + /* Fix cut labels in plots #134 */ + padding: 0px; +} \ No newline at end of file diff --git a/src/Gui/Stylesheets/Dark-modern-green.qss b/src/Gui/Stylesheets/Dark-modern-green.qss new file mode 100644 index 0000000000..af038f50d1 --- /dev/null +++ b/src/Gui/Stylesheets/Dark-modern-green.qss @@ -0,0 +1,2577 @@ +/* +ABOUT +============================================================================================================ +Revised stylesheet based on the original from Pablo Gil Fernández made by MisterMaker + +KNOWN BUGS and TO DO +============================================================================================================ +Please, follow the link to get updated information: +https://forum.freecad.org/viewtopic.php?t=78431 + +INSTALLATION WHEN NECESSARY +============================================================================================================ +1) Place the .qss files and /images/ folder in the path that fits your OS: + OSX = /Users/[YOUR_USER_NAME]/Library/Preferences/FreeCAD/Gui/Stylesheets/ + WINDOWS = C:/[INSTALLATION_PATH]/FreeCAD/data/Gui/Stylesheets/ + LINUX = /home/[YOUR_USER_NAME]/.FreeCAD/Gui/Stylesheets/ + +============================================================================================================ +TO MODIFY USE THESE COLORS: + #74b655 + #560062 + + +See Qt documentation: + + - https://doc.qt.io/qt-5/stylesheet.html + - https://doc.qt.io/qt-5/stylesheet-reference.html + - https://doc.qt.io/qt-5/stylesheet-examples.html + +--------------------------------------------------------------------------- */ + + +/* Reset elements ------------------------------------------------------------ + +Resetting everything helps to unify styles across different operating systems + +--------------------------------------------------------------------------- */ +* { + padding: 0px; + margin: 0px; + border: 0px; + border-style: none; + border-image: none; + outline: 0; +} + +/* specific reset for elements inside QToolBar */ +QToolBar * { + margin: 0px; + padding: 0px; +} + +/*hacks */ +Gui--PropertyEditor--PropertyEditor QLineEdit:read-only, +Gui--PropertyEditor--PropertyEditor QLineEdit:disabled, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:read-only, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:disabled { + color: transparent; + border-color: transparent; + background-color: transparent; + selection-color: transparent; + selection-background-color: transparent; + +} +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel, +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel:disabled { + color: transparent; + background-color: transparent; + border: none; + border-radius: 1px; + margin: 0px; + padding: 0px; +} + +Gui--PropertyEditor--PropertyEditor QSpinBox, +Gui--PropertyEditor--PropertyEditor QDoubleSpinBox, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox, +Gui--PropertyEditor--PropertyEditor QLineEdit, +Gui--PropertyEditor--PropertyEditor QComboBox { + margin-left: 0px; + margin-right: 0px; + padding-top: 0px; + padding-bottom: 0px; + +} + +/*================================================================================================== +Main window +==================================================================================================*/ +QMainWindow, +QDialog, +QDockWidget, +QToolBar { + background-color: #2b2b2b; /* main background color */ +} + +QMdiArea { + background-image: url(qss:images_dark-light/background_freecad_dark.svg); + background-position: center center; + background-repeat: no-repeat; +} +/*navgation src/Mod/Tux/NavigationIndicatorGui.py */ +Gui--NavigationIndicatorGui--BlenderNavigationStyle { +/*QAction#a4 {*/ + qproperty-icon: url(:/icons/icons/NavigationBlender_light.svg); +} +/*===== +/* QWidget ---------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QWidget { + background-color: #2b2b2b; + border: 0px solid #696968; + padding: 0px; + color: White; + selection-background-color: #74b655; + selection-color: White; +} + +QWidget:disabled { + background-color: transparent; + color: #c2c7cb; + selection-background-color: #74b655; + selection-color: #c2c7cb; +} + +QWidget::item:selected { + background-color: #74b655; +} + + /* Causes issue with colorselector. + QWidget::item:hover:!selected { + background-color: #74b655; + }*/ + +/* QMainWindow ------------------------------------------------------------ + +This adjusts the splitter in the dock widget, not qsplitter +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmainwindow + +--------------------------------------------------------------------------- */ +QMainWindow::separator { + /*background-color: #3c3c3c;*/ + border: 0px solid #696968; + spacing: 0px; + padding: 1px; +} + +QMainWindow::separator:vertical:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,stop:0.2 transparent,stop:0.5 #74b655, stop:0.8 transparent); + /*background-color: #74b655;*/ + image: url(qss:images_dark-light/splitter_vertical_light.svg); +} + +QMainWindow::separator:horizontal:hover { + background-color: qlineargradient(x1:0, y1:0, x2:1, y2:0,stop:0.2 transparent,stop:0.5 #74b655, stop:0.8 transparent); + /*background-color: #74b655;*/ + image: url(qss:images_dark-light/splitter_horizontal_light.svg); +} + +QMainWindow::separator:horizontal { + width: 4px; + margin-top: 0.1px; + margin-bottom: 0.1px; + /* image: url(qss:images_dark-light/splitter_horizontal_dark.svg);*/ +} + +QMainWindow::separator:vertical { + height: 4px; + margin-left: 0.1px; + margin-right: 0.1px; + /* image: url(qss:images_dark-light/splitter_vertical_dark.svg);*/ +} + +/* QToolTip --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtooltip + +--------------------------------------------------------------------------- */ +QToolTip { + background-color: #1c1b22; + color: White; + /* If you remove the border property, background stops working on Windows */ + border: none; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Remove opacity, fix #174 - may need to use RGBA */ +} + +/* QStatusBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qstatusbar + +--------------------------------------------------------------------------- */ +QStatusBar { + border: 0px solid #3c3c3c; + /* Fixes Spyder #9120, #9121 */ + background: #2b2b2b; + /* Fixes #205, white vertical borders separating items */ +} + +QStatusBar::item { + border: none; +} + +QStatusBar QToolTip { + background-color: #2b2b2b; + border: 1px solid #696968; + color: #2b2b2b; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Reducing transparency to read better */ + opacity: 230; +} + +QStatusBar QLabel { + /* Fixes Spyder #9120, #9121 */ + background: transparent; +} + +/* QCheckBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcheckbox + +--------------------------------------------------------------------------- */ +QCheckBox { + color: white; + padding: 0px; + outline: none; + border: 1px solid transparent; + background-color: transparent; +} + +QCheckBox:focus { + border: 1px solid #560062; +} + +QCheckBox QWidget:disabled { + background-color: transparent; + color: #c2c7cb; +} + +QCheckBox::indicator { + color: white; + background-color: #1c1b22; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QCheckBox::indicator:unchecked { + background-color: #1c1b22; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QCheckBox::indicator:unchecked:hover, QCheckBox::indicator:unchecked:focus, QCheckBox::indicator:unchecked:pressed { + background-color: #74b655; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QCheckBox::indicator:unchecked:disabled { + background-color: #2b2b2b; + image:url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QCheckBox::indicator:checked { + background-color: #1c1b22; + /*border: 1px solid #696968; /* QRadioButton has the same color */ + image:url(qss:images_dark-light/checkbox_light.svg); +} + +QCheckBox::indicator:checked:hover, QCheckBox::indicator:checked:pressed { + background-color: #74b655; +} + +QCheckBox::indicator:checked:disabled { + background-color: #2b2b2b; + image: url(qss:images_dark-light/check_light.svg); +} + +QCheckBox::indicator:indeterminate { + background-color: #1c1b22; + border: 1px solid #696968; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QCheckBox::indicator:indeterminate:disabled { + background-color: #2b2b2b; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QCheckBox::indicator:indeterminate:hover, QCheckBox::indicator:indeterminate:pressed { + background-color: #74b655; /* QRadioButton has the same color */ +} + +/* QGroupBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qgroupbox + +--------------------------------------------------------------------------- */ +QGroupBox { + font-weight: bold; + border: 1px solid #696968; + border-radius: 1.9px; + padding: 2px; + margin-top: 10px; + margin-bottom: 4px; +} + +QGroupBox::title { + subcontrol-origin: margin; + subcontrol-position: top left; + left: 4px; + padding-left: 2px; + padding-right: 4px; + padding-top: 6px; +} + +QGroupBox::indicator { + color: white; + background-color: #3c3c3c; + border: 1px solid #696968; + width: 12px; + height: 12px; + border-radius:1px; +} + +QGroupBox::indicator:unchecked { + background-color: #696968; + border: 1px solid #696968; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QGroupBox::indicator:unchecked:hover, QGroupBox::indicator:unchecked:focus, QGroupBox::indicator:unchecked:pressed { + background-color: #74b655; +} + +QGroupBox::indicator:unchecked:disabled { + background-color: #1c1b22; + border: 1px solid #696968; +} + +QGroupBox::indicator:checked { + border: none; + image:url(qss:images_dark-light/checkbox_light.svg); +} + +QGroupBox::indicator:checked:hover, QGroupBox::indicator:checked:focus, QGroupBox::indicator:checked:pressed { + background-color: #74b655; +} + +QGroupBox::indicator:checked:disabled { + background-color: #74b655; +} + +/* QRadioButton ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qradiobutton + +--------------------------------------------------------------------------- */ +QRadioButton { + background-color: transparent; + color: White; + border: none; + spacing: 4px; + padding-top: 4px; + padding-bottom: 4px; + outline: none; +} + +QRadioButton:focus { + border: 1px solid #560062; +} + +QRadioButton:disabled { + background-color: #696968; + color: #353535; +} + +QRadioButton QWidget { + background-color: transparent; + color: White; + spacing: 0px; + padding: 0px; + outline: none; + border: none; +} + +QRadioButton::indicator { + background-color: #3c3c3c; + border: 1px solid #696968; + border-radius: 6px; + margin-left: 0px; + height: 11px; + width: 11px; +} + +QRadioButton::indicator:unchecked { + /*image:url(qss:images_dark-light/radiobutton_light.svg);*/ +} + +QRadioButton::indicator:unchecked:hover, QRadioButton::indicator:unchecked:pressed { + background-color: #74b655; + border: 1px solid #74b655; + border-radius: 6px; +} + +QRadioButton::indicator:unchecked:disabled { + /*image:url(qss:images_dark-light/radiobutton_dark.svg);*/ + border: 1px solid #696968; +} + +QRadioButton::indicator:checked { + image:url(qss:images_dark-light/radiobutton_light.svg); +} + +QRadioButton::indicator:checked:hover, QRadioButton::indicator:checked:pressed { + background-color: #74b655; + border: 1px solid #74b655; + border-radius: 6px; + image:url(qss:images_dark-light/radiobutton_light.svg); +} + +QRadioButton::indicator:checked:disabled { + outline: none; + background-color: #696968; + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +/* QMenuBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenubar + +--------------------------------------------------------------------------- */ +QMenuBar { + background-color: #161616; + /*padding: 1px; + border: 0px solid rgba(0,0,0,140);*/ + color: White; + selection-background-color: #74b655; +} + +QMenuBar:focus { + border: 1px solid #560062; +} + +QMenuBar::item { + background: transparent; + /*padding-left:5px; + padding-right: 5px; + padding-bottom: 1px; + padding-top: 1px;*/ +} + +QMenuBar::item:selected { + background: transparent; + border: 0px solid #696968; + background-color: #74b655; +} + +QMenuBar::item:pressed { + /*padding: 2px; + padding-left: 10px; + padding-right: 10px;*/ + border: 0px solid #696968; + background-color: #74b655; + color: White; + /*margin-bottom: 0px; + padding-bottom: 0px;*/ +} + +/* QMenu ------------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenu + +--------------------------------------------------------------------------- */ +QMenu { + border-bottom: 2px rgba(0,0,0,140); + border-right: 2px rgba(0,0,0,140); + color: White; + margin: 0px; + background-color: #161616; + selection-background-color: #74b655; +} + +QMenu::separator { + height: 2px; + background-color: #3c3c3c; + margin-left: 30%; + margin-right: 30%; +} + +QMenu::item { + background-color: transparent; + padding: 2px 2px; /* make room for icon at left */ + /* Reserve space for selection border */ + border: 0px transparent #696968; +} + +QMenu::item:selected { + color: White; + background-color: #74b655; +} + +QMenu::item:pressed { + background-color: #74b655; +} + +QMenu::icon { + margin-left: 5px; + width: 14px; + height: 14px; +} + +QMenu::indicator { + margin-left: 2px; + margin-right: 2px; + padding: 0px; + width: 12px; + height: 12px; + /* non-exclusive indicator = check box style indicator (see QActionGroup::setExclusive) */ + /* exclusive indicator = radio button style indicator (see QActionGroup::setExclusive) */ +} + +QMenu::icon:checked { /* appearance of a 'checked' icon */ + background: #560062; + margin-left: -5px; + border: 5px solid #560062; + position: absolute; + border-radius: 0px; +} +QMenu::indicator:non-exclusive:unchecked { + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:non-exclusive:unchecked:hover, QMenu::indicator:non-exclusive:unchecked:focus, QMenu::indicator:non-exclusive:unchecked:pressed { + border: none; + background: #74b655; +} + +QMenu::indicator:non-exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QMenu::indicator:non-exclusive:checked { + image:url(qss:images_dark-light/checkbox_light.svg); +} + +QMenu::indicator:non-exclusive:checked:hover, QMenu::indicator:non-exclusive:checked:focus, QMenu::indicator:non-exclusive:checked:pressed { + border: none; + background: #74b655; +} + +QMenu::indicator:non-exclusive:checked:disabled { + image:url(qss:images_dark-light/checkbox_checked_disabled.svg); +} + +QMenu::indicator:non-exclusive:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:disabled { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:focus, QMenu::indicator:non-exclusive:indeterminate:hover, QMenu::indicator:non-exclusive:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QMenu::indicator:exclusive:unchecked { + image: url(qss:images_dark-light/transparent.svg); +} + +QMenu::indicator:exclusive:unchecked:hover, QMenu::indicator:exclusive:unchecked:focus, QMenu::indicator:exclusive:unchecked:pressed { + border: none; + outline: none; + background: #74b655; + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:checked { + border: none; + outline: none; + image: url(qss:images_dark-light/radiobutton_light.svg); +} + +QMenu::indicator:exclusive:checked:hover, QMenu::indicator:exclusive:checked:focus, QMenu::indicator:exclusive:checked:pressed { + border: none; + outline: none; + background: #74b655; + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:checked:disabled { + outline: none; + image: url(qss:images_dark-light/radiobutton_light.svg); +} + +QMenu::right-arrow { + margin: 5px; + padding-left: 12px; + image:url(qss:images_dark-light/right_arrow_lighter.svg); + height: 12px; + width: 12px; + background-color: transparent; +} + +/* QAbstractItemView ------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QAbstractItemView { + alternate-background-color: #5b5b5b; + color: White; + border: 1px solid #696968; + border-radius: 2px; +} + +QAbstractItemView QLineEdit { + padding: 2px; +} + +/* QAbstractScrollArea ---------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QAbstractScrollArea { + background-color: transparent; + border: 0px solid #696968; + border-radius: 0px; + /* fix #159 */ + padding: 0px; + /* remove min-height to fix #244 */ + color: White; +} + +QAbstractScrollArea:disabled { + color: #353535; +} + +/* QScrollArea ------------------------------------------------------------ + +--------------------------------------------------------------------------- +text input field disabled!!!!*/ +QScrollArea QWidget:disabled { + background-color: #2b2b2b; +} + +/* QScrollBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qscrollbar + +--------------------------------------------------------------------------- */ +QScrollBar:horizontal { + height: 16px; + margin: 2px 16px 2px 16px; + border: 0px solid #696968; + border-radius: 1.9px; + background-color: #2b2b2b; +} + +QScrollBar:vertical { + background-color: #2b2b2b; + width: 16px; + margin: 16px 2px 16px 2px; + border: 0px solid #696968; + border-radius: 1.9px; +} + +QScrollBar::handle:horizontal { + background-color: #696969; + border: 1px solid #2b2b2b; + border-radius: 1.9px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:hover { + background-color: #74b655; + border: #696968; + border-radius: 1.9px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:focus { + border: 1px solid #560062; +} + +QScrollBar::handle:vertical { + background-color: #696969; + border: 1px solid #696968; + min-height: 8px; + border-radius: 1.9px; +} + +QScrollBar::handle:vertical:hover { + background-color: #74b655; + border: #696968; + border-radius: 1.9px; + min-height: 8px; +} + +QScrollBar::handle:vertical:focus { + border: 1px solid #560062; +} + +QScrollBar::add-line:horizontal { + border-image: url(qss:images_dark-light/right_arrow_light.svg); + height: 9px; + width: 5px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:horizontal:hover, QScrollBar::add-line:horizontal:on { + border-image: url(qss:images_dark-light/right_arrow_lighter.svg); + + height: 9px; + width: 5px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical { + border-image: url(qss:images_dark-light/down_arrow_light.svg); + height: 5px; + width: 9px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical:hover, QScrollBar::add-line:vertical:on { + border-image: url(qss:images_dark-light/down_arrow_lighter.svg); + height: 5px; + width: 9px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/left_arrow_light.svg); + height: 9px; + width: 5px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal:hover, QScrollBar::sub-line:horizontal:on { + border-image: url(qss:images_dark-light/left_arrow_lighter.svg); + height: 9px; + width: 5px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/up_arrow_light.svg); + height: 5px; + width: 9px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical:hover, QScrollBar::sub-line:vertical:on { + border-image: url(qss:images_dark-light/up_arrow_lighter.svg); + height: 5px; + width: 9px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::up-arrow:horizontal, QScrollBar::down-arrow:horizontal { + background: none; +} + +QScrollBar::up-arrow:vertical, QScrollBar::down-arrow:vertical { + background: none; +} + +QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal { + background: none; +} + +QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical { + background: none; +} + +/* QTextEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-specific-widgets + + +report view +--------------------------------------------------------------------------- */ +QTextEdit { + background-color: #2b2b2b; + color: White; + border-radius: 1.9px; + border: 0px solid #696968; +} + +QTextEdit:focus { + border: 1px solid #560062; +} + +QTextEdit:selected { + background: #346792; + color: white; +} + +/* QPlainTextEdit --------------------------------------------------------- +Python +--------------------------------------------------------------------------- */ +QPlainTextEdit { + background-color: #3c3c3c; + color: White; + border-radius: 1.9px; + border: 0px solid #696968; +} + +QPlainTextEdit:focus { + border: 1px solid #560062; +} + +QPlainTextEdit:selected { + background: #74b655; + color: White; +} + +/* QSizeGrip -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsizegrip + +--------------------------------------------------------------------------- */ +QSizeGrip { + background: transparent; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/sizegrip_light.svg); +} + +/* QStackedWidget --------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QStackedWidget { + padding: 0px; + border: 0px solid #696968; +} + +/* QToolBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbar + +--------------------------------------------------------------------------- */ +QToolBar { + background-color: #2b2b2b; + border-bottom: 0px solid rgba(0,0,0,120); + padding: 1px; + font-weight: bold; + spacing: 1px; +} + +QToolBar:disabled { + /* Fixes #272 */ + background-color: #2b2b2b; +} + +QToolBar::handle:horizontal { + width: 8px; + margin: 3px 3px; + background-position: top right; + background-repeat: repeat-y; + background-image: url(qss:images_dark-light/Hmovetoolbar_light.svg); +} + +QToolBar::handle:vertical { + height: 8px; + margin: 3px 3px; + background-position: left bottom; + background-repeat: repeat-x; + background-image: url(qss:images_dark-light/Vmovetoolbar_light.svg); +} + +QToolBar::separator:horizontal { + width: 2px; + margin: 4px 4px; + background-color: transparent; +} + +QToolBar::separator:vertical { + height: 2px; + margin: 4px 4px; + background-color: transparent; +} + +/*The "show more" button (it can also be stylable with "QToolBarExtension" icon is not working Qproperty works but breaks when you move the toolbar see also */ +QToolButton#qt_toolbar_ext_button { +margin: 0px; +padding: 0px; +background-color: #696969; +/*background-image: url(qss:images_dark-light/more_light.svg);*/ +background-repeat: none; +background-position: center center; +} + +QToolButton#qt_toolbar_ext_button:hover { +/*background-image: url(qss:images_dark-light/more_light.svg);*/ +background-color: #74b655; +} + +QToolButton#qt_toolbar_ext_button:on { +/*background-image: url(qss:images_dark-light/more_light.svg);*/ +border-color: #696968; +background-color: #74b655; +} + + +/* QAbstractSpinBox ------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractSpinBox, +QSpinBox { + background-color: #1c1b22; + border: 1px solid transparent; + color: White; + /* This fixes 103, 111 */ + /* padding-top: 0px; + /* This fixes 103, 111 */ + /*padding-bottom: 0px; + /*padding-left: 4px; + /*padding-right: 4px; + border-radius: 1.9px;*/ + min-height: 1.7em; + /* min-width: 5px; removed to fix 109 */ +} + +QAbstractSpinBox:up-button { + background-color: #696968; + subcontrol-origin: border; + subcontrol-position: top right; + border-left: 1px solid transparent; + border-bottom: 1px solid #1c1b22; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-bottom: -1px;*/ +} + +QAbstractSpinBox::up-arrow, QAbstractSpinBox::up-arrow:disabled, QAbstractSpinBox::up-arrow:off { + image: url(qss:images_dark-light/up_arrow_disabled_light.svg); + /* height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::up-arrow:hover { + /*background-color: #74b655;*/ + image: url(qss:images_dark-light/up_arrow_lighter.svg); +} + +QAbstractSpinBox:down-button { + background-color: #696968; + subcontrol-origin: border; + subcontrol-position: bottom right; + border-left: 1px solid #696968; + border-top: 1px solid #696968; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-top: -1px;*/ +} + +QAbstractSpinBox::down-arrow, QAbstractSpinBox::down-arrow:disabled, QAbstractSpinBox::down-arrow:off { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + /*height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::down-arrow:hover { + image: url(qss:images_dark-light/down_arrow_lighter.svg); +} + +QAbstractSpinBox:hover { + /*border: 1px solid #74b655; + color: White;*/ +} + +QAbstractSpinBox:focus { + border: 1px solid #560062; +} + +QAbstractSpinBox:selected { + background: #560062; + /*color: White;*/ +} + +/* ------------------------------------------------------------------------ */ +/* DISPLAYS --------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QLabel ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe + +--------------------------------------------------------------------------- */ +QLabel { + background-color: transparent; + border: 0px solid #696968; + padding: 2px; + margin: 0px; + color: White; +} + +QLabel:disabled { + background-color: transparent; + border: 0px solid #696968; + color: #c2c7cb; +} + +QLabel[haslink="true"] { + color: orange; +} + + +/* QTextBrowser ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QTextBrowser { + background-color: #1c1b22; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; +} + +QTextBrowser:disabled { + background-color: #2b2b2b; + border: 1px solid #696968; + color: #c2c7cb; + border-radius: 1.9px; +} + +QTextBrowser:hover, QTextBrowser:!hover, QTextBrowser:selected, QTextBrowser:pressed { + border: 1px solid #74b655; +} + +/* QGraphicsView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QGraphicsView { + background-color: transparent; + border: 0px solid #74b655; + color: White; + border-radius: 0px; +} + +QGraphicsView:disabled { + background-color: #1c1b22; + border: 0px solid #696968; + color: #c2c7cb; + border-radius: 0px; +} + +QGraphicsView:hover, QGraphicsView:!hover, QGraphicsView:selected, QGraphicsView:pressed { + border: 0px solid #ff00f7; +} + +/* QCalendarWidget -------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCalendarWidget { + border: 1px solid #696968; + border-radius: 1.9px; +} + +QCalendarWidget:disabled { + background-color: #353535; + color: #c2c7cb; +} + +/* QLCDNumber ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QLCDNumber { + background-color: #1aff00; + color: White; +} + +QLCDNumber:disabled { + background-color: #2b2b2b; + color: #c2c7cb; +} + +/* QProgressBar ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qprogressbar + +--------------------------------------------------------------------------- */ +QProgressBar { + background-color: #c2c7cb; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar:disabled { + background-color: #161616; + border: 1px solid #696968; + color: #696969; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar::chunk { + background-color: #74b655; + color: #2b2b2b; + border-radius: 1.9px; +} + +QProgressBar::chunk:disabled { + background-color: #161616; + color: #696968; + border-radius: 1.9px; +} + +/* ------------------------------------------------------------------------ */ +/* BUTTONS ---------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QPushButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qpushbutton + +--------------------------------------------------------------------------- */ +QPushButton { + background-color: #696969; + color: White; + border-radius: 2px; + padding: 2px; + outline: none; + border: none; +} + +QPushButton:disabled { + background-color: #2b2b2b; + color: #c2c7cb; + border-radius: 2px; + padding: 2px; +} + +QPushButton:checked { + background-color: #74b655; + border-radius: 2px; + padding: 2px; + outline: none; +} + +QPushButton:checked:disabled { + background-color: #74b655; + color: #3c3c3c; + border-radius: 2px; + padding: 2px; + outline: none; +} + +QPushButton:checked:selected { + background: #74b655; +} + +QPushButton:hover { + background-color: #74b655; + color: White; +} + +QPushButton:pressed { + background-color: #74b655; +} + +QPushButton:selected { + background: #560062; + color: White; +} + +QPushButton::menu-indicator { + subcontrol-origin: padding; + subcontrol-position: bottom right; + bottom: 4px; +} + +QDialogButtonBox QPushButton { + /* Issue # 194 # 248 - Special case of QPushButton inside dialogs, for better UI */ + min-width: 80px; +} + +/* QToolButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbutton + +--------------------------------------------------------------------------- */ +QToolButton { + background-color: transparent; + color: White; + border-radius: 1px; + padding: 0px; + outline: none; + border: none; + /* The subcontrols below are used only in the DelayedPopup mode */ + /* The subcontrols below are used only in the MenuButtonPopup mode */ + /* The subcontrol below is used only in the InstantPopup or DelayedPopup mode */ +} + +QToolButton:disabled { + background-color: rgba(0, 0, 0, 0.065); + color: transparent; + border-radius: 1px; + padding: 0px; + opacity: 1.0; +} + +QToolButton:checked { + background-color: #74b655; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:disabled { + background-color: #b65555; + color: #c2c7cb; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:hover { + background-color: #74b655; + color: White; +} + +QToolButton:checked:pressed { + background-color: #74b655; +} + +QToolButton:checked:selected { + background: #560062; + color: White; +} + +QToolButton:hover { + background-color: #74b655; + color: White; +} + +QToolButton:pressed { + background-color: #560062; +} + +QToolButton:selected { + background: #74b655; + color: White; +} + +QToolButton[popupMode="0"] { + /* Only for DelayedPopup */ + padding-right: 20px; +} + +QToolButton[popupMode="1"] { + /* Only for MenuButtonPopup */ + padding-right: 20px; +} +QToolButton[popupMode="0"]::menu-button { + border: none; +} + +QToolButton[popupMode="0"]::menu-button:hover { + border: none; + border-left: 2px solid #fe0000; + border-radius: 0px; +} +QToolButton[popupMode="1"]::menu-button { + border: none; +} + +QToolButton[popupMode="1"]::menu-button:hover { + border: none; + border-left: 2px solid #e5ff00; + border-radius: 0px; +} + +QToolButton[popupMode="2"] { + /* Only for InstantPopup */ + padding-right: 20px; +} + +QToolButton::menu-button { + border-bottom: 0px solid #ffffff; + border-radius: 2px; + /* 16px width + 4px for border = 20px allocated above */ + width: 1.6ex; + padding: 2px; + border-radius: 2px; + border: 0px #000000; +} + +QToolButton::menu-button:hover { + /* background: rgba(0, 0, 0, 0.5);*/ + +} + +QToolButton::menu-button:checked:hover { + /* background: rgba(0, 0, 0, 0.5);*/ +} + +QToolButton::menu-indicator { + /* Exclude a shift for better image */ + subcontrol-position: right bottom; + /* Shift it a bit */ +} + +QToolButton::menu-arrow { + image: url(qss:images_dark-light/more_arrow_light.svg); + width: 1.5ex; + height: 1.5ex; + subcontrol-position: right bottom; + background: transparent; +} +QToolButton::menu-arrow:open { + subcontrol-position: right bottom; + image: url(qss:images_dark-light/more_arrow_light.svg); +} +QToolButton::menu-arrow:hover { + image: url(qss:images_dark-light/more_arrow_light.svg); + background-color: rgba(0, 0, 0, 0.498); + border: 1px solid rgba(0, 0, 0, 0.498); +} + +/* QCommandLinkButton ----------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCommandLinkButton { + background-color: transparent; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; + padding: 0px; + margin: 0px; +} + +QCommandLinkButton:disabled { + background-color: transparent; + color: #c2c7cb; +} + +/* ------------------------------------------------------------------------ */ +/* INPUTS - NO FIELDS ----------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QComboBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QComboBox { + border: 1px solid transparent; + background: #1c1b22; + border-radius: 2px; + selection-background-color: #74b655; + padding-left: 2px; + padding-right: 2px; + /* padding-right = 36; 4 + 16*2 See scrollbar size */ + /* changed to 4px to fix #239 */ + /* Fixes #103, #111 */ + min-height: 1.5em; + /* padding-top: 2px; removed to fix #132 */ + /* padding-bottom: 2px; removed to fix #132 */ + /* min-width: 75px; removed to fix #109 */ + /* Needed to remove indicator - fix #132 */ +} +QComboBox:editable { + background: #1c1b22; +} +QComboBox QAbstractItemView { + border: 0px solid #696968; + border-radius: 0px; + background-color: #1c1b22; + selection-background-color: #74b655; +} + +QComboBox QAbstractItemView:hover { + background-color:Black; + color: White; +} + +QComboBox QAbstractItemView:selected { + background: #74b655; + color: White; +} + +QComboBox QAbstractItemView:alternate { + background: #3c3c3c; +} + +QComboBox:disabled { + background-color: #2b2b2b; + color: #353535; +} + +QComboBox:hover { + /*background-color: #74b655;*/ + border: 1px solid #74b655; +} + +QComboBox:focus { + border: 1px solid #560062; +} + +QComboBox:on { + selection-background-color: #560062; +} + +QComboBox::indicator { + border: none; + border-radius: 0px; + background-color: transparent; + selection-background-color: transparent; + color: transparent; + selection-color: #74b655; + /* Needed to remove indicator - fix #132 */ +} + +QComboBox::indicator:alternate { + background: #696968; +} + +QComboBox::item { + /* Remove to fix #282, #285 and MR #288*/ + /*&:checked { + font-weight: bold; + } + + &:selected { + border: 0px solid transparent; + } + */ +} + +QComboBox::item:alternate { + background: #3c3c3c; +} + +QComboBox::drop-down { + subcontrol-origin: padding; + background-color: #696969; + subcontrol-position: top right; + width: 14px; + border-left: 1px solid #696968; +} +QComboBox::drop-down:hover { + background-color: #74b655; +} + +QComboBox::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + height: 10px; + width: 10px; +} + +QComboBox::down-arrow:on, QComboBox::down-arrow:hover, QComboBox::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_lighter.svg); +} + + +/*================================================================================================== +Tasks panel (custom FreeCAD class) +==================================================================================================*/ +Gui--PropertyEditor--PropertyEditor { + qproperty-groupTextColor: white; + qproperty-groupBackground: #3c3c3c; + border: 0px solid #696968; + +} + +/* Action group */ +QFrame[class="panel"] { +background-color: transparent; /* temporal (transparent background) */ + +} + +QSint--ActionGroup { +padding: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +margin: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +} + +/* Separator line */ +QSint--ActionGroup QFrame[height="1"], +QSint--ActionGroup QFrame[height="2"], +QSint--ActionGroup QFrame[height="3"], +QSint--ActionGroup QFrame[width="1"], +QSint--ActionGroup QFrame[width="2"], +QSint--ActionGroup QFrame[width="3"] { +border-color: rgba(0,0,0,60); +} + +/* Panel header */ +QSint--ActionGroup QFrame[class="header"] { +border-top: 1px solid #696968; +border-left: 1px solid #696968; +border-right: 1px solid #696968; +background-color: #696969; /* Task Panel Header background color */ +border-top-left-radius: 3px; +border-top-right-radius: 3px; +border-bottom-left-radius: 0px; +border-bottom-right-radius: 0px; +margin: 0px; +padding: 0px; +} + +QSint--ActionGroup QFrame[class="header"]:hover { +background-color: #74b655; +} + +QSint--ActionGroup QToolButton[class="header"] { +color: white; /* Task Panel Header text color */ +text-align: left; +font-weight: bold; +border: none; +margin: 0px; +padding: 0px; +} + +QSint--ActionGroup QFrame[class="header"] QLabel { +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_light.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; +} + +QSint--ActionGroup QFrame[class="header"] QLabel:hover { +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_lighter.svg); +} + +QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"] { +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_light.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; +} + +QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"]:hover { +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_lighter.svg); +} + +QSint--ActionGroup QFrame[class="content"] { +background-color: transparent; /* Task Panel background color */ +margin: 0px; +padding: 0px; +border-bottom: 1px solid #696968; +border-left: 1px solid #696968; +border-right: 1px solid #696968; +border-top-left-radius: 0px; +border-top-right-radius: 0px; +border-bottom-left-radius: 3px; +border-bottom-right-radius: 3px; +} + +QSint--ActionGroup QFrame[class="content"] > QWidget { +background-color: #2b2b2b; /* Task Panel background color */ +} + +/* Fixs for tabs inside Task Panel */ +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:top:selected { +border-bottom-color: #74b655; /* same as Task Panel background color */ +} + +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:bottom:selected { +border-top-color: #74b655; /* same as Task Panel background color */ +} + +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:right:selected { +border-right-color: #74b655; /* same as Task Panel background color */ +} + +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:left:selected { +border-left-color: #74b655; /* same as Task Panel background color */ +} + +/* Fix for buttons with icons that showed cropped (still not happy with result) */ +QSint--ActionGroup QFrame[class="content"] > QWidget > QPushButton { +padding: 2px; /* bigger padding crops text and icons... */ +margin: 0px; +} + +/* Fix for lists inside task panels */ /* sketcher constraints list */ +QSint--ActionGroup QFrame[class="content"] QTreeView, +QSint--ActionGroup QFrame[class="content"] QListView, +QSint--ActionGroup QFrame[class="content"] QTableView { +color: white; +background-color: black; +} + + +/* found inside Part Design Workbench and "make a draft on a face" Task panel options */ +QSint--ActionGroup QFrame[class="content"] QToolButton { + color: white; + text-align: center; + background-color: #696969; + border: 0px solid #adadad; + padding: 1px 1px; /* different than regular QPushButton */ + margin: 0px; /* different than regular QPushButton */ + min-height: 16px; /* same as QTabBar QPushButton min-width */ + border-radius: 1px; +} + +QSint--ActionGroup QFrame[class="content"] QToolButton:hover{ + background: #74b655; + border: 1px solid #74b655; +} +QSint--ActionGroup QFrame[class="content"] QToolButton:focus { + border: 1px solid #560062; +} + +QSint--ActionGroup QFrame[class="content"] QToolButton:disabled, +QSint--ActionGroup QFrame[class="content"] QToolButton:disabled:checked { + color: #696969; + background-color: #1c1b22; +} + +QSint--ActionGroup QFrame[class="content"] QToolButton:pressed { + background: #74b655; + border: 1px solid #74b655; +} + +/* QSlider ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qslider + +--------------------------------------------------------------------------- */ +QSlider:disabled { + background: #2b2b2b; +} + +QSlider:focus { + border: 1px solid #560062; +} + +QSlider::groove:horizontal { + background: #2b2b2b; + border: 1px solid #696968; + height: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::groove:vertical { + background: #74b655; + border: 1px solid #696968; + width: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::add-page:vertical { + background: #74b655; + border: 1px solid #696968; + width: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::add-page:vertical :disabled { + background: #696968; +} + +QSlider::sub-page:horizontal { + background: #74b655; + border: 1px solid #0073ff; + height: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::sub-page:horizontal:disabled { + background: #74b655; +} + +QSlider::handle:horizontal { + background: #353535; + border: 1px solid #2b2b2b; + width: 8px; + height: 8px; + margin: -8px 0px; + border-radius: 1.9px; +} + +QSlider::handle:horizontal:hover { + background: #74b655; + border: 1px solid #74b655; +} + +QSlider::handle:horizontal:focus { + border: 1px solid #560062; +} + +QSlider::handle:vertical { + background: #c2c7cb; + border: 1px solid #696968; + width: 8px; + height: 8px; + margin: 0 -8px; + border-radius: 1.9px; +} + +QSlider::handle:vertical:hover { + background: #74b655; + border: 2px solid #74b655; +} + +QSlider::handle:vertical:focus { + border: 1px solid #560062; +} + +/* QLineEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlineedit + +--------------------------------------------------------------------------- */ +QLineEdit { + background-color: #1c1b22; + padding-top: 2px; + /* This QLineEdit fix 103, 111 */ + padding-bottom: 2px; + /* This QLineEdit fix 103, 111 */ + padding-left: 4px; + padding-right: 4px; + border-style: solid; + border: 1px solid #696968; + border-radius: 2px; + color: White; +} + +QLineEdit:disabled { + background-color: #2b2b2b; + color: #c2c7cb; +} + +QLineEdit:hover { + border: 1px solid #74b655; + color: White; +} + +QLineEdit:focus { + border: 2px solid #560062; +} + +QLineEdit:selected { + background-color: #74b655; + color: white; +} + +/* QTabWiget -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabWidget { + padding: 2px; + selection-background-color: #74b655; +} + +QTabWidget QWidget { + /* Fixes #189 */ + border-radius: 1.9px; +} + +QTabWidget::pane { + border: 0px solid #8c00ffa1; + border-radius: 1.9px; + margin: 0px; + /* Fixes double border inside pane with pyqt5 */ + padding: 0px; +} + +QTabWidget::pane:selected { + background-color: #74b655; + border: 1px solid #346792; +} +/* QTabBar ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabBar, QDockWidget QTabBar { + qproperty-drawBase: 0; + border-radius: 2px; + margin: 0px; + padding: 2px; + border: 0; + alignment: center; + /* left: 5px; move to the right by 5px - removed for fix */ +} + +QTabBar::close-button, QDockWidget QTabBar::close-button { + border: 0; + margin: 0; + padding: 1px; + image: url(qss:images_dark-light/close_light.svg); +} + +QTabBar::close-button:hover, QDockWidget QTabBar::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); + /*background-color: rgba(255, 0, 0, 0.3);*/ +} + +QTabBar::close-button:pressed, QDockWidget QTabBar::close-button:pressed { + image: url(qss:images_dark-light/close_.svg); +} + +QTabBar::tab, QDockWidget QTabBar::tab { + /* !selected and disabled ----------------------------------------- */ + /* selected ------------------------------------------------------- */ +} + +QTabBar::tab:top:selected:disabled, QDockWidget QTabBar::tab:top:selected:disabled { + border-bottom: 3px solid #696969; + color: #515151; + background-color: #696969; +} + +QTabBar::tab:bottom:selected:disabled, QDockWidget QTabBar::tab:bottom:selected:disabled { + border-top: 3px solid #696969; + color: #515151; + background-color: #696969; +} + +QTabBar::tab:left:selected:disabled, QDockWidget QTabBar::tab:left:selected:disabled { + border-right: 3px solid #696969; + color: #515151; + background-color: #696969; +} + +QTabBar::tab:right:selected:disabled, QDockWidget QTabBar::tab:right:selected:disabled { + border-left: 3px solid #696969; + color: #515151; + background-color: #696969; +} + +QTabBar::tab:top:!selected:disabled, QDockWidget QTabBar::tab:top:!selected:disabled { + border-bottom: 3px solid #696969; + color: #515151; + background-color: #696969; +} + +QTabBar::tab:bottom:!selected:disabled, QDockWidget QTabBar::tab:bottom:!selected:disabled { + border-top: 3px solid #696969; + color: #515151; + background-color: #696969; +} + +QTabBar::tab:left:!selected:disabled, QDockWidget QTabBar::tab:left:!selected:disabled { + border-right: 3px solid #696969; + color: #515151; + background-color: #696969; +} + +QTabBar::tab:right:!selected:disabled, QDockWidget QTabBar::tab:right:!selected:disabled { + border-left: 3px solid #696969; + color: #515151; + background-color: #696969; +} + +QTabBar::tab:top:!selected, QDockWidget QTabBar::tab:top:!selected { + border-bottom: 2px solid #696969; + margin-top: 2px; +} + +QTabBar::tab:bottom:!selected, QDockWidget QTabBar::tab:bottom:!selected { + border-top: 2px solid #696969; + margin-bottom: 2px; +} + +QTabBar::tab:left:!selected, QDockWidget QTabBar::tab:left:!selected { + border-left: 2px solid #696969; + margin-right: 2px; +} + +QTabBar::tab:right:!selected, QDockWidget QTabBar::tab:right:!selected { + border-right: 2px solid #696969; + margin-left: 2px; +} + +QTabBar::tab:top, QDockWidget QTabBar::tab:top { + background-color: #696969; + margin-left: 3px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + min-width: 5px; + border: 0px solid #696969; + border-radius: 4px; +} + +QTabBar::tab:top:selected, QDockWidget QTabBar::tab:top:selected { + background-color: #2b2b2b; + /*border: 1px solid #560062; + border-radius: 4px; + margin-left: 4px; + margin-right: 4px; + padding-left: 3px; + padding-right: 3px;*/ +} + +QTabBar::tab:top:!selected:hover, QDockWidget QTabBar::tab:top:!selected:hover { + /*border: 1px solid #74b655;*/ + border: 0px solid #74b655; + background-color: #74b655; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; +} + +QTabBar::tab:bottom, QDockWidget QTabBar::tab:bottom { + border: 0px solid #696969; + background-color: #696969; + margin-left: 3px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + border-radius: 4px; + min-width: 5px; +} + +QTabBar::tab:bottom:selected, QDockWidget QTabBar::tab:bottom:selected { + background-color: #2b2b2b; + /*border: 1px solid #560062; + border-radius: 4px; + margin-left: 4px; + margin-right: 4px; + padding-left: 3px; + padding-right: 3px;*/ +} + +QTabBar::tab:bottom:!selected:hover, QDockWidget QTabBar::tab:bottom:!selected:hover { +/*border: 1px solid #74b655;*/ + border: 0px solid #74b655; + background-color: #74b655; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; +} + +QTabBar::tab:left, QDockWidget QTabBar::tab:left { + background-color: #2b2b2b; + margin-top: 2px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + border-radius: 4px; + min-height: 5px; +} + +QTabBar::tab:left:selected, QDockWidget QTabBar::tab:left:selected { + background-color: #2b2b2b; + border: 0px solid #560062; +} + +QTabBar::tab:left:!selected:hover, QDockWidget QTabBar::tab:left:!selected:hover { + border: 0px solid #74b655; + background-color: #74b655; + /* Fixes different behavior #271 */ + margin-right: 0px; + padding-right: -1px; +} + +QTabBar::tab:right, QDockWidget QTabBar::tab:right { + background-color: #2b2b2b; + margin-top: 2px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + min-height: 5px; + border: 10px; +} + +QTabBar::tab:right:selected, QDockWidget QTabBar::tab:right:selected { + background-color: #2b2b2b; + border: 0px solid #560062; +} + +QTabBar::tab:right:!selected:hover, QDockWidget QTabBar::tab:right:!selected:hover { + border: 0px solid #74b655; + background-color: #74b655; + /* Fixes different behavior #271 */ + margin-left: 0px; + padding-left: 0px; +} + +QTabBar QToolButton, QDockWidget QTabBar QToolButton { + /* Fixes #136 */ + background-color: #2b2b2b; + height: 12px; + width: 12px; +} + +QTabBar QToolButton:pressed, QDockWidget QTabBar QToolButton:pressed { + border: 0px solid #74b655; + background-color: #74b655; +} + +QTabBar QToolButton:pressed:hover, QDockWidget QTabBar QToolButton:pressed:hover { + border: 0px solid #74b655; + background-color: #74b655; +} + +QTabBar QToolButton::left-arrow:enabled, QDockWidget QTabBar QToolButton::left-arrow:enabled { + image: url(qss:images_dark-light/left_arrow_lighter.svg); +} + +QTabBar QToolButton::left-arrow:disabled, QDockWidget QTabBar QToolButton::left-arrow:disabled { + image: url(qss:images_dark-light/left_arrow_disabled_light.svg); +} + +QTabBar QToolButton::right-arrow:enabled, QDockWidget QTabBar QToolButton::right-arrow:enabled { + image: url(qss:images_dark-light/right_arrow_lighter.svg); +} + +QTabBar QToolButton::right-arrow:disabled, QDockWidget QTabBar QToolButton::right-arrow:disabled { + image: url(qss:images_dark-light/right_arrow_disabled_light.svg); +} + +/* QDockWiget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QDockWidget { + background-color: #2b2b2b; + border: 1px solid #696968; + border-radius: 1.9px; + titlebar-close-icon: url(qss:images_dark-light/transparent.svg); + titlebar-normal-icon: url(qss:images_dark-light/transparent.svg); +} + +QDockWidget::title { + /* Better size for title bar */ + padding: 3px; + spacing: 4px; + border: none; + background-color: #2b2b2b; + text-align: center; + font-weight: bold; +} + +QDockWidget::close-button { + icon-size: 10px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/close_light.svg); +} + +QDockWidget::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); +} + +QDockWidget::close-button:pressed { + image: url(qss:images_dark-light/close_light.svg); +} + +QDockWidget::float-button { + icon-size: 12px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/undock_light.svg); +} + +QDockWidget::float-button:hover { + /*background-color: #74b655;*/ + image: url(qss:images_dark-light/undock_blue.svg); +} + +QDockWidget::float-button:pressed { + image: url(qss:images_dark-light/undock_light.svg); +} + +/* QTreeView QListView QTableView ----------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtreeview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlistview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtableview + +--------------------------------------------------------------------------- */ +QTreeView::branch { + background: transparent; +} + +QTreeView::branch:has-siblings:!adjoins-item { + border-image: url(qss:images_dark-light/branch_vline_light.svg) 0; +} + +QTreeView::branch:has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_more_light.svg) 0; +} + +QTreeView::branch:!has-children:!has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_end_light.svg) 0; +} + +QTreeView::branch:closed:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_closed_light.svg) 0; +} + +QTreeView::branch:has-children:!has-siblings:closed { + border-image: url(qss:images_dark-light/branch_end_closed_light.svg) 0; +} + +QTreeView::branch:open:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_open_light.svg) 0; +} + +QTreeView::branch:open:has-children:!has-siblings { + border-image: url(qss:images_dark-light/branch_end_open_light.svg) 0; +} + +QTreeView::indicator:checked, +QListView::indicator:checked, +QTableView::indicator:checked, +QColumnView::indicator:checked { + image: url(qss:images_dark-light/checkbox_light.svg); +} + +QTreeView::indicator:checked:hover, QTreeView::indicator:checked:focus, QTreeView::indicator:checked:pressed, +QListView::indicator:checked:hover, +QListView::indicator:checked:focus, +QListView::indicator:checked:pressed, +QTableView::indicator:checked:hover, +QTableView::indicator:checked:focus, +QTableView::indicator:checked:pressed, +QColumnView::indicator:checked:hover, +QColumnView::indicator:checked:focus, +QColumnView::indicator:checked:pressed { + image: url(qss:images_dark-light/checkbox_light_hover.svg); +} + +QTreeView::indicator:unchecked, +QListView::indicator:unchecked, +QTableView::indicator:unchecked, +QColumnView::indicator:unchecked { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QTreeView::indicator:unchecked:hover, QTreeView::indicator:unchecked:focus, QTreeView::indicator:unchecked:pressed, +QListView::indicator:unchecked:hover, +QListView::indicator:unchecked:focus, +QListView::indicator:unchecked:pressed, +QTableView::indicator:unchecked:hover, +QTableView::indicator:unchecked:focus, +QTableView::indicator:unchecked:pressed, +QColumnView::indicator:unchecked:hover, +QColumnView::indicator:unchecked:focus, +QColumnView::indicator:unchecked:pressed { + image: url(qss:images_dark-light/checkbox_unchecked_hover_light.svg); +} + +QTreeView::indicator:indeterminate, +QListView::indicator:indeterminate, +QTableView::indicator:indeterminate, +QColumnView::indicator:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QTreeView::indicator:indeterminate:hover, QTreeView::indicator:indeterminate:focus, QTreeView::indicator:indeterminate:pressed, +QListView::indicator:indeterminate:hover, +QListView::indicator:indeterminate:focus, +QListView::indicator:indeterminate:pressed, +QTableView::indicator:indeterminate:hover, +QTableView::indicator:indeterminate:focus, +QTableView::indicator:indeterminate:pressed, +QColumnView::indicator:indeterminate:hover, +QColumnView::indicator:indeterminate:focus, +QColumnView::indicator:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QTreeView, +QListView, +QTableView, +QColumnView { + background-color: #2b2b2b; /* background of a lot of stuff including spreadsheets.*/ + border: 0px solid #696968; + color: White; + gridline-color: #696968; + border-radius: 0px; +} + +QTableView, +QListView { + background-color: rgba(0, 0, 0, 0.232); /* background of a lot of stuff including spreadsheets.*/ +} + + +QTreeView:disabled, +QListView:disabled, +QTableView:disabled, +QColumnView:disabled { + background-color: #1c1b22; + color: #c2c7cb; +} + +QTreeView:selected, +QListView:selected, +QTableView:selected, +QColumnView:selected { + background-color: #74b655; + color: White; +} + +QTreeView:focus, +QListView:focus, +QTableView:focus, +QColumnView:focus { + border: 1px solid #560062; +} + +QTreeView::item:pressed, +QListView::item:pressed, +QTableView::item:pressed, +QColumnView::item:pressed { + background-color: #74b655; +} + +QTreeView::item:selected:active, +QListView::item:selected:active, +QTableView::item:selected:active, +QColumnView::item:selected:active { + background-color: #74b655; +} + +QTreeView::item:selected:!active, +QListView::item:selected:!active, +QTableView::item:selected:!active, +QColumnView::item:selected:!active { + color: White; + background-color: #353535; +} + +QTreeView::item:!selected:hover, +QListView::item:!selected:hover, +QTableView::item:!selected:hover, +QColumnView::item:!selected:hover { + outline: 0; + color: White; + background-color: #74b655; +} + +QTableCornerButton::section { + background-color: #2b2b2b; + border: 1px transparent #696968; + border-radius: 0px; +} + +QTableView::item { + color: white; +} +QTableView { + /*qproperty-AliasedCellBackgroundColor: #f700ff;*/ + /*qproperty-aliasBgColor: #f700ff;*/ +} + +/* QHeaderView ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qheaderview + +--------------------------------------------------------------------------- */ +QHeaderView { + background-color: #2b2b2b; + border: 1px solid #696968; + padding: 0; + margin: 0; + border-radius: 0px; + text-align: center; +} + +QHeaderView:disabled { + background-color: #2b2b2b; + border: 1px solid #696968; + color: rgb(174, 174, 174); +} + +QHeaderView::section { + background-color: #3c3c3c; + color: White; + border-radius: 0px; + font-size: 13px; + font-weight: bold; + text-align: center; +} + +QHeaderView::section::horizontal { + padding-top: 0; + padding-bottom: 0; + padding-left: 10px; + padding-right: 10px; + border-left: 1px solid #696968; +} + +QHeaderView::section::horizontal::first, QHeaderView::section::horizontal::only-one { + border-left: 1px solid #696968; + padding-left: 15px; +} + +QHeaderView::section::horizontal:disabled { + color: #353535; +} + +QHeaderView::section::vertical { + padding-top: 0; + padding-bottom: 0; + padding-left: 1px; + padding-right: 1px; + border-top: 1px solid #696968; +} + +QHeaderView::section::vertical::first, QHeaderView::section::vertical::only-one { + border-top: 1px solid #696968; +} + +QHeaderView::section::vertical:disabled { + color: #7a7a7a; +} + +QHeaderView::down-arrow { + /* Those settings (border/width/height/background-color) solve bug */ + /* transparent arrow background and size */ + background-color: #696969; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/down_arrow_light.svg); +} + +QHeaderView::up-arrow { + background-color: #696969; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/up_arrow_light.svg); +} + +/* QToolBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbox +used in PATH + +--------------------------------------------------------------------------- */ +QToolBox { + padding: 0px; + border: 1px solid #696969; + border-radius: 4px; + background-color: transparent; +} + +QToolBox:selected { + padding: 0px; + border: 0px solid #74b655; +} + +QToolBox::tab { + background-color: #696969; + border: 0px solid #696969; + color: white; + background-image: url(qss:images_dark-light/down_arrow_lighter.svg); + background-repeat: none; + background-position: center left; +} + +QToolBox::tab:disabled { + color: #696969; +} + +QToolBox::tab:selected { + background-color: #696969; + background-image: url(qss:images_dark-light/transparent.svg); + padding-right: 5px; + background-repeat: none; +} + +QToolBox::tab:selected:disabled { + background-color: #696969; + border-bottom: 0px solid #cccccc; + color: white; +} + +QToolBox::tab:!selected { + +} + +QToolBox::tab:!selected:disabled { + background-color: #2b2b2b; +} + +QToolBox::tab:hover { + background-color: #74b655; + } + +QToolBox QScrollArea QWidget QWidget { + padding: 0px; + border: 0px; + background-color: transparent; +} + +/* QFrame ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe +https://doc.qt.io/qt-5/qframe.html#-prop +https://doc.qt.io/qt-5/qframe.html#details +https://stackoverflow.com/questions/14581498/qt-stylesheet-for-hline-vline-color + +--------------------------------------------------------------------------- */ +/* (dot) .QFrame fix #141, #126, #123 */ +.QFrame { + border-radius: 0px; + border: 0px solid #696968; + background-color: #696969; + /* No frame */ + /* HLine */ + /* HLine */ +} + +.QFrame[frameShape="0"] { + border-radius: 1.9px; + border: 1px solid #696968; +} + +.QFrame[frameShape="4"] { + max-height: 1px; + border: none; + background-color: #696968; +} + +.QFrame[frameShape="5"] { + max-width: 1px; + border: none; + background-color: #2b2b2b; +} + +/* QSplitter -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsplitter + +--------------------------------------------------------------------------- */ +QSplitter { + background-color: #3c3c3c; + spacing: 1px; + padding: 1px; + margin: 1px; +} + +QSplitter::handle { + margin: 0px 0px; + padding: 0px; +} + +QSplitter::handle:horizontal { + background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + width: 1px; +} + +QSplitter::handle:vertical { + background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + height: 1px; +} + +QSplitter::handle:hover { + background-image: url(qss:images_dark-light/splitter_horizontal_light.svg); + background-position: center center; + background-repeat: none; + background-color: #74b655; +} + +/* QDateEdit, QDateTimeEdit ----------------------------------------------- + +--------------------------------------------------------------------------- */ +QDateEdit, QDateTimeEdit { + selection-background-color: #74b655; + border-style: solid; + border: 1px solid #696968; + border-radius: 1.9px; + /* This fixes 103, 111 */ + padding-top: 2px; + /* This fixes 103, 111 */ + padding-bottom: 2px; + padding-left: 4px; + padding-right: 4px; + min-width: 10px; +} + +QDateEdit:on, QDateTimeEdit:on { + selection-background-color: #74b655; +} + +QDateEdit::drop-down, QDateTimeEdit::drop-down { + subcontrol-origin: padding; + subcontrol-position: top right; + width: 12px; + border-left: 1px solid #696968; +} + +QDateEdit::down-arrow, QDateTimeEdit::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + height: 8px; + width: 8px; +} + +QDateEdit::down-arrow:on, QDateEdit::down-arrow:hover, QDateEdit::down-arrow:focus, QDateTimeEdit::down-arrow:on, QDateTimeEdit::down-arrow:hover, QDateTimeEdit::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_lighter.svg); +} + +QDateEdit QAbstractItemView, QDateTimeEdit QAbstractItemView { + background-color: #2b2b2b; + border-radius: 2px; + border: 1px solid #696968; + selection-background-color: #74b655; +} + +/* QAbstractView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractView:hover { + border: 1px solid #74b655; + color: White; +} + +QAbstractView:selected { + background: #74b655; + color: White; +} + +/* PlotWidget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +PlotWidget { + /* Fix cut labels in plots #134 */ + padding: 0px; +} \ No newline at end of file diff --git a/src/Gui/Stylesheets/Dark-modern-orange.qss b/src/Gui/Stylesheets/Dark-modern-orange.qss new file mode 100644 index 0000000000..1e5a4f66eb --- /dev/null +++ b/src/Gui/Stylesheets/Dark-modern-orange.qss @@ -0,0 +1,2577 @@ +/* +ABOUT +============================================================================================================ +Revised stylesheet based on the original from Pablo Gil Fernández made by MisterMaker + +KNOWN BUGS and TO DO +============================================================================================================ +Please, follow the link to get updated information: +https://forum.freecad.org/viewtopic.php?t=78431 + +INSTALLATION WHEN NECESSARY +============================================================================================================ +1) Place the .qss files and /images/ folder in the path that fits your OS: + OSX = /Users/[YOUR_USER_NAME]/Library/Preferences/FreeCAD/Gui/Stylesheets/ + WINDOWS = C:/[INSTALLATION_PATH]/FreeCAD/data/Gui/Stylesheets/ + LINUX = /home/[YOUR_USER_NAME]/.FreeCAD/Gui/Stylesheets/ + +============================================================================================================ +TO MODIFY USE THESE COLORS: + #cb9437 + #560062 + + +See Qt documentation: + + - https://doc.qt.io/qt-5/stylesheet.html + - https://doc.qt.io/qt-5/stylesheet-reference.html + - https://doc.qt.io/qt-5/stylesheet-examples.html + +--------------------------------------------------------------------------- */ + + +/* Reset elements ------------------------------------------------------------ + +Resetting everything helps to unify styles across different operating systems + +--------------------------------------------------------------------------- */ +* { + padding: 0px; + margin: 0px; + border: 0px; + border-style: none; + border-image: none; + outline: 0; +} + +/* specific reset for elements inside QToolBar */ +QToolBar * { + margin: 0px; + padding: 0px; +} + +/*hacks */ +Gui--PropertyEditor--PropertyEditor QLineEdit:read-only, +Gui--PropertyEditor--PropertyEditor QLineEdit:disabled, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:read-only, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:disabled { + color: transparent; + border-color: transparent; + background-color: transparent; + selection-color: transparent; + selection-background-color: transparent; + +} +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel, +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel:disabled { + color: transparent; + background-color: transparent; + border: none; + border-radius: 1px; + margin: 0px; + padding: 0px; +} + +Gui--PropertyEditor--PropertyEditor QSpinBox, +Gui--PropertyEditor--PropertyEditor QDoubleSpinBox, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox, +Gui--PropertyEditor--PropertyEditor QLineEdit, +Gui--PropertyEditor--PropertyEditor QComboBox { + margin-left: 0px; + margin-right: 0px; + padding-top: 0px; + padding-bottom: 0px; + +} + +/*================================================================================================== +Main window +==================================================================================================*/ +QMainWindow, +QDialog, +QDockWidget, +QToolBar { + background-color: #2b2b2b; /* main background color */ +} + +QMdiArea { + background-image: url(qss:images_dark-light/background_freecad_dark.svg); + background-position: center center; + background-repeat: no-repeat; +} +/*navgation src/Mod/Tux/NavigationIndicatorGui.py */ +Gui--NavigationIndicatorGui--BlenderNavigationStyle { +/*QAction#a4 {*/ + qproperty-icon: url(:/icons/icons/NavigationBlender_light.svg); +} +/*===== +/* QWidget ---------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QWidget { + background-color: #2b2b2b; + border: 0px solid #696968; + padding: 0px; + color: White; + selection-background-color: #cb9437; + selection-color: White; +} + +QWidget:disabled { + background-color: transparent; + color: #c2c7cb; + selection-background-color: #cb9437; + selection-color: #c2c7cb; +} + +QWidget::item:selected { + background-color: #cb9437; +} + + /* Causes issue with colorselector. + QWidget::item:hover:!selected { + background-color: #cb9437; + }*/ + +/* QMainWindow ------------------------------------------------------------ + +This adjusts the splitter in the dock widget, not qsplitter +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmainwindow + +--------------------------------------------------------------------------- */ +QMainWindow::separator { + /*background-color: #3c3c3c;*/ + border: 0px solid #696968; + spacing: 0px; + padding: 1px; +} + +QMainWindow::separator:vertical:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,stop:0.2 transparent,stop:0.5 #cb9437, stop:0.8 transparent); + /*background-color: #cb9437;*/ + image: url(qss:images_dark-light/splitter_vertical_light.svg); +} + +QMainWindow::separator:horizontal:hover { + background-color: qlineargradient(x1:0, y1:0, x2:1, y2:0,stop:0.2 transparent,stop:0.5 #cb9437, stop:0.8 transparent); + /*background-color: #cb9437;*/ + image: url(qss:images_dark-light/splitter_horizontal_light.svg); +} + +QMainWindow::separator:horizontal { + width: 4px; + margin-top: 0.1px; + margin-bottom: 0.1px; + /* image: url(qss:images_dark-light/splitter_horizontal_dark.svg);*/ +} + +QMainWindow::separator:vertical { + height: 4px; + margin-left: 0.1px; + margin-right: 0.1px; + /* image: url(qss:images_dark-light/splitter_vertical_dark.svg);*/ +} + +/* QToolTip --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtooltip + +--------------------------------------------------------------------------- */ +QToolTip { + background-color: #1c1b22; + color: White; + /* If you remove the border property, background stops working on Windows */ + border: none; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Remove opacity, fix #174 - may need to use RGBA */ +} + +/* QStatusBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qstatusbar + +--------------------------------------------------------------------------- */ +QStatusBar { + border: 0px solid #3c3c3c; + /* Fixes Spyder #9120, #9121 */ + background: #2b2b2b; + /* Fixes #205, white vertical borders separating items */ +} + +QStatusBar::item { + border: none; +} + +QStatusBar QToolTip { + background-color: #2b2b2b; + border: 1px solid #696968; + color: #2b2b2b; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Reducing transparency to read better */ + opacity: 230; +} + +QStatusBar QLabel { + /* Fixes Spyder #9120, #9121 */ + background: transparent; +} + +/* QCheckBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcheckbox + +--------------------------------------------------------------------------- */ +QCheckBox { + color: white; + padding: 0px; + outline: none; + border: 1px solid transparent; + background-color: transparent; +} + +QCheckBox:focus { + border: 1px solid #560062; +} + +QCheckBox QWidget:disabled { + background-color: transparent; + color: #c2c7cb; +} + +QCheckBox::indicator { + color: white; + background-color: #1c1b22; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QCheckBox::indicator:unchecked { + background-color: #1c1b22; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QCheckBox::indicator:unchecked:hover, QCheckBox::indicator:unchecked:focus, QCheckBox::indicator:unchecked:pressed { + background-color: #cb9437; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QCheckBox::indicator:unchecked:disabled { + background-color: #2b2b2b; + image:url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QCheckBox::indicator:checked { + background-color: #1c1b22; + /*border: 1px solid #696968; /* QRadioButton has the same color */ + image:url(qss:images_dark-light/checkbox_light.svg); +} + +QCheckBox::indicator:checked:hover, QCheckBox::indicator:checked:pressed { + background-color: #cb9437; +} + +QCheckBox::indicator:checked:disabled { + background-color: #2b2b2b; + image: url(qss:images_dark-light/check_light.svg); +} + +QCheckBox::indicator:indeterminate { + background-color: #1c1b22; + border: 1px solid #696968; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QCheckBox::indicator:indeterminate:disabled { + background-color: #2b2b2b; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QCheckBox::indicator:indeterminate:hover, QCheckBox::indicator:indeterminate:pressed { + background-color: #cb9437; /* QRadioButton has the same color */ +} + +/* QGroupBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qgroupbox + +--------------------------------------------------------------------------- */ +QGroupBox { + font-weight: bold; + border: 1px solid #696968; + border-radius: 1.9px; + padding: 2px; + margin-top: 10px; + margin-bottom: 4px; +} + +QGroupBox::title { + subcontrol-origin: margin; + subcontrol-position: top left; + left: 4px; + padding-left: 2px; + padding-right: 4px; + padding-top: 6px; +} + +QGroupBox::indicator { + color: white; + background-color: #3c3c3c; + border: 1px solid #696968; + width: 12px; + height: 12px; + border-radius:1px; +} + +QGroupBox::indicator:unchecked { + background-color: #696968; + border: 1px solid #696968; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QGroupBox::indicator:unchecked:hover, QGroupBox::indicator:unchecked:focus, QGroupBox::indicator:unchecked:pressed { + background-color: #cb9437; +} + +QGroupBox::indicator:unchecked:disabled { + background-color: #1c1b22; + border: 1px solid #696968; +} + +QGroupBox::indicator:checked { + border: none; + image:url(qss:images_dark-light/checkbox_light.svg); +} + +QGroupBox::indicator:checked:hover, QGroupBox::indicator:checked:focus, QGroupBox::indicator:checked:pressed { + background-color: #cb9437; +} + +QGroupBox::indicator:checked:disabled { + background-color: #cb9437; +} + +/* QRadioButton ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qradiobutton + +--------------------------------------------------------------------------- */ +QRadioButton { + background-color: transparent; + color: White; + border: none; + spacing: 4px; + padding-top: 4px; + padding-bottom: 4px; + outline: none; +} + +QRadioButton:focus { + border: 1px solid #560062; +} + +QRadioButton:disabled { + background-color: #696968; + color: #353535; +} + +QRadioButton QWidget { + background-color: transparent; + color: White; + spacing: 0px; + padding: 0px; + outline: none; + border: none; +} + +QRadioButton::indicator { + background-color: #3c3c3c; + border: 1px solid #696968; + border-radius: 6px; + margin-left: 0px; + height: 11px; + width: 11px; +} + +QRadioButton::indicator:unchecked { + /*image:url(qss:images_dark-light/radiobutton_light.svg);*/ +} + +QRadioButton::indicator:unchecked:hover, QRadioButton::indicator:unchecked:pressed { + background-color: #cb9437; + border: 1px solid #cb9437; + border-radius: 6px; +} + +QRadioButton::indicator:unchecked:disabled { + /*image:url(qss:images_dark-light/radiobutton_dark.svg);*/ + border: 1px solid #696968; +} + +QRadioButton::indicator:checked { + image:url(qss:images_dark-light/radiobutton_light.svg); +} + +QRadioButton::indicator:checked:hover, QRadioButton::indicator:checked:pressed { + background-color: #cb9437; + border: 1px solid #cb9437; + border-radius: 6px; + image:url(qss:images_dark-light/radiobutton_light.svg); +} + +QRadioButton::indicator:checked:disabled { + outline: none; + background-color: #696968; + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +/* QMenuBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenubar + +--------------------------------------------------------------------------- */ +QMenuBar { + background-color: #161616; + /*padding: 1px; + border: 0px solid rgba(0,0,0,140);*/ + color: White; + selection-background-color: #cb9437; +} + +QMenuBar:focus { + border: 1px solid #560062; +} + +QMenuBar::item { + background: transparent; + /*padding-left:5px; + padding-right: 5px; + padding-bottom: 1px; + padding-top: 1px;*/ +} + +QMenuBar::item:selected { + background: transparent; + border: 0px solid #696968; + background-color: #cb9437; +} + +QMenuBar::item:pressed { + /*padding: 2px; + padding-left: 10px; + padding-right: 10px;*/ + border: 0px solid #696968; + background-color: #cb9437; + color: White; + /*margin-bottom: 0px; + padding-bottom: 0px;*/ +} + +/* QMenu ------------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenu + +--------------------------------------------------------------------------- */ +QMenu { + border-bottom: 2px rgba(0,0,0,140); + border-right: 2px rgba(0,0,0,140); + color: White; + margin: 0px; + background-color: #161616; + selection-background-color: #cb9437; +} + +QMenu::separator { + height: 2px; + background-color: #3c3c3c; + margin-left: 30%; + margin-right: 30%; +} + +QMenu::item { + background-color: transparent; + padding: 2px 2px; /* make room for icon at left */ + /* Reserve space for selection border */ + border: 0px transparent #696968; +} + +QMenu::item:selected { + color: White; + background-color: #cb9437; +} + +QMenu::item:pressed { + background-color: #cb9437; +} + +QMenu::icon { + margin-left: 5px; + width: 14px; + height: 14px; +} + +QMenu::indicator { + margin-left: 2px; + margin-right: 2px; + padding: 0px; + width: 12px; + height: 12px; + /* non-exclusive indicator = check box style indicator (see QActionGroup::setExclusive) */ + /* exclusive indicator = radio button style indicator (see QActionGroup::setExclusive) */ +} + +QMenu::icon:checked { /* appearance of a 'checked' icon */ + background: #560062; + margin-left: -5px; + border: 5px solid #560062; + position: absolute; + border-radius: 0px; +} +QMenu::indicator:non-exclusive:unchecked { + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:non-exclusive:unchecked:hover, QMenu::indicator:non-exclusive:unchecked:focus, QMenu::indicator:non-exclusive:unchecked:pressed { + border: none; + background: #cb9437; +} + +QMenu::indicator:non-exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QMenu::indicator:non-exclusive:checked { + image:url(qss:images_dark-light/checkbox_light.svg); +} + +QMenu::indicator:non-exclusive:checked:hover, QMenu::indicator:non-exclusive:checked:focus, QMenu::indicator:non-exclusive:checked:pressed { + border: none; + background: #cb9437; +} + +QMenu::indicator:non-exclusive:checked:disabled { + image:url(qss:images_dark-light/checkbox_checked_disabled.svg); +} + +QMenu::indicator:non-exclusive:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:disabled { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:focus, QMenu::indicator:non-exclusive:indeterminate:hover, QMenu::indicator:non-exclusive:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QMenu::indicator:exclusive:unchecked { + image: url(qss:images_dark-light/transparent.svg); +} + +QMenu::indicator:exclusive:unchecked:hover, QMenu::indicator:exclusive:unchecked:focus, QMenu::indicator:exclusive:unchecked:pressed { + border: none; + outline: none; + background: #cb9437; + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:checked { + border: none; + outline: none; + image: url(qss:images_dark-light/radiobutton_light.svg); +} + +QMenu::indicator:exclusive:checked:hover, QMenu::indicator:exclusive:checked:focus, QMenu::indicator:exclusive:checked:pressed { + border: none; + outline: none; + background: #cb9437; + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:checked:disabled { + outline: none; + image: url(qss:images_dark-light/radiobutton_light.svg); +} + +QMenu::right-arrow { + margin: 5px; + padding-left: 12px; + image:url(qss:images_dark-light/right_arrow_lighter.svg); + height: 12px; + width: 12px; + background-color: transparent; +} + +/* QAbstractItemView ------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QAbstractItemView { + alternate-background-color: #5b5b5b; + color: White; + border: 1px solid #696968; + border-radius: 2px; +} + +QAbstractItemView QLineEdit { + padding: 2px; +} + +/* QAbstractScrollArea ---------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QAbstractScrollArea { + background-color: transparent; + border: 0px solid #696968; + border-radius: 0px; + /* fix #159 */ + padding: 0px; + /* remove min-height to fix #244 */ + color: White; +} + +QAbstractScrollArea:disabled { + color: #353535; +} + +/* QScrollArea ------------------------------------------------------------ + +--------------------------------------------------------------------------- +text input field disabled!!!!*/ +QScrollArea QWidget:disabled { + background-color: #2b2b2b; +} + +/* QScrollBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qscrollbar + +--------------------------------------------------------------------------- */ +QScrollBar:horizontal { + height: 16px; + margin: 2px 16px 2px 16px; + border: 0px solid #696968; + border-radius: 1.9px; + background-color: #2b2b2b; +} + +QScrollBar:vertical { + background-color: #2b2b2b; + width: 16px; + margin: 16px 2px 16px 2px; + border: 0px solid #696968; + border-radius: 1.9px; +} + +QScrollBar::handle:horizontal { + background-color: #696969; + border: 1px solid #2b2b2b; + border-radius: 1.9px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:hover { + background-color: #cb9437; + border: #696968; + border-radius: 1.9px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:focus { + border: 1px solid #560062; +} + +QScrollBar::handle:vertical { + background-color: #696969; + border: 1px solid #696968; + min-height: 8px; + border-radius: 1.9px; +} + +QScrollBar::handle:vertical:hover { + background-color: #cb9437; + border: #696968; + border-radius: 1.9px; + min-height: 8px; +} + +QScrollBar::handle:vertical:focus { + border: 1px solid #560062; +} + +QScrollBar::add-line:horizontal { + border-image: url(qss:images_dark-light/right_arrow_light.svg); + height: 9px; + width: 5px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:horizontal:hover, QScrollBar::add-line:horizontal:on { + border-image: url(qss:images_dark-light/right_arrow_lighter.svg); + + height: 9px; + width: 5px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical { + border-image: url(qss:images_dark-light/down_arrow_light.svg); + height: 5px; + width: 9px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical:hover, QScrollBar::add-line:vertical:on { + border-image: url(qss:images_dark-light/down_arrow_lighter.svg); + height: 5px; + width: 9px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/left_arrow_light.svg); + height: 9px; + width: 5px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal:hover, QScrollBar::sub-line:horizontal:on { + border-image: url(qss:images_dark-light/left_arrow_lighter.svg); + height: 9px; + width: 5px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/up_arrow_light.svg); + height: 5px; + width: 9px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical:hover, QScrollBar::sub-line:vertical:on { + border-image: url(qss:images_dark-light/up_arrow_lighter.svg); + height: 5px; + width: 9px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::up-arrow:horizontal, QScrollBar::down-arrow:horizontal { + background: none; +} + +QScrollBar::up-arrow:vertical, QScrollBar::down-arrow:vertical { + background: none; +} + +QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal { + background: none; +} + +QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical { + background: none; +} + +/* QTextEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-specific-widgets + + +report view +--------------------------------------------------------------------------- */ +QTextEdit { + background-color: #2b2b2b; + color: White; + border-radius: 1.9px; + border: 0px solid #696968; +} + +QTextEdit:focus { + border: 1px solid #560062; +} + +QTextEdit:selected { + background: #346792; + color: white; +} + +/* QPlainTextEdit --------------------------------------------------------- +Python +--------------------------------------------------------------------------- */ +QPlainTextEdit { + background-color: #3c3c3c; + color: White; + border-radius: 1.9px; + border: 0px solid #696968; +} + +QPlainTextEdit:focus { + border: 1px solid #560062; +} + +QPlainTextEdit:selected { + background: #cb9437; + color: White; +} + +/* QSizeGrip -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsizegrip + +--------------------------------------------------------------------------- */ +QSizeGrip { + background: transparent; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/sizegrip_light.svg); +} + +/* QStackedWidget --------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QStackedWidget { + padding: 0px; + border: 0px solid #696968; +} + +/* QToolBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbar + +--------------------------------------------------------------------------- */ +QToolBar { + background-color: #2b2b2b; + border-bottom: 0px solid rgba(0,0,0,120); + padding: 1px; + font-weight: bold; + spacing: 1px; +} + +QToolBar:disabled { + /* Fixes #272 */ + background-color: #2b2b2b; +} + +QToolBar::handle:horizontal { + width: 8px; + margin: 3px 3px; + background-position: top right; + background-repeat: repeat-y; + background-image: url(qss:images_dark-light/Hmovetoolbar_light.svg); +} + +QToolBar::handle:vertical { + height: 8px; + margin: 3px 3px; + background-position: left bottom; + background-repeat: repeat-x; + background-image: url(qss:images_dark-light/Vmovetoolbar_light.svg); +} + +QToolBar::separator:horizontal { + width: 2px; + margin: 4px 4px; + background-color: transparent; +} + +QToolBar::separator:vertical { + height: 2px; + margin: 4px 4px; + background-color: transparent; +} + +/*The "show more" button (it can also be stylable with "QToolBarExtension" icon is not working Qproperty works but breaks when you move the toolbar see also */ +QToolButton#qt_toolbar_ext_button { +margin: 0px; +padding: 0px; +background-color: #696969; +/*background-image: url(qss:images_dark-light/more_light.svg);*/ +background-repeat: none; +background-position: center center; +} + +QToolButton#qt_toolbar_ext_button:hover { +/*background-image: url(qss:images_dark-light/more_light.svg);*/ +background-color: #cb9437; +} + +QToolButton#qt_toolbar_ext_button:on { +/*background-image: url(qss:images_dark-light/more_light.svg);*/ +border-color: #696968; +background-color: #cb9437; +} + + +/* QAbstractSpinBox ------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractSpinBox, +QSpinBox { + background-color: #1c1b22; + border: 1px solid transparent; + color: White; + /* This fixes 103, 111 */ + /* padding-top: 0px; + /* This fixes 103, 111 */ + /*padding-bottom: 0px; + /*padding-left: 4px; + /*padding-right: 4px; + border-radius: 1.9px;*/ + min-height: 1.7em; + /* min-width: 5px; removed to fix 109 */ +} + +QAbstractSpinBox:up-button { + background-color: #696968; + subcontrol-origin: border; + subcontrol-position: top right; + border-left: 1px solid transparent; + border-bottom: 1px solid #1c1b22; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-bottom: -1px;*/ +} + +QAbstractSpinBox::up-arrow, QAbstractSpinBox::up-arrow:disabled, QAbstractSpinBox::up-arrow:off { + image: url(qss:images_dark-light/up_arrow_disabled_light.svg); + /* height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::up-arrow:hover { + /*background-color: #cb9437;*/ + image: url(qss:images_dark-light/up_arrow_lighter.svg); +} + +QAbstractSpinBox:down-button { + background-color: #696968; + subcontrol-origin: border; + subcontrol-position: bottom right; + border-left: 1px solid #696968; + border-top: 1px solid #696968; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-top: -1px;*/ +} + +QAbstractSpinBox::down-arrow, QAbstractSpinBox::down-arrow:disabled, QAbstractSpinBox::down-arrow:off { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + /*height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::down-arrow:hover { + image: url(qss:images_dark-light/down_arrow_lighter.svg); +} + +QAbstractSpinBox:hover { + /*border: 1px solid #cb9437; + color: White;*/ +} + +QAbstractSpinBox:focus { + border: 1px solid #560062; +} + +QAbstractSpinBox:selected { + background: #560062; + /*color: White;*/ +} + +/* ------------------------------------------------------------------------ */ +/* DISPLAYS --------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QLabel ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe + +--------------------------------------------------------------------------- */ +QLabel { + background-color: transparent; + border: 0px solid #696968; + padding: 2px; + margin: 0px; + color: White; +} + +QLabel:disabled { + background-color: transparent; + border: 0px solid #696968; + color: #c2c7cb; +} + +QLabel[haslink="true"] { + color: orange; +} + + +/* QTextBrowser ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QTextBrowser { + background-color: #1c1b22; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; +} + +QTextBrowser:disabled { + background-color: #2b2b2b; + border: 1px solid #696968; + color: #c2c7cb; + border-radius: 1.9px; +} + +QTextBrowser:hover, QTextBrowser:!hover, QTextBrowser:selected, QTextBrowser:pressed { + border: 1px solid #cb9437; +} + +/* QGraphicsView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QGraphicsView { + background-color: transparent; + border: 0px solid #cb9437; + color: White; + border-radius: 0px; +} + +QGraphicsView:disabled { + background-color: #1c1b22; + border: 0px solid #696968; + color: #c2c7cb; + border-radius: 0px; +} + +QGraphicsView:hover, QGraphicsView:!hover, QGraphicsView:selected, QGraphicsView:pressed { + border: 0px solid #ff00f7; +} + +/* QCalendarWidget -------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCalendarWidget { + border: 1px solid #696968; + border-radius: 1.9px; +} + +QCalendarWidget:disabled { + background-color: #353535; + color: #c2c7cb; +} + +/* QLCDNumber ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QLCDNumber { + background-color: #1aff00; + color: White; +} + +QLCDNumber:disabled { + background-color: #2b2b2b; + color: #c2c7cb; +} + +/* QProgressBar ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qprogressbar + +--------------------------------------------------------------------------- */ +QProgressBar { + background-color: #c2c7cb; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar:disabled { + background-color: #161616; + border: 1px solid #696968; + color: #696969; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar::chunk { + background-color: #cb9437; + color: #2b2b2b; + border-radius: 1.9px; +} + +QProgressBar::chunk:disabled { + background-color: #161616; + color: #696968; + border-radius: 1.9px; +} + +/* ------------------------------------------------------------------------ */ +/* BUTTONS ---------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QPushButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qpushbutton + +--------------------------------------------------------------------------- */ +QPushButton { + background-color: #696969; + color: White; + border-radius: 2px; + padding: 2px; + outline: none; + border: none; +} + +QPushButton:disabled { + background-color: #2b2b2b; + color: #c2c7cb; + border-radius: 2px; + padding: 2px; +} + +QPushButton:checked { + background-color: #cb9437; + border-radius: 2px; + padding: 2px; + outline: none; +} + +QPushButton:checked:disabled { + background-color: #cb9437; + color: #3c3c3c; + border-radius: 2px; + padding: 2px; + outline: none; +} + +QPushButton:checked:selected { + background: #cb9437; +} + +QPushButton:hover { + background-color: #cb9437; + color: White; +} + +QPushButton:pressed { + background-color: #cb9437; +} + +QPushButton:selected { + background: #560062; + color: White; +} + +QPushButton::menu-indicator { + subcontrol-origin: padding; + subcontrol-position: bottom right; + bottom: 4px; +} + +QDialogButtonBox QPushButton { + /* Issue # 194 # 248 - Special case of QPushButton inside dialogs, for better UI */ + min-width: 80px; +} + +/* QToolButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbutton + +--------------------------------------------------------------------------- */ +QToolButton { + background-color: transparent; + color: White; + border-radius: 1px; + padding: 0px; + outline: none; + border: none; + /* The subcontrols below are used only in the DelayedPopup mode */ + /* The subcontrols below are used only in the MenuButtonPopup mode */ + /* The subcontrol below is used only in the InstantPopup or DelayedPopup mode */ +} + +QToolButton:disabled { + background-color: rgba(0, 0, 0, 0.065); + color: transparent; + border-radius: 1px; + padding: 0px; + opacity: 1.0; +} + +QToolButton:checked { + background-color: #cb9437; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:disabled { + background-color: #b65555; + color: #c2c7cb; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:hover { + background-color: #cb9437; + color: White; +} + +QToolButton:checked:pressed { + background-color: #cb9437; +} + +QToolButton:checked:selected { + background: #560062; + color: White; +} + +QToolButton:hover { + background-color: #cb9437; + color: White; +} + +QToolButton:pressed { + background-color: #560062; +} + +QToolButton:selected { + background: #cb9437; + color: White; +} + +QToolButton[popupMode="0"] { + /* Only for DelayedPopup */ + padding-right: 20px; +} + +QToolButton[popupMode="1"] { + /* Only for MenuButtonPopup */ + padding-right: 20px; +} +QToolButton[popupMode="0"]::menu-button { + border: none; +} + +QToolButton[popupMode="0"]::menu-button:hover { + border: none; + border-left: 2px solid #fe0000; + border-radius: 0px; +} +QToolButton[popupMode="1"]::menu-button { + border: none; +} + +QToolButton[popupMode="1"]::menu-button:hover { + border: none; + border-left: 2px solid #e5ff00; + border-radius: 0px; +} + +QToolButton[popupMode="2"] { + /* Only for InstantPopup */ + padding-right: 20px; +} + +QToolButton::menu-button { + border-bottom: 0px solid #ffffff; + border-radius: 2px; + /* 16px width + 4px for border = 20px allocated above */ + width: 1.6ex; + padding: 2px; + border-radius: 2px; + border: 0px #000000; +} + +QToolButton::menu-button:hover { + /* background: rgba(0, 0, 0, 0.5);*/ + +} + +QToolButton::menu-button:checked:hover { + /* background: rgba(0, 0, 0, 0.5);*/ +} + +QToolButton::menu-indicator { + /* Exclude a shift for better image */ + subcontrol-position: right bottom; + /* Shift it a bit */ +} + +QToolButton::menu-arrow { + image: url(qss:images_dark-light/more_arrow_light.svg); + width: 1.5ex; + height: 1.5ex; + subcontrol-position: right bottom; + background: transparent; +} +QToolButton::menu-arrow:open { + subcontrol-position: right bottom; + image: url(qss:images_dark-light/more_arrow_light.svg); +} +QToolButton::menu-arrow:hover { + image: url(qss:images_dark-light/more_arrow_light.svg); + background-color: rgba(0, 0, 0, 0.498); + border: 1px solid rgba(0, 0, 0, 0.498); +} + +/* QCommandLinkButton ----------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCommandLinkButton { + background-color: transparent; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; + padding: 0px; + margin: 0px; +} + +QCommandLinkButton:disabled { + background-color: transparent; + color: #c2c7cb; +} + +/* ------------------------------------------------------------------------ */ +/* INPUTS - NO FIELDS ----------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QComboBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QComboBox { + border: 1px solid transparent; + background: #1c1b22; + border-radius: 2px; + selection-background-color: #cb9437; + padding-left: 2px; + padding-right: 2px; + /* padding-right = 36; 4 + 16*2 See scrollbar size */ + /* changed to 4px to fix #239 */ + /* Fixes #103, #111 */ + min-height: 1.5em; + /* padding-top: 2px; removed to fix #132 */ + /* padding-bottom: 2px; removed to fix #132 */ + /* min-width: 75px; removed to fix #109 */ + /* Needed to remove indicator - fix #132 */ +} +QComboBox:editable { + background: #1c1b22; +} +QComboBox QAbstractItemView { + border: 0px solid #696968; + border-radius: 0px; + background-color: #1c1b22; + selection-background-color: #cb9437; +} + +QComboBox QAbstractItemView:hover { + background-color:Black; + color: White; +} + +QComboBox QAbstractItemView:selected { + background: #cb9437; + color: White; +} + +QComboBox QAbstractItemView:alternate { + background: #3c3c3c; +} + +QComboBox:disabled { + background-color: #2b2b2b; + color: #353535; +} + +QComboBox:hover { + /*background-color: #cb9437;*/ + border: 1px solid #cb9437; +} + +QComboBox:focus { + border: 1px solid #560062; +} + +QComboBox:on { + selection-background-color: #560062; +} + +QComboBox::indicator { + border: none; + border-radius: 0px; + background-color: transparent; + selection-background-color: transparent; + color: transparent; + selection-color: #cb9437; + /* Needed to remove indicator - fix #132 */ +} + +QComboBox::indicator:alternate { + background: #696968; +} + +QComboBox::item { + /* Remove to fix #282, #285 and MR #288*/ + /*&:checked { + font-weight: bold; + } + + &:selected { + border: 0px solid transparent; + } + */ +} + +QComboBox::item:alternate { + background: #3c3c3c; +} + +QComboBox::drop-down { + subcontrol-origin: padding; + background-color: #696969; + subcontrol-position: top right; + width: 14px; + border-left: 1px solid #696968; +} +QComboBox::drop-down:hover { + background-color: #cb9437; +} + +QComboBox::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + height: 10px; + width: 10px; +} + +QComboBox::down-arrow:on, QComboBox::down-arrow:hover, QComboBox::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_lighter.svg); +} + + +/*================================================================================================== +Tasks panel (custom FreeCAD class) +==================================================================================================*/ +Gui--PropertyEditor--PropertyEditor { + qproperty-groupTextColor: white; + qproperty-groupBackground: #3c3c3c; + border: 0px solid #696968; + +} + +/* Action group */ +QFrame[class="panel"] { +background-color: transparent; /* temporal (transparent background) */ + +} + +QSint--ActionGroup { +padding: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +margin: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +} + +/* Separator line */ +QSint--ActionGroup QFrame[height="1"], +QSint--ActionGroup QFrame[height="2"], +QSint--ActionGroup QFrame[height="3"], +QSint--ActionGroup QFrame[width="1"], +QSint--ActionGroup QFrame[width="2"], +QSint--ActionGroup QFrame[width="3"] { +border-color: rgba(0,0,0,60); +} + +/* Panel header */ +QSint--ActionGroup QFrame[class="header"] { +border-top: 1px solid #696968; +border-left: 1px solid #696968; +border-right: 1px solid #696968; +background-color: #696969; /* Task Panel Header background color */ +border-top-left-radius: 3px; +border-top-right-radius: 3px; +border-bottom-left-radius: 0px; +border-bottom-right-radius: 0px; +margin: 0px; +padding: 0px; +} + +QSint--ActionGroup QFrame[class="header"]:hover { +background-color: #cb9437; +} + +QSint--ActionGroup QToolButton[class="header"] { +color: white; /* Task Panel Header text color */ +text-align: left; +font-weight: bold; +border: none; +margin: 0px; +padding: 0px; +} + +QSint--ActionGroup QFrame[class="header"] QLabel { +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_light.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; +} + +QSint--ActionGroup QFrame[class="header"] QLabel:hover { +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_lighter.svg); +} + +QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"] { +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_light.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; +} + +QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"]:hover { +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_lighter.svg); +} + +QSint--ActionGroup QFrame[class="content"] { +background-color: transparent; /* Task Panel background color */ +margin: 0px; +padding: 0px; +border-bottom: 1px solid #696968; +border-left: 1px solid #696968; +border-right: 1px solid #696968; +border-top-left-radius: 0px; +border-top-right-radius: 0px; +border-bottom-left-radius: 3px; +border-bottom-right-radius: 3px; +} + +QSint--ActionGroup QFrame[class="content"] > QWidget { +background-color: #2b2b2b; /* Task Panel background color */ +} + +/* Fixs for tabs inside Task Panel */ +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:top:selected { +border-bottom-color: #cb9437; /* same as Task Panel background color */ +} + +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:bottom:selected { +border-top-color: #cb9437; /* same as Task Panel background color */ +} + +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:right:selected { +border-right-color: #cb9437; /* same as Task Panel background color */ +} + +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:left:selected { +border-left-color: #cb9437; /* same as Task Panel background color */ +} + +/* Fix for buttons with icons that showed cropped (still not happy with result) */ +QSint--ActionGroup QFrame[class="content"] > QWidget > QPushButton { +padding: 2px; /* bigger padding crops text and icons... */ +margin: 0px; +} + +/* Fix for lists inside task panels */ /* sketcher constraints list */ +QSint--ActionGroup QFrame[class="content"] QTreeView, +QSint--ActionGroup QFrame[class="content"] QListView, +QSint--ActionGroup QFrame[class="content"] QTableView { +color: white; +background-color: black; +} + + +/* found inside Part Design Workbench and "make a draft on a face" Task panel options */ +QSint--ActionGroup QFrame[class="content"] QToolButton { + color: white; + text-align: center; + background-color: #696969; + border: 0px solid #adadad; + padding: 1px 1px; /* different than regular QPushButton */ + margin: 0px; /* different than regular QPushButton */ + min-height: 16px; /* same as QTabBar QPushButton min-width */ + border-radius: 1px; +} + +QSint--ActionGroup QFrame[class="content"] QToolButton:hover{ + background: #cb9437; + border: 1px solid #cb9437; +} +QSint--ActionGroup QFrame[class="content"] QToolButton:focus { + border: 1px solid #560062; +} + +QSint--ActionGroup QFrame[class="content"] QToolButton:disabled, +QSint--ActionGroup QFrame[class="content"] QToolButton:disabled:checked { + color: #696969; + background-color: #1c1b22; +} + +QSint--ActionGroup QFrame[class="content"] QToolButton:pressed { + background: #cb9437; + border: 1px solid #cb9437; +} + +/* QSlider ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qslider + +--------------------------------------------------------------------------- */ +QSlider:disabled { + background: #2b2b2b; +} + +QSlider:focus { + border: 1px solid #560062; +} + +QSlider::groove:horizontal { + background: #2b2b2b; + border: 1px solid #696968; + height: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::groove:vertical { + background: #cb9437; + border: 1px solid #696968; + width: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::add-page:vertical { + background: #cb9437; + border: 1px solid #696968; + width: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::add-page:vertical :disabled { + background: #696968; +} + +QSlider::sub-page:horizontal { + background: #cb9437; + border: 1px solid #0073ff; + height: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::sub-page:horizontal:disabled { + background: #cb9437; +} + +QSlider::handle:horizontal { + background: #353535; + border: 1px solid #2b2b2b; + width: 8px; + height: 8px; + margin: -8px 0px; + border-radius: 1.9px; +} + +QSlider::handle:horizontal:hover { + background: #cb9437; + border: 1px solid #cb9437; +} + +QSlider::handle:horizontal:focus { + border: 1px solid #560062; +} + +QSlider::handle:vertical { + background: #c2c7cb; + border: 1px solid #696968; + width: 8px; + height: 8px; + margin: 0 -8px; + border-radius: 1.9px; +} + +QSlider::handle:vertical:hover { + background: #cb9437; + border: 2px solid #cb9437; +} + +QSlider::handle:vertical:focus { + border: 1px solid #560062; +} + +/* QLineEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlineedit + +--------------------------------------------------------------------------- */ +QLineEdit { + background-color: #1c1b22; + padding-top: 2px; + /* This QLineEdit fix 103, 111 */ + padding-bottom: 2px; + /* This QLineEdit fix 103, 111 */ + padding-left: 4px; + padding-right: 4px; + border-style: solid; + border: 1px solid #696968; + border-radius: 2px; + color: White; +} + +QLineEdit:disabled { + background-color: #2b2b2b; + color: #c2c7cb; +} + +QLineEdit:hover { + border: 1px solid #cb9437; + color: White; +} + +QLineEdit:focus { + border: 2px solid #560062; +} + +QLineEdit:selected { + background-color: #cb9437; + color: white; +} + +/* QTabWiget -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabWidget { + padding: 2px; + selection-background-color: #cb9437; +} + +QTabWidget QWidget { + /* Fixes #189 */ + border-radius: 1.9px; +} + +QTabWidget::pane { + border: 0px solid #8c00ffa1; + border-radius: 1.9px; + margin: 0px; + /* Fixes double border inside pane with pyqt5 */ + padding: 0px; +} + +QTabWidget::pane:selected { + background-color: #cb9437; + border: 1px solid #346792; +} +/* QTabBar ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabBar, QDockWidget QTabBar { + qproperty-drawBase: 0; + border-radius: 2px; + margin: 0px; + padding: 2px; + border: 0; + alignment: center; + /* left: 5px; move to the right by 5px - removed for fix */ +} + +QTabBar::close-button, QDockWidget QTabBar::close-button { + border: 0; + margin: 0; + padding: 1px; + image: url(qss:images_dark-light/close_light.svg); +} + +QTabBar::close-button:hover, QDockWidget QTabBar::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); + /*background-color: rgba(255, 0, 0, 0.3);*/ +} + +QTabBar::close-button:pressed, QDockWidget QTabBar::close-button:pressed { + image: url(qss:images_dark-light/close_.svg); +} + +QTabBar::tab, QDockWidget QTabBar::tab { + /* !selected and disabled ----------------------------------------- */ + /* selected ------------------------------------------------------- */ +} + +QTabBar::tab:top:selected:disabled, QDockWidget QTabBar::tab:top:selected:disabled { + border-bottom: 3px solid #696969; + color: #515151; + background-color: #696969; +} + +QTabBar::tab:bottom:selected:disabled, QDockWidget QTabBar::tab:bottom:selected:disabled { + border-top: 3px solid #696969; + color: #515151; + background-color: #696969; +} + +QTabBar::tab:left:selected:disabled, QDockWidget QTabBar::tab:left:selected:disabled { + border-right: 3px solid #696969; + color: #515151; + background-color: #696969; +} + +QTabBar::tab:right:selected:disabled, QDockWidget QTabBar::tab:right:selected:disabled { + border-left: 3px solid #696969; + color: #515151; + background-color: #696969; +} + +QTabBar::tab:top:!selected:disabled, QDockWidget QTabBar::tab:top:!selected:disabled { + border-bottom: 3px solid #696969; + color: #515151; + background-color: #696969; +} + +QTabBar::tab:bottom:!selected:disabled, QDockWidget QTabBar::tab:bottom:!selected:disabled { + border-top: 3px solid #696969; + color: #515151; + background-color: #696969; +} + +QTabBar::tab:left:!selected:disabled, QDockWidget QTabBar::tab:left:!selected:disabled { + border-right: 3px solid #696969; + color: #515151; + background-color: #696969; +} + +QTabBar::tab:right:!selected:disabled, QDockWidget QTabBar::tab:right:!selected:disabled { + border-left: 3px solid #696969; + color: #515151; + background-color: #696969; +} + +QTabBar::tab:top:!selected, QDockWidget QTabBar::tab:top:!selected { + border-bottom: 2px solid #696969; + margin-top: 2px; +} + +QTabBar::tab:bottom:!selected, QDockWidget QTabBar::tab:bottom:!selected { + border-top: 2px solid #696969; + margin-bottom: 2px; +} + +QTabBar::tab:left:!selected, QDockWidget QTabBar::tab:left:!selected { + border-left: 2px solid #696969; + margin-right: 2px; +} + +QTabBar::tab:right:!selected, QDockWidget QTabBar::tab:right:!selected { + border-right: 2px solid #696969; + margin-left: 2px; +} + +QTabBar::tab:top, QDockWidget QTabBar::tab:top { + background-color: #696969; + margin-left: 3px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + min-width: 5px; + border: 0px solid #696969; + border-radius: 4px; +} + +QTabBar::tab:top:selected, QDockWidget QTabBar::tab:top:selected { + background-color: #2b2b2b; + /*border: 1px solid #560062; + border-radius: 4px; + margin-left: 4px; + margin-right: 4px; + padding-left: 3px; + padding-right: 3px;*/ +} + +QTabBar::tab:top:!selected:hover, QDockWidget QTabBar::tab:top:!selected:hover { + /*border: 1px solid #cb9437;*/ + border: 0px solid #cb9437; + background-color: #cb9437; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; +} + +QTabBar::tab:bottom, QDockWidget QTabBar::tab:bottom { + border: 0px solid #696969; + background-color: #696969; + margin-left: 3px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + border-radius: 4px; + min-width: 5px; +} + +QTabBar::tab:bottom:selected, QDockWidget QTabBar::tab:bottom:selected { + background-color: #2b2b2b; + /*border: 1px solid #560062; + border-radius: 4px; + margin-left: 4px; + margin-right: 4px; + padding-left: 3px; + padding-right: 3px;*/ +} + +QTabBar::tab:bottom:!selected:hover, QDockWidget QTabBar::tab:bottom:!selected:hover { +/*border: 1px solid #cb9437;*/ + border: 0px solid #cb9437; + background-color: #cb9437; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; +} + +QTabBar::tab:left, QDockWidget QTabBar::tab:left { + background-color: #2b2b2b; + margin-top: 2px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + border-radius: 4px; + min-height: 5px; +} + +QTabBar::tab:left:selected, QDockWidget QTabBar::tab:left:selected { + background-color: #2b2b2b; + border: 0px solid #560062; +} + +QTabBar::tab:left:!selected:hover, QDockWidget QTabBar::tab:left:!selected:hover { + border: 0px solid #cb9437; + background-color: #cb9437; + /* Fixes different behavior #271 */ + margin-right: 0px; + padding-right: -1px; +} + +QTabBar::tab:right, QDockWidget QTabBar::tab:right { + background-color: #2b2b2b; + margin-top: 2px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + min-height: 5px; + border: 10px; +} + +QTabBar::tab:right:selected, QDockWidget QTabBar::tab:right:selected { + background-color: #2b2b2b; + border: 0px solid #560062; +} + +QTabBar::tab:right:!selected:hover, QDockWidget QTabBar::tab:right:!selected:hover { + border: 0px solid #cb9437; + background-color: #cb9437; + /* Fixes different behavior #271 */ + margin-left: 0px; + padding-left: 0px; +} + +QTabBar QToolButton, QDockWidget QTabBar QToolButton { + /* Fixes #136 */ + background-color: #2b2b2b; + height: 12px; + width: 12px; +} + +QTabBar QToolButton:pressed, QDockWidget QTabBar QToolButton:pressed { + border: 0px solid #cb9437; + background-color: #cb9437; +} + +QTabBar QToolButton:pressed:hover, QDockWidget QTabBar QToolButton:pressed:hover { + border: 0px solid #cb9437; + background-color: #cb9437; +} + +QTabBar QToolButton::left-arrow:enabled, QDockWidget QTabBar QToolButton::left-arrow:enabled { + image: url(qss:images_dark-light/left_arrow_lighter.svg); +} + +QTabBar QToolButton::left-arrow:disabled, QDockWidget QTabBar QToolButton::left-arrow:disabled { + image: url(qss:images_dark-light/left_arrow_disabled_light.svg); +} + +QTabBar QToolButton::right-arrow:enabled, QDockWidget QTabBar QToolButton::right-arrow:enabled { + image: url(qss:images_dark-light/right_arrow_lighter.svg); +} + +QTabBar QToolButton::right-arrow:disabled, QDockWidget QTabBar QToolButton::right-arrow:disabled { + image: url(qss:images_dark-light/right_arrow_disabled_light.svg); +} + +/* QDockWiget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QDockWidget { + background-color: #2b2b2b; + border: 1px solid #696968; + border-radius: 1.9px; + titlebar-close-icon: url(qss:images_dark-light/transparent.svg); + titlebar-normal-icon: url(qss:images_dark-light/transparent.svg); +} + +QDockWidget::title { + /* Better size for title bar */ + padding: 3px; + spacing: 4px; + border: none; + background-color: #2b2b2b; + text-align: center; + font-weight: bold; +} + +QDockWidget::close-button { + icon-size: 10px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/close_light.svg); +} + +QDockWidget::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); +} + +QDockWidget::close-button:pressed { + image: url(qss:images_dark-light/close_light.svg); +} + +QDockWidget::float-button { + icon-size: 12px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/undock_light.svg); +} + +QDockWidget::float-button:hover { + /*background-color: #cb9437;*/ + image: url(qss:images_dark-light/undock_blue.svg); +} + +QDockWidget::float-button:pressed { + image: url(qss:images_dark-light/undock_light.svg); +} + +/* QTreeView QListView QTableView ----------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtreeview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlistview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtableview + +--------------------------------------------------------------------------- */ +QTreeView::branch { + background: transparent; +} + +QTreeView::branch:has-siblings:!adjoins-item { + border-image: url(qss:images_dark-light/branch_vline_light.svg) 0; +} + +QTreeView::branch:has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_more_light.svg) 0; +} + +QTreeView::branch:!has-children:!has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_end_light.svg) 0; +} + +QTreeView::branch:closed:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_closed_light.svg) 0; +} + +QTreeView::branch:has-children:!has-siblings:closed { + border-image: url(qss:images_dark-light/branch_end_closed_light.svg) 0; +} + +QTreeView::branch:open:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_open_light.svg) 0; +} + +QTreeView::branch:open:has-children:!has-siblings { + border-image: url(qss:images_dark-light/branch_end_open_light.svg) 0; +} + +QTreeView::indicator:checked, +QListView::indicator:checked, +QTableView::indicator:checked, +QColumnView::indicator:checked { + image: url(qss:images_dark-light/checkbox_light.svg); +} + +QTreeView::indicator:checked:hover, QTreeView::indicator:checked:focus, QTreeView::indicator:checked:pressed, +QListView::indicator:checked:hover, +QListView::indicator:checked:focus, +QListView::indicator:checked:pressed, +QTableView::indicator:checked:hover, +QTableView::indicator:checked:focus, +QTableView::indicator:checked:pressed, +QColumnView::indicator:checked:hover, +QColumnView::indicator:checked:focus, +QColumnView::indicator:checked:pressed { + image: url(qss:images_dark-light/checkbox_light_hover.svg); +} + +QTreeView::indicator:unchecked, +QListView::indicator:unchecked, +QTableView::indicator:unchecked, +QColumnView::indicator:unchecked { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QTreeView::indicator:unchecked:hover, QTreeView::indicator:unchecked:focus, QTreeView::indicator:unchecked:pressed, +QListView::indicator:unchecked:hover, +QListView::indicator:unchecked:focus, +QListView::indicator:unchecked:pressed, +QTableView::indicator:unchecked:hover, +QTableView::indicator:unchecked:focus, +QTableView::indicator:unchecked:pressed, +QColumnView::indicator:unchecked:hover, +QColumnView::indicator:unchecked:focus, +QColumnView::indicator:unchecked:pressed { + image: url(qss:images_dark-light/checkbox_unchecked_hover_light.svg); +} + +QTreeView::indicator:indeterminate, +QListView::indicator:indeterminate, +QTableView::indicator:indeterminate, +QColumnView::indicator:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QTreeView::indicator:indeterminate:hover, QTreeView::indicator:indeterminate:focus, QTreeView::indicator:indeterminate:pressed, +QListView::indicator:indeterminate:hover, +QListView::indicator:indeterminate:focus, +QListView::indicator:indeterminate:pressed, +QTableView::indicator:indeterminate:hover, +QTableView::indicator:indeterminate:focus, +QTableView::indicator:indeterminate:pressed, +QColumnView::indicator:indeterminate:hover, +QColumnView::indicator:indeterminate:focus, +QColumnView::indicator:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QTreeView, +QListView, +QTableView, +QColumnView { + background-color: #2b2b2b; /* background of a lot of stuff including spreadsheets.*/ + border: 0px solid #696968; + color: White; + gridline-color: #696968; + border-radius: 0px; +} + +QTableView, +QListView { + background-color: rgba(0, 0, 0, 0.232); /* background of a lot of stuff including spreadsheets.*/ +} + + +QTreeView:disabled, +QListView:disabled, +QTableView:disabled, +QColumnView:disabled { + background-color: #1c1b22; + color: #c2c7cb; +} + +QTreeView:selected, +QListView:selected, +QTableView:selected, +QColumnView:selected { + background-color: #cb9437; + color: White; +} + +QTreeView:focus, +QListView:focus, +QTableView:focus, +QColumnView:focus { + border: 1px solid #560062; +} + +QTreeView::item:pressed, +QListView::item:pressed, +QTableView::item:pressed, +QColumnView::item:pressed { + background-color: #cb9437; +} + +QTreeView::item:selected:active, +QListView::item:selected:active, +QTableView::item:selected:active, +QColumnView::item:selected:active { + background-color: #cb9437; +} + +QTreeView::item:selected:!active, +QListView::item:selected:!active, +QTableView::item:selected:!active, +QColumnView::item:selected:!active { + color: White; + background-color: #353535; +} + +QTreeView::item:!selected:hover, +QListView::item:!selected:hover, +QTableView::item:!selected:hover, +QColumnView::item:!selected:hover { + outline: 0; + color: White; + background-color: #cb9437; +} + +QTableCornerButton::section { + background-color: #2b2b2b; + border: 1px transparent #696968; + border-radius: 0px; +} + +QTableView::item { + color: white; +} +QTableView { + /*qproperty-AliasedCellBackgroundColor: #f700ff;*/ + /*qproperty-aliasBgColor: #f700ff;*/ +} + +/* QHeaderView ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qheaderview + +--------------------------------------------------------------------------- */ +QHeaderView { + background-color: #2b2b2b; + border: 1px solid #696968; + padding: 0; + margin: 0; + border-radius: 0px; + text-align: center; +} + +QHeaderView:disabled { + background-color: #2b2b2b; + border: 1px solid #696968; + color: rgb(174, 174, 174); +} + +QHeaderView::section { + background-color: #3c3c3c; + color: White; + border-radius: 0px; + font-size: 13px; + font-weight: bold; + text-align: center; +} + +QHeaderView::section::horizontal { + padding-top: 0; + padding-bottom: 0; + padding-left: 10px; + padding-right: 10px; + border-left: 1px solid #696968; +} + +QHeaderView::section::horizontal::first, QHeaderView::section::horizontal::only-one { + border-left: 1px solid #696968; + padding-left: 15px; +} + +QHeaderView::section::horizontal:disabled { + color: #353535; +} + +QHeaderView::section::vertical { + padding-top: 0; + padding-bottom: 0; + padding-left: 1px; + padding-right: 1px; + border-top: 1px solid #696968; +} + +QHeaderView::section::vertical::first, QHeaderView::section::vertical::only-one { + border-top: 1px solid #696968; +} + +QHeaderView::section::vertical:disabled { + color: #7a7a7a; +} + +QHeaderView::down-arrow { + /* Those settings (border/width/height/background-color) solve bug */ + /* transparent arrow background and size */ + background-color: #696969; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/down_arrow_light.svg); +} + +QHeaderView::up-arrow { + background-color: #696969; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/up_arrow_light.svg); +} + +/* QToolBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbox +used in PATH + +--------------------------------------------------------------------------- */ +QToolBox { + padding: 0px; + border: 1px solid #696969; + border-radius: 4px; + background-color: transparent; +} + +QToolBox:selected { + padding: 0px; + border: 0px solid #cb9437; +} + +QToolBox::tab { + background-color: #696969; + border: 0px solid #696969; + color: white; + background-image: url(qss:images_dark-light/down_arrow_lighter.svg); + background-repeat: none; + background-position: center left; +} + +QToolBox::tab:disabled { + color: #696969; +} + +QToolBox::tab:selected { + background-color: #696969; + background-image: url(qss:images_dark-light/transparent.svg); + padding-right: 5px; + background-repeat: none; +} + +QToolBox::tab:selected:disabled { + background-color: #696969; + border-bottom: 0px solid #cccccc; + color: white; +} + +QToolBox::tab:!selected { + +} + +QToolBox::tab:!selected:disabled { + background-color: #2b2b2b; +} + +QToolBox::tab:hover { + background-color: #cb9437; + } + +QToolBox QScrollArea QWidget QWidget { + padding: 0px; + border: 0px; + background-color: transparent; +} + +/* QFrame ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe +https://doc.qt.io/qt-5/qframe.html#-prop +https://doc.qt.io/qt-5/qframe.html#details +https://stackoverflow.com/questions/14581498/qt-stylesheet-for-hline-vline-color + +--------------------------------------------------------------------------- */ +/* (dot) .QFrame fix #141, #126, #123 */ +.QFrame { + border-radius: 0px; + border: 0px solid #696968; + background-color: #696969; + /* No frame */ + /* HLine */ + /* HLine */ +} + +.QFrame[frameShape="0"] { + border-radius: 1.9px; + border: 1px solid #696968; +} + +.QFrame[frameShape="4"] { + max-height: 1px; + border: none; + background-color: #696968; +} + +.QFrame[frameShape="5"] { + max-width: 1px; + border: none; + background-color: #2b2b2b; +} + +/* QSplitter -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsplitter + +--------------------------------------------------------------------------- */ +QSplitter { + background-color: #3c3c3c; + spacing: 1px; + padding: 1px; + margin: 1px; +} + +QSplitter::handle { + margin: 0px 0px; + padding: 0px; +} + +QSplitter::handle:horizontal { + background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + width: 1px; +} + +QSplitter::handle:vertical { + background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + height: 1px; +} + +QSplitter::handle:hover { + background-image: url(qss:images_dark-light/splitter_horizontal_light.svg); + background-position: center center; + background-repeat: none; + background-color: #cb9437; +} + +/* QDateEdit, QDateTimeEdit ----------------------------------------------- + +--------------------------------------------------------------------------- */ +QDateEdit, QDateTimeEdit { + selection-background-color: #cb9437; + border-style: solid; + border: 1px solid #696968; + border-radius: 1.9px; + /* This fixes 103, 111 */ + padding-top: 2px; + /* This fixes 103, 111 */ + padding-bottom: 2px; + padding-left: 4px; + padding-right: 4px; + min-width: 10px; +} + +QDateEdit:on, QDateTimeEdit:on { + selection-background-color: #cb9437; +} + +QDateEdit::drop-down, QDateTimeEdit::drop-down { + subcontrol-origin: padding; + subcontrol-position: top right; + width: 12px; + border-left: 1px solid #696968; +} + +QDateEdit::down-arrow, QDateTimeEdit::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + height: 8px; + width: 8px; +} + +QDateEdit::down-arrow:on, QDateEdit::down-arrow:hover, QDateEdit::down-arrow:focus, QDateTimeEdit::down-arrow:on, QDateTimeEdit::down-arrow:hover, QDateTimeEdit::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_lighter.svg); +} + +QDateEdit QAbstractItemView, QDateTimeEdit QAbstractItemView { + background-color: #2b2b2b; + border-radius: 2px; + border: 1px solid #696968; + selection-background-color: #cb9437; +} + +/* QAbstractView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractView:hover { + border: 1px solid #cb9437; + color: White; +} + +QAbstractView:selected { + background: #cb9437; + color: White; +} + +/* PlotWidget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +PlotWidget { + /* Fix cut labels in plots #134 */ + padding: 0px; +} \ No newline at end of file diff --git a/src/Gui/Stylesheets/Dark-modern-pink.qss b/src/Gui/Stylesheets/Dark-modern-pink.qss new file mode 100644 index 0000000000..01c01b93b7 --- /dev/null +++ b/src/Gui/Stylesheets/Dark-modern-pink.qss @@ -0,0 +1,2577 @@ +/* +ABOUT +============================================================================================================ +Revised stylesheet based on the original from Pablo Gil Fernández made by MisterMaker + +KNOWN BUGS and TO DO +============================================================================================================ +Please, follow the link to get updated information: +https://forum.freecad.org/viewtopic.php?t=78431 + +INSTALLATION WHEN NECESSARY +============================================================================================================ +1) Place the .qss files and /images/ folder in the path that fits your OS: + OSX = /Users/[YOUR_USER_NAME]/Library/Preferences/FreeCAD/Gui/Stylesheets/ + WINDOWS = C:/[INSTALLATION_PATH]/FreeCAD/data/Gui/Stylesheets/ + LINUX = /home/[YOUR_USER_NAME]/.FreeCAD/Gui/Stylesheets/ + +============================================================================================================ +TO MODIFY USE THESE COLORS: + #c849cd + #560062 + + +See Qt documentation: + + - https://doc.qt.io/qt-5/stylesheet.html + - https://doc.qt.io/qt-5/stylesheet-reference.html + - https://doc.qt.io/qt-5/stylesheet-examples.html + +--------------------------------------------------------------------------- */ + + +/* Reset elements ------------------------------------------------------------ + +Resetting everything helps to unify styles across different operating systems + +--------------------------------------------------------------------------- */ +* { + padding: 0px; + margin: 0px; + border: 0px; + border-style: none; + border-image: none; + outline: 0; +} + +/* specific reset for elements inside QToolBar */ +QToolBar * { + margin: 0px; + padding: 0px; +} + +/*hacks */ +Gui--PropertyEditor--PropertyEditor QLineEdit:read-only, +Gui--PropertyEditor--PropertyEditor QLineEdit:disabled, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:read-only, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:disabled { + color: transparent; + border-color: transparent; + background-color: transparent; + selection-color: transparent; + selection-background-color: transparent; + +} +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel, +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel:disabled { + color: transparent; + background-color: transparent; + border: none; + border-radius: 1px; + margin: 0px; + padding: 0px; +} + +Gui--PropertyEditor--PropertyEditor QSpinBox, +Gui--PropertyEditor--PropertyEditor QDoubleSpinBox, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox, +Gui--PropertyEditor--PropertyEditor QLineEdit, +Gui--PropertyEditor--PropertyEditor QComboBox { + margin-left: 0px; + margin-right: 0px; + padding-top: 0px; + padding-bottom: 0px; + +} + +/*================================================================================================== +Main window +==================================================================================================*/ +QMainWindow, +QDialog, +QDockWidget, +QToolBar { + background-color: #2b2b2b; /* main background color */ +} + +QMdiArea { + background-image: url(qss:images_dark-light/background_freecad_dark.svg); + background-position: center center; + background-repeat: no-repeat; +} +/*navgation src/Mod/Tux/NavigationIndicatorGui.py */ +Gui--NavigationIndicatorGui--BlenderNavigationStyle { +/*QAction#a4 {*/ + qproperty-icon: url(:/icons/icons/NavigationBlender_light.svg); +} +/*===== +/* QWidget ---------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QWidget { + background-color: #2b2b2b; + border: 0px solid #696968; + padding: 0px; + color: White; + selection-background-color: #c849cd; + selection-color: White; +} + +QWidget:disabled { + background-color: transparent; + color: #c2c7cb; + selection-background-color: #c849cd; + selection-color: #c2c7cb; +} + +QWidget::item:selected { + background-color: #c849cd; +} + + /* Causes issue with colorselector. + QWidget::item:hover:!selected { + background-color: #c849cd; + }*/ + +/* QMainWindow ------------------------------------------------------------ + +This adjusts the splitter in the dock widget, not qsplitter +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmainwindow + +--------------------------------------------------------------------------- */ +QMainWindow::separator { + /*background-color: #3c3c3c;*/ + border: 0px solid #696968; + spacing: 0px; + padding: 1px; +} + +QMainWindow::separator:vertical:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,stop:0.2 transparent,stop:0.5 #c849cd, stop:0.8 transparent); + /*background-color: #c849cd;*/ + image: url(qss:images_dark-light/splitter_vertical_light.svg); +} + +QMainWindow::separator:horizontal:hover { + background-color: qlineargradient(x1:0, y1:0, x2:1, y2:0,stop:0.2 transparent,stop:0.5 #c849cd, stop:0.8 transparent); + /*background-color: #c849cd;*/ + image: url(qss:images_dark-light/splitter_horizontal_light.svg); +} + +QMainWindow::separator:horizontal { + width: 4px; + margin-top: 0.1px; + margin-bottom: 0.1px; + /* image: url(qss:images_dark-light/splitter_horizontal_dark.svg);*/ +} + +QMainWindow::separator:vertical { + height: 4px; + margin-left: 0.1px; + margin-right: 0.1px; + /* image: url(qss:images_dark-light/splitter_vertical_dark.svg);*/ +} + +/* QToolTip --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtooltip + +--------------------------------------------------------------------------- */ +QToolTip { + background-color: #1c1b22; + color: White; + /* If you remove the border property, background stops working on Windows */ + border: none; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Remove opacity, fix #174 - may need to use RGBA */ +} + +/* QStatusBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qstatusbar + +--------------------------------------------------------------------------- */ +QStatusBar { + border: 0px solid #3c3c3c; + /* Fixes Spyder #9120, #9121 */ + background: #2b2b2b; + /* Fixes #205, white vertical borders separating items */ +} + +QStatusBar::item { + border: none; +} + +QStatusBar QToolTip { + background-color: #2b2b2b; + border: 1px solid #696968; + color: #2b2b2b; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Reducing transparency to read better */ + opacity: 230; +} + +QStatusBar QLabel { + /* Fixes Spyder #9120, #9121 */ + background: transparent; +} + +/* QCheckBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcheckbox + +--------------------------------------------------------------------------- */ +QCheckBox { + color: white; + padding: 0px; + outline: none; + border: 1px solid transparent; + background-color: transparent; +} + +QCheckBox:focus { + border: 1px solid #560062; +} + +QCheckBox QWidget:disabled { + background-color: transparent; + color: #c2c7cb; +} + +QCheckBox::indicator { + color: white; + background-color: #1c1b22; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QCheckBox::indicator:unchecked { + background-color: #1c1b22; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QCheckBox::indicator:unchecked:hover, QCheckBox::indicator:unchecked:focus, QCheckBox::indicator:unchecked:pressed { + background-color: #c849cd; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QCheckBox::indicator:unchecked:disabled { + background-color: #2b2b2b; + image:url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QCheckBox::indicator:checked { + background-color: #1c1b22; + /*border: 1px solid #696968; /* QRadioButton has the same color */ + image:url(qss:images_dark-light/checkbox_light.svg); +} + +QCheckBox::indicator:checked:hover, QCheckBox::indicator:checked:pressed { + background-color: #c849cd; +} + +QCheckBox::indicator:checked:disabled { + background-color: #2b2b2b; + image: url(qss:images_dark-light/check_light.svg); +} + +QCheckBox::indicator:indeterminate { + background-color: #1c1b22; + border: 1px solid #696968; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QCheckBox::indicator:indeterminate:disabled { + background-color: #2b2b2b; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QCheckBox::indicator:indeterminate:hover, QCheckBox::indicator:indeterminate:pressed { + background-color: #c849cd; /* QRadioButton has the same color */ +} + +/* QGroupBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qgroupbox + +--------------------------------------------------------------------------- */ +QGroupBox { + font-weight: bold; + border: 1px solid #696968; + border-radius: 1.9px; + padding: 2px; + margin-top: 10px; + margin-bottom: 4px; +} + +QGroupBox::title { + subcontrol-origin: margin; + subcontrol-position: top left; + left: 4px; + padding-left: 2px; + padding-right: 4px; + padding-top: 6px; +} + +QGroupBox::indicator { + color: white; + background-color: #3c3c3c; + border: 1px solid #696968; + width: 12px; + height: 12px; + border-radius:1px; +} + +QGroupBox::indicator:unchecked { + background-color: #696968; + border: 1px solid #696968; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QGroupBox::indicator:unchecked:hover, QGroupBox::indicator:unchecked:focus, QGroupBox::indicator:unchecked:pressed { + background-color: #c849cd; +} + +QGroupBox::indicator:unchecked:disabled { + background-color: #1c1b22; + border: 1px solid #696968; +} + +QGroupBox::indicator:checked { + border: none; + image:url(qss:images_dark-light/checkbox_light.svg); +} + +QGroupBox::indicator:checked:hover, QGroupBox::indicator:checked:focus, QGroupBox::indicator:checked:pressed { + background-color: #c849cd; +} + +QGroupBox::indicator:checked:disabled { + background-color: #c849cd; +} + +/* QRadioButton ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qradiobutton + +--------------------------------------------------------------------------- */ +QRadioButton { + background-color: transparent; + color: White; + border: none; + spacing: 4px; + padding-top: 4px; + padding-bottom: 4px; + outline: none; +} + +QRadioButton:focus { + border: 1px solid #560062; +} + +QRadioButton:disabled { + background-color: #696968; + color: #353535; +} + +QRadioButton QWidget { + background-color: transparent; + color: White; + spacing: 0px; + padding: 0px; + outline: none; + border: none; +} + +QRadioButton::indicator { + background-color: #3c3c3c; + border: 1px solid #696968; + border-radius: 6px; + margin-left: 0px; + height: 11px; + width: 11px; +} + +QRadioButton::indicator:unchecked { + /*image:url(qss:images_dark-light/radiobutton_light.svg);*/ +} + +QRadioButton::indicator:unchecked:hover, QRadioButton::indicator:unchecked:pressed { + background-color: #c849cd; + border: 1px solid #c849cd; + border-radius: 6px; +} + +QRadioButton::indicator:unchecked:disabled { + /*image:url(qss:images_dark-light/radiobutton_dark.svg);*/ + border: 1px solid #696968; +} + +QRadioButton::indicator:checked { + image:url(qss:images_dark-light/radiobutton_light.svg); +} + +QRadioButton::indicator:checked:hover, QRadioButton::indicator:checked:pressed { + background-color: #c849cd; + border: 1px solid #c849cd; + border-radius: 6px; + image:url(qss:images_dark-light/radiobutton_light.svg); +} + +QRadioButton::indicator:checked:disabled { + outline: none; + background-color: #696968; + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +/* QMenuBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenubar + +--------------------------------------------------------------------------- */ +QMenuBar { + background-color: #161616; + /*padding: 1px; + border: 0px solid rgba(0,0,0,140);*/ + color: White; + selection-background-color: #c849cd; +} + +QMenuBar:focus { + border: 1px solid #560062; +} + +QMenuBar::item { + background: transparent; + /*padding-left:5px; + padding-right: 5px; + padding-bottom: 1px; + padding-top: 1px;*/ +} + +QMenuBar::item:selected { + background: transparent; + border: 0px solid #696968; + background-color: #c849cd; +} + +QMenuBar::item:pressed { + /*padding: 2px; + padding-left: 10px; + padding-right: 10px;*/ + border: 0px solid #696968; + background-color: #c849cd; + color: White; + /*margin-bottom: 0px; + padding-bottom: 0px;*/ +} + +/* QMenu ------------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenu + +--------------------------------------------------------------------------- */ +QMenu { + border-bottom: 2px rgba(0,0,0,140); + border-right: 2px rgba(0,0,0,140); + color: White; + margin: 0px; + background-color: #161616; + selection-background-color: #c849cd; +} + +QMenu::separator { + height: 2px; + background-color: #3c3c3c; + margin-left: 30%; + margin-right: 30%; +} + +QMenu::item { + background-color: transparent; + padding: 2px 2px; /* make room for icon at left */ + /* Reserve space for selection border */ + border: 0px transparent #696968; +} + +QMenu::item:selected { + color: White; + background-color: #c849cd; +} + +QMenu::item:pressed { + background-color: #c849cd; +} + +QMenu::icon { + margin-left: 5px; + width: 14px; + height: 14px; +} + +QMenu::indicator { + margin-left: 2px; + margin-right: 2px; + padding: 0px; + width: 12px; + height: 12px; + /* non-exclusive indicator = check box style indicator (see QActionGroup::setExclusive) */ + /* exclusive indicator = radio button style indicator (see QActionGroup::setExclusive) */ +} + +QMenu::icon:checked { /* appearance of a 'checked' icon */ + background: #560062; + margin-left: -5px; + border: 5px solid #560062; + position: absolute; + border-radius: 0px; +} +QMenu::indicator:non-exclusive:unchecked { + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:non-exclusive:unchecked:hover, QMenu::indicator:non-exclusive:unchecked:focus, QMenu::indicator:non-exclusive:unchecked:pressed { + border: none; + background: #c849cd; +} + +QMenu::indicator:non-exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QMenu::indicator:non-exclusive:checked { + image:url(qss:images_dark-light/checkbox_light.svg); +} + +QMenu::indicator:non-exclusive:checked:hover, QMenu::indicator:non-exclusive:checked:focus, QMenu::indicator:non-exclusive:checked:pressed { + border: none; + background: #c849cd; +} + +QMenu::indicator:non-exclusive:checked:disabled { + image:url(qss:images_dark-light/checkbox_checked_disabled.svg); +} + +QMenu::indicator:non-exclusive:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:disabled { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:focus, QMenu::indicator:non-exclusive:indeterminate:hover, QMenu::indicator:non-exclusive:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QMenu::indicator:exclusive:unchecked { + image: url(qss:images_dark-light/transparent.svg); +} + +QMenu::indicator:exclusive:unchecked:hover, QMenu::indicator:exclusive:unchecked:focus, QMenu::indicator:exclusive:unchecked:pressed { + border: none; + outline: none; + background: #c849cd; + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:checked { + border: none; + outline: none; + image: url(qss:images_dark-light/radiobutton_light.svg); +} + +QMenu::indicator:exclusive:checked:hover, QMenu::indicator:exclusive:checked:focus, QMenu::indicator:exclusive:checked:pressed { + border: none; + outline: none; + background: #c849cd; + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:checked:disabled { + outline: none; + image: url(qss:images_dark-light/radiobutton_light.svg); +} + +QMenu::right-arrow { + margin: 5px; + padding-left: 12px; + image:url(qss:images_dark-light/right_arrow_lighter.svg); + height: 12px; + width: 12px; + background-color: transparent; +} + +/* QAbstractItemView ------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QAbstractItemView { + alternate-background-color: #5b5b5b; + color: White; + border: 1px solid #696968; + border-radius: 2px; +} + +QAbstractItemView QLineEdit { + padding: 2px; +} + +/* QAbstractScrollArea ---------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QAbstractScrollArea { + background-color: transparent; + border: 0px solid #696968; + border-radius: 0px; + /* fix #159 */ + padding: 0px; + /* remove min-height to fix #244 */ + color: White; +} + +QAbstractScrollArea:disabled { + color: #353535; +} + +/* QScrollArea ------------------------------------------------------------ + +--------------------------------------------------------------------------- +text input field disabled!!!!*/ +QScrollArea QWidget:disabled { + background-color: #2b2b2b; +} + +/* QScrollBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qscrollbar + +--------------------------------------------------------------------------- */ +QScrollBar:horizontal { + height: 16px; + margin: 2px 16px 2px 16px; + border: 0px solid #696968; + border-radius: 1.9px; + background-color: #2b2b2b; +} + +QScrollBar:vertical { + background-color: #2b2b2b; + width: 16px; + margin: 16px 2px 16px 2px; + border: 0px solid #696968; + border-radius: 1.9px; +} + +QScrollBar::handle:horizontal { + background-color: #696969; + border: 1px solid #2b2b2b; + border-radius: 1.9px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:hover { + background-color: #c849cd; + border: #696968; + border-radius: 1.9px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:focus { + border: 1px solid #560062; +} + +QScrollBar::handle:vertical { + background-color: #696969; + border: 1px solid #696968; + min-height: 8px; + border-radius: 1.9px; +} + +QScrollBar::handle:vertical:hover { + background-color: #c849cd; + border: #696968; + border-radius: 1.9px; + min-height: 8px; +} + +QScrollBar::handle:vertical:focus { + border: 1px solid #560062; +} + +QScrollBar::add-line:horizontal { + border-image: url(qss:images_dark-light/right_arrow_light.svg); + height: 9px; + width: 5px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:horizontal:hover, QScrollBar::add-line:horizontal:on { + border-image: url(qss:images_dark-light/right_arrow_lighter.svg); + + height: 9px; + width: 5px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical { + border-image: url(qss:images_dark-light/down_arrow_light.svg); + height: 5px; + width: 9px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical:hover, QScrollBar::add-line:vertical:on { + border-image: url(qss:images_dark-light/down_arrow_lighter.svg); + height: 5px; + width: 9px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/left_arrow_light.svg); + height: 9px; + width: 5px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal:hover, QScrollBar::sub-line:horizontal:on { + border-image: url(qss:images_dark-light/left_arrow_lighter.svg); + height: 9px; + width: 5px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/up_arrow_light.svg); + height: 5px; + width: 9px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical:hover, QScrollBar::sub-line:vertical:on { + border-image: url(qss:images_dark-light/up_arrow_lighter.svg); + height: 5px; + width: 9px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::up-arrow:horizontal, QScrollBar::down-arrow:horizontal { + background: none; +} + +QScrollBar::up-arrow:vertical, QScrollBar::down-arrow:vertical { + background: none; +} + +QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal { + background: none; +} + +QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical { + background: none; +} + +/* QTextEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-specific-widgets + + +report view +--------------------------------------------------------------------------- */ +QTextEdit { + background-color: #2b2b2b; + color: White; + border-radius: 1.9px; + border: 0px solid #696968; +} + +QTextEdit:focus { + border: 1px solid #560062; +} + +QTextEdit:selected { + background: #346792; + color: white; +} + +/* QPlainTextEdit --------------------------------------------------------- +Python +--------------------------------------------------------------------------- */ +QPlainTextEdit { + background-color: #3c3c3c; + color: White; + border-radius: 1.9px; + border: 0px solid #696968; +} + +QPlainTextEdit:focus { + border: 1px solid #560062; +} + +QPlainTextEdit:selected { + background: #c849cd; + color: White; +} + +/* QSizeGrip -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsizegrip + +--------------------------------------------------------------------------- */ +QSizeGrip { + background: transparent; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/sizegrip_light.svg); +} + +/* QStackedWidget --------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QStackedWidget { + padding: 0px; + border: 0px solid #696968; +} + +/* QToolBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbar + +--------------------------------------------------------------------------- */ +QToolBar { + background-color: #2b2b2b; + border-bottom: 0px solid rgba(0,0,0,120); + padding: 1px; + font-weight: bold; + spacing: 1px; +} + +QToolBar:disabled { + /* Fixes #272 */ + background-color: #2b2b2b; +} + +QToolBar::handle:horizontal { + width: 8px; + margin: 3px 3px; + background-position: top right; + background-repeat: repeat-y; + background-image: url(qss:images_dark-light/Hmovetoolbar_light.svg); +} + +QToolBar::handle:vertical { + height: 8px; + margin: 3px 3px; + background-position: left bottom; + background-repeat: repeat-x; + background-image: url(qss:images_dark-light/Vmovetoolbar_light.svg); +} + +QToolBar::separator:horizontal { + width: 2px; + margin: 4px 4px; + background-color: transparent; +} + +QToolBar::separator:vertical { + height: 2px; + margin: 4px 4px; + background-color: transparent; +} + +/*The "show more" button (it can also be stylable with "QToolBarExtension" icon is not working Qproperty works but breaks when you move the toolbar see also */ +QToolButton#qt_toolbar_ext_button { +margin: 0px; +padding: 0px; +background-color: #696969; +/*background-image: url(qss:images_dark-light/more_light.svg);*/ +background-repeat: none; +background-position: center center; +} + +QToolButton#qt_toolbar_ext_button:hover { +/*background-image: url(qss:images_dark-light/more_light.svg);*/ +background-color: #c849cd; +} + +QToolButton#qt_toolbar_ext_button:on { +/*background-image: url(qss:images_dark-light/more_light.svg);*/ +border-color: #696968; +background-color: #c849cd; +} + + +/* QAbstractSpinBox ------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractSpinBox, +QSpinBox { + background-color: #1c1b22; + border: 1px solid transparent; + color: White; + /* This fixes 103, 111 */ + /* padding-top: 0px; + /* This fixes 103, 111 */ + /*padding-bottom: 0px; + /*padding-left: 4px; + /*padding-right: 4px; + border-radius: 1.9px;*/ + min-height: 1.7em; + /* min-width: 5px; removed to fix 109 */ +} + +QAbstractSpinBox:up-button { + background-color: #696968; + subcontrol-origin: border; + subcontrol-position: top right; + border-left: 1px solid transparent; + border-bottom: 1px solid #1c1b22; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-bottom: -1px;*/ +} + +QAbstractSpinBox::up-arrow, QAbstractSpinBox::up-arrow:disabled, QAbstractSpinBox::up-arrow:off { + image: url(qss:images_dark-light/up_arrow_disabled_light.svg); + /* height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::up-arrow:hover { + /*background-color: #c849cd;*/ + image: url(qss:images_dark-light/up_arrow_lighter.svg); +} + +QAbstractSpinBox:down-button { + background-color: #696968; + subcontrol-origin: border; + subcontrol-position: bottom right; + border-left: 1px solid #696968; + border-top: 1px solid #696968; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-top: -1px;*/ +} + +QAbstractSpinBox::down-arrow, QAbstractSpinBox::down-arrow:disabled, QAbstractSpinBox::down-arrow:off { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + /*height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::down-arrow:hover { + image: url(qss:images_dark-light/down_arrow_lighter.svg); +} + +QAbstractSpinBox:hover { + /*border: 1px solid #c849cd; + color: White;*/ +} + +QAbstractSpinBox:focus { + border: 1px solid #560062; +} + +QAbstractSpinBox:selected { + background: #560062; + /*color: White;*/ +} + +/* ------------------------------------------------------------------------ */ +/* DISPLAYS --------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QLabel ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe + +--------------------------------------------------------------------------- */ +QLabel { + background-color: transparent; + border: 0px solid #696968; + padding: 2px; + margin: 0px; + color: White; +} + +QLabel:disabled { + background-color: transparent; + border: 0px solid #696968; + color: #c2c7cb; +} + +QLabel[haslink="true"] { + color: orange; +} + + +/* QTextBrowser ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QTextBrowser { + background-color: #1c1b22; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; +} + +QTextBrowser:disabled { + background-color: #2b2b2b; + border: 1px solid #696968; + color: #c2c7cb; + border-radius: 1.9px; +} + +QTextBrowser:hover, QTextBrowser:!hover, QTextBrowser:selected, QTextBrowser:pressed { + border: 1px solid #c849cd; +} + +/* QGraphicsView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QGraphicsView { + background-color: transparent; + border: 0px solid #c849cd; + color: White; + border-radius: 0px; +} + +QGraphicsView:disabled { + background-color: #1c1b22; + border: 0px solid #696968; + color: #c2c7cb; + border-radius: 0px; +} + +QGraphicsView:hover, QGraphicsView:!hover, QGraphicsView:selected, QGraphicsView:pressed { + border: 0px solid #ff00f7; +} + +/* QCalendarWidget -------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCalendarWidget { + border: 1px solid #696968; + border-radius: 1.9px; +} + +QCalendarWidget:disabled { + background-color: #353535; + color: #c2c7cb; +} + +/* QLCDNumber ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QLCDNumber { + background-color: #1aff00; + color: White; +} + +QLCDNumber:disabled { + background-color: #2b2b2b; + color: #c2c7cb; +} + +/* QProgressBar ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qprogressbar + +--------------------------------------------------------------------------- */ +QProgressBar { + background-color: #c2c7cb; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar:disabled { + background-color: #161616; + border: 1px solid #696968; + color: #696969; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar::chunk { + background-color: #c849cd; + color: #2b2b2b; + border-radius: 1.9px; +} + +QProgressBar::chunk:disabled { + background-color: #161616; + color: #696968; + border-radius: 1.9px; +} + +/* ------------------------------------------------------------------------ */ +/* BUTTONS ---------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QPushButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qpushbutton + +--------------------------------------------------------------------------- */ +QPushButton { + background-color: #696969; + color: White; + border-radius: 2px; + padding: 2px; + outline: none; + border: none; +} + +QPushButton:disabled { + background-color: #2b2b2b; + color: #c2c7cb; + border-radius: 2px; + padding: 2px; +} + +QPushButton:checked { + background-color: #c849cd; + border-radius: 2px; + padding: 2px; + outline: none; +} + +QPushButton:checked:disabled { + background-color: #c849cd; + color: #3c3c3c; + border-radius: 2px; + padding: 2px; + outline: none; +} + +QPushButton:checked:selected { + background: #c849cd; +} + +QPushButton:hover { + background-color: #c849cd; + color: White; +} + +QPushButton:pressed { + background-color: #c849cd; +} + +QPushButton:selected { + background: #560062; + color: White; +} + +QPushButton::menu-indicator { + subcontrol-origin: padding; + subcontrol-position: bottom right; + bottom: 4px; +} + +QDialogButtonBox QPushButton { + /* Issue # 194 # 248 - Special case of QPushButton inside dialogs, for better UI */ + min-width: 80px; +} + +/* QToolButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbutton + +--------------------------------------------------------------------------- */ +QToolButton { + background-color: transparent; + color: White; + border-radius: 1px; + padding: 0px; + outline: none; + border: none; + /* The subcontrols below are used only in the DelayedPopup mode */ + /* The subcontrols below are used only in the MenuButtonPopup mode */ + /* The subcontrol below is used only in the InstantPopup or DelayedPopup mode */ +} + +QToolButton:disabled { + background-color: rgba(0, 0, 0, 0.065); + color: transparent; + border-radius: 1px; + padding: 0px; + opacity: 1.0; +} + +QToolButton:checked { + background-color: #c849cd; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:disabled { + background-color: #b65555; + color: #c2c7cb; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:hover { + background-color: #c849cd; + color: White; +} + +QToolButton:checked:pressed { + background-color: #c849cd; +} + +QToolButton:checked:selected { + background: #560062; + color: White; +} + +QToolButton:hover { + background-color: #c849cd; + color: White; +} + +QToolButton:pressed { + background-color: #560062; +} + +QToolButton:selected { + background: #c849cd; + color: White; +} + +QToolButton[popupMode="0"] { + /* Only for DelayedPopup */ + padding-right: 20px; +} + +QToolButton[popupMode="1"] { + /* Only for MenuButtonPopup */ + padding-right: 20px; +} +QToolButton[popupMode="0"]::menu-button { + border: none; +} + +QToolButton[popupMode="0"]::menu-button:hover { + border: none; + border-left: 2px solid #fe0000; + border-radius: 0px; +} +QToolButton[popupMode="1"]::menu-button { + border: none; +} + +QToolButton[popupMode="1"]::menu-button:hover { + border: none; + border-left: 2px solid #e5ff00; + border-radius: 0px; +} + +QToolButton[popupMode="2"] { + /* Only for InstantPopup */ + padding-right: 20px; +} + +QToolButton::menu-button { + border-bottom: 0px solid #ffffff; + border-radius: 2px; + /* 16px width + 4px for border = 20px allocated above */ + width: 1.6ex; + padding: 2px; + border-radius: 2px; + border: 0px #000000; +} + +QToolButton::menu-button:hover { + /* background: rgba(0, 0, 0, 0.5);*/ + +} + +QToolButton::menu-button:checked:hover { + /* background: rgba(0, 0, 0, 0.5);*/ +} + +QToolButton::menu-indicator { + /* Exclude a shift for better image */ + subcontrol-position: right bottom; + /* Shift it a bit */ +} + +QToolButton::menu-arrow { + image: url(qss:images_dark-light/more_arrow_light.svg); + width: 1.5ex; + height: 1.5ex; + subcontrol-position: right bottom; + background: transparent; +} +QToolButton::menu-arrow:open { + subcontrol-position: right bottom; + image: url(qss:images_dark-light/more_arrow_light.svg); +} +QToolButton::menu-arrow:hover { + image: url(qss:images_dark-light/more_arrow_light.svg); + background-color: rgba(0, 0, 0, 0.498); + border: 1px solid rgba(0, 0, 0, 0.498); +} + +/* QCommandLinkButton ----------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCommandLinkButton { + background-color: transparent; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; + padding: 0px; + margin: 0px; +} + +QCommandLinkButton:disabled { + background-color: transparent; + color: #c2c7cb; +} + +/* ------------------------------------------------------------------------ */ +/* INPUTS - NO FIELDS ----------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QComboBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QComboBox { + border: 1px solid transparent; + background: #1c1b22; + border-radius: 2px; + selection-background-color: #c849cd; + padding-left: 2px; + padding-right: 2px; + /* padding-right = 36; 4 + 16*2 See scrollbar size */ + /* changed to 4px to fix #239 */ + /* Fixes #103, #111 */ + min-height: 1.5em; + /* padding-top: 2px; removed to fix #132 */ + /* padding-bottom: 2px; removed to fix #132 */ + /* min-width: 75px; removed to fix #109 */ + /* Needed to remove indicator - fix #132 */ +} +QComboBox:editable { + background: #1c1b22; +} +QComboBox QAbstractItemView { + border: 0px solid #696968; + border-radius: 0px; + background-color: #1c1b22; + selection-background-color: #c849cd; +} + +QComboBox QAbstractItemView:hover { + background-color:Black; + color: White; +} + +QComboBox QAbstractItemView:selected { + background: #c849cd; + color: White; +} + +QComboBox QAbstractItemView:alternate { + background: #3c3c3c; +} + +QComboBox:disabled { + background-color: #2b2b2b; + color: #353535; +} + +QComboBox:hover { + /*background-color: #c849cd;*/ + border: 1px solid #c849cd; +} + +QComboBox:focus { + border: 1px solid #560062; +} + +QComboBox:on { + selection-background-color: #560062; +} + +QComboBox::indicator { + border: none; + border-radius: 0px; + background-color: transparent; + selection-background-color: transparent; + color: transparent; + selection-color: #c849cd; + /* Needed to remove indicator - fix #132 */ +} + +QComboBox::indicator:alternate { + background: #696968; +} + +QComboBox::item { + /* Remove to fix #282, #285 and MR #288*/ + /*&:checked { + font-weight: bold; + } + + &:selected { + border: 0px solid transparent; + } + */ +} + +QComboBox::item:alternate { + background: #3c3c3c; +} + +QComboBox::drop-down { + subcontrol-origin: padding; + background-color: #696969; + subcontrol-position: top right; + width: 14px; + border-left: 1px solid #696968; +} +QComboBox::drop-down:hover { + background-color: #c849cd; +} + +QComboBox::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + height: 10px; + width: 10px; +} + +QComboBox::down-arrow:on, QComboBox::down-arrow:hover, QComboBox::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_lighter.svg); +} + + +/*================================================================================================== +Tasks panel (custom FreeCAD class) +==================================================================================================*/ +Gui--PropertyEditor--PropertyEditor { + qproperty-groupTextColor: white; + qproperty-groupBackground: #3c3c3c; + border: 0px solid #696968; + +} + +/* Action group */ +QFrame[class="panel"] { +background-color: transparent; /* temporal (transparent background) */ + +} + +QSint--ActionGroup { +padding: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +margin: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +} + +/* Separator line */ +QSint--ActionGroup QFrame[height="1"], +QSint--ActionGroup QFrame[height="2"], +QSint--ActionGroup QFrame[height="3"], +QSint--ActionGroup QFrame[width="1"], +QSint--ActionGroup QFrame[width="2"], +QSint--ActionGroup QFrame[width="3"] { +border-color: rgba(0,0,0,60); +} + +/* Panel header */ +QSint--ActionGroup QFrame[class="header"] { +border-top: 1px solid #696968; +border-left: 1px solid #696968; +border-right: 1px solid #696968; +background-color: #696969; /* Task Panel Header background color */ +border-top-left-radius: 3px; +border-top-right-radius: 3px; +border-bottom-left-radius: 0px; +border-bottom-right-radius: 0px; +margin: 0px; +padding: 0px; +} + +QSint--ActionGroup QFrame[class="header"]:hover { +background-color: #c849cd; +} + +QSint--ActionGroup QToolButton[class="header"] { +color: white; /* Task Panel Header text color */ +text-align: left; +font-weight: bold; +border: none; +margin: 0px; +padding: 0px; +} + +QSint--ActionGroup QFrame[class="header"] QLabel { +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_light.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; +} + +QSint--ActionGroup QFrame[class="header"] QLabel:hover { +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_lighter.svg); +} + +QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"] { +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_light.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; +} + +QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"]:hover { +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_lighter.svg); +} + +QSint--ActionGroup QFrame[class="content"] { +background-color: transparent; /* Task Panel background color */ +margin: 0px; +padding: 0px; +border-bottom: 1px solid #696968; +border-left: 1px solid #696968; +border-right: 1px solid #696968; +border-top-left-radius: 0px; +border-top-right-radius: 0px; +border-bottom-left-radius: 3px; +border-bottom-right-radius: 3px; +} + +QSint--ActionGroup QFrame[class="content"] > QWidget { +background-color: #2b2b2b; /* Task Panel background color */ +} + +/* Fixs for tabs inside Task Panel */ +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:top:selected { +border-bottom-color: #c849cd; /* same as Task Panel background color */ +} + +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:bottom:selected { +border-top-color: #c849cd; /* same as Task Panel background color */ +} + +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:right:selected { +border-right-color: #c849cd; /* same as Task Panel background color */ +} + +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:left:selected { +border-left-color: #c849cd; /* same as Task Panel background color */ +} + +/* Fix for buttons with icons that showed cropped (still not happy with result) */ +QSint--ActionGroup QFrame[class="content"] > QWidget > QPushButton { +padding: 2px; /* bigger padding crops text and icons... */ +margin: 0px; +} + +/* Fix for lists inside task panels */ /* sketcher constraints list */ +QSint--ActionGroup QFrame[class="content"] QTreeView, +QSint--ActionGroup QFrame[class="content"] QListView, +QSint--ActionGroup QFrame[class="content"] QTableView { +color: white; +background-color: black; +} + + +/* found inside Part Design Workbench and "make a draft on a face" Task panel options */ +QSint--ActionGroup QFrame[class="content"] QToolButton { + color: white; + text-align: center; + background-color: #696969; + border: 0px solid #adadad; + padding: 1px 1px; /* different than regular QPushButton */ + margin: 0px; /* different than regular QPushButton */ + min-height: 16px; /* same as QTabBar QPushButton min-width */ + border-radius: 1px; +} + +QSint--ActionGroup QFrame[class="content"] QToolButton:hover{ + background: #c849cd; + border: 1px solid #c849cd; +} +QSint--ActionGroup QFrame[class="content"] QToolButton:focus { + border: 1px solid #560062; +} + +QSint--ActionGroup QFrame[class="content"] QToolButton:disabled, +QSint--ActionGroup QFrame[class="content"] QToolButton:disabled:checked { + color: #696969; + background-color: #1c1b22; +} + +QSint--ActionGroup QFrame[class="content"] QToolButton:pressed { + background: #c849cd; + border: 1px solid #c849cd; +} + +/* QSlider ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qslider + +--------------------------------------------------------------------------- */ +QSlider:disabled { + background: #2b2b2b; +} + +QSlider:focus { + border: 1px solid #560062; +} + +QSlider::groove:horizontal { + background: #2b2b2b; + border: 1px solid #696968; + height: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::groove:vertical { + background: #c849cd; + border: 1px solid #696968; + width: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::add-page:vertical { + background: #c849cd; + border: 1px solid #696968; + width: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::add-page:vertical :disabled { + background: #696968; +} + +QSlider::sub-page:horizontal { + background: #c849cd; + border: 1px solid #0073ff; + height: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::sub-page:horizontal:disabled { + background: #c849cd; +} + +QSlider::handle:horizontal { + background: #353535; + border: 1px solid #2b2b2b; + width: 8px; + height: 8px; + margin: -8px 0px; + border-radius: 1.9px; +} + +QSlider::handle:horizontal:hover { + background: #c849cd; + border: 1px solid #c849cd; +} + +QSlider::handle:horizontal:focus { + border: 1px solid #560062; +} + +QSlider::handle:vertical { + background: #c2c7cb; + border: 1px solid #696968; + width: 8px; + height: 8px; + margin: 0 -8px; + border-radius: 1.9px; +} + +QSlider::handle:vertical:hover { + background: #c849cd; + border: 2px solid #c849cd; +} + +QSlider::handle:vertical:focus { + border: 1px solid #560062; +} + +/* QLineEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlineedit + +--------------------------------------------------------------------------- */ +QLineEdit { + background-color: #1c1b22; + padding-top: 2px; + /* This QLineEdit fix 103, 111 */ + padding-bottom: 2px; + /* This QLineEdit fix 103, 111 */ + padding-left: 4px; + padding-right: 4px; + border-style: solid; + border: 1px solid #696968; + border-radius: 2px; + color: White; +} + +QLineEdit:disabled { + background-color: #2b2b2b; + color: #c2c7cb; +} + +QLineEdit:hover { + border: 1px solid #c849cd; + color: White; +} + +QLineEdit:focus { + border: 2px solid #560062; +} + +QLineEdit:selected { + background-color: #c849cd; + color: white; +} + +/* QTabWiget -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabWidget { + padding: 2px; + selection-background-color: #c849cd; +} + +QTabWidget QWidget { + /* Fixes #189 */ + border-radius: 1.9px; +} + +QTabWidget::pane { + border: 0px solid #8c00ffa1; + border-radius: 1.9px; + margin: 0px; + /* Fixes double border inside pane with pyqt5 */ + padding: 0px; +} + +QTabWidget::pane:selected { + background-color: #c849cd; + border: 1px solid #346792; +} +/* QTabBar ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabBar, QDockWidget QTabBar { + qproperty-drawBase: 0; + border-radius: 2px; + margin: 0px; + padding: 2px; + border: 0; + alignment: center; + /* left: 5px; move to the right by 5px - removed for fix */ +} + +QTabBar::close-button, QDockWidget QTabBar::close-button { + border: 0; + margin: 0; + padding: 1px; + image: url(qss:images_dark-light/close_light.svg); +} + +QTabBar::close-button:hover, QDockWidget QTabBar::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); + /*background-color: rgba(255, 0, 0, 0.3);*/ +} + +QTabBar::close-button:pressed, QDockWidget QTabBar::close-button:pressed { + image: url(qss:images_dark-light/close_.svg); +} + +QTabBar::tab, QDockWidget QTabBar::tab { + /* !selected and disabled ----------------------------------------- */ + /* selected ------------------------------------------------------- */ +} + +QTabBar::tab:top:selected:disabled, QDockWidget QTabBar::tab:top:selected:disabled { + border-bottom: 3px solid #696969; + color: #515151; + background-color: #696969; +} + +QTabBar::tab:bottom:selected:disabled, QDockWidget QTabBar::tab:bottom:selected:disabled { + border-top: 3px solid #696969; + color: #515151; + background-color: #696969; +} + +QTabBar::tab:left:selected:disabled, QDockWidget QTabBar::tab:left:selected:disabled { + border-right: 3px solid #696969; + color: #515151; + background-color: #696969; +} + +QTabBar::tab:right:selected:disabled, QDockWidget QTabBar::tab:right:selected:disabled { + border-left: 3px solid #696969; + color: #515151; + background-color: #696969; +} + +QTabBar::tab:top:!selected:disabled, QDockWidget QTabBar::tab:top:!selected:disabled { + border-bottom: 3px solid #696969; + color: #515151; + background-color: #696969; +} + +QTabBar::tab:bottom:!selected:disabled, QDockWidget QTabBar::tab:bottom:!selected:disabled { + border-top: 3px solid #696969; + color: #515151; + background-color: #696969; +} + +QTabBar::tab:left:!selected:disabled, QDockWidget QTabBar::tab:left:!selected:disabled { + border-right: 3px solid #696969; + color: #515151; + background-color: #696969; +} + +QTabBar::tab:right:!selected:disabled, QDockWidget QTabBar::tab:right:!selected:disabled { + border-left: 3px solid #696969; + color: #515151; + background-color: #696969; +} + +QTabBar::tab:top:!selected, QDockWidget QTabBar::tab:top:!selected { + border-bottom: 2px solid #696969; + margin-top: 2px; +} + +QTabBar::tab:bottom:!selected, QDockWidget QTabBar::tab:bottom:!selected { + border-top: 2px solid #696969; + margin-bottom: 2px; +} + +QTabBar::tab:left:!selected, QDockWidget QTabBar::tab:left:!selected { + border-left: 2px solid #696969; + margin-right: 2px; +} + +QTabBar::tab:right:!selected, QDockWidget QTabBar::tab:right:!selected { + border-right: 2px solid #696969; + margin-left: 2px; +} + +QTabBar::tab:top, QDockWidget QTabBar::tab:top { + background-color: #696969; + margin-left: 3px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + min-width: 5px; + border: 0px solid #696969; + border-radius: 4px; +} + +QTabBar::tab:top:selected, QDockWidget QTabBar::tab:top:selected { + background-color: #2b2b2b; + /*border: 1px solid #560062; + border-radius: 4px; + margin-left: 4px; + margin-right: 4px; + padding-left: 3px; + padding-right: 3px;*/ +} + +QTabBar::tab:top:!selected:hover, QDockWidget QTabBar::tab:top:!selected:hover { + /*border: 1px solid #c849cd;*/ + border: 0px solid #c849cd; + background-color: #c849cd; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; +} + +QTabBar::tab:bottom, QDockWidget QTabBar::tab:bottom { + border: 0px solid #696969; + background-color: #696969; + margin-left: 3px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + border-radius: 4px; + min-width: 5px; +} + +QTabBar::tab:bottom:selected, QDockWidget QTabBar::tab:bottom:selected { + background-color: #2b2b2b; + /*border: 1px solid #560062; + border-radius: 4px; + margin-left: 4px; + margin-right: 4px; + padding-left: 3px; + padding-right: 3px;*/ +} + +QTabBar::tab:bottom:!selected:hover, QDockWidget QTabBar::tab:bottom:!selected:hover { +/*border: 1px solid #c849cd;*/ + border: 0px solid #c849cd; + background-color: #c849cd; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; +} + +QTabBar::tab:left, QDockWidget QTabBar::tab:left { + background-color: #2b2b2b; + margin-top: 2px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + border-radius: 4px; + min-height: 5px; +} + +QTabBar::tab:left:selected, QDockWidget QTabBar::tab:left:selected { + background-color: #2b2b2b; + border: 0px solid #560062; +} + +QTabBar::tab:left:!selected:hover, QDockWidget QTabBar::tab:left:!selected:hover { + border: 0px solid #c849cd; + background-color: #c849cd; + /* Fixes different behavior #271 */ + margin-right: 0px; + padding-right: -1px; +} + +QTabBar::tab:right, QDockWidget QTabBar::tab:right { + background-color: #2b2b2b; + margin-top: 2px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + min-height: 5px; + border: 10px; +} + +QTabBar::tab:right:selected, QDockWidget QTabBar::tab:right:selected { + background-color: #2b2b2b; + border: 0px solid #560062; +} + +QTabBar::tab:right:!selected:hover, QDockWidget QTabBar::tab:right:!selected:hover { + border: 0px solid #c849cd; + background-color: #c849cd; + /* Fixes different behavior #271 */ + margin-left: 0px; + padding-left: 0px; +} + +QTabBar QToolButton, QDockWidget QTabBar QToolButton { + /* Fixes #136 */ + background-color: #2b2b2b; + height: 12px; + width: 12px; +} + +QTabBar QToolButton:pressed, QDockWidget QTabBar QToolButton:pressed { + border: 0px solid #c849cd; + background-color: #c849cd; +} + +QTabBar QToolButton:pressed:hover, QDockWidget QTabBar QToolButton:pressed:hover { + border: 0px solid #c849cd; + background-color: #c849cd; +} + +QTabBar QToolButton::left-arrow:enabled, QDockWidget QTabBar QToolButton::left-arrow:enabled { + image: url(qss:images_dark-light/left_arrow_lighter.svg); +} + +QTabBar QToolButton::left-arrow:disabled, QDockWidget QTabBar QToolButton::left-arrow:disabled { + image: url(qss:images_dark-light/left_arrow_disabled_light.svg); +} + +QTabBar QToolButton::right-arrow:enabled, QDockWidget QTabBar QToolButton::right-arrow:enabled { + image: url(qss:images_dark-light/right_arrow_lighter.svg); +} + +QTabBar QToolButton::right-arrow:disabled, QDockWidget QTabBar QToolButton::right-arrow:disabled { + image: url(qss:images_dark-light/right_arrow_disabled_light.svg); +} + +/* QDockWiget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QDockWidget { + background-color: #2b2b2b; + border: 1px solid #696968; + border-radius: 1.9px; + titlebar-close-icon: url(qss:images_dark-light/transparent.svg); + titlebar-normal-icon: url(qss:images_dark-light/transparent.svg); +} + +QDockWidget::title { + /* Better size for title bar */ + padding: 3px; + spacing: 4px; + border: none; + background-color: #2b2b2b; + text-align: center; + font-weight: bold; +} + +QDockWidget::close-button { + icon-size: 10px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/close_light.svg); +} + +QDockWidget::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); +} + +QDockWidget::close-button:pressed { + image: url(qss:images_dark-light/close_light.svg); +} + +QDockWidget::float-button { + icon-size: 12px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/undock_light.svg); +} + +QDockWidget::float-button:hover { + /*background-color: #c849cd;*/ + image: url(qss:images_dark-light/undock_blue.svg); +} + +QDockWidget::float-button:pressed { + image: url(qss:images_dark-light/undock_light.svg); +} + +/* QTreeView QListView QTableView ----------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtreeview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlistview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtableview + +--------------------------------------------------------------------------- */ +QTreeView::branch { + background: transparent; +} + +QTreeView::branch:has-siblings:!adjoins-item { + border-image: url(qss:images_dark-light/branch_vline_light.svg) 0; +} + +QTreeView::branch:has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_more_light.svg) 0; +} + +QTreeView::branch:!has-children:!has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_end_light.svg) 0; +} + +QTreeView::branch:closed:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_closed_light.svg) 0; +} + +QTreeView::branch:has-children:!has-siblings:closed { + border-image: url(qss:images_dark-light/branch_end_closed_light.svg) 0; +} + +QTreeView::branch:open:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_open_light.svg) 0; +} + +QTreeView::branch:open:has-children:!has-siblings { + border-image: url(qss:images_dark-light/branch_end_open_light.svg) 0; +} + +QTreeView::indicator:checked, +QListView::indicator:checked, +QTableView::indicator:checked, +QColumnView::indicator:checked { + image: url(qss:images_dark-light/checkbox_light.svg); +} + +QTreeView::indicator:checked:hover, QTreeView::indicator:checked:focus, QTreeView::indicator:checked:pressed, +QListView::indicator:checked:hover, +QListView::indicator:checked:focus, +QListView::indicator:checked:pressed, +QTableView::indicator:checked:hover, +QTableView::indicator:checked:focus, +QTableView::indicator:checked:pressed, +QColumnView::indicator:checked:hover, +QColumnView::indicator:checked:focus, +QColumnView::indicator:checked:pressed { + image: url(qss:images_dark-light/checkbox_light_hover.svg); +} + +QTreeView::indicator:unchecked, +QListView::indicator:unchecked, +QTableView::indicator:unchecked, +QColumnView::indicator:unchecked { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QTreeView::indicator:unchecked:hover, QTreeView::indicator:unchecked:focus, QTreeView::indicator:unchecked:pressed, +QListView::indicator:unchecked:hover, +QListView::indicator:unchecked:focus, +QListView::indicator:unchecked:pressed, +QTableView::indicator:unchecked:hover, +QTableView::indicator:unchecked:focus, +QTableView::indicator:unchecked:pressed, +QColumnView::indicator:unchecked:hover, +QColumnView::indicator:unchecked:focus, +QColumnView::indicator:unchecked:pressed { + image: url(qss:images_dark-light/checkbox_unchecked_hover_light.svg); +} + +QTreeView::indicator:indeterminate, +QListView::indicator:indeterminate, +QTableView::indicator:indeterminate, +QColumnView::indicator:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QTreeView::indicator:indeterminate:hover, QTreeView::indicator:indeterminate:focus, QTreeView::indicator:indeterminate:pressed, +QListView::indicator:indeterminate:hover, +QListView::indicator:indeterminate:focus, +QListView::indicator:indeterminate:pressed, +QTableView::indicator:indeterminate:hover, +QTableView::indicator:indeterminate:focus, +QTableView::indicator:indeterminate:pressed, +QColumnView::indicator:indeterminate:hover, +QColumnView::indicator:indeterminate:focus, +QColumnView::indicator:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QTreeView, +QListView, +QTableView, +QColumnView { + background-color: #2b2b2b; /* background of a lot of stuff including spreadsheets.*/ + border: 0px solid #696968; + color: White; + gridline-color: #696968; + border-radius: 0px; +} + +QTableView, +QListView { + background-color: rgba(0, 0, 0, 0.232); /* background of a lot of stuff including spreadsheets.*/ +} + + +QTreeView:disabled, +QListView:disabled, +QTableView:disabled, +QColumnView:disabled { + background-color: #1c1b22; + color: #c2c7cb; +} + +QTreeView:selected, +QListView:selected, +QTableView:selected, +QColumnView:selected { + background-color: #c849cd; + color: White; +} + +QTreeView:focus, +QListView:focus, +QTableView:focus, +QColumnView:focus { + border: 1px solid #560062; +} + +QTreeView::item:pressed, +QListView::item:pressed, +QTableView::item:pressed, +QColumnView::item:pressed { + background-color: #c849cd; +} + +QTreeView::item:selected:active, +QListView::item:selected:active, +QTableView::item:selected:active, +QColumnView::item:selected:active { + background-color: #c849cd; +} + +QTreeView::item:selected:!active, +QListView::item:selected:!active, +QTableView::item:selected:!active, +QColumnView::item:selected:!active { + color: White; + background-color: #353535; +} + +QTreeView::item:!selected:hover, +QListView::item:!selected:hover, +QTableView::item:!selected:hover, +QColumnView::item:!selected:hover { + outline: 0; + color: White; + background-color: #c849cd; +} + +QTableCornerButton::section { + background-color: #2b2b2b; + border: 1px transparent #696968; + border-radius: 0px; +} + +QTableView::item { + color: white; +} +QTableView { + /*qproperty-AliasedCellBackgroundColor: #f700ff;*/ + /*qproperty-aliasBgColor: #f700ff;*/ +} + +/* QHeaderView ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qheaderview + +--------------------------------------------------------------------------- */ +QHeaderView { + background-color: #2b2b2b; + border: 1px solid #696968; + padding: 0; + margin: 0; + border-radius: 0px; + text-align: center; +} + +QHeaderView:disabled { + background-color: #2b2b2b; + border: 1px solid #696968; + color: rgb(174, 174, 174); +} + +QHeaderView::section { + background-color: #3c3c3c; + color: White; + border-radius: 0px; + font-size: 13px; + font-weight: bold; + text-align: center; +} + +QHeaderView::section::horizontal { + padding-top: 0; + padding-bottom: 0; + padding-left: 10px; + padding-right: 10px; + border-left: 1px solid #696968; +} + +QHeaderView::section::horizontal::first, QHeaderView::section::horizontal::only-one { + border-left: 1px solid #696968; + padding-left: 15px; +} + +QHeaderView::section::horizontal:disabled { + color: #353535; +} + +QHeaderView::section::vertical { + padding-top: 0; + padding-bottom: 0; + padding-left: 1px; + padding-right: 1px; + border-top: 1px solid #696968; +} + +QHeaderView::section::vertical::first, QHeaderView::section::vertical::only-one { + border-top: 1px solid #696968; +} + +QHeaderView::section::vertical:disabled { + color: #7a7a7a; +} + +QHeaderView::down-arrow { + /* Those settings (border/width/height/background-color) solve bug */ + /* transparent arrow background and size */ + background-color: #696969; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/down_arrow_light.svg); +} + +QHeaderView::up-arrow { + background-color: #696969; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/up_arrow_light.svg); +} + +/* QToolBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbox +used in PATH + +--------------------------------------------------------------------------- */ +QToolBox { + padding: 0px; + border: 1px solid #696969; + border-radius: 4px; + background-color: transparent; +} + +QToolBox:selected { + padding: 0px; + border: 0px solid #c849cd; +} + +QToolBox::tab { + background-color: #696969; + border: 0px solid #696969; + color: white; + background-image: url(qss:images_dark-light/down_arrow_lighter.svg); + background-repeat: none; + background-position: center left; +} + +QToolBox::tab:disabled { + color: #696969; +} + +QToolBox::tab:selected { + background-color: #696969; + background-image: url(qss:images_dark-light/transparent.svg); + padding-right: 5px; + background-repeat: none; +} + +QToolBox::tab:selected:disabled { + background-color: #696969; + border-bottom: 0px solid #cccccc; + color: white; +} + +QToolBox::tab:!selected { + +} + +QToolBox::tab:!selected:disabled { + background-color: #2b2b2b; +} + +QToolBox::tab:hover { + background-color: #c849cd; + } + +QToolBox QScrollArea QWidget QWidget { + padding: 0px; + border: 0px; + background-color: transparent; +} + +/* QFrame ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe +https://doc.qt.io/qt-5/qframe.html#-prop +https://doc.qt.io/qt-5/qframe.html#details +https://stackoverflow.com/questions/14581498/qt-stylesheet-for-hline-vline-color + +--------------------------------------------------------------------------- */ +/* (dot) .QFrame fix #141, #126, #123 */ +.QFrame { + border-radius: 0px; + border: 0px solid #696968; + background-color: #696969; + /* No frame */ + /* HLine */ + /* HLine */ +} + +.QFrame[frameShape="0"] { + border-radius: 1.9px; + border: 1px solid #696968; +} + +.QFrame[frameShape="4"] { + max-height: 1px; + border: none; + background-color: #696968; +} + +.QFrame[frameShape="5"] { + max-width: 1px; + border: none; + background-color: #2b2b2b; +} + +/* QSplitter -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsplitter + +--------------------------------------------------------------------------- */ +QSplitter { + background-color: #3c3c3c; + spacing: 1px; + padding: 1px; + margin: 1px; +} + +QSplitter::handle { + margin: 0px 0px; + padding: 0px; +} + +QSplitter::handle:horizontal { + background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + width: 1px; +} + +QSplitter::handle:vertical { + background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + height: 1px; +} + +QSplitter::handle:hover { + background-image: url(qss:images_dark-light/splitter_horizontal_light.svg); + background-position: center center; + background-repeat: none; + background-color: #c849cd; +} + +/* QDateEdit, QDateTimeEdit ----------------------------------------------- + +--------------------------------------------------------------------------- */ +QDateEdit, QDateTimeEdit { + selection-background-color: #c849cd; + border-style: solid; + border: 1px solid #696968; + border-radius: 1.9px; + /* This fixes 103, 111 */ + padding-top: 2px; + /* This fixes 103, 111 */ + padding-bottom: 2px; + padding-left: 4px; + padding-right: 4px; + min-width: 10px; +} + +QDateEdit:on, QDateTimeEdit:on { + selection-background-color: #c849cd; +} + +QDateEdit::drop-down, QDateTimeEdit::drop-down { + subcontrol-origin: padding; + subcontrol-position: top right; + width: 12px; + border-left: 1px solid #696968; +} + +QDateEdit::down-arrow, QDateTimeEdit::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + height: 8px; + width: 8px; +} + +QDateEdit::down-arrow:on, QDateEdit::down-arrow:hover, QDateEdit::down-arrow:focus, QDateTimeEdit::down-arrow:on, QDateTimeEdit::down-arrow:hover, QDateTimeEdit::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_lighter.svg); +} + +QDateEdit QAbstractItemView, QDateTimeEdit QAbstractItemView { + background-color: #2b2b2b; + border-radius: 2px; + border: 1px solid #696968; + selection-background-color: #c849cd; +} + +/* QAbstractView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractView:hover { + border: 1px solid #c849cd; + color: White; +} + +QAbstractView:selected { + background: #c849cd; + color: White; +} + +/* PlotWidget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +PlotWidget { + /* Fix cut labels in plots #134 */ + padding: 0px; +} \ No newline at end of file diff --git a/src/Gui/Stylesheets/Dark-orange.qss b/src/Gui/Stylesheets/Dark-orange.qss index 9cb212b9ed..c7651b887e 100644 --- a/src/Gui/Stylesheets/Dark-orange.qss +++ b/src/Gui/Stylesheets/Dark-orange.qss @@ -1,793 +1,56 @@ /* ABOUT ============================================================================================================ -version 2.21 -Qt theme (stylesheet) specially developed for FreeCAD (https://www.freecad.org/). -It might work with other software that uses Qt styling. +Revised stylesheet based on the original from Pablo Gil Fernández made by MisterMaker - -LICENSE +KNOWN BUGS and TO DO ============================================================================================================ -Copyright (c) 2019 Pablo Gil Fernández +Please, follow the link to get updated information: +https://forum.freecad.org/viewtopic.php?t=78431 -This work is licensed under the Creative Commons Attribution-ShareAlike 4.0 International License. -To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/4.0/. - - -INSTALLATION +INSTALLATION WHEN NECESSARY ============================================================================================================ 1) Place the .qss files and /images/ folder in the path that fits your OS: OSX = /Users/[YOUR_USER_NAME]/Library/Preferences/FreeCAD/Gui/Stylesheets/ WINDOWS = C:/[INSTALLATION_PATH]/FreeCAD/data/Gui/Stylesheets/ LINUX = /home/[YOUR_USER_NAME]/.FreeCAD/Gui/Stylesheets/ - -CUSTOMIZATION ============================================================================================================ -If you would like to change the overall look/style of the theme, just find and replace following colors in the whole file: - BACKGROUND (darker to lighter) - black - #1e1e1e - #3c3c3c - #505050 - #5a5a5a - #646464 - #6e6e6e = main background color - #787878 - #8c8c8c - #a0a0a0 - #b4b4b4 - #bebebe - #c8c8c8 - #d2d2d2 - #e0e0e0 - #f5f5f5 - white - - SELECTION (darker to lighter) - #624b14 - #b28416 - #d0970c - #daa116 = main selection color - #e2ac2a = used to build QSpinBox up and down buttons, it's used as color in the middle - #e3b64d - #e0c992 - #e3d8b9 +TO MODIFY USE THESE COLORS: + #b28416 + #996b00 -KNOWN BUGS and TO DO -============================================================================================================ -Please, follow the link to get updated information: https://forum.freecad.org/viewtopic.php?f=10&t=12417 +See Qt documentation: -*/ + - https://doc.qt.io/qt-5/stylesheet.html + - https://doc.qt.io/qt-5/stylesheet-reference.html + - https://doc.qt.io/qt-5/stylesheet-examples.html + +--------------------------------------------------------------------------- */ -/*================================================================================================== -Reset elements -==================================================================================================*/ -/* Resetting everything helps to unify styles across different operating systems */ +/* Reset elements ------------------------------------------------------------ + +Resetting everything helps to unify styles across different operating systems + +--------------------------------------------------------------------------- */ * { - padding: 0px; - margin: 0px; - border: 0px; - border-style: none; - border-image: none; - outline: 0; - color: black; /* Default color for labels and different text elements that usually use dark colors */ + padding: 0px; + margin: 0px; + border: 0px; + border-style: none; + border-image: none; + outline: 0; } /* specific reset for elements inside QToolBar */ QToolBar * { - margin: 0px; - padding: 0px; + margin: 0px; + padding: 0px; } - -/*================================================================================================== -Main window -==================================================================================================*/ -QMainWindow, -QDialog, -QDockWidget, -QToolBar { - background-color: #6e6e6e; /* main background color */ -} - -QMdiArea { - background-image: url(qss:images_dark-light/background_freecad_dark.svg); - background-position: center center; - background-repeat: no-repeat; -} - - -/*================================================================================================== -Sub windows -==================================================================================================*/ -QMdiSubWindow { - border:1px solid #505050; - margin-top: 30px; - margin-left: 4px; - margin-right: 4px; - margin-bottom:4px; -} - - -/*================================================================================================== -MENUS -==================================================================================================*/ -QMenuBar, -QMenuBar::item { - color: #e0e0e0; - background-color: #6e6e6e; /* main background color */ -} - -QMenu, -QMenu::item { - color: #e0e0e0; - background-color: #5a5a5a; - text-decoration: none; -} - -QMenuBar::item:selected, -QMenuBar::item:pressed, -QMenu::item:selected, -QMenu::item:pressed { - color: white; - background-color: #daa116; -} - -QMenu::right-arrow { - width: 10px; - height: 10px; - image:url(qss:images_dark-light/right_arrow_dark.svg); - margin-right: 2px; -} - -QMenu::right-arrow:selected { - image:url(qss:images_dark-light/right_arrow_lighter.svg); -} - -QMenu::item { - padding: 2px 4px; /* make room for icon at left */ - border: 1px solid transparent; /* reserve space for selection border */ -} - -QMenu::icon { - margin-left: 1px; - margin-right: 1px; -} - -QMenu::icon:checked { /* appearance of a 'checked' icon */ - background: #daa116; - border: 2px #daa116; - position: absolute; - border-radius: 2px; -} - -QMenu::separator { - height: 1px; - background-color: rgba(255,255,255,30); - margin: 6px 4px; -} - -QMenu::indicator:non-exclusive:checked { - color: white; -} - -/* Fix for elements inside a drop-down menu */ -QMenu QRadioButton, -QMenu QCheckBox, -QMenu QPushButton, -QMenu QToolButton { - color: white; /* same as regular QRadioButton and QCheckBox */ -} - -QMenu QRadioButton:hover, -QMenu QCheckBox:hover, -QMenu QPushButton:hover, -QMenu QToolButton:hover, -QMenu QPushButton:pressed, -QMenu QToolButton:pressed, -QMenu QPushButton:selected, -QMenu QToolButton:selected { - color: white; - background-color: #daa116; /* same as QMenu::item:selected and QMenu::item:pressed */ -} - -QMenu QRadioButton:disabled, -QMenu QCheckBox:disabled { - color: #f5f5f5; -} - -QMenu QRadioButton::indicator:disabled, -QMenu QCheckBox::indicator:disabled { - color: #f5f5f5; - background-color: transparent; - border: 1px solid #f5f5f5; -} - - -/*================================================================================================== -Tool bar -==================================================================================================*/ -QToolBar { - border: none; - padding: 2px; -} - -QToolBar::handle:top, -QToolBar::handle:bottom, -QToolBar::handle:horizontal { - background-image: url(qss:images_dark-light/Hmovetoolbar_dark.svg); - width: 10px; - margin: 4px 2px; - background-position: top right; - background-repeat: repeat-y; -} - -QToolBar::handle:left, -QToolBar::handle:right, -QToolBar::handle:vertical { - background-image: url(qss:images_dark-light/Vmovetoolbar_dark.svg); - height: 10px; - margin: 2px 4px; - background-position: left bottom; - background-repeat: repeat-x; -} - -QToolBar::separator:top, -QToolBar::separator:bottom, -QToolBar::separator:horizontal { - width: 1px; - margin: 6px 4px; - background-color: rgba(0,0,0,30); -} - -QToolBar::separator:left, -QToolBar::separator:right, -QToolBar::separator:vertical { - height: 1px; - margin: 4px 6px; - background-color: rgba(0,0,0,30); -} - - -/*================================================================================================== -Group box -==================================================================================================*/ -QGroupBox { - color: rgba(0,0,0,120); - border:1px solid rgba(0, 0, 0, 20); /* lighter than its own border-color */; - border-radius: 3px; - margin-top: 10px; - padding: 6px; - background-color: rgba(255, 255, 255, 15); -} - -QGroupBox::title { - top: -8px; - left: 12px; -} - -/* NOTE: QGroupBox checkboxes are styles with regular ones so that the all get the same style */ -/* QGroupBox::indicator { - width: 13px; - height: 13px; -} - -QGroupBox::indicator:unchecked { - image: url(:/images/checkbox_unchecked.png); -} */ - - -/*================================================================================================== -Tooltip -==================================================================================================*/ -QToolTip { - color: #1e1e1e; - background-color: #b4b4b4; - /*opacity: 90%; doesn't correctly work */ - padding: 4px; - border-radius: 3px; /* has no effect */ -} - - -/*================================================================================================== -Dock widget -==================================================================================================*/ -QDockWidget { - color: rgba(0,0,0,120); - titlebar-close-icon: url(qss:images_dark-light/close_dark.svg); - titlebar-normal-icon: url(qss:images_dark-light/undock_dark.svg); -} - -QDockWidget::title { - text-align: center; - background-color: rgba(0,0,0,20); - border: 4px solid #6e6e6e; /* fix to simulate margin between this :title and tabs */ /* same as main background color */ - border-radius: 6px; /* bigger than normal due to previous border fix */ - padding: 4px 0px; /* also needed because of previous border fix */ -} - -QDockWidget::close-button, -QDockWidget::float-button { - border: none; - background: transparent; - border-radius: 3px; - subcontrol-origin: padding; - subcontrol-position: right center; -} - -QDockWidget::close-button { - right: 4px; -} - -QDockWidget::float-button { - right: 22px; -} - -QDockWidget::close-button:hover, -QDockWidget::float-button:hover { - background-color: rgba(255,255,255,15); -} - -QDockWidget::close-button:pressed, -QDockWidget::float-button:pressed { - background-color: rgba(255,255,255,30); -} - -/* fix for Python Console (probably there is a smarter way to arrive to it) */ -QDockWidget > QFrame { - background-color: #c8c8c8; - border: 1px solid #505050; -} - - -/*================================================================================================== -Progress bar -==================================================================================================*/ -QProgressBar, -QProgressBar:horizontal { - color: white; - background-color: rgba(0,0,0,10); - text-align: center; - border: 1px solid rgba(0,0,0,80); - padding: 1px; - border-radius: 3px; -} -QProgressBar::chunk, -QProgressBar::chunk:horizontal { - background-color: qlineargradient(spread:pad, x1:1, y1:0.545, x2:1, y2:0, stop:0 #d0970c, stop:1 #daa116); - border-radius: 3px; -} - - -/*================================================================================================== -Scroll -==================================================================================================*/ -QAbstractScrollArea { - border-radius: 2px; - background-color: transparent; -} - -QAbstractScrollArea::corner { - border: none; - background-color: transparent; -} - -QScrollBar:horizontal { - background-color: transparent; - height: 15px; - margin: 0px; -} - -QScrollBar::handle:vertical, -QScrollBar::handle:horizontal { - background-color: rgba(0,0,0,80); -} - -QScrollBar::handle:vertical:hover, -QScrollBar::handle:horizontal:hover { - background-color: rgba(0,0,0,100); -} - -QScrollBar::handle:horizontal { - min-width: 5px; - border-radius: 3px; - margin: 4px 15px; -} - -QScrollBar::sub-line:horizontal { - margin: 1px 3px 0px 3px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/left_arrow_light.svg); - width: 6px; - height: 10px; - subcontrol-position: left; - subcontrol-origin: margin; -} - -QScrollBar::add-line:horizontal { - margin: 1px 3px 0px 3px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/right_arrow_light.svg); - width: 6px; - height: 10px; - subcontrol-position: right; - subcontrol-origin: margin; -} - -QScrollBar::sub-line:horizontal:hover, -QScrollBar::sub-line:horizontal:on { - border-image: url(qss:images_dark-light/left_arrow_lighter.svg); -} - -QScrollBar::add-line:horizontal:hover, -QScrollBar::add-line:horizontal:on { - border-image: url(qss:images_dark-light/right_arrow_lighter.svg); -} - -QScrollBar::up-arrow:horizontal, -QScrollBar::down-arrow:horizontal { - background-color: none; -} - -QScrollBar::add-page:horizontal, -QScrollBar::sub-page:horizontal { - background-color: transparent; -} - -QScrollBar:vertical { - background-color: transparent; - width: 15px; - margin: 0px; -} - -QScrollBar::handle:vertical { - min-height: 5px; - border-radius: 3px; - margin: 15px 4px; -} - -QScrollBar::sub-line:vertical { - margin: 3px 0px 3px 1px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/up_arrow_light.svg); - height: 6px; - width: 10px; - subcontrol-position: top; - subcontrol-origin: margin; -} - -QScrollBar::add-line:vertical { - margin: 3px 0px 3px 1px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/down_arrow_light.svg); - height: 6px; - width: 10px; - subcontrol-position: bottom; - subcontrol-origin: margin; -} - -QScrollBar::sub-line:vertical:hover, -QScrollBar::sub-line:vertical:on { - border-image: url(qss:images_dark-light/up_arrow_lighter.svg); -} - -QScrollBar::add-line:vertical:hover, -QScrollBar::add-line:vertical:on { - border-image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -QScrollBar::up-arrow:vertical, -QScrollBar::down-arrow:vertical { - background-color: none; -} - -QScrollBar::add-page:vertical, -QScrollBar::sub-page:vertical { - background-color: transparent; -} - - -/*================================================================================================== -Tab bar -==================================================================================================*/ -QTabWidget::pane { - background-color: transparent; /* temporal (transparent background) */ /* tab content background color */ - position: absolute; -} - -QTabWidget::pane:top { - top: -1px; - border-top: 1px solid #5a5a5a; -} - -QTabWidget::pane:bottom { - bottom: -1px; - border-bottom: 1px solid #5a5a5a; -} - -QTabWidget::pane:left { - right: -1px; - border-right: 1px solid #5a5a5a; -} - -QTabWidget::pane:right { - left: -1px; - border-left: 1px solid #5a5a5a; -} - -QTabWidget::tab-bar:top, -QTabWidget::tab-bar:bottom { - left: 10px; -} - -QTabWidget::tab-bar:left, -QTabWidget::tab-bar:right { - top: 10px; -} - -QTabBar { - qproperty-drawBase: 0; /* important */ - background-color: transparent; -} - -/* Workaround for QTabBars created from docked QDockWidgets which don't draw the border if not set and reset as follows: */ -QTabBar { - border-top: 1px solid #5a5a5a; /* set color for all QTabBars */ -} -QDockWidget QTabBar { - border-color: transparent; /* set color for all QTabBars but ones created from QDockWidget */ -} -QDialog QTabBar { - border-color: transparent; /* set color for QTabBars inside Preferences dialog */ -} -/* end fix */ - -QTabBar::tab { - background-color: transparent; - border: 1px solid transparent; - padding: 3px; -} - -QTabBar::tab:top, -QTabBar::tab:bottom { - border-top-width: 4px; /* same as selected tab colored border in order to center close-button */ - border-bottom-width: 4px; /* same as selected tab colored border in order to center close-button */ - min-width: 11ex; - margin-left: 2px; - margin-right: 2px; -} - -QTabBar::tab:left, -QTabBar::tab:right { - border-left-width: 4px; /* same as selected tab colored border in order to center close-button */ - border-right-width: 4px; /* same as selected tab colored border in order to center close-button */ - min-height: 14ex; - margin-top: 2px; - margin-bottom: 2px; -} - -QTabBar::tab:selected { - color: #d2d2d2; - background-color: #6e6e6e; /* same as tab content background color */ - border-color: #5a5a5a; -} - -QTabBar::tab:top:selected { - border-top: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #daa116, stop:1 #d0970c); /* selection color */ - border-bottom-color: #6e6e6e; /* same as tab content background color */ -} - -QTabBar::tab:bottom:selected { - border-bottom: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #daa116, stop:1 #d0970c); /* selection color */ - border-top-color: #6e6e6e; /* same as tab content background color */ -} - -QTabBar::tab:right:selected { - border-left: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:1, y2:0, stop:0 #daa116, stop:1 #d0970c); /* selection color */ - border-right-color: #6e6e6e; /* same as tab content background color */ -} - -QTabBar::tab:left:selected { - border-right: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:1, y2:0, stop:0 #daa116, stop:1 #d0970c); /* selection color */ - border-left-color: #6e6e6e; /* same as tab content background color */ -} - -QTabBar::tab:!selected { - color: rgba(0,0,0,120); -} - -QTabBar::tab:!selected:hover { - color: rgba(0,0,0,180); - background-color: rgba(0,0,0,20); -} - -QTabBar::tab:first:selected { - margin-left: 0; /* the first selected tab has nothing to overlap with on the left */ -} - -QTabBar::tab:last:selected { - margin-right: 0; /* the last selected tab has nothing to overlap with on the right */ -} - -QTabBar::tab:only-one { - margin: 0; /* if there is only one tab, we don't want overlapping margins */ -} - -/* hack to access Preference TabBar background */ -QDialog#Gui__Dialog__DlgPreferences > QFrame QFrame { - background-color: transparent; /* main background color (in Windows is #6e6e6e) */ -} - -/* fix for previous hack that broke QTabWidget background on Windows */ -QDialog#Gui__Dialog__DlgPreferences QTabWidget::pane { - background-color: transparent; /* temporal (transparent background) */ -} - -/* hack to correctly align Preferences icon list on OSX */ -QDialog#Gui__Dialog__DlgPreferences > QListView { - min-width: 130px; -} - -/* unique styles for sections inside Preferences */ -QDialog#Gui__Dialog__DlgPreferences > QListView::item { - border-radius: 4px; -} - -QDialog#Gui__Dialog__DlgPreferences > QListView::item:hover { - background-color: #b4b4b4; -} - -QDialog#Gui__Dialog__DlgPreferences > QListView::item:selected { - color: white; - background-color: #daa116; -} - - -/*================================================================================================== -Tab bar buttons -==================================================================================================*/ -/* Close button */ -QTabBar::close-button { - subcontrol-origin: margin; - subcontrol-position: center right; /* only works for QT 4.6 and newer */; - border-radius: 2px; - background-image: url(qss:images_dark-light/close_dark.svg); - background-position: center center; - background-repeat: none; -} - -QTabBar::close-button:hover { - background-color: rgba(255,255,255,20); -} - -QTabBar::close-button:pressed { - background-color: rgba(255,255,255,30); -} - -/* Fix for lists inside Model tab */ -QDockWidget QTreeView, -QDockWidget QListView, -QDockWidget QTableView { - margin: 6px; - border: 1px solid #505050; /* same as regular QTreeView, QListView and QTableView */ - min-height: 40px; /* necessary in some areas of FreeCAD */ -} - -/* Buttons to scroll tabs if there is not space to show all of them: */ -QTabBar::scroller { - width: 20px; /* the width of the scroll buttons */ -} - -QTabBar QToolButton, -QTabBar QToolButton:hover { - background-color: #6e6e6e; /* same as main background color */ -} - -QTabBar QToolButton::right-arrow:enabled { - image: url(qss:images_dark-light/right_arrow_dark.svg); -} - -QTabBar QToolButton::right-arrow:disabled, -QTabBar QToolButton::right-arrow:off { - image: url(qss:images_dark-light/right_arrow_disabled_dark.svg); -} - -QTabBar QToolButton::right-arrow:hover { - image: url(qss:images_dark-light/right_arrow_darker.svg); -} - - QTabBar QToolButton::left-arrow:enabled { - image: url(qss:images_dark-light/left_arrow_dark.svg); -} - - QTabBar QToolButton::left-arrow:disabled, - QTabBar QToolButton::left-arrow:off { - image: url(qss:images_dark-light/left_arrow_disabled_dark.svg); -} - - QTabBar QToolButton::left-arrow:hover { - image: url(qss:images_dark-light/left_arrow_darker.svg); -} - - QTabBar QToolButton::up-arrow:enabled { - image: url(qss:images_dark-light/up_arrow_dark.svg); -} - - QTabBar QToolButton::up-arrow:disabled, - QTabBar QToolButton::up-arrow:off { - image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); -} - - QTabBar QToolButton::up-arrow:hover { - image: url(qss:images_dark-light/up_arrow_darker.svg); -} - - QTabBar QToolButton::down-arrow:enabled { - image: url(qss:images_dark-light/down_arrow_dark.svg); -} - - QTabBar QToolButton::down-arrow:disabled, - QTabBar QToolButton::down-arrow:off { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - - QTabBar QToolButton::down-arrow:hover { - image: url(qss:images_dark-light/down_arrow_darker.svg); -} - -QTabBar::tear { - /* default OS tear better */ -} - - -/*================================================================================================== -Tree and list views -==================================================================================================*/ -QTreeView, -QListView, -QTableView { - background-color: #c8c8c8; - alternate-background-color: #bebebe; /* related with QListView background */ - border: 1px solid #505050; - selection-color: white; - selection-background-color: #daa116; /* should be similar to QListView::item selected background-color */ - show-decoration-selected: 1; /* make the selection span the entire width of the view */ - border-radius: 3px; -} - -QListView::item:hover, -QTreeView::item:hover { - background-color: transparent; /* fix to homogenize it on all OSs */ -} - -QListView::item:selected, -QTreeView::item:selected { - color: white; /* should be similar to QListView selection-color */ - background-color: #daa116; /* should be similar to QListView selection-background-color */ - show-decoration-selected: 1; /* make the selection span the entire width of the view */ -} - -/* Property Editor QTreeView (FreeCAD custom widget) */ -Gui--PropertyEditor--PropertyEditor { - gridline-color: #a0a0a0; /* same as Group header background */ -} - -/* fix for column items background when a link is present */ -Gui--PropertyEditor--PropertyEditor > QWidget > QFrame:focus { - background-color: #e3d8b9; /* same as focused background color */ -} - -/* hack to hide weird redundant information inside the value of a Placement cell */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel, -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel:disabled { - color: transparent; - background-color: transparent; - border: none; - border-radius: 0px; - margin: 0px; - padding: 0px; -} - -/* hack to hide non editable cells inside Property values */ +/*hacks */ Gui--PropertyEditor--PropertyEditor QLineEdit:read-only, Gui--PropertyEditor--PropertyEditor QLineEdit:disabled, Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:read-only, @@ -797,15 +60,18 @@ Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:disabled { background-color: transparent; selection-color: transparent; selection-background-color: transparent; + +} +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel, +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel:disabled { + color: transparent; + background-color: transparent; + border: none; + border-radius: 1px; + margin: 0px; + padding: 0px; } -/* hack to hide weird redundant information inside cells with links and no editable data (but editable via "..." button) */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel { - color: black; - background-color: #e3d8b9; -} - -/* hack to disable margin inside Property values to following elements */ Gui--PropertyEditor--PropertyEditor QSpinBox, Gui--PropertyEditor--PropertyEditor QDoubleSpinBox, Gui--PropertyEditor--PropertyEditor QAbstractSpinBox, @@ -815,249 +81,1413 @@ Gui--PropertyEditor--PropertyEditor QComboBox { margin-right: 0px; padding-top: 0px; padding-bottom: 0px; -} -/* reset min-height to 0px inside list views */ -QTreeView > QWidget > QComboBox, -QTreeView > QWidget > QAbstractSpinBox, -QTreeView > QWidget > QSpinBox, -QTreeView > QWidget > QDoubleSpinBox, -QTreeView > QWidget > QLineEdit, -QTreeView > QWidget > QTextEdit, -QTreeView > QWidget > QTimeEdit, -QTreeView > QWidget > QDateEdit, -QTreeView > QWidget > QDateTimeEdit, -QTreeView > QWidget > Gui--ColorButton { - min-height: 0px; } -/* set border-radius to 0px inside list views */ -QTreeView > QWidget > QComboBox, -QTreeView > QWidget > QAbstractSpinBox, -QTreeView > QWidget > QSpinBox, -QTreeView > QWidget > QDoubleSpinBox, -QTreeView > QWidget > QLineEdit, -QTreeView > QWidget > QTextEdit, -QTreeView > QWidget > QTimeEdit, -QTreeView > QWidget > QDateEdit, -QTreeView > QWidget > QDateTimeEdit, -QTreeView > QWidget > QComboBox:drop-down, -QTreeView > QWidget > QAbstractSpinBox:up-button, -QTreeView > QWidget > QSpinBox:up-button, -QTreeView > QWidget > QDoubleSpinBox:up-button, -QTreeView > QWidget > QTimeEdit:up-button, -QTreeView > QWidget > QDateEdit:up-button, -QTreeView > QWidget > QDateTimeEdit:up-button, -QTreeView > QWidget > QAbstractSpinBox:down-button, -QTreeView > QWidget > QSpinBox:down-button, -QTreeView > QWidget > QDoubleSpinBox:down-button, -QTreeView > QWidget > QTimeEdit:down-button, -QTreeView > QWidget > QDateEdit:down-button, -QTreeView > QWidget > QDateTimeEdit:down-button, -QTreeView > QWidget > Gui--ColorButton { - border-radius: 0px; -} - -/* set focus colors to best viewing the editable fields */ -QTreeView > QWidget > QComboBox:focus, -QTreeView > QWidget > QAbstractSpinBox:focus, -QTreeView > QWidget > QSpinBox:focus, -QTreeView > QWidget > QDoubleSpinBox:focus, -QTreeView > QWidget > QLineEdit:focus, -QTreeView > QWidget > QTextEdit:focus, -QTreeView > QWidget > QTimeEdit:focus, -QTreeView > QWidget > QDateEdit:focus, -QTreeView > QWidget > QDateTimeEdit:focus { - border-color: #e3d8b9; /* same as focused background color */ - border-bottom-color: #e3b64d; /* same as focused border color */ -} - -QTreeView > QWidget > QAbstractSpinBox:read-only, -QTreeView > QWidget > QSpinBox:read-only, -QTreeView > QWidget > QDoubleSpinBox:read-only, -QTreeView > QWidget > QLineEdit:read-only, -QTreeView > QWidget > QTextEdit:read-only, -QTreeView > QWidget > QTimeEdit:read-only, -QTreeView > QWidget > QDateEdit:read-only, -QTreeView > QWidget > QDateTimeEdit:read-only { - color: transparent; - background-color: transparent; - border-color: transparent; -} - -/* Fix to correctly (not totally) draw QTextEdit on OSX at Page properties: "Page result", "Template" and "Editable Texts" */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QWidget { - min-height: 14px; - border-radius: 0px; /* reset */ -} - - /*================================================================================================== -Header of tree and list views +Main window ==================================================================================================*/ -QHeaderView { - color: #c8c8c8; - background-color: #505050; - border-top-left-radius: 2px; /* 1px less than its container */ - border-top-right-radius: 2px; /* 1px less than its container */ - border-bottom-left-radius: 0px; - border-bottom-right-radius: 0px; +QMainWindow, +QDialog, +QDockWidget, +QToolBar { + background-color: #7F7F7F; /* main background color */ } -QHeaderView::section { - border:none; - padding: 4px 6px; - background-color: #505050; +QMdiArea { + background-image: url(qss:images_dark-light/background_freecad_dark.svg); + background-position: center center; + background-repeat: no-repeat; +} +/*navgation src/Mod/Tux/NavigationIndicatorGui.py */ +Gui--NavigationIndicatorGui--BlenderNavigationStyle { +/*QAction#a4 {*/ + qproperty-icon: url(:/icons/icons/NavigationBlender_light.svg); +} +/*===== +/* QWidget ---------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QWidget { + background-color: #7F7F7F; + border: 0px solid #696968; + padding: 0px; + color: White; + selection-background-color: #b28416; + selection-color: White; } -QHeaderView::section:horizontal { - padding: 4px 6px; /* left and right value similar to QHeaderView::section */ - border-right: 1px solid rgba(255,255,255,30); +QWidget:disabled { + background-color: transparent; + color: #c2c7cb; + selection-background-color: #b28416; + selection-color: #c2c7cb; } -QHeaderView::section:vertical { - border-bottom: 1px solid rgba(255,255,255,30); +QWidget::item:selected { + background-color: #b28416; } -QTableCornerButton::section { - background-color: #505050; - border-top: none; - border-left: none; - border-right: 1px solid rgba(255,255,255,30); - border-bottom: 1px solid rgba(255,255,255,30); -} + /* Causes issue with colorselector. + QWidget::item:hover:!selected { + background-color: #b28416; + }*/ -QHeaderView::section:last { - border-right: none; -} +/* QMainWindow ------------------------------------------------------------ -QHeaderView::up-arrow { - image: url(qss:images_dark-light/up_arrow_light.svg); -} +This adjusts the splitter in the dock widget, not qsplitter +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmainwindow -QHeaderView::up-arrow:hover { - image: url(qss:images_dark-light/up_arrow_lighter.svg); -} - -QHeaderView::down-arrow { - image: url(qss:images_dark-light/down_arrow_light.svg); -} - -QHeaderView::down-arrow:hover { - image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -/* Group header inside Property Editor (FreeCAD custom widget) */ -Gui--PropertyEditor--PropertyEditor { - qproperty-groupTextColor: #505050; - qproperty-groupBackground: #8c8c8c; -} - - -/*================================================================================================== -Branch system for QTreeViews -==================================================================================================*/ -QTreeView::branch { - background: transparent; -} - -QTreeView::branch:has-siblings:!adjoins-item { - border-image: url(qss:images_dark-light/branch_vline_dark.svg) 0; -} - -QTreeView::branch:has-siblings:adjoins-item { - border-image: url(qss:images_dark-light/branch_more_dark.svg) 0; -} - -QTreeView::branch:!has-children:!has-siblings:adjoins-item { - border-image: url(qss:images_dark-light/branch_end_dark.svg) 0; -} - -QTreeView::branch:closed:has-children:has-siblings { - border-image: url(qss:images_dark-light/branch_more_closed_dark.svg) 0; -} - -QTreeView::branch:has-children:!has-siblings:closed { - border-image: url(qss:images_dark-light/branch_end_closed_dark.svg) 0; -} - -QTreeView::branch:open:has-children:has-siblings { - border-image: url(qss:images_dark-light/branch_more_open_dark.svg) 0; -} - -QTreeView::branch:open:has-children:!has-siblings { - border-image: url(qss:images_dark-light/branch_end_open_dark.svg) 0; -} - - -/*================================================================================================== -Splitter and windows separator -==================================================================================================*/ -QSplitter::handle { - margin: 0px 11px; - padding: 0px; -} - -QSplitter::handle:horizontal { - background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); - background-position: center center; - background-repeat: none; - margin: 4px 2px 4px 2px; - width: 2px; -} - -QSplitter::handle:vertical { - background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); - background-position: center center; - background-repeat: none; - margin: 2px 4px 2px 4px; - height: 2px; -} - -/* Similar to the splitter is the following window separator (but horizontal/vertical is on the opposite way) */ +--------------------------------------------------------------------------- */ QMainWindow::separator { - background-position: center center; - background-repeat: none; + /*background-color: #3c3c3c;*/ + border: 0px solid #696968; + spacing: 0px; + padding: 1px; +} + +QMainWindow::separator:vertical:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,stop:0.2 transparent,stop:0.5 #b28416, stop:0.8 transparent); + /*background-color: #b28416;*/ + image: url(qss:images_dark-light/splitter_vertical_light.svg); +} + +QMainWindow::separator:horizontal:hover { + background-color: qlineargradient(x1:0, y1:0, x2:1, y2:0,stop:0.2 transparent,stop:0.5 #b28416, stop:0.8 transparent); + /*background-color: #b28416;*/ + image: url(qss:images_dark-light/splitter_horizontal_light.svg); } QMainWindow::separator:horizontal { - height: 2px; - background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); - margin: 4px 2px 4px 2px; + width: 4px; + margin-top: 0.1px; + margin-bottom: 0.1px; + /* image: url(qss:images_dark-light/splitter_horizontal_dark.svg);*/ } QMainWindow::separator:vertical { - width: 2px; - background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); - margin: 2px 4px 2px 4px; + height: 4px; + margin-left: 0.1px; + margin-right: 0.1px; + /* image: url(qss:images_dark-light/splitter_vertical_dark.svg);*/ +} + +/* QToolTip --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtooltip + +--------------------------------------------------------------------------- */ +QToolTip { + background-color: #505050; + color: White; + /* If you remove the border property, background stops working on Windows */ + border: none; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Remove opacity, fix #174 - may need to use RGBA */ +} + +/* QStatusBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qstatusbar + +--------------------------------------------------------------------------- */ +QStatusBar { + border: 0px solid #3c3c3c; + /* Fixes Spyder #9120, #9121 */ + background: #7F7F7F; + /* Fixes #205, white vertical borders separating items */ +} + +QStatusBar::item { + border: none; +} + +QStatusBar QToolTip { + background-color: #7F7F7F; + border: 1px solid #696968; + color: #7F7F7F; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Reducing transparency to read better */ + opacity: 230; +} + +QStatusBar QLabel { + /* Fixes Spyder #9120, #9121 */ + background: transparent; +} + +/* QCheckBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcheckbox + +--------------------------------------------------------------------------- */ +QCheckBox { + color: white; + padding: 0px; + outline: none; + border: 1px solid transparent; + background-color: transparent; +} + +QCheckBox:focus { + border: 1px solid #996b00; +} + +QCheckBox QWidget:disabled { + background-color: transparent; + color: #c2c7cb; +} + +QCheckBox::indicator { + color: white; + background-color: #505050; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QCheckBox::indicator:unchecked { + background-color: #505050; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QCheckBox::indicator:unchecked:hover, QCheckBox::indicator:unchecked:focus, QCheckBox::indicator:unchecked:pressed { + background-color: #b28416; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QCheckBox::indicator:unchecked:disabled { + background-color: #7F7F7F; + image:url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QCheckBox::indicator:checked { + background-color: #505050; + /*border: 1px solid #696968; /* QRadioButton has the same color */ + image:url(qss:images_dark-light/checkbox_light.svg); +} + +QCheckBox::indicator:checked:hover, QCheckBox::indicator:checked:pressed { + background-color: #b28416; +} + +QCheckBox::indicator:checked:disabled { + background-color: #7F7F7F; + image: url(qss:images_dark-light/check_light.svg); +} + +QCheckBox::indicator:indeterminate { + background-color: #505050; + border: 1px solid #696968; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QCheckBox::indicator:indeterminate:disabled { + background-color: #7F7F7F; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QCheckBox::indicator:indeterminate:hover, QCheckBox::indicator:indeterminate:pressed { + background-color: #b28416; /* QRadioButton has the same color */ +} + +/* QGroupBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qgroupbox + +--------------------------------------------------------------------------- */ +QGroupBox { + font-weight: bold; + border: 1px solid #696968; + border-radius: 1.9px; + padding: 2px; + margin-top: 10px; + margin-bottom: 4px; +} + +QGroupBox::title { + subcontrol-origin: margin; + subcontrol-position: top left; + left: 4px; + padding-left: 2px; + padding-right: 4px; + padding-top: 6px; +} + +QGroupBox::indicator { + color: white; + background-color: #3c3c3c; + border: 1px solid #696968; + width: 12px; + height: 12px; + border-radius:1px; +} + +QGroupBox::indicator:unchecked { + background-color: #696968; + border: 1px solid #696968; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QGroupBox::indicator:unchecked:hover, QGroupBox::indicator:unchecked:focus, QGroupBox::indicator:unchecked:pressed { + background-color: #b28416; +} + +QGroupBox::indicator:unchecked:disabled { + background-color: #505050; + border: 1px solid #696968; +} + +QGroupBox::indicator:checked { + border: none; + image:url(qss:images_dark-light/checkbox_light.svg); +} + +QGroupBox::indicator:checked:hover, QGroupBox::indicator:checked:focus, QGroupBox::indicator:checked:pressed { + background-color: #b28416; +} + +QGroupBox::indicator:checked:disabled { + background-color: #b28416; +} + +/* QRadioButton ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qradiobutton + +--------------------------------------------------------------------------- */ +QRadioButton { + background-color: transparent; + color: White; + border: none; + spacing: 4px; + padding-top: 4px; + padding-bottom: 4px; + outline: none; +} + +QRadioButton:focus { + border: 1px solid #996b00; +} + +QRadioButton:disabled { + background-color: #696968; + color: #353535; +} + +QRadioButton QWidget { + background-color: transparent; + color: White; + spacing: 0px; + padding: 0px; + outline: none; + border: none; +} + +QRadioButton::indicator { + background-color: #3c3c3c; + border: 1px solid #696968; + border-radius: 6px; + margin-left: 0px; + height: 11px; + width: 11px; +} + +QRadioButton::indicator:unchecked { + /*image:url(qss:images_dark-light/radiobutton_light.svg);*/ +} + +QRadioButton::indicator:unchecked:hover, QRadioButton::indicator:unchecked:pressed { + background-color: #b28416; + border: 1px solid #b28416; + border-radius: 6px; +} + +QRadioButton::indicator:unchecked:disabled { + /*image:url(qss:images_dark-light/radiobutton_dark.svg);*/ + border: 1px solid #696968; +} + +QRadioButton::indicator:checked { + image:url(qss:images_dark-light/radiobutton_light.svg); +} + +QRadioButton::indicator:checked:hover, QRadioButton::indicator:checked:pressed { + background-color: #b28416; + border: 1px solid #b28416; + border-radius: 6px; + image:url(qss:images_dark-light/radiobutton_light.svg); +} + +QRadioButton::indicator:checked:disabled { + outline: none; + background-color: #696968; + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +/* QMenuBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenubar + +--------------------------------------------------------------------------- */ +QMenuBar { + background-color: #505050; + /*padding: 1px; + border: 0px solid rgba(0,0,0,140);*/ + color: White; + selection-background-color: #b28416; +} + +QMenuBar:focus { + border: 1px solid #996b00; +} + +QMenuBar::item { + background: transparent; + /*padding-left:5px; + padding-right: 5px; + padding-bottom: 1px; + padding-top: 1px;*/ +} + +QMenuBar::item:selected { + background: transparent; + border: 0px solid #696968; + background-color: #b28416; +} + +QMenuBar::item:pressed { + /*padding: 2px; + padding-left: 10px; + padding-right: 10px;*/ + border: 0px solid #696968; + background-color: #b28416; + color: White; + /*margin-bottom: 0px; + padding-bottom: 0px;*/ +} + +/* QMenu ------------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenu + +--------------------------------------------------------------------------- */ +QMenu { + border-bottom: 2px rgba(0,0,0,140); + border-right: 2px rgba(0,0,0,140); + color: White; + margin: 0px; + background-color: #505050; + selection-background-color: #b28416; +} + +QMenu::separator { + height: 2px; + background-color: #3c3c3c; + margin-left: 30%; + margin-right: 30%; +} + +QMenu::item { + background-color: transparent; + padding: 2px 2px; /* make room for icon at left */ + /* Reserve space for selection border */ + border: 0px transparent #696968; +} + +QMenu::item:selected { + color: White; + background-color: #b28416; +} + +QMenu::item:pressed { + background-color: #b28416; +} + +QMenu::icon { + margin-left: 5px; + width: 14px; + height: 14px; +} + +QMenu::indicator { + margin-left: 2px; + margin-right: 2px; + padding: 0px; + width: 12px; + height: 12px; + /* non-exclusive indicator = check box style indicator (see QActionGroup::setExclusive) */ + /* exclusive indicator = radio button style indicator (see QActionGroup::setExclusive) */ +} + +QMenu::icon:checked { /* appearance of a 'checked' icon */ + background: #996b00; + margin-left: -5px; + border: 5px solid #996b00; + position: absolute; + border-radius: 0px; +} +QMenu::indicator:non-exclusive:unchecked { + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:non-exclusive:unchecked:hover, QMenu::indicator:non-exclusive:unchecked:focus, QMenu::indicator:non-exclusive:unchecked:pressed { + border: none; + background: #b28416; +} + +QMenu::indicator:non-exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QMenu::indicator:non-exclusive:checked { + image:url(qss:images_dark-light/checkbox_light.svg); +} + +QMenu::indicator:non-exclusive:checked:hover, QMenu::indicator:non-exclusive:checked:focus, QMenu::indicator:non-exclusive:checked:pressed { + border: none; + background: #b28416; +} + +QMenu::indicator:non-exclusive:checked:disabled { + image:url(qss:images_dark-light/checkbox_checked_disabled.svg); +} + +QMenu::indicator:non-exclusive:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:disabled { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:focus, QMenu::indicator:non-exclusive:indeterminate:hover, QMenu::indicator:non-exclusive:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QMenu::indicator:exclusive:unchecked { + image: url(qss:images_dark-light/transparent.svg); +} + +QMenu::indicator:exclusive:unchecked:hover, QMenu::indicator:exclusive:unchecked:focus, QMenu::indicator:exclusive:unchecked:pressed { + border: none; + outline: none; + background: #b28416; + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:checked { + border: none; + outline: none; + image: url(qss:images_dark-light/radiobutton_light.svg); +} + +QMenu::indicator:exclusive:checked:hover, QMenu::indicator:exclusive:checked:focus, QMenu::indicator:exclusive:checked:pressed { + border: none; + outline: none; + background: #b28416; + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:checked:disabled { + outline: none; + image: url(qss:images_dark-light/radiobutton_light.svg); +} + +QMenu::right-arrow { + margin: 5px; + padding-left: 12px; + image:url(qss:images_dark-light/right_arrow_lighter.svg); + height: 12px; + width: 12px; + background-color: transparent; +} + +/* QAbstractItemView ------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QAbstractItemView { + alternate-background-color: #5b5b5b; + color: White; + border: 1px solid #696968; + border-radius: 2px; +} + +QAbstractItemView QLineEdit { + padding: 2px; +} + +/* QAbstractScrollArea ---------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QAbstractScrollArea { + background-color: transparent; + border: 0px solid #696968; + border-radius: 0px; + /* fix #159 */ + padding: 0px; + /* remove min-height to fix #244 */ + color: White; +} + +QAbstractScrollArea:disabled { + color: #353535; +} + +/* QScrollArea ------------------------------------------------------------ + +--------------------------------------------------------------------------- +text input field disabled!!!!*/ +QScrollArea QWidget:disabled { + background-color: #7F7F7F; +} + +/* QScrollBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qscrollbar + +--------------------------------------------------------------------------- */ +QScrollBar:horizontal { + height: 16px; + margin: 2px 8px 2px 8px; + border: 0px solid #696968; + border-radius: 1.9px; + background-color: #7F7F7F; +} + +QScrollBar:vertical { + background-color: #7F7F7F; + width: 16px; + margin: 8px 2px 8px 2px; + border: 0px solid #696968; + border-radius: 1.9px; +} + +QScrollBar::handle:horizontal { + background-color: #696969; + border: 1px solid #7F7F7F; + border-radius: 4px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:hover { + background-color: #b28416; + border: #696968; + border-radius: 4px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:focus { + border: 1px solid #996b00; +} + +QScrollBar::handle:vertical { + background-color: #696969; + border: 1px solid #696968; + min-height: 8px; + border-radius: 4px; +} + +QScrollBar::handle:vertical:hover { + background-color: #b28416; + border: #696968; + border-radius: 4px; + min-height: 8px; +} + +QScrollBar::handle:vertical:focus { + border: 1px solid #996b00; +} + +QScrollBar::add-line:horizontal { + border-image: url(qss:images_dark-light/right_arrow_light.svg); + height: 9px; + width: 5px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:horizontal:hover, QScrollBar::add-line:horizontal:on { + border-image: url(qss:images_dark-light/right_arrow_lighter.svg); + height: 9px; + width: 5px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical { + border-image: url(qss:images_dark-light/down_arrow_light.svg); + height: 5px; + width: 9px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical:hover, QScrollBar::add-line:vertical:on { + border-image: url(qss:images_dark-light/down_arrow_lighter.svg); + height: 5px; + width: 9px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/left_arrow_light.svg); + height: 9px; + width: 5px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal:hover, QScrollBar::sub-line:horizontal:on { + border-image: url(qss:images_dark-light/left_arrow_lighter.svg); + height: 9px; + width: 5px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/up_arrow_light.svg); + height: 5px; + width: 9px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical:hover, QScrollBar::sub-line:vertical:on { + background-color: #b28416; + border-image: url(qss:images_dark-light/up_arrow_lighter.svg); + height: 5px; + width: 9px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::up-arrow:horizontal, QScrollBar::down-arrow:horizontal { + background: none; +} + +QScrollBar::up-arrow:vertical, QScrollBar::down-arrow:vertical { + background: none; +} + +QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal { + background: none; +} + +QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical { + background: none; +} + +/* QTextEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-specific-widgets + + +report view +--------------------------------------------------------------------------- */ +QTextEdit { + background-color: #7F7F7F; + color: White; + border-radius: 1.9px; + border: 0px solid #696968; +} + +QTextEdit:focus { + border: 1px solid #996b00; +} + +QTextEdit:selected { + background: #346792; + color: white; +} + +/* QPlainTextEdit --------------------------------------------------------- +Python +--------------------------------------------------------------------------- */ +QPlainTextEdit { + background-color: #3c3c3c; + color: White; + border-radius: 1.9px; + border: 0px solid #696968; +} + +QPlainTextEdit:focus { + border: 1px solid #996b00; +} + +QPlainTextEdit:selected { + background: #b28416; + color: White; +} + +/* QSizeGrip -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsizegrip + +--------------------------------------------------------------------------- */ +QSizeGrip { + background: transparent; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/sizegrip_light.svg); +} + +/* QStackedWidget --------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QStackedWidget { + padding: 0px; + border: 0px solid #696968; +} + +/* QToolBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbar + +--------------------------------------------------------------------------- */ +QToolBar { + background-color: #7F7F7F; + border-bottom: 0px solid rgba(0,0,0,120); + padding: 1px; + font-weight: bold; + spacing: 1px; +} + +QToolBar:disabled { + /* Fixes #272 */ + background-color: #7F7F7F; +} + +QToolBar::handle:horizontal { + width: 8px; + margin: 3px 3px; + background-position: top right; + background-repeat: repeat-y; + background-image: url(qss:images_dark-light/Hmovetoolbar_light.svg); +} + +QToolBar::handle:vertical { + height: 8px; + margin: 3px 3px; + background-position: left bottom; + background-repeat: repeat-x; + background-image: url(qss:images_dark-light/Vmovetoolbar_light.svg); +} + +QToolBar::separator:horizontal { + width: 2px; + margin: 4px 4px; + background-color: transparent; +} + +QToolBar::separator:vertical { + height: 2px; + margin: 4px 4px; + background-color: transparent; +} + +/*The "show more" button (it can also be stylable with "QToolBarExtension" icon is not working Qproperty works but breaks when you move the toolbar see also */ +QToolButton#qt_toolbar_ext_button { +margin: 0px; +padding: 0px; +background-color: #696969; +/*background-image: url(qss:images_dark-light/more_light.svg);*/ +background-repeat: none; +background-position: center center; +} + +QToolButton#qt_toolbar_ext_button:hover { +/*background-image: url(qss:images_dark-light/more_light.svg);*/ +background-color: #b28416; +} + +QToolButton#qt_toolbar_ext_button:on { +/*background-image: url(qss:images_dark-light/more_light.svg);*/ +border-color: #696968; +background-color: #b28416; } -/*================================================================================================== -Text/Python editor (macros, etc...) -==================================================================================================*/ -QPlainTextEdit, -QPlainTextEdit:focus { - background-color: #c8c8c8; - selection-color: white; - selection-background-color: #d0970c; - border: 1px solid #505050; - border-radius: 3px; - margin: 4px; +/* QAbstractSpinBox ------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractSpinBox, +QSpinBox { + background-color: #505050; + border: 1px solid transparent; + color: White; + /* This fixes 103, 111 */ + /* padding-top: 0px; + /* This fixes 103, 111 */ + /*padding-bottom: 0px; + /*padding-left: 4px; + /*padding-right: 4px; + border-radius: 1.9px;*/ + min-height: 1.7em; + /* min-width: 5px; removed to fix 109 */ +} + +QAbstractSpinBox:up-button { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051); + subcontrol-origin: border; + subcontrol-position: top right; + border: 1px solid transparent; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-bottom: -1px;*/ +} + +QAbstractSpinBox::up-arrow, QAbstractSpinBox::up-arrow:disabled, QAbstractSpinBox::up-arrow:off { + image: url(qss:images_dark-light/up_arrow_disabled_light.svg); + /* height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::up-arrow:hover { + image: url(qss:images_dark-light/up_arrow_lighter.svg); +} + +QAbstractSpinBox:down-button { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051); + subcontrol-origin: border; + subcontrol-position: bottom right; + border: 1px solid transparent; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-top: -1px;*/ +} + +QAbstractSpinBox::down-arrow, QAbstractSpinBox::down-arrow:disabled, QAbstractSpinBox::down-arrow:off { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + /*height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::down-arrow:hover { + image: url(qss:images_dark-light/down_arrow_lighter.svg); +} + +QAbstractSpinBox:hover { + /*border: 1px solid #b28416; + color: White;*/ +} + +QAbstractSpinBox:focus { + border: 1px solid #996b00; +} + +QAbstractSpinBox:selected { + background: #996b00; + /*color: White;*/ +} + +/* ------------------------------------------------------------------------ */ +/* DISPLAYS --------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QLabel ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe + +--------------------------------------------------------------------------- */ +QLabel { + background-color: transparent; + border: 0px solid #696968; + padding: 2px; + margin: 0px; + color: White; +} + +QLabel:disabled { + background-color: transparent; + border: 0px solid #696968; + color: #c2c7cb; +} + +QLabel[haslink="true"] { + color: orange; +} + + +/* QTextBrowser ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QTextBrowser { + background-color: #505050; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; +} + +QTextBrowser:disabled { + background-color: #7F7F7F; + border: 1px solid #696968; + color: #c2c7cb; + border-radius: 1.9px; +} + +QTextBrowser:hover, QTextBrowser:!hover, QTextBrowser:selected, QTextBrowser:pressed { + border: 1px solid #b28416; +} + +/* QGraphicsView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QGraphicsView { + background-color: transparent; + border: 0px solid #b28416; + color: White; + border-radius: 0px; +} + +QGraphicsView:disabled { + background-color: #505050; + border: 0px solid #696968; + color: #c2c7cb; + border-radius: 0px; +} + +QGraphicsView:hover, QGraphicsView:!hover, QGraphicsView:selected, QGraphicsView:pressed { + border: 0px solid #ff00f7; +} + +/* QCalendarWidget -------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCalendarWidget { + border: 1px solid #696968; + border-radius: 1.9px; +} + +QCalendarWidget:disabled { + background-color: #353535; + color: #c2c7cb; +} + +/* QLCDNumber ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QLCDNumber { + background-color: #1aff00; + color: White; +} + +QLCDNumber:disabled { + background-color: #7F7F7F; + color: #c2c7cb; +} + +/* QProgressBar ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qprogressbar + +--------------------------------------------------------------------------- */ +QProgressBar { + background-color: #c2c7cb; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar:disabled { + background-color: #505050; + border: 1px solid #696968; + color: #696969; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar::chunk { + background-color: #b28416; + color: #7F7F7F; + border-radius: 1.9px; +} + +QProgressBar::chunk:disabled { + background-color: #505050; + color: #696968; + border-radius: 1.9px; +} + +/* ------------------------------------------------------------------------ */ +/* BUTTONS ---------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QPushButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qpushbutton + +--------------------------------------------------------------------------- */ +QPushButton { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051); + color: White; + border: 1px solid #505051; + border-bottom-color: #1e1e1e; /* simulates shadow under the button */ + border-radius: 4px; + padding: 2px; +} + +QPushButton:disabled { + background-color: #7F7F7F; + color: #c2c7cb; + +} + +QPushButton:checked { + background-color: #b28416; + outline: none; +} + +QPushButton:checked:disabled { + background-color: #b28416; + color: #3c3c3c; + outline: none; +} + +QPushButton:checked:selected { + background: #b28416; +} + +QPushButton:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #b28416, stop:1 #996b00); + color: White; +} + +QPushButton:pressed { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #996b00, stop:1 #b28416); +} + +QPushButton:selected { + background: #996b00; + color: White; +} + +QPushButton::menu-indicator { + subcontrol-origin: padding; + subcontrol-position: bottom right; + bottom: 4px; +} + +QDialogButtonBox QPushButton { + /* Issue # 194 # 248 - Special case of QPushButton inside dialogs, for better UI */ + min-width: 80px; +} + +/* QToolButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbutton + +--------------------------------------------------------------------------- */ +QToolButton { + background-color: transparent; + color: White; + border-radius: 1px; + padding: 0px; + outline: none; + border: none; + /* The subcontrols below are used only in the DelayedPopup mode */ + /* The subcontrols below are used only in the MenuButtonPopup mode */ + /* The subcontrol below is used only in the InstantPopup or DelayedPopup mode */ +} + +QToolButton:disabled { + background-color: rgba(0, 0, 0, 0.065); + color: #c2c7cb; + border-radius: 1px; + padding: 0px; +} + +QToolButton:checked { + background-color: #b28416; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:disabled { + background-color: #b65555; + color: #c2c7cb; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:hover { + background-color: #b28416; + color: White; +} + +QToolButton:checked:pressed { + background-color: #b28416; +} + +QToolButton:checked:selected { + background: #996b00; + color: White; +} + +QToolButton:hover { + background-color: #b28416; + color: White; +} + +QToolButton:pressed { + background-color: #996b00; +} + +QToolButton:selected { + background: #b28416; + color: White; +} + +QToolButton[popupMode="0"] { + /* Only for DelayedPopup */ + padding-right: 20px; +} + +QToolButton[popupMode="1"] { + /* Only for MenuButtonPopup */ + padding-right: 20px; +} +QToolButton[popupMode="0"]::menu-button { + border: none; +} + +QToolButton[popupMode="0"]::menu-button:hover { + border: none; + border-left: 2px solid #fe0000; + border-radius: 0px; +} +QToolButton[popupMode="1"]::menu-button { + border: none; +} + +QToolButton[popupMode="1"]::menu-button:hover { + border: none; + border-left: 2px solid #e5ff00; + border-radius: 0px; +} + +QToolButton[popupMode="2"] { + /* Only for InstantPopup */ + padding-right: 20px; +} + +QToolButton::menu-button { + border-bottom: 0px solid #ffffff; + border-radius: 2px; + /* 16px width + 4px for border = 20px allocated above */ + width: 1.6ex; + padding: 2px; + border-radius: 2px; + border: 0px #000000; +} + +QToolButton::menu-button:hover { + /* background: rgba(0, 0, 0, 0.5);*/ + +} + +QToolButton::menu-button:checked:hover { + /* background: rgba(0, 0, 0, 0.5);*/ +} + +QToolButton::menu-indicator { + /* Exclude a shift for better image */ + subcontrol-position: right bottom; + /* Shift it a bit */ +} + +QToolButton::menu-arrow { + image: url(qss:images_dark-light/more_arrow_light.svg); + width: 1.5ex; + height: 1.5ex; + subcontrol-position: right bottom; + background: transparent; +} +QToolButton::menu-arrow:open { + subcontrol-position: right bottom; + image: url(qss:images_dark-light/more_arrow_light.svg); +} +QToolButton::menu-arrow:hover { + image: url(qss:images_dark-light/more_arrow_light.svg); + background-color: rgba(0, 0, 0, 0.498); + border: 1px solid rgba(0, 0, 0, 0.498); +} + +/* QCommandLinkButton ----------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCommandLinkButton { + background-color: transparent; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; + padding: 0px; + margin: 0px; +} + +QCommandLinkButton:disabled { + background-color: transparent; + color: #c2c7cb; +} + +/* ------------------------------------------------------------------------ */ +/* INPUTS - NO FIELDS ----------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QComboBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QComboBox { + border: 1px solid transparent; + background: #505050; + border-radius: 2px; + selection-background-color: #b28416; + padding-left: 2px; + padding-right: 2px; + /* padding-right = 36; 4 + 16*2 See scrollbar size */ + /* changed to 4px to fix #239 */ + /* Fixes #103, #111 */ + min-height: 1.5em; + /* padding-top: 2px; removed to fix #132 */ + /* padding-bottom: 2px; removed to fix #132 */ + /* min-width: 75px; removed to fix #109 */ + /* Needed to remove indicator - fix #132 */ +} +QComboBox:editable { + background: #505050; +} +QComboBox QAbstractItemView { + border: 0px solid #696968; + border-radius: 0px; + background-color: #505050; + selection-background-color: #b28416; +} + +QComboBox QAbstractItemView:hover { + background-color:#505050; + color: White; +} + +QComboBox QAbstractItemView:selected { + background: #b28416; + color: White; +} + +QComboBox QAbstractItemView:alternate { + background: #3c3c3c; +} + +QComboBox:disabled { + background-color: #7F7F7F; + color: #353535; +} + +QComboBox:hover { + /*background-color: #b28416;*/ + border: 1px solid #b28416; +} + +QComboBox:focus { + border: 1px solid #996b00; +} + +QComboBox:on { + selection-background-color: #996b00; +} + +QComboBox::indicator { + border: none; + border-radius: 0px; + background-color: transparent; + selection-background-color: transparent; + color: transparent; + selection-color: #b28416; + /* Needed to remove indicator - fix #132 */ +} + +QComboBox::indicator:alternate { + background: #696968; +} + +QComboBox::item { + /* Remove to fix #282, #285 and MR #288*/ + /*&:checked { + font-weight: bold; + } + + &:selected { + border: 0px solid transparent; + } + */ +} + +QComboBox::item:alternate { + background: #3c3c3c; +} + +QComboBox::drop-down { + subcontrol-origin: padding; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051); + subcontrol-position: top right; + width: 14px; + border-left: 1px solid transparent; +} +QComboBox::drop-down:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #b28416, stop:1 #996b00); +} + +QComboBox::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + height: 10px; + width: 10px; +} + +QComboBox::down-arrow:on, QComboBox::down-arrow:hover, QComboBox::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_lighter.svg); } /*================================================================================================== Tasks panel (custom FreeCAD class) ==================================================================================================*/ +Gui--PropertyEditor--PropertyEditor { + qproperty-groupTextColor: white; + qproperty-groupBackground: #3c3c3c; + border: 0px solid #696968; + +} + /* Action group */ QFrame[class="panel"] { - background-color: transparent; /* temporal (transparent background) */ +background-color: transparent; /* temporal (transparent background) */ + } QSint--ActionGroup { - padding: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ - margin: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +padding: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +margin: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ } /* Separator line */ @@ -1067,1253 +1497,1037 @@ QSint--ActionGroup QFrame[height="3"], QSint--ActionGroup QFrame[width="1"], QSint--ActionGroup QFrame[width="2"], QSint--ActionGroup QFrame[width="3"] { - border-color: rgba(0,0,0,60); +border-color: rgba(0,0,0,60); } /* Panel header */ QSint--ActionGroup QFrame[class="header"] { - border: none; - background-color: #505050; /* Task Panel Header background color */ - border-top-left-radius: 3px; - border-top-right-radius: 3px; - border-bottom-left-radius: 0px; - border-bottom-right-radius: 0px; - margin: 0px; - padding: 0px; +border-top: 1px solid #696968; +border-left: 1px solid #696968; +border-right: 1px solid #696968; +background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051); +border-top-left-radius: 3px; +border-top-right-radius: 3px; +border-bottom-left-radius: 0px; +border-bottom-right-radius: 0px; +margin: 0px; +padding: 0px; } QSint--ActionGroup QFrame[class="header"]:hover { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #daa116, stop:1 #d0970c); +background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #b28416, stop:1 #996b00); } QSint--ActionGroup QToolButton[class="header"] { - color: #e0e0e0; /* Task Panel Header text color */ - text-align: left; - font-weight: bold; - border: none; - margin: 0px; - padding: 0px; +color: white; /* Task Panel Header text color */ +text-align: left; +font-weight: bold; +border: none; +margin: 0px; +padding: 0px; } QSint--ActionGroup QFrame[class="header"] QLabel { - background-color: transparent; - background-image: url(qss:images_dark-light/down_arrow_light.svg); - background-repeat: none; - background-position: center center; - padding: 0px; - margin: 0px; +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_light.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; } QSint--ActionGroup QFrame[class="header"] QLabel:hover { - background-color: transparent; - background-image: url(qss:images_dark-light/down_arrow_lighter.svg); +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_lighter.svg); } QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"] { - background-color: transparent; - background-image: url(qss:images_dark-light/up_arrow_light.svg); - background-repeat: none; - background-position: center center; - padding: 0px; - margin: 0px; +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_light.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; } QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"]:hover { - background-color: transparent; - background-image: url(qss:images_dark-light/up_arrow_lighter.svg); +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_lighter.svg); } QSint--ActionGroup QFrame[class="content"] { - background-color: #8c8c8c; /* Task Panel background color */ - margin: 0px; - padding: 0px; - border: none; - border-top-left-radius: 0px; - border-top-right-radius: 0px; - border-bottom-left-radius: 3px; - border-bottom-right-radius: 3px; +background-color: transparent; /* Task Panel background color */ +margin: 0px; +padding: 0px; +border-bottom: 1px solid #696968; +border-left: 1px solid #696968; +border-right: 1px solid #696968; +border-top-left-radius: 0px; +border-top-right-radius: 0px; +border-bottom-left-radius: 3px; +border-bottom-right-radius: 3px; } QSint--ActionGroup QFrame[class="content"] > QWidget { - background-color: #8c8c8c; /* Task Panel background color */ +background-color: #7F7F7F; /* Task Panel background color */ } /* Fixs for tabs inside Task Panel */ QSint--ActionGroup QFrame[class="content"] QTabBar::tab:top:selected { - border-bottom-color: #8c8c8c; /* same as Task Panel background color */ +border-bottom-color: #b28416; /* same as Task Panel background color */ } QSint--ActionGroup QFrame[class="content"] QTabBar::tab:bottom:selected { - border-top-color: #8c8c8c; /* same as Task Panel background color */ +border-top-color: #b28416; /* same as Task Panel background color */ } QSint--ActionGroup QFrame[class="content"] QTabBar::tab:right:selected { - border-right-color: #8c8c8c; /* same as Task Panel background color */ +border-right-color: #b28416; /* same as Task Panel background color */ } QSint--ActionGroup QFrame[class="content"] QTabBar::tab:left:selected { - border-left-color: #8c8c8c; /* same as Task Panel background color */ +border-left-color: #b28416; /* same as Task Panel background color */ } /* Fix for buttons with icons that showed cropped (still not happy with result) */ QSint--ActionGroup QFrame[class="content"] > QWidget > QPushButton { - padding: 2px; /* bigger padding crops text and icons... */ - margin: 0px; +padding: 2px; /* bigger padding crops text and icons... */ +margin: 0px; } -/* Fix for lists inside task panels */ -/* QSint--ActionGroup QFrame[class="content"] QTreeView, +/* Fix for lists inside task panels */ /* sketcher constraints list */ +QSint--ActionGroup QFrame[class="content"] QTreeView, QSint--ActionGroup QFrame[class="content"] QListView, QSint--ActionGroup QFrame[class="content"] QTableView { - color: #f5f5f5; - background-color: #787878; -} */ - - -/*================================================================================================== -Buttons -==================================================================================================*/ -/* Common */ -QComboBox, -QAbstractSpinBox, -QSpinBox, -QDoubleSpinBox, -QLineEdit, -QTextEdit, -QTimeEdit, -QDateEdit, -QDateTimeEdit { - color: #bebebe; - background-color: #5a5a5a; - selection-color: white; - selection-background-color: #d0970c; - border: 1px solid #5a5a5a; - border-radius: 3px; - min-width: 50px; /* it ensures the default value is correctly displayed */ - min-height: 20px; /* important to be a pair number in order to up/down buttons to be divisible by two (if not set could create a blank line in Ubuntu. Its downside is that it's needed to reset it (min-width: 0px) on following elements that can't have it such as fields inside QToolBar and inside QTreeView (Property editor) */ - padding: 1px 2px; /* temporal: could don't be compatible with elements inside Tree/List view */ -} - -/* more contrast for QTexEdits */ -QTextEdit { - color: black; -} - -/* shifts text/number editable field to the left to make space for the up/down or drop-down buttons */ -QComboBox, -QAbstractSpinBox, -QSpinBox, -QDoubleSpinBox, -QTimeEdit, -QDateEdit, -QDateTimeEdit { - padding-right: 20px; -} - -/* when QTextEdit are no editable (like Report view)*/ -QTextEdit:!editable, -QTextEdit:!editable:focus { - background-color: #c8c8c8; - border: 1px solid #505050; -} - -QComboBox:focus, -QAbstractSpinBox:focus, -QSpinBox:focus, -QDoubleSpinBox:focus, -QLineEdit:focus, -QTextEdit:focus, -QTimeEdit:focus, -QDateEdit:focus, -QDateTimeEdit:focus { - color: black; - border-color: #e3b64d; - border-right-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #daa116, stop:1 #e3b64d); /* same as up/down or drop-down button color */ - background-color: #e3d8b9; -} - -QComboBox:disabled, -QAbstractSpinBox:disabled, -QSpinBox:disabled, -QDoubleSpinBox:disabled, -QLineEdit:disabled, -QTextEdit:disabled, -QTimeEdit:disabled, -QDateEdit:disabled, -QDateTimeEdit:disabled { - color: #787878; - background-color: #5a5a5a; /* same as enabled color */ - border-color: #5a5a5a; /* same as enabled color */ -} - -QAbstractSpinBox:up-button, -QSpinBox:up-button, -QDoubleSpinBox:up-button, -QTimeEdit:up-button, -QDateEdit:up-button, -QDateTimeEdit:up-button, -QAbstractSpinBox:down-button, -QSpinBox:down-button, -QDoubleSpinBox:down-button, -QTimeEdit:down-button, -QDateEdit:down-button, -QDateTimeEdit:down-button { - background-color: #505050; /* same color for QComboBox background-color */ - subcontrol-origin: border; /* important */ - width: 20px; /* same as QComboBox ... QDateTimeEdit padding-right */ -} - -QAbstractSpinBox:up-button, -QSpinBox:up-button, -QDoubleSpinBox:up-button, -QTimeEdit:up-button, -QDateEdit:up-button, -QDateTimeEdit:up-button { - subcontrol-position: top right; - border-top-right-radius: 3px; -} - -QAbstractSpinBox:down-button, -QSpinBox:down-button, -QDoubleSpinBox:down-button, -QTimeEdit:down-button, -QDateEdit:down-button, -QDateTimeEdit:down-button { - subcontrol-position: bottom right; - border-bottom-right-radius: 3px; -} - -QAbstractSpinBox:up-button:focus, -QSpinBox:up-button:focus, -QDoubleSpinBox:up-button:focus, -QTimeEdit:up-button:focus, -QDateEdit:up-button:focus, -QDateTimeEdit:up-button:focus { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #e2ac2a, stop:1 #e3b64d); -} - -QAbstractSpinBox:down-button:focus, -QSpinBox:down-button:focus, -QDoubleSpinBox:down-button:focus, -QTimeEdit:down-button:focus, -QDateEdit:down-button:focus, -QDateTimeEdit:down-button:focus { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #daa116, stop:1 #e2ac2a); -} - -QAbstractSpinBox:up-button:disabled, -QSpinBox:up-button:disabled, -QDoubleSpinBox:up-button:disabled, -QTimeEdit:up-button:disabled, -QDateEdit:up-button:disabled, -QDateTimeEdit:up-button:disabled, -QAbstractSpinBox:down-button:disabled, -QSpinBox:down-button:disabled, -QDoubleSpinBox:down-button:disabled, -QTimeEdit:down-button:disabled, -QDateEdit:down-button:disabled, -QDateTimeEdit:down-button:disabled { - background-color: transparent; -} - -QAbstractSpinBox::up-arrow, -QSpinBox::up-arrow, -QDoubleSpinBox::up-arrow, -QTimeEdit::up-arrow, -QDateEdit::up-arrow, -QDateTimeEdit::up-arrow { - image: url(qss:images_dark-light/up_arrow_light.svg); - top: 2px; /* fix symmetry between up and down images */ -} - -QAbstractSpinBox::up-arrow:focus, -QSpinBox::up-arrow:focus, -QDoubleSpinBox::up-arrow:focus, -QTimeEdit::up-arrow:focus, -QDateEdit::up-arrow:focus, -QDateTimeEdit::up-arrow:focus { - image: url(qss:images_dark-light/up_arrow_lighter.svg); -} - -QAbstractSpinBox::up-arrow:off, -QSpinBox::up-arrow:off, -QDoubleSpinBox::up-arrow:off, -QTimeEdit::up-arrow:off, -QDateEdit::up-arrow:off, -QDateTimeEdit::up-arrow:off { - image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); -} - -QAbstractSpinBox::up-arrow:disabled, -QSpinBox::up-arrow:disabled, -QDoubleSpinBox::up-arrow:disabled, -QTimeEdit::up-arrow:disabled, -QDateEdit::up-arrow:disabled, -QDateTimeEdit::up-arrow:disabled { - image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); -} - -QAbstractSpinBox::down-arrow, -QSpinBox::down-arrow, -QDoubleSpinBox::down-arrow, -QTimeEdit::down-arrow, -QDateEdit::down-arrow, -QDateTimeEdit::down-arrow { - image: url(qss:images_dark-light/down_arrow_light.svg); - bottom: 0px; /* fix simetry between up and down images */ -} - -QAbstractSpinBox::down-arrow:focus, -QSpinBox::down-arrow:focus, -QDoubleSpinBox::down-arrow:focus, -QTimeEdit::down-arrow:focus, -QDateEdit::down-arrow:focus, -QDateTimeEdit::down-arrow:focus { - image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -QAbstractSpinBox::down-arrow:off, -QSpinBox::down-arrow:off, -QDoubleSpinBox::down-arrow:off, -QTimeEdit::down-arrow:off, -QDateEdit::down-arrow:off, -QDateTimeEdit::down-arrow:off { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - -QAbstractSpinBox::down-arrow:disabled, -QSpinBox::down-arrow:disabled, -QDoubleSpinBox::down-arrow:disabled, -QTimeEdit::down-arrow:disabled, -QDateEdit::down-arrow:disabled, -QDateTimeEdit::down-arrow:disabled { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - -/* ComboBox */ - -QComboBox::drop-down { - background-color: #505050; /* same color as up/down QSpinBox ... QDateTimeView background-color */ - subcontrol-origin: border; /* important */ - subcontrol-position: top right; - width: 20px; - border-top-right-radius: 3px; - border-bottom-right-radius: 3px; -} - -QComboBox::drop-down:on, -QComboBox::drop-down:focus { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #daa116, stop:1 #e3b64d); -} - -QComboBox::down-arrow { - image: url(qss:images_dark-light/down_arrow_light.svg); -} - -QComboBox::down-arrow:on, -QComboBox::down-arrow:focus { - image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -QComboBox::down-arrow:off, -QComboBox::down-arrow:disabled { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - -/* ComboBox menu */ -QComboBox { - selection-color: white; - selection-background-color: #daa116; -} - -QComboBox QAbstractItemView { - color: #bebebe; /* same as regular QComboBox color */ - background-color: transparent; - selection-color: white; - selection-background-color: #daa116; - border-width: 5px 0px 5px 0px; - border-style: solid; - border-color: transparent; - margin: 0px -1px 0px 0px; /* hack for Mac... try it on Windows and Linux */ +color: white; +background-color: #505050; } -/*================================================================================================== -Push button -==================================================================================================*/ -QPushButton { - color: #e0e0e0; - text-align: center; - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #6e6e6e, stop:1 #646464); - border: 1px solid #5a5a5a; - border-bottom-color: #505050; /* simulates shadow under the button */ - padding: 4px 22px; - margin: 4px 4px; - min-height: 16px; /* same as QTabBar QPushButton min-width */ - border-radius: 4px; -} - -QPushButton:hover, -QPushButton:focus { - color: white; - border-color: #d0970c; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #daa116, stop:1 #d0970c); -} - -QPushButton:disabled, -QPushButton:disabled:checked { - color: #787878; - background-color: #5a5a5a; /* same as enabled color */ - border-color: #5a5a5a; /* same as enabled color */ -} - -QPushButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #d0970c, stop:1 #daa116); -} - -QPushButton:checked { - background-color: #daa116; - border-color: #d0970c; -} - -/* Color Buttons */ -Gui--ColorButton, -Gui--ColorButton:disabled { - padding: 0px; /* reset */ - margin: 0px; /* reset */ -} - -Gui--ColorButton { - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #6e6e6e, stop:1 #646464); - border: 1px solid #5a5a5a; - border-bottom-color: #505050; /* simulates shadow under the button */ -} - -Gui--ColorButton:disabled { - border-color: transparent; - background-color: rgba(0,0,0,10); -} - -Gui--ColorButton:hover, -Gui--ColorButton:focus { - border-color: #d0970c; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #daa116, stop:1 #d0970c); -} - -Gui--ColorButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #d0970c, stop:1 #daa116); -} - -/* Pushbutton style for "..." inside Placement cell which launches Placement tool */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QPushButton, -Gui--PropertyEditor--PropertyEditor > QWidget > QPushButton { - background-color: #6e6e6e; - border: 1px solid #5a5a5a; - min-width: 16px; /* reset it due to larger value on regular QPushButton, same or bigger value as regular QPushButton min-height */ - border-radius: 0px; - margin: 0px; /* reset */ - padding: 0px; /* reset */ -} - -Gui--PropertyEditor--PropertyEditor > QWidget > QPushButton { - text-align:left; - padding-left: 2px; -} - -/* Fix for Expressions description QFrame that is "broken" with initial reset */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QWidget > QWidget > QFrame { - background-color: #6e6e6e; /* main background color */ - border: 1px solid #5a5a5a; - border-radius: 2px; - padding: 2px 6px; -} - -QPushButton:checked { - background-color: #daa116; - border-color: #d0970c; -} - -/*================================================================================================== -Tool button Icon fix in save dialogs -==================================================================================================*/ -/* found under Tools -> Save Picture */ /* Draft -> ShapeString -> Font file */ - -QFileDialog#QFileDialog QToolButton { - background-color: transparent; - padding: 1px; - border: 1px; - margin: 0px; -} - - -/*================================================================================================== -Tool button inside QDialogs that works as QPushButtons -==================================================================================================*/ -/* found under Tools -> Customize -> Macros -> Pixmap "..." button */ -QDialog QToolButton { - color: #e0e0e0; - text-align: center; - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #6e6e6e, stop:1 #646464); - border: 1px solid #5a5a5a; - border-bottom-color: #505050; /* simulates shadow under the button */ - padding: 0px; /* different than regular QPushButton */ - margin: 2px; /* different than regular QPushButton */ - min-height: 16px; /* same as QTabBar QPushButton min-width */ - border-radius: 4px; -} - -QDialog QToolButton:hover, -QDialog QToolButton:focus { - color: white; - border-color: #d0970c; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #daa116, stop:1 #d0970c); -} - -QDialog QToolButton:disabled, -QDialog QToolButton:disabled:checked { - color: #6e6e6e; - border-color: #5a5a5a; - background-color: #5a5a5a; -} - -QDialog QToolButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #d0970c, stop:1 #daa116); -} - - -/*================================================================================================== -Tool button inside Task Panel content that works as QPushButtons -==================================================================================================*/ /* found inside Part Design Workbench and "make a draft on a face" Task panel options */ QSint--ActionGroup QFrame[class="content"] QToolButton { - color: #e0e0e0; - text-align: center; - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #6e6e6e, stop:1 #646464); - border: 1px solid #5a5a5a; - border-bottom-color: #505050; /* simulates shadow under the button */ - padding: 2px 6px; /* different than regular QPushButton */ - margin: 2px; /* different than regular QPushButton */ - min-height: 16px; /* same as QTabBar QPushButton min-width */ - border-radius: 4px; + color: white; + text-align: center; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051); + border: 0px solid #adadad; + padding: 1px 1px; /* different than regular QPushButton */ + margin: 0px; /* different than regular QPushButton */ + min-height: 16px; /* same as QTabBar QPushButton min-width */ + border-radius: 1px; } -QSint--ActionGroup QFrame[class="content"] QToolButton:hover, +QSint--ActionGroup QFrame[class="content"] QToolButton:hover{ + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #b28416, stop:1 #996b00); + +} QSint--ActionGroup QFrame[class="content"] QToolButton:focus { - color: white; - border-color: #d0970c; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #daa116, stop:1 #d0970c); + border: 1px solid #996b00; } QSint--ActionGroup QFrame[class="content"] QToolButton:disabled, QSint--ActionGroup QFrame[class="content"] QToolButton:disabled:checked { - color: #6e6e6e; - border-color: #5a5a5a; - background-color: #5a5a5a; + color: #696969; + background-color: #505050; } QSint--ActionGroup QFrame[class="content"] QToolButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #d0970c, stop:1 #daa116); + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #b28416, stop:1 #996b00); + } -/* QToolButtons with a menu found in Sketcher task panel*/ -QSint--ActionGroup QToolButton::menu-button { - border: none; - border-top-right-radius: 4px; - border-bottom-right-radius: 4px; - padding: 2px; - width: 16px; /* 16px width + 4px for border = 20px allocated above */ - outline: none; - background-color: transparent; +/* QSlider ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qslider + +--------------------------------------------------------------------------- */ +QSlider:disabled { + background: #7F7F7F; } -QSint--ActionGroup QToolButton#settingsButton, -QSint--ActionGroup QToolButton#filterButton, -QSint--ActionGroup QToolButton#manualUpdate { - padding-right: 20px; /* make way for the popup button */ -} - -/* to give widget inside the menu same look as regular menu */ -QSint--ActionGroup QToolButton#filterButton QListWidget { - color: #e0e0e0; - background-color: #5a5a5a; - padding: 0px; - margin: 0px; -} - - -/*================================================================================================== -Radio button -==================================================================================================*/ -QRadioButton::indicator:unchecked{ - color: black; - background-color: rgba(255,255,255,20); - border: 1px solid #5a5a5a; -} - -QRadioButton::indicator:checked { - background-color: #daa116; /* QCheckBox has the same color */ - border: 1px solid #d0970c; /* QCheckBox has the same color */ - image:url(qss:images_dark-light/radiobutton_light.svg); -} - -QRadioButton, -QRadioButton:disabled { - color: black; - padding: 3px; - outline: none; - background-color: transparent; -} - -QRadioButton::indicator { - width: 11px; - height: 11px; - border-radius: 6px; -} - -QRadioButton::indicator:pressed { - border-color: #e0c992; -} - -QRadioButton::indicator:disabled { - color: #f5f5f5; - background-color: transparent; - border: 1px solid #f5f5f5; -} - -QRadioButton:focus { - border: none; -} - - -/*================================================================================================== -Checkbox -==================================================================================================*/ -QCheckBox, -QCheckBox:disabled { - color: black; - padding: 3px; - outline: none; - background-color: transparent; -} - -QCheckBox::indicator, -QGroupBox::indicator { - color: black; - background-color: rgba(255,255,255,20); - border: 1px solid #5a5a5a; - width: 11px; - height: 11px; - border-radius:2px; -} - -QCheckBox::indicator:pressed, -QCheckBox::indicator:non-exclusive:checked:pressed, -QCheckBox::indicator:indeterminate:pressed, -QCheckBox::indicator:checked:pressed, -QGroupBox::indicator:pressed, -QGroupBox::indicator:non-exclusive:checked:pressed, -QGroupBox::indicator:indeterminate:pressed, -QGroupBox::indicator:checked:pressed { - border-color: #e0c992; -} - -QCheckBox::indicator:checked, -QGroupBox::indicator:checked { - background-color: #daa116; /* QRadioButton has the same color */ - border: 1px solid #d0970c; /* QRadioButton has the same color */ - image:url(qss:images_dark-light/checkbox_light.svg); -} - -QCheckBox:disabled { - color: rgba(255,255,255,40); - background-color: transparent; -} - -QCheckBox::indicator:disabled, -QGroupBox::indicator:disabled { - background-color: rgba(255,255,255,20); - border: 1px solid rgba(255,255,255,20); -} - -QCheckBox::indicator:indeterminate, -QGroupBox::indicator:indeterminate { - background-color: #daa116; - border: 1px solid #d0970c; - image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); -} - -QCheckBox:focus { - border: none; -} - - -/*================================================================================================== -Checkboxes inside QListWidget and QTreeView -==================================================================================================*/ -QListWidget::indicator, -QTreeView::indicator { - color: #c8c8c8; - background-color: rgba(255,255,255,20); - border: 1px solid #5a5a5a; - width: 11px; - height: 11px; - border-radius:2px; -} - -/* fix for QTreeView::indicator losing its margin */ -QTreeView::indicator { - margin: 3px; -} - -QListWidget::indicator:selected, -QTreeView::indicator:selected { - background-color: #e6e6e6; -} - -QListWidget::indicator:checked:selected, -QListWidget::indicator:indeterminate:selected, -QTreeView::indicator:checked:selected, -QTreeView::indicator:indeterminate:selected { - background-color: #e3b64d; /* slightly lighter than default */ - border-color: #b28416; /* slightly darker than default */ -} - -QListWidget::indicator:pressed, -QListWidget::indicator:non-exclusive:checked:pressed, -QListWidget::indicator:indeterminate:pressed, -QListWidget::indicator:checked:pressed, -QTreeView::indicator:pressed, -QTreeView::indicator:non-exclusive:checked:pressed, -QTreeView::indicator:indeterminate:pressed, -QTreeView::indicator:checked:pressed { - border-color: #e0c992; -} - -QListWidget::indicator:checked, -QTreeView::indicator:checked { - background-color: #daa116; /* QRadioButton has the same color */ - border: 1px solid #d0970c; /* QRadioButton has the same color */ - image:url(qss:images_dark-light/checkbox_light.svg); -} - -QListWidget::indicator:disabled, -QTreeView::indicator:disabled { - background-color: rgba(255,255,255,20); - border: 1px solid rgba(255,255,255,20); -} - -QListWidget::indicator:indeterminate, -QTreeView::indicator:indeterminate { - background-color: #daa116; - border: 1px solid #d0970c; - image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); -} - - -/*================================================================================================== -Slider -==================================================================================================*/ -QSlider, -QSlider:active, -QSlider:!active { - border: none; - background-color: transparent; -} - -QSlider:horizontal { - padding: 0px 10px; -} - -QSlider:vertical { - padding: 10px 0px; -} - -QSlider::groove { - background-color: rgba(0,0,0,30); - border: 1px solid rgba(0,0,0,40); - border-radius: 5px; - margin: 4px 0px; +QSlider:focus { + border: 1px solid #996b00; } QSlider::groove:horizontal { - height: 8px; + background: #7F7F7F; + border: 1px solid #696968; + height: 4px; + margin: 0px; + border-radius: 1.9px; } QSlider::groove:vertical { - width: 8px; + background: #b28416; + border: 1px solid #696968; + width: 4px; + margin: 0px; + border-radius: 1.9px; } -QSlider::groove:horizontal:disabled, -QSlider::groove:vertical:disabled { - border-color: #5a5a5a; - background-color: #5a5a5a; +QSlider::add-page:vertical { + background: #b28416; + border: 1px solid #696968; + width: 4px; + margin: 0px; + border-radius: 1.9px; } -QSlider::handle:horizontal, -QSlider::handle:vertical { - background-color: #505050; - border: 1px solid #505050; - width: 14px; - height: 14px; - border-radius: 8px; +QSlider::add-page:vertical :disabled { + background: #696968; +} + +QSlider::sub-page:horizontal { + background: #b28416; + border: 1px solid #0073ff; + height: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::sub-page:horizontal:disabled { + background: #b28416; } QSlider::handle:horizontal { - margin: -4px 0; + background: #353535; + border: 1px solid #7F7F7F; + width: 8px; + height: 8px; + margin: -8px 0px; + border-radius: 1.9px; +} + +QSlider::handle:horizontal:hover { + background: #b28416; + border: 1px solid #b28416; +} + +QSlider::handle:horizontal:focus { + border: 1px solid #996b00; } QSlider::handle:vertical { - margin: 0 -4px; + background: #c2c7cb; + border: 1px solid #696968; + width: 8px; + height: 8px; + margin: 0 -8px; + border-radius: 1.9px; } -QSlider::handle:horizontal:hover, -QSlider::handle:vertical:hover, -QSlider::handle:horizontal:pressed, -QSlider::handle:vertical:pressed { - border-color: #daa116; - background-color: #daa116; +QSlider::handle:vertical:hover { + background: #b28416; + border: 2px solid #b28416; } -QSlider::handle:horizontal:disabled, -QSlider::handle:vertical:disabled { - border-color: #5a5a5a; - background-color: #5a5a5a; +QSlider::handle:vertical:focus { + border: 1px solid #996b00; +} + +/* QLineEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlineedit + +--------------------------------------------------------------------------- */ +QLineEdit { + background-color: #505050; + padding-top: 2px; + /* This QLineEdit fix 103, 111 */ + padding-bottom: 2px; + /* This QLineEdit fix 103, 111 */ + padding-left: 4px; + padding-right: 4px; + border-style: solid; + border: 1px solid #696968; + border-radius: 2px; + color: White; +} + +QLineEdit:disabled { + background-color: #7F7F7F; + color: #c2c7cb; +} + +QLineEdit:hover { + border: 1px solid #b28416; + color: White; +} + +QLineEdit:focus { + border: 2px solid #996b00; +} + +QLineEdit:selected { + background-color: #b28416; + color: white; +} + +/* QTabWiget -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabWidget { + padding: 2px; + selection-background-color: #b28416; +} + +QTabWidget QWidget { + /* Fixes #189 */ + border-radius: 1.9px; +} + +QTabWidget::pane { + margin: 0px; + /* Fixes double border inside pane with pyqt5 */ + padding: 0px; +} + +QTabWidget::pane:selected { + background-color: #b28416; + border: 1px solid #346792; +} +/* QTabBar ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabBar, QDockWidget QTabBar { + qproperty-drawBase: 0; + /* left: 5px; move to the right by 5px - removed for fix */ +} + +QTabBar::close-button, QDockWidget QTabBar::close-button { + border: 0; + margin: 0; + padding: 1px; + image: url(qss:images_dark-light/close_light.svg); +} + +QTabBar::close-button:hover, QDockWidget QTabBar::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); + /*background-color: rgba(255, 0, 0, 0.3);*/ +} + +QTabBar::close-button:pressed, QDockWidget QTabBar::close-button:pressed { + image: url(qss:images_dark-light/close_.svg); +} + +QTabBar::tab, QDockWidget QTabBar::tab { + /* !selected and disabled ----------------------------------------- */ + /* selected ------------------------------------------------------- */ + padding: 4px; +} + +QTabBar::tab:top:selected:disabled, QDockWidget QTabBar::tab:top:selected:disabled { + color: #f5f5f5; +} + +QTabBar::tab:bottom:selected:disabled, QDockWidget QTabBar::tab:bottom:selected:disabled { + color: #f5f5f5; +} + +QTabBar::tab:left:selected:disabled, QDockWidget QTabBar::tab:left:selected:disabled { + color: #f5f5f5; +} + +QTabBar::tab:right:selected:disabled, QDockWidget QTabBar::tab:right:selected:disabled { + color: #f5f5f5; +} + +QTabBar::tab:top:!selected:disabled, QDockWidget QTabBar::tab:top:!selected:disabled { + color: #f5f5f5; +} + +QTabBar::tab:bottom:!selected:disabled, QDockWidget QTabBar::tab:bottom:!selected:disabled { + color: #f5f5f5; + +} + +QTabBar::tab:left:!selected:disabled, QDockWidget QTabBar::tab:left:!selected:disabled { + color: #f5f5f5; + +} + +QTabBar::tab:right:!selected:disabled, QDockWidget QTabBar::tab:right:!selected:disabled { + color: #f5f5f5; +} + +QTabBar::tab:top:!selected, QDockWidget QTabBar::tab:top:!selected { + color: #f5f5f5; +} + +QTabBar::tab:bottom:!selected, QDockWidget QTabBar::tab:bottom:!selected { + color: #f5f5f5; +} + +QTabBar::tab:left:!selected, QDockWidget QTabBar::tab:left:!selected { + color: #f5f5f5; +} + +QTabBar::tab:right:!selected, QDockWidget QTabBar::tab:right:!selected { + color: #f5f5f5; +} + +QTabBar::tab:top, QDockWidget QTabBar::tab:top { + color: #f5f5f5; + margin-left: 0px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + min-width: 5px; + border-bottom: 1px solid #696969; /* same as tab content background color */ + border-radius: 0px; +} + +QTabBar::tab:top:selected, QDockWidget QTabBar::tab:top:selected { + color: white; + border-top: 4px solid #b28416; /* selection color */ + border-bottom: 1px solid transparent; /* same as tab content background color */ + border-left: 1px solid #696969; + border-right: 1px solid #696969; + } + +QTabBar::tab:top:!selected:hover, QDockWidget QTabBar::tab:top:!selected:hover { + /*border: 1px solid #b28416;*/ + border: 0px solid #b28416; + background-color: #b28416; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; +} + +QTabBar::tab:bottom, QDockWidget QTabBar::tab:bottom { + color: #f5f5f5; + margin-left: 0px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + min-width: 5px; + border-top: 1px solid #696969; /* same as tab content background color */ + border-radius: 0px; +} + +QTabBar::tab:bottom:selected, QDockWidget QTabBar::tab:bottom:selected { + color: white; + border-bottom: 4px solid #b28416; /* selection color */ + border-top: 1px solid transparent; /* same as tab content background color */ + border-left: 1px solid #696969; + border-right: 1px solid #696969; + +} + +QTabBar::tab:bottom:!selected:hover, QDockWidget QTabBar::tab:bottom:!selected:hover { +/*border: 1px solid #b28416;*/ + border: 0px solid #b28416; + background-color: #b28416; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; +} + +QTabBar::tab:left, QDockWidget QTabBar::tab:left { + background-color: #7F7F7F; + margin-top: 2px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + border-radius: 4px; + min-height: 5px; +} + +QTabBar::tab:left:selected, QDockWidget QTabBar::tab:left:selected { + background-color: #7F7F7F; + border: 0px solid #996b00; +} + +QTabBar::tab:left:!selected:hover, QDockWidget QTabBar::tab:left:!selected:hover { + border: 0px solid #b28416; + background-color: #b28416; + /* Fixes different behavior #271 */ + margin-right: 0px; + padding-right: -1px; +} + +QTabBar::tab:right, QDockWidget QTabBar::tab:right { + background-color: #7F7F7F; + margin-top: 2px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + min-height: 5px; + border: 10px; +} + +QTabBar::tab:right:selected, QDockWidget QTabBar::tab:right:selected { + background-color: #7F7F7F; + border: 0px solid #996b00; +} + +QTabBar::tab:right:!selected:hover, QDockWidget QTabBar::tab:right:!selected:hover { + border: 0px solid #b28416; + background-color: #b28416; + /* Fixes different behavior #271 */ + margin-left: 0px; + padding-left: 0px; +} + +QTabBar QToolButton, QDockWidget QTabBar QToolButton { + /* Fixes #136 */ + background-color: #7F7F7F; + height: 12px; + width: 12px; +} + +QTabBar QToolButton:pressed, QDockWidget QTabBar QToolButton:pressed { + border: 0px solid #b28416; + background-color: #b28416; +} + +QTabBar QToolButton:pressed:hover, QDockWidget QTabBar QToolButton:pressed:hover { + border: 0px solid #b28416; + background-color: #b28416; +} + +QTabBar QToolButton::left-arrow:enabled, QDockWidget QTabBar QToolButton::left-arrow:enabled { + image: url(qss:images_dark-light/left_arrow_lighter.svg); +} + +QTabBar QToolButton::left-arrow:disabled, QDockWidget QTabBar QToolButton::left-arrow:disabled { + image: url(qss:images_dark-light/left_arrow_disabled_light.svg); +} + +QTabBar QToolButton::right-arrow:enabled, QDockWidget QTabBar QToolButton::right-arrow:enabled { + image: url(qss:images_dark-light/right_arrow_lighter.svg); +} + +QTabBar QToolButton::right-arrow:disabled, QDockWidget QTabBar QToolButton::right-arrow:disabled { + image: url(qss:images_dark-light/right_arrow_disabled_light.svg); +} + +/* QDockWiget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QDockWidget { + background-color: #7F7F7F; + border: 1px solid #505051; + border-radius: 1.9px; + titlebar-close-icon: url(qss:images_dark-light/transparent.svg); + titlebar-normal-icon: url(qss:images_dark-light/transparent.svg); +} + +QDockWidget::title { + /* Better size for title bar */ + padding: 3px; + spacing: 4px; + border: none; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051); + text-align: center; + font-weight: bold; +} + +QDockWidget::close-button { + icon-size: 10px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/close_light.svg); +} + +QDockWidget::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); +} + +QDockWidget::close-button:pressed { + image: url(qss:images_dark-light/close_light.svg); +} + +QDockWidget::float-button { + icon-size: 12px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/undock_light.svg); +} + +QDockWidget::float-button:hover { + /*background-color: #b28416;*/ + image: url(qss:images_dark-light/undock_blue.svg); +} + +QDockWidget::float-button:pressed { + image: url(qss:images_dark-light/undock_light.svg); +} + +/* QTreeView QListView QTableView ----------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtreeview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlistview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtableview + +--------------------------------------------------------------------------- */ +QTreeView::branch { + background: transparent; +} + +QTreeView::branch:has-siblings:!adjoins-item { + border-image: url(qss:images_dark-light/branch_vline_light.svg) 0; +} + +QTreeView::branch:has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_more_light.svg) 0; +} + +QTreeView::branch:!has-children:!has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_end_light.svg) 0; +} + +QTreeView::branch:closed:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_closed_light.svg) 0; +} + +QTreeView::branch:has-children:!has-siblings:closed { + border-image: url(qss:images_dark-light/branch_end_closed_light.svg) 0; +} + +QTreeView::branch:open:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_open_light.svg) 0; +} + +QTreeView::branch:open:has-children:!has-siblings { + border-image: url(qss:images_dark-light/branch_end_open_light.svg) 0; +} + +QTreeView::indicator:checked, +QListView::indicator:checked, +QTableView::indicator:checked, +QColumnView::indicator:checked { + image: url(qss:images_dark-light/checkbox_light.svg); +} + +QTreeView::indicator:checked:hover, QTreeView::indicator:checked:focus, QTreeView::indicator:checked:pressed, +QListView::indicator:checked:hover, +QListView::indicator:checked:focus, +QListView::indicator:checked:pressed, +QTableView::indicator:checked:hover, +QTableView::indicator:checked:focus, +QTableView::indicator:checked:pressed, +QColumnView::indicator:checked:hover, +QColumnView::indicator:checked:focus, +QColumnView::indicator:checked:pressed { + image: url(qss:images_dark-light/checkbox_light_hover.svg); +} + +QTreeView::indicator:unchecked, +QListView::indicator:unchecked, +QTableView::indicator:unchecked, +QColumnView::indicator:unchecked { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QTreeView::indicator:unchecked:hover, QTreeView::indicator:unchecked:focus, QTreeView::indicator:unchecked:pressed, +QListView::indicator:unchecked:hover, +QListView::indicator:unchecked:focus, +QListView::indicator:unchecked:pressed, +QTableView::indicator:unchecked:hover, +QTableView::indicator:unchecked:focus, +QTableView::indicator:unchecked:pressed, +QColumnView::indicator:unchecked:hover, +QColumnView::indicator:unchecked:focus, +QColumnView::indicator:unchecked:pressed { + image: url(qss:images_dark-light/checkbox_unchecked_hover_light.svg); +} + +QTreeView::indicator:indeterminate, +QListView::indicator:indeterminate, +QTableView::indicator:indeterminate, +QColumnView::indicator:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QTreeView::indicator:indeterminate:hover, QTreeView::indicator:indeterminate:focus, QTreeView::indicator:indeterminate:pressed, +QListView::indicator:indeterminate:hover, +QListView::indicator:indeterminate:focus, +QListView::indicator:indeterminate:pressed, +QTableView::indicator:indeterminate:hover, +QTableView::indicator:indeterminate:focus, +QTableView::indicator:indeterminate:pressed, +QColumnView::indicator:indeterminate:hover, +QColumnView::indicator:indeterminate:focus, +QColumnView::indicator:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QTreeView, +QListView, +QTableView, +QColumnView { + background-color: #7F7F7F; /* background of a lot of stuff including spreadsheets.*/ + border: 0px solid #696968; + color: White; + gridline-color: #696968; + border-radius: 0px; +} + +QTableView, +QListView { + background-color: rgba(0, 0, 0, 0.232); /* background of a lot of stuff including spreadsheets.*/ } -/*================================================================================================== -Toolbar buttons -==================================================================================================*/ -/*QToolBar > QComboBox, disabled because creates different margins for body and drop-down button */ -QToolBar > QAbstractSpinBox, -QToolBar > QSpinBox, -QToolBar > QDoubleSpinBox, -QToolBar > QLineEdit, -QToolBar > QTextEdit, -QToolBar > QTimeEdit, -QToolBar > QDateEdit, -QToolBar > QDateTimeEdit { - margin: 0px 2px; - padding: 0px; - min-width: 70px; /* necessary to show its content */ +QTreeView:disabled, +QListView:disabled, +QTableView:disabled, +QColumnView:disabled { + background-color: #505050; + color: #c2c7cb; } -QToolBar > QComboBox, -QToolBar > QAbstractSpinBox, -QToolBar > QSpinBox, -QToolBar > QDoubleSpinBox, -QToolBar > QLineEdit, -QToolBar > QTextEdit, -QToolBar > QTimeEdit, -QToolBar > QDateEdit, -QToolBar > QDateTimeEdit { - min-height: 0px; /* reset it inside Tool Bar due to the user ability to set the "size of toolbar icons" inside Preferences */ +QTreeView:selected, +QListView:selected, +QTableView:selected, +QColumnView:selected { + background-color: #b28416; + color: White; } -QToolBar > QPushButton { - padding: 0px; - margin: 1px; /* doesn't work with :left, :right:, :top or :bottom sub-controls */ - min-width: 16px; /* could not be larger due to switchable Preferences "Size of toolbar icons" */ - min-height: 16px; /* could not be larger due to switchable Preferences "Size of toolbar icons" */ - border-radius: 4px; /* same as regular QPushButton */ +QTreeView:focus, +QListView:focus, +QTableView:focus, +QColumnView:focus { + border: 1px solid #996b00; } -QToolBar > QPushButton:checked { - border: 1px solid #e3b64d; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #e3d8b9, stop:1 #e3b64d); +QTreeView::item:pressed, +QListView::item:pressed, +QTableView::item:pressed, +QColumnView::item:pressed { + background-color: #b28416; } -QToolBar > QPushButton:!checked { - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #6e6e6e, stop:1 #646464); - border: 1px solid #5a5a5a; - border-bottom-color: #505050; /* simulates shadow under the button */ - text-align: left; /* bug fix #4559 */ +QTreeView::item:selected:active, +QListView::item:selected:active, +QTableView::item:selected:active, +QColumnView::item:selected:active { + background-color: #b28416; } -QToolBar > QPushButton:checked:hover { - border-color: #e2ac2a; +QTreeView::item:selected:!active, +QListView::item:selected:!active, +QTableView::item:selected:!active, +QColumnView::item:selected:!active { + color: White; + background-color: #353535; } -QToolBar > QPushButton:!checked:hover { - color: #e3d8b9; - border-color: #505050; +QTreeView::item:!selected:hover, +QListView::item:!selected:hover, +QTableView::item:!selected:hover, +QColumnView::item:!selected:hover { + outline: 0; + color: White; + background-color: #b28416; } -QToolBar > QPushButton:checked:pressed { - background-color: #e3b64d; +QTableCornerButton::section { + background-color: #7F7F7F; + border: 1px transparent #696968; + border-radius: 0px; } -QToolBar > QPushButton:!checked:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #5a5a5a, stop:1 #6e6e6e); -} - -QToolBar > QPushButton:checked:disabled, -QToolBar > QPushButton:!checked:disabled { - border: none; - background-color: transparent; -} - -QToolBar > QToolButton { - margin: 2px; - padding: 2px; - border-radius: 3px; -} - -QToolBar > QToolButton:hover { - background-color: rgba(0,0,0,20); -} - -QToolBar > QToolButton:pressed { - background-color: rgba(0,0,0,30); -} - -/* ToolBar menu buttons (buttons with drop-down menu) */ -QToolBar > QToolButton#qt_toolbutton_menubutton { - padding-right: 20px; /* Hack to add more width to buttons with menu */ - border: 1px solid transparent; - border-radius: 3px; -} - -QToolBar > QToolButton#qt_toolbutton_menubutton:hover, -QToolBar > QToolButton#qt_toolbutton_menubutton:pressed, -QToolBar > QToolButton#qt_toolbutton_menubutton:open { - border: 1px solid #e3b64d; -} - -QToolBar QToolButton::menu-button, -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button { - border: none; - border-top-right-radius: 3px; - border-bottom-right-radius: 3px; - width: 16px; /* 16px width + 4px for border = 20px allocated above */ - outline: none; - background-color: transparent; -} - -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button:hover, -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button:pressed, -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button:open { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #daa116, stop:1 #e3b64d); -} - -QToolBar > QToolButton::menu-arrow { - background-image: url(qss:images_dark-light/down_arrow_dark.svg); - background-position: center center; - background-repeat: none; - subcontrol-origin: padding; - subcontrol-position: bottom right; - height: 10px; /* same as arrow image */ -} - -QToolBar > QToolButton::menu-arrow:hover { - background-image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -QToolBar > QToolButton::menu-arrow:open { - background-image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -/* when QToolButton is checked: */ -QToolBar > QToolButton:checked { - border: 1px solid #e3b64d; - background-color: rgba(124,171,249,60); /* transparency for #e3b64d color */ -} - -QToolBar > QToolButton:checked:hover { - border: 1px solid #e3b64d; - background-color: rgba(124,171,249,80); /* transparency for #e3b64d color */ -} - -/*The "show more" button (it can also be stylable with "QToolBarExtension" */ -QToolBar QToolButton#qt_toolbar_ext_button { - margin: 0px; - padding: 0px; - /*background-image: url(qss:images_dark-light/more_dark.svg);*/ - image: transparent; - background-repeat: none; - background-position: center left; -} - -QToolBar QToolButton#qt_toolbar_ext_button:hover { - /*background-image: url(qss:images_dark-light/more_light.svg);*/ - border-color: #5a5a5a; - background-color: #5a5a5a; -} - -QToolBar QToolButton#qt_toolbar_ext_button:on { - /*background-image: url(qss:images_dark-light/more_light.svg);*/ - border-color: #5a5a5a; - background-color: #5a5a5a; -} - - -/*================================================================================================== -Tables (spreadsheets) -==================================================================================================*/ -QTableView { - gridline-color: #a0a0a0; - selection-color: #624b14; - selection-background-color: #e3d8b9; -} - -QTableView::item:hover { - background-color: rgba(0,0,0,10); /* temporal: is it displayed in Linux or Windows? on OSX it isn't */ -} - -QTableView::item:disabled { - color: #8c8c8c; -} - -QTableView::item:selected { - color: #624b14; - border-color: #e3d8b9; /* same as focused background color */ - border-bottom-color: #e3b64d; /* same as focused border color */ -} - -/* fix for elements inside the cells */ -QTableView > QWidget > QComboBox, -QTableView > QWidget > QAbstractSpinBox, -QTableView > QWidget > QSpinBox, -QTableView > QWidget > QDoubleSpinBox, -QTableView > QWidget > QLineEdit, -QTableView > QWidget > QTextEdit, -QTableView > QWidget > QTimeEdit, -QTableView > QWidget > QDateEdit, -QTableView > QWidget > QDateTimeEdit, -QTableView > QWidget > QComboBox:drop-down, -QTableView > QWidget > QAbstractSpinBox:up-button, -QTableView > QWidget > QSpinBox:up-button, -QTableView > QWidget > QDoubleSpinBox:up-button, -QTableView > QWidget > QTimeEdit:up-button, -QTableView > QWidget > QDateEdit:up-button, -QTableView > QWidget > QDateTimeEdit:up-button, -QTableView > QWidget > QAbstractSpinBox:down-button, -QTableView > QWidget > QSpinBox:down-button, -QTableView > QWidget > QDoubleSpinBox:down-button, -QTableView > QWidget > QTimeEdit:down-button, -QTableView > QWidget > QDateEdit:down-button, -QTableView > QWidget > QDateTimeEdit:down-button, -QTableView > QWidget > Gui--ColorButton { - border-radius: 0px; -} - -QTableView > QWidget > QComboBox, -QTableView > QWidget > QAbstractSpinBox, -QTableView > QWidget > QSpinBox, -QTableView > QWidget > QDoubleSpinBox, -QTableView > QWidget > QLineEdit, -QTableView > QWidget > QTextEdit, -QTableView > QWidget > QTimeEdit, -QTableView > QWidget > QDateEdit, -QTableView > QWidget > QDateTimeEdit { - color: black; - background-color: transparent; - border-color: transparent; -} - -QTableView > QWidget > QComboBox:drop-down, -QTableView > QWidget > QAbstractSpinBox:up-button, -QTableView > QWidget > QSpinBox:up-button, -QTableView > QWidget > QDoubleSpinBox:up-button, -QTableView > QWidget > QTimeEdit:up-button, -QTableView > QWidget > QDateEdit:up-button, -QTableView > QWidget > QDateTimeEdit:up-button, -QTableView > QWidget > QAbstractSpinBox:down-button, -QTableView > QWidget > QSpinBox:down-button, -QTableView > QWidget > QDoubleSpinBox:down-button, -QTableView > QWidget > QTimeEdit:down-button, -QTableView > QWidget > QDateEdit:down-button, -QTableView > QWidget > QDateTimeEdit:down-button, -QTableView > QWidget > Gui--ColorButton { - background-color: rgba(0,0,0,30); -} - -QTableView > QWidget > QComboBox:focus, -QTableView > QWidget > QAbstractSpinBox:focus, -QTableView > QWidget > QSpinBox:focus, -QTableView > QWidget > QDoubleSpinBox:focus, -QTableView > QWidget > QLineEdit:focus, -QTableView > QWidget > QTextEdit:focus, -QTableView > QWidget > QTimeEdit:focus, -QTableView > QWidget > QDateEdit:focus, -QTableView > QWidget > QDateTimeEdit:focus { - color: #624b14; - selection-color: white; - selection-background-color: #daa116; - border-color: #e3d8b9; - background-color: #e3d8b9; -} - -QTableView > QWidget > QComboBox:disabled, -QTableView > QWidget > QAbstractSpinBox:disabled, -QTableView > QWidget > QSpinBox:disabled, -QTableView > QWidget > QDoubleSpinBox:disabled, -QTableView > QWidget > QLineEdit:disabled, -QTableView > QWidget > QTextEdit:disabled, -QTableView > QWidget > QTimeEdit:disabled, -QTableView > QWidget > QDateEdit:disabled, -QTableView > QWidget > QDateTimeEdit:disabled { - color: rgba(0,0,0,120); - background-color: transparent; - border-color: transparent; -} - -QTableView > QWidget > QComboBox:read-only, -QTableView > QWidget > QAbstractSpinBox:read-only, -QTableView > QWidget > QSpinBox:read-only, -QTableView > QWidget > QDoubleSpinBox:read-only, -QTableView > QWidget > QLineEdit:read-only, -QTableView > QWidget > QTextEdit:read-only, -QTableView > QWidget > QTimeEdit:read-only, -QTableView > QWidget > QDateEdit:read-only, -QTableView > QWidget > QDateTimeEdit:read-only { - color: black; - background-color: transparent; - border-color: transparent; -} - - -/*================================================================================================== -SELECTORTOOLBAR widget (3rd party plugin) -==================================================================================================*/ -QToolBar:horizontal#Selector, -QToolBar:vertical#Selector { - background-color: rgba(0,0,0,120); - margin: 0px; - padding: 0px; -} - -QToolBar::handle:top#Selector, -QToolBar::handle:bottom#Selector, -QToolBar::handle:horizontal#Selector { - alignment: bottom left; -} - -QToolBar::handle:left#Selector, -QToolBar::handle:right#Selector, -QToolBar::handle:vertical#Selector { - width: 100%; - alignment: center left; -} - -QToolBar:top#Selector QToolButton, -QToolBar:bottom#Selector QToolButton, -QToolBar:horizontal#Selector QToolButton { - alignment: bottom left; -} - -QToolBar:left#Selector QToolButton, -QToolBar:right#Selector QToolButton, -QToolBar:vertical#Selector QToolButton { - alignment: center left; -} - -QToolButton[toolbar_orientation="horizontal"] { - /* nothing, when Horizontal there's no need to add special parameters */ -} - -QToolButton[toolbar_orientation="vertical"] { - /* nothing, when Horizontal there's no need to add special parameters */ -} - -QToolBar#Selector QToolButton { - border: none; - margin: 0px; - padding: 2px 6px; - border-radius: 0px; -} - -/* Active tab */ -QToolBar#Selector QToolButton:checked { +QTableView::item { color: white; - background-color: #6e6e6e; +} +QTableView { + /*qproperty-AliasedCellBackgroundColor: #f700ff;*/ + /*qproperty-aliasBgColor: #f700ff;*/ } -/* Unactive tabs */ -QToolBar#Selector QToolButton:!checked { - color: rgba(255,255,255,160); - background-color: transparent; - margin: 0px; +/* QHeaderView ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qheaderview + +--------------------------------------------------------------------------- */ +QHeaderView { + background-color: transparent; + text-align: center; } -/* Unactive tabs (hover) */ -QToolBar#Selector QToolButton:!checked:hover { - color: rgba(255,255,255,255); - background-color: rgba(255,255,255,20); +QHeaderView:disabled { + background-color: #7f7f7f; + color: rgb(174, 174, 174); } -/* Unactive tabs (pressed) */ -QToolBar#Selector QToolButton:!checked:pressed { - background-color: rgba(255,255,255,40); +QHeaderView::section { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051); + color: White; + border: 1px solid #505051; + font-size: 13px; + font-weight: bold; } - -/*================================================================================================== -TABBAR widget (3rd party plugin) -==================================================================================================*/ -QTabWidget#TabBar > QTabBar { - border-top: 0; +QHeaderView::section::horizontal { + padding-top: 1px; + padding-bottom: 1px; + padding-left: 5px; + padding-right: 0px; } -QTabWidget#TabBar > QTabBar::tab:top, -QTabWidget#TabBar > QTabBar::tab:bottom { - min-width: -1; +QHeaderView::section::horizontal::first, QHeaderView::section::horizontal::only-one { + border-left: 0px solid #696968; } -QTabWidget#TabBar > QTabBar::tab:left, -QTabWidget#TabBar > QTabBar::tab:right { - min-height: -1; +QHeaderView::section::horizontal:disabled { + color: #353535; } - -/*================================================================================================== -EXPERIMENTAL -==================================================================================================*/ - -/* Fix for preventing elements in different rows to accidentally overlap */ -QDialog QGroupBox QFrame { - margin: 2px 0px; +QHeaderView::section::vertical { + padding-top: 1px; + padding-bottom: 0; + padding-left: 1px; + padding-right: 0px; + border-top: 0px solid #696968; } -*[mandatoryField="true"] { background-color: cyan } - -/* Hack to avoid QPushButton text partially hidden under menu-indicator */ -QPushButton#NavigationIndicator::menu-indicator { - image: none; - width: 0px; +QHeaderView::section::vertical::first, QHeaderView::section::vertical::only-one { + border-top: 2px solid #505051; } -/*================================================================================================== -SKETCHER -==================================================================================================*/ +QHeaderView::section::vertical:disabled { + border-top: 2px solid #505051; +} -Gui--StatefulLabel[state="empty_sketch"] { - color : rgba(255,255,255,127); /* 50% opacity white */ +QHeaderView::down-arrow { + /* Those settings (border/width/height/background-color) solve bug */ + /* transparent arrow background and size */ + background-color: transparent; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/down_arrow_light.svg); } -Gui--StatefulLabel[state="under_constrained"] { - color : rgba(255,255,255,255); /* White */ + +QHeaderView::up-arrow { + background-color: transparent; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/up_arrow_light.svg); } -Gui--StatefulLabel[state="conflicting_constraints"] { - color : rgba(255,0,0,255); /* Red */ + +/* QToolBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbox +used in PATH + +--------------------------------------------------------------------------- */ +QToolBox { + padding: 0px; + border: 1px solid #696969; + border-radius: 4px; + background-color: transparent; } -Gui--StatefulLabel[state="malformed_constraints"] { - color : rgba(255,0,0,255); /* Red */ + +QToolBox:selected { + padding: 0px; + border: 0px solid #b28416; } -Gui--StatefulLabel[state="redundant_constraints"] { - color : rgba(255,69,0,255); /* Orange red */ + +QToolBox::tab { + background-color: transparent; + border: 0px solid #696969; + color: white; + background-image: url(qss:images_dark-light/down_arrow_lighter.svg); + background-repeat: none; + background-position: center left; } -Gui--StatefulLabel[state="partially_redundant_constraints"] { - color : rgba(65,105,225,255); /* Royal blue */ + +QToolBox::tab:disabled { + color: #696969; } -Gui--StatefulLabel[state="solver_failed"] { - color : rgba(255,0,0,255); /* Red */ - font-weight: bold; + +QToolBox::tab:selected { + background-color: #696969; + background-image: url(qss:images_dark-light/transparent.svg); + padding-right: 5px; + background-repeat: none; } -Gui--StatefulLabel[state="fully_constrained"] { - color : rgba(0,255,0,255); /* Green */ - font-weight: bold; + +QToolBox::tab:selected:disabled { + background-color: #696969; + border-bottom: 0px solid #cccccc; + color: white; } -Gui--UrlLabel { - color : rgba(0,91,255,255); /* Deep sky blue */ - text-decoration : underline; + +QToolBox::tab:!selected { + } + +QToolBox::tab:!selected:disabled { + background-color: #7F7F7F; +} + +QToolBox::tab:hover { + background-color: #b28416; + } + +QToolBox QScrollArea QWidget QWidget { + padding: 0px; + border: 0px; + background-color: transparent; +} + +/* QFrame ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe +https://doc.qt.io/qt-5/qframe.html#-prop +https://doc.qt.io/qt-5/qframe.html#details +https://stackoverflow.com/questions/14581498/qt-stylesheet-for-hline-vline-color + +--------------------------------------------------------------------------- */ +/* (dot) .QFrame fix #141, #126, #123 */ +.QFrame { + border-radius: 0px; + border: 0px solid #696968; + background-color: #696969; + /* No frame */ + /* HLine */ + /* HLine */ +} + +.QFrame[frameShape="0"] { + border-radius: 1.9px; + border: 1px solid #696968; +} + +.QFrame[frameShape="4"] { + max-height: 1px; + border: none; + background-color: #696968; +} + +.QFrame[frameShape="5"] { + max-width: 1px; + border: none; + background-color: #7F7F7F; +} + +/* QSplitter -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsplitter + +--------------------------------------------------------------------------- */ +QSplitter { + background-color: #3c3c3c; + spacing: 1px; + padding: 1px; + margin: 1px; +} + +QSplitter::handle { + margin: 0px 0px; + padding: 0px; +} + +QSplitter::handle:horizontal { + background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + width: 1px; +} + +QSplitter::handle:vertical { + background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + height: 1px; +} + +QSplitter::handle:hover { + background-image: url(qss:images_dark-light/splitter_horizontal_light.svg); + background-position: center center; + background-repeat: none; + background-color: #b28416; +} + +/* QDateEdit, QDateTimeEdit ----------------------------------------------- + +--------------------------------------------------------------------------- */ +QDateEdit, QDateTimeEdit { + selection-background-color: #b28416; + border-style: solid; + border: 1px solid #696968; + border-radius: 1.9px; + /* This fixes 103, 111 */ + padding-top: 2px; + /* This fixes 103, 111 */ + padding-bottom: 2px; + padding-left: 4px; + padding-right: 4px; + min-width: 10px; +} + +QDateEdit:on, QDateTimeEdit:on { + selection-background-color: #b28416; +} + +QDateEdit::drop-down, QDateTimeEdit::drop-down { + subcontrol-origin: padding; + subcontrol-position: top right; + width: 12px; + border-left: 1px solid #696968; +} + +QDateEdit::down-arrow, QDateTimeEdit::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + height: 8px; + width: 8px; +} + +QDateEdit::down-arrow:on, QDateEdit::down-arrow:hover, QDateEdit::down-arrow:focus, QDateTimeEdit::down-arrow:on, QDateTimeEdit::down-arrow:hover, QDateTimeEdit::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_lighter.svg); +} + +QDateEdit QAbstractItemView, QDateTimeEdit QAbstractItemView { + background-color: #7F7F7F; + border-radius: 2px; + border: 1px solid #696968; + selection-background-color: #b28416; +} + +/* QAbstractView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractView:hover { + border: 1px solid #b28416; + color: White; +} + +QAbstractView:selected { + background: #b28416; + color: White; +} + +/* PlotWidget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +PlotWidget { + /* Fix cut labels in plots #134 */ + padding: 0px; +} \ No newline at end of file diff --git a/src/Gui/Stylesheets/Dark-pink.qss b/src/Gui/Stylesheets/Dark-pink.qss new file mode 100644 index 0000000000..676ae2d5e3 --- /dev/null +++ b/src/Gui/Stylesheets/Dark-pink.qss @@ -0,0 +1,2533 @@ +/* +ABOUT +============================================================================================================ +Revised stylesheet based on the original from Pablo Gil Fernández made by MisterMaker + +KNOWN BUGS and TO DO +============================================================================================================ +Please, follow the link to get updated information: +https://forum.freecad.org/viewtopic.php?t=78431 + +INSTALLATION WHEN NECESSARY +============================================================================================================ +1) Place the .qss files and /images/ folder in the path that fits your OS: + OSX = /Users/[YOUR_USER_NAME]/Library/Preferences/FreeCAD/Gui/Stylesheets/ + WINDOWS = C:/[INSTALLATION_PATH]/FreeCAD/data/Gui/Stylesheets/ + LINUX = /home/[YOUR_USER_NAME]/.FreeCAD/Gui/Stylesheets/ + +============================================================================================================ +TO MODIFY USE THESE COLORS: + #bc1cc8 + #920077 + + +See Qt documentation: + + - https://doc.qt.io/qt-5/stylesheet.html + - https://doc.qt.io/qt-5/stylesheet-reference.html + - https://doc.qt.io/qt-5/stylesheet-examples.html + +--------------------------------------------------------------------------- */ + + +/* Reset elements ------------------------------------------------------------ + +Resetting everything helps to unify styles across different operating systems + +--------------------------------------------------------------------------- */ +* { + padding: 0px; + margin: 0px; + border: 0px; + border-style: none; + border-image: none; + outline: 0; +} + +/* specific reset for elements inside QToolBar */ +QToolBar * { + margin: 0px; + padding: 0px; +} + +/*hacks */ +Gui--PropertyEditor--PropertyEditor QLineEdit:read-only, +Gui--PropertyEditor--PropertyEditor QLineEdit:disabled, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:read-only, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:disabled { + color: transparent; + border-color: transparent; + background-color: transparent; + selection-color: transparent; + selection-background-color: transparent; + +} +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel, +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel:disabled { + color: transparent; + background-color: transparent; + border: none; + border-radius: 1px; + margin: 0px; + padding: 0px; +} + +Gui--PropertyEditor--PropertyEditor QSpinBox, +Gui--PropertyEditor--PropertyEditor QDoubleSpinBox, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox, +Gui--PropertyEditor--PropertyEditor QLineEdit, +Gui--PropertyEditor--PropertyEditor QComboBox { + margin-left: 0px; + margin-right: 0px; + padding-top: 0px; + padding-bottom: 0px; + +} + +/*================================================================================================== +Main window +==================================================================================================*/ +QMainWindow, +QDialog, +QDockWidget, +QToolBar { + background-color: #7F7F7F; /* main background color */ +} + +QMdiArea { + background-image: url(qss:images_dark-light/background_freecad_dark.svg); + background-position: center center; + background-repeat: no-repeat; +} +/*navgation src/Mod/Tux/NavigationIndicatorGui.py */ +Gui--NavigationIndicatorGui--BlenderNavigationStyle { +/*QAction#a4 {*/ + qproperty-icon: url(:/icons/icons/NavigationBlender_light.svg); +} +/*===== +/* QWidget ---------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QWidget { + background-color: #7F7F7F; + border: 0px solid #696968; + padding: 0px; + color: White; + selection-background-color: #bc1cc8; + selection-color: White; +} + +QWidget:disabled { + background-color: transparent; + color: #c2c7cb; + selection-background-color: #bc1cc8; + selection-color: #c2c7cb; +} + +QWidget::item:selected { + background-color: #bc1cc8; +} + + /* Causes issue with colorselector. + QWidget::item:hover:!selected { + background-color: #bc1cc8; + }*/ + +/* QMainWindow ------------------------------------------------------------ + +This adjusts the splitter in the dock widget, not qsplitter +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmainwindow + +--------------------------------------------------------------------------- */ +QMainWindow::separator { + /*background-color: #3c3c3c;*/ + border: 0px solid #696968; + spacing: 0px; + padding: 1px; +} + +QMainWindow::separator:vertical:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,stop:0.2 transparent,stop:0.5 #bc1cc8, stop:0.8 transparent); + /*background-color: #bc1cc8;*/ + image: url(qss:images_dark-light/splitter_vertical_light.svg); +} + +QMainWindow::separator:horizontal:hover { + background-color: qlineargradient(x1:0, y1:0, x2:1, y2:0,stop:0.2 transparent,stop:0.5 #bc1cc8, stop:0.8 transparent); + /*background-color: #bc1cc8;*/ + image: url(qss:images_dark-light/splitter_horizontal_light.svg); +} + +QMainWindow::separator:horizontal { + width: 4px; + margin-top: 0.1px; + margin-bottom: 0.1px; + /* image: url(qss:images_dark-light/splitter_horizontal_dark.svg);*/ +} + +QMainWindow::separator:vertical { + height: 4px; + margin-left: 0.1px; + margin-right: 0.1px; + /* image: url(qss:images_dark-light/splitter_vertical_dark.svg);*/ +} + +/* QToolTip --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtooltip + +--------------------------------------------------------------------------- */ +QToolTip { + background-color: #505050; + color: White; + /* If you remove the border property, background stops working on Windows */ + border: none; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Remove opacity, fix #174 - may need to use RGBA */ +} + +/* QStatusBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qstatusbar + +--------------------------------------------------------------------------- */ +QStatusBar { + border: 0px solid #3c3c3c; + /* Fixes Spyder #9120, #9121 */ + background: #7F7F7F; + /* Fixes #205, white vertical borders separating items */ +} + +QStatusBar::item { + border: none; +} + +QStatusBar QToolTip { + background-color: #7F7F7F; + border: 1px solid #696968; + color: #7F7F7F; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Reducing transparency to read better */ + opacity: 230; +} + +QStatusBar QLabel { + /* Fixes Spyder #9120, #9121 */ + background: transparent; +} + +/* QCheckBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcheckbox + +--------------------------------------------------------------------------- */ +QCheckBox { + color: white; + padding: 0px; + outline: none; + border: 1px solid transparent; + background-color: transparent; +} + +QCheckBox:focus { + border: 1px solid #920077 ; +} + +QCheckBox QWidget:disabled { + background-color: transparent; + color: #c2c7cb; +} + +QCheckBox::indicator { + color: white; + background-color: #505050; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QCheckBox::indicator:unchecked { + background-color: #505050; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QCheckBox::indicator:unchecked:hover, QCheckBox::indicator:unchecked:focus, QCheckBox::indicator:unchecked:pressed { + background-color: #bc1cc8; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QCheckBox::indicator:unchecked:disabled { + background-color: #7F7F7F; + image:url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QCheckBox::indicator:checked { + background-color: #505050; + /*border: 1px solid #696968; /* QRadioButton has the same color */ + image:url(qss:images_dark-light/checkbox_light.svg); +} + +QCheckBox::indicator:checked:hover, QCheckBox::indicator:checked:pressed { + background-color: #bc1cc8; +} + +QCheckBox::indicator:checked:disabled { + background-color: #7F7F7F; + image: url(qss:images_dark-light/check_light.svg); +} + +QCheckBox::indicator:indeterminate { + background-color: #505050; + border: 1px solid #696968; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QCheckBox::indicator:indeterminate:disabled { + background-color: #7F7F7F; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QCheckBox::indicator:indeterminate:hover, QCheckBox::indicator:indeterminate:pressed { + background-color: #bc1cc8; /* QRadioButton has the same color */ +} + +/* QGroupBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qgroupbox + +--------------------------------------------------------------------------- */ +QGroupBox { + font-weight: bold; + border: 1px solid #696968; + border-radius: 1.9px; + padding: 2px; + margin-top: 10px; + margin-bottom: 4px; +} + +QGroupBox::title { + subcontrol-origin: margin; + subcontrol-position: top left; + left: 4px; + padding-left: 2px; + padding-right: 4px; + padding-top: 6px; +} + +QGroupBox::indicator { + color: white; + background-color: #3c3c3c; + border: 1px solid #696968; + width: 12px; + height: 12px; + border-radius:1px; +} + +QGroupBox::indicator:unchecked { + background-color: #696968; + border: 1px solid #696968; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QGroupBox::indicator:unchecked:hover, QGroupBox::indicator:unchecked:focus, QGroupBox::indicator:unchecked:pressed { + background-color: #bc1cc8; +} + +QGroupBox::indicator:unchecked:disabled { + background-color: #505050; + border: 1px solid #696968; +} + +QGroupBox::indicator:checked { + border: none; + image:url(qss:images_dark-light/checkbox_light.svg); +} + +QGroupBox::indicator:checked:hover, QGroupBox::indicator:checked:focus, QGroupBox::indicator:checked:pressed { + background-color: #bc1cc8; +} + +QGroupBox::indicator:checked:disabled { + background-color: #bc1cc8; +} + +/* QRadioButton ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qradiobutton + +--------------------------------------------------------------------------- */ +QRadioButton { + background-color: transparent; + color: White; + border: none; + spacing: 4px; + padding-top: 4px; + padding-bottom: 4px; + outline: none; +} + +QRadioButton:focus { + border: 1px solid #920077 ; +} + +QRadioButton:disabled { + background-color: #696968; + color: #353535; +} + +QRadioButton QWidget { + background-color: transparent; + color: White; + spacing: 0px; + padding: 0px; + outline: none; + border: none; +} + +QRadioButton::indicator { + background-color: #3c3c3c; + border: 1px solid #696968; + border-radius: 6px; + margin-left: 0px; + height: 11px; + width: 11px; +} + +QRadioButton::indicator:unchecked { + /*image:url(qss:images_dark-light/radiobutton_light.svg);*/ +} + +QRadioButton::indicator:unchecked:hover, QRadioButton::indicator:unchecked:pressed { + background-color: #bc1cc8; + border: 1px solid #bc1cc8; + border-radius: 6px; +} + +QRadioButton::indicator:unchecked:disabled { + /*image:url(qss:images_dark-light/radiobutton_dark.svg);*/ + border: 1px solid #696968; +} + +QRadioButton::indicator:checked { + image:url(qss:images_dark-light/radiobutton_light.svg); +} + +QRadioButton::indicator:checked:hover, QRadioButton::indicator:checked:pressed { + background-color: #bc1cc8; + border: 1px solid #bc1cc8; + border-radius: 6px; + image:url(qss:images_dark-light/radiobutton_light.svg); +} + +QRadioButton::indicator:checked:disabled { + outline: none; + background-color: #696968; + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +/* QMenuBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenubar + +--------------------------------------------------------------------------- */ +QMenuBar { + background-color: #505050; + /*padding: 1px; + border: 0px solid rgba(0,0,0,140);*/ + color: White; + selection-background-color: #bc1cc8; +} + +QMenuBar:focus { + border: 1px solid #920077 ; +} + +QMenuBar::item { + background: transparent; + /*padding-left:5px; + padding-right: 5px; + padding-bottom: 1px; + padding-top: 1px;*/ +} + +QMenuBar::item:selected { + background: transparent; + border: 0px solid #696968; + background-color: #bc1cc8; +} + +QMenuBar::item:pressed { + /*padding: 2px; + padding-left: 10px; + padding-right: 10px;*/ + border: 0px solid #696968; + background-color: #bc1cc8; + color: White; + /*margin-bottom: 0px; + padding-bottom: 0px;*/ +} + +/* QMenu ------------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenu + +--------------------------------------------------------------------------- */ +QMenu { + border-bottom: 2px rgba(0,0,0,140); + border-right: 2px rgba(0,0,0,140); + color: White; + margin: 0px; + background-color: #505050; + selection-background-color: #bc1cc8; +} + +QMenu::separator { + height: 2px; + background-color: #3c3c3c; + margin-left: 30%; + margin-right: 30%; +} + +QMenu::item { + background-color: transparent; + padding: 2px 2px; /* make room for icon at left */ + /* Reserve space for selection border */ + border: 0px transparent #696968; +} + +QMenu::item:selected { + color: White; + background-color: #bc1cc8; +} + +QMenu::item:pressed { + background-color: #bc1cc8; +} + +QMenu::icon { + margin-left: 5px; + width: 14px; + height: 14px; +} + +QMenu::indicator { + margin-left: 2px; + margin-right: 2px; + padding: 0px; + width: 12px; + height: 12px; + /* non-exclusive indicator = check box style indicator (see QActionGroup::setExclusive) */ + /* exclusive indicator = radio button style indicator (see QActionGroup::setExclusive) */ +} + +QMenu::icon:checked { /* appearance of a 'checked' icon */ + background: #920077 ; + margin-left: -5px; + border: 5px solid #920077 ; + position: absolute; + border-radius: 0px; +} +QMenu::indicator:non-exclusive:unchecked { + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:non-exclusive:unchecked:hover, QMenu::indicator:non-exclusive:unchecked:focus, QMenu::indicator:non-exclusive:unchecked:pressed { + border: none; + background: #bc1cc8; +} + +QMenu::indicator:non-exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QMenu::indicator:non-exclusive:checked { + image:url(qss:images_dark-light/checkbox_light.svg); +} + +QMenu::indicator:non-exclusive:checked:hover, QMenu::indicator:non-exclusive:checked:focus, QMenu::indicator:non-exclusive:checked:pressed { + border: none; + background: #bc1cc8; +} + +QMenu::indicator:non-exclusive:checked:disabled { + image:url(qss:images_dark-light/checkbox_checked_disabled.svg); +} + +QMenu::indicator:non-exclusive:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:disabled { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:focus, QMenu::indicator:non-exclusive:indeterminate:hover, QMenu::indicator:non-exclusive:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QMenu::indicator:exclusive:unchecked { + image: url(qss:images_dark-light/transparent.svg); +} + +QMenu::indicator:exclusive:unchecked:hover, QMenu::indicator:exclusive:unchecked:focus, QMenu::indicator:exclusive:unchecked:pressed { + border: none; + outline: none; + background: #bc1cc8; + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:checked { + border: none; + outline: none; + image: url(qss:images_dark-light/radiobutton_light.svg); +} + +QMenu::indicator:exclusive:checked:hover, QMenu::indicator:exclusive:checked:focus, QMenu::indicator:exclusive:checked:pressed { + border: none; + outline: none; + background: #bc1cc8; + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:checked:disabled { + outline: none; + image: url(qss:images_dark-light/radiobutton_light.svg); +} + +QMenu::right-arrow { + margin: 5px; + padding-left: 12px; + image:url(qss:images_dark-light/right_arrow_lighter.svg); + height: 12px; + width: 12px; + background-color: transparent; +} + +/* QAbstractItemView ------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QAbstractItemView { + alternate-background-color: #5b5b5b; + color: White; + border: 1px solid #696968; + border-radius: 2px; +} + +QAbstractItemView QLineEdit { + padding: 2px; +} + +/* QAbstractScrollArea ---------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QAbstractScrollArea { + background-color: transparent; + border: 0px solid #696968; + border-radius: 0px; + /* fix #159 */ + padding: 0px; + /* remove min-height to fix #244 */ + color: White; +} + +QAbstractScrollArea:disabled { + color: #353535; +} + +/* QScrollArea ------------------------------------------------------------ + +--------------------------------------------------------------------------- +text input field disabled!!!!*/ +QScrollArea QWidget:disabled { + background-color: #7F7F7F; +} + +/* QScrollBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qscrollbar + +--------------------------------------------------------------------------- */ +QScrollBar:horizontal { + height: 16px; + margin: 2px 8px 2px 8px; + border: 0px solid #696968; + border-radius: 1.9px; + background-color: #7F7F7F; +} + +QScrollBar:vertical { + background-color: #7F7F7F; + width: 16px; + margin: 8px 2px 8px 2px; + border: 0px solid #696968; + border-radius: 1.9px; +} + +QScrollBar::handle:horizontal { + background-color: #696969; + border: 1px solid #7F7F7F; + border-radius: 4px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:hover { + background-color: #bc1cc8; + border: #696968; + border-radius: 4px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:focus { + border: 1px solid #920077 ; +} + +QScrollBar::handle:vertical { + background-color: #696969; + border: 1px solid #696968; + min-height: 8px; + border-radius: 4px; +} + +QScrollBar::handle:vertical:hover { + background-color: #bc1cc8; + border: #696968; + border-radius: 4px; + min-height: 8px; +} + +QScrollBar::handle:vertical:focus { + border: 1px solid #920077 ; +} + +QScrollBar::add-line:horizontal { + border-image: url(qss:images_dark-light/right_arrow_light.svg); + height: 9px; + width: 5px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:horizontal:hover, QScrollBar::add-line:horizontal:on { + border-image: url(qss:images_dark-light/right_arrow_lighter.svg); + height: 9px; + width: 5px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical { + border-image: url(qss:images_dark-light/down_arrow_light.svg); + height: 5px; + width: 9px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical:hover, QScrollBar::add-line:vertical:on { + border-image: url(qss:images_dark-light/down_arrow_lighter.svg); + height: 5px; + width: 9px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/left_arrow_light.svg); + height: 9px; + width: 5px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal:hover, QScrollBar::sub-line:horizontal:on { + border-image: url(qss:images_dark-light/left_arrow_lighter.svg); + height: 9px; + width: 5px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/up_arrow_light.svg); + height: 5px; + width: 9px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical:hover, QScrollBar::sub-line:vertical:on { + background-color: #bc1cc8; + border-image: url(qss:images_dark-light/up_arrow_lighter.svg); + height: 5px; + width: 9px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::up-arrow:horizontal, QScrollBar::down-arrow:horizontal { + background: none; +} + +QScrollBar::up-arrow:vertical, QScrollBar::down-arrow:vertical { + background: none; +} + +QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal { + background: none; +} + +QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical { + background: none; +} + +/* QTextEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-specific-widgets + + +report view +--------------------------------------------------------------------------- */ +QTextEdit { + background-color: #7F7F7F; + color: White; + border-radius: 1.9px; + border: 0px solid #696968; +} + +QTextEdit:focus { + border: 1px solid #920077 ; +} + +QTextEdit:selected { + background: #346792; + color: white; +} + +/* QPlainTextEdit --------------------------------------------------------- +Python +--------------------------------------------------------------------------- */ +QPlainTextEdit { + background-color: #3c3c3c; + color: White; + border-radius: 1.9px; + border: 0px solid #696968; +} + +QPlainTextEdit:focus { + border: 1px solid #920077 ; +} + +QPlainTextEdit:selected { + background: #bc1cc8; + color: White; +} + +/* QSizeGrip -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsizegrip + +--------------------------------------------------------------------------- */ +QSizeGrip { + background: transparent; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/sizegrip_light.svg); +} + +/* QStackedWidget --------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QStackedWidget { + padding: 0px; + border: 0px solid #696968; +} + +/* QToolBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbar + +--------------------------------------------------------------------------- */ +QToolBar { + background-color: #7F7F7F; + border-bottom: 0px solid rgba(0,0,0,120); + padding: 1px; + font-weight: bold; + spacing: 1px; +} + +QToolBar:disabled { + /* Fixes #272 */ + background-color: #7F7F7F; +} + +QToolBar::handle:horizontal { + width: 8px; + margin: 3px 3px; + background-position: top right; + background-repeat: repeat-y; + background-image: url(qss:images_dark-light/Hmovetoolbar_light.svg); +} + +QToolBar::handle:vertical { + height: 8px; + margin: 3px 3px; + background-position: left bottom; + background-repeat: repeat-x; + background-image: url(qss:images_dark-light/Vmovetoolbar_light.svg); +} + +QToolBar::separator:horizontal { + width: 2px; + margin: 4px 4px; + background-color: transparent; +} + +QToolBar::separator:vertical { + height: 2px; + margin: 4px 4px; + background-color: transparent; +} + +/*The "show more" button (it can also be stylable with "QToolBarExtension" icon is not working Qproperty works but breaks when you move the toolbar see also */ +QToolButton#qt_toolbar_ext_button { +margin: 0px; +padding: 0px; +background-color: #696969; +/*background-image: url(qss:images_dark-light/more_light.svg);*/ +background-repeat: none; +background-position: center center; +} + +QToolButton#qt_toolbar_ext_button:hover { +/*background-image: url(qss:images_dark-light/more_light.svg);*/ +background-color: #bc1cc8; +} + +QToolButton#qt_toolbar_ext_button:on { +/*background-image: url(qss:images_dark-light/more_light.svg);*/ +border-color: #696968; +background-color: #bc1cc8; +} + + +/* QAbstractSpinBox ------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractSpinBox, +QSpinBox { + background-color: #505050; + border: 1px solid transparent; + color: White; + /* This fixes 103, 111 */ + /* padding-top: 0px; + /* This fixes 103, 111 */ + /*padding-bottom: 0px; + /*padding-left: 4px; + /*padding-right: 4px; + border-radius: 1.9px;*/ + min-height: 1.7em; + /* min-width: 5px; removed to fix 109 */ +} + +QAbstractSpinBox:up-button { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051); + subcontrol-origin: border; + subcontrol-position: top right; + border: 1px solid transparent; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-bottom: -1px;*/ +} + +QAbstractSpinBox::up-arrow, QAbstractSpinBox::up-arrow:disabled, QAbstractSpinBox::up-arrow:off { + image: url(qss:images_dark-light/up_arrow_disabled_light.svg); + /* height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::up-arrow:hover { + image: url(qss:images_dark-light/up_arrow_lighter.svg); +} + +QAbstractSpinBox:down-button { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051); + subcontrol-origin: border; + subcontrol-position: bottom right; + border: 1px solid transparent; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-top: -1px;*/ +} + +QAbstractSpinBox::down-arrow, QAbstractSpinBox::down-arrow:disabled, QAbstractSpinBox::down-arrow:off { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + /*height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::down-arrow:hover { + image: url(qss:images_dark-light/down_arrow_lighter.svg); +} + +QAbstractSpinBox:hover { + /*border: 1px solid #bc1cc8; + color: White;*/ +} + +QAbstractSpinBox:focus { + border: 1px solid #920077 ; +} + +QAbstractSpinBox:selected { + background: #920077 ; + /*color: White;*/ +} + +/* ------------------------------------------------------------------------ */ +/* DISPLAYS --------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QLabel ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe + +--------------------------------------------------------------------------- */ +QLabel { + background-color: transparent; + border: 0px solid #696968; + padding: 2px; + margin: 0px; + color: White; +} + +QLabel:disabled { + background-color: transparent; + border: 0px solid #696968; + color: #c2c7cb; +} + +QLabel[haslink="true"] { + color: orange; +} + + +/* QTextBrowser ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QTextBrowser { + background-color: #505050; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; +} + +QTextBrowser:disabled { + background-color: #7F7F7F; + border: 1px solid #696968; + color: #c2c7cb; + border-radius: 1.9px; +} + +QTextBrowser:hover, QTextBrowser:!hover, QTextBrowser:selected, QTextBrowser:pressed { + border: 1px solid #bc1cc8; +} + +/* QGraphicsView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QGraphicsView { + background-color: transparent; + border: 0px solid #bc1cc8; + color: White; + border-radius: 0px; +} + +QGraphicsView:disabled { + background-color: #505050; + border: 0px solid #696968; + color: #c2c7cb; + border-radius: 0px; +} + +QGraphicsView:hover, QGraphicsView:!hover, QGraphicsView:selected, QGraphicsView:pressed { + border: 0px solid #ff00f7; +} + +/* QCalendarWidget -------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCalendarWidget { + border: 1px solid #696968; + border-radius: 1.9px; +} + +QCalendarWidget:disabled { + background-color: #353535; + color: #c2c7cb; +} + +/* QLCDNumber ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QLCDNumber { + background-color: #1aff00; + color: White; +} + +QLCDNumber:disabled { + background-color: #7F7F7F; + color: #c2c7cb; +} + +/* QProgressBar ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qprogressbar + +--------------------------------------------------------------------------- */ +QProgressBar { + background-color: #c2c7cb; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar:disabled { + background-color: #505050; + border: 1px solid #696968; + color: #696969; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar::chunk { + background-color: #bc1cc8; + color: #7F7F7F; + border-radius: 1.9px; +} + +QProgressBar::chunk:disabled { + background-color: #505050; + color: #696968; + border-radius: 1.9px; +} + +/* ------------------------------------------------------------------------ */ +/* BUTTONS ---------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QPushButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qpushbutton + +--------------------------------------------------------------------------- */ +QPushButton { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051); + color: White; + border: 1px solid #505051; + border-bottom-color: #1e1e1e; /* simulates shadow under the button */ + border-radius: 4px; + padding: 2px; +} + +QPushButton:disabled { + background-color: #7F7F7F; + color: #c2c7cb; + +} + +QPushButton:checked { + background-color: #bc1cc8; + outline: none; +} + +QPushButton:checked:disabled { + background-color: #bc1cc8; + color: #3c3c3c; + outline: none; +} + +QPushButton:checked:selected { + background: #bc1cc8; +} + +QPushButton:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #bc1cc8, stop:1 #920077 ); + color: White; +} + +QPushButton:pressed { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #920077 , stop:1 #bc1cc8); +} + +QPushButton:selected { + background: #920077 ; + color: White; +} + +QPushButton::menu-indicator { + subcontrol-origin: padding; + subcontrol-position: bottom right; + bottom: 4px; +} + +QDialogButtonBox QPushButton { + /* Issue # 194 # 248 - Special case of QPushButton inside dialogs, for better UI */ + min-width: 80px; +} + +/* QToolButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbutton + +--------------------------------------------------------------------------- */ +QToolButton { + background-color: transparent; + color: White; + border-radius: 1px; + padding: 0px; + outline: none; + border: none; + /* The subcontrols below are used only in the DelayedPopup mode */ + /* The subcontrols below are used only in the MenuButtonPopup mode */ + /* The subcontrol below is used only in the InstantPopup or DelayedPopup mode */ +} + +QToolButton:disabled { + background-color: rgba(0, 0, 0, 0.065); + color: #c2c7cb; + border-radius: 1px; + padding: 0px; +} + +QToolButton:checked { + background-color: #bc1cc8; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:disabled { + background-color: #b65555; + color: #c2c7cb; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:hover { + background-color: #bc1cc8; + color: White; +} + +QToolButton:checked:pressed { + background-color: #bc1cc8; +} + +QToolButton:checked:selected { + background: #920077 ; + color: White; +} + +QToolButton:hover { + background-color: #bc1cc8; + color: White; +} + +QToolButton:pressed { + background-color: #920077 ; +} + +QToolButton:selected { + background: #bc1cc8; + color: White; +} + +QToolButton[popupMode="0"] { + /* Only for DelayedPopup */ + padding-right: 20px; +} + +QToolButton[popupMode="1"] { + /* Only for MenuButtonPopup */ + padding-right: 20px; +} +QToolButton[popupMode="0"]::menu-button { + border: none; +} + +QToolButton[popupMode="0"]::menu-button:hover { + border: none; + border-left: 2px solid #fe0000; + border-radius: 0px; +} +QToolButton[popupMode="1"]::menu-button { + border: none; +} + +QToolButton[popupMode="1"]::menu-button:hover { + border: none; + border-left: 2px solid #e5ff00; + border-radius: 0px; +} + +QToolButton[popupMode="2"] { + /* Only for InstantPopup */ + padding-right: 20px; +} + +QToolButton::menu-button { + border-bottom: 0px solid #ffffff; + border-radius: 2px; + /* 16px width + 4px for border = 20px allocated above */ + width: 1.6ex; + padding: 2px; + border-radius: 2px; + border: 0px #000000; +} + +QToolButton::menu-button:hover { + /* background: rgba(0, 0, 0, 0.5);*/ + +} + +QToolButton::menu-button:checked:hover { + /* background: rgba(0, 0, 0, 0.5);*/ +} + +QToolButton::menu-indicator { + /* Exclude a shift for better image */ + subcontrol-position: right bottom; + /* Shift it a bit */ +} + +QToolButton::menu-arrow { + image: url(qss:images_dark-light/more_arrow_light.svg); + width: 1.5ex; + height: 1.5ex; + subcontrol-position: right bottom; + background: transparent; +} +QToolButton::menu-arrow:open { + subcontrol-position: right bottom; + image: url(qss:images_dark-light/more_arrow_light.svg); +} +QToolButton::menu-arrow:hover { + image: url(qss:images_dark-light/more_arrow_light.svg); + background-color: rgba(0, 0, 0, 0.498); + border: 1px solid rgba(0, 0, 0, 0.498); +} + +/* QCommandLinkButton ----------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCommandLinkButton { + background-color: transparent; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; + padding: 0px; + margin: 0px; +} + +QCommandLinkButton:disabled { + background-color: transparent; + color: #c2c7cb; +} + +/* ------------------------------------------------------------------------ */ +/* INPUTS - NO FIELDS ----------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QComboBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QComboBox { + border: 1px solid transparent; + background: #505050; + border-radius: 2px; + selection-background-color: #bc1cc8; + padding-left: 2px; + padding-right: 2px; + /* padding-right = 36; 4 + 16*2 See scrollbar size */ + /* changed to 4px to fix #239 */ + /* Fixes #103, #111 */ + min-height: 1.5em; + /* padding-top: 2px; removed to fix #132 */ + /* padding-bottom: 2px; removed to fix #132 */ + /* min-width: 75px; removed to fix #109 */ + /* Needed to remove indicator - fix #132 */ +} +QComboBox:editable { + background: #505050; +} +QComboBox QAbstractItemView { + border: 0px solid #696968; + border-radius: 0px; + background-color: #505050; + selection-background-color: #bc1cc8; +} + +QComboBox QAbstractItemView:hover { + background-color:#505050; + color: White; +} + +QComboBox QAbstractItemView:selected { + background: #bc1cc8; + color: White; +} + +QComboBox QAbstractItemView:alternate { + background: #3c3c3c; +} + +QComboBox:disabled { + background-color: #7F7F7F; + color: #353535; +} + +QComboBox:hover { + /*background-color: #bc1cc8;*/ + border: 1px solid #bc1cc8; +} + +QComboBox:focus { + border: 1px solid #920077 ; +} + +QComboBox:on { + selection-background-color: #920077 ; +} + +QComboBox::indicator { + border: none; + border-radius: 0px; + background-color: transparent; + selection-background-color: transparent; + color: transparent; + selection-color: #bc1cc8; + /* Needed to remove indicator - fix #132 */ +} + +QComboBox::indicator:alternate { + background: #696968; +} + +QComboBox::item { + /* Remove to fix #282, #285 and MR #288*/ + /*&:checked { + font-weight: bold; + } + + &:selected { + border: 0px solid transparent; + } + */ +} + +QComboBox::item:alternate { + background: #3c3c3c; +} + +QComboBox::drop-down { + subcontrol-origin: padding; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051); + subcontrol-position: top right; + width: 14px; + border-left: 1px solid transparent; +} +QComboBox::drop-down:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #bc1cc8, stop:1 #920077 ); +} + +QComboBox::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + height: 10px; + width: 10px; +} + +QComboBox::down-arrow:on, QComboBox::down-arrow:hover, QComboBox::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_lighter.svg); +} + + +/*================================================================================================== +Tasks panel (custom FreeCAD class) +==================================================================================================*/ +Gui--PropertyEditor--PropertyEditor { + qproperty-groupTextColor: white; + qproperty-groupBackground: #3c3c3c; + border: 0px solid #696968; + +} + +/* Action group */ +QFrame[class="panel"] { +background-color: transparent; /* temporal (transparent background) */ + +} + +QSint--ActionGroup { +padding: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +margin: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +} + +/* Separator line */ +QSint--ActionGroup QFrame[height="1"], +QSint--ActionGroup QFrame[height="2"], +QSint--ActionGroup QFrame[height="3"], +QSint--ActionGroup QFrame[width="1"], +QSint--ActionGroup QFrame[width="2"], +QSint--ActionGroup QFrame[width="3"] { +border-color: rgba(0,0,0,60); +} + +/* Panel header */ +QSint--ActionGroup QFrame[class="header"] { +border-top: 1px solid #696968; +border-left: 1px solid #696968; +border-right: 1px solid #696968; +background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051); +border-top-left-radius: 3px; +border-top-right-radius: 3px; +border-bottom-left-radius: 0px; +border-bottom-right-radius: 0px; +margin: 0px; +padding: 0px; +} + +QSint--ActionGroup QFrame[class="header"]:hover { +background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #bc1cc8, stop:1 #920077 ); +} + +QSint--ActionGroup QToolButton[class="header"] { +color: white; /* Task Panel Header text color */ +text-align: left; +font-weight: bold; +border: none; +margin: 0px; +padding: 0px; +} + +QSint--ActionGroup QFrame[class="header"] QLabel { +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_light.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; +} + +QSint--ActionGroup QFrame[class="header"] QLabel:hover { +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_lighter.svg); +} + +QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"] { +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_light.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; +} + +QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"]:hover { +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_lighter.svg); +} + +QSint--ActionGroup QFrame[class="content"] { +background-color: transparent; /* Task Panel background color */ +margin: 0px; +padding: 0px; +border-bottom: 1px solid #696968; +border-left: 1px solid #696968; +border-right: 1px solid #696968; +border-top-left-radius: 0px; +border-top-right-radius: 0px; +border-bottom-left-radius: 3px; +border-bottom-right-radius: 3px; +} + +QSint--ActionGroup QFrame[class="content"] > QWidget { +background-color: #7F7F7F; /* Task Panel background color */ +} + +/* Fixs for tabs inside Task Panel */ +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:top:selected { +border-bottom-color: #bc1cc8; /* same as Task Panel background color */ +} + +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:bottom:selected { +border-top-color: #bc1cc8; /* same as Task Panel background color */ +} + +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:right:selected { +border-right-color: #bc1cc8; /* same as Task Panel background color */ +} + +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:left:selected { +border-left-color: #bc1cc8; /* same as Task Panel background color */ +} + +/* Fix for buttons with icons that showed cropped (still not happy with result) */ +QSint--ActionGroup QFrame[class="content"] > QWidget > QPushButton { +padding: 2px; /* bigger padding crops text and icons... */ +margin: 0px; +} + +/* Fix for lists inside task panels */ /* sketcher constraints list */ +QSint--ActionGroup QFrame[class="content"] QTreeView, +QSint--ActionGroup QFrame[class="content"] QListView, +QSint--ActionGroup QFrame[class="content"] QTableView { +color: white; +background-color: #505050; +} + + +/* found inside Part Design Workbench and "make a draft on a face" Task panel options */ +QSint--ActionGroup QFrame[class="content"] QToolButton { + color: white; + text-align: center; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051); + border: 0px solid #adadad; + padding: 1px 1px; /* different than regular QPushButton */ + margin: 0px; /* different than regular QPushButton */ + min-height: 16px; /* same as QTabBar QPushButton min-width */ + border-radius: 1px; +} + +QSint--ActionGroup QFrame[class="content"] QToolButton:hover{ + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #bc1cc8, stop:1 #920077 ); + +} +QSint--ActionGroup QFrame[class="content"] QToolButton:focus { + border: 1px solid #920077 ; +} + +QSint--ActionGroup QFrame[class="content"] QToolButton:disabled, +QSint--ActionGroup QFrame[class="content"] QToolButton:disabled:checked { + color: #696969; + background-color: #505050; +} + +QSint--ActionGroup QFrame[class="content"] QToolButton:pressed { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #bc1cc8, stop:1 #920077 ); + +} + +/* QSlider ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qslider + +--------------------------------------------------------------------------- */ +QSlider:disabled { + background: #7F7F7F; +} + +QSlider:focus { + border: 1px solid #920077 ; +} + +QSlider::groove:horizontal { + background: #7F7F7F; + border: 1px solid #696968; + height: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::groove:vertical { + background: #bc1cc8; + border: 1px solid #696968; + width: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::add-page:vertical { + background: #bc1cc8; + border: 1px solid #696968; + width: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::add-page:vertical :disabled { + background: #696968; +} + +QSlider::sub-page:horizontal { + background: #bc1cc8; + border: 1px solid #0073ff; + height: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::sub-page:horizontal:disabled { + background: #bc1cc8; +} + +QSlider::handle:horizontal { + background: #353535; + border: 1px solid #7F7F7F; + width: 8px; + height: 8px; + margin: -8px 0px; + border-radius: 1.9px; +} + +QSlider::handle:horizontal:hover { + background: #bc1cc8; + border: 1px solid #bc1cc8; +} + +QSlider::handle:horizontal:focus { + border: 1px solid #920077 ; +} + +QSlider::handle:vertical { + background: #c2c7cb; + border: 1px solid #696968; + width: 8px; + height: 8px; + margin: 0 -8px; + border-radius: 1.9px; +} + +QSlider::handle:vertical:hover { + background: #bc1cc8; + border: 2px solid #bc1cc8; +} + +QSlider::handle:vertical:focus { + border: 1px solid #920077 ; +} + +/* QLineEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlineedit + +--------------------------------------------------------------------------- */ +QLineEdit { + background-color: #505050; + padding-top: 2px; + /* This QLineEdit fix 103, 111 */ + padding-bottom: 2px; + /* This QLineEdit fix 103, 111 */ + padding-left: 4px; + padding-right: 4px; + border-style: solid; + border: 1px solid #696968; + border-radius: 2px; + color: White; +} + +QLineEdit:disabled { + background-color: #7F7F7F; + color: #c2c7cb; +} + +QLineEdit:hover { + border: 1px solid #bc1cc8; + color: White; +} + +QLineEdit:focus { + border: 2px solid #920077 ; +} + +QLineEdit:selected { + background-color: #bc1cc8; + color: white; +} + +/* QTabWiget -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabWidget { + padding: 2px; + selection-background-color: #bc1cc8; +} + +QTabWidget QWidget { + /* Fixes #189 */ + border-radius: 1.9px; +} + +QTabWidget::pane { + margin: 0px; + /* Fixes double border inside pane with pyqt5 */ + padding: 0px; +} + +QTabWidget::pane:selected { + background-color: #bc1cc8; + border: 1px solid #346792; +} +/* QTabBar ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabBar, QDockWidget QTabBar { + qproperty-drawBase: 0; + /* left: 5px; move to the right by 5px - removed for fix */ +} + +QTabBar::close-button, QDockWidget QTabBar::close-button { + border: 0; + margin: 0; + padding: 1px; + image: url(qss:images_dark-light/close_light.svg); +} + +QTabBar::close-button:hover, QDockWidget QTabBar::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); + /*background-color: rgba(255, 0, 0, 0.3);*/ +} + +QTabBar::close-button:pressed, QDockWidget QTabBar::close-button:pressed { + image: url(qss:images_dark-light/close_.svg); +} + +QTabBar::tab, QDockWidget QTabBar::tab { + /* !selected and disabled ----------------------------------------- */ + /* selected ------------------------------------------------------- */ + padding: 4px; +} + +QTabBar::tab:top:selected:disabled, QDockWidget QTabBar::tab:top:selected:disabled { + color: #f5f5f5; +} + +QTabBar::tab:bottom:selected:disabled, QDockWidget QTabBar::tab:bottom:selected:disabled { + color: #f5f5f5; +} + +QTabBar::tab:left:selected:disabled, QDockWidget QTabBar::tab:left:selected:disabled { + color: #f5f5f5; +} + +QTabBar::tab:right:selected:disabled, QDockWidget QTabBar::tab:right:selected:disabled { + color: #f5f5f5; +} + +QTabBar::tab:top:!selected:disabled, QDockWidget QTabBar::tab:top:!selected:disabled { + color: #f5f5f5; +} + +QTabBar::tab:bottom:!selected:disabled, QDockWidget QTabBar::tab:bottom:!selected:disabled { + color: #f5f5f5; + +} + +QTabBar::tab:left:!selected:disabled, QDockWidget QTabBar::tab:left:!selected:disabled { + color: #f5f5f5; + +} + +QTabBar::tab:right:!selected:disabled, QDockWidget QTabBar::tab:right:!selected:disabled { + color: #f5f5f5; +} + +QTabBar::tab:top:!selected, QDockWidget QTabBar::tab:top:!selected { + color: #f5f5f5; +} + +QTabBar::tab:bottom:!selected, QDockWidget QTabBar::tab:bottom:!selected { + color: #f5f5f5; +} + +QTabBar::tab:left:!selected, QDockWidget QTabBar::tab:left:!selected { + color: #f5f5f5; +} + +QTabBar::tab:right:!selected, QDockWidget QTabBar::tab:right:!selected { + color: #f5f5f5; +} + +QTabBar::tab:top, QDockWidget QTabBar::tab:top { + color: #f5f5f5; + margin-left: 0px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + min-width: 5px; + border-bottom: 1px solid #696969; /* same as tab content background color */ + border-radius: 0px; +} + +QTabBar::tab:top:selected, QDockWidget QTabBar::tab:top:selected { + color: white; + border-top: 4px solid #bc1cc8; /* selection color */ + border-bottom: 1px solid transparent; /* same as tab content background color */ + border-left: 1px solid #696969; + border-right: 1px solid #696969; + } + +QTabBar::tab:top:!selected:hover, QDockWidget QTabBar::tab:top:!selected:hover { + /*border: 1px solid #bc1cc8;*/ + border: 0px solid #bc1cc8; + background-color: #bc1cc8; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; +} + +QTabBar::tab:bottom, QDockWidget QTabBar::tab:bottom { + color: #f5f5f5; + margin-left: 0px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + min-width: 5px; + border-top: 1px solid #696969; /* same as tab content background color */ + border-radius: 0px; +} + +QTabBar::tab:bottom:selected, QDockWidget QTabBar::tab:bottom:selected { + color: white; + border-bottom: 4px solid #bc1cc8; /* selection color */ + border-top: 1px solid transparent; /* same as tab content background color */ + border-left: 1px solid #696969; + border-right: 1px solid #696969; + +} + +QTabBar::tab:bottom:!selected:hover, QDockWidget QTabBar::tab:bottom:!selected:hover { +/*border: 1px solid #bc1cc8;*/ + border: 0px solid #bc1cc8; + background-color: #bc1cc8; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; +} + +QTabBar::tab:left, QDockWidget QTabBar::tab:left { + background-color: #7F7F7F; + margin-top: 2px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + border-radius: 4px; + min-height: 5px; +} + +QTabBar::tab:left:selected, QDockWidget QTabBar::tab:left:selected { + background-color: #7F7F7F; + border: 0px solid #920077 ; +} + +QTabBar::tab:left:!selected:hover, QDockWidget QTabBar::tab:left:!selected:hover { + border: 0px solid #bc1cc8; + background-color: #bc1cc8; + /* Fixes different behavior #271 */ + margin-right: 0px; + padding-right: -1px; +} + +QTabBar::tab:right, QDockWidget QTabBar::tab:right { + background-color: #7F7F7F; + margin-top: 2px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + min-height: 5px; + border: 10px; +} + +QTabBar::tab:right:selected, QDockWidget QTabBar::tab:right:selected { + background-color: #7F7F7F; + border: 0px solid #920077 ; +} + +QTabBar::tab:right:!selected:hover, QDockWidget QTabBar::tab:right:!selected:hover { + border: 0px solid #bc1cc8; + background-color: #bc1cc8; + /* Fixes different behavior #271 */ + margin-left: 0px; + padding-left: 0px; +} + +QTabBar QToolButton, QDockWidget QTabBar QToolButton { + /* Fixes #136 */ + background-color: #7F7F7F; + height: 12px; + width: 12px; +} + +QTabBar QToolButton:pressed, QDockWidget QTabBar QToolButton:pressed { + border: 0px solid #bc1cc8; + background-color: #bc1cc8; +} + +QTabBar QToolButton:pressed:hover, QDockWidget QTabBar QToolButton:pressed:hover { + border: 0px solid #bc1cc8; + background-color: #bc1cc8; +} + +QTabBar QToolButton::left-arrow:enabled, QDockWidget QTabBar QToolButton::left-arrow:enabled { + image: url(qss:images_dark-light/left_arrow_lighter.svg); +} + +QTabBar QToolButton::left-arrow:disabled, QDockWidget QTabBar QToolButton::left-arrow:disabled { + image: url(qss:images_dark-light/left_arrow_disabled_light.svg); +} + +QTabBar QToolButton::right-arrow:enabled, QDockWidget QTabBar QToolButton::right-arrow:enabled { + image: url(qss:images_dark-light/right_arrow_lighter.svg); +} + +QTabBar QToolButton::right-arrow:disabled, QDockWidget QTabBar QToolButton::right-arrow:disabled { + image: url(qss:images_dark-light/right_arrow_disabled_light.svg); +} + +/* QDockWiget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QDockWidget { + background-color: #7F7F7F; + border: 1px solid #505051; + border-radius: 1.9px; + titlebar-close-icon: url(qss:images_dark-light/transparent.svg); + titlebar-normal-icon: url(qss:images_dark-light/transparent.svg); +} + +QDockWidget::title { + /* Better size for title bar */ + padding: 3px; + spacing: 4px; + border: none; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051); + text-align: center; + font-weight: bold; +} + +QDockWidget::close-button { + icon-size: 10px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/close_light.svg); +} + +QDockWidget::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); +} + +QDockWidget::close-button:pressed { + image: url(qss:images_dark-light/close_light.svg); +} + +QDockWidget::float-button { + icon-size: 12px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/undock_light.svg); +} + +QDockWidget::float-button:hover { + /*background-color: #bc1cc8;*/ + image: url(qss:images_dark-light/undock_blue.svg); +} + +QDockWidget::float-button:pressed { + image: url(qss:images_dark-light/undock_light.svg); +} + +/* QTreeView QListView QTableView ----------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtreeview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlistview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtableview + +--------------------------------------------------------------------------- */ +QTreeView::branch { + background: transparent; +} + +QTreeView::branch:has-siblings:!adjoins-item { + border-image: url(qss:images_dark-light/branch_vline_light.svg) 0; +} + +QTreeView::branch:has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_more_light.svg) 0; +} + +QTreeView::branch:!has-children:!has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_end_light.svg) 0; +} + +QTreeView::branch:closed:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_closed_light.svg) 0; +} + +QTreeView::branch:has-children:!has-siblings:closed { + border-image: url(qss:images_dark-light/branch_end_closed_light.svg) 0; +} + +QTreeView::branch:open:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_open_light.svg) 0; +} + +QTreeView::branch:open:has-children:!has-siblings { + border-image: url(qss:images_dark-light/branch_end_open_light.svg) 0; +} + +QTreeView::indicator:checked, +QListView::indicator:checked, +QTableView::indicator:checked, +QColumnView::indicator:checked { + image: url(qss:images_dark-light/checkbox_light.svg); +} + +QTreeView::indicator:checked:hover, QTreeView::indicator:checked:focus, QTreeView::indicator:checked:pressed, +QListView::indicator:checked:hover, +QListView::indicator:checked:focus, +QListView::indicator:checked:pressed, +QTableView::indicator:checked:hover, +QTableView::indicator:checked:focus, +QTableView::indicator:checked:pressed, +QColumnView::indicator:checked:hover, +QColumnView::indicator:checked:focus, +QColumnView::indicator:checked:pressed { + image: url(qss:images_dark-light/checkbox_light_hover.svg); +} + +QTreeView::indicator:unchecked, +QListView::indicator:unchecked, +QTableView::indicator:unchecked, +QColumnView::indicator:unchecked { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QTreeView::indicator:unchecked:hover, QTreeView::indicator:unchecked:focus, QTreeView::indicator:unchecked:pressed, +QListView::indicator:unchecked:hover, +QListView::indicator:unchecked:focus, +QListView::indicator:unchecked:pressed, +QTableView::indicator:unchecked:hover, +QTableView::indicator:unchecked:focus, +QTableView::indicator:unchecked:pressed, +QColumnView::indicator:unchecked:hover, +QColumnView::indicator:unchecked:focus, +QColumnView::indicator:unchecked:pressed { + image: url(qss:images_dark-light/checkbox_unchecked_hover_light.svg); +} + +QTreeView::indicator:indeterminate, +QListView::indicator:indeterminate, +QTableView::indicator:indeterminate, +QColumnView::indicator:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QTreeView::indicator:indeterminate:hover, QTreeView::indicator:indeterminate:focus, QTreeView::indicator:indeterminate:pressed, +QListView::indicator:indeterminate:hover, +QListView::indicator:indeterminate:focus, +QListView::indicator:indeterminate:pressed, +QTableView::indicator:indeterminate:hover, +QTableView::indicator:indeterminate:focus, +QTableView::indicator:indeterminate:pressed, +QColumnView::indicator:indeterminate:hover, +QColumnView::indicator:indeterminate:focus, +QColumnView::indicator:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QTreeView, +QListView, +QTableView, +QColumnView { + background-color: #7F7F7F; /* background of a lot of stuff including spreadsheets.*/ + border: 0px solid #696968; + color: White; + gridline-color: #696968; + border-radius: 0px; +} + +QTableView, +QListView { + background-color: rgba(0, 0, 0, 0.232); /* background of a lot of stuff including spreadsheets.*/ +} + + +QTreeView:disabled, +QListView:disabled, +QTableView:disabled, +QColumnView:disabled { + background-color: #505050; + color: #c2c7cb; +} + +QTreeView:selected, +QListView:selected, +QTableView:selected, +QColumnView:selected { + background-color: #bc1cc8; + color: White; +} + +QTreeView:focus, +QListView:focus, +QTableView:focus, +QColumnView:focus { + border: 1px solid #920077 ; +} + +QTreeView::item:pressed, +QListView::item:pressed, +QTableView::item:pressed, +QColumnView::item:pressed { + background-color: #bc1cc8; +} + +QTreeView::item:selected:active, +QListView::item:selected:active, +QTableView::item:selected:active, +QColumnView::item:selected:active { + background-color: #bc1cc8; +} + +QTreeView::item:selected:!active, +QListView::item:selected:!active, +QTableView::item:selected:!active, +QColumnView::item:selected:!active { + color: White; + background-color: #353535; +} + +QTreeView::item:!selected:hover, +QListView::item:!selected:hover, +QTableView::item:!selected:hover, +QColumnView::item:!selected:hover { + outline: 0; + color: White; + background-color: #bc1cc8; +} + +QTableCornerButton::section { + background-color: #7F7F7F; + border: 1px transparent #696968; + border-radius: 0px; +} + +QTableView::item { + color: white; +} +QTableView { + /*qproperty-AliasedCellBackgroundColor: #f700ff;*/ + /*qproperty-aliasBgColor: #f700ff;*/ +} + +/* QHeaderView ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qheaderview + +--------------------------------------------------------------------------- */ +QHeaderView { + background-color: transparent; + text-align: center; +} + +QHeaderView:disabled { + background-color: #7f7f7f; + color: rgb(174, 174, 174); +} + +QHeaderView::section { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051); + color: White; + border: 1px solid #505051; + font-size: 13px; + font-weight: bold; +} + +QHeaderView::section::horizontal { + padding-top: 1px; + padding-bottom: 1px; + padding-left: 5px; + padding-right: 0px; +} + +QHeaderView::section::horizontal::first, QHeaderView::section::horizontal::only-one { + border-left: 0px solid #696968; +} + +QHeaderView::section::horizontal:disabled { + color: #353535; +} + +QHeaderView::section::vertical { + padding-top: 1px; + padding-bottom: 0; + padding-left: 1px; + padding-right: 0px; + border-top: 0px solid #696968; +} + +QHeaderView::section::vertical::first, QHeaderView::section::vertical::only-one { + border-top: 2px solid #505051; +} + +QHeaderView::section::vertical:disabled { + border-top: 2px solid #505051; +} + +QHeaderView::down-arrow { + /* Those settings (border/width/height/background-color) solve bug */ + /* transparent arrow background and size */ + background-color: transparent; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/down_arrow_light.svg); +} + +QHeaderView::up-arrow { + background-color: transparent; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/up_arrow_light.svg); +} + +/* QToolBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbox +used in PATH + +--------------------------------------------------------------------------- */ +QToolBox { + padding: 0px; + border: 1px solid #696969; + border-radius: 4px; + background-color: transparent; +} + +QToolBox:selected { + padding: 0px; + border: 0px solid #bc1cc8; +} + +QToolBox::tab { + background-color: transparent; + border: 0px solid #696969; + color: white; + background-image: url(qss:images_dark-light/down_arrow_lighter.svg); + background-repeat: none; + background-position: center left; +} + +QToolBox::tab:disabled { + color: #696969; +} + +QToolBox::tab:selected { + background-color: #696969; + background-image: url(qss:images_dark-light/transparent.svg); + padding-right: 5px; + background-repeat: none; +} + +QToolBox::tab:selected:disabled { + background-color: #696969; + border-bottom: 0px solid #cccccc; + color: white; +} + +QToolBox::tab:!selected { + +} + +QToolBox::tab:!selected:disabled { + background-color: #7F7F7F; +} + +QToolBox::tab:hover { + background-color: #bc1cc8; + } + +QToolBox QScrollArea QWidget QWidget { + padding: 0px; + border: 0px; + background-color: transparent; +} + +/* QFrame ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe +https://doc.qt.io/qt-5/qframe.html#-prop +https://doc.qt.io/qt-5/qframe.html#details +https://stackoverflow.com/questions/14581498/qt-stylesheet-for-hline-vline-color + +--------------------------------------------------------------------------- */ +/* (dot) .QFrame fix #141, #126, #123 */ +.QFrame { + border-radius: 0px; + border: 0px solid #696968; + background-color: #696969; + /* No frame */ + /* HLine */ + /* HLine */ +} + +.QFrame[frameShape="0"] { + border-radius: 1.9px; + border: 1px solid #696968; +} + +.QFrame[frameShape="4"] { + max-height: 1px; + border: none; + background-color: #696968; +} + +.QFrame[frameShape="5"] { + max-width: 1px; + border: none; + background-color: #7F7F7F; +} + +/* QSplitter -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsplitter + +--------------------------------------------------------------------------- */ +QSplitter { + background-color: #3c3c3c; + spacing: 1px; + padding: 1px; + margin: 1px; +} + +QSplitter::handle { + margin: 0px 0px; + padding: 0px; +} + +QSplitter::handle:horizontal { + background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + width: 1px; +} + +QSplitter::handle:vertical { + background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + height: 1px; +} + +QSplitter::handle:hover { + background-image: url(qss:images_dark-light/splitter_horizontal_light.svg); + background-position: center center; + background-repeat: none; + background-color: #bc1cc8; +} + +/* QDateEdit, QDateTimeEdit ----------------------------------------------- + +--------------------------------------------------------------------------- */ +QDateEdit, QDateTimeEdit { + selection-background-color: #bc1cc8; + border-style: solid; + border: 1px solid #696968; + border-radius: 1.9px; + /* This fixes 103, 111 */ + padding-top: 2px; + /* This fixes 103, 111 */ + padding-bottom: 2px; + padding-left: 4px; + padding-right: 4px; + min-width: 10px; +} + +QDateEdit:on, QDateTimeEdit:on { + selection-background-color: #bc1cc8; +} + +QDateEdit::drop-down, QDateTimeEdit::drop-down { + subcontrol-origin: padding; + subcontrol-position: top right; + width: 12px; + border-left: 1px solid #696968; +} + +QDateEdit::down-arrow, QDateTimeEdit::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + height: 8px; + width: 8px; +} + +QDateEdit::down-arrow:on, QDateEdit::down-arrow:hover, QDateEdit::down-arrow:focus, QDateTimeEdit::down-arrow:on, QDateTimeEdit::down-arrow:hover, QDateTimeEdit::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_lighter.svg); +} + +QDateEdit QAbstractItemView, QDateTimeEdit QAbstractItemView { + background-color: #7F7F7F; + border-radius: 2px; + border: 1px solid #696968; + selection-background-color: #bc1cc8; +} + +/* QAbstractView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractView:hover { + border: 1px solid #bc1cc8; + color: White; +} + +QAbstractView:selected { + background: #bc1cc8; + color: White; +} + +/* PlotWidget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +PlotWidget { + /* Fix cut labels in plots #134 */ + padding: 0px; +} \ No newline at end of file diff --git a/src/Gui/Stylesheets/Darker-blue.qss b/src/Gui/Stylesheets/Darker-blue.qss index 257d91bf7d..a7f141a973 100644 --- a/src/Gui/Stylesheets/Darker-blue.qss +++ b/src/Gui/Stylesheets/Darker-blue.qss @@ -1,71 +1,40 @@ /* ABOUT ============================================================================================================ -version 2.22 -Qt theme (stylesheet) specially developed for FreeCAD (https://www.freecad.org/). -It might work with other software that uses Qt styling. +Revised stylesheet based on the original from Pablo Gil Fernández made by MisterMaker - -LICENSE +KNOWN BUGS and TO DO ============================================================================================================ -Copyright (c) 2019 Pablo Gil Fernández +Please, follow the link to get updated information: +https://forum.freecad.org/viewtopic.php?t=78431 -This work is licensed under the Creative Commons Attribution-ShareAlike 4.0 International License. -To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/4.0/. - - -INSTALLATION +INSTALLATION WHEN NECESSARY ============================================================================================================ 1) Place the .qss files and /images/ folder in the path that fits your OS: OSX = /Users/[YOUR_USER_NAME]/Library/Preferences/FreeCAD/Gui/Stylesheets/ WINDOWS = C:/[INSTALLATION_PATH]/FreeCAD/data/Gui/Stylesheets/ LINUX = /home/[YOUR_USER_NAME]/.FreeCAD/Gui/Stylesheets/ - -CUSTOMIZATION ============================================================================================================ -If you would like to change the overall look/style of the theme, just find and replace following colors in the whole file: - BACKGROUND (darker to lighter) - black - #1e1e1e - #2a2a2a = background - #333333 - #424242 - #3c3c3c - #444444 = main background color - #545454 = secondary - #787878 - #a0a0a0 - #b4b4b4 - #bebebe - #c8c8c8 - #d2d2d2 - #e0e0e0 - #f5f5f5 - white - - SELECTION (darker to lighter) - #1b3774 - #2053c0 - #3874f2 - #5e90fa = main selection color - #6f9efa = used to build QSpinBox up and down buttons, it's used as color in the middle - #7cabf9 - #adc5ed - #cbd8e6 +TO MODIFY USE THESE COLORS: + #2053c0 + #1b3774 -KNOWN BUGS and TO DO -============================================================================================================ -Please, follow the link to get updated information: https://forum.freecad.org/viewtopic.php?f=10&t=12417 +See Qt documentation: -*/ + - https://doc.qt.io/qt-5/stylesheet.html + - https://doc.qt.io/qt-5/stylesheet-reference.html + - https://doc.qt.io/qt-5/stylesheet-examples.html + +--------------------------------------------------------------------------- */ -/*================================================================================================== -Reset elements -==================================================================================================*/ -/* Resetting everything helps to unify styles across different operating systems */ +/* Reset elements ------------------------------------------------------------ + +Resetting everything helps to unify styles across different operating systems + +--------------------------------------------------------------------------- */ * { padding: 0px; margin: 0px; @@ -73,2273 +42,2492 @@ Reset elements border-style: none; border-image: none; outline: 0; - color: #f5f5f5; /* Default color for labels and different text elements that usually use dark colors */ -} + } -/* specific reset for elements inside QToolBar */ -QToolBar * { + /* specific reset for elements inside QToolBar */ + QToolBar * { margin: 0px; padding: 0px; -} + } + /*hacks */ + Gui--PropertyEditor--PropertyEditor QLineEdit:read-only, + Gui--PropertyEditor--PropertyEditor QLineEdit:disabled, + Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:read-only, + Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:disabled { + color: transparent; + border-color: transparent; + background-color: transparent; + selection-color: transparent; + selection-background-color: transparent; -/*================================================================================================== -Main window -==================================================================================================*/ -QMainWindow, -QDialog, -QDockWidget, -QToolBar { - background-color: #444444; /* main background color */ -} + } + Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel, + Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel:disabled { + color: transparent; + background-color: transparent; + border: none; + border-radius: 1px; + margin: 0px; + padding: 0px; + } -QMdiArea { + Gui--PropertyEditor--PropertyEditor QSpinBox, + Gui--PropertyEditor--PropertyEditor QDoubleSpinBox, + Gui--PropertyEditor--PropertyEditor QAbstractSpinBox, + Gui--PropertyEditor--PropertyEditor QLineEdit, + Gui--PropertyEditor--PropertyEditor QComboBox { + margin-left: 0px; + margin-right: 0px; + padding-top: 0px; + padding-bottom: 0px; + + } + + /*================================================================================================== + Main window + ==================================================================================================*/ + QMainWindow, + QDialog, + QDockWidget, + QToolBar { + background-color: #444444; /* main background color */ + } + + QMdiArea { background-image: url(qss:images_dark-light/background_freecad_dark.svg); background-position: center center; background-repeat: no-repeat; -} + } + /*navgation src/Mod/Tux/NavigationIndicatorGui.py */ + Gui--NavigationIndicatorGui--BlenderNavigationStyle { + /*QAction#a4 {*/ + qproperty-icon: url(:/icons/icons/NavigationBlender_light.svg); + } + /*===== + /* QWidget ---------------------------------------------------------------- + --------------------------------------------------------------------------- */ + QWidget { + background-color: #444444; + border: 0px solid #696968; + padding: 0px; + color: White; + selection-background-color: #2053c0; + selection-color: White; + } -/*================================================================================================== -Sub windows -==================================================================================================*/ -QMdiSubWindow { - border:1px solid #333333; - margin-top: 30px; - margin-left: 4px; - margin-right: 4px; - margin-bottom:4px; -} + QWidget:disabled { + background-color: transparent; + color: #c2c7cb; + selection-background-color: #2053c0; + selection-color: #c2c7cb; + } - -/*================================================================================================== -MENUS -==================================================================================================*/ -QMenuBar, -QMenuBar::item { - color: #f5f5f5; - background-color: #444444; /* main background color */ -} - -QMenu, -QMenu::item { - color: #f5f5f5; - background-color: #2a2a2a; - text-decoration: none; -} - -QMenuBar::item:selected, -QMenuBar::item:pressed, -QMenu::item:selected, -QMenu::item:pressed { - color: #ffffff; + QWidget::item:selected { background-color: #2053c0; -} + } -QMenu::right-arrow { - width: 10px; - height: 10px; - image:url(qss:images_dark-light/right_arrow_dark.svg); - margin-right: 2px; -} + /* Causes issue with colorselector. + QWidget::item:hover:!selected { + background-color: #2053c0; + }*/ -QMenu::right-arrow:selected { - image:url(qss:images_dark-light/right_arrow_lighter.svg); -} + /* QMainWindow ------------------------------------------------------------ -QMenu::item { - padding: 2px 4px; /* make room for icon at left */ - border: 1px solid transparent; /* reserve space for selection border */ -} + This adjusts the splitter in the dock widget, not qsplitter + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmainwindow -QMenu::icon { - margin-left: 1px; - margin-right: 1px; -} - -QMenu::icon:checked { /* appearance of a 'checked' icon */ - background: #2053c0; - border: 2px #2053c0; - position: absolute; - border-radius: 2px; -} - -QMenu::separator { - height: 1px; - background-color: rgba(255,255,255,30); - margin: 6px 4px; -} - -QMenu::indicator:non-exclusive:checked { - color: white; -} - -/* Fix for elements inside a drop-down menu */ -QMenu QRadioButton, -QMenu QCheckBox, -QMenu QPushButton, -QMenu QToolButton { - color: white; /* same as regular QRadioButton and QCheckBox */ -} - -QMenu QRadioButton:hover, -QMenu QCheckBox:hover, -QMenu QPushButton:hover, -QMenu QToolButton:hover, -QMenu QPushButton:pressed, -QMenu QToolButton:pressed, -QMenu QPushButton:selected, -QMenu QToolButton:selected { - color: white; - background-color: #2053c0; /* same as QMenu::item:selected and QMenu::item:pressed */ -} - -QMenu QRadioButton:disabled, -QMenu QCheckBox:disabled { - color: #f5f5f5; -} - -QMenu QRadioButton::indicator:disabled, -QMenu QCheckBox::indicator:disabled { - color: #f5f5f5; - background-color: transparent; - border: 1px solid #f5f5f5; -} - - -/*================================================================================================== -Tool bar -==================================================================================================*/ -QToolBar { - padding: 2px; -} - -QToolBar::handle:top, -QToolBar::handle:bottom, -QToolBar::handle:horizontal { - background-image: url(qss:images_dark-light/Hmovetoolbar_light.svg); - width: 10px; - margin: 4px 2px; - background-position: top right; - background-repeat: repeat-y; -} - -QToolBar::handle:left, -QToolBar::handle:right, -QToolBar::handle:vertical { - background-image: url(qss:images_dark-light/Vmovetoolbar_light.svg); - height: 10px; - margin: 2px 4px; - background-position: left bottom; - background-repeat: repeat-x; -} - -QToolBar::separator:top, -QToolBar::separator:bottom, -QToolBar::separator:horizontal { - width: 1px; - margin: 6px 4px; - background-color: rgba(0,0,0,30); -} - -QToolBar::separator:left, -QToolBar::separator:right, -QToolBar::separator:vertical { - height: 1px; - margin: 4px 6px; - background-color: rgba(0,0,0,30); -} - - -/*================================================================================================== -Group box -==================================================================================================*/ -QGroupBox { - color: rgba(255,255,255,120); - border:1px solid rgba(255,255,255,20); /* lighter than its own border-color */; - border-radius: 3px; - margin-top: 10px; - padding: 6px; - background-color: rgba(255,255,255,0); -} - -QGroupBox:title { - top: -8px; - left: 12px; -} - -/* NOTE: QGroupBox checkboxes are styles with regular ones so that the all get the same style */ -/* QGroupBox::indicator { - width: 13px; - height: 13px; -} - -QGroupBox::indicator:unchecked { - image: url(:/images/checkbox_unchecked.png); -} */ - - -/*================================================================================================== -Tooltip -==================================================================================================*/ -QToolTip { - color: #ffffff; - background-color: #1e1e1e; - /*opacity: 90%; doesn't correctly work */ - padding: 4px; - border-radius: 3px; /* has no effect */ -} - - -/*================================================================================================== -Dock widget -==================================================================================================*/ -QDockWidget { - color: #a0a0a0; - titlebar-close-icon: url(qss:images_dark-light/close_light.svg); - titlebar-normal-icon: url(qss:images_dark-light/undock_light.svg); -} - -QDockWidget::title { - text-align: center; - background-color: rgba(0,0,0,40); - border: 4px solid #444444; /* fix to simulate margin between this :title and tabs */ /* same as main background color */ - border-radius: 6px; /* bigger than normal due to previous border fix */ - padding: 4px 0px; /* also needed because of previous border fix */ -} - -QDockWidget::close-button, -QDockWidget::float-button { - border: none; - background: transparent; - border-radius: 3px; - subcontrol-origin: padding; - subcontrol-position: right center; -} - -QDockWidget::close-button { - right: 4px; -} - -QDockWidget::float-button { - right: 22px; -} - -QDockWidget::close-button:hover, -QDockWidget::float-button:hover { - background-color: rgba(0,0,0,60); -} - -QDockWidget::close-button:pressed, -QDockWidget::float-button:pressed { - background-color: rgba(0,0,0,120); -} - -/* fix for Python Console (probably there is a smarter way to arrive to it) */ -QDockWidget > QFrame { - background-color: #787878; - border: 1px solid #333333; -} - - -/*================================================================================================== -Progress bar -==================================================================================================*/ -QProgressBar, -QProgressBar:horizontal { - color: white; - background-color: rgba(0,0,0,70); - text-align: center; - border: 1px solid rgba(0,0,0,140); + --------------------------------------------------------------------------- */ + QMainWindow::separator { + /*background-color: #3c3c3c;*/ + border: 0px solid #696968; + spacing: 0px; padding: 1px; - border-radius: 3px; -} -QProgressBar::chunk, -QProgressBar::chunk:horizontal { - background-color: qlineargradient(spread:pad, x1:1, y1:0.545, x2:1, y2:0, stop:0 #3874f2, stop:1 #5e90fa); - border-radius: 3px; -} + } + QMainWindow::separator:vertical:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,stop:0.2 transparent,stop:0.5 #2053c0, stop:0.8 transparent); + /*background-color: #2053c0;*/ + image: url(qss:images_dark-light/splitter_vertical_light.svg); + } -/*================================================================================================== -Scroll -==================================================================================================*/ -QAbstractScrollArea { - border-radius: 2px; - background-color: transparent; -} + QMainWindow::separator:horizontal:hover { + background-color: qlineargradient(x1:0, y1:0, x2:1, y2:0,stop:0.2 transparent,stop:0.5 #2053c0, stop:0.8 transparent); + /*background-color: #2053c0;*/ + image: url(qss:images_dark-light/splitter_horizontal_light.svg); + } -QAbstractScrollArea::corner { + QMainWindow::separator:horizontal { + width: 4px; + margin-top: 0.1px; + margin-bottom: 0.1px; + /* image: url(qss:images_dark-light/splitter_horizontal_dark.svg);*/ + } + + QMainWindow::separator:vertical { + height: 4px; + margin-left: 0.1px; + margin-right: 0.1px; + /* image: url(qss:images_dark-light/splitter_vertical_dark.svg);*/ + } + + /* QToolTip --------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtooltip + + --------------------------------------------------------------------------- */ + QToolTip { + background-color: #1c1b22; + color: White; + /* If you remove the border property, background stops working on Windows */ border: none; - background-color: transparent; -} + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Remove opacity, fix #174 - may need to use RGBA */ + } -QScrollBar:horizontal { - background-color: transparent; - height: 15px; - margin: 0px; -} + /* QStatusBar ------------------------------------------------------------- -QScrollBar::handle:vertical, -QScrollBar::handle:horizontal { - background-color: rgba(255,255,255,80); -} + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qstatusbar -QScrollBar::handle:vertical:hover, -QScrollBar::handle:horizontal:hover { - background-color: rgba(255,255,255,100); -} + --------------------------------------------------------------------------- */ + QStatusBar { + border: 0px solid #3c3c3c; + /* Fixes Spyder #9120, #9121 */ + background: #444444; + /* Fixes #205, white vertical borders separating items */ + } -QScrollBar::handle:horizontal { - min-width: 5px; - border-radius: 3px; - margin: 4px 15px; -} + QStatusBar::item { + border: none; + } -QScrollBar::sub-line:horizontal { - margin: 1px 3px 0px 3px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/left_arrow_light.svg); - width: 6px; - height: 10px; - subcontrol-position: left; - subcontrol-origin: margin; -} + QStatusBar QToolTip { + background-color: #444444; + border: 1px solid #696968; + color: #444444; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Reducing transparency to read better */ + opacity: 230; + } -QScrollBar::add-line:horizontal { - margin: 1px 3px 0px 3px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/right_arrow_light.svg); - width: 6px; - height: 10px; - subcontrol-position: right; - subcontrol-origin: margin; -} + QStatusBar QLabel { + /* Fixes Spyder #9120, #9121 */ + background: transparent; + } -QScrollBar::sub-line:horizontal:hover, -QScrollBar::sub-line:horizontal:on { - border-image: url(qss:images_dark-light/left_arrow_lighter.svg); -} + /* QCheckBox -------------------------------------------------------------- -QScrollBar::add-line:horizontal:hover, -QScrollBar::add-line:horizontal:on { - border-image: url(qss:images_dark-light/right_arrow_lighter.svg); -} + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcheckbox -QScrollBar::up-arrow:horizontal, -QScrollBar::down-arrow:horizontal { - background-color: none; -} - -QScrollBar::add-page:horizontal, -QScrollBar::sub-page:horizontal { - background-color: transparent; -} - -QScrollBar:vertical { - background-color: transparent; - width: 15px; - margin: 0px; -} - -QScrollBar::handle:vertical { - min-height: 5px; - border-radius: 3px; - margin: 15px 4px; -} - -QScrollBar::sub-line:vertical { - margin: 3px 0px 3px 1px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/up_arrow_light.svg); - height: 6px; - width: 10px; - subcontrol-position: top; - subcontrol-origin: margin; -} - -QScrollBar::add-line:vertical { - margin: 3px 0px 3px 1px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/down_arrow_light.svg); - height: 6px; - width: 10px; - subcontrol-position: bottom; - subcontrol-origin: margin; -} - -QScrollBar::sub-line:vertical:hover, -QScrollBar::sub-line:vertical:on { - border-image: url(qss:images_dark-light/up_arrow_lighter.svg); -} - -QScrollBar::add-line:vertical:hover, -QScrollBar::add-line:vertical:on { - border-image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -QScrollBar::up-arrow:vertical, -QScrollBar::down-arrow:vertical { - background-color: none; -} - -QScrollBar::add-page:vertical, -QScrollBar::sub-page:vertical { - background-color: transparent; -} - - -/*================================================================================================== -Tab bar -==================================================================================================*/ -QTabWidget::pane { - background-color: transparent; /* temporal (transparent background) */ /* tab content background color */ - position: absolute; -} - -QTabWidget::pane:top { - top: -1px; - border-top: 1px solid #787878; -} - -QTabWidget::pane:bottom { - bottom: -1px; - border-bottom: 1px solid #787878; -} - -QTabWidget::pane:left { - right: -1px; - border-right: 1px solid #787878; -} - -QTabWidget::pane:right { - left: -1px; - border-left: 1px solid #787878; -} - -QTabWidget::tab-bar:top, -QTabWidget::tab-bar:bottom { - left: 10px; -} - -QTabWidget::tab-bar:left, -QTabWidget::tab-bar:right { - top: 10px; -} - -QTabBar { - qproperty-drawBase: 0; /* important */ - background-color: transparent; -} - -/* Workaround for QTabBars created from docked QDockWidgets which don't draw the border if not set and reset as follows: */ -QTabBar { - border-top: 1px solid #787878; /* set color for all QTabBars */ -} -QDockWidget QTabBar { - border-color: transparent; /* set color for all QTabBars but ones created from QDockWidget */ -} -QDialog QTabBar { - border-color: transparent; /* set color for QTabBars inside Preferences dialog */ -} -/* end fix */ - -QTabBar::tab { - background-color: transparent; + --------------------------------------------------------------------------- */ + QCheckBox { + color: white; + padding: 0px; + outline: none; border: 1px solid transparent; - padding: 3px; -} + background-color: transparent; + } -QTabBar::tab:top, -QTabBar::tab:bottom { - border-top-width: 4px; /* same as selected tab colored border in order to center close-button */ - border-bottom-width: 4px; /* same as selected tab colored border in order to center close-button */ - min-width: 11ex; - margin-left: 2px; - margin-right: 2px; -} + QCheckBox:focus { + border: 1px solid #1b3774; + } -QTabBar::tab:left, -QTabBar::tab:right { - border-left-width: 4px; /* same as selected tab colored border in order to center close-button */ - border-right-width: 4px; /* same as selected tab colored border in order to center close-button */ - min-height: 14ex; - margin-top: 2px; - margin-bottom: 2px; -} + QCheckBox QWidget:disabled { + background-color: transparent; + color: #c2c7cb; + } -QTabBar::tab:selected { - color: #f5f5f5; - background-color: #444444; /* same as tab content background color */ - border-color: #787878; -} - -QTabBar::tab:top:selected { - border-top: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #5e90fa, stop:1 #3874f2); /* selection color */ - border-bottom-color: #444444; /* same as tab content background color */ -} - -QTabBar::tab:bottom:selected { - border-bottom: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #5e90fa, stop:1 #3874f2); /* selection color */ - border-top-color: #444444; /* same as tab content background color */ -} - -QTabBar::tab:right:selected { - border-left: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:1, y2:0, stop:0 #5e90fa, stop:1 #3874f2); /* selection color */ - border-right-color: #444444; /* same as tab content background color */ -} - -QTabBar::tab:left:selected { - border-right: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:1, y2:0, stop:0 #5e90fa, stop:1 #3874f2); /* selection color */ - border-left-color: #444444; /* same as tab content background color */ -} - -QTabBar::tab:!selected { - color: rgba(255,255,255,120); -} - -QTabBar::tab:!selected:hover { - color: rgba(255,255,255,180); - background-color: rgba(255,255,255,20); -} - -QTabBar::tab:first:selected { - margin-left: 0; /* the first selected tab has nothing to overlap with on the left */ -} - -QTabBar::tab:last:selected { - margin-right: 0; /* the last selected tab has nothing to overlap with on the right */ -} - -QTabBar::tab:only-one { - margin: 0; /* if there is only one tab, we don't want overlapping margins */ -} - -/* hack to access Preference TabBar background */ -QDialog#Gui__Dialog__DlgPreferences > QFrame QFrame { - background-color: transparent; /* main background color (in Windows is #444444) */ -} - -/* fix for previous hack that broke QTabWidget background on Windows */ -QDialog#Gui__Dialog__DlgPreferences QTabWidget::pane { - background-color: transparent; /* temporal (transparent background) */ -} - -/* hack to correctly align Preferences icon list on OSX */ -QDialog#Gui__Dialog__DlgPreferences > QListView { - min-width: 130px; -} - -/* unique styles for sections inside Preferences */ -QDialog#Gui__Dialog__DlgPreferences > QListView::item { - border-radius: 4px; -} - -QDialog#Gui__Dialog__DlgPreferences > QListView::item:hover { - background-color: #787878; -} - -QDialog#Gui__Dialog__DlgPreferences > QListView::item:selected { + QCheckBox::indicator { color: white; + background-color: #1c1b22; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); + } + + QCheckBox::indicator:unchecked { + background-color: #1c1b22; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); + } + + QCheckBox::indicator:unchecked:hover, QCheckBox::indicator:unchecked:focus, QCheckBox::indicator:unchecked:pressed { background-color: #2053c0; -} - - -/*================================================================================================== -Tab bar buttons -==================================================================================================*/ -/* Close button */ -QTabBar::close-button { - subcontrol-origin: margin; - subcontrol-position: center right; /* only works for Qt 4.6 and newer */; - border-radius: 2px; - background-image: url(qss:images_dark-light/close_dark.svg); - background-position: center center; - background-repeat: none; -} - -QTabBar::close-button:hover { - background-color: rgba(255,255,255,20); -} - -QTabBar::close-button:pressed { - background-color: rgba(255,255,255,30); -} - -/* Fix for lists inside Model tab */ -QDockWidget QTreeView, -QDockWidget QListView, -QDockWidget QTableView { - margin: 6px; - border: 1px solid #333333; /* same as regular QTreeView, QListView and QTableView */ - min-height: 40px; /* necessary in some areas of FreeCAD */ -} - -/* Buttons to scroll tabs if there is not space to show all of them: */ -QTabBar::scroller { - width: 20px; /* the width of the scroll buttons */ -} - -QTabBar QToolButton, -QTabBar QToolButton:hover { - background-color: #444444; /* same as main background color */ -} - -QTabBar QToolButton::right-arrow:enabled { - image: url(qss:images_dark-light/right_arrow_dark.svg); -} - -QTabBar QToolButton::right-arrow:disabled, -QTabBar QToolButton::right-arrow:off { - image: url(qss:images_dark-light/right_arrow_disabled_dark.svg); -} - -QTabBar QToolButton::right-arrow:hover { - image: url(qss:images_dark-light/right_arrow_darker.svg); -} - - QTabBar QToolButton::left-arrow:enabled { - image: url(qss:images_dark-light/left_arrow_dark.svg); -} - - QTabBar QToolButton::left-arrow:disabled, - QTabBar QToolButton::left-arrow:off { - image: url(qss:images_dark-light/left_arrow_disabled_dark.svg); -} - - QTabBar QToolButton::left-arrow:hover { - image: url(qss:images_dark-light/left_arrow_darker.svg); -} - - QTabBar QToolButton::up-arrow:enabled { - image: url(qss:images_dark-light/up_arrow_dark.svg); -} - - QTabBar QToolButton::up-arrow:disabled, - QTabBar QToolButton::up-arrow:off { - image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); -} - - QTabBar QToolButton::up-arrow:hover { - image: url(qss:images_dark-light/up_arrow_darker.svg); -} - - QTabBar QToolButton::down-arrow:enabled { - image: url(qss:images_dark-light/down_arrow_dark.svg); -} - - QTabBar QToolButton::down-arrow:disabled, - QTabBar QToolButton::down-arrow:off { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - - QTabBar QToolButton::down-arrow:hover { - image: url(qss:images_dark-light/down_arrow_darker.svg); -} - -QTabBar::tear { - /* default OS tear better */ -} - - -/*================================================================================================== -Tree and list views -==================================================================================================*/ -QTreeView, -QListView, -QTableView { - color: #e0e0e0; - background-color: #545454; - alternate-background-color: #444444; /* related with QListView background */ - border: 1px solid #333333; - selection-color: #ffffff; - selection-background-color: #2053c0; /* should be similar to QListView::item selected background-color */ - show-decoration-selected: 1; /* make the selection span the entire width of the view */ - border-radius: 3px; -} - -QListView::item:hover, -QTreeView::item:hover { - background-color: transparent; /* fix to homogenize it on all OSs */ -} - -QListView::item:selected, -QTreeView::item:selected { - color: #ffffff; /* should be similar to QListView selection-color */ - background-color: #2053c0; /* should be similar to QListView selection-background-color */ - show-decoration-selected: 1; /* make the selection span the entire width of the view */ -} - -/* Property Editor QTreeView (FreeCAD custom widget) */ -Gui--PropertyEditor--PropertyEditor { - gridline-color: #444444; /* same as Group header background */ -} - -/* fix for column items background when a link is present */ -Gui--PropertyEditor--PropertyEditor > QWidget > QFrame:focus { - background-color: #2053c0; /* same as focused background color */ -} - -/* hack to hide weird redundant information inside the value of a Placement cell */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel, -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel:disabled { - color: transparent; - background-color: transparent; - border: none; - border-radius: 0px; - margin: 0px; - padding: 0px; -} - -/* hack to hide non editable cells inside Property values */ -Gui--PropertyEditor--PropertyEditor QLineEdit:read-only, -Gui--PropertyEditor--PropertyEditor QLineEdit:disabled, -Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:read-only, -Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:disabled { - color: transparent; - border-color: transparent; - background-color: transparent; - selection-color: transparent; - selection-background-color: transparent; -} - -/* hack to hide weird redundant information inside cells with links and no editable data (but editable via "..." button) */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel { - color: #1b3774; - background-color: #2053c0; /* same as focused background color */ -} - -/* hack to disable margin inside Property values to following elements */ -Gui--PropertyEditor--PropertyEditor QSpinBox, -Gui--PropertyEditor--PropertyEditor QDoubleSpinBox, -Gui--PropertyEditor--PropertyEditor QAbstractSpinBox, -Gui--PropertyEditor--PropertyEditor QLineEdit, -Gui--PropertyEditor--PropertyEditor QComboBox { - margin-left: 0px; - margin-right: 0px; - padding-top: 0px; - padding-bottom: 0px; -} - -/* reset min-height to 0px inside list views */ -QTreeView > QWidget > QComboBox, -QTreeView > QWidget > QAbstractSpinBox, -QTreeView > QWidget > QSpinBox, -QTreeView > QWidget > QDoubleSpinBox, -QTreeView > QWidget > QLineEdit, -QTreeView > QWidget > QTextEdit, -QTreeView > QWidget > QTimeEdit, -QTreeView > QWidget > QDateEdit, -QTreeView > QWidget > QDateTimeEdit, -QTreeView > QWidget > Gui--ColorButton { - min-height: 0px; -} - -/* set border-radius to 0px inside list views */ -QTreeView > QWidget > QComboBox, -QTreeView > QWidget > QAbstractSpinBox, -QTreeView > QWidget > QSpinBox, -QTreeView > QWidget > QDoubleSpinBox, -QTreeView > QWidget > QLineEdit, -QTreeView > QWidget > QTextEdit, -QTreeView > QWidget > QTimeEdit, -QTreeView > QWidget > QDateEdit, -QTreeView > QWidget > QDateTimeEdit, -QTreeView > QWidget > QComboBox:drop-down, -QTreeView > QWidget > QAbstractSpinBox:up-button, -QTreeView > QWidget > QSpinBox:up-button, -QTreeView > QWidget > QDoubleSpinBox:up-button, -QTreeView > QWidget > QTimeEdit:up-button, -QTreeView > QWidget > QDateEdit:up-button, -QTreeView > QWidget > QDateTimeEdit:up-button, -QTreeView > QWidget > QAbstractSpinBox:down-button, -QTreeView > QWidget > QSpinBox:down-button, -QTreeView > QWidget > QDoubleSpinBox:down-button, -QTreeView > QWidget > QTimeEdit:down-button, -QTreeView > QWidget > QDateEdit:down-button, -QTreeView > QWidget > QDateTimeEdit:down-button, -QTreeView > QWidget > Gui--ColorButton { - border-radius: 0px; -} - -/* set focus colors to best viewing the editable fields */ -QTreeView > QWidget > QComboBox:focus, -QTreeView > QWidget > QAbstractSpinBox:focus, -QTreeView > QWidget > QSpinBox:focus, -QTreeView > QWidget > QDoubleSpinBox:focus, -QTreeView > QWidget > QLineEdit:focus, -QTreeView > QWidget > QTextEdit:focus, -QTreeView > QWidget > QTimeEdit:focus, -QTreeView > QWidget > QDateEdit:focus, -QTreeView > QWidget > QDateTimeEdit:focus { - border-color: #2a2a2a; /* same as focused background color */ - border-bottom-color: #1e1e1e; /* same as focused border color */ -} - -QTreeView > QWidget > QAbstractSpinBox:read-only, -QTreeView > QWidget > QSpinBox:read-only, -QTreeView > QWidget > QDoubleSpinBox:read-only, -QTreeView > QWidget > QLineEdit:read-only, -QTreeView > QWidget > QTextEdit:read-only, -QTreeView > QWidget > QTimeEdit:read-only, -QTreeView > QWidget > QDateEdit:read-only, -QTreeView > QWidget > QDateTimeEdit:read-only { - color: transparent; - background-color: transparent; - border-color: transparent; -} - -/* Fix to correctly (not totally) draw QTextEdit on OSX at Page properties: "Page result", "Template" and "Editable Texts" */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QWidget { - min-height: 14px; - border-radius: 0px; /* reset */ -} - - -/*================================================================================================== -Header of tree and list views -==================================================================================================*/ -QHeaderView { - color: #d2d2d2; - background-color: #2a2a2a; - border-top-left-radius: 2px; /* 1px less than its container */ - border-top-right-radius: 2px; /* 1px less than its container */ - border-bottom-left-radius: 0px; - border-bottom-right-radius: 0px; -} - -QHeaderView::section { - border:none; - padding: 4px 6px; - background-color: #2a2a2a; -} - -QHeaderView::section:horizontal { - padding: 4px 6px; /* left and right value similar to QHeaderView::section */ - border-right: 1px solid rgba(255,255,255,30); -} - -QHeaderView::section:vertical { - border-bottom: 1px solid rgba(255,255,255,30); -} - -QTableCornerButton::section { - background-color: #2a2a2a; - border-top: none; - border-left: none; - border-right: 1px solid rgba(255,255,255,30); - border-bottom: 1px solid rgba(255,255,255,30); -} - -QHeaderView::section:last { - border-right: none; -} - -QHeaderView::up-arrow { - image: url(qss:images_dark-light/up_arrow_light.svg); -} - -QHeaderView::up-arrow:hover { - image: url(qss:images_dark-light/up_arrow_lighter.svg); -} - -QHeaderView::down-arrow { - image: url(qss:images_dark-light/down_arrow_light.svg); -} - -QHeaderView::down-arrow:hover { - image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -/* Group header inside Property Editor (FreeCAD custom widget) */ -Gui--PropertyEditor--PropertyEditor { - qproperty-groupTextColor: #bebebe; - qproperty-groupBackground: #2a2a2a; -} - - -/*================================================================================================== -Branch system for QTreeViews -==================================================================================================*/ -QTreeView::branch { - background: transparent; -} - -QTreeView::branch:has-siblings:!adjoins-item { - border-image: url(qss:images_dark-light/branch_vline_light.svg) 0; -} - -QTreeView::branch:has-siblings:adjoins-item { - border-image: url(qss:images_dark-light/branch_more_light.svg) 0; -} - -QTreeView::branch:!has-children:!has-siblings:adjoins-item { - border-image: url(qss:images_dark-light/branch_end_light.svg) 0; -} - -QTreeView::branch:closed:has-children:has-siblings { - border-image: url(qss:images_dark-light/branch_more_closed_light.svg) 0; -} - -QTreeView::branch:has-children:!has-siblings:closed { - border-image: url(qss:images_dark-light/branch_end_closed_light.svg) 0; -} - -QTreeView::branch:open:has-children:has-siblings { - border-image: url(qss:images_dark-light/branch_more_open_light.svg) 0; -} - -QTreeView::branch:open:has-children:!has-siblings { - border-image: url(qss:images_dark-light/branch_end_open_light.svg) 0; -} - - -/*================================================================================================== -Splitter and windows separator -==================================================================================================*/ -QSplitter::handle { - margin: 0px 11px; - padding: 0px; -} - -QSplitter::handle:horizontal { - background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); - background-position: center center; - background-repeat: none; - margin: 4px 2px 4px 2px; - width: 2px; -} - -QSplitter::handle:vertical { - background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); - background-position: center center; - background-repeat: none; - margin: 2px 4px 2px 4px; - height: 2px; -} - -/* Similar to the splitter is the following window separator (but horizontal/vertical is on the opposite way) */ -QMainWindow::separator { - background-position: center center; - background-repeat: none; -} - -QMainWindow::separator:horizontal { - height: 2px; - background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); - margin: 4px 2px 4px 2px; -} - -QMainWindow::separator:vertical { - width: 2px; - background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); - margin: 2px 4px 2px 4px; -} - - -/*================================================================================================== -Text/Python editor (macros, etc...) -==================================================================================================*/ -QPlainTextEdit, -QPlainTextEdit:focus { - background-color: #787878; - selection-color: #cbd8e6; - selection-background-color: #2053c0; - border: 1px solid #333333; - border-radius: 3px; - margin: 4px; -} - - -/*================================================================================================== -Tasks panel (custom FreeCAD class) -==================================================================================================*/ -/* Action group */ -QFrame[class="panel"] { - background-color: transparent; /* temporal (transparent background) */ -} - -QSint--ActionGroup { - padding: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ - margin: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ -} - -/* Separator line */ -QSint--ActionGroup QFrame[height="1"], -QSint--ActionGroup QFrame[height="2"], -QSint--ActionGroup QFrame[height="3"], -QSint--ActionGroup QFrame[width="1"], -QSint--ActionGroup QFrame[width="2"], -QSint--ActionGroup QFrame[width="3"] { - border-color: rgba(0,0,0,60); -} - -/* Panel header */ -QSint--ActionGroup QFrame[class="header"] { - border: none; - background-color: #2a2a2a; /* Task Panel Header background color */ - border-top-left-radius: 3px; - border-top-right-radius: 3px; - border-bottom-left-radius: 0px; - border-bottom-right-radius: 0px; - margin: 0px; - padding: 0px; -} - -QSint--ActionGroup QFrame[class="header"]:hover { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #1b3774, stop:1 #1b3774); -} - -QSint--ActionGroup QToolButton[class="header"] { - color: #f5f5f5; /* Task Panel Header text color */ - text-align: left; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); + } + + QCheckBox::indicator:unchecked:disabled { + background-color: #444444; + image:url(qss:images_dark-light/checkbox_unchecked_disabled.svg); + } + + QCheckBox::indicator:checked { + background-color: #1c1b22; + /*border: 1px solid #696968; /* QRadioButton has the same color */ + image:url(qss:images_dark-light/checkbox_light.svg); + } + + QCheckBox::indicator:checked:hover, QCheckBox::indicator:checked:pressed { + background-color: #2053c0; + } + + QCheckBox::indicator:checked:disabled { + background-color: #444444; + image: url(qss:images_dark-light/check_light.svg); + } + + QCheckBox::indicator:indeterminate { + background-color: #1c1b22; + border: 1px solid #696968; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); + } + + QCheckBox::indicator:indeterminate:disabled { + background-color: #444444; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); + } + + QCheckBox::indicator:indeterminate:hover, QCheckBox::indicator:indeterminate:pressed { + background-color: #2053c0; /* QRadioButton has the same color */ + } + + /* QGroupBox -------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qgroupbox + + --------------------------------------------------------------------------- */ + QGroupBox { font-weight: bold; - border: none; - margin: 0px; - padding: 0px; -} - -QSint--ActionGroup QFrame[class="header"] QLabel { - background-color: transparent; - background-image: url(qss:images_dark-light/down_arrow_light.svg); - background-repeat: none; - background-position: center center; - padding: 0px; - margin: 0px; -} - -QSint--ActionGroup QFrame[class="header"] QLabel:hover { - background-color: transparent; - background-image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"] { - background-color: transparent; - background-image: url(qss:images_dark-light/up_arrow_light.svg); - background-repeat: none; - background-position: center center; - padding: 0px; - margin: 0px; -} - -QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"]:hover { - background-color: transparent; - background-image: url(qss:images_dark-light/up_arrow_lighter.svg); -} - -QSint--ActionGroup QFrame[class="content"] { - background-color: #545454; /* Task Panel background color */ - margin: 0px; - padding: 0px; - border: none; - border-top-left-radius: 0px; - border-top-right-radius: 0px; - border-bottom-left-radius: 3px; - border-bottom-right-radius: 3px; -} - -QSint--ActionGroup QFrame[class="content"] > QWidget { - background-color: #545454; /* Task Panel background color */ -} - -/* Fixs for tabs inside Task Panel */ -QSint--ActionGroup QFrame[class="content"] QTabBar::tab:top:selected { - border-bottom-color: #545454; /* same as Task Panel background color */ -} - -QSint--ActionGroup QFrame[class="content"] QTabBar::tab:bottom:selected { - border-top-color: #545454; /* same as Task Panel background color */ -} - -QSint--ActionGroup QFrame[class="content"] QTabBar::tab:right:selected { - border-right-color: #545454; /* same as Task Panel background color */ -} - -QSint--ActionGroup QFrame[class="content"] QTabBar::tab:left:selected { - border-left-color: #545454; /* same as Task Panel background color */ -} - -/* Fix for buttons with icons that showed cropped (still not happy with result) */ -QSint--ActionGroup QFrame[class="content"] > QWidget > QPushButton { - padding: 2px; /* bigger padding crops text and icons... */ - margin: 0px; -} - -/* Fix for lists inside task panels */ -QSint--ActionGroup QFrame[class="content"] QTreeView, -QSint--ActionGroup QFrame[class="content"] QListView, -QSint--ActionGroup QFrame[class="content"] QTableView { - color: #f5f5f5; - background-color: #787878; -} - - -/*================================================================================================== -Buttons -==================================================================================================*/ -/* Common */ -QComboBox, -QAbstractSpinBox, -QSpinBox, -QDoubleSpinBox, -QLineEdit, -QTextEdit, -QTimeEdit, -QDateEdit, -QDateTimeEdit { - color: #bebebe; - background-color: #2a2a2a; - selection-color: white; - selection-background-color: #1b3774 ; - border: 1px solid #2a2a2a; - border-radius: 3px; - min-width: 50px; /* it ensures the default value is correctly displayed */ - min-height: 20px; /* important to be a pair number in order to up/down buttons to be divisible by two (if not set could create a blank line in Ubuntu. Its downside is that it's needed to reset it (min-width: 0px) on following elements that can't have it such as fields inside QToolBar and inside QTreeView (Property editor) */ - padding: 1px 2px; /* temporal: could don't be compatible with elements inside Tree/List view */ -} - -/* more contrast for QTextEdits */ -QTextEdit { - color: black; -} - -/* shifts text/number editable field to the left to make space for the up/down or drop-down buttons */ -QComboBox, -QAbstractSpinBox, -QSpinBox, -QDoubleSpinBox, -QTimeEdit, -QDateEdit, -QDateTimeEdit { - padding-right: 20px; -} - -/* when QTextEdit are no editable (like Report view)*/ -QTextEdit:!editable, -QTextEdit:!editable:focus { - background-color: #787878; - border: 1px solid #424242; -} - -QComboBox:focus, -QAbstractSpinBox:focus, -QSpinBox:focus, -QDoubleSpinBox:focus, -QLineEdit:focus, -QTextEdit:focus, -QTimeEdit:focus, -QDateEdit:focus, -QDateTimeEdit:focus { - color: #f5f5f5; - border-color: #1b3774; - border-right-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #1b3774, stop:1 #1b3774); /* same as up/down or drop-down button color */ - background-color: #2053c0; -} - -QComboBox:disabled, -QAbstractSpinBox:disabled, -QSpinBox:disabled, -QDoubleSpinBox:disabled, -QLineEdit:disabled, -QTextEdit:disabled, -QTimeEdit:disabled, -QDateEdit:disabled, -QDateTimeEdit:disabled { - color: #545454; - background-color: #2a2a2a; /* same as enabled color */ - border-color: #2a2a2a; /* same as enabled color */ -} - -QAbstractSpinBox:up-button, -QSpinBox:up-button, -QDoubleSpinBox:up-button, -QTimeEdit:up-button, -QDateEdit:up-button, -QDateTimeEdit:up-button, -QAbstractSpinBox:down-button, -QSpinBox:down-button, -QDoubleSpinBox:down-button, -QTimeEdit:down-button, -QDateEdit:down-button, -QDateTimeEdit:down-button { - background-color: #2a2a2a; /* same color for QComboBox background-color */ - subcontrol-origin: border; /* important */ - width: 20px; /* same as QComboBox ... QDateTimeEdit padding-right */ -} - -QAbstractSpinBox:up-button, -QSpinBox:up-button, -QDoubleSpinBox:up-button, -QTimeEdit:up-button, -QDateEdit:up-button, -QDateTimeEdit:up-button { - subcontrol-position: top right; - border-top-right-radius: 3px; -} - -QAbstractSpinBox:down-button, -QSpinBox:down-button, -QDoubleSpinBox:down-button, -QTimeEdit:down-button, -QDateEdit:down-button, -QDateTimeEdit:down-button { - subcontrol-position: bottom right; - border-bottom-right-radius: 3px; -} - -QAbstractSpinBox:up-button:focus, -QSpinBox:up-button:focus, -QDoubleSpinBox:up-button:focus, -QTimeEdit:up-button:focus, -QDateEdit:up-button:focus, -QDateTimeEdit:up-button:focus { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #1b3774, stop:1 #1b3774); -} - -QAbstractSpinBox:down-button:focus, -QSpinBox:down-button:focus, -QDoubleSpinBox:down-button:focus, -QTimeEdit:down-button:focus, -QDateEdit:down-button:focus, -QDateTimeEdit:down-button:focus { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #1b3774, stop:1 #1b3774); -} - -QAbstractSpinBox:up-button:disabled, -QSpinBox:up-button:disabled, -QDoubleSpinBox:up-button:disabled, -QTimeEdit:up-button:disabled, -QDateEdit:up-button:disabled, -QDateTimeEdit:up-button:disabled, -QAbstractSpinBox:down-button:disabled, -QSpinBox:down-button:disabled, -QDoubleSpinBox:down-button:disabled, -QTimeEdit:down-button:disabled, -QDateEdit:down-button:disabled, -QDateTimeEdit:down-button:disabled { - background-color: transparent; -} - -QAbstractSpinBox::up-arrow, -QSpinBox::up-arrow, -QDoubleSpinBox::up-arrow, -QTimeEdit::up-arrow, -QDateEdit::up-arrow, -QDateTimeEdit::up-arrow { - image: url(qss:images_dark-light/up_arrow_light.svg); - top: 2px; /* fix symmetry between up and down images */ -} - -QAbstractSpinBox::up-arrow:focus, -QSpinBox::up-arrow:focus, -QDoubleSpinBox::up-arrow:focus, -QTimeEdit::up-arrow:focus, -QDateEdit::up-arrow:focus, -QDateTimeEdit::up-arrow:focus { - image: url(qss:images_dark-light/up_arrow_lighter.svg); -} - -QAbstractSpinBox::up-arrow:off, -QSpinBox::up-arrow:off, -QDoubleSpinBox::up-arrow:off, -QTimeEdit::up-arrow:off, -QDateEdit::up-arrow:off, -QDateTimeEdit::up-arrow:off { - image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); -} - -QAbstractSpinBox::up-arrow:disabled, -QSpinBox::up-arrow:disabled, -QDoubleSpinBox::up-arrow:disabled, -QTimeEdit::up-arrow:disabled, -QDateEdit::up-arrow:disabled, -QDateTimeEdit::up-arrow:disabled { - image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); -} - -QAbstractSpinBox::down-arrow, -QSpinBox::down-arrow, -QDoubleSpinBox::down-arrow, -QTimeEdit::down-arrow, -QDateEdit::down-arrow, -QDateTimeEdit::down-arrow { - image: url(qss:images_dark-light/down_arrow_light.svg); - bottom: 0px; /* fix simetry between up and down images */ -} - -QAbstractSpinBox::down-arrow:focus, -QSpinBox::down-arrow:focus, -QDoubleSpinBox::down-arrow:focus, -QTimeEdit::down-arrow:focus, -QDateEdit::down-arrow:focus, -QDateTimeEdit::down-arrow:focus { - image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -QAbstractSpinBox::down-arrow:off, -QSpinBox::down-arrow:off, -QDoubleSpinBox::down-arrow:off, -QTimeEdit::down-arrow:off, -QDateEdit::down-arrow:off, -QDateTimeEdit::down-arrow:off { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - -QAbstractSpinBox::down-arrow:disabled, -QSpinBox::down-arrow:disabled, -QDoubleSpinBox::down-arrow:disabled, -QTimeEdit::down-arrow:disabled, -QDateEdit::down-arrow:disabled, -QDateTimeEdit::down-arrow:disabled { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - -/* ComboBox */ - -QComboBox::drop-down { - background-color: #333333; /* same color as up/down QSpinBox ... QDateTimeView background-color */ - subcontrol-origin: border; /* important */ - subcontrol-position: top right; - width: 20px; - border-top-right-radius: 3px; - border-bottom-right-radius: 3px; -} - -QComboBox::drop-down:on, -QComboBox::drop-down:focus { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #1b3774, stop:1 #1b3774); -} - -QComboBox::down-arrow { - image: url(qss:images_dark-light/down_arrow_light.svg); -} - -QComboBox::down-arrow:on, -QComboBox::down-arrow:focus { - image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -QComboBox::down-arrow:off, -QComboBox::down-arrow:disabled { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - -/* ComboBox menu */ -QComboBox { - selection-color: #f5f5f5; - selection-background-color: #2053c0; -} - -QComboBox QAbstractItemView { - color: #bebebe; /* same as regular QComboBox color */ - background-color: transparent; - selection-color: #f5f5f5; - selection-background-color: #2053c0; - border-width: 5px 0px 5px 0px; - border-style: solid; - border-color: transparent; - margin: 0px -1px 0px 0px; /* hack for Mac... try it on Windows and Linux */ -} - - -/*================================================================================================== -Push button -==================================================================================================*/ -QPushButton { - color: #e0e0e0; - text-align: center; - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); - border: 1px solid #2a2a2a; - border-bottom-color: #1e1e1e; /* simulates shadow under the button */ - padding: 4px 22px; - margin: 4px 4px; - min-height: 16px; /* same as QTabBar QPushButton min-width */ - border-radius: 4px; -} - -QPushButton:hover, -QPushButton:focus { - color: #cbd8e6; - border-color: #1b3774; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #2053c0, stop:1 #1b3774); -} - -QPushButton:disabled, -QPushButton:disabled:checked { - color: #2a2a2a; - background-color: #3c3c3c; /* same as enabled color */ - border-color: #3c3c3c; /* same as enabled color */ -} - -QPushButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #1b3774, stop:1 #2053c0); -} - -QPushButton:checked { - background-color: #2053c0; - border-color: #1b3774; -} - -/* Color Buttons */ -Gui--ColorButton, -Gui--ColorButton:disabled { - padding: 0px; /* reset */ - margin: 0px; /* reset */ -} - -Gui--ColorButton { - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #2a2a2a, stop:1 #1e1e1e); - border: 1px solid #1e1e1e; - border-bottom-color: black; /* simulates shadow under the button */ -} - -Gui--ColorButton:disabled { - border-color: transparent; - background-color: rgba(0,0,0,10); -} - -Gui--ColorButton:hover, -Gui--ColorButton:focus { - border-color: #1b3774; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #2053c0, stop:1 #1b3774); -} - -Gui--ColorButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #1b3774, stop:1 #2053c0); -} - -/* Pushbutton style for "..." inside Placement cell which launches Placement tool */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QPushButton, -Gui--PropertyEditor--PropertyEditor > QWidget > QPushButton { - background-color: #2a2a2a; - border: 1px solid #1e1e1e; - min-width: 16px; /* reset it due to larger value on regular QPushButton, same or bigger value as regular QPushButton min-height */ - border-radius: 0px; - margin: 0px; /* reset */ - padding: 0px; /* reset */ -} - -Gui--PropertyEditor--PropertyEditor > QWidget > QPushButton { - text-align:left; - padding-left: 2px; -} - -/* Fix for Expressions description QFrame that is "broken" with initial reset */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QWidget > QWidget > QFrame { - background-color: #444444; /* main background color */ - border: 1px solid #444444; - border-radius: 2px; - padding: 2px 6px; -} - -QPushButton:checked { - background-color: #2053c0; - border-color: #2053c0; -} - -/*================================================================================================== -Tool button Icon fix in save dialogs -==================================================================================================*/ -/* found under Tools -> Save Picture */ /* Draft -> ShapeString -> Font file */ - -QFileDialog#QFileDialog QToolButton { - background-color: transparent; - padding: 1px; - border: 1px; - margin: 0px; -} - - -/*================================================================================================== -Tool button inside QDialogs that works as QPushButtons -==================================================================================================*/ -/* found under Tools -> Customize -> Macros -> Pixmap "..." button */ -QDialog QToolButton { - color: #e0e0e0; - text-align: center; - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #2a2a2a, stop:1 #1e1e1e); - border: 1px solid #1e1e1e; - border-bottom-color: black; /* simulates shadow under the button */ - padding: 0px; /* different than regular QPushButton */ - margin: 2px; /* different than regular QPushButton */ - min-height: 16px; /* same as QTabBar QPushButton min-width */ - border-radius: 4px; -} - -QDialog QToolButton:hover, -QDialog QToolButton:focus { - color: #cbd8e6; - border-color: #1b3774; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #2053c0, stop:1 #1b3774); -} - -QDialog QToolButton:disabled, -QDialog QToolButton:disabled:checked { - color: #444444; - border-color: #424242; - background-color: #424242; -} - -QDialog QToolButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #1b3774, stop:1 #2053c0); -} - - -/*================================================================================================== -Tool button inside Task Panel content that works as QPushButtons -==================================================================================================*/ -/* found inside Part Design Workbench and "make a draft on a face" Task panel options */ -QSint--ActionGroup QFrame[class="content"] QToolButton { - color: #e0e0e0; - text-align: center; - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #2a2a2a, stop:1 #1e1e1e); - border: 1px solid #1e1e1e; - border-bottom-color: black; /* simulates shadow under the button */ - padding: 2px 6px; /* different than regular QPushButton */ - margin: 2px; /* different than regular QPushButton */ - min-height: 16px; /* same as QTabBar QPushButton min-width */ - border-radius: 4px; -} - -QSint--ActionGroup QFrame[class="content"] QToolButton:hover, -QSint--ActionGroup QFrame[class="content"] QToolButton:focus { - color: white; - border-color: #1b3774; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #2053c0, stop:1 #1b3774); -} - -QSint--ActionGroup QFrame[class="content"] QToolButton:disabled, -QSint--ActionGroup QFrame[class="content"] QToolButton:disabled:checked { - color: #444444; - border-color: #424242; - background-color: #424242; -} - -QSint--ActionGroup QFrame[class="content"] QToolButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #1b3774, stop:1 #2053c0); -} - -/* QToolButtons with a menu found in Sketcher task panel*/ -QSint--ActionGroup QToolButton::menu-button { - border: none; - border-top-right-radius: 4px; - border-bottom-right-radius: 4px; + border: 1px solid #696968; + border-radius: 1.9px; padding: 2px; - width: 16px; /* 16px width + 4px for border = 20px allocated above */ - outline: none; + margin-top: 10px; + margin-bottom: 4px; + } + + QGroupBox::title { + subcontrol-origin: margin; + subcontrol-position: top left; + left: 4px; + padding-left: 2px; + padding-right: 4px; + padding-top: 6px; + } + + QGroupBox::indicator { + color: white; + background-color: #3c3c3c; + border: 1px solid #696968; + width: 12px; + height: 12px; + border-radius:1px; + } + + QGroupBox::indicator:unchecked { + background-color: #696968; + border: 1px solid #696968; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); + } + + QGroupBox::indicator:unchecked:hover, QGroupBox::indicator:unchecked:focus, QGroupBox::indicator:unchecked:pressed { + background-color: #2053c0; + } + + QGroupBox::indicator:unchecked:disabled { + background-color: #1c1b22; + border: 1px solid #696968; + } + + QGroupBox::indicator:checked { + border: none; + image:url(qss:images_dark-light/checkbox_light.svg); + } + + QGroupBox::indicator:checked:hover, QGroupBox::indicator:checked:focus, QGroupBox::indicator:checked:pressed { + background-color: #2053c0; + } + + QGroupBox::indicator:checked:disabled { + background-color: #2053c0; + } + + /* QRadioButton ----------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qradiobutton + + --------------------------------------------------------------------------- */ + QRadioButton { background-color: transparent; -} + color: White; + border: none; + spacing: 4px; + padding-top: 4px; + padding-bottom: 4px; + outline: none; + } -QSint--ActionGroup QToolButton#settingsButton, -QSint--ActionGroup QToolButton#filterButton, -QSint--ActionGroup QToolButton#manualUpdate { - padding-right: 20px; /* make way for the popup button */ -} + QRadioButton:focus { + border: 1px solid #1b3774; + } -/* to give widget inside the menu same look as regular menu */ -QSint--ActionGroup QToolButton#filterButton QListWidget { - color: #f5f5f5; - background: #2a2a2a; + QRadioButton:disabled { + background-color: #696968; + color: #353535; + } + + QRadioButton QWidget { + background-color: transparent; + color: White; + spacing: 0px; padding: 0px; - margin: 0px; -} - - -/*================================================================================================== -QComboBox inside Task Panel content -==================================================================================================*/ -/* Fix for QComboBox inside Task Panel due to not correctly styling it with regular */ -/* found inside TechDraw Workbench and "insert multiple views" from toolbar */ -/* TODO: external border not working, in the rest of GUI works setting up Qmenu background color but inside Task Panel it doesn't... */ -QSint--ActionGroup QFrame[class="content"] QMenu, -QSint--ActionGroup QFrame[class="content"] QMenu::item { - background-color: #2a2a2a; -} - -QSint--ActionGroup QFrame[class="content"] QComboBox QAbstractItemView { - background-color: #2a2a2a; -} - - -/*================================================================================================== -Radio button -==================================================================================================*/ -QRadioButton::indicator:unchecked{ - color: black; - background-color: rgba(0,0,0,40); - border: 1px solid #787878; -} - -QRadioButton::indicator:checked { - background-color: #2053c0; /* QCheckBox has the same color */ - border: 1px solid #2053c0; /* QCheckBox has the same color */ - image:url(qss:images_dark-light/radiobutton_light.svg); -} - -QRadioButton, -QRadioButton:disabled { - color: #f5f5f5; - padding: 3px; outline: none; - background-color: transparent; -} + border: none; + } -QRadioButton:disabled { - color: rgba(255,255,255,40); -} - -QRadioButton::indicator { - width: 11px; - height: 11px; + QRadioButton::indicator { + background-color: #3c3c3c; + border: 1px solid #696968; border-radius: 6px; -} + margin-left: 0px; + height: 11px; + width: 11px; + } -QRadioButton::indicator:pressed { - border-color: #cbd8e6; -} + QRadioButton::indicator:unchecked { + /*image:url(qss:images_dark-light/radiobutton_light.svg);*/ + } -QRadioButton::indicator:disabled { - color: #424242; - background-color: transparent; - border: 1px solid #424242; - image:url(qss:images_dark-light/radiobutton_dark.svg); -} + QRadioButton::indicator:unchecked:hover, QRadioButton::indicator:unchecked:pressed { + background-color: #2053c0; + border: 1px solid #2053c0; + border-radius: 6px; + } -QRadioButton:focus { - border: none; -} + QRadioButton::indicator:unchecked:disabled { + /*image:url(qss:images_dark-light/radiobutton_dark.svg);*/ + border: 1px solid #696968; + } + QRadioButton::indicator:checked { + image:url(qss:images_dark-light/radiobutton_light.svg); + } -/*================================================================================================== -Checkbox -==================================================================================================*/ -QCheckBox, -QCheckBox:disabled { - color: #f5f5f5; - padding: 3px; + QRadioButton::indicator:checked:hover, QRadioButton::indicator:checked:pressed { + background-color: #2053c0; + border: 1px solid #2053c0; + border-radius: 6px; + image:url(qss:images_dark-light/radiobutton_light.svg); + } + + QRadioButton::indicator:checked:disabled { outline: none; - background-color: transparent; -} + background-color: #696968; + image:url(qss:images_dark-light/radiobutton_dark.svg); + } -QCheckBox::indicator, -QGroupBox::indicator { - color: black; - background-color: rgba(0,0,0,40); - border: 1px solid #787878; - width: 11px; - height: 11px; - border-radius:2px; -} + /* QMenuBar --------------------------------------------------------------- -QCheckBox::indicator:pressed, -QCheckBox::indicator:non-exclusive:checked:pressed, -QCheckBox::indicator:indeterminate:pressed, -QCheckBox::indicator:checked:pressed, -QGroupBox::indicator:pressed, -QGroupBox::indicator:non-exclusive:checked:pressed, -QGroupBox::indicator:indeterminate:pressed, -QGroupBox::indicator:checked:pressed { - border-color: #cbd8e6; -} + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenubar -QCheckBox::indicator:checked, -QGroupBox::indicator:checked { - background-color: #2053c0; /* QRadioButton has the same color */ - border: 1px solid #2053c0; /* QRadioButton has the same color */ - image:url(qss:images_dark-light/checkbox_light.svg); -} + --------------------------------------------------------------------------- */ + QMenuBar { + background-color: #161616; + /*padding: 1px; + border: 0px solid rgba(0,0,0,140);*/ + color: White; + selection-background-color: #2053c0; + } -QCheckBox:disabled { - color: rgba(255,255,255,40); - background-color: transparent; -} + QMenuBar:focus { + border: 1px solid #1b3774; + } -QCheckBox::indicator:disabled, -QGroupBox::indicator:disabled { - background-color: rgba(0,0,0,0); - border: 1px solid rgba(0,0,0,20); -} + QMenuBar::item { + background: transparent; + /*padding-left:5px; + padding-right: 5px; + padding-bottom: 1px; + padding-top: 1px;*/ + } -QCheckBox::indicator:indeterminate, -QGroupBox::indicator:indeterminate { + QMenuBar::item:selected { + background: transparent; + border: 0px solid #696968; background-color: #2053c0; - border: 1px solid #2053c0; - image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); -} + } -QCheckBox:focus { - border: none; -} - - -/*================================================================================================== -Checkboxes inside QListWidget and QTreeView -==================================================================================================*/ -QListWidget::indicator, -QTreeView::indicator { - color: #c8c8c8; - background-color: rgba(255,255,255,20); - border: 1px solid #424242; - width: 11px; - height: 11px; - border-radius:2px; -} - -/* fix for QTreeView::indicator losing its margin */ -QTreeView::indicator { - margin: 3px; -} - -QListWidget::indicator:selected, -QTreeView::indicator:selected { - background-color: #e6e6e6; -} - -QListWidget::indicator:checked:selected, -QListWidget::indicator:indeterminate:selected, -QTreeView::indicator:checked:selected, -QTreeView::indicator:indeterminate:selected { - background-color: #2053c0; /* slightly lighter than default */ - border-color: #2053c0; /* slightly darker than default */ -} - -QListWidget::indicator:pressed, -QListWidget::indicator:non-exclusive:checked:pressed, -QListWidget::indicator:indeterminate:pressed, -QListWidget::indicator:checked:pressed, -QTreeView::indicator:pressed, -QTreeView::indicator:non-exclusive:checked:pressed, -QTreeView::indicator:indeterminate:pressed, -QTreeView::indicator:checked:pressed { - border-color: #cbd8e6; -} - -QListWidget::indicator:checked, -QTreeView::indicator:checked { - background-color: #2053c0; /* QRadioButton has the same color */ - border: 1px solid #2053c0; /* QRadioButton has the same color */ - image:url(qss:images_dark-light/checkbox_light.svg); -} - -QListWidget::indicator:disabled, -QTreeView::indicator:disabled { - background-color: rgba(255,255,255,20); - border: 1px solid rgba(255,255,255,20); -} - -QListWidget::indicator:indeterminate, -QTreeView::indicator:indeterminate { + QMenuBar::item:pressed { + /*padding: 2px; + padding-left: 10px; + padding-right: 10px;*/ + border: 0px solid #696968; background-color: #2053c0; - border: 1px solid #2053c0; - image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); -} + color: White; + /*margin-bottom: 0px; + padding-bottom: 0px;*/ + } + /* QMenu ------------------------------------------------------------------ -/*================================================================================================== -Slider -==================================================================================================*/ -QSlider, -QSlider:active, -QSlider:!active { - border: none; + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenu + + --------------------------------------------------------------------------- */ + QMenu { + border-bottom: 2px rgba(0,0,0,140); + border-right: 2px rgba(0,0,0,140); + color: White; + margin: 0px; + background-color: #161616; + selection-background-color: #2053c0; + } + + QMenu::separator { + height: 2px; + background-color: #3c3c3c; + margin-left: 30%; + margin-right: 30%; + } + + QMenu::item { background-color: transparent; -} + padding: 2px 2px; /* make room for icon at left */ + /* Reserve space for selection border */ + border: 0px transparent #696968; + } -QSlider:horizontal { - padding: 0px 10px; -} + QMenu::item:selected { + color: White; + background-color: #2053c0; + } -QSlider:vertical { - padding: 10px 0px; -} + QMenu::item:pressed { + background-color: #2053c0; + } -QSlider::groove { - background-color: rgba(255,255,255,30); - border: 1px solid rgba(255,255,255,40); - border-radius: 5px; - margin: 4px 0px; -} - -QSlider::groove:horizontal { - height: 8px; -} - -QSlider::groove:vertical { - width: 8px; -} - -QSlider::groove:horizontal:disabled, -QSlider::groove:vertical:disabled { - border-color: #424242; - background-color: #424242; -} - -QSlider::handle:horizontal, -QSlider::handle:vertical { - background-color: #2a2a2a; - border: 1px solid #2a2a2a; + QMenu::icon { + margin-left: 5px; width: 14px; height: 14px; - border-radius: 8px; -} + } -QSlider::handle:horizontal { - margin: -4px 0; -} - -QSlider::handle:vertical { - margin: 0 -4px; -} - -QSlider::handle:horizontal:hover, -QSlider::handle:vertical:hover, -QSlider::handle:horizontal:pressed, -QSlider::handle:vertical:pressed { - border-color: #adc5ed; - background-color: #2053c0; -} - -QSlider::handle:horizontal:disabled, -QSlider::handle:vertical:disabled { - border-color: #424242; - background-color: #424242; -} - - -/*================================================================================================== -Toolbar buttons -==================================================================================================*/ -/*QToolBar > QComboBox, disabled because creates different margins for body and drop-down button */ -QToolBar > QAbstractSpinBox, -QToolBar > QSpinBox, -QToolBar > QDoubleSpinBox, -QToolBar > QLineEdit, -QToolBar > QTextEdit, -QToolBar > QTimeEdit, -QToolBar > QDateEdit, -QToolBar > QDateTimeEdit { - margin: 0px 2px; + QMenu::indicator { + margin-left: 2px; + margin-right: 2px; padding: 0px; - min-width: 70px; /* necessary to show its content */ -} + width: 12px; + height: 12px; + /* non-exclusive indicator = check box style indicator (see QActionGroup::setExclusive) */ + /* exclusive indicator = radio button style indicator (see QActionGroup::setExclusive) */ + } -QToolBar > QComboBox, -QToolBar > QAbstractSpinBox, -QToolBar > QSpinBox, -QToolBar > QDoubleSpinBox, -QToolBar > QLineEdit, -QToolBar > QTextEdit, -QToolBar > QTimeEdit, -QToolBar > QDateEdit, -QToolBar > QDateTimeEdit { - min-height: 0px; /* reset it inside Tool Bar due to the user ability to set the "size of toolbar icons" inside Preferences */ -} + QMenu::icon:checked { /* appearance of a 'checked' icon */ + background: #1b3774; + margin-left: -5px; + border: 5px solid #1b3774; + position: absolute; + border-radius: 0px; + } + QMenu::indicator:non-exclusive:unchecked { + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); + } -QToolBar > QPushButton { - padding: 0px; - margin: 1px; /* doesn't work with :left, :right:, :top or :bottom sub-controls */ - min-width: 16px; /* could not be larger due to switchable Preferences "Size of toolbar icons" */ - min-height: 16px; /* could not be larger due to switchable Preferences "Size of toolbar icons" */ - border-radius: 4px; /* same as regular QPushButton */ -} - -QToolBar > QPushButton:checked { - border: 1px solid #7cabf9; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #2053c0, stop:1 #2053c0); -} - -QToolBar > QPushButton:!checked { - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #444444, stop:1 #3c3c3c); - border: 1px solid #424242; - border-bottom-color: #333333; /* simulates shadow under the button */ - text-align: left; /* bug fix #4559 */ -} - -QToolBar > QPushButton:checked:hover { - border-color: #6f9efa; -} - -QToolBar > QPushButton:!checked:hover { - color: #cbd8e6; - border-color: #333333; -} - -QToolBar > QPushButton:checked:pressed { - background-color: #2053c0; -} - -QToolBar > QPushButton:!checked:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #424242, stop:1 #444444); -} - -QToolBar > QPushButton:checked:disabled, -QToolBar > QPushButton:!checked:disabled { + QMenu::indicator:non-exclusive:unchecked:hover, QMenu::indicator:non-exclusive:unchecked:focus, QMenu::indicator:non-exclusive:unchecked:pressed { border: none; - background-color: transparent; -} + background: #2053c0; + } -QToolBar > QToolButton { - margin: 2px; - padding: 2px; - border-radius: 3px; -} + QMenu::indicator:non-exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_disabled.svg); + } -QToolBar > QToolButton:hover { - background-color: rgba(255,255,255,20); -} + QMenu::indicator:non-exclusive:checked { + image:url(qss:images_dark-light/checkbox_light.svg); + } -QToolBar > QToolButton:pressed { - background-color: rgba(255,255,255,30); -} - -/* ToolBar menu buttons (buttons with drop-down menu) */ -QToolBar > QToolButton#qt_toolbutton_menubutton { - padding-right: 20px; /* Hack to add more width to buttons with menu */ - border: 1px solid transparent; - border-radius: 3px; -} - -QToolBar > QToolButton#qt_toolbutton_menubutton:hover, -QToolBar > QToolButton#qt_toolbutton_menubutton:pressed, -QToolBar > QToolButton#qt_toolbutton_menubutton:open { - border: 1px solid #7cabf9; -} - -QToolBar QToolButton::menu-button, -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button { + QMenu::indicator:non-exclusive:checked:hover, QMenu::indicator:non-exclusive:checked:focus, QMenu::indicator:non-exclusive:checked:pressed { + border: none; + background: #2053c0; + } + + QMenu::indicator:non-exclusive:checked:disabled { + image:url(qss:images_dark-light/checkbox_checked_disabled.svg); + } + + QMenu::indicator:non-exclusive:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); + } + + QMenu::indicator:non-exclusive:indeterminate:disabled { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); + } + + QMenu::indicator:non-exclusive:indeterminate:focus, QMenu::indicator:non-exclusive:indeterminate:hover, QMenu::indicator:non-exclusive:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); + } + + QMenu::indicator:exclusive:unchecked { + image: url(qss:images_dark-light/transparent.svg); + } + + QMenu::indicator:exclusive:unchecked:hover, QMenu::indicator:exclusive:unchecked:focus, QMenu::indicator:exclusive:unchecked:pressed { border: none; - border-top-right-radius: 3px; - border-bottom-right-radius: 3px; - width: 16px; /* 16px width + 4px for border = 20px allocated above */ outline: none; + background: #2053c0; + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); + } + + QMenu::indicator:exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); + } + + QMenu::indicator:exclusive:checked { + border: none; + outline: none; + image: url(qss:images_dark-light/radiobutton_light.svg); + } + + QMenu::indicator:exclusive:checked:hover, QMenu::indicator:exclusive:checked:focus, QMenu::indicator:exclusive:checked:pressed { + border: none; + outline: none; + background: #2053c0; + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); + } + + QMenu::indicator:exclusive:checked:disabled { + outline: none; + image: url(qss:images_dark-light/radiobutton_light.svg); + } + + QMenu::right-arrow { + margin: 5px; + padding-left: 12px; + image:url(qss:images_dark-light/right_arrow_lighter.svg); + height: 12px; + width: 12px; background-color: transparent; + } + + /* QAbstractItemView ------------------------------------------------------ + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + + --------------------------------------------------------------------------- */ + QAbstractItemView { + alternate-background-color: #5b5b5b; + color: White; + border: 1px solid #696968; + border-radius: 2px; + } + + QAbstractItemView QLineEdit { + padding: 2px; + } + + /* QAbstractScrollArea ---------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + + --------------------------------------------------------------------------- */ + QAbstractScrollArea { + background-color: transparent; + border: 0px solid #696968; + border-radius: 0px; + /* fix #159 */ + padding: 0px; + /* remove min-height to fix #244 */ + color: White; + } + + QAbstractScrollArea:disabled { + color: #353535; + } + + /* QScrollArea ------------------------------------------------------------ + + --------------------------------------------------------------------------- + text input field disabled!!!!*/ + QScrollArea QWidget:disabled { + background-color: #444444; + } + + /* QScrollBar ------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qscrollbar + + --------------------------------------------------------------------------- */ + QScrollBar:horizontal { + height: 16px; + margin: 2px 8px 2px 8px; + border: 0px solid #696968; + border-radius: 4px; + background-color: #444444; + } + + QScrollBar:vertical { + background-color: #444444; + width: 16px; + margin: 8px 2px 8px 2px; + border: 0px solid #696968; + border-radius: 4px; + } + + QScrollBar::handle:horizontal { + background-color: #696969; + border: 1px solid #444444; + border-radius: 4px; + min-width: 8px; + } + + QScrollBar::handle:horizontal:hover { + background-color: #2053c0; + border: #696968; + border-radius: 4px; + min-width: 8px; + } + + QScrollBar::handle:horizontal:focus { + border: 1px solid #1b3774; + } + + QScrollBar::handle:vertical { + background-color: #696969; + border: 1px solid #696968; + min-height: 8px; + border-radius: 4px; + } + + QScrollBar::handle:vertical:hover { + background-color: #2053c0; + border: #696968; + border-radius: 4px; + min-height: 8px; + } + + QScrollBar::handle:vertical:focus { + border: 1px solid #1b3774; + } + + QScrollBar::add-line:horizontal { + border-image: url(qss:images_dark-light/right_arrow_light.svg); + height: 9px; + width: 5px; + subcontrol-position: right; + subcontrol-origin: margin; + } + + QScrollBar::add-line:horizontal:hover, QScrollBar::add-line:horizontal:on { + border-image: url(qss:images_dark-light/right_arrow_lighter.svg); + height: 9px; + width: 5px; + subcontrol-position: right; + subcontrol-origin: margin; + } + + QScrollBar::add-line:vertical { + border-image: url(qss:images_dark-light/down_arrow_light.svg); + height: 5px; + width: 9px; + subcontrol-position: bottom; + subcontrol-origin: margin; + } + + QScrollBar::add-line:vertical:hover, QScrollBar::add-line:vertical:on { + border-image: url(qss:images_dark-light/down_arrow_lighter.svg); + height: 5px; + width: 9px; + subcontrol-position: bottom; + subcontrol-origin: margin; + } + + QScrollBar::sub-line:horizontal { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/left_arrow_light.svg); + height: 9px; + width: 5px; + subcontrol-position: left; + subcontrol-origin: margin; + } + + QScrollBar::sub-line:horizontal:hover, QScrollBar::sub-line:horizontal:on { + border-image: url(qss:images_dark-light/left_arrow_lighter.svg); + height: 9px; + width: 5px; + subcontrol-position: left; + subcontrol-origin: margin; + } + + QScrollBar::sub-line:vertical { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/up_arrow_light.svg); + height: 5px; + width: 9px; + subcontrol-position: top; + subcontrol-origin: margin; + } + + QScrollBar::sub-line:vertical:hover, QScrollBar::sub-line:vertical:on { + border-image: url(qss:images_dark-light/up_arrow_lighter.svg); + height: 5px; + width: 9px; + subcontrol-position: top; + subcontrol-origin: margin; + } + + QScrollBar::up-arrow:horizontal, QScrollBar::down-arrow:horizontal { + background: none; + } + + QScrollBar::up-arrow:vertical, QScrollBar::down-arrow:vertical { + background: none; + } + + QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal { + background: none; + } + + QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical { + background: none; + } + + /* QTextEdit -------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-specific-widgets + + + report view + --------------------------------------------------------------------------- */ + QTextEdit { + background-color: #444444; + color: White; + border-radius: 1.9px; + border: 0px solid #696968; + } + + QTextEdit:focus { + border: 1px solid #1b3774; + } + + QTextEdit:selected { + background: #346792; + color: white; + } + + /* QPlainTextEdit --------------------------------------------------------- + Python + --------------------------------------------------------------------------- */ + QPlainTextEdit { + background-color: #3c3c3c; + color: White; + border-radius: 1.9px; + border: 0px solid #696968; + } + + QPlainTextEdit:focus { + border: 1px solid #1b3774; + } + + QPlainTextEdit:selected { + background: #2053c0; + color: White; + } + + /* QSizeGrip -------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsizegrip + + --------------------------------------------------------------------------- */ + QSizeGrip { + background: transparent; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/sizegrip_light.svg); + } + + /* QStackedWidget --------------------------------------------------------- + + --------------------------------------------------------------------------- */ + QStackedWidget { + padding: 0px; + border: 0px solid #696968; + } + + /* QToolBar --------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbar + + --------------------------------------------------------------------------- */ + QToolBar { + background-color: #444444; + border-bottom: 0px solid rgba(0,0,0,120); + padding: 1px; + font-weight: bold; + spacing: 1px; + } + + QToolBar:disabled { + /* Fixes #272 */ + background-color: #444444; + } + + QToolBar::handle:horizontal { + width: 8px; + margin: 3px 3px; + background-position: top right; + background-repeat: repeat-y; + background-image: url(qss:images_dark-light/Hmovetoolbar_light.svg); + } + + QToolBar::handle:vertical { + height: 8px; + margin: 3px 3px; + background-position: left bottom; + background-repeat: repeat-x; + background-image: url(qss:images_dark-light/Vmovetoolbar_light.svg); + } + + QToolBar::separator:horizontal { + width: 2px; + margin: 4px 4px; + background-color: transparent; + } + + QToolBar::separator:vertical { + height: 2px; + margin: 4px 4px; + background-color: transparent; + } + + /*The "show more" button (it can also be stylable with "QToolBarExtension" icon is not working Qproperty works but breaks when you move the toolbar see also */ + QToolButton#qt_toolbar_ext_button { + margin: 0px; + padding: 0px; + background-color: #696969; + /*background-image: url(qss:images_dark-light/more_light.svg);*/ + background-repeat: none; + background-position: center center; + } + + QToolButton#qt_toolbar_ext_button:hover { + /*background-image: url(qss:images_dark-light/more_light.svg);*/ + background-color: #2053c0; + } + + QToolButton#qt_toolbar_ext_button:on { + /*background-image: url(qss:images_dark-light/more_light.svg);*/ + border-color: #696968; + background-color: #2053c0; + } + + + /* QAbstractSpinBox ------------------------------------------------------- + + --------------------------------------------------------------------------- */ + QAbstractSpinBox, + QSpinBox { + background-color: #1c1b22; + border: 1px solid transparent; + color: White; + /* This fixes 103, 111 */ + /* padding-top: 0px; + /* This fixes 103, 111 */ + /*padding-bottom: 0px; + /*padding-left: 4px; + /*padding-right: 4px; + border-radius: 1.9px;*/ + min-height: 1.7em; + /* min-width: 5px; removed to fix 109 */ + } + + QAbstractSpinBox:up-button { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); + subcontrol-origin: border; + subcontrol-position: top right; + border: 1px solid transparent; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-bottom: -1px;*/ + } + + QAbstractSpinBox::up-arrow, QAbstractSpinBox::up-arrow:disabled, QAbstractSpinBox::up-arrow:off { + image: url(qss:images_dark-light/up_arrow_disabled_light.svg); + /* height: 8px; + width: 8px;*/ + } + + QAbstractSpinBox::up-arrow:hover { + image: url(qss:images_dark-light/up_arrow_lighter.svg); + } + + QAbstractSpinBox:down-button { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); + subcontrol-origin: border; + subcontrol-position: bottom right; + border: 1px solid transparent; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-top: -1px;*/ + } + + QAbstractSpinBox::down-arrow, QAbstractSpinBox::down-arrow:disabled, QAbstractSpinBox::down-arrow:off { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + /*height: 8px; + width: 8px;*/ + } + + QAbstractSpinBox::down-arrow:hover { + image: url(qss:images_dark-light/down_arrow_lighter.svg); + } + + QAbstractSpinBox:hover { + /*border: 1px solid #2053c0; + color: White;*/ + } + + QAbstractSpinBox:focus { + border: 1px solid #1b3774; + } + + QAbstractSpinBox:selected { + background: #1b3774; + /*color: White;*/ + } + + /* ------------------------------------------------------------------------ */ + /* DISPLAYS --------------------------------------------------------------- */ + /* ------------------------------------------------------------------------ */ + /* QLabel ----------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe + + --------------------------------------------------------------------------- */ + QLabel { + background-color: transparent; + border: 0px solid #696968; + padding: 2px; + margin: 0px; + color: White; + } + + QLabel:disabled { + background-color: transparent; + border: 0px solid #696968; + color: #c2c7cb; + } + + QLabel[haslink="true"] { + color: orange; + } + + + /* QTextBrowser ----------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + + --------------------------------------------------------------------------- */ + QTextBrowser { + background-color: #1c1b22; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; + } + + QTextBrowser:disabled { + background-color: #444444; + border: 1px solid #696968; + color: #c2c7cb; + border-radius: 1.9px; + } + + QTextBrowser:hover, QTextBrowser:!hover, QTextBrowser:selected, QTextBrowser:pressed { + border: 1px solid #2053c0; + } + + /* QGraphicsView ---------------------------------------------------------- + + --------------------------------------------------------------------------- */ + QGraphicsView { + background-color: transparent; + border: 0px solid #2053c0; + color: White; + border-radius: 0px; + } + + QGraphicsView:disabled { + background-color: #1c1b22; + border: 0px solid #696968; + color: #c2c7cb; + border-radius: 0px; + } + + QGraphicsView:hover, QGraphicsView:!hover, QGraphicsView:selected, QGraphicsView:pressed { + border: 0px solid #ff00f7; + } + + /* QCalendarWidget -------------------------------------------------------- + + --------------------------------------------------------------------------- */ + QCalendarWidget { + border: 1px solid #696968; + border-radius: 1.9px; + } + + QCalendarWidget:disabled { + background-color: #353535; + color: #c2c7cb; + } + + /* QLCDNumber ------------------------------------------------------------- + + --------------------------------------------------------------------------- */ + QLCDNumber { + background-color: #1aff00; + color: White; + } + + QLCDNumber:disabled { + background-color: #444444; + color: #c2c7cb; + } + + /* QProgressBar ----------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qprogressbar + + --------------------------------------------------------------------------- */ + QProgressBar { + background-color: #c2c7cb; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; + text-align: center; + } + + QProgressBar:disabled { + background-color: #161616; + border: 1px solid #696968; + color: #696969; + border-radius: 1.9px; + text-align: center; + } + + QProgressBar::chunk { + background-color: #2053c0; + color: #444444; + border-radius: 1.9px; + } + + QProgressBar::chunk:disabled { + background-color: #161616; + color: #696968; + border-radius: 1.9px; + } + + /* ------------------------------------------------------------------------ */ + /* BUTTONS ---------------------------------------------------------------- */ + /* ------------------------------------------------------------------------ */ + /* QPushButton ------------------------------------------------------------ + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qpushbutton + + --------------------------------------------------------------------------- */ + QPushButton { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); + color: White; + border: 1px solid #2a2a2a; + border-bottom-color: #1e1e1e; /* simulates shadow under the button */ + border-radius: 4px; + padding: 2px; + } + + QPushButton:disabled { + background-color: #444444; + color: #c2c7cb; + + } + + QPushButton:checked { + background-color: #2053c0; + outline: none; + } + + QPushButton:checked:disabled { + background-color: #2053c0; + color: #3c3c3c; + outline: none; + } + + QPushButton:checked:selected { + background: #2053c0; + } + + QPushButton:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #2053c0, stop:1 #1b3774); + color: White; + } + + QPushButton:pressed { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #1b3774, stop:1 #2053c0); } -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button:hover, -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button:pressed, -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button:open { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #2053c0, stop:1 #7cabf9); -} + QPushButton:selected { + background: #1b3774; + color: White; + } -QToolBar > QToolButton::menu-arrow { - background-image: url(qss:images_dark-light/down_arrow_dark.svg); - background-position: center center; - background-repeat: none; + QPushButton::menu-indicator { subcontrol-origin: padding; subcontrol-position: bottom right; - height: 10px; /* same as arrow image */ -} + bottom: 4px; + } -QToolBar > QToolButton::menu-arrow:hover { - background-image: url(qss:images_dark-light/down_arrow_lighter.svg); -} + QDialogButtonBox QPushButton { + /* Issue # 194 # 248 - Special case of QPushButton inside dialogs, for better UI */ + min-width: 80px; + } -QToolBar > QToolButton::menu-arrow:open { - background-image: url(qss:images_dark-light/down_arrow_lighter.svg); -} + /* QToolButton ------------------------------------------------------------ -/* when QToolButton is checked: */ -QToolBar > QToolButton:checked { - border: 1px solid #7cabf9; - background-color: rgba(124,171,249,60); /* transparency for #7cabf9 color */ -} + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbutton -QToolBar > QToolButton:checked:hover { - border: 1px solid #7cabf9; - background-color: rgba(124,171,249,80); /* transparency for #7cabf9 color */ -} - -/*The "show more" button (it can also be stylable with "QToolBarExtension" */ -QToolBar QToolButton#qt_toolbar_ext_button { - margin: 0px; + --------------------------------------------------------------------------- */ + QToolButton { + background-color: transparent; + color: White; + border-radius: 1px; padding: 0px; - /*background-image: url(qss:images_dark-light/more_dark.svg);*/ - image: transparent; + outline: none; + border: none; + /* The subcontrols below are used only in the DelayedPopup mode */ + /* The subcontrols below are used only in the MenuButtonPopup mode */ + /* The subcontrol below is used only in the InstantPopup or DelayedPopup mode */ + } + + QToolButton:disabled { + background-color: rgba(0, 0, 0, 0.065); + color: #c2c7cb; + border-radius: 1px; + padding: 0px; + } + + QToolButton:checked { + background-color: #2053c0; + border-radius: 1.9px; + padding: 0px; + outline: none; + } + + QToolButton:checked:disabled { + background-color: #b65555; + color: #c2c7cb; + border-radius: 1.9px; + padding: 0px; + outline: none; + } + + QToolButton:checked:hover { + background-color: #2053c0; + color: White; + } + + QToolButton:checked:pressed { + background-color: #2053c0; + } + + QToolButton:checked:selected { + background: #1b3774; + color: White; + } + + QToolButton:hover { + background-color: #2053c0; + color: White; + } + + QToolButton:pressed { + background-color: #1b3774; + } + + QToolButton:selected { + background: #2053c0; + color: White; + } + + QToolButton[popupMode="0"] { + /* Only for DelayedPopup */ + padding-right: 20px; + } + + QToolButton[popupMode="1"] { + /* Only for MenuButtonPopup */ + padding-right: 20px; + } + QToolButton[popupMode="0"]::menu-button { + border: none; + } + + QToolButton[popupMode="0"]::menu-button:hover { + border: none; + border-left: 2px solid #fe0000; + border-radius: 0px; + } + QToolButton[popupMode="1"]::menu-button { + border: none; + } + + QToolButton[popupMode="1"]::menu-button:hover { + border: none; + border-left: 2px solid #e5ff00; + border-radius: 0px; + } + + QToolButton[popupMode="2"] { + /* Only for InstantPopup */ + padding-right: 20px; + } + + QToolButton::menu-button { + border-bottom: 0px solid #ffffff; + border-radius: 2px; + /* 16px width + 4px for border = 20px allocated above */ + width: 1.6ex; + padding: 2px; + border-radius: 2px; + border: 0px #000000; + } + + QToolButton::menu-button:hover { + /* background: rgba(0, 0, 0, 0.5);*/ + + } + + QToolButton::menu-button:checked:hover { + /* background: rgba(0, 0, 0, 0.5);*/ + } + + QToolButton::menu-indicator { + /* Exclude a shift for better image */ + subcontrol-position: right bottom; + /* Shift it a bit */ + } + + QToolButton::menu-arrow { + image: url(qss:images_dark-light/more_arrow_light.svg); + width: 1.5ex; + height: 1.5ex; + subcontrol-position: right bottom; + background: transparent; + } + QToolButton::menu-arrow:open { + subcontrol-position: right bottom; + image: url(qss:images_dark-light/more_arrow_light.svg); + } + QToolButton::menu-arrow:hover { + image: url(qss:images_dark-light/more_arrow_light.svg); + background-color: rgba(0, 0, 0, 0.498); + border: 1px solid rgba(0, 0, 0, 0.498); + } + + /* QCommandLinkButton ----------------------------------------------------- + + --------------------------------------------------------------------------- */ + QCommandLinkButton { + background-color: transparent; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; + padding: 0px; + margin: 0px; + } + + QCommandLinkButton:disabled { + background-color: transparent; + color: #c2c7cb; + } + + /* ------------------------------------------------------------------------ */ + /* INPUTS - NO FIELDS ----------------------------------------------------- */ + /* ------------------------------------------------------------------------ */ + /* QComboBox -------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + + --------------------------------------------------------------------------- */ + QComboBox { + border: 1px solid transparent; + background: #1c1b22; + border-radius: 2px; + selection-background-color: #2053c0; + padding-left: 2px; + padding-right: 2px; + /* padding-right = 36; 4 + 16*2 See scrollbar size */ + /* changed to 4px to fix #239 */ + /* Fixes #103, #111 */ + min-height: 1.5em; + /* padding-top: 2px; removed to fix #132 */ + /* padding-bottom: 2px; removed to fix #132 */ + /* min-width: 75px; removed to fix #109 */ + /* Needed to remove indicator - fix #132 */ + } + QComboBox:editable { + background: #1c1b22; + } + QComboBox QAbstractItemView { + border: 0px solid #696968; + border-radius: 0px; + background-color: #1c1b22; + selection-background-color: #2053c0; + } + + QComboBox QAbstractItemView:hover { + background-color:#1c1b22; + color: White; + } + + QComboBox QAbstractItemView:selected { + background: #2053c0; + color: White; + } + + QComboBox QAbstractItemView:alternate { + background: #3c3c3c; + } + + QComboBox:disabled { + background-color: #444444; + color: #353535; + } + + QComboBox:hover { + /*background-color: #2053c0;*/ + border: 1px solid #2053c0; + } + + QComboBox:focus { + border: 1px solid #1b3774; + } + + QComboBox:on { + selection-background-color: #1b3774; + } + + QComboBox::indicator { + border: none; + border-radius: 0px; + background-color: transparent; + selection-background-color: transparent; + color: transparent; + selection-color: #2053c0; + /* Needed to remove indicator - fix #132 */ + } + + QComboBox::indicator:alternate { + background: #696968; + } + + QComboBox::item { + /* Remove to fix #282, #285 and MR #288*/ + /*&:checked { + font-weight: bold; + } + + &:selected { + border: 0px solid transparent; + } + */ + } + + QComboBox::item:alternate { + background: #3c3c3c; + } + + QComboBox::drop-down { + subcontrol-origin: padding; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); + subcontrol-position: top right; + width: 14px; + border-left: 1px solid transparent; + } + QComboBox::drop-down:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #2053c0, stop:1 #1b3774); + } + + QComboBox::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + height: 10px; + width: 10px; + } + + QComboBox::down-arrow:on, QComboBox::down-arrow:hover, QComboBox::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_lighter.svg); + } + + + /*================================================================================================== + Tasks panel (custom FreeCAD class) + ==================================================================================================*/ + Gui--PropertyEditor--PropertyEditor { + qproperty-groupTextColor: white; + qproperty-groupBackground: #3c3c3c; + border: 0px solid #696968; + + } + + /* Action group */ + QFrame[class="panel"] { + background-color: transparent; /* temporal (transparent background) */ + + } + + QSint--ActionGroup { + padding: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ + margin: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ + } + + /* Separator line */ + QSint--ActionGroup QFrame[height="1"], + QSint--ActionGroup QFrame[height="2"], + QSint--ActionGroup QFrame[height="3"], + QSint--ActionGroup QFrame[width="1"], + QSint--ActionGroup QFrame[width="2"], + QSint--ActionGroup QFrame[width="3"] { + border-color: rgba(0,0,0,60); + } + + /* Panel header */ + QSint--ActionGroup QFrame[class="header"] { + border-top: 1px solid #696968; + border-left: 1px solid #696968; + border-right: 1px solid #696968; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); + border-top-left-radius: 3px; + border-top-right-radius: 3px; + border-bottom-left-radius: 0px; + border-bottom-right-radius: 0px; + margin: 0px; + padding: 0px; + } + + QSint--ActionGroup QFrame[class="header"]:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #2053c0, stop:1 #1b3774); + } + + QSint--ActionGroup QToolButton[class="header"] { + color: white; /* Task Panel Header text color */ + text-align: left; + font-weight: bold; + border: none; + margin: 0px; + padding: 0px; + } + + QSint--ActionGroup QFrame[class="header"] QLabel { + background-color: transparent; + background-image: url(qss:images_dark-light/down_arrow_light.svg); + background-repeat: none; + background-position: center center; + padding: 0px; + margin: 0px; + } + + QSint--ActionGroup QFrame[class="header"] QLabel:hover { + background-color: transparent; + background-image: url(qss:images_dark-light/down_arrow_lighter.svg); + } + + QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"] { + background-color: transparent; + background-image: url(qss:images_dark-light/up_arrow_light.svg); + background-repeat: none; + background-position: center center; + padding: 0px; + margin: 0px; + } + + QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"]:hover { + background-color: transparent; + background-image: url(qss:images_dark-light/up_arrow_lighter.svg); + } + + QSint--ActionGroup QFrame[class="content"] { + background-color: transparent; /* Task Panel background color */ + margin: 0px; + padding: 0px; + border-bottom: 1px solid #696968; + border-left: 1px solid #696968; + border-right: 1px solid #696968; + border-top-left-radius: 0px; + border-top-right-radius: 0px; + border-bottom-left-radius: 3px; + border-bottom-right-radius: 3px; + } + + QSint--ActionGroup QFrame[class="content"] > QWidget { + background-color: #444444; /* Task Panel background color */ + } + + /* Fixs for tabs inside Task Panel */ + QSint--ActionGroup QFrame[class="content"] QTabBar::tab:top:selected { + border-bottom-color: #2053c0; /* same as Task Panel background color */ + } + + QSint--ActionGroup QFrame[class="content"] QTabBar::tab:bottom:selected { + border-top-color: #2053c0; /* same as Task Panel background color */ + } + + QSint--ActionGroup QFrame[class="content"] QTabBar::tab:right:selected { + border-right-color: #2053c0; /* same as Task Panel background color */ + } + + QSint--ActionGroup QFrame[class="content"] QTabBar::tab:left:selected { + border-left-color: #2053c0; /* same as Task Panel background color */ + } + + /* Fix for buttons with icons that showed cropped (still not happy with result) */ + QSint--ActionGroup QFrame[class="content"] > QWidget > QPushButton { + padding: 2px; /* bigger padding crops text and icons... */ + margin: 0px; + } + + /* Fix for lists inside task panels */ /* sketcher constraints list */ + QSint--ActionGroup QFrame[class="content"] QTreeView, + QSint--ActionGroup QFrame[class="content"] QListView, + QSint--ActionGroup QFrame[class="content"] QTableView { + color: white; + background-color: #1c1b22; + } + + + /* found inside Part Design Workbench and "make a draft on a face" Task panel options */ + QSint--ActionGroup QFrame[class="content"] QToolButton { + color: white; + text-align: center; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); + border: 0px solid #adadad; + padding: 1px 1px; /* different than regular QPushButton */ + margin: 0px; /* different than regular QPushButton */ + min-height: 16px; /* same as QTabBar QPushButton min-width */ + border-radius: 1px; + } + + QSint--ActionGroup QFrame[class="content"] QToolButton:hover{ + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #2053c0, stop:1 #1b3774); + + } + QSint--ActionGroup QFrame[class="content"] QToolButton:focus { + border: 1px solid #1b3774; + } + + QSint--ActionGroup QFrame[class="content"] QToolButton:disabled, + QSint--ActionGroup QFrame[class="content"] QToolButton:disabled:checked { + color: #696969; + background-color: #1c1b22; + } + + QSint--ActionGroup QFrame[class="content"] QToolButton:pressed { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #2053c0, stop:1 #1b3774); + + } + + /* QSlider ---------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qslider + + --------------------------------------------------------------------------- */ + QSlider:disabled { + background: #444444; + } + + QSlider:focus { + border: 1px solid #1b3774; + } + + QSlider::groove:horizontal { + background: #444444; + border: 1px solid #696968; + height: 4px; + margin: 0px; + border-radius: 1.9px; + } + + QSlider::groove:vertical { + background: #2053c0; + border: 1px solid #696968; + width: 4px; + margin: 0px; + border-radius: 1.9px; + } + + QSlider::add-page:vertical { + background: #2053c0; + border: 1px solid #696968; + width: 4px; + margin: 0px; + border-radius: 1.9px; + } + + QSlider::add-page:vertical :disabled { + background: #696968; + } + + QSlider::sub-page:horizontal { + background: #2053c0; + border: 1px solid #0073ff; + height: 4px; + margin: 0px; + border-radius: 1.9px; + } + + QSlider::sub-page:horizontal:disabled { + background: #2053c0; + } + + QSlider::handle:horizontal { + background: #353535; + border: 1px solid #444444; + width: 8px; + height: 8px; + margin: -8px 0px; + border-radius: 1.9px; + } + + QSlider::handle:horizontal:hover { + background: #2053c0; + border: 1px solid #2053c0; + } + + QSlider::handle:horizontal:focus { + border: 1px solid #1b3774; + } + + QSlider::handle:vertical { + background: #c2c7cb; + border: 1px solid #696968; + width: 8px; + height: 8px; + margin: 0 -8px; + border-radius: 1.9px; + } + + QSlider::handle:vertical:hover { + background: #2053c0; + border: 2px solid #2053c0; + } + + QSlider::handle:vertical:focus { + border: 1px solid #1b3774; + } + + /* QLineEdit -------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlineedit + + --------------------------------------------------------------------------- */ + QLineEdit { + background-color: #1c1b22; + padding-top: 2px; + /* This QLineEdit fix 103, 111 */ + padding-bottom: 2px; + /* This QLineEdit fix 103, 111 */ + padding-left: 4px; + padding-right: 4px; + border-style: solid; + border: 1px solid #696968; + border-radius: 2px; + color: White; + } + + QLineEdit:disabled { + background-color: #444444; + color: #c2c7cb; + } + + QLineEdit:hover { + border: 1px solid #2053c0; + color: White; + } + + QLineEdit:focus { + border: 2px solid #1b3774; + } + + QLineEdit:selected { + background-color: #2053c0; + color: white; + } + + /* QTabWiget -------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + + --------------------------------------------------------------------------- */ + QTabWidget { + padding: 2px; + selection-background-color: #2053c0; + } + + QTabWidget QWidget { + /* Fixes #189 */ + border-radius: 1.9px; + } + + QTabWidget::pane { + margin: 0px; + /* Fixes double border inside pane with pyqt5 */ + padding: 0px; + } + + QTabWidget::pane:selected { + background-color: #2053c0; + border: 1px solid #346792; + } + /* QTabBar ---------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + + --------------------------------------------------------------------------- */ + QTabBar, QDockWidget QTabBar { + qproperty-drawBase: 0; + /* left: 5px; move to the right by 5px - removed for fix */ + } + + QTabBar::close-button, QDockWidget QTabBar::close-button { + border: 0; + margin: 0; + padding: 1px; + image: url(qss:images_dark-light/close_light.svg); + } + + QTabBar::close-button:hover, QDockWidget QTabBar::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); + /*background-color: rgba(255, 0, 0, 0.3);*/ + } + + QTabBar::close-button:pressed, QDockWidget QTabBar::close-button:pressed { + image: url(qss:images_dark-light/close_.svg); + } + + QTabBar::tab, QDockWidget QTabBar::tab { + /* !selected and disabled ----------------------------------------- */ + /* selected ------------------------------------------------------- */ + padding: 4px; + } + + QTabBar::tab:top:selected:disabled, QDockWidget QTabBar::tab:top:selected:disabled { + color: #adadad; + } + + QTabBar::tab:bottom:selected:disabled, QDockWidget QTabBar::tab:bottom:selected:disabled { + color: #adadad; + } + + QTabBar::tab:left:selected:disabled, QDockWidget QTabBar::tab:left:selected:disabled { + color: #adadad; + } + + QTabBar::tab:right:selected:disabled, QDockWidget QTabBar::tab:right:selected:disabled { + color: #adadad; + } + + QTabBar::tab:top:!selected:disabled, QDockWidget QTabBar::tab:top:!selected:disabled { + color: #adadad; + } + + QTabBar::tab:bottom:!selected:disabled, QDockWidget QTabBar::tab:bottom:!selected:disabled { + color: #adadad; + + } + + QTabBar::tab:left:!selected:disabled, QDockWidget QTabBar::tab:left:!selected:disabled { + color: #adadad; + + } + + QTabBar::tab:right:!selected:disabled, QDockWidget QTabBar::tab:right:!selected:disabled { + color: #adadad; + } + + QTabBar::tab:top:!selected, QDockWidget QTabBar::tab:top:!selected { + color: #adadad; + } + + QTabBar::tab:bottom:!selected, QDockWidget QTabBar::tab:bottom:!selected { + color: #adadad; + } + + QTabBar::tab:left:!selected, QDockWidget QTabBar::tab:left:!selected { + color: #adadad; + } + + QTabBar::tab:right:!selected, QDockWidget QTabBar::tab:right:!selected { + color: #adadad; + } + + QTabBar::tab:top, QDockWidget QTabBar::tab:top { + color: #696969; + margin-left: 0px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + min-width: 5px; + border-bottom: 1px solid #696969; /* same as tab content background color */ + border-radius: 0px; + } + + QTabBar::tab:top:selected, QDockWidget QTabBar::tab:top:selected { + color: white; + border-top: 4px solid #2053c0; /* selection color */ + border-bottom: 1px solid transparent; /* same as tab content background color */ + border-left: 1px solid #696969; + border-right: 1px solid #696969; + } + + QTabBar::tab:top:!selected:hover, QDockWidget QTabBar::tab:top:!selected:hover { + /*border: 1px solid #2053c0;*/ + border: 0px solid #2053c0; + background-color: #2053c0; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; + } + + QTabBar::tab:bottom, QDockWidget QTabBar::tab:bottom { + color: #adadad; + margin-left: 0px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + min-width: 5px; + border-top: 1px solid #696969; /* same as tab content background color */ + border-radius: 0px; + } + + QTabBar::tab:bottom:selected, QDockWidget QTabBar::tab:bottom:selected { + color: white; + border-bottom: 4px solid #2053c0; /* selection color */ + border-top: 1px solid transparent; /* same as tab content background color */ + border-left: 1px solid #696969; + border-right: 1px solid #696969; + + } + + QTabBar::tab:bottom:!selected:hover, QDockWidget QTabBar::tab:bottom:!selected:hover { + /*border: 1px solid #2053c0;*/ + border: 0px solid #2053c0; + background-color: #2053c0; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; + } + + QTabBar::tab:left, QDockWidget QTabBar::tab:left { + background-color: #444444; + margin-top: 2px; + margin-left:10px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + border-radius: 4px; + min-height: 5px; + } + + QTabBar::tab:left:selected, QDockWidget QTabBar::tab:left:selected { + background-color: #444444; + border: 0px solid #1b3774; + } + + QTabBar::tab:left:!selected:hover, QDockWidget QTabBar::tab:left:!selected:hover { + border: 0px solid #2053c0; + background-color: #2053c0; + /* Fixes different behavior #271 */ + margin-right: 0px; + padding-right: -1px; + } + + QTabBar::tab:right, QDockWidget QTabBar::tab:right { + background-color: #444444; + margin-top: 2px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + min-height: 5px; + border: 10px; + } + + QTabBar::tab:right:selected, QDockWidget QTabBar::tab:right:selected { + background-color: #444444; + border: 0px solid #1b3774; + } + + QTabBar::tab:right:!selected:hover, QDockWidget QTabBar::tab:right:!selected:hover { + border: 0px solid #2053c0; + background-color: #2053c0; + /* Fixes different behavior #271 */ + margin-left: 0px; + padding-left: 0px; + } + + QTabBar QToolButton, QDockWidget QTabBar QToolButton { + /* Fixes #136 */ + background-color: #444444; + height: 12px; + width: 12px; + } + + QTabBar QToolButton:pressed, QDockWidget QTabBar QToolButton:pressed { + border: 0px solid #2053c0; + background-color: #2053c0; + } + + QTabBar QToolButton:pressed:hover, QDockWidget QTabBar QToolButton:pressed:hover { + border: 0px solid #2053c0; + background-color: #2053c0; + } + + QTabBar QToolButton::left-arrow:enabled, QDockWidget QTabBar QToolButton::left-arrow:enabled { + image: url(qss:images_dark-light/left_arrow_lighter.svg); + } + + QTabBar QToolButton::left-arrow:disabled, QDockWidget QTabBar QToolButton::left-arrow:disabled { + image: url(qss:images_dark-light/left_arrow_disabled_light.svg); + } + + QTabBar QToolButton::right-arrow:enabled, QDockWidget QTabBar QToolButton::right-arrow:enabled { + image: url(qss:images_dark-light/right_arrow_lighter.svg); + } + + QTabBar QToolButton::right-arrow:disabled, QDockWidget QTabBar QToolButton::right-arrow:disabled { + image: url(qss:images_dark-light/right_arrow_disabled_light.svg); + } + + /* QDockWiget ------------------------------------------------------------- + + --------------------------------------------------------------------------- */ + QDockWidget { + background-color: #444444; + border: 1px solid #2a2a2a; + border-radius: 1.9px; + titlebar-close-icon: url(qss:images_dark-light/transparent.svg); + titlebar-normal-icon: url(qss:images_dark-light/transparent.svg); + } + + QDockWidget::title { + /* Better size for title bar */ + padding: 3px; + spacing: 4px; + border: none; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); + text-align: center; + font-weight: bold; + } + + QDockWidget::close-button { + icon-size: 10px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/close_light.svg); + } + + QDockWidget::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); + } + + QDockWidget::close-button:pressed { + image: url(qss:images_dark-light/close_light.svg); + } + + QDockWidget::float-button { + icon-size: 12px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/undock_light.svg); + } + + QDockWidget::float-button:hover { + /*background-color: #2053c0;*/ + image: url(qss:images_dark-light/undock_blue.svg); + } + + QDockWidget::float-button:pressed { + image: url(qss:images_dark-light/undock_light.svg); + } + + /* QTreeView QListView QTableView ----------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtreeview + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlistview + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtableview + + --------------------------------------------------------------------------- */ + QTreeView::branch { + background: transparent; + } + + QTreeView::branch:has-siblings:!adjoins-item { + border-image: url(qss:images_dark-light/branch_vline_light.svg) 0; + } + + QTreeView::branch:has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_more_light.svg) 0; + } + + QTreeView::branch:!has-children:!has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_end_light.svg) 0; + } + + QTreeView::branch:closed:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_closed_light.svg) 0; + } + + QTreeView::branch:has-children:!has-siblings:closed { + border-image: url(qss:images_dark-light/branch_end_closed_light.svg) 0; + } + + QTreeView::branch:open:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_open_light.svg) 0; + } + + QTreeView::branch:open:has-children:!has-siblings { + border-image: url(qss:images_dark-light/branch_end_open_light.svg) 0; + } + + QTreeView::indicator:checked, + QListView::indicator:checked, + QTableView::indicator:checked, + QColumnView::indicator:checked { + image: url(qss:images_dark-light/checkbox_light.svg); + } + + QTreeView::indicator:checked:hover, QTreeView::indicator:checked:focus, QTreeView::indicator:checked:pressed, + QListView::indicator:checked:hover, + QListView::indicator:checked:focus, + QListView::indicator:checked:pressed, + QTableView::indicator:checked:hover, + QTableView::indicator:checked:focus, + QTableView::indicator:checked:pressed, + QColumnView::indicator:checked:hover, + QColumnView::indicator:checked:focus, + QColumnView::indicator:checked:pressed { + image: url(qss:images_dark-light/checkbox_light_hover.svg); + } + + QTreeView::indicator:unchecked, + QListView::indicator:unchecked, + QTableView::indicator:unchecked, + QColumnView::indicator:unchecked { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); + } + + QTreeView::indicator:unchecked:hover, QTreeView::indicator:unchecked:focus, QTreeView::indicator:unchecked:pressed, + QListView::indicator:unchecked:hover, + QListView::indicator:unchecked:focus, + QListView::indicator:unchecked:pressed, + QTableView::indicator:unchecked:hover, + QTableView::indicator:unchecked:focus, + QTableView::indicator:unchecked:pressed, + QColumnView::indicator:unchecked:hover, + QColumnView::indicator:unchecked:focus, + QColumnView::indicator:unchecked:pressed { + image: url(qss:images_dark-light/checkbox_unchecked_hover_light.svg); + } + + QTreeView::indicator:indeterminate, + QListView::indicator:indeterminate, + QTableView::indicator:indeterminate, + QColumnView::indicator:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); + } + + QTreeView::indicator:indeterminate:hover, QTreeView::indicator:indeterminate:focus, QTreeView::indicator:indeterminate:pressed, + QListView::indicator:indeterminate:hover, + QListView::indicator:indeterminate:focus, + QListView::indicator:indeterminate:pressed, + QTableView::indicator:indeterminate:hover, + QTableView::indicator:indeterminate:focus, + QTableView::indicator:indeterminate:pressed, + QColumnView::indicator:indeterminate:hover, + QColumnView::indicator:indeterminate:focus, + QColumnView::indicator:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); + } + + QTreeView, + QListView, + QTableView, + QColumnView { + background-color: #444444; /* background of a lot of stuff including spreadsheets.*/ + border: 0px solid #696968; + color: White; + gridline-color: #696968; + border-radius: 0px; + } + +QTableView, +QListView { + background-color: rgba(0, 0, 0, 0.232); /* background of a lot of stuff including spreadsheets.*/ +} + + + QTreeView:disabled, + QListView:disabled, + QTableView:disabled, + QColumnView:disabled { + background-color: #1c1b22; + color: #c2c7cb; + } + + QTreeView:selected, + QListView:selected, + QTableView:selected, + QColumnView:selected { + background-color: #2053c0; + color: White; + } + + QTreeView:focus, + QListView:focus, + QTableView:focus, + QColumnView:focus { + border: 1px solid #1b3774; + } + + QTreeView::item:pressed, + QListView::item:pressed, + QTableView::item:pressed, + QColumnView::item:pressed { + background-color: #2053c0; + } + + QTreeView::item:selected:active, + QListView::item:selected:active, + QTableView::item:selected:active, + QColumnView::item:selected:active { + background-color: #2053c0; + } + + QTreeView::item:selected:!active, + QListView::item:selected:!active, + QTableView::item:selected:!active, + QColumnView::item:selected:!active { + color: White; + background-color: #353535; + } + + QTreeView::item:!selected:hover, + QListView::item:!selected:hover, + QTableView::item:!selected:hover, + QColumnView::item:!selected:hover { + outline: 0; + color: White; + background-color: #2053c0; + } + + QTableCornerButton::section { + background-color: #444444; + border: 1px transparent #696968; + border-radius: 0px; + } + + QTableView::item { + color: white; + } + QTableView { + /*qproperty-AliasedCellBackgroundColor: #f700ff;*/ + /*qproperty-aliasBgColor: #f700ff;*/ + } + + /* QHeaderView ------------------------------------------------------------ + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qheaderview + + --------------------------------------------------------------------------- */ + QHeaderView { + background-color: transparent; + text-align: center; + } + + QHeaderView:disabled { + background-color: #444444; + color: rgb(174, 174, 174); + } + + QHeaderView::section { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); + color: White; + border: 1px solid #2a2a2a; + font-size: 13px; + font-weight: bold; + } + + QHeaderView::section::horizontal { + padding-top: 1px; + padding-bottom: 1px; + padding-left: 5px; + padding-right: 0px; + } + + QHeaderView::section::horizontal::first, QHeaderView::section::horizontal::only-one { + border-left: 0px solid #696968; + } + + QHeaderView::section::horizontal:disabled { + color: #353535; + } + + QHeaderView::section::vertical { + padding-top: 1px; + padding-bottom: 0; + padding-left: 1px; + padding-right: 0px; + border-top: 0px solid #2a2a2a; + } + + QHeaderView::section::vertical::first, QHeaderView::section::vertical::only-one { + border-top: 2px solid #2a2a2a; + } + + QHeaderView::section::vertical:disabled { + border-top: 2px solid #2a2a2a; + } + + QHeaderView::down-arrow { + /* Those settings (border/width/height/background-color) solve bug */ + /* transparent arrow background and size */ + background-color: transparent; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/down_arrow_light.svg); + } + + QHeaderView::up-arrow { + background-color: transparent; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/up_arrow_light.svg); + } + + /* QToolBox -------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbox + used in PATH + + --------------------------------------------------------------------------- */ + QToolBox { + padding: 0px; + border: 1px solid #696969; + border-radius: 4px; + background-color: transparent; + } + + QToolBox:selected { + padding: 0px; + border: 0px solid #2053c0; + } + + QToolBox::tab { + background-color: transparent; + border: 0px solid #696969; + color: white; + background-image: url(qss:images_dark-light/down_arrow_lighter.svg); background-repeat: none; background-position: center left; -} + } -QToolBar QToolButton#qt_toolbar_ext_button:hover { - /*background-image: url(qss:images_dark-light/more_light.svg);*/ - border-color: #424242; - background-color: #424242; -} + QToolBox::tab:disabled { + color: #696969; + } -QToolBar QToolButton#qt_toolbar_ext_button:on { - /*background-image: url(qss:images_dark-light/more_light.svg);*/ - border-color: #424242; - background-color: #424242; -} + QToolBox::tab:selected { + background-color: #696969; + background-image: url(qss:images_dark-light/transparent.svg); + padding-right: 5px; + background-repeat: none; + } - -/*================================================================================================== -Tables (spreadsheets) -==================================================================================================*/ -QTableView { - gridline-color: #a0a0a0; - selection-color: #1b3774; - selection-background-color: #adc5ed; -} - -QTableView::item:hover { - background-color: rgba(0,0,0,10); /* temporal: is it displayed in Linux or Windows? on OSX it isn't */ -} - -QTableView::item:disabled { - color: #333333; -} - -QTableView::item:selected { - color: #1b3774; - border-color: #cbd8e6; /* same as focused background color */ - border-bottom-color: #7cabf9; /* same as focused border color */ -} - -/* fix for elements inside the cells */ -QTableView > QWidget > QComboBox, -QTableView > QWidget > QAbstractSpinBox, -QTableView > QWidget > QSpinBox, -QTableView > QWidget > QDoubleSpinBox, -QTableView > QWidget > QLineEdit, -QTableView > QWidget > QTextEdit, -QTableView > QWidget > QTimeEdit, -QTableView > QWidget > QDateEdit, -QTableView > QWidget > QDateTimeEdit, -QTableView > QWidget > QComboBox:drop-down, -QTableView > QWidget > QAbstractSpinBox:up-button, -QTableView > QWidget > QSpinBox:up-button, -QTableView > QWidget > QDoubleSpinBox:up-button, -QTableView > QWidget > QTimeEdit:up-button, -QTableView > QWidget > QDateEdit:up-button, -QTableView > QWidget > QDateTimeEdit:up-button, -QTableView > QWidget > QAbstractSpinBox:down-button, -QTableView > QWidget > QSpinBox:down-button, -QTableView > QWidget > QDoubleSpinBox:down-button, -QTableView > QWidget > QTimeEdit:down-button, -QTableView > QWidget > QDateEdit:down-button, -QTableView > QWidget > QDateTimeEdit:down-button, -QTableView > QWidget > Gui--ColorButton { - border-radius: 0px; -} - -QTableView > QWidget > QComboBox, -QTableView > QWidget > QAbstractSpinBox, -QTableView > QWidget > QSpinBox, -QTableView > QWidget > QDoubleSpinBox, -QTableView > QWidget > QLineEdit, -QTableView > QWidget > QTextEdit, -QTableView > QWidget > QTimeEdit, -QTableView > QWidget > QDateEdit, -QTableView > QWidget > QDateTimeEdit { - color: black; - background-color: transparent; - border-color: transparent; -} - -QTableView > QWidget > QComboBox:drop-down, -QTableView > QWidget > QAbstractSpinBox:up-button, -QTableView > QWidget > QSpinBox:up-button, -QTableView > QWidget > QDoubleSpinBox:up-button, -QTableView > QWidget > QTimeEdit:up-button, -QTableView > QWidget > QDateEdit:up-button, -QTableView > QWidget > QDateTimeEdit:up-button, -QTableView > QWidget > QAbstractSpinBox:down-button, -QTableView > QWidget > QSpinBox:down-button, -QTableView > QWidget > QDoubleSpinBox:down-button, -QTableView > QWidget > QTimeEdit:down-button, -QTableView > QWidget > QDateEdit:down-button, -QTableView > QWidget > QDateTimeEdit:down-button, -QTableView > QWidget > Gui--ColorButton { - background-color: rgba(0,0,0,30); -} - -QTableView > QWidget > QComboBox:focus, -QTableView > QWidget > QAbstractSpinBox:focus, -QTableView > QWidget > QSpinBox:focus, -QTableView > QWidget > QDoubleSpinBox:focus, -QTableView > QWidget > QLineEdit:focus, -QTableView > QWidget > QTextEdit:focus, -QTableView > QWidget > QTimeEdit:focus, -QTableView > QWidget > QDateEdit:focus, -QTableView > QWidget > QDateTimeEdit:focus { - color: #1b3774; - selection-color: white; - selection-background-color: #2053c0; - border-color: #cbd8e6; - background-color: #cbd8e6; -} - -QTableView > QWidget > QComboBox:disabled, -QTableView > QWidget > QAbstractSpinBox:disabled, -QTableView > QWidget > QSpinBox:disabled, -QTableView > QWidget > QDoubleSpinBox:disabled, -QTableView > QWidget > QLineEdit:disabled, -QTableView > QWidget > QTextEdit:disabled, -QTableView > QWidget > QTimeEdit:disabled, -QTableView > QWidget > QDateEdit:disabled, -QTableView > QWidget > QDateTimeEdit:disabled { - color: rgba(0,0,0,120); - background-color: transparent; - border-color: transparent; -} - -QTableView > QWidget > QComboBox:read-only, -QTableView > QWidget > QAbstractSpinBox:read-only, -QTableView > QWidget > QSpinBox:read-only, -QTableView > QWidget > QDoubleSpinBox:read-only, -QTableView > QWidget > QLineEdit:read-only, -QTableView > QWidget > QTextEdit:read-only, -QTableView > QWidget > QTimeEdit:read-only, -QTableView > QWidget > QDateEdit:read-only, -QTableView > QWidget > QDateTimeEdit:read-only { - color: black; - background-color: transparent; - border-color: transparent; -} - - -/*================================================================================================== -SELECTORTOOLBAR widget (3rd party plugin) -==================================================================================================*/ -QToolBar:horizontal#Selector, -QToolBar:vertical#Selector { - background-color: rgba(0,0,0,120); - margin: 0px; - padding: 0px; -} - -QToolBar::handle:top#Selector, -QToolBar::handle:bottom#Selector, -QToolBar::handle:horizontal#Selector { - alignment: bottom left; -} - -QToolBar::handle:left#Selector, -QToolBar::handle:right#Selector, -QToolBar::handle:vertical#Selector { - width: 100%; - alignment: center left; -} - -QToolBar:top#Selector QToolButton, -QToolBar:bottom#Selector QToolButton, -QToolBar:horizontal#Selector QToolButton { - alignment: bottom left; -} - -QToolBar:left#Selector QToolButton, -QToolBar:right#Selector QToolButton, -QToolBar:vertical#Selector QToolButton { - alignment: center left; -} - -QToolButton[toolbar_orientation="horizontal"] { - /* nothing, when Horizontal there's no need to add special parameters */ -} - -QToolButton[toolbar_orientation="vertical"] { - /* nothing, when Horizontal there's no need to add special parameters */ -} - -QToolBar#Selector QToolButton { - border: none; - margin: 0px; - padding: 2px 6px; - border-radius: 0px; -} - -/* Active tab */ -QToolBar#Selector QToolButton:checked { + QToolBox::tab:selected:disabled { + background-color: #696969; + border-bottom: 0px solid #cccccc; color: white; + } + + QToolBox::tab:!selected { + + } + + QToolBox::tab:!selected:disabled { background-color: #444444; -} + } -/* Unactive tabs */ -QToolBar#Selector QToolButton:!checked { - color: rgba(255,255,255,160); + QToolBox::tab:hover { + background-color: #2053c0; + } + + QToolBox QScrollArea QWidget QWidget { + padding: 0px; + border: 0px; background-color: transparent; - margin: 0px; -} + } -/* Unactive tabs (hover) */ -QToolBar#Selector QToolButton:!checked:hover { - color: rgba(255,255,255,255); - background-color: rgba(255,255,255,20); -} + /* QFrame ----------------------------------------------------------------- -/* Unactive tabs (pressed) */ -QToolBar#Selector QToolButton:!checked:pressed { - background-color: rgba(255,255,255,40); -} + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe + https://doc.qt.io/qt-5/qframe.html#-prop + https://doc.qt.io/qt-5/qframe.html#details + https://stackoverflow.com/questions/14581498/qt-stylesheet-for-hline-vline-color + --------------------------------------------------------------------------- */ + /* (dot) .QFrame fix #141, #126, #123 */ + .QFrame { + border-radius: 0px; + border: 0px solid #696968; + background-color: #696969; + /* No frame */ + /* HLine */ + /* HLine */ + } -/*================================================================================================== -TABBAR widget (3rd party plugin) -==================================================================================================*/ -QTabWidget#TabBar > QTabBar { - border-top: 0; -} + .QFrame[frameShape="0"] { + border-radius: 1.9px; + border: 1px solid #696968; + } -QTabWidget#TabBar > QTabBar::tab:top, -QTabWidget#TabBar > QTabBar::tab:bottom { - min-width: -1; -} + .QFrame[frameShape="4"] { + max-height: 1px; + border: none; + background-color: #696968; + } -QTabWidget#TabBar > QTabBar::tab:left, -QTabWidget#TabBar > QTabBar::tab:right { - min-height: -1; -} + .QFrame[frameShape="5"] { + max-width: 1px; + border: none; + background-color: #444444; + } + /* QSplitter -------------------------------------------------------------- -/*================================================================================================== -EXPERIMENTAL -==================================================================================================*/ + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsplitter -/* Fix for preventing elements in different rows to accidentally overlap */ -QDialog QGroupBox QFrame { - margin: 2px 0px; -} + --------------------------------------------------------------------------- */ + QSplitter { + background-color: #3c3c3c; + spacing: 1px; + padding: 1px; + margin: 1px; + } -*[mandatoryField="true"] { background-color: cyan } + QSplitter::handle { + margin: 0px 0px; + padding: 0px; + } -/* Hack to avoid QPushButton text partially hidden under menu-indicator */ -QPushButton#NavigationIndicator::menu-indicator { - image: none; - width: 0px; -} + QSplitter::handle:horizontal { + background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + width: 1px; + } -QToolBar QToolButton[popupMode="1"] { - width: 100px; - background: red; -} + QSplitter::handle:vertical { + background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + height: 1px; + } -/*================================================================================================== -SKETCHER -==================================================================================================*/ + QSplitter::handle:hover { + background-image: url(qss:images_dark-light/splitter_horizontal_light.svg); + background-position: center center; + background-repeat: none; + background-color: #2053c0; + } -Gui--StatefulLabel[state="empty_sketch"] { - color : rgba(255,255,255,127); /* 50% opacity white */ -} -Gui--StatefulLabel[state="under_constrained"] { - color : rgba(255,255,255,255); /* White */ -} -Gui--StatefulLabel[state="conflicting_constraints"] { - color : rgba(255,0,0,255); /* Red */ -} -Gui--StatefulLabel[state="malformed_constraints"] { - color : rgba(255,0,0,255); /* Red */ -} -Gui--StatefulLabel[state="redundant_constraints"] { - color : rgba(255,69,0,255); /* Orange red */ -} -Gui--StatefulLabel[state="partially_redundant_constraints"] { - color : rgba(65,105,225,255); /* Royal blue */ -} -Gui--StatefulLabel[state="solver_failed"] { - color : rgba(255,0,0,255); /* Red */ - font-weight: bold; -} -Gui--StatefulLabel[state="fully_constrained"] { - color : rgba(0,255,0,255); /* Green */ - font-weight: bold; -} -Gui--UrlLabel { - color : rgba(0,91,255,255); /* Deep sky blue */ - text-decoration : underline; -} + /* QDateEdit, QDateTimeEdit ----------------------------------------------- + + --------------------------------------------------------------------------- */ + QDateEdit, QDateTimeEdit { + selection-background-color: #2053c0; + border-style: solid; + border: 1px solid #696968; + border-radius: 1.9px; + /* This fixes 103, 111 */ + padding-top: 2px; + /* This fixes 103, 111 */ + padding-bottom: 2px; + padding-left: 4px; + padding-right: 4px; + min-width: 10px; + } + + QDateEdit:on, QDateTimeEdit:on { + selection-background-color: #2053c0; + } + + QDateEdit::drop-down, QDateTimeEdit::drop-down { + subcontrol-origin: padding; + subcontrol-position: top right; + width: 12px; + border-left: 1px solid #696968; + } + + QDateEdit::down-arrow, QDateTimeEdit::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + height: 8px; + width: 8px; + } + + QDateEdit::down-arrow:on, QDateEdit::down-arrow:hover, QDateEdit::down-arrow:focus, QDateTimeEdit::down-arrow:on, QDateTimeEdit::down-arrow:hover, QDateTimeEdit::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_lighter.svg); + } + + QDateEdit QAbstractItemView, QDateTimeEdit QAbstractItemView { + background-color: #444444; + border-radius: 2px; + border: 1px solid #696968; + selection-background-color: #2053c0; + } + + /* QAbstractView ---------------------------------------------------------- + + --------------------------------------------------------------------------- */ + QAbstractView:hover { + border: 1px solid #2053c0; + color: White; + } + + QAbstractView:selected { + background: #2053c0; + color: White; + } + + /* PlotWidget ------------------------------------------------------------- + + --------------------------------------------------------------------------- */ + PlotWidget { + /* Fix cut labels in plots #134 */ + padding: 0px; + } \ No newline at end of file diff --git a/src/Gui/Stylesheets/Darker-green.qss b/src/Gui/Stylesheets/Darker-green.qss index e121ab3fef..d643eb300f 100644 --- a/src/Gui/Stylesheets/Darker-green.qss +++ b/src/Gui/Stylesheets/Darker-green.qss @@ -1,87 +1,88 @@ /* ABOUT ============================================================================================================ -version 2.22 -Qt theme (stylesheet) specially developed for FreeCAD (https://www.freecad.org/). -It might work with other software that uses Qt styling. +Revised stylesheet based on the original from Pablo Gil Fernández made by MisterMaker - -LICENSE +KNOWN BUGS and TO DO ============================================================================================================ -Copyright (c) 2019 Pablo Gil Fernández +Please, follow the link to get updated information: +https://forum.freecad.org/viewtopic.php?t=78431 -This work is licensed under the Creative Commons Attribution-ShareAlike 4.0 International License. -To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/4.0/. - - -INSTALLATION +INSTALLATION WHEN NECESSARY ============================================================================================================ 1) Place the .qss files and /images/ folder in the path that fits your OS: OSX = /Users/[YOUR_USER_NAME]/Library/Preferences/FreeCAD/Gui/Stylesheets/ WINDOWS = C:/[INSTALLATION_PATH]/FreeCAD/data/Gui/Stylesheets/ LINUX = /home/[YOUR_USER_NAME]/.FreeCAD/Gui/Stylesheets/ - -CUSTOMIZATION ============================================================================================================ -If you would like to change the overall look/style of the theme, just find and replace following colors in the whole file: - BACKGROUND (darker to lighter) - black - #1e1e1e - #2a2a2a = background - #333333 - #424242 - #3c3c3c - #444444 = main background color - #545454 = secondary - #787878 - #a0a0a0 - #b4b4b4 - #bebebe - #c8c8c8 - #d2d2d2 - #e0e0e0 - #f5f5f5 - white - - SELECTION (darker to lighter) - #566214 - #74831d - #819c0c - #94b30f = main selection color - #9bbc12 = used to build QSpinBox up and down buttons, it's used as color in the middle - #a5c61a - #c5d675 - #dadfc5 +TO MODIFY USE THESE COLORS: + #74831d + #6d8000 -KNOWN BUGS and TO DO -============================================================================================================ -Please, follow the link to get updated information: https://forum.freecad.org/viewtopic.php?f=10&t=12417 +See Qt documentation: -*/ + - https://doc.qt.io/qt-5/stylesheet.html + - https://doc.qt.io/qt-5/stylesheet-reference.html + - https://doc.qt.io/qt-5/stylesheet-examples.html + +--------------------------------------------------------------------------- */ -/*================================================================================================== -Reset elements -==================================================================================================*/ -/* Resetting everything helps to unify styles across different operating systems */ +/* Reset elements ------------------------------------------------------------ + +Resetting everything helps to unify styles across different operating systems + +--------------------------------------------------------------------------- */ * { - padding: 0px; - margin: 0px; - border: 0px; - border-style: none; - border-image: none; - outline: 0; - color: #f5f5f5; /* Default color for labels and different text elements that usually use dark colors */ + padding: 0px; + margin: 0px; + border: 0px; + border-style: none; + border-image: none; + outline: 0; } /* specific reset for elements inside QToolBar */ QToolBar * { + margin: 0px; + padding: 0px; +} + +/*hacks */ + Gui--PropertyEditor--PropertyEditor QLineEdit:read-only, +Gui--PropertyEditor--PropertyEditor QLineEdit:disabled, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:read-only, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:disabled { + color: transparent; + border-color: transparent; + background-color: transparent; + selection-color: transparent; + selection-background-color: transparent; + +} +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel, +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel:disabled { + color: transparent; + background-color: transparent; + border: none; + border-radius: 1px; margin: 0px; padding: 0px; } +Gui--PropertyEditor--PropertyEditor QSpinBox, +Gui--PropertyEditor--PropertyEditor QDoubleSpinBox, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox, +Gui--PropertyEditor--PropertyEditor QLineEdit, +Gui--PropertyEditor--PropertyEditor QComboBox { + margin-left: 0px; + margin-right: 0px; + padding-top: 0px; + padding-bottom: 0px; + +} /*================================================================================================== Main window @@ -94,970 +95,1398 @@ QToolBar { } QMdiArea { - background-image: url(qss:images_dark-light/background_freecad_dark.svg); - background-position: center center; - background-repeat: no-repeat; + background-image: url(qss:images_dark-light/background_freecad_dark.svg); + background-position: center center; + background-repeat: no-repeat; +} +/*navgation src/Mod/Tux/NavigationIndicatorGui.py */ +Gui--NavigationIndicatorGui--BlenderNavigationStyle { +/*QAction#a4 {*/ + qproperty-icon: url(:/icons/icons/NavigationBlender_light.svg); +} +/*===== +/* QWidget ---------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QWidget { + background-color: #444444; + border: 0px solid #696968; + padding: 0px; + color: White; + selection-background-color: #74831d; + selection-color: White; } - -/*================================================================================================== -Sub windows -==================================================================================================*/ -QMdiSubWindow { - border:1px solid #333333; - margin-top: 30px; - margin-left: 4px; - margin-right: 4px; - margin-bottom:4px; +QWidget:disabled { + background-color: transparent; + color: #c2c7cb; + selection-background-color: #74831d; + selection-color: #c2c7cb; } - -/*================================================================================================== -MENUS -==================================================================================================*/ -QMenuBar, -QMenuBar::item { - color: #f5f5f5; - background-color: #444444; /* main background color */ +QWidget::item:selected { + background-color: #74831d; } -QMenu, -QMenu::item { - color: #f5f5f5; - background-color: #2a2a2a; - text-decoration: none; -} - -QMenuBar::item:selected, -QMenuBar::item:pressed, -QMenu::item:selected, -QMenu::item:pressed { - color: #ffffff; + /* Causes issue with colorselector. + QWidget::item:hover:!selected { background-color: #74831d; -} + }*/ -QMenu::right-arrow { - width: 10px; - height: 10px; - image:url(qss:images_dark-light/right_arrow_dark.svg); - margin-right: 2px; -} +/* QMainWindow ------------------------------------------------------------ -QMenu::right-arrow:selected { - image:url(qss:images_dark-light/right_arrow_lighter.svg); -} +This adjusts the splitter in the dock widget, not qsplitter +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmainwindow -QMenu::item { - padding: 2px 4px; /* make room for icon at left */ - border: 1px solid transparent; /* reserve space for selection border */ -} - -QMenu::icon { - margin-left: 1px; - margin-right: 1px; -} - -QMenu::icon:checked { /* appearance of a 'checked' icon */ - background: #74831d; - border: 2px #74831d; - position: absolute; - border-radius: 2px; -} - -QMenu::separator { - height: 1px; - background-color: rgba(255,255,255,30); - margin: 6px 4px; -} - -QMenu::indicator:non-exclusive:checked { - color: white; -} - -/* Fix for elements inside a drop-down menu */ -QMenu QRadioButton, -QMenu QCheckBox, -QMenu QPushButton, -QMenu QToolButton { - color: white; /* same as regular QRadioButton and QCheckBox */ -} - -QMenu QRadioButton:hover, -QMenu QCheckBox:hover, -QMenu QPushButton:hover, -QMenu QToolButton:hover, -QMenu QPushButton:pressed, -QMenu QToolButton:pressed, -QMenu QPushButton:selected, -QMenu QToolButton:selected { - color: white; - background-color: #74831d; /* same as QMenu::item:selected and QMenu::item:pressed */ -} - -QMenu QRadioButton:disabled, -QMenu QCheckBox:disabled { - color: #f5f5f5; -} - -QMenu QRadioButton::indicator:disabled, -QMenu QCheckBox::indicator:disabled { - color: #f5f5f5; - background-color: transparent; - border: 1px solid #f5f5f5; -} - - -/*================================================================================================== -Tool bar -==================================================================================================*/ -QToolBar { - padding: 2px; -} - -QToolBar::handle:top, -QToolBar::handle:bottom, -QToolBar::handle:horizontal { - background-image: url(qss:images_dark-light/Hmovetoolbar_light.svg); - width: 10px; - margin: 4px 2px; - background-position: top right; - background-repeat: repeat-y; -} - -QToolBar::handle:left, -QToolBar::handle:right, -QToolBar::handle:vertical { - background-image: url(qss:images_dark-light/Vmovetoolbar_light.svg); - height: 10px; - margin: 2px 4px; - background-position: left bottom; - background-repeat: repeat-x; -} - -QToolBar::separator:top, -QToolBar::separator:bottom, -QToolBar::separator:horizontal { - width: 1px; - margin: 6px 4px; - background-color: rgba(0,0,0,30); -} - -QToolBar::separator:left, -QToolBar::separator:right, -QToolBar::separator:vertical { - height: 1px; - margin: 4px 6px; - background-color: rgba(0,0,0,30); -} - - -/*================================================================================================== -Group box -==================================================================================================*/ -QGroupBox { - color: rgba(255,255,255,120); - border:1px solid rgba(255,255,255,20); /* lighter than its own border-color */; - border-radius: 3px; - margin-top: 10px; - padding: 6px; - background-color: rgba(255,255,255,0); -} - -QGroupBox:title { - top: -8px; - left: 12px; -} - -/* NOTE: QGroupBox checkboxes are styles with regular ones so that the all get the same style */ -/* QGroupBox::indicator { - width: 13px; - height: 13px; -} - -QGroupBox::indicator:unchecked { - image: url(:/images/checkbox_unchecked.png); -} */ - - -/*================================================================================================== -Tooltip -==================================================================================================*/ -QToolTip { - color: #ffffff; - background-color: #1e1e1e; - /*opacity: 90%; doesn't correctly work */ - padding: 4px; - border-radius: 3px; /* has no effect */ -} - - -/*================================================================================================== -Dock widget -==================================================================================================*/ -QDockWidget { - color: #a0a0a0; - titlebar-close-icon: url(qss:images_dark-light/close_light.svg); - titlebar-normal-icon: url(qss:images_dark-light/undock_light.svg); -} - -QDockWidget::title { - text-align: center; - background-color: rgba(0,0,0,40); - border: 4px solid #444444; /* fix to simulate margin between this :title and tabs */ /* same as main background color */ - border-radius: 6px; /* bigger than normal due to previous border fix */ - padding: 4px 0px; /* also needed because of previous border fix */ -} - -QDockWidget::close-button, -QDockWidget::float-button { - border: none; - background: transparent; - border-radius: 3px; - subcontrol-origin: padding; - subcontrol-position: right center; -} - -QDockWidget::close-button { - right: 4px; -} - -QDockWidget::float-button { - right: 22px; -} - -QDockWidget::close-button:hover, -QDockWidget::float-button:hover { - background-color: rgba(0,0,0,60); -} - -QDockWidget::close-button:pressed, -QDockWidget::float-button:pressed { - background-color: rgba(0,0,0,120); -} - -/* fix for Python Console (probably there is a smarter way to arrive to it) */ -QDockWidget > QFrame { - background-color: #787878; - border: 1px solid #333333; -} - - -/*================================================================================================== -Progress bar -==================================================================================================*/ -QProgressBar, -QProgressBar:horizontal { - color: white; - background-color: rgba(0,0,0,70); - text-align: center; - border: 1px solid rgba(0,0,0,140); - padding: 1px; - border-radius: 3px; -} -QProgressBar::chunk, -QProgressBar::chunk:horizontal { - background-color: qlineargradient(spread:pad, x1:1, y1:0.545, x2:1, y2:0, stop:0 #819c0c, stop:1 #94b30f); - border-radius: 3px; -} - - -/*================================================================================================== -Scroll -==================================================================================================*/ -QAbstractScrollArea { - border-radius: 2px; - background-color: transparent; -} - -QAbstractScrollArea::corner { - border: none; - background-color: transparent; -} - -QScrollBar:horizontal { - background-color: transparent; - height: 15px; - margin: 0px; -} - -QScrollBar::handle:vertical, -QScrollBar::handle:horizontal { - background-color: rgba(255,255,255,80); -} - -QScrollBar::handle:vertical:hover, -QScrollBar::handle:horizontal:hover { - background-color: rgba(255,255,255,100); -} - -QScrollBar::handle:horizontal { - min-width: 5px; - border-radius: 3px; - margin: 4px 15px; -} - -QScrollBar::sub-line:horizontal { - margin: 1px 3px 0px 3px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/left_arrow_light.svg); - width: 6px; - height: 10px; - subcontrol-position: left; - subcontrol-origin: margin; -} - -QScrollBar::add-line:horizontal { - margin: 1px 3px 0px 3px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/right_arrow_light.svg); - width: 6px; - height: 10px; - subcontrol-position: right; - subcontrol-origin: margin; -} - -QScrollBar::sub-line:horizontal:hover, -QScrollBar::sub-line:horizontal:on { - border-image: url(qss:images_dark-light/left_arrow_lighter.svg); -} - -QScrollBar::add-line:horizontal:hover, -QScrollBar::add-line:horizontal:on { - border-image: url(qss:images_dark-light/right_arrow_lighter.svg); -} - -QScrollBar::up-arrow:horizontal, -QScrollBar::down-arrow:horizontal { - background-color: none; -} - -QScrollBar::add-page:horizontal, -QScrollBar::sub-page:horizontal { - background-color: transparent; -} - -QScrollBar:vertical { - background-color: transparent; - width: 15px; - margin: 0px; -} - -QScrollBar::handle:vertical { - min-height: 5px; - border-radius: 3px; - margin: 15px 4px; -} - -QScrollBar::sub-line:vertical { - margin: 3px 0px 3px 1px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/up_arrow_light.svg); - height: 6px; - width: 10px; - subcontrol-position: top; - subcontrol-origin: margin; -} - -QScrollBar::add-line:vertical { - margin: 3px 0px 3px 1px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/down_arrow_light.svg); - height: 6px; - width: 10px; - subcontrol-position: bottom; - subcontrol-origin: margin; -} - -QScrollBar::sub-line:vertical:hover, -QScrollBar::sub-line:vertical:on { - border-image: url(qss:images_dark-light/up_arrow_lighter.svg); -} - -QScrollBar::add-line:vertical:hover, -QScrollBar::add-line:vertical:on { - border-image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -QScrollBar::up-arrow:vertical, -QScrollBar::down-arrow:vertical { - background-color: none; -} - -QScrollBar::add-page:vertical, -QScrollBar::sub-page:vertical { - background-color: transparent; -} - - -/*================================================================================================== -Tab bar -==================================================================================================*/ -QTabWidget::pane { - background-color: transparent; /* temporal (transparent background) */ /* tab content background color */ - position: absolute; -} - -QTabWidget::pane:top { - top: -1px; - border-top: 1px solid #787878; -} - -QTabWidget::pane:bottom { - bottom: -1px; - border-bottom: 1px solid #787878; -} - -QTabWidget::pane:left { - right: -1px; - border-right: 1px solid #787878; -} - -QTabWidget::pane:right { - left: -1px; - border-left: 1px solid #787878; -} - -QTabWidget::tab-bar:top, -QTabWidget::tab-bar:bottom { - left: 10px; -} - -QTabWidget::tab-bar:left, -QTabWidget::tab-bar:right { - top: 10px; -} - -QTabBar { - qproperty-drawBase: 0; /* important */ - background-color: transparent; -} - -/* Workaround for QTabBars created from docked QDockWidgets which don't draw the border if not set and reset as follows: */ -QTabBar { - border-top: 1px solid #787878; /* set color for all QTabBars */ -} -QDockWidget QTabBar { - border-color: transparent; /* set color for all QTabBars but ones created from QDockWidget */ -} -QDialog QTabBar { - border-color: transparent; /* set color for QTabBars inside Preferences dialog */ -} -/* end fix */ - -QTabBar::tab { - background-color: transparent; - border: 1px solid transparent; - padding: 3px; -} - -QTabBar::tab:top, -QTabBar::tab:bottom { - border-top-width: 4px; /* same as selected tab colored border in order to center close-button */ - border-bottom-width: 4px; /* same as selected tab colored border in order to center close-button */ - min-width: 11ex; - margin-left: 2px; - margin-right: 2px; -} - -QTabBar::tab:left, -QTabBar::tab:right { - border-left-width: 4px; /* same as selected tab colored border in order to center close-button */ - border-right-width: 4px; /* same as selected tab colored border in order to center close-button */ - min-height: 14ex; - margin-top: 2px; - margin-bottom: 2px; -} - -QTabBar::tab:selected { - color: #f5f5f5; - background-color: #444444; /* same as tab content background color */ - border-color: #787878; -} - -QTabBar::tab:top:selected { - border-top: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #94b30f, stop:1 #819c0c); /* selection color */ - border-bottom-color: #444444; /* same as tab content background color */ -} - -QTabBar::tab:bottom:selected { - border-bottom: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #94b30f, stop:1 #819c0c); /* selection color */ - border-top-color: #444444; /* same as tab content background color */ -} - -QTabBar::tab:right:selected { - border-left: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:1, y2:0, stop:0 #94b30f, stop:1 #819c0c); /* selection color */ - border-right-color: #444444; /* same as tab content background color */ -} - -QTabBar::tab:left:selected { - border-right: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:1, y2:0, stop:0 #94b30f, stop:1 #819c0c); /* selection color */ - border-left-color: #444444; /* same as tab content background color */ -} - -QTabBar::tab:!selected { - color: rgba(255,255,255,120); -} - -QTabBar::tab:!selected:hover { - color: rgba(255,255,255,180); - background-color: rgba(255,255,255,20); -} - -QTabBar::tab:first:selected { - margin-left: 0; /* the first selected tab has nothing to overlap with on the left */ -} - -QTabBar::tab:last:selected { - margin-right: 0; /* the last selected tab has nothing to overlap with on the right */ -} - -QTabBar::tab:only-one { - margin: 0; /* if there is only one tab, we don't want overlapping margins */ -} - -/* hack to access Preference TabBar background */ -QDialog#Gui__Dialog__DlgPreferences > QFrame QFrame { - background-color: transparent; /* main background color (in Windows is #444444) */ -} - -/* fix for previous hack that broke QTabWidget background on Windows */ -QDialog#Gui__Dialog__DlgPreferences QTabWidget::pane { - background-color: transparent; /* temporal (transparent background) */ -} - -/* hack to correctly align Preferences icon list on OSX */ -QDialog#Gui__Dialog__DlgPreferences > QListView { - min-width: 130px; -} - -/* unique styles for sections inside Preferences */ -QDialog#Gui__Dialog__DlgPreferences > QListView::item { - border-radius: 4px; -} - -QDialog#Gui__Dialog__DlgPreferences > QListView::item:hover { - background-color: #787878; -} - -QDialog#Gui__Dialog__DlgPreferences > QListView::item:selected { - color: white; - background-color: #74831d; -} - - -/*================================================================================================== -Tab bar buttons -==================================================================================================*/ -/* Close button */ -QTabBar::close-button { - subcontrol-origin: margin; - subcontrol-position: center right; /* only works for Qt 4.6 and newer */; - border-radius: 2px; - background-image: url(qss:images_dark-light/close_dark.svg); - background-position: center center; - background-repeat: none; -} - -QTabBar::close-button:hover { - background-color: rgba(255,255,255,20); -} - -QTabBar::close-button:pressed { - background-color: rgba(255,255,255,30); -} - -/* Fix for lists inside Model tab */ -QDockWidget QTreeView, -QDockWidget QListView, -QDockWidget QTableView { - margin: 6px; - border: 1px solid #333333; /* same as regular QTreeView, QListView and QTableView */ - min-height: 40px; /* necessary in some areas of FreeCAD */ -} - -/* Buttons to scroll tabs if there is not space to show all of them: */ -QTabBar::scroller { - width: 20px; /* the width of the scroll buttons */ -} - -QTabBar QToolButton, -QTabBar QToolButton:hover { - background-color: #444444; /* same as main background color */ -} - -QTabBar QToolButton::right-arrow:enabled { - image: url(qss:images_dark-light/right_arrow_dark.svg); -} - -QTabBar QToolButton::right-arrow:disabled, -QTabBar QToolButton::right-arrow:off { - image: url(qss:images_dark-light/right_arrow_disabled_dark.svg); -} - -QTabBar QToolButton::right-arrow:hover { - image: url(qss:images_dark-light/right_arrow_darker.svg); -} - - QTabBar QToolButton::left-arrow:enabled { - image: url(qss:images_dark-light/left_arrow_dark.svg); -} - - QTabBar QToolButton::left-arrow:disabled, - QTabBar QToolButton::left-arrow:off { - image: url(qss:images_dark-light/left_arrow_disabled_dark.svg); -} - - QTabBar QToolButton::left-arrow:hover { - image: url(qss:images_dark-light/left_arrow_darker.svg); -} - - QTabBar QToolButton::up-arrow:enabled { - image: url(qss:images_dark-light/up_arrow_dark.svg); -} - - QTabBar QToolButton::up-arrow:disabled, - QTabBar QToolButton::up-arrow:off { - image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); -} - - QTabBar QToolButton::up-arrow:hover { - image: url(qss:images_dark-light/up_arrow_darker.svg); -} - - QTabBar QToolButton::down-arrow:enabled { - image: url(qss:images_dark-light/down_arrow_dark.svg); -} - - QTabBar QToolButton::down-arrow:disabled, - QTabBar QToolButton::down-arrow:off { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - - QTabBar QToolButton::down-arrow:hover { - image: url(qss:images_dark-light/down_arrow_darker.svg); -} - -QTabBar::tear { - /* default OS tear better */ -} - - -/*================================================================================================== -Tree and list views -==================================================================================================*/ -QTreeView, -QListView, -QTableView { - color: #e0e0e0; - background-color: #545454; - alternate-background-color: #444444; /* related with QListView background */ - border: 1px solid #333333; - selection-color: #ffffff; - selection-background-color: #74831d; /* should be similar to QListView::item selected background-color */ - show-decoration-selected: 1; /* make the selection span the entire width of the view */ - border-radius: 3px; -} - -QListView::item:hover, -QTreeView::item:hover { - background-color: transparent; /* fix to homogenize it on all OSs */ -} - -QListView::item:selected, -QTreeView::item:selected { - color: #ffffff; /* should be similar to QListView selection-color */ - background-color: #74831d; /* should be similar to QListView selection-background-color */ - show-decoration-selected: 1; /* make the selection span the entire width of the view */ -} - -/* Property Editor QTreeView (FreeCAD custom widget) */ -Gui--PropertyEditor--PropertyEditor { - gridline-color: #444444; /* same as Group header background */ -} - -/* fix for column items background when a link is present */ -Gui--PropertyEditor--PropertyEditor > QWidget > QFrame:focus { - background-color: #74831d; /* same as focused background color */ -} - -/* hack to hide weird redundant information inside the value of a Placement cell */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel, -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel:disabled { - color: transparent; - background-color: transparent; - border: none; - border-radius: 0px; - margin: 0px; - padding: 0px; -} - -/* hack to hide non editable cells inside Property values */ -Gui--PropertyEditor--PropertyEditor QLineEdit:read-only, -Gui--PropertyEditor--PropertyEditor QLineEdit:disabled, -Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:read-only, -Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:disabled { - color: transparent; - border-color: transparent; - background-color: transparent; - selection-color: transparent; - selection-background-color: transparent; -} - -/* hack to hide weird redundant information inside cells with links and no editable data (but editable via "..." button) */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel { - color: #566214; - background-color: #74831d; /* same as focused background color */ -} - -/* hack to disable margin inside Property values to following elements */ -Gui--PropertyEditor--PropertyEditor QSpinBox, -Gui--PropertyEditor--PropertyEditor QDoubleSpinBox, -Gui--PropertyEditor--PropertyEditor QAbstractSpinBox, -Gui--PropertyEditor--PropertyEditor QLineEdit, -Gui--PropertyEditor--PropertyEditor QComboBox { - margin-left: 0px; - margin-right: 0px; - padding-top: 0px; - padding-bottom: 0px; -} - -/* reset min-height to 0px inside list views */ -QTreeView > QWidget > QComboBox, -QTreeView > QWidget > QAbstractSpinBox, -QTreeView > QWidget > QSpinBox, -QTreeView > QWidget > QDoubleSpinBox, -QTreeView > QWidget > QLineEdit, -QTreeView > QWidget > QTextEdit, -QTreeView > QWidget > QTimeEdit, -QTreeView > QWidget > QDateEdit, -QTreeView > QWidget > QDateTimeEdit, -QTreeView > QWidget > Gui--ColorButton { - min-height: 0px; -} - -/* set border-radius to 0px inside list views */ -QTreeView > QWidget > QComboBox, -QTreeView > QWidget > QAbstractSpinBox, -QTreeView > QWidget > QSpinBox, -QTreeView > QWidget > QDoubleSpinBox, -QTreeView > QWidget > QLineEdit, -QTreeView > QWidget > QTextEdit, -QTreeView > QWidget > QTimeEdit, -QTreeView > QWidget > QDateEdit, -QTreeView > QWidget > QDateTimeEdit, -QTreeView > QWidget > QComboBox:drop-down, -QTreeView > QWidget > QAbstractSpinBox:up-button, -QTreeView > QWidget > QSpinBox:up-button, -QTreeView > QWidget > QDoubleSpinBox:up-button, -QTreeView > QWidget > QTimeEdit:up-button, -QTreeView > QWidget > QDateEdit:up-button, -QTreeView > QWidget > QDateTimeEdit:up-button, -QTreeView > QWidget > QAbstractSpinBox:down-button, -QTreeView > QWidget > QSpinBox:down-button, -QTreeView > QWidget > QDoubleSpinBox:down-button, -QTreeView > QWidget > QTimeEdit:down-button, -QTreeView > QWidget > QDateEdit:down-button, -QTreeView > QWidget > QDateTimeEdit:down-button, -QTreeView > QWidget > Gui--ColorButton { - border-radius: 0px; -} - -/* set focus colors to best viewing the editable fields */ -QTreeView > QWidget > QComboBox:focus, -QTreeView > QWidget > QAbstractSpinBox:focus, -QTreeView > QWidget > QSpinBox:focus, -QTreeView > QWidget > QDoubleSpinBox:focus, -QTreeView > QWidget > QLineEdit:focus, -QTreeView > QWidget > QTextEdit:focus, -QTreeView > QWidget > QTimeEdit:focus, -QTreeView > QWidget > QDateEdit:focus, -QTreeView > QWidget > QDateTimeEdit:focus { - border-color: #2a2a2a; /* same as focused background color */ - border-bottom-color: #1e1e1e; /* same as focused border color */ -} - -QTreeView > QWidget > QAbstractSpinBox:read-only, -QTreeView > QWidget > QSpinBox:read-only, -QTreeView > QWidget > QDoubleSpinBox:read-only, -QTreeView > QWidget > QLineEdit:read-only, -QTreeView > QWidget > QTextEdit:read-only, -QTreeView > QWidget > QTimeEdit:read-only, -QTreeView > QWidget > QDateEdit:read-only, -QTreeView > QWidget > QDateTimeEdit:read-only { - color: transparent; - background-color: transparent; - border-color: transparent; -} - -/* Fix to correctly (not totally) draw QTextEdit on OSX at Page properties: "Page result", "Template" and "Editable Texts" */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QWidget { - min-height: 14px; - border-radius: 0px; /* reset */ -} - - -/*================================================================================================== -Header of tree and list views -==================================================================================================*/ -QHeaderView { - color: #d2d2d2; - background-color: #2a2a2a; - border-top-left-radius: 2px; /* 1px less than its container */ - border-top-right-radius: 2px; /* 1px less than its container */ - border-bottom-left-radius: 0px; - border-bottom-right-radius: 0px; -} - -QHeaderView::section { - border:none; - padding: 4px 6px; - background-color: #2a2a2a; -} - -QHeaderView::section:horizontal { - padding: 4px 6px; /* left and right value similar to QHeaderView::section */ - border-right: 1px solid rgba(255,255,255,30); -} - -QHeaderView::section:vertical { - border-bottom: 1px solid rgba(255,255,255,30); -} - -QTableCornerButton::section { - background-color: #2a2a2a; - border-top: none; - border-left: none; - border-right: 1px solid rgba(255,255,255,30); - border-bottom: 1px solid rgba(255,255,255,30); -} - -QHeaderView::section:last { - border-right: none; -} - -QHeaderView::up-arrow { - image: url(qss:images_dark-light/up_arrow_light.svg); -} - -QHeaderView::up-arrow:hover { - image: url(qss:images_dark-light/up_arrow_lighter.svg); -} - -QHeaderView::down-arrow { - image: url(qss:images_dark-light/down_arrow_light.svg); -} - -QHeaderView::down-arrow:hover { - image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -/* Group header inside Property Editor (FreeCAD custom widget) */ -Gui--PropertyEditor--PropertyEditor { - qproperty-groupTextColor: #bebebe; - qproperty-groupBackground: #2a2a2a; -} - - -/*================================================================================================== -Branch system for QTreeViews -==================================================================================================*/ -QTreeView::branch { - background: transparent; -} - -QTreeView::branch:has-siblings:!adjoins-item { - border-image: url(qss:images_dark-light/branch_vline_light.svg) 0; -} - -QTreeView::branch:has-siblings:adjoins-item { - border-image: url(qss:images_dark-light/branch_more_light.svg) 0; -} - -QTreeView::branch:!has-children:!has-siblings:adjoins-item { - border-image: url(qss:images_dark-light/branch_end_light.svg) 0; -} - -QTreeView::branch:closed:has-children:has-siblings { - border-image: url(qss:images_dark-light/branch_more_closed_light.svg) 0; -} - -QTreeView::branch:has-children:!has-siblings:closed { - border-image: url(qss:images_dark-light/branch_end_closed_light.svg) 0; -} - -QTreeView::branch:open:has-children:has-siblings { - border-image: url(qss:images_dark-light/branch_more_open_light.svg) 0; -} - -QTreeView::branch:open:has-children:!has-siblings { - border-image: url(qss:images_dark-light/branch_end_open_light.svg) 0; -} - - -/*================================================================================================== -Splitter and windows separator -==================================================================================================*/ -QSplitter::handle { - margin: 0px 11px; - padding: 0px; -} - -QSplitter::handle:horizontal { - background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); - background-position: center center; - background-repeat: none; - margin: 4px 2px 4px 2px; - width: 2px; -} - -QSplitter::handle:vertical { - background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); - background-position: center center; - background-repeat: none; - margin: 2px 4px 2px 4px; - height: 2px; -} - -/* Similar to the splitter is the following window separator (but horizontal/vertical is on the opposite way) */ +--------------------------------------------------------------------------- */ QMainWindow::separator { - background-position: center center; - background-repeat: none; + /*background-color: #3c3c3c;*/ + border: 0px solid #696968; + spacing: 0px; + padding: 1px; +} + +QMainWindow::separator:vertical:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,stop:0.2 transparent,stop:0.5 #74831d, stop:0.8 transparent); + /*background-color: #74831d;*/ + image: url(qss:images_dark-light/splitter_vertical_light.svg); +} + +QMainWindow::separator:horizontal:hover { + background-color: qlineargradient(x1:0, y1:0, x2:1, y2:0,stop:0.2 transparent,stop:0.5 #74831d, stop:0.8 transparent); + /*background-color: #74831d;*/ + image: url(qss:images_dark-light/splitter_horizontal_light.svg); } QMainWindow::separator:horizontal { - height: 2px; - background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); - margin: 4px 2px 4px 2px; + width: 4px; + margin-top: 0.1px; + margin-bottom: 0.1px; + /* image: url(qss:images_dark-light/splitter_horizontal_dark.svg);*/ } QMainWindow::separator:vertical { - width: 2px; - background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); - margin: 2px 4px 2px 4px; + height: 4px; + margin-left: 0.1px; + margin-right: 0.1px; + /* image: url(qss:images_dark-light/splitter_vertical_dark.svg);*/ +} + +/* QToolTip --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtooltip + +--------------------------------------------------------------------------- */ +QToolTip { + background-color: #1c1b22; + color: White; + /* If you remove the border property, background stops working on Windows */ + border: none; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Remove opacity, fix #174 - may need to use RGBA */ +} + +/* QStatusBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qstatusbar + +--------------------------------------------------------------------------- */ +QStatusBar { + border: 0px solid #3c3c3c; + /* Fixes Spyder #9120, #9121 */ + background: #444444; + /* Fixes #205, white vertical borders separating items */ +} + +QStatusBar::item { + border: none; +} + +QStatusBar QToolTip { + background-color: #444444; + border: 1px solid #696968; + color: #444444; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Reducing transparency to read better */ + opacity: 230; +} + +QStatusBar QLabel { + /* Fixes Spyder #9120, #9121 */ + background: transparent; +} + +/* QCheckBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcheckbox + +--------------------------------------------------------------------------- */ +QCheckBox { + color: white; + padding: 0px; + outline: none; + border: 1px solid transparent; + background-color: transparent; +} + +QCheckBox:focus { + border: 1px solid #6d8000; +} + +QCheckBox QWidget:disabled { + background-color: transparent; + color: #c2c7cb; +} + +QCheckBox::indicator { + color: white; + background-color: #1c1b22; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QCheckBox::indicator:unchecked { + background-color: #1c1b22; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QCheckBox::indicator:unchecked:hover, QCheckBox::indicator:unchecked:focus, QCheckBox::indicator:unchecked:pressed { + background-color: #74831d; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QCheckBox::indicator:unchecked:disabled { + background-color: #444444; + image:url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QCheckBox::indicator:checked { + background-color: #1c1b22; + /*border: 1px solid #696968; /* QRadioButton has the same color */ + image:url(qss:images_dark-light/checkbox_light.svg); +} + +QCheckBox::indicator:checked:hover, QCheckBox::indicator:checked:pressed { + background-color: #74831d; +} + +QCheckBox::indicator:checked:disabled { + background-color: #444444; + image: url(qss:images_dark-light/check_light.svg); +} + +QCheckBox::indicator:indeterminate { + background-color: #1c1b22; + border: 1px solid #696968; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QCheckBox::indicator:indeterminate:disabled { + background-color: #444444; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QCheckBox::indicator:indeterminate:hover, QCheckBox::indicator:indeterminate:pressed { + background-color: #74831d; /* QRadioButton has the same color */ +} + +/* QGroupBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qgroupbox + +--------------------------------------------------------------------------- */ +QGroupBox { + font-weight: bold; + border: 1px solid #696968; + border-radius: 1.9px; + padding: 2px; + margin-top: 10px; + margin-bottom: 4px; +} + +QGroupBox::title { + subcontrol-origin: margin; + subcontrol-position: top left; + left: 4px; + padding-left: 2px; + padding-right: 4px; + padding-top: 6px; +} + +QGroupBox::indicator { + color: white; + background-color: #3c3c3c; + border: 1px solid #696968; + width: 12px; + height: 12px; + border-radius:1px; +} + +QGroupBox::indicator:unchecked { + background-color: #696968; + border: 1px solid #696968; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QGroupBox::indicator:unchecked:hover, QGroupBox::indicator:unchecked:focus, QGroupBox::indicator:unchecked:pressed { + background-color: #74831d; +} + +QGroupBox::indicator:unchecked:disabled { + background-color: #1c1b22; + border: 1px solid #696968; +} + +QGroupBox::indicator:checked { + border: none; + image:url(qss:images_dark-light/checkbox_light.svg); +} + +QGroupBox::indicator:checked:hover, QGroupBox::indicator:checked:focus, QGroupBox::indicator:checked:pressed { + background-color: #74831d; +} + +QGroupBox::indicator:checked:disabled { + background-color: #74831d; +} + +/* QRadioButton ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qradiobutton + +--------------------------------------------------------------------------- */ +QRadioButton { + background-color: transparent; + color: White; + border: none; + spacing: 4px; + padding-top: 4px; + padding-bottom: 4px; + outline: none; +} + +QRadioButton:focus { + border: 1px solid #6d8000; +} + +QRadioButton:disabled { + background-color: #696968; + color: #353535; +} + +QRadioButton QWidget { + background-color: transparent; + color: White; + spacing: 0px; + padding: 0px; + outline: none; + border: none; +} + +QRadioButton::indicator { + background-color: #3c3c3c; + border: 1px solid #696968; + border-radius: 6px; + margin-left: 0px; + height: 11px; + width: 11px; +} + +QRadioButton::indicator:unchecked { + /*image:url(qss:images_dark-light/radiobutton_light.svg);*/ +} + +QRadioButton::indicator:unchecked:hover, QRadioButton::indicator:unchecked:pressed { + background-color: #74831d; + border: 1px solid #74831d; + border-radius: 6px; +} + +QRadioButton::indicator:unchecked:disabled { + /*image:url(qss:images_dark-light/radiobutton_dark.svg);*/ + border: 1px solid #696968; +} + +QRadioButton::indicator:checked { + image:url(qss:images_dark-light/radiobutton_light.svg); +} + +QRadioButton::indicator:checked:hover, QRadioButton::indicator:checked:pressed { + background-color: #74831d; + border: 1px solid #74831d; + border-radius: 6px; + image:url(qss:images_dark-light/radiobutton_light.svg); +} + +QRadioButton::indicator:checked:disabled { + outline: none; + background-color: #696968; + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +/* QMenuBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenubar + +--------------------------------------------------------------------------- */ +QMenuBar { + background-color: #161616; + /*padding: 1px; + border: 0px solid rgba(0,0,0,140);*/ + color: White; + selection-background-color: #74831d; +} + +QMenuBar:focus { + border: 1px solid #6d8000; +} + +QMenuBar::item { + background: transparent; + /*padding-left:5px; + padding-right: 5px; + padding-bottom: 1px; + padding-top: 1px;*/ +} + +QMenuBar::item:selected { + background: transparent; + border: 0px solid #696968; + background-color: #74831d; +} + +QMenuBar::item:pressed { + /*padding: 2px; + padding-left: 10px; + padding-right: 10px;*/ + border: 0px solid #696968; + background-color: #74831d; + color: White; + /*margin-bottom: 0px; + padding-bottom: 0px;*/ +} + +/* QMenu ------------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenu + +--------------------------------------------------------------------------- */ +QMenu { + border-bottom: 2px rgba(0,0,0,140); + border-right: 2px rgba(0,0,0,140); + color: White; + margin: 0px; + background-color: #161616; + selection-background-color: #74831d; +} + +QMenu::separator { + height: 2px; + background-color: #3c3c3c; + margin-left: 30%; + margin-right: 30%; +} + +QMenu::item { + background-color: transparent; + padding: 2px 2px; /* make room for icon at left */ + /* Reserve space for selection border */ + border: 0px transparent #696968; +} + +QMenu::item:selected { + color: White; + background-color: #74831d; +} + +QMenu::item:pressed { + background-color: #74831d; +} + +QMenu::icon { + margin-left: 5px; + width: 14px; + height: 14px; +} + +QMenu::indicator { + margin-left: 2px; + margin-right: 2px; + padding: 0px; + width: 12px; + height: 12px; + /* non-exclusive indicator = check box style indicator (see QActionGroup::setExclusive) */ + /* exclusive indicator = radio button style indicator (see QActionGroup::setExclusive) */ +} + +QMenu::icon:checked { /* appearance of a 'checked' icon */ + background: #6d8000; + margin-left: -5px; + border: 5px solid #6d8000; + position: absolute; + border-radius: 0px; +} +QMenu::indicator:non-exclusive:unchecked { + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:non-exclusive:unchecked:hover, QMenu::indicator:non-exclusive:unchecked:focus, QMenu::indicator:non-exclusive:unchecked:pressed { + border: none; + background: #74831d; +} + +QMenu::indicator:non-exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QMenu::indicator:non-exclusive:checked { + image:url(qss:images_dark-light/checkbox_light.svg); +} + +QMenu::indicator:non-exclusive:checked:hover, QMenu::indicator:non-exclusive:checked:focus, QMenu::indicator:non-exclusive:checked:pressed { + border: none; + background: #74831d; +} + +QMenu::indicator:non-exclusive:checked:disabled { + image:url(qss:images_dark-light/checkbox_checked_disabled.svg); +} + +QMenu::indicator:non-exclusive:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:disabled { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:focus, QMenu::indicator:non-exclusive:indeterminate:hover, QMenu::indicator:non-exclusive:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QMenu::indicator:exclusive:unchecked { + image: url(qss:images_dark-light/transparent.svg); +} + +QMenu::indicator:exclusive:unchecked:hover, QMenu::indicator:exclusive:unchecked:focus, QMenu::indicator:exclusive:unchecked:pressed { + border: none; + outline: none; + background: #74831d; + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:checked { + border: none; + outline: none; + image: url(qss:images_dark-light/radiobutton_light.svg); +} + +QMenu::indicator:exclusive:checked:hover, QMenu::indicator:exclusive:checked:focus, QMenu::indicator:exclusive:checked:pressed { + border: none; + outline: none; + background: #74831d; + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:checked:disabled { + outline: none; + image: url(qss:images_dark-light/radiobutton_light.svg); +} + +QMenu::right-arrow { + margin: 5px; + padding-left: 12px; + image:url(qss:images_dark-light/right_arrow_lighter.svg); + height: 12px; + width: 12px; + background-color: transparent; +} + +/* QAbstractItemView ------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QAbstractItemView { + alternate-background-color: #5b5b5b; + color: White; + border: 1px solid #696968; + border-radius: 2px; +} + +QAbstractItemView QLineEdit { + padding: 2px; +} + +/* QAbstractScrollArea ---------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QAbstractScrollArea { + background-color: transparent; + border: 0px solid #696968; + border-radius: 0px; + /* fix #159 */ + padding: 0px; + /* remove min-height to fix #244 */ + color: White; +} + +QAbstractScrollArea:disabled { + color: #353535; +} + +/* QScrollArea ------------------------------------------------------------ + +--------------------------------------------------------------------------- +text input field disabled!!!!*/ +QScrollArea QWidget:disabled { + background-color: #444444; +} + +/* QScrollBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qscrollbar + +--------------------------------------------------------------------------- */ +QScrollBar:horizontal { + height: 16px; + margin: 2px 8px 2px 8px; + border: 0px solid #696968; + border-radius: 4px; + background-color: #444444; +} + +QScrollBar:vertical { + background-color: #444444; + width: 16px; + margin: 8px 2px 8px 2px; + border: 0px solid #696968; + border-radius: 4px; +} + +QScrollBar::handle:horizontal { + background-color: #696969; + border: 1px solid #444444; + border-radius: 4px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:hover { + background-color: #74831d; + border: #696968; + border-radius: 4px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:focus { + border: 1px solid #6d8000; +} + +QScrollBar::handle:vertical { + background-color: #696969; + border: 1px solid #696968; + min-height: 8px; + border-radius: 4px; +} + +QScrollBar::handle:vertical:hover { + background-color: #74831d; + border: #696968; + border-radius: 4px; + min-height: 8px; +} + +QScrollBar::handle:vertical:focus { + border: 1px solid #6d8000; +} + +QScrollBar::add-line:horizontal { + border-image: url(qss:images_dark-light/right_arrow_light.svg); + height: 9px; + width: 5px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:horizontal:hover, QScrollBar::add-line:horizontal:on { + border-image: url(qss:images_dark-light/right_arrow_lighter.svg); + height: 9px; + width: 5px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical { + border-image: url(qss:images_dark-light/down_arrow_light.svg); + height: 5px; + width: 9px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical:hover, QScrollBar::add-line:vertical:on { + border-image: url(qss:images_dark-light/down_arrow_lighter.svg); + height: 5px; + width: 9px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/left_arrow_light.svg); + height: 9px; + width: 5px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal:hover, QScrollBar::sub-line:horizontal:on { + border-image: url(qss:images_dark-light/left_arrow_lighter.svg); + height: 9px; + width: 5px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/up_arrow_light.svg); + height: 5px; + width: 9px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical:hover, QScrollBar::sub-line:vertical:on { + border-image: url(qss:images_dark-light/up_arrow_lighter.svg); + height: 5px; + width: 9px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::up-arrow:horizontal, QScrollBar::down-arrow:horizontal { + background: none; +} + +QScrollBar::up-arrow:vertical, QScrollBar::down-arrow:vertical { + background: none; +} + +QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal { + background: none; +} + +QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical { + background: none; +} + +/* QTextEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-specific-widgets + + +report view +--------------------------------------------------------------------------- */ +QTextEdit { + background-color: #444444; + color: White; + border-radius: 1.9px; + border: 0px solid #696968; +} + +QTextEdit:focus { + border: 1px solid #6d8000; +} + +QTextEdit:selected { + background: #346792; + color: white; +} + +/* QPlainTextEdit --------------------------------------------------------- +Python +--------------------------------------------------------------------------- */ +QPlainTextEdit { + background-color: #3c3c3c; + color: White; + border-radius: 1.9px; + border: 0px solid #696968; +} + +QPlainTextEdit:focus { + border: 1px solid #6d8000; +} + +QPlainTextEdit:selected { + background: #74831d; + color: White; +} + +/* QSizeGrip -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsizegrip + +--------------------------------------------------------------------------- */ +QSizeGrip { + background: transparent; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/sizegrip_light.svg); +} + +/* QStackedWidget --------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QStackedWidget { + padding: 0px; + border: 0px solid #696968; +} + +/* QToolBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbar + +--------------------------------------------------------------------------- */ +QToolBar { + background-color: #444444; + border-bottom: 0px solid rgba(0,0,0,120); + padding: 1px; + font-weight: bold; + spacing: 1px; +} + +QToolBar:disabled { + /* Fixes #272 */ + background-color: #444444; +} + +QToolBar::handle:horizontal { + width: 8px; + margin: 3px 3px; + background-position: top right; + background-repeat: repeat-y; + background-image: url(qss:images_dark-light/Hmovetoolbar_light.svg); +} + +QToolBar::handle:vertical { + height: 8px; + margin: 3px 3px; + background-position: left bottom; + background-repeat: repeat-x; + background-image: url(qss:images_dark-light/Vmovetoolbar_light.svg); +} + +QToolBar::separator:horizontal { + width: 2px; + margin: 4px 4px; + background-color: transparent; +} + +QToolBar::separator:vertical { + height: 2px; + margin: 4px 4px; + background-color: transparent; +} + +/*The "show more" button (it can also be stylable with "QToolBarExtension" icon is not working Qproperty works but breaks when you move the toolbar see also */ +QToolButton#qt_toolbar_ext_button { +margin: 0px; +padding: 0px; +background-color: #696969; +/*background-image: url(qss:images_dark-light/more_light.svg);*/ +background-repeat: none; +background-position: center center; +} + +QToolButton#qt_toolbar_ext_button:hover { +/*background-image: url(qss:images_dark-light/more_light.svg);*/ +background-color: #74831d; +} + +QToolButton#qt_toolbar_ext_button:on { +/*background-image: url(qss:images_dark-light/more_light.svg);*/ +border-color: #696968; +background-color: #74831d; } -/*================================================================================================== -Text/Python editor (macros, etc...) -==================================================================================================*/ -QPlainTextEdit, -QPlainTextEdit:focus { - background-color: #787878; - selection-color: #dadfc5; - selection-background-color: #74831d; - border: 1px solid #333333; - border-radius: 3px; - margin: 4px; +/* QAbstractSpinBox ------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractSpinBox, +QSpinBox { + background-color: #1c1b22; + border: 1px solid transparent; + color: White; + /* This fixes 103, 111 */ + /* padding-top: 0px; + /* This fixes 103, 111 */ + /*padding-bottom: 0px; + /*padding-left: 4px; + /*padding-right: 4px; + border-radius: 1.9px;*/ + min-height: 1.7em; + /* min-width: 5px; removed to fix 109 */ +} + +QAbstractSpinBox:up-button { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); + subcontrol-origin: border; + subcontrol-position: top right; + border: 1px solid transparent; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-bottom: -1px;*/ +} + +QAbstractSpinBox::up-arrow, QAbstractSpinBox::up-arrow:disabled, QAbstractSpinBox::up-arrow:off { + image: url(qss:images_dark-light/up_arrow_disabled_light.svg); + /* height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::up-arrow:hover { + image: url(qss:images_dark-light/up_arrow_lighter.svg); +} + +QAbstractSpinBox:down-button { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); + subcontrol-origin: border; + subcontrol-position: bottom right; + border: 1px solid transparent; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-top: -1px;*/ +} + +QAbstractSpinBox::down-arrow, QAbstractSpinBox::down-arrow:disabled, QAbstractSpinBox::down-arrow:off { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + /*height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::down-arrow:hover { + image: url(qss:images_dark-light/down_arrow_lighter.svg); +} + +QAbstractSpinBox:hover { + /*border: 1px solid #74831d; + color: White;*/ +} + +QAbstractSpinBox:focus { + border: 1px solid #6d8000; +} + +QAbstractSpinBox:selected { + background: #6d8000; + /*color: White;*/ +} + +/* ------------------------------------------------------------------------ */ +/* DISPLAYS --------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QLabel ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe + +--------------------------------------------------------------------------- */ +QLabel { + background-color: transparent; + border: 0px solid #696968; + padding: 2px; + margin: 0px; + color: White; +} + +QLabel:disabled { + background-color: transparent; + border: 0px solid #696968; + color: #c2c7cb; +} + +QLabel[haslink="true"] { + color: orange; +} + + +/* QTextBrowser ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QTextBrowser { + background-color: #1c1b22; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; +} + +QTextBrowser:disabled { + background-color: #444444; + border: 1px solid #696968; + color: #c2c7cb; + border-radius: 1.9px; +} + +QTextBrowser:hover, QTextBrowser:!hover, QTextBrowser:selected, QTextBrowser:pressed { + border: 1px solid #74831d; +} + +/* QGraphicsView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QGraphicsView { + background-color: transparent; + border: 0px solid #74831d; + color: White; + border-radius: 0px; +} + +QGraphicsView:disabled { + background-color: #1c1b22; + border: 0px solid #696968; + color: #c2c7cb; + border-radius: 0px; +} + +QGraphicsView:hover, QGraphicsView:!hover, QGraphicsView:selected, QGraphicsView:pressed { + border: 0px solid #ff00f7; +} + +/* QCalendarWidget -------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCalendarWidget { + border: 1px solid #696968; + border-radius: 1.9px; +} + +QCalendarWidget:disabled { + background-color: #353535; + color: #c2c7cb; +} + +/* QLCDNumber ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QLCDNumber { + background-color: #1aff00; + color: White; +} + +QLCDNumber:disabled { + background-color: #444444; + color: #c2c7cb; +} + +/* QProgressBar ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qprogressbar + +--------------------------------------------------------------------------- */ +QProgressBar { + background-color: #c2c7cb; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar:disabled { + background-color: #161616; + border: 1px solid #696968; + color: #696969; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar::chunk { + background-color: #74831d; + color: #444444; + border-radius: 1.9px; +} + +QProgressBar::chunk:disabled { + background-color: #161616; + color: #696968; + border-radius: 1.9px; +} + +/* ------------------------------------------------------------------------ */ +/* BUTTONS ---------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QPushButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qpushbutton + +--------------------------------------------------------------------------- */ +QPushButton { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); + color: White; + border: 1px solid #2a2a2a; + border-bottom-color: #1e1e1e; /* simulates shadow under the button */ + border-radius: 4px; + padding: 2px; +} + +QPushButton:disabled { + background-color: #444444; + color: #c2c7cb; + +} + +QPushButton:checked { + background-color: #74831d; + outline: none; +} + +QPushButton:checked:disabled { + background-color: #74831d; + color: #3c3c3c; + outline: none; +} + +QPushButton:checked:selected { + background: #74831d; +} + +QPushButton:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #74831d, stop:1 #6d8000); + color: White; +} + +QPushButton:pressed { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #6d8000, stop:1 #74831d); +} + +QPushButton:selected { + background: #6d8000; + color: White; +} + +QPushButton::menu-indicator { + subcontrol-origin: padding; + subcontrol-position: bottom right; + bottom: 4px; +} + +QDialogButtonBox QPushButton { + /* Issue # 194 # 248 - Special case of QPushButton inside dialogs, for better UI */ + min-width: 80px; +} + +/* QToolButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbutton + +--------------------------------------------------------------------------- */ +QToolButton { + background-color: transparent; + color: White; + border-radius: 1px; + padding: 0px; + outline: none; + border: none; + /* The subcontrols below are used only in the DelayedPopup mode */ + /* The subcontrols below are used only in the MenuButtonPopup mode */ + /* The subcontrol below is used only in the InstantPopup or DelayedPopup mode */ +} + +QToolButton:disabled { + background-color: rgba(0, 0, 0, 0.065); + color: #c2c7cb; + border-radius: 1px; + padding: 0px; +} + +QToolButton:checked { + background-color: #74831d; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:disabled { + background-color: #b65555; + color: #c2c7cb; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:hover { + background-color: #74831d; + color: White; +} + +QToolButton:checked:pressed { + background-color: #74831d; +} + +QToolButton:checked:selected { + background: #6d8000; + color: White; +} + +QToolButton:hover { + background-color: #74831d; + color: White; +} + +QToolButton:pressed { + background-color: #6d8000; +} + +QToolButton:selected { + background: #74831d; + color: White; +} + +QToolButton[popupMode="0"] { + /* Only for DelayedPopup */ + padding-right: 20px; +} + +QToolButton[popupMode="1"] { + /* Only for MenuButtonPopup */ + padding-right: 20px; +} +QToolButton[popupMode="0"]::menu-button { + border: none; +} + +QToolButton[popupMode="0"]::menu-button:hover { + border: none; + border-left: 2px solid #fe0000; + border-radius: 0px; +} +QToolButton[popupMode="1"]::menu-button { + border: none; +} + +QToolButton[popupMode="1"]::menu-button:hover { + border: none; + border-left: 2px solid #e5ff00; + border-radius: 0px; +} + +QToolButton[popupMode="2"] { + /* Only for InstantPopup */ + padding-right: 20px; +} + +QToolButton::menu-button { + border-bottom: 0px solid #ffffff; + border-radius: 2px; + /* 16px width + 4px for border = 20px allocated above */ + width: 1.6ex; + padding: 2px; + border-radius: 2px; + border: 0px #000000; +} + +QToolButton::menu-button:hover { + /* background: rgba(0, 0, 0, 0.5);*/ + +} + +QToolButton::menu-button:checked:hover { + /* background: rgba(0, 0, 0, 0.5);*/ +} + +QToolButton::menu-indicator { + /* Exclude a shift for better image */ + subcontrol-position: right bottom; + /* Shift it a bit */ +} + +QToolButton::menu-arrow { + image: url(qss:images_dark-light/more_arrow_light.svg); + width: 1.5ex; + height: 1.5ex; + subcontrol-position: right bottom; + background: transparent; +} +QToolButton::menu-arrow:open { + subcontrol-position: right bottom; + image: url(qss:images_dark-light/more_arrow_light.svg); +} +QToolButton::menu-arrow:hover { + image: url(qss:images_dark-light/more_arrow_light.svg); + background-color: rgba(0, 0, 0, 0.498); + border: 1px solid rgba(0, 0, 0, 0.498); +} + +/* QCommandLinkButton ----------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCommandLinkButton { + background-color: transparent; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; + padding: 0px; + margin: 0px; +} + +QCommandLinkButton:disabled { + background-color: transparent; + color: #c2c7cb; +} + +/* ------------------------------------------------------------------------ */ +/* INPUTS - NO FIELDS ----------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QComboBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QComboBox { + border: 1px solid transparent; + background: #1c1b22; + border-radius: 2px; + selection-background-color: #74831d; + padding-left: 2px; + padding-right: 2px; + /* padding-right = 36; 4 + 16*2 See scrollbar size */ + /* changed to 4px to fix #239 */ + /* Fixes #103, #111 */ + min-height: 1.5em; + /* padding-top: 2px; removed to fix #132 */ + /* padding-bottom: 2px; removed to fix #132 */ + /* min-width: 75px; removed to fix #109 */ + /* Needed to remove indicator - fix #132 */ +} +QComboBox:editable { + background: #1c1b22; +} +QComboBox QAbstractItemView { + border: 0px solid #696968; + border-radius: 0px; + background-color: #1c1b22; + selection-background-color: #74831d; +} + +QComboBox QAbstractItemView:hover { + background-color:#1c1b22; + color: White; +} + +QComboBox QAbstractItemView:selected { + background: #74831d; + color: White; +} + +QComboBox QAbstractItemView:alternate { + background: #3c3c3c; +} + +QComboBox:disabled { + background-color: #444444; + color: #353535; +} + +QComboBox:hover { + /*background-color: #74831d;*/ + border: 1px solid #74831d; +} + +QComboBox:focus { + border: 1px solid #6d8000; +} + +QComboBox:on { + selection-background-color: #6d8000; +} + +QComboBox::indicator { + border: none; + border-radius: 0px; + background-color: transparent; + selection-background-color: transparent; + color: transparent; + selection-color: #74831d; + /* Needed to remove indicator - fix #132 */ +} + +QComboBox::indicator:alternate { + background: #696968; +} + +QComboBox::item { + /* Remove to fix #282, #285 and MR #288*/ + /*&:checked { + font-weight: bold; + } + + &:selected { + border: 0px solid transparent; + } + */ +} + +QComboBox::item:alternate { + background: #3c3c3c; +} + +QComboBox::drop-down { + subcontrol-origin: padding; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); + subcontrol-position: top right; + width: 14px; + border-left: 1px solid transparent; +} +QComboBox::drop-down:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #74831d, stop:1 #6d8000); +} + +QComboBox::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + height: 10px; + width: 10px; +} + +QComboBox::down-arrow:on, QComboBox::down-arrow:hover, QComboBox::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_lighter.svg); } /*================================================================================================== Tasks panel (custom FreeCAD class) ==================================================================================================*/ +Gui--PropertyEditor--PropertyEditor { + qproperty-groupTextColor: white; + qproperty-groupBackground: #3c3c3c; + border: 0px solid #696968; + +} + /* Action group */ QFrame[class="panel"] { - background-color: transparent; /* temporal (transparent background) */ +background-color: transparent; /* temporal (transparent background) */ + } QSint--ActionGroup { - padding: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ - margin: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +padding: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +margin: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ } /* Separator line */ @@ -1067,1279 +1496,1038 @@ QSint--ActionGroup QFrame[height="3"], QSint--ActionGroup QFrame[width="1"], QSint--ActionGroup QFrame[width="2"], QSint--ActionGroup QFrame[width="3"] { - border-color: rgba(0,0,0,60); +border-color: rgba(0,0,0,60); } /* Panel header */ QSint--ActionGroup QFrame[class="header"] { - border: none; - background-color: #2a2a2a; /* Task Panel Header background color */ - border-top-left-radius: 3px; - border-top-right-radius: 3px; - border-bottom-left-radius: 0px; - border-bottom-right-radius: 0px; - margin: 0px; - padding: 0px; +border-top: 1px solid #696968; +border-left: 1px solid #696968; +border-right: 1px solid #696968; +background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); +border-top-left-radius: 3px; +border-top-right-radius: 3px; +border-bottom-left-radius: 0px; +border-bottom-right-radius: 0px; +margin: 0px; +padding: 0px; } QSint--ActionGroup QFrame[class="header"]:hover { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #566214, stop:1 #566214); +background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #74831d, stop:1 #6d8000); } QSint--ActionGroup QToolButton[class="header"] { - color: #f5f5f5; /* Task Panel Header text color */ - text-align: left; - font-weight: bold; - border: none; - margin: 0px; - padding: 0px; +color: white; /* Task Panel Header text color */ +text-align: left; +font-weight: bold; +border: none; +margin: 0px; +padding: 0px; } QSint--ActionGroup QFrame[class="header"] QLabel { - background-color: transparent; - background-image: url(qss:images_dark-light/down_arrow_light.svg); - background-repeat: none; - background-position: center center; - padding: 0px; - margin: 0px; +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_light.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; } QSint--ActionGroup QFrame[class="header"] QLabel:hover { - background-color: transparent; - background-image: url(qss:images_dark-light/down_arrow_lighter.svg); +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_lighter.svg); } QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"] { - background-color: transparent; - background-image: url(qss:images_dark-light/up_arrow_light.svg); - background-repeat: none; - background-position: center center; - padding: 0px; - margin: 0px; +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_light.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; } QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"]:hover { - background-color: transparent; - background-image: url(qss:images_dark-light/up_arrow_lighter.svg); +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_lighter.svg); } QSint--ActionGroup QFrame[class="content"] { - background-color: #545454; /* Task Panel background color */ - margin: 0px; - padding: 0px; - border: none; - border-top-left-radius: 0px; - border-top-right-radius: 0px; - border-bottom-left-radius: 3px; - border-bottom-right-radius: 3px; +background-color: transparent; /* Task Panel background color */ +margin: 0px; +padding: 0px; +border-bottom: 1px solid #696968; +border-left: 1px solid #696968; +border-right: 1px solid #696968; +border-top-left-radius: 0px; +border-top-right-radius: 0px; +border-bottom-left-radius: 3px; +border-bottom-right-radius: 3px; } QSint--ActionGroup QFrame[class="content"] > QWidget { - background-color: #545454; /* Task Panel background color */ +background-color: #444444; /* Task Panel background color */ } /* Fixs for tabs inside Task Panel */ QSint--ActionGroup QFrame[class="content"] QTabBar::tab:top:selected { - border-bottom-color: #545454; /* same as Task Panel background color */ +border-bottom-color: #74831d; /* same as Task Panel background color */ } QSint--ActionGroup QFrame[class="content"] QTabBar::tab:bottom:selected { - border-top-color: #545454; /* same as Task Panel background color */ +border-top-color: #74831d; /* same as Task Panel background color */ } QSint--ActionGroup QFrame[class="content"] QTabBar::tab:right:selected { - border-right-color: #545454; /* same as Task Panel background color */ +border-right-color: #74831d; /* same as Task Panel background color */ } QSint--ActionGroup QFrame[class="content"] QTabBar::tab:left:selected { - border-left-color: #545454; /* same as Task Panel background color */ +border-left-color: #74831d; /* same as Task Panel background color */ } /* Fix for buttons with icons that showed cropped (still not happy with result) */ QSint--ActionGroup QFrame[class="content"] > QWidget > QPushButton { - padding: 2px; /* bigger padding crops text and icons... */ - margin: 0px; +padding: 2px; /* bigger padding crops text and icons... */ +margin: 0px; } -/* Fix for lists inside task panels */ +/* Fix for lists inside task panels */ /* sketcher constraints list */ QSint--ActionGroup QFrame[class="content"] QTreeView, QSint--ActionGroup QFrame[class="content"] QListView, QSint--ActionGroup QFrame[class="content"] QTableView { - color: #f5f5f5; - background-color: #787878; +color: white; +background-color: #1c1b22; } -/*================================================================================================== -Buttons -==================================================================================================*/ -/* Common */ -QComboBox, -QAbstractSpinBox, -QSpinBox, -QDoubleSpinBox, -QLineEdit, -QTextEdit, -QTimeEdit, -QDateEdit, -QDateTimeEdit { - color: #bebebe; - background-color: #2a2a2a; - selection-color: white; - selection-background-color: #566214 ; - border: 1px solid #2a2a2a; - border-radius: 3px; - min-width: 50px; /* it ensures the default value is correctly displayed */ - min-height: 20px; /* important to be a pair number in order to up/down buttons to be divisible by two (if not set could create a blank line in Ubuntu. Its downside is that it's needed to reset it (min-width: 0px) on following elements that can't have it such as fields inside QToolBar and inside QTreeView (Property editor) */ - padding: 1px 2px; /* temporal: could don't be compatible with elements inside Tree/List view */ -} - -/* more contrast for QTextEdits */ -QTextEdit { - color: black; -} - -/* shifts text/number editable field to the left to make space for the up/down or drop-down buttons */ -QComboBox, -QAbstractSpinBox, -QSpinBox, -QDoubleSpinBox, -QTimeEdit, -QDateEdit, -QDateTimeEdit { - padding-right: 20px; -} - -/* when QTextEdit are no editable (like Report view)*/ -QTextEdit:!editable, -QTextEdit:!editable:focus { - background-color: #787878; - border: 1px solid #424242; -} - -QComboBox:focus, -QAbstractSpinBox:focus, -QSpinBox:focus, -QDoubleSpinBox:focus, -QLineEdit:focus, -QTextEdit:focus, -QTimeEdit:focus, -QDateEdit:focus, -QDateTimeEdit:focus { - color: #f5f5f5; - border-color: #566214; - border-right-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #566214, stop:1 #566214); /* same as up/down or drop-down button color */ - background-color: #74831d; -} - -QComboBox:disabled, -QAbstractSpinBox:disabled, -QSpinBox:disabled, -QDoubleSpinBox:disabled, -QLineEdit:disabled, -QTextEdit:disabled, -QTimeEdit:disabled, -QDateEdit:disabled, -QDateTimeEdit:disabled { - color: #545454; - background-color: #2a2a2a; /* same as enabled color */ - border-color: #2a2a2a; /* same as enabled color */ -} - -QAbstractSpinBox:up-button, -QSpinBox:up-button, -QDoubleSpinBox:up-button, -QTimeEdit:up-button, -QDateEdit:up-button, -QDateTimeEdit:up-button, -QAbstractSpinBox:down-button, -QSpinBox:down-button, -QDoubleSpinBox:down-button, -QTimeEdit:down-button, -QDateEdit:down-button, -QDateTimeEdit:down-button { - background-color: #2a2a2a; /* same color for QComboBox background-color */ - subcontrol-origin: border; /* important */ - width: 20px; /* same as QComboBox ... QDateTimeEdit padding-right */ -} - -QAbstractSpinBox:up-button, -QSpinBox:up-button, -QDoubleSpinBox:up-button, -QTimeEdit:up-button, -QDateEdit:up-button, -QDateTimeEdit:up-button { - subcontrol-position: top right; - border-top-right-radius: 3px; -} - -QAbstractSpinBox:down-button, -QSpinBox:down-button, -QDoubleSpinBox:down-button, -QTimeEdit:down-button, -QDateEdit:down-button, -QDateTimeEdit:down-button { - subcontrol-position: bottom right; - border-bottom-right-radius: 3px; -} - -QAbstractSpinBox:up-button:focus, -QSpinBox:up-button:focus, -QDoubleSpinBox:up-button:focus, -QTimeEdit:up-button:focus, -QDateEdit:up-button:focus, -QDateTimeEdit:up-button:focus { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #566214, stop:1 #566214); -} - -QAbstractSpinBox:down-button:focus, -QSpinBox:down-button:focus, -QDoubleSpinBox:down-button:focus, -QTimeEdit:down-button:focus, -QDateEdit:down-button:focus, -QDateTimeEdit:down-button:focus { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #566214, stop:1 #566214); -} - -QAbstractSpinBox:up-button:disabled, -QSpinBox:up-button:disabled, -QDoubleSpinBox:up-button:disabled, -QTimeEdit:up-button:disabled, -QDateEdit:up-button:disabled, -QDateTimeEdit:up-button:disabled, -QAbstractSpinBox:down-button:disabled, -QSpinBox:down-button:disabled, -QDoubleSpinBox:down-button:disabled, -QTimeEdit:down-button:disabled, -QDateEdit:down-button:disabled, -QDateTimeEdit:down-button:disabled { - background-color: transparent; -} - -QAbstractSpinBox::up-arrow, -QSpinBox::up-arrow, -QDoubleSpinBox::up-arrow, -QTimeEdit::up-arrow, -QDateEdit::up-arrow, -QDateTimeEdit::up-arrow { - image: url(qss:images_dark-light/up_arrow_light.svg); - top: 2px; /* fix symmetry between up and down images */ -} - -QAbstractSpinBox::up-arrow:focus, -QSpinBox::up-arrow:focus, -QDoubleSpinBox::up-arrow:focus, -QTimeEdit::up-arrow:focus, -QDateEdit::up-arrow:focus, -QDateTimeEdit::up-arrow:focus { - image: url(qss:images_dark-light/up_arrow_lighter.svg); -} - -QAbstractSpinBox::up-arrow:off, -QSpinBox::up-arrow:off, -QDoubleSpinBox::up-arrow:off, -QTimeEdit::up-arrow:off, -QDateEdit::up-arrow:off, -QDateTimeEdit::up-arrow:off { - image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); -} - -QAbstractSpinBox::up-arrow:disabled, -QSpinBox::up-arrow:disabled, -QDoubleSpinBox::up-arrow:disabled, -QTimeEdit::up-arrow:disabled, -QDateEdit::up-arrow:disabled, -QDateTimeEdit::up-arrow:disabled { - image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); -} - -QAbstractSpinBox::down-arrow, -QSpinBox::down-arrow, -QDoubleSpinBox::down-arrow, -QTimeEdit::down-arrow, -QDateEdit::down-arrow, -QDateTimeEdit::down-arrow { - image: url(qss:images_dark-light/down_arrow_light.svg); - bottom: 0px; /* fix simetry between up and down images */ -} - -QAbstractSpinBox::down-arrow:focus, -QSpinBox::down-arrow:focus, -QDoubleSpinBox::down-arrow:focus, -QTimeEdit::down-arrow:focus, -QDateEdit::down-arrow:focus, -QDateTimeEdit::down-arrow:focus { - image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -QAbstractSpinBox::down-arrow:off, -QSpinBox::down-arrow:off, -QDoubleSpinBox::down-arrow:off, -QTimeEdit::down-arrow:off, -QDateEdit::down-arrow:off, -QDateTimeEdit::down-arrow:off { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - -QAbstractSpinBox::down-arrow:disabled, -QSpinBox::down-arrow:disabled, -QDoubleSpinBox::down-arrow:disabled, -QTimeEdit::down-arrow:disabled, -QDateEdit::down-arrow:disabled, -QDateTimeEdit::down-arrow:disabled { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - -/* ComboBox */ - -QComboBox::drop-down { - background-color: #333333; /* same color as up/down QSpinBox ... QDateTimeView background-color */ - subcontrol-origin: border; /* important */ - subcontrol-position: top right; - width: 20px; - border-top-right-radius: 3px; - border-bottom-right-radius: 3px; -} - -QComboBox::drop-down:on, -QComboBox::drop-down:focus { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #566214, stop:1 #566214); -} - -QComboBox::down-arrow { - image: url(qss:images_dark-light/down_arrow_light.svg); -} - -QComboBox::down-arrow:on, -QComboBox::down-arrow:focus { - image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -QComboBox::down-arrow:off, -QComboBox::down-arrow:disabled { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - -/* ComboBox menu */ -QComboBox { - selection-color: #f5f5f5; - selection-background-color: #74831d; -} - -QComboBox QAbstractItemView { - color: #bebebe; /* same as regular QComboBox color */ - background-color: transparent; - selection-color: #f5f5f5; - selection-background-color: #74831d; - border-width: 5px 0px 5px 0px; - border-style: solid; - border-color: transparent; - margin: 0px -1px 0px 0px; /* hack for Mac... try it on Windows and Linux */ -} - - -/*================================================================================================== -Push button -==================================================================================================*/ -QPushButton { - color: #e0e0e0; - text-align: center; - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); - border: 1px solid #2a2a2a; - border-bottom-color: #1e1e1e; /* simulates shadow under the button */ - padding: 4px 22px; - margin: 4px 4px; - min-height: 16px; /* same as QTabBar QPushButton min-width */ - border-radius: 4px; -} - -QPushButton:hover, -QPushButton:focus { - color: #dadfc5; - border-color: #566214; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #74831d, stop:1 #566214); -} - -QPushButton:disabled, -QPushButton:disabled:checked { - color: #2a2a2a; - background-color: #3c3c3c; /* same as enabled color */ - border-color: #3c3c3c; /* same as enabled color */ -} - -QPushButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #566214, stop:1 #74831d); -} - -QPushButton:checked { - background-color: #74831d; - border-color: #566214; -} - -/* Color Buttons */ -Gui--ColorButton, -Gui--ColorButton:disabled { - padding: 0px; /* reset */ - margin: 0px; /* reset */ -} - -Gui--ColorButton { - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #2a2a2a, stop:1 #1e1e1e); - border: 1px solid #1e1e1e; - border-bottom-color: black; /* simulates shadow under the button */ -} - -Gui--ColorButton:disabled { - border-color: transparent; - background-color: rgba(0,0,0,10); -} - -Gui--ColorButton:hover, -Gui--ColorButton:focus { - border-color: #566214; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #74831d, stop:1 #566214); -} - -Gui--ColorButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #566214, stop:1 #74831d); -} - -/* Pushbutton style for "..." inside Placement cell which launches Placement tool */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QPushButton, -Gui--PropertyEditor--PropertyEditor > QWidget > QPushButton { - background-color: #2a2a2a; - border: 1px solid #1e1e1e; - min-width: 16px; /* reset it due to larger value on regular QPushButton, same or bigger value as regular QPushButton min-height */ - border-radius: 0px; - margin: 0px; /* reset */ - padding: 0px; /* reset */ -} - -Gui--PropertyEditor--PropertyEditor > QWidget > QPushButton { - text-align:left; - padding-left: 2px; -} - -/* Fix for Expressions description QFrame that is "broken" with initial reset */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QWidget > QWidget > QFrame { - background-color: #444444; /* main background color */ - border: 1px solid #444444; - border-radius: 2px; - padding: 2px 6px; -} - -QPushButton:checked { - background-color: #74831d; - border-color: #74831d; -} - -/*================================================================================================== -Tool button Icon fix in save dialogs -==================================================================================================*/ -/* found under Tools -> Save Picture */ /* Draft -> ShapeString -> Font file */ - -QFileDialog#QFileDialog QToolButton { - background-color: transparent; - padding: 1px; - border: 1px; - margin: 0px; -} - - -/*================================================================================================== -Tool button inside QDialogs that works as QPushButtons -==================================================================================================*/ -/* found under Tools -> Customize -> Macros -> Pixmap "..." button */ -QDialog QToolButton { - color: #e0e0e0; - text-align: center; - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #2a2a2a, stop:1 #1e1e1e); - border: 1px solid #1e1e1e; - border-bottom-color: black; /* simulates shadow under the button */ - padding: 0px; /* different than regular QPushButton */ - margin: 2px; /* different than regular QPushButton */ - min-height: 16px; /* same as QTabBar QPushButton min-width */ - border-radius: 4px; -} - -QDialog QToolButton:hover, -QDialog QToolButton:focus { - color: #dadfc5; - border-color: #566214; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #74831d, stop:1 #566214); -} - -QDialog QToolButton:disabled, -QDialog QToolButton:disabled:checked { - color: #444444; - border-color: #424242; - background-color: #424242; -} - -QDialog QToolButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #566214, stop:1 #74831d); -} - - -/*================================================================================================== -Tool button inside Task Panel content that works as QPushButtons -==================================================================================================*/ /* found inside Part Design Workbench and "make a draft on a face" Task panel options */ QSint--ActionGroup QFrame[class="content"] QToolButton { - color: #e0e0e0; - text-align: center; - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #2a2a2a, stop:1 #1e1e1e); - border: 1px solid #1e1e1e; - border-bottom-color: black; /* simulates shadow under the button */ - padding: 2px 6px; /* different than regular QPushButton */ - margin: 2px; /* different than regular QPushButton */ - min-height: 16px; /* same as QTabBar QPushButton min-width */ - border-radius: 4px; + color: white; + text-align: center; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); + border: 0px solid #adadad; + padding: 1px 1px; /* different than regular QPushButton */ + margin: 0px; /* different than regular QPushButton */ + min-height: 16px; /* same as QTabBar QPushButton min-width */ + border-radius: 1px; } -QSint--ActionGroup QFrame[class="content"] QToolButton:hover, +QSint--ActionGroup QFrame[class="content"] QToolButton:hover{ + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #74831d, stop:1 #6d8000); + +} QSint--ActionGroup QFrame[class="content"] QToolButton:focus { - color: white; - border-color: #566214; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #74831d, stop:1 #566214); + border: 1px solid #6d8000; } QSint--ActionGroup QFrame[class="content"] QToolButton:disabled, QSint--ActionGroup QFrame[class="content"] QToolButton:disabled:checked { - color: #444444; - border-color: #424242; - background-color: #424242; + color: #696969; + background-color: #1c1b22; } QSint--ActionGroup QFrame[class="content"] QToolButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #566214, stop:1 #74831d); + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #74831d, stop:1 #6d8000); + } -/* QToolButtons with a menu found in Sketcher task panel*/ -QSint--ActionGroup QToolButton::menu-button { - border: none; - border-top-right-radius: 4px; - border-bottom-right-radius: 4px; - padding: 2px; - width: 16px; /* 16px width + 4px for border = 20px allocated above */ - outline: none; - background-color: transparent; +/* QSlider ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qslider + +--------------------------------------------------------------------------- */ +QSlider:disabled { + background: #444444; } -QSint--ActionGroup QToolButton#settingsButton, -QSint--ActionGroup QToolButton#filterButton, -QSint--ActionGroup QToolButton#manualUpdate { - padding-right: 20px; /* make way for the popup button */ -} - -/* to give widget inside the menu same look as regular menu */ -QSint--ActionGroup QToolButton#filterButton QListWidget { - color: #f5f5f5; - background: #2a2a2a; - padding: 0px; - margin: 0px; -} - - -/*================================================================================================== -QComboBox inside Task Panel content -==================================================================================================*/ -/* Fix for QComboBox inside Task Panel due to not correctly styling it with regular */ -/* found inside TechDraw Workbench and "insert multiple views" from toolbar */ -/* TODO: external border not working, in the rest of GUI works setting up Qmenu background color but inside Task Panel it doesn't... */ -QSint--ActionGroup QFrame[class="content"] QMenu, -QSint--ActionGroup QFrame[class="content"] QMenu::item { - background-color: #2a2a2a; -} - -QSint--ActionGroup QFrame[class="content"] QComboBox QAbstractItemView { - background-color: #2a2a2a; -} - - -/*================================================================================================== -Radio button -==================================================================================================*/ -QRadioButton::indicator:unchecked{ - color: black; - background-color: rgba(0,0,0,40); - border: 1px solid #787878; -} - -QRadioButton::indicator:checked { - background-color: #74831d; /* QCheckBox has the same color */ - border: 1px solid #74831d; /* QCheckBox has the same color */ - image:url(qss:images_dark-light/radiobutton_light.svg); -} - -QRadioButton, -QRadioButton:disabled { - color: #f5f5f5; - padding: 3px; - outline: none; - background-color: transparent; -} - -QRadioButton:disabled { - color: rgba(255,255,255,40); -} - -QRadioButton::indicator { - width: 11px; - height: 11px; - border-radius: 6px; -} - -QRadioButton::indicator:pressed { - border-color: #dadfc5; -} - -QRadioButton::indicator:disabled { - color: #424242; - background-color: transparent; - border: 1px solid #424242; - image:url(qss:images_dark-light/radiobutton_dark.svg); -} - -QRadioButton:focus { - border: none; -} - - -/*================================================================================================== -Checkbox -==================================================================================================*/ -QCheckBox, -QCheckBox:disabled { - color: #f5f5f5; - padding: 3px; - outline: none; - background-color: transparent; -} - -QCheckBox::indicator, -QGroupBox::indicator { - color: black; - background-color: rgba(0,0,0,40); - border: 1px solid #787878; - width: 11px; - height: 11px; - border-radius:2px; -} - -QCheckBox::indicator:pressed, -QCheckBox::indicator:non-exclusive:checked:pressed, -QCheckBox::indicator:indeterminate:pressed, -QCheckBox::indicator:checked:pressed, -QGroupBox::indicator:pressed, -QGroupBox::indicator:non-exclusive:checked:pressed, -QGroupBox::indicator:indeterminate:pressed, -QGroupBox::indicator:checked:pressed { - border-color: #dadfc5; -} - -QCheckBox::indicator:checked, -QGroupBox::indicator:checked { - background-color: #74831d; /* QRadioButton has the same color */ - border: 1px solid #74831d; /* QRadioButton has the same color */ - image:url(qss:images_dark-light/checkbox_light.svg); -} - -QCheckBox:disabled { - color: rgba(255,255,255,40); - background-color: transparent; -} - -QCheckBox::indicator:disabled, -QGroupBox::indicator:disabled { - background-color: rgba(0,0,0,0); - border: 1px solid rgba(0,0,0,20); -} - -QCheckBox::indicator:indeterminate, -QGroupBox::indicator:indeterminate { - background-color: #74831d; - border: 1px solid #74831d; - image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); -} - -QCheckBox:focus { - border: none; -} - - -/*================================================================================================== -Checkboxes inside QListWidget and QTreeView -==================================================================================================*/ -QListWidget::indicator, -QTreeView::indicator { - color: #c8c8c8; - background-color: rgba(255,255,255,20); - border: 1px solid #424242; - width: 11px; - height: 11px; - border-radius:2px; -} - -/* fix for QTreeView::indicator losing its margin */ -QTreeView::indicator { - margin: 3px; -} - -QListWidget::indicator:selected, -QTreeView::indicator:selected { - background-color: #e6e6e6; -} - -QListWidget::indicator:checked:selected, -QListWidget::indicator:indeterminate:selected, -QTreeView::indicator:checked:selected, -QTreeView::indicator:indeterminate:selected { - background-color: #74831d; /* slightly lighter than default */ - border-color: #74831d; /* slightly darker than default */ -} - -QListWidget::indicator:pressed, -QListWidget::indicator:non-exclusive:checked:pressed, -QListWidget::indicator:indeterminate:pressed, -QListWidget::indicator:checked:pressed, -QTreeView::indicator:pressed, -QTreeView::indicator:non-exclusive:checked:pressed, -QTreeView::indicator:indeterminate:pressed, -QTreeView::indicator:checked:pressed { - border-color: #dadfc5; -} - -QListWidget::indicator:checked, -QTreeView::indicator:checked { - background-color: #74831d; /* QRadioButton has the same color */ - border: 1px solid #74831d; /* QRadioButton has the same color */ - image:url(qss:images_dark-light/checkbox_light.svg); -} - -QListWidget::indicator:disabled, -QTreeView::indicator:disabled { - background-color: rgba(255,255,255,20); - border: 1px solid rgba(255,255,255,20); -} - -QListWidget::indicator:indeterminate, -QTreeView::indicator:indeterminate { - background-color: #74831d; - border: 1px solid #74831d; - image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); -} - - -/*================================================================================================== -Slider -==================================================================================================*/ -QSlider, -QSlider:active, -QSlider:!active { - border: none; - background-color: transparent; -} - -QSlider:horizontal { - padding: 0px 10px; -} - -QSlider:vertical { - padding: 10px 0px; -} - -QSlider::groove { - background-color: rgba(255,255,255,30); - border: 1px solid rgba(255,255,255,40); - border-radius: 5px; - margin: 4px 0px; +QSlider:focus { + border: 1px solid #6d8000; } QSlider::groove:horizontal { - height: 8px; + background: #444444; + border: 1px solid #696968; + height: 4px; + margin: 0px; + border-radius: 1.9px; } QSlider::groove:vertical { - width: 8px; + background: #74831d; + border: 1px solid #696968; + width: 4px; + margin: 0px; + border-radius: 1.9px; } -QSlider::groove:horizontal:disabled, -QSlider::groove:vertical:disabled { - border-color: #424242; - background-color: #424242; +QSlider::add-page:vertical { + background: #74831d; + border: 1px solid #696968; + width: 4px; + margin: 0px; + border-radius: 1.9px; } -QSlider::handle:horizontal, -QSlider::handle:vertical { - background-color: #2a2a2a; - border: 1px solid #2a2a2a; - width: 14px; - height: 14px; - border-radius: 8px; +QSlider::add-page:vertical :disabled { + background: #696968; +} + +QSlider::sub-page:horizontal { + background: #74831d; + border: 1px solid #0073ff; + height: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::sub-page:horizontal:disabled { + background: #74831d; } QSlider::handle:horizontal { - margin: -4px 0; + background: #353535; + border: 1px solid #444444; + width: 8px; + height: 8px; + margin: -8px 0px; + border-radius: 1.9px; +} + +QSlider::handle:horizontal:hover { + background: #74831d; + border: 1px solid #74831d; +} + +QSlider::handle:horizontal:focus { + border: 1px solid #6d8000; } QSlider::handle:vertical { - margin: 0 -4px; + background: #c2c7cb; + border: 1px solid #696968; + width: 8px; + height: 8px; + margin: 0 -8px; + border-radius: 1.9px; } -QSlider::handle:horizontal:hover, -QSlider::handle:vertical:hover, -QSlider::handle:horizontal:pressed, -QSlider::handle:vertical:pressed { - border-color: #c5d675; - background-color: #74831d; +QSlider::handle:vertical:hover { + background: #74831d; + border: 2px solid #74831d; } -QSlider::handle:horizontal:disabled, -QSlider::handle:vertical:disabled { - border-color: #424242; - background-color: #424242; +QSlider::handle:vertical:focus { + border: 1px solid #6d8000; +} + +/* QLineEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlineedit + +--------------------------------------------------------------------------- */ +QLineEdit { + background-color: #1c1b22; + padding-top: 2px; + /* This QLineEdit fix 103, 111 */ + padding-bottom: 2px; + /* This QLineEdit fix 103, 111 */ + padding-left: 4px; + padding-right: 4px; + border-style: solid; + border: 1px solid #696968; + border-radius: 2px; + color: White; +} + +QLineEdit:disabled { + background-color: #444444; + color: #c2c7cb; +} + +QLineEdit:hover { + border: 1px solid #74831d; + color: White; +} + +QLineEdit:focus { + border: 2px solid #6d8000; +} + +QLineEdit:selected { + background-color: #74831d; + color: white; +} + +/* QTabWiget -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabWidget { + padding: 2px; + selection-background-color: #74831d; +} + +QTabWidget QWidget { + /* Fixes #189 */ + border-radius: 1.9px; +} + +QTabWidget::pane { + margin: 0px; + /* Fixes double border inside pane with pyqt5 */ + padding: 0px; +} + +QTabWidget::pane:selected { + background-color: #74831d; + border: 1px solid #346792; +} +/* QTabBar ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabBar, QDockWidget QTabBar { + qproperty-drawBase: 0; + /* left: 5px; move to the right by 5px - removed for fix */ +} + +QTabBar::close-button, QDockWidget QTabBar::close-button { + border: 0; + margin: 0; + padding: 1px; + image: url(qss:images_dark-light/close_light.svg); +} + +QTabBar::close-button:hover, QDockWidget QTabBar::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); + /*background-color: rgba(255, 0, 0, 0.3);*/ +} + +QTabBar::close-button:pressed, QDockWidget QTabBar::close-button:pressed { + image: url(qss:images_dark-light/close_.svg); +} + +QTabBar::tab, QDockWidget QTabBar::tab { + /* !selected and disabled ----------------------------------------- */ + /* selected ------------------------------------------------------- */ + padding: 4px; +} + +QTabBar::tab:top:selected:disabled, QDockWidget QTabBar::tab:top:selected:disabled { + color: #adadad; +} + +QTabBar::tab:bottom:selected:disabled, QDockWidget QTabBar::tab:bottom:selected:disabled { + color: #adadad; +} + +QTabBar::tab:left:selected:disabled, QDockWidget QTabBar::tab:left:selected:disabled { + color: #adadad; +} + +QTabBar::tab:right:selected:disabled, QDockWidget QTabBar::tab:right:selected:disabled { + color: #adadad; +} + +QTabBar::tab:top:!selected:disabled, QDockWidget QTabBar::tab:top:!selected:disabled { + color: #adadad; +} + +QTabBar::tab:bottom:!selected:disabled, QDockWidget QTabBar::tab:bottom:!selected:disabled { + color: #adadad; + +} + +QTabBar::tab:left:!selected:disabled, QDockWidget QTabBar::tab:left:!selected:disabled { + color: #adadad; + +} + +QTabBar::tab:right:!selected:disabled, QDockWidget QTabBar::tab:right:!selected:disabled { + color: #adadad; +} + +QTabBar::tab:top:!selected, QDockWidget QTabBar::tab:top:!selected { + color: #adadad; +} + +QTabBar::tab:bottom:!selected, QDockWidget QTabBar::tab:bottom:!selected { + color: #adadad; +} + +QTabBar::tab:left:!selected, QDockWidget QTabBar::tab:left:!selected { + color: #adadad; +} + +QTabBar::tab:right:!selected, QDockWidget QTabBar::tab:right:!selected { + color: #adadad; +} + +QTabBar::tab:top, QDockWidget QTabBar::tab:top { + color: #696969; + margin-left: 0px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + min-width: 5px; + border-bottom: 1px solid #696969; /* same as tab content background color */ + border-radius: 0px; +} + +QTabBar::tab:top:selected, QDockWidget QTabBar::tab:top:selected { + color: white; + border-top: 4px solid #74831d; /* selection color */ + border-bottom: 1px solid transparent; /* same as tab content background color */ + border-left: 1px solid #696969; + border-right: 1px solid #696969; + } + +QTabBar::tab:top:!selected:hover, QDockWidget QTabBar::tab:top:!selected:hover { + /*border: 1px solid #74831d;*/ + border: 0px solid #74831d; + background-color: #74831d; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; +} + +QTabBar::tab:bottom, QDockWidget QTabBar::tab:bottom { + color: #adadad; + margin-left: 0px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + min-width: 5px; + border-top: 1px solid #696969; /* same as tab content background color */ + border-radius: 0px; +} + +QTabBar::tab:bottom:selected, QDockWidget QTabBar::tab:bottom:selected { + color: white; + border-bottom: 4px solid #74831d; /* selection color */ + border-top: 1px solid transparent; /* same as tab content background color */ + border-left: 1px solid #696969; + border-right: 1px solid #696969; + +} + +QTabBar::tab:bottom:!selected:hover, QDockWidget QTabBar::tab:bottom:!selected:hover { +/*border: 1px solid #74831d;*/ + border: 0px solid #74831d; + background-color: #74831d; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; +} + +QTabBar::tab:left, QDockWidget QTabBar::tab:left { + background-color: #444444; + margin-top: 2px; + margin-left:10px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + border-radius: 4px; + min-height: 5px; +} + +QTabBar::tab:left:selected, QDockWidget QTabBar::tab:left:selected { + background-color: #444444; + border: 0px solid #6d8000; +} + +QTabBar::tab:left:!selected:hover, QDockWidget QTabBar::tab:left:!selected:hover { + border: 0px solid #74831d; + background-color: #74831d; + /* Fixes different behavior #271 */ + margin-right: 0px; + padding-right: -1px; +} + +QTabBar::tab:right, QDockWidget QTabBar::tab:right { + background-color: #444444; + margin-top: 2px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + min-height: 5px; + border: 10px; +} + +QTabBar::tab:right:selected, QDockWidget QTabBar::tab:right:selected { + background-color: #444444; + border: 0px solid #6d8000; +} + +QTabBar::tab:right:!selected:hover, QDockWidget QTabBar::tab:right:!selected:hover { + border: 0px solid #74831d; + background-color: #74831d; + /* Fixes different behavior #271 */ + margin-left: 0px; + padding-left: 0px; +} + +QTabBar QToolButton, QDockWidget QTabBar QToolButton { + /* Fixes #136 */ + background-color: #444444; + height: 12px; + width: 12px; +} + +QTabBar QToolButton:pressed, QDockWidget QTabBar QToolButton:pressed { + border: 0px solid #74831d; + background-color: #74831d; +} + +QTabBar QToolButton:pressed:hover, QDockWidget QTabBar QToolButton:pressed:hover { + border: 0px solid #74831d; + background-color: #74831d; +} + +QTabBar QToolButton::left-arrow:enabled, QDockWidget QTabBar QToolButton::left-arrow:enabled { + image: url(qss:images_dark-light/left_arrow_lighter.svg); +} + +QTabBar QToolButton::left-arrow:disabled, QDockWidget QTabBar QToolButton::left-arrow:disabled { + image: url(qss:images_dark-light/left_arrow_disabled_light.svg); +} + +QTabBar QToolButton::right-arrow:enabled, QDockWidget QTabBar QToolButton::right-arrow:enabled { + image: url(qss:images_dark-light/right_arrow_lighter.svg); +} + +QTabBar QToolButton::right-arrow:disabled, QDockWidget QTabBar QToolButton::right-arrow:disabled { + image: url(qss:images_dark-light/right_arrow_disabled_light.svg); +} + +/* QDockWiget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QDockWidget { + background-color: #444444; + border: 1px solid #2a2a2a; + border-radius: 1.9px; + titlebar-close-icon: url(qss:images_dark-light/transparent.svg); + titlebar-normal-icon: url(qss:images_dark-light/transparent.svg); +} + +QDockWidget::title { + /* Better size for title bar */ + padding: 3px; + spacing: 4px; + border: none; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); + text-align: center; + font-weight: bold; +} + +QDockWidget::close-button { + icon-size: 10px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/close_light.svg); +} + +QDockWidget::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); +} + +QDockWidget::close-button:pressed { + image: url(qss:images_dark-light/close_light.svg); +} + +QDockWidget::float-button { + icon-size: 12px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/undock_light.svg); +} + +QDockWidget::float-button:hover { + /*background-color: #74831d;*/ + image: url(qss:images_dark-light/undock_blue.svg); +} + +QDockWidget::float-button:pressed { + image: url(qss:images_dark-light/undock_light.svg); +} + +/* QTreeView QListView QTableView ----------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtreeview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlistview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtableview + +--------------------------------------------------------------------------- */ +QTreeView::branch { + background: transparent; +} + +QTreeView::branch:has-siblings:!adjoins-item { + border-image: url(qss:images_dark-light/branch_vline_light.svg) 0; +} + +QTreeView::branch:has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_more_light.svg) 0; +} + +QTreeView::branch:!has-children:!has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_end_light.svg) 0; +} + +QTreeView::branch:closed:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_closed_light.svg) 0; +} + +QTreeView::branch:has-children:!has-siblings:closed { + border-image: url(qss:images_dark-light/branch_end_closed_light.svg) 0; +} + +QTreeView::branch:open:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_open_light.svg) 0; +} + +QTreeView::branch:open:has-children:!has-siblings { + border-image: url(qss:images_dark-light/branch_end_open_light.svg) 0; +} + +QTreeView::indicator:checked, +QListView::indicator:checked, +QTableView::indicator:checked, +QColumnView::indicator:checked { + image: url(qss:images_dark-light/checkbox_light.svg); +} + +QTreeView::indicator:checked:hover, QTreeView::indicator:checked:focus, QTreeView::indicator:checked:pressed, +QListView::indicator:checked:hover, +QListView::indicator:checked:focus, +QListView::indicator:checked:pressed, +QTableView::indicator:checked:hover, +QTableView::indicator:checked:focus, +QTableView::indicator:checked:pressed, +QColumnView::indicator:checked:hover, +QColumnView::indicator:checked:focus, +QColumnView::indicator:checked:pressed { + image: url(qss:images_dark-light/checkbox_light_hover.svg); +} + +QTreeView::indicator:unchecked, +QListView::indicator:unchecked, +QTableView::indicator:unchecked, +QColumnView::indicator:unchecked { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QTreeView::indicator:unchecked:hover, QTreeView::indicator:unchecked:focus, QTreeView::indicator:unchecked:pressed, +QListView::indicator:unchecked:hover, +QListView::indicator:unchecked:focus, +QListView::indicator:unchecked:pressed, +QTableView::indicator:unchecked:hover, +QTableView::indicator:unchecked:focus, +QTableView::indicator:unchecked:pressed, +QColumnView::indicator:unchecked:hover, +QColumnView::indicator:unchecked:focus, +QColumnView::indicator:unchecked:pressed { + image: url(qss:images_dark-light/checkbox_unchecked_hover_light.svg); +} + +QTreeView::indicator:indeterminate, +QListView::indicator:indeterminate, +QTableView::indicator:indeterminate, +QColumnView::indicator:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QTreeView::indicator:indeterminate:hover, QTreeView::indicator:indeterminate:focus, QTreeView::indicator:indeterminate:pressed, +QListView::indicator:indeterminate:hover, +QListView::indicator:indeterminate:focus, +QListView::indicator:indeterminate:pressed, +QTableView::indicator:indeterminate:hover, +QTableView::indicator:indeterminate:focus, +QTableView::indicator:indeterminate:pressed, +QColumnView::indicator:indeterminate:hover, +QColumnView::indicator:indeterminate:focus, +QColumnView::indicator:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QTreeView, +QListView, +QTableView, +QColumnView { + background-color: #444444; /* background of a lot of stuff including spreadsheets.*/ + border: 0px solid #696968; + color: White; + gridline-color: #696968; + border-radius: 0px; +} + +QTableView, +QListView { + background-color: rgba(0, 0, 0, 0.232); /* background of a lot of stuff including spreadsheets.*/ } -/*================================================================================================== -Toolbar buttons -==================================================================================================*/ -/*QToolBar > QComboBox, disabled because creates different margins for body and drop-down button */ -QToolBar > QAbstractSpinBox, -QToolBar > QSpinBox, -QToolBar > QDoubleSpinBox, -QToolBar > QLineEdit, -QToolBar > QTextEdit, -QToolBar > QTimeEdit, -QToolBar > QDateEdit, -QToolBar > QDateTimeEdit { - margin: 0px 2px; - padding: 0px; - min-width: 70px; /* necessary to show its content */ +QTreeView:disabled, +QListView:disabled, +QTableView:disabled, +QColumnView:disabled { + background-color: #1c1b22; + color: #c2c7cb; } -QToolBar > QComboBox, -QToolBar > QAbstractSpinBox, -QToolBar > QSpinBox, -QToolBar > QDoubleSpinBox, -QToolBar > QLineEdit, -QToolBar > QTextEdit, -QToolBar > QTimeEdit, -QToolBar > QDateEdit, -QToolBar > QDateTimeEdit { - min-height: 0px; /* reset it inside Tool Bar due to the user ability to set the "size of toolbar icons" inside Preferences */ +QTreeView:selected, +QListView:selected, +QTableView:selected, +QColumnView:selected { + background-color: #74831d; + color: White; } -QToolBar > QPushButton { - padding: 0px; - margin: 1px; /* doesn't work with :left, :right:, :top or :bottom sub-controls */ - min-width: 16px; /* could not be larger due to switchable Preferences "Size of toolbar icons" */ - min-height: 16px; /* could not be larger due to switchable Preferences "Size of toolbar icons" */ - border-radius: 4px; /* same as regular QPushButton */ +QTreeView:focus, +QListView:focus, +QTableView:focus, +QColumnView:focus { + border: 1px solid #6d8000; } -QToolBar > QPushButton:checked { - border: 1px solid #a5c61a; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #74831d, stop:1 #74831d); +QTreeView::item:pressed, +QListView::item:pressed, +QTableView::item:pressed, +QColumnView::item:pressed { + background-color: #74831d; } -QToolBar > QPushButton:!checked { - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #444444, stop:1 #3c3c3c); - border: 1px solid #424242; - border-bottom-color: #333333; /* simulates shadow under the button */ - text-align: left; /* bug fix #4559 */ +QTreeView::item:selected:active, +QListView::item:selected:active, +QTableView::item:selected:active, +QColumnView::item:selected:active { + background-color: #74831d; } -QToolBar > QPushButton:checked:hover { - border-color: #9bbc12; +QTreeView::item:selected:!active, +QListView::item:selected:!active, +QTableView::item:selected:!active, +QColumnView::item:selected:!active { + color: White; + background-color: #353535; } -QToolBar > QPushButton:!checked:hover { - color: #dadfc5; - border-color: #333333; +QTreeView::item:!selected:hover, +QListView::item:!selected:hover, +QTableView::item:!selected:hover, +QColumnView::item:!selected:hover { + outline: 0; + color: White; + background-color: #74831d; } -QToolBar > QPushButton:checked:pressed { - background-color: #74831d; +QTableCornerButton::section { + background-color: #444444; + border: 1px transparent #696968; + border-radius: 0px; } -QToolBar > QPushButton:!checked:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #424242, stop:1 #444444); -} - -QToolBar > QPushButton:checked:disabled, -QToolBar > QPushButton:!checked:disabled { - border: none; - background-color: transparent; -} - -QToolBar > QToolButton { - margin: 2px; - padding: 2px; - border-radius: 3px; -} - -QToolBar > QToolButton:hover { - background-color: rgba(255,255,255,20); -} - -QToolBar > QToolButton:pressed { - background-color: rgba(255,255,255,30); -} - -/* ToolBar menu buttons (buttons with drop-down menu) */ -QToolBar > QToolButton#qt_toolbutton_menubutton { - padding-right: 20px; /* Hack to add more width to buttons with menu */ - border: 1px solid transparent; - border-radius: 3px; -} - -QToolBar > QToolButton#qt_toolbutton_menubutton:hover, -QToolBar > QToolButton#qt_toolbutton_menubutton:pressed, -QToolBar > QToolButton#qt_toolbutton_menubutton:open { - border: 1px solid #a5c61a; -} - -QToolBar QToolButton::menu-button, -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button { - border: none; - border-top-right-radius: 3px; - border-bottom-right-radius: 3px; - width: 16px; /* 16px width + 4px for border = 20px allocated above */ - outline: none; - background-color: transparent; -} - -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button:hover, -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button:pressed, -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button:open { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #74831d, stop:1 #a5c61a); -} - -QToolBar > QToolButton::menu-arrow { - background-image: url(qss:images_dark-light/down_arrow_dark.svg); - background-position: center center; - background-repeat: none; - subcontrol-origin: padding; - subcontrol-position: bottom right; - height: 10px; /* same as arrow image */ -} - -QToolBar > QToolButton::menu-arrow:hover { - background-image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -QToolBar > QToolButton::menu-arrow:open { - background-image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -/* when QToolButton is checked: */ -QToolBar > QToolButton:checked { - border: 1px solid #a5c61a; - background-color: rgba(124,171,249,60); /* transparency for #a5c61a color */ -} - -QToolBar > QToolButton:checked:hover { - border: 1px solid #a5c61a; - background-color: rgba(124,171,249,80); /* transparency for #a5c61a color */ -} - -/*The "show more" button (it can also be stylable with "QToolBarExtension" */ -QToolBar QToolButton#qt_toolbar_ext_button { - margin: 0px; - padding: 0px; - /*background-image: url(qss:images_dark-light/more_dark.svg);*/ - image: transparent; - background-repeat: none; - background-position: center left; -} - -QToolBar QToolButton#qt_toolbar_ext_button:hover { - /*background-image: url(qss:images_dark-light/more_light.svg);*/ - border-color: #424242; - background-color: #424242; -} - -QToolBar QToolButton#qt_toolbar_ext_button:on { - /*background-image: url(qss:images_dark-light/more_light.svg);*/ - border-color: #424242; - background-color: #424242; -} - - -/*================================================================================================== -Tables (spreadsheets) -==================================================================================================*/ -QTableView { - gridline-color: #a0a0a0; - selection-color: #566214; - selection-background-color: #c5d675; -} - -QTableView::item:hover { - background-color: rgba(0,0,0,10); /* temporal: is it displayed in Linux or Windows? on OSX it isn't */ -} - -QTableView::item:disabled { - color: #333333; -} - -QTableView::item:selected { - color: #566214; - border-color: #dadfc5; /* same as focused background color */ - border-bottom-color: #a5c61a; /* same as focused border color */ -} - -/* fix for elements inside the cells */ -QTableView > QWidget > QComboBox, -QTableView > QWidget > QAbstractSpinBox, -QTableView > QWidget > QSpinBox, -QTableView > QWidget > QDoubleSpinBox, -QTableView > QWidget > QLineEdit, -QTableView > QWidget > QTextEdit, -QTableView > QWidget > QTimeEdit, -QTableView > QWidget > QDateEdit, -QTableView > QWidget > QDateTimeEdit, -QTableView > QWidget > QComboBox:drop-down, -QTableView > QWidget > QAbstractSpinBox:up-button, -QTableView > QWidget > QSpinBox:up-button, -QTableView > QWidget > QDoubleSpinBox:up-button, -QTableView > QWidget > QTimeEdit:up-button, -QTableView > QWidget > QDateEdit:up-button, -QTableView > QWidget > QDateTimeEdit:up-button, -QTableView > QWidget > QAbstractSpinBox:down-button, -QTableView > QWidget > QSpinBox:down-button, -QTableView > QWidget > QDoubleSpinBox:down-button, -QTableView > QWidget > QTimeEdit:down-button, -QTableView > QWidget > QDateEdit:down-button, -QTableView > QWidget > QDateTimeEdit:down-button, -QTableView > QWidget > Gui--ColorButton { - border-radius: 0px; -} - -QTableView > QWidget > QComboBox, -QTableView > QWidget > QAbstractSpinBox, -QTableView > QWidget > QSpinBox, -QTableView > QWidget > QDoubleSpinBox, -QTableView > QWidget > QLineEdit, -QTableView > QWidget > QTextEdit, -QTableView > QWidget > QTimeEdit, -QTableView > QWidget > QDateEdit, -QTableView > QWidget > QDateTimeEdit { - color: black; - background-color: transparent; - border-color: transparent; -} - -QTableView > QWidget > QComboBox:drop-down, -QTableView > QWidget > QAbstractSpinBox:up-button, -QTableView > QWidget > QSpinBox:up-button, -QTableView > QWidget > QDoubleSpinBox:up-button, -QTableView > QWidget > QTimeEdit:up-button, -QTableView > QWidget > QDateEdit:up-button, -QTableView > QWidget > QDateTimeEdit:up-button, -QTableView > QWidget > QAbstractSpinBox:down-button, -QTableView > QWidget > QSpinBox:down-button, -QTableView > QWidget > QDoubleSpinBox:down-button, -QTableView > QWidget > QTimeEdit:down-button, -QTableView > QWidget > QDateEdit:down-button, -QTableView > QWidget > QDateTimeEdit:down-button, -QTableView > QWidget > Gui--ColorButton { - background-color: rgba(0,0,0,30); -} - -QTableView > QWidget > QComboBox:focus, -QTableView > QWidget > QAbstractSpinBox:focus, -QTableView > QWidget > QSpinBox:focus, -QTableView > QWidget > QDoubleSpinBox:focus, -QTableView > QWidget > QLineEdit:focus, -QTableView > QWidget > QTextEdit:focus, -QTableView > QWidget > QTimeEdit:focus, -QTableView > QWidget > QDateEdit:focus, -QTableView > QWidget > QDateTimeEdit:focus { - color: #566214; - selection-color: white; - selection-background-color: #74831d; - border-color: #dadfc5; - background-color: #dadfc5; -} - -QTableView > QWidget > QComboBox:disabled, -QTableView > QWidget > QAbstractSpinBox:disabled, -QTableView > QWidget > QSpinBox:disabled, -QTableView > QWidget > QDoubleSpinBox:disabled, -QTableView > QWidget > QLineEdit:disabled, -QTableView > QWidget > QTextEdit:disabled, -QTableView > QWidget > QTimeEdit:disabled, -QTableView > QWidget > QDateEdit:disabled, -QTableView > QWidget > QDateTimeEdit:disabled { - color: rgba(0,0,0,120); - background-color: transparent; - border-color: transparent; -} - -QTableView > QWidget > QComboBox:read-only, -QTableView > QWidget > QAbstractSpinBox:read-only, -QTableView > QWidget > QSpinBox:read-only, -QTableView > QWidget > QDoubleSpinBox:read-only, -QTableView > QWidget > QLineEdit:read-only, -QTableView > QWidget > QTextEdit:read-only, -QTableView > QWidget > QTimeEdit:read-only, -QTableView > QWidget > QDateEdit:read-only, -QTableView > QWidget > QDateTimeEdit:read-only { - color: black; - background-color: transparent; - border-color: transparent; -} - - -/*================================================================================================== -SELECTORTOOLBAR widget (3rd party plugin) -==================================================================================================*/ -QToolBar:horizontal#Selector, -QToolBar:vertical#Selector { - background-color: rgba(0,0,0,120); - margin: 0px; - padding: 0px; -} - -QToolBar::handle:top#Selector, -QToolBar::handle:bottom#Selector, -QToolBar::handle:horizontal#Selector { - alignment: bottom left; -} - -QToolBar::handle:left#Selector, -QToolBar::handle:right#Selector, -QToolBar::handle:vertical#Selector { - width: 100%; - alignment: center left; -} - -QToolBar:top#Selector QToolButton, -QToolBar:bottom#Selector QToolButton, -QToolBar:horizontal#Selector QToolButton { - alignment: bottom left; -} - -QToolBar:left#Selector QToolButton, -QToolBar:right#Selector QToolButton, -QToolBar:vertical#Selector QToolButton { - alignment: center left; -} - -QToolButton[toolbar_orientation="horizontal"] { - /* nothing, when Horizontal there's no need to add special parameters */ -} - -QToolButton[toolbar_orientation="vertical"] { - /* nothing, when Horizontal there's no need to add special parameters */ -} - -QToolBar#Selector QToolButton { - border: none; - margin: 0px; - padding: 2px 6px; - border-radius: 0px; -} - -/* Active tab */ -QToolBar#Selector QToolButton:checked { +QTableView::item { color: white; - background-color: #444444; +} +QTableView { + /*qproperty-AliasedCellBackgroundColor: #f700ff;*/ + /*qproperty-aliasBgColor: #f700ff;*/ } -/* Unactive tabs */ -QToolBar#Selector QToolButton:!checked { - color: rgba(255,255,255,160); - background-color: transparent; - margin: 0px; +/* QHeaderView ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qheaderview + +--------------------------------------------------------------------------- */ +QHeaderView { + background-color: transparent; + text-align: center; } -/* Unactive tabs (hover) */ -QToolBar#Selector QToolButton:!checked:hover { - color: rgba(255,255,255,255); - background-color: rgba(255,255,255,20); +QHeaderView:disabled { + background-color: #444444; + color: rgb(174, 174, 174); } -/* Unactive tabs (pressed) */ -QToolBar#Selector QToolButton:!checked:pressed { - background-color: rgba(255,255,255,40); +QHeaderView::section { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); + color: White; + border: 1px solid #2a2a2a; + font-size: 13px; + font-weight: bold; } - -/*================================================================================================== -TABBAR widget (3rd party plugin) -==================================================================================================*/ -QTabWidget#TabBar > QTabBar { - border-top: 0; +QHeaderView::section::horizontal { + padding-top: 1px; + padding-bottom: 1px; + padding-left: 5px; + padding-right: 0px; } -QTabWidget#TabBar > QTabBar::tab:top, -QTabWidget#TabBar > QTabBar::tab:bottom { - min-width: -1; +QHeaderView::section::horizontal::first, QHeaderView::section::horizontal::only-one { + border-left: 0px solid #696968; } -QTabWidget#TabBar > QTabBar::tab:left, -QTabWidget#TabBar > QTabBar::tab:right { - min-height: -1; +QHeaderView::section::horizontal:disabled { + color: #353535; } - -/*================================================================================================== -EXPERIMENTAL -==================================================================================================*/ - -/* Fix for preventing elements in different rows to accidentally overlap */ -QDialog QGroupBox QFrame { - margin: 2px 0px; +QHeaderView::section::vertical { + padding-top: 1px; + padding-bottom: 0; + padding-left: 1px; + padding-right: 0px; + border-top: 0px solid #2a2a2a; } -*[mandatoryField="true"] { background-color: cyan } - -/* Hack to avoid QPushButton text partially hidden under menu-indicator */ -QPushButton#NavigationIndicator::menu-indicator { - image: none; - width: 0px; +QHeaderView::section::vertical::first, QHeaderView::section::vertical::only-one { + border-top: 2px solid #2a2a2a; } -QToolBar QToolButton[popupMode="1"] { - width: 100px; - background: red; +QHeaderView::section::vertical:disabled { + border-top: 2px solid #2a2a2a; } -/*================================================================================================== -SKETCHER -==================================================================================================*/ +QHeaderView::down-arrow { + /* Those settings (border/width/height/background-color) solve bug */ + /* transparent arrow background and size */ + background-color: transparent; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/down_arrow_light.svg); +} -Gui--StatefulLabel[state="empty_sketch"] { - color : rgba(255,255,255,127); /* 50% opacity white */ +QHeaderView::up-arrow { + background-color: transparent; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/up_arrow_light.svg); } -Gui--StatefulLabel[state="under_constrained"] { - color : rgba(255,255,255,255); /* White */ + +/* QToolBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbox +used in PATH + +--------------------------------------------------------------------------- */ +QToolBox { + padding: 0px; + border: 1px solid #696969; + border-radius: 4px; + background-color: transparent; } -Gui--StatefulLabel[state="conflicting_constraints"] { - color : rgba(255,0,0,255); /* Red */ + +QToolBox:selected { + padding: 0px; + border: 0px solid #74831d; } -Gui--StatefulLabel[state="malformed_constraints"] { - color : rgba(255,0,0,255); /* Red */ + +QToolBox::tab { + background-color: transparent; + border: 0px solid #696969; + color: white; + background-image: url(qss:images_dark-light/down_arrow_lighter.svg); + background-repeat: none; + background-position: center left; } -Gui--StatefulLabel[state="redundant_constraints"] { - color : rgba(255,69,0,255); /* Orange red */ + +QToolBox::tab:disabled { + color: #696969; } -Gui--StatefulLabel[state="partially_redundant_constraints"] { - color : rgba(65,105,225,255); /* Royal blue */ + +QToolBox::tab:selected { + background-color: #696969; + background-image: url(qss:images_dark-light/transparent.svg); + padding-right: 5px; + background-repeat: none; } -Gui--StatefulLabel[state="solver_failed"] { - color : rgba(255,0,0,255); /* Red */ - font-weight: bold; + +QToolBox::tab:selected:disabled { + background-color: #696969; + border-bottom: 0px solid #cccccc; + color: white; } -Gui--StatefulLabel[state="fully_constrained"] { - color : rgba(0,255,0,255); /* Green */ - font-weight: bold; + +QToolBox::tab:!selected { + } -Gui--UrlLabel { - color : rgba(0,91,255,255); /* Deep sky blue */ - text-decoration : underline; + +QToolBox::tab:!selected:disabled { + background-color: #444444; } + +QToolBox::tab:hover { + background-color: #74831d; + } + +QToolBox QScrollArea QWidget QWidget { + padding: 0px; + border: 0px; + background-color: transparent; +} + +/* QFrame ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe +https://doc.qt.io/qt-5/qframe.html#-prop +https://doc.qt.io/qt-5/qframe.html#details +https://stackoverflow.com/questions/14581498/qt-stylesheet-for-hline-vline-color + +--------------------------------------------------------------------------- */ +/* (dot) .QFrame fix #141, #126, #123 */ +.QFrame { + border-radius: 0px; + border: 0px solid #696968; + background-color: #696969; + /* No frame */ + /* HLine */ + /* HLine */ +} + +.QFrame[frameShape="0"] { + border-radius: 1.9px; + border: 1px solid #696968; +} + +.QFrame[frameShape="4"] { + max-height: 1px; + border: none; + background-color: #696968; +} + +.QFrame[frameShape="5"] { + max-width: 1px; + border: none; + background-color: #444444; +} + +/* QSplitter -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsplitter + +--------------------------------------------------------------------------- */ +QSplitter { + background-color: #3c3c3c; + spacing: 1px; + padding: 1px; + margin: 1px; +} + +QSplitter::handle { + margin: 0px 0px; + padding: 0px; +} + +QSplitter::handle:horizontal { + background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + width: 1px; +} + +QSplitter::handle:vertical { + background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + height: 1px; +} + +QSplitter::handle:hover { + background-image: url(qss:images_dark-light/splitter_horizontal_light.svg); + background-position: center center; + background-repeat: none; + background-color: #74831d; +} + +/* QDateEdit, QDateTimeEdit ----------------------------------------------- + +--------------------------------------------------------------------------- */ +QDateEdit, QDateTimeEdit { + selection-background-color: #74831d; + border-style: solid; + border: 1px solid #696968; + border-radius: 1.9px; + /* This fixes 103, 111 */ + padding-top: 2px; + /* This fixes 103, 111 */ + padding-bottom: 2px; + padding-left: 4px; + padding-right: 4px; + min-width: 10px; +} + +QDateEdit:on, QDateTimeEdit:on { + selection-background-color: #74831d; +} + +QDateEdit::drop-down, QDateTimeEdit::drop-down { + subcontrol-origin: padding; + subcontrol-position: top right; + width: 12px; + border-left: 1px solid #696968; +} + +QDateEdit::down-arrow, QDateTimeEdit::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + height: 8px; + width: 8px; +} + +QDateEdit::down-arrow:on, QDateEdit::down-arrow:hover, QDateEdit::down-arrow:focus, QDateTimeEdit::down-arrow:on, QDateTimeEdit::down-arrow:hover, QDateTimeEdit::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_lighter.svg); +} + +QDateEdit QAbstractItemView, QDateTimeEdit QAbstractItemView { + background-color: #444444; + border-radius: 2px; + border: 1px solid #696968; + selection-background-color: #74831d; +} + +/* QAbstractView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractView:hover { + border: 1px solid #74831d; + color: White; +} + +QAbstractView:selected { + background: #74831d; + color: White; +} + +/* PlotWidget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +PlotWidget { + /* Fix cut labels in plots #134 */ + padding: 0px; +} \ No newline at end of file diff --git a/src/Gui/Stylesheets/Darker-orange.qss b/src/Gui/Stylesheets/Darker-orange.qss index 6e6739fe8e..b9adb949bb 100644 --- a/src/Gui/Stylesheets/Darker-orange.qss +++ b/src/Gui/Stylesheets/Darker-orange.qss @@ -1,87 +1,88 @@ /* ABOUT ============================================================================================================ -version 2.22 -Qt theme (stylesheet) specially developed for FreeCAD (https://www.freecad.org/). -It might work with other software that uses Qt styling. +Revised stylesheet based on the original from Pablo Gil Fernández made by MisterMaker - -LICENSE +KNOWN BUGS and TO DO ============================================================================================================ -Copyright (c) 2019 Pablo Gil Fernández +Please, follow the link to get updated information: +https://forum.freecad.org/viewtopic.php?t=78431 -This work is licensed under the Creative Commons Attribution-ShareAlike 4.0 International License. -To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/4.0/. - - -INSTALLATION +INSTALLATION WHEN NECESSARY ============================================================================================================ 1) Place the .qss files and /images/ folder in the path that fits your OS: OSX = /Users/[YOUR_USER_NAME]/Library/Preferences/FreeCAD/Gui/Stylesheets/ WINDOWS = C:/[INSTALLATION_PATH]/FreeCAD/data/Gui/Stylesheets/ LINUX = /home/[YOUR_USER_NAME]/.FreeCAD/Gui/Stylesheets/ - -CUSTOMIZATION ============================================================================================================ -If you would like to change the overall look/style of the theme, just find and replace following colors in the whole file: - BACKGROUND (darker to lighter) - black - #1e1e1e - #2a2a2a = background - #333333 - #424242 - #3c3c3c - #444444 = main background color - #545454 = secondary - #787878 - #a0a0a0 - #b4b4b4 - #bebebe - #c8c8c8 - #d2d2d2 - #e0e0e0 - #f5f5f5 - white - - SELECTION (darker to lighter) - #624b14 - #b28416 - #d0970c - #daa116 = main selection color - #e2ac2a = used to build QSpinBox up and down buttons, it's used as color in the middle - #e3b64d - #e0c992 - #e3d8b9 +TO MODIFY USE THESE COLORS: + #b28416 + #996b00 -KNOWN BUGS and TO DO -============================================================================================================ -Please, follow the link to get updated information: https://forum.freecad.org/viewtopic.php?f=10&t=12417 +See Qt documentation: -*/ + - https://doc.qt.io/qt-5/stylesheet.html + - https://doc.qt.io/qt-5/stylesheet-reference.html + - https://doc.qt.io/qt-5/stylesheet-examples.html + +--------------------------------------------------------------------------- */ -/*================================================================================================== -Reset elements -==================================================================================================*/ -/* Resetting everything helps to unify styles across different operating systems */ +/* Reset elements ------------------------------------------------------------ + +Resetting everything helps to unify styles across different operating systems + +--------------------------------------------------------------------------- */ * { - padding: 0px; - margin: 0px; - border: 0px; - border-style: none; - border-image: none; - outline: 0; - color: #f5f5f5; /* Default color for labels and different text elements that usually use dark colors */ + padding: 0px; + margin: 0px; + border: 0px; + border-style: none; + border-image: none; + outline: 0; } /* specific reset for elements inside QToolBar */ QToolBar * { + margin: 0px; + padding: 0px; +} + +/*hacks */ + Gui--PropertyEditor--PropertyEditor QLineEdit:read-only, +Gui--PropertyEditor--PropertyEditor QLineEdit:disabled, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:read-only, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:disabled { + color: transparent; + border-color: transparent; + background-color: transparent; + selection-color: transparent; + selection-background-color: transparent; + +} +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel, +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel:disabled { + color: transparent; + background-color: transparent; + border: none; + border-radius: 1px; margin: 0px; padding: 0px; } +Gui--PropertyEditor--PropertyEditor QSpinBox, +Gui--PropertyEditor--PropertyEditor QDoubleSpinBox, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox, +Gui--PropertyEditor--PropertyEditor QLineEdit, +Gui--PropertyEditor--PropertyEditor QComboBox { + margin-left: 0px; + margin-right: 0px; + padding-top: 0px; + padding-bottom: 0px; + +} /*================================================================================================== Main window @@ -94,970 +95,1399 @@ QToolBar { } QMdiArea { - background-image: url(qss:images_dark-light/background_freecad_dark.svg); - background-position: center center; - background-repeat: no-repeat; + background-image: url(qss:images_dark-light/background_freecad_dark.svg); + background-position: center center; + background-repeat: no-repeat; +} +/*navgation src/Mod/Tux/NavigationIndicatorGui.py */ +Gui--NavigationIndicatorGui--BlenderNavigationStyle { +/*QAction#a4 {*/ + qproperty-icon: url(:/icons/icons/NavigationBlender_light.svg); +} +/*===== +/* QWidget ---------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QWidget { + background-color: #444444; + border: 0px solid #696968; + padding: 0px; + color: White; + selection-background-color: #b28416; + selection-color: White; } - -/*================================================================================================== -Sub windows -==================================================================================================*/ -QMdiSubWindow { - border:1px solid #333333; - margin-top: 30px; - margin-left: 4px; - margin-right: 4px; - margin-bottom:4px; +QWidget:disabled { + background-color: transparent; + color: #c2c7cb; + selection-background-color: #b28416; + selection-color: #c2c7cb; } - -/*================================================================================================== -MENUS -==================================================================================================*/ -QMenuBar, -QMenuBar::item { - color: #f5f5f5; - background-color: #444444; /* main background color */ +QWidget::item:selected { + background-color: #b28416; } -QMenu, -QMenu::item { - color: #f5f5f5; - background-color: #2a2a2a; - text-decoration: none; -} - -QMenuBar::item:selected, -QMenuBar::item:pressed, -QMenu::item:selected, -QMenu::item:pressed { - color: #ffffff; + /* Causes issue with colorselector. + QWidget::item:hover:!selected { background-color: #b28416; -} + }*/ -QMenu::right-arrow { - width: 10px; - height: 10px; - image:url(qss:images_dark-light/right_arrow_dark.svg); - margin-right: 2px; -} +/* QMainWindow ------------------------------------------------------------ -QMenu::right-arrow:selected { - image:url(qss:images_dark-light/right_arrow_lighter.svg); -} +This adjusts the splitter in the dock widget, not qsplitter +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmainwindow -QMenu::item { - padding: 2px 4px; /* make room for icon at left */ - border: 1px solid transparent; /* reserve space for selection border */ -} - -QMenu::icon { - margin-left: 1px; - margin-right: 1px; -} - -QMenu::icon:checked { /* appearance of a 'checked' icon */ - background: #b28416; - border: 2px #b28416; - position: absolute; - border-radius: 2px; -} - -QMenu::separator { - height: 1px; - background-color: rgba(255,255,255,30); - margin: 6px 4px; -} - -QMenu::indicator:non-exclusive:checked { - color: white; -} - -/* Fix for elements inside a drop-down menu */ -QMenu QRadioButton, -QMenu QCheckBox, -QMenu QPushButton, -QMenu QToolButton { - color: white; /* same as regular QRadioButton and QCheckBox */ -} - -QMenu QRadioButton:hover, -QMenu QCheckBox:hover, -QMenu QPushButton:hover, -QMenu QToolButton:hover, -QMenu QPushButton:pressed, -QMenu QToolButton:pressed, -QMenu QPushButton:selected, -QMenu QToolButton:selected { - color: white; - background-color: #b28416; /* same as QMenu::item:selected and QMenu::item:pressed */ -} - -QMenu QRadioButton:disabled, -QMenu QCheckBox:disabled { - color: #f5f5f5; -} - -QMenu QRadioButton::indicator:disabled, -QMenu QCheckBox::indicator:disabled { - color: #f5f5f5; - background-color: transparent; - border: 1px solid #f5f5f5; -} - - -/*================================================================================================== -Tool bar -==================================================================================================*/ -QToolBar { - padding: 2px; -} - -QToolBar::handle:top, -QToolBar::handle:bottom, -QToolBar::handle:horizontal { - background-image: url(qss:images_dark-light/Hmovetoolbar_light.svg); - width: 10px; - margin: 4px 2px; - background-position: top right; - background-repeat: repeat-y; -} - -QToolBar::handle:left, -QToolBar::handle:right, -QToolBar::handle:vertical { - background-image: url(qss:images_dark-light/Vmovetoolbar_light.svg); - height: 10px; - margin: 2px 4px; - background-position: left bottom; - background-repeat: repeat-x; -} - -QToolBar::separator:top, -QToolBar::separator:bottom, -QToolBar::separator:horizontal { - width: 1px; - margin: 6px 4px; - background-color: rgba(0,0,0,30); -} - -QToolBar::separator:left, -QToolBar::separator:right, -QToolBar::separator:vertical { - height: 1px; - margin: 4px 6px; - background-color: rgba(0,0,0,30); -} - - -/*================================================================================================== -Group box -==================================================================================================*/ -QGroupBox { - color: rgba(255,255,255,120); - border:1px solid rgba(255,255,255,20); /* lighter than its own border-color */; - border-radius: 3px; - margin-top: 10px; - padding: 6px; - background-color: rgba(255,255,255,0); -} - -QGroupBox:title { - top: -8px; - left: 12px; -} - -/* NOTE: QGroupBox checkboxes are styles with regular ones so that the all get the same style */ -/* QGroupBox::indicator { - width: 13px; - height: 13px; -} - -QGroupBox::indicator:unchecked { - image: url(:/images/checkbox_unchecked.png); -} */ - - -/*================================================================================================== -Tooltip -==================================================================================================*/ -QToolTip { - color: #ffffff; - background-color: #1e1e1e; - /*opacity: 90%; doesn't correctly work */ - padding: 4px; - border-radius: 3px; /* has no effect */ -} - - -/*================================================================================================== -Dock widget -==================================================================================================*/ -QDockWidget { - color: #a0a0a0; - titlebar-close-icon: url(qss:images_dark-light/close_light.svg); - titlebar-normal-icon: url(qss:images_dark-light/undock_light.svg); -} - -QDockWidget::title { - text-align: center; - background-color: rgba(0,0,0,40); - border: 4px solid #444444; /* fix to simulate margin between this :title and tabs */ /* same as main background color */ - border-radius: 6px; /* bigger than normal due to previous border fix */ - padding: 4px 0px; /* also needed because of previous border fix */ -} - -QDockWidget::close-button, -QDockWidget::float-button { - border: none; - background: transparent; - border-radius: 3px; - subcontrol-origin: padding; - subcontrol-position: right center; -} - -QDockWidget::close-button { - right: 4px; -} - -QDockWidget::float-button { - right: 22px; -} - -QDockWidget::close-button:hover, -QDockWidget::float-button:hover { - background-color: rgba(0,0,0,60); -} - -QDockWidget::close-button:pressed, -QDockWidget::float-button:pressed { - background-color: rgba(0,0,0,120); -} - -/* fix for Python Console (probably there is a smarter way to arrive to it) */ -QDockWidget > QFrame { - background-color: #787878; - border: 1px solid #333333; -} - - -/*================================================================================================== -Progress bar -==================================================================================================*/ -QProgressBar, -QProgressBar:horizontal { - color: white; - background-color: rgba(0,0,0,70); - text-align: center; - border: 1px solid rgba(0,0,0,140); - padding: 1px; - border-radius: 3px; -} -QProgressBar::chunk, -QProgressBar::chunk:horizontal { - background-color: qlineargradient(spread:pad, x1:1, y1:0.545, x2:1, y2:0, stop:0 #d0970c, stop:1 #daa116); - border-radius: 3px; -} - - -/*================================================================================================== -Scroll -==================================================================================================*/ -QAbstractScrollArea { - border-radius: 2px; - background-color: transparent; -} - -QAbstractScrollArea::corner { - border: none; - background-color: transparent; -} - -QScrollBar:horizontal { - background-color: transparent; - height: 15px; - margin: 0px; -} - -QScrollBar::handle:vertical, -QScrollBar::handle:horizontal { - background-color: rgba(255,255,255,80); -} - -QScrollBar::handle:vertical:hover, -QScrollBar::handle:horizontal:hover { - background-color: rgba(255,255,255,100); -} - -QScrollBar::handle:horizontal { - min-width: 5px; - border-radius: 3px; - margin: 4px 15px; -} - -QScrollBar::sub-line:horizontal { - margin: 1px 3px 0px 3px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/left_arrow_light.svg); - width: 6px; - height: 10px; - subcontrol-position: left; - subcontrol-origin: margin; -} - -QScrollBar::add-line:horizontal { - margin: 1px 3px 0px 3px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/right_arrow_light.svg); - width: 6px; - height: 10px; - subcontrol-position: right; - subcontrol-origin: margin; -} - -QScrollBar::sub-line:horizontal:hover, -QScrollBar::sub-line:horizontal:on { - border-image: url(qss:images_dark-light/left_arrow_lighter.svg); -} - -QScrollBar::add-line:horizontal:hover, -QScrollBar::add-line:horizontal:on { - border-image: url(qss:images_dark-light/right_arrow_lighter.svg); -} - -QScrollBar::up-arrow:horizontal, -QScrollBar::down-arrow:horizontal { - background-color: none; -} - -QScrollBar::add-page:horizontal, -QScrollBar::sub-page:horizontal { - background-color: transparent; -} - -QScrollBar:vertical { - background-color: transparent; - width: 15px; - margin: 0px; -} - -QScrollBar::handle:vertical { - min-height: 5px; - border-radius: 3px; - margin: 15px 4px; -} - -QScrollBar::sub-line:vertical { - margin: 3px 0px 3px 1px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/up_arrow_light.svg); - height: 6px; - width: 10px; - subcontrol-position: top; - subcontrol-origin: margin; -} - -QScrollBar::add-line:vertical { - margin: 3px 0px 3px 1px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/down_arrow_light.svg); - height: 6px; - width: 10px; - subcontrol-position: bottom; - subcontrol-origin: margin; -} - -QScrollBar::sub-line:vertical:hover, -QScrollBar::sub-line:vertical:on { - border-image: url(qss:images_dark-light/up_arrow_lighter.svg); -} - -QScrollBar::add-line:vertical:hover, -QScrollBar::add-line:vertical:on { - border-image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -QScrollBar::up-arrow:vertical, -QScrollBar::down-arrow:vertical { - background-color: none; -} - -QScrollBar::add-page:vertical, -QScrollBar::sub-page:vertical { - background-color: transparent; -} - - -/*================================================================================================== -Tab bar -==================================================================================================*/ -QTabWidget::pane { - background-color: transparent; /* temporal (transparent background) */ /* tab content background color */ - position: absolute; -} - -QTabWidget::pane:top { - top: -1px; - border-top: 1px solid #787878; -} - -QTabWidget::pane:bottom { - bottom: -1px; - border-bottom: 1px solid #787878; -} - -QTabWidget::pane:left { - right: -1px; - border-right: 1px solid #787878; -} - -QTabWidget::pane:right { - left: -1px; - border-left: 1px solid #787878; -} - -QTabWidget::tab-bar:top, -QTabWidget::tab-bar:bottom { - left: 10px; -} - -QTabWidget::tab-bar:left, -QTabWidget::tab-bar:right { - top: 10px; -} - -QTabBar { - qproperty-drawBase: 0; /* important */ - background-color: transparent; -} - -/* Workaround for QTabBars created from docked QDockWidgets which don't draw the border if not set and reset as follows: */ -QTabBar { - border-top: 1px solid #787878; /* set color for all QTabBars */ -} -QDockWidget QTabBar { - border-color: transparent; /* set color for all QTabBars but ones created from QDockWidget */ -} -QDialog QTabBar { - border-color: transparent; /* set color for QTabBars inside Preferences dialog */ -} -/* end fix */ - -QTabBar::tab { - background-color: transparent; - border: 1px solid transparent; - padding: 3px; -} - -QTabBar::tab:top, -QTabBar::tab:bottom { - border-top-width: 4px; /* same as selected tab colored border in order to center close-button */ - border-bottom-width: 4px; /* same as selected tab colored border in order to center close-button */ - min-width: 11ex; - margin-left: 2px; - margin-right: 2px; -} - -QTabBar::tab:left, -QTabBar::tab:right { - border-left-width: 4px; /* same as selected tab colored border in order to center close-button */ - border-right-width: 4px; /* same as selected tab colored border in order to center close-button */ - min-height: 14ex; - margin-top: 2px; - margin-bottom: 2px; -} - -QTabBar::tab:selected { - color: #f5f5f5; - background-color: #444444; /* same as tab content background color */ - border-color: #787878; -} - -QTabBar::tab:top:selected { - border-top: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #daa116, stop:1 #d0970c); /* selection color */ - border-bottom-color: #444444; /* same as tab content background color */ -} - -QTabBar::tab:bottom:selected { - border-bottom: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #daa116, stop:1 #d0970c); /* selection color */ - border-top-color: #444444; /* same as tab content background color */ -} - -QTabBar::tab:right:selected { - border-left: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:1, y2:0, stop:0 #daa116, stop:1 #d0970c); /* selection color */ - border-right-color: #444444; /* same as tab content background color */ -} - -QTabBar::tab:left:selected { - border-right: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:1, y2:0, stop:0 #daa116, stop:1 #d0970c); /* selection color */ - border-left-color: #444444; /* same as tab content background color */ -} - -QTabBar::tab:!selected { - color: rgba(255,255,255,120); -} - -QTabBar::tab:!selected:hover { - color: rgba(255,255,255,180); - background-color: rgba(255,255,255,20); -} - -QTabBar::tab:first:selected { - margin-left: 0; /* the first selected tab has nothing to overlap with on the left */ -} - -QTabBar::tab:last:selected { - margin-right: 0; /* the last selected tab has nothing to overlap with on the right */ -} - -QTabBar::tab:only-one { - margin: 0; /* if there is only one tab, we don't want overlapping margins */ -} - -/* hack to access Preference TabBar background */ -QDialog#Gui__Dialog__DlgPreferences > QFrame QFrame { - background-color: transparent; /* main background color (in Windows is #444444) */ -} - -/* fix for previous hack that broke QTabWidget background on Windows */ -QDialog#Gui__Dialog__DlgPreferences QTabWidget::pane { - background-color: transparent; /* temporal (transparent background) */ -} - -/* hack to correctly align Preferences icon list on OSX */ -QDialog#Gui__Dialog__DlgPreferences > QListView { - min-width: 130px; -} - -/* unique styles for sections inside Preferences */ -QDialog#Gui__Dialog__DlgPreferences > QListView::item { - border-radius: 4px; -} - -QDialog#Gui__Dialog__DlgPreferences > QListView::item:hover { - background-color: #787878; -} - -QDialog#Gui__Dialog__DlgPreferences > QListView::item:selected { - color: white; - background-color: #b28416; -} - - -/*================================================================================================== -Tab bar buttons -==================================================================================================*/ -/* Close button */ -QTabBar::close-button { - subcontrol-origin: margin; - subcontrol-position: center right; /* only works for Qt 4.6 and newer */; - border-radius: 2px; - background-image: url(qss:images_dark-light/close_dark.svg); - background-position: center center; - background-repeat: none; -} - -QTabBar::close-button:hover { - background-color: rgba(255,255,255,20); -} - -QTabBar::close-button:pressed { - background-color: rgba(255,255,255,30); -} - -/* Fix for lists inside Model tab */ -QDockWidget QTreeView, -QDockWidget QListView, -QDockWidget QTableView { - margin: 6px; - border: 1px solid #333333; /* same as regular QTreeView, QListView and QTableView */ - min-height: 40px; /* necessary in some areas of FreeCAD */ -} - -/* Buttons to scroll tabs if there is not space to show all of them: */ -QTabBar::scroller { - width: 20px; /* the width of the scroll buttons */ -} - -QTabBar QToolButton, -QTabBar QToolButton:hover { - background-color: #444444; /* same as main background color */ -} - -QTabBar QToolButton::right-arrow:enabled { - image: url(qss:images_dark-light/right_arrow_dark.svg); -} - -QTabBar QToolButton::right-arrow:disabled, -QTabBar QToolButton::right-arrow:off { - image: url(qss:images_dark-light/right_arrow_disabled_dark.svg); -} - -QTabBar QToolButton::right-arrow:hover { - image: url(qss:images_dark-light/right_arrow_darker.svg); -} - - QTabBar QToolButton::left-arrow:enabled { - image: url(qss:images_dark-light/left_arrow_dark.svg); -} - - QTabBar QToolButton::left-arrow:disabled, - QTabBar QToolButton::left-arrow:off { - image: url(qss:images_dark-light/left_arrow_disabled_dark.svg); -} - - QTabBar QToolButton::left-arrow:hover { - image: url(qss:images_dark-light/left_arrow_darker.svg); -} - - QTabBar QToolButton::up-arrow:enabled { - image: url(qss:images_dark-light/up_arrow_dark.svg); -} - - QTabBar QToolButton::up-arrow:disabled, - QTabBar QToolButton::up-arrow:off { - image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); -} - - QTabBar QToolButton::up-arrow:hover { - image: url(qss:images_dark-light/up_arrow_darker.svg); -} - - QTabBar QToolButton::down-arrow:enabled { - image: url(qss:images_dark-light/down_arrow_dark.svg); -} - - QTabBar QToolButton::down-arrow:disabled, - QTabBar QToolButton::down-arrow:off { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - - QTabBar QToolButton::down-arrow:hover { - image: url(qss:images_dark-light/down_arrow_darker.svg); -} - -QTabBar::tear { - /* default OS tear better */ -} - - -/*================================================================================================== -Tree and list views -==================================================================================================*/ -QTreeView, -QListView, -QTableView { - color: #e0e0e0; - background-color: #545454; - alternate-background-color: #444444; /* related with QListView background */ - border: 1px solid #333333; - selection-color: #ffffff; - selection-background-color: #b28416; /* should be similar to QListView::item selected background-color */ - show-decoration-selected: 1; /* make the selection span the entire width of the view */ - border-radius: 3px; -} - -QListView::item:hover, -QTreeView::item:hover { - background-color: transparent; /* fix to homogenize it on all OSs */ -} - -QListView::item:selected, -QTreeView::item:selected { - color: #ffffff; /* should be similar to QListView selection-color */ - background-color: #b28416; /* should be similar to QListView selection-background-color */ - show-decoration-selected: 1; /* make the selection span the entire width of the view */ -} - -/* Property Editor QTreeView (FreeCAD custom widget) */ -Gui--PropertyEditor--PropertyEditor { - gridline-color: #444444; /* same as Group header background */ -} - -/* fix for column items background when a link is present */ -Gui--PropertyEditor--PropertyEditor > QWidget > QFrame:focus { - background-color: #b28416; /* same as focused background color */ -} - -/* hack to hide weird redundant information inside the value of a Placement cell */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel, -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel:disabled { - color: transparent; - background-color: transparent; - border: none; - border-radius: 0px; - margin: 0px; - padding: 0px; -} - -/* hack to hide non editable cells inside Property values */ -Gui--PropertyEditor--PropertyEditor QLineEdit:read-only, -Gui--PropertyEditor--PropertyEditor QLineEdit:disabled, -Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:read-only, -Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:disabled { - color: transparent; - border-color: transparent; - background-color: transparent; - selection-color: transparent; - selection-background-color: transparent; -} - -/* hack to hide weird redundant information inside cells with links and no editable data (but editable via "..." button) */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel { - color: #624b14; - background-color: #b28416; /* same as focused background color */ -} - -/* hack to disable margin inside Property values to following elements */ -Gui--PropertyEditor--PropertyEditor QSpinBox, -Gui--PropertyEditor--PropertyEditor QDoubleSpinBox, -Gui--PropertyEditor--PropertyEditor QAbstractSpinBox, -Gui--PropertyEditor--PropertyEditor QLineEdit, -Gui--PropertyEditor--PropertyEditor QComboBox { - margin-left: 0px; - margin-right: 0px; - padding-top: 0px; - padding-bottom: 0px; -} - -/* reset min-height to 0px inside list views */ -QTreeView > QWidget > QComboBox, -QTreeView > QWidget > QAbstractSpinBox, -QTreeView > QWidget > QSpinBox, -QTreeView > QWidget > QDoubleSpinBox, -QTreeView > QWidget > QLineEdit, -QTreeView > QWidget > QTextEdit, -QTreeView > QWidget > QTimeEdit, -QTreeView > QWidget > QDateEdit, -QTreeView > QWidget > QDateTimeEdit, -QTreeView > QWidget > Gui--ColorButton { - min-height: 0px; -} - -/* set border-radius to 0px inside list views */ -QTreeView > QWidget > QComboBox, -QTreeView > QWidget > QAbstractSpinBox, -QTreeView > QWidget > QSpinBox, -QTreeView > QWidget > QDoubleSpinBox, -QTreeView > QWidget > QLineEdit, -QTreeView > QWidget > QTextEdit, -QTreeView > QWidget > QTimeEdit, -QTreeView > QWidget > QDateEdit, -QTreeView > QWidget > QDateTimeEdit, -QTreeView > QWidget > QComboBox:drop-down, -QTreeView > QWidget > QAbstractSpinBox:up-button, -QTreeView > QWidget > QSpinBox:up-button, -QTreeView > QWidget > QDoubleSpinBox:up-button, -QTreeView > QWidget > QTimeEdit:up-button, -QTreeView > QWidget > QDateEdit:up-button, -QTreeView > QWidget > QDateTimeEdit:up-button, -QTreeView > QWidget > QAbstractSpinBox:down-button, -QTreeView > QWidget > QSpinBox:down-button, -QTreeView > QWidget > QDoubleSpinBox:down-button, -QTreeView > QWidget > QTimeEdit:down-button, -QTreeView > QWidget > QDateEdit:down-button, -QTreeView > QWidget > QDateTimeEdit:down-button, -QTreeView > QWidget > Gui--ColorButton { - border-radius: 0px; -} - -/* set focus colors to best viewing the editable fields */ -QTreeView > QWidget > QComboBox:focus, -QTreeView > QWidget > QAbstractSpinBox:focus, -QTreeView > QWidget > QSpinBox:focus, -QTreeView > QWidget > QDoubleSpinBox:focus, -QTreeView > QWidget > QLineEdit:focus, -QTreeView > QWidget > QTextEdit:focus, -QTreeView > QWidget > QTimeEdit:focus, -QTreeView > QWidget > QDateEdit:focus, -QTreeView > QWidget > QDateTimeEdit:focus { - border-color: #2a2a2a; /* same as focused background color */ - border-bottom-color: #1e1e1e; /* same as focused border color */ -} - -QTreeView > QWidget > QAbstractSpinBox:read-only, -QTreeView > QWidget > QSpinBox:read-only, -QTreeView > QWidget > QDoubleSpinBox:read-only, -QTreeView > QWidget > QLineEdit:read-only, -QTreeView > QWidget > QTextEdit:read-only, -QTreeView > QWidget > QTimeEdit:read-only, -QTreeView > QWidget > QDateEdit:read-only, -QTreeView > QWidget > QDateTimeEdit:read-only { - color: transparent; - background-color: transparent; - border-color: transparent; -} - -/* Fix to correctly (not totally) draw QTextEdit on OSX at Page properties: "Page result", "Template" and "Editable Texts" */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QWidget { - min-height: 14px; - border-radius: 0px; /* reset */ -} - - -/*================================================================================================== -Header of tree and list views -==================================================================================================*/ -QHeaderView { - color: #d2d2d2; - background-color: #2a2a2a; - border-top-left-radius: 2px; /* 1px less than its container */ - border-top-right-radius: 2px; /* 1px less than its container */ - border-bottom-left-radius: 0px; - border-bottom-right-radius: 0px; -} - -QHeaderView::section { - border:none; - padding: 4px 6px; - background-color: #2a2a2a; -} - -QHeaderView::section:horizontal { - padding: 4px 6px; /* left and right value similar to QHeaderView::section */ - border-right: 1px solid rgba(255,255,255,30); -} - -QHeaderView::section:vertical { - border-bottom: 1px solid rgba(255,255,255,30); -} - -QTableCornerButton::section { - background-color: #2a2a2a; - border-top: none; - border-left: none; - border-right: 1px solid rgba(255,255,255,30); - border-bottom: 1px solid rgba(255,255,255,30); -} - -QHeaderView::section:last { - border-right: none; -} - -QHeaderView::up-arrow { - image: url(qss:images_dark-light/up_arrow_light.svg); -} - -QHeaderView::up-arrow:hover { - image: url(qss:images_dark-light/up_arrow_lighter.svg); -} - -QHeaderView::down-arrow { - image: url(qss:images_dark-light/down_arrow_light.svg); -} - -QHeaderView::down-arrow:hover { - image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -/* Group header inside Property Editor (FreeCAD custom widget) */ -Gui--PropertyEditor--PropertyEditor { - qproperty-groupTextColor: #bebebe; - qproperty-groupBackground: #2a2a2a; -} - - -/*================================================================================================== -Branch system for QTreeViews -==================================================================================================*/ -QTreeView::branch { - background: transparent; -} - -QTreeView::branch:has-siblings:!adjoins-item { - border-image: url(qss:images_dark-light/branch_vline_light.svg) 0; -} - -QTreeView::branch:has-siblings:adjoins-item { - border-image: url(qss:images_dark-light/branch_more_light.svg) 0; -} - -QTreeView::branch:!has-children:!has-siblings:adjoins-item { - border-image: url(qss:images_dark-light/branch_end_light.svg) 0; -} - -QTreeView::branch:closed:has-children:has-siblings { - border-image: url(qss:images_dark-light/branch_more_closed_light.svg) 0; -} - -QTreeView::branch:has-children:!has-siblings:closed { - border-image: url(qss:images_dark-light/branch_end_closed_light.svg) 0; -} - -QTreeView::branch:open:has-children:has-siblings { - border-image: url(qss:images_dark-light/branch_more_open_light.svg) 0; -} - -QTreeView::branch:open:has-children:!has-siblings { - border-image: url(qss:images_dark-light/branch_end_open_light.svg) 0; -} - - -/*================================================================================================== -Splitter and windows separator -==================================================================================================*/ -QSplitter::handle { - margin: 0px 11px; - padding: 0px; -} - -QSplitter::handle:horizontal { - background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); - background-position: center center; - background-repeat: none; - margin: 4px 2px 4px 2px; - width: 2px; -} - -QSplitter::handle:vertical { - background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); - background-position: center center; - background-repeat: none; - margin: 2px 4px 2px 4px; - height: 2px; -} - -/* Similar to the splitter is the following window separator (but horizontal/vertical is on the opposite way) */ +--------------------------------------------------------------------------- */ QMainWindow::separator { - background-position: center center; - background-repeat: none; + /*background-color: #3c3c3c;*/ + border: 0px solid #696968; + spacing: 0px; + padding: 1px; +} + +QMainWindow::separator:vertical:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,stop:0.2 transparent,stop:0.5 #b28416, stop:0.8 transparent); + /*background-color: #b28416;*/ + image: url(qss:images_dark-light/splitter_vertical_light.svg); +} + +QMainWindow::separator:horizontal:hover { + background-color: qlineargradient(x1:0, y1:0, x2:1, y2:0,stop:0.2 transparent,stop:0.5 #b28416, stop:0.8 transparent); + /*background-color: #b28416;*/ + image: url(qss:images_dark-light/splitter_horizontal_light.svg); } QMainWindow::separator:horizontal { - height: 2px; - background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); - margin: 4px 2px 4px 2px; + width: 4px; + margin-top: 0.1px; + margin-bottom: 0.1px; + /* image: url(qss:images_dark-light/splitter_horizontal_dark.svg);*/ } QMainWindow::separator:vertical { - width: 2px; - background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); - margin: 2px 4px 2px 4px; + height: 4px; + margin-left: 0.1px; + margin-right: 0.1px; + /* image: url(qss:images_dark-light/splitter_vertical_dark.svg);*/ +} + +/* QToolTip --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtooltip + +--------------------------------------------------------------------------- */ +QToolTip { + background-color: #1c1b22; + color: White; + /* If you remove the border property, background stops working on Windows */ + border: none; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Remove opacity, fix #174 - may need to use RGBA */ +} + +/* QStatusBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qstatusbar + +--------------------------------------------------------------------------- */ +QStatusBar { + border: 0px solid #3c3c3c; + /* Fixes Spyder #9120, #9121 */ + background: #444444; + /* Fixes #205, white vertical borders separating items */ +} + +QStatusBar::item { + border: none; +} + +QStatusBar QToolTip { + background-color: #444444; + border: 1px solid #696968; + color: #444444; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Reducing transparency to read better */ + opacity: 230; +} + +QStatusBar QLabel { + /* Fixes Spyder #9120, #9121 */ + background: transparent; +} + +/* QCheckBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcheckbox + +--------------------------------------------------------------------------- */ +QCheckBox { + color: white; + padding: 0px; + outline: none; + border: 1px solid transparent; + background-color: transparent; +} + +QCheckBox:focus { + border: 1px solid #996b00; +} + +QCheckBox QWidget:disabled { + background-color: transparent; + color: #c2c7cb; +} + +QCheckBox::indicator { + color: white; + background-color: #1c1b22; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QCheckBox::indicator:unchecked { + background-color: #1c1b22; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QCheckBox::indicator:unchecked:hover, QCheckBox::indicator:unchecked:focus, QCheckBox::indicator:unchecked:pressed { + background-color: #b28416; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QCheckBox::indicator:unchecked:disabled { + background-color: #444444; + image:url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QCheckBox::indicator:checked { + background-color: #1c1b22; + /*border: 1px solid #696968; /* QRadioButton has the same color */ + image:url(qss:images_dark-light/checkbox_light.svg); +} + +QCheckBox::indicator:checked:hover, QCheckBox::indicator:checked:pressed { + background-color: #b28416; +} + +QCheckBox::indicator:checked:disabled { + background-color: #444444; + image: url(qss:images_dark-light/check_light.svg); +} + +QCheckBox::indicator:indeterminate { + background-color: #1c1b22; + border: 1px solid #696968; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QCheckBox::indicator:indeterminate:disabled { + background-color: #444444; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QCheckBox::indicator:indeterminate:hover, QCheckBox::indicator:indeterminate:pressed { + background-color: #b28416; /* QRadioButton has the same color */ +} + +/* QGroupBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qgroupbox + +--------------------------------------------------------------------------- */ +QGroupBox { + font-weight: bold; + border: 1px solid #696968; + border-radius: 1.9px; + padding: 2px; + margin-top: 10px; + margin-bottom: 4px; +} + +QGroupBox::title { + subcontrol-origin: margin; + subcontrol-position: top left; + left: 4px; + padding-left: 2px; + padding-right: 4px; + padding-top: 6px; +} + +QGroupBox::indicator { + color: white; + background-color: #3c3c3c; + border: 1px solid #696968; + width: 12px; + height: 12px; + border-radius:1px; +} + +QGroupBox::indicator:unchecked { + background-color: #696968; + border: 1px solid #696968; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QGroupBox::indicator:unchecked:hover, QGroupBox::indicator:unchecked:focus, QGroupBox::indicator:unchecked:pressed { + background-color: #b28416; +} + +QGroupBox::indicator:unchecked:disabled { + background-color: #1c1b22; + border: 1px solid #696968; +} + +QGroupBox::indicator:checked { + border: none; + image:url(qss:images_dark-light/checkbox_light.svg); +} + +QGroupBox::indicator:checked:hover, QGroupBox::indicator:checked:focus, QGroupBox::indicator:checked:pressed { + background-color: #b28416; +} + +QGroupBox::indicator:checked:disabled { + background-color: #b28416; +} + +/* QRadioButton ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qradiobutton + +--------------------------------------------------------------------------- */ +QRadioButton { + background-color: transparent; + color: White; + border: none; + spacing: 4px; + padding-top: 4px; + padding-bottom: 4px; + outline: none; +} + +QRadioButton:focus { + border: 1px solid #996b00; +} + +QRadioButton:disabled { + background-color: #696968; + color: #353535; +} + +QRadioButton QWidget { + background-color: transparent; + color: White; + spacing: 0px; + padding: 0px; + outline: none; + border: none; +} + +QRadioButton::indicator { + background-color: #3c3c3c; + border: 1px solid #696968; + border-radius: 6px; + margin-left: 0px; + height: 11px; + width: 11px; +} + +QRadioButton::indicator:unchecked { + /*image:url(qss:images_dark-light/radiobutton_light.svg);*/ +} + +QRadioButton::indicator:unchecked:hover, QRadioButton::indicator:unchecked:pressed { + background-color: #b28416; + border: 1px solid #b28416; + border-radius: 6px; +} + +QRadioButton::indicator:unchecked:disabled { + /*image:url(qss:images_dark-light/radiobutton_dark.svg);*/ + border: 1px solid #696968; +} + +QRadioButton::indicator:checked { + image:url(qss:images_dark-light/radiobutton_light.svg); +} + +QRadioButton::indicator:checked:hover, QRadioButton::indicator:checked:pressed { + background-color: #b28416; + border: 1px solid #b28416; + border-radius: 6px; + image:url(qss:images_dark-light/radiobutton_light.svg); +} + +QRadioButton::indicator:checked:disabled { + outline: none; + background-color: #696968; + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +/* QMenuBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenubar + +--------------------------------------------------------------------------- */ +QMenuBar { + background-color: #161616; + /*padding: 1px; + border: 0px solid rgba(0,0,0,140);*/ + color: White; + selection-background-color: #b28416; +} + +QMenuBar:focus { + border: 1px solid #996b00; +} + +QMenuBar::item { + background: transparent; + /*padding-left:5px; + padding-right: 5px; + padding-bottom: 1px; + padding-top: 1px;*/ +} + +QMenuBar::item:selected { + background: transparent; + border: 0px solid #696968; + background-color: #b28416; +} + +QMenuBar::item:pressed { + /*padding: 2px; + padding-left: 10px; + padding-right: 10px;*/ + border: 0px solid #696968; + background-color: #b28416; + color: White; + /*margin-bottom: 0px; + padding-bottom: 0px;*/ +} + +/* QMenu ------------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenu + +--------------------------------------------------------------------------- */ +QMenu { + border-bottom: 2px rgba(0,0,0,140); + border-right: 2px rgba(0,0,0,140); + color: White; + margin: 0px; + background-color: #161616; + selection-background-color: #b28416; +} + +QMenu::separator { + height: 2px; + background-color: #3c3c3c; + margin-left: 30%; + margin-right: 30%; +} + +QMenu::item { + background-color: transparent; + padding: 2px 2px; /* make room for icon at left */ + /* Reserve space for selection border */ + border: 0px transparent #696968; +} + +QMenu::item:selected { + color: White; + background-color: #b28416; +} + +QMenu::item:pressed { + background-color: #b28416; +} + +QMenu::icon { + margin-left: 5px; + width: 14px; + height: 14px; +} + +QMenu::indicator { + margin-left: 2px; + margin-right: 2px; + padding: 0px; + width: 12px; + height: 12px; + /* non-exclusive indicator = check box style indicator (see QActionGroup::setExclusive) */ + /* exclusive indicator = radio button style indicator (see QActionGroup::setExclusive) */ +} + +QMenu::icon:checked { /* appearance of a 'checked' icon */ + background: #996b00; + margin-left: -5px; + border: 5px solid #996b00; + position: absolute; + border-radius: 0px; +} +QMenu::indicator:non-exclusive:unchecked { + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:non-exclusive:unchecked:hover, QMenu::indicator:non-exclusive:unchecked:focus, QMenu::indicator:non-exclusive:unchecked:pressed { + border: none; + background: #b28416; +} + +QMenu::indicator:non-exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QMenu::indicator:non-exclusive:checked { + image:url(qss:images_dark-light/checkbox_light.svg); +} + +QMenu::indicator:non-exclusive:checked:hover, QMenu::indicator:non-exclusive:checked:focus, QMenu::indicator:non-exclusive:checked:pressed { + border: none; + background: #b28416; + image:url(qss:images_dark-light/checkbox_light.svg); +} + +QMenu::indicator:non-exclusive:checked:disabled { + image:url(qss:images_dark-light/checkbox_checked_disabled.svg); +} + +QMenu::indicator:non-exclusive:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:disabled { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:focus, QMenu::indicator:non-exclusive:indeterminate:hover, QMenu::indicator:non-exclusive:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QMenu::indicator:exclusive:unchecked { + image: url(qss:images_dark-light/transparent.svg); +} + +QMenu::indicator:exclusive:unchecked:hover, QMenu::indicator:exclusive:unchecked:focus, QMenu::indicator:exclusive:unchecked:pressed { + border: none; + outline: none; + background: #b28416; + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:checked { + border: none; + outline: none; + image: url(qss:images_dark-light/radiobutton_light.svg); +} + +QMenu::indicator:exclusive:checked:hover, QMenu::indicator:exclusive:checked:focus, QMenu::indicator:exclusive:checked:pressed { + border: none; + outline: none; + background: #b28416; + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:checked:disabled { + outline: none; + image: url(qss:images_dark-light/radiobutton_light.svg); +} + +QMenu::right-arrow { + margin: 5px; + padding-left: 12px; + image:url(qss:images_dark-light/right_arrow_lighter.svg); + height: 12px; + width: 12px; + background-color: transparent; +} + +/* QAbstractItemView ------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QAbstractItemView { + alternate-background-color: #5b5b5b; + color: White; + border: 1px solid #696968; + border-radius: 2px; +} + +QAbstractItemView QLineEdit { + padding: 2px; +} + +/* QAbstractScrollArea ---------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QAbstractScrollArea { + background-color: transparent; + border: 0px solid #696968; + border-radius: 0px; + /* fix #159 */ + padding: 0px; + /* remove min-height to fix #244 */ + color: White; +} + +QAbstractScrollArea:disabled { + color: #353535; +} + +/* QScrollArea ------------------------------------------------------------ + +--------------------------------------------------------------------------- +text input field disabled!!!!*/ +QScrollArea QWidget:disabled { + background-color: #444444; +} + +/* QScrollBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qscrollbar + +--------------------------------------------------------------------------- */ +QScrollBar:horizontal { + height: 16px; + margin: 2px 8px 2px 8px; + border: 0px solid #696968; + border-radius: 4px; + background-color: #444444; +} + +QScrollBar:vertical { + background-color: #444444; + width: 16px; + margin: 8px 2px 8px 2px; + border: 0px solid #696968; + border-radius: 4px; +} + +QScrollBar::handle:horizontal { + background-color: #696969; + border: 1px solid #444444; + border-radius: 4px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:hover { + background-color: #b28416; + border: #696968; + border-radius: 4px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:focus { + border: 1px solid #996b00; +} + +QScrollBar::handle:vertical { + background-color: #696969; + border: 1px solid #696968; + min-height: 8px; + border-radius: 4px; +} + +QScrollBar::handle:vertical:hover { + background-color: #b28416; + border: #696968; + border-radius: 4px; + min-height: 8px; +} + +QScrollBar::handle:vertical:focus { + border: 1px solid #996b00; +} + +QScrollBar::add-line:horizontal { + border-image: url(qss:images_dark-light/right_arrow_light.svg); + height: 9px; + width: 5px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:horizontal:hover, QScrollBar::add-line:horizontal:on { + border-image: url(qss:images_dark-light/right_arrow_lighter.svg); + height: 9px; + width: 5px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical { + border-image: url(qss:images_dark-light/down_arrow_light.svg); + height: 5px; + width: 9px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical:hover, QScrollBar::add-line:vertical:on { + border-image: url(qss:images_dark-light/down_arrow_lighter.svg); + height: 5px; + width: 9px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/left_arrow_light.svg); + height: 9px; + width: 5px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal:hover, QScrollBar::sub-line:horizontal:on { + border-image: url(qss:images_dark-light/left_arrow_lighter.svg); + height: 9px; + width: 5px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/up_arrow_light.svg); + height: 5px; + width: 9px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical:hover, QScrollBar::sub-line:vertical:on { + border-image: url(qss:images_dark-light/up_arrow_lighter.svg); + height: 5px; + width: 9px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::up-arrow:horizontal, QScrollBar::down-arrow:horizontal { + background: none; +} + +QScrollBar::up-arrow:vertical, QScrollBar::down-arrow:vertical { + background: none; +} + +QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal { + background: none; +} + +QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical { + background: none; +} + +/* QTextEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-specific-widgets + + +report view +--------------------------------------------------------------------------- */ +QTextEdit { + background-color: #444444; + color: White; + border-radius: 1.9px; + border: 0px solid #696968; +} + +QTextEdit:focus { + border: 1px solid #996b00; +} + +QTextEdit:selected { + background: #346792; + color: white; +} + +/* QPlainTextEdit --------------------------------------------------------- +Python +--------------------------------------------------------------------------- */ +QPlainTextEdit { + background-color: #3c3c3c; + color: White; + border-radius: 1.9px; + border: 0px solid #696968; +} + +QPlainTextEdit:focus { + border: 1px solid #996b00; +} + +QPlainTextEdit:selected { + background: #b28416; + color: White; +} + +/* QSizeGrip -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsizegrip + +--------------------------------------------------------------------------- */ +QSizeGrip { + background: transparent; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/sizegrip_light.svg); +} + +/* QStackedWidget --------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QStackedWidget { + padding: 0px; + border: 0px solid #696968; +} + +/* QToolBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbar + +--------------------------------------------------------------------------- */ +QToolBar { + background-color: #444444; + border-bottom: 0px solid rgba(0,0,0,120); + padding: 1px; + font-weight: bold; + spacing: 1px; +} + +QToolBar:disabled { + /* Fixes #272 */ + background-color: #444444; +} + +QToolBar::handle:horizontal { + width: 8px; + margin: 3px 3px; + background-position: top right; + background-repeat: repeat-y; + background-image: url(qss:images_dark-light/Hmovetoolbar_light.svg); +} + +QToolBar::handle:vertical { + height: 8px; + margin: 3px 3px; + background-position: left bottom; + background-repeat: repeat-x; + background-image: url(qss:images_dark-light/Vmovetoolbar_light.svg); +} + +QToolBar::separator:horizontal { + width: 2px; + margin: 4px 4px; + background-color: transparent; +} + +QToolBar::separator:vertical { + height: 2px; + margin: 4px 4px; + background-color: transparent; +} + +/*The "show more" button (it can also be stylable with "QToolBarExtension" icon is not working Qproperty works but breaks when you move the toolbar see also */ +QToolButton#qt_toolbar_ext_button { +margin: 0px; +padding: 0px; +background-color: #696969; +/*background-image: url(qss:images_dark-light/more_light.svg);*/ +background-repeat: none; +background-position: center center; +} + +QToolButton#qt_toolbar_ext_button:hover { +/*background-image: url(qss:images_dark-light/more_light.svg);*/ +background-color: #b28416; +} + +QToolButton#qt_toolbar_ext_button:on { +/*background-image: url(qss:images_dark-light/more_light.svg);*/ +border-color: #696968; +background-color: #b28416; } -/*================================================================================================== -Text/Python editor (macros, etc...) -==================================================================================================*/ -QPlainTextEdit, -QPlainTextEdit:focus { - background-color: #787878; - selection-color: #e3d8b9; - selection-background-color: #b28416; - border: 1px solid #333333; - border-radius: 3px; - margin: 4px; +/* QAbstractSpinBox ------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractSpinBox, +QSpinBox { + background-color: #1c1b22; + border: 1px solid transparent; + color: White; + /* This fixes 103, 111 */ + /* padding-top: 0px; + /* This fixes 103, 111 */ + /*padding-bottom: 0px; + /*padding-left: 4px; + /*padding-right: 4px; + border-radius: 1.9px;*/ + min-height: 1.7em; + /* min-width: 5px; removed to fix 109 */ +} + +QAbstractSpinBox:up-button { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); + subcontrol-origin: border; + subcontrol-position: top right; + border: 1px solid transparent; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-bottom: -1px;*/ +} + +QAbstractSpinBox::up-arrow, QAbstractSpinBox::up-arrow:disabled, QAbstractSpinBox::up-arrow:off { + image: url(qss:images_dark-light/up_arrow_disabled_light.svg); + /* height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::up-arrow:hover { + image: url(qss:images_dark-light/up_arrow_lighter.svg); +} + +QAbstractSpinBox:down-button { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); + subcontrol-origin: border; + subcontrol-position: bottom right; + border: 1px solid transparent; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-top: -1px;*/ +} + +QAbstractSpinBox::down-arrow, QAbstractSpinBox::down-arrow:disabled, QAbstractSpinBox::down-arrow:off { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + /*height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::down-arrow:hover { + image: url(qss:images_dark-light/down_arrow_lighter.svg); +} + +QAbstractSpinBox:hover { + /*border: 1px solid #b28416; + color: White;*/ +} + +QAbstractSpinBox:focus { + border: 1px solid #996b00; +} + +QAbstractSpinBox:selected { + background: #996b00; + /*color: White;*/ +} + +/* ------------------------------------------------------------------------ */ +/* DISPLAYS --------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QLabel ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe + +--------------------------------------------------------------------------- */ +QLabel { + background-color: transparent; + border: 0px solid #696968; + padding: 2px; + margin: 0px; + color: White; +} + +QLabel:disabled { + background-color: transparent; + border: 0px solid #696968; + color: #c2c7cb; +} + +QLabel[haslink="true"] { + color: orange; +} + + +/* QTextBrowser ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QTextBrowser { + background-color: #1c1b22; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; +} + +QTextBrowser:disabled { + background-color: #444444; + border: 1px solid #696968; + color: #c2c7cb; + border-radius: 1.9px; +} + +QTextBrowser:hover, QTextBrowser:!hover, QTextBrowser:selected, QTextBrowser:pressed { + border: 1px solid #b28416; +} + +/* QGraphicsView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QGraphicsView { + background-color: transparent; + border: 0px solid #b28416; + color: White; + border-radius: 0px; +} + +QGraphicsView:disabled { + background-color: #1c1b22; + border: 0px solid #696968; + color: #c2c7cb; + border-radius: 0px; +} + +QGraphicsView:hover, QGraphicsView:!hover, QGraphicsView:selected, QGraphicsView:pressed { + border: 0px solid #ff00f7; +} + +/* QCalendarWidget -------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCalendarWidget { + border: 1px solid #696968; + border-radius: 1.9px; +} + +QCalendarWidget:disabled { + background-color: #353535; + color: #c2c7cb; +} + +/* QLCDNumber ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QLCDNumber { + background-color: #1aff00; + color: White; +} + +QLCDNumber:disabled { + background-color: #444444; + color: #c2c7cb; +} + +/* QProgressBar ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qprogressbar + +--------------------------------------------------------------------------- */ +QProgressBar { + background-color: #c2c7cb; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar:disabled { + background-color: #161616; + border: 1px solid #696968; + color: #696969; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar::chunk { + background-color: #b28416; + color: #444444; + border-radius: 1.9px; +} + +QProgressBar::chunk:disabled { + background-color: #161616; + color: #696968; + border-radius: 1.9px; +} + +/* ------------------------------------------------------------------------ */ +/* BUTTONS ---------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QPushButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qpushbutton + +--------------------------------------------------------------------------- */ +QPushButton { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); + color: White; + border: 1px solid #2a2a2a; + border-bottom-color: #1e1e1e; /* simulates shadow under the button */ + border-radius: 4px; + padding: 2px; +} + +QPushButton:disabled { + background-color: #444444; + color: #c2c7cb; + +} + +QPushButton:checked { + background-color: #b28416; + outline: none; +} + +QPushButton:checked:disabled { + background-color: #b28416; + color: #3c3c3c; + outline: none; +} + +QPushButton:checked:selected { + background: #b28416; +} + +QPushButton:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #b28416, stop:1 #996b00); + color: White; +} + +QPushButton:pressed { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #996b00, stop:1 #b28416); +} + +QPushButton:selected { + background: #996b00; + color: White; +} + +QPushButton::menu-indicator { + subcontrol-origin: padding; + subcontrol-position: bottom right; + bottom: 4px; +} + +QDialogButtonBox QPushButton { + /* Issue # 194 # 248 - Special case of QPushButton inside dialogs, for better UI */ + min-width: 80px; +} + +/* QToolButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbutton + +--------------------------------------------------------------------------- */ +QToolButton { + background-color: transparent; + color: White; + border-radius: 1px; + padding: 0px; + outline: none; + border: none; + /* The subcontrols below are used only in the DelayedPopup mode */ + /* The subcontrols below are used only in the MenuButtonPopup mode */ + /* The subcontrol below is used only in the InstantPopup or DelayedPopup mode */ +} + +QToolButton:disabled { + background-color: rgba(0, 0, 0, 0.065); + color: #c2c7cb; + border-radius: 1px; + padding: 0px; +} + +QToolButton:checked { + background-color: #b28416; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:disabled { + background-color: #b65555; + color: #c2c7cb; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:hover { + background-color: #b28416; + color: White; +} + +QToolButton:checked:pressed { + background-color: #b28416; +} + +QToolButton:checked:selected { + background: #996b00; + color: White; +} + +QToolButton:hover { + background-color: #b28416; + color: White; +} + +QToolButton:pressed { + background-color: #996b00; +} + +QToolButton:selected { + background: #b28416; + color: White; +} + +QToolButton[popupMode="0"] { + /* Only for DelayedPopup */ + padding-right: 20px; +} + +QToolButton[popupMode="1"] { + /* Only for MenuButtonPopup */ + padding-right: 20px; +} +QToolButton[popupMode="0"]::menu-button { + border: none; +} + +QToolButton[popupMode="0"]::menu-button:hover { + border: none; + border-left: 2px solid #fe0000; + border-radius: 0px; +} +QToolButton[popupMode="1"]::menu-button { + border: none; +} + +QToolButton[popupMode="1"]::menu-button:hover { + border: none; + border-left: 2px solid #e5ff00; + border-radius: 0px; +} + +QToolButton[popupMode="2"] { + /* Only for InstantPopup */ + padding-right: 20px; +} + +QToolButton::menu-button { + border-bottom: 0px solid #ffffff; + border-radius: 2px; + /* 16px width + 4px for border = 20px allocated above */ + width: 1.6ex; + padding: 2px; + border-radius: 2px; + border: 0px #000000; +} + +QToolButton::menu-button:hover { + /* background: rgba(0, 0, 0, 0.5);*/ + +} + +QToolButton::menu-button:checked:hover { + /* background: rgba(0, 0, 0, 0.5);*/ +} + +QToolButton::menu-indicator { + /* Exclude a shift for better image */ + subcontrol-position: right bottom; + /* Shift it a bit */ +} + +QToolButton::menu-arrow { + image: url(qss:images_dark-light/more_arrow_light.svg); + width: 1.5ex; + height: 1.5ex; + subcontrol-position: right bottom; + background: transparent; +} +QToolButton::menu-arrow:open { + subcontrol-position: right bottom; + image: url(qss:images_dark-light/more_arrow_light.svg); +} +QToolButton::menu-arrow:hover { + image: url(qss:images_dark-light/more_arrow_light.svg); + background-color: rgba(0, 0, 0, 0.498); + border: 1px solid rgba(0, 0, 0, 0.498); +} + +/* QCommandLinkButton ----------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCommandLinkButton { + background-color: transparent; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; + padding: 0px; + margin: 0px; +} + +QCommandLinkButton:disabled { + background-color: transparent; + color: #c2c7cb; +} + +/* ------------------------------------------------------------------------ */ +/* INPUTS - NO FIELDS ----------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QComboBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QComboBox { + border: 1px solid transparent; + background: #1c1b22; + border-radius: 2px; + selection-background-color: #b28416; + padding-left: 2px; + padding-right: 2px; + /* padding-right = 36; 4 + 16*2 See scrollbar size */ + /* changed to 4px to fix #239 */ + /* Fixes #103, #111 */ + min-height: 1.5em; + /* padding-top: 2px; removed to fix #132 */ + /* padding-bottom: 2px; removed to fix #132 */ + /* min-width: 75px; removed to fix #109 */ + /* Needed to remove indicator - fix #132 */ +} +QComboBox:editable { + background: #1c1b22; +} +QComboBox QAbstractItemView { + border: 0px solid #696968; + border-radius: 0px; + background-color: #1c1b22; + selection-background-color: #b28416; +} + +QComboBox QAbstractItemView:hover { + background-color:#1c1b22; + color: White; +} + +QComboBox QAbstractItemView:selected { + background: #b28416; + color: White; +} + +QComboBox QAbstractItemView:alternate { + background: #3c3c3c; +} + +QComboBox:disabled { + background-color: #444444; + color: #353535; +} + +QComboBox:hover { + /*background-color: #b28416;*/ + border: 1px solid #b28416; +} + +QComboBox:focus { + border: 1px solid #996b00; +} + +QComboBox:on { + selection-background-color: #996b00; +} + +QComboBox::indicator { + border: none; + border-radius: 0px; + background-color: transparent; + selection-background-color: transparent; + color: transparent; + selection-color: #b28416; + /* Needed to remove indicator - fix #132 */ +} + +QComboBox::indicator:alternate { + background: #696968; +} + +QComboBox::item { + /* Remove to fix #282, #285 and MR #288*/ + /*&:checked { + font-weight: bold; + } + + &:selected { + border: 0px solid transparent; + } + */ +} + +QComboBox::item:alternate { + background: #3c3c3c; +} + +QComboBox::drop-down { + subcontrol-origin: padding; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); + subcontrol-position: top right; + width: 14px; + border-left: 1px solid transparent; +} +QComboBox::drop-down:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #b28416, stop:1 #996b00); +} + +QComboBox::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + height: 10px; + width: 10px; +} + +QComboBox::down-arrow:on, QComboBox::down-arrow:hover, QComboBox::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_lighter.svg); } /*================================================================================================== Tasks panel (custom FreeCAD class) ==================================================================================================*/ +Gui--PropertyEditor--PropertyEditor { + qproperty-groupTextColor: white; + qproperty-groupBackground: #3c3c3c; + border: 0px solid #696968; + +} + /* Action group */ QFrame[class="panel"] { - background-color: transparent; /* temporal (transparent background) */ +background-color: transparent; /* temporal (transparent background) */ + } QSint--ActionGroup { - padding: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ - margin: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +padding: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +margin: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ } /* Separator line */ @@ -1067,1273 +1497,1038 @@ QSint--ActionGroup QFrame[height="3"], QSint--ActionGroup QFrame[width="1"], QSint--ActionGroup QFrame[width="2"], QSint--ActionGroup QFrame[width="3"] { - border-color: rgba(0,0,0,60); +border-color: rgba(0,0,0,60); } /* Panel header */ QSint--ActionGroup QFrame[class="header"] { - border: none; - background-color: #2a2a2a; /* Task Panel Header background color */ - border-top-left-radius: 3px; - border-top-right-radius: 3px; - border-bottom-left-radius: 0px; - border-bottom-right-radius: 0px; - margin: 0px; - padding: 0px; +border-top: 1px solid #696968; +border-left: 1px solid #696968; +border-right: 1px solid #696968; +background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); +border-top-left-radius: 3px; +border-top-right-radius: 3px; +border-bottom-left-radius: 0px; +border-bottom-right-radius: 0px; +margin: 0px; +padding: 0px; } QSint--ActionGroup QFrame[class="header"]:hover { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #624b14, stop:1 #624b14); +background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #b28416, stop:1 #996b00); } QSint--ActionGroup QToolButton[class="header"] { - color: #f5f5f5; /* Task Panel Header text color */ - text-align: left; - font-weight: bold; - border: none; - margin: 0px; - padding: 0px; +color: white; /* Task Panel Header text color */ +text-align: left; +font-weight: bold; +border: none; +margin: 0px; +padding: 0px; } QSint--ActionGroup QFrame[class="header"] QLabel { - background-color: transparent; - background-image: url(qss:images_dark-light/down_arrow_light.svg); - background-repeat: none; - background-position: center center; - padding: 0px; - margin: 0px; +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_light.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; } QSint--ActionGroup QFrame[class="header"] QLabel:hover { - background-color: transparent; - background-image: url(qss:images_dark-light/down_arrow_lighter.svg); +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_lighter.svg); } QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"] { - background-color: transparent; - background-image: url(qss:images_dark-light/up_arrow_light.svg); - background-repeat: none; - background-position: center center; - padding: 0px; - margin: 0px; +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_light.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; } QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"]:hover { - background-color: transparent; - background-image: url(qss:images_dark-light/up_arrow_lighter.svg); +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_lighter.svg); } QSint--ActionGroup QFrame[class="content"] { - background-color: #545454; /* Task Panel background color */ - margin: 0px; - padding: 0px; - border: none; - border-top-left-radius: 0px; - border-top-right-radius: 0px; - border-bottom-left-radius: 3px; - border-bottom-right-radius: 3px; +background-color: transparent; /* Task Panel background color */ +margin: 0px; +padding: 0px; +border-bottom: 1px solid #696968; +border-left: 1px solid #696968; +border-right: 1px solid #696968; +border-top-left-radius: 0px; +border-top-right-radius: 0px; +border-bottom-left-radius: 3px; +border-bottom-right-radius: 3px; } QSint--ActionGroup QFrame[class="content"] > QWidget { - background-color: #545454; /* Task Panel background color */ +background-color: #444444; /* Task Panel background color */ } /* Fixs for tabs inside Task Panel */ QSint--ActionGroup QFrame[class="content"] QTabBar::tab:top:selected { - border-bottom-color: #545454; /* same as Task Panel background color */ +border-bottom-color: #b28416; /* same as Task Panel background color */ } QSint--ActionGroup QFrame[class="content"] QTabBar::tab:bottom:selected { - border-top-color: #545454; /* same as Task Panel background color */ +border-top-color: #b28416; /* same as Task Panel background color */ } QSint--ActionGroup QFrame[class="content"] QTabBar::tab:right:selected { - border-right-color: #545454; /* same as Task Panel background color */ +border-right-color: #b28416; /* same as Task Panel background color */ } QSint--ActionGroup QFrame[class="content"] QTabBar::tab:left:selected { - border-left-color: #545454; /* same as Task Panel background color */ +border-left-color: #b28416; /* same as Task Panel background color */ } /* Fix for buttons with icons that showed cropped (still not happy with result) */ QSint--ActionGroup QFrame[class="content"] > QWidget > QPushButton { - padding: 2px; /* bigger padding crops text and icons... */ - margin: 0px; +padding: 2px; /* bigger padding crops text and icons... */ +margin: 0px; } -/* Fix for lists inside task panels */ +/* Fix for lists inside task panels */ /* sketcher constraints list */ QSint--ActionGroup QFrame[class="content"] QTreeView, QSint--ActionGroup QFrame[class="content"] QListView, QSint--ActionGroup QFrame[class="content"] QTableView { - color: #f5f5f5; - background-color: #787878; +color: white; +background-color: #1c1b22; } -/*================================================================================================== -Buttons -==================================================================================================*/ -/* Common */ -QComboBox, -QAbstractSpinBox, -QSpinBox, -QDoubleSpinBox, -QLineEdit, -QTextEdit, -QTimeEdit, -QDateEdit, -QDateTimeEdit { - color: #bebebe; - background-color: #2a2a2a; - selection-color: white; - selection-background-color: #624b14 ; - border: 1px solid #2a2a2a; - border-radius: 3px; - min-width: 50px; /* it ensures the default value is correctly displayed */ - min-height: 20px; /* important to be a pair number in order to up/down buttons to be divisible by two (if not set could create a blank line in Ubuntu. Its downside is that it's needed to reset it (min-width: 0px) on following elements that can't have it such as fields inside QToolBar and inside QTreeView (Property editor) */ - padding: 1px 2px; /* temporal: could don't be compatible with elements inside Tree/List view */ -} - -/* more contrast for QTextEdits */ -QTextEdit { - color: black; -} - -/* shifts text/number editable field to the left to make space for the up/down or drop-down buttons */ -QComboBox, -QAbstractSpinBox, -QSpinBox, -QDoubleSpinBox, -QTimeEdit, -QDateEdit, -QDateTimeEdit { - padding-right: 20px; -} - -/* when QTextEdit are no editable (like Report view)*/ -QTextEdit:!editable, -QTextEdit:!editable:focus { - background-color: #787878; - border: 1px solid #424242; -} - -QComboBox:focus, -QAbstractSpinBox:focus, -QSpinBox:focus, -QDoubleSpinBox:focus, -QLineEdit:focus, -QTextEdit:focus, -QTimeEdit:focus, -QDateEdit:focus, -QDateTimeEdit:focus { - color: #f5f5f5; - border-color: #624b14; - border-right-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #624b14, stop:1 #624b14); /* same as up/down or drop-down button color */ - background-color: #b28416; -} - -QComboBox:disabled, -QAbstractSpinBox:disabled, -QSpinBox:disabled, -QDoubleSpinBox:disabled, -QLineEdit:disabled, -QTextEdit:disabled, -QTimeEdit:disabled, -QDateEdit:disabled, -QDateTimeEdit:disabled { - color: #545454; - background-color: #2a2a2a; /* same as enabled color */ - border-color: #2a2a2a; /* same as enabled color */ -} - -QAbstractSpinBox:up-button, -QSpinBox:up-button, -QDoubleSpinBox:up-button, -QTimeEdit:up-button, -QDateEdit:up-button, -QDateTimeEdit:up-button, -QAbstractSpinBox:down-button, -QSpinBox:down-button, -QDoubleSpinBox:down-button, -QTimeEdit:down-button, -QDateEdit:down-button, -QDateTimeEdit:down-button { - background-color: #2a2a2a; /* same color for QComboBox background-color */ - subcontrol-origin: border; /* important */ - width: 20px; /* same as QComboBox ... QDateTimeEdit padding-right */ -} - -QAbstractSpinBox:up-button, -QSpinBox:up-button, -QDoubleSpinBox:up-button, -QTimeEdit:up-button, -QDateEdit:up-button, -QDateTimeEdit:up-button { - subcontrol-position: top right; - border-top-right-radius: 3px; -} - -QAbstractSpinBox:down-button, -QSpinBox:down-button, -QDoubleSpinBox:down-button, -QTimeEdit:down-button, -QDateEdit:down-button, -QDateTimeEdit:down-button { - subcontrol-position: bottom right; - border-bottom-right-radius: 3px; -} - -QAbstractSpinBox:up-button:focus, -QSpinBox:up-button:focus, -QDoubleSpinBox:up-button:focus, -QTimeEdit:up-button:focus, -QDateEdit:up-button:focus, -QDateTimeEdit:up-button:focus { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #624b14, stop:1 #624b14); -} - -QAbstractSpinBox:down-button:focus, -QSpinBox:down-button:focus, -QDoubleSpinBox:down-button:focus, -QTimeEdit:down-button:focus, -QDateEdit:down-button:focus, -QDateTimeEdit:down-button:focus { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #624b14, stop:1 #624b14); -} - -QAbstractSpinBox:up-button:disabled, -QSpinBox:up-button:disabled, -QDoubleSpinBox:up-button:disabled, -QTimeEdit:up-button:disabled, -QDateEdit:up-button:disabled, -QDateTimeEdit:up-button:disabled, -QAbstractSpinBox:down-button:disabled, -QSpinBox:down-button:disabled, -QDoubleSpinBox:down-button:disabled, -QTimeEdit:down-button:disabled, -QDateEdit:down-button:disabled, -QDateTimeEdit:down-button:disabled { - background-color: transparent; -} - -QAbstractSpinBox::up-arrow, -QSpinBox::up-arrow, -QDoubleSpinBox::up-arrow, -QTimeEdit::up-arrow, -QDateEdit::up-arrow, -QDateTimeEdit::up-arrow { - image: url(qss:images_dark-light/up_arrow_light.svg); - top: 2px; /* fix symmetry between up and down images */ -} - -QAbstractSpinBox::up-arrow:focus, -QSpinBox::up-arrow:focus, -QDoubleSpinBox::up-arrow:focus, -QTimeEdit::up-arrow:focus, -QDateEdit::up-arrow:focus, -QDateTimeEdit::up-arrow:focus { - image: url(qss:images_dark-light/up_arrow_lighter.svg); -} - -QAbstractSpinBox::up-arrow:off, -QSpinBox::up-arrow:off, -QDoubleSpinBox::up-arrow:off, -QTimeEdit::up-arrow:off, -QDateEdit::up-arrow:off, -QDateTimeEdit::up-arrow:off { - image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); -} - -QAbstractSpinBox::up-arrow:disabled, -QSpinBox::up-arrow:disabled, -QDoubleSpinBox::up-arrow:disabled, -QTimeEdit::up-arrow:disabled, -QDateEdit::up-arrow:disabled, -QDateTimeEdit::up-arrow:disabled { - image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); -} - -QAbstractSpinBox::down-arrow, -QSpinBox::down-arrow, -QDoubleSpinBox::down-arrow, -QTimeEdit::down-arrow, -QDateEdit::down-arrow, -QDateTimeEdit::down-arrow { - image: url(qss:images_dark-light/down_arrow_light.svg); - bottom: 0px; /* fix simetry between up and down images */ -} - -QAbstractSpinBox::down-arrow:focus, -QSpinBox::down-arrow:focus, -QDoubleSpinBox::down-arrow:focus, -QTimeEdit::down-arrow:focus, -QDateEdit::down-arrow:focus, -QDateTimeEdit::down-arrow:focus { - image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -QAbstractSpinBox::down-arrow:off, -QSpinBox::down-arrow:off, -QDoubleSpinBox::down-arrow:off, -QTimeEdit::down-arrow:off, -QDateEdit::down-arrow:off, -QDateTimeEdit::down-arrow:off { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - -QAbstractSpinBox::down-arrow:disabled, -QSpinBox::down-arrow:disabled, -QDoubleSpinBox::down-arrow:disabled, -QTimeEdit::down-arrow:disabled, -QDateEdit::down-arrow:disabled, -QDateTimeEdit::down-arrow:disabled { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - -/* ComboBox */ - -QComboBox::drop-down { - background-color: #333333; /* same color as up/down QSpinBox ... QDateTimeView background-color */ - subcontrol-origin: border; /* important */ - subcontrol-position: top right; - width: 20px; - border-top-right-radius: 3px; - border-bottom-right-radius: 3px; -} - -QComboBox::drop-down:on, -QComboBox::drop-down:focus { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #624b14, stop:1 #624b14); -} - -QComboBox::down-arrow { - image: url(qss:images_dark-light/down_arrow_light.svg); -} - -QComboBox::down-arrow:on, -QComboBox::down-arrow:focus { - image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -QComboBox::down-arrow:off, -QComboBox::down-arrow:disabled { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - -/* ComboBox menu */ -QComboBox { - selection-color: #f5f5f5; - selection-background-color: #b28416; -} - -QComboBox QAbstractItemView { - color: #bebebe; /* same as regular QComboBox color */ - background-color: transparent; - selection-color: #f5f5f5; - selection-background-color: #b28416; - border-width: 5px 0px 5px 0px; - border-style: solid; - border-color: transparent; - margin: 0px -1px 0px 0px; /* hack for Mac... try it on Windows and Linux */ -} - - -/*================================================================================================== -Push button -==================================================================================================*/ -QPushButton { - color: #e0e0e0; - text-align: center; - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); - border: 1px solid #2a2a2a; - border-bottom-color: #1e1e1e; /* simulates shadow under the button */ - padding: 4px 22px; - margin: 4px 4px; - min-height: 16px; /* same as QTabBar QPushButton min-width */ - border-radius: 4px; -} - -QPushButton:hover, -QPushButton:focus { - color: #e3d8b9; - border-color: #624b14; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #b28416, stop:1 #624b14); -} - -QPushButton:disabled, -QPushButton:disabled:checked { - color: #2a2a2a; - background-color: #3c3c3c; /* same as enabled color */ - border-color: #3c3c3c; /* same as enabled color */ -} - -QPushButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #624b14, stop:1 #b28416); -} - -QPushButton:checked { - background-color: #b28416; - border-color: #624b14; -} - -/* Color Buttons */ -Gui--ColorButton, -Gui--ColorButton:disabled { - padding: 0px; /* reset */ - margin: 0px; /* reset */ -} - -Gui--ColorButton { - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #2a2a2a, stop:1 #1e1e1e); - border: 1px solid #1e1e1e; - border-bottom-color: black; /* simulates shadow under the button */ -} - -Gui--ColorButton:disabled { - border-color: transparent; - background-color: rgba(0,0,0,10); -} - -Gui--ColorButton:hover, -Gui--ColorButton:focus { - border-color: #624b14; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #b28416, stop:1 #624b14); -} - -Gui--ColorButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #624b14, stop:1 #b28416); -} - -/* Pushbutton style for "..." inside Placement cell which launches Placement tool */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QPushButton { - background-color: #2a2a2a; - border: 1px solid #1e1e1e; - min-width: 16px; /* reset it due to larger value on regular QPushButton, same or bigger value as regular QPushButton min-height */ - border-radius: 0px; - margin: 0px; /* reset */ - padding: 0px; /* reset */ -} - -/* Fix for Expressions description QFrame that is "broken" with initial reset */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QWidget > QWidget > QFrame { - background-color: #444444; /* main background color */ - border: 1px solid #444444; - border-radius: 2px; - padding: 2px 6px; -} - -QPushButton:checked { - background-color: #b28416; - border-color: #b28416; -} - -/*================================================================================================== -Tool button Icon fix in save dialogs -==================================================================================================*/ -/* found under Tools -> Save Picture */ /* Draft -> ShapeString -> Font file */ - -QFileDialog#QFileDialog QToolButton { - background-color: transparent; - padding: 1px; - border: 1px; - margin: 0px; -} - - -/*================================================================================================== -Tool button inside QDialogs that works as QPushButtons -==================================================================================================*/ -/* found under Tools -> Customize -> Macros -> Pixmap "..." button */ -QDialog QToolButton { - color: #e0e0e0; - text-align: center; - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #2a2a2a, stop:1 #1e1e1e); - border: 1px solid #1e1e1e; - border-bottom-color: black; /* simulates shadow under the button */ - padding: 0px; /* different than regular QPushButton */ - margin: 2px; /* different than regular QPushButton */ - min-height: 16px; /* same as QTabBar QPushButton min-width */ - border-radius: 4px; -} - -QDialog QToolButton:hover, -QDialog QToolButton:focus { - color: #e3d8b9; - border-color: #624b14; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #b28416, stop:1 #624b14); -} - -QDialog QToolButton:disabled, -QDialog QToolButton:disabled:checked { - color: #444444; - border-color: #424242; - background-color: #424242; -} - -QDialog QToolButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #624b14, stop:1 #b28416); -} - - -/*================================================================================================== -Tool button inside Task Panel content that works as QPushButtons -==================================================================================================*/ /* found inside Part Design Workbench and "make a draft on a face" Task panel options */ QSint--ActionGroup QFrame[class="content"] QToolButton { - color: #e0e0e0; - text-align: center; - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #2a2a2a, stop:1 #1e1e1e); - border: 1px solid #1e1e1e; - border-bottom-color: black; /* simulates shadow under the button */ - padding: 2px 6px; /* different than regular QPushButton */ - margin: 2px; /* different than regular QPushButton */ - min-height: 16px; /* same as QTabBar QPushButton min-width */ - border-radius: 4px; + color: white; + text-align: center; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); + border: 0px solid #adadad; + padding: 1px 1px; /* different than regular QPushButton */ + margin: 0px; /* different than regular QPushButton */ + min-height: 16px; /* same as QTabBar QPushButton min-width */ + border-radius: 1px; } -QSint--ActionGroup QFrame[class="content"] QToolButton:hover, +QSint--ActionGroup QFrame[class="content"] QToolButton:hover{ + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #b28416, stop:1 #996b00); + +} QSint--ActionGroup QFrame[class="content"] QToolButton:focus { - color: white; - border-color: #624b14; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #b28416, stop:1 #624b14); + border: 1px solid #996b00; } QSint--ActionGroup QFrame[class="content"] QToolButton:disabled, QSint--ActionGroup QFrame[class="content"] QToolButton:disabled:checked { - color: #444444; - border-color: #424242; - background-color: #424242; + color: #696969; + background-color: #1c1b22; } QSint--ActionGroup QFrame[class="content"] QToolButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #624b14, stop:1 #b28416); + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #b28416, stop:1 #996b00); + } -/* QToolButtons with a menu found in Sketcher task panel*/ -QSint--ActionGroup QToolButton::menu-button { - border: none; - border-top-right-radius: 4px; - border-bottom-right-radius: 4px; - padding: 2px; - width: 16px; /* 16px width + 4px for border = 20px allocated above */ - outline: none; - background-color: transparent; +/* QSlider ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qslider + +--------------------------------------------------------------------------- */ +QSlider:disabled { + background: #444444; } -QSint--ActionGroup QToolButton#settingsButton, -QSint--ActionGroup QToolButton#filterButton, -QSint--ActionGroup QToolButton#manualUpdate { - padding-right: 20px; /* make way for the popup button */ -} - -/* to give widget inside the menu same look as regular menu */ -QSint--ActionGroup QToolButton#filterButton QListWidget { - color: #f5f5f5; - background-color: #2a2a2a; - padding: 0px; - margin: 0px; -} - - -/*================================================================================================== -QComboBox inside Task Panel content -==================================================================================================*/ -/* Fix for QComboBox inside Task Panel due to not correctly styling it with regular */ -/* found inside TechDraw Workbench and "insert multiple views" from toolbar */ -/* TODO: external border not working, in the rest of GUI works setting up Qmenu background color but inside Task Panel it doesn't... */ -QSint--ActionGroup QFrame[class="content"] QMenu, -QSint--ActionGroup QFrame[class="content"] QMenu::item { - background-color: #2a2a2a; -} - -QSint--ActionGroup QFrame[class="content"] QComboBox QAbstractItemView { - background-color: #2a2a2a; -} - - -/*================================================================================================== -Radio button -==================================================================================================*/ -QRadioButton::indicator:unchecked{ - color: black; - background-color: rgba(0,0,0,40); - border: 1px solid #787878; -} - -QRadioButton::indicator:checked { - background-color: #b28416; /* QCheckBox has the same color */ - border: 1px solid #b28416; /* QCheckBox has the same color */ - image:url(qss:images_dark-light/radiobutton_light.svg); -} - -QRadioButton, -QRadioButton:disabled { - color: #f5f5f5; - padding: 3px; - outline: none; - background-color: transparent; -} - -QRadioButton:disabled { - color: rgba(255,255,255,40); -} - -QRadioButton::indicator { - width: 11px; - height: 11px; - border-radius: 6px; -} - -QRadioButton::indicator:pressed { - border-color: #e3d8b9; -} - -QRadioButton::indicator:disabled { - color: #424242; - background-color: transparent; - border: 1px solid #424242; - image:url(qss:images_dark-light/radiobutton_dark.svg); -} - -QRadioButton:focus { - border: none; -} - - -/*================================================================================================== -Checkbox -==================================================================================================*/ -QCheckBox, -QCheckBox:disabled { - color: #f5f5f5; - padding: 3px; - outline: none; - background-color: transparent; -} - -QCheckBox::indicator, -QGroupBox::indicator { - color: black; - background-color: rgba(0,0,0,40); - border: 1px solid #787878; - width: 11px; - height: 11px; - border-radius:2px; -} - -QCheckBox::indicator:pressed, -QCheckBox::indicator:non-exclusive:checked:pressed, -QCheckBox::indicator:indeterminate:pressed, -QCheckBox::indicator:checked:pressed, -QGroupBox::indicator:pressed, -QGroupBox::indicator:non-exclusive:checked:pressed, -QGroupBox::indicator:indeterminate:pressed, -QGroupBox::indicator:checked:pressed { - border-color: #e3d8b9; -} - -QCheckBox::indicator:checked, -QGroupBox::indicator:checked { - background-color: #b28416; /* QRadioButton has the same color */ - border: 1px solid #b28416; /* QRadioButton has the same color */ - image:url(qss:images_dark-light/checkbox_light.svg); -} - -QCheckBox:disabled { - color: rgba(255,255,255,40); - background-color: transparent; -} - -QCheckBox::indicator:disabled, -QGroupBox::indicator:disabled { - background-color: rgba(0,0,0,0); - border: 1px solid rgba(0,0,0,20); -} - -QCheckBox::indicator:indeterminate, -QGroupBox::indicator:indeterminate { - background-color: #b28416; - border: 1px solid #b28416; - image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); -} - -QCheckBox:focus { - border: none; -} - - -/*================================================================================================== -Checkboxes inside QListWidget and QTreeView -==================================================================================================*/ -QListWidget::indicator, -QTreeView::indicator { - color: #c8c8c8; - background-color: rgba(255,255,255,20); - border: 1px solid #424242; - width: 11px; - height: 11px; - border-radius:2px; -} - -/* fix for QTreeView::indicator losing its margin */ -QTreeView::indicator { - margin: 3px; -} - -QListWidget::indicator:selected, -QTreeView::indicator:selected { - background-color: #e6e6e6; -} - -QListWidget::indicator:checked:selected, -QListWidget::indicator:indeterminate:selected, -QTreeView::indicator:checked:selected, -QTreeView::indicator:indeterminate:selected { - background-color: #b28416; /* slightly lighter than default */ - border-color: #b28416; /* slightly darker than default */ -} - -QListWidget::indicator:pressed, -QListWidget::indicator:non-exclusive:checked:pressed, -QListWidget::indicator:indeterminate:pressed, -QListWidget::indicator:checked:pressed, -QTreeView::indicator:pressed, -QTreeView::indicator:non-exclusive:checked:pressed, -QTreeView::indicator:indeterminate:pressed, -QTreeView::indicator:checked:pressed { - border-color: #e3d8b9; -} - -QListWidget::indicator:checked, -QTreeView::indicator:checked { - background-color: #b28416; /* QRadioButton has the same color */ - border: 1px solid #b28416; /* QRadioButton has the same color */ - image:url(qss:images_dark-light/checkbox_light.svg); -} - -QListWidget::indicator:disabled, -QTreeView::indicator:disabled { - background-color: rgba(255,255,255,20); - border: 1px solid rgba(255,255,255,20); -} - -QListWidget::indicator:indeterminate, -QTreeView::indicator:indeterminate { - background-color: #b28416; - border: 1px solid #b28416; - image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); -} - - -/*================================================================================================== -Slider -==================================================================================================*/ -QSlider, -QSlider:active, -QSlider:!active { - border: none; - background-color: transparent; -} - -QSlider:horizontal { - padding: 0px 10px; -} - -QSlider:vertical { - padding: 10px 0px; -} - -QSlider::groove { - background-color: rgba(255,255,255,30); - border: 1px solid rgba(255,255,255,40); - border-radius: 5px; - margin: 4px 0px; +QSlider:focus { + border: 1px solid #996b00; } QSlider::groove:horizontal { - height: 8px; + background: #444444; + border: 1px solid #696968; + height: 4px; + margin: 0px; + border-radius: 1.9px; } QSlider::groove:vertical { - width: 8px; + background: #b28416; + border: 1px solid #696968; + width: 4px; + margin: 0px; + border-radius: 1.9px; } -QSlider::groove:horizontal:disabled, -QSlider::groove:vertical:disabled { - border-color: #424242; - background-color: #424242; +QSlider::add-page:vertical { + background: #b28416; + border: 1px solid #696968; + width: 4px; + margin: 0px; + border-radius: 1.9px; } -QSlider::handle:horizontal, -QSlider::handle:vertical { - background-color: #2a2a2a; - border: 1px solid #2a2a2a; - width: 14px; - height: 14px; - border-radius: 8px; +QSlider::add-page:vertical :disabled { + background: #696968; +} + +QSlider::sub-page:horizontal { + background: #b28416; + border: 1px solid #0073ff; + height: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::sub-page:horizontal:disabled { + background: #b28416; } QSlider::handle:horizontal { - margin: -4px 0; + background: #353535; + border: 1px solid #444444; + width: 8px; + height: 8px; + margin: -8px 0px; + border-radius: 1.9px; +} + +QSlider::handle:horizontal:hover { + background: #b28416; + border: 1px solid #b28416; +} + +QSlider::handle:horizontal:focus { + border: 1px solid #996b00; } QSlider::handle:vertical { - margin: 0 -4px; + background: #c2c7cb; + border: 1px solid #696968; + width: 8px; + height: 8px; + margin: 0 -8px; + border-radius: 1.9px; } -QSlider::handle:horizontal:hover, -QSlider::handle:vertical:hover, -QSlider::handle:horizontal:pressed, -QSlider::handle:vertical:pressed { - border-color: #e0c992; - background-color: #b28416; +QSlider::handle:vertical:hover { + background: #b28416; + border: 2px solid #b28416; } -QSlider::handle:horizontal:disabled, -QSlider::handle:vertical:disabled { - border-color: #424242; - background-color: #424242; +QSlider::handle:vertical:focus { + border: 1px solid #996b00; +} + +/* QLineEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlineedit + +--------------------------------------------------------------------------- */ +QLineEdit { + background-color: #1c1b22; + padding-top: 2px; + /* This QLineEdit fix 103, 111 */ + padding-bottom: 2px; + /* This QLineEdit fix 103, 111 */ + padding-left: 4px; + padding-right: 4px; + border-style: solid; + border: 1px solid #696968; + border-radius: 2px; + color: White; +} + +QLineEdit:disabled { + background-color: #444444; + color: #c2c7cb; +} + +QLineEdit:hover { + border: 1px solid #b28416; + color: White; +} + +QLineEdit:focus { + border: 2px solid #996b00; +} + +QLineEdit:selected { + background-color: #b28416; + color: white; +} + +/* QTabWiget -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabWidget { + padding: 2px; + selection-background-color: #b28416; +} + +QTabWidget QWidget { + /* Fixes #189 */ + border-radius: 1.9px; +} + +QTabWidget::pane { + margin: 0px; + /* Fixes double border inside pane with pyqt5 */ + padding: 0px; +} + +QTabWidget::pane:selected { + background-color: #b28416; + border: 1px solid #346792; +} +/* QTabBar ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabBar, QDockWidget QTabBar { + qproperty-drawBase: 0; + /* left: 5px; move to the right by 5px - removed for fix */ +} + +QTabBar::close-button, QDockWidget QTabBar::close-button { + border: 0; + margin: 0; + padding: 1px; + image: url(qss:images_dark-light/close_light.svg); +} + +QTabBar::close-button:hover, QDockWidget QTabBar::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); + /*background-color: rgba(255, 0, 0, 0.3);*/ +} + +QTabBar::close-button:pressed, QDockWidget QTabBar::close-button:pressed { + image: url(qss:images_dark-light/close_.svg); +} + +QTabBar::tab, QDockWidget QTabBar::tab { + /* !selected and disabled ----------------------------------------- */ + /* selected ------------------------------------------------------- */ + padding: 4px; +} + +QTabBar::tab:top:selected:disabled, QDockWidget QTabBar::tab:top:selected:disabled { + color: #adadad; +} + +QTabBar::tab:bottom:selected:disabled, QDockWidget QTabBar::tab:bottom:selected:disabled { + color: #adadad; +} + +QTabBar::tab:left:selected:disabled, QDockWidget QTabBar::tab:left:selected:disabled { + color: #adadad; +} + +QTabBar::tab:right:selected:disabled, QDockWidget QTabBar::tab:right:selected:disabled { + color: #adadad; +} + +QTabBar::tab:top:!selected:disabled, QDockWidget QTabBar::tab:top:!selected:disabled { + color: #adadad; +} + +QTabBar::tab:bottom:!selected:disabled, QDockWidget QTabBar::tab:bottom:!selected:disabled { + color: #adadad; + +} + +QTabBar::tab:left:!selected:disabled, QDockWidget QTabBar::tab:left:!selected:disabled { + color: #adadad; + +} + +QTabBar::tab:right:!selected:disabled, QDockWidget QTabBar::tab:right:!selected:disabled { + color: #adadad; +} + +QTabBar::tab:top:!selected, QDockWidget QTabBar::tab:top:!selected { + color: #adadad; +} + +QTabBar::tab:bottom:!selected, QDockWidget QTabBar::tab:bottom:!selected { + color: #adadad; +} + +QTabBar::tab:left:!selected, QDockWidget QTabBar::tab:left:!selected { + color: #adadad; +} + +QTabBar::tab:right:!selected, QDockWidget QTabBar::tab:right:!selected { + color: #adadad; +} + +QTabBar::tab:top, QDockWidget QTabBar::tab:top { + color: #696969; + margin-left: 0px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + min-width: 5px; + border-bottom: 1px solid #696969; /* same as tab content background color */ + border-radius: 0px; +} + +QTabBar::tab:top:selected, QDockWidget QTabBar::tab:top:selected { + color: white; + border-top: 4px solid #b28416; /* selection color */ + border-bottom: 1px solid transparent; /* same as tab content background color */ + border-left: 1px solid #696969; + border-right: 1px solid #696969; + } + +QTabBar::tab:top:!selected:hover, QDockWidget QTabBar::tab:top:!selected:hover { + /*border: 1px solid #b28416;*/ + border: 0px solid #b28416; + background-color: #b28416; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; +} + +QTabBar::tab:bottom, QDockWidget QTabBar::tab:bottom { + color: #adadad; + margin-left: 0px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + min-width: 5px; + border-top: 1px solid #696969; /* same as tab content background color */ + border-radius: 0px; +} + +QTabBar::tab:bottom:selected, QDockWidget QTabBar::tab:bottom:selected { + color: white; + border-bottom: 4px solid #b28416; /* selection color */ + border-top: 1px solid transparent; /* same as tab content background color */ + border-left: 1px solid #696969; + border-right: 1px solid #696969; + +} + +QTabBar::tab:bottom:!selected:hover, QDockWidget QTabBar::tab:bottom:!selected:hover { +/*border: 1px solid #b28416;*/ + border: 0px solid #b28416; + background-color: #b28416; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; +} + +QTabBar::tab:left, QDockWidget QTabBar::tab:left { + background-color: #444444; + margin-top: 2px; + margin-left:10px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + border-radius: 4px; + min-height: 5px; +} + +QTabBar::tab:left:selected, QDockWidget QTabBar::tab:left:selected { + background-color: #444444; + border: 0px solid #996b00; +} + +QTabBar::tab:left:!selected:hover, QDockWidget QTabBar::tab:left:!selected:hover { + border: 0px solid #b28416; + background-color: #b28416; + /* Fixes different behavior #271 */ + margin-right: 0px; + padding-right: -1px; +} + +QTabBar::tab:right, QDockWidget QTabBar::tab:right { + background-color: #444444; + margin-top: 2px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + min-height: 5px; + border: 10px; +} + +QTabBar::tab:right:selected, QDockWidget QTabBar::tab:right:selected { + background-color: #444444; + border: 0px solid #996b00; +} + +QTabBar::tab:right:!selected:hover, QDockWidget QTabBar::tab:right:!selected:hover { + border: 0px solid #b28416; + background-color: #b28416; + /* Fixes different behavior #271 */ + margin-left: 0px; + padding-left: 0px; +} + +QTabBar QToolButton, QDockWidget QTabBar QToolButton { + /* Fixes #136 */ + background-color: #444444; + height: 12px; + width: 12px; +} + +QTabBar QToolButton:pressed, QDockWidget QTabBar QToolButton:pressed { + border: 0px solid #b28416; + background-color: #b28416; +} + +QTabBar QToolButton:pressed:hover, QDockWidget QTabBar QToolButton:pressed:hover { + border: 0px solid #b28416; + background-color: #b28416; +} + +QTabBar QToolButton::left-arrow:enabled, QDockWidget QTabBar QToolButton::left-arrow:enabled { + image: url(qss:images_dark-light/left_arrow_lighter.svg); +} + +QTabBar QToolButton::left-arrow:disabled, QDockWidget QTabBar QToolButton::left-arrow:disabled { + image: url(qss:images_dark-light/left_arrow_disabled_light.svg); +} + +QTabBar QToolButton::right-arrow:enabled, QDockWidget QTabBar QToolButton::right-arrow:enabled { + image: url(qss:images_dark-light/right_arrow_lighter.svg); +} + +QTabBar QToolButton::right-arrow:disabled, QDockWidget QTabBar QToolButton::right-arrow:disabled { + image: url(qss:images_dark-light/right_arrow_disabled_light.svg); +} + +/* QDockWiget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QDockWidget { + background-color: #444444; + border: 1px solid #2a2a2a; + border-radius: 1.9px; + titlebar-close-icon: url(qss:images_dark-light/transparent.svg); + titlebar-normal-icon: url(qss:images_dark-light/transparent.svg); +} + +QDockWidget::title { + /* Better size for title bar */ + padding: 3px; + spacing: 4px; + border: none; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); + text-align: center; + font-weight: bold; +} + +QDockWidget::close-button { + icon-size: 10px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/close_light.svg); +} + +QDockWidget::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); +} + +QDockWidget::close-button:pressed { + image: url(qss:images_dark-light/close_light.svg); +} + +QDockWidget::float-button { + icon-size: 12px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/undock_light.svg); +} + +QDockWidget::float-button:hover { + /*background-color: #b28416;*/ + image: url(qss:images_dark-light/undock_blue.svg); +} + +QDockWidget::float-button:pressed { + image: url(qss:images_dark-light/undock_light.svg); +} + +/* QTreeView QListView QTableView ----------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtreeview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlistview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtableview + +--------------------------------------------------------------------------- */ +QTreeView::branch { + background: transparent; +} + +QTreeView::branch:has-siblings:!adjoins-item { + border-image: url(qss:images_dark-light/branch_vline_light.svg) 0; +} + +QTreeView::branch:has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_more_light.svg) 0; +} + +QTreeView::branch:!has-children:!has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_end_light.svg) 0; +} + +QTreeView::branch:closed:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_closed_light.svg) 0; +} + +QTreeView::branch:has-children:!has-siblings:closed { + border-image: url(qss:images_dark-light/branch_end_closed_light.svg) 0; +} + +QTreeView::branch:open:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_open_light.svg) 0; +} + +QTreeView::branch:open:has-children:!has-siblings { + border-image: url(qss:images_dark-light/branch_end_open_light.svg) 0; +} + +QTreeView::indicator:checked, +QListView::indicator:checked, +QTableView::indicator:checked, +QColumnView::indicator:checked { + image: url(qss:images_dark-light/checkbox_light.svg); +} + +QTreeView::indicator:checked:hover, QTreeView::indicator:checked:focus, QTreeView::indicator:checked:pressed, +QListView::indicator:checked:hover, +QListView::indicator:checked:focus, +QListView::indicator:checked:pressed, +QTableView::indicator:checked:hover, +QTableView::indicator:checked:focus, +QTableView::indicator:checked:pressed, +QColumnView::indicator:checked:hover, +QColumnView::indicator:checked:focus, +QColumnView::indicator:checked:pressed { + image: url(qss:images_dark-light/checkbox_light_hover.svg); +} + +QTreeView::indicator:unchecked, +QListView::indicator:unchecked, +QTableView::indicator:unchecked, +QColumnView::indicator:unchecked { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QTreeView::indicator:unchecked:hover, QTreeView::indicator:unchecked:focus, QTreeView::indicator:unchecked:pressed, +QListView::indicator:unchecked:hover, +QListView::indicator:unchecked:focus, +QListView::indicator:unchecked:pressed, +QTableView::indicator:unchecked:hover, +QTableView::indicator:unchecked:focus, +QTableView::indicator:unchecked:pressed, +QColumnView::indicator:unchecked:hover, +QColumnView::indicator:unchecked:focus, +QColumnView::indicator:unchecked:pressed { + image: url(qss:images_dark-light/checkbox_unchecked_hover_light.svg); +} + +QTreeView::indicator:indeterminate, +QListView::indicator:indeterminate, +QTableView::indicator:indeterminate, +QColumnView::indicator:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QTreeView::indicator:indeterminate:hover, QTreeView::indicator:indeterminate:focus, QTreeView::indicator:indeterminate:pressed, +QListView::indicator:indeterminate:hover, +QListView::indicator:indeterminate:focus, +QListView::indicator:indeterminate:pressed, +QTableView::indicator:indeterminate:hover, +QTableView::indicator:indeterminate:focus, +QTableView::indicator:indeterminate:pressed, +QColumnView::indicator:indeterminate:hover, +QColumnView::indicator:indeterminate:focus, +QColumnView::indicator:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QTreeView, +QListView, +QTableView, +QColumnView { + background-color: #444444; /* background of a lot of stuff including spreadsheets.*/ + border: 0px solid #696968; + color: White; + gridline-color: #696968; + border-radius: 0px; +} + +QTableView, +QListView { + background-color: rgba(0, 0, 0, 0.232); /* background of a lot of stuff including spreadsheets.*/ } -/*================================================================================================== -Toolbar buttons -==================================================================================================*/ -/*QToolBar > QComboBox, disabled because creates different margins for body and drop-down button */ -QToolBar > QAbstractSpinBox, -QToolBar > QSpinBox, -QToolBar > QDoubleSpinBox, -QToolBar > QLineEdit, -QToolBar > QTextEdit, -QToolBar > QTimeEdit, -QToolBar > QDateEdit, -QToolBar > QDateTimeEdit { - margin: 0px 2px; - padding: 0px; - min-width: 70px; /* necessary to show its content */ +QTreeView:disabled, +QListView:disabled, +QTableView:disabled, +QColumnView:disabled { + background-color: #1c1b22; + color: #c2c7cb; } -QToolBar > QComboBox, -QToolBar > QAbstractSpinBox, -QToolBar > QSpinBox, -QToolBar > QDoubleSpinBox, -QToolBar > QLineEdit, -QToolBar > QTextEdit, -QToolBar > QTimeEdit, -QToolBar > QDateEdit, -QToolBar > QDateTimeEdit { - min-height: 0px; /* reset it inside Tool Bar due to the user ability to set the "size of toolbar icons" inside Preferences */ +QTreeView:selected, +QListView:selected, +QTableView:selected, +QColumnView:selected { + background-color: #b28416; + color: White; } -QToolBar > QPushButton { - padding: 0px; - margin: 1px; /* doesn't work with :left, :right:, :top or :bottom sub-controls */ - min-width: 16px; /* could not be larger due to switchable Preferences "Size of toolbar icons" */ - min-height: 16px; /* could not be larger due to switchable Preferences "Size of toolbar icons" */ - border-radius: 4px; /* same as regular QPushButton */ +QTreeView:focus, +QListView:focus, +QTableView:focus, +QColumnView:focus { + border: 1px solid #996b00; } -QToolBar > QPushButton:checked { - border: 1px solid #e3b64d; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #b28416, stop:1 #b28416); +QTreeView::item:pressed, +QListView::item:pressed, +QTableView::item:pressed, +QColumnView::item:pressed { + background-color: #b28416; } -QToolBar > QPushButton:!checked { - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #444444, stop:1 #3c3c3c); - border: 1px solid #424242; - border-bottom-color: #333333; /* simulates shadow under the button */ - text-align: left; /* bug fix #4559 */ +QTreeView::item:selected:active, +QListView::item:selected:active, +QTableView::item:selected:active, +QColumnView::item:selected:active { + background-color: #b28416; } -QToolBar > QPushButton:checked:hover { - border-color: #e2ac2a; +QTreeView::item:selected:!active, +QListView::item:selected:!active, +QTableView::item:selected:!active, +QColumnView::item:selected:!active { + color: White; + background-color: #353535; } -QToolBar > QPushButton:!checked:hover { - color: #e3d8b9; - border-color: #333333; +QTreeView::item:!selected:hover, +QListView::item:!selected:hover, +QTableView::item:!selected:hover, +QColumnView::item:!selected:hover { + outline: 0; + color: White; + background-color: #b28416; } -QToolBar > QPushButton:checked:pressed { - background-color: #b28416; +QTableCornerButton::section { + background-color: #444444; + border: 1px transparent #696968; + border-radius: 0px; } -QToolBar > QPushButton:!checked:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #424242, stop:1 #444444); -} - -QToolBar > QPushButton:checked:disabled, -QToolBar > QPushButton:!checked:disabled { - border: none; - background-color: transparent; -} - -QToolBar > QToolButton { - margin: 2px; - padding: 2px; - border-radius: 3px; -} - -QToolBar > QToolButton:hover { - background-color: rgba(255,255,255,20); -} - -QToolBar > QToolButton:pressed { - background-color: rgba(255,255,255,30); -} - -/* ToolBar menu buttons (buttons with drop-down menu) */ -QToolBar > QToolButton#qt_toolbutton_menubutton { - padding-right: 20px; /* Hack to add more width to buttons with menu */ - border: 1px solid transparent; - border-radius: 3px; -} - -QToolBar > QToolButton#qt_toolbutton_menubutton:hover, -QToolBar > QToolButton#qt_toolbutton_menubutton:pressed, -QToolBar > QToolButton#qt_toolbutton_menubutton:open { - border: 1px solid #e3b64d; -} - -QToolBar QToolButton::menu-button, -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button { - border: none; - border-top-right-radius: 3px; - border-bottom-right-radius: 3px; - width: 16px; /* 16px width + 4px for border = 20px allocated above */ - outline: none; - background-color: transparent; -} - -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button:hover, -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button:pressed, -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button:open { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #b28416, stop:1 #e3b64d); -} - -QToolBar > QToolButton::menu-arrow { - background-image: url(qss:images_dark-light/down_arrow_dark.svg); - background-position: center center; - background-repeat: none; - subcontrol-origin: padding; - subcontrol-position: bottom right; - height: 10px; /* same as arrow image */ -} - -QToolBar > QToolButton::menu-arrow:hover { - background-image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -QToolBar > QToolButton::menu-arrow:open { - background-image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -/* when QToolButton is checked: */ -QToolBar > QToolButton:checked { - border: 1px solid #e3b64d; - background-color: rgba(124,171,249,60); /* transparency for #e3b64d color */ -} - -QToolBar > QToolButton:checked:hover { - border: 1px solid #e3b64d; - background-color: rgba(124,171,249,80); /* transparency for #e3b64d color */ -} - -/*The "show more" button (it can also be stylable with "QToolBarExtension" */ -QToolBar QToolButton#qt_toolbar_ext_button { - margin: 0px; - padding: 0px; - /*background-image: url(qss:images_dark-light/more_dark.svg);*/ - image: transparent; - background-repeat: none; - background-position: center left; -} - -QToolBar QToolButton#qt_toolbar_ext_button:hover { - /*background-image: url(qss:images_dark-light/more_light.svg);*/ - border-color: #424242; - background-color: #424242; -} - -QToolBar QToolButton#qt_toolbar_ext_button:on { - /*background-image: url(qss:images_dark-light/more_light.svg);*/ - border-color: #424242; - background-color: #424242; -} - - -/*================================================================================================== -Tables (spreadsheets) -==================================================================================================*/ -QTableView { - gridline-color: #a0a0a0; - selection-color: #624b14; - selection-background-color: #e0c992; -} - -QTableView::item:hover { - background-color: rgba(0,0,0,10); /* temporal: is it displayed in Linux or Windows? on OSX it isn't */ -} - -QTableView::item:disabled { - color: #333333; -} - -QTableView::item:selected { - color: #624b14; - border-color: #e3d8b9; /* same as focused background color */ - border-bottom-color: #e3b64d; /* same as focused border color */ -} - -/* fix for elements inside the cells */ -QTableView > QWidget > QComboBox, -QTableView > QWidget > QAbstractSpinBox, -QTableView > QWidget > QSpinBox, -QTableView > QWidget > QDoubleSpinBox, -QTableView > QWidget > QLineEdit, -QTableView > QWidget > QTextEdit, -QTableView > QWidget > QTimeEdit, -QTableView > QWidget > QDateEdit, -QTableView > QWidget > QDateTimeEdit, -QTableView > QWidget > QComboBox:drop-down, -QTableView > QWidget > QAbstractSpinBox:up-button, -QTableView > QWidget > QSpinBox:up-button, -QTableView > QWidget > QDoubleSpinBox:up-button, -QTableView > QWidget > QTimeEdit:up-button, -QTableView > QWidget > QDateEdit:up-button, -QTableView > QWidget > QDateTimeEdit:up-button, -QTableView > QWidget > QAbstractSpinBox:down-button, -QTableView > QWidget > QSpinBox:down-button, -QTableView > QWidget > QDoubleSpinBox:down-button, -QTableView > QWidget > QTimeEdit:down-button, -QTableView > QWidget > QDateEdit:down-button, -QTableView > QWidget > QDateTimeEdit:down-button, -QTableView > QWidget > Gui--ColorButton { - border-radius: 0px; -} - -QTableView > QWidget > QComboBox, -QTableView > QWidget > QAbstractSpinBox, -QTableView > QWidget > QSpinBox, -QTableView > QWidget > QDoubleSpinBox, -QTableView > QWidget > QLineEdit, -QTableView > QWidget > QTextEdit, -QTableView > QWidget > QTimeEdit, -QTableView > QWidget > QDateEdit, -QTableView > QWidget > QDateTimeEdit { - color: black; - background-color: transparent; - border-color: transparent; -} - -QTableView > QWidget > QComboBox:drop-down, -QTableView > QWidget > QAbstractSpinBox:up-button, -QTableView > QWidget > QSpinBox:up-button, -QTableView > QWidget > QDoubleSpinBox:up-button, -QTableView > QWidget > QTimeEdit:up-button, -QTableView > QWidget > QDateEdit:up-button, -QTableView > QWidget > QDateTimeEdit:up-button, -QTableView > QWidget > QAbstractSpinBox:down-button, -QTableView > QWidget > QSpinBox:down-button, -QTableView > QWidget > QDoubleSpinBox:down-button, -QTableView > QWidget > QTimeEdit:down-button, -QTableView > QWidget > QDateEdit:down-button, -QTableView > QWidget > QDateTimeEdit:down-button, -QTableView > QWidget > Gui--ColorButton { - background-color: rgba(0,0,0,30); -} - -QTableView > QWidget > QComboBox:focus, -QTableView > QWidget > QAbstractSpinBox:focus, -QTableView > QWidget > QSpinBox:focus, -QTableView > QWidget > QDoubleSpinBox:focus, -QTableView > QWidget > QLineEdit:focus, -QTableView > QWidget > QTextEdit:focus, -QTableView > QWidget > QTimeEdit:focus, -QTableView > QWidget > QDateEdit:focus, -QTableView > QWidget > QDateTimeEdit:focus { - color: #624b14; - selection-color: white; - selection-background-color: #b28416; - border-color: #e3d8b9; - background-color: #e3d8b9; -} - -QTableView > QWidget > QComboBox:disabled, -QTableView > QWidget > QAbstractSpinBox:disabled, -QTableView > QWidget > QSpinBox:disabled, -QTableView > QWidget > QDoubleSpinBox:disabled, -QTableView > QWidget > QLineEdit:disabled, -QTableView > QWidget > QTextEdit:disabled, -QTableView > QWidget > QTimeEdit:disabled, -QTableView > QWidget > QDateEdit:disabled, -QTableView > QWidget > QDateTimeEdit:disabled { - color: rgba(0,0,0,120); - background-color: transparent; - border-color: transparent; -} - -QTableView > QWidget > QComboBox:read-only, -QTableView > QWidget > QAbstractSpinBox:read-only, -QTableView > QWidget > QSpinBox:read-only, -QTableView > QWidget > QDoubleSpinBox:read-only, -QTableView > QWidget > QLineEdit:read-only, -QTableView > QWidget > QTextEdit:read-only, -QTableView > QWidget > QTimeEdit:read-only, -QTableView > QWidget > QDateEdit:read-only, -QTableView > QWidget > QDateTimeEdit:read-only { - color: black; - background-color: transparent; - border-color: transparent; -} - - -/*================================================================================================== -SELECTORTOOLBAR widget (3rd party plugin) -==================================================================================================*/ -QToolBar:horizontal#Selector, -QToolBar:vertical#Selector { - background-color: rgba(0,0,0,120); - margin: 0px; - padding: 0px; -} - -QToolBar::handle:top#Selector, -QToolBar::handle:bottom#Selector, -QToolBar::handle:horizontal#Selector { - alignment: bottom left; -} - -QToolBar::handle:left#Selector, -QToolBar::handle:right#Selector, -QToolBar::handle:vertical#Selector { - width: 100%; - alignment: center left; -} - -QToolBar:top#Selector QToolButton, -QToolBar:bottom#Selector QToolButton, -QToolBar:horizontal#Selector QToolButton { - alignment: bottom left; -} - -QToolBar:left#Selector QToolButton, -QToolBar:right#Selector QToolButton, -QToolBar:vertical#Selector QToolButton { - alignment: center left; -} - -QToolButton[toolbar_orientation="horizontal"] { - /* nothing, when Horizontal there's no need to add special parameters */ -} - -QToolButton[toolbar_orientation="vertical"] { - /* nothing, when Horizontal there's no need to add special parameters */ -} - -QToolBar#Selector QToolButton { - border: none; - margin: 0px; - padding: 2px 6px; - border-radius: 0px; -} - -/* Active tab */ -QToolBar#Selector QToolButton:checked { +QTableView::item { color: white; - background-color: #444444; +} +QTableView { + /*qproperty-AliasedCellBackgroundColor: #f700ff;*/ + /*qproperty-aliasBgColor: #f700ff;*/ } -/* Unactive tabs */ -QToolBar#Selector QToolButton:!checked { - color: rgba(255,255,255,160); - background-color: transparent; - margin: 0px; +/* QHeaderView ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qheaderview + +--------------------------------------------------------------------------- */ +QHeaderView { + background-color: transparent; + text-align: center; } -/* Unactive tabs (hover) */ -QToolBar#Selector QToolButton:!checked:hover { - color: rgba(255,255,255,255); - background-color: rgba(255,255,255,20); +QHeaderView:disabled { + background-color: #444444; + color: rgb(174, 174, 174); } -/* Unactive tabs (pressed) */ -QToolBar#Selector QToolButton:!checked:pressed { - background-color: rgba(255,255,255,40); +QHeaderView::section { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); + color: White; + border: 1px solid #2a2a2a; + font-size: 13px; + font-weight: bold; } - -/*================================================================================================== -TABBAR widget (3rd party plugin) -==================================================================================================*/ -QTabWidget#TabBar > QTabBar { - border-top: 0; +QHeaderView::section::horizontal { + padding-top: 1px; + padding-bottom: 1px; + padding-left: 5px; + padding-right: 0px; } -QTabWidget#TabBar > QTabBar::tab:top, -QTabWidget#TabBar > QTabBar::tab:bottom { - min-width: -1; +QHeaderView::section::horizontal::first, QHeaderView::section::horizontal::only-one { + border-left: 0px solid #696968; } -QTabWidget#TabBar > QTabBar::tab:left, -QTabWidget#TabBar > QTabBar::tab:right { - min-height: -1; +QHeaderView::section::horizontal:disabled { + color: #353535; } - -/*================================================================================================== -EXPERIMENTAL -==================================================================================================*/ - -/* Fix for preventing elements in different rows to accidentally overlap */ -QDialog QGroupBox QFrame { - margin: 2px 0px; +QHeaderView::section::vertical { + padding-top: 1px; + padding-bottom: 0; + padding-left: 1px; + padding-right: 0px; + border-top: 0px solid #2a2a2a; } -*[mandatoryField="true"] { background-color: cyan } - -/* Hack to avoid QPushButton text partially hidden under menu-indicator */ -QPushButton#NavigationIndicator::menu-indicator { - image: none; - width: 0px; +QHeaderView::section::vertical::first, QHeaderView::section::vertical::only-one { + border-top: 2px solid #2a2a2a; } -QToolBar QToolButton[popupMode="1"] { - width: 100px; - background: red; +QHeaderView::section::vertical:disabled { + border-top: 2px solid #2a2a2a; } -/*================================================================================================== -SKETCHER -==================================================================================================*/ +QHeaderView::down-arrow { + /* Those settings (border/width/height/background-color) solve bug */ + /* transparent arrow background and size */ + background-color: transparent; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/down_arrow_light.svg); +} -Gui--StatefulLabel[state="empty_sketch"] { - color : rgba(255,255,255,127); /* 50% opacity white */ +QHeaderView::up-arrow { + background-color: transparent; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/up_arrow_light.svg); } -Gui--StatefulLabel[state="under_constrained"] { - color : rgba(255,255,255,255); /* White */ + +/* QToolBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbox +used in PATH + +--------------------------------------------------------------------------- */ +QToolBox { + padding: 0px; + border: 1px solid #696969; + border-radius: 4px; + background-color: transparent; } -Gui--StatefulLabel[state="conflicting_constraints"] { - color : rgba(255,0,0,255); /* Red */ + +QToolBox:selected { + padding: 0px; + border: 0px solid #b28416; } -Gui--StatefulLabel[state="malformed_constraints"] { - color : rgba(255,0,0,255); /* Red */ + +QToolBox::tab { + background-color: transparent; + border: 0px solid #696969; + color: white; + background-image: url(qss:images_dark-light/down_arrow_lighter.svg); + background-repeat: none; + background-position: center left; } -Gui--StatefulLabel[state="redundant_constraints"] { - color : rgba(255,69,0,255); /* Orange red */ + +QToolBox::tab:disabled { + color: #696969; } -Gui--StatefulLabel[state="partially_redundant_constraints"] { - color : rgba(65,105,225,255); /* Royal blue */ + +QToolBox::tab:selected { + background-color: #696969; + background-image: url(qss:images_dark-light/transparent.svg); + padding-right: 5px; + background-repeat: none; } -Gui--StatefulLabel[state="solver_failed"] { - color : rgba(255,0,0,255); /* Red */ - font-weight: bold; + +QToolBox::tab:selected:disabled { + background-color: #696969; + border-bottom: 0px solid #cccccc; + color: white; } -Gui--StatefulLabel[state="fully_constrained"] { - color : rgba(0,255,0,255); /* Green */ - font-weight: bold; + +QToolBox::tab:!selected { + } -Gui--UrlLabel { - color : rgba(0,91,255,255); /* Deep sky blue */ - text-decoration : underline; + +QToolBox::tab:!selected:disabled { + background-color: #444444; } + +QToolBox::tab:hover { + background-color: #b28416; + } + +QToolBox QScrollArea QWidget QWidget { + padding: 0px; + border: 0px; + background-color: transparent; +} + +/* QFrame ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe +https://doc.qt.io/qt-5/qframe.html#-prop +https://doc.qt.io/qt-5/qframe.html#details +https://stackoverflow.com/questions/14581498/qt-stylesheet-for-hline-vline-color + +--------------------------------------------------------------------------- */ +/* (dot) .QFrame fix #141, #126, #123 */ +.QFrame { + border-radius: 0px; + border: 0px solid #696968; + background-color: #696969; + /* No frame */ + /* HLine */ + /* HLine */ +} + +.QFrame[frameShape="0"] { + border-radius: 1.9px; + border: 1px solid #696968; +} + +.QFrame[frameShape="4"] { + max-height: 1px; + border: none; + background-color: #696968; +} + +.QFrame[frameShape="5"] { + max-width: 1px; + border: none; + background-color: #444444; +} + +/* QSplitter -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsplitter + +--------------------------------------------------------------------------- */ +QSplitter { + background-color: #3c3c3c; + spacing: 1px; + padding: 1px; + margin: 1px; +} + +QSplitter::handle { + margin: 0px 0px; + padding: 0px; +} + +QSplitter::handle:horizontal { + background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + width: 1px; +} + +QSplitter::handle:vertical { + background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + height: 1px; +} + +QSplitter::handle:hover { + background-image: url(qss:images_dark-light/splitter_horizontal_light.svg); + background-position: center center; + background-repeat: none; + background-color: #b28416; +} + +/* QDateEdit, QDateTimeEdit ----------------------------------------------- + +--------------------------------------------------------------------------- */ +QDateEdit, QDateTimeEdit { + selection-background-color: #b28416; + border-style: solid; + border: 1px solid #696968; + border-radius: 1.9px; + /* This fixes 103, 111 */ + padding-top: 2px; + /* This fixes 103, 111 */ + padding-bottom: 2px; + padding-left: 4px; + padding-right: 4px; + min-width: 10px; +} + +QDateEdit:on, QDateTimeEdit:on { + selection-background-color: #b28416; +} + +QDateEdit::drop-down, QDateTimeEdit::drop-down { + subcontrol-origin: padding; + subcontrol-position: top right; + width: 12px; + border-left: 1px solid #696968; +} + +QDateEdit::down-arrow, QDateTimeEdit::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + height: 8px; + width: 8px; +} + +QDateEdit::down-arrow:on, QDateEdit::down-arrow:hover, QDateEdit::down-arrow:focus, QDateTimeEdit::down-arrow:on, QDateTimeEdit::down-arrow:hover, QDateTimeEdit::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_lighter.svg); +} + +QDateEdit QAbstractItemView, QDateTimeEdit QAbstractItemView { + background-color: #444444; + border-radius: 2px; + border: 1px solid #696968; + selection-background-color: #b28416; +} + +/* QAbstractView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractView:hover { + border: 1px solid #b28416; + color: White; +} + +QAbstractView:selected { + background: #b28416; + color: White; +} + +/* PlotWidget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +PlotWidget { + /* Fix cut labels in plots #134 */ + padding: 0px; +} \ No newline at end of file diff --git a/src/Gui/Stylesheets/Darker-pink.qss b/src/Gui/Stylesheets/Darker-pink.qss new file mode 100644 index 0000000000..1e650ba1b1 --- /dev/null +++ b/src/Gui/Stylesheets/Darker-pink.qss @@ -0,0 +1,2533 @@ +/* +ABOUT +============================================================================================================ +Revised stylesheet based on the original from Pablo Gil Fernández made by MisterMaker + +KNOWN BUGS and TO DO +============================================================================================================ +Please, follow the link to get updated information: +https://forum.freecad.org/viewtopic.php?t=78431 + +INSTALLATION WHEN NECESSARY +============================================================================================================ +1) Place the .qss files and /images/ folder in the path that fits your OS: + OSX = /Users/[YOUR_USER_NAME]/Library/Preferences/FreeCAD/Gui/Stylesheets/ + WINDOWS = C:/[INSTALLATION_PATH]/FreeCAD/data/Gui/Stylesheets/ + LINUX = /home/[YOUR_USER_NAME]/.FreeCAD/Gui/Stylesheets/ + +============================================================================================================ +TO MODIFY USE THESE COLORS: + #b216a0 + #770069 + + +See Qt documentation: + + - https://doc.qt.io/qt-5/stylesheet.html + - https://doc.qt.io/qt-5/stylesheet-reference.html + - https://doc.qt.io/qt-5/stylesheet-examples.html + +--------------------------------------------------------------------------- */ + + +/* Reset elements ------------------------------------------------------------ + +Resetting everything helps to unify styles across different operating systems + +--------------------------------------------------------------------------- */ +* { + padding: 0px; + margin: 0px; + border: 0px; + border-style: none; + border-image: none; + outline: 0; +} + +/* specific reset for elements inside QToolBar */ +QToolBar * { + margin: 0px; + padding: 0px; +} + +/*hacks */ + Gui--PropertyEditor--PropertyEditor QLineEdit:read-only, +Gui--PropertyEditor--PropertyEditor QLineEdit:disabled, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:read-only, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:disabled { + color: transparent; + border-color: transparent; + background-color: transparent; + selection-color: transparent; + selection-background-color: transparent; + +} +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel, +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel:disabled { + color: transparent; + background-color: transparent; + border: none; + border-radius: 1px; + margin: 0px; + padding: 0px; +} + +Gui--PropertyEditor--PropertyEditor QSpinBox, +Gui--PropertyEditor--PropertyEditor QDoubleSpinBox, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox, +Gui--PropertyEditor--PropertyEditor QLineEdit, +Gui--PropertyEditor--PropertyEditor QComboBox { + margin-left: 0px; + margin-right: 0px; + padding-top: 0px; + padding-bottom: 0px; + +} + +/*================================================================================================== +Main window +==================================================================================================*/ +QMainWindow, +QDialog, +QDockWidget, +QToolBar { + background-color: #444444; /* main background color */ +} + +QMdiArea { + background-image: url(qss:images_dark-light/background_freecad_dark.svg); + background-position: center center; + background-repeat: no-repeat; +} +/*navgation src/Mod/Tux/NavigationIndicatorGui.py */ +Gui--NavigationIndicatorGui--BlenderNavigationStyle { +/*QAction#a4 {*/ + qproperty-icon: url(:/icons/icons/NavigationBlender_light.svg); +} +/*===== +/* QWidget ---------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QWidget { + background-color: #444444; + border: 0px solid #696968; + padding: 0px; + color: White; + selection-background-color: #b216a0; + selection-color: White; +} + +QWidget:disabled { + background-color: transparent; + color: #c2c7cb; + selection-background-color: #b216a0; + selection-color: #c2c7cb; +} + +QWidget::item:selected { + background-color: #b216a0; +} + + /* Causes issue with colorselector. + QWidget::item:hover:!selected { + background-color: #b216a0; + }*/ + +/* QMainWindow ------------------------------------------------------------ + +This adjusts the splitter in the dock widget, not qsplitter +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmainwindow + +--------------------------------------------------------------------------- */ +QMainWindow::separator { + /*background-color: #3c3c3c;*/ + border: 0px solid #696968; + spacing: 0px; + padding: 1px; +} + +QMainWindow::separator:vertical:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,stop:0.2 transparent,stop:0.5 #b216a0, stop:0.8 transparent); + /*background-color: #b216a0;*/ + image: url(qss:images_dark-light/splitter_vertical_light.svg); +} + +QMainWindow::separator:horizontal:hover { + background-color: qlineargradient(x1:0, y1:0, x2:1, y2:0,stop:0.2 transparent,stop:0.5 #b216a0, stop:0.8 transparent); + /*background-color: #b216a0;*/ + image: url(qss:images_dark-light/splitter_horizontal_light.svg); +} + +QMainWindow::separator:horizontal { + width: 4px; + margin-top: 0.1px; + margin-bottom: 0.1px; + /* image: url(qss:images_dark-light/splitter_horizontal_dark.svg);*/ +} + +QMainWindow::separator:vertical { + height: 4px; + margin-left: 0.1px; + margin-right: 0.1px; + /* image: url(qss:images_dark-light/splitter_vertical_dark.svg);*/ +} + +/* QToolTip --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtooltip + +--------------------------------------------------------------------------- */ +QToolTip { + background-color: #1c1b22; + color: White; + /* If you remove the border property, background stops working on Windows */ + border: none; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Remove opacity, fix #174 - may need to use RGBA */ +} + +/* QStatusBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qstatusbar + +--------------------------------------------------------------------------- */ +QStatusBar { + border: 0px solid #3c3c3c; + /* Fixes Spyder #9120, #9121 */ + background: #444444; + /* Fixes #205, white vertical borders separating items */ +} + +QStatusBar::item { + border: none; +} + +QStatusBar QToolTip { + background-color: #444444; + border: 1px solid #696968; + color: #444444; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Reducing transparency to read better */ + opacity: 230; +} + +QStatusBar QLabel { + /* Fixes Spyder #9120, #9121 */ + background: transparent; +} + +/* QCheckBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcheckbox + +--------------------------------------------------------------------------- */ +QCheckBox { + color: white; + padding: 0px; + outline: none; + border: 1px solid transparent; + background-color: transparent; +} + +QCheckBox:focus { + border: 1px solid #770069; +} + +QCheckBox QWidget:disabled { + background-color: transparent; + color: #c2c7cb; +} + +QCheckBox::indicator { + color: white; + background-color: #1c1b22; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QCheckBox::indicator:unchecked { + background-color: #1c1b22; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QCheckBox::indicator:unchecked:hover, QCheckBox::indicator:unchecked:focus, QCheckBox::indicator:unchecked:pressed { + background-color: #b216a0; + image:url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QCheckBox::indicator:unchecked:disabled { + background-color: #444444; + image:url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QCheckBox::indicator:checked { + background-color: #1c1b22; + /*border: 1px solid #696968; /* QRadioButton has the same color */ + image:url(qss:images_dark-light/checkbox_light.svg); +} + +QCheckBox::indicator:checked:hover, QCheckBox::indicator:checked:pressed { + background-color: #b216a0; +} + +QCheckBox::indicator:checked:disabled { + background-color: #444444; + image: url(qss:images_dark-light/check_light.svg); +} + +QCheckBox::indicator:indeterminate { + background-color: #1c1b22; + border: 1px solid #696968; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QCheckBox::indicator:indeterminate:disabled { + background-color: #444444; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QCheckBox::indicator:indeterminate:hover, QCheckBox::indicator:indeterminate:pressed { + background-color: #b216a0; /* QRadioButton has the same color */ +} + +/* QGroupBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qgroupbox + +--------------------------------------------------------------------------- */ +QGroupBox { + font-weight: bold; + border: 1px solid #696968; + border-radius: 1.9px; + padding: 2px; + margin-top: 10px; + margin-bottom: 4px; +} + +QGroupBox::title { + subcontrol-origin: margin; + subcontrol-position: top left; + left: 4px; + padding-left: 2px; + padding-right: 4px; + padding-top: 6px; +} + +QGroupBox::indicator { + color: white; + background-color: #3c3c3c; + border: 1px solid #696968; + width: 12px; + height: 12px; + border-radius:1px; +} + +QGroupBox::indicator:unchecked { + background-color: #696968; + border: 1px solid #696968; + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QGroupBox::indicator:unchecked:hover, QGroupBox::indicator:unchecked:focus, QGroupBox::indicator:unchecked:pressed { + background-color: #b216a0; +} + +QGroupBox::indicator:unchecked:disabled { + background-color: #1c1b22; + border: 1px solid #696968; +} + +QGroupBox::indicator:checked { + border: none; + image:url(qss:images_dark-light/checkbox_light.svg); +} + +QGroupBox::indicator:checked:hover, QGroupBox::indicator:checked:focus, QGroupBox::indicator:checked:pressed { + background-color: #b216a0; +} + +QGroupBox::indicator:checked:disabled { + background-color: #b216a0; +} + +/* QRadioButton ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qradiobutton + +--------------------------------------------------------------------------- */ +QRadioButton { + background-color: transparent; + color: White; + border: none; + spacing: 4px; + padding-top: 4px; + padding-bottom: 4px; + outline: none; +} + +QRadioButton:focus { + border: 1px solid #770069; +} + +QRadioButton:disabled { + background-color: #696968; + color: #353535; +} + +QRadioButton QWidget { + background-color: transparent; + color: White; + spacing: 0px; + padding: 0px; + outline: none; + border: none; +} + +QRadioButton::indicator { + background-color: #3c3c3c; + border: 1px solid #696968; + border-radius: 6px; + margin-left: 0px; + height: 11px; + width: 11px; +} + +QRadioButton::indicator:unchecked { + /*image:url(qss:images_dark-light/radiobutton_light.svg);*/ +} + +QRadioButton::indicator:unchecked:hover, QRadioButton::indicator:unchecked:pressed { + background-color: #b216a0; + border: 1px solid #b216a0; + border-radius: 6px; +} + +QRadioButton::indicator:unchecked:disabled { + /*image:url(qss:images_dark-light/radiobutton_dark.svg);*/ + border: 1px solid #696968; +} + +QRadioButton::indicator:checked { + image:url(qss:images_dark-light/radiobutton_light.svg); +} + +QRadioButton::indicator:checked:hover, QRadioButton::indicator:checked:pressed { + background-color: #b216a0; + border: 1px solid #b216a0; + border-radius: 6px; + image:url(qss:images_dark-light/radiobutton_light.svg); +} + +QRadioButton::indicator:checked:disabled { + outline: none; + background-color: #696968; + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +/* QMenuBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenubar + +--------------------------------------------------------------------------- */ +QMenuBar { + background-color: #161616; + /*padding: 1px; + border: 0px solid rgba(0,0,0,140);*/ + color: White; + selection-background-color: #b216a0; +} + +QMenuBar:focus { + border: 1px solid #770069; +} + +QMenuBar::item { + background: transparent; + /*padding-left:5px; + padding-right: 5px; + padding-bottom: 1px; + padding-top: 1px;*/ +} + +QMenuBar::item:selected { + background: transparent; + border: 0px solid #696968; + background-color: #b216a0; +} + +QMenuBar::item:pressed { + /*padding: 2px; + padding-left: 10px; + padding-right: 10px;*/ + border: 0px solid #696968; + background-color: #b216a0; + color: White; + /*margin-bottom: 0px; + padding-bottom: 0px;*/ +} + +/* QMenu ------------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenu + +--------------------------------------------------------------------------- */ +QMenu { + border-bottom: 2px rgba(0,0,0,140); + border-right: 2px rgba(0,0,0,140); + color: White; + margin: 0px; + background-color: #161616; + selection-background-color: #b216a0; +} + +QMenu::separator { + height: 2px; + background-color: #3c3c3c; + margin-left: 30%; + margin-right: 30%; +} + +QMenu::item { + background-color: transparent; + padding: 2px 2px; /* make room for icon at left */ + /* Reserve space for selection border */ + border: 0px transparent #696968; +} + +QMenu::item:selected { + color: White; + background-color: #b216a0; +} + +QMenu::item:pressed { + background-color: #b216a0; +} + +QMenu::icon { + margin-left: 5px; + width: 14px; + height: 14px; +} + +QMenu::indicator { + margin-left: 2px; + margin-right: 2px; + padding: 0px; + width: 12px; + height: 12px; + /* non-exclusive indicator = check box style indicator (see QActionGroup::setExclusive) */ + /* exclusive indicator = radio button style indicator (see QActionGroup::setExclusive) */ +} + +QMenu::icon:checked { /* appearance of a 'checked' icon */ + background: #770069; + margin-left: -5px; + border: 5px solid #770069; + position: absolute; + border-radius: 0px; +} +QMenu::indicator:non-exclusive:unchecked { + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:non-exclusive:unchecked:hover, QMenu::indicator:non-exclusive:unchecked:focus, QMenu::indicator:non-exclusive:unchecked:pressed { + border: none; + background: #b216a0; +} + +QMenu::indicator:non-exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QMenu::indicator:non-exclusive:checked { + image:url(qss:images_dark-light/checkbox_light.svg); +} + +QMenu::indicator:non-exclusive:checked:hover, QMenu::indicator:non-exclusive:checked:focus, QMenu::indicator:non-exclusive:checked:pressed { + border: none; + background: #b216a0; +} + +QMenu::indicator:non-exclusive:checked:disabled { + image:url(qss:images_dark-light/checkbox_checked_disabled.svg); +} + +QMenu::indicator:non-exclusive:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:disabled { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:focus, QMenu::indicator:non-exclusive:indeterminate:hover, QMenu::indicator:non-exclusive:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QMenu::indicator:exclusive:unchecked { + image: url(qss:images_dark-light/transparent.svg); +} + +QMenu::indicator:exclusive:unchecked:hover, QMenu::indicator:exclusive:unchecked:focus, QMenu::indicator:exclusive:unchecked:pressed { + border: none; + outline: none; + background: #b216a0; + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:checked { + border: none; + outline: none; + image: url(qss:images_dark-light/radiobutton_light.svg); +} + +QMenu::indicator:exclusive:checked:hover, QMenu::indicator:exclusive:checked:focus, QMenu::indicator:exclusive:checked:pressed { + border: none; + outline: none; + background: #b216a0; + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:checked:disabled { + outline: none; + image: url(qss:images_dark-light/radiobutton_light.svg); +} + +QMenu::right-arrow { + margin: 5px; + padding-left: 12px; + image:url(qss:images_dark-light/right_arrow_lighter.svg); + height: 12px; + width: 12px; + background-color: transparent; +} + +/* QAbstractItemView ------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QAbstractItemView { + alternate-background-color: #5b5b5b; + color: White; + border: 1px solid #696968; + border-radius: 2px; +} + +QAbstractItemView QLineEdit { + padding: 2px; +} + +/* QAbstractScrollArea ---------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QAbstractScrollArea { + background-color: transparent; + border: 0px solid #696968; + border-radius: 0px; + /* fix #159 */ + padding: 0px; + /* remove min-height to fix #244 */ + color: White; +} + +QAbstractScrollArea:disabled { + color: #353535; +} + +/* QScrollArea ------------------------------------------------------------ + +--------------------------------------------------------------------------- +text input field disabled!!!!*/ +QScrollArea QWidget:disabled { + background-color: #444444; +} + +/* QScrollBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qscrollbar + +--------------------------------------------------------------------------- */ +QScrollBar:horizontal { + height: 16px; + margin: 2px 8px 2px 8px; + border: 0px solid #696968; + border-radius: 4px; + background-color: #444444; +} + +QScrollBar:vertical { + background-color: #444444; + width: 16px; + margin: 8px 2px 8px 2px; + border: 0px solid #696968; + border-radius: 4px; +} + +QScrollBar::handle:horizontal { + background-color: #696969; + border: 1px solid #444444; + border-radius: 4px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:hover { + background-color: #b216a0; + border: #696968; + border-radius: 4px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:focus { + border: 1px solid #770069; +} + +QScrollBar::handle:vertical { + background-color: #696969; + border: 1px solid #696968; + min-height: 8px; + border-radius: 4px; +} + +QScrollBar::handle:vertical:hover { + background-color: #b216a0; + border: #696968; + border-radius: 4px; + min-height: 8px; +} + +QScrollBar::handle:vertical:focus { + border: 1px solid #770069; +} + +QScrollBar::add-line:horizontal { + border-image: url(qss:images_dark-light/right_arrow_light.svg); + height: 9px; + width: 5px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:horizontal:hover, QScrollBar::add-line:horizontal:on { + border-image: url(qss:images_dark-light/right_arrow_lighter.svg); + height: 9px; + width: 5px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical { + border-image: url(qss:images_dark-light/down_arrow_light.svg); + height: 5px; + width: 9px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical:hover, QScrollBar::add-line:vertical:on { + border-image: url(qss:images_dark-light/down_arrow_lighter.svg); + height: 5px; + width: 9px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/left_arrow_light.svg); + height: 9px; + width: 5px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal:hover, QScrollBar::sub-line:horizontal:on { + border-image: url(qss:images_dark-light/left_arrow_lighter.svg); + height: 9px; + width: 5px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/up_arrow_light.svg); + height: 5px; + width: 9px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical:hover, QScrollBar::sub-line:vertical:on { + border-image: url(qss:images_dark-light/up_arrow_lighter.svg); + height: 5px; + width: 9px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::up-arrow:horizontal, QScrollBar::down-arrow:horizontal { + background: none; +} + +QScrollBar::up-arrow:vertical, QScrollBar::down-arrow:vertical { + background: none; +} + +QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal { + background: none; +} + +QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical { + background: none; +} + +/* QTextEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-specific-widgets + + +report view +--------------------------------------------------------------------------- */ +QTextEdit { + background-color: #444444; + color: White; + border-radius: 1.9px; + border: 0px solid #696968; +} + +QTextEdit:focus { + border: 1px solid #770069; +} + +QTextEdit:selected { + background: #346792; + color: white; +} + +/* QPlainTextEdit --------------------------------------------------------- +Python +--------------------------------------------------------------------------- */ +QPlainTextEdit { + background-color: #3c3c3c; + color: White; + border-radius: 1.9px; + border: 0px solid #696968; +} + +QPlainTextEdit:focus { + border: 1px solid #770069; +} + +QPlainTextEdit:selected { + background: #b216a0; + color: White; +} + +/* QSizeGrip -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsizegrip + +--------------------------------------------------------------------------- */ +QSizeGrip { + background: transparent; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/sizegrip_light.svg); +} + +/* QStackedWidget --------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QStackedWidget { + padding: 0px; + border: 0px solid #696968; +} + +/* QToolBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbar + +--------------------------------------------------------------------------- */ +QToolBar { + background-color: #444444; + border-bottom: 0px solid rgba(0,0,0,120); + padding: 1px; + font-weight: bold; + spacing: 1px; +} + +QToolBar:disabled { + /* Fixes #272 */ + background-color: #444444; +} + +QToolBar::handle:horizontal { + width: 8px; + margin: 3px 3px; + background-position: top right; + background-repeat: repeat-y; + background-image: url(qss:images_dark-light/Hmovetoolbar_light.svg); +} + +QToolBar::handle:vertical { + height: 8px; + margin: 3px 3px; + background-position: left bottom; + background-repeat: repeat-x; + background-image: url(qss:images_dark-light/Vmovetoolbar_light.svg); +} + +QToolBar::separator:horizontal { + width: 2px; + margin: 4px 4px; + background-color: transparent; +} + +QToolBar::separator:vertical { + height: 2px; + margin: 4px 4px; + background-color: transparent; +} + +/*The "show more" button (it can also be stylable with "QToolBarExtension" icon is not working Qproperty works but breaks when you move the toolbar see also */ +QToolButton#qt_toolbar_ext_button { +margin: 0px; +padding: 0px; +background-color: #696969; +/*background-image: url(qss:images_dark-light/more_light.svg);*/ +background-repeat: none; +background-position: center center; +} + +QToolButton#qt_toolbar_ext_button:hover { +/*background-image: url(qss:images_dark-light/more_light.svg);*/ +background-color: #b216a0; +} + +QToolButton#qt_toolbar_ext_button:on { +/*background-image: url(qss:images_dark-light/more_light.svg);*/ +border-color: #696968; +background-color: #b216a0; +} + + +/* QAbstractSpinBox ------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractSpinBox, +QSpinBox { + background-color: #1c1b22; + border: 1px solid transparent; + color: White; + /* This fixes 103, 111 */ + /* padding-top: 0px; + /* This fixes 103, 111 */ + /*padding-bottom: 0px; + /*padding-left: 4px; + /*padding-right: 4px; + border-radius: 1.9px;*/ + min-height: 1.7em; + /* min-width: 5px; removed to fix 109 */ +} + +QAbstractSpinBox:up-button { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); + subcontrol-origin: border; + subcontrol-position: top right; + border: 1px solid transparent; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-bottom: -1px;*/ +} + +QAbstractSpinBox::up-arrow, QAbstractSpinBox::up-arrow:disabled, QAbstractSpinBox::up-arrow:off { + image: url(qss:images_dark-light/up_arrow_disabled_light.svg); + /* height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::up-arrow:hover { + image: url(qss:images_dark-light/up_arrow_lighter.svg); +} + +QAbstractSpinBox:down-button { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); + subcontrol-origin: border; + subcontrol-position: bottom right; + border: 1px solid transparent; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-top: -1px;*/ +} + +QAbstractSpinBox::down-arrow, QAbstractSpinBox::down-arrow:disabled, QAbstractSpinBox::down-arrow:off { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + /*height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::down-arrow:hover { + image: url(qss:images_dark-light/down_arrow_lighter.svg); +} + +QAbstractSpinBox:hover { + /*border: 1px solid #b216a0; + color: White;*/ +} + +QAbstractSpinBox:focus { + border: 1px solid #770069; +} + +QAbstractSpinBox:selected { + background: #770069; + /*color: White;*/ +} + +/* ------------------------------------------------------------------------ */ +/* DISPLAYS --------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QLabel ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe + +--------------------------------------------------------------------------- */ +QLabel { + background-color: transparent; + border: 0px solid #696968; + padding: 2px; + margin: 0px; + color: White; +} + +QLabel:disabled { + background-color: transparent; + border: 0px solid #696968; + color: #c2c7cb; +} + +QLabel[haslink="true"] { + color: orange; +} + + +/* QTextBrowser ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QTextBrowser { + background-color: #1c1b22; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; +} + +QTextBrowser:disabled { + background-color: #444444; + border: 1px solid #696968; + color: #c2c7cb; + border-radius: 1.9px; +} + +QTextBrowser:hover, QTextBrowser:!hover, QTextBrowser:selected, QTextBrowser:pressed { + border: 1px solid #b216a0; +} + +/* QGraphicsView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QGraphicsView { + background-color: transparent; + border: 0px solid #b216a0; + color: White; + border-radius: 0px; +} + +QGraphicsView:disabled { + background-color: #1c1b22; + border: 0px solid #696968; + color: #c2c7cb; + border-radius: 0px; +} + +QGraphicsView:hover, QGraphicsView:!hover, QGraphicsView:selected, QGraphicsView:pressed { + border: 0px solid #ff00f7; +} + +/* QCalendarWidget -------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCalendarWidget { + border: 1px solid #696968; + border-radius: 1.9px; +} + +QCalendarWidget:disabled { + background-color: #353535; + color: #c2c7cb; +} + +/* QLCDNumber ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QLCDNumber { + background-color: #1aff00; + color: White; +} + +QLCDNumber:disabled { + background-color: #444444; + color: #c2c7cb; +} + +/* QProgressBar ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qprogressbar + +--------------------------------------------------------------------------- */ +QProgressBar { + background-color: #c2c7cb; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar:disabled { + background-color: #161616; + border: 1px solid #696968; + color: #696969; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar::chunk { + background-color: #b216a0; + color: #444444; + border-radius: 1.9px; +} + +QProgressBar::chunk:disabled { + background-color: #161616; + color: #696968; + border-radius: 1.9px; +} + +/* ------------------------------------------------------------------------ */ +/* BUTTONS ---------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QPushButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qpushbutton + +--------------------------------------------------------------------------- */ +QPushButton { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); + color: White; + border: 1px solid #2a2a2a; + border-bottom-color: #1e1e1e; /* simulates shadow under the button */ + border-radius: 4px; + padding: 2px; +} + +QPushButton:disabled { + background-color: #444444; + color: #c2c7cb; + +} + +QPushButton:checked { + background-color: #b216a0; + outline: none; +} + +QPushButton:checked:disabled { + background-color: #b216a0; + color: #3c3c3c; + outline: none; +} + +QPushButton:checked:selected { + background: #b216a0; +} + +QPushButton:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #b216a0, stop:1 #770069); + color: White; +} + +QPushButton:pressed { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #770069, stop:1 #b216a0); +} + +QPushButton:selected { + background: #770069; + color: White; +} + +QPushButton::menu-indicator { + subcontrol-origin: padding; + subcontrol-position: bottom right; + bottom: 4px; +} + +QDialogButtonBox QPushButton { + /* Issue # 194 # 248 - Special case of QPushButton inside dialogs, for better UI */ + min-width: 80px; +} + +/* QToolButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbutton + +--------------------------------------------------------------------------- */ +QToolButton { + background-color: transparent; + color: White; + border-radius: 1px; + padding: 0px; + outline: none; + border: none; + /* The subcontrols below are used only in the DelayedPopup mode */ + /* The subcontrols below are used only in the MenuButtonPopup mode */ + /* The subcontrol below is used only in the InstantPopup or DelayedPopup mode */ +} + +QToolButton:disabled { + background-color: rgba(0, 0, 0, 0.065); + color: #c2c7cb; + border-radius: 1px; + padding: 0px; +} + +QToolButton:checked { + background-color: #b216a0; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:disabled { + background-color: #b65555; + color: #c2c7cb; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:hover { + background-color: #b216a0; + color: White; +} + +QToolButton:checked:pressed { + background-color: #b216a0; +} + +QToolButton:checked:selected { + background: #770069; + color: White; +} + +QToolButton:hover { + background-color: #b216a0; + color: White; +} + +QToolButton:pressed { + background-color: #770069; +} + +QToolButton:selected { + background: #b216a0; + color: White; +} + +QToolButton[popupMode="0"] { + /* Only for DelayedPopup */ + padding-right: 20px; +} + +QToolButton[popupMode="1"] { + /* Only for MenuButtonPopup */ + padding-right: 20px; +} +QToolButton[popupMode="0"]::menu-button { + border: none; +} + +QToolButton[popupMode="0"]::menu-button:hover { + border: none; + border-left: 2px solid #fe0000; + border-radius: 0px; +} +QToolButton[popupMode="1"]::menu-button { + border: none; +} + +QToolButton[popupMode="1"]::menu-button:hover { + border: none; + border-left: 2px solid #e5ff00; + border-radius: 0px; +} + +QToolButton[popupMode="2"] { + /* Only for InstantPopup */ + padding-right: 20px; +} + +QToolButton::menu-button { + border-bottom: 0px solid #ffffff; + border-radius: 2px; + /* 16px width + 4px for border = 20px allocated above */ + width: 1.6ex; + padding: 2px; + border-radius: 2px; + border: 0px #000000; +} + +QToolButton::menu-button:hover { + /* background: rgba(0, 0, 0, 0.5);*/ + +} + +QToolButton::menu-button:checked:hover { + /* background: rgba(0, 0, 0, 0.5);*/ +} + +QToolButton::menu-indicator { + /* Exclude a shift for better image */ + subcontrol-position: right bottom; + /* Shift it a bit */ +} + +QToolButton::menu-arrow { + image: url(qss:images_dark-light/more_arrow_light.svg); + width: 1.5ex; + height: 1.5ex; + subcontrol-position: right bottom; + background: transparent; +} +QToolButton::menu-arrow:open { + subcontrol-position: right bottom; + image: url(qss:images_dark-light/more_arrow_light.svg); +} +QToolButton::menu-arrow:hover { + image: url(qss:images_dark-light/more_arrow_light.svg); + background-color: rgba(0, 0, 0, 0.498); + border: 1px solid rgba(0, 0, 0, 0.498); +} + +/* QCommandLinkButton ----------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCommandLinkButton { + background-color: transparent; + border: 1px solid #696968; + color: White; + border-radius: 1.9px; + padding: 0px; + margin: 0px; +} + +QCommandLinkButton:disabled { + background-color: transparent; + color: #c2c7cb; +} + +/* ------------------------------------------------------------------------ */ +/* INPUTS - NO FIELDS ----------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QComboBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QComboBox { + border: 1px solid transparent; + background: #1c1b22; + border-radius: 2px; + selection-background-color: #b216a0; + padding-left: 2px; + padding-right: 2px; + /* padding-right = 36; 4 + 16*2 See scrollbar size */ + /* changed to 4px to fix #239 */ + /* Fixes #103, #111 */ + min-height: 1.5em; + /* padding-top: 2px; removed to fix #132 */ + /* padding-bottom: 2px; removed to fix #132 */ + /* min-width: 75px; removed to fix #109 */ + /* Needed to remove indicator - fix #132 */ +} +QComboBox:editable { + background: #1c1b22; +} +QComboBox QAbstractItemView { + border: 0px solid #696968; + border-radius: 0px; + background-color: #1c1b22; + selection-background-color: #b216a0; +} + +QComboBox QAbstractItemView:hover { + background-color:#1c1b22; + color: White; +} + +QComboBox QAbstractItemView:selected { + background: #b216a0; + color: White; +} + +QComboBox QAbstractItemView:alternate { + background: #3c3c3c; +} + +QComboBox:disabled { + background-color: #444444; + color: #353535; +} + +QComboBox:hover { + /*background-color: #b216a0;*/ + border: 1px solid #b216a0; +} + +QComboBox:focus { + border: 1px solid #770069; +} + +QComboBox:on { + selection-background-color: #770069; +} + +QComboBox::indicator { + border: none; + border-radius: 0px; + background-color: transparent; + selection-background-color: transparent; + color: transparent; + selection-color: #b216a0; + /* Needed to remove indicator - fix #132 */ +} + +QComboBox::indicator:alternate { + background: #696968; +} + +QComboBox::item { + /* Remove to fix #282, #285 and MR #288*/ + /*&:checked { + font-weight: bold; + } + + &:selected { + border: 0px solid transparent; + } + */ +} + +QComboBox::item:alternate { + background: #3c3c3c; +} + +QComboBox::drop-down { + subcontrol-origin: padding; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); + subcontrol-position: top right; + width: 14px; + border-left: 1px solid transparent; +} +QComboBox::drop-down:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #b216a0, stop:1 #770069); +} + +QComboBox::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + height: 10px; + width: 10px; +} + +QComboBox::down-arrow:on, QComboBox::down-arrow:hover, QComboBox::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_lighter.svg); +} + + +/*================================================================================================== +Tasks panel (custom FreeCAD class) +==================================================================================================*/ +Gui--PropertyEditor--PropertyEditor { + qproperty-groupTextColor: white; + qproperty-groupBackground: #3c3c3c; + border: 0px solid #696968; + +} + +/* Action group */ +QFrame[class="panel"] { +background-color: transparent; /* temporal (transparent background) */ + +} + +QSint--ActionGroup { +padding: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +margin: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +} + +/* Separator line */ +QSint--ActionGroup QFrame[height="1"], +QSint--ActionGroup QFrame[height="2"], +QSint--ActionGroup QFrame[height="3"], +QSint--ActionGroup QFrame[width="1"], +QSint--ActionGroup QFrame[width="2"], +QSint--ActionGroup QFrame[width="3"] { +border-color: rgba(0,0,0,60); +} + +/* Panel header */ +QSint--ActionGroup QFrame[class="header"] { +border-top: 1px solid #696968; +border-left: 1px solid #696968; +border-right: 1px solid #696968; +background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); +border-top-left-radius: 3px; +border-top-right-radius: 3px; +border-bottom-left-radius: 0px; +border-bottom-right-radius: 0px; +margin: 0px; +padding: 0px; +} + +QSint--ActionGroup QFrame[class="header"]:hover { +background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #b216a0, stop:1 #770069); +} + +QSint--ActionGroup QToolButton[class="header"] { +color: white; /* Task Panel Header text color */ +text-align: left; +font-weight: bold; +border: none; +margin: 0px; +padding: 0px; +} + +QSint--ActionGroup QFrame[class="header"] QLabel { +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_light.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; +} + +QSint--ActionGroup QFrame[class="header"] QLabel:hover { +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_lighter.svg); +} + +QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"] { +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_light.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; +} + +QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"]:hover { +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_lighter.svg); +} + +QSint--ActionGroup QFrame[class="content"] { +background-color: transparent; /* Task Panel background color */ +margin: 0px; +padding: 0px; +border-bottom: 1px solid #696968; +border-left: 1px solid #696968; +border-right: 1px solid #696968; +border-top-left-radius: 0px; +border-top-right-radius: 0px; +border-bottom-left-radius: 3px; +border-bottom-right-radius: 3px; +} + +QSint--ActionGroup QFrame[class="content"] > QWidget { +background-color: #444444; /* Task Panel background color */ +} + +/* Fixs for tabs inside Task Panel */ +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:top:selected { +border-bottom-color: #b216a0; /* same as Task Panel background color */ +} + +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:bottom:selected { +border-top-color: #b216a0; /* same as Task Panel background color */ +} + +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:right:selected { +border-right-color: #b216a0; /* same as Task Panel background color */ +} + +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:left:selected { +border-left-color: #b216a0; /* same as Task Panel background color */ +} + +/* Fix for buttons with icons that showed cropped (still not happy with result) */ +QSint--ActionGroup QFrame[class="content"] > QWidget > QPushButton { +padding: 2px; /* bigger padding crops text and icons... */ +margin: 0px; +} + +/* Fix for lists inside task panels */ /* sketcher constraints list */ +QSint--ActionGroup QFrame[class="content"] QTreeView, +QSint--ActionGroup QFrame[class="content"] QListView, +QSint--ActionGroup QFrame[class="content"] QTableView { +color: white; +background-color: #1c1b22; +} + + +/* found inside Part Design Workbench and "make a draft on a face" Task panel options */ +QSint--ActionGroup QFrame[class="content"] QToolButton { + color: white; + text-align: center; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); + border: 0px solid #adadad; + padding: 1px 1px; /* different than regular QPushButton */ + margin: 0px; /* different than regular QPushButton */ + min-height: 16px; /* same as QTabBar QPushButton min-width */ + border-radius: 1px; +} + +QSint--ActionGroup QFrame[class="content"] QToolButton:hover{ + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #b216a0, stop:1 #770069); + +} +QSint--ActionGroup QFrame[class="content"] QToolButton:focus { + border: 1px solid #770069; +} + +QSint--ActionGroup QFrame[class="content"] QToolButton:disabled, +QSint--ActionGroup QFrame[class="content"] QToolButton:disabled:checked { + color: #696969; + background-color: #1c1b22; +} + +QSint--ActionGroup QFrame[class="content"] QToolButton:pressed { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #b216a0, stop:1 #770069); + +} + +/* QSlider ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qslider + +--------------------------------------------------------------------------- */ +QSlider:disabled { + background: #444444; +} + +QSlider:focus { + border: 1px solid #770069; +} + +QSlider::groove:horizontal { + background: #444444; + border: 1px solid #696968; + height: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::groove:vertical { + background: #b216a0; + border: 1px solid #696968; + width: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::add-page:vertical { + background: #b216a0; + border: 1px solid #696968; + width: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::add-page:vertical :disabled { + background: #696968; +} + +QSlider::sub-page:horizontal { + background: #b216a0; + border: 1px solid #0073ff; + height: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::sub-page:horizontal:disabled { + background: #b216a0; +} + +QSlider::handle:horizontal { + background: #353535; + border: 1px solid #444444; + width: 8px; + height: 8px; + margin: -8px 0px; + border-radius: 1.9px; +} + +QSlider::handle:horizontal:hover { + background: #b216a0; + border: 1px solid #b216a0; +} + +QSlider::handle:horizontal:focus { + border: 1px solid #770069; +} + +QSlider::handle:vertical { + background: #c2c7cb; + border: 1px solid #696968; + width: 8px; + height: 8px; + margin: 0 -8px; + border-radius: 1.9px; +} + +QSlider::handle:vertical:hover { + background: #b216a0; + border: 2px solid #b216a0; +} + +QSlider::handle:vertical:focus { + border: 1px solid #770069; +} + +/* QLineEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlineedit + +--------------------------------------------------------------------------- */ +QLineEdit { + background-color: #1c1b22; + padding-top: 2px; + /* This QLineEdit fix 103, 111 */ + padding-bottom: 2px; + /* This QLineEdit fix 103, 111 */ + padding-left: 4px; + padding-right: 4px; + border-style: solid; + border: 1px solid #696968; + border-radius: 2px; + color: White; +} + +QLineEdit:disabled { + background-color: #444444; + color: #c2c7cb; +} + +QLineEdit:hover { + border: 1px solid #b216a0; + color: White; +} + +QLineEdit:focus { + border: 2px solid #770069; +} + +QLineEdit:selected { + background-color: #b216a0; + color: white; +} + +/* QTabWiget -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabWidget { + padding: 2px; + selection-background-color: #b216a0; +} + +QTabWidget QWidget { + /* Fixes #189 */ + border-radius: 1.9px; +} + +QTabWidget::pane { + margin: 0px; + /* Fixes double border inside pane with pyqt5 */ + padding: 0px; +} + +QTabWidget::pane:selected { + background-color: #b216a0; + border: 1px solid #346792; +} +/* QTabBar ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabBar, QDockWidget QTabBar { + qproperty-drawBase: 0; + /* left: 5px; move to the right by 5px - removed for fix */ +} + +QTabBar::close-button, QDockWidget QTabBar::close-button { + border: 0; + margin: 0; + padding: 1px; + image: url(qss:images_dark-light/close_light.svg); +} + +QTabBar::close-button:hover, QDockWidget QTabBar::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); + /*background-color: rgba(255, 0, 0, 0.3);*/ +} + +QTabBar::close-button:pressed, QDockWidget QTabBar::close-button:pressed { + image: url(qss:images_dark-light/close_.svg); +} + +QTabBar::tab, QDockWidget QTabBar::tab { + /* !selected and disabled ----------------------------------------- */ + /* selected ------------------------------------------------------- */ + padding: 4px; +} + +QTabBar::tab:top:selected:disabled, QDockWidget QTabBar::tab:top:selected:disabled { + color: #adadad; +} + +QTabBar::tab:bottom:selected:disabled, QDockWidget QTabBar::tab:bottom:selected:disabled { + color: #adadad; +} + +QTabBar::tab:left:selected:disabled, QDockWidget QTabBar::tab:left:selected:disabled { + color: #adadad; +} + +QTabBar::tab:right:selected:disabled, QDockWidget QTabBar::tab:right:selected:disabled { + color: #adadad; +} + +QTabBar::tab:top:!selected:disabled, QDockWidget QTabBar::tab:top:!selected:disabled { + color: #adadad; +} + +QTabBar::tab:bottom:!selected:disabled, QDockWidget QTabBar::tab:bottom:!selected:disabled { + color: #adadad; + +} + +QTabBar::tab:left:!selected:disabled, QDockWidget QTabBar::tab:left:!selected:disabled { + color: #adadad; + +} + +QTabBar::tab:right:!selected:disabled, QDockWidget QTabBar::tab:right:!selected:disabled { + color: #adadad; +} + +QTabBar::tab:top:!selected, QDockWidget QTabBar::tab:top:!selected { + color: #adadad; +} + +QTabBar::tab:bottom:!selected, QDockWidget QTabBar::tab:bottom:!selected { + color: #adadad; +} + +QTabBar::tab:left:!selected, QDockWidget QTabBar::tab:left:!selected { + color: #adadad; +} + +QTabBar::tab:right:!selected, QDockWidget QTabBar::tab:right:!selected { + color: #adadad; +} + +QTabBar::tab:top, QDockWidget QTabBar::tab:top { + color: #696969; + margin-left: 0px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + min-width: 5px; + border-bottom: 1px solid #696969; /* same as tab content background color */ + border-radius: 0px; +} + +QTabBar::tab:top:selected, QDockWidget QTabBar::tab:top:selected { + color: white; + border-top: 4px solid #b216a0; /* selection color */ + border-bottom: 1px solid transparent; /* same as tab content background color */ + border-left: 1px solid #696969; + border-right: 1px solid #696969; + } + +QTabBar::tab:top:!selected:hover, QDockWidget QTabBar::tab:top:!selected:hover { + /*border: 1px solid #b216a0;*/ + border: 0px solid #b216a0; + background-color: #b216a0; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; +} + +QTabBar::tab:bottom, QDockWidget QTabBar::tab:bottom { + color: #adadad; + margin-left: 0px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + min-width: 5px; + border-top: 1px solid #696969; /* same as tab content background color */ + border-radius: 0px; +} + +QTabBar::tab:bottom:selected, QDockWidget QTabBar::tab:bottom:selected { + color: white; + border-bottom: 4px solid #b216a0; /* selection color */ + border-top: 1px solid transparent; /* same as tab content background color */ + border-left: 1px solid #696969; + border-right: 1px solid #696969; + +} + +QTabBar::tab:bottom:!selected:hover, QDockWidget QTabBar::tab:bottom:!selected:hover { +/*border: 1px solid #b216a0;*/ + border: 0px solid #b216a0; + background-color: #b216a0; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; +} + +QTabBar::tab:left, QDockWidget QTabBar::tab:left { + background-color: #444444; + margin-top: 2px; + margin-left:10px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + border-radius: 4px; + min-height: 5px; +} + +QTabBar::tab:left:selected, QDockWidget QTabBar::tab:left:selected { + background-color: #444444; + border: 0px solid #770069; +} + +QTabBar::tab:left:!selected:hover, QDockWidget QTabBar::tab:left:!selected:hover { + border: 0px solid #b216a0; + background-color: #b216a0; + /* Fixes different behavior #271 */ + margin-right: 0px; + padding-right: -1px; +} + +QTabBar::tab:right, QDockWidget QTabBar::tab:right { + background-color: #444444; + margin-top: 2px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + min-height: 5px; + border: 10px; +} + +QTabBar::tab:right:selected, QDockWidget QTabBar::tab:right:selected { + background-color: #444444; + border: 0px solid #770069; +} + +QTabBar::tab:right:!selected:hover, QDockWidget QTabBar::tab:right:!selected:hover { + border: 0px solid #b216a0; + background-color: #b216a0; + /* Fixes different behavior #271 */ + margin-left: 0px; + padding-left: 0px; +} + +QTabBar QToolButton, QDockWidget QTabBar QToolButton { + /* Fixes #136 */ + background-color: #444444; + height: 12px; + width: 12px; +} + +QTabBar QToolButton:pressed, QDockWidget QTabBar QToolButton:pressed { + border: 0px solid #b216a0; + background-color: #b216a0; +} + +QTabBar QToolButton:pressed:hover, QDockWidget QTabBar QToolButton:pressed:hover { + border: 0px solid #b216a0; + background-color: #b216a0; +} + +QTabBar QToolButton::left-arrow:enabled, QDockWidget QTabBar QToolButton::left-arrow:enabled { + image: url(qss:images_dark-light/left_arrow_lighter.svg); +} + +QTabBar QToolButton::left-arrow:disabled, QDockWidget QTabBar QToolButton::left-arrow:disabled { + image: url(qss:images_dark-light/left_arrow_disabled_light.svg); +} + +QTabBar QToolButton::right-arrow:enabled, QDockWidget QTabBar QToolButton::right-arrow:enabled { + image: url(qss:images_dark-light/right_arrow_lighter.svg); +} + +QTabBar QToolButton::right-arrow:disabled, QDockWidget QTabBar QToolButton::right-arrow:disabled { + image: url(qss:images_dark-light/right_arrow_disabled_light.svg); +} + +/* QDockWiget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QDockWidget { + background-color: #444444; + border: 1px solid #2a2a2a; + border-radius: 1.9px; + titlebar-close-icon: url(qss:images_dark-light/transparent.svg); + titlebar-normal-icon: url(qss:images_dark-light/transparent.svg); +} + +QDockWidget::title { + /* Better size for title bar */ + padding: 3px; + spacing: 4px; + border: none; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); + text-align: center; + font-weight: bold; +} + +QDockWidget::close-button { + icon-size: 10px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/close_light.svg); +} + +QDockWidget::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); +} + +QDockWidget::close-button:pressed { + image: url(qss:images_dark-light/close_light.svg); +} + +QDockWidget::float-button { + icon-size: 12px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/undock_light.svg); +} + +QDockWidget::float-button:hover { + /*background-color: #b216a0;*/ + image: url(qss:images_dark-light/undock_blue.svg); +} + +QDockWidget::float-button:pressed { + image: url(qss:images_dark-light/undock_light.svg); +} + +/* QTreeView QListView QTableView ----------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtreeview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlistview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtableview + +--------------------------------------------------------------------------- */ +QTreeView::branch { + background: transparent; +} + +QTreeView::branch:has-siblings:!adjoins-item { + border-image: url(qss:images_dark-light/branch_vline_light.svg) 0; +} + +QTreeView::branch:has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_more_light.svg) 0; +} + +QTreeView::branch:!has-children:!has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_end_light.svg) 0; +} + +QTreeView::branch:closed:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_closed_light.svg) 0; +} + +QTreeView::branch:has-children:!has-siblings:closed { + border-image: url(qss:images_dark-light/branch_end_closed_light.svg) 0; +} + +QTreeView::branch:open:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_open_light.svg) 0; +} + +QTreeView::branch:open:has-children:!has-siblings { + border-image: url(qss:images_dark-light/branch_end_open_light.svg) 0; +} + +QTreeView::indicator:checked, +QListView::indicator:checked, +QTableView::indicator:checked, +QColumnView::indicator:checked { + image: url(qss:images_dark-light/checkbox_light.svg); +} + +QTreeView::indicator:checked:hover, QTreeView::indicator:checked:focus, QTreeView::indicator:checked:pressed, +QListView::indicator:checked:hover, +QListView::indicator:checked:focus, +QListView::indicator:checked:pressed, +QTableView::indicator:checked:hover, +QTableView::indicator:checked:focus, +QTableView::indicator:checked:pressed, +QColumnView::indicator:checked:hover, +QColumnView::indicator:checked:focus, +QColumnView::indicator:checked:pressed { + image: url(qss:images_dark-light/checkbox_light_hover.svg); +} + +QTreeView::indicator:unchecked, +QListView::indicator:unchecked, +QTableView::indicator:unchecked, +QColumnView::indicator:unchecked { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QTreeView::indicator:unchecked:hover, QTreeView::indicator:unchecked:focus, QTreeView::indicator:unchecked:pressed, +QListView::indicator:unchecked:hover, +QListView::indicator:unchecked:focus, +QListView::indicator:unchecked:pressed, +QTableView::indicator:unchecked:hover, +QTableView::indicator:unchecked:focus, +QTableView::indicator:unchecked:pressed, +QColumnView::indicator:unchecked:hover, +QColumnView::indicator:unchecked:focus, +QColumnView::indicator:unchecked:pressed { + image: url(qss:images_dark-light/checkbox_unchecked_hover_light.svg); +} + +QTreeView::indicator:indeterminate, +QListView::indicator:indeterminate, +QTableView::indicator:indeterminate, +QColumnView::indicator:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QTreeView::indicator:indeterminate:hover, QTreeView::indicator:indeterminate:focus, QTreeView::indicator:indeterminate:pressed, +QListView::indicator:indeterminate:hover, +QListView::indicator:indeterminate:focus, +QListView::indicator:indeterminate:pressed, +QTableView::indicator:indeterminate:hover, +QTableView::indicator:indeterminate:focus, +QTableView::indicator:indeterminate:pressed, +QColumnView::indicator:indeterminate:hover, +QColumnView::indicator:indeterminate:focus, +QColumnView::indicator:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); +} + +QTreeView, +QListView, +QTableView, +QColumnView { + background-color: #444444; /* background of a lot of stuff including spreadsheets.*/ + border: 0px solid #696968; + color: White; + gridline-color: #696968; + border-radius: 0px; +} + +QTableView, +QListView { + background-color: rgba(0, 0, 0, 0.232); /* background of a lot of stuff including spreadsheets.*/ +} + + +QTreeView:disabled, +QListView:disabled, +QTableView:disabled, +QColumnView:disabled { + background-color: #1c1b22; + color: #c2c7cb; +} + +QTreeView:selected, +QListView:selected, +QTableView:selected, +QColumnView:selected { + background-color: #b216a0; + color: White; +} + +QTreeView:focus, +QListView:focus, +QTableView:focus, +QColumnView:focus { + border: 1px solid #770069; +} + +QTreeView::item:pressed, +QListView::item:pressed, +QTableView::item:pressed, +QColumnView::item:pressed { + background-color: #b216a0; +} + +QTreeView::item:selected:active, +QListView::item:selected:active, +QTableView::item:selected:active, +QColumnView::item:selected:active { + background-color: #b216a0; +} + +QTreeView::item:selected:!active, +QListView::item:selected:!active, +QTableView::item:selected:!active, +QColumnView::item:selected:!active { + color: White; + background-color: #353535; +} + +QTreeView::item:!selected:hover, +QListView::item:!selected:hover, +QTableView::item:!selected:hover, +QColumnView::item:!selected:hover { + outline: 0; + color: White; + background-color: #b216a0; +} + +QTableCornerButton::section { + background-color: #444444; + border: 1px transparent #696968; + border-radius: 0px; +} + +QTableView::item { + color: white; +} +QTableView { + /*qproperty-AliasedCellBackgroundColor: #f700ff;*/ + /*qproperty-aliasBgColor: #f700ff;*/ +} + +/* QHeaderView ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qheaderview + +--------------------------------------------------------------------------- */ +QHeaderView { + background-color: transparent; + text-align: center; +} + +QHeaderView:disabled { + background-color: #444444; + color: rgb(174, 174, 174); +} + +QHeaderView::section { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #333333, stop:1 #2a2a2a); + color: White; + border: 1px solid #2a2a2a; + font-size: 13px; + font-weight: bold; +} + +QHeaderView::section::horizontal { + padding-top: 1px; + padding-bottom: 1px; + padding-left: 5px; + padding-right: 0px; +} + +QHeaderView::section::horizontal::first, QHeaderView::section::horizontal::only-one { + border-left: 0px solid #696968; +} + +QHeaderView::section::horizontal:disabled { + color: #353535; +} + +QHeaderView::section::vertical { + padding-top: 1px; + padding-bottom: 0; + padding-left: 1px; + padding-right: 0px; + border-top: 0px solid #2a2a2a; +} + +QHeaderView::section::vertical::first, QHeaderView::section::vertical::only-one { + border-top: 2px solid #2a2a2a; +} + +QHeaderView::section::vertical:disabled { + border-top: 2px solid #2a2a2a; +} + +QHeaderView::down-arrow { + /* Those settings (border/width/height/background-color) solve bug */ + /* transparent arrow background and size */ + background-color: transparent; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/down_arrow_light.svg); +} + +QHeaderView::up-arrow { + background-color: transparent; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/up_arrow_light.svg); +} + +/* QToolBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbox +used in PATH + +--------------------------------------------------------------------------- */ +QToolBox { + padding: 0px; + border: 1px solid #696969; + border-radius: 4px; + background-color: transparent; +} + +QToolBox:selected { + padding: 0px; + border: 0px solid #b216a0; +} + +QToolBox::tab { + background-color: transparent; + border: 0px solid #696969; + color: white; + background-image: url(qss:images_dark-light/down_arrow_lighter.svg); + background-repeat: none; + background-position: center left; +} + +QToolBox::tab:disabled { + color: #696969; +} + +QToolBox::tab:selected { + background-color: #696969; + background-image: url(qss:images_dark-light/transparent.svg); + padding-right: 5px; + background-repeat: none; +} + +QToolBox::tab:selected:disabled { + background-color: #696969; + border-bottom: 0px solid #cccccc; + color: white; +} + +QToolBox::tab:!selected { + +} + +QToolBox::tab:!selected:disabled { + background-color: #444444; +} + +QToolBox::tab:hover { + background-color: #b216a0; + } + +QToolBox QScrollArea QWidget QWidget { + padding: 0px; + border: 0px; + background-color: transparent; +} + +/* QFrame ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe +https://doc.qt.io/qt-5/qframe.html#-prop +https://doc.qt.io/qt-5/qframe.html#details +https://stackoverflow.com/questions/14581498/qt-stylesheet-for-hline-vline-color + +--------------------------------------------------------------------------- */ +/* (dot) .QFrame fix #141, #126, #123 */ +.QFrame { + border-radius: 0px; + border: 0px solid #696968; + background-color: #696969; + /* No frame */ + /* HLine */ + /* HLine */ +} + +.QFrame[frameShape="0"] { + border-radius: 1.9px; + border: 1px solid #696968; +} + +.QFrame[frameShape="4"] { + max-height: 1px; + border: none; + background-color: #696968; +} + +.QFrame[frameShape="5"] { + max-width: 1px; + border: none; + background-color: #444444; +} + +/* QSplitter -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsplitter + +--------------------------------------------------------------------------- */ +QSplitter { + background-color: #3c3c3c; + spacing: 1px; + padding: 1px; + margin: 1px; +} + +QSplitter::handle { + margin: 0px 0px; + padding: 0px; +} + +QSplitter::handle:horizontal { + background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + width: 1px; +} + +QSplitter::handle:vertical { + background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + height: 1px; +} + +QSplitter::handle:hover { + background-image: url(qss:images_dark-light/splitter_horizontal_light.svg); + background-position: center center; + background-repeat: none; + background-color: #b216a0; +} + +/* QDateEdit, QDateTimeEdit ----------------------------------------------- + +--------------------------------------------------------------------------- */ +QDateEdit, QDateTimeEdit { + selection-background-color: #b216a0; + border-style: solid; + border: 1px solid #696968; + border-radius: 1.9px; + /* This fixes 103, 111 */ + padding-top: 2px; + /* This fixes 103, 111 */ + padding-bottom: 2px; + padding-left: 4px; + padding-right: 4px; + min-width: 10px; +} + +QDateEdit:on, QDateTimeEdit:on { + selection-background-color: #b216a0; +} + +QDateEdit::drop-down, QDateTimeEdit::drop-down { + subcontrol-origin: padding; + subcontrol-position: top right; + width: 12px; + border-left: 1px solid #696968; +} + +QDateEdit::down-arrow, QDateTimeEdit::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_light.svg); + height: 8px; + width: 8px; +} + +QDateEdit::down-arrow:on, QDateEdit::down-arrow:hover, QDateEdit::down-arrow:focus, QDateTimeEdit::down-arrow:on, QDateTimeEdit::down-arrow:hover, QDateTimeEdit::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_lighter.svg); +} + +QDateEdit QAbstractItemView, QDateTimeEdit QAbstractItemView { + background-color: #444444; + border-radius: 2px; + border: 1px solid #696968; + selection-background-color: #b216a0; +} + +/* QAbstractView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractView:hover { + border: 1px solid #b216a0; + color: White; +} + +QAbstractView:selected { + background: #b216a0; + color: White; +} + +/* PlotWidget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +PlotWidget { + /* Fix cut labels in plots #134 */ + padding: 0px; +} \ No newline at end of file diff --git a/src/Gui/Stylesheets/Light-blue.qss b/src/Gui/Stylesheets/Light-blue.qss index e26bc216b7..107e1a9ea0 100644 --- a/src/Gui/Stylesheets/Light-blue.qss +++ b/src/Gui/Stylesheets/Light-blue.qss @@ -1,71 +1,40 @@ /* ABOUT ============================================================================================================ -version 2.21 -Qt theme (stylesheet) specially developed for FreeCAD (https://www.freecad.org/). -It might work with other software that uses Qt styling. +Revised stylesheet based on the original from Pablo Gil Fernández made by MisterMaker - -LICENSE +KNOWN BUGS and TO DO ============================================================================================================ -Copyright (c) 2019 Pablo Gil Fernández +Please, follow the link to get updated information: +https://forum.freecad.org/viewtopic.php?t=78431 -This work is licensed under the Creative Commons Attribution-ShareAlike 4.0 International License. -To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/4.0/. - - -INSTALLATION +INSTALLATION WHEN NECESSARY ============================================================================================================ 1) Place the .qss files and /images/ folder in the path that fits your OS: OSX = /Users/[YOUR_USER_NAME]/Library/Preferences/FreeCAD/Gui/Stylesheets/ WINDOWS = C:/[INSTALLATION_PATH]/FreeCAD/data/Gui/Stylesheets/ LINUX = /home/[YOUR_USER_NAME]/.FreeCAD/Gui/Stylesheets/ - -CUSTOMIZATION ============================================================================================================ -If you would like to change the overall look/style of the theme, just find and replace following colors in the whole file: - BACKGROUND (darker to lighter) - black - #505050 - #6e6e6e - #828282 - #a2a2a0 - #b6b6b6 - #c8c8c8 - #c3c3c3 - #d2d2d2 - #dcdcdc - #e0e0e0 - #e6e6e6 - #f0f0f0 - #f5f5f5 = main background color - white - - SELECTION (darker to lighter) - #1b3774 - #2053c0 - #3874f2 - #5e90fa = main selection color - #6f9efa = used to build QSpinBox up and down buttons, it's used as color in the middle - #7cabf9 - #adc5ed - #cbd8e6 +TO MODIFY USE THESE COLORS: + #8cb0ff + #b0c9ff +See Qt documentation: + + - https://doc.qt.io/qt-5/stylesheet.html + - https://doc.qt.io/qt-5/stylesheet-reference.html + - https://doc.qt.io/qt-5/stylesheet-examples.html + +--------------------------------------------------------------------------- */ -KNOWN BUGS and TO DO -============================================================================================================ -Please, follow the link to get updated information: https://forum.freecad.org/viewtopic.php?f=10&t=12417 +/* Reset elements ------------------------------------------------------------ -*/ +Resetting everything helps to unify styles across different operating systems - -/*================================================================================================== -Reset elements -==================================================================================================*/ -/* Resetting everything helps to unify styles across different operating systems */ +--------------------------------------------------------------------------- */ * { padding: 0px; margin: 0px; @@ -73,2248 +42,2500 @@ Reset elements border-style: none; border-image: none; outline: 0; - color: #505050; /* Default color for labels and different text elements that usually use dark colors */ -} + } -/* specific reset for elements inside QToolBar */ -QToolBar * { + /* specific reset for elements inside QToolBar */ + QToolBar * { margin: 0px; padding: 0px; -} + } + /*hacks */ -/*================================================================================================== -Main window -==================================================================================================*/ -QMainWindow, -QDialog, -QDockWidget, -QToolBar { - background-color: #f5f5f5; /* main background color */ -} + Gui--PropertyEditor--PropertyEditor QLineEdit:read-only, + Gui--PropertyEditor--PropertyEditor QLineEdit:disabled, + Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:read-only, + Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:disabled { + color: transparent; + border-color: transparent; + background-color: transparent; + selection-color: transparent; + selection-background-color: transparent; -QMdiArea { - background-image: url(qss:images_dark-light/background_freecad_dark.svg); + } + Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel, + Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel:disabled { + color: transparent; + background-color: transparent; + border: none; + border-radius: 1px; + margin: 0px; + padding: 0px; + } + + Gui--PropertyEditor--PropertyEditor QSpinBox, + Gui--PropertyEditor--PropertyEditor QDoubleSpinBox, + Gui--PropertyEditor--PropertyEditor QAbstractSpinBox, + Gui--PropertyEditor--PropertyEditor QLineEdit, + Gui--PropertyEditor--PropertyEditor QComboBox { + margin-left: 0px; + margin-right: 0px; + padding-top: 0px; + padding-bottom: 0px; + + } + + /*================================================================================================== + Main window + ==================================================================================================*/ + QMainWindow, + QDialog, + QDockWidget, + QToolBar { + background-color: #F6F6F6; /* main background color */ + } + + QMdiArea { + background-image: url(qss:images_dark-light/background_freecad.svg); background-position: center center; background-repeat: no-repeat; -} + } + /*navgation src/Mod/Tux/NavigationIndicatorGui.py */ + Gui--NavigationIndicatorGui--BlenderNavigationStyle { + /*QAction#a4 {*/ + qproperty-icon: url(:/icons/icons/NavigationBlender_dark.svg); + } + /*===== + /* QWidget ---------------------------------------------------------------- - -/*================================================================================================== -Sub windows -==================================================================================================*/ -QMdiSubWindow { - border:1px solid #828282; - margin-top: 30px; - margin-left: 4px; - margin-right: 4px; - margin-bottom:4px; -} - - -/*================================================================================================== -MENUS -==================================================================================================*/ -QMenuBar, -QMenuBar::item { + --------------------------------------------------------------------------- */ + QWidget { + background-color: #F6F6F6; + border: 0px solid #C1C1C1; + padding: 0px; color: black; - background-color: #f5f5f5; /* main background color */ -} + selection-background-color: #8cb0ff; + selection-color: black; + } -QMenu, -QMenu::item { - color: black; - background-color: #f5f5f5; /* main background color */ - text-decoration: none; -} - -QMenuBar::item:selected, -QMenuBar::item:pressed, -QMenu::item:selected, -QMenu::item:pressed { - color: white; - background-color: #5e90fa; -} - -QMenu::right-arrow { - width: 10px; - height: 10px; - image:url(qss:images_dark-light/right_arrow_dark.svg); - margin-right: 2px; -} - -QMenu::right-arrow:selected { - image:url(qss:images_dark-light/right_arrow_lighter.svg); -} - -QMenu::item { - padding: 2px 4px; /* make room for icon at left */ - border: 1px solid transparent; /* reserve space for selection border */ -} - -QMenu::icon { - margin-left: 1px; - margin-right: 1px; -} - -QMenu::icon:checked { /* appearance of a 'checked' icon */ - background: #5e90fa; - border: 2px #5e90fa; - position: absolute; - border-radius: 2px; -} - -QMenu::separator { - height: 1px; - background-color: rgba(0,0,0,30); - margin: 6px 4px; -} - -QMenu::indicator:non-exclusive:checked { - color: white; -} - -/* Fix for elements inside a drop-down menu */ -QMenu QRadioButton, -QMenu QCheckBox, -QMenu QPushButton, -QMenu QToolButton { - color: black; /* same as regular QRadioButton and QCheckBox */ -} - -QMenu QRadioButton:hover, -QMenu QCheckBox:hover, -QMenu QPushButton:hover, -QMenu QToolButton:hover, -QMenu QPushButton:pressed, -QMenu QToolButton:pressed, -QMenu QPushButton:selected, -QMenu QToolButton:selected { - color: white; - background-color: #5e90fa; /* same as QMenu::item:selected and QMenu::item:pressed */ -} - -QMenu QRadioButton:disabled, -QMenu QCheckBox:disabled { - color: #6e6e6e; -} - -QMenu QRadioButton::indicator:disabled, -QMenu QCheckBox::indicator:disabled { - color: #6e6e6e; + QWidget:disabled { background-color: transparent; - border: 1px solid #6e6e6e; -} + color: #A3A3A3; + selection-background-color: #8cb0ff; + selection-color: #A3A3A3; + } + QWidget::item:selected { + background-color: #8cb0ff + ; + } -/*================================================================================================== -Tool bar -==================================================================================================*/ -QToolBar { - border: none; - padding: 2px; -} + /* Causes issue with colorselector. + QWidget::item:hover:!selected { + background-color: #8cb0ff; + }*/ -QToolBar::handle:top, -QToolBar::handle:bottom, -QToolBar::handle:horizontal { - background-image: url(qss:images_dark-light/Hmovetoolbar_dark.svg); - width: 10px; - margin: 4px 2px; - background-position: top right; - background-repeat: repeat-y; -} + /* QMainWindow ------------------------------------------------------------ -QToolBar::handle:left, -QToolBar::handle:right, -QToolBar::handle:vertical { - background-image: url(qss:images_dark-light/Vmovetoolbar_dark.svg); - height: 10px; - margin: 2px 4px; - background-position: left bottom; - background-repeat: repeat-x; -} + This adjusts the splitter in the dock widget, not qsplitter + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmainwindow -QToolBar::separator:top, -QToolBar::separator:bottom, -QToolBar::separator:horizontal { - width: 1px; - margin: 6px 4px; - background-color: rgba(0,0,0,30); -} - -QToolBar::separator:left, -QToolBar::separator:right, -QToolBar::separator:vertical { - height: 1px; - margin: 4px 6px; - background-color: rgba(0,0,0,30); -} - - -/*================================================================================================== -Group box -==================================================================================================*/ -QGroupBox { - color: rgba(0,0,0,120); - border:1px solid rgba(0, 0, 0, 20); /* lighter than its own border-color */; - border-radius: 3px; - margin-top: 10px; - padding: 6px; - background-color: rgba(255, 255, 255, 15); -} - -QGroupBox:title { - top: -8px; - left: 12px; -} - -/* NOTE: QGroupBox checkboxes are styles with regular ones so that the all get the same style */ -/* QGroupBox::indicator { - width: 13px; - height: 13px; -} - -QGroupBox::indicator:unchecked { - image: url(:/images/checkbox_unchecked.png); -} */ - - -/*================================================================================================== -Tooltip -==================================================================================================*/ -QToolTip { - color: white; - background-color: #828282; - /*opacity: 90%; doesn't correctly work */ - padding: 4px; - border-radius: 3px; /* has no effect */ -} - - -/*================================================================================================== -Dock widget -==================================================================================================*/ -QDockWidget { - color: rgba(0,0,0,120); - titlebar-close-icon: url(qss:images_dark-light/close_dark.svg); - titlebar-normal-icon: url(qss:images_dark-light/undock_dark.svg); -} - -QDockWidget::title { - text-align: center; - background-color: rgba(0,0,0,10); - border: 4px solid #f5f5f5; /* fix to simulate margin between this :title and tabs */ /* same as main background color */ - border-radius: 6px; /* bigger than normal due to previous border fix */ - padding: 4px 0px; /* also needed because of previous border fix */ -} - -QDockWidget::close-button, -QDockWidget::float-button { - border: none; - background: transparent; - border-radius: 3px; - subcontrol-origin: padding; - subcontrol-position: right center; -} - -QDockWidget::close-button { - right: 4px; -} - -QDockWidget::float-button { - right: 22px; -} - -QDockWidget::close-button:hover, -QDockWidget::float-button:hover { - background-color: rgba(0,0,0,15); -} - -QDockWidget::close-button:pressed, -QDockWidget::float-button:pressed { - background-color: rgba(0,0,0,30); -} - -/* fix for Python Console (probably there is a smarter way to arrive to it) */ -QDockWidget > QFrame { - background-color: #f0f0f0; - border: 1px solid #c3c3c3; -} - - -/*================================================================================================== -Progress bar -==================================================================================================*/ -QProgressBar, -QProgressBar:horizontal { - color: white; - background-color: rgba(0,0,0,10); - text-align: center; - border: 1px solid rgba(0,0,0,80); + --------------------------------------------------------------------------- */ + QMainWindow::separator { + /*background-color: #f6f6f6;*/ + border: 0px solid #C1C1C1; + spacing: 0px; padding: 1px; - border-radius: 3px; -} -QProgressBar::chunk, -QProgressBar::chunk:horizontal { - background-color: qlineargradient(spread:pad, x1:1, y1:0.545, x2:1, y2:0, stop:0 #3874f2, stop:1 #5e90fa); - border-radius: 3px; -} + } + QMainWindow::separator:vertical:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,stop:0.2 transparent,stop:0.5 #8cb0ff, stop:0.8 transparent); + /*background-color: #8cb0ff;*/ + image: url(qss:images_dark-light/splitter_vertical_dark.svg); + } -/*================================================================================================== -Scroll -==================================================================================================*/ -QAbstractScrollArea { - border-radius: 2px; - background-color: transparent; -} + QMainWindow::separator:horizontal:hover { + background-color: qlineargradient(x1:0, y1:0, x2:1, y2:0,stop:0.2 transparent,stop:0.5 #8cb0ff, stop:0.8 transparent); + /*background-color: #8cb0ff;*/ + image: url(qss:images_dark-light/splitter_horizontal_dark.svg); + } -QAbstractScrollArea::corner { + QMainWindow::separator:horizontal { + width: 4px; + margin-top: 0.1px; + margin-bottom: 0.1px; + /* image: url(qss:images_dark-light/splitter_horizontal_light.svg);*/ + } + + QMainWindow::separator:vertical { + height: 4px; + margin-left: 0.1px; + margin-right: 0.1px; + /* image: url(qss:images_dark-light/splitter_vertical_light.svg);*/ + } + + /* QToolTip --------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtooltip + + --------------------------------------------------------------------------- */ + QToolTip { + background-color: #ffffff; + color: black; + /* If you remove the border property, background stops working on Windows */ border: none; - background-color: transparent; -} + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Remove opacity, fix #174 - may need to use RGBA */ + } -QScrollBar:horizontal { - background-color: transparent; - height: 15px; - margin: 0px; -} + /* QStatusBar ------------------------------------------------------------- -QScrollBar::handle:vertical, -QScrollBar::handle:horizontal { - background-color: rgba(0,0,0,80); -} + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qstatusbar -QScrollBar::handle:vertical:hover, -QScrollBar::handle:horizontal:hover { - background-color: rgba(0,0,0,100); -} + --------------------------------------------------------------------------- */ + QStatusBar { + border: 0px solid #C1C1C1; + /* Fixes Spyder #9120, #9121 */ + background: #F6F6F6; + /* Fixes #205, black vertical borders separating items */ + } -QScrollBar::handle:horizontal { - min-width: 5px; - border-radius: 3px; - margin: 4px 15px; -} + QStatusBar::item { + border: none; + } -QScrollBar::sub-line:horizontal { - margin: 1px 3px 0px 3px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/left_arrow_dark.svg); - width: 6px; - height: 10px; - subcontrol-position: left; - subcontrol-origin: margin; -} + QStatusBar QToolTip { + background-color: #F6F6F6; + border: 1px solid #C1C1C1; + color: #F6F6F6; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Reducing transparency to read better */ + opacity: 230; + } -QScrollBar::add-line:horizontal { - margin: 1px 3px 0px 3px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/right_arrow_dark.svg); - width: 6px; - height: 10px; - subcontrol-position: right; - subcontrol-origin: margin; -} + QStatusBar QLabel { + /* Fixes Spyder #9120, #9121 */ + background: transparent; + } -QScrollBar::sub-line:horizontal:hover, -QScrollBar::sub-line:horizontal:on { - border-image: url(qss:images_dark-light/left_arrow_darker.svg); -} + /* QCheckBox -------------------------------------------------------------- -QScrollBar::add-line:horizontal:hover, -QScrollBar::add-line:horizontal:on { - border-image: url(qss:images_dark-light/right_arrow_darker.svg); -} + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcheckbox -QScrollBar::up-arrow:horizontal, -QScrollBar::down-arrow:horizontal { - background-color: none; -} - -QScrollBar::add-page:horizontal, -QScrollBar::sub-page:horizontal { - background-color: transparent; -} - -QScrollBar:vertical { - background-color: transparent; - width: 15px; - margin: 0px; -} - -QScrollBar::handle:vertical { - min-height: 5px; - border-radius: 3px; - margin: 15px 4px; -} - -QScrollBar::sub-line:vertical { - margin: 3px 0px 3px 1px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/up_arrow_dark.svg); - height: 6px; - width: 10px; - subcontrol-position: top; - subcontrol-origin: margin; -} - -QScrollBar::add-line:vertical { - margin: 3px 0px 3px 1px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/down_arrow_dark.svg); - height: 6px; - width: 10px; - subcontrol-position: bottom; - subcontrol-origin: margin; -} - -QScrollBar::sub-line:vertical:hover, -QScrollBar::sub-line:vertical:on { - border-image: url(qss:images_dark-light/up_arrow_darker.svg); -} - -QScrollBar::add-line:vertical:hover, -QScrollBar::add-line:vertical:on { - border-image: url(qss:images_dark-light/down_arrow_darker.svg); -} - -QScrollBar::up-arrow:vertical, -QScrollBar::down-arrow:vertical { - background-color: none; -} - -QScrollBar::add-page:vertical, -QScrollBar::sub-page:vertical { - background-color: transparent; -} - - -/*================================================================================================== -Tab bar -==================================================================================================*/ -QTabWidget::pane { - background-color: transparent; /* temporal (transparent background) */ /* tab content background color */ - position: absolute; -} - -QTabWidget::pane:top { - top: -1px; - border-top: 1px solid #d2d2d2; -} - -QTabWidget::pane:bottom { - bottom: -1px; - border-bottom: 1px solid #d2d2d2; -} - -QTabWidget::pane:left { - right: -1px; - border-right: 1px solid #d2d2d2; -} - -QTabWidget::pane:right { - left: -1px; - border-left: 1px solid #d2d2d2; -} - -QTabWidget::tab-bar:top, -QTabWidget::tab-bar:bottom { - left: 10px; -} - -QTabWidget::tab-bar:left, -QTabWidget::tab-bar:right { - top: 10px; -} - -QTabBar { - qproperty-drawBase: 0; /* important */ - background-color: transparent; -} - -/* Workaround for QTabBars created from docked QDockWidgets which don't draw the border if not set and reset as follows: */ -QTabBar { - border-top: 1px solid #d2d2d2; /* set color for all QTabBars */ -} -QDockWidget QTabBar { - border-color: transparent; /* set color for all QTabBars but ones created from QDockWidget */ -} -QDialog QTabBar { - border-color: transparent; /* set color for QTabBars inside Preferences dialog */ -} -/* end fix */ - -QTabBar::tab { - background-color: transparent; + --------------------------------------------------------------------------- */ + QCheckBox { + color: black; + padding: 0px; + outline: none; border: 1px solid transparent; - padding: 3px; -} - -QTabBar::tab:top, -QTabBar::tab:bottom { - border-top-width: 4px; /* same as selected tab colored border in order to center close-button */ - border-bottom-width: 4px; /* same as selected tab colored border in order to center close-button */ - min-width: 11ex; - margin-left: 2px; - margin-right: 2px; -} - -QTabBar::tab:left, -QTabBar::tab:right { - border-left-width: 4px; /* same as selected tab colored border in order to center close-button */ - border-right-width: 4px; /* same as selected tab colored border in order to center close-button */ - min-height: 14ex; - margin-top: 2px; - margin-bottom: 2px; -} - -QTabBar::tab:selected { - background-color: #f5f5f5; /* same as tab content background color */ - border-color: #d2d2d2; -} - -QTabBar::tab:top:selected { - border-top: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #5e90fa, stop:1 #3874f2); /* selection color */ - border-bottom-color: #f5f5f5; /* same as tab content background color */ -} - -QTabBar::tab:bottom:selected { - border-bottom: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #5e90fa, stop:1 #3874f2); /* selection color */ - border-top-color: #f5f5f5; /* same as tab content background color */ -} - -QTabBar::tab:right:selected { - border-left: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:1, y2:0, stop:0 #5e90fa, stop:1 #3874f2); /* selection color */ - border-right-color: #f5f5f5; /* same as tab content background color */ -} - -QTabBar::tab:left:selected { - border-right: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:1, y2:0, stop:0 #5e90fa, stop:1 #3874f2); /* selection color */ - border-left-color: #f5f5f5; /* same as tab content background color */ -} - -QTabBar::tab:!selected { - color: rgba(0,0,0,160); -} - -QTabBar::tab:!selected:hover { - color: rgba(0,0,0,220); - background-color: rgba(0,0,0,20); -} - -QTabBar::tab:first:selected { - margin-left: 0; /* the first selected tab has nothing to overlap with on the left */ -} - -QTabBar::tab:last:selected { - margin-right: 0; /* the last selected tab has nothing to overlap with on the right */ -} - -QTabBar::tab:only-one { - margin: 0; /* if there is only one tab, we don't want overlapping margins */ -} - -/* hack to access Preference TabBar background */ -QDialog#Gui__Dialog__DlgPreferences > QFrame QFrame { - background-color: transparent; /* main background color (in Windows is #f5f5f5) */ -} - -/* fix for previous hack that broke QTabWidget background on Windows */ -QDialog#Gui__Dialog__DlgPreferences QTabWidget::pane { - background-color: transparent; /* temporal (transparent background) */ -} - -/* hack to correctly align Preferences icon list on OSX */ -QDialog#Gui__Dialog__DlgPreferences > QListView { - min-width: 130px; -} - -/* unique styles for sections inside Preferences */ -QDialog#Gui__Dialog__DlgPreferences > QListView::item { - border-radius: 6px; -} - -QDialog#Gui__Dialog__DlgPreferences > QListView::item:hover { - background-color: #dcdcdc; -} - -QDialog#Gui__Dialog__DlgPreferences > QListView::item:selected { - color: white; - background-color: #5e90fa; -} - - -/*================================================================================================== -Tab bar buttons -==================================================================================================*/ -/* Close button */ -QTabBar::close-button { - subcontrol-origin: margin; - subcontrol-position: center right; /* only works for QT 4.6 and newer */; - border-radius: 2px; - background-image: url(qss:images_dark-light/close_dark.svg); - background-position: center center; - background-repeat: none; -} - -QTabBar::close-button:hover { - background-color: rgba(0,0,0,20); -} - -QTabBar::close-button:pressed { - background-color: rgba(0,0,0,30); -} - -/* Fix for lists inside Model tab */ -QDockWidget QTreeView, -QDockWidget QListView, -QDockWidget QTableView { - margin: 6px; - border: 1px solid #c3c3c3; /* same as regular QTreeView, QListView and QTableView */ - min-height: 40px; /* necessary in some areas of FreeCAD */ -} - -/* Buttons to scroll tabs if there is not space to show all of them: */ -QTabBar::scroller { - width: 20px; /* the width of the scroll buttons */ -} - -QTabBar QToolButton, -QTabBar QToolButton:hover { - background-color: #f5f5f5; /* same as main background color */ -} - -QTabBar QToolButton::right-arrow:enabled { - image: url(qss:images_dark-light/right_arrow_dark.svg); -} - -QTabBar QToolButton::right-arrow:disabled, -QTabBar QToolButton::right-arrow:off { - image: url(qss:images_dark-light/right_arrow_disabled_dark.svg); -} - -QTabBar QToolButton::right-arrow:hover { - image: url(qss:images_dark-light/right_arrow_darker.svg); -} - - QTabBar QToolButton::left-arrow:enabled { - image: url(qss:images_dark-light/left_arrow_dark.svg); -} - - QTabBar QToolButton::left-arrow:disabled, - QTabBar QToolButton::left-arrow:off { - image: url(qss:images_dark-light/left_arrow_disabled_dark.svg); -} - - QTabBar QToolButton::left-arrow:hover { - image: url(qss:images_dark-light/left_arrow_darker.svg); -} - - QTabBar QToolButton::up-arrow:enabled { - image: url(qss:images_dark-light/up_arrow_dark.svg); -} - - QTabBar QToolButton::up-arrow:disabled, - QTabBar QToolButton::up-arrow:off { - image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); -} - - QTabBar QToolButton::up-arrow:hover { - image: url(qss:images_dark-light/up_arrow_darker.svg); -} - - QTabBar QToolButton::down-arrow:enabled { - image: url(qss:images_dark-light/down_arrow_dark.svg); -} - - QTabBar QToolButton::down-arrow:disabled, - QTabBar QToolButton::down-arrow:off { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - - QTabBar QToolButton::down-arrow:hover { - image: url(qss:images_dark-light/down_arrow_darker.svg); -} - -QTabBar::tear { - /* default OS tear better */ -} - - -/*================================================================================================== -Tree and list views -==================================================================================================*/ -QTreeView, -QListView, -QTableView { - background-color: #f0f0f0; - alternate-background-color: #e6e6e6; /* related with QListView background */ - border: 1px solid #c3c3c3; - selection-color: white; - selection-background-color: #5e90fa; /* should be similar to QListView::item selected background-color */ - show-decoration-selected: 1; /* make the selection span the entire width of the view */ - border-radius: 3px; -} - -QListView::item:hover, -QTreeView::item:hover { - background-color: transparent; /* fix to homogenize it on all OSs */ -} - -QListView::item:selected, -QTreeView::item:selected { - color: white; /* should be similar to QListView selection-color */ - background-color: #5e90fa; /* should be similar to QListView selection-background-color */ - show-decoration-selected: 1; /* make the selection span the entire width of the view */ -} - -/* Property Editor QTreeView (FreeCAD custom widget) */ -Gui--PropertyEditor--PropertyEditor { - gridline-color: #d2d2d2; /* same as Group header background */ -} - -/* fix for column items background when a link is present */ -Gui--PropertyEditor--PropertyEditor > QWidget > QFrame:focus { - background-color: #cbd8e6; /* same as focused background color */ -} - -/* hack to hide weird redundant information inside the value of a Placement cell */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel, -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel:disabled { - color: transparent; background-color: transparent; - border: none; - border-radius: 0px; - margin: 0px; - padding: 0px; -} + } -/* hack to hide non editable cells inside Property values */ -Gui--PropertyEditor--PropertyEditor QLineEdit:read-only, -Gui--PropertyEditor--PropertyEditor QLineEdit:disabled, -Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:read-only, -Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:disabled { - color: transparent; - border-color: transparent; + QCheckBox:focus { + border: 1px solid #b0c9ff; + } + + QCheckBox QWidget:disabled { background-color: transparent; - selection-color: transparent; - selection-background-color: transparent; -} + color: #A3A3A3; + } -/* hack to hide weird redundant information inside cells with links and no editable data (but editable via "..." button) */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel { + QCheckBox::indicator { color: black; - background-color: #cbd8e6; -} + background-color: #ffffff; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/checkbox_unchecked_dark.svg); + } -/* hack to disable margin inside Property values to following elements */ -Gui--PropertyEditor--PropertyEditor QSpinBox, -Gui--PropertyEditor--PropertyEditor QDoubleSpinBox, -Gui--PropertyEditor--PropertyEditor QAbstractSpinBox, -Gui--PropertyEditor--PropertyEditor QLineEdit, -Gui--PropertyEditor--PropertyEditor QComboBox { - margin-left: 0px; - margin-right: 0px; - padding-top: 0px; - padding-bottom: 0px; -} + QCheckBox::indicator:unchecked { + background-color: #ffffff; + image:url(qss:images_dark-light/checkbox_unchecked_dark.svg); + } -/* reset min-height to 0px inside list views */ -QTreeView > QWidget > QComboBox, -QTreeView > QWidget > QAbstractSpinBox, -QTreeView > QWidget > QSpinBox, -QTreeView > QWidget > QDoubleSpinBox, -QTreeView > QWidget > QLineEdit, -QTreeView > QWidget > QTextEdit, -QTreeView > QWidget > QTimeEdit, -QTreeView > QWidget > QDateEdit, -QTreeView > QWidget > QDateTimeEdit, -QTreeView > QWidget > Gui--ColorButton { - min-height: 0px; -} + QCheckBox::indicator:unchecked:hover, QCheckBox::indicator:unchecked:focus, QCheckBox::indicator:unchecked:pressed { + background-color: #8cb0ff; + image:url(qss:images_dark-light/checkbox_unchecked_dark.svg); + } -/* set border-radius to 0px inside list views */ -QTreeView > QWidget > QComboBox, -QTreeView > QWidget > QAbstractSpinBox, -QTreeView > QWidget > QSpinBox, -QTreeView > QWidget > QDoubleSpinBox, -QTreeView > QWidget > QLineEdit, -QTreeView > QWidget > QTextEdit, -QTreeView > QWidget > QTimeEdit, -QTreeView > QWidget > QDateEdit, -QTreeView > QWidget > QDateTimeEdit, -QTreeView > QWidget > QComboBox:drop-down, -QTreeView > QWidget > QAbstractSpinBox:up-button, -QTreeView > QWidget > QSpinBox:up-button, -QTreeView > QWidget > QDoubleSpinBox:up-button, -QTreeView > QWidget > QTimeEdit:up-button, -QTreeView > QWidget > QDateEdit:up-button, -QTreeView > QWidget > QDateTimeEdit:up-button, -QTreeView > QWidget > QAbstractSpinBox:down-button, -QTreeView > QWidget > QSpinBox:down-button, -QTreeView > QWidget > QDoubleSpinBox:down-button, -QTreeView > QWidget > QTimeEdit:down-button, -QTreeView > QWidget > QDateEdit:down-button, -QTreeView > QWidget > QDateTimeEdit:down-button, -QTreeView > QWidget > Gui--ColorButton { - border-radius: 0px; -} + QCheckBox::indicator:unchecked:disabled { + background-color: #F6F6F6; + image:url(qss:images_dark-light/checkbox_unchecked_disabled.svg); + } -/* set focus colors to best viewing the editable fields */ -QTreeView > QWidget > QComboBox:focus, -QTreeView > QWidget > QAbstractSpinBox:focus, -QTreeView > QWidget > QSpinBox:focus, -QTreeView > QWidget > QDoubleSpinBox:focus, -QTreeView > QWidget > QLineEdit:focus, -QTreeView > QWidget > QTextEdit:focus, -QTreeView > QWidget > QTimeEdit:focus, -QTreeView > QWidget > QDateEdit:focus, -QTreeView > QWidget > QDateTimeEdit:focus { - border-color: #cbd8e6; /* same as focused background color */ - border-bottom-color: #7cabf9; /* same as focused border color */ -} + QCheckBox::indicator:checked { + background-color: #ffffff; + /*border: 1px solid #C1C1C1; /* QRadioButton has the same color */ + image:url(qss:images_dark-light/checkbox_dark.svg); + } -QTreeView > QWidget > QAbstractSpinBox:read-only, -QTreeView > QWidget > QSpinBox:read-only, -QTreeView > QWidget > QDoubleSpinBox:read-only, -QTreeView > QWidget > QLineEdit:read-only, -QTreeView > QWidget > QTextEdit:read-only, -QTreeView > QWidget > QTimeEdit:read-only, -QTreeView > QWidget > QDateEdit:read-only, -QTreeView > QWidget > QDateTimeEdit:read-only { - color: transparent; - background-color: transparent; - border-color: transparent; -} + QCheckBox::indicator:checked:hover, QCheckBox::indicator:checked:pressed { + background-color: #8cb0ff; + } -/* Fix to correctly (not totally) draw QTextEdit on OSX at Page properties: "Page result", "Template" and "Editable Texts" */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QWidget { - min-height: 14px; - border-radius: 0px; /* reset */ -} + QCheckBox::indicator:checked:disabled { + background-color: #F6F6F6; + image: url(qss:images_dark-light/check_dark.svg); + } + QCheckBox::indicator:indeterminate { + background-color: #ffffff; + border: 1px solid #C1C1C1; + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); + } -/*================================================================================================== -Header of tree and list views -==================================================================================================*/ -QHeaderView { - background-color: #c3c3c3; - border-top-left-radius: 2px; /* 1px less than its container */ - border-top-right-radius: 2px; /* 1px less than its container */ - border-bottom-left-radius: 0px; - border-bottom-right-radius: 0px; -} + QCheckBox::indicator:indeterminate:disabled { + background-color: #F6F6F6; + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); + } -QHeaderView::section { - border:none; - padding: 4px 6px; - background-color: #c3c3c3; -} + QCheckBox::indicator:indeterminate:hover, QCheckBox::indicator:indeterminate:pressed { + background-color: #8cb0ff; /* QRadioButton has the same color */ + } -QHeaderView::section:horizontal { - padding: 4px 6px; /* left and right value similar to QHeaderView::section */ - border-right: 1px solid rgba(0,0,0,30); -} + /* QGroupBox -------------------------------------------------------------- -QHeaderView::section:vertical { - border-bottom: 1px solid rgba(0,0,0,30); -} + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qgroupbox -QTableCornerButton::section { - background-color: #c3c3c3; - border-top: none; - border-left: none; - border-right: 1px solid rgba(0,0,0,30); - border-bottom: 1px solid rgba(0,0,0,30); -} - -QHeaderView::section:last { - border-right: none; -} - -QHeaderView::up-arrow { - image: url(qss:images_dark-light/up_arrow_dark.svg); -} - -QHeaderView::up-arrow:hover { - image: url(qss:images_dark-light/up_arrow_darker.svg); -} - -QHeaderView::down-arrow { - image: url(qss:images_dark-light/down_arrow_dark.svg); -} - -QHeaderView::down-arrow:hover { - image: url(qss:images_dark-light/down_arrow_darker.svg); -} - -/* Group header inside Property Editor (FreeCAD custom widget) */ -Gui--PropertyEditor--PropertyEditor { - qproperty-groupTextColor: #828282; /* same as main background color */ - qproperty-groupBackground: #d2d2d2; /* same as item gridlines */ -} - - -/*================================================================================================== -Branch system for QTreeViews -==================================================================================================*/ -QTreeView::branch { - background: transparent; -} - -QTreeView::branch:has-siblings:!adjoins-item { - border-image: url(qss:images_dark-light/branch_vline_dark.svg) 0; -} - -QTreeView::branch:has-siblings:adjoins-item { - border-image: url(qss:images_dark-light/branch_more_dark.svg) 0; -} - -QTreeView::branch:!has-children:!has-siblings:adjoins-item { - border-image: url(qss:images_dark-light/branch_end_dark.svg) 0; -} - -QTreeView::branch:closed:has-children:has-siblings { - border-image: url(qss:images_dark-light/branch_more_closed_dark.svg) 0; -} - -QTreeView::branch:has-children:!has-siblings:closed { - border-image: url(qss:images_dark-light/branch_end_closed_dark.svg) 0; -} - -QTreeView::branch:open:has-children:has-siblings { - border-image: url(qss:images_dark-light/branch_more_open_dark.svg) 0; -} - -QTreeView::branch:open:has-children:!has-siblings { - border-image: url(qss:images_dark-light/branch_end_open_dark.svg) 0; -} - - -/*================================================================================================== -Splitter and windows separator -==================================================================================================*/ -QSplitter::handle { - margin: 0px 11px; - padding: 0px; -} - -QSplitter::handle:horizontal { - background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); - background-position: center center; - background-repeat: none; - margin: 4px 2px 4px 2px; - width: 2px; -} - -QSplitter::handle:vertical { - background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); - background-position: center center; - background-repeat: none; - margin: 2px 4px 2px 4px; - height: 2px; -} - -/* Similar to the splitter is the following window separator (but horizontal/vertical is on the opposite way) */ -QMainWindow::separator { - background-position: center center; - background-repeat: none; -} - -QMainWindow::separator:horizontal { - height: 2px; - background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); - margin: 4px 2px 4px 2px; -} - -QMainWindow::separator:vertical { - width: 2px; - background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); - margin: 2px 4px 2px 4px; -} - - -/*================================================================================================== -Text/Python editor (macros, etc...) -==================================================================================================*/ -QPlainTextEdit, -QPlainTextEdit:focus { - background-color: #f0f0f0; - selection-color: white; - selection-background-color: #3874f2; - border: 1px solid #c3c3c3; - border-radius: 3px; - margin: 4px; -} - - -/*================================================================================================== -Tasks panel (custom FreeCAD class) -==================================================================================================*/ -/* Action group */ -QFrame[class="panel"] { - background-color: transparent; /* temporal (transparent background) */ -} - -QSint--ActionGroup { - padding: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ - margin: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ -} - -/* Separator line */ -QSint--ActionGroup QFrame[height="1"], -QSint--ActionGroup QFrame[height="2"], -QSint--ActionGroup QFrame[height="3"], -QSint--ActionGroup QFrame[width="1"], -QSint--ActionGroup QFrame[width="2"], -QSint--ActionGroup QFrame[width="3"] { - border-color: rgba(0,0,0,60); -} - -/* Panel header */ -QSint--ActionGroup QFrame[class="header"] { - border: none; - background-color: #b6b6b6; /* Task Panel Header background color */ - border-top-left-radius: 3px; - border-top-right-radius: 3px; - border-bottom-left-radius: 0px; - border-bottom-right-radius: 0px; - margin: 0px; - padding: 0px; -} - -QSint--ActionGroup QFrame[class="header"]:hover { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #5e90fa, stop:1 #3874f2); -} - -QSint--ActionGroup QToolButton[class="header"] { - color: white; /* Task Panel Header text color */ - text-align: left; + --------------------------------------------------------------------------- */ + QGroupBox { font-weight: bold; - border: none; - margin: 0px; - padding: 0px; -} - -QSint--ActionGroup QFrame[class="header"] QLabel { - background-color: transparent; - background-image: url(qss:images_dark-light/down_arrow_light.svg); - background-repeat: none; - background-position: center center; - padding: 0px; - margin: 0px; -} - -QSint--ActionGroup QFrame[class="header"] QLabel:hover { - background-color: transparent; - background-image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"] { - background-color: transparent; - background-image: url(qss:images_dark-light/up_arrow_light.svg); - background-repeat: none; - background-position: center center; - padding: 0px; - margin: 0px; -} - -QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"]:hover { - background-color: transparent; - background-image: url(qss:images_dark-light/up_arrow_lighter.svg); -} - -QSint--ActionGroup QFrame[class="content"] { - background-color: #e6e6e6; /* Task Panel background color */ - margin: 0px; - padding: 0px; - border: none; - border-top-left-radius: 0px; - border-top-right-radius: 0px; - border-bottom-left-radius: 3px; - border-bottom-right-radius: 3px; -} - -QSint--ActionGroup QFrame[class="content"] > QWidget { - background-color: #e6e6e6; /* Task Panel background color */ -} - -/* Fixs for tabs inside Task Panel */ -QSint--ActionGroup QFrame[class="content"] QTabBar::tab:top:selected { - border-bottom-color: #e6e6e6; /* same as Task Panel background color */ -} - -QSint--ActionGroup QFrame[class="content"] QTabBar::tab:bottom:selected { - border-top-color: #e6e6e6; /* same as Task Panel background color */ -} - -QSint--ActionGroup QFrame[class="content"] QTabBar::tab:right:selected { - border-right-color: #e6e6e6; /* same as Task Panel background color */ -} - -QSint--ActionGroup QFrame[class="content"] QTabBar::tab:left:selected { - border-left-color: #e6e6e6; /* same as Task Panel background color */ -} - -/* Fix for buttons with icons that showed cropped (still not happy with result) */ -QSint--ActionGroup QFrame[class="content"] > QWidget > QPushButton { - padding: 2px; /* bigger padding crops text and icons... */ - margin: 0px; -} - -/* Fix for lists inside task panels */ -/* QSint--ActionGroup QFrame[class="content"] QTreeView, -QSint--ActionGroup QFrame[class="content"] QListView, -QSint--ActionGroup QFrame[class="content"] QTableView { - color: #f5f5f5; - background-color: #787878; -} */ - - -/*================================================================================================== -Buttons -==================================================================================================*/ -/* Common */ -QComboBox, -QAbstractSpinBox, -QSpinBox, -QDoubleSpinBox, -QLineEdit, -QTextEdit, -QTimeEdit, -QDateEdit, -QDateTimeEdit { - color: #6e6e6e; - background-color: #e0e0e0; - selection-color: white; - selection-background-color: #5e90fa; - border: 1px solid #e0e0e0; - border-radius: 3px; - min-width: 50px; /* it ensures the default value is correctly displayed */ - min-height: 20px; /* important to be a pair number in order to up/down buttons to be divisible by two (if not set could create a blank line in Ubuntu. Its downside is that it's needed to reset it (min-width: 0px) on following elements that can't have it such as fields inside QToolBar and inside QTreeView (Property editor) */ - padding: 1px 2px; /* temporal: could don't be compatible with elements inside Tree/List view */ -} - -/* more contrast for QTexEdits */ -QTextEdit { - color: black; -} - -/* shifts text/number editable field to the left to make space for the up/down or drop-down buttons */ -QComboBox, -QAbstractSpinBox, -QSpinBox, -QDoubleSpinBox, -QTimeEdit, -QDateEdit, -QDateTimeEdit { - padding-right: 20px; -} - -/* when QTextEdit are no editable (like Report view)*/ -QTextEdit:!editable, -QTextEdit:!editable:focus { - background-color: #f0f0f0; - border: 1px solid #c3c3c3; -} - -QComboBox:focus, -QAbstractSpinBox:focus, -QSpinBox:focus, -QDoubleSpinBox:focus, -QLineEdit:focus, -QTextEdit:focus, -QTimeEdit:focus, -QDateEdit:focus, -QDateTimeEdit:focus { - color: black; - border-color: #7cabf9; - border-right-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #5e90fa, stop:1 #7cabf9); /* same as up/down or drop-down button color */ - background-color: #cbd8e6; -} - -QComboBox:disabled, -QAbstractSpinBox:disabled, -QSpinBox:disabled, -QDoubleSpinBox:disabled, -QLineEdit:disabled, -QTextEdit:disabled, -QTimeEdit:disabled, -QDateEdit:disabled, -QDateTimeEdit:disabled { - color: #c3c3c3; - background-color: #e0e0e0; /* same as enabled color */ - border-color: #e0e0e0; /* same as enabled color */ -} - -QAbstractSpinBox:up-button, -QSpinBox:up-button, -QDoubleSpinBox:up-button, -QTimeEdit:up-button, -QDateEdit:up-button, -QDateTimeEdit:up-button, -QAbstractSpinBox:down-button, -QSpinBox:down-button, -QDoubleSpinBox:down-button, -QTimeEdit:down-button, -QDateEdit:down-button, -QDateTimeEdit:down-button { - background-color: #d2d2d2; - subcontrol-origin: border; /* important */ - width: 20px; /* same as QComboBox ... QDateTimeEdit padding-right */ -} - -QAbstractSpinBox:up-button, -QSpinBox:up-button, -QDoubleSpinBox:up-button, -QTimeEdit:up-button, -QDateEdit:up-button, -QDateTimeEdit:up-button { - subcontrol-position: top right; - border-top-right-radius: 3px; -} - -QAbstractSpinBox:down-button, -QSpinBox:down-button, -QDoubleSpinBox:down-button, -QTimeEdit:down-button, -QDateEdit:down-button, -QDateTimeEdit:down-button { - subcontrol-position: bottom right; - border-bottom-right-radius: 3px; -} - -QAbstractSpinBox:up-button:focus, -QSpinBox:up-button:focus, -QDoubleSpinBox:up-button:focus, -QTimeEdit:up-button:focus, -QDateEdit:up-button:focus, -QDateTimeEdit:up-button:focus { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #6f9efa, stop:1 #7cabf9); -} - -QAbstractSpinBox:down-button:focus, -QSpinBox:down-button:focus, -QDoubleSpinBox:down-button:focus, -QTimeEdit:down-button:focus, -QDateEdit:down-button:focus, -QDateTimeEdit:down-button:focus { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #5e90fa, stop:1 #6f9efa); -} - -QAbstractSpinBox:up-button:disabled, -QSpinBox:up-button:disabled, -QDoubleSpinBox:up-button:disabled, -QTimeEdit:up-button:disabled, -QDateEdit:up-button:disabled, -QDateTimeEdit:up-button:disabled, -QAbstractSpinBox:down-button:disabled, -QSpinBox:down-button:disabled, -QDoubleSpinBox:down-button:disabled, -QTimeEdit:down-button:disabled, -QDateEdit:down-button:disabled, -QDateTimeEdit:down-button:disabled { - background-color: transparent; -} - -QAbstractSpinBox::up-arrow, -QSpinBox::up-arrow, -QDoubleSpinBox::up-arrow, -QTimeEdit::up-arrow, -QDateEdit::up-arrow, -QDateTimeEdit::up-arrow { - image: url(qss:images_dark-light/up_arrow_dark.svg); - top: 2px; /* fix symmetry between up and down images */ -} - -QAbstractSpinBox::up-arrow:focus, -QSpinBox::up-arrow:focus, -QDoubleSpinBox::up-arrow:focus, -QTimeEdit::up-arrow:focus, -QDateEdit::up-arrow:focus, -QDateTimeEdit::up-arrow:focus { - image: url(qss:images_dark-light/up_arrow_lighter.svg); -} - -QAbstractSpinBox::up-arrow:off, -QSpinBox::up-arrow:off, -QDoubleSpinBox::up-arrow:off, -QTimeEdit::up-arrow:off, -QDateEdit::up-arrow:off, -QDateTimeEdit::up-arrow:off { - image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); -} - -QAbstractSpinBox::up-arrow:disabled, -QSpinBox::up-arrow:disabled, -QDoubleSpinBox::up-arrow:disabled, -QTimeEdit::up-arrow:disabled, -QDateEdit::up-arrow:disabled, -QDateTimeEdit::up-arrow:disabled { - image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); -} - -QAbstractSpinBox::down-arrow, -QSpinBox::down-arrow, -QDoubleSpinBox::down-arrow, -QTimeEdit::down-arrow, -QDateEdit::down-arrow, -QDateTimeEdit::down-arrow { - image: url(qss:images_dark-light/down_arrow_dark.svg); - bottom: 0px; /* fix simetry between up and down images */ -} - -QAbstractSpinBox::down-arrow:focus, -QSpinBox::down-arrow:focus, -QDoubleSpinBox::down-arrow:focus, -QTimeEdit::down-arrow:focus, -QDateEdit::down-arrow:focus, -QDateTimeEdit::down-arrow:focus { - image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -QAbstractSpinBox::down-arrow:off, -QSpinBox::down-arrow:off, -QDoubleSpinBox::down-arrow:off, -QTimeEdit::down-arrow:off, -QDateEdit::down-arrow:off, -QDateTimeEdit::down-arrow:off { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - -QAbstractSpinBox::down-arrow:disabled, -QSpinBox::down-arrow:disabled, -QDoubleSpinBox::down-arrow:disabled, -QTimeEdit::down-arrow:disabled, -QDateEdit::down-arrow:disabled, -QDateTimeEdit::down-arrow:disabled { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - -/* ComboBox */ -QComboBox::drop-down { - background-color: #d2d2d2; - subcontrol-origin: border; /* important */ - subcontrol-position: top right; - width: 20px; - border-top-right-radius: 3px; - border-bottom-right-radius: 3px; -} - -QComboBox::drop-down:on, -QComboBox::drop-down:focus { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #5e90fa, stop:1 #7cabf9); -} - -QComboBox::down-arrow { - image: url(qss:images_dark-light/down_arrow_dark.svg); -} - -QComboBox::down-arrow:on, -QComboBox::down-arrow:focus { - image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -QComboBox::down-arrow:off, -QComboBox::down-arrow:disabled { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - -/* ComboBox menu */ -QComboBox { - selection-color: white; - selection-background-color: #5e90fa; -} - -QComboBox QAbstractItemView { - color: #6e6e6e; /* same as regular QComboBox color */ - background-color: transparent; - selection-color: white; - selection-background-color: #5e90fa; - border-width: 5px 0px 5px 0px; - border-style: solid; - border-color: transparent; - margin: 0px -1px 0px 0px; /* temporal: hack for Mac... try it on Windows and Linux */ -} - - -/*================================================================================================== -Push button -==================================================================================================*/ -QPushButton { - color: #6e6e6e; - text-align: center; - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #f5f5f5, stop:1 #e6e6e6); - border: 1px solid #d2d2d2; - border-bottom-color: #c3c3c3; /* simulates shadow under the button */ - padding: 4px 22px; - margin: 4px 4px; - min-height: 16px; /* same as QTabBar QPushButton min-width */ - border-radius: 4px; -} - -QPushButton:hover, -QPushButton:focus { - color: white; - border-color: #3874f2; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #5e90fa, stop:1 #3874f2); -} - -QPushButton:disabled, -QPushButton:disabled:checked { - color: #b6b6b6; - border-color: #e6e6e6; - background-color: #e6e6e6; -} - -QPushButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #3874f2, stop:1 #5e90fa); -} - -QPushButton:checked { - background-color: #5e90fa; - border-color: #3874f2; -} - -/* Color Buttons */ -Gui--ColorButton, -Gui--ColorButton:disabled { - padding: 0px; /* reset */ - margin: 0px; /* reset */ -} - -Gui--ColorButton { - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #f5f5f5, stop:1 #e6e6e6); - border: 1px solid #d2d2d2; - border-bottom-color: #c3c3c3; /* simulates shadow under the button */ -} - -Gui--ColorButton:disabled { - border-color: transparent; - background-color: rgba(0,0,0,10); -} - -Gui--ColorButton:hover, -Gui--ColorButton:focus { - border-color: #3874f2; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #5e90fa, stop:1 #3874f2); -} - -Gui--ColorButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #3874f2, stop:1 #5e90fa); -} - -/* Pushbutton style for "..." inside Placement cell which launches Placement tool */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QPushButton, -Gui--PropertyEditor--PropertyEditor > QWidget > QPushButton { - background-color: #b6b6b6; - border: 1px solid #828282; - min-width: 16px; /* reset it due to larger value on regular QPushButton, same or bigger value as regular QPushButton min-height */ - border-radius: 0px; - margin: 0px; /* reset */ - padding: 0px; /* reset */ -} - -Gui--PropertyEditor--PropertyEditor > QWidget > QPushButton { - text-align:left; - padding-left: 2px; -} - -/* Fix for Expressions description QFrame that is "broken" with initial reset */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QWidget > QWidget > QFrame { - background-color: #f5f5f5; /* main background color */ - border: 1px solid #dcdcdc; - border-radius: 2px; - padding: 2px 6px; -} - -QPushButton:checked { - background-color: #5e90fa; - border-color: #3874f2; -} - -/*================================================================================================== -Tool button Icon fix in save dialogs -==================================================================================================*/ -/* found under Tools -> Save Picture */ /* Draft -> ShapeString -> Font file */ - -QFileDialog#QFileDialog QToolButton { - background-color: transparent; - padding: 1px; - border: 1px; - margin: 0px; -} - - -/*================================================================================================== -Tool button inside QDialogs that works as QPushButtons -==================================================================================================*/ -/* found under Tools -> Customize -> Macros -> Pixmap "..." button */ -QDialog QToolButton { - color: #6e6e6e; - text-align: center; - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #f5f5f5, stop:1 #e6e6e6); - border: 1px solid #d2d2d2; - border-bottom-color: #c3c3c3; /* simulates shadow under the button */ - padding: 0px; /* different than regular QPushButton */ - margin: 2px; /* different than regular QPushButton */ - min-height: 16px; /* same as QTabBar QPushButton min-width */ - border-radius: 4px; -} - -QDialog QToolButton:hover, -QDialog QToolButton:focus { - color: white; - border-color: #3874f2; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #5e90fa, stop:1 #3874f2); -} - -QDialog QToolButton:disabled, -QDialog QToolButton:disabled:checked { - color: #b6b6b6; - border-color: #e6e6e6; - background-color: #e6e6e6; -} - -QDialog QToolButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #3874f2, stop:1 #5e90fa); -} - - -/*================================================================================================== -Tool button inside Task Panel content that works as QPushButtons -==================================================================================================*/ -/* found inside Part Design Workbench and "make a draft on a face" Task panel options */ -QSint--ActionGroup QFrame[class="content"] QToolButton { - color: #6e6e6e; - text-align: center; - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #f5f5f5, stop:1 #e6e6e6); - border: 1px solid #d2d2d2; - border-bottom-color: #c3c3c3; /* simulates shadow under the button */ - padding: 2px 6px; /* different than regular QPushButton */ - margin: 2px; /* different than regular QPushButton */ - min-height: 16px; /* same as QTabBar QPushButton min-width */ - border-radius: 4px; -} - -QSint--ActionGroup QFrame[class="content"] QToolButton:hover, -QSint--ActionGroup QFrame[class="content"] QToolButton:focus { - color: white; - border-color: #3874f2; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #5e90fa, stop:1 #3874f2); -} - -QSint--ActionGroup QFrame[class="content"] QToolButton:disabled, -QSint--ActionGroup QFrame[class="content"] QToolButton:disabled:checked { - color: #b6b6b6; - border-color: #e6e6e6; - background-color: #e6e6e6; -} - -QSint--ActionGroup QFrame[class="content"] QToolButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #3874f2, stop:1 #5e90fa); -} - -/* QToolButtons with a menu found in Sketcher task panel*/ -QSint--ActionGroup QToolButton::menu-button { - border: none; - border-top-right-radius: 4px; - border-bottom-right-radius: 4px; + border: 1px solid #C1C1C1; + border-radius: 1.9px; padding: 2px; - width: 16px; /* 16px width + 4px for border = 20px allocated above */ - outline: none; - background-color: transparent; -} + margin-top: 10px; + margin-bottom: 4px; + } -QSint--ActionGroup QToolButton#settingsButton, -QSint--ActionGroup QToolButton#filterButton, -QSint--ActionGroup QToolButton#manualUpdate { - padding-right: 20px; /* make way for the popup button */ -} + QGroupBox::title { + subcontrol-origin: margin; + subcontrol-position: top left; + left: 4px; + padding-left: 2px; + padding-right: 4px; + padding-top: 6px; + } -/* to give widget inside the menu same look as regular menu */ -QSint--ActionGroup QToolButton#filterButton QListWidget { + QGroupBox::indicator { color: black; - background: #f5f5f5; + background-color: #f6f6f6; + border: 1px solid #C1C1C1; + width: 12px; + height: 12px; + border-radius:1px; + } + + QGroupBox::indicator:unchecked { + background-color: #f6f6f6; + border: 1px solid #C1C1C1; + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); + } + + QGroupBox::indicator:unchecked:hover, QGroupBox::indicator:unchecked:focus, QGroupBox::indicator:unchecked:pressed { + background-color: #8cb0ff; + } + + QGroupBox::indicator:unchecked:disabled { + background-color: #ffffff; + border: 1px solid #C1C1C1; + } + + QGroupBox::indicator:checked { + border: none; + image:url(qss:images_dark-light/checkbox_dark.svg); + } + + QGroupBox::indicator:checked:hover, QGroupBox::indicator:checked:focus, QGroupBox::indicator:checked:pressed { + background-color: #8cb0ff; + } + + QGroupBox::indicator:checked:disabled { + background-color: #8cb0ff; + } + + /* QRadioButton ----------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qradiobutton + + --------------------------------------------------------------------------- */ + QRadioButton { + background-color: transparent; + color: black; + border: none; + spacing: 4px; + padding-top: 4px; + padding-bottom: 4px; + outline: none; + } + + QRadioButton:focus { + border: 1px solid #b0c9ff; + } + + QRadioButton:disabled { + background-color: #f6f6f6; + color: #BABABA; + } + + QRadioButton QWidget { + background-color: transparent; + color: black; + spacing: 0px; padding: 0px; - margin: 0px; -} - - -/*================================================================================================== -Radio button -==================================================================================================*/ -QRadioButton::indicator:unchecked{ - color: #505050; - background-color: rgba(0,0,0,20); - border: 1px solid #505050; -} - -QRadioButton::indicator:checked { - background-color: #5e90fa; /* QCheckBox has the same color */ - border: 1px solid #3874f2; /* QCheckBox has the same color */ - image:url(qss:images_dark-light/radiobutton_light.svg); -} - -QRadioButton, -QRadioButton:disabled { - color: #505050; - padding: 3px; outline: none; - background-color: transparent; -} + border: none; + } -QRadioButton:disabled { - color: rgba(0,0,0,40); -} - -QRadioButton::indicator { - width: 11px; - height: 11px; + QRadioButton::indicator { + background-color: #f6f6f6; + border: 1px solid #C1C1C1; border-radius: 6px; -} + margin-left: 0px; + height: 11px; + width: 11px; + } -QRadioButton::indicator:pressed { - border-color: #adc5ed; -} + QRadioButton::indicator:unchecked { + /*image:url(qss:images_dark-light/radiobutton_dark.svg);*/ + } -QRadioButton::indicator:disabled { - color: #6e6e6e; - background-color: transparent; - border: 1px solid #6e6e6e; -} + QRadioButton::indicator:unchecked:hover, QRadioButton::indicator:unchecked:pressed { + background-color: #8cb0ff; + border: 1px solid #8cb0ff; + border-radius: 6px; + } -QRadioButton:focus { - border: none; -} + QRadioButton::indicator:unchecked:disabled { + /*image:url(qss:images_dark-light/radiobutton_light.svg);*/ + border: 1px solid #C1C1C1; + } + QRadioButton::indicator:checked { + image:url(qss:images_dark-light/radiobutton_dark.svg); + } -/*================================================================================================== -Checkbox -==================================================================================================*/ -QCheckBox, -QCheckBox:disabled { - color: #505050; - padding: 3px; + QRadioButton::indicator:checked:hover, QRadioButton::indicator:checked:pressed { + background-color: #8cb0ff; + border: 1px solid #8cb0ff; + border-radius: 6px; + image:url(qss:images_dark-light/radiobutton_dark.svg); + } + + QRadioButton::indicator:checked:disabled { outline: none; + background-color: #f6f6f6; + image:url(qss:images_dark-light/radiobutton_light.svg); + } + + /* QMenuBar --------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenubar + + --------------------------------------------------------------------------- */ + QMenuBar { + background-color: #ffffff; + /*padding: 1px; + border: 0px solid rgba(0,0,0,140);*/ + color: black; + selection-background-color: #8cb0ff; + } + + QMenuBar:focus { + border: 1px solid #8cb0ff; + } + + QMenuBar::item { + background: transparent; + /*padding-left:5px; + padding-right: 5px; + padding-bottom: 1px; + padding-top: 1px;*/ + } + + QMenuBar::item:selected { + background: transparent; + border: 0px solid #C1C1C1; + background-color: #8cb0ff; + } + + QMenuBar::item:pressed { + /*padding: 2px; + padding-left: 10px; + padding-right: 10px;*/ + border: 0px solid #C1C1C1; + background-color: #8cb0ff; + color: black; + /*margin-bottom: 0px; + padding-bottom: 0px;*/ + } + + /* QMenu ------------------------------------------------------------------ + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenu + + --------------------------------------------------------------------------- */ + QMenu { + border-bottom: 2px rgba(0,0,0,140); + border-right: 2px rgba(0,0,0,140); + color: black; + margin: 0px; + background-color: #ffffff; + selection-background-color: #8cb0ff; + } + + QMenu::separator { + height: 2px; + background-color: #f6f6f6; + margin-left: 30%; + margin-right: 30%; + } + + QMenu::item { background-color: transparent; -} + padding: 2px 2px; /* make room for icon at left */ + /* Reserve space for selection border */ + border: 0px transparent #f6f6f6; + } -QCheckBox::indicator, -QGroupBox::indicator { - color: #c8c8c8; - background-color: rgba(0,0,0,20); - border: 1px solid #505050; - width: 11px; - height: 11px; - border-radius:2px; -} + QMenu::item:selected { + color: black; + background-color: #8cb0ff; + } -QCheckBox::indicator:pressed, -QCheckBox::indicator:non-exclusive:checked:pressed, -QCheckBox::indicator:indeterminate:pressed, -QCheckBox::indicator:checked:pressed, -QGroupBox::indicator:pressed, -QGroupBox::indicator:non-exclusive:checked:pressed, -QGroupBox::indicator:indeterminate:pressed, -QGroupBox::indicator:checked:pressed { - border-color: #adc5ed; -} + QMenu::item:pressed { + background-color: #8cb0ff; + } -QCheckBox::indicator:checked, -QGroupBox::indicator:checked { - background-color: #5e90fa; /* QRadioButton has the same color */ - border: 1px solid #3874f2; /* QRadioButton has the same color */ - image:url(qss:images_dark-light/checkbox_light.svg); -} - -QCheckBox:disabled { - color: rgba(0,0,0,40); - background-color: transparent; -} - -QCheckBox::indicator:disabled, -QGroupBox::indicator:disabled { - background-color: rgba(0,0,0,20); - border: 1px solid rgba(0,0,0,20); -} - -QCheckBox::indicator:indeterminate, -QGroupBox::indicator:indeterminate { - background-color: #5e90fa; - border: 1px solid #3874f2; - image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); -} - -QCheckBox:focus { - border: none; -} - - -/*================================================================================================== -Checkboxes inside QListWidget and QTreeView -==================================================================================================*/ -QListWidget::indicator, -QTreeView::indicator { - color: #c8c8c8; - background-color: rgba(0,0,0,20); - border: 1px solid #505050; - width: 11px; - height: 11px; - border-radius:2px; -} - -/* fix for QTreeView::indicator losing its margin */ -QTreeView::indicator { - margin: 3px; -} - -QListWidget::indicator:selected, -QTreeView::indicator:selected { - background-color: #e6e6e6; -} - -QListWidget::indicator:checked:selected, -QListWidget::indicator:indeterminate:selected, -QTreeView::indicator:checked:selected, -QTreeView::indicator:indeterminate:selected { - background-color: #7cabf9; /* slightly lighter than default */ - border-color: #2053c0; /* slightly darker than default */ -} - -QListWidget::indicator:pressed, -QListWidget::indicator:non-exclusive:checked:pressed, -QListWidget::indicator:indeterminate:pressed, -QListWidget::indicator:checked:pressed, -QTreeView::indicator:pressed, -QTreeView::indicator:non-exclusive:checked:pressed, -QTreeView::indicator:indeterminate:pressed, -QTreeView::indicator:checked:pressed { - border-color: #adc5ed; -} - -QListWidget::indicator:checked, -QTreeView::indicator:checked { - background-color: #5e90fa; /* QRadioButton has the same color */ - border: 1px solid #3874f2; /* QRadioButton has the same color */ - image:url(qss:images_dark-light/checkbox_light.svg); -} - -QListWidget::indicator:disabled, -QTreeView::indicator:disabled { - background-color: rgba(0,0,0,20); - border: 1px solid rgba(0,0,0,20); -} - -QListWidget::indicator:indeterminate, -QTreeView::indicator:indeterminate { - background-color: #5e90fa; - border: 1px solid #3874f2; - image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); -} - - -/*================================================================================================== -Slider -==================================================================================================*/ -QSlider, -QSlider:active, -QSlider:!active { - border: none; - background-color: transparent; -} - -QSlider:horizontal { - padding: 0px 10px; -} - -QSlider:vertical { - padding: 10px 0px; -} - -QSlider::groove { - background-color: rgba(0,0,0,30); - border: 1px solid rgba(0,0,0,40); - border-radius: 5px; - margin: 4px 0px; -} - -QSlider::groove:horizontal { - height: 8px; -} - -QSlider::groove:vertical { - width: 8px; -} - -QSlider::groove:horizontal:disabled, -QSlider::groove:vertical:disabled { - border-color: #dcdcdc; - background-color: #dcdcdc; -} - -QSlider::handle:horizontal, -QSlider::handle:vertical { - background-color: #b6b6b6; - border: 1px solid #b6b6b6; + QMenu::icon { + margin-left: 5px; width: 14px; height: 14px; - border-radius: 8px; -} + } -QSlider::handle:horizontal { - margin: -4px 0; -} - -QSlider::handle:vertical { - margin: 0 -4px; -} - -QSlider::handle:horizontal:hover, -QSlider::handle:vertical:hover, -QSlider::handle:horizontal:pressed, -QSlider::handle:vertical:pressed { - border-color: #5e90fa; - background-color: #5e90fa; -} - -QSlider::handle:horizontal:disabled, -QSlider::handle:vertical:disabled { - border-color: #dcdcdc; - background-color: #dcdcdc; -} - - -/*================================================================================================== -Toolbar buttons -==================================================================================================*/ -/*QToolBar > QComboBox, disabled because creates different margins for body and drop-down button */ -QToolBar > QAbstractSpinBox, -QToolBar > QSpinBox, -QToolBar > QDoubleSpinBox, -QToolBar > QLineEdit, -QToolBar > QTextEdit, -QToolBar > QTimeEdit, -QToolBar > QDateEdit, -QToolBar > QDateTimeEdit { - margin: 0px 2px; + QMenu::indicator { + margin-left: 2px; + margin-right: 2px; padding: 0px; - min-width: 70px; /* necessary to show its content */ -} + width: 12px; + height: 12px; + /* non-exclusive indicator = check box style indicator (see QActionGroup::setExclusive) */ + /* exclusive indicator = radio button style indicator (see QActionGroup::setExclusive) */ + } -QToolBar > QComboBox, -QToolBar > QAbstractSpinBox, -QToolBar > QSpinBox, -QToolBar > QDoubleSpinBox, -QToolBar > QLineEdit, -QToolBar > QTextEdit, -QToolBar > QTimeEdit, -QToolBar > QDateEdit, -QToolBar > QDateTimeEdit { - min-height: 0px; /* reset it inside Tool Bar due to the user ability to set the "size of toolbar icons" inside Preferences */ -} + QMenu::icon:checked { /* appearance of a 'checked' icon */ + background: #b0c9ff; + margin-left: -5px; + border: 5px solid #b0c9ff; + position: absolute; + border-radius: 0px; + } + QMenu::indicator:non-exclusive:unchecked { + image: url(qss:images_dark-light/checkbox_unchecked_dark.svg); + } -QToolBar > QPushButton { - padding: 0px; - margin: 1px; /* doesn't work with :left, :right:, :top or :bottom sub-controls */ - min-width: 16px; /* could not be larger due to switchable Preferences "Size of toolbar icons" */ - min-height: 16px; /* could not be larger due to switchable Preferences "Size of toolbar icons" */ - border-radius: 4px; /* same as regular QPushButton */ -} - -QToolBar > QPushButton:checked { - border: 1px solid #7cabf9; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #cbd8e6, stop:1 #7cabf9); -} - -QToolBar > QPushButton:!checked { - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #f5f5f5, stop:1 #e6e6e6); - border: 1px solid #d2d2d2; - border-bottom-color: #c3c3c3; /* simulates shadow under the button */ - text-align: left; /* bug fix #4559 */ -} - -QToolBar > QPushButton:checked:hover { - border-color: #6f9efa; -} - -QToolBar > QPushButton:!checked:hover { - color: black; - border-color: #b6b6b6; -} - -QToolBar > QPushButton:checked:pressed { - background-color: #7cabf9; -} - -QToolBar > QPushButton:!checked:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #b6b6b6, stop:1 #e6e6e6); -} - -QToolBar > QPushButton:checked:disabled, -QToolBar > QPushButton:!checked:disabled { + QMenu::indicator:non-exclusive:unchecked:hover, QMenu::indicator:non-exclusive:unchecked:focus, QMenu::indicator:non-exclusive:unchecked:pressed { border: none; - background-color: transparent; -} + background: #8cb0ff; + } -QToolBar > QToolButton { - margin: 2px; - padding: 2px; - border-radius: 3px; -} + QMenu::indicator:non-exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_disabled.svg); + } -QToolBar > QToolButton:hover { - background-color: rgba(0,0,0,20); -} + QMenu::indicator:non-exclusive:checked { + image:url(qss:images_dark-light/checkbox_dark.svg); + } -QToolBar > QToolButton:pressed { - background-color: rgba(0,0,0,30); -} - -/* ToolBar menu buttons (buttons with drop-down menu) */ -QToolBar > QToolButton#qt_toolbutton_menubutton { - padding-right: 20px; /* Hack to add more width to buttons with menu */ - border: 1px solid transparent; - border-radius: 3px; -} - -QToolBar > QToolButton#qt_toolbutton_menubutton:hover, -QToolBar > QToolButton#qt_toolbutton_menubutton:pressed, -QToolBar > QToolButton#qt_toolbutton_menubutton:open { - border: 1px solid #7cabf9; -} - -QToolBar QToolButton::menu-button, -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button { + QMenu::indicator:non-exclusive:checked:hover, QMenu::indicator:non-exclusive:checked:focus, QMenu::indicator:non-exclusive:checked:pressed { + border: none; + background: #8cb0ff; + } + + QMenu::indicator:non-exclusive:checked:disabled { + image:url(qss:images_dark-light/checkbox_checked_disabled.svg); + } + + QMenu::indicator:non-exclusive:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); + } + + QMenu::indicator:non-exclusive:indeterminate:disabled { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); + } + + QMenu::indicator:non-exclusive:indeterminate:focus, QMenu::indicator:non-exclusive:indeterminate:hover, QMenu::indicator:non-exclusive:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); + } + + QMenu::indicator:exclusive:unchecked { + image: url(qss:images_dark-light/transparent.svg); + } + + QMenu::indicator:exclusive:unchecked:hover, QMenu::indicator:exclusive:unchecked:focus, QMenu::indicator:exclusive:unchecked:pressed { border: none; - border-top-right-radius: 3px; - border-bottom-right-radius: 3px; - width: 16px; /* 16px width + 4px for border = 20px allocated above */ outline: none; + background: #8cb0ff; + image: url(qss:images_dark-light/checkbox_unchecked_dark.svg); + } + + QMenu::indicator:exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_dark.svg); + } + + QMenu::indicator:exclusive:checked { + border: none; + outline: none; + image: url(qss:images_dark-light/radiobutton_dark.svg); + } + + QMenu::indicator:exclusive:checked:hover, QMenu::indicator:exclusive:checked:focus, QMenu::indicator:exclusive:checked:pressed { + border: none; + outline: none; + background: #8cb0ff; + image: url(qss:images_dark-light/checkbox_unchecked_dark.svg); + } + + QMenu::indicator:exclusive:checked:disabled { + outline: none; + image: url(qss:images_dark-light/radiobutton_dark.svg); + } + + QMenu::right-arrow { + margin: 5px; + padding-left: 12px; + image:url(qss:images_dark-light/right_arrow_darker.svg); + height: 12px; + width: 12px; background-color: transparent; -} + } -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button:hover, -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button:pressed, -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button:open { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #5e90fa, stop:1 #7cabf9); -} + /* QAbstractItemView ------------------------------------------------------ -QToolBar > QToolButton::menu-arrow { - background-image: url(qss:images_dark-light/down_arrow_dark.svg); - background-position: center center; - background-repeat: none; + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + + --------------------------------------------------------------------------- */ + QAbstractItemView { + alternate-background-color: #ababab; + color: black; + border: 1px solid #C1C1C1; + border-radius: 2px; + } + + QAbstractItemView QLineEdit { + padding: 2px; + } + + /* QAbstractScrollArea ---------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + + --------------------------------------------------------------------------- */ + QAbstractScrollArea { + background-color: transparent; + border: 0px solid #C1C1C1; + border-radius: 0px; + /* fix #159 */ + padding: 0px; + /* remove min-height to fix #244 */ + color: black; + } + + QAbstractScrollArea:disabled { + color: #A3A3A3; + } + + /* QScrollArea ------------------------------------------------------------ + + --------------------------------------------------------------------------- + text input field disabled!!!!*/ + QScrollArea QWidget:disabled { + background-color: #F6F6F6; + } + + /* QScrollBar ------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qscrollbar + + --------------------------------------------------------------------------- */ + QScrollBar:horizontal { + height: 16px; + margin: 2px 16px 2px 16px; + border: 0px solid #C1C1C1; + border-radius: 1.9px; + background-color: #F6F6F6; + } + + QScrollBar:vertical { + background-color: #F6F6F6; + width: 16px; + margin: 16px 2px 16px 2px; + border: 0px solid #C1C1C1; + border-radius: 1.9px; + } + + QScrollBar::handle:horizontal { + background-color: #A3A3A3; + border: 1px solid #C1C1C1; + border-radius: 1.9px; + min-width: 8px; + } + + QScrollBar::handle:horizontal:hover { + background-color: #8cb0ff; + border: #f6f6f6; + border-radius: 1.9px; + min-width: 8px; + } + + QScrollBar::handle:horizontal:focus { + border: 1px solid #b0c9ff; + } + + QScrollBar::handle:vertical { + background-color: #A3A3A3; + border: 1px solid #C1C1C1; + min-height: 8px; + border-radius: 1.9px; + } + + QScrollBar::handle:vertical:hover { + background-color: #8cb0ff; + border: #f6f6f6; + border-radius: 1.9px; + min-height: 8px; + } + + QScrollBar::handle:vertical:focus { + border: 1px solid #b0c9ff; + } + + QScrollBar::add-line:horizontal { + border-image: url(qss:images_dark-light/right_arrow_dark.svg); + height: 9px; + width: 5px; + subcontrol-position: right; + subcontrol-origin: margin; + } + + QScrollBar::add-line:horizontal:hover, QScrollBar::add-line:horizontal:on { + border-image: url(qss:images_dark-light/right_arrow_dark.svg); + height: 9px; + width: 5px; + subcontrol-position: right; + subcontrol-origin: margin; + } + + QScrollBar::add-line:vertical { + border-image: url(qss:images_dark-light/down_arrow_dark.svg); + height: 5px; + width: 9px; + subcontrol-position: bottom; + subcontrol-origin: margin; + } + + QScrollBar::add-line:vertical:hover, QScrollBar::add-line:vertical:on { + border-image: url(qss:images_dark-light/down_arrow_darker.svg); + height: 5px; + width: 9px; + subcontrol-position: bottom; + subcontrol-origin: margin; + } + + QScrollBar::sub-line:horizontal { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/left_arrow_dark.svg); + height: 9px; + width: 5px; + subcontrol-position: left; + subcontrol-origin: margin; + } + + QScrollBar::sub-line:horizontal:hover, QScrollBar::sub-line:horizontal:on { + border-image: url(qss:images_dark-light/left_arrow_darker.svg); + height: 9px; + width: 5px; + subcontrol-position: left; + subcontrol-origin: margin; + } + + QScrollBar::sub-line:vertical { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/up_arrow_dark.svg); + height: 5px; + width: 9px; + subcontrol-position: top; + subcontrol-origin: margin; + } + + QScrollBar::sub-line:vertical:hover, QScrollBar::sub-line:vertical:on { + border-image: url(qss:images_dark-light/up_arrow_darker.svg); + height: 5px; + width: 9px; + subcontrol-position: top; + subcontrol-origin: margin; + } + + QScrollBar::up-arrow:horizontal, QScrollBar::down-arrow:horizontal { + background: none; + } + + QScrollBar::up-arrow:vertical, QScrollBar::down-arrow:vertical { + background: none; + } + + QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal { + background: none; + } + + QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical { + background: none; + } + + /* QTextEdit -------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-specific-widgets + + + report view + --------------------------------------------------------------------------- */ + QTextEdit { + background-color: #F6F6F6; + color: black; + border-radius: 1.9px; + border: 0px solid #C1C1C1; + } + + QTextEdit:focus { + border: 1px solid #b0c9ff; + } + + QTextEdit:selected { + background: #346792; + color: black; + } + + /* QPlainTextEdit --------------------------------------------------------- + Python + --------------------------------------------------------------------------- */ + QPlainTextEdit { + background-color: #f6f6f6; + color: black; + border-radius: 1.9px; + border: 0px solid #C1C1C1; + } + + QPlainTextEdit:focus { + border: 1px solid #b0c9ff; + } + + QPlainTextEdit:selected { + background: #8cb0ff; + color: black; + } + + /* QSizeGrip -------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsizegrip + + --------------------------------------------------------------------------- */ + QSizeGrip { + background: transparent; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/sizegrip_dark.svg); + } + + /* QStackedWidget --------------------------------------------------------- + + --------------------------------------------------------------------------- */ + QStackedWidget { + padding: 0px; + border: 0px solid #C1C1C1; + } + + /* QToolBar --------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbar + + --------------------------------------------------------------------------- */ + QToolBar { + background-color: #F6F6F6; + border-bottom: 0px solid rgba(0,0,0,120); + padding: 1px; + font-weight: bold; + spacing: 1px; + } + + QToolBar:disabled { + /* Fixes #272 */ + background-color: #F6F6F6; + } + + QToolBar::handle:horizontal { + width: 8px; + margin: 3px 3px; + background-position: top right; + background-repeat: repeat-y; + background-image: url(qss:images_dark-light/Hmovetoolbar_dark.svg); + } + + QToolBar::handle:vertical { + height: 8px; + margin: 3px 3px; + background-position: left bottom; + background-repeat: repeat-x; + background-image: url(qss:images_dark-light/Vmovetoolbar_dark.svg); + } + + QToolBar::separator:horizontal { + width: 2px; + margin: 4px 4px; + background-color: transparent; + } + + QToolBar::separator:vertical { + height: 2px; + margin: 4px 4px; + background-color: transparent; + } + + /*The "show more" button (it can also be stylable with "QToolBarExtension" icon is not working Qproperty works but breaks when you move the toolbar see also */ + QToolButton#qt_toolbar_ext_button { + margin: 0px; + padding: 0px; + background-color: #A3A3A3; + /*background-image: url(qss:images_dark-light/more_dark.svg);*/ + background-repeat: none; + background-position: center center; + } + + QToolButton#qt_toolbar_ext_button:hover { + /*background-image: url(qss:images_dark-light/more_dark.svg);*/ + background-color: #8cb0ff; + } + + QToolButton#qt_toolbar_ext_button:on { + /*background-image: url(qss:images_dark-light/more_dark.svg);*/ + border-color: #f6f6f6; + background-color: #8cb0ff; + } + + + /* QAbstractSpinBox ------------------------------------------------------- + + --------------------------------------------------------------------------- */ + QAbstractSpinBox, + QSpinBox { + background-color: #ffffff; + border: 1px solid transparent; + color: black; + /* This fixes 103, 111 */ + /* padding-top: 0px; + /* This fixes 103, 111 */ + /*padding-bottom: 0px; + /*padding-left: 4px; + /*padding-right: 4px; + border-radius: 1.9px;*/ + min-height: 1.7em; + /* min-width: 5px; removed to fix 109 */ + } + + QAbstractSpinBox:up-button { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #E2E2E2, stop:1 #EDEDED); + subcontrol-origin: border; + subcontrol-position: top right; + border: 1px solid transparent; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-bottom: -1px;*/ + } + + QAbstractSpinBox::up-arrow, QAbstractSpinBox::up-arrow:disabled, QAbstractSpinBox::up-arrow:off { + image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); + /* height: 8px; + width: 8px;*/ + } + + QAbstractSpinBox::up-arrow:hover { + image: url(qss:images_dark-light/up_arrow_darker.svg); + } + + QAbstractSpinBox:down-button { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #E2E2E2, stop:1 #EDEDED); + subcontrol-origin: border; + subcontrol-position: bottom right; + border: 1px solid transparent; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-top: -1px;*/ + } + + QAbstractSpinBox::down-arrow, QAbstractSpinBox::down-arrow:disabled, QAbstractSpinBox::down-arrow:off { + image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); + /*height: 8px; + width: 8px;*/ + } + + QAbstractSpinBox::down-arrow:hover { + image: url(qss:images_dark-light/down_arrow_darker.svg); + } + + QAbstractSpinBox:hover { + /*border: 1px solid #8cb0ff; + color: black;*/ + } + + QAbstractSpinBox:focus { + border: 1px solid #b0c9ff; + } + + QAbstractSpinBox:selected { + background: #b0c9ff; + /*color: black;*/ + } + + /* ------------------------------------------------------------------------ */ + /* DISPLAYS --------------------------------------------------------------- */ + /* ------------------------------------------------------------------------ */ + /* QLabel ----------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe + + --------------------------------------------------------------------------- */ + QLabel { + background-color: transparent; + border: 0px solid #C1C1C1; + padding: 2px; + margin: 0px; + color: black; + } + + QLabel:disabled { + background-color: transparent; + border: 0px solid #C1C1C1; + color: #A3A3A3; + } + + QLabel[haslink="true"] { + color: orange; + } + + + /* QTextBrowser ----------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + + --------------------------------------------------------------------------- */ + QTextBrowser { + background-color: #ffffff; + border: 1px solid #C1C1C1; + color: black; + border-radius: 1.9px; + } + + QTextBrowser:disabled { + background-color: #F6F6F6; + border: 1px solid #C1C1C1; + color: #A3A3A3; + border-radius: 1.9px; + } + + QTextBrowser:hover, QTextBrowser:!hover, QTextBrowser:selected, QTextBrowser:pressed { + border: 1px solid #8cb0ff; + } + + /* QGraphicsView ---------------------------------------------------------- + + --------------------------------------------------------------------------- */ + QGraphicsView { + background-color: transparent; + border: 0px solid #8cb0ff; + color: black; + border-radius: 0px; + } + + QGraphicsView:disabled { + background-color: #ffffff; + border: 0px solid #C1C1C1; + color: #A3A3A3; + border-radius: 0px; + } + + QGraphicsView:hover, QGraphicsView:!hover, QGraphicsView:selected, QGraphicsView:pressed { + border: 0px solid #ff00f7; + } + + /* QCalendarWidget -------------------------------------------------------- + + --------------------------------------------------------------------------- */ + QCalendarWidget { + border: 1px solid #C1C1C1; + border-radius: 1.9px; + } + + QCalendarWidget:disabled { + background-color: #BABABA; + color: #A3A3A3; + } + + /* QLCDNumber ------------------------------------------------------------- + + --------------------------------------------------------------------------- */ + QLCDNumber { + background-color: #1aff00; + color: black; + } + + QLCDNumber:disabled { + background-color: #F6F6F6; + color: #A3A3A3; + } + + /* QProgressBar ----------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qprogressbar + + --------------------------------------------------------------------------- */ + QProgressBar { + background-color: #A3A3A3; + border: 1px solid #C1C1C1; + color: black; + border-radius: 1.9px; + text-align: center; + } + + QProgressBar:disabled { + background-color: #ffffff; + border: 1px solid #C1C1C1; + color: #A3A3A3; + border-radius: 1.9px; + text-align: center; + } + + QProgressBar::chunk { + background-color: #8cb0ff; + color: #F6F6F6; + border-radius: 1.9px; + } + + QProgressBar::chunk:disabled { + background-color: #ffffff; + color: #f6f6f6; + border-radius: 1.9px; + } + + /* ------------------------------------------------------------------------ */ + /* BUTTONS ---------------------------------------------------------------- */ + /* ------------------------------------------------------------------------ */ + /* QPushButton ------------------------------------------------------------ + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qpushbutton + + --------------------------------------------------------------------------- */ + QPushButton { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #E2E2E2, stop:1 #EDEDED); + color: black; + border: 1px solid #EDEDED; + border-bottom-color: #AFAFAF; /* simulates shadow under the button */ + border-radius: 4px; + padding: 2px; + } + + QPushButton:disabled { + background-color: #F6F6F6; + color: #A3A3A3; + + } + + QPushButton:checked { + background-color: #8cb0ff; + outline: none; + } + + QPushButton:checked:disabled { + background-color: #8cb0ff; + color: #f6f6f6; + outline: none; + } + + QPushButton:checked:selected { + background: #8cb0ff; + } + + QPushButton:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #8cb0ff, stop:1 #b0c9ff); + color: black; + } + + QPushButton:pressed { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #b0c9ff, stop:1 #8cb0ff); + } + + QPushButton:selected { + background: #b0c9ff; + color: black; + } + + QPushButton::menu-indicator { subcontrol-origin: padding; subcontrol-position: bottom right; - height: 10px; /* same as arrow image */ -} + bottom: 4px; + } -QToolBar > QToolButton::menu-arrow:hover { - background-image: url(qss:images_dark-light/down_arrow_lighter.svg); -} + QDialogButtonBox QPushButton { + /* Issue # 194 # 248 - Special case of QPushButton inside dialogs, for better UI */ + min-width: 80px; + } -QToolBar > QToolButton::menu-arrow:open { - background-image: url(qss:images_dark-light/down_arrow_lighter.svg); -} + /* QToolButton ------------------------------------------------------------ -/* when QToolButton is checked: */ -QToolButton:checked { - border: 1px solid #7cabf9; - background-color: rgba(124,171,249,60); /* transparency for #7cabf9 color */ -} + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbutton -QToolButton:checked:hover { - border: 1px solid #7cabf9; - background-color: rgba(124,171,249,80); /* transparency for #7cabf9 color */ -} - -/*The "show more" button (it can also be stylable with "QToolBarExtension" */ -QToolBar QToolButton#qt_toolbar_ext_button { - margin: 0px; + --------------------------------------------------------------------------- */ + QToolButton { + background-color: transparent; + color: black; + border-radius: 1px; padding: 0px; - /*background-image: url(qss:images_dark-light/more_dark.svg);*/ - image: transparent; + outline: none; + border: none; + /* The subcontrols below are used only in the DelayedPopup mode */ + /* The subcontrols below are used only in the MenuButtonPopup mode */ + /* The subcontrol below is used only in the InstantPopup or DelayedPopup mode */ + } + + QToolButton:disabled { + background-color: transparent; + color: #A3A3A3; + border-radius: 1px; + padding: 0px; + } + + QToolButton:checked { + background-color: #8cb0ff; + border-radius: 1.9px; + padding: 0px; + outline: none; + } + + QToolButton:checked:disabled { + background-color: #b65555; + color: #A3A3A3; + border-radius: 1.9px; + padding: 0px; + outline: none; + } + + QToolButton:checked:hover { + background-color: #8cb0ff; + color: black; + } + + QToolButton:checked:pressed { + background-color: #8cb0ff; + } + + QToolButton:checked:selected { + background: #b0c9ff; + color: black; + } + + QToolButton:hover { + background-color: #8cb0ff; + color: black; + } + + QToolButton:pressed { + background-color: #b0c9ff; + } + + QToolButton:selected { + background: #8cb0ff; + color: black; + } + + QToolButton[popupMode="0"] { + /* Only for DelayedPopup */ + padding-right: 20px; + } + + QToolButton[popupMode="1"] { + /* Only for MenuButtonPopup */ + padding-right: 20px; + } + QToolButton[popupMode="0"]::menu-button { + border: none; + } + + QToolButton[popupMode="0"]::menu-button:hover { + border: none; + border-left: 2px solid #fe0000; + border-radius: 0px; + } + QToolButton[popupMode="1"]::menu-button { + border: none; + } + + QToolButton[popupMode="1"]::menu-button:hover { + border: none; + border-left: 2px solid #e5ff00; + border-radius: 0px; + } + + QToolButton[popupMode="2"] { + /* Only for InstantPopup */ + padding-right: 20px; + } + + QToolButton::menu-button { + border-bottom: 0px solid #b2b2b2; + border-radius: 2px; + /* 16px width + 4px for border = 20px allocated above */ + width: 1.6ex; + padding: 2px; + border-radius: 2px; + border: 0px #000000; + } + + QToolButton::menu-button:hover { + /* background: rgba(0, 0, 0, 0.5);*/ + + } + + QToolButton::menu-button:checked:hover { + /* background: rgba(0, 0, 0, 0.5);*/ + } + + QToolButton::menu-indicator { + /* Exclude a shift for better image */ + subcontrol-position: right bottom; + /* Shift it a bit */ + } + + QToolButton::menu-arrow { + image: url(qss:images_dark-light/more_arrow_dark.svg); + width: 1.5ex; + height: 1.5ex; + subcontrol-position: right bottom; + background: transparent; + } + QToolButton::menu-arrow:open { + subcontrol-position: right bottom; + image: url(qss:images_dark-light/more_arrow_dark.svg); + } + QToolButton::menu-arrow:hover { + image: url(qss:images_dark-light/more_arrow_dark.svg); + background-color: rgba(0, 0, 0, 0.498); + border: 1px solid rgba(0, 0, 0, 0.498); + } + + /* QCommandLinkButton ----------------------------------------------------- + + --------------------------------------------------------------------------- */ + QCommandLinkButton { + background-color: transparent; + border: 1px solid #C1C1C1; + color: black; + border-radius: 1.9px; + padding: 0px; + margin: 0px; + } + + QCommandLinkButton:disabled { + background-color: transparent; + color: #A3A3A3; + } + + /* ------------------------------------------------------------------------ */ + /* INPUTS - NO FIELDS ----------------------------------------------------- */ + /* ------------------------------------------------------------------------ */ + /* QComboBox -------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + + --------------------------------------------------------------------------- */ + QComboBox { + border: 1px solid transparent; + background: #ffffff; + border-radius: 2px; + selection-background-color: #8cb0ff; + padding-left: 2px; + padding-right: 2px; + /* padding-right = 36; 4 + 16*2 See scrollbar size */ + /* changed to 4px to fix #239 */ + /* Fixes #103, #111 */ + min-height: 1.5em; + /* padding-top: 2px; removed to fix #132 */ + /* padding-bottom: 2px; removed to fix #132 */ + /* min-width: 75px; removed to fix #109 */ + /* Needed to remove indicator - fix #132 */ + } + QComboBox:editable { + background: #ffffff; + } + QComboBox QAbstractItemView { + border: 0px solid #C1C1C1; + border-radius: 0px; + background-color: #ffffff; + selection-background-color: #8cb0ff; + } + + QComboBox QAbstractItemView:hover { + background-color:#ffffff; + color: black; + } + + QComboBox QAbstractItemView:selected { + background: #8cb0ff; + color: black; + } + + QComboBox QAbstractItemView:alternate { + background: #f6f6f6; + } + + QComboBox:disabled { + background-color: #F6F6F6; + color: #BABABA; + } + + QComboBox:hover { + /*background-color: #8cb0ff;*/ + border: 1px solid #8cb0ff; + } + + QComboBox:focus { + border: 1px solid #b0c9ff; + } + + QComboBox:on { + selection-background-color: #b0c9ff; + } + + QComboBox::indicator { + border: none; + border-radius: 0px; + background-color: transparent; + selection-background-color: transparent; + color: transparent; + selection-color: #8cb0ff; + /* Needed to remove indicator - fix #132 */ + } + + QComboBox::indicator:alternate { + background: #f6f6f6; + } + + QComboBox::item { + /* Remove to fix #282, #285 and MR #288*/ + /*&:checked { + font-weight: bold; + } + + &:selected { + border: 0px solid transparent; + } + */ + } + + QComboBox::item:alternate { + background: #f6f6f6; + } + + QComboBox::drop-down { + subcontrol-origin: padding; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #E2E2E2, stop:1 #EDEDED); + subcontrol-position: top right; + width: 14px; + border-left: 1px solid transparent; + } + QComboBox::drop-down:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #8cb0ff, stop:1 #b0c9ff); + } + + QComboBox::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); + height: 10px; + width: 10px; + } + + QComboBox::down-arrow:on, QComboBox::down-arrow:hover, QComboBox::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_darker.svg); + } + + + /*================================================================================================== + Tasks panel (custom FreeCAD class) + ==================================================================================================*/ + Gui--PropertyEditor--PropertyEditor { + qproperty-groupTextColor: black; + qproperty-groupBackground: #f6f6f6; + border: 0px solid #C1C1C1; + + } + + /* Action group */ + QFrame[class="panel"] { + background-color: transparent; /* temporal (transparent background) */ + + } + + QSint--ActionGroup { + padding: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ + margin: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ + } + + /* Separator line */ + QSint--ActionGroup QFrame[height="1"], + QSint--ActionGroup QFrame[height="2"], + QSint--ActionGroup QFrame[height="3"], + QSint--ActionGroup QFrame[width="1"], + QSint--ActionGroup QFrame[width="2"], + QSint--ActionGroup QFrame[width="3"] { + border-color: rgba(0,0,0,60); + } + + /* Panel header */ + QSint--ActionGroup QFrame[class="header"] { + border-top: 1px solid #C1C1C1; + border-left: 1px solid #C1C1C1; + border-right: 1px solid #C1C1C1; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #E2E2E2, stop:1 #EDEDED); + border-top-left-radius: 3px; + border-top-right-radius: 3px; + border-bottom-left-radius: 0px; + border-bottom-right-radius: 0px; + margin: 0px; + padding: 0px; + } + + QSint--ActionGroup QFrame[class="header"]:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #8cb0ff, stop:1 #b0c9ff); + } + + QSint--ActionGroup QToolButton[class="header"] { + color: black; /* Task Panel Header text color */ + text-align: left; + font-weight: bold; + border: none; + margin: 0px; + padding: 0px; + } + + QSint--ActionGroup QFrame[class="header"] QLabel { + background-color: transparent; + background-image: url(qss:images_dark-light/down_arrow_dark.svg); + background-repeat: none; + background-position: center center; + padding: 0px; + margin: 0px; + } + + QSint--ActionGroup QFrame[class="header"] QLabel:hover { + background-color: transparent; + background-image: url(qss:images_dark-light/down_arrow_darker.svg); + } + + QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"] { + background-color: transparent; + background-image: url(qss:images_dark-light/up_arrow_dark.svg); + background-repeat: none; + background-position: center center; + padding: 0px; + margin: 0px; + } + + QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"]:hover { + background-color: transparent; + background-image: url(qss:images_dark-light/up_arrow_darker.svg); + } + + QSint--ActionGroup QFrame[class="content"] { + background-color: transparent; /* Task Panel background color */ + margin: 0px; + padding: 0px; + border-bottom: 1px solid #C1C1C1; + border-left: 1px solid #C1C1C1; + border-right: 1px solid #C1C1C1; + border-top-left-radius: 0px; + border-top-right-radius: 0px; + border-bottom-left-radius: 3px; + border-bottom-right-radius: 3px; + } + + QSint--ActionGroup QFrame[class="content"] > QWidget { + background-color: #F6F6F6; /* Task Panel background color */ + } + + /* Fixs for tabs inside Task Panel */ + QSint--ActionGroup QFrame[class="content"] QTabBar::tab:top:selected { + border-bottom-color: #8cb0ff; /* same as Task Panel background color */ + } + + QSint--ActionGroup QFrame[class="content"] QTabBar::tab:bottom:selected { + border-top-color: #8cb0ff; /* same as Task Panel background color */ + } + + QSint--ActionGroup QFrame[class="content"] QTabBar::tab:right:selected { + border-right-color: #8cb0ff; /* same as Task Panel background color */ + } + + QSint--ActionGroup QFrame[class="content"] QTabBar::tab:left:selected { + border-left-color: #8cb0ff; /* same as Task Panel background color */ + } + + /* Fix for buttons with icons that showed cropped (still not happy with result) */ + QSint--ActionGroup QFrame[class="content"] > QWidget > QPushButton { + padding: 2px; /* bigger padding crops text and icons... */ + margin: 0px; + } + + /* Fix for lists inside task panels */ /* sketcher constraints list */ + QSint--ActionGroup QFrame[class="content"] QTreeView, + QSint--ActionGroup QFrame[class="content"] QListView, + QSint--ActionGroup QFrame[class="content"] QTableView { + color: black; + background-color: #ffffff; + } + + + /* found inside Part Design Workbench and "make a draft on a face" Task panel options */ + QSint--ActionGroup QFrame[class="content"] QToolButton { + color: black; + text-align: center; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #E2E2E2, stop:1 #EDEDED); + border: 0px solid #C1C1C1; + padding: 1px 1px; /* different than regular QPushButton */ + margin: 0px; /* different than regular QPushButton */ + min-height: 16px; /* same as QTabBar QPushButton min-width */ + border-radius: 1px; + } + + QSint--ActionGroup QFrame[class="content"] QToolButton:hover{ + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #8cb0ff, stop:1 #b0c9ff); + + } + QSint--ActionGroup QFrame[class="content"] QToolButton:focus { + border: 1px solid #b0c9ff + ; + } + + QSint--ActionGroup QFrame[class="content"] QToolButton:disabled, + QSint--ActionGroup QFrame[class="content"] QToolButton:disabled:checked { + color: #A3A3A3; + background-color: #ffffff; + } + + QSint--ActionGroup QFrame[class="content"] QToolButton:pressed { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #8cb0ff, stop:1 #b0c9ff); + + } + + /* QSlider ---------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qslider + + --------------------------------------------------------------------------- */ + QSlider:disabled { + background: #F6F6F6; + } + + QSlider:focus { + border: 1px solid #b0c9ff; + } + + QSlider::groove:horizontal { + background: #F6F6F6; + border: 1px solid #C1C1C1; + height: 4px; + margin: 0px; + border-radius: 1.9px; + } + + QSlider::groove:vertical { + background: #8cb0ff; + border: 1px solid #C1C1C1; + width: 4px; + margin: 0px; + border-radius: 1.9px; + } + + QSlider::add-page:vertical { + background: #8cb0ff; + border: 1px solid #C1C1C1; + width: 4px; + margin: 0px; + border-radius: 1.9px; + } + + QSlider::add-page:vertical :disabled { + background: #f6f6f6; + } + + QSlider::sub-page:horizontal { + background: #8cb0ff; + border: 1px solid #C1C1C1; + height: 4px; + margin: 0px; + border-radius: 1.9px; + } + + QSlider::sub-page:horizontal:disabled { + background: #8cb0ff; + } + + QSlider::handle:horizontal { + background: #BABABA; + border: 1px solid #C1C1C1; + width: 8px; + height: 8px; + margin: -8px 0px; + border-radius: 1.9px; + } + + QSlider::handle:horizontal:hover { + background: #8cb0ff; + border: 1px solid #8cb0ff; + } + + QSlider::handle:horizontal:focus { + border: 1px solid #b0c9ff; + } + + QSlider::handle:vertical { + background: #A3A3A3; + border: 1px solid #C1C1C1; + width: 8px; + height: 8px; + margin: 0 -8px; + border-radius: 1.9px; + } + + QSlider::handle:vertical:hover { + background: #8cb0ff; + border: 2px solid #8cb0ff; + } + + QSlider::handle:vertical:focus { + border: 1px solid #b0c9ff; + } + + /* QLineEdit -------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlineedit + + --------------------------------------------------------------------------- */ + QLineEdit { + background-color: #ffffff; + padding-top: 2px; + /* This QLineEdit fix 103, 111 */ + padding-bottom: 2px; + /* This QLineEdit fix 103, 111 */ + padding-left: 4px; + padding-right: 4px; + border-style: solid; + border: 1px solid #C1C1C1; + border-radius: 2px; + color: black; + } + + QLineEdit:disabled { + background-color: #F6F6F6; + color: #A3A3A3; + } + + QLineEdit:hover { + border: 1px solid #8cb0ff; + color: black; + } + + QLineEdit:focus { + border: 2px solid #b0c9ff; + } + + QLineEdit:selected { + background-color: #8cb0ff; + color: black; + } + + /* QTabWiget -------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + + --------------------------------------------------------------------------- */ + QTabWidget { + padding: 2px; + selection-background-color: #8cb0ff; + } + + QTabWidget QWidget { + /* Fixes #189 */ + border-radius: 1.9px; + } + + QTabWidget::pane { + margin: 0px; + /* Fixes double border inside pane with pyqt5 */ + padding: 0px; + } + + QTabWidget::pane:selected { + background-color: #8cb0ff; + border: 1px solid #C1C1C1; + } + /* QTabBar ---------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + + --------------------------------------------------------------------------- */ + QTabBar, QDockWidget QTabBar { + qproperty-drawBase: 0; + /* left: 5px; move to the right by 5px - removed for fix */ + } + + QTabBar::close-button, QDockWidget QTabBar::close-button { + border: 0; + margin: 0; + padding: 1px; + image: url(qss:images_dark-light/close_dark.svg); + } + + QTabBar::close-button:hover, QDockWidget QTabBar::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); + /*background-color: rgba(255, 0, 0, 0.3);*/ + } + + QTabBar::close-button:pressed, QDockWidget QTabBar::close-button:pressed { + image: url(qss:images_dark-light/close_.svg); + } + + QTabBar::tab, QDockWidget QTabBar::tab { + /* !selected and disabled ----------------------------------------- */ + /* selected ------------------------------------------------------- */ + padding: 4px; + } + + QTabBar::tab:top:selected:disabled, QDockWidget QTabBar::tab:top:selected:disabled { + color: #797979; + } + + QTabBar::tab:bottom:selected:disabled, QDockWidget QTabBar::tab:bottom:selected:disabled { + color: #797979; + } + + QTabBar::tab:left:selected:disabled, QDockWidget QTabBar::tab:left:selected:disabled { + color: #A0A0A0; + } + + QTabBar::tab:right:selected:disabled, QDockWidget QTabBar::tab:right:selected:disabled { + color: #A0A0A0; + } + + QTabBar::tab:top:!selected:disabled, QDockWidget QTabBar::tab:top:!selected:disabled { + color: #A0A0A0; + } + + QTabBar::tab:bottom:!selected:disabled, QDockWidget QTabBar::tab:bottom:!selected:disabled { + color: #A0A0A0; + + } + + QTabBar::tab:left:!selected:disabled, QDockWidget QTabBar::tab:left:!selected:disabled { + color: #A0A0A0; + + } + + QTabBar::tab:right:!selected:disabled, QDockWidget QTabBar::tab:right:!selected:disabled { + color: #A0A0A0; + } + + QTabBar::tab:top:!selected, QDockWidget QTabBar::tab:top:!selected { + color: #A0A0A0; + } + + QTabBar::tab:bottom:!selected, QDockWidget QTabBar::tab:bottom:!selected { + color: #A0A0A0; + } + + QTabBar::tab:left:!selected, QDockWidget QTabBar::tab:left:!selected { + color: #A0A0A0; + } + + QTabBar::tab:right:!selected, QDockWidget QTabBar::tab:right:!selected { + color: #A0A0A0; + } + + QTabBar::tab:top, QDockWidget QTabBar::tab:top { + color: #A0A0A0; + margin-left: 0px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + min-width: 5px; + border-bottom: 1px solid #A3A3A3; /* same as tab content background color */ + border-radius: 0px; + } + + QTabBar::tab:top:selected, QDockWidget QTabBar::tab:top:selected { + color: black; + border-top: 4px solid #8cb0ff; /* selection color */ + border-bottom: 1px solid transparent; /* same as tab content background color */ + border-left: 1px solid #A3A3A3; + border-right: 1px solid #A3A3A3; + } + + QTabBar::tab:top:!selected:hover, QDockWidget QTabBar::tab:top:!selected:hover { + /*border: 1px solid #8cb0ff;*/ + border: 0px solid #8cb0ff; + background-color: #8cb0ff; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; + color: black; + } + + QTabBar::tab:bottom, QDockWidget QTabBar::tab:bottom { + color: #A0A0A0; + margin-left: 0px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + min-width: 5px; + border-top: 1px solid #A3A3A3; /* same as tab content background color */ + border-radius: 0px; + } + + QTabBar::tab:bottom:selected, QDockWidget QTabBar::tab:bottom:selected { + color: black; + border-bottom: 4px solid #8cb0ff; /* selection color */ + border-top: 1px solid transparent; /* same as tab content background color */ + border-left: 1px solid #A3A3A3; + border-right: 1px solid #A3A3A3; + + } + + QTabBar::tab:bottom:!selected:hover, QDockWidget QTabBar::tab:bottom:!selected:hover { + /*border: 1px solid #8cb0ff;*/ + border: 0px solid #8cb0ff; + background-color: #8cb0ff; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; + color: black; + } + + QTabBar::tab:left, QDockWidget QTabBar::tab:left { + background-color: #F6F6F6; + margin-top: 2px; + + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + border-radius: 4px; + min-height: 5px; + } + + QTabBar::tab:left:selected, QDockWidget QTabBar::tab:left:selected { + background-color: #F6F6F6; + border: 0px solid #b0c9ff; + } + + QTabBar::tab:left:!selected:hover, QDockWidget QTabBar::tab:left:!selected:hover { + border: 0px solid #8cb0ff; + background-color: #8cb0ff; + /* Fixes different behavior #271 */ + margin-right: 0px; + padding-right: -1px; + color: black; + } + + QTabBar::tab:right, QDockWidget QTabBar::tab:right { + background-color: #F6F6F6; + margin-top: 2px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + min-height: 5px; + border: 10px; + } + + QTabBar::tab:right:selected, QDockWidget QTabBar::tab:right:selected { + background-color: #F6F6F6; + border: 0px solid #b0c9ff; + } + + QTabBar::tab:right:!selected:hover, QDockWidget QTabBar::tab:right:!selected:hover { + border: 0px solid #8cb0ff; + background-color: #8cb0ff; + /* Fixes different behavior #271 */ + margin-left: 0px; + padding-left: 0px; + color: black; + } + + QTabBar QToolButton, QDockWidget QTabBar QToolButton { + /* Fixes #136 */ + background-color: #F6F6F6; + height: 12px; + width: 12px; + } + + QTabBar QToolButton:pressed, QDockWidget QTabBar QToolButton:pressed { + border: 0px solid #8cb0ff; + background-color: #8cb0ff; + } + + QTabBar QToolButton:pressed:hover, QDockWidget QTabBar QToolButton:pressed:hover { + border: 0px solid #8cb0ff; + background-color: #8cb0ff; + color: black; + } + + QTabBar QToolButton::left-arrow:enabled, QDockWidget QTabBar QToolButton::left-arrow:enabled { + image: url(qss:images_dark-light/left_arrow_darker.svg); + } + + QTabBar QToolButton::left-arrow:disabled, QDockWidget QTabBar QToolButton::left-arrow:disabled { + image: url(qss:images_dark-light/left_arrow_disabled_dark.svg); + } + + QTabBar QToolButton::right-arrow:enabled, QDockWidget QTabBar QToolButton::right-arrow:enabled { + image: url(qss:images_dark-light/right_arrow_darker.svg); + } + + QTabBar QToolButton::right-arrow:disabled, QDockWidget QTabBar QToolButton::right-arrow:disabled { + image: url(qss:images_dark-light/right_arrow_disabled_dark.svg); + } + + /* QDockWiget ------------------------------------------------------------- + + --------------------------------------------------------------------------- */ + QDockWidget { + background-color: #F6F6F6; + border: 1px solid #C1C1C1; + border-radius: 1.9px; + titlebar-close-icon: url(qss:images_dark-light/transparent.svg); + titlebar-normal-icon: url(qss:images_dark-light/transparent.svg); + } + + QDockWidget::title { + /* Better size for title bar */ + padding: 3px; + spacing: 4px; + border: none; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #E2E2E2, stop:1 #EDEDED); + text-align: center; + font-weight: bold; + } + + QDockWidget::close-button { + icon-size: 10px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/close_dark.svg); + } + + QDockWidget::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); + } + + QDockWidget::close-button:pressed { + image: url(qss:images_dark-light/close_dark.svg); + } + + QDockWidget::float-button { + icon-size: 12px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/undock_dark.svg); + } + + QDockWidget::float-button:hover { + /*background-color: #8cb0ff;*/ + image: url(qss:images_dark-light/undock_blue.svg); + } + + QDockWidget::float-button:pressed { + image: url(qss:images_dark-light/undock_dark.svg); + } + + /* QTreeView QListView QTableView ----------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtreeview + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlistview + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtableview + + --------------------------------------------------------------------------- */ + QTreeView::branch { + background: transparent; + } + + QTreeView::branch:has-siblings:!adjoins-item { + border-image: url(qss:images_dark-light/branch_vline_dark.svg) 0; + } + + QTreeView::branch:has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_more_dark.svg) 0; + } + + QTreeView::branch:!has-children:!has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_end_dark.svg) 0; + } + + QTreeView::branch:closed:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_closed_dark.svg) 0; + } + + QTreeView::branch:has-children:!has-siblings:closed { + border-image: url(qss:images_dark-light/branch_end_closed_dark.svg) 0; + } + + QTreeView::branch:open:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_open_dark.svg) 0; + } + + QTreeView::branch:open:has-children:!has-siblings { + border-image: url(qss:images_dark-light/branch_end_open_dark.svg) 0; + } + + QTreeView::indicator:checked, + QListView::indicator:checked, + QTableView::indicator:checked, + QColumnView::indicator:checked { + image: url(qss:images_dark-light/checkbox_dark.svg); + } + + QTreeView::indicator:checked:hover, QTreeView::indicator:checked:focus, QTreeView::indicator:checked:pressed, + QListView::indicator:checked:hover, + QListView::indicator:checked:focus, + QListView::indicator:checked:pressed, + QTableView::indicator:checked:hover, + QTableView::indicator:checked:focus, + QTableView::indicator:checked:pressed, + QColumnView::indicator:checked:hover, + QColumnView::indicator:checked:focus, + QColumnView::indicator:checked:pressed { + image: url(qss:images_dark-light/checkbox_light_hover.svg); + } + + QTreeView::indicator:unchecked, + QListView::indicator:unchecked, + QTableView::indicator:unchecked, + QColumnView::indicator:unchecked { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); + } + + QTreeView::indicator:unchecked:hover, QTreeView::indicator:unchecked:focus, QTreeView::indicator:unchecked:pressed, + QListView::indicator:unchecked:hover, + QListView::indicator:unchecked:focus, + QListView::indicator:unchecked:pressed, + QTableView::indicator:unchecked:hover, + QTableView::indicator:unchecked:focus, + QTableView::indicator:unchecked:pressed, + QColumnView::indicator:unchecked:hover, + QColumnView::indicator:unchecked:focus, + QColumnView::indicator:unchecked:pressed { + image: url(qss:images_dark-light/checkbox_unchecked_hover_dark.svg); + } + + QTreeView::indicator:indeterminate, + QListView::indicator:indeterminate, + QTableView::indicator:indeterminate, + QColumnView::indicator:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); + } + + QTreeView::indicator:indeterminate:hover, QTreeView::indicator:indeterminate:focus, QTreeView::indicator:indeterminate:pressed, + QListView::indicator:indeterminate:hover, + QListView::indicator:indeterminate:focus, + QListView::indicator:indeterminate:pressed, + QTableView::indicator:indeterminate:hover, + QTableView::indicator:indeterminate:focus, + QTableView::indicator:indeterminate:pressed, + QColumnView::indicator:indeterminate:hover, + QColumnView::indicator:indeterminate:focus, + QColumnView::indicator:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); + } + + QTreeView, + QListView, + QTableView, + QColumnView { + background-color: #F6F6F6; /* background of a lot of stuff including spreadsheets.*/ + border: 0px solid #C1C1C1; + color: black; + gridline-color: #A3A3A3; + border-radius: 0px; + } + +QTableView, +QListView { + background-color: rgba(0, 0, 0, 0.050); /* background of a lot of stuff including spreadsheets.*/ +} + + + QTreeView:disabled, + QListView:disabled, + QTableView:disabled, + QColumnView:disabled { + background-color: #ffffff; + color: #A3A3A3; + } + + QTreeView:selected, + QListView:selected, + QTableView:selected, + QColumnView:selected { + background-color: #8cb0ff; + color: black; + } + + QTreeView:focus, + QListView:focus, + QTableView:focus, + QColumnView:focus { + border: 1px solid #b0c9ff; + } + + QTreeView::item:pressed, + QListView::item:pressed, + QTableView::item:pressed, + QColumnView::item:pressed { + background-color: #8cb0ff; + } + + QTreeView::item:selected:active, + QListView::item:selected:active, + QTableView::item:selected:active, + QColumnView::item:selected:active { + background-color: #8cb0ff; + } + + QTreeView::item:selected:!active, + QListView::item:selected:!active, + QTableView::item:selected:!active, + QColumnView::item:selected:!active { + color: black; + background-color: #BABABA; + } + + QTreeView::item:!selected:hover, + QListView::item:!selected:hover, + QTableView::item:!selected:hover, + QColumnView::item:!selected:hover { + outline: 0; + color: black; + background-color: #8cb0ff; + } + + QTableCornerButton::section { + background-color: #F6F6F6; + border: 1px transparent #C1C1C1; + border-radius: 0px; + } + + QTableView::item { + color: black; + } + QTableView { + /*qproperty-AliasedCellBackgroundColor: #f700ff;*/ + /*qproperty-aliasBgColor: #f700ff;*/ + } + + /* QHeaderView ------------------------------------------------------------ + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qheaderview + + --------------------------------------------------------------------------- */ + QHeaderView { + background-color: transparent; + text-align: center; + } + + QHeaderView:disabled { + background-color: #F6F6F6; + color: rgb(174, 174, 174); + } + + QHeaderView::section { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #E2E2E2, stop:1 #EDEDED); + color: black; + border: 1px solid #C1C1C1; + font-size: 13px; + font-weight: bold; + } + + QHeaderView::section::horizontal { + padding-top: 1px; + padding-bottom: 1px; + padding-left: 5px; + padding-right: 0px; + } + + QHeaderView::section::horizontal::first, QHeaderView::section::horizontal::only-one { + border-left: 0px solid #C1C1C1; + } + + QHeaderView::section::horizontal:disabled { + color: #BABABA; + } + + QHeaderView::section::vertical { + padding-top: 1px; + padding-bottom: 0; + padding-left: 1px; + padding-right: 0px; + border-top: 2px solid #C1C1C1; + } + + QHeaderView::section::vertical::first, QHeaderView::section::vertical::only-one { + border-top: 2px solid #C1C1C1; + } + + QHeaderView::section::vertical:disabled { + border-top: 2px solid #C1C1C1; + } + + QHeaderView::down-arrow { + /* Those settings (border/width/height/background-color) solve bug */ + /* transparent arrow background and size */ + background-color: transparent; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/down_arrow_dark.svg); + } + + QHeaderView::up-arrow { + background-color: transparent; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/up_arrow_dark.svg); + } + + /* QToolBox -------------------------------------------------------------- + + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbox + used in PATH + + --------------------------------------------------------------------------- */ + QToolBox { + padding: 0px; + border: 1px solid #A3A3A3; + border-radius: 4px; + background-color: transparent; + } + + QToolBox:selected { + padding: 0px; + border: 0px solid #8cb0ff; + } + + QToolBox::tab { + background-color: transparent; + border: 0px solid #A3A3A3; + color: black; + background-image: url(qss:images_dark-light/down_arrow_darker.svg); background-repeat: none; background-position: center left; -} + } -QToolBar QToolButton#qt_toolbar_ext_button:hover { - /*background-image: url(qss:images_dark-light/more_light.svg);*/ - border-color: #e0e0e0; - background-color: #e0e0e0; -} + QToolBox::tab:disabled { + color: #A3A3A3; + } -QToolBar QToolButton#qt_toolbar_ext_button:on { - /*background-image: url(qss:images_dark-light/more_light.svg);*/ - border-color: #e0e0e0; - background-color: #e0e0e0; -} + QToolBox::tab:selected { + background-color: #A3A3A3; + background-image: url(qss:images_dark-light/transparent.svg); + padding-right: 5px; + background-repeat: none; + } - -/*================================================================================================== -Tables (spreadsheets) -==================================================================================================*/ -QTableView { - gridline-color: #d2d2d2; - selection-color: #1b3774; - selection-background-color: #cbd8e6; -} - -QTableView::item:hover { - background-color: rgba(0,0,0,10); /* temporal: is it displayed in Linux or Windows? on OSX it isn't */ -} - -QTableView::item:disabled { - color: #e6e6e6; -} - -QTableView::item:selected { - color: #1b3774; - border-color: #cbd8e6; /* same as focused background color */ - border-bottom-color: #7cabf9; /* same as focused border color */ -} - -/* fix for elements inside the cells */ -QTableView > QWidget > QComboBox, -QTableView > QWidget > QAbstractSpinBox, -QTableView > QWidget > QSpinBox, -QTableView > QWidget > QDoubleSpinBox, -QTableView > QWidget > QLineEdit, -QTableView > QWidget > QTextEdit, -QTableView > QWidget > QTimeEdit, -QTableView > QWidget > QDateEdit, -QTableView > QWidget > QDateTimeEdit, -QTableView > QWidget > QComboBox:drop-down, -QTableView > QWidget > QAbstractSpinBox:up-button, -QTableView > QWidget > QSpinBox:up-button, -QTableView > QWidget > QDoubleSpinBox:up-button, -QTableView > QWidget > QTimeEdit:up-button, -QTableView > QWidget > QDateEdit:up-button, -QTableView > QWidget > QDateTimeEdit:up-button, -QTableView > QWidget > QAbstractSpinBox:down-button, -QTableView > QWidget > QSpinBox:down-button, -QTableView > QWidget > QDoubleSpinBox:down-button, -QTableView > QWidget > QTimeEdit:down-button, -QTableView > QWidget > QDateEdit:down-button, -QTableView > QWidget > QDateTimeEdit:down-button, -QTableView > QWidget > Gui--ColorButton { - border-radius: 0px; -} - -QTableView > QWidget > QComboBox, -QTableView > QWidget > QAbstractSpinBox, -QTableView > QWidget > QSpinBox, -QTableView > QWidget > QDoubleSpinBox, -QTableView > QWidget > QLineEdit, -QTableView > QWidget > QTextEdit, -QTableView > QWidget > QTimeEdit, -QTableView > QWidget > QDateEdit, -QTableView > QWidget > QDateTimeEdit { + QToolBox::tab:selected:disabled { + background-color: #A3A3A3; + border-bottom: 0px solid #cccccc; color: black; - background-color: transparent; - border-color: transparent; -} + } -QTableView > QWidget > QComboBox:drop-down, -QTableView > QWidget > QAbstractSpinBox:up-button, -QTableView > QWidget > QSpinBox:up-button, -QTableView > QWidget > QDoubleSpinBox:up-button, -QTableView > QWidget > QTimeEdit:up-button, -QTableView > QWidget > QDateEdit:up-button, -QTableView > QWidget > QDateTimeEdit:up-button, -QTableView > QWidget > QAbstractSpinBox:down-button, -QTableView > QWidget > QSpinBox:down-button, -QTableView > QWidget > QDoubleSpinBox:down-button, -QTableView > QWidget > QTimeEdit:down-button, -QTableView > QWidget > QDateEdit:down-button, -QTableView > QWidget > QDateTimeEdit:down-button, -QTableView > QWidget > Gui--ColorButton { - background-color: rgba(0,0,0,30); -} + QToolBox::tab:!selected { -QTableView > QWidget > QComboBox:focus, -QTableView > QWidget > QAbstractSpinBox:focus, -QTableView > QWidget > QSpinBox:focus, -QTableView > QWidget > QDoubleSpinBox:focus, -QTableView > QWidget > QLineEdit:focus, -QTableView > QWidget > QTextEdit:focus, -QTableView > QWidget > QTimeEdit:focus, -QTableView > QWidget > QDateEdit:focus, -QTableView > QWidget > QDateTimeEdit:focus { - color: #1b3774; - selection-color: white; - selection-background-color: #5e90fa; - border-color: #cbd8e6; - background-color: #cbd8e6; -} + } -QTableView > QWidget > QComboBox:disabled, -QTableView > QWidget > QAbstractSpinBox:disabled, -QTableView > QWidget > QSpinBox:disabled, -QTableView > QWidget > QDoubleSpinBox:disabled, -QTableView > QWidget > QLineEdit:disabled, -QTableView > QWidget > QTextEdit:disabled, -QTableView > QWidget > QTimeEdit:disabled, -QTableView > QWidget > QDateEdit:disabled, -QTableView > QWidget > QDateTimeEdit:disabled { - color: rgba(0,0,0,120); - background-color: transparent; - border-color: transparent; -} + QToolBox::tab:!selected:disabled { + background-color: #F6F6F6; + } -QTableView > QWidget > QComboBox:read-only, -QTableView > QWidget > QAbstractSpinBox:read-only, -QTableView > QWidget > QSpinBox:read-only, -QTableView > QWidget > QDoubleSpinBox:read-only, -QTableView > QWidget > QLineEdit:read-only, -QTableView > QWidget > QTextEdit:read-only, -QTableView > QWidget > QTimeEdit:read-only, -QTableView > QWidget > QDateEdit:read-only, -QTableView > QWidget > QDateTimeEdit:read-only { - color: black; - background-color: transparent; - border-color: transparent; -} + QToolBox::tab:hover { + background-color: #8cb0ff; + } - -/*================================================================================================== -SELECTORTOOLBAR widget (3rd party plugin) -==================================================================================================*/ -QToolBar:horizontal#Selector, -QToolBar:vertical#Selector { - background-color: rgba(0,0,0,120); - margin: 0px; + QToolBox QScrollArea QWidget QWidget { padding: 0px; -} - -QToolBar::handle:top#Selector, -QToolBar::handle:bottom#Selector, -QToolBar::handle:horizontal#Selector { - alignment: bottom left; -} - -QToolBar::handle:left#Selector, -QToolBar::handle:right#Selector, -QToolBar::handle:vertical#Selector { - width: 100%; - alignment: center left; -} - -QToolBar:top#Selector QToolButton, -QToolBar:bottom#Selector QToolButton, -QToolBar:horizontal#Selector QToolButton { - alignment: bottom left; -} - -QToolBar:left#Selector QToolButton, -QToolBar:right#Selector QToolButton, -QToolBar:vertical#Selector QToolButton { - alignment: center left; -} - -QToolButton[toolbar_orientation="horizontal"] { - /* nothing, when Horizontal there's no need to add special parameters */ -} - -QToolButton[toolbar_orientation="vertical"] { - /* nothing, when Horizontal there's no need to add special parameters */ -} - -QToolBar#Selector QToolButton { - border: none; - margin: 0px; - padding: 2px 6px; - border-radius: 0px; -} - -/* Active tab */ -QToolBar#Selector QToolButton:checked { - color: black; - background-color: #f5f5f5; -} - -/* Unactive tabs */ -QToolBar#Selector QToolButton:!checked { - color: rgba(255,255,255,160); + border: 0px; background-color: transparent; - margin: 0px; -} + } -/* Unactive tabs (hover) */ -QToolBar#Selector QToolButton:!checked:hover { - color: rgba(255,255,255,255); - background-color: rgba(255,255,255,20); -} + /* QFrame ----------------------------------------------------------------- -/* Unactive tabs (pressed) */ -QToolBar#Selector QToolButton:!checked:pressed { - background-color: rgba(255,255,255,40); -} + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe + https://doc.qt.io/qt-5/qframe.html#-prop + https://doc.qt.io/qt-5/qframe.html#details + https://stackoverflow.com/questions/14581498/qt-stylesheet-for-hline-vline-color + --------------------------------------------------------------------------- */ + /* (dot) .QFrame fix #141, #126, #123 */ + .QFrame { + border-radius: 0px; + border: 0px solid #C1C1C1; + background-color: #A3A3A3; + /* No frame */ + /* HLine */ + /* HLine */ + } -/*================================================================================================== -TABBAR widget (3rd party plugin) -==================================================================================================*/ -QTabWidget#TabBar > QTabBar { - border-top: 0; -} + .QFrame[frameShape="0"] { + border-radius: 1.9px; + border: 1px solid #C1C1C1; + } -QTabWidget#TabBar > QTabBar::tab:top, -QTabWidget#TabBar > QTabBar::tab:bottom { - min-width: -1; -} + .QFrame[frameShape="4"] { + max-height: 1px; + border: none; + background-color: #f6f6f6; + } -QTabWidget#TabBar > QTabBar::tab:left, -QTabWidget#TabBar > QTabBar::tab:right { - min-height: -1; -} + .QFrame[frameShape="5"] { + max-width: 1px; + border: none; + background-color: #F6F6F6; + } + /* QSplitter -------------------------------------------------------------- -/*================================================================================================== -EXPERIMENTAL -==================================================================================================*/ + https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsplitter -/* Fix for preventing elements in different rows to accidentally overlap */ -QDialog QGroupBox QFrame { - margin: 2px 0px; -} + --------------------------------------------------------------------------- */ + QSplitter { + background-color: #f6f6f6; + spacing: 1px; + padding: 1px; + margin: 1px; + } -*[mandatoryField="true"] { background-color: cyan } + QSplitter::handle { + margin: 0px 0px; + padding: 0px; + } -/* Hack to avoid QPushButton text partially hidden under menu-indicator */ -QPushButton#NavigationIndicator::menu-indicator { - image: none; - width: 0px; -} + QSplitter::handle:horizontal { + background-image: url(qss:images_dark-light/splitter_vertical_light.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + width: 1px; + } -/*================================================================================================== -SKETCHER -==================================================================================================*/ + QSplitter::handle:vertical { + background-image: url(qss:images_dark-light/splitter_horizontal_light.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + height: 1px; + } -Gui--StatefulLabel[state="empty_sketch"] { - color : rgba(0,0,0,127); /* 50% opacity black */ -} -Gui--StatefulLabel[state="under_constrained"] { - color : rgba(0,0,0,255); /* Black */ -} -Gui--StatefulLabel[state="conflicting_constraints"] { - color : rgba(255,0,0,255); /* Red */ -} -Gui--StatefulLabel[state="malformed_constraints"] { - color : rgba(255,0,0,255); /* Red */ -} -Gui--StatefulLabel[state="redundant_constraints"] { - color : rgba(255,69,0,255); /* Orange red */ -} -Gui--StatefulLabel[state="partially_redundant_constraints"] { - color : rgba(65,105,225,255); /* Royal blue */ -} -Gui--StatefulLabel[state="solver_failed"] { - color : rgba(255,0,0,255); /* Red */ - font-weight: bold; -} -Gui--StatefulLabel[state="fully_constrained"] { - color : rgba(0,255,0,255); /* Green */ - font-weight: bold; -} -Gui--UrlLabel { - color : rgba(0,0,255,255); /* Blue */ - text-decoration : underline; -} + QSplitter::handle:hover { + background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); + background-position: center center; + background-repeat: none; + background-color: #8cb0ff; + } + + /* QDateEdit, QDateTimeEdit ----------------------------------------------- + + --------------------------------------------------------------------------- */ + QDateEdit, QDateTimeEdit { + selection-background-color: #8cb0ff; + border-style: solid; + border: 1px solid #C1C1C1; + border-radius: 1.9px; + /* This fixes 103, 111 */ + padding-top: 2px; + /* This fixes 103, 111 */ + padding-bottom: 2px; + padding-left: 4px; + padding-right: 4px; + min-width: 10px; + } + + QDateEdit:on, QDateTimeEdit:on { + selection-background-color: #8cb0ff; + } + + QDateEdit::drop-down, QDateTimeEdit::drop-down { + subcontrol-origin: padding; + subcontrol-position: top right; + width: 12px; + border-left: 1px solid #C1C1C1; + } + + QDateEdit::down-arrow, QDateTimeEdit::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); + height: 8px; + width: 8px; + } + + QDateEdit::down-arrow:on, QDateEdit::down-arrow:hover, QDateEdit::down-arrow:focus, QDateTimeEdit::down-arrow:on, QDateTimeEdit::down-arrow:hover, QDateTimeEdit::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_darker.svg); + } + + QDateEdit QAbstractItemView, QDateTimeEdit QAbstractItemView { + background-color: #F6F6F6; + border-radius: 2px; + border: 1px solid #C1C1C1; + selection-background-color: #8cb0ff; + } + + /* QAbstractView ---------------------------------------------------------- + + --------------------------------------------------------------------------- */ + QAbstractView:hover { + border: 1px solid #8cb0ff; + color: black; + } + + QAbstractView:selected { + background: #8cb0ff; + color: black; + } + + /* PlotWidget ------------------------------------------------------------- + + --------------------------------------------------------------------------- */ + PlotWidget { + /* Fix cut labels in plots #134 */ + padding: 0px; + } \ No newline at end of file diff --git a/src/Gui/Stylesheets/Light-green.qss b/src/Gui/Stylesheets/Light-green.qss index e6e0109e01..1962d3828c 100644 --- a/src/Gui/Stylesheets/Light-green.qss +++ b/src/Gui/Stylesheets/Light-green.qss @@ -1,792 +1,57 @@ /* ABOUT ============================================================================================================ -version 2.21 -Qt theme (stylesheet) specially developed for FreeCAD (https://www.freecad.org/). -It might work with other software that uses Qt styling. +Revised stylesheet based on the original from Pablo Gil Fernández made by MisterMaker - -LICENSE +KNOWN BUGS and TO DO ============================================================================================================ -Copyright (c) 2019 Pablo Gil Fernández +Please, follow the link to get updated information: +https://forum.freecad.org/viewtopic.php?t=78431 -This work is licensed under the Creative Commons Attribution-ShareAlike 4.0 International License. -To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/4.0/. - - -INSTALLATION +INSTALLATION WHEN NECESSARY ============================================================================================================ 1) Place the .qss files and /images/ folder in the path that fits your OS: OSX = /Users/[YOUR_USER_NAME]/Library/Preferences/FreeCAD/Gui/Stylesheets/ WINDOWS = C:/[INSTALLATION_PATH]/FreeCAD/data/Gui/Stylesheets/ LINUX = /home/[YOUR_USER_NAME]/.FreeCAD/Gui/Stylesheets/ - -CUSTOMIZATION ============================================================================================================ -If you would like to change the overall look/style of the theme, just find and replace following colors in the whole file: - BACKGROUND (darker to lighter) - black - #505050 - #6e6e6e - #828282 - #a2a2a0 - #b6b6b6 - #c8c8c8 - #c3c3c3 - #d2d2d2 - #dcdcdc - #e0e0e0 - #e6e6e6 - #f0f0f0 - #f5f5f5 = main background color - white - - SELECTION (darker to lighter) - #566214 - #74831d - #819c0c - #94b30f = main selection color - #9bbc12 = used to build QSpinBox up and down buttons, it's used as color in the middle - #a5c61a - #c5d675 - #dadfc5 +TO MODIFY USE THESE COLORS: + #B7D300 + #E1FF00 +See Qt documentation: + + - https://doc.qt.io/qt-5/stylesheet.html + - https://doc.qt.io/qt-5/stylesheet-reference.html + - https://doc.qt.io/qt-5/stylesheet-examples.html + +--------------------------------------------------------------------------- */ -KNOWN BUGS and TO DO -============================================================================================================ -Please, follow the link to get updated information: https://forum.freecad.org/viewtopic.php?f=10&t=12417 +/* Reset elements ------------------------------------------------------------ -*/ +Resetting everything helps to unify styles across different operating systems - -/*================================================================================================== -Reset elements -==================================================================================================*/ -/* Resetting everything helps to unify styles across different operating systems */ +--------------------------------------------------------------------------- */ * { - padding: 0px; - margin: 0px; - border: 0px; - border-style: none; - border-image: none; - outline: 0; - color: #505050; /* Default color for labels and different text elements that usually use dark colors */ + padding: 0px; + margin: 0px; + border: 0px; + border-style: none; + border-image: none; + outline: 0; } /* specific reset for elements inside QToolBar */ QToolBar * { - margin: 0px; - padding: 0px; + margin: 0px; + padding: 0px; } +/*hacks */ -/*================================================================================================== -Main window -==================================================================================================*/ -QMainWindow, -QDialog, -QDockWidget, -QToolBar { - background-color: #f5f5f5; /* main background color */ -} - -QMdiArea { - background-image: url(qss:images_dark-light/background_freecad_dark.svg); - background-position: center center; - background-repeat: no-repeat; -} - - -/*================================================================================================== -Sub windows -==================================================================================================*/ -QMdiSubWindow { - border:1px solid #828282; - margin-top: 30px; - margin-left: 4px; - margin-right: 4px; - margin-bottom:4px; -} - - -/*================================================================================================== -MENUS -==================================================================================================*/ -QMenuBar, -QMenuBar::item { - color: black; - background-color: #f5f5f5; /* main background color */ -} - -QMenu, -QMenu::item { - color: black; - background-color: #f5f5f5; /* main background color */ - text-decoration: none; -} - -QMenuBar::item:selected, -QMenuBar::item:pressed, -QMenu::item:selected, -QMenu::item:pressed { - color: white; - background-color: #94b30f; -} - -QMenu::right-arrow { - width: 10px; - height: 10px; - image:url(qss:images_dark-light/right_arrow_dark.svg); - margin-right: 2px; -} - -QMenu::right-arrow:selected { - image:url(qss:images_dark-light/right_arrow_lighter.svg); -} - -QMenu::item { - padding: 2px 4px; /* make room for icon at left */ - border: 1px solid transparent; /* reserve space for selection border */ -} - -QMenu::icon { - margin-left: 1px; - margin-right: 1px; -} - -QMenu::icon:checked { /* appearance of a 'checked' icon */ - background: #94b30f; - border: 2px #94b30f; - position: absolute; - border-radius: 2px; -} - -QMenu::separator { - height: 1px; - background-color: rgba(0,0,0,30); - margin: 6px 4px; -} - -QMenu::indicator:non-exclusive:checked { - color: white; -} - -/* Fix for elements inside a drop-down menu */ -QMenu QRadioButton, -QMenu QCheckBox, -QMenu QPushButton, -QMenu QToolButton { - color: black; /* same as regular QRadioButton and QCheckBox */ -} - -QMenu QRadioButton:hover, -QMenu QCheckBox:hover, -QMenu QPushButton:hover, -QMenu QToolButton:hover, -QMenu QPushButton:pressed, -QMenu QToolButton:pressed, -QMenu QPushButton:selected, -QMenu QToolButton:selected { - color: white; - background-color: #94b30f; /* same as QMenu::item:selected and QMenu::item:pressed */ -} - -QMenu QRadioButton:disabled, -QMenu QCheckBox:disabled { - color: #6e6e6e; -} - -QMenu QRadioButton::indicator:disabled, -QMenu QCheckBox::indicator:disabled { - color: #6e6e6e; - background-color: transparent; - border: 1px solid #6e6e6e; -} - - -/*================================================================================================== -Tool bar -==================================================================================================*/ -QToolBar { - border: none; - padding: 2px; -} - -QToolBar::handle:top, -QToolBar::handle:bottom, -QToolBar::handle:horizontal { - background-image: url(qss:images_dark-light/Hmovetoolbar_dark.svg); - width: 10px; - margin: 4px 2px; - background-position: top right; - background-repeat: repeat-y; -} - -QToolBar::handle:left, -QToolBar::handle:right, -QToolBar::handle:vertical { - background-image: url(qss:images_dark-light/Vmovetoolbar_dark.svg); - height: 10px; - margin: 2px 4px; - background-position: left bottom; - background-repeat: repeat-x; -} - -QToolBar::separator:top, -QToolBar::separator:bottom, -QToolBar::separator:horizontal { - width: 1px; - margin: 6px 4px; - background-color: rgba(0,0,0,30); -} - -QToolBar::separator:left, -QToolBar::separator:right, -QToolBar::separator:vertical { - height: 1px; - margin: 4px 6px; - background-color: rgba(0,0,0,30); -} - - -/*================================================================================================== -Group box -==================================================================================================*/ -QGroupBox { - color: rgba(0,0,0,120); - border:1px solid rgba(0, 0, 0, 20); /* lighter than its own border-color */; - border-radius: 3px; - margin-top: 10px; - padding: 6px; - background-color: rgba(255, 255, 255, 15); -} - -QGroupBox:title { - top: -8px; - left: 12px; -} - -/* NOTE: QGroupBox checkboxes are styles with regular ones so that the all get the same style */ -/* QGroupBox::indicator { - width: 13px; - height: 13px; -} - -QGroupBox::indicator:unchecked { - image: url(:/images/checkbox_unchecked.png); -} */ - - -/*================================================================================================== -Tooltip -==================================================================================================*/ -QToolTip { - color: white; - background-color: #828282; - /*opacity: 90%; doesn't correctly work */ - padding: 4px; - border-radius: 3px; /* has no effect */ -} - - -/*================================================================================================== -Dock widget -==================================================================================================*/ -QDockWidget { - color: rgba(0,0,0,120); - titlebar-close-icon: url(qss:images_dark-light/close_dark.svg); - titlebar-normal-icon: url(qss:images_dark-light/undock_dark.svg); -} - -QDockWidget::title { - text-align: center; - background-color: rgba(0,0,0,10); - border: 4px solid #f5f5f5; /* fix to simulate margin between this :title and tabs */ /* same as main background color */ - border-radius: 6px; /* bigger than normal due to previous border fix */ - padding: 4px 0px; /* also needed because of previous border fix */ -} - -QDockWidget::close-button, -QDockWidget::float-button { - border: none; - background: transparent; - border-radius: 3px; - subcontrol-origin: padding; - subcontrol-position: right center; -} - -QDockWidget::close-button { - right: 4px; -} - -QDockWidget::float-button { - right: 22px; -} - -QDockWidget::close-button:hover, -QDockWidget::float-button:hover { - background-color: rgba(0,0,0,15); -} - -QDockWidget::close-button:pressed, -QDockWidget::float-button:pressed { - background-color: rgba(0,0,0,30); -} - -/* fix for Python Console (probably there is a smarter way to arrive to it) */ -QDockWidget > QFrame { - background-color: #f0f0f0; - border: 1px solid #c3c3c3; -} - - -/*================================================================================================== -Progress bar -==================================================================================================*/ -QProgressBar, -QProgressBar:horizontal { - color: white; - background-color: rgba(0,0,0,10); - text-align: center; - border: 1px solid rgba(0,0,0,80); - padding: 1px; - border-radius: 3px; -} -QProgressBar::chunk, -QProgressBar::chunk:horizontal { - background-color: qlineargradient(spread:pad, x1:1, y1:0.545, x2:1, y2:0, stop:0 #819c0c, stop:1 #94b30f); - border-radius: 3px; -} - - -/*================================================================================================== -Scroll -==================================================================================================*/ -QAbstractScrollArea { - border-radius: 2px; - background-color: transparent; -} - -QAbstractScrollArea::corner { - border: none; - background-color: transparent; -} - -QScrollBar:horizontal { - background-color: transparent; - height: 15px; - margin: 0px; -} - -QScrollBar::handle:vertical, -QScrollBar::handle:horizontal { - background-color: rgba(0,0,0,80); -} - -QScrollBar::handle:vertical:hover, -QScrollBar::handle:horizontal:hover { - background-color: rgba(0,0,0,100); -} - -QScrollBar::handle:horizontal { - min-width: 5px; - border-radius: 3px; - margin: 4px 15px; -} - -QScrollBar::sub-line:horizontal { - margin: 1px 3px 0px 3px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/left_arrow_dark.svg); - width: 6px; - height: 10px; - subcontrol-position: left; - subcontrol-origin: margin; -} - -QScrollBar::add-line:horizontal { - margin: 1px 3px 0px 3px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/right_arrow_dark.svg); - width: 6px; - height: 10px; - subcontrol-position: right; - subcontrol-origin: margin; -} - -QScrollBar::sub-line:horizontal:hover, -QScrollBar::sub-line:horizontal:on { - border-image: url(qss:images_dark-light/left_arrow_darker.svg); -} - -QScrollBar::add-line:horizontal:hover, -QScrollBar::add-line:horizontal:on { - border-image: url(qss:images_dark-light/right_arrow_darker.svg); -} - -QScrollBar::up-arrow:horizontal, -QScrollBar::down-arrow:horizontal { - background-color: none; -} - -QScrollBar::add-page:horizontal, -QScrollBar::sub-page:horizontal { - background-color: transparent; -} - -QScrollBar:vertical { - background-color: transparent; - width: 15px; - margin: 0px; -} - -QScrollBar::handle:vertical { - min-height: 5px; - border-radius: 3px; - margin: 15px 4px; -} - -QScrollBar::sub-line:vertical { - margin: 3px 0px 3px 1px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/up_arrow_dark.svg); - height: 6px; - width: 10px; - subcontrol-position: top; - subcontrol-origin: margin; -} - -QScrollBar::add-line:vertical { - margin: 3px 0px 3px 1px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/down_arrow_dark.svg); - height: 6px; - width: 10px; - subcontrol-position: bottom; - subcontrol-origin: margin; -} - -QScrollBar::sub-line:vertical:hover, -QScrollBar::sub-line:vertical:on { - border-image: url(qss:images_dark-light/up_arrow_darker.svg); -} - -QScrollBar::add-line:vertical:hover, -QScrollBar::add-line:vertical:on { - border-image: url(qss:images_dark-light/down_arrow_darker.svg); -} - -QScrollBar::up-arrow:vertical, -QScrollBar::down-arrow:vertical { - background-color: none; -} - -QScrollBar::add-page:vertical, -QScrollBar::sub-page:vertical { - background-color: transparent; -} - - -/*================================================================================================== -Tab bar -==================================================================================================*/ -QTabWidget::pane { - background-color: transparent; /* temporal (transparent background) */ /* tab content background color */ - position: absolute; -} - -QTabWidget::pane:top { - top: -1px; - border-top: 1px solid #d2d2d2; -} - -QTabWidget::pane:bottom { - bottom: -1px; - border-bottom: 1px solid #d2d2d2; -} - -QTabWidget::pane:left { - right: -1px; - border-right: 1px solid #d2d2d2; -} - -QTabWidget::pane:right { - left: -1px; - border-left: 1px solid #d2d2d2; -} - -QTabWidget::tab-bar:top, -QTabWidget::tab-bar:bottom { - left: 10px; -} - -QTabWidget::tab-bar:left, -QTabWidget::tab-bar:right { - top: 10px; -} - -QTabBar { - qproperty-drawBase: 0; /* important */ - background-color: transparent; -} - -/* Workaround for QTabBars created from docked QDockWidgets which don't draw the border if not set and reset as follows: */ -QTabBar { - border-top: 1px solid #d2d2d2; /* set color for all QTabBars */ -} -QDockWidget QTabBar { - border-color: transparent; /* set color for all QTabBars but ones created from QDockWidget */ -} -QDialog QTabBar { - border-color: transparent; /* set color for QTabBars inside Preferences dialog */ -} -/* end fix */ - -QTabBar::tab { - background-color: transparent; - border: 1px solid transparent; - padding: 3px; -} - -QTabBar::tab:top, -QTabBar::tab:bottom { - border-top-width: 4px; /* same as selected tab colored border in order to center close-button */ - border-bottom-width: 4px; /* same as selected tab colored border in order to center close-button */ - min-width: 11ex; - margin-left: 2px; - margin-right: 2px; -} - -QTabBar::tab:left, -QTabBar::tab:right { - border-left-width: 4px; /* same as selected tab colored border in order to center close-button */ - border-right-width: 4px; /* same as selected tab colored border in order to center close-button */ - min-height: 14ex; - margin-top: 2px; - margin-bottom: 2px; -} - -QTabBar::tab:selected { - background-color: #f5f5f5; /* same as tab content background color */ - border-color: #d2d2d2; -} - -QTabBar::tab:top:selected { - border-top: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #94b30f, stop:1 #819c0c); /* selection color */ - border-bottom-color: #f5f5f5; /* same as tab content background color */ -} - -QTabBar::tab:bottom:selected { - border-bottom: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #94b30f, stop:1 #819c0c); /* selection color */ - border-top-color: #f5f5f5; /* same as tab content background color */ -} - -QTabBar::tab:right:selected { - border-left: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:1, y2:0, stop:0 #94b30f, stop:1 #819c0c); /* selection color */ - border-right-color: #f5f5f5; /* same as tab content background color */ -} - -QTabBar::tab:left:selected { - border-right: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:1, y2:0, stop:0 #94b30f, stop:1 #819c0c); /* selection color */ - border-left-color: #f5f5f5; /* same as tab content background color */ -} - -QTabBar::tab:!selected { - color: rgba(0,0,0,160); -} - -QTabBar::tab:!selected:hover { - color: rgba(0,0,0,220); - background-color: rgba(0,0,0,20); -} - -QTabBar::tab:first:selected { - margin-left: 0; /* the first selected tab has nothing to overlap with on the left */ -} - -QTabBar::tab:last:selected { - margin-right: 0; /* the last selected tab has nothing to overlap with on the right */ -} - -QTabBar::tab:only-one { - margin: 0; /* if there is only one tab, we don't want overlapping margins */ -} - -/* hack to access Preference TabBar background */ -QDialog#Gui__Dialog__DlgPreferences > QFrame QFrame { - background-color: transparent; /* main background color (in Windows is #f5f5f5) */ -} - -/* fix for previous hack that broke QTabWidget background on Windows */ -QDialog#Gui__Dialog__DlgPreferences QTabWidget::pane { - background-color: transparent; /* temporal (transparent background) */ -} - -/* hack to correctly align Preferences icon list on OSX */ -QDialog#Gui__Dialog__DlgPreferences > QListView { - min-width: 130px; -} - -/* unique styles for sections inside Preferences */ -QDialog#Gui__Dialog__DlgPreferences > QListView::item { - border-radius: 6px; -} - -QDialog#Gui__Dialog__DlgPreferences > QListView::item:hover { - background-color: #dcdcdc; -} - -QDialog#Gui__Dialog__DlgPreferences > QListView::item:selected { - color: white; - background-color: #94b30f; -} - - -/*================================================================================================== -Tab bar buttons -==================================================================================================*/ -/* Close button */ -QTabBar::close-button { - subcontrol-origin: margin; - subcontrol-position: center right; /* only works for QT 4.6 and newer */; - border-radius: 2px; - background-image: url(qss:images_dark-light/close_dark.svg); - background-position: center center; - background-repeat: none; -} - -QTabBar::close-button:hover { - background-color: rgba(0,0,0,20); -} - -QTabBar::close-button:pressed { - background-color: rgba(0,0,0,30); -} - -/* Fix for lists inside Model tab */ -QDockWidget QTreeView, -QDockWidget QListView, -QDockWidget QTableView { - margin: 6px; - border: 1px solid #c3c3c3; /* same as regular QTreeView, QListView and QTableView */ - min-height: 40px; /* necessary in some areas of FreeCAD */ -} - -/* Buttons to scroll tabs if there is not space to show all of them: */ -QTabBar::scroller { - width: 20px; /* the width of the scroll buttons */ -} - -QTabBar QToolButton, -QTabBar QToolButton:hover { - background-color: #f5f5f5; /* same as main background color */ -} - -QTabBar QToolButton::right-arrow:enabled { - image: url(qss:images_dark-light/right_arrow_dark.svg); -} - -QTabBar QToolButton::right-arrow:disabled, -QTabBar QToolButton::right-arrow:off { - image: url(qss:images_dark-light/right_arrow_disabled_dark.svg); -} - -QTabBar QToolButton::right-arrow:hover { - image: url(qss:images_dark-light/right_arrow_darker.svg); -} - - QTabBar QToolButton::left-arrow:enabled { - image: url(qss:images_dark-light/left_arrow_dark.svg); -} - - QTabBar QToolButton::left-arrow:disabled, - QTabBar QToolButton::left-arrow:off { - image: url(qss:images_dark-light/left_arrow_disabled_dark.svg); -} - - QTabBar QToolButton::left-arrow:hover { - image: url(qss:images_dark-light/left_arrow_darker.svg); -} - - QTabBar QToolButton::up-arrow:enabled { - image: url(qss:images_dark-light/up_arrow_dark.svg); -} - - QTabBar QToolButton::up-arrow:disabled, - QTabBar QToolButton::up-arrow:off { - image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); -} - - QTabBar QToolButton::up-arrow:hover { - image: url(qss:images_dark-light/up_arrow_darker.svg); -} - - QTabBar QToolButton::down-arrow:enabled { - image: url(qss:images_dark-light/down_arrow_dark.svg); -} - - QTabBar QToolButton::down-arrow:disabled, - QTabBar QToolButton::down-arrow:off { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - - QTabBar QToolButton::down-arrow:hover { - image: url(qss:images_dark-light/down_arrow_darker.svg); -} - -QTabBar::tear { - /* default OS tear better */ -} - - -/*================================================================================================== -Tree and list views -==================================================================================================*/ -QTreeView, -QListView, -QTableView { - background-color: #f0f0f0; - alternate-background-color: #e6e6e6; /* related with QListView background */ - border: 1px solid #c3c3c3; - selection-color: white; - selection-background-color: #94b30f; /* should be similar to QListView::item selected background-color */ - show-decoration-selected: 1; /* make the selection span the entire width of the view */ - border-radius: 3px; -} - -QListView::item:hover, -QTreeView::item:hover { - background-color: transparent; /* fix to homogenize it on all OSs */ -} - -QListView::item:selected, -QTreeView::item:selected { - color: white; /* should be similar to QListView selection-color */ - background-color: #94b30f; /* should be similar to QListView selection-background-color */ - show-decoration-selected: 1; /* make the selection span the entire width of the view */ -} - -/* Property Editor QTreeView (FreeCAD custom widget) */ -Gui--PropertyEditor--PropertyEditor { - gridline-color: #d2d2d2; /* same as Group header background */ -} - -/* fix for column items background when a link is present */ -Gui--PropertyEditor--PropertyEditor > QWidget > QFrame:focus { - background-color: #dadfc5; /* same as focused background color */ -} - -/* hack to hide weird redundant information inside the value of a Placement cell */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel, -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel:disabled { - color: transparent; - background-color: transparent; - border: none; - border-radius: 0px; - margin: 0px; - padding: 0px; -} - -/* hack to hide non editable cells inside Property values */ Gui--PropertyEditor--PropertyEditor QLineEdit:read-only, Gui--PropertyEditor--PropertyEditor QLineEdit:disabled, Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:read-only, @@ -796,15 +61,18 @@ Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:disabled { background-color: transparent; selection-color: transparent; selection-background-color: transparent; + +} +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel, +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel:disabled { + color: transparent; + background-color: transparent; + border: none; + border-radius: 1px; + margin: 0px; + padding: 0px; } -/* hack to hide weird redundant information inside cells with links and no editable data (but editable via "..." button) */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel { - color: black; - background-color: #dadfc5; -} - -/* hack to disable margin inside Property values to following elements */ Gui--PropertyEditor--PropertyEditor QSpinBox, Gui--PropertyEditor--PropertyEditor QDoubleSpinBox, Gui--PropertyEditor--PropertyEditor QAbstractSpinBox, @@ -814,248 +82,1413 @@ Gui--PropertyEditor--PropertyEditor QComboBox { margin-right: 0px; padding-top: 0px; padding-bottom: 0px; -} -/* reset min-height to 0px inside list views */ -QTreeView > QWidget > QComboBox, -QTreeView > QWidget > QAbstractSpinBox, -QTreeView > QWidget > QSpinBox, -QTreeView > QWidget > QDoubleSpinBox, -QTreeView > QWidget > QLineEdit, -QTreeView > QWidget > QTextEdit, -QTreeView > QWidget > QTimeEdit, -QTreeView > QWidget > QDateEdit, -QTreeView > QWidget > QDateTimeEdit, -QTreeView > QWidget > Gui--ColorButton { - min-height: 0px; } -/* set border-radius to 0px inside list views */ -QTreeView > QWidget > QComboBox, -QTreeView > QWidget > QAbstractSpinBox, -QTreeView > QWidget > QSpinBox, -QTreeView > QWidget > QDoubleSpinBox, -QTreeView > QWidget > QLineEdit, -QTreeView > QWidget > QTextEdit, -QTreeView > QWidget > QTimeEdit, -QTreeView > QWidget > QDateEdit, -QTreeView > QWidget > QDateTimeEdit, -QTreeView > QWidget > QComboBox:drop-down, -QTreeView > QWidget > QAbstractSpinBox:up-button, -QTreeView > QWidget > QSpinBox:up-button, -QTreeView > QWidget > QDoubleSpinBox:up-button, -QTreeView > QWidget > QTimeEdit:up-button, -QTreeView > QWidget > QDateEdit:up-button, -QTreeView > QWidget > QDateTimeEdit:up-button, -QTreeView > QWidget > QAbstractSpinBox:down-button, -QTreeView > QWidget > QSpinBox:down-button, -QTreeView > QWidget > QDoubleSpinBox:down-button, -QTreeView > QWidget > QTimeEdit:down-button, -QTreeView > QWidget > QDateEdit:down-button, -QTreeView > QWidget > QDateTimeEdit:down-button, -QTreeView > QWidget > Gui--ColorButton { - border-radius: 0px; -} - -/* set focus colors to best viewing the editable fields */ -QTreeView > QWidget > QComboBox:focus, -QTreeView > QWidget > QAbstractSpinBox:focus, -QTreeView > QWidget > QSpinBox:focus, -QTreeView > QWidget > QDoubleSpinBox:focus, -QTreeView > QWidget > QLineEdit:focus, -QTreeView > QWidget > QTextEdit:focus, -QTreeView > QWidget > QTimeEdit:focus, -QTreeView > QWidget > QDateEdit:focus, -QTreeView > QWidget > QDateTimeEdit:focus { - border-color: #dadfc5; /* same as focused background color */ - border-bottom-color: #a5c61a; /* same as focused border color */ -} - -QTreeView > QWidget > QAbstractSpinBox:read-only, -QTreeView > QWidget > QSpinBox:read-only, -QTreeView > QWidget > QDoubleSpinBox:read-only, -QTreeView > QWidget > QLineEdit:read-only, -QTreeView > QWidget > QTextEdit:read-only, -QTreeView > QWidget > QTimeEdit:read-only, -QTreeView > QWidget > QDateEdit:read-only, -QTreeView > QWidget > QDateTimeEdit:read-only { - color: transparent; - background-color: transparent; - border-color: transparent; -} - -/* Fix to correctly (not totally) draw QTextEdit on OSX at Page properties: "Page result", "Template" and "Editable Texts" */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QWidget { - min-height: 14px; - border-radius: 0px; /* reset */ -} - - /*================================================================================================== -Header of tree and list views +Main window ==================================================================================================*/ -QHeaderView { - background-color: #c3c3c3; - border-top-left-radius: 2px; /* 1px less than its container */ - border-top-right-radius: 2px; /* 1px less than its container */ - border-bottom-left-radius: 0px; - border-bottom-right-radius: 0px; +QMainWindow, +QDialog, +QDockWidget, +QToolBar { + background-color: #F6F6F6; /* main background color */ } -QHeaderView::section { - border:none; - padding: 4px 6px; - background-color: #c3c3c3; +QMdiArea { + background-image: url(qss:images_dark-light/background_freecad.svg); + background-position: center center; + background-repeat: no-repeat; +} +/*navgation src/Mod/Tux/NavigationIndicatorGui.py */ +Gui--NavigationIndicatorGui--BlenderNavigationStyle { +/*QAction#a4 {*/ + qproperty-icon: url(:/icons/icons/NavigationBlender_dark.svg); +} +/*===== +/* QWidget ---------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QWidget { + background-color: #F6F6F6; + border: 0px solid #C1C1C1; + padding: 0px; + color: black; + selection-background-color: #B7D300; + selection-color: black; } -QHeaderView::section:horizontal { - padding: 4px 6px; /* left and right value similar to QHeaderView::section */ - border-right: 1px solid rgba(0,0,0,30); +QWidget:disabled { + background-color: transparent; + color: #A3A3A3; + selection-background-color: #B7D300; + selection-color: #A3A3A3; } -QHeaderView::section:vertical { - border-bottom: 1px solid rgba(0,0,0,30); +QWidget::item:selected { + background-color: #B7D300 +; } -QTableCornerButton::section { - background-color: #c3c3c3; - border-top: none; - border-left: none; - border-right: 1px solid rgba(0,0,0,30); - border-bottom: 1px solid rgba(0,0,0,30); -} + /* Causes issue with colorselector. + QWidget::item:hover:!selected { + background-color: #B7D300; + }*/ -QHeaderView::section:last { - border-right: none; -} +/* QMainWindow ------------------------------------------------------------ -QHeaderView::up-arrow { - image: url(qss:images_dark-light/up_arrow_dark.svg); -} +This adjusts the splitter in the dock widget, not qsplitter +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmainwindow -QHeaderView::up-arrow:hover { - image: url(qss:images_dark-light/up_arrow_darker.svg); -} - -QHeaderView::down-arrow { - image: url(qss:images_dark-light/down_arrow_dark.svg); -} - -QHeaderView::down-arrow:hover { - image: url(qss:images_dark-light/down_arrow_darker.svg); -} - -/* Group header inside Property Editor (FreeCAD custom widget) */ -Gui--PropertyEditor--PropertyEditor { - qproperty-groupTextColor: #828282; /* same as main background color */ - qproperty-groupBackground: #d2d2d2; /* same as item gridlines */ -} - - -/*================================================================================================== -Branch system for QTreeViews -==================================================================================================*/ -QTreeView::branch { - background: transparent; -} - -QTreeView::branch:has-siblings:!adjoins-item { - border-image: url(qss:images_dark-light/branch_vline_dark.svg) 0; -} - -QTreeView::branch:has-siblings:adjoins-item { - border-image: url(qss:images_dark-light/branch_more_dark.svg) 0; -} - -QTreeView::branch:!has-children:!has-siblings:adjoins-item { - border-image: url(qss:images_dark-light/branch_end_dark.svg) 0; -} - -QTreeView::branch:closed:has-children:has-siblings { - border-image: url(qss:images_dark-light/branch_more_closed_dark.svg) 0; -} - -QTreeView::branch:has-children:!has-siblings:closed { - border-image: url(qss:images_dark-light/branch_end_closed_dark.svg) 0; -} - -QTreeView::branch:open:has-children:has-siblings { - border-image: url(qss:images_dark-light/branch_more_open_dark.svg) 0; -} - -QTreeView::branch:open:has-children:!has-siblings { - border-image: url(qss:images_dark-light/branch_end_open_dark.svg) 0; -} - - -/*================================================================================================== -Splitter and windows separator -==================================================================================================*/ -QSplitter::handle { - margin: 0px 11px; - padding: 0px; -} - -QSplitter::handle:horizontal { - background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); - background-position: center center; - background-repeat: none; - margin: 4px 2px 4px 2px; - width: 2px; -} - -QSplitter::handle:vertical { - background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); - background-position: center center; - background-repeat: none; - margin: 2px 4px 2px 4px; - height: 2px; -} - -/* Similar to the splitter is the following window separator (but horizontal/vertical is on the opposite way) */ +--------------------------------------------------------------------------- */ QMainWindow::separator { - background-position: center center; - background-repeat: none; + /*background-color: #f6f6f6;*/ + border: 0px solid #C1C1C1; + spacing: 0px; + padding: 1px; +} + +QMainWindow::separator:vertical:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,stop:0.2 transparent,stop:0.5 #B7D300, stop:0.8 transparent); + /*background-color: #B7D300;*/ + image: url(qss:images_dark-light/splitter_vertical_dark.svg); +} + +QMainWindow::separator:horizontal:hover { + background-color: qlineargradient(x1:0, y1:0, x2:1, y2:0,stop:0.2 transparent,stop:0.5 #B7D300, stop:0.8 transparent); + /*background-color: #B7D300;*/ + image: url(qss:images_dark-light/splitter_horizontal_dark.svg); } QMainWindow::separator:horizontal { - height: 2px; - background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); - margin: 4px 2px 4px 2px; + width: 4px; + margin-top: 0.1px; + margin-bottom: 0.1px; + /* image: url(qss:images_dark-light/splitter_horizontal_light.svg);*/ } QMainWindow::separator:vertical { - width: 2px; - background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); - margin: 2px 4px 2px 4px; + height: 4px; + margin-left: 0.1px; + margin-right: 0.1px; + /* image: url(qss:images_dark-light/splitter_vertical_light.svg);*/ +} + +/* QToolTip --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtooltip + +--------------------------------------------------------------------------- */ +QToolTip { + background-color: #ffffff; + color: black; + /* If you remove the border property, background stops working on Windows */ + border: none; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Remove opacity, fix #174 - may need to use RGBA */ +} + +/* QStatusBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qstatusbar + +--------------------------------------------------------------------------- */ +QStatusBar { + border: 0px solid #C1C1C1; + /* Fixes Spyder #9120, #9121 */ + background: #F6F6F6; + /* Fixes #205, black vertical borders separating items */ +} + +QStatusBar::item { + border: none; +} + +QStatusBar QToolTip { + background-color: #F6F6F6; + border: 1px solid #C1C1C1; + color: #F6F6F6; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Reducing transparency to read better */ + opacity: 230; +} + +QStatusBar QLabel { + /* Fixes Spyder #9120, #9121 */ + background: transparent; +} + +/* QCheckBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcheckbox + +--------------------------------------------------------------------------- */ +QCheckBox { + color: black; + padding: 0px; + outline: none; + border: 1px solid transparent; + background-color: transparent; +} + +QCheckBox:focus { + border: 1px solid #E1FF00 ; +} + +QCheckBox QWidget:disabled { + background-color: transparent; + color: #A3A3A3; +} + +QCheckBox::indicator { + color: black; + background-color: #ffffff; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QCheckBox::indicator:unchecked { + background-color: #ffffff; + image:url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QCheckBox::indicator:unchecked:hover, QCheckBox::indicator:unchecked:focus, QCheckBox::indicator:unchecked:pressed { + background-color: #B7D300; + image:url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QCheckBox::indicator:unchecked:disabled { + background-color: #F6F6F6; + image:url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QCheckBox::indicator:checked { + background-color: #ffffff; + /*border: 1px solid #C1C1C1; /* QRadioButton has the same color */ + image:url(qss:images_dark-light/checkbox_dark.svg); +} + +QCheckBox::indicator:checked:hover, QCheckBox::indicator:checked:pressed { + background-color: #B7D300; +} + +QCheckBox::indicator:checked:disabled { + background-color: #F6F6F6; + image: url(qss:images_dark-light/check_dark.svg); +} + +QCheckBox::indicator:indeterminate { + background-color: #ffffff; + border: 1px solid #C1C1C1; + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QCheckBox::indicator:indeterminate:disabled { + background-color: #F6F6F6; + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QCheckBox::indicator:indeterminate:hover, QCheckBox::indicator:indeterminate:pressed { + background-color: #B7D300; /* QRadioButton has the same color */ +} + +/* QGroupBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qgroupbox + +--------------------------------------------------------------------------- */ +QGroupBox { + font-weight: bold; + border: 1px solid #C1C1C1; + border-radius: 1.9px; + padding: 2px; + margin-top: 10px; + margin-bottom: 4px; +} + +QGroupBox::title { + subcontrol-origin: margin; + subcontrol-position: top left; + left: 4px; + padding-left: 2px; + padding-right: 4px; + padding-top: 6px; +} + +QGroupBox::indicator { + color: black; + background-color: #f6f6f6; + border: 1px solid #C1C1C1; + width: 12px; + height: 12px; + border-radius:1px; +} + +QGroupBox::indicator:unchecked { + background-color: #f6f6f6; + border: 1px solid #C1C1C1; + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QGroupBox::indicator:unchecked:hover, QGroupBox::indicator:unchecked:focus, QGroupBox::indicator:unchecked:pressed { + background-color: #B7D300; +} + +QGroupBox::indicator:unchecked:disabled { + background-color: #ffffff; + border: 1px solid #C1C1C1; +} + +QGroupBox::indicator:checked { + border: none; + image:url(qss:images_dark-light/checkbox_dark.svg); +} + +QGroupBox::indicator:checked:hover, QGroupBox::indicator:checked:focus, QGroupBox::indicator:checked:pressed { + background-color: #B7D300; +} + +QGroupBox::indicator:checked:disabled { + background-color: #B7D300; +} + +/* QRadioButton ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qradiobutton + +--------------------------------------------------------------------------- */ +QRadioButton { + background-color: transparent; + color: black; + border: none; + spacing: 4px; + padding-top: 4px; + padding-bottom: 4px; + outline: none; +} + +QRadioButton:focus { + border: 1px solid #E1FF00 ; +} + +QRadioButton:disabled { + background-color: #f6f6f6; + color: #A3A3A3; +} + +QRadioButton QWidget { + background-color: transparent; + color: black; + spacing: 0px; + padding: 0px; + outline: none; + border: none; +} + +QRadioButton::indicator { + background-color: #f6f6f6; + border: 1px solid #C1C1C1; + border-radius: 6px; + margin-left: 0px; + height: 11px; + width: 11px; +} + +QRadioButton::indicator:unchecked { + /*image:url(qss:images_dark-light/radiobutton_dark.svg);*/ +} + +QRadioButton::indicator:unchecked:hover, QRadioButton::indicator:unchecked:pressed { + background-color: #B7D300; + border: 1px solid #B7D300; + border-radius: 6px; +} + +QRadioButton::indicator:unchecked:disabled { + /*image:url(qss:images_dark-light/radiobutton_light.svg);*/ + border: 1px solid #C1C1C1; +} + +QRadioButton::indicator:checked { + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +QRadioButton::indicator:checked:hover, QRadioButton::indicator:checked:pressed { + background-color: #B7D300; + border: 1px solid #B7D300; + border-radius: 6px; + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +QRadioButton::indicator:checked:disabled { + outline: none; + background-color: #f6f6f6; + image:url(qss:images_dark-light/radiobutton_light.svg); +} + +/* QMenuBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenubar + +--------------------------------------------------------------------------- */ +QMenuBar { + background-color: #ffffff; + /*padding: 1px; + border: 0px solid rgba(0,0,0,140);*/ + color: black; + selection-background-color: #B7D300; +} + +QMenuBar:focus { + border: 1px solid #B7D300; +} + +QMenuBar::item { + background: transparent; + /*padding-left:5px; + padding-right: 5px; + padding-bottom: 1px; + padding-top: 1px;*/ +} + +QMenuBar::item:selected { + background: transparent; + border: 0px solid #C1C1C1; + background-color: #B7D300; +} + +QMenuBar::item:pressed { + /*padding: 2px; + padding-left: 10px; + padding-right: 10px;*/ + border: 0px solid #C1C1C1; + background-color: #B7D300; + color: black; + /*margin-bottom: 0px; + padding-bottom: 0px;*/ +} + +/* QMenu ------------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenu + +--------------------------------------------------------------------------- */ +QMenu { + border-bottom: 2px rgba(0,0,0,140); + border-right: 2px rgba(0,0,0,140); + color: black; + margin: 0px; + background-color: #ffffff; + selection-background-color: #B7D300; +} + +QMenu::separator { + height: 2px; + background-color: #f6f6f6; + margin-left: 30%; + margin-right: 30%; +} + +QMenu::item { + background-color: transparent; + padding: 2px 2px; /* make room for icon at left */ + /* Reserve space for selection border */ + border: 0px transparent #f6f6f6; +} + +QMenu::item:selected { + color: black; + background-color: #B7D300; +} + +QMenu::item:pressed { + background-color: #B7D300; +} + +QMenu::icon { + margin-left: 5px; + width: 14px; + height: 14px; +} + +QMenu::indicator { + margin-left: 2px; + margin-right: 2px; + padding: 0px; + width: 12px; + height: 12px; + /* non-exclusive indicator = check box style indicator (see QActionGroup::setExclusive) */ + /* exclusive indicator = radio button style indicator (see QActionGroup::setExclusive) */ +} + +QMenu::icon:checked { /* appearance of a 'checked' icon */ + background: #E1FF00 ; + margin-left: -5px; + border: 5px solid #E1FF00 ; + position: absolute; + border-radius: 0px; +} +QMenu::indicator:non-exclusive:unchecked { + image: url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QMenu::indicator:non-exclusive:unchecked:hover, QMenu::indicator:non-exclusive:unchecked:focus, QMenu::indicator:non-exclusive:unchecked:pressed { + border: none; + background: #B7D300; +} + +QMenu::indicator:non-exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QMenu::indicator:non-exclusive:checked { + image:url(qss:images_dark-light/checkbox_dark.svg); +} + +QMenu::indicator:non-exclusive:checked:hover, QMenu::indicator:non-exclusive:checked:focus, QMenu::indicator:non-exclusive:checked:pressed { + border: none; + background: #B7D300; +} + +QMenu::indicator:non-exclusive:checked:disabled { + image:url(qss:images_dark-light/checkbox_checked_disabled.svg); +} + +QMenu::indicator:non-exclusive:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:disabled { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:focus, QMenu::indicator:non-exclusive:indeterminate:hover, QMenu::indicator:non-exclusive:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QMenu::indicator:exclusive:unchecked { + image: url(qss:images_dark-light/transparent.svg); +} + +QMenu::indicator:exclusive:unchecked:hover, QMenu::indicator:exclusive:unchecked:focus, QMenu::indicator:exclusive:unchecked:pressed { + border: none; + outline: none; + background: #B7D300; + image: url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QMenu::indicator:exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QMenu::indicator:exclusive:checked { + border: none; + outline: none; + image: url(qss:images_dark-light/radiobutton_dark.svg); +} + +QMenu::indicator:exclusive:checked:hover, QMenu::indicator:exclusive:checked:focus, QMenu::indicator:exclusive:checked:pressed { + border: none; + outline: none; + background: #B7D300; + image: url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QMenu::indicator:exclusive:checked:disabled { + outline: none; + image: url(qss:images_dark-light/radiobutton_dark.svg); +} + +QMenu::right-arrow { + margin: 5px; + padding-left: 12px; + image:url(qss:images_dark-light/right_arrow_darker.svg); + height: 12px; + width: 12px; + background-color: transparent; +} + +/* QAbstractItemView ------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QAbstractItemView { + alternate-background-color: #ababab; + color: black; + border: 1px solid #C1C1C1; + border-radius: 2px; +} + +QAbstractItemView QLineEdit { + padding: 2px; +} + +/* QAbstractScrollArea ---------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QAbstractScrollArea { + background-color: transparent; + border: 0px solid #C1C1C1; + border-radius: 0px; + /* fix #159 */ + padding: 0px; + /* remove min-height to fix #244 */ + color: black; +} + +QAbstractScrollArea:disabled { + color: #A3A3A3; +} + +/* QScrollArea ------------------------------------------------------------ + +--------------------------------------------------------------------------- +text input field disabled!!!!*/ +QScrollArea QWidget:disabled { + background-color: #F6F6F6; +} + +/* QScrollBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qscrollbar + +--------------------------------------------------------------------------- */ +QScrollBar:horizontal { + height: 16px; + margin: 2px 16px 2px 16px; + border: 0px solid #C1C1C1; + border-radius: 1.9px; + background-color: #F6F6F6; +} + +QScrollBar:vertical { + background-color: #F6F6F6; + width: 16px; + margin: 16px 2px 16px 2px; + border: 0px solid #C1C1C1; + border-radius: 1.9px; +} + +QScrollBar::handle:horizontal { + background-color: #A3A3A3; + border: 1px solid #C1C1C1; + border-radius: 1.9px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:hover { + background-color: #B7D300; + border: #f6f6f6; + border-radius: 1.9px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:focus { + border: 1px solid #E1FF00 ; +} + +QScrollBar::handle:vertical { + background-color: #A3A3A3; + border: 1px solid #C1C1C1; + min-height: 8px; + border-radius: 1.9px; +} + +QScrollBar::handle:vertical:hover { + background-color: #B7D300; + border: #f6f6f6; + border-radius: 1.9px; + min-height: 8px; +} + +QScrollBar::handle:vertical:focus { + border: 1px solid #E1FF00 ; +} + +QScrollBar::add-line:horizontal { + border-image: url(qss:images_dark-light/right_arrow_dark.svg); + height: 9px; + width: 5px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:horizontal:hover, QScrollBar::add-line:horizontal:on { + border-image: url(qss:images_dark-light/right_arrow_dark.svg); + height: 9px; + width: 5px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical { + border-image: url(qss:images_dark-light/down_arrow_dark.svg); + height: 5px; + width: 9px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical:hover, QScrollBar::add-line:vertical:on { + border-image: url(qss:images_dark-light/down_arrow_darker.svg); + height: 5px; + width: 9px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/left_arrow_dark.svg); + height: 9px; + width: 5px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal:hover, QScrollBar::sub-line:horizontal:on { + border-image: url(qss:images_dark-light/left_arrow_darker.svg); + height: 9px; + width: 5px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/up_arrow_dark.svg); + height: 5px; + width: 9px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical:hover, QScrollBar::sub-line:vertical:on { + border-image: url(qss:images_dark-light/up_arrow_darker.svg); + height: 5px; + width: 9px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::up-arrow:horizontal, QScrollBar::down-arrow:horizontal { + background: none; +} + +QScrollBar::up-arrow:vertical, QScrollBar::down-arrow:vertical { + background: none; +} + +QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal { + background: none; +} + +QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical { + background: none; +} + +/* QTextEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-specific-widgets + + +report view +--------------------------------------------------------------------------- */ +QTextEdit { + background-color: #F6F6F6; + color: black; + border-radius: 1.9px; + border: 0px solid #C1C1C1; +} + +QTextEdit:focus { + border: 1px solid #E1FF00 ; +} + +QTextEdit:selected { + background: #346792; + color: black; +} + +/* QPlainTextEdit --------------------------------------------------------- +Python +--------------------------------------------------------------------------- */ +QPlainTextEdit { + background-color: #f6f6f6; + color: black; + border-radius: 1.9px; + border: 0px solid #C1C1C1; +} + +QPlainTextEdit:focus { + border: 1px solid #E1FF00 ; +} + +QPlainTextEdit:selected { + background: #B7D300; + color: black; +} + +/* QSizeGrip -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsizegrip + +--------------------------------------------------------------------------- */ +QSizeGrip { + background: transparent; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/sizegrip_dark.svg); +} + +/* QStackedWidget --------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QStackedWidget { + padding: 0px; + border: 0px solid #C1C1C1; +} + +/* QToolBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbar + +--------------------------------------------------------------------------- */ +QToolBar { + background-color: #F6F6F6; + border-bottom: 0px solid rgba(0,0,0,120); + padding: 1px; + font-weight: bold; + spacing: 1px; +} + +QToolBar:disabled { + /* Fixes #272 */ + background-color: #F6F6F6; +} + +QToolBar::handle:horizontal { + width: 8px; + margin: 3px 3px; + background-position: top right; + background-repeat: repeat-y; + background-image: url(qss:images_dark-light/Hmovetoolbar_dark.svg); +} + +QToolBar::handle:vertical { + height: 8px; + margin: 3px 3px; + background-position: left bottom; + background-repeat: repeat-x; + background-image: url(qss:images_dark-light/Vmovetoolbar_dark.svg); +} + +QToolBar::separator:horizontal { + width: 2px; + margin: 4px 4px; + background-color: transparent; +} + +QToolBar::separator:vertical { + height: 2px; + margin: 4px 4px; + background-color: transparent; +} + +/*The "show more" button (it can also be stylable with "QToolBarExtension" icon is not working Qproperty works but breaks when you move the toolbar see also */ +QToolButton#qt_toolbar_ext_button { +margin: 0px; +padding: 0px; +background-color: #A3A3A3; +/*background-image: url(qss:images_dark-light/more_dark.svg);*/ +background-repeat: none; +background-position: center center; +} + +QToolButton#qt_toolbar_ext_button:hover { +/*background-image: url(qss:images_dark-light/more_dark.svg);*/ +background-color: #B7D300; +} + +QToolButton#qt_toolbar_ext_button:on { +/*background-image: url(qss:images_dark-light/more_dark.svg);*/ +border-color: #f6f6f6; +background-color: #B7D300; } -/*================================================================================================== -Text/Python editor (macros, etc...) -==================================================================================================*/ -QPlainTextEdit, -QPlainTextEdit:focus { - background-color: #f0f0f0; - selection-color: white; - selection-background-color: #819c0c; - border: 1px solid #c3c3c3; - border-radius: 3px; - margin: 4px; +/* QAbstractSpinBox ------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractSpinBox, +QSpinBox { + background-color: #ffffff; + border: 1px solid transparent; + color: black; + /* This fixes 103, 111 */ + /* padding-top: 0px; + /* This fixes 103, 111 */ + /*padding-bottom: 0px; + /*padding-left: 4px; + /*padding-right: 4px; + border-radius: 1.9px;*/ + min-height: 1.7em; + /* min-width: 5px; removed to fix 109 */ +} + +QAbstractSpinBox:up-button { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #E2E2E2, stop:1 #EDEDED); + subcontrol-origin: border; + subcontrol-position: top right; + border: 1px solid transparent; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-bottom: -1px;*/ +} + +QAbstractSpinBox::up-arrow, QAbstractSpinBox::up-arrow:disabled, QAbstractSpinBox::up-arrow:off { + image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); + /* height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::up-arrow:hover { + image: url(qss:images_dark-light/up_arrow_darker.svg); +} + +QAbstractSpinBox:down-button { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #E2E2E2, stop:1 #EDEDED); + subcontrol-origin: border; + subcontrol-position: bottom right; + border: 1px solid transparent; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-top: -1px;*/ +} + +QAbstractSpinBox::down-arrow, QAbstractSpinBox::down-arrow:disabled, QAbstractSpinBox::down-arrow:off { + image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); + /*height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::down-arrow:hover { + image: url(qss:images_dark-light/down_arrow_darker.svg); +} + +QAbstractSpinBox:hover { + /*border: 1px solid #B7D300; + color: black;*/ +} + +QAbstractSpinBox:focus { + border: 1px solid #E1FF00 ; +} + +QAbstractSpinBox:selected { + background: #E1FF00 ; + /*color: black;*/ +} + +/* ------------------------------------------------------------------------ */ +/* DISPLAYS --------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QLabel ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe + +--------------------------------------------------------------------------- */ +QLabel { + background-color: transparent; + border: 0px solid #C1C1C1; + padding: 2px; + margin: 0px; + color: black; +} + +QLabel:disabled { + background-color: transparent; + border: 0px solid #C1C1C1; + color: #A3A3A3; +} + +QLabel[haslink="true"] { + color: orange; +} + + +/* QTextBrowser ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QTextBrowser { + background-color: #ffffff; + border: 1px solid #C1C1C1; + color: black; + border-radius: 1.9px; +} + +QTextBrowser:disabled { + background-color: #F6F6F6; + border: 1px solid #C1C1C1; + color: #A3A3A3; + border-radius: 1.9px; +} + +QTextBrowser:hover, QTextBrowser:!hover, QTextBrowser:selected, QTextBrowser:pressed { + border: 1px solid #B7D300; +} + +/* QGraphicsView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QGraphicsView { + background-color: transparent; + border: 0px solid #B7D300; + color: black; + border-radius: 0px; +} + +QGraphicsView:disabled { + background-color: #ffffff; + border: 0px solid #C1C1C1; + color: #A3A3A3; + border-radius: 0px; +} + +QGraphicsView:hover, QGraphicsView:!hover, QGraphicsView:selected, QGraphicsView:pressed { + border: 0px solid #ff00f7; +} + +/* QCalendarWidget -------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCalendarWidget { + border: 1px solid #C1C1C1; + border-radius: 1.9px; +} + +QCalendarWidget:disabled { + background-color: #A3A3A3; + color: #A3A3A3; +} + +/* QLCDNumber ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QLCDNumber { + background-color: #1aff00; + color: black; +} + +QLCDNumber:disabled { + background-color: #F6F6F6; + color: #A3A3A3; +} + +/* QProgressBar ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qprogressbar + +--------------------------------------------------------------------------- */ +QProgressBar { + background-color: #A3A3A3; + border: 1px solid #C1C1C1; + color: black; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar:disabled { + background-color: #ffffff; + border: 1px solid #C1C1C1; + color: #A3A3A3; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar::chunk { + background-color: #B7D300; + color: #F6F6F6; + border-radius: 1.9px; +} + +QProgressBar::chunk:disabled { + background-color: #ffffff; + color: #f6f6f6; + border-radius: 1.9px; +} + +/* ------------------------------------------------------------------------ */ +/* BUTTONS ---------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QPushButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qpushbutton + +--------------------------------------------------------------------------- */ +QPushButton { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #E2E2E2, stop:1 #EDEDED); + color: black; + border: 1px solid #EDEDED; + border-bottom-color: #AFAFAF; /* simulates shadow under the button */ + border-radius: 4px; + padding: 2px; +} + +QPushButton:disabled { + background-color: #F6F6F6; + color: #A3A3A3; + +} + +QPushButton:checked { + background-color: #B7D300; + outline: none; +} + +QPushButton:checked:disabled { + background-color: #B7D300; + color: #f6f6f6; + outline: none; +} + +QPushButton:checked:selected { + background: #B7D300; +} + +QPushButton:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #B7D300, stop:1 #E1FF00 ); + color: black; +} + +QPushButton:pressed { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #E1FF00 , stop:1 #B7D300); +} + +QPushButton:selected { + background: #E1FF00 ; + color: black; +} + +QPushButton::menu-indicator { + subcontrol-origin: padding; + subcontrol-position: bottom right; + bottom: 4px; +} + +QDialogButtonBox QPushButton { + /* Issue # 194 # 248 - Special case of QPushButton inside dialogs, for better UI */ + min-width: 80px; +} + +/* QToolButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbutton + +--------------------------------------------------------------------------- */ +QToolButton { + background-color: transparent; + color: black; + border-radius: 1px; + padding: 0px; + outline: none; + border: none; + /* The subcontrols below are used only in the DelayedPopup mode */ + /* The subcontrols below are used only in the MenuButtonPopup mode */ + /* The subcontrol below is used only in the InstantPopup or DelayedPopup mode */ +} + +QToolButton:disabled { + background-color: transparent; + color: #A3A3A3; + border-radius: 1px; + padding: 0px; +} + +QToolButton:checked { + background-color: #B7D300; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:disabled { + background-color: #b65555; + color: #A3A3A3; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:hover { + background-color: #B7D300; + color: black; +} + +QToolButton:checked:pressed { + background-color: #B7D300; +} + +QToolButton:checked:selected { + background: #E1FF00 ; + color: black; +} + +QToolButton:hover { + background-color: #B7D300; + color: black; +} + +QToolButton:pressed { + background-color: #E1FF00 ; +} + +QToolButton:selected { + background: #B7D300; + color: black; +} + +QToolButton[popupMode="0"] { + /* Only for DelayedPopup */ + padding-right: 20px; +} + +QToolButton[popupMode="1"] { + /* Only for MenuButtonPopup */ + padding-right: 20px; +} +QToolButton[popupMode="0"]::menu-button { + border: none; +} + +QToolButton[popupMode="0"]::menu-button:hover { + border: none; + border-left: 2px solid #fe0000; + border-radius: 0px; +} +QToolButton[popupMode="1"]::menu-button { + border: none; +} + +QToolButton[popupMode="1"]::menu-button:hover { + border: none; + border-left: 2px solid #e5ff00; + border-radius: 0px; +} + +QToolButton[popupMode="2"] { + /* Only for InstantPopup */ + padding-right: 20px; +} + +QToolButton::menu-button { + border-bottom: 0px solid #b2b2b2; + border-radius: 2px; + /* 16px width + 4px for border = 20px allocated above */ + width: 1.6ex; + padding: 2px; + border-radius: 2px; + border: 0px #000000; +} + +QToolButton::menu-button:hover { + /* background: rgba(0, 0, 0, 0.5);*/ + +} + +QToolButton::menu-button:checked:hover { + /* background: rgba(0, 0, 0, 0.5);*/ +} + +QToolButton::menu-indicator { + /* Exclude a shift for better image */ + subcontrol-position: right bottom; + /* Shift it a bit */ +} + +QToolButton::menu-arrow { + image: url(qss:images_dark-light/more_arrow_dark.svg); + width: 1.5ex; + height: 1.5ex; + subcontrol-position: right bottom; + background: transparent; +} +QToolButton::menu-arrow:open { + subcontrol-position: right bottom; + image: url(qss:images_dark-light/more_arrow_dark.svg); +} +QToolButton::menu-arrow:hover { + image: url(qss:images_dark-light/more_arrow_dark.svg); + background-color: rgba(0, 0, 0, 0.498); + border: 1px solid rgba(0, 0, 0, 0.498); +} + +/* QCommandLinkButton ----------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCommandLinkButton { + background-color: transparent; + border: 1px solid #C1C1C1; + color: black; + border-radius: 1.9px; + padding: 0px; + margin: 0px; +} + +QCommandLinkButton:disabled { + background-color: transparent; + color: #A3A3A3; +} + +/* ------------------------------------------------------------------------ */ +/* INPUTS - NO FIELDS ----------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QComboBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QComboBox { + border: 1px solid transparent; + background: #ffffff; + border-radius: 2px; + selection-background-color: #B7D300; + padding-left: 2px; + padding-right: 2px; + /* padding-right = 36; 4 + 16*2 See scrollbar size */ + /* changed to 4px to fix #239 */ + /* Fixes #103, #111 */ + min-height: 1.5em; + /* padding-top: 2px; removed to fix #132 */ + /* padding-bottom: 2px; removed to fix #132 */ + /* min-width: 75px; removed to fix #109 */ + /* Needed to remove indicator - fix #132 */ +} +QComboBox:editable { + background: #ffffff; +} +QComboBox QAbstractItemView { + border: 0px solid #C1C1C1; + border-radius: 0px; + background-color: #ffffff; + selection-background-color: #B7D300; +} + +QComboBox QAbstractItemView:hover { + background-color:#ffffff; + color: black; +} + +QComboBox QAbstractItemView:selected { + background: #B7D300; + color: black; +} + +QComboBox QAbstractItemView:alternate { + background: #f6f6f6; +} + +QComboBox:disabled { + background-color: #F6F6F6; + color: #A3A3A3; +} + +QComboBox:hover { + /*background-color: #B7D300;*/ + border: 1px solid #B7D300; +} + +QComboBox:focus { + border: 1px solid #E1FF00 ; +} + +QComboBox:on { + selection-background-color: #E1FF00 ; +} + +QComboBox::indicator { + border: none; + border-radius: 0px; + background-color: transparent; + selection-background-color: transparent; + color: transparent; + selection-color: #B7D300; + /* Needed to remove indicator - fix #132 */ +} + +QComboBox::indicator:alternate { + background: #f6f6f6; +} + +QComboBox::item { + /* Remove to fix #282, #285 and MR #288*/ + /*&:checked { + font-weight: bold; + } + + &:selected { + border: 0px solid transparent; + } + */ +} + +QComboBox::item:alternate { + background: #f6f6f6; +} + +QComboBox::drop-down { + subcontrol-origin: padding; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #E2E2E2, stop:1 #EDEDED); + subcontrol-position: top right; + width: 14px; + border-left: 1px solid transparent; +} +QComboBox::drop-down:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #B7D300, stop:1 #E1FF00 ); +} + +QComboBox::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); + height: 10px; + width: 10px; +} + +QComboBox::down-arrow:on, QComboBox::down-arrow:hover, QComboBox::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_darker.svg); } /*================================================================================================== Tasks panel (custom FreeCAD class) ==================================================================================================*/ +Gui--PropertyEditor--PropertyEditor { + qproperty-groupTextColor: black; + qproperty-groupBackground: #f6f6f6; + border: 0px solid #C1C1C1; + +} + /* Action group */ QFrame[class="panel"] { - background-color: transparent; /* temporal (transparent background) */ +background-color: transparent; /* temporal (transparent background) */ + } QSint--ActionGroup { - padding: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ - margin: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +padding: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +margin: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ } /* Separator line */ @@ -1065,1257 +1498,1044 @@ QSint--ActionGroup QFrame[height="3"], QSint--ActionGroup QFrame[width="1"], QSint--ActionGroup QFrame[width="2"], QSint--ActionGroup QFrame[width="3"] { - border-color: rgba(0,0,0,60); +border-color: rgba(0,0,0,60); } /* Panel header */ QSint--ActionGroup QFrame[class="header"] { - border: none; - background-color: #b6b6b6; /* Task Panel Header background color */ - border-top-left-radius: 3px; - border-top-right-radius: 3px; - border-bottom-left-radius: 0px; - border-bottom-right-radius: 0px; - margin: 0px; - padding: 0px; +border-top: 1px solid #C1C1C1; +border-left: 1px solid #C1C1C1; +border-right: 1px solid #C1C1C1; +background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #E2E2E2, stop:1 #EDEDED); +border-top-left-radius: 3px; +border-top-right-radius: 3px; +border-bottom-left-radius: 0px; +border-bottom-right-radius: 0px; +margin: 0px; +padding: 0px; } QSint--ActionGroup QFrame[class="header"]:hover { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #94b30f, stop:1 #819c0c); +background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #B7D300, stop:1 #E1FF00 ); } QSint--ActionGroup QToolButton[class="header"] { - color: white; /* Task Panel Header text color */ - text-align: left; - font-weight: bold; - border: none; - margin: 0px; - padding: 0px; +color: black; /* Task Panel Header text color */ +text-align: left; +font-weight: bold; +border: none; +margin: 0px; +padding: 0px; } QSint--ActionGroup QFrame[class="header"] QLabel { - background-color: transparent; - background-image: url(qss:images_dark-light/down_arrow_light.svg); - background-repeat: none; - background-position: center center; - padding: 0px; - margin: 0px; +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_dark.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; } QSint--ActionGroup QFrame[class="header"] QLabel:hover { - background-color: transparent; - background-image: url(qss:images_dark-light/down_arrow_lighter.svg); +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_darker.svg); } QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"] { - background-color: transparent; - background-image: url(qss:images_dark-light/up_arrow_light.svg); - background-repeat: none; - background-position: center center; - padding: 0px; - margin: 0px; +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_dark.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; } QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"]:hover { - background-color: transparent; - background-image: url(qss:images_dark-light/up_arrow_lighter.svg); +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_darker.svg); } QSint--ActionGroup QFrame[class="content"] { - background-color: #e6e6e6; /* Task Panel background color */ - margin: 0px; - padding: 0px; - border: none; - border-top-left-radius: 0px; - border-top-right-radius: 0px; - border-bottom-left-radius: 3px; - border-bottom-right-radius: 3px; +background-color: transparent; /* Task Panel background color */ +margin: 0px; +padding: 0px; +border-bottom: 1px solid #C1C1C1; +border-left: 1px solid #C1C1C1; +border-right: 1px solid #C1C1C1; +border-top-left-radius: 0px; +border-top-right-radius: 0px; +border-bottom-left-radius: 3px; +border-bottom-right-radius: 3px; } QSint--ActionGroup QFrame[class="content"] > QWidget { - background-color: #e6e6e6; /* Task Panel background color */ +background-color: #F6F6F6; /* Task Panel background color */ } /* Fixs for tabs inside Task Panel */ QSint--ActionGroup QFrame[class="content"] QTabBar::tab:top:selected { - border-bottom-color: #e6e6e6; /* same as Task Panel background color */ +border-bottom-color: #B7D300; /* same as Task Panel background color */ } QSint--ActionGroup QFrame[class="content"] QTabBar::tab:bottom:selected { - border-top-color: #e6e6e6; /* same as Task Panel background color */ +border-top-color: #B7D300; /* same as Task Panel background color */ } QSint--ActionGroup QFrame[class="content"] QTabBar::tab:right:selected { - border-right-color: #e6e6e6; /* same as Task Panel background color */ +border-right-color: #B7D300; /* same as Task Panel background color */ } QSint--ActionGroup QFrame[class="content"] QTabBar::tab:left:selected { - border-left-color: #e6e6e6; /* same as Task Panel background color */ +border-left-color: #B7D300; /* same as Task Panel background color */ } /* Fix for buttons with icons that showed cropped (still not happy with result) */ QSint--ActionGroup QFrame[class="content"] > QWidget > QPushButton { - padding: 2px; /* bigger padding crops text and icons... */ - margin: 0px; +padding: 2px; /* bigger padding crops text and icons... */ +margin: 0px; } -/* Fix for lists inside task panels */ -/* QSint--ActionGroup QFrame[class="content"] QTreeView, +/* Fix for lists inside task panels */ /* sketcher constraints list */ +QSint--ActionGroup QFrame[class="content"] QTreeView, QSint--ActionGroup QFrame[class="content"] QListView, QSint--ActionGroup QFrame[class="content"] QTableView { - color: #f5f5f5; - background-color: #787878; -} */ - - -/*================================================================================================== -Buttons -==================================================================================================*/ -/* Common */ -QComboBox, -QAbstractSpinBox, -QSpinBox, -QDoubleSpinBox, -QLineEdit, -QTextEdit, -QTimeEdit, -QDateEdit, -QDateTimeEdit { - color: #6e6e6e; - background-color: #e0e0e0; - selection-color: white; - selection-background-color: #94b30f; - border: 1px solid #e0e0e0; - border-radius: 3px; - min-width: 50px; /* it ensures the default value is correctly displayed */ - min-height: 20px; /* important to be a pair number in order to up/down buttons to be divisible by two (if not set could create a blank line in Ubuntu. Its downside is that it's needed to reset it (min-width: 0px) on following elements that can't have it such as fields inside QToolBar and inside QTreeView (Property editor) */ - padding: 1px 2px; /* temporal: could don't be compatible with elements inside Tree/List view */ -} - -/* more contrast for QTexEdits */ -QTextEdit { - color: black; -} - -/* shifts text/number editable field to the left to make space for the up/down or drop-down buttons */ -QComboBox, -QAbstractSpinBox, -QSpinBox, -QDoubleSpinBox, -QTimeEdit, -QDateEdit, -QDateTimeEdit { - padding-right: 20px; -} - -/* when QTextEdit are no editable (like Report view)*/ -QTextEdit:!editable, -QTextEdit:!editable:focus { - background-color: #f0f0f0; - border: 1px solid #c3c3c3; -} - -QComboBox:focus, -QAbstractSpinBox:focus, -QSpinBox:focus, -QDoubleSpinBox:focus, -QLineEdit:focus, -QTextEdit:focus, -QTimeEdit:focus, -QDateEdit:focus, -QDateTimeEdit:focus { - color: black; - border-color: #a5c61a; - border-right-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #94b30f, stop:1 #a5c61a); /* same as up/down or drop-down button color */ - background-color: #dadfc5; -} - -QComboBox:disabled, -QAbstractSpinBox:disabled, -QSpinBox:disabled, -QDoubleSpinBox:disabled, -QLineEdit:disabled, -QTextEdit:disabled, -QTimeEdit:disabled, -QDateEdit:disabled, -QDateTimeEdit:disabled { - color: #c3c3c3; - background-color: #e0e0e0; /* same as enabled color */ - border-color: #e0e0e0; /* same as enabled color */ -} - -QAbstractSpinBox:up-button, -QSpinBox:up-button, -QDoubleSpinBox:up-button, -QTimeEdit:up-button, -QDateEdit:up-button, -QDateTimeEdit:up-button, -QAbstractSpinBox:down-button, -QSpinBox:down-button, -QDoubleSpinBox:down-button, -QTimeEdit:down-button, -QDateEdit:down-button, -QDateTimeEdit:down-button { - background-color: #d2d2d2; - subcontrol-origin: border; /* important */ - width: 20px; /* same as QComboBox ... QDateTimeEdit padding-right */ -} - -QAbstractSpinBox:up-button, -QSpinBox:up-button, -QDoubleSpinBox:up-button, -QTimeEdit:up-button, -QDateEdit:up-button, -QDateTimeEdit:up-button { - subcontrol-position: top right; - border-top-right-radius: 3px; -} - -QAbstractSpinBox:down-button, -QSpinBox:down-button, -QDoubleSpinBox:down-button, -QTimeEdit:down-button, -QDateEdit:down-button, -QDateTimeEdit:down-button { - subcontrol-position: bottom right; - border-bottom-right-radius: 3px; -} - -QAbstractSpinBox:up-button:focus, -QSpinBox:up-button:focus, -QDoubleSpinBox:up-button:focus, -QTimeEdit:up-button:focus, -QDateEdit:up-button:focus, -QDateTimeEdit:up-button:focus { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #9bbc12, stop:1 #a5c61a); -} - -QAbstractSpinBox:down-button:focus, -QSpinBox:down-button:focus, -QDoubleSpinBox:down-button:focus, -QTimeEdit:down-button:focus, -QDateEdit:down-button:focus, -QDateTimeEdit:down-button:focus { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #94b30f, stop:1 #9bbc12); -} - -QAbstractSpinBox:up-button:disabled, -QSpinBox:up-button:disabled, -QDoubleSpinBox:up-button:disabled, -QTimeEdit:up-button:disabled, -QDateEdit:up-button:disabled, -QDateTimeEdit:up-button:disabled, -QAbstractSpinBox:down-button:disabled, -QSpinBox:down-button:disabled, -QDoubleSpinBox:down-button:disabled, -QTimeEdit:down-button:disabled, -QDateEdit:down-button:disabled, -QDateTimeEdit:down-button:disabled { - background-color: transparent; -} - -QAbstractSpinBox::up-arrow, -QSpinBox::up-arrow, -QDoubleSpinBox::up-arrow, -QTimeEdit::up-arrow, -QDateEdit::up-arrow, -QDateTimeEdit::up-arrow { - image: url(qss:images_dark-light/up_arrow_dark.svg); - top: 2px; /* fix symmetry between up and down images */ -} - -QAbstractSpinBox::up-arrow:focus, -QSpinBox::up-arrow:focus, -QDoubleSpinBox::up-arrow:focus, -QTimeEdit::up-arrow:focus, -QDateEdit::up-arrow:focus, -QDateTimeEdit::up-arrow:focus { - image: url(qss:images_dark-light/up_arrow_lighter.svg); -} - -QAbstractSpinBox::up-arrow:off, -QSpinBox::up-arrow:off, -QDoubleSpinBox::up-arrow:off, -QTimeEdit::up-arrow:off, -QDateEdit::up-arrow:off, -QDateTimeEdit::up-arrow:off { - image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); -} - -QAbstractSpinBox::up-arrow:disabled, -QSpinBox::up-arrow:disabled, -QDoubleSpinBox::up-arrow:disabled, -QTimeEdit::up-arrow:disabled, -QDateEdit::up-arrow:disabled, -QDateTimeEdit::up-arrow:disabled { - image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); -} - -QAbstractSpinBox::down-arrow, -QSpinBox::down-arrow, -QDoubleSpinBox::down-arrow, -QTimeEdit::down-arrow, -QDateEdit::down-arrow, -QDateTimeEdit::down-arrow { - image: url(qss:images_dark-light/down_arrow_dark.svg); - bottom: 0px; /* fix simetry between up and down images */ -} - -QAbstractSpinBox::down-arrow:focus, -QSpinBox::down-arrow:focus, -QDoubleSpinBox::down-arrow:focus, -QTimeEdit::down-arrow:focus, -QDateEdit::down-arrow:focus, -QDateTimeEdit::down-arrow:focus { - image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -QAbstractSpinBox::down-arrow:off, -QSpinBox::down-arrow:off, -QDoubleSpinBox::down-arrow:off, -QTimeEdit::down-arrow:off, -QDateEdit::down-arrow:off, -QDateTimeEdit::down-arrow:off { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - -QAbstractSpinBox::down-arrow:disabled, -QSpinBox::down-arrow:disabled, -QDoubleSpinBox::down-arrow:disabled, -QTimeEdit::down-arrow:disabled, -QDateEdit::down-arrow:disabled, -QDateTimeEdit::down-arrow:disabled { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - -/* ComboBox */ -QComboBox::drop-down { - background-color: #d2d2d2; - subcontrol-origin: border; /* important */ - subcontrol-position: top right; - width: 20px; - border-top-right-radius: 3px; - border-bottom-right-radius: 3px; -} - -QComboBox::drop-down:on, -QComboBox::drop-down:focus { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #94b30f, stop:1 #a5c61a); -} - -QComboBox::down-arrow { - image: url(qss:images_dark-light/down_arrow_dark.svg); -} - -QComboBox::down-arrow:on, -QComboBox::down-arrow:focus { - image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -QComboBox::down-arrow:off, -QComboBox::down-arrow:disabled { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - -/* ComboBox menu */ -QComboBox { - selection-color: white; - selection-background-color: #94b30f; -} - -QComboBox QAbstractItemView { - color: #6e6e6e; /* same as regular QComboBox color */ - background-color: transparent; - selection-color: white; - selection-background-color: #94b30f; - border-width: 5px 0px 5px 0px; - border-style: solid; - border-color: transparent; - margin: 0px -1px 0px 0px; /* temporal: hack for Mac... try it on Windows and Linux */ +color: black; +background-color: #ffffff; } -/*================================================================================================== -Push button -==================================================================================================*/ -QPushButton { - color: #6e6e6e; - text-align: center; - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #f5f5f5, stop:1 #e6e6e6); - border: 1px solid #d2d2d2; - border-bottom-color: #c3c3c3; /* simulates shadow under the button */ - padding: 4px 22px; - margin: 4px 4px; - min-height: 16px; /* same as QTabBar QPushButton min-width */ - border-radius: 4px; -} - -QPushButton:hover, -QPushButton:focus { - color: white; - border-color: #819c0c; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #94b30f, stop:1 #819c0c); -} - -QPushButton:disabled, -QPushButton:disabled:checked { - color: #b6b6b6; - border-color: #e6e6e6; - background-color: #e6e6e6; -} - -QPushButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #819c0c, stop:1 #94b30f); -} - -QPushButton:checked { - background-color: #94b30f; - border-color: #819c0c; -} - -/* Color Buttons */ -Gui--ColorButton, -Gui--ColorButton:disabled { - padding: 0px; /* reset */ - margin: 0px; /* reset */ -} - -Gui--ColorButton { - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #f5f5f5, stop:1 #e6e6e6); - border: 1px solid #d2d2d2; - border-bottom-color: #c3c3c3; /* simulates shadow under the button */ -} - -Gui--ColorButton:disabled { - border-color: transparent; - background-color: rgba(0,0,0,10); -} - -Gui--ColorButton:hover, -Gui--ColorButton:focus { - border-color: #819c0c; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #94b30f, stop:1 #819c0c); -} - -Gui--ColorButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #819c0c, stop:1 #94b30f); -} - -/* Pushbutton style for "..." inside Placement cell which launches Placement tool */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QPushButton, -Gui--PropertyEditor--PropertyEditor > QWidget > QPushButton { - background-color: #b6b6b6; - border: 1px solid #828282; - min-width: 16px; /* reset it due to larger value on regular QPushButton, same or bigger value as regular QPushButton min-height */ - border-radius: 0px; - margin: 0px; /* reset */ - padding: 0px; /* reset */ -} - -Gui--PropertyEditor--PropertyEditor > QWidget > QPushButton { - text-align:left; - padding-left: 2px; -} - -/* Fix for Expressions description QFrame that is "broken" with initial reset */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QWidget > QWidget > QFrame { - background-color: #f5f5f5; /* main background color */ - border: 1px solid #dcdcdc; - border-radius: 2px; - padding: 2px 6px; -} - -QPushButton:checked { - background-color: #94b30f; - border-color: #819c0c; -} - -/*================================================================================================== -Tool button Icon fix in save dialogs -==================================================================================================*/ -/* found under Tools -> Save Picture */ /* Draft -> ShapeString -> Font file */ - -QFileDialog#QFileDialog QToolButton { - background-color: transparent; - padding: 1px; - border: 1px; - margin: 0px; -} - - -/*================================================================================================== -Tool button inside QDialogs that works as QPushButtons -==================================================================================================*/ -/* found under Tools -> Customize -> Macros -> Pixmap "..." button */ -QDialog QToolButton { - color: #6e6e6e; - text-align: center; - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #f5f5f5, stop:1 #e6e6e6); - border: 1px solid #d2d2d2; - border-bottom-color: #c3c3c3; /* simulates shadow under the button */ - padding: 0px; /* different than regular QPushButton */ - margin: 2px; /* different than regular QPushButton */ - min-height: 16px; /* same as QTabBar QPushButton min-width */ - border-radius: 4px; -} - -QDialog QToolButton:hover, -QDialog QToolButton:focus { - color: white; - border-color: #819c0c; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #94b30f, stop:1 #819c0c); -} - -QDialog QToolButton:disabled, -QDialog QToolButton:disabled:checked { - color: #b6b6b6; - border-color: #e6e6e6; - background-color: #e6e6e6; -} - -QDialog QToolButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #819c0c, stop:1 #94b30f); -} - - -/*================================================================================================== -Tool button inside Task Panel content that works as QPushButtons -==================================================================================================*/ /* found inside Part Design Workbench and "make a draft on a face" Task panel options */ QSint--ActionGroup QFrame[class="content"] QToolButton { - color: #6e6e6e; - text-align: center; - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #f5f5f5, stop:1 #e6e6e6); - border: 1px solid #d2d2d2; - border-bottom-color: #c3c3c3; /* simulates shadow under the button */ - padding: 2px 6px; /* different than regular QPushButton */ - margin: 2px; /* different than regular QPushButton */ - min-height: 16px; /* same as QTabBar QPushButton min-width */ - border-radius: 4px; + color: black; + text-align: center; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #E2E2E2, stop:1 #EDEDED); + border: 0px solid #C1C1C1; + padding: 1px 1px; /* different than regular QPushButton */ + margin: 0px; /* different than regular QPushButton */ + min-height: 16px; /* same as QTabBar QPushButton min-width */ + border-radius: 1px; } -QSint--ActionGroup QFrame[class="content"] QToolButton:hover, +QSint--ActionGroup QFrame[class="content"] QToolButton:hover{ + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #B7D300, stop:1 #E1FF00 ); + +} QSint--ActionGroup QFrame[class="content"] QToolButton:focus { - color: white; - border-color: #819c0c; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #94b30f, stop:1 #819c0c); + border: 1px solid #E1FF00 +; } QSint--ActionGroup QFrame[class="content"] QToolButton:disabled, QSint--ActionGroup QFrame[class="content"] QToolButton:disabled:checked { - color: #b6b6b6; - border-color: #e6e6e6; - background-color: #e6e6e6; + color: #A3A3A3; + background-color: #ffffff; } QSint--ActionGroup QFrame[class="content"] QToolButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #819c0c, stop:1 #94b30f); + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #B7D300, stop:1 #E1FF00 ); + } -/* QToolButtons with a menu found in Sketcher task panel*/ -QSint--ActionGroup QToolButton::menu-button { - border: none; - border-top-right-radius: 4px; - border-bottom-right-radius: 4px; - padding: 2px; - width: 16px; /* 16px width + 4px for border = 20px allocated above */ - outline: none; - background-color: transparent; +/* QSlider ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qslider + +--------------------------------------------------------------------------- */ +QSlider:disabled { + background: #F6F6F6; } -QSint--ActionGroup QToolButton#settingsButton, -QSint--ActionGroup QToolButton#filterButton, -QSint--ActionGroup QToolButton#manualUpdate { - padding-right: 20px; /* make way for the popup button */ -} - -/* to give widget inside the menu same look as regular menu */ -QSint--ActionGroup QToolButton#filterButton QListWidget { - color: black; - background: #f5f5f5; - padding: 0px; - margin: 0px; -} - - -/*================================================================================================== -Radio button -==================================================================================================*/ -QRadioButton::indicator:unchecked{ - color: #505050; - background-color: rgba(0,0,0,20); - border: 1px solid #505050; -} - -QRadioButton::indicator:checked { - background-color: #94b30f; /* QCheckBox has the same color */ - border: 1px solid #819c0c; /* QCheckBox has the same color */ - image:url(qss:images_dark-light/radiobutton_light.svg); -} - -QRadioButton, -QRadioButton:disabled { - color: #505050; - padding: 3px; - outline: none; - background-color: transparent; -} - -QRadioButton:disabled { - color: rgba(0,0,0,40); -} - -QRadioButton::indicator { - width: 11px; - height: 11px; - border-radius: 6px; -} - -QRadioButton::indicator:pressed { - border-color: #c5d675; -} - -QRadioButton::indicator:disabled { - color: #6e6e6e; - background-color: transparent; - border: 1px solid #6e6e6e; -} - -QRadioButton:focus { - border: none; -} - - -/*================================================================================================== -Checkbox -==================================================================================================*/ -QCheckBox, -QCheckBox:disabled { - color: #505050; - padding: 3px; - outline: none; - background-color: transparent; -} - -QCheckBox::indicator, -QGroupBox::indicator { - color: #c8c8c8; - background-color: rgba(0,0,0,20); - border: 1px solid #505050; - width: 11px; - height: 11px; - border-radius:2px; -} - -QCheckBox::indicator:pressed, -QCheckBox::indicator:non-exclusive:checked:pressed, -QCheckBox::indicator:indeterminate:pressed, -QCheckBox::indicator:checked:pressed, -QGroupBox::indicator:pressed, -QGroupBox::indicator:non-exclusive:checked:pressed, -QGroupBox::indicator:indeterminate:pressed, -QGroupBox::indicator:checked:pressed { - border-color: #c5d675; -} - -QCheckBox::indicator:checked, -QGroupBox::indicator:checked { - background-color: #94b30f; /* QRadioButton has the same color */ - border: 1px solid #819c0c; /* QRadioButton has the same color */ - image:url(qss:images_dark-light/checkbox_light.svg); -} - -QCheckBox:disabled { - color: rgba(0,0,0,40); - background-color: transparent; -} - -QCheckBox::indicator:disabled, -QGroupBox::indicator:disabled { - background-color: rgba(0,0,0,20); - border: 1px solid rgba(0,0,0,20); -} - -QCheckBox::indicator:indeterminate, -QGroupBox::indicator:indeterminate { - background-color: #94b30f; - border: 1px solid #819c0c; - image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); -} - -QCheckBox:focus { - border: none; -} - - -/*================================================================================================== -Checkboxes inside QListWidget and QTreeView -==================================================================================================*/ -QListWidget::indicator, -QTreeView::indicator { - color: #c8c8c8; - background-color: rgba(0,0,0,20); - border: 1px solid #505050; - width: 11px; - height: 11px; - border-radius:2px; -} - -/* fix for QTreeView::indicator losing its margin */ -QTreeView::indicator { - margin: 3px; -} - -QListWidget::indicator:selected, -QTreeView::indicator:selected { - background-color: #e6e6e6; -} - -QListWidget::indicator:checked:selected, -QListWidget::indicator:indeterminate:selected, -QTreeView::indicator:checked:selected, -QTreeView::indicator:indeterminate:selected { - background-color: #a5c61a; /* slightly lighter than default */ - border-color: #74831d; /* slightly darker than default */ -} - -QListWidget::indicator:pressed, -QListWidget::indicator:non-exclusive:checked:pressed, -QListWidget::indicator:indeterminate:pressed, -QListWidget::indicator:checked:pressed, -QTreeView::indicator:pressed, -QTreeView::indicator:non-exclusive:checked:pressed, -QTreeView::indicator:indeterminate:pressed, -QTreeView::indicator:checked:pressed { - border-color: #c5d675; -} - -QListWidget::indicator:checked, -QTreeView::indicator:checked { - background-color: #94b30f; /* QRadioButton has the same color */ - border: 1px solid #819c0c; /* QRadioButton has the same color */ - image:url(qss:images_dark-light/checkbox_light.svg); -} - -QListWidget::indicator:disabled, -QTreeView::indicator:disabled { - background-color: rgba(0,0,0,20); - border: 1px solid rgba(0,0,0,20); -} - -QListWidget::indicator:indeterminate, -QTreeView::indicator:indeterminate { - background-color: #94b30f; - border: 1px solid #819c0c; - image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); -} - - -/*================================================================================================== -Slider -==================================================================================================*/ -QSlider, -QSlider:active, -QSlider:!active { - border: none; - background-color: transparent; -} - -QSlider:horizontal { - padding: 0px 10px; -} - -QSlider:vertical { - padding: 10px 0px; -} - -QSlider::groove { - background-color: rgba(0,0,0,30); - border: 1px solid rgba(0,0,0,40); - border-radius: 5px; - margin: 4px 0px; +QSlider:focus { + border: 1px solid #E1FF00 ; } QSlider::groove:horizontal { - height: 8px; + background: #F6F6F6; + border: 1px solid #C1C1C1; + height: 4px; + margin: 0px; + border-radius: 1.9px; } QSlider::groove:vertical { - width: 8px; + background: #B7D300; + border: 1px solid #C1C1C1; + width: 4px; + margin: 0px; + border-radius: 1.9px; } -QSlider::groove:horizontal:disabled, -QSlider::groove:vertical:disabled { - border-color: #dcdcdc; - background-color: #dcdcdc; +QSlider::add-page:vertical { + background: #B7D300; + border: 1px solid #C1C1C1; + width: 4px; + margin: 0px; + border-radius: 1.9px; } -QSlider::handle:horizontal, -QSlider::handle:vertical { - background-color: #b6b6b6; - border: 1px solid #b6b6b6; - width: 14px; - height: 14px; - border-radius: 8px; +QSlider::add-page:vertical :disabled { + background: #f6f6f6; +} + +QSlider::sub-page:horizontal { + background: #B7D300; + border: 1px solid #C1C1C1; + height: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::sub-page:horizontal:disabled { + background: #B7D300; } QSlider::handle:horizontal { - margin: -4px 0; + background: #A3A3A3; + border: 1px solid #C1C1C1; + width: 8px; + height: 8px; + margin: -8px 0px; + border-radius: 1.9px; +} + +QSlider::handle:horizontal:hover { + background: #B7D300; + border: 1px solid #B7D300; +} + +QSlider::handle:horizontal:focus { + border: 1px solid #E1FF00 ; } QSlider::handle:vertical { - margin: 0 -4px; + background: #A3A3A3; + border: 1px solid #C1C1C1; + width: 8px; + height: 8px; + margin: 0 -8px; + border-radius: 1.9px; } -QSlider::handle:horizontal:hover, -QSlider::handle:vertical:hover, -QSlider::handle:horizontal:pressed, -QSlider::handle:vertical:pressed { - border-color: #94b30f; - background-color: #94b30f; +QSlider::handle:vertical:hover { + background: #B7D300; + border: 2px solid #B7D300; } -QSlider::handle:horizontal:disabled, -QSlider::handle:vertical:disabled { - border-color: #dcdcdc; - background-color: #dcdcdc; +QSlider::handle:vertical:focus { + border: 1px solid #E1FF00 ; +} + +/* QLineEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlineedit + +--------------------------------------------------------------------------- */ +QLineEdit { + background-color: #ffffff; + padding-top: 2px; + /* This QLineEdit fix 103, 111 */ + padding-bottom: 2px; + /* This QLineEdit fix 103, 111 */ + padding-left: 4px; + padding-right: 4px; + border-style: solid; + border: 1px solid #C1C1C1; + border-radius: 2px; + color: black; +} + +QLineEdit:disabled { + background-color: #F6F6F6; + color: #A3A3A3; +} + +QLineEdit:hover { + border: 1px solid #B7D300; + color: black; +} + +QLineEdit:focus { + border: 2px solid #E1FF00 ; +} + +QLineEdit:selected { + background-color: #B7D300; + color: black; +} + +/* QTabWiget -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabWidget { + padding: 2px; + selection-background-color: #B7D300; +} + +QTabWidget QWidget { + /* Fixes #189 */ + border-radius: 1.9px; +} + +QTabWidget::pane { + margin: 0px; + /* Fixes double border inside pane with pyqt5 */ + padding: 0px; +} + +QTabWidget::pane:selected { + background-color: #B7D300; + border: 1px solid #C1C1C1; +} +/* QTabBar ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabBar, QDockWidget QTabBar { + qproperty-drawBase: 0; + /* left: 5px; move to the right by 5px - removed for fix */ +} + +QTabBar::close-button, QDockWidget QTabBar::close-button { + border: 0; + margin: 0; + padding: 1px; + image: url(qss:images_dark-light/close_dark.svg); +} + +QTabBar::close-button:hover, QDockWidget QTabBar::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); + /*background-color: rgba(255, 0, 0, 0.3);*/ +} + +QTabBar::close-button:pressed, QDockWidget QTabBar::close-button:pressed { + image: url(qss:images_dark-light/close_.svg); +} + +QTabBar::tab, QDockWidget QTabBar::tab { + /* !selected and disabled ----------------------------------------- */ + /* selected ------------------------------------------------------- */ + padding: 4px; +} + +QTabBar::tab:top:selected:disabled, QDockWidget QTabBar::tab:top:selected:disabled { + color: #797979; +} + +QTabBar::tab:bottom:selected:disabled, QDockWidget QTabBar::tab:bottom:selected:disabled { + color: #797979; +} + +QTabBar::tab:left:selected:disabled, QDockWidget QTabBar::tab:left:selected:disabled { + color: #A0A0A0; +} + +QTabBar::tab:right:selected:disabled, QDockWidget QTabBar::tab:right:selected:disabled { + color: #A0A0A0; +} + +QTabBar::tab:top:!selected:disabled, QDockWidget QTabBar::tab:top:!selected:disabled { + color: #A0A0A0; +} + +QTabBar::tab:bottom:!selected:disabled, QDockWidget QTabBar::tab:bottom:!selected:disabled { + color: #A0A0A0; + +} + +QTabBar::tab:left:!selected:disabled, QDockWidget QTabBar::tab:left:!selected:disabled { + color: #A0A0A0; + +} + +QTabBar::tab:right:!selected:disabled, QDockWidget QTabBar::tab:right:!selected:disabled { + color: #A0A0A0; +} + +QTabBar::tab:top:!selected, QDockWidget QTabBar::tab:top:!selected { + color: #A0A0A0; +} + +QTabBar::tab:bottom:!selected, QDockWidget QTabBar::tab:bottom:!selected { + color: #A0A0A0; +} + +QTabBar::tab:left:!selected, QDockWidget QTabBar::tab:left:!selected { + color: #A0A0A0; +} + +QTabBar::tab:right:!selected, QDockWidget QTabBar::tab:right:!selected { + color: #A0A0A0; +} + +QTabBar::tab:top, QDockWidget QTabBar::tab:top { + color: #A0A0A0; + margin-left: 0px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + min-width: 5px; + border-bottom: 1px solid #A3A3A3; /* same as tab content background color */ + border-radius: 0px; +} + +QTabBar::tab:top:selected, QDockWidget QTabBar::tab:top:selected { + color: black; + border-top: 4px solid #B7D300; /* selection color */ + border-bottom: 1px solid transparent; /* same as tab content background color */ + border-left: 1px solid #A3A3A3; + border-right: 1px solid #A3A3A3; + } + +QTabBar::tab:top:!selected:hover, QDockWidget QTabBar::tab:top:!selected:hover { + /*border: 1px solid #B7D300;*/ + border: 0px solid #B7D300; + background-color: #B7D300; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; + color: black; +} + +QTabBar::tab:bottom, QDockWidget QTabBar::tab:bottom { + color: #A0A0A0; + margin-left: 0px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + min-width: 5px; + border-top: 1px solid #A3A3A3; /* same as tab content background color */ + border-radius: 0px; +} + +QTabBar::tab:bottom:selected, QDockWidget QTabBar::tab:bottom:selected { + color: black; + border-bottom: 4px solid #B7D300; /* selection color */ + border-top: 1px solid transparent; /* same as tab content background color */ + border-left: 1px solid #A3A3A3; + border-right: 1px solid #A3A3A3; + +} + +QTabBar::tab:bottom:!selected:hover, QDockWidget QTabBar::tab:bottom:!selected:hover { +/*border: 1px solid #B7D300;*/ + border: 0px solid #B7D300; + background-color: #B7D300; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; + color: black; +} + +QTabBar::tab:left, QDockWidget QTabBar::tab:left { + background-color: #F6F6F6; + margin-top: 2px; + + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + border-radius: 4px; + min-height: 5px; +} + +QTabBar::tab:left:selected, QDockWidget QTabBar::tab:left:selected { + background-color: #F6F6F6; + border: 0px solid #E1FF00 ; +} + +QTabBar::tab:left:!selected:hover, QDockWidget QTabBar::tab:left:!selected:hover { + border: 0px solid #B7D300; + background-color: #B7D300; + /* Fixes different behavior #271 */ + margin-right: 0px; + padding-right: -1px; + color: black; +} + +QTabBar::tab:right, QDockWidget QTabBar::tab:right { + background-color: #F6F6F6; + margin-top: 2px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + min-height: 5px; + border: 10px; +} + +QTabBar::tab:right:selected, QDockWidget QTabBar::tab:right:selected { + background-color: #F6F6F6; + border: 0px solid #E1FF00 ; +} + +QTabBar::tab:right:!selected:hover, QDockWidget QTabBar::tab:right:!selected:hover { + border: 0px solid #B7D300; + background-color: #B7D300; + /* Fixes different behavior #271 */ + margin-left: 0px; + padding-left: 0px; + color: black; +} + +QTabBar QToolButton, QDockWidget QTabBar QToolButton { + /* Fixes #136 */ + background-color: #F6F6F6; + height: 12px; + width: 12px; +} + +QTabBar QToolButton:pressed, QDockWidget QTabBar QToolButton:pressed { + border: 0px solid #B7D300; + background-color: #B7D300; +} + +QTabBar QToolButton:pressed:hover, QDockWidget QTabBar QToolButton:pressed:hover { + border: 0px solid #B7D300; + background-color: #B7D300; + color: black; +} + +QTabBar QToolButton::left-arrow:enabled, QDockWidget QTabBar QToolButton::left-arrow:enabled { + image: url(qss:images_dark-light/left_arrow_darker.svg); +} + +QTabBar QToolButton::left-arrow:disabled, QDockWidget QTabBar QToolButton::left-arrow:disabled { + image: url(qss:images_dark-light/left_arrow_disabled_dark.svg); +} + +QTabBar QToolButton::right-arrow:enabled, QDockWidget QTabBar QToolButton::right-arrow:enabled { + image: url(qss:images_dark-light/right_arrow_darker.svg); +} + +QTabBar QToolButton::right-arrow:disabled, QDockWidget QTabBar QToolButton::right-arrow:disabled { + image: url(qss:images_dark-light/right_arrow_disabled_dark.svg); +} + +/* QDockWiget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QDockWidget { + background-color: #F6F6F6; + border: 1px solid #C1C1C1; + border-radius: 1.9px; + titlebar-close-icon: url(qss:images_dark-light/transparent.svg); + titlebar-normal-icon: url(qss:images_dark-light/transparent.svg); +} + +QDockWidget::title { + /* Better size for title bar */ + padding: 3px; + spacing: 4px; + border: none; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #E2E2E2, stop:1 #EDEDED); + text-align: center; + font-weight: bold; +} + +QDockWidget::close-button { + icon-size: 10px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/close_dark.svg); +} + +QDockWidget::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); +} + +QDockWidget::close-button:pressed { + image: url(qss:images_dark-light/close_dark.svg); +} + +QDockWidget::float-button { + icon-size: 12px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/undock_dark.svg); +} + +QDockWidget::float-button:hover { + /*background-color: #B7D300;*/ + image: url(qss:images_dark-light/undock_blue.svg); +} + +QDockWidget::float-button:pressed { + image: url(qss:images_dark-light/undock_dark.svg); +} + +/* QTreeView QListView QTableView ----------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtreeview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlistview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtableview + +--------------------------------------------------------------------------- */ +QTreeView::branch { + background: transparent; +} + +QTreeView::branch:has-siblings:!adjoins-item { + border-image: url(qss:images_dark-light/branch_vline_dark.svg) 0; +} + +QTreeView::branch:has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_more_dark.svg) 0; +} + +QTreeView::branch:!has-children:!has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_end_dark.svg) 0; +} + +QTreeView::branch:closed:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_closed_dark.svg) 0; +} + +QTreeView::branch:has-children:!has-siblings:closed { + border-image: url(qss:images_dark-light/branch_end_closed_dark.svg) 0; +} + +QTreeView::branch:open:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_open_dark.svg) 0; +} + +QTreeView::branch:open:has-children:!has-siblings { + border-image: url(qss:images_dark-light/branch_end_open_dark.svg) 0; +} + +QTreeView::indicator:checked, +QListView::indicator:checked, +QTableView::indicator:checked, +QColumnView::indicator:checked { + image: url(qss:images_dark-light/checkbox_dark.svg); +} + +QTreeView::indicator:checked:hover, QTreeView::indicator:checked:focus, QTreeView::indicator:checked:pressed, +QListView::indicator:checked:hover, +QListView::indicator:checked:focus, +QListView::indicator:checked:pressed, +QTableView::indicator:checked:hover, +QTableView::indicator:checked:focus, +QTableView::indicator:checked:pressed, +QColumnView::indicator:checked:hover, +QColumnView::indicator:checked:focus, +QColumnView::indicator:checked:pressed { + image: url(qss:images_dark-light/checkbox_light_hover.svg); +} + +QTreeView::indicator:unchecked, +QListView::indicator:unchecked, +QTableView::indicator:unchecked, +QColumnView::indicator:unchecked { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QTreeView::indicator:unchecked:hover, QTreeView::indicator:unchecked:focus, QTreeView::indicator:unchecked:pressed, +QListView::indicator:unchecked:hover, +QListView::indicator:unchecked:focus, +QListView::indicator:unchecked:pressed, +QTableView::indicator:unchecked:hover, +QTableView::indicator:unchecked:focus, +QTableView::indicator:unchecked:pressed, +QColumnView::indicator:unchecked:hover, +QColumnView::indicator:unchecked:focus, +QColumnView::indicator:unchecked:pressed { + image: url(qss:images_dark-light/checkbox_unchecked_hover_dark.svg); +} + +QTreeView::indicator:indeterminate, +QListView::indicator:indeterminate, +QTableView::indicator:indeterminate, +QColumnView::indicator:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QTreeView::indicator:indeterminate:hover, QTreeView::indicator:indeterminate:focus, QTreeView::indicator:indeterminate:pressed, +QListView::indicator:indeterminate:hover, +QListView::indicator:indeterminate:focus, +QListView::indicator:indeterminate:pressed, +QTableView::indicator:indeterminate:hover, +QTableView::indicator:indeterminate:focus, +QTableView::indicator:indeterminate:pressed, +QColumnView::indicator:indeterminate:hover, +QColumnView::indicator:indeterminate:focus, +QColumnView::indicator:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QTreeView, +QListView, +QTableView, +QColumnView { + background-color: #F6F6F6; /* background of a lot of stuff including spreadsheets.*/ + border: 0px solid #C1C1C1; + color: black; + gridline-color: #A3A3A3; + border-radius: 0px; +} + +QTableView, +QListView { + background-color: rgba(0, 0, 0, 0.050); /* background of a lot of stuff including spreadsheets.*/ } -/*================================================================================================== -Toolbar buttons -==================================================================================================*/ -/*QToolBar > QComboBox, disabled because creates different margins for body and drop-down button */ -QToolBar > QAbstractSpinBox, -QToolBar > QSpinBox, -QToolBar > QDoubleSpinBox, -QToolBar > QLineEdit, -QToolBar > QTextEdit, -QToolBar > QTimeEdit, -QToolBar > QDateEdit, -QToolBar > QDateTimeEdit { - margin: 0px 2px; - padding: 0px; - min-width: 70px; /* necessary to show its content */ +QTreeView:disabled, +QListView:disabled, +QTableView:disabled, +QColumnView:disabled { + background-color: #ffffff; + color: #A3A3A3; } -QToolBar > QComboBox, -QToolBar > QAbstractSpinBox, -QToolBar > QSpinBox, -QToolBar > QDoubleSpinBox, -QToolBar > QLineEdit, -QToolBar > QTextEdit, -QToolBar > QTimeEdit, -QToolBar > QDateEdit, -QToolBar > QDateTimeEdit { - min-height: 0px; /* reset it inside Tool Bar due to the user ability to set the "size of toolbar icons" inside Preferences */ +QTreeView:selected, +QListView:selected, +QTableView:selected, +QColumnView:selected { + background-color: #B7D300; + color: black; } -QToolBar > QPushButton { - padding: 0px; - margin: 1px; /* doesn't work with :left, :right:, :top or :bottom sub-controls */ - min-width: 16px; /* could not be larger due to switchable Preferences "Size of toolbar icons" */ - min-height: 16px; /* could not be larger due to switchable Preferences "Size of toolbar icons" */ - border-radius: 4px; /* same as regular QPushButton */ +QTreeView:focus, +QListView:focus, +QTableView:focus, +QColumnView:focus { + border: 1px solid #E1FF00 ; } -QToolBar > QPushButton:checked { - border: 1px solid #a5c61a; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #dadfc5, stop:1 #a5c61a); +QTreeView::item:pressed, +QListView::item:pressed, +QTableView::item:pressed, +QColumnView::item:pressed { + background-color: #B7D300; } -QToolBar > QPushButton:!checked { - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #f5f5f5, stop:1 #e6e6e6); - border: 1px solid #d2d2d2; - border-bottom-color: #c3c3c3; /* simulates shadow under the button */ - text-align: left; /* bug fix #4559 */ +QTreeView::item:selected:active, +QListView::item:selected:active, +QTableView::item:selected:active, +QColumnView::item:selected:active { + background-color: #B7D300; } -QToolBar > QPushButton:checked:hover { - border-color: #9bbc12; +QTreeView::item:selected:!active, +QListView::item:selected:!active, +QTableView::item:selected:!active, +QColumnView::item:selected:!active { + color: black; + background-color: #A3A3A3; } -QToolBar > QPushButton:!checked:hover { +QTreeView::item:!selected:hover, +QListView::item:!selected:hover, +QTableView::item:!selected:hover, +QColumnView::item:!selected:hover { + outline: 0; + color: black; + background-color: #B7D300; +} + +QTableCornerButton::section { + background-color: #F6F6F6; + border: 1px transparent #C1C1C1; + border-radius: 0px; +} + +QTableView::item { color: black; - border-color: #b6b6b6; } - -QToolBar > QPushButton:checked:pressed { - background-color: #a5c61a; -} - -QToolBar > QPushButton:!checked:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #b6b6b6, stop:1 #e6e6e6); -} - -QToolBar > QPushButton:checked:disabled, -QToolBar > QPushButton:!checked:disabled { - border: none; - background-color: transparent; -} - -QToolBar > QToolButton { - margin: 2px; - padding: 2px; - border-radius: 3px; -} - -QToolBar > QToolButton:hover { - background-color: rgba(0,0,0,20); -} - -QToolBar > QToolButton:pressed { - background-color: rgba(0,0,0,30); -} - -/* ToolBar menu buttons (buttons with drop-down menu) */ -QToolBar > QToolButton#qt_toolbutton_menubutton { - padding-right: 20px; /* Hack to add more width to buttons with menu */ - border: 1px solid transparent; - border-radius: 3px; -} - -QToolBar > QToolButton#qt_toolbutton_menubutton:hover, -QToolBar > QToolButton#qt_toolbutton_menubutton:pressed, -QToolBar > QToolButton#qt_toolbutton_menubutton:open { - border: 1px solid #a5c61a; -} - -QToolBar QToolButton::menu-button, -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button { - border: none; - border-top-right-radius: 3px; - border-bottom-right-radius: 3px; - width: 16px; /* 16px width + 4px for border = 20px allocated above */ - outline: none; - background-color: transparent; -} - -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button:hover, -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button:pressed, -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button:open { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #94b30f, stop:1 #a5c61a); -} - -QToolBar > QToolButton::menu-arrow { - background-image: url(qss:images_dark-light/down_arrow_dark.svg); - background-position: center center; - background-repeat: none; - subcontrol-origin: padding; - subcontrol-position: bottom right; - height: 10px; /* same as arrow image */ -} - -QToolBar > QToolButton::menu-arrow:hover { - background-image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -QToolBar > QToolButton::menu-arrow:open { - background-image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -/* when QToolButton is checked: */ -QToolButton:checked { - border: 1px solid #a5c61a; - background-color: rgba(124,171,249,60); /* transparency for #a5c61a color */ -} - -QToolButton:checked:hover { - border: 1px solid #a5c61a; - background-color: rgba(124,171,249,80); /* transparency for #a5c61a color */ -} - -/*The "show more" button (it can also be stylable with "QToolBarExtension" */ -QToolBar QToolButton#qt_toolbar_ext_button { - margin: 0px; - padding: 0px; - /*background-image: url(qss:images_dark-light/more_dark.svg);*/ - image: transparent; - background-repeat: none; - background-position: center left; -} - -QToolBar QToolButton#qt_toolbar_ext_button:hover { - /*background-image: url(qss:images_dark-light/more_light.svg);*/ - border-color: #e0e0e0; - background-color: #e0e0e0; -} - -QToolBar QToolButton#qt_toolbar_ext_button:on { - /*background-image: url(qss:images_dark-light/more_light.svg);*/ - border-color: #e0e0e0; - background-color: #e0e0e0; -} - - -/*================================================================================================== -Tables (spreadsheets) -==================================================================================================*/ QTableView { - gridline-color: #d2d2d2; - selection-color: #566214; - selection-background-color: #dadfc5; + /*qproperty-AliasedCellBackgroundColor: #f700ff;*/ + /*qproperty-aliasBgColor: #f700ff;*/ } -QTableView::item:hover { - background-color: rgba(0,0,0,10); /* temporal: is it displayed in Linux or Windows? on OSX it isn't */ +/* QHeaderView ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qheaderview + +--------------------------------------------------------------------------- */ +QHeaderView { + background-color: transparent; + text-align: center; } -QTableView::item:disabled { - color: #e6e6e6; +QHeaderView:disabled { + background-color: #F6F6F6; + color: rgb(174, 174, 174); } -QTableView::item:selected { - color: #566214; - border-color: #dadfc5; /* same as focused background color */ - border-bottom-color: #a5c61a; /* same as focused border color */ +QHeaderView::section { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #E2E2E2, stop:1 #EDEDED); + color: black; + border: 1px solid #C1C1C1; + font-size: 13px; + font-weight: bold; } -/* fix for elements inside the cells */ -QTableView > QWidget > QComboBox, -QTableView > QWidget > QAbstractSpinBox, -QTableView > QWidget > QSpinBox, -QTableView > QWidget > QDoubleSpinBox, -QTableView > QWidget > QLineEdit, -QTableView > QWidget > QTextEdit, -QTableView > QWidget > QTimeEdit, -QTableView > QWidget > QDateEdit, -QTableView > QWidget > QDateTimeEdit, -QTableView > QWidget > QComboBox:drop-down, -QTableView > QWidget > QAbstractSpinBox:up-button, -QTableView > QWidget > QSpinBox:up-button, -QTableView > QWidget > QDoubleSpinBox:up-button, -QTableView > QWidget > QTimeEdit:up-button, -QTableView > QWidget > QDateEdit:up-button, -QTableView > QWidget > QDateTimeEdit:up-button, -QTableView > QWidget > QAbstractSpinBox:down-button, -QTableView > QWidget > QSpinBox:down-button, -QTableView > QWidget > QDoubleSpinBox:down-button, -QTableView > QWidget > QTimeEdit:down-button, -QTableView > QWidget > QDateEdit:down-button, -QTableView > QWidget > QDateTimeEdit:down-button, -QTableView > QWidget > Gui--ColorButton { - border-radius: 0px; +QHeaderView::section::horizontal { + padding-top: 1px; + padding-bottom: 1px; + padding-left: 5px; + padding-right: 0px; } -QTableView > QWidget > QComboBox, -QTableView > QWidget > QAbstractSpinBox, -QTableView > QWidget > QSpinBox, -QTableView > QWidget > QDoubleSpinBox, -QTableView > QWidget > QLineEdit, -QTableView > QWidget > QTextEdit, -QTableView > QWidget > QTimeEdit, -QTableView > QWidget > QDateEdit, -QTableView > QWidget > QDateTimeEdit { - color: black; - background-color: transparent; - border-color: transparent; +QHeaderView::section::horizontal::first, QHeaderView::section::horizontal::only-one { + border-left: 0px solid #C1C1C1; } -QTableView > QWidget > QComboBox:drop-down, -QTableView > QWidget > QAbstractSpinBox:up-button, -QTableView > QWidget > QSpinBox:up-button, -QTableView > QWidget > QDoubleSpinBox:up-button, -QTableView > QWidget > QTimeEdit:up-button, -QTableView > QWidget > QDateEdit:up-button, -QTableView > QWidget > QDateTimeEdit:up-button, -QTableView > QWidget > QAbstractSpinBox:down-button, -QTableView > QWidget > QSpinBox:down-button, -QTableView > QWidget > QDoubleSpinBox:down-button, -QTableView > QWidget > QTimeEdit:down-button, -QTableView > QWidget > QDateEdit:down-button, -QTableView > QWidget > QDateTimeEdit:down-button, -QTableView > QWidget > Gui--ColorButton { - background-color: rgba(0,0,0,30); +QHeaderView::section::horizontal:disabled { + color: #A3A3A3; } -QTableView > QWidget > QComboBox:focus, -QTableView > QWidget > QAbstractSpinBox:focus, -QTableView > QWidget > QSpinBox:focus, -QTableView > QWidget > QDoubleSpinBox:focus, -QTableView > QWidget > QLineEdit:focus, -QTableView > QWidget > QTextEdit:focus, -QTableView > QWidget > QTimeEdit:focus, -QTableView > QWidget > QDateEdit:focus, -QTableView > QWidget > QDateTimeEdit:focus { - color: #566214; - selection-color: white; - selection-background-color: #94b30f; - border-color: #dadfc5; - background-color: #dadfc5; +QHeaderView::section::vertical { + padding-top: 1px; + padding-bottom: 0; + padding-left: 1px; + padding-right: 0px; + border-top: 2px solid #C1C1C1; } -QTableView > QWidget > QComboBox:disabled, -QTableView > QWidget > QAbstractSpinBox:disabled, -QTableView > QWidget > QSpinBox:disabled, -QTableView > QWidget > QDoubleSpinBox:disabled, -QTableView > QWidget > QLineEdit:disabled, -QTableView > QWidget > QTextEdit:disabled, -QTableView > QWidget > QTimeEdit:disabled, -QTableView > QWidget > QDateEdit:disabled, -QTableView > QWidget > QDateTimeEdit:disabled { - color: rgba(0,0,0,120); - background-color: transparent; - border-color: transparent; +QHeaderView::section::vertical::first, QHeaderView::section::vertical::only-one { + border-top: 2px solid #C1C1C1; } -QTableView > QWidget > QComboBox:read-only, -QTableView > QWidget > QAbstractSpinBox:read-only, -QTableView > QWidget > QSpinBox:read-only, -QTableView > QWidget > QDoubleSpinBox:read-only, -QTableView > QWidget > QLineEdit:read-only, -QTableView > QWidget > QTextEdit:read-only, -QTableView > QWidget > QTimeEdit:read-only, -QTableView > QWidget > QDateEdit:read-only, -QTableView > QWidget > QDateTimeEdit:read-only { - color: black; - background-color: transparent; - border-color: transparent; +QHeaderView::section::vertical:disabled { + border-top: 2px solid #C1C1C1; } - -/*================================================================================================== -SELECTORTOOLBAR widget (3rd party plugin) -==================================================================================================*/ -QToolBar:horizontal#Selector, -QToolBar:vertical#Selector { - background-color: rgba(0,0,0,120); - margin: 0px; - padding: 0px; +QHeaderView::down-arrow { + /* Those settings (border/width/height/background-color) solve bug */ + /* transparent arrow background and size */ + background-color: transparent; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/down_arrow_dark.svg); } -QToolBar::handle:top#Selector, -QToolBar::handle:bottom#Selector, -QToolBar::handle:horizontal#Selector { - alignment: bottom left; +QHeaderView::up-arrow { + background-color: transparent; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/up_arrow_dark.svg); } -QToolBar::handle:left#Selector, -QToolBar::handle:right#Selector, -QToolBar::handle:vertical#Selector { - width: 100%; - alignment: center left; +/* QToolBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbox +used in PATH + +--------------------------------------------------------------------------- */ +QToolBox { + padding: 0px; + border: 1px solid #A3A3A3; + border-radius: 4px; + background-color: transparent; } -QToolBar:top#Selector QToolButton, -QToolBar:bottom#Selector QToolButton, -QToolBar:horizontal#Selector QToolButton { - alignment: bottom left; +QToolBox:selected { + padding: 0px; + border: 0px solid #B7D300; } -QToolBar:left#Selector QToolButton, -QToolBar:right#Selector QToolButton, -QToolBar:vertical#Selector QToolButton { - alignment: center left; +QToolBox::tab { + background-color: transparent; + border: 0px solid #A3A3A3; + color: black; + background-image: url(qss:images_dark-light/down_arrow_darker.svg); + background-repeat: none; + background-position: center left; } -QToolButton[toolbar_orientation="horizontal"] { - /* nothing, when Horizontal there's no need to add special parameters */ +QToolBox::tab:disabled { + color: #A3A3A3; } -QToolButton[toolbar_orientation="vertical"] { - /* nothing, when Horizontal there's no need to add special parameters */ +QToolBox::tab:selected { + background-color: #A3A3A3; + background-image: url(qss:images_dark-light/transparent.svg); + padding-right: 5px; + background-repeat: none; } -QToolBar#Selector QToolButton { - border: none; - margin: 0px; - padding: 2px 6px; - border-radius: 0px; +QToolBox::tab:selected:disabled { + background-color: #A3A3A3; + border-bottom: 0px solid #cccccc; + color: black; } -/* Active tab */ -QToolBar#Selector QToolButton:checked { - color: black; - background-color: #f5f5f5; +QToolBox::tab:!selected { + } -/* Unactive tabs */ -QToolBar#Selector QToolButton:!checked { - color: rgba(255,255,255,160); - background-color: transparent; - margin: 0px; +QToolBox::tab:!selected:disabled { + background-color: #F6F6F6; } -/* Unactive tabs (hover) */ -QToolBar#Selector QToolButton:!checked:hover { - color: rgba(255,255,255,255); - background-color: rgba(255,255,255,20); +QToolBox::tab:hover { + background-color: #B7D300; + } + +QToolBox QScrollArea QWidget QWidget { + padding: 0px; + border: 0px; + background-color: transparent; } -/* Unactive tabs (pressed) */ -QToolBar#Selector QToolButton:!checked:pressed { - background-color: rgba(255,255,255,40); +/* QFrame ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe +https://doc.qt.io/qt-5/qframe.html#-prop +https://doc.qt.io/qt-5/qframe.html#details +https://stackoverflow.com/questions/14581498/qt-stylesheet-for-hline-vline-color + +--------------------------------------------------------------------------- */ +/* (dot) .QFrame fix #141, #126, #123 */ +.QFrame { + border-radius: 0px; + border: 0px solid #C1C1C1; + background-color: #A3A3A3; + /* No frame */ + /* HLine */ + /* HLine */ } - -/*================================================================================================== -TABBAR widget (3rd party plugin) -==================================================================================================*/ -QTabWidget#TabBar > QTabBar { - border-top: 0; +.QFrame[frameShape="0"] { + border-radius: 1.9px; + border: 1px solid #C1C1C1; } -QTabWidget#TabBar > QTabBar::tab:top, -QTabWidget#TabBar > QTabBar::tab:bottom { - min-width: -1; +.QFrame[frameShape="4"] { + max-height: 1px; + border: none; + background-color: #f6f6f6; } -QTabWidget#TabBar > QTabBar::tab:left, -QTabWidget#TabBar > QTabBar::tab:right { - min-height: -1; +.QFrame[frameShape="5"] { + max-width: 1px; + border: none; + background-color: #F6F6F6; } +/* QSplitter -------------------------------------------------------------- -/*================================================================================================== -EXPERIMENTAL -==================================================================================================*/ +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsplitter -/* Fix for preventing elements in different rows to accidentally overlap */ -QDialog QGroupBox QFrame { - margin: 2px 0px; +--------------------------------------------------------------------------- */ +QSplitter { + background-color: #f6f6f6; + spacing: 1px; + padding: 1px; + margin: 1px; } -*[mandatoryField="true"] { background-color: cyan } - -/* Hack to avoid QPushButton text partially hidden under menu-indicator */ -QPushButton#NavigationIndicator::menu-indicator { - image: none; - width: 0px; +QSplitter::handle { + margin: 0px 0px; + padding: 0px; } +QSplitter::handle:horizontal { + background-image: url(qss:images_dark-light/splitter_vertical_light.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + width: 1px; +} -/*================================================================================================== -SKETCHER -==================================================================================================*/ +QSplitter::handle:vertical { + background-image: url(qss:images_dark-light/splitter_horizontal_light.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + height: 1px; +} -Gui--StatefulLabel[state="empty_sketch"] { - color : rgba(0,0,0,127); /* 50% opacity black */ +QSplitter::handle:hover { + background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); + background-position: center center; + background-repeat: none; + background-color: #B7D300; } -Gui--StatefulLabel[state="under_constrained"] { - color : rgba(0,0,0,255); /* Black */ + +/* QDateEdit, QDateTimeEdit ----------------------------------------------- + +--------------------------------------------------------------------------- */ +QDateEdit, QDateTimeEdit { + selection-background-color: #B7D300; + border-style: solid; + border: 1px solid #C1C1C1; + border-radius: 1.9px; + /* This fixes 103, 111 */ + padding-top: 2px; + /* This fixes 103, 111 */ + padding-bottom: 2px; + padding-left: 4px; + padding-right: 4px; + min-width: 10px; } -Gui--StatefulLabel[state="conflicting_constraints"] { - color : rgba(255,0,0,255); /* Red */ + +QDateEdit:on, QDateTimeEdit:on { + selection-background-color: #B7D300; } -Gui--StatefulLabel[state="malformed_constraints"] { - color : rgba(255,0,0,255); /* Red */ + +QDateEdit::drop-down, QDateTimeEdit::drop-down { + subcontrol-origin: padding; + subcontrol-position: top right; + width: 12px; + border-left: 1px solid #C1C1C1; } -Gui--StatefulLabel[state="redundant_constraints"] { - color : rgba(255,69,0,255); /* Orange red */ + +QDateEdit::down-arrow, QDateTimeEdit::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); + height: 8px; + width: 8px; } -Gui--StatefulLabel[state="partially_redundant_constraints"] { - color : rgba(65,105,225,255); /* Royal blue */ + +QDateEdit::down-arrow:on, QDateEdit::down-arrow:hover, QDateEdit::down-arrow:focus, QDateTimeEdit::down-arrow:on, QDateTimeEdit::down-arrow:hover, QDateTimeEdit::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_darker.svg); } -Gui--StatefulLabel[state="solver_failed"] { - color : rgba(255,0,0,255); /* Red */ - font-weight: bold; + +QDateEdit QAbstractItemView, QDateTimeEdit QAbstractItemView { + background-color: #F6F6F6; + border-radius: 2px; + border: 1px solid #C1C1C1; + selection-background-color: #B7D300; } -Gui--StatefulLabel[state="fully_constrained"] { - color : rgba(0,255,0,255); /* Green */ - font-weight: bold; + +/* QAbstractView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractView:hover { + border: 1px solid #B7D300; + color: black; } -Gui--UrlLabel { - color : rgba(0,0,255,255); /* Blue */ - text-decoration : underline; + +QAbstractView:selected { + background: #B7D300; + color: black; } + +/* PlotWidget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +PlotWidget { + /* Fix cut labels in plots #134 */ + padding: 0px; +} \ No newline at end of file diff --git a/src/Gui/Stylesheets/Light-modern-blue.qss b/src/Gui/Stylesheets/Light-modern-blue.qss new file mode 100644 index 0000000000..fbf5db4bfe --- /dev/null +++ b/src/Gui/Stylesheets/Light-modern-blue.qss @@ -0,0 +1,2582 @@ +/* +ABOUT +============================================================================================================ +Revised stylesheet based on the original from Pablo Gil Fernández made by MisterMaker + +KNOWN BUGS and TO DO +============================================================================================================ +Please, follow the link to get updated information: +https://forum.freecad.org/viewtopic.php?t=78431 + +INSTALLATION WHEN NECESSARY +============================================================================================================ +1) Place the .qss files and /images/ folder in the path that fits your OS: + OSX = /Users/[YOUR_USER_NAME]/Library/Preferences/FreeCAD/Gui/Stylesheets/ + WINDOWS = C:/[INSTALLATION_PATH]/FreeCAD/data/Gui/Stylesheets/ + LINUX = /home/[YOUR_USER_NAME]/.FreeCAD/Gui/Stylesheets/ + +============================================================================================================ +TO MODIFY USE THESE COLORS: + #8ab6e9 + #dc00fa + + +See Qt documentation: + + - https://doc.qt.io/qt-5/stylesheet.html + - https://doc.qt.io/qt-5/stylesheet-reference.html + - https://doc.qt.io/qt-5/stylesheet-examples.html + +--------------------------------------------------------------------------- */ + + +/* Reset elements ------------------------------------------------------------ + +Resetting everything helps to unify styles across different operating systems + +--------------------------------------------------------------------------- */ +* { + padding: 0px; + margin: 0px; + border: 0px; + border-style: none; + border-image: none; + outline: 0; +} + +/* specific reset for elements inside QToolBar */ +QToolBar * { + margin: 0px; + padding: 0px; +} + +/*hacks */ +Gui--PropertyEditor--PropertyEditor QLineEdit:read-only, +Gui--PropertyEditor--PropertyEditor QLineEdit:disabled, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:read-only, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:disabled { + color: transparent; + border-color: transparent; + background-color: transparent; + selection-color: transparent; + selection-background-color: transparent; + +} +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel, +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel:disabled { + color: transparent; + background-color: transparent; + border: none; + border-radius: 1px; + margin: 0px; + padding: 0px; +} + +Gui--PropertyEditor--PropertyEditor QSpinBox, +Gui--PropertyEditor--PropertyEditor QDoubleSpinBox, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox, +Gui--PropertyEditor--PropertyEditor QLineEdit, +Gui--PropertyEditor--PropertyEditor QComboBox { + margin-left: 0px; + margin-right: 0px; + padding-top: 0px; + padding-bottom: 0px; + +} + +/*================================================================================================== +Main window +==================================================================================================*/ +QMainWindow, +QDialog, +QDockWidget, +QToolBar { + background-color: #2b2b2b; /* main background color */ +} + +QMdiArea { + background-image: url(qss:images_dark-light/background_freecad_ExtremProDark.svg); + background-position: center center; + background-repeat: no-repeat; +} +/*navgation src/Mod/Tux/NavigationIndicatorGui.py */ +Gui--NavigationIndicatorGui--BlenderNavigationStyle { +/*QAction#a4 {*/ + qproperty-icon: url(:/icons/icons/NavigationBlender_light.svg); +} +/*===== +/* QWidget ---------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QWidget { + background-color: #f6f6f6; + border: 0px solid #cccccc; + padding: 0px; + color: black; + selection-background-color: #8ab6e9; + selection-color: black; +} + +QWidget:disabled { + background-color: transparent; + color: #515151; + selection-background-color: #8ab6e9; + selection-color: #515151; +} + +QWidget::item:selected { + background-color: #8ab6e9; +} + + /* Causes issue with colorselector. +QWidget::item:hover:!selected { + background-color: #8ab6e9; +}*/ + +/* QMainWindow ------------------------------------------------------------ + +This adjusts the splitter in the dock widget, not qsplitter +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmainwindow + +--------------------------------------------------------------------------- */ +QMainWindow::separator { + /*background-color: #3c3c3c;*/ + border: 0px solid #696968; + spacing: 0px; + padding: 1px; +} + +QMainWindow::separator:vertical:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,stop:0.2 transparent,stop:0.5 #8ab6e9, stop:0.8 transparent); + /*background-color: #557bb6;*/ + image: url(qss:images_dark-light/splitter_vertical_dark.svg); +} + +QMainWindow::separator:horizontal:hover { + background-color: qlineargradient(x1:0, y1:0, x2:1, y2:0,stop:0.2 transparent,stop:0.5 #8ab6e9, stop:0.8 transparent); + /*background-color: #557bb6;*/ + image: url(qss:images_dark-light/splitter_horizontal_dark.svg); +} + +QMainWindow::separator:horizontal { + width: 4px; + margin-top: 0.1px; + margin-bottom: 0.1px; + /* image: url(qss:images_dark-light/splitter_horizontal_dark.svg);*/ +} + +QMainWindow::separator:vertical { + height: 4px; + margin-left: 0.1px; + margin-right: 0.1px; + /* image: url(qss:images_dark-light/splitter_vertical_dark.svg);*/ +} + +/* QToolTip --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtooltip + +--------------------------------------------------------------------------- */ +QToolTip { + background-color: #f6f6f6; + color: black; + /* If you remove the border property, background stops working on Windows */ + border: none; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Remove opacity, fix #174 - may need to use RGBA */ +} + +/* QStatusBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qstatusbar + +--------------------------------------------------------------------------- */ +QStatusBar { + border: 0px solid #f5f5f5; + /* Fixes Spyder #9120, #9121 */ + background: #f6f6f6; + /* Fixes #205, black vertical borders separating items */ +} + +QStatusBar::item { + border: none; +} + +QStatusBar QToolTip { + background-color: #f6f6f6; + border: 1px solid #cccccc; + color: black; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Reducing transparency to read better */ + opacity: 230; +} + +QStatusBar QLabel { + /* Fixes Spyder #9120, #9121 */ + background: transparent; +} + +/* QCheckBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcheckbox + +--------------------------------------------------------------------------- */ +QCheckBox { + color: black; + padding: 0px; + outline: none; + border: 1px solid transparent; + background-color: transparent; +} + +QCheckBox:focus { + border: 1px solid #dc00fa; +} + +QCheckBox QWidget:disabled { + background-color: transparent; + color: #515151; +} + +QCheckBox::indicator { + color: black; + background-color: white; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QCheckBox::indicator:unchecked { + background-color: white; + image:url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QCheckBox::indicator:unchecked:hover, QCheckBox::indicator:unchecked:focus, QCheckBox::indicator:unchecked:pressed { + background-color: #8ab6e9; + image:url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QCheckBox::indicator:unchecked:disabled { + background-color: #f5f5f5; + image:url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QCheckBox::indicator:checked { + background-color: white; + /*border: 1px solid #cccccc; /* QRadioButton has the same color */ + image:url(qss:images_dark-light/checkbox_dark.svg); +} + +QCheckBox::indicator:checked:hover, QCheckBox::indicator:checked:pressed { + background-color: #8ab6e9; +} + +QCheckBox::indicator:checked:disabled { + background-color: #f5f5f5; + image: url(qss:images_dark-light/checkbox_checked_dark.svg); +} + +QCheckBox::indicator:indeterminate { + background-color: white; + border: 1px solid #cccccc; + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QCheckBox::indicator:indeterminate:disabled { + background-color: #f5f5f5; + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QCheckBox::indicator:indeterminate:hover, QCheckBox::indicator:indeterminate:pressed { + background-color: #8ab6e9; /* QRadioButton has the same color */ +} + +/* QGroupBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qgroupbox + +--------------------------------------------------------------------------- */ +QGroupBox { + font-weight: bold; + border: 1px solid #cccccc; + border-radius: 1.9px; + padding: 2px; + margin-top: 10px; + margin-bottom: 4px; +} + +QGroupBox::title { + subcontrol-origin: margin; + subcontrol-position: top left; + left: 4px; + padding-left: 2px; + padding-right: 4px; + padding-top: 6px; +} + +QGroupBox::indicator { + color: black; + background-color: #f5f5f5; + border: 1px solid #cccccc; + width: 12px; + height: 12px; + border-radius:1px; +} + +QGroupBox::indicator:unchecked { + background-color: #cccccc; + border: 1px solid #cccccc; + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QGroupBox::indicator:unchecked:hover, QGroupBox::indicator:unchecked:focus, QGroupBox::indicator:unchecked:pressed { + background-color: #8ab6e9; +} + +QGroupBox::indicator:unchecked:disabled { + background-color: white; + border: 1px solid #cccccc; +} + +QGroupBox::indicator:checked { + border: none; + image:url(qss:images_dark-light/checkbox_dark.svg); +} + +QGroupBox::indicator:checked:hover, QGroupBox::indicator:checked:focus, QGroupBox::indicator:checked:pressed { + background-color: #8ab6e9; +} + +QGroupBox::indicator:checked:disabled { + background-color: #8ab6e9; +} + +/* QRadioButton ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qradiobutton + +--------------------------------------------------------------------------- */ +QRadioButton { + background-color: transparent; + color: black; + border: none; + spacing: 4px; + padding-top: 4px; + padding-bottom: 4px; + outline: none; +} + +QRadioButton:focus { + border: 1px solid #dc00fa; +} + +QRadioButton:disabled { + background-color: #f6f6f6; + color: #515151; +} + +QRadioButton QWidget { + background-color: transparent; + color: black; + spacing: 0px; + padding: 0px; + outline: none; + border: none; +} + +QRadioButton::indicator { + background-color: #f8f8f8; + border: 1px solid #cccccc; + border-radius: 6px; + margin-left: 0px; + height: 11px; + width: 11px; +} + +QRadioButton::indicator:unchecked { + /*image:url(qss:images_dark-light/radiobutton_dark.svg);*/ +} + +QRadioButton::indicator:unchecked:hover, QRadioButton::indicator:unchecked:pressed { + background-color: #8ab6e9; + border: 1px solid #8ab6e9; + border-radius: 6px; +} + +QRadioButton::indicator:unchecked:disabled { + /*image:url(qss:images_dark-light/radiobutton_dark.svg);*/ + border: 1px solid #cccccc; +} + +QRadioButton::indicator:checked { + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +QRadioButton::indicator:checked:hover, QRadioButton::indicator:checked:pressed { + background-color: #8ab6e9; + border: 1px solid #8ab6e9; + border-radius: 6px; + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +QRadioButton::indicator:checked:disabled { + outline: none; + background-color: #cccccc; + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +/* QMenuBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenubar + +--------------------------------------------------------------------------- */ +QMenuBar { + background-color: #f8f8f8; + /*padding: 1px; + border: 0px solid rgba(255,255,255,140);*/ + color: black; + selection-background-color: #8ab6e9; +} + +QMenuBar:focus { + border: 1px solid #dc00fa; +} + +QMenuBar::item { + background: transparent; + /*padding-left:5px; + padding-right: 5px; + padding-bottom: 1px; + padding-top: 1px;*/ +} + +QMenuBar::item:selected { + background: transparent; + border: 0px solid #cccccc; + background-color: #8ab6e9; +} + +QMenuBar::item:pressed { + /*padding: 2px; + padding-left: 10px; + padding-right: 10px;*/ + border: 0px solid #cccccc; + background-color: #8ab6e9; + color: black; + /*margin-bottom: 0px; + padding-bottom: 0px;*/ +} + +/* QMenu ------------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenu + +--------------------------------------------------------------------------- */ +QMenu { + border-bottom: 2px rgba(100,100,100,140); + border-right: 2px rgba(100,100,100,140); + color: black; + margin: 0px; + background-color: #f8f8f8; + selection-background-color: #8ab6e9; +} + +QMenu::separator { + height: 2px; + background-color: #cccccc; + margin-left: 30%; + margin-right: 30%; +} + +QMenu::item { + background-color: transparent; + padding: 2px 2px; /* make room for icon at left */ + /* Reserve space for selection border */ + border: 0px transparent #cccccc; +} + +QMenu::item:selected { + color: black; + background-color: #8ab6e9; +} + +QMenu::item:pressed { + background-color: #8ab6e9; +} + +QMenu::icon { + margin-left: 5px; + width: 14px; + height: 14px; +} + +QMenu::indicator { + margin-left: 2px; + margin-right: 2px; + padding: 0px; + width: 12px; + height: 12px; + /* non-exclusive indicator = check box style indicator (see QActionGroup::setExclusive) */ + /* exclusive indicator = radio button style indicator (see QActionGroup::setExclusive) */ +} + +QMenu::icon:checked { /* appearance of a 'checked' icon */ + background: #8ab6e9; + margin-left: -5px; + border: 5px solid #8ab6e9; + position: absolute; + border-radius: 0px; +} +QMenu::indicator:non-exclusive:unchecked { + image: url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QMenu::indicator:non-exclusive:unchecked:hover, QMenu::indicator:non-exclusive:unchecked:focus, QMenu::indicator:non-exclusive:unchecked:pressed { + border: none; + background: #8ab6e9; +} + +QMenu::indicator:non-exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QMenu::indicator:non-exclusive:checked { + image:url(qss:images_dark-light/checkbox_dark.svg); +} + +QMenu::indicator:non-exclusive:checked:hover, QMenu::indicator:non-exclusive:checked:focus, QMenu::indicator:non-exclusive:checked:pressed { + border: none; + background: #8ab6e9; +} + +QMenu::indicator:non-exclusive:checked:disabled { + image:url(qss:images_dark-light/checkbox_checked_disabled.svg); +} + +QMenu::indicator:non-exclusive:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:disabled { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:focus, QMenu::indicator:non-exclusive:indeterminate:hover, QMenu::indicator:non-exclusive:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QMenu::indicator:exclusive:unchecked { + image: url(qss:images_dark-light/transparent.svg); +} + +QMenu::indicator:exclusive:unchecked:hover, QMenu::indicator:exclusive:unchecked:focus, QMenu::indicator:exclusive:unchecked:pressed { + border: none; + outline: none; + background: #8ab6e9; + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QMenu::indicator:exclusive:checked { + border: none; + outline: none; + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +QMenu::indicator:exclusive:checked:hover, QMenu::indicator:exclusive:checked:focus, QMenu::indicator:exclusive:checked:pressed { + border: none; + outline: none; + background: #8ab6e9; + image: url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QMenu::indicator:exclusive:checked:disabled { + outline: none; + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +QMenu::right-arrow { + margin: 5px; + padding-left: 12px; + image:url(qss:images_dark-light/right_arrow_darker.svg); + height: 12px; + width: 12px; + background-color: transparent; +} + +/* QAbstractItemView ------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QAbstractItemView { + alternate-background-color: #cfcfcf; + color: black; + border: 1px solid #cccccc; + border-radius: 2px; +} + +QAbstractItemView QLineEdit { + padding: 2px; +} + +/* QAbstractScrollArea ---------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QAbstractScrollArea { + background-color: transparent; + border: 0px solid #cccccc; + border-radius: 0px; + /* fix #159 */ + padding: 0px; + /* remove min-height to fix #244 */ + color: black; +} + +QAbstractScrollArea:disabled { + color: #515151; +} + +/* QScrollArea ------------------------------------------------------------ + +--------------------------------------------------------------------------- +text input field disabled!!!!*/ +QScrollArea QWidget:disabled { + background-color: #f6f6f6; +} + +/* QScrollBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qscrollbar + +--------------------------------------------------------------------------- */ +QScrollBar:horizontal { + height: 16px; + margin: 2px 16px 2px 16px; + border: 0px solid #cccccc; + border-radius: 1.9px; + background-color: #f6f6f6; +} + +QScrollBar:vertical { + background-color: #f6f6f6; + width: 16px; + margin: 16px 2px 16px 2px; + border: 0px solid #cccccc; + border-radius: 1.9px; +} + +QScrollBar::handle:horizontal { + background-color: #d4d4d4; + border: 1px solid #f6f6f6; + border-radius: 1.9px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:hover { + background-color: #8ab6e9; + border: #cccccc; + border-radius: 1.9px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:focus { + border: 1px solid #dc00fa; +} + +QScrollBar::handle:vertical { + background-color: #d4d4d4; + border: 1px solid #cccccc; + min-height: 8px; + border-radius: 1.9px; +} + +QScrollBar::handle:vertical:hover { + background-color: #8ab6e9; + border: #cccccc; + border-radius: 1.9px; + min-height: 8px; +} + +QScrollBar::handle:vertical:focus { + border: 1px solid #dc00fa; +} + +QScrollBar::add-line:horizontal { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/right_arrow_darker.svg); + height: 10px; + width: 7px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:horizontal:hover, QScrollBar::add-line:horizontal:on { + border-image: url(qss:images_dark-light/right_arrow_darker.svg); + background-color: #8ab6e9; + height: 10px; + width: 7px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/down_arrow_darker.svg); + height: 7px; + width: 10px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical:hover, QScrollBar::add-line:vertical:on { + border-image: url(qss:images_dark-light/down_arrow_darker.svg); + background-color: #8ab6e9; + height: 7px; + width: 10px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/left_arrow_darker.svg); + height: 10px; + width: 7px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal:hover, QScrollBar::sub-line:horizontal:on { + border-image: url(qss:images_dark-light/left_arrow_darker.svg); + background-color: #8ab6e9; + height: 10px; + width: 8px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/up_arrow_darker.svg); + height: 8px; + width: 10px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical:hover, QScrollBar::sub-line:vertical:on { + background-color: #8ab6e9; + border-image: url(qss:images_dark-light/up_arrow_darker.svg); + height: 8px; + width: 10px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::up-arrow:horizontal, QScrollBar::down-arrow:horizontal { + background: none; +} + +QScrollBar::up-arrow:vertical, QScrollBar::down-arrow:vertical { + background: none; +} + +QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal { + background: none; +} + +QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical { + background: none; +} + +/* QTextEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-specific-widgets + + +report view +--------------------------------------------------------------------------- */ +QTextEdit { + background-color: #f6f6f6; + color: black; + border-radius: 1.9px; + border: 0px solid #cccccc; +} + +QTextEdit:focus { + border: 1px solid #dc00fa; +} + +QTextEdit:selected { + background: #346792; + color: black; +} + +/* QPlainTextEdit --------------------------------------------------------- +Python +--------------------------------------------------------------------------- */ +QPlainTextEdit { + background-color: white; + color: black; + border-radius: 1.9px; + border: 0px solid #cccccc; +} + +QPlainTextEdit:focus { + border: 1px solid #dc00fa; +} + +QPlainTextEdit:selected { + background: #8ab6e9; + color: black; +} + +/* QSizeGrip -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsizegrip + +--------------------------------------------------------------------------- */ +QSizeGrip { + background: transparent; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/sizegrip_dark.svg); +} + +/* QStackedWidget --------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QStackedWidget { + padding: 0px; + border: 0px solid #cccccc; +} + +/* QToolBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbar + +--------------------------------------------------------------------------- */ +QToolBar { + background-color: #f6f6f6; + border-bottom: 0px solid rgba(0,0,0,120); + padding: 1px; + font-weight: bold; + spacing: 1px; +} + +QToolBar:disabled { + /* Fixes #272 */ + background-color: #f6f6f6; +} + +QToolBar::handle:horizontal { + width: 8px; + margin: 3px 3px; + background-position: top right; + background-repeat: repeat-y; + background-image: url(qss:images_dark-light/Hmovetoolbar_dark.svg); +} + +QToolBar::handle:vertical { + height: 8px; + margin: 3px 3px; + background-position: left bottom; + background-repeat: repeat-x; + background-image: url(qss:images_dark-light/Vmovetoolbar_dark.svg); +} + +QToolBar::separator:horizontal { + width: 2px; + margin: 4px 4px; + background-color: transparent; +} + +QToolBar::separator:vertical { + height: 2px; + margin: 4px 4px; + background-color: transparent; +} + +/*The "show more" button (it can also be stylable with "QToolBarExtension" icon is not working Qproperty works but breaks when you move the toolbar see also */ +QToolButton#qt_toolbar_ext_button { +margin: 0px; +padding: 0px; +background-color: #f6f6f6; +/*background-image: url(qss:images_dark-light/more_dark.svg);*/ +background-repeat: none; +background-position: center center; +} + +QToolButton#qt_toolbar_ext_button:hover { +/* background-image: url(qss:images_dark-light/more_dark.svg);*/ +background-color: #8ab6e9; +} + +QToolButton#qt_toolbar_ext_button:on { +/* background-image: url(qss:images_dark-light/more_dark.svg);*/ +border-color: #cccccc; +background-color: #8ab6e9; +} + + +/* QAbstractSpinBox ------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractSpinBox, +QSpinBox { + background-color: white; + border: 1px solid #cccccc; + color: black; + /* This fixes 103, 111 */ + /* padding-top: 0px; + /* This fixes 103, 111 */ + /*padding-bottom: 0px; + /*padding-left: 4px; + /*padding-right: 4px; + border-radius: 1.9px;*/ + min-height: 1.7em; + /* min-width: 5px; removed to fix 109 */ +} + +QAbstractSpinBox:up-button { + background-color: #cccccc; + subcontrol-origin: border; + subcontrol-position: top right; + border-left: 1px solid #cccccc; + border-bottom: 1px solid #cccccc; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-bottom: -1px;*/ +} + +QAbstractSpinBox::up-arrow, QAbstractSpinBox::up-arrow:disabled, QAbstractSpinBox::up-arrow:off { + image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); + /* height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::up-arrow:hover { + /*background-color: #8ab6e9;*/ + image: url(qss:images_dark-light/up_arrow_darker.svg); +} + +QAbstractSpinBox:down-button { + background-color: #cccccc; + subcontrol-origin: border; + subcontrol-position: bottom right; + border-left: 1px solid #cccccc; + border-top: 1px solid #cccccc; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-top: -1px;*/ +} + +QAbstractSpinBox::down-arrow, QAbstractSpinBox::down-arrow:disabled, QAbstractSpinBox::down-arrow:off { + image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); + /*height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::down-arrow:hover { + /*background-color: #8ab6e9;*/ image:url(qss:images_dark-light/down_arrow_darker.svg); +} + +QAbstractSpinBox:hover { + /*border: 1px solid #8ab6e9; + color: black;*/ +} + +QAbstractSpinBox:focus { + border: 1px solid #dc00fa; +} + +QAbstractSpinBox:selected { + background: #dc00fa; + /*color: black;*/ +} + +/* ------------------------------------------------------------------------ */ +/* DISPLAYS --------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QLabel ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe + +--------------------------------------------------------------------------- */ +QLabel { + background-color: transparent; + border: 0px solid #cccccc; + padding: 2px; + margin: 0px; + color: black; +} + +QLabel:disabled { + background-color: transparent; + border: 0px solid #cccccc; + color: #9f0d00; +} + +QLabel[haslink="true"] { + color: darkblue; +} + + +/* QTextBrowser ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QTextBrowser { + background-color: white; + border: 1px solid #cccccc; + color: black; + border-radius: 1.9px; +} + +QTextBrowser:disabled { + background-color: #f6f6f6; + border: 1px solid #cccccc; + color: #005aa4; + border-radius: 1.9px; +} + +QTextBrowser:hover, QTextBrowser:!hover, QTextBrowser:selected, QTextBrowser:pressed { + border: 1px solid #455364; +} + +/* QGraphicsView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QGraphicsView { + background-color: transparent; + border: 0px solid #455364; + color: black; + border-radius: 0px; +} + +QGraphicsView:disabled { + background-color: white; + border: 0px solid #cccccc; + color: #515151; + border-radius: 0px; +} + +QGraphicsView:hover, QGraphicsView:!hover, QGraphicsView:selected, QGraphicsView:pressed { + border: 0px solid #ff00f7; +} + +/* QCalendarWidget -------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCalendarWidget { + border: 1px solid #cccccc; + border-radius: 1.9px; +} + +QCalendarWidget:disabled { + background-color: #bfc1c0; + color: #515151; +} + +/* QLCDNumber ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QLCDNumber { + background-color: #1aff00; + color: black; +} + +QLCDNumber:disabled { + background-color: #f6f6f6; + color: #515151; +} + +/* QProgressBar ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qprogressbar + +--------------------------------------------------------------------------- */ +QProgressBar { + background-color: #515151; + border: 1px solid #cccccc; + color: black; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar:disabled { + background-color: #f8f8f8; + border: 1px solid #cccccc; + color: #515151; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar::chunk { + background-color: #8ab6e9; + color: #f6f6f6; + border-radius: 1.9px; +} + +QProgressBar::chunk:disabled { + background-color: #f8f8f8; + color: #cccccc; + border-radius: 1.9px; +} + +/* ------------------------------------------------------------------------ */ +/* BUTTONS ---------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QPushButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qpushbutton + +--------------------------------------------------------------------------- */ +QPushButton { + background-color: #d4d4d4; + color: black; + border-radius: 2px; + padding: 2px; + outline: none; + border: none; +} + +QPushButton:disabled { + background-color: #f6f6f6; + color: #515151; + border-radius: 2px; + padding: 2px; +} + +QPushButton:checked { + background-color: #8ab6e9; + border-radius: 2px; + padding: 2px; + outline: none; +} + +QPushButton:checked:disabled { + background-color: #8ab6e9; + color: #f5f5f5; + border-radius: 2px; + padding: 2px; + outline: none; +} + +QPushButton:checked:selected { + background: #8ab6e9; +} + +QPushButton:hover { + background-color: #8ab6e9; + color: black; +} + +QPushButton:pressed { + background-color: #8ab6e9; +} + +QPushButton:selected { + background: #dc00fa; + color: black; +} + +QPushButton::menu-indicator { + subcontrol-origin: padding; + subcontrol-position: bottom right; + bottom: 4px; +} + +QDialogButtonBox QPushButton { + /* Issue # 194 # 248 - Special case of QPushButton inside dialogs, for better UI */ + min-width: 80px; +} + +/* QToolButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbutton + +--------------------------------------------------------------------------- */ +QToolButton { + background-color: transparent; + color: black; + border-radius: 1px; + padding: 0px; + outline: none; + border: none; + /* The subcontrols below are used only in the DelayedPopup mode */ + /* The subcontrols below are used only in the MenuButtonPopup mode */ + /* The subcontrol below is used only in the InstantPopup or DelayedPopup mode */ +} + +QToolButton:disabled { + background-color: #f8f8f8; + color: #515151; + border-radius: 1px; + padding: 0px; +} + +QToolButton:checked { + background-color: #8ab6e9; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:disabled { + background-color: #8ab6e9; + color: #515151; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:hover { + background-color: #8ab6e9; + color: black; +} + +QToolButton:checked:pressed { + background-color: #8ab6e9; +} + +QToolButton:checked:selected { + background: #dc00fa; + color: black; +} + +QToolButton:hover { + background-color: #8ab6e9; + color: black; +} + +QToolButton:pressed { + background-color: #dc00fa; +} + +QToolButton:selected { + background: #8ab6e9; + color: black; +} + +QToolButton[popupMode="0"] { + /* Only for DelayedPopup */ + padding-right: 20px; +} + +QToolButton[popupMode="1"] { + /* Only for MenuButtonPopup */ + padding-right: 20px; +} +QToolButton[popupMode="0"]::menu-button { + border: none; +} + +QToolButton[popupMode="0"]::menu-button:hover { + border: none; + border-left: 2px solid #fe0000; + border-radius: 0px; +} +QToolButton[popupMode="1"]::menu-button { + border: none; +} + +QToolButton[popupMode="1"]::menu-button:hover { + border: none; + border-left: 2px solid #e5ff00; + border-radius: 0px; +} + +QToolButton[popupMode="2"] { + /* Only for InstantPopup */ + padding-right: 20px; +} + +QToolButton::menu-button { + border-bottom: 0px solid #f6f6f6; + border-radius: 2px; + /* 16px width + 4px for border = 20px allocated above */ + width: 1.6ex; + padding: 2px; + border-radius: 2px; + border: 0px #000000; +} + +QToolButton::menu-button:hover { + /* background: rgba(0, 0, 0, 0.5);*/ + +} + +QToolButton::menu-button:checked:hover { + /* background: rgba(0, 0, 0, 0.5);*/ +} + +QToolButton::menu-indicator { + /* Exclude a shift for better image */ + subcontrol-position: right bottom; + /* Shift it a bit */ +} + +QToolButton::menu-arrow { + image: url(qss:images_dark-light/more_arrow_dark.svg); + width: 1.5ex; + height: 1.5ex; + subcontrol-position: right bottom; + background: transparent; +} +QToolButton::menu-arrow:open { + subcontrol-position: right bottom; + image: url(qss:images_dark-light/more_arrow_dark.svg); +} +QToolButton::menu-arrow:hover { + image: url(qss:images_dark-light/more_arrow_dark.svg); + background-color: rgba(0, 0, 0, 0.498); + border: 1px solid rgba(0, 0, 0, 0.498); +} + +/* QCommandLinkButton ----------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCommandLinkButton { + background-color: transparent; + border: 1px solid #cccccc; + color: black; + border-radius: 1.9px; + padding: 0px; + margin: 0px; +} + +QCommandLinkButton:disabled { + background-color: transparent; + color: #515151; +} + +/* ------------------------------------------------------------------------ */ +/* INPUTS - NO FIELDS ----------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QComboBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QComboBox { + border: 1px solid #cccccc; + background: white; + border-radius: 2px; + selection-background-color: #8ab6e9; + padding-left: 2px; + padding-right: 2px; + /* padding-right = 36; 4 + 16*2 See scrollbar size */ + /* changed to 4px to fix #239 */ + /* Fixes #103, #111 */ + min-height: 1.5em; + /* padding-top: 2px; removed to fix #132 */ + /* padding-bottom: 2px; removed to fix #132 */ + /* min-width: 75px; removed to fix #109 */ + /* Needed to remove indicator - fix #132 */ +} +QComboBox:editable { + background: white; +} +QComboBox QAbstractItemView { + border: 0px solid #cccccc; + border-radius: 0px; + background-color: white; + selection-background-color: #8ab6e9; +} + +QComboBox QAbstractItemView:hover { + background-color:white; + color: black; +} + +QComboBox QAbstractItemView:selected { + background: #8ab6e9; + color: black; +} + +QComboBox QAbstractItemView:alternate { + background: #f5f5f5; +} + +QComboBox:disabled { + background-color: #cccccc; + color: #515151; +} + +QComboBox:hover { + /*background-color: #8ab6e9;*/ + border: 1px solid #8ab6e9; +} + +QComboBox:focus { + border: 1px solid #dc00fa; +} + +QComboBox:on { + selection-background-color: #dc00fa; +} + +QComboBox::indicator { + border: none; + border-radius: 0px; + background-color: transparent; + selection-background-color: transparent; + color: transparent; + selection-color: #8ab6e9; + /* Needed to remove indicator - fix #132 */ +} + +QComboBox::indicator:alternate { + background: #cccccc; +} + +QComboBox::item { + /* Remove to fix #282, #285 and MR #288*/ + /*&:checked { + font-weight: bold; + } + + &:selected { + border: 0px solid transparent; + } + */ +} + +QComboBox::item:alternate { + background: #f5f5f5; +} + +QComboBox::drop-down { + subcontrol-origin: padding; + background-color: #d4d4d4; + subcontrol-position: top right; + width: 14px; + border-left: 1px solid #cccccc; +} +QComboBox::drop-down:hover { + background-color: #8ab6e9; +} + +QComboBox::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); + height: 10px; + width: 10px; +} + +QComboBox::down-arrow:on, QComboBox::down-arrow:hover, QComboBox::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_darker.svg); +} + + +/*================================================================================================== +Tasks panel (custom FreeCAD class) +==================================================================================================*/ +Gui--PropertyEditor--PropertyEditor { + qproperty-groupTextColor: black; + qproperty-groupBackground: #f5f5f5; + border: 0px solid #cccccc; + +} + +/* Action group */ +QFrame[class="panel"] { +background-color: transparent; /* temporal (transparent background) */ + +} + +QSint--ActionGroup { +padding: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +margin: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +} + +/* Separator line */ +QSint--ActionGroup QFrame[height="1"], +QSint--ActionGroup QFrame[height="2"], +QSint--ActionGroup QFrame[height="3"], +QSint--ActionGroup QFrame[width="1"], +QSint--ActionGroup QFrame[width="2"], +QSint--ActionGroup QFrame[width="3"] { +border-color: rgba(0,0,0,60); +} + +/* Panel header */ +QSint--ActionGroup QFrame[class="header"] { +border-top: 1px solid #cccccc; +border-left: 1px solid #cccccc; +border-right: 1px solid #cccccc; +background-color: #d4d4d4; /* Task Panel Header background color */ +border-top-left-radius: 3px; +border-top-right-radius: 3px; +border-bottom-left-radius: 0px; +border-bottom-right-radius: 0px; +margin: 0px; +padding: 0px; +} + +QSint--ActionGroup QFrame[class="header"]:hover { +background-color: #8ab6e9; +} + +QSint--ActionGroup QToolButton[class="header"] { +color: black; /* Task Panel Header text color */ +text-align: left; +font-weight: bold; +border: none; +margin: 0px; +padding: 0px; +} + +QSint--ActionGroup QFrame[class="header"] QLabel { +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_darker.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; +} + +QSint--ActionGroup QFrame[class="header"] QLabel:hover { +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_darker.svg); +} + +QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"] { +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_darker.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; +} + +QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"]:hover { +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_darker.svg); +} + +QSint--ActionGroup QFrame[class="content"] { +background-color: transparent; /* Task Panel background color */ +margin: 0px; +padding: 0px; +border-bottom: 1px solid #cccccc; +border-left: 1px solid #cccccc; +border-right: 1px solid #cccccc; +border-top-left-radius: 0px; +border-top-right-radius: 0px; +border-bottom-left-radius: 3px; +border-bottom-right-radius: 3px; +} + +QSint--ActionGroup QFrame[class="content"] > QWidget { +background-color: #f6f6f6; /* Task Panel background color */ +} + +/* Fixs for tabs inside Task Panel */ +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:top:selected { +border-bottom-color: #8ab6e9; /* same as Task Panel background color */ +} + +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:bottom:selected { +border-top-color: #8ab6e9; /* same as Task Panel background color */ +} + +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:right:selected { +border-right-color: #8ab6e9; /* same as Task Panel background color */ +} + +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:left:selected { +border-left-color: #8ab6e9; /* same as Task Panel background color */ +} + +/* Fix for buttons with icons that showed cropped (still not happy with result) */ +QSint--ActionGroup QFrame[class="content"] > QWidget > QPushButton { +padding: 2px; /* bigger padding crops text and icons... */ +margin: 0px; +} + +/* Fix for lists inside task panels */ /* sketcher constraints list */ +QSint--ActionGroup QFrame[class="content"] QTreeView, +QSint--ActionGroup QFrame[class="content"] QListView, +QSint--ActionGroup QFrame[class="content"] QTableView { +color: black; +background-color: white; +} + + +/* found inside Part Design Workbench and "make a draft on a face" Task panel options */ +QSint--ActionGroup QFrame[class="content"] QToolButton { + color: black; + text-align: center; + background-color: #d4d4d4; + border: 0px solid #adadad; + padding: 1px 1px; /* different than regular QPushButton */ + margin: 0px; /* different than regular QPushButton */ + min-height: 16px; /* same as QTabBar QPushButton min-width */ + border-radius: 1px; +} + +QSint--ActionGroup QFrame[class="content"] QToolButton:hover{ + background: #8ab6e9; + border: 1px solid #8ab6e9; +} +QSint--ActionGroup QFrame[class="content"] QToolButton:focus { + border: 1px solid #dc00fa; +} + +QSint--ActionGroup QFrame[class="content"] QToolButton:disabled, +QSint--ActionGroup QFrame[class="content"] QToolButton:disabled:checked { + color: #455364; + background-color: #cccccc; +} + +QSint--ActionGroup QFrame[class="content"] QToolButton:pressed { + background: #8ab6e9; + border: 1px solid #8ab6e9; +} + +/* QSlider ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qslider + +--------------------------------------------------------------------------- */ +QSlider:disabled { + background: #f6f6f6; +} + +QSlider:focus { + border: 1px solid #dc00fa; +} + +QSlider::groove:horizontal { + background: #f6f6f6; + border: 1px solid #cccccc; + height: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::groove:vertical { + background: #8ab6e9; + border: 1px solid #cccccc; + width: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::add-page:vertical { + background: #8ab6e9; + border: 1px solid #cccccc; + width: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::add-page:vertical :disabled { + background: #cccccc; +} + +QSlider::sub-page:horizontal { + background: #8ab6e9; + border: 1px solid #0073ff; + height: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::sub-page:horizontal:disabled { + background: #cccccc; +} + +QSlider::handle:horizontal { + background: #bfc1c0; + border: 1px solid #f6f6f6; + width: 8px; + height: 8px; + margin: -8px 0px; + border-radius: 1.9px; +} + +QSlider::handle:horizontal:hover { + background: #8ab6e9; + border: 1px solid #8ab6e9; +} + +QSlider::handle:horizontal:focus { + border: 1px solid #dc00fa; +} + +QSlider::handle:vertical { + background: #515151; + border: 1px solid #455364; + width: 8px; + height: 8px; + margin: 0 -8px; + border-radius: 1.9px; +} + +QSlider::handle:vertical:hover { + background: #8ab6e9; + border: 2px solid #8ab6e9; +} + +QSlider::handle:vertical:focus { + border: 1px solid #dc00fa; +} + +/* QLineEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlineedit + +--------------------------------------------------------------------------- */ +QLineEdit { + background-color: white; + padding-top: 2px; + /* This QLineEdit fix 103, 111 */ + padding-bottom: 2px; + /* This QLineEdit fix 103, 111 */ + padding-left: 4px; + padding-right: 4px; + border-style: solid; + border: 1px solid #cccccc; + border-radius: 2px; + color: black; +} + +QLineEdit:disabled { + background-color: #cccccc; + color: #454545; +} + +QLineEdit:hover { + border: 1px solid #8ab6e9; + color: black; +} + +QLineEdit:focus { + border: 2px solid #dc00fa; +} + +QLineEdit:selected { + background-color: #8ab6e9; + color: black; +} + +/* QTabWiget -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabWidget { + padding: 2px; + selection-background-color: #8ab6e9; +} + +QTabWidget QWidget { + /* Fixes #189 */ + border-radius: 1.9px; +} + +QTabWidget::pane { + border: 0px solid #8c00ffa1; + border-radius: 1.9px; + margin: 0px; + /* Fixes double border inside pane with pyqt5 */ + padding: 0px; +} + +QTabWidget::pane:selected { + background-color: #8ab6e9; + border: 1px solid #346792; +} +/* QTabBar ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabBar, QDockWidget QTabBar { + qproperty-drawBase: 0; + border-radius: 2px; + margin: 0px; + padding: 2px; + border: 0; + alignment: center; + /* left: 5px; move to the right by 5px - removed for fix */ +} + +QTabBar::close-button, QDockWidget QTabBar::close-button { + border: 0; + margin: 0; + padding: 1px; + image: url(qss:images_dark-light/close_dark.svg); +} + +QTabBar::close-button:hover, QDockWidget QTabBar::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); + /*background-color: rgba(255, 0, 0, 0.392);*/ +} + +QTabBar::close-button:pressed, QDockWidget QTabBar::close-button:pressed { + image: url(qss:images_dark-light/close_dark.svg); +} + +QTabBar::tab, QDockWidget QTabBar::tab { + /* !selected and disabled ----------------------------------------- */ + /* selected ------------------------------------------------------- */ +} + +QTabBar::tab:top:selected:disabled, QDockWidget QTabBar::tab:top:selected:disabled { + border-bottom: 3px solid #d4d4d4; + color: #515151; + background-color: #d4d4d4; +} + +QTabBar::tab:bottom:selected:disabled, QDockWidget QTabBar::tab:bottom:selected:disabled { + border-top: 3px solid #d4d4d4; + color: #515151; + background-color: #d4d4d4; +} + +QTabBar::tab:left:selected:disabled, QDockWidget QTabBar::tab:left:selected:disabled { + border-right: 3px solid #d4d4d4; + color: #515151; + background-color: #d4d4d4; +} + +QTabBar::tab:right:selected:disabled, QDockWidget QTabBar::tab:right:selected:disabled { + border-left: 3px solid #d4d4d4; + color: #515151; + background-color: #d4d4d4; +} + +QTabBar::tab:top:!selected:disabled, QDockWidget QTabBar::tab:top:!selected:disabled { + border-bottom: 3px solid #d4d4d4; + color: #515151; + background-color: #d4d4d4; +} + +QTabBar::tab:bottom:!selected:disabled, QDockWidget QTabBar::tab:bottom:!selected:disabled { + border-top: 3px solid #d4d4d4; + color: #515151; + background-color: #d4d4d4; +} + +QTabBar::tab:left:!selected:disabled, QDockWidget QTabBar::tab:left:!selected:disabled { + border-right: 3px solid #d4d4d4; + color: #515151; + background-color: #d4d4d4; +} + +QTabBar::tab:right:!selected:disabled, QDockWidget QTabBar::tab:right:!selected:disabled { + border-left: 3px solid #d4d4d4; + color: #515151; + background-color: #d4d4d4; +} + +QTabBar::tab:top:!selected, QDockWidget QTabBar::tab:top:!selected { + border-bottom: 2px solid #d4d4d4; + margin-top: 2px; +} + +QTabBar::tab:bottom:!selected, QDockWidget QTabBar::tab:bottom:!selected { + border-top: 2px solid #d4d4d4; + margin-bottom: 2px; +} + +QTabBar::tab:left:!selected, QDockWidget QTabBar::tab:left:!selected { + border-left: 2px solid #d4d4d4; + margin-right: 2px; +} + +QTabBar::tab:right:!selected, QDockWidget QTabBar::tab:right:!selected { + border-right: 2px solid #d4d4d4; + margin-left: 2px; +} + +QTabBar::tab:top, QDockWidget QTabBar::tab:top { + background-color: #d4d4d4; + margin-left: 3px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + min-width: 5px; + border: 0px solid #d4d4d4; + border-radius: 4px; +} + +QTabBar::tab:top:selected, QDockWidget QTabBar::tab:top:selected { + background-color: #f6f6f6; + /*border: 1px solid #dc00fa; + border-radius: 4px; + margin-left: 4px; + margin-right: 4px; + padding-left: 3px; + padding-right: 3px;*/ +} + +QTabBar::tab:top:!selected:hover, QDockWidget QTabBar::tab:top:!selected:hover { + /*border: 1px solid #8ab6e9;*/ + border: 0px solid #8ab6e9; + background-color: #8ab6e9; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; +} + +QTabBar::tab:bottom, QDockWidget QTabBar::tab:bottom { + border: 0px solid #d4d4d4; + background-color: #d4d4d4; + margin-left: 3px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + border-radius: 4px; + min-width: 5px; +} + +QTabBar::tab:bottom:selected, QDockWidget QTabBar::tab:bottom:selected { + background-color: #f5f5f5; + /*border: 1px solid #dc00fa; + border-radius: 4px; + margin-left: 4px; + margin-right: 4px; + padding-left: 3px; + padding-right: 3px;*/ +} + +QTabBar::tab:bottom:!selected:hover, QDockWidget QTabBar::tab:bottom:!selected:hover { +/*border: 1px solid #8ab6e9;*/ + border: 0px solid #8ab6e9; + background-color: #8ab6e9; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; +} + +QTabBar::tab:left, QDockWidget QTabBar::tab:left { + background-color: #f5f5f5; + margin-top: 2px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + border-radius: 4px; + min-height: 5px; +} + +QTabBar::tab:left:selected, QDockWidget QTabBar::tab:left:selected { + background-color: #f5f5f5; + border: 0px solid #dc00fa; +} + +QTabBar::tab:left:!selected:hover, QDockWidget QTabBar::tab:left:!selected:hover { + border: 0px solid #8ab6e9; + background-color: #8ab6e9; + /* Fixes different behavior #271 */ + margin-right: 0px; + padding-right: -1px; +} + +QTabBar::tab:right, QDockWidget QTabBar::tab:right { + background-color: #f5f5f5; + margin-top: 2px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + min-height: 5px; + border: 10px; +} + +QTabBar::tab:right:selected, QDockWidget QTabBar::tab:right:selected { + background-color: #f5f5f5; + border: 0px solid #dc00fa; +} + +QTabBar::tab:right:!selected:hover, QDockWidget QTabBar::tab:right:!selected:hover { + border: 0px solid #8ab6e9; + background-color: #8ab6e9; + /* Fixes different behavior #271 */ + margin-left: 0px; + padding-left: 0px; +} + +QTabBar QToolButton, QDockWidget QTabBar QToolButton { + /* Fixes #136 */ + background-color: #f5f5f5; + height: 12px; + width: 12px; +} + +QTabBar QToolButton:pressed, QDockWidget QTabBar QToolButton:pressed { + border: 0px solid #8ab6e9; + background-color: #8ab6e9; +} + +QTabBar QToolButton:pressed:hover, QDockWidget QTabBar QToolButton:pressed:hover { + border: 0px solid #8ab6e9; + background-color: #8ab6e9; +} + +QTabBar QToolButton::left-arrow:enabled, QDockWidget QTabBar QToolButton::left-arrow:enabled { + image: url(qss:images_dark-light/left_arrow_darker.svg); +} + +QTabBar QToolButton::left-arrow:disabled, QDockWidget QTabBar QToolButton::left-arrow:disabled { + image: url(qss:images_dark-light/left_arrow_disabled_dark.svg); +} + +QTabBar QToolButton::right-arrow:enabled, QDockWidget QTabBar QToolButton::right-arrow:enabled { + image: url(qss:images_dark-light/right_arrow_darker.svg); +} + +QTabBar QToolButton::right-arrow:disabled, QDockWidget QTabBar QToolButton::right-arrow:disabled { + image: url(qss:images_dark-light/right_arrow_disabled_dark.svg); +} + +/* QDockWiget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QDockWidget { + background-color: #f6f6f6; + border: 1px solid #cccccc; + border-radius: 1.9px; + titlebar-close-icon: url(qss:images_dark-light/transparent.svg); + titlebar-normal-icon: url(qss:images_dark-light/transparent.svg); +} + +QDockWidget::title { + /* Better size for title bar */ + padding: 3px; + spacing: 4px; + border: none; + background-color: #f6f6f6; + text-align: center; + font-weight: bold; +} + +QDockWidget::close-button { + icon-size: 10px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/close_dark.svg); +} + +QDockWidget::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); +} + +QDockWidget::close-button:pressed { + image: url(qss:images_dark-light/close_dark.svg); +} + +QDockWidget::float-button { + icon-size: 12px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/undock_dark.svg); +} + +QDockWidget::float-button:hover { + /* background-color: #8ab6e9; */ + image: url(qss:images_dark-light/undock_blue.svg); +} + +QDockWidget::float-button:pressed { + image: url(qss:images_dark-light/undock_dark.svg); +} + +/* QTreeView QListView QTableView ----------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtreeview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlistview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtableview + +--------------------------------------------------------------------------- */ +QTreeView::branch { + background: transparent; +} + +QTreeView::branch:has-siblings:!adjoins-item { + border-image: url(qss:images_dark-light/branch_vline_dark.svg) 0; +} + +QTreeView::branch:has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_more_dark.svg) 0; +} + +QTreeView::branch:!has-children:!has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_end_dark.svg) 0; +} + +QTreeView::branch:closed:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_closed_dark.svg) 0; +} + +QTreeView::branch:has-children:!has-siblings:closed { + border-image: url(qss:images_dark-light/branch_end_closed_dark.svg) 0; +} + +QTreeView::branch:open:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_open_dark.svg) 0; +} + +QTreeView::branch:open:has-children:!has-siblings { + border-image: url(qss:images_dark-light/branch_end_open_dark.svg) 0; +} + +QTreeView::indicator:checked, +QListView::indicator:checked, +QTableView::indicator:checked, +QColumnView::indicator:checked { + image: url(qss:images_dark-light/checkbox_dark.svg); +} + +QTreeView::indicator:checked:hover, QTreeView::indicator:checked:focus, QTreeView::indicator:checked:pressed, +QListView::indicator:checked:hover, +QListView::indicator:checked:focus, +QListView::indicator:checked:pressed, +QTableView::indicator:checked:hover, +QTableView::indicator:checked:focus, +QTableView::indicator:checked:pressed, +QColumnView::indicator:checked:hover, +QColumnView::indicator:checked:focus, +QColumnView::indicator:checked:pressed { + image: url(qss:images_dark-light/checkbox_dark_hover.svg); +} + +QTreeView::indicator:unchecked, +QListView::indicator:unchecked, +QTableView::indicator:unchecked, +QColumnView::indicator:unchecked { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QTreeView::indicator:unchecked:hover, QTreeView::indicator:unchecked:focus, QTreeView::indicator:unchecked:pressed, +QListView::indicator:unchecked:hover, +QListView::indicator:unchecked:focus, +QListView::indicator:unchecked:pressed, +QTableView::indicator:unchecked:hover, +QTableView::indicator:unchecked:focus, +QTableView::indicator:unchecked:pressed, +QColumnView::indicator:unchecked:hover, +QColumnView::indicator:unchecked:focus, +QColumnView::indicator:unchecked:pressed { + image: url(qss:images_dark-light/checkbox_unchecked_hover_dark.svg); +} + +QTreeView::indicator:indeterminate, +QListView::indicator:indeterminate, +QTableView::indicator:indeterminate, +QColumnView::indicator:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QTreeView::indicator:indeterminate:hover, QTreeView::indicator:indeterminate:focus, QTreeView::indicator:indeterminate:pressed, +QListView::indicator:indeterminate:hover, +QListView::indicator:indeterminate:focus, +QListView::indicator:indeterminate:pressed, +QTableView::indicator:indeterminate:hover, +QTableView::indicator:indeterminate:focus, +QTableView::indicator:indeterminate:pressed, +QColumnView::indicator:indeterminate:hover, +QColumnView::indicator:indeterminate:focus, +QColumnView::indicator:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QTreeView, +QListView, +QTableView, +QColumnView { + background-color: #f6f6f6; /* background of a lot of stuff including spreadsheets.*/ + border: 0px solid #cccccc; + color: black; + gridline-color: #cccccc; + border-radius: 0px; +} + +QTableView, +QListView { + background-color: rgba(0, 0, 0, 0.050); /* background of a lot of stuff including spreadsheets.*/ +} + + +QTreeView:disabled, +QListView:disabled, +QTableView:disabled, +QColumnView:disabled { + background-color: white; + color: #515151; +} + +QTreeView:selected, +QListView:selected, +QTableView:selected, +QColumnView:selected { + background-color: #8ab6e9; + color: black; +} + +QTreeView:focus, +QListView:focus, +QTableView:focus, +QColumnView:focus { + border: 1px solid #dc00fa; +} + +QTreeView::item:pressed, +QListView::item:pressed, +QTableView::item:pressed, +QColumnView::item:pressed { + background-color: #8ab6e9; +} + +QTreeView::item:selected:active, +QListView::item:selected:active, +QTableView::item:selected:active, +QColumnView::item:selected:active { + background-color: #8ab6e9; +} + +QTreeView::item:selected:!active, +QListView::item:selected:!active, +QTableView::item:selected:!active, +QColumnView::item:selected:!active { + color: black; + background-color: #bfc1c0; +} + +QTreeView::item:!selected:hover, +QListView::item:!selected:hover, +QTableView::item:!selected:hover, +QColumnView::item:!selected:hover { + outline: 0; + color: black; + background-color: #8ab6e9; +} + +QTableCornerButton::section { + background-color: #f6f6f6; + border: 1px transparent #cccccc; + border-radius: 0px; +} + +QTableView::item { + color: black; +} +QTableView { + /*qproperty-AliasedCellBackgroundColor: #f700ff;*/ + /*qproperty-aliasBgColor: #f700ff;*/ +} + +/* QHeaderView ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qheaderview + +--------------------------------------------------------------------------- */ +QHeaderView { + background-color: #f6f6f6; + border: 1px solid #cccccc; + padding: 0; + margin: 0; + border-radius: 0px; + text-align: center; +} + +QHeaderView:disabled { + background-color: #f6f6f6; + border: 1px solid #cccccc; + color: #515151; +} + +QHeaderView::section { + background-color: #f5f5f5; + color: black; + border-radius: 0px; + text-align: center; + font-size: 13px; + font-weight: bold; + text-align: center; +} + +QHeaderView::section::horizontal { + padding-top: 0; + padding-bottom: 0; + padding-left: 10px; + padding-right: 10px; + border-left: 1px solid #cccccc; +} + +QHeaderView::section::horizontal::first, QHeaderView::section::horizontal::only-one { + border-left: 1px solid #cccccc; + padding-left: 15px; +} + +QHeaderView::section::horizontal:disabled { + color: #515151; +} + +QHeaderView::section::vertical { + padding-top: 0; + padding-bottom: 0; + padding-left: 1px; + padding-right: 1px; + border-top: 1px solid #cccccc; +} + +QHeaderView::section::vertical::first, QHeaderView::section::vertical::only-one { + border-top: 1px solid #cccccc; +} + +QHeaderView::section::vertical:disabled { + color: #515151; +} + +QHeaderView::down-arrow { + /* Those settings (border/width/height/background-color) solve bug */ + /* transparent arrow background and size */ + background-color: #455364; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/arrow_down.svg); +} + +QHeaderView::up-arrow { + background-color: #455364; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/up_arrow_dark.svg); +} + +/* QToolBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbox +used in PATH + +--------------------------------------------------------------------------- */ +QToolBox { + padding: 0px; + border: 1px solid #d4d4d4; + border-radius: 4px; + background-color: transparent; +} + +QToolBox:selected { + padding: 0px; + border: 0px solid #346792; +} + +QToolBox::tab { + background-color: #d4d4d4; + border: 0px solid #cccccc; + color: black; + background-image: url(qss:images_dark-light/down_arrow_darker.svg); + background-repeat: none; + background-position: center left; +} + +QToolBox::tab:disabled { + color: #515151; +} + +QToolBox::tab:selected { + background-color: #d4d4d4; + background-image: url(qss:images_dark-light/transparent.svg); + padding-right: 5px; + background-repeat: none; +} + +QToolBox::tab:selected:disabled { + background-color: #d4d4d4; + border-bottom: 0px solid #cccccc; + color: #515151; +} + +QToolBox::tab:!selected { + +} + +QToolBox::tab:!selected:disabled { + background-color: #f6f6f6; +} + +QToolBox::tab:hover { + background-color: #8ab6e9; + } + +QToolBox QScrollArea QWidget QWidget { + padding: 0px; + border: 0px; + background-color: transparent; +} + +/* QFrame ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe +https://doc.qt.io/qt-5/qframe.html#-prop +https://doc.qt.io/qt-5/qframe.html#details +https://stackoverflow.com/questions/14581498/qt-stylesheet-for-hline-vline-color + +--------------------------------------------------------------------------- */ +/* (dot) .QFrame fix #141, #126, #123 */ +.QFrame { + border-radius: 0px; + border: 0px solid #cccccc; + background-color: #cccccc; + /* No frame */ + /* HLine */ + /* HLine */ +} + +.QFrame[frameShape="0"] { + border-radius: 1.9px; + border: 1px solid #cccccc; +} + +.QFrame[frameShape="4"] { + max-height: 1px; + border: none; + background-color: #cccccc; +} + +.QFrame[frameShape="5"] { + max-width: 1px; + border: none; + background-color: #f6f6f6; +} + +/* QSplitter -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsplitter + +--------------------------------------------------------------------------- */ +QSplitter { + background-color: #f6f6f6; + spacing: 1px; + padding: 1px; + margin: 1px; +} + +QSplitter::handle { + margin: 0px 0px; + padding: 0px; +} + +QSplitter::handle:horizontal { + background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + width: 1px; +} + +QSplitter::handle:vertical { + background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + height: 1px; +} + +QSplitter::handle:hover { + background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); + background-position: center center; + background-repeat: none; + background-color: #8ab6e9; +} + +/* QDateEdit, QDateTimeEdit ----------------------------------------------- + +--------------------------------------------------------------------------- */ +QDateEdit, QDateTimeEdit { + selection-background-color: #8ab6e9; + border-style: solid; + border: 1px solid #cccccc; + border-radius: 1.9px; + /* This fixes 103, 111 */ + padding-top: 2px; + /* This fixes 103, 111 */ + padding-bottom: 2px; + padding-left: 4px; + padding-right: 4px; + min-width: 10px; +} + +QDateEdit:on, QDateTimeEdit:on { + selection-background-color: #8ab6e9; +} + +QDateEdit::drop-down, QDateTimeEdit::drop-down { + subcontrol-origin: padding; + subcontrol-position: top right; + width: 12px; + border-left: 1px solid #cccccc; +} + +QDateEdit::down-arrow, QDateTimeEdit::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); + height: 8px; + width: 8px; +} + +QDateEdit::down-arrow:on, QDateEdit::down-arrow:hover, QDateEdit::down-arrow:focus, QDateTimeEdit::down-arrow:on, QDateTimeEdit::down-arrow:hover, QDateTimeEdit::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_darker.svg); +} + +QDateEdit QAbstractItemView, QDateTimeEdit QAbstractItemView { + background-color: #f6f6f6; + border-radius: 2px; + border: 1px solid #cccccc; + selection-background-color: #8ab6e9; +} + +/* QAbstractView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractView:hover { + border: 1px solid #8ab6e9; + color: black; +} + +QAbstractView:selected { + background: #8ab6e9; + color: black; +} + +/* PlotWidget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +PlotWidget { + /* Fix cut labels in plots #134 */ + padding: 0px; +} \ No newline at end of file diff --git a/src/Gui/Stylesheets/Light-modern-green.qss b/src/Gui/Stylesheets/Light-modern-green.qss new file mode 100644 index 0000000000..d7966aabdc --- /dev/null +++ b/src/Gui/Stylesheets/Light-modern-green.qss @@ -0,0 +1,2582 @@ +/* +ABOUT +============================================================================================================ +Revised stylesheet based on the original from Pablo Gil Fernández made by MisterMaker + +KNOWN BUGS and TO DO +============================================================================================================ +Please, follow the link to get updated information: +https://forum.freecad.org/viewtopic.php?t=78431 + +INSTALLATION WHEN NECESSARY +============================================================================================================ +1) Place the .qss files and /images/ folder in the path that fits your OS: + OSX = /Users/[YOUR_USER_NAME]/Library/Preferences/FreeCAD/Gui/Stylesheets/ + WINDOWS = C:/[INSTALLATION_PATH]/FreeCAD/data/Gui/Stylesheets/ + LINUX = /home/[YOUR_USER_NAME]/.FreeCAD/Gui/Stylesheets/ + +============================================================================================================ +TO MODIFY USE THESE COLORS: + #a5e98a + #dc00fa + + +See Qt documentation: + + - https://doc.qt.io/qt-5/stylesheet.html + - https://doc.qt.io/qt-5/stylesheet-reference.html + - https://doc.qt.io/qt-5/stylesheet-examples.html + +--------------------------------------------------------------------------- */ + + +/* Reset elements ------------------------------------------------------------ + +Resetting everything helps to unify styles across different operating systems + +--------------------------------------------------------------------------- */ +* { + padding: 0px; + margin: 0px; + border: 0px; + border-style: none; + border-image: none; + outline: 0; +} + +/* specific reset for elements inside QToolBar */ +QToolBar * { + margin: 0px; + padding: 0px; +} + +/*hacks */ +Gui--PropertyEditor--PropertyEditor QLineEdit:read-only, +Gui--PropertyEditor--PropertyEditor QLineEdit:disabled, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:read-only, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:disabled { + color: transparent; + border-color: transparent; + background-color: transparent; + selection-color: transparent; + selection-background-color: transparent; + +} +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel, +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel:disabled { + color: transparent; + background-color: transparent; + border: none; + border-radius: 1px; + margin: 0px; + padding: 0px; +} + +Gui--PropertyEditor--PropertyEditor QSpinBox, +Gui--PropertyEditor--PropertyEditor QDoubleSpinBox, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox, +Gui--PropertyEditor--PropertyEditor QLineEdit, +Gui--PropertyEditor--PropertyEditor QComboBox { + margin-left: 0px; + margin-right: 0px; + padding-top: 0px; + padding-bottom: 0px; + +} + +/*================================================================================================== +Main window +==================================================================================================*/ +QMainWindow, +QDialog, +QDockWidget, +QToolBar { + background-color: #2b2b2b; /* main background color */ +} + +QMdiArea { + background-image: url(qss:images_dark-light/background_freecad_ExtremProDark.svg); + background-position: center center; + background-repeat: no-repeat; +} +/*navgation src/Mod/Tux/NavigationIndicatorGui.py */ +Gui--NavigationIndicatorGui--BlenderNavigationStyle { +/*QAction#a4 {*/ + qproperty-icon: url(:/icons/icons/NavigationBlender_light.svg); +} +/*===== +/* QWidget ---------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QWidget { + background-color: #f6f6f6; + border: 0px solid #cccccc; + padding: 0px; + color: black; + selection-background-color: #a5e98a; + selection-color: black; +} + +QWidget:disabled { + background-color: transparent; + color: #515151; + selection-background-color: #a5e98a; + selection-color: #515151; +} + +QWidget::item:selected { + background-color: #a5e98a; +} + + /* Causes issue with colorselector. +QWidget::item:hover:!selected { + background-color: #a5e98a; +}*/ + +/* QMainWindow ------------------------------------------------------------ + +This adjusts the splitter in the dock widget, not qsplitter +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmainwindow + +--------------------------------------------------------------------------- */ +QMainWindow::separator { + /*background-color: #3c3c3c;*/ + border: 0px solid #696968; + spacing: 0px; + padding: 1px; +} + +QMainWindow::separator:vertical:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,stop:0.2 transparent,stop:0.5 #a5e98a, stop:0.8 transparent); + /*background-color: #557bb6;*/ + image: url(qss:images_dark-light/splitter_vertical_dark.svg); +} + +QMainWindow::separator:horizontal:hover { + background-color: qlineargradient(x1:0, y1:0, x2:1, y2:0,stop:0.2 transparent,stop:0.5 #a5e98a, stop:0.8 transparent); + /*background-color: #557bb6;*/ + image: url(qss:images_dark-light/splitter_horizontal_dark.svg); +} + +QMainWindow::separator:horizontal { + width: 4px; + margin-top: 0.1px; + margin-bottom: 0.1px; + /* image: url(qss:images_dark-light/splitter_horizontal_dark.svg);*/ +} + +QMainWindow::separator:vertical { + height: 4px; + margin-left: 0.1px; + margin-right: 0.1px; + /* image: url(qss:images_dark-light/splitter_vertical_dark.svg);*/ +} + +/* QToolTip --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtooltip + +--------------------------------------------------------------------------- */ +QToolTip { + background-color: #f6f6f6; + color: black; + /* If you remove the border property, background stops working on Windows */ + border: none; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Remove opacity, fix #174 - may need to use RGBA */ +} + +/* QStatusBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qstatusbar + +--------------------------------------------------------------------------- */ +QStatusBar { + border: 0px solid #f5f5f5; + /* Fixes Spyder #9120, #9121 */ + background: #f6f6f6; + /* Fixes #205, black vertical borders separating items */ +} + +QStatusBar::item { + border: none; +} + +QStatusBar QToolTip { + background-color: #f6f6f6; + border: 1px solid #cccccc; + color: black; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Reducing transparency to read better */ + opacity: 230; +} + +QStatusBar QLabel { + /* Fixes Spyder #9120, #9121 */ + background: transparent; +} + +/* QCheckBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcheckbox + +--------------------------------------------------------------------------- */ +QCheckBox { + color: black; + padding: 0px; + outline: none; + border: 1px solid transparent; + background-color: transparent; +} + +QCheckBox:focus { + border: 1px solid #dc00fa; +} + +QCheckBox QWidget:disabled { + background-color: transparent; + color: #515151; +} + +QCheckBox::indicator { + color: black; + background-color: white; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QCheckBox::indicator:unchecked { + background-color: white; + image:url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QCheckBox::indicator:unchecked:hover, QCheckBox::indicator:unchecked:focus, QCheckBox::indicator:unchecked:pressed { + background-color: #a5e98a; + image:url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QCheckBox::indicator:unchecked:disabled { + background-color: #f5f5f5; + image:url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QCheckBox::indicator:checked { + background-color: white; + /*border: 1px solid #cccccc; /* QRadioButton has the same color */ + image:url(qss:images_dark-light/checkbox_dark.svg); +} + +QCheckBox::indicator:checked:hover, QCheckBox::indicator:checked:pressed { + background-color: #a5e98a; +} + +QCheckBox::indicator:checked:disabled { + background-color: #f5f5f5; + image: url(qss:images_dark-light/checkbox_checked_dark.svg); +} + +QCheckBox::indicator:indeterminate { + background-color: white; + border: 1px solid #cccccc; + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QCheckBox::indicator:indeterminate:disabled { + background-color: #f5f5f5; + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QCheckBox::indicator:indeterminate:hover, QCheckBox::indicator:indeterminate:pressed { + background-color: #a5e98a; /* QRadioButton has the same color */ +} + +/* QGroupBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qgroupbox + +--------------------------------------------------------------------------- */ +QGroupBox { + font-weight: bold; + border: 1px solid #cccccc; + border-radius: 1.9px; + padding: 2px; + margin-top: 10px; + margin-bottom: 4px; +} + +QGroupBox::title { + subcontrol-origin: margin; + subcontrol-position: top left; + left: 4px; + padding-left: 2px; + padding-right: 4px; + padding-top: 6px; +} + +QGroupBox::indicator { + color: black; + background-color: #f5f5f5; + border: 1px solid #cccccc; + width: 12px; + height: 12px; + border-radius:1px; +} + +QGroupBox::indicator:unchecked { + background-color: #cccccc; + border: 1px solid #cccccc; + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QGroupBox::indicator:unchecked:hover, QGroupBox::indicator:unchecked:focus, QGroupBox::indicator:unchecked:pressed { + background-color: #a5e98a; +} + +QGroupBox::indicator:unchecked:disabled { + background-color: white; + border: 1px solid #cccccc; +} + +QGroupBox::indicator:checked { + border: none; + image:url(qss:images_dark-light/checkbox_dark.svg); +} + +QGroupBox::indicator:checked:hover, QGroupBox::indicator:checked:focus, QGroupBox::indicator:checked:pressed { + background-color: #a5e98a; +} + +QGroupBox::indicator:checked:disabled { + background-color: #a5e98a; +} + +/* QRadioButton ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qradiobutton + +--------------------------------------------------------------------------- */ +QRadioButton { + background-color: transparent; + color: black; + border: none; + spacing: 4px; + padding-top: 4px; + padding-bottom: 4px; + outline: none; +} + +QRadioButton:focus { + border: 1px solid #dc00fa; +} + +QRadioButton:disabled { + background-color: #f6f6f6; + color: #515151; +} + +QRadioButton QWidget { + background-color: transparent; + color: black; + spacing: 0px; + padding: 0px; + outline: none; + border: none; +} + +QRadioButton::indicator { + background-color: #f8f8f8; + border: 1px solid #cccccc; + border-radius: 6px; + margin-left: 0px; + height: 11px; + width: 11px; +} + +QRadioButton::indicator:unchecked { + /*image:url(qss:images_dark-light/radiobutton_dark.svg);*/ +} + +QRadioButton::indicator:unchecked:hover, QRadioButton::indicator:unchecked:pressed { + background-color: #a5e98a; + border: 1px solid #a5e98a; + border-radius: 6px; +} + +QRadioButton::indicator:unchecked:disabled { + /*image:url(qss:images_dark-light/radiobutton_dark.svg);*/ + border: 1px solid #cccccc; +} + +QRadioButton::indicator:checked { + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +QRadioButton::indicator:checked:hover, QRadioButton::indicator:checked:pressed { + background-color: #a5e98a; + border: 1px solid #a5e98a; + border-radius: 6px; + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +QRadioButton::indicator:checked:disabled { + outline: none; + background-color: #cccccc; + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +/* QMenuBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenubar + +--------------------------------------------------------------------------- */ +QMenuBar { + background-color: #f8f8f8; + /*padding: 1px; + border: 0px solid rgba(255,255,255,140);*/ + color: black; + selection-background-color: #a5e98a; +} + +QMenuBar:focus { + border: 1px solid #dc00fa; +} + +QMenuBar::item { + background: transparent; + /*padding-left:5px; + padding-right: 5px; + padding-bottom: 1px; + padding-top: 1px;*/ +} + +QMenuBar::item:selected { + background: transparent; + border: 0px solid #cccccc; + background-color: #a5e98a; +} + +QMenuBar::item:pressed { + /*padding: 2px; + padding-left: 10px; + padding-right: 10px;*/ + border: 0px solid #cccccc; + background-color: #a5e98a; + color: black; + /*margin-bottom: 0px; + padding-bottom: 0px;*/ +} + +/* QMenu ------------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenu + +--------------------------------------------------------------------------- */ +QMenu { + border-bottom: 2px rgba(100,100,100,140); + border-right: 2px rgba(100,100,100,140); + color: black; + margin: 0px; + background-color: #f8f8f8; + selection-background-color: #a5e98a; +} + +QMenu::separator { + height: 2px; + background-color: #cccccc; + margin-left: 30%; + margin-right: 30%; +} + +QMenu::item { + background-color: transparent; + padding: 2px 2px; /* make room for icon at left */ + /* Reserve space for selection border */ + border: 0px transparent #cccccc; +} + +QMenu::item:selected { + color: black; + background-color: #a5e98a; +} + +QMenu::item:pressed { + background-color: #a5e98a; +} + +QMenu::icon { + margin-left: 5px; + width: 14px; + height: 14px; +} + +QMenu::indicator { + margin-left: 2px; + margin-right: 2px; + padding: 0px; + width: 12px; + height: 12px; + /* non-exclusive indicator = check box style indicator (see QActionGroup::setExclusive) */ + /* exclusive indicator = radio button style indicator (see QActionGroup::setExclusive) */ +} + +QMenu::icon:checked { /* appearance of a 'checked' icon */ + background: #a5e98a; + margin-left: -5px; + border: 5px solid #a5e98a; + position: absolute; + border-radius: 0px; +} +QMenu::indicator:non-exclusive:unchecked { + image: url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QMenu::indicator:non-exclusive:unchecked:hover, QMenu::indicator:non-exclusive:unchecked:focus, QMenu::indicator:non-exclusive:unchecked:pressed { + border: none; + background: #a5e98a; +} + +QMenu::indicator:non-exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QMenu::indicator:non-exclusive:checked { + image:url(qss:images_dark-light/checkbox_dark.svg); +} + +QMenu::indicator:non-exclusive:checked:hover, QMenu::indicator:non-exclusive:checked:focus, QMenu::indicator:non-exclusive:checked:pressed { + border: none; + background: #a5e98a; +} + +QMenu::indicator:non-exclusive:checked:disabled { + image:url(qss:images_dark-light/checkbox_checked_disabled.svg); +} + +QMenu::indicator:non-exclusive:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:disabled { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:focus, QMenu::indicator:non-exclusive:indeterminate:hover, QMenu::indicator:non-exclusive:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QMenu::indicator:exclusive:unchecked { + image: url(qss:images_dark-light/transparent.svg); +} + +QMenu::indicator:exclusive:unchecked:hover, QMenu::indicator:exclusive:unchecked:focus, QMenu::indicator:exclusive:unchecked:pressed { + border: none; + outline: none; + background: #a5e98a; + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QMenu::indicator:exclusive:checked { + border: none; + outline: none; + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +QMenu::indicator:exclusive:checked:hover, QMenu::indicator:exclusive:checked:focus, QMenu::indicator:exclusive:checked:pressed { + border: none; + outline: none; + background: #a5e98a; + image: url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QMenu::indicator:exclusive:checked:disabled { + outline: none; + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +QMenu::right-arrow { + margin: 5px; + padding-left: 12px; + image:url(qss:images_dark-light/right_arrow_darker.svg); + height: 12px; + width: 12px; + background-color: transparent; +} + +/* QAbstractItemView ------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QAbstractItemView { + alternate-background-color: #cfcfcf; + color: black; + border: 1px solid #cccccc; + border-radius: 2px; +} + +QAbstractItemView QLineEdit { + padding: 2px; +} + +/* QAbstractScrollArea ---------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QAbstractScrollArea { + background-color: transparent; + border: 0px solid #cccccc; + border-radius: 0px; + /* fix #159 */ + padding: 0px; + /* remove min-height to fix #244 */ + color: black; +} + +QAbstractScrollArea:disabled { + color: #515151; +} + +/* QScrollArea ------------------------------------------------------------ + +--------------------------------------------------------------------------- +text input field disabled!!!!*/ +QScrollArea QWidget:disabled { + background-color: #f6f6f6; +} + +/* QScrollBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qscrollbar + +--------------------------------------------------------------------------- */ +QScrollBar:horizontal { + height: 16px; + margin: 2px 16px 2px 16px; + border: 0px solid #cccccc; + border-radius: 1.9px; + background-color: #f6f6f6; +} + +QScrollBar:vertical { + background-color: #f6f6f6; + width: 16px; + margin: 16px 2px 16px 2px; + border: 0px solid #cccccc; + border-radius: 1.9px; +} + +QScrollBar::handle:horizontal { + background-color: #d4d4d4; + border: 1px solid #f6f6f6; + border-radius: 1.9px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:hover { + background-color: #a5e98a; + border: #cccccc; + border-radius: 1.9px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:focus { + border: 1px solid #dc00fa; +} + +QScrollBar::handle:vertical { + background-color: #d4d4d4; + border: 1px solid #cccccc; + min-height: 8px; + border-radius: 1.9px; +} + +QScrollBar::handle:vertical:hover { + background-color: #a5e98a; + border: #cccccc; + border-radius: 1.9px; + min-height: 8px; +} + +QScrollBar::handle:vertical:focus { + border: 1px solid #dc00fa; +} + +QScrollBar::add-line:horizontal { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/right_arrow_darker.svg); + height: 10px; + width: 7px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:horizontal:hover, QScrollBar::add-line:horizontal:on { + border-image: url(qss:images_dark-light/right_arrow_darker.svg); + background-color: #a5e98a; + height: 10px; + width: 7px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/down_arrow_darker.svg); + height: 7px; + width: 10px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical:hover, QScrollBar::add-line:vertical:on { + border-image: url(qss:images_dark-light/down_arrow_darker.svg); + background-color: #a5e98a; + height: 7px; + width: 10px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/left_arrow_darker.svg); + height: 10px; + width: 7px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal:hover, QScrollBar::sub-line:horizontal:on { + border-image: url(qss:images_dark-light/left_arrow_darker.svg); + background-color: #a5e98a; + height: 10px; + width: 8px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/up_arrow_darker.svg); + height: 8px; + width: 10px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical:hover, QScrollBar::sub-line:vertical:on { + background-color: #a5e98a; + border-image: url(qss:images_dark-light/up_arrow_darker.svg); + height: 8px; + width: 10px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::up-arrow:horizontal, QScrollBar::down-arrow:horizontal { + background: none; +} + +QScrollBar::up-arrow:vertical, QScrollBar::down-arrow:vertical { + background: none; +} + +QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal { + background: none; +} + +QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical { + background: none; +} + +/* QTextEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-specific-widgets + + +report view +--------------------------------------------------------------------------- */ +QTextEdit { + background-color: #f6f6f6; + color: black; + border-radius: 1.9px; + border: 0px solid #cccccc; +} + +QTextEdit:focus { + border: 1px solid #dc00fa; +} + +QTextEdit:selected { + background: #346792; + color: black; +} + +/* QPlainTextEdit --------------------------------------------------------- +Python +--------------------------------------------------------------------------- */ +QPlainTextEdit { + background-color: white; + color: black; + border-radius: 1.9px; + border: 0px solid #cccccc; +} + +QPlainTextEdit:focus { + border: 1px solid #dc00fa; +} + +QPlainTextEdit:selected { + background: #a5e98a; + color: black; +} + +/* QSizeGrip -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsizegrip + +--------------------------------------------------------------------------- */ +QSizeGrip { + background: transparent; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/sizegrip_dark.svg); +} + +/* QStackedWidget --------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QStackedWidget { + padding: 0px; + border: 0px solid #cccccc; +} + +/* QToolBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbar + +--------------------------------------------------------------------------- */ +QToolBar { + background-color: #f6f6f6; + border-bottom: 0px solid rgba(0,0,0,120); + padding: 1px; + font-weight: bold; + spacing: 1px; +} + +QToolBar:disabled { + /* Fixes #272 */ + background-color: #f6f6f6; +} + +QToolBar::handle:horizontal { + width: 8px; + margin: 3px 3px; + background-position: top right; + background-repeat: repeat-y; + background-image: url(qss:images_dark-light/Hmovetoolbar_dark.svg); +} + +QToolBar::handle:vertical { + height: 8px; + margin: 3px 3px; + background-position: left bottom; + background-repeat: repeat-x; + background-image: url(qss:images_dark-light/Vmovetoolbar_dark.svg); +} + +QToolBar::separator:horizontal { + width: 2px; + margin: 4px 4px; + background-color: transparent; +} + +QToolBar::separator:vertical { + height: 2px; + margin: 4px 4px; + background-color: transparent; +} + +/*The "show more" button (it can also be stylable with "QToolBarExtension" icon is not working Qproperty works but breaks when you move the toolbar see also */ +QToolButton#qt_toolbar_ext_button { +margin: 0px; +padding: 0px; +background-color: #f6f6f6; +/*background-image: url(qss:images_dark-light/more_dark.svg);*/ +background-repeat: none; +background-position: center center; +} + +QToolButton#qt_toolbar_ext_button:hover { +/* background-image: url(qss:images_dark-light/more_dark.svg);*/ +background-color: #a5e98a; +} + +QToolButton#qt_toolbar_ext_button:on { +/* background-image: url(qss:images_dark-light/more_dark.svg);*/ +border-color: #cccccc; +background-color: #a5e98a; +} + + +/* QAbstractSpinBox ------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractSpinBox, +QSpinBox { + background-color: white; + border: 1px solid #cccccc; + color: black; + /* This fixes 103, 111 */ + /* padding-top: 0px; + /* This fixes 103, 111 */ + /*padding-bottom: 0px; + /*padding-left: 4px; + /*padding-right: 4px; + border-radius: 1.9px;*/ + min-height: 1.7em; + /* min-width: 5px; removed to fix 109 */ +} + +QAbstractSpinBox:up-button { + background-color: #cccccc; + subcontrol-origin: border; + subcontrol-position: top right; + border-left: 1px solid #cccccc; + border-bottom: 1px solid #cccccc; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-bottom: -1px;*/ +} + +QAbstractSpinBox::up-arrow, QAbstractSpinBox::up-arrow:disabled, QAbstractSpinBox::up-arrow:off { + image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); + /* height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::up-arrow:hover { + /*background-color: #a5e98a;*/ + image: url(qss:images_dark-light/up_arrow_darker.svg); +} + +QAbstractSpinBox:down-button { + background-color: #cccccc; + subcontrol-origin: border; + subcontrol-position: bottom right; + border-left: 1px solid #cccccc; + border-top: 1px solid #cccccc; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-top: -1px;*/ +} + +QAbstractSpinBox::down-arrow, QAbstractSpinBox::down-arrow:disabled, QAbstractSpinBox::down-arrow:off { + image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); + /*height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::down-arrow:hover { + /*background-color: #a5e98a;*/ image:url(qss:images_dark-light/down_arrow_darker.svg); +} + +QAbstractSpinBox:hover { + /*border: 1px solid #a5e98a; + color: black;*/ +} + +QAbstractSpinBox:focus { + border: 1px solid #dc00fa; +} + +QAbstractSpinBox:selected { + background: #dc00fa; + /*color: black;*/ +} + +/* ------------------------------------------------------------------------ */ +/* DISPLAYS --------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QLabel ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe + +--------------------------------------------------------------------------- */ +QLabel { + background-color: transparent; + border: 0px solid #cccccc; + padding: 2px; + margin: 0px; + color: black; +} + +QLabel:disabled { + background-color: transparent; + border: 0px solid #cccccc; + color: #9f0d00; +} + +QLabel[haslink="true"] { + color: darkblue; +} + + +/* QTextBrowser ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QTextBrowser { + background-color: white; + border: 1px solid #cccccc; + color: black; + border-radius: 1.9px; +} + +QTextBrowser:disabled { + background-color: #f6f6f6; + border: 1px solid #cccccc; + color: #005aa4; + border-radius: 1.9px; +} + +QTextBrowser:hover, QTextBrowser:!hover, QTextBrowser:selected, QTextBrowser:pressed { + border: 1px solid #455364; +} + +/* QGraphicsView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QGraphicsView { + background-color: transparent; + border: 0px solid #455364; + color: black; + border-radius: 0px; +} + +QGraphicsView:disabled { + background-color: white; + border: 0px solid #cccccc; + color: #515151; + border-radius: 0px; +} + +QGraphicsView:hover, QGraphicsView:!hover, QGraphicsView:selected, QGraphicsView:pressed { + border: 0px solid #ff00f7; +} + +/* QCalendarWidget -------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCalendarWidget { + border: 1px solid #cccccc; + border-radius: 1.9px; +} + +QCalendarWidget:disabled { + background-color: #bfc1c0; + color: #515151; +} + +/* QLCDNumber ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QLCDNumber { + background-color: #1aff00; + color: black; +} + +QLCDNumber:disabled { + background-color: #f6f6f6; + color: #515151; +} + +/* QProgressBar ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qprogressbar + +--------------------------------------------------------------------------- */ +QProgressBar { + background-color: #515151; + border: 1px solid #cccccc; + color: black; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar:disabled { + background-color: #f8f8f8; + border: 1px solid #cccccc; + color: #515151; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar::chunk { + background-color: #a5e98a; + color: #f6f6f6; + border-radius: 1.9px; +} + +QProgressBar::chunk:disabled { + background-color: #f8f8f8; + color: #cccccc; + border-radius: 1.9px; +} + +/* ------------------------------------------------------------------------ */ +/* BUTTONS ---------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QPushButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qpushbutton + +--------------------------------------------------------------------------- */ +QPushButton { + background-color: #d4d4d4; + color: black; + border-radius: 2px; + padding: 2px; + outline: none; + border: none; +} + +QPushButton:disabled { + background-color: #f6f6f6; + color: #515151; + border-radius: 2px; + padding: 2px; +} + +QPushButton:checked { + background-color: #a5e98a; + border-radius: 2px; + padding: 2px; + outline: none; +} + +QPushButton:checked:disabled { + background-color: #a5e98a; + color: #f5f5f5; + border-radius: 2px; + padding: 2px; + outline: none; +} + +QPushButton:checked:selected { + background: #a5e98a; +} + +QPushButton:hover { + background-color: #a5e98a; + color: black; +} + +QPushButton:pressed { + background-color: #a5e98a; +} + +QPushButton:selected { + background: #dc00fa; + color: black; +} + +QPushButton::menu-indicator { + subcontrol-origin: padding; + subcontrol-position: bottom right; + bottom: 4px; +} + +QDialogButtonBox QPushButton { + /* Issue # 194 # 248 - Special case of QPushButton inside dialogs, for better UI */ + min-width: 80px; +} + +/* QToolButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbutton + +--------------------------------------------------------------------------- */ +QToolButton { + background-color: transparent; + color: black; + border-radius: 1px; + padding: 0px; + outline: none; + border: none; + /* The subcontrols below are used only in the DelayedPopup mode */ + /* The subcontrols below are used only in the MenuButtonPopup mode */ + /* The subcontrol below is used only in the InstantPopup or DelayedPopup mode */ +} + +QToolButton:disabled { + background-color: #f8f8f8; + color: #515151; + border-radius: 1px; + padding: 0px; +} + +QToolButton:checked { + background-color: #a5e98a; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:disabled { + background-color: #a5e98a; + color: #515151; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:hover { + background-color: #a5e98a; + color: black; +} + +QToolButton:checked:pressed { + background-color: #a5e98a; +} + +QToolButton:checked:selected { + background: #dc00fa; + color: black; +} + +QToolButton:hover { + background-color: #a5e98a; + color: black; +} + +QToolButton:pressed { + background-color: #dc00fa; +} + +QToolButton:selected { + background: #a5e98a; + color: black; +} + +QToolButton[popupMode="0"] { + /* Only for DelayedPopup */ + padding-right: 20px; +} + +QToolButton[popupMode="1"] { + /* Only for MenuButtonPopup */ + padding-right: 20px; +} +QToolButton[popupMode="0"]::menu-button { + border: none; +} + +QToolButton[popupMode="0"]::menu-button:hover { + border: none; + border-left: 2px solid #fe0000; + border-radius: 0px; +} +QToolButton[popupMode="1"]::menu-button { + border: none; +} + +QToolButton[popupMode="1"]::menu-button:hover { + border: none; + border-left: 2px solid #e5ff00; + border-radius: 0px; +} + +QToolButton[popupMode="2"] { + /* Only for InstantPopup */ + padding-right: 20px; +} + +QToolButton::menu-button { + border-bottom: 0px solid #f6f6f6; + border-radius: 2px; + /* 16px width + 4px for border = 20px allocated above */ + width: 1.6ex; + padding: 2px; + border-radius: 2px; + border: 0px #000000; +} + +QToolButton::menu-button:hover { + /* background: rgba(0, 0, 0, 0.5);*/ + +} + +QToolButton::menu-button:checked:hover { + /* background: rgba(0, 0, 0, 0.5);*/ +} + +QToolButton::menu-indicator { + /* Exclude a shift for better image */ + subcontrol-position: right bottom; + /* Shift it a bit */ +} + +QToolButton::menu-arrow { + image: url(qss:images_dark-light/more_arrow_dark.svg); + width: 1.5ex; + height: 1.5ex; + subcontrol-position: right bottom; + background: transparent; +} +QToolButton::menu-arrow:open { + subcontrol-position: right bottom; + image: url(qss:images_dark-light/more_arrow_dark.svg); +} +QToolButton::menu-arrow:hover { + image: url(qss:images_dark-light/more_arrow_dark.svg); + background-color: rgba(0, 0, 0, 0.498); + border: 1px solid rgba(0, 0, 0, 0.498); +} + +/* QCommandLinkButton ----------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCommandLinkButton { + background-color: transparent; + border: 1px solid #cccccc; + color: black; + border-radius: 1.9px; + padding: 0px; + margin: 0px; +} + +QCommandLinkButton:disabled { + background-color: transparent; + color: #515151; +} + +/* ------------------------------------------------------------------------ */ +/* INPUTS - NO FIELDS ----------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QComboBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QComboBox { + border: 1px solid #cccccc; + background: white; + border-radius: 2px; + selection-background-color: #a5e98a; + padding-left: 2px; + padding-right: 2px; + /* padding-right = 36; 4 + 16*2 See scrollbar size */ + /* changed to 4px to fix #239 */ + /* Fixes #103, #111 */ + min-height: 1.5em; + /* padding-top: 2px; removed to fix #132 */ + /* padding-bottom: 2px; removed to fix #132 */ + /* min-width: 75px; removed to fix #109 */ + /* Needed to remove indicator - fix #132 */ +} +QComboBox:editable { + background: white; +} +QComboBox QAbstractItemView { + border: 0px solid #cccccc; + border-radius: 0px; + background-color: white; + selection-background-color: #a5e98a; +} + +QComboBox QAbstractItemView:hover { + background-color:white; + color: black; +} + +QComboBox QAbstractItemView:selected { + background: #a5e98a; + color: black; +} + +QComboBox QAbstractItemView:alternate { + background: #f5f5f5; +} + +QComboBox:disabled { + background-color: #cccccc; + color: #515151; +} + +QComboBox:hover { + /*background-color: #a5e98a;*/ + border: 1px solid #a5e98a; +} + +QComboBox:focus { + border: 1px solid #dc00fa; +} + +QComboBox:on { + selection-background-color: #dc00fa; +} + +QComboBox::indicator { + border: none; + border-radius: 0px; + background-color: transparent; + selection-background-color: transparent; + color: transparent; + selection-color: #a5e98a; + /* Needed to remove indicator - fix #132 */ +} + +QComboBox::indicator:alternate { + background: #cccccc; +} + +QComboBox::item { + /* Remove to fix #282, #285 and MR #288*/ + /*&:checked { + font-weight: bold; + } + + &:selected { + border: 0px solid transparent; + } + */ +} + +QComboBox::item:alternate { + background: #f5f5f5; +} + +QComboBox::drop-down { + subcontrol-origin: padding; + background-color: #d4d4d4; + subcontrol-position: top right; + width: 14px; + border-left: 1px solid #cccccc; +} +QComboBox::drop-down:hover { + background-color: #a5e98a; +} + +QComboBox::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); + height: 10px; + width: 10px; +} + +QComboBox::down-arrow:on, QComboBox::down-arrow:hover, QComboBox::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_darker.svg); +} + + +/*================================================================================================== +Tasks panel (custom FreeCAD class) +==================================================================================================*/ +Gui--PropertyEditor--PropertyEditor { + qproperty-groupTextColor: black; + qproperty-groupBackground: #f5f5f5; + border: 0px solid #cccccc; + +} + +/* Action group */ +QFrame[class="panel"] { +background-color: transparent; /* temporal (transparent background) */ + +} + +QSint--ActionGroup { +padding: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +margin: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +} + +/* Separator line */ +QSint--ActionGroup QFrame[height="1"], +QSint--ActionGroup QFrame[height="2"], +QSint--ActionGroup QFrame[height="3"], +QSint--ActionGroup QFrame[width="1"], +QSint--ActionGroup QFrame[width="2"], +QSint--ActionGroup QFrame[width="3"] { +border-color: rgba(0,0,0,60); +} + +/* Panel header */ +QSint--ActionGroup QFrame[class="header"] { +border-top: 1px solid #cccccc; +border-left: 1px solid #cccccc; +border-right: 1px solid #cccccc; +background-color: #d4d4d4; /* Task Panel Header background color */ +border-top-left-radius: 3px; +border-top-right-radius: 3px; +border-bottom-left-radius: 0px; +border-bottom-right-radius: 0px; +margin: 0px; +padding: 0px; +} + +QSint--ActionGroup QFrame[class="header"]:hover { +background-color: #a5e98a; +} + +QSint--ActionGroup QToolButton[class="header"] { +color: black; /* Task Panel Header text color */ +text-align: left; +font-weight: bold; +border: none; +margin: 0px; +padding: 0px; +} + +QSint--ActionGroup QFrame[class="header"] QLabel { +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_darker.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; +} + +QSint--ActionGroup QFrame[class="header"] QLabel:hover { +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_darker.svg); +} + +QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"] { +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_darker.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; +} + +QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"]:hover { +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_darker.svg); +} + +QSint--ActionGroup QFrame[class="content"] { +background-color: transparent; /* Task Panel background color */ +margin: 0px; +padding: 0px; +border-bottom: 1px solid #cccccc; +border-left: 1px solid #cccccc; +border-right: 1px solid #cccccc; +border-top-left-radius: 0px; +border-top-right-radius: 0px; +border-bottom-left-radius: 3px; +border-bottom-right-radius: 3px; +} + +QSint--ActionGroup QFrame[class="content"] > QWidget { +background-color: #f6f6f6; /* Task Panel background color */ +} + +/* Fixs for tabs inside Task Panel */ +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:top:selected { +border-bottom-color: #a5e98a; /* same as Task Panel background color */ +} + +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:bottom:selected { +border-top-color: #a5e98a; /* same as Task Panel background color */ +} + +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:right:selected { +border-right-color: #a5e98a; /* same as Task Panel background color */ +} + +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:left:selected { +border-left-color: #a5e98a; /* same as Task Panel background color */ +} + +/* Fix for buttons with icons that showed cropped (still not happy with result) */ +QSint--ActionGroup QFrame[class="content"] > QWidget > QPushButton { +padding: 2px; /* bigger padding crops text and icons... */ +margin: 0px; +} + +/* Fix for lists inside task panels */ /* sketcher constraints list */ +QSint--ActionGroup QFrame[class="content"] QTreeView, +QSint--ActionGroup QFrame[class="content"] QListView, +QSint--ActionGroup QFrame[class="content"] QTableView { +color: black; +background-color: white; +} + + +/* found inside Part Design Workbench and "make a draft on a face" Task panel options */ +QSint--ActionGroup QFrame[class="content"] QToolButton { + color: black; + text-align: center; + background-color: #d4d4d4; + border: 0px solid #adadad; + padding: 1px 1px; /* different than regular QPushButton */ + margin: 0px; /* different than regular QPushButton */ + min-height: 16px; /* same as QTabBar QPushButton min-width */ + border-radius: 1px; +} + +QSint--ActionGroup QFrame[class="content"] QToolButton:hover{ + background: #a5e98a; + border: 1px solid #a5e98a; +} +QSint--ActionGroup QFrame[class="content"] QToolButton:focus { + border: 1px solid #dc00fa; +} + +QSint--ActionGroup QFrame[class="content"] QToolButton:disabled, +QSint--ActionGroup QFrame[class="content"] QToolButton:disabled:checked { + color: #455364; + background-color: #cccccc; +} + +QSint--ActionGroup QFrame[class="content"] QToolButton:pressed { + background: #a5e98a; + border: 1px solid #a5e98a; +} + +/* QSlider ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qslider + +--------------------------------------------------------------------------- */ +QSlider:disabled { + background: #f6f6f6; +} + +QSlider:focus { + border: 1px solid #dc00fa; +} + +QSlider::groove:horizontal { + background: #f6f6f6; + border: 1px solid #cccccc; + height: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::groove:vertical { + background: #a5e98a; + border: 1px solid #cccccc; + width: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::add-page:vertical { + background: #a5e98a; + border: 1px solid #cccccc; + width: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::add-page:vertical :disabled { + background: #cccccc; +} + +QSlider::sub-page:horizontal { + background: #a5e98a; + border: 1px solid #0073ff; + height: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::sub-page:horizontal:disabled { + background: #cccccc; +} + +QSlider::handle:horizontal { + background: #bfc1c0; + border: 1px solid #f6f6f6; + width: 8px; + height: 8px; + margin: -8px 0px; + border-radius: 1.9px; +} + +QSlider::handle:horizontal:hover { + background: #a5e98a; + border: 1px solid #a5e98a; +} + +QSlider::handle:horizontal:focus { + border: 1px solid #dc00fa; +} + +QSlider::handle:vertical { + background: #515151; + border: 1px solid #455364; + width: 8px; + height: 8px; + margin: 0 -8px; + border-radius: 1.9px; +} + +QSlider::handle:vertical:hover { + background: #a5e98a; + border: 2px solid #a5e98a; +} + +QSlider::handle:vertical:focus { + border: 1px solid #dc00fa; +} + +/* QLineEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlineedit + +--------------------------------------------------------------------------- */ +QLineEdit { + background-color: white; + padding-top: 2px; + /* This QLineEdit fix 103, 111 */ + padding-bottom: 2px; + /* This QLineEdit fix 103, 111 */ + padding-left: 4px; + padding-right: 4px; + border-style: solid; + border: 1px solid #cccccc; + border-radius: 2px; + color: black; +} + +QLineEdit:disabled { + background-color: #cccccc; + color: #454545; +} + +QLineEdit:hover { + border: 1px solid #a5e98a; + color: black; +} + +QLineEdit:focus { + border: 2px solid #dc00fa; +} + +QLineEdit:selected { + background-color: #a5e98a; + color: black; +} + +/* QTabWiget -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabWidget { + padding: 2px; + selection-background-color: #a5e98a; +} + +QTabWidget QWidget { + /* Fixes #189 */ + border-radius: 1.9px; +} + +QTabWidget::pane { + border: 0px solid #8c00ffa1; + border-radius: 1.9px; + margin: 0px; + /* Fixes double border inside pane with pyqt5 */ + padding: 0px; +} + +QTabWidget::pane:selected { + background-color: #a5e98a; + border: 1px solid #346792; +} +/* QTabBar ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabBar, QDockWidget QTabBar { + qproperty-drawBase: 0; + border-radius: 2px; + margin: 0px; + padding: 2px; + border: 0; + alignment: center; + /* left: 5px; move to the right by 5px - removed for fix */ +} + +QTabBar::close-button, QDockWidget QTabBar::close-button { + border: 0; + margin: 0; + padding: 1px; + image: url(qss:images_dark-light/close_dark.svg); +} + +QTabBar::close-button:hover, QDockWidget QTabBar::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); + /*background-color: rgba(255, 0, 0, 0.392);*/ +} + +QTabBar::close-button:pressed, QDockWidget QTabBar::close-button:pressed { + image: url(qss:images_dark-light/close_dark.svg); +} + +QTabBar::tab, QDockWidget QTabBar::tab { + /* !selected and disabled ----------------------------------------- */ + /* selected ------------------------------------------------------- */ +} + +QTabBar::tab:top:selected:disabled, QDockWidget QTabBar::tab:top:selected:disabled { + border-bottom: 3px solid #d4d4d4; + color: #515151; + background-color: #d4d4d4; +} + +QTabBar::tab:bottom:selected:disabled, QDockWidget QTabBar::tab:bottom:selected:disabled { + border-top: 3px solid #d4d4d4; + color: #515151; + background-color: #d4d4d4; +} + +QTabBar::tab:left:selected:disabled, QDockWidget QTabBar::tab:left:selected:disabled { + border-right: 3px solid #d4d4d4; + color: #515151; + background-color: #d4d4d4; +} + +QTabBar::tab:right:selected:disabled, QDockWidget QTabBar::tab:right:selected:disabled { + border-left: 3px solid #d4d4d4; + color: #515151; + background-color: #d4d4d4; +} + +QTabBar::tab:top:!selected:disabled, QDockWidget QTabBar::tab:top:!selected:disabled { + border-bottom: 3px solid #d4d4d4; + color: #515151; + background-color: #d4d4d4; +} + +QTabBar::tab:bottom:!selected:disabled, QDockWidget QTabBar::tab:bottom:!selected:disabled { + border-top: 3px solid #d4d4d4; + color: #515151; + background-color: #d4d4d4; +} + +QTabBar::tab:left:!selected:disabled, QDockWidget QTabBar::tab:left:!selected:disabled { + border-right: 3px solid #d4d4d4; + color: #515151; + background-color: #d4d4d4; +} + +QTabBar::tab:right:!selected:disabled, QDockWidget QTabBar::tab:right:!selected:disabled { + border-left: 3px solid #d4d4d4; + color: #515151; + background-color: #d4d4d4; +} + +QTabBar::tab:top:!selected, QDockWidget QTabBar::tab:top:!selected { + border-bottom: 2px solid #d4d4d4; + margin-top: 2px; +} + +QTabBar::tab:bottom:!selected, QDockWidget QTabBar::tab:bottom:!selected { + border-top: 2px solid #d4d4d4; + margin-bottom: 2px; +} + +QTabBar::tab:left:!selected, QDockWidget QTabBar::tab:left:!selected { + border-left: 2px solid #d4d4d4; + margin-right: 2px; +} + +QTabBar::tab:right:!selected, QDockWidget QTabBar::tab:right:!selected { + border-right: 2px solid #d4d4d4; + margin-left: 2px; +} + +QTabBar::tab:top, QDockWidget QTabBar::tab:top { + background-color: #d4d4d4; + margin-left: 3px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + min-width: 5px; + border: 0px solid #d4d4d4; + border-radius: 4px; +} + +QTabBar::tab:top:selected, QDockWidget QTabBar::tab:top:selected { + background-color: #f6f6f6; + /*border: 1px solid #dc00fa; + border-radius: 4px; + margin-left: 4px; + margin-right: 4px; + padding-left: 3px; + padding-right: 3px;*/ +} + +QTabBar::tab:top:!selected:hover, QDockWidget QTabBar::tab:top:!selected:hover { + /*border: 1px solid #a5e98a;*/ + border: 0px solid #a5e98a; + background-color: #a5e98a; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; +} + +QTabBar::tab:bottom, QDockWidget QTabBar::tab:bottom { + border: 0px solid #d4d4d4; + background-color: #d4d4d4; + margin-left: 3px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + border-radius: 4px; + min-width: 5px; +} + +QTabBar::tab:bottom:selected, QDockWidget QTabBar::tab:bottom:selected { + background-color: #f5f5f5; + /*border: 1px solid #dc00fa; + border-radius: 4px; + margin-left: 4px; + margin-right: 4px; + padding-left: 3px; + padding-right: 3px;*/ +} + +QTabBar::tab:bottom:!selected:hover, QDockWidget QTabBar::tab:bottom:!selected:hover { +/*border: 1px solid #a5e98a;*/ + border: 0px solid #a5e98a; + background-color: #a5e98a; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; +} + +QTabBar::tab:left, QDockWidget QTabBar::tab:left { + background-color: #f5f5f5; + margin-top: 2px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + border-radius: 4px; + min-height: 5px; +} + +QTabBar::tab:left:selected, QDockWidget QTabBar::tab:left:selected { + background-color: #f5f5f5; + border: 0px solid #dc00fa; +} + +QTabBar::tab:left:!selected:hover, QDockWidget QTabBar::tab:left:!selected:hover { + border: 0px solid #a5e98a; + background-color: #a5e98a; + /* Fixes different behavior #271 */ + margin-right: 0px; + padding-right: -1px; +} + +QTabBar::tab:right, QDockWidget QTabBar::tab:right { + background-color: #f5f5f5; + margin-top: 2px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + min-height: 5px; + border: 10px; +} + +QTabBar::tab:right:selected, QDockWidget QTabBar::tab:right:selected { + background-color: #f5f5f5; + border: 0px solid #dc00fa; +} + +QTabBar::tab:right:!selected:hover, QDockWidget QTabBar::tab:right:!selected:hover { + border: 0px solid #a5e98a; + background-color: #a5e98a; + /* Fixes different behavior #271 */ + margin-left: 0px; + padding-left: 0px; +} + +QTabBar QToolButton, QDockWidget QTabBar QToolButton { + /* Fixes #136 */ + background-color: #f5f5f5; + height: 12px; + width: 12px; +} + +QTabBar QToolButton:pressed, QDockWidget QTabBar QToolButton:pressed { + border: 0px solid #a5e98a; + background-color: #a5e98a; +} + +QTabBar QToolButton:pressed:hover, QDockWidget QTabBar QToolButton:pressed:hover { + border: 0px solid #a5e98a; + background-color: #a5e98a; +} + +QTabBar QToolButton::left-arrow:enabled, QDockWidget QTabBar QToolButton::left-arrow:enabled { + image: url(qss:images_dark-light/left_arrow_darker.svg); +} + +QTabBar QToolButton::left-arrow:disabled, QDockWidget QTabBar QToolButton::left-arrow:disabled { + image: url(qss:images_dark-light/left_arrow_disabled_dark.svg); +} + +QTabBar QToolButton::right-arrow:enabled, QDockWidget QTabBar QToolButton::right-arrow:enabled { + image: url(qss:images_dark-light/right_arrow_darker.svg); +} + +QTabBar QToolButton::right-arrow:disabled, QDockWidget QTabBar QToolButton::right-arrow:disabled { + image: url(qss:images_dark-light/right_arrow_disabled_dark.svg); +} + +/* QDockWiget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QDockWidget { + background-color: #f6f6f6; + border: 1px solid #cccccc; + border-radius: 1.9px; + titlebar-close-icon: url(qss:images_dark-light/transparent.svg); + titlebar-normal-icon: url(qss:images_dark-light/transparent.svg); +} + +QDockWidget::title { + /* Better size for title bar */ + padding: 3px; + spacing: 4px; + border: none; + background-color: #f6f6f6; + text-align: center; + font-weight: bold; +} + +QDockWidget::close-button { + icon-size: 10px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/close_dark.svg); +} + +QDockWidget::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); +} + +QDockWidget::close-button:pressed { + image: url(qss:images_dark-light/close_dark.svg); +} + +QDockWidget::float-button { + icon-size: 12px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/undock_dark.svg); +} + +QDockWidget::float-button:hover { + /* background-color: #a5e98a; */ + image: url(qss:images_dark-light/undock_blue.svg); +} + +QDockWidget::float-button:pressed { + image: url(qss:images_dark-light/undock_dark.svg); +} + +/* QTreeView QListView QTableView ----------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtreeview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlistview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtableview + +--------------------------------------------------------------------------- */ +QTreeView::branch { + background: transparent; +} + +QTreeView::branch:has-siblings:!adjoins-item { + border-image: url(qss:images_dark-light/branch_vline_dark.svg) 0; +} + +QTreeView::branch:has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_more_dark.svg) 0; +} + +QTreeView::branch:!has-children:!has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_end_dark.svg) 0; +} + +QTreeView::branch:closed:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_closed_dark.svg) 0; +} + +QTreeView::branch:has-children:!has-siblings:closed { + border-image: url(qss:images_dark-light/branch_end_closed_dark.svg) 0; +} + +QTreeView::branch:open:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_open_dark.svg) 0; +} + +QTreeView::branch:open:has-children:!has-siblings { + border-image: url(qss:images_dark-light/branch_end_open_dark.svg) 0; +} + +QTreeView::indicator:checked, +QListView::indicator:checked, +QTableView::indicator:checked, +QColumnView::indicator:checked { + image: url(qss:images_dark-light/checkbox_dark.svg); +} + +QTreeView::indicator:checked:hover, QTreeView::indicator:checked:focus, QTreeView::indicator:checked:pressed, +QListView::indicator:checked:hover, +QListView::indicator:checked:focus, +QListView::indicator:checked:pressed, +QTableView::indicator:checked:hover, +QTableView::indicator:checked:focus, +QTableView::indicator:checked:pressed, +QColumnView::indicator:checked:hover, +QColumnView::indicator:checked:focus, +QColumnView::indicator:checked:pressed { + image: url(qss:images_dark-light/checkbox_dark_hover.svg); +} + +QTreeView::indicator:unchecked, +QListView::indicator:unchecked, +QTableView::indicator:unchecked, +QColumnView::indicator:unchecked { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QTreeView::indicator:unchecked:hover, QTreeView::indicator:unchecked:focus, QTreeView::indicator:unchecked:pressed, +QListView::indicator:unchecked:hover, +QListView::indicator:unchecked:focus, +QListView::indicator:unchecked:pressed, +QTableView::indicator:unchecked:hover, +QTableView::indicator:unchecked:focus, +QTableView::indicator:unchecked:pressed, +QColumnView::indicator:unchecked:hover, +QColumnView::indicator:unchecked:focus, +QColumnView::indicator:unchecked:pressed { + image: url(qss:images_dark-light/checkbox_unchecked_hover_dark.svg); +} + +QTreeView::indicator:indeterminate, +QListView::indicator:indeterminate, +QTableView::indicator:indeterminate, +QColumnView::indicator:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QTreeView::indicator:indeterminate:hover, QTreeView::indicator:indeterminate:focus, QTreeView::indicator:indeterminate:pressed, +QListView::indicator:indeterminate:hover, +QListView::indicator:indeterminate:focus, +QListView::indicator:indeterminate:pressed, +QTableView::indicator:indeterminate:hover, +QTableView::indicator:indeterminate:focus, +QTableView::indicator:indeterminate:pressed, +QColumnView::indicator:indeterminate:hover, +QColumnView::indicator:indeterminate:focus, +QColumnView::indicator:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QTreeView, +QListView, +QTableView, +QColumnView { + background-color: #f6f6f6; /* background of a lot of stuff including spreadsheets.*/ + border: 0px solid #cccccc; + color: black; + gridline-color: #cccccc; + border-radius: 0px; +} + +QTableView, +QListView { + background-color: rgba(0, 0, 0, 0.050); /* background of a lot of stuff including spreadsheets.*/ +} + + +QTreeView:disabled, +QListView:disabled, +QTableView:disabled, +QColumnView:disabled { + background-color: white; + color: #515151; +} + +QTreeView:selected, +QListView:selected, +QTableView:selected, +QColumnView:selected { + background-color: #a5e98a; + color: black; +} + +QTreeView:focus, +QListView:focus, +QTableView:focus, +QColumnView:focus { + border: 1px solid #dc00fa; +} + +QTreeView::item:pressed, +QListView::item:pressed, +QTableView::item:pressed, +QColumnView::item:pressed { + background-color: #a5e98a; +} + +QTreeView::item:selected:active, +QListView::item:selected:active, +QTableView::item:selected:active, +QColumnView::item:selected:active { + background-color: #a5e98a; +} + +QTreeView::item:selected:!active, +QListView::item:selected:!active, +QTableView::item:selected:!active, +QColumnView::item:selected:!active { + color: black; + background-color: #bfc1c0; +} + +QTreeView::item:!selected:hover, +QListView::item:!selected:hover, +QTableView::item:!selected:hover, +QColumnView::item:!selected:hover { + outline: 0; + color: black; + background-color: #a5e98a; +} + +QTableCornerButton::section { + background-color: #f6f6f6; + border: 1px transparent #cccccc; + border-radius: 0px; +} + +QTableView::item { + color: black; +} +QTableView { + /*qproperty-AliasedCellBackgroundColor: #f700ff;*/ + /*qproperty-aliasBgColor: #f700ff;*/ +} + +/* QHeaderView ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qheaderview + +--------------------------------------------------------------------------- */ +QHeaderView { + background-color: #f6f6f6; + border: 1px solid #cccccc; + padding: 0; + margin: 0; + border-radius: 0px; + text-align: center; +} + +QHeaderView:disabled { + background-color: #f6f6f6; + border: 1px solid #cccccc; + color: #515151; +} + +QHeaderView::section { + background-color: #f5f5f5; + color: black; + border-radius: 0px; + text-align: center; + font-size: 13px; + font-weight: bold; + text-align: center; +} + +QHeaderView::section::horizontal { + padding-top: 0; + padding-bottom: 0; + padding-left: 10px; + padding-right: 10px; + border-left: 1px solid #cccccc; +} + +QHeaderView::section::horizontal::first, QHeaderView::section::horizontal::only-one { + border-left: 1px solid #cccccc; + padding-left: 15px; +} + +QHeaderView::section::horizontal:disabled { + color: #515151; +} + +QHeaderView::section::vertical { + padding-top: 0; + padding-bottom: 0; + padding-left: 1px; + padding-right: 1px; + border-top: 1px solid #cccccc; +} + +QHeaderView::section::vertical::first, QHeaderView::section::vertical::only-one { + border-top: 1px solid #cccccc; +} + +QHeaderView::section::vertical:disabled { + color: #515151; +} + +QHeaderView::down-arrow { + /* Those settings (border/width/height/background-color) solve bug */ + /* transparent arrow background and size */ + background-color: #455364; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/arrow_down.svg); +} + +QHeaderView::up-arrow { + background-color: #455364; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/up_arrow_dark.svg); +} + +/* QToolBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbox +used in PATH + +--------------------------------------------------------------------------- */ +QToolBox { + padding: 0px; + border: 1px solid #d4d4d4; + border-radius: 4px; + background-color: transparent; +} + +QToolBox:selected { + padding: 0px; + border: 0px solid #346792; +} + +QToolBox::tab { + background-color: #d4d4d4; + border: 0px solid #cccccc; + color: black; + background-image: url(qss:images_dark-light/down_arrow_darker.svg); + background-repeat: none; + background-position: center left; +} + +QToolBox::tab:disabled { + color: #515151; +} + +QToolBox::tab:selected { + background-color: #d4d4d4; + background-image: url(qss:images_dark-light/transparent.svg); + padding-right: 5px; + background-repeat: none; +} + +QToolBox::tab:selected:disabled { + background-color: #d4d4d4; + border-bottom: 0px solid #cccccc; + color: #515151; +} + +QToolBox::tab:!selected { + +} + +QToolBox::tab:!selected:disabled { + background-color: #f6f6f6; +} + +QToolBox::tab:hover { + background-color: #a5e98a; + } + +QToolBox QScrollArea QWidget QWidget { + padding: 0px; + border: 0px; + background-color: transparent; +} + +/* QFrame ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe +https://doc.qt.io/qt-5/qframe.html#-prop +https://doc.qt.io/qt-5/qframe.html#details +https://stackoverflow.com/questions/14581498/qt-stylesheet-for-hline-vline-color + +--------------------------------------------------------------------------- */ +/* (dot) .QFrame fix #141, #126, #123 */ +.QFrame { + border-radius: 0px; + border: 0px solid #cccccc; + background-color: #cccccc; + /* No frame */ + /* HLine */ + /* HLine */ +} + +.QFrame[frameShape="0"] { + border-radius: 1.9px; + border: 1px solid #cccccc; +} + +.QFrame[frameShape="4"] { + max-height: 1px; + border: none; + background-color: #cccccc; +} + +.QFrame[frameShape="5"] { + max-width: 1px; + border: none; + background-color: #f6f6f6; +} + +/* QSplitter -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsplitter + +--------------------------------------------------------------------------- */ +QSplitter { + background-color: #f6f6f6; + spacing: 1px; + padding: 1px; + margin: 1px; +} + +QSplitter::handle { + margin: 0px 0px; + padding: 0px; +} + +QSplitter::handle:horizontal { + background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + width: 1px; +} + +QSplitter::handle:vertical { + background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + height: 1px; +} + +QSplitter::handle:hover { + background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); + background-position: center center; + background-repeat: none; + background-color: #a5e98a; +} + +/* QDateEdit, QDateTimeEdit ----------------------------------------------- + +--------------------------------------------------------------------------- */ +QDateEdit, QDateTimeEdit { + selection-background-color: #a5e98a; + border-style: solid; + border: 1px solid #cccccc; + border-radius: 1.9px; + /* This fixes 103, 111 */ + padding-top: 2px; + /* This fixes 103, 111 */ + padding-bottom: 2px; + padding-left: 4px; + padding-right: 4px; + min-width: 10px; +} + +QDateEdit:on, QDateTimeEdit:on { + selection-background-color: #a5e98a; +} + +QDateEdit::drop-down, QDateTimeEdit::drop-down { + subcontrol-origin: padding; + subcontrol-position: top right; + width: 12px; + border-left: 1px solid #cccccc; +} + +QDateEdit::down-arrow, QDateTimeEdit::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); + height: 8px; + width: 8px; +} + +QDateEdit::down-arrow:on, QDateEdit::down-arrow:hover, QDateEdit::down-arrow:focus, QDateTimeEdit::down-arrow:on, QDateTimeEdit::down-arrow:hover, QDateTimeEdit::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_darker.svg); +} + +QDateEdit QAbstractItemView, QDateTimeEdit QAbstractItemView { + background-color: #f6f6f6; + border-radius: 2px; + border: 1px solid #cccccc; + selection-background-color: #a5e98a; +} + +/* QAbstractView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractView:hover { + border: 1px solid #a5e98a; + color: black; +} + +QAbstractView:selected { + background: #a5e98a; + color: black; +} + +/* PlotWidget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +PlotWidget { + /* Fix cut labels in plots #134 */ + padding: 0px; +} \ No newline at end of file diff --git a/src/Gui/Stylesheets/Light-modern-orange.qss b/src/Gui/Stylesheets/Light-modern-orange.qss new file mode 100644 index 0000000000..f0f4dfa2c5 --- /dev/null +++ b/src/Gui/Stylesheets/Light-modern-orange.qss @@ -0,0 +1,2582 @@ +/* +ABOUT +============================================================================================================ +Revised stylesheet based on the original from Pablo Gil Fernández made by MisterMaker + +KNOWN BUGS and TO DO +============================================================================================================ +Please, follow the link to get updated information: +https://forum.freecad.org/viewtopic.php?t=78431 + +INSTALLATION WHEN NECESSARY +============================================================================================================ +1) Place the .qss files and /images/ folder in the path that fits your OS: + OSX = /Users/[YOUR_USER_NAME]/Library/Preferences/FreeCAD/Gui/Stylesheets/ + WINDOWS = C:/[INSTALLATION_PATH]/FreeCAD/data/Gui/Stylesheets/ + LINUX = /home/[YOUR_USER_NAME]/.FreeCAD/Gui/Stylesheets/ + +============================================================================================================ +TO MODIFY USE THESE COLORS: + #e9be8a + #dc00fa + + +See Qt documentation: + + - https://doc.qt.io/qt-5/stylesheet.html + - https://doc.qt.io/qt-5/stylesheet-reference.html + - https://doc.qt.io/qt-5/stylesheet-examples.html + +--------------------------------------------------------------------------- */ + + +/* Reset elements ------------------------------------------------------------ + +Resetting everything helps to unify styles across different operating systems + +--------------------------------------------------------------------------- */ +* { + padding: 0px; + margin: 0px; + border: 0px; + border-style: none; + border-image: none; + outline: 0; +} + +/* specific reset for elements inside QToolBar */ +QToolBar * { + margin: 0px; + padding: 0px; +} + +/*hacks */ +Gui--PropertyEditor--PropertyEditor QLineEdit:read-only, +Gui--PropertyEditor--PropertyEditor QLineEdit:disabled, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:read-only, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:disabled { + color: transparent; + border-color: transparent; + background-color: transparent; + selection-color: transparent; + selection-background-color: transparent; + +} +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel, +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel:disabled { + color: transparent; + background-color: transparent; + border: none; + border-radius: 1px; + margin: 0px; + padding: 0px; +} + +Gui--PropertyEditor--PropertyEditor QSpinBox, +Gui--PropertyEditor--PropertyEditor QDoubleSpinBox, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox, +Gui--PropertyEditor--PropertyEditor QLineEdit, +Gui--PropertyEditor--PropertyEditor QComboBox { + margin-left: 0px; + margin-right: 0px; + padding-top: 0px; + padding-bottom: 0px; + +} + +/*================================================================================================== +Main window +==================================================================================================*/ +QMainWindow, +QDialog, +QDockWidget, +QToolBar { + background-color: #2b2b2b; /* main background color */ +} + +QMdiArea { + background-image: url(qss:images_dark-light/background_freecad_ExtremProDark.svg); + background-position: center center; + background-repeat: no-repeat; +} +/*navgation src/Mod/Tux/NavigationIndicatorGui.py */ +Gui--NavigationIndicatorGui--BlenderNavigationStyle { +/*QAction#a4 {*/ + qproperty-icon: url(:/icons/icons/NavigationBlender_light.svg); +} +/*===== +/* QWidget ---------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QWidget { + background-color: #f6f6f6; + border: 0px solid #cccccc; + padding: 0px; + color: black; + selection-background-color: #e9be8a; + selection-color: black; +} + +QWidget:disabled { + background-color: transparent; + color: #515151; + selection-background-color: #e9be8a; + selection-color: #515151; +} + +QWidget::item:selected { + background-color: #e9be8a; +} + + /* Causes issue with colorselector. +QWidget::item:hover:!selected { + background-color: #e9be8a; +}*/ + +/* QMainWindow ------------------------------------------------------------ + +This adjusts the splitter in the dock widget, not qsplitter +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmainwindow + +--------------------------------------------------------------------------- */ +QMainWindow::separator { + /*background-color: #3c3c3c;*/ + border: 0px solid #696968; + spacing: 0px; + padding: 1px; +} + +QMainWindow::separator:vertical:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,stop:0.2 transparent,stop:0.5 #e9be8a, stop:0.8 transparent); + /*background-color: #557bb6;*/ + image: url(qss:images_dark-light/splitter_vertical_dark.svg); +} + +QMainWindow::separator:horizontal:hover { + background-color: qlineargradient(x1:0, y1:0, x2:1, y2:0,stop:0.2 transparent,stop:0.5 #e9be8a, stop:0.8 transparent); + /*background-color: #557bb6;*/ + image: url(qss:images_dark-light/splitter_horizontal_dark.svg); +} + +QMainWindow::separator:horizontal { + width: 4px; + margin-top: 0.1px; + margin-bottom: 0.1px; + /* image: url(qss:images_dark-light/splitter_horizontal_dark.svg);*/ +} + +QMainWindow::separator:vertical { + height: 4px; + margin-left: 0.1px; + margin-right: 0.1px; + /* image: url(qss:images_dark-light/splitter_vertical_dark.svg);*/ +} + +/* QToolTip --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtooltip + +--------------------------------------------------------------------------- */ +QToolTip { + background-color: #f6f6f6; + color: black; + /* If you remove the border property, background stops working on Windows */ + border: none; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Remove opacity, fix #174 - may need to use RGBA */ +} + +/* QStatusBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qstatusbar + +--------------------------------------------------------------------------- */ +QStatusBar { + border: 0px solid #f5f5f5; + /* Fixes Spyder #9120, #9121 */ + background: #f6f6f6; + /* Fixes #205, black vertical borders separating items */ +} + +QStatusBar::item { + border: none; +} + +QStatusBar QToolTip { + background-color: #f6f6f6; + border: 1px solid #cccccc; + color: black; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Reducing transparency to read better */ + opacity: 230; +} + +QStatusBar QLabel { + /* Fixes Spyder #9120, #9121 */ + background: transparent; +} + +/* QCheckBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcheckbox + +--------------------------------------------------------------------------- */ +QCheckBox { + color: black; + padding: 0px; + outline: none; + border: 1px solid transparent; + background-color: transparent; +} + +QCheckBox:focus { + border: 1px solid #dc00fa; +} + +QCheckBox QWidget:disabled { + background-color: transparent; + color: #515151; +} + +QCheckBox::indicator { + color: black; + background-color: white; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QCheckBox::indicator:unchecked { + background-color: white; + image:url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QCheckBox::indicator:unchecked:hover, QCheckBox::indicator:unchecked:focus, QCheckBox::indicator:unchecked:pressed { + background-color: #e9be8a; + image:url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QCheckBox::indicator:unchecked:disabled { + background-color: #f5f5f5; + image:url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QCheckBox::indicator:checked { + background-color: white; + /*border: 1px solid #cccccc; /* QRadioButton has the same color */ + image:url(qss:images_dark-light/checkbox_dark.svg); +} + +QCheckBox::indicator:checked:hover, QCheckBox::indicator:checked:pressed { + background-color: #e9be8a; +} + +QCheckBox::indicator:checked:disabled { + background-color: #f5f5f5; + image: url(qss:images_dark-light/checkbox_checked_dark.svg); +} + +QCheckBox::indicator:indeterminate { + background-color: white; + border: 1px solid #cccccc; + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QCheckBox::indicator:indeterminate:disabled { + background-color: #f5f5f5; + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QCheckBox::indicator:indeterminate:hover, QCheckBox::indicator:indeterminate:pressed { + background-color: #e9be8a; /* QRadioButton has the same color */ +} + +/* QGroupBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qgroupbox + +--------------------------------------------------------------------------- */ +QGroupBox { + font-weight: bold; + border: 1px solid #cccccc; + border-radius: 1.9px; + padding: 2px; + margin-top: 10px; + margin-bottom: 4px; +} + +QGroupBox::title { + subcontrol-origin: margin; + subcontrol-position: top left; + left: 4px; + padding-left: 2px; + padding-right: 4px; + padding-top: 6px; +} + +QGroupBox::indicator { + color: black; + background-color: #f5f5f5; + border: 1px solid #cccccc; + width: 12px; + height: 12px; + border-radius:1px; +} + +QGroupBox::indicator:unchecked { + background-color: #cccccc; + border: 1px solid #cccccc; + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QGroupBox::indicator:unchecked:hover, QGroupBox::indicator:unchecked:focus, QGroupBox::indicator:unchecked:pressed { + background-color: #e9be8a; +} + +QGroupBox::indicator:unchecked:disabled { + background-color: white; + border: 1px solid #cccccc; +} + +QGroupBox::indicator:checked { + border: none; + image:url(qss:images_dark-light/checkbox_dark.svg); +} + +QGroupBox::indicator:checked:hover, QGroupBox::indicator:checked:focus, QGroupBox::indicator:checked:pressed { + background-color: #e9be8a; +} + +QGroupBox::indicator:checked:disabled { + background-color: #e9be8a; +} + +/* QRadioButton ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qradiobutton + +--------------------------------------------------------------------------- */ +QRadioButton { + background-color: transparent; + color: black; + border: none; + spacing: 4px; + padding-top: 4px; + padding-bottom: 4px; + outline: none; +} + +QRadioButton:focus { + border: 1px solid #dc00fa; +} + +QRadioButton:disabled { + background-color: #f6f6f6; + color: #515151; +} + +QRadioButton QWidget { + background-color: transparent; + color: black; + spacing: 0px; + padding: 0px; + outline: none; + border: none; +} + +QRadioButton::indicator { + background-color: #f8f8f8; + border: 1px solid #cccccc; + border-radius: 6px; + margin-left: 0px; + height: 11px; + width: 11px; +} + +QRadioButton::indicator:unchecked { + /*image:url(qss:images_dark-light/radiobutton_dark.svg);*/ +} + +QRadioButton::indicator:unchecked:hover, QRadioButton::indicator:unchecked:pressed { + background-color: #e9be8a; + border: 1px solid #e9be8a; + border-radius: 6px; +} + +QRadioButton::indicator:unchecked:disabled { + /*image:url(qss:images_dark-light/radiobutton_dark.svg);*/ + border: 1px solid #cccccc; +} + +QRadioButton::indicator:checked { + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +QRadioButton::indicator:checked:hover, QRadioButton::indicator:checked:pressed { + background-color: #e9be8a; + border: 1px solid #e9be8a; + border-radius: 6px; + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +QRadioButton::indicator:checked:disabled { + outline: none; + background-color: #cccccc; + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +/* QMenuBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenubar + +--------------------------------------------------------------------------- */ +QMenuBar { + background-color: #f8f8f8; + /*padding: 1px; + border: 0px solid rgba(255,255,255,140);*/ + color: black; + selection-background-color: #e9be8a; +} + +QMenuBar:focus { + border: 1px solid #dc00fa; +} + +QMenuBar::item { + background: transparent; + /*padding-left:5px; + padding-right: 5px; + padding-bottom: 1px; + padding-top: 1px;*/ +} + +QMenuBar::item:selected { + background: transparent; + border: 0px solid #cccccc; + background-color: #e9be8a; +} + +QMenuBar::item:pressed { + /*padding: 2px; + padding-left: 10px; + padding-right: 10px;*/ + border: 0px solid #cccccc; + background-color: #e9be8a; + color: black; + /*margin-bottom: 0px; + padding-bottom: 0px;*/ +} + +/* QMenu ------------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenu + +--------------------------------------------------------------------------- */ +QMenu { + border-bottom: 2px rgba(100,100,100,140); + border-right: 2px rgba(100,100,100,140); + color: black; + margin: 0px; + background-color: #f8f8f8; + selection-background-color: #e9be8a; +} + +QMenu::separator { + height: 2px; + background-color: #cccccc; + margin-left: 30%; + margin-right: 30%; +} + +QMenu::item { + background-color: transparent; + padding: 2px 2px; /* make room for icon at left */ + /* Reserve space for selection border */ + border: 0px transparent #cccccc; +} + +QMenu::item:selected { + color: black; + background-color: #e9be8a; +} + +QMenu::item:pressed { + background-color: #e9be8a; +} + +QMenu::icon { + margin-left: 5px; + width: 14px; + height: 14px; +} + +QMenu::indicator { + margin-left: 2px; + margin-right: 2px; + padding: 0px; + width: 12px; + height: 12px; + /* non-exclusive indicator = check box style indicator (see QActionGroup::setExclusive) */ + /* exclusive indicator = radio button style indicator (see QActionGroup::setExclusive) */ +} + +QMenu::icon:checked { /* appearance of a 'checked' icon */ + background: #e9be8a; + margin-left: -5px; + border: 5px solid #e9be8a; + position: absolute; + border-radius: 0px; +} +QMenu::indicator:non-exclusive:unchecked { + image: url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QMenu::indicator:non-exclusive:unchecked:hover, QMenu::indicator:non-exclusive:unchecked:focus, QMenu::indicator:non-exclusive:unchecked:pressed { + border: none; + background: #e9be8a; +} + +QMenu::indicator:non-exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QMenu::indicator:non-exclusive:checked { + image:url(qss:images_dark-light/checkbox_dark.svg); +} + +QMenu::indicator:non-exclusive:checked:hover, QMenu::indicator:non-exclusive:checked:focus, QMenu::indicator:non-exclusive:checked:pressed { + border: none; + background: #e9be8a; +} + +QMenu::indicator:non-exclusive:checked:disabled { + image:url(qss:images_dark-light/checkbox_checked_disabled.svg); +} + +QMenu::indicator:non-exclusive:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:disabled { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:focus, QMenu::indicator:non-exclusive:indeterminate:hover, QMenu::indicator:non-exclusive:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QMenu::indicator:exclusive:unchecked { + image: url(qss:images_dark-light/transparent.svg); +} + +QMenu::indicator:exclusive:unchecked:hover, QMenu::indicator:exclusive:unchecked:focus, QMenu::indicator:exclusive:unchecked:pressed { + border: none; + outline: none; + background: #e9be8a; + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QMenu::indicator:exclusive:checked { + border: none; + outline: none; + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +QMenu::indicator:exclusive:checked:hover, QMenu::indicator:exclusive:checked:focus, QMenu::indicator:exclusive:checked:pressed { + border: none; + outline: none; + background: #e9be8a; + image: url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QMenu::indicator:exclusive:checked:disabled { + outline: none; + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +QMenu::right-arrow { + margin: 5px; + padding-left: 12px; + image:url(qss:images_dark-light/right_arrow_darker.svg); + height: 12px; + width: 12px; + background-color: transparent; +} + +/* QAbstractItemView ------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QAbstractItemView { + alternate-background-color: #cfcfcf; + color: black; + border: 1px solid #cccccc; + border-radius: 2px; +} + +QAbstractItemView QLineEdit { + padding: 2px; +} + +/* QAbstractScrollArea ---------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QAbstractScrollArea { + background-color: transparent; + border: 0px solid #cccccc; + border-radius: 0px; + /* fix #159 */ + padding: 0px; + /* remove min-height to fix #244 */ + color: black; +} + +QAbstractScrollArea:disabled { + color: #515151; +} + +/* QScrollArea ------------------------------------------------------------ + +--------------------------------------------------------------------------- +text input field disabled!!!!*/ +QScrollArea QWidget:disabled { + background-color: #f6f6f6; +} + +/* QScrollBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qscrollbar + +--------------------------------------------------------------------------- */ +QScrollBar:horizontal { + height: 16px; + margin: 2px 16px 2px 16px; + border: 0px solid #cccccc; + border-radius: 1.9px; + background-color: #f6f6f6; +} + +QScrollBar:vertical { + background-color: #f6f6f6; + width: 16px; + margin: 16px 2px 16px 2px; + border: 0px solid #cccccc; + border-radius: 1.9px; +} + +QScrollBar::handle:horizontal { + background-color: #d4d4d4; + border: 1px solid #f6f6f6; + border-radius: 1.9px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:hover { + background-color: #e9be8a; + border: #cccccc; + border-radius: 1.9px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:focus { + border: 1px solid #dc00fa; +} + +QScrollBar::handle:vertical { + background-color: #d4d4d4; + border: 1px solid #cccccc; + min-height: 8px; + border-radius: 1.9px; +} + +QScrollBar::handle:vertical:hover { + background-color: #e9be8a; + border: #cccccc; + border-radius: 1.9px; + min-height: 8px; +} + +QScrollBar::handle:vertical:focus { + border: 1px solid #dc00fa; +} + +QScrollBar::add-line:horizontal { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/right_arrow_darker.svg); + height: 10px; + width: 7px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:horizontal:hover, QScrollBar::add-line:horizontal:on { + border-image: url(qss:images_dark-light/right_arrow_darker.svg); + background-color: #e9be8a; + height: 10px; + width: 7px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/down_arrow_darker.svg); + height: 7px; + width: 10px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical:hover, QScrollBar::add-line:vertical:on { + border-image: url(qss:images_dark-light/down_arrow_darker.svg); + background-color: #e9be8a; + height: 7px; + width: 10px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/left_arrow_darker.svg); + height: 10px; + width: 7px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal:hover, QScrollBar::sub-line:horizontal:on { + border-image: url(qss:images_dark-light/left_arrow_darker.svg); + background-color: #e9be8a; + height: 10px; + width: 8px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/up_arrow_darker.svg); + height: 8px; + width: 10px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical:hover, QScrollBar::sub-line:vertical:on { + background-color: #e9be8a; + border-image: url(qss:images_dark-light/up_arrow_darker.svg); + height: 8px; + width: 10px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::up-arrow:horizontal, QScrollBar::down-arrow:horizontal { + background: none; +} + +QScrollBar::up-arrow:vertical, QScrollBar::down-arrow:vertical { + background: none; +} + +QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal { + background: none; +} + +QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical { + background: none; +} + +/* QTextEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-specific-widgets + + +report view +--------------------------------------------------------------------------- */ +QTextEdit { + background-color: #f6f6f6; + color: black; + border-radius: 1.9px; + border: 0px solid #cccccc; +} + +QTextEdit:focus { + border: 1px solid #dc00fa; +} + +QTextEdit:selected { + background: #346792; + color: black; +} + +/* QPlainTextEdit --------------------------------------------------------- +Python +--------------------------------------------------------------------------- */ +QPlainTextEdit { + background-color: white; + color: black; + border-radius: 1.9px; + border: 0px solid #cccccc; +} + +QPlainTextEdit:focus { + border: 1px solid #dc00fa; +} + +QPlainTextEdit:selected { + background: #e9be8a; + color: black; +} + +/* QSizeGrip -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsizegrip + +--------------------------------------------------------------------------- */ +QSizeGrip { + background: transparent; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/sizegrip_dark.svg); +} + +/* QStackedWidget --------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QStackedWidget { + padding: 0px; + border: 0px solid #cccccc; +} + +/* QToolBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbar + +--------------------------------------------------------------------------- */ +QToolBar { + background-color: #f6f6f6; + border-bottom: 0px solid rgba(0,0,0,120); + padding: 1px; + font-weight: bold; + spacing: 1px; +} + +QToolBar:disabled { + /* Fixes #272 */ + background-color: #f6f6f6; +} + +QToolBar::handle:horizontal { + width: 8px; + margin: 3px 3px; + background-position: top right; + background-repeat: repeat-y; + background-image: url(qss:images_dark-light/Hmovetoolbar_dark.svg); +} + +QToolBar::handle:vertical { + height: 8px; + margin: 3px 3px; + background-position: left bottom; + background-repeat: repeat-x; + background-image: url(qss:images_dark-light/Vmovetoolbar_dark.svg); +} + +QToolBar::separator:horizontal { + width: 2px; + margin: 4px 4px; + background-color: transparent; +} + +QToolBar::separator:vertical { + height: 2px; + margin: 4px 4px; + background-color: transparent; +} + +/*The "show more" button (it can also be stylable with "QToolBarExtension" icon is not working Qproperty works but breaks when you move the toolbar see also */ +QToolButton#qt_toolbar_ext_button { +margin: 0px; +padding: 0px; +background-color: #f6f6f6; +/*background-image: url(qss:images_dark-light/more_dark.svg);*/ +background-repeat: none; +background-position: center center; +} + +QToolButton#qt_toolbar_ext_button:hover { +/* background-image: url(qss:images_dark-light/more_dark.svg);*/ +background-color: #e9be8a; +} + +QToolButton#qt_toolbar_ext_button:on { +/* background-image: url(qss:images_dark-light/more_dark.svg);*/ +border-color: #cccccc; +background-color: #e9be8a; +} + + +/* QAbstractSpinBox ------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractSpinBox, +QSpinBox { + background-color: white; + border: 1px solid #cccccc; + color: black; + /* This fixes 103, 111 */ + /* padding-top: 0px; + /* This fixes 103, 111 */ + /*padding-bottom: 0px; + /*padding-left: 4px; + /*padding-right: 4px; + border-radius: 1.9px;*/ + min-height: 1.7em; + /* min-width: 5px; removed to fix 109 */ +} + +QAbstractSpinBox:up-button { + background-color: #cccccc; + subcontrol-origin: border; + subcontrol-position: top right; + border-left: 1px solid #cccccc; + border-bottom: 1px solid #cccccc; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-bottom: -1px;*/ +} + +QAbstractSpinBox::up-arrow, QAbstractSpinBox::up-arrow:disabled, QAbstractSpinBox::up-arrow:off { + image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); + /* height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::up-arrow:hover { + /*background-color: #e9be8a;*/ + image: url(qss:images_dark-light/up_arrow_darker.svg); +} + +QAbstractSpinBox:down-button { + background-color: #cccccc; + subcontrol-origin: border; + subcontrol-position: bottom right; + border-left: 1px solid #cccccc; + border-top: 1px solid #cccccc; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-top: -1px;*/ +} + +QAbstractSpinBox::down-arrow, QAbstractSpinBox::down-arrow:disabled, QAbstractSpinBox::down-arrow:off { + image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); + /*height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::down-arrow:hover { + /*background-color: #e9be8a;*/ image:url(qss:images_dark-light/down_arrow_darker.svg); +} + +QAbstractSpinBox:hover { + /*border: 1px solid #e9be8a; + color: black;*/ +} + +QAbstractSpinBox:focus { + border: 1px solid #dc00fa; +} + +QAbstractSpinBox:selected { + background: #dc00fa; + /*color: black;*/ +} + +/* ------------------------------------------------------------------------ */ +/* DISPLAYS --------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QLabel ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe + +--------------------------------------------------------------------------- */ +QLabel { + background-color: transparent; + border: 0px solid #cccccc; + padding: 2px; + margin: 0px; + color: black; +} + +QLabel:disabled { + background-color: transparent; + border: 0px solid #cccccc; + color: #9f0d00; +} + +QLabel[haslink="true"] { + color: darkblue; +} + + +/* QTextBrowser ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QTextBrowser { + background-color: white; + border: 1px solid #cccccc; + color: black; + border-radius: 1.9px; +} + +QTextBrowser:disabled { + background-color: #f6f6f6; + border: 1px solid #cccccc; + color: #005aa4; + border-radius: 1.9px; +} + +QTextBrowser:hover, QTextBrowser:!hover, QTextBrowser:selected, QTextBrowser:pressed { + border: 1px solid #455364; +} + +/* QGraphicsView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QGraphicsView { + background-color: transparent; + border: 0px solid #455364; + color: black; + border-radius: 0px; +} + +QGraphicsView:disabled { + background-color: white; + border: 0px solid #cccccc; + color: #515151; + border-radius: 0px; +} + +QGraphicsView:hover, QGraphicsView:!hover, QGraphicsView:selected, QGraphicsView:pressed { + border: 0px solid #ff00f7; +} + +/* QCalendarWidget -------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCalendarWidget { + border: 1px solid #cccccc; + border-radius: 1.9px; +} + +QCalendarWidget:disabled { + background-color: #bfc1c0; + color: #515151; +} + +/* QLCDNumber ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QLCDNumber { + background-color: #1aff00; + color: black; +} + +QLCDNumber:disabled { + background-color: #f6f6f6; + color: #515151; +} + +/* QProgressBar ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qprogressbar + +--------------------------------------------------------------------------- */ +QProgressBar { + background-color: #515151; + border: 1px solid #cccccc; + color: black; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar:disabled { + background-color: #f8f8f8; + border: 1px solid #cccccc; + color: #515151; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar::chunk { + background-color: #e9be8a; + color: #f6f6f6; + border-radius: 1.9px; +} + +QProgressBar::chunk:disabled { + background-color: #f8f8f8; + color: #cccccc; + border-radius: 1.9px; +} + +/* ------------------------------------------------------------------------ */ +/* BUTTONS ---------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QPushButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qpushbutton + +--------------------------------------------------------------------------- */ +QPushButton { + background-color: #d4d4d4; + color: black; + border-radius: 2px; + padding: 2px; + outline: none; + border: none; +} + +QPushButton:disabled { + background-color: #f6f6f6; + color: #515151; + border-radius: 2px; + padding: 2px; +} + +QPushButton:checked { + background-color: #e9be8a; + border-radius: 2px; + padding: 2px; + outline: none; +} + +QPushButton:checked:disabled { + background-color: #e9be8a; + color: #f5f5f5; + border-radius: 2px; + padding: 2px; + outline: none; +} + +QPushButton:checked:selected { + background: #e9be8a; +} + +QPushButton:hover { + background-color: #e9be8a; + color: black; +} + +QPushButton:pressed { + background-color: #e9be8a; +} + +QPushButton:selected { + background: #dc00fa; + color: black; +} + +QPushButton::menu-indicator { + subcontrol-origin: padding; + subcontrol-position: bottom right; + bottom: 4px; +} + +QDialogButtonBox QPushButton { + /* Issue # 194 # 248 - Special case of QPushButton inside dialogs, for better UI */ + min-width: 80px; +} + +/* QToolButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbutton + +--------------------------------------------------------------------------- */ +QToolButton { + background-color: transparent; + color: black; + border-radius: 1px; + padding: 0px; + outline: none; + border: none; + /* The subcontrols below are used only in the DelayedPopup mode */ + /* The subcontrols below are used only in the MenuButtonPopup mode */ + /* The subcontrol below is used only in the InstantPopup or DelayedPopup mode */ +} + +QToolButton:disabled { + background-color: #f8f8f8; + color: #515151; + border-radius: 1px; + padding: 0px; +} + +QToolButton:checked { + background-color: #e9be8a; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:disabled { + background-color: #e9be8a; + color: #515151; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:hover { + background-color: #e9be8a; + color: black; +} + +QToolButton:checked:pressed { + background-color: #e9be8a; +} + +QToolButton:checked:selected { + background: #dc00fa; + color: black; +} + +QToolButton:hover { + background-color: #e9be8a; + color: black; +} + +QToolButton:pressed { + background-color: #dc00fa; +} + +QToolButton:selected { + background: #e9be8a; + color: black; +} + +QToolButton[popupMode="0"] { + /* Only for DelayedPopup */ + padding-right: 20px; +} + +QToolButton[popupMode="1"] { + /* Only for MenuButtonPopup */ + padding-right: 20px; +} +QToolButton[popupMode="0"]::menu-button { + border: none; +} + +QToolButton[popupMode="0"]::menu-button:hover { + border: none; + border-left: 2px solid #fe0000; + border-radius: 0px; +} +QToolButton[popupMode="1"]::menu-button { + border: none; +} + +QToolButton[popupMode="1"]::menu-button:hover { + border: none; + border-left: 2px solid #e5ff00; + border-radius: 0px; +} + +QToolButton[popupMode="2"] { + /* Only for InstantPopup */ + padding-right: 20px; +} + +QToolButton::menu-button { + border-bottom: 0px solid #f6f6f6; + border-radius: 2px; + /* 16px width + 4px for border = 20px allocated above */ + width: 1.6ex; + padding: 2px; + border-radius: 2px; + border: 0px #000000; +} + +QToolButton::menu-button:hover { + /* background: rgba(0, 0, 0, 0.5);*/ + +} + +QToolButton::menu-button:checked:hover { + /* background: rgba(0, 0, 0, 0.5);*/ +} + +QToolButton::menu-indicator { + /* Exclude a shift for better image */ + subcontrol-position: right bottom; + /* Shift it a bit */ +} + +QToolButton::menu-arrow { + image: url(qss:images_dark-light/more_arrow_dark.svg); + width: 1.5ex; + height: 1.5ex; + subcontrol-position: right bottom; + background: transparent; +} +QToolButton::menu-arrow:open { + subcontrol-position: right bottom; + image: url(qss:images_dark-light/more_arrow_dark.svg); +} +QToolButton::menu-arrow:hover { + image: url(qss:images_dark-light/more_arrow_dark.svg); + background-color: rgba(0, 0, 0, 0.498); + border: 1px solid rgba(0, 0, 0, 0.498); +} + +/* QCommandLinkButton ----------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCommandLinkButton { + background-color: transparent; + border: 1px solid #cccccc; + color: black; + border-radius: 1.9px; + padding: 0px; + margin: 0px; +} + +QCommandLinkButton:disabled { + background-color: transparent; + color: #515151; +} + +/* ------------------------------------------------------------------------ */ +/* INPUTS - NO FIELDS ----------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QComboBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QComboBox { + border: 1px solid #cccccc; + background: white; + border-radius: 2px; + selection-background-color: #e9be8a; + padding-left: 2px; + padding-right: 2px; + /* padding-right = 36; 4 + 16*2 See scrollbar size */ + /* changed to 4px to fix #239 */ + /* Fixes #103, #111 */ + min-height: 1.5em; + /* padding-top: 2px; removed to fix #132 */ + /* padding-bottom: 2px; removed to fix #132 */ + /* min-width: 75px; removed to fix #109 */ + /* Needed to remove indicator - fix #132 */ +} +QComboBox:editable { + background: white; +} +QComboBox QAbstractItemView { + border: 0px solid #cccccc; + border-radius: 0px; + background-color: white; + selection-background-color: #e9be8a; +} + +QComboBox QAbstractItemView:hover { + background-color:white; + color: black; +} + +QComboBox QAbstractItemView:selected { + background: #e9be8a; + color: black; +} + +QComboBox QAbstractItemView:alternate { + background: #f5f5f5; +} + +QComboBox:disabled { + background-color: #cccccc; + color: #515151; +} + +QComboBox:hover { + /*background-color: #e9be8a;*/ + border: 1px solid #e9be8a; +} + +QComboBox:focus { + border: 1px solid #dc00fa; +} + +QComboBox:on { + selection-background-color: #dc00fa; +} + +QComboBox::indicator { + border: none; + border-radius: 0px; + background-color: transparent; + selection-background-color: transparent; + color: transparent; + selection-color: #e9be8a; + /* Needed to remove indicator - fix #132 */ +} + +QComboBox::indicator:alternate { + background: #cccccc; +} + +QComboBox::item { + /* Remove to fix #282, #285 and MR #288*/ + /*&:checked { + font-weight: bold; + } + + &:selected { + border: 0px solid transparent; + } + */ +} + +QComboBox::item:alternate { + background: #f5f5f5; +} + +QComboBox::drop-down { + subcontrol-origin: padding; + background-color: #d4d4d4; + subcontrol-position: top right; + width: 14px; + border-left: 1px solid #cccccc; +} +QComboBox::drop-down:hover { + background-color: #e9be8a; +} + +QComboBox::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); + height: 10px; + width: 10px; +} + +QComboBox::down-arrow:on, QComboBox::down-arrow:hover, QComboBox::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_darker.svg); +} + + +/*================================================================================================== +Tasks panel (custom FreeCAD class) +==================================================================================================*/ +Gui--PropertyEditor--PropertyEditor { + qproperty-groupTextColor: black; + qproperty-groupBackground: #f5f5f5; + border: 0px solid #cccccc; + +} + +/* Action group */ +QFrame[class="panel"] { +background-color: transparent; /* temporal (transparent background) */ + +} + +QSint--ActionGroup { +padding: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +margin: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +} + +/* Separator line */ +QSint--ActionGroup QFrame[height="1"], +QSint--ActionGroup QFrame[height="2"], +QSint--ActionGroup QFrame[height="3"], +QSint--ActionGroup QFrame[width="1"], +QSint--ActionGroup QFrame[width="2"], +QSint--ActionGroup QFrame[width="3"] { +border-color: rgba(0,0,0,60); +} + +/* Panel header */ +QSint--ActionGroup QFrame[class="header"] { +border-top: 1px solid #cccccc; +border-left: 1px solid #cccccc; +border-right: 1px solid #cccccc; +background-color: #d4d4d4; /* Task Panel Header background color */ +border-top-left-radius: 3px; +border-top-right-radius: 3px; +border-bottom-left-radius: 0px; +border-bottom-right-radius: 0px; +margin: 0px; +padding: 0px; +} + +QSint--ActionGroup QFrame[class="header"]:hover { +background-color: #e9be8a; +} + +QSint--ActionGroup QToolButton[class="header"] { +color: black; /* Task Panel Header text color */ +text-align: left; +font-weight: bold; +border: none; +margin: 0px; +padding: 0px; +} + +QSint--ActionGroup QFrame[class="header"] QLabel { +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_darker.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; +} + +QSint--ActionGroup QFrame[class="header"] QLabel:hover { +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_darker.svg); +} + +QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"] { +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_darker.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; +} + +QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"]:hover { +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_darker.svg); +} + +QSint--ActionGroup QFrame[class="content"] { +background-color: transparent; /* Task Panel background color */ +margin: 0px; +padding: 0px; +border-bottom: 1px solid #cccccc; +border-left: 1px solid #cccccc; +border-right: 1px solid #cccccc; +border-top-left-radius: 0px; +border-top-right-radius: 0px; +border-bottom-left-radius: 3px; +border-bottom-right-radius: 3px; +} + +QSint--ActionGroup QFrame[class="content"] > QWidget { +background-color: #f6f6f6; /* Task Panel background color */ +} + +/* Fixs for tabs inside Task Panel */ +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:top:selected { +border-bottom-color: #e9be8a; /* same as Task Panel background color */ +} + +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:bottom:selected { +border-top-color: #e9be8a; /* same as Task Panel background color */ +} + +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:right:selected { +border-right-color: #e9be8a; /* same as Task Panel background color */ +} + +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:left:selected { +border-left-color: #e9be8a; /* same as Task Panel background color */ +} + +/* Fix for buttons with icons that showed cropped (still not happy with result) */ +QSint--ActionGroup QFrame[class="content"] > QWidget > QPushButton { +padding: 2px; /* bigger padding crops text and icons... */ +margin: 0px; +} + +/* Fix for lists inside task panels */ /* sketcher constraints list */ +QSint--ActionGroup QFrame[class="content"] QTreeView, +QSint--ActionGroup QFrame[class="content"] QListView, +QSint--ActionGroup QFrame[class="content"] QTableView { +color: black; +background-color: white; +} + + +/* found inside Part Design Workbench and "make a draft on a face" Task panel options */ +QSint--ActionGroup QFrame[class="content"] QToolButton { + color: black; + text-align: center; + background-color: #d4d4d4; + border: 0px solid #adadad; + padding: 1px 1px; /* different than regular QPushButton */ + margin: 0px; /* different than regular QPushButton */ + min-height: 16px; /* same as QTabBar QPushButton min-width */ + border-radius: 1px; +} + +QSint--ActionGroup QFrame[class="content"] QToolButton:hover{ + background: #e9be8a; + border: 1px solid #e9be8a; +} +QSint--ActionGroup QFrame[class="content"] QToolButton:focus { + border: 1px solid #dc00fa; +} + +QSint--ActionGroup QFrame[class="content"] QToolButton:disabled, +QSint--ActionGroup QFrame[class="content"] QToolButton:disabled:checked { + color: #455364; + background-color: #cccccc; +} + +QSint--ActionGroup QFrame[class="content"] QToolButton:pressed { + background: #e9be8a; + border: 1px solid #e9be8a; +} + +/* QSlider ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qslider + +--------------------------------------------------------------------------- */ +QSlider:disabled { + background: #f6f6f6; +} + +QSlider:focus { + border: 1px solid #dc00fa; +} + +QSlider::groove:horizontal { + background: #f6f6f6; + border: 1px solid #cccccc; + height: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::groove:vertical { + background: #e9be8a; + border: 1px solid #cccccc; + width: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::add-page:vertical { + background: #e9be8a; + border: 1px solid #cccccc; + width: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::add-page:vertical :disabled { + background: #cccccc; +} + +QSlider::sub-page:horizontal { + background: #e9be8a; + border: 1px solid #0073ff; + height: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::sub-page:horizontal:disabled { + background: #cccccc; +} + +QSlider::handle:horizontal { + background: #bfc1c0; + border: 1px solid #f6f6f6; + width: 8px; + height: 8px; + margin: -8px 0px; + border-radius: 1.9px; +} + +QSlider::handle:horizontal:hover { + background: #e9be8a; + border: 1px solid #e9be8a; +} + +QSlider::handle:horizontal:focus { + border: 1px solid #dc00fa; +} + +QSlider::handle:vertical { + background: #515151; + border: 1px solid #455364; + width: 8px; + height: 8px; + margin: 0 -8px; + border-radius: 1.9px; +} + +QSlider::handle:vertical:hover { + background: #e9be8a; + border: 2px solid #e9be8a; +} + +QSlider::handle:vertical:focus { + border: 1px solid #dc00fa; +} + +/* QLineEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlineedit + +--------------------------------------------------------------------------- */ +QLineEdit { + background-color: white; + padding-top: 2px; + /* This QLineEdit fix 103, 111 */ + padding-bottom: 2px; + /* This QLineEdit fix 103, 111 */ + padding-left: 4px; + padding-right: 4px; + border-style: solid; + border: 1px solid #cccccc; + border-radius: 2px; + color: black; +} + +QLineEdit:disabled { + background-color: #cccccc; + color: #454545; +} + +QLineEdit:hover { + border: 1px solid #e9be8a; + color: black; +} + +QLineEdit:focus { + border: 2px solid #dc00fa; +} + +QLineEdit:selected { + background-color: #e9be8a; + color: black; +} + +/* QTabWiget -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabWidget { + padding: 2px; + selection-background-color: #e9be8a; +} + +QTabWidget QWidget { + /* Fixes #189 */ + border-radius: 1.9px; +} + +QTabWidget::pane { + border: 0px solid #8c00ffa1; + border-radius: 1.9px; + margin: 0px; + /* Fixes double border inside pane with pyqt5 */ + padding: 0px; +} + +QTabWidget::pane:selected { + background-color: #e9be8a; + border: 1px solid #346792; +} +/* QTabBar ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabBar, QDockWidget QTabBar { + qproperty-drawBase: 0; + border-radius: 2px; + margin: 0px; + padding: 2px; + border: 0; + alignment: center; + /* left: 5px; move to the right by 5px - removed for fix */ +} + +QTabBar::close-button, QDockWidget QTabBar::close-button { + border: 0; + margin: 0; + padding: 1px; + image: url(qss:images_dark-light/close_dark.svg); +} + +QTabBar::close-button:hover, QDockWidget QTabBar::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); + /*background-color: rgba(255, 0, 0, 0.392);*/ +} + +QTabBar::close-button:pressed, QDockWidget QTabBar::close-button:pressed { + image: url(qss:images_dark-light/close_dark.svg); +} + +QTabBar::tab, QDockWidget QTabBar::tab { + /* !selected and disabled ----------------------------------------- */ + /* selected ------------------------------------------------------- */ +} + +QTabBar::tab:top:selected:disabled, QDockWidget QTabBar::tab:top:selected:disabled { + border-bottom: 3px solid #d4d4d4; + color: #515151; + background-color: #d4d4d4; +} + +QTabBar::tab:bottom:selected:disabled, QDockWidget QTabBar::tab:bottom:selected:disabled { + border-top: 3px solid #d4d4d4; + color: #515151; + background-color: #d4d4d4; +} + +QTabBar::tab:left:selected:disabled, QDockWidget QTabBar::tab:left:selected:disabled { + border-right: 3px solid #d4d4d4; + color: #515151; + background-color: #d4d4d4; +} + +QTabBar::tab:right:selected:disabled, QDockWidget QTabBar::tab:right:selected:disabled { + border-left: 3px solid #d4d4d4; + color: #515151; + background-color: #d4d4d4; +} + +QTabBar::tab:top:!selected:disabled, QDockWidget QTabBar::tab:top:!selected:disabled { + border-bottom: 3px solid #d4d4d4; + color: #515151; + background-color: #d4d4d4; +} + +QTabBar::tab:bottom:!selected:disabled, QDockWidget QTabBar::tab:bottom:!selected:disabled { + border-top: 3px solid #d4d4d4; + color: #515151; + background-color: #d4d4d4; +} + +QTabBar::tab:left:!selected:disabled, QDockWidget QTabBar::tab:left:!selected:disabled { + border-right: 3px solid #d4d4d4; + color: #515151; + background-color: #d4d4d4; +} + +QTabBar::tab:right:!selected:disabled, QDockWidget QTabBar::tab:right:!selected:disabled { + border-left: 3px solid #d4d4d4; + color: #515151; + background-color: #d4d4d4; +} + +QTabBar::tab:top:!selected, QDockWidget QTabBar::tab:top:!selected { + border-bottom: 2px solid #d4d4d4; + margin-top: 2px; +} + +QTabBar::tab:bottom:!selected, QDockWidget QTabBar::tab:bottom:!selected { + border-top: 2px solid #d4d4d4; + margin-bottom: 2px; +} + +QTabBar::tab:left:!selected, QDockWidget QTabBar::tab:left:!selected { + border-left: 2px solid #d4d4d4; + margin-right: 2px; +} + +QTabBar::tab:right:!selected, QDockWidget QTabBar::tab:right:!selected { + border-right: 2px solid #d4d4d4; + margin-left: 2px; +} + +QTabBar::tab:top, QDockWidget QTabBar::tab:top { + background-color: #d4d4d4; + margin-left: 3px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + min-width: 5px; + border: 0px solid #d4d4d4; + border-radius: 4px; +} + +QTabBar::tab:top:selected, QDockWidget QTabBar::tab:top:selected { + background-color: #f6f6f6; + /*border: 1px solid #dc00fa; + border-radius: 4px; + margin-left: 4px; + margin-right: 4px; + padding-left: 3px; + padding-right: 3px;*/ +} + +QTabBar::tab:top:!selected:hover, QDockWidget QTabBar::tab:top:!selected:hover { + /*border: 1px solid #e9be8a;*/ + border: 0px solid #e9be8a; + background-color: #e9be8a; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; +} + +QTabBar::tab:bottom, QDockWidget QTabBar::tab:bottom { + border: 0px solid #d4d4d4; + background-color: #d4d4d4; + margin-left: 3px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + border-radius: 4px; + min-width: 5px; +} + +QTabBar::tab:bottom:selected, QDockWidget QTabBar::tab:bottom:selected { + background-color: #f5f5f5; + /*border: 1px solid #dc00fa; + border-radius: 4px; + margin-left: 4px; + margin-right: 4px; + padding-left: 3px; + padding-right: 3px;*/ +} + +QTabBar::tab:bottom:!selected:hover, QDockWidget QTabBar::tab:bottom:!selected:hover { +/*border: 1px solid #e9be8a;*/ + border: 0px solid #e9be8a; + background-color: #e9be8a; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; +} + +QTabBar::tab:left, QDockWidget QTabBar::tab:left { + background-color: #f5f5f5; + margin-top: 2px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + border-radius: 4px; + min-height: 5px; +} + +QTabBar::tab:left:selected, QDockWidget QTabBar::tab:left:selected { + background-color: #f5f5f5; + border: 0px solid #dc00fa; +} + +QTabBar::tab:left:!selected:hover, QDockWidget QTabBar::tab:left:!selected:hover { + border: 0px solid #e9be8a; + background-color: #e9be8a; + /* Fixes different behavior #271 */ + margin-right: 0px; + padding-right: -1px; +} + +QTabBar::tab:right, QDockWidget QTabBar::tab:right { + background-color: #f5f5f5; + margin-top: 2px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + min-height: 5px; + border: 10px; +} + +QTabBar::tab:right:selected, QDockWidget QTabBar::tab:right:selected { + background-color: #f5f5f5; + border: 0px solid #dc00fa; +} + +QTabBar::tab:right:!selected:hover, QDockWidget QTabBar::tab:right:!selected:hover { + border: 0px solid #e9be8a; + background-color: #e9be8a; + /* Fixes different behavior #271 */ + margin-left: 0px; + padding-left: 0px; +} + +QTabBar QToolButton, QDockWidget QTabBar QToolButton { + /* Fixes #136 */ + background-color: #f5f5f5; + height: 12px; + width: 12px; +} + +QTabBar QToolButton:pressed, QDockWidget QTabBar QToolButton:pressed { + border: 0px solid #e9be8a; + background-color: #e9be8a; +} + +QTabBar QToolButton:pressed:hover, QDockWidget QTabBar QToolButton:pressed:hover { + border: 0px solid #e9be8a; + background-color: #e9be8a; +} + +QTabBar QToolButton::left-arrow:enabled, QDockWidget QTabBar QToolButton::left-arrow:enabled { + image: url(qss:images_dark-light/left_arrow_darker.svg); +} + +QTabBar QToolButton::left-arrow:disabled, QDockWidget QTabBar QToolButton::left-arrow:disabled { + image: url(qss:images_dark-light/left_arrow_disabled_dark.svg); +} + +QTabBar QToolButton::right-arrow:enabled, QDockWidget QTabBar QToolButton::right-arrow:enabled { + image: url(qss:images_dark-light/right_arrow_darker.svg); +} + +QTabBar QToolButton::right-arrow:disabled, QDockWidget QTabBar QToolButton::right-arrow:disabled { + image: url(qss:images_dark-light/right_arrow_disabled_dark.svg); +} + +/* QDockWiget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QDockWidget { + background-color: #f6f6f6; + border: 1px solid #cccccc; + border-radius: 1.9px; + titlebar-close-icon: url(qss:images_dark-light/transparent.svg); + titlebar-normal-icon: url(qss:images_dark-light/transparent.svg); +} + +QDockWidget::title { + /* Better size for title bar */ + padding: 3px; + spacing: 4px; + border: none; + background-color: #f6f6f6; + text-align: center; + font-weight: bold; +} + +QDockWidget::close-button { + icon-size: 10px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/close_dark.svg); +} + +QDockWidget::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); +} + +QDockWidget::close-button:pressed { + image: url(qss:images_dark-light/close_dark.svg); +} + +QDockWidget::float-button { + icon-size: 12px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/undock_dark.svg); +} + +QDockWidget::float-button:hover { + /* background-color: #e9be8a; */ + image: url(qss:images_dark-light/undock_blue.svg); +} + +QDockWidget::float-button:pressed { + image: url(qss:images_dark-light/undock_dark.svg); +} + +/* QTreeView QListView QTableView ----------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtreeview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlistview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtableview + +--------------------------------------------------------------------------- */ +QTreeView::branch { + background: transparent; +} + +QTreeView::branch:has-siblings:!adjoins-item { + border-image: url(qss:images_dark-light/branch_vline_dark.svg) 0; +} + +QTreeView::branch:has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_more_dark.svg) 0; +} + +QTreeView::branch:!has-children:!has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_end_dark.svg) 0; +} + +QTreeView::branch:closed:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_closed_dark.svg) 0; +} + +QTreeView::branch:has-children:!has-siblings:closed { + border-image: url(qss:images_dark-light/branch_end_closed_dark.svg) 0; +} + +QTreeView::branch:open:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_open_dark.svg) 0; +} + +QTreeView::branch:open:has-children:!has-siblings { + border-image: url(qss:images_dark-light/branch_end_open_dark.svg) 0; +} + +QTreeView::indicator:checked, +QListView::indicator:checked, +QTableView::indicator:checked, +QColumnView::indicator:checked { + image: url(qss:images_dark-light/checkbox_dark.svg); +} + +QTreeView::indicator:checked:hover, QTreeView::indicator:checked:focus, QTreeView::indicator:checked:pressed, +QListView::indicator:checked:hover, +QListView::indicator:checked:focus, +QListView::indicator:checked:pressed, +QTableView::indicator:checked:hover, +QTableView::indicator:checked:focus, +QTableView::indicator:checked:pressed, +QColumnView::indicator:checked:hover, +QColumnView::indicator:checked:focus, +QColumnView::indicator:checked:pressed { + image: url(qss:images_dark-light/checkbox_dark_hover.svg); +} + +QTreeView::indicator:unchecked, +QListView::indicator:unchecked, +QTableView::indicator:unchecked, +QColumnView::indicator:unchecked { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QTreeView::indicator:unchecked:hover, QTreeView::indicator:unchecked:focus, QTreeView::indicator:unchecked:pressed, +QListView::indicator:unchecked:hover, +QListView::indicator:unchecked:focus, +QListView::indicator:unchecked:pressed, +QTableView::indicator:unchecked:hover, +QTableView::indicator:unchecked:focus, +QTableView::indicator:unchecked:pressed, +QColumnView::indicator:unchecked:hover, +QColumnView::indicator:unchecked:focus, +QColumnView::indicator:unchecked:pressed { + image: url(qss:images_dark-light/checkbox_unchecked_hover_dark.svg); +} + +QTreeView::indicator:indeterminate, +QListView::indicator:indeterminate, +QTableView::indicator:indeterminate, +QColumnView::indicator:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QTreeView::indicator:indeterminate:hover, QTreeView::indicator:indeterminate:focus, QTreeView::indicator:indeterminate:pressed, +QListView::indicator:indeterminate:hover, +QListView::indicator:indeterminate:focus, +QListView::indicator:indeterminate:pressed, +QTableView::indicator:indeterminate:hover, +QTableView::indicator:indeterminate:focus, +QTableView::indicator:indeterminate:pressed, +QColumnView::indicator:indeterminate:hover, +QColumnView::indicator:indeterminate:focus, +QColumnView::indicator:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QTreeView, +QListView, +QTableView, +QColumnView { + background-color: #f6f6f6; /* background of a lot of stuff including spreadsheets.*/ + border: 0px solid #cccccc; + color: black; + gridline-color: #cccccc; + border-radius: 0px; +} + +QTableView, +QListView { + background-color: rgba(0, 0, 0, 0.050); /* background of a lot of stuff including spreadsheets.*/ +} + + +QTreeView:disabled, +QListView:disabled, +QTableView:disabled, +QColumnView:disabled { + background-color: white; + color: #515151; +} + +QTreeView:selected, +QListView:selected, +QTableView:selected, +QColumnView:selected { + background-color: #e9be8a; + color: black; +} + +QTreeView:focus, +QListView:focus, +QTableView:focus, +QColumnView:focus { + border: 1px solid #dc00fa; +} + +QTreeView::item:pressed, +QListView::item:pressed, +QTableView::item:pressed, +QColumnView::item:pressed { + background-color: #e9be8a; +} + +QTreeView::item:selected:active, +QListView::item:selected:active, +QTableView::item:selected:active, +QColumnView::item:selected:active { + background-color: #e9be8a; +} + +QTreeView::item:selected:!active, +QListView::item:selected:!active, +QTableView::item:selected:!active, +QColumnView::item:selected:!active { + color: black; + background-color: #bfc1c0; +} + +QTreeView::item:!selected:hover, +QListView::item:!selected:hover, +QTableView::item:!selected:hover, +QColumnView::item:!selected:hover { + outline: 0; + color: black; + background-color: #e9be8a; +} + +QTableCornerButton::section { + background-color: #f6f6f6; + border: 1px transparent #cccccc; + border-radius: 0px; +} + +QTableView::item { + color: black; +} +QTableView { + /*qproperty-AliasedCellBackgroundColor: #f700ff;*/ + /*qproperty-aliasBgColor: #f700ff;*/ +} + +/* QHeaderView ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qheaderview + +--------------------------------------------------------------------------- */ +QHeaderView { + background-color: #f6f6f6; + border: 1px solid #cccccc; + padding: 0; + margin: 0; + border-radius: 0px; + text-align: center; +} + +QHeaderView:disabled { + background-color: #f6f6f6; + border: 1px solid #cccccc; + color: #515151; +} + +QHeaderView::section { + background-color: #f5f5f5; + color: black; + border-radius: 0px; + text-align: center; + font-size: 13px; + font-weight: bold; + text-align: center; +} + +QHeaderView::section::horizontal { + padding-top: 0; + padding-bottom: 0; + padding-left: 10px; + padding-right: 10px; + border-left: 1px solid #cccccc; +} + +QHeaderView::section::horizontal::first, QHeaderView::section::horizontal::only-one { + border-left: 1px solid #cccccc; + padding-left: 15px; +} + +QHeaderView::section::horizontal:disabled { + color: #515151; +} + +QHeaderView::section::vertical { + padding-top: 0; + padding-bottom: 0; + padding-left: 1px; + padding-right: 1px; + border-top: 1px solid #cccccc; +} + +QHeaderView::section::vertical::first, QHeaderView::section::vertical::only-one { + border-top: 1px solid #cccccc; +} + +QHeaderView::section::vertical:disabled { + color: #515151; +} + +QHeaderView::down-arrow { + /* Those settings (border/width/height/background-color) solve bug */ + /* transparent arrow background and size */ + background-color: #455364; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/arrow_down.svg); +} + +QHeaderView::up-arrow { + background-color: #455364; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/up_arrow_dark.svg); +} + +/* QToolBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbox +used in PATH + +--------------------------------------------------------------------------- */ +QToolBox { + padding: 0px; + border: 1px solid #d4d4d4; + border-radius: 4px; + background-color: transparent; +} + +QToolBox:selected { + padding: 0px; + border: 0px solid #346792; +} + +QToolBox::tab { + background-color: #d4d4d4; + border: 0px solid #cccccc; + color: black; + background-image: url(qss:images_dark-light/down_arrow_darker.svg); + background-repeat: none; + background-position: center left; +} + +QToolBox::tab:disabled { + color: #515151; +} + +QToolBox::tab:selected { + background-color: #d4d4d4; + background-image: url(qss:images_dark-light/transparent.svg); + padding-right: 5px; + background-repeat: none; +} + +QToolBox::tab:selected:disabled { + background-color: #d4d4d4; + border-bottom: 0px solid #cccccc; + color: #515151; +} + +QToolBox::tab:!selected { + +} + +QToolBox::tab:!selected:disabled { + background-color: #f6f6f6; +} + +QToolBox::tab:hover { + background-color: #e9be8a; + } + +QToolBox QScrollArea QWidget QWidget { + padding: 0px; + border: 0px; + background-color: transparent; +} + +/* QFrame ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe +https://doc.qt.io/qt-5/qframe.html#-prop +https://doc.qt.io/qt-5/qframe.html#details +https://stackoverflow.com/questions/14581498/qt-stylesheet-for-hline-vline-color + +--------------------------------------------------------------------------- */ +/* (dot) .QFrame fix #141, #126, #123 */ +.QFrame { + border-radius: 0px; + border: 0px solid #cccccc; + background-color: #cccccc; + /* No frame */ + /* HLine */ + /* HLine */ +} + +.QFrame[frameShape="0"] { + border-radius: 1.9px; + border: 1px solid #cccccc; +} + +.QFrame[frameShape="4"] { + max-height: 1px; + border: none; + background-color: #cccccc; +} + +.QFrame[frameShape="5"] { + max-width: 1px; + border: none; + background-color: #f6f6f6; +} + +/* QSplitter -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsplitter + +--------------------------------------------------------------------------- */ +QSplitter { + background-color: #f6f6f6; + spacing: 1px; + padding: 1px; + margin: 1px; +} + +QSplitter::handle { + margin: 0px 0px; + padding: 0px; +} + +QSplitter::handle:horizontal { + background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + width: 1px; +} + +QSplitter::handle:vertical { + background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + height: 1px; +} + +QSplitter::handle:hover { + background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); + background-position: center center; + background-repeat: none; + background-color: #e9be8a; +} + +/* QDateEdit, QDateTimeEdit ----------------------------------------------- + +--------------------------------------------------------------------------- */ +QDateEdit, QDateTimeEdit { + selection-background-color: #e9be8a; + border-style: solid; + border: 1px solid #cccccc; + border-radius: 1.9px; + /* This fixes 103, 111 */ + padding-top: 2px; + /* This fixes 103, 111 */ + padding-bottom: 2px; + padding-left: 4px; + padding-right: 4px; + min-width: 10px; +} + +QDateEdit:on, QDateTimeEdit:on { + selection-background-color: #e9be8a; +} + +QDateEdit::drop-down, QDateTimeEdit::drop-down { + subcontrol-origin: padding; + subcontrol-position: top right; + width: 12px; + border-left: 1px solid #cccccc; +} + +QDateEdit::down-arrow, QDateTimeEdit::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); + height: 8px; + width: 8px; +} + +QDateEdit::down-arrow:on, QDateEdit::down-arrow:hover, QDateEdit::down-arrow:focus, QDateTimeEdit::down-arrow:on, QDateTimeEdit::down-arrow:hover, QDateTimeEdit::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_darker.svg); +} + +QDateEdit QAbstractItemView, QDateTimeEdit QAbstractItemView { + background-color: #f6f6f6; + border-radius: 2px; + border: 1px solid #cccccc; + selection-background-color: #e9be8a; +} + +/* QAbstractView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractView:hover { + border: 1px solid #e9be8a; + color: black; +} + +QAbstractView:selected { + background: #e9be8a; + color: black; +} + +/* PlotWidget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +PlotWidget { + /* Fix cut labels in plots #134 */ + padding: 0px; +} \ No newline at end of file diff --git a/src/Gui/Stylesheets/Light-modern-pink.qss b/src/Gui/Stylesheets/Light-modern-pink.qss new file mode 100644 index 0000000000..f08a408e63 --- /dev/null +++ b/src/Gui/Stylesheets/Light-modern-pink.qss @@ -0,0 +1,2606 @@ +/* +ABOUT +============================================================================================================ +Revised stylesheet based on the original from Pablo Gil Fernández made by MisterMaker + +KNOWN BUGS and TO DO +============================================================================================================ +Please, follow the link to get updated information: +https://forum.freecad.org/viewtopic.php?t=78431 + +INSTALLATION WHEN NECESSARY +============================================================================================================ +1) Place the .qss files and /images/ folder in the path that fits your OS: + OSX = /Users/[YOUR_USER_NAME]/Library/Preferences/FreeCAD/Gui/Stylesheets/ + WINDOWS = C:/[INSTALLATION_PATH]/FreeCAD/data/Gui/Stylesheets/ + LINUX = /home/[YOUR_USER_NAME]/.FreeCAD/Gui/Stylesheets/ + +============================================================================================================ +TO MODIFY USE THESE COLORS: + #e98ad8 + #008efa + + + +See Qt documentation: + + - https://doc.qt.io/qt-5/stylesheet.html + - https://doc.qt.io/qt-5/stylesheet-reference.html + - https://doc.qt.io/qt-5/stylesheet-examples.html + +--------------------------------------------------------------------------- */ + + +/* Reset elements ------------------------------------------------------------ + +Resetting everything helps to unify styles across different operating systems + +--------------------------------------------------------------------------- */ +* { + padding: 0px; + margin: 0px; + border: 0px; + border-style: none; + border-image: none; + outline: 0; +} + +/* specific reset for elements inside QToolBar */ +QToolBar * { + margin: 0px; + padding: 0px; +} + +/*hacks */ +Gui--PropertyEditor--PropertyEditor QLineEdit:read-only, +Gui--PropertyEditor--PropertyEditor QLineEdit:disabled, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:read-only, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:disabled { + color: transparent; + border-color: transparent; + background-color: transparent; + selection-color: transparent; + selection-background-color: transparent; + +} +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel, +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel:disabled { + color: transparent; + background-color: transparent; + border: none; + border-radius: 1px; + margin: 0px; + padding: 0px; +} + +Gui--PropertyEditor--PropertyEditor QSpinBox, +Gui--PropertyEditor--PropertyEditor QDoubleSpinBox, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox, +Gui--PropertyEditor--PropertyEditor QLineEdit, +Gui--PropertyEditor--PropertyEditor QComboBox { + margin-left: 0px; + margin-right: 0px; + padding-top: 0px; + padding-bottom: 0px; + +} + +/*================================================================================================== +Main window +==================================================================================================*/ +QMainWindow, +QDialog, +QDockWidget, +QToolBar { + background-color: #2b2b2b; /* main background color */ +} + +QMdiArea { + background-image: url(qss:images_dark-light/background_freecad_ExtremProDark.svg); + background-position: center center; + background-repeat: no-repeat; +} +/*navgation src/Mod/Tux/NavigationIndicatorGui.py */ +Gui--NavigationIndicatorGui--BlenderNavigationStyle { +/*QAction#a4 {*/ + qproperty-icon: url(:/icons/icons/NavigationBlender_light.svg); +} +/*===== +/* QWidget ---------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QWidget { + background-color: #f6f6f6; + border: 0px solid #cccccc; + padding: 0px; + color: black; + selection-background-color: #e98ad8; + selection-color: black; +} + +QWidget:disabled { + background-color: transparent; + color: #515151; + selection-background-color: #e98ad8; + selection-color: #515151; +} + +QWidget::item:selected { + background-color: #e98ad8; +} + + /* Causes issue with colorselector. +QWidget::item:hover:!selected { + background-color: #e98ad8; +}*/ + +/* QMainWindow ------------------------------------------------------------ + +This adjusts the splitter in the dock widget, not qsplitter +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmainwindow + +--------------------------------------------------------------------------- */ +QMainWindow::separator { + /*background-color: #3c3c3c;*/ + border: 0px solid #696968; + spacing: 0px; + padding: 1px; +} + +QMainWindow::separator:vertical:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,stop:0.2 transparent,stop:0.5 #e98ad8, stop:0.8 transparent); + /*background-color: #557bb6;*/ + image: url(qss:images_dark-light/splitter_vertical_dark.svg); +} + +QMainWindow::separator:horizontal:hover { + background-color: qlineargradient(x1:0, y1:0, x2:1, y2:0,stop:0.2 transparent,stop:0.5 #e98ad8, stop:0.8 transparent); + /*background-color: #557bb6;*/ + image: url(qss:images_dark-light/splitter_horizontal_dark.svg); +} + +QMainWindow::separator:horizontal { + width: 4px; + margin-top: 0.1px; + margin-bottom: 0.1px; + /* image: url(qss:images_dark-light/splitter_horizontal_dark.svg);*/ +} + +QMainWindow::separator:vertical { + height: 4px; + margin-left: 0.1px; + margin-right: 0.1px; + /* image: url(qss:images_dark-light/splitter_vertical_dark.svg);*/ +} + +/* QToolTip --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtooltip + +--------------------------------------------------------------------------- */ +QToolTip { + background-color: #f6f6f6; + color: black; + /* If you remove the border property, background stops working on Windows */ + border: none; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Remove opacity, fix #174 - may need to use RGBA */ +} + +/* QStatusBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qstatusbar + +--------------------------------------------------------------------------- */ +QStatusBar { + border: 0px solid #f5f5f5; + /* Fixes Spyder #9120, #9121 */ + background: #f6f6f6; + /* Fixes #205, black vertical borders separating items */ +} + +QStatusBar::item { + border: none; +} + +QStatusBar QToolTip { + background-color: #f6f6f6; + border: 1px solid #cccccc; + color: black; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Reducing transparency to read better */ + opacity: 230; +} + +QStatusBar QLabel { + /* Fixes Spyder #9120, #9121 */ + background: transparent; +} + +/* QCheckBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcheckbox + +--------------------------------------------------------------------------- */ +QCheckBox { + color: black; + padding: 0px; + outline: none; + border: 1px solid transparent; + background-color: transparent; +} + +QCheckBox:focus { + border: 1px solid #008efa +; +} + +QCheckBox QWidget:disabled { + background-color: transparent; + color: #515151; +} + +QCheckBox::indicator { + color: black; + background-color: white; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QCheckBox::indicator:unchecked { + background-color: white; + image:url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QCheckBox::indicator:unchecked:hover, QCheckBox::indicator:unchecked:focus, QCheckBox::indicator:unchecked:pressed { + background-color: #e98ad8; + image:url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QCheckBox::indicator:unchecked:disabled { + background-color: #f5f5f5; + image:url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QCheckBox::indicator:checked { + background-color: white; + /*border: 1px solid #cccccc; /* QRadioButton has the same color */ + image:url(qss:images_dark-light/checkbox_dark.svg); +} + +QCheckBox::indicator:checked:hover, QCheckBox::indicator:checked:pressed { + background-color: #e98ad8; +} + +QCheckBox::indicator:checked:disabled { + background-color: #f5f5f5; + image: url(qss:images_dark-light/checkbox_checked_dark.svg); +} + +QCheckBox::indicator:indeterminate { + background-color: white; + border: 1px solid #cccccc; + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QCheckBox::indicator:indeterminate:disabled { + background-color: #f5f5f5; + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QCheckBox::indicator:indeterminate:hover, QCheckBox::indicator:indeterminate:pressed { + background-color: #e98ad8; /* QRadioButton has the same color */ +} + +/* QGroupBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qgroupbox + +--------------------------------------------------------------------------- */ +QGroupBox { + font-weight: bold; + border: 1px solid #cccccc; + border-radius: 1.9px; + padding: 2px; + margin-top: 10px; + margin-bottom: 4px; +} + +QGroupBox::title { + subcontrol-origin: margin; + subcontrol-position: top left; + left: 4px; + padding-left: 2px; + padding-right: 4px; + padding-top: 6px; +} + +QGroupBox::indicator { + color: black; + background-color: #f5f5f5; + border: 1px solid #cccccc; + width: 12px; + height: 12px; + border-radius:1px; +} + +QGroupBox::indicator:unchecked { + background-color: #cccccc; + border: 1px solid #cccccc; + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QGroupBox::indicator:unchecked:hover, QGroupBox::indicator:unchecked:focus, QGroupBox::indicator:unchecked:pressed { + background-color: #e98ad8; +} + +QGroupBox::indicator:unchecked:disabled { + background-color: white; + border: 1px solid #cccccc; +} + +QGroupBox::indicator:checked { + border: none; + image:url(qss:images_dark-light/checkbox_dark.svg); +} + +QGroupBox::indicator:checked:hover, QGroupBox::indicator:checked:focus, QGroupBox::indicator:checked:pressed { + background-color: #e98ad8; +} + +QGroupBox::indicator:checked:disabled { + background-color: #e98ad8; +} + +/* QRadioButton ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qradiobutton + +--------------------------------------------------------------------------- */ +QRadioButton { + background-color: transparent; + color: black; + border: none; + spacing: 4px; + padding-top: 4px; + padding-bottom: 4px; + outline: none; +} + +QRadioButton:focus { + border: 1px solid #008efa; +} + +QRadioButton:disabled { + background-color: #f6f6f6; + color: #515151; +} + +QRadioButton QWidget { + background-color: transparent; + color: black; + spacing: 0px; + padding: 0px; + outline: none; + border: none; +} + +QRadioButton::indicator { + background-color: #f8f8f8; + border: 1px solid #cccccc; + border-radius: 6px; + margin-left: 0px; + height: 11px; + width: 11px; +} + +QRadioButton::indicator:unchecked { + /*image:url(qss:images_dark-light/radiobutton_dark.svg);*/ +} + +QRadioButton::indicator:unchecked:hover, QRadioButton::indicator:unchecked:pressed { + background-color: #e98ad8; + border: 1px solid #e98ad8; + border-radius: 6px; +} + +QRadioButton::indicator:unchecked:disabled { + /*image:url(qss:images_dark-light/radiobutton_dark.svg);*/ + border: 1px solid #cccccc; +} + +QRadioButton::indicator:checked { + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +QRadioButton::indicator:checked:hover, QRadioButton::indicator:checked:pressed { + background-color: #e98ad8; + border: 1px solid #e98ad8; + border-radius: 6px; + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +QRadioButton::indicator:checked:disabled { + outline: none; + background-color: #cccccc; + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +/* QMenuBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenubar + +--------------------------------------------------------------------------- */ +QMenuBar { + background-color: #f8f8f8; + /*padding: 1px; + border: 0px solid rgba(255,255,255,140);*/ + color: black; + selection-background-color: #e98ad8; +} + +QMenuBar:focus { + border: 1px solid #008efa +; +} + +QMenuBar::item { + background: transparent; + /*padding-left:5px; + padding-right: 5px; + padding-bottom: 1px; + padding-top: 1px;*/ +} + +QMenuBar::item:selected { + background: transparent; + border: 0px solid #cccccc; + background-color: #e98ad8; +} + +QMenuBar::item:pressed { + /*padding: 2px; + padding-left: 10px; + padding-right: 10px;*/ + border: 0px solid #cccccc; + background-color: #e98ad8; + color: black; + /*margin-bottom: 0px; + padding-bottom: 0px;*/ +} + +/* QMenu ------------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenu + +--------------------------------------------------------------------------- */ +QMenu { + border-bottom: 2px rgba(100,100,100,140); + border-right: 2px rgba(100,100,100,140); + color: black; + margin: 0px; + background-color: #f8f8f8; + selection-background-color: #e98ad8; +} + +QMenu::separator { + height: 2px; + background-color: #cccccc; + margin-left: 30%; + margin-right: 30%; +} + +QMenu::item { + background-color: transparent; + padding: 2px 2px; /* make room for icon at left */ + /* Reserve space for selection border */ + border: 0px transparent #cccccc; +} + +QMenu::item:selected { + color: black; + background-color: #e98ad8; +} + +QMenu::item:pressed { + background-color: #e98ad8; +} + +QMenu::icon { + margin-left: 5px; + width: 14px; + height: 14px; +} + +QMenu::indicator { + margin-left: 2px; + margin-right: 2px; + padding: 0px; + width: 12px; + height: 12px; + /* non-exclusive indicator = check box style indicator (see QActionGroup::setExclusive) */ + /* exclusive indicator = radio button style indicator (see QActionGroup::setExclusive) */ +} + +QMenu::icon:checked { /* appearance of a 'checked' icon */ + background: #e98ad8; + margin-left: -5px; + border: 5px solid #e98ad8; + position: absolute; + border-radius: 0px; +} +QMenu::indicator:non-exclusive:unchecked { + image: url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QMenu::indicator:non-exclusive:unchecked:hover, QMenu::indicator:non-exclusive:unchecked:focus, QMenu::indicator:non-exclusive:unchecked:pressed { + border: none; + background: #e98ad8; +} + +QMenu::indicator:non-exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QMenu::indicator:non-exclusive:checked { + image:url(qss:images_dark-light/checkbox_dark.svg); +} + +QMenu::indicator:non-exclusive:checked:hover, QMenu::indicator:non-exclusive:checked:focus, QMenu::indicator:non-exclusive:checked:pressed { + border: none; + background: #e98ad8; +} + +QMenu::indicator:non-exclusive:checked:disabled { + image:url(qss:images_dark-light/checkbox_checked_disabled.svg); +} + +QMenu::indicator:non-exclusive:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:disabled { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:focus, QMenu::indicator:non-exclusive:indeterminate:hover, QMenu::indicator:non-exclusive:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QMenu::indicator:exclusive:unchecked { + image: url(qss:images_dark-light/transparent.svg); +} + +QMenu::indicator:exclusive:unchecked:hover, QMenu::indicator:exclusive:unchecked:focus, QMenu::indicator:exclusive:unchecked:pressed { + border: none; + outline: none; + background: #e98ad8; + image: url(qss:images_dark-light/checkbox_unchecked_light.svg); +} + +QMenu::indicator:exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QMenu::indicator:exclusive:checked { + border: none; + outline: none; + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +QMenu::indicator:exclusive:checked:hover, QMenu::indicator:exclusive:checked:focus, QMenu::indicator:exclusive:checked:pressed { + border: none; + outline: none; + background: #e98ad8; + image: url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QMenu::indicator:exclusive:checked:disabled { + outline: none; + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +QMenu::right-arrow { + margin: 5px; + padding-left: 12px; + image:url(qss:images_dark-light/right_arrow_darker.svg); + height: 12px; + width: 12px; + background-color: transparent; +} + +/* QAbstractItemView ------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QAbstractItemView { + alternate-background-color: #cfcfcf; + color: black; + border: 1px solid #cccccc; + border-radius: 2px; +} + +QAbstractItemView QLineEdit { + padding: 2px; +} + +/* QAbstractScrollArea ---------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QAbstractScrollArea { + background-color: transparent; + border: 0px solid #cccccc; + border-radius: 0px; + /* fix #159 */ + padding: 0px; + /* remove min-height to fix #244 */ + color: black; +} + +QAbstractScrollArea:disabled { + color: #515151; +} + +/* QScrollArea ------------------------------------------------------------ + +--------------------------------------------------------------------------- +text input field disabled!!!!*/ +QScrollArea QWidget:disabled { + background-color: #f6f6f6; +} + +/* QScrollBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qscrollbar + +--------------------------------------------------------------------------- */ +QScrollBar:horizontal { + height: 16px; + margin: 2px 16px 2px 16px; + border: 0px solid #cccccc; + border-radius: 1.9px; + background-color: #f6f6f6; +} + +QScrollBar:vertical { + background-color: #f6f6f6; + width: 16px; + margin: 16px 2px 16px 2px; + border: 0px solid #cccccc; + border-radius: 1.9px; +} + +QScrollBar::handle:horizontal { + background-color: #d4d4d4; + border: 1px solid #f6f6f6; + border-radius: 1.9px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:hover { + background-color: #e98ad8; + border: #cccccc; + border-radius: 1.9px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:focus { + border: 1px solid #008efa +; +} + +QScrollBar::handle:vertical { + background-color: #d4d4d4; + border: 1px solid #cccccc; + min-height: 8px; + border-radius: 1.9px; +} + +QScrollBar::handle:vertical:hover { + background-color: #e98ad8; + border: #cccccc; + border-radius: 1.9px; + min-height: 8px; +} + +QScrollBar::handle:vertical:focus { + border: 1px solid #008efa +; +} + +QScrollBar::add-line:horizontal { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/right_arrow_darker.svg); + height: 10px; + width: 7px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:horizontal:hover, QScrollBar::add-line:horizontal:on { + border-image: url(qss:images_dark-light/right_arrow_darker.svg); + background-color: #e98ad8; + height: 10px; + width: 7px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/down_arrow_darker.svg); + height: 7px; + width: 10px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical:hover, QScrollBar::add-line:vertical:on { + border-image: url(qss:images_dark-light/down_arrow_darker.svg); + background-color: #e98ad8; + height: 7px; + width: 10px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/left_arrow_darker.svg); + height: 10px; + width: 7px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal:hover, QScrollBar::sub-line:horizontal:on { + border-image: url(qss:images_dark-light/left_arrow_darker.svg); + background-color: #e98ad8; + height: 10px; + width: 8px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/up_arrow_darker.svg); + height: 8px; + width: 10px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical:hover, QScrollBar::sub-line:vertical:on { + background-color: #e98ad8; + border-image: url(qss:images_dark-light/up_arrow_darker.svg); + height: 8px; + width: 10px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::up-arrow:horizontal, QScrollBar::down-arrow:horizontal { + background: none; +} + +QScrollBar::up-arrow:vertical, QScrollBar::down-arrow:vertical { + background: none; +} + +QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal { + background: none; +} + +QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical { + background: none; +} + +/* QTextEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-specific-widgets + + +report view +--------------------------------------------------------------------------- */ +QTextEdit { + background-color: #f6f6f6; + color: black; + border-radius: 1.9px; + border: 0px solid #cccccc; +} + +QTextEdit:focus { + border: 1px solid #008efa +; +} + +QTextEdit:selected { + background: #346792; + color: black; +} + +/* QPlainTextEdit --------------------------------------------------------- +Python +--------------------------------------------------------------------------- */ +QPlainTextEdit { + background-color: white; + color: black; + border-radius: 1.9px; + border: 0px solid #cccccc; +} + +QPlainTextEdit:focus { + border: 1px solid #008efa +; +} + +QPlainTextEdit:selected { + background: #e98ad8; + color: black; +} + +/* QSizeGrip -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsizegrip + +--------------------------------------------------------------------------- */ +QSizeGrip { + background: transparent; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/sizegrip_dark.svg); +} + +/* QStackedWidget --------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QStackedWidget { + padding: 0px; + border: 0px solid #cccccc; +} + +/* QToolBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbar + +--------------------------------------------------------------------------- */ +QToolBar { + background-color: #f6f6f6; + border-bottom: 0px solid rgba(0,0,0,120); + padding: 1px; + font-weight: bold; + spacing: 1px; +} + +QToolBar:disabled { + /* Fixes #272 */ + background-color: #f6f6f6; +} + +QToolBar::handle:horizontal { + width: 8px; + margin: 3px 3px; + background-position: top right; + background-repeat: repeat-y; + background-image: url(qss:images_dark-light/Hmovetoolbar_dark.svg); +} + +QToolBar::handle:vertical { + height: 8px; + margin: 3px 3px; + background-position: left bottom; + background-repeat: repeat-x; + background-image: url(qss:images_dark-light/Vmovetoolbar_dark.svg); +} + +QToolBar::separator:horizontal { + width: 2px; + margin: 4px 4px; + background-color: transparent; +} + +QToolBar::separator:vertical { + height: 2px; + margin: 4px 4px; + background-color: transparent; +} + +/*The "show more" button (it can also be stylable with "QToolBarExtension" icon is not working Qproperty works but breaks when you move the toolbar see also */ +QToolButton#qt_toolbar_ext_button { +margin: 0px; +padding: 0px; +background-color: #f6f6f6; +/*background-image: url(qss:images_dark-light/more_dark.svg);*/ +background-repeat: none; +background-position: center center; +} + +QToolButton#qt_toolbar_ext_button:hover { +/* background-image: url(qss:images_dark-light/more_dark.svg);*/ +background-color: #e98ad8; +} + +QToolButton#qt_toolbar_ext_button:on { +/* background-image: url(qss:images_dark-light/more_dark.svg);*/ +border-color: #cccccc; +background-color: #e98ad8; +} + + +/* QAbstractSpinBox ------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractSpinBox, +QSpinBox { + background-color: white; + border: 1px solid #cccccc; + color: black; + /* This fixes 103, 111 */ + /* padding-top: 0px; + /* This fixes 103, 111 */ + /*padding-bottom: 0px; + /*padding-left: 4px; + /*padding-right: 4px; + border-radius: 1.9px;*/ + min-height: 1.7em; + /* min-width: 5px; removed to fix 109 */ +} + +QAbstractSpinBox:up-button { + background-color: #cccccc; + subcontrol-origin: border; + subcontrol-position: top right; + border-left: 1px solid #cccccc; + border-bottom: 1px solid #cccccc; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-bottom: -1px;*/ +} + +QAbstractSpinBox::up-arrow, QAbstractSpinBox::up-arrow:disabled, QAbstractSpinBox::up-arrow:off { + image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); + /* height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::up-arrow:hover { + /*background-color: #e98ad8;*/ + image: url(qss:images_dark-light/up_arrow_darker.svg); +} + +QAbstractSpinBox:down-button { + background-color: #cccccc; + subcontrol-origin: border; + subcontrol-position: bottom right; + border-left: 1px solid #cccccc; + border-top: 1px solid #cccccc; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-top: -1px;*/ +} + +QAbstractSpinBox::down-arrow, QAbstractSpinBox::down-arrow:disabled, QAbstractSpinBox::down-arrow:off { + image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); + /*height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::down-arrow:hover { + /*background-color: #e98ad8;*/ image:url(qss:images_dark-light/down_arrow_darker.svg); +} + +QAbstractSpinBox:hover { + /*border: 1px solid #e98ad8; + color: black;*/ +} + +QAbstractSpinBox:focus { + border: 1px solid #008efa +; +} + +QAbstractSpinBox:selected { + background: #008efa +; + /*color: black;*/ +} + +/* ------------------------------------------------------------------------ */ +/* DISPLAYS --------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QLabel ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe + +--------------------------------------------------------------------------- */ +QLabel { + background-color: transparent; + border: 0px solid #cccccc; + padding: 2px; + margin: 0px; + color: black; +} + +QLabel:disabled { + background-color: transparent; + border: 0px solid #cccccc; + color: #9f0d00; +} + +QLabel[haslink="true"] { + color: darkblue; +} + + +/* QTextBrowser ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QTextBrowser { + background-color: white; + border: 1px solid #cccccc; + color: black; + border-radius: 1.9px; +} + +QTextBrowser:disabled { + background-color: #f6f6f6; + border: 1px solid #cccccc; + color: #005aa4; + border-radius: 1.9px; +} + +QTextBrowser:hover, QTextBrowser:!hover, QTextBrowser:selected, QTextBrowser:pressed { + border: 1px solid #455364; +} + +/* QGraphicsView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QGraphicsView { + background-color: transparent; + border: 0px solid #455364; + color: black; + border-radius: 0px; +} + +QGraphicsView:disabled { + background-color: white; + border: 0px solid #cccccc; + color: #515151; + border-radius: 0px; +} + +QGraphicsView:hover, QGraphicsView:!hover, QGraphicsView:selected, QGraphicsView:pressed { + border: 0px solid #ff00f7; +} + +/* QCalendarWidget -------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCalendarWidget { + border: 1px solid #cccccc; + border-radius: 1.9px; +} + +QCalendarWidget:disabled { + background-color: #bfc1c0; + color: #515151; +} + +/* QLCDNumber ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QLCDNumber { + background-color: #1aff00; + color: black; +} + +QLCDNumber:disabled { + background-color: #f6f6f6; + color: #515151; +} + +/* QProgressBar ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qprogressbar + +--------------------------------------------------------------------------- */ +QProgressBar { + background-color: #515151; + border: 1px solid #cccccc; + color: black; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar:disabled { + background-color: #f8f8f8; + border: 1px solid #cccccc; + color: #515151; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar::chunk { + background-color: #e98ad8; + color: #f6f6f6; + border-radius: 1.9px; +} + +QProgressBar::chunk:disabled { + background-color: #f8f8f8; + color: #cccccc; + border-radius: 1.9px; +} + +/* ------------------------------------------------------------------------ */ +/* BUTTONS ---------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QPushButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qpushbutton + +--------------------------------------------------------------------------- */ +QPushButton { + background-color: #d4d4d4; + color: black; + border-radius: 2px; + padding: 2px; + outline: none; + border: none; +} + +QPushButton:disabled { + background-color: #f6f6f6; + color: #515151; + border-radius: 2px; + padding: 2px; +} + +QPushButton:checked { + background-color: #e98ad8; + border-radius: 2px; + padding: 2px; + outline: none; +} + +QPushButton:checked:disabled { + background-color: #e98ad8; + color: #f5f5f5; + border-radius: 2px; + padding: 2px; + outline: none; +} + +QPushButton:checked:selected { + background: #e98ad8; +} + +QPushButton:hover { + background-color: #e98ad8; + color: black; +} + +QPushButton:pressed { + background-color: #e98ad8; +} + +QPushButton:selected { + background: #008efa +; + color: black; +} + +QPushButton::menu-indicator { + subcontrol-origin: padding; + subcontrol-position: bottom right; + bottom: 4px; +} + +QDialogButtonBox QPushButton { + /* Issue # 194 # 248 - Special case of QPushButton inside dialogs, for better UI */ + min-width: 80px; +} + +/* QToolButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbutton + +--------------------------------------------------------------------------- */ +QToolButton { + background-color: transparent; + color: black; + border-radius: 1px; + padding: 0px; + outline: none; + border: none; + /* The subcontrols below are used only in the DelayedPopup mode */ + /* The subcontrols below are used only in the MenuButtonPopup mode */ + /* The subcontrol below is used only in the InstantPopup or DelayedPopup mode */ +} + +QToolButton:disabled { + background-color: #f8f8f8; + color: #515151; + border-radius: 1px; + padding: 0px; +} + +QToolButton:checked { + background-color: #e98ad8; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:disabled { + background-color: #e98ad8; + color: #515151; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:hover { + background-color: #e98ad8; + color: black; +} + +QToolButton:checked:pressed { + background-color: #e98ad8; +} + +QToolButton:checked:selected { + background: #008efa +; + color: black; +} + +QToolButton:hover { + background-color: #e98ad8; + color: black; +} + +QToolButton:pressed { + background-color: #008efa +; +} + +QToolButton:selected { + background: #e98ad8; + color: black; +} + +QToolButton[popupMode="0"] { + /* Only for DelayedPopup */ + padding-right: 20px; +} + +QToolButton[popupMode="1"] { + /* Only for MenuButtonPopup */ + padding-right: 20px; +} +QToolButton[popupMode="0"]::menu-button { + border: none; +} + +QToolButton[popupMode="0"]::menu-button:hover { + border: none; + border-left: 2px solid #fe0000; + border-radius: 0px; +} +QToolButton[popupMode="1"]::menu-button { + border: none; +} + +QToolButton[popupMode="1"]::menu-button:hover { + border: none; + border-left: 2px solid #e5ff00; + border-radius: 0px; +} + +QToolButton[popupMode="2"] { + /* Only for InstantPopup */ + padding-right: 20px; +} + +QToolButton::menu-button { + border-bottom: 0px solid #f6f6f6; + border-radius: 2px; + /* 16px width + 4px for border = 20px allocated above */ + width: 1.6ex; + padding: 2px; + border-radius: 2px; + border: 0px #000000; +} + +QToolButton::menu-button:hover { + /* background: rgba(0, 0, 0, 0.5);*/ + +} + +QToolButton::menu-button:checked:hover { + /* background: rgba(0, 0, 0, 0.5);*/ +} + +QToolButton::menu-indicator { + /* Exclude a shift for better image */ + subcontrol-position: right bottom; + /* Shift it a bit */ +} + +QToolButton::menu-arrow { + image: url(qss:images_dark-light/more_arrow_dark.svg); + width: 1.5ex; + height: 1.5ex; + subcontrol-position: right bottom; + background: transparent; +} +QToolButton::menu-arrow:open { + subcontrol-position: right bottom; + image: url(qss:images_dark-light/more_arrow_dark.svg); +} +QToolButton::menu-arrow:hover { + image: url(qss:images_dark-light/more_arrow_dark.svg); + background-color: rgba(0, 0, 0, 0.498); + border: 1px solid rgba(0, 0, 0, 0.498); +} + +/* QCommandLinkButton ----------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCommandLinkButton { + background-color: transparent; + border: 1px solid #cccccc; + color: black; + border-radius: 1.9px; + padding: 0px; + margin: 0px; +} + +QCommandLinkButton:disabled { + background-color: transparent; + color: #515151; +} + +/* ------------------------------------------------------------------------ */ +/* INPUTS - NO FIELDS ----------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QComboBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QComboBox { + border: 1px solid #cccccc; + background: white; + border-radius: 2px; + selection-background-color: #e98ad8; + padding-left: 2px; + padding-right: 2px; + /* padding-right = 36; 4 + 16*2 See scrollbar size */ + /* changed to 4px to fix #239 */ + /* Fixes #103, #111 */ + min-height: 1.5em; + /* padding-top: 2px; removed to fix #132 */ + /* padding-bottom: 2px; removed to fix #132 */ + /* min-width: 75px; removed to fix #109 */ + /* Needed to remove indicator - fix #132 */ +} +QComboBox:editable { + background: white; +} +QComboBox QAbstractItemView { + border: 0px solid #cccccc; + border-radius: 0px; + background-color: white; + selection-background-color: #e98ad8; +} + +QComboBox QAbstractItemView:hover { + background-color:white; + color: black; +} + +QComboBox QAbstractItemView:selected { + background: #e98ad8; + color: black; +} + +QComboBox QAbstractItemView:alternate { + background: #f5f5f5; +} + +QComboBox:disabled { + background-color: #cccccc; + color: #515151; +} + +QComboBox:hover { + /*background-color: #e98ad8;*/ + border: 1px solid #e98ad8; +} + +QComboBox:focus { + border: 1px solid #008efa +; +} + +QComboBox:on { + selection-background-color: #008efa +; +} + +QComboBox::indicator { + border: none; + border-radius: 0px; + background-color: transparent; + selection-background-color: transparent; + color: transparent; + selection-color: #e98ad8; + /* Needed to remove indicator - fix #132 */ +} + +QComboBox::indicator:alternate { + background: #cccccc; +} + +QComboBox::item { + /* Remove to fix #282, #285 and MR #288*/ + /*&:checked { + font-weight: bold; + } + + &:selected { + border: 0px solid transparent; + } + */ +} + +QComboBox::item:alternate { + background: #f5f5f5; +} + +QComboBox::drop-down { + subcontrol-origin: padding; + background-color: #d4d4d4; + subcontrol-position: top right; + width: 14px; + border-left: 1px solid #cccccc; +} +QComboBox::drop-down:hover { + background-color: #e98ad8; +} + +QComboBox::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); + height: 10px; + width: 10px; +} + +QComboBox::down-arrow:on, QComboBox::down-arrow:hover, QComboBox::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_darker.svg); +} + + +/*================================================================================================== +Tasks panel (custom FreeCAD class) +==================================================================================================*/ +Gui--PropertyEditor--PropertyEditor { + qproperty-groupTextColor: black; + qproperty-groupBackground: #f5f5f5; + border: 0px solid #cccccc; + +} + +/* Action group */ +QFrame[class="panel"] { +background-color: transparent; /* temporal (transparent background) */ + +} + +QSint--ActionGroup { +padding: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +margin: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +} + +/* Separator line */ +QSint--ActionGroup QFrame[height="1"], +QSint--ActionGroup QFrame[height="2"], +QSint--ActionGroup QFrame[height="3"], +QSint--ActionGroup QFrame[width="1"], +QSint--ActionGroup QFrame[width="2"], +QSint--ActionGroup QFrame[width="3"] { +border-color: rgba(0,0,0,60); +} + +/* Panel header */ +QSint--ActionGroup QFrame[class="header"] { +border-top: 1px solid #cccccc; +border-left: 1px solid #cccccc; +border-right: 1px solid #cccccc; +background-color: #d4d4d4; /* Task Panel Header background color */ +border-top-left-radius: 3px; +border-top-right-radius: 3px; +border-bottom-left-radius: 0px; +border-bottom-right-radius: 0px; +margin: 0px; +padding: 0px; +} + +QSint--ActionGroup QFrame[class="header"]:hover { +background-color: #e98ad8; +} + +QSint--ActionGroup QToolButton[class="header"] { +color: black; /* Task Panel Header text color */ +text-align: left; +font-weight: bold; +border: none; +margin: 0px; +padding: 0px; +} + +QSint--ActionGroup QFrame[class="header"] QLabel { +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_darker.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; +} + +QSint--ActionGroup QFrame[class="header"] QLabel:hover { +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_darker.svg); +} + +QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"] { +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_darker.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; +} + +QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"]:hover { +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_darker.svg); +} + +QSint--ActionGroup QFrame[class="content"] { +background-color: transparent; /* Task Panel background color */ +margin: 0px; +padding: 0px; +border-bottom: 1px solid #cccccc; +border-left: 1px solid #cccccc; +border-right: 1px solid #cccccc; +border-top-left-radius: 0px; +border-top-right-radius: 0px; +border-bottom-left-radius: 3px; +border-bottom-right-radius: 3px; +} + +QSint--ActionGroup QFrame[class="content"] > QWidget { +background-color: #f6f6f6; /* Task Panel background color */ +} + +/* Fixs for tabs inside Task Panel */ +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:top:selected { +border-bottom-color: #e98ad8; /* same as Task Panel background color */ +} + +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:bottom:selected { +border-top-color: #e98ad8; /* same as Task Panel background color */ +} + +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:right:selected { +border-right-color: #e98ad8; /* same as Task Panel background color */ +} + +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:left:selected { +border-left-color: #e98ad8; /* same as Task Panel background color */ +} + +/* Fix for buttons with icons that showed cropped (still not happy with result) */ +QSint--ActionGroup QFrame[class="content"] > QWidget > QPushButton { +padding: 2px; /* bigger padding crops text and icons... */ +margin: 0px; +} + +/* Fix for lists inside task panels */ /* sketcher constraints list */ +QSint--ActionGroup QFrame[class="content"] QTreeView, +QSint--ActionGroup QFrame[class="content"] QListView, +QSint--ActionGroup QFrame[class="content"] QTableView { +color: black; +background-color: white; +} + + +/* found inside Part Design Workbench and "make a draft on a face" Task panel options */ +QSint--ActionGroup QFrame[class="content"] QToolButton { + color: black; + text-align: center; + background-color: #d4d4d4; + border: 0px solid #adadad; + padding: 1px 1px; /* different than regular QPushButton */ + margin: 0px; /* different than regular QPushButton */ + min-height: 16px; /* same as QTabBar QPushButton min-width */ + border-radius: 1px; +} + +QSint--ActionGroup QFrame[class="content"] QToolButton:hover{ + background: #e98ad8; + border: 1px solid #e98ad8; +} +QSint--ActionGroup QFrame[class="content"] QToolButton:focus { + border: 1px solid #008efa +; +} + +QSint--ActionGroup QFrame[class="content"] QToolButton:disabled, +QSint--ActionGroup QFrame[class="content"] QToolButton:disabled:checked { + color: #455364; + background-color: #cccccc; +} + +QSint--ActionGroup QFrame[class="content"] QToolButton:pressed { + background: #e98ad8; + border: 1px solid #e98ad8; +} + +/* QSlider ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qslider + +--------------------------------------------------------------------------- */ +QSlider:disabled { + background: #f6f6f6; +} + +QSlider:focus { + border: 1px solid #008efa +; +} + +QSlider::groove:horizontal { + background: #f6f6f6; + border: 1px solid #cccccc; + height: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::groove:vertical { + background: #e98ad8; + border: 1px solid #cccccc; + width: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::add-page:vertical { + background: #e98ad8; + border: 1px solid #cccccc; + width: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::add-page:vertical :disabled { + background: #cccccc; +} + +QSlider::sub-page:horizontal { + background: #e98ad8; + border: 1px solid #0073ff; + height: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::sub-page:horizontal:disabled { + background: #cccccc; +} + +QSlider::handle:horizontal { + background: #bfc1c0; + border: 1px solid #f6f6f6; + width: 8px; + height: 8px; + margin: -8px 0px; + border-radius: 1.9px; +} + +QSlider::handle:horizontal:hover { + background: #e98ad8; + border: 1px solid #e98ad8; +} + +QSlider::handle:horizontal:focus { + border: 1px solid #008efa +; +} + +QSlider::handle:vertical { + background: #515151; + border: 1px solid #455364; + width: 8px; + height: 8px; + margin: 0 -8px; + border-radius: 1.9px; +} + +QSlider::handle:vertical:hover { + background: #e98ad8; + border: 2px solid #e98ad8; +} + +QSlider::handle:vertical:focus { + border: 1px solid #008efa +; +} + +/* QLineEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlineedit + +--------------------------------------------------------------------------- */ +QLineEdit { + background-color: white; + padding-top: 2px; + /* This QLineEdit fix 103, 111 */ + padding-bottom: 2px; + /* This QLineEdit fix 103, 111 */ + padding-left: 4px; + padding-right: 4px; + border-style: solid; + border: 1px solid #cccccc; + border-radius: 2px; + color: black; +} + +QLineEdit:disabled { + background-color: #cccccc; + color: #454545; +} + +QLineEdit:hover { + border: 1px solid #e98ad8; + color: black; +} + +QLineEdit:focus { + border: 2px solid #008efa +; +} + +QLineEdit:selected { + background-color: #e98ad8; + color: black; +} + +/* QTabWiget -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabWidget { + padding: 2px; + selection-background-color: #e98ad8; +} + +QTabWidget QWidget { + /* Fixes #189 */ + border-radius: 1.9px; +} + +QTabWidget::pane { + border: 0px solid #8c00ffa1; + border-radius: 1.9px; + margin: 0px; + /* Fixes double border inside pane with pyqt5 */ + padding: 0px; +} + +QTabWidget::pane:selected { + background-color: #e98ad8; + border: 1px solid #346792; +} +/* QTabBar ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabBar, QDockWidget QTabBar { + qproperty-drawBase: 0; + border-radius: 2px; + margin: 0px; + padding: 2px; + border: 0; + alignment: center; + /* left: 5px; move to the right by 5px - removed for fix */ +} + +QTabBar::close-button, QDockWidget QTabBar::close-button { + border: 0; + margin: 0; + padding: 1px; + image: url(qss:images_dark-light/close_dark.svg); +} + +QTabBar::close-button:hover, QDockWidget QTabBar::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); + /*background-color: rgba(255, 0, 0, 0.392);*/ +} + +QTabBar::close-button:pressed, QDockWidget QTabBar::close-button:pressed { + image: url(qss:images_dark-light/close_dark.svg); +} + +QTabBar::tab, QDockWidget QTabBar::tab { + /* !selected and disabled ----------------------------------------- */ + /* selected ------------------------------------------------------- */ +} + +QTabBar::tab:top:selected:disabled, QDockWidget QTabBar::tab:top:selected:disabled { + border-bottom: 3px solid #d4d4d4; + color: #515151; + background-color: #d4d4d4; +} + +QTabBar::tab:bottom:selected:disabled, QDockWidget QTabBar::tab:bottom:selected:disabled { + border-top: 3px solid #d4d4d4; + color: #515151; + background-color: #d4d4d4; +} + +QTabBar::tab:left:selected:disabled, QDockWidget QTabBar::tab:left:selected:disabled { + border-right: 3px solid #d4d4d4; + color: #515151; + background-color: #d4d4d4; +} + +QTabBar::tab:right:selected:disabled, QDockWidget QTabBar::tab:right:selected:disabled { + border-left: 3px solid #d4d4d4; + color: #515151; + background-color: #d4d4d4; +} + +QTabBar::tab:top:!selected:disabled, QDockWidget QTabBar::tab:top:!selected:disabled { + border-bottom: 3px solid #d4d4d4; + color: #515151; + background-color: #d4d4d4; +} + +QTabBar::tab:bottom:!selected:disabled, QDockWidget QTabBar::tab:bottom:!selected:disabled { + border-top: 3px solid #d4d4d4; + color: #515151; + background-color: #d4d4d4; +} + +QTabBar::tab:left:!selected:disabled, QDockWidget QTabBar::tab:left:!selected:disabled { + border-right: 3px solid #d4d4d4; + color: #515151; + background-color: #d4d4d4; +} + +QTabBar::tab:right:!selected:disabled, QDockWidget QTabBar::tab:right:!selected:disabled { + border-left: 3px solid #d4d4d4; + color: #515151; + background-color: #d4d4d4; +} + +QTabBar::tab:top:!selected, QDockWidget QTabBar::tab:top:!selected { + border-bottom: 2px solid #d4d4d4; + margin-top: 2px; +} + +QTabBar::tab:bottom:!selected, QDockWidget QTabBar::tab:bottom:!selected { + border-top: 2px solid #d4d4d4; + margin-bottom: 2px; +} + +QTabBar::tab:left:!selected, QDockWidget QTabBar::tab:left:!selected { + border-left: 2px solid #d4d4d4; + margin-right: 2px; +} + +QTabBar::tab:right:!selected, QDockWidget QTabBar::tab:right:!selected { + border-right: 2px solid #d4d4d4; + margin-left: 2px; +} + +QTabBar::tab:top, QDockWidget QTabBar::tab:top { + background-color: #d4d4d4; + margin-left: 3px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + min-width: 5px; + border: 0px solid #d4d4d4; + border-radius: 4px; +} + +QTabBar::tab:top:selected, QDockWidget QTabBar::tab:top:selected { + background-color: #f6f6f6; + /*border: 1px solid #008efa +; + border-radius: 4px; + margin-left: 4px; + margin-right: 4px; + padding-left: 3px; + padding-right: 3px;*/ +} + +QTabBar::tab:top:!selected:hover, QDockWidget QTabBar::tab:top:!selected:hover { + /*border: 1px solid #e98ad8;*/ + border: 0px solid #e98ad8; + background-color: #e98ad8; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; +} + +QTabBar::tab:bottom, QDockWidget QTabBar::tab:bottom { + border: 0px solid #d4d4d4; + background-color: #d4d4d4; + margin-left: 3px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + border-radius: 4px; + min-width: 5px; +} + +QTabBar::tab:bottom:selected, QDockWidget QTabBar::tab:bottom:selected { + background-color: #f5f5f5; + /*border: 1px solid #008efa +; + border-radius: 4px; + margin-left: 4px; + margin-right: 4px; + padding-left: 3px; + padding-right: 3px;*/ +} + +QTabBar::tab:bottom:!selected:hover, QDockWidget QTabBar::tab:bottom:!selected:hover { +/*border: 1px solid #e98ad8;*/ + border: 0px solid #e98ad8; + background-color: #e98ad8; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; +} + +QTabBar::tab:left, QDockWidget QTabBar::tab:left { + background-color: #f5f5f5; + margin-top: 2px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + border-radius: 4px; + min-height: 5px; +} + +QTabBar::tab:left:selected, QDockWidget QTabBar::tab:left:selected { + background-color: #f5f5f5; + border: 0px solid #008efa +; +} + +QTabBar::tab:left:!selected:hover, QDockWidget QTabBar::tab:left:!selected:hover { + border: 0px solid #e98ad8; + background-color: #e98ad8; + /* Fixes different behavior #271 */ + margin-right: 0px; + padding-right: -1px; +} + +QTabBar::tab:right, QDockWidget QTabBar::tab:right { + background-color: #f5f5f5; + margin-top: 2px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + min-height: 5px; + border: 10px; +} + +QTabBar::tab:right:selected, QDockWidget QTabBar::tab:right:selected { + background-color: #f5f5f5; + border: 0px solid #008efa +; +} + +QTabBar::tab:right:!selected:hover, QDockWidget QTabBar::tab:right:!selected:hover { + border: 0px solid #e98ad8; + background-color: #e98ad8; + /* Fixes different behavior #271 */ + margin-left: 0px; + padding-left: 0px; +} + +QTabBar QToolButton, QDockWidget QTabBar QToolButton { + /* Fixes #136 */ + background-color: #f5f5f5; + height: 12px; + width: 12px; +} + +QTabBar QToolButton:pressed, QDockWidget QTabBar QToolButton:pressed { + border: 0px solid #e98ad8; + background-color: #e98ad8; +} + +QTabBar QToolButton:pressed:hover, QDockWidget QTabBar QToolButton:pressed:hover { + border: 0px solid #e98ad8; + background-color: #e98ad8; +} + +QTabBar QToolButton::left-arrow:enabled, QDockWidget QTabBar QToolButton::left-arrow:enabled { + image: url(qss:images_dark-light/left_arrow_darker.svg); +} + +QTabBar QToolButton::left-arrow:disabled, QDockWidget QTabBar QToolButton::left-arrow:disabled { + image: url(qss:images_dark-light/left_arrow_disabled_dark.svg); +} + +QTabBar QToolButton::right-arrow:enabled, QDockWidget QTabBar QToolButton::right-arrow:enabled { + image: url(qss:images_dark-light/right_arrow_darker.svg); +} + +QTabBar QToolButton::right-arrow:disabled, QDockWidget QTabBar QToolButton::right-arrow:disabled { + image: url(qss:images_dark-light/right_arrow_disabled_dark.svg); +} + +/* QDockWiget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QDockWidget { + background-color: #f6f6f6; + border: 1px solid #cccccc; + border-radius: 1.9px; + titlebar-close-icon: url(qss:images_dark-light/transparent.svg); + titlebar-normal-icon: url(qss:images_dark-light/transparent.svg); +} + +QDockWidget::title { + /* Better size for title bar */ + padding: 3px; + spacing: 4px; + border: none; + background-color: #f6f6f6; + text-align: center; + font-weight: bold; +} + +QDockWidget::close-button { + icon-size: 10px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/close_dark.svg); +} + +QDockWidget::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); +} + +QDockWidget::close-button:pressed { + image: url(qss:images_dark-light/close_dark.svg); +} + +QDockWidget::float-button { + icon-size: 12px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/undock_dark.svg); +} + +QDockWidget::float-button:hover { + /* background-color: #e98ad8; */ + image: url(qss:images_dark-light/undock_blue.svg); +} + +QDockWidget::float-button:pressed { + image: url(qss:images_dark-light/undock_dark.svg); +} + +/* QTreeView QListView QTableView ----------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtreeview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlistview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtableview + +--------------------------------------------------------------------------- */ +QTreeView::branch { + background: transparent; +} + +QTreeView::branch:has-siblings:!adjoins-item { + border-image: url(qss:images_dark-light/branch_vline_dark.svg) 0; +} + +QTreeView::branch:has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_more_dark.svg) 0; +} + +QTreeView::branch:!has-children:!has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_end_dark.svg) 0; +} + +QTreeView::branch:closed:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_closed_dark.svg) 0; +} + +QTreeView::branch:has-children:!has-siblings:closed { + border-image: url(qss:images_dark-light/branch_end_closed_dark.svg) 0; +} + +QTreeView::branch:open:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_open_dark.svg) 0; +} + +QTreeView::branch:open:has-children:!has-siblings { + border-image: url(qss:images_dark-light/branch_end_open_dark.svg) 0; +} + +QTreeView::indicator:checked, +QListView::indicator:checked, +QTableView::indicator:checked, +QColumnView::indicator:checked { + image: url(qss:images_dark-light/checkbox_dark.svg); +} + +QTreeView::indicator:checked:hover, QTreeView::indicator:checked:focus, QTreeView::indicator:checked:pressed, +QListView::indicator:checked:hover, +QListView::indicator:checked:focus, +QListView::indicator:checked:pressed, +QTableView::indicator:checked:hover, +QTableView::indicator:checked:focus, +QTableView::indicator:checked:pressed, +QColumnView::indicator:checked:hover, +QColumnView::indicator:checked:focus, +QColumnView::indicator:checked:pressed { + image: url(qss:images_dark-light/checkbox_dark_hover.svg); +} + +QTreeView::indicator:unchecked, +QListView::indicator:unchecked, +QTableView::indicator:unchecked, +QColumnView::indicator:unchecked { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QTreeView::indicator:unchecked:hover, QTreeView::indicator:unchecked:focus, QTreeView::indicator:unchecked:pressed, +QListView::indicator:unchecked:hover, +QListView::indicator:unchecked:focus, +QListView::indicator:unchecked:pressed, +QTableView::indicator:unchecked:hover, +QTableView::indicator:unchecked:focus, +QTableView::indicator:unchecked:pressed, +QColumnView::indicator:unchecked:hover, +QColumnView::indicator:unchecked:focus, +QColumnView::indicator:unchecked:pressed { + image: url(qss:images_dark-light/checkbox_unchecked_hover_dark.svg); +} + +QTreeView::indicator:indeterminate, +QListView::indicator:indeterminate, +QTableView::indicator:indeterminate, +QColumnView::indicator:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QTreeView::indicator:indeterminate:hover, QTreeView::indicator:indeterminate:focus, QTreeView::indicator:indeterminate:pressed, +QListView::indicator:indeterminate:hover, +QListView::indicator:indeterminate:focus, +QListView::indicator:indeterminate:pressed, +QTableView::indicator:indeterminate:hover, +QTableView::indicator:indeterminate:focus, +QTableView::indicator:indeterminate:pressed, +QColumnView::indicator:indeterminate:hover, +QColumnView::indicator:indeterminate:focus, +QColumnView::indicator:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QTreeView, +QListView, +QTableView, +QColumnView { + background-color: #f6f6f6; /* background of a lot of stuff including spreadsheets.*/ + border: 0px solid #cccccc; + color: black; + gridline-color: #cccccc; + border-radius: 0px; +} + +QTableView, +QListView { + background-color: rgba(0, 0, 0, 0.050); /* background of a lot of stuff including spreadsheets.*/ +} + + +QTreeView:disabled, +QListView:disabled, +QTableView:disabled, +QColumnView:disabled { + background-color: white; + color: #515151; +} + +QTreeView:selected, +QListView:selected, +QTableView:selected, +QColumnView:selected { + background-color: #e98ad8; + color: black; +} + +QTreeView:focus, +QListView:focus, +QTableView:focus, +QColumnView:focus { + border: 1px solid #008efa +; +} + +QTreeView::item:pressed, +QListView::item:pressed, +QTableView::item:pressed, +QColumnView::item:pressed { + background-color: #e98ad8; +} + +QTreeView::item:selected:active, +QListView::item:selected:active, +QTableView::item:selected:active, +QColumnView::item:selected:active { + background-color: #e98ad8; +} + +QTreeView::item:selected:!active, +QListView::item:selected:!active, +QTableView::item:selected:!active, +QColumnView::item:selected:!active { + color: black; + background-color: #bfc1c0; +} + +QTreeView::item:!selected:hover, +QListView::item:!selected:hover, +QTableView::item:!selected:hover, +QColumnView::item:!selected:hover { + outline: 0; + color: black; + background-color: #e98ad8; +} + +QTableCornerButton::section { + background-color: #f6f6f6; + border: 1px transparent #cccccc; + border-radius: 0px; +} + +QTableView::item { + color: black; +} +QTableView { + /*qproperty-AliasedCellBackgroundColor: #f700ff;*/ + /*qproperty-aliasBgColor: #f700ff;*/ +} + +/* QHeaderView ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qheaderview + +--------------------------------------------------------------------------- */ +QHeaderView { + background-color: #f6f6f6; + border: 1px solid #cccccc; + padding: 0; + margin: 0; + border-radius: 0px; + text-align: center; +} + +QHeaderView:disabled { + background-color: #f6f6f6; + border: 1px solid #cccccc; + color: #515151; +} + +QHeaderView::section { + background-color: #f5f5f5; + color: black; + border-radius: 0px; + text-align: center; + font-size: 13px; + font-weight: bold; + text-align: center; +} + +QHeaderView::section::horizontal { + padding-top: 0; + padding-bottom: 0; + padding-left: 10px; + padding-right: 10px; + border-left: 1px solid #cccccc; +} + +QHeaderView::section::horizontal::first, QHeaderView::section::horizontal::only-one { + border-left: 1px solid #cccccc; + padding-left: 15px; +} + +QHeaderView::section::horizontal:disabled { + color: #515151; +} + +QHeaderView::section::vertical { + padding-top: 0; + padding-bottom: 0; + padding-left: 1px; + padding-right: 1px; + border-top: 1px solid #cccccc; +} + +QHeaderView::section::vertical::first, QHeaderView::section::vertical::only-one { + border-top: 1px solid #cccccc; +} + +QHeaderView::section::vertical:disabled { + color: #515151; +} + +QHeaderView::down-arrow { + /* Those settings (border/width/height/background-color) solve bug */ + /* transparent arrow background and size */ + background-color: #455364; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/arrow_down.svg); +} + +QHeaderView::up-arrow { + background-color: #455364; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/up_arrow_dark.svg); +} + +/* QToolBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbox +used in PATH + +--------------------------------------------------------------------------- */ +QToolBox { + padding: 0px; + border: 1px solid #d4d4d4; + border-radius: 4px; + background-color: transparent; +} + +QToolBox:selected { + padding: 0px; + border: 0px solid #346792; +} + +QToolBox::tab { + background-color: #d4d4d4; + border: 0px solid #cccccc; + color: black; + background-image: url(qss:images_dark-light/down_arrow_darker.svg); + background-repeat: none; + background-position: center left; +} + +QToolBox::tab:disabled { + color: #515151; +} + +QToolBox::tab:selected { + background-color: #d4d4d4; + background-image: url(qss:images_dark-light/transparent.svg); + padding-right: 5px; + background-repeat: none; +} + +QToolBox::tab:selected:disabled { + background-color: #d4d4d4; + border-bottom: 0px solid #cccccc; + color: #515151; +} + +QToolBox::tab:!selected { + +} + +QToolBox::tab:!selected:disabled { + background-color: #f6f6f6; +} + +QToolBox::tab:hover { + background-color: #e98ad8; + } + +QToolBox QScrollArea QWidget QWidget { + padding: 0px; + border: 0px; + background-color: transparent; +} + +/* QFrame ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe +https://doc.qt.io/qt-5/qframe.html#-prop +https://doc.qt.io/qt-5/qframe.html#details +https://stackoverflow.com/questions/14581498/qt-stylesheet-for-hline-vline-color + +--------------------------------------------------------------------------- */ +/* (dot) .QFrame fix #141, #126, #123 */ +.QFrame { + border-radius: 0px; + border: 0px solid #cccccc; + background-color: #cccccc; + /* No frame */ + /* HLine */ + /* HLine */ +} + +.QFrame[frameShape="0"] { + border-radius: 1.9px; + border: 1px solid #cccccc; +} + +.QFrame[frameShape="4"] { + max-height: 1px; + border: none; + background-color: #cccccc; +} + +.QFrame[frameShape="5"] { + max-width: 1px; + border: none; + background-color: #f6f6f6; +} + +/* QSplitter -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsplitter + +--------------------------------------------------------------------------- */ +QSplitter { + background-color: #f6f6f6; + spacing: 1px; + padding: 1px; + margin: 1px; +} + +QSplitter::handle { + margin: 0px 0px; + padding: 0px; +} + +QSplitter::handle:horizontal { + background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + width: 1px; +} + +QSplitter::handle:vertical { + background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + height: 1px; +} + +QSplitter::handle:hover { + background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); + background-position: center center; + background-repeat: none; + background-color: #e98ad8; +} + +/* QDateEdit, QDateTimeEdit ----------------------------------------------- + +--------------------------------------------------------------------------- */ +QDateEdit, QDateTimeEdit { + selection-background-color: #e98ad8; + border-style: solid; + border: 1px solid #cccccc; + border-radius: 1.9px; + /* This fixes 103, 111 */ + padding-top: 2px; + /* This fixes 103, 111 */ + padding-bottom: 2px; + padding-left: 4px; + padding-right: 4px; + min-width: 10px; +} + +QDateEdit:on, QDateTimeEdit:on { + selection-background-color: #e98ad8; +} + +QDateEdit::drop-down, QDateTimeEdit::drop-down { + subcontrol-origin: padding; + subcontrol-position: top right; + width: 12px; + border-left: 1px solid #cccccc; +} + +QDateEdit::down-arrow, QDateTimeEdit::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); + height: 8px; + width: 8px; +} + +QDateEdit::down-arrow:on, QDateEdit::down-arrow:hover, QDateEdit::down-arrow:focus, QDateTimeEdit::down-arrow:on, QDateTimeEdit::down-arrow:hover, QDateTimeEdit::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_darker.svg); +} + +QDateEdit QAbstractItemView, QDateTimeEdit QAbstractItemView { + background-color: #f6f6f6; + border-radius: 2px; + border: 1px solid #cccccc; + selection-background-color: #e98ad8; +} + +/* QAbstractView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractView:hover { + border: 1px solid #e98ad8; + color: black; +} + +QAbstractView:selected { + background: #e98ad8; + color: black; +} + +/* PlotWidget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +PlotWidget { + /* Fix cut labels in plots #134 */ + padding: 0px; +} \ No newline at end of file diff --git a/src/Gui/Stylesheets/Light-orange.qss b/src/Gui/Stylesheets/Light-orange.qss index 43d942b3b7..dabfed06ca 100644 --- a/src/Gui/Stylesheets/Light-orange.qss +++ b/src/Gui/Stylesheets/Light-orange.qss @@ -1,792 +1,57 @@ /* ABOUT ============================================================================================================ -version 2.21 -Qt theme (stylesheet) specially developed for FreeCAD (https://www.freecad.org/). -It might work with other software that uses Qt styling. +Revised stylesheet based on the original from Pablo Gil Fernández made by MisterMaker - -LICENSE +KNOWN BUGS and TO DO ============================================================================================================ -Copyright (c) 2019 Pablo Gil Fernández +Please, follow the link to get updated information: +https://forum.freecad.org/viewtopic.php?t=78431 -This work is licensed under the Creative Commons Attribution-ShareAlike 4.0 International License. -To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/4.0/. - - -INSTALLATION +INSTALLATION WHEN NECESSARY ============================================================================================================ 1) Place the .qss files and /images/ folder in the path that fits your OS: OSX = /Users/[YOUR_USER_NAME]/Library/Preferences/FreeCAD/Gui/Stylesheets/ WINDOWS = C:/[INSTALLATION_PATH]/FreeCAD/data/Gui/Stylesheets/ LINUX = /home/[YOUR_USER_NAME]/.FreeCAD/Gui/Stylesheets/ - -CUSTOMIZATION ============================================================================================================ -If you would like to change the overall look/style of the theme, just find and replace following colors in the whole file: - BACKGROUND (darker to lighter) - black - #505050 - #6e6e6e - #828282 - #a2a2a0 - #b6b6b6 - #c8c8c8 - #c3c3c3 - #d2d2d2 - #dcdcdc - #e0e0e0 - #e6e6e6 - #f0f0f0 - #f5f5f5 = main background color - white - - SELECTION (darker to lighter) - #624b14 - #b28416 - #d0970c - #daa116 = main selection color - #e2ac2a = used to build QSpinBox up and down buttons, it's used as color in the middle - #e3b64d - #e0c992 - #e3d8b9 +TO MODIFY USE THESE COLORS: + #ffb916 + #ffe098 +See Qt documentation: + + - https://doc.qt.io/qt-5/stylesheet.html + - https://doc.qt.io/qt-5/stylesheet-reference.html + - https://doc.qt.io/qt-5/stylesheet-examples.html + +--------------------------------------------------------------------------- */ -KNOWN BUGS and TO DO -============================================================================================================ -Please, follow the link to get updated information: https://forum.freecad.org/viewtopic.php?f=10&t=12417 +/* Reset elements ------------------------------------------------------------ -*/ +Resetting everything helps to unify styles across different operating systems - -/*================================================================================================== -Reset elements -==================================================================================================*/ -/* Resetting everything helps to unify styles across different operating systems */ +--------------------------------------------------------------------------- */ * { - padding: 0px; - margin: 0px; - border: 0px; - border-style: none; - border-image: none; - outline: 0; - color: #505050; /* Default color for labels and different text elements that usually use dark colors */ + padding: 0px; + margin: 0px; + border: 0px; + border-style: none; + border-image: none; + outline: 0; } /* specific reset for elements inside QToolBar */ QToolBar * { - margin: 0px; - padding: 0px; + margin: 0px; + padding: 0px; } +/*hacks */ -/*================================================================================================== -Main window -==================================================================================================*/ -QMainWindow, -QDialog, -QDockWidget, -QToolBar { - background-color: #f5f5f5; /* main background color */ -} - -QMdiArea { - background-image: url(qss:images_dark-light/background_freecad_dark.svg); - background-position: center center; - background-repeat: no-repeat; -} - - -/*================================================================================================== -Sub windows -==================================================================================================*/ -QMdiSubWindow { - border:1px solid #828282; - margin-top: 30px; - margin-left: 4px; - margin-right: 4px; - margin-bottom:4px; -} - - -/*================================================================================================== -MENUS -==================================================================================================*/ -QMenuBar, -QMenuBar::item { - color: black; - background-color: #f5f5f5; /* main background color */ -} - -QMenu, -QMenu::item { - color: black; - background-color: #f5f5f5; /* main background color */ - text-decoration: none; -} - -QMenuBar::item:selected, -QMenuBar::item:pressed, -QMenu::item:selected, -QMenu::item:pressed { - color: white; - background-color: #daa116; -} - -QMenu::right-arrow { - width: 10px; - height: 10px; - image:url(qss:images_dark-light/right_arrow_dark.svg); - margin-right: 2px; -} - -QMenu::right-arrow:selected { - image:url(qss:images_dark-light/right_arrow_lighter.svg); -} - -QMenu::item { - padding: 2px 4px; /* make room for icon at left */ - border: 1px solid transparent; /* reserve space for selection border */ -} - -QMenu::icon { - margin-left: 1px; - margin-right: 1px; -} - -QMenu::icon:checked { /* appearance of a 'checked' icon */ - background: #daa116; - border: 2px #daa116; - position: absolute; - border-radius: 2px; -} - -QMenu::separator { - height: 1px; - background-color: rgba(0,0,0,30); - margin: 6px 4px; -} - -QMenu::indicator:non-exclusive:checked { - color: white; -} - -/* Fix for elements inside a drop-down menu */ -QMenu QRadioButton, -QMenu QCheckBox, -QMenu QPushButton, -QMenu QToolButton { - color: black; /* same as regular QRadioButton and QCheckBox */ -} - -QMenu QRadioButton:hover, -QMenu QCheckBox:hover, -QMenu QPushButton:hover, -QMenu QToolButton:hover, -QMenu QPushButton:pressed, -QMenu QToolButton:pressed, -QMenu QPushButton:selected, -QMenu QToolButton:selected { - color: white; - background-color: #daa116; /* same as QMenu::item:selected and QMenu::item:pressed */ -} - -QMenu QRadioButton:disabled, -QMenu QCheckBox:disabled { - color: #6e6e6e; -} - -QMenu QRadioButton::indicator:disabled, -QMenu QCheckBox::indicator:disabled { - color: #6e6e6e; - background-color: transparent; - border: 1px solid #6e6e6e; -} - - -/*================================================================================================== -Tool bar -==================================================================================================*/ -QToolBar { - border: none; - padding: 2px; -} - -QToolBar::handle:top, -QToolBar::handle:bottom, -QToolBar::handle:horizontal { - background-image: url(qss:images_dark-light/Hmovetoolbar_dark.svg); - width: 10px; - margin: 4px 2px; - background-position: top right; - background-repeat: repeat-y; -} - -QToolBar::handle:left, -QToolBar::handle:right, -QToolBar::handle:vertical { - background-image: url(qss:images_dark-light/Vmovetoolbar_dark.svg); - height: 10px; - margin: 2px 4px; - background-position: left bottom; - background-repeat: repeat-x; -} - -QToolBar::separator:top, -QToolBar::separator:bottom, -QToolBar::separator:horizontal { - width: 1px; - margin: 6px 4px; - background-color: rgba(0,0,0,30); -} - -QToolBar::separator:left, -QToolBar::separator:right, -QToolBar::separator:vertical { - height: 1px; - margin: 4px 6px; - background-color: rgba(0,0,0,30); -} - - -/*================================================================================================== -Group box -==================================================================================================*/ -QGroupBox { - color: rgba(0,0,0,120); - border:1px solid rgba(0, 0, 0, 20); /* lighter than its own border-color */; - border-radius: 3px; - margin-top: 10px; - padding: 6px; - background-color: rgba(255, 255, 255, 15); -} - -QGroupBox:title { - top: -8px; - left: 12px; -} - -/* NOTE: QGroupBox checkboxes are styles with regular ones so that the all get the same style */ -/* QGroupBox::indicator { - width: 13px; - height: 13px; -} - -QGroupBox::indicator:unchecked { - image: url(:/images/checkbox_unchecked.png); -} */ - - -/*================================================================================================== -Tooltip -==================================================================================================*/ -QToolTip { - color: white; - background-color: #828282; - /*opacity: 90%; doesn't correctly work */ - padding: 4px; - border-radius: 3px; /* has no effect */ -} - - -/*================================================================================================== -Dock widget -==================================================================================================*/ -QDockWidget { - color: rgba(0,0,0,120); - titlebar-close-icon: url(qss:images_dark-light/close_dark.svg); - titlebar-normal-icon: url(qss:images_dark-light/undock_dark.svg); -} - -QDockWidget::title { - text-align: center; - background-color: rgba(0,0,0,10); - border: 4px solid #f5f5f5; /* fix to simulate margin between this :title and tabs */ /* same as main background color */ - border-radius: 6px; /* bigger than normal due to previous border fix */ - padding: 4px 0px; /* also needed because of previous border fix */ -} - -QDockWidget::close-button, -QDockWidget::float-button { - border: none; - background: transparent; - border-radius: 3px; - subcontrol-origin: padding; - subcontrol-position: right center; -} - -QDockWidget::close-button { - right: 4px; -} - -QDockWidget::float-button { - right: 22px; -} - -QDockWidget::close-button:hover, -QDockWidget::float-button:hover { - background-color: rgba(0,0,0,15); -} - -QDockWidget::close-button:pressed, -QDockWidget::float-button:pressed { - background-color: rgba(0,0,0,30); -} - -/* fix for Python Console (probably there is a smarter way to arrive to it) */ -QDockWidget > QFrame { - background-color: #f0f0f0; - border: 1px solid #c3c3c3; -} - - -/*================================================================================================== -Progress bar -==================================================================================================*/ -QProgressBar, -QProgressBar:horizontal { - color: white; - background-color: rgba(0,0,0,10); - text-align: center; - border: 1px solid rgba(0,0,0,80); - padding: 1px; - border-radius: 3px; -} -QProgressBar::chunk, -QProgressBar::chunk:horizontal { - background-color: qlineargradient(spread:pad, x1:1, y1:0.545, x2:1, y2:0, stop:0 #d0970c, stop:1 #daa116); - border-radius: 3px; -} - - -/*================================================================================================== -Scroll -==================================================================================================*/ -QAbstractScrollArea { - border-radius: 2px; - background-color: transparent; -} - -QAbstractScrollArea::corner { - border: none; - background-color: transparent; -} - -QScrollBar:horizontal { - background-color: transparent; - height: 15px; - margin: 0px; -} - -QScrollBar::handle:vertical, -QScrollBar::handle:horizontal { - background-color: rgba(0,0,0,80); -} - -QScrollBar::handle:vertical:hover, -QScrollBar::handle:horizontal:hover { - background-color: rgba(0,0,0,100); -} - -QScrollBar::handle:horizontal { - min-width: 5px; - border-radius: 3px; - margin: 4px 15px; -} - -QScrollBar::sub-line:horizontal { - margin: 1px 3px 0px 3px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/left_arrow_dark.svg); - width: 6px; - height: 10px; - subcontrol-position: left; - subcontrol-origin: margin; -} - -QScrollBar::add-line:horizontal { - margin: 1px 3px 0px 3px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/right_arrow_dark.svg); - width: 6px; - height: 10px; - subcontrol-position: right; - subcontrol-origin: margin; -} - -QScrollBar::sub-line:horizontal:hover, -QScrollBar::sub-line:horizontal:on { - border-image: url(qss:images_dark-light/left_arrow_darker.svg); -} - -QScrollBar::add-line:horizontal:hover, -QScrollBar::add-line:horizontal:on { - border-image: url(qss:images_dark-light/right_arrow_darker.svg); -} - -QScrollBar::up-arrow:horizontal, -QScrollBar::down-arrow:horizontal { - background-color: none; -} - -QScrollBar::add-page:horizontal, -QScrollBar::sub-page:horizontal { - background-color: transparent; -} - -QScrollBar:vertical { - background-color: transparent; - width: 15px; - margin: 0px; -} - -QScrollBar::handle:vertical { - min-height: 5px; - border-radius: 3px; - margin: 15px 4px; -} - -QScrollBar::sub-line:vertical { - margin: 3px 0px 3px 1px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/up_arrow_dark.svg); - height: 6px; - width: 10px; - subcontrol-position: top; - subcontrol-origin: margin; -} - -QScrollBar::add-line:vertical { - margin: 3px 0px 3px 1px; /* 1px to correctly fit the 10px width image */ - border-image: url(qss:images_dark-light/down_arrow_dark.svg); - height: 6px; - width: 10px; - subcontrol-position: bottom; - subcontrol-origin: margin; -} - -QScrollBar::sub-line:vertical:hover, -QScrollBar::sub-line:vertical:on { - border-image: url(qss:images_dark-light/up_arrow_darker.svg); -} - -QScrollBar::add-line:vertical:hover, -QScrollBar::add-line:vertical:on { - border-image: url(qss:images_dark-light/down_arrow_darker.svg); -} - -QScrollBar::up-arrow:vertical, -QScrollBar::down-arrow:vertical { - background-color: none; -} - -QScrollBar::add-page:vertical, -QScrollBar::sub-page:vertical { - background-color: transparent; -} - - -/*================================================================================================== -Tab bar -==================================================================================================*/ -QTabWidget::pane { - background-color: transparent; /* temporal (transparent background) */ /* tab content background color */ - position: absolute; -} - -QTabWidget::pane:top { - top: -1px; - border-top: 1px solid #d2d2d2; -} - -QTabWidget::pane:bottom { - bottom: -1px; - border-bottom: 1px solid #d2d2d2; -} - -QTabWidget::pane:left { - right: -1px; - border-right: 1px solid #d2d2d2; -} - -QTabWidget::pane:right { - left: -1px; - border-left: 1px solid #d2d2d2; -} - -QTabWidget::tab-bar:top, -QTabWidget::tab-bar:bottom { - left: 10px; -} - -QTabWidget::tab-bar:left, -QTabWidget::tab-bar:right { - top: 10px; -} - -QTabBar { - qproperty-drawBase: 0; /* important */ - background-color: transparent; -} - -/* Workaround for QTabBars created from docked QDockWidgets which don't draw the border if not set and reset as follows: */ -QTabBar { - border-top: 1px solid #d2d2d2; /* set color for all QTabBars */ -} -QDockWidget QTabBar { - border-color: transparent; /* set color for all QTabBars but ones created from QDockWidget */ -} -QDialog QTabBar { - border-color: transparent; /* set color for QTabBars inside Preferences dialog */ -} -/* end fix */ - -QTabBar::tab { - background-color: transparent; - border: 1px solid transparent; - padding: 3px; -} - -QTabBar::tab:top, -QTabBar::tab:bottom { - border-top-width: 4px; /* same as selected tab colored border in order to center close-button */ - border-bottom-width: 4px; /* same as selected tab colored border in order to center close-button */ - min-width: 11ex; - margin-left: 2px; - margin-right: 2px; -} - -QTabBar::tab:left, -QTabBar::tab:right { - border-left-width: 4px; /* same as selected tab colored border in order to center close-button */ - border-right-width: 4px; /* same as selected tab colored border in order to center close-button */ - min-height: 14ex; - margin-top: 2px; - margin-bottom: 2px; -} - -QTabBar::tab:selected { - background-color: #f5f5f5; /* same as tab content background color */ - border-color: #d2d2d2; -} - -QTabBar::tab:top:selected { - border-top: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #daa116, stop:1 #d0970c); /* selection color */ - border-bottom-color: #f5f5f5; /* same as tab content background color */ -} - -QTabBar::tab:bottom:selected { - border-bottom: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #daa116, stop:1 #d0970c); /* selection color */ - border-top-color: #f5f5f5; /* same as tab content background color */ -} - -QTabBar::tab:right:selected { - border-left: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:1, y2:0, stop:0 #daa116, stop:1 #d0970c); /* selection color */ - border-right-color: #f5f5f5; /* same as tab content background color */ -} - -QTabBar::tab:left:selected { - border-right: 4px solid qlineargradient(spread:pad, x1:0, y1:0, x2:1, y2:0, stop:0 #daa116, stop:1 #d0970c); /* selection color */ - border-left-color: #f5f5f5; /* same as tab content background color */ -} - -QTabBar::tab:!selected { - color: rgba(0,0,0,160); -} - -QTabBar::tab:!selected:hover { - color: rgba(0,0,0,220); - background-color: rgba(0,0,0,20); -} - -QTabBar::tab:first:selected { - margin-left: 0; /* the first selected tab has nothing to overlap with on the left */ -} - -QTabBar::tab:last:selected { - margin-right: 0; /* the last selected tab has nothing to overlap with on the right */ -} - -QTabBar::tab:only-one { - margin: 0; /* if there is only one tab, we don't want overlapping margins */ -} - -/* hack to access Preference TabBar background */ -QDialog#Gui__Dialog__DlgPreferences > QFrame QFrame { - background-color: transparent; /* main background color (in Windows is #f5f5f5) */ -} - -/* fix for previous hack that broke QTabWidget background on Windows */ -QDialog#Gui__Dialog__DlgPreferences QTabWidget::pane { - background-color: transparent; /* temporal (transparent background) */ -} - -/* hack to correctly align Preferences icon list on OSX */ -QDialog#Gui__Dialog__DlgPreferences > QListView { - min-width: 130px; -} - -/* unique styles for sections inside Preferences */ -QDialog#Gui__Dialog__DlgPreferences > QListView::item { - border-radius: 6px; -} - -QDialog#Gui__Dialog__DlgPreferences > QListView::item:hover { - background-color: #dcdcdc; -} - -QDialog#Gui__Dialog__DlgPreferences > QListView::item:selected { - color: white; - background-color: #daa116; -} - - -/*================================================================================================== -Tab bar buttons -==================================================================================================*/ -/* Close button */ -QTabBar::close-button { - subcontrol-origin: margin; - subcontrol-position: center right; /* only works for QT 4.6 and newer */; - border-radius: 2px; - background-image: url(qss:images_dark-light/close_dark.svg); - background-position: center center; - background-repeat: none; -} - -QTabBar::close-button:hover { - background-color: rgba(0,0,0,20); -} - -QTabBar::close-button:pressed { - background-color: rgba(0,0,0,30); -} - -/* Fix for lists inside Model tab */ -QDockWidget QTreeView, -QDockWidget QListView, -QDockWidget QTableView { - margin: 6px; - border: 1px solid #c3c3c3; /* same as regular QTreeView, QListView and QTableView */ - min-height: 40px; /* necessary in some areas of FreeCAD */ -} - -/* Buttons to scroll tabs if there is not space to show all of them: */ -QTabBar::scroller { - width: 20px; /* the width of the scroll buttons */ -} - -QTabBar QToolButton, -QTabBar QToolButton:hover { - background-color: #f5f5f5; /* same as main background color */ -} - -QTabBar QToolButton::right-arrow:enabled { - image: url(qss:images_dark-light/right_arrow_dark.svg); -} - -QTabBar QToolButton::right-arrow:disabled, -QTabBar QToolButton::right-arrow:off { - image: url(qss:images_dark-light/right_arrow_disabled_dark.svg); -} - -QTabBar QToolButton::right-arrow:hover { - image: url(qss:images_dark-light/right_arrow_darker.svg); -} - - QTabBar QToolButton::left-arrow:enabled { - image: url(qss:images_dark-light/left_arrow_dark.svg); -} - - QTabBar QToolButton::left-arrow:disabled, - QTabBar QToolButton::left-arrow:off { - image: url(qss:images_dark-light/left_arrow_disabled_dark.svg); -} - - QTabBar QToolButton::left-arrow:hover { - image: url(qss:images_dark-light/left_arrow_darker.svg); -} - - QTabBar QToolButton::up-arrow:enabled { - image: url(qss:images_dark-light/up_arrow_dark.svg); -} - - QTabBar QToolButton::up-arrow:disabled, - QTabBar QToolButton::up-arrow:off { - image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); -} - - QTabBar QToolButton::up-arrow:hover { - image: url(qss:images_dark-light/up_arrow_darker.svg); -} - - QTabBar QToolButton::down-arrow:enabled { - image: url(qss:images_dark-light/down_arrow_dark.svg); -} - - QTabBar QToolButton::down-arrow:disabled, - QTabBar QToolButton::down-arrow:off { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - - QTabBar QToolButton::down-arrow:hover { - image: url(qss:images_dark-light/down_arrow_darker.svg); -} - -QTabBar::tear { - /* default OS tear better */ -} - - -/*================================================================================================== -Tree and list views -==================================================================================================*/ -QTreeView, -QListView, -QTableView { - background-color: #f0f0f0; - alternate-background-color: #e6e6e6; /* related with QListView background */ - border: 1px solid #c3c3c3; - selection-color: white; - selection-background-color: #daa116; /* should be similar to QListView::item selected background-color */ - show-decoration-selected: 1; /* make the selection span the entire width of the view */ - border-radius: 3px; -} - -QListView::item:hover, -QTreeView::item:hover { - background-color: transparent; /* fix to homogenize it on all OSs */ -} - -QListView::item:selected, -QTreeView::item:selected { - color: white; /* should be similar to QListView selection-color */ - background-color: #daa116; /* should be similar to QListView selection-background-color */ - show-decoration-selected: 1; /* make the selection span the entire width of the view */ -} - -/* Property Editor QTreeView (FreeCAD custom widget) */ -Gui--PropertyEditor--PropertyEditor { - gridline-color: #d2d2d2; /* same as Group header background */ -} - -/* fix for column items background when a link is present */ -Gui--PropertyEditor--PropertyEditor > QWidget > QFrame:focus { - background-color: #e3d8b9; /* same as focused background color */ -} - -/* hack to hide weird redundant information inside the value of a Placement cell */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel, -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel:disabled { - color: transparent; - background-color: transparent; - border: none; - border-radius: 0px; - margin: 0px; - padding: 0px; -} - -/* hack to hide non editable cells inside Property values */ Gui--PropertyEditor--PropertyEditor QLineEdit:read-only, Gui--PropertyEditor--PropertyEditor QLineEdit:disabled, Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:read-only, @@ -796,15 +61,18 @@ Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:disabled { background-color: transparent; selection-color: transparent; selection-background-color: transparent; + +} +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel, +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel:disabled { + color: transparent; + background-color: transparent; + border: none; + border-radius: 1px; + margin: 0px; + padding: 0px; } -/* hack to hide weird redundant information inside cells with links and no editable data (but editable via "..." button) */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel { - color: black; - background-color: #e3d8b9; -} - -/* hack to disable margin inside Property values to following elements */ Gui--PropertyEditor--PropertyEditor QSpinBox, Gui--PropertyEditor--PropertyEditor QDoubleSpinBox, Gui--PropertyEditor--PropertyEditor QAbstractSpinBox, @@ -814,248 +82,1413 @@ Gui--PropertyEditor--PropertyEditor QComboBox { margin-right: 0px; padding-top: 0px; padding-bottom: 0px; -} -/* reset min-height to 0px inside list views */ -QTreeView > QWidget > QComboBox, -QTreeView > QWidget > QAbstractSpinBox, -QTreeView > QWidget > QSpinBox, -QTreeView > QWidget > QDoubleSpinBox, -QTreeView > QWidget > QLineEdit, -QTreeView > QWidget > QTextEdit, -QTreeView > QWidget > QTimeEdit, -QTreeView > QWidget > QDateEdit, -QTreeView > QWidget > QDateTimeEdit, -QTreeView > QWidget > Gui--ColorButton { - min-height: 0px; } -/* set border-radius to 0px inside list views */ -QTreeView > QWidget > QComboBox, -QTreeView > QWidget > QAbstractSpinBox, -QTreeView > QWidget > QSpinBox, -QTreeView > QWidget > QDoubleSpinBox, -QTreeView > QWidget > QLineEdit, -QTreeView > QWidget > QTextEdit, -QTreeView > QWidget > QTimeEdit, -QTreeView > QWidget > QDateEdit, -QTreeView > QWidget > QDateTimeEdit, -QTreeView > QWidget > QComboBox:drop-down, -QTreeView > QWidget > QAbstractSpinBox:up-button, -QTreeView > QWidget > QSpinBox:up-button, -QTreeView > QWidget > QDoubleSpinBox:up-button, -QTreeView > QWidget > QTimeEdit:up-button, -QTreeView > QWidget > QDateEdit:up-button, -QTreeView > QWidget > QDateTimeEdit:up-button, -QTreeView > QWidget > QAbstractSpinBox:down-button, -QTreeView > QWidget > QSpinBox:down-button, -QTreeView > QWidget > QDoubleSpinBox:down-button, -QTreeView > QWidget > QTimeEdit:down-button, -QTreeView > QWidget > QDateEdit:down-button, -QTreeView > QWidget > QDateTimeEdit:down-button, -QTreeView > QWidget > Gui--ColorButton { - border-radius: 0px; -} - -/* set focus colors to best viewing the editable fields */ -QTreeView > QWidget > QComboBox:focus, -QTreeView > QWidget > QAbstractSpinBox:focus, -QTreeView > QWidget > QSpinBox:focus, -QTreeView > QWidget > QDoubleSpinBox:focus, -QTreeView > QWidget > QLineEdit:focus, -QTreeView > QWidget > QTextEdit:focus, -QTreeView > QWidget > QTimeEdit:focus, -QTreeView > QWidget > QDateEdit:focus, -QTreeView > QWidget > QDateTimeEdit:focus { - border-color: #e3d8b9; /* same as focused background color */ - border-bottom-color: #e3b64d; /* same as focused border color */ -} - -QTreeView > QWidget > QAbstractSpinBox:read-only, -QTreeView > QWidget > QSpinBox:read-only, -QTreeView > QWidget > QDoubleSpinBox:read-only, -QTreeView > QWidget > QLineEdit:read-only, -QTreeView > QWidget > QTextEdit:read-only, -QTreeView > QWidget > QTimeEdit:read-only, -QTreeView > QWidget > QDateEdit:read-only, -QTreeView > QWidget > QDateTimeEdit:read-only { - color: transparent; - background-color: transparent; - border-color: transparent; -} - -/* Fix to correctly (not totally) draw QTextEdit on OSX at Page properties: "Page result", "Template" and "Editable Texts" */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QWidget { - min-height: 14px; - border-radius: 0px; /* reset */ -} - - /*================================================================================================== -Header of tree and list views +Main window ==================================================================================================*/ -QHeaderView { - background-color: #c3c3c3; - border-top-left-radius: 2px; /* 1px less than its container */ - border-top-right-radius: 2px; /* 1px less than its container */ - border-bottom-left-radius: 0px; - border-bottom-right-radius: 0px; +QMainWindow, +QDialog, +QDockWidget, +QToolBar { + background-color: #F6F6F6; /* main background color */ } -QHeaderView::section { - border:none; - padding: 4px 6px; - background-color: #c3c3c3; +QMdiArea { + background-image: url(qss:images_dark-light/background_freecad.svg); + background-position: center center; + background-repeat: no-repeat; +} +/*navgation src/Mod/Tux/NavigationIndicatorGui.py */ +Gui--NavigationIndicatorGui--BlenderNavigationStyle { +/*QAction#a4 {*/ + qproperty-icon: url(:/icons/icons/NavigationBlender_dark.svg); +} +/*===== +/* QWidget ---------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QWidget { + background-color: #F6F6F6; + border: 0px solid #C1C1C1; + padding: 0px; + color: black; + selection-background-color: #ffb916; + selection-color: black; } -QHeaderView::section:horizontal { - padding: 4px 6px; /* left and right value similar to QHeaderView::section */ - border-right: 1px solid rgba(0,0,0,30); +QWidget:disabled { + background-color: transparent; + color: #A3A3A3; + selection-background-color: #ffb916; + selection-color: #A3A3A3; } -QHeaderView::section:vertical { - border-bottom: 1px solid rgba(0,0,0,30); +QWidget::item:selected { + background-color: #ffb916 +; } -QTableCornerButton::section { - background-color: #c3c3c3; - border-top: none; - border-left: none; - border-right: 1px solid rgba(0,0,0,30); - border-bottom: 1px solid rgba(0,0,0,30); -} + /* Causes issue with colorselector. + QWidget::item:hover:!selected { + background-color: #ffb916; + }*/ -QHeaderView::section:last { - border-right: none; -} +/* QMainWindow ------------------------------------------------------------ -QHeaderView::up-arrow { - image: url(qss:images_dark-light/up_arrow_dark.svg); -} +This adjusts the splitter in the dock widget, not qsplitter +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmainwindow -QHeaderView::up-arrow:hover { - image: url(qss:images_dark-light/up_arrow_darker.svg); -} - -QHeaderView::down-arrow { - image: url(qss:images_dark-light/down_arrow_dark.svg); -} - -QHeaderView::down-arrow:hover { - image: url(qss:images_dark-light/down_arrow_darker.svg); -} - -/* Group header inside Property Editor (FreeCAD custom widget) */ -Gui--PropertyEditor--PropertyEditor { - qproperty-groupTextColor: #828282; /* same as main background color */ - qproperty-groupBackground: #d2d2d2; /* same as item gridlines */ -} - - -/*================================================================================================== -Branch system for QTreeViews -==================================================================================================*/ -QTreeView::branch { - background: transparent; -} - -QTreeView::branch:has-siblings:!adjoins-item { - border-image: url(qss:images_dark-light/branch_vline_dark.svg) 0; -} - -QTreeView::branch:has-siblings:adjoins-item { - border-image: url(qss:images_dark-light/branch_more_dark.svg) 0; -} - -QTreeView::branch:!has-children:!has-siblings:adjoins-item { - border-image: url(qss:images_dark-light/branch_end_dark.svg) 0; -} - -QTreeView::branch:closed:has-children:has-siblings { - border-image: url(qss:images_dark-light/branch_more_closed_dark.svg) 0; -} - -QTreeView::branch:has-children:!has-siblings:closed { - border-image: url(qss:images_dark-light/branch_end_closed_dark.svg) 0; -} - -QTreeView::branch:open:has-children:has-siblings { - border-image: url(qss:images_dark-light/branch_more_open_dark.svg) 0; -} - -QTreeView::branch:open:has-children:!has-siblings { - border-image: url(qss:images_dark-light/branch_end_open_dark.svg) 0; -} - - -/*================================================================================================== -Splitter and windows separator -==================================================================================================*/ -QSplitter::handle { - margin: 0px 11px; - padding: 0px; -} - -QSplitter::handle:horizontal { - background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); - background-position: center center; - background-repeat: none; - margin: 4px 2px 4px 2px; - width: 2px; -} - -QSplitter::handle:vertical { - background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); - background-position: center center; - background-repeat: none; - margin: 2px 4px 2px 4px; - height: 2px; -} - -/* Similar to the splitter is the following window separator (but horizontal/vertical is on the opposite way) */ +--------------------------------------------------------------------------- */ QMainWindow::separator { - background-position: center center; - background-repeat: none; + /*background-color: #f6f6f6;*/ + border: 0px solid #C1C1C1; + spacing: 0px; + padding: 1px; +} + +QMainWindow::separator:vertical:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,stop:0.2 transparent,stop:0.5 #ffb916 , stop:0.8 transparent); + /*background-color: #ffb916;*/ + image: url(qss:images_dark-light/splitter_vertical_dark.svg); +} + +QMainWindow::separator:horizontal:hover { + background-color: qlineargradient(x1:0, y1:0, x2:1, y2:0,stop:0.2 transparent,stop:0.5 #ffb916 , stop:0.8 transparent); + /*background-color: #ffb916;*/ + image: url(qss:images_dark-light/splitter_horizontal_dark.svg); } QMainWindow::separator:horizontal { - height: 2px; - background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); - margin: 4px 2px 4px 2px; + width: 4px; + margin-top: 0.1px; + margin-bottom: 0.1px; + /* image: url(qss:images_dark-light/splitter_horizontal_light.svg);*/ } QMainWindow::separator:vertical { - width: 2px; - background-image: url(qss:images_dark-light/splitter_vertical_dark.svg); - margin: 2px 4px 2px 4px; + height: 4px; + margin-left: 0.1px; + margin-right: 0.1px; + /* image: url(qss:images_dark-light/splitter_vertical_light.svg);*/ +} + +/* QToolTip --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtooltip + +--------------------------------------------------------------------------- */ +QToolTip { + background-color: #ffffff; + color: black; + /* If you remove the border property, background stops working on Windows */ + border: none; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Remove opacity, fix #174 - may need to use RGBA */ +} + +/* QStatusBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qstatusbar + +--------------------------------------------------------------------------- */ +QStatusBar { + border: 0px solid #C1C1C1; + /* Fixes Spyder #9120, #9121 */ + background: #F6F6F6; + /* Fixes #205, black vertical borders separating items */ +} + +QStatusBar::item { + border: none; +} + +QStatusBar QToolTip { + background-color: #F6F6F6; + border: 1px solid #C1C1C1; + color: #F6F6F6; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Reducing transparency to read better */ + opacity: 230; +} + +QStatusBar QLabel { + /* Fixes Spyder #9120, #9121 */ + background: transparent; +} + +/* QCheckBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcheckbox + +--------------------------------------------------------------------------- */ +QCheckBox { + color: black; + padding: 0px; + outline: none; + border: 1px solid transparent; + background-color: transparent; +} + +QCheckBox:focus { + border: 1px solid #ffe098; +} + +QCheckBox QWidget:disabled { + background-color: transparent; + color: #A3A3A3; +} + +QCheckBox::indicator { + color: black; + background-color: #ffffff; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QCheckBox::indicator:unchecked { + background-color: #ffffff; + image:url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QCheckBox::indicator:unchecked:hover, QCheckBox::indicator:unchecked:focus, QCheckBox::indicator:unchecked:pressed { + background-color: #ffb916; + image:url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QCheckBox::indicator:unchecked:disabled { + background-color: #F6F6F6; + image:url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QCheckBox::indicator:checked { + background-color: #ffffff; + /*border: 1px solid #C1C1C1; /* QRadioButton has the same color */ + image:url(qss:images_dark-light/checkbox_dark.svg); +} + +QCheckBox::indicator:checked:hover, QCheckBox::indicator:checked:pressed { + background-color: #ffb916; +} + +QCheckBox::indicator:checked:disabled { + background-color: #F6F6F6; + image: url(qss:images_dark-light/check_dark.svg); +} + +QCheckBox::indicator:indeterminate { + background-color: #ffffff; + border: 1px solid #C1C1C1; + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QCheckBox::indicator:indeterminate:disabled { + background-color: #F6F6F6; + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QCheckBox::indicator:indeterminate:hover, QCheckBox::indicator:indeterminate:pressed { + background-color: #ffb916; /* QRadioButton has the same color */ +} + +/* QGroupBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qgroupbox + +--------------------------------------------------------------------------- */ +QGroupBox { + font-weight: bold; + border: 1px solid #C1C1C1; + border-radius: 1.9px; + padding: 2px; + margin-top: 10px; + margin-bottom: 4px; +} + +QGroupBox::title { + subcontrol-origin: margin; + subcontrol-position: top left; + left: 4px; + padding-left: 2px; + padding-right: 4px; + padding-top: 6px; +} + +QGroupBox::indicator { + color: black; + background-color: #f6f6f6; + border: 1px solid #C1C1C1; + width: 12px; + height: 12px; + border-radius:1px; +} + +QGroupBox::indicator:unchecked { + background-color: #f6f6f6; + border: 1px solid #C1C1C1; + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QGroupBox::indicator:unchecked:hover, QGroupBox::indicator:unchecked:focus, QGroupBox::indicator:unchecked:pressed { + background-color: #ffb916; +} + +QGroupBox::indicator:unchecked:disabled { + background-color: #ffffff; + border: 1px solid #C1C1C1; +} + +QGroupBox::indicator:checked { + border: none; + image:url(qss:images_dark-light/checkbox_dark.svg); +} + +QGroupBox::indicator:checked:hover, QGroupBox::indicator:checked:focus, QGroupBox::indicator:checked:pressed { + background-color: #ffb916; +} + +QGroupBox::indicator:checked:disabled { + background-color: #ffb916; +} + +/* QRadioButton ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qradiobutton + +--------------------------------------------------------------------------- */ +QRadioButton { + background-color: transparent; + color: black; + border: none; + spacing: 4px; + padding-top: 4px; + padding-bottom: 4px; + outline: none; +} + +QRadioButton:focus { + border: 1px solid #ffe098; +} + +QRadioButton:disabled { + background-color: #f6f6f6; + color: #A3A3A3; +} + +QRadioButton QWidget { + background-color: transparent; + color: black; + spacing: 0px; + padding: 0px; + outline: none; + border: none; +} + +QRadioButton::indicator { + background-color: #f6f6f6; + border: 1px solid #C1C1C1; + border-radius: 6px; + margin-left: 0px; + height: 11px; + width: 11px; +} + +QRadioButton::indicator:unchecked { + /*image:url(qss:images_dark-light/radiobutton_dark.svg);*/ +} + +QRadioButton::indicator:unchecked:hover, QRadioButton::indicator:unchecked:pressed { + background-color: #ffb916; + border: 1px solid #ffb916; + border-radius: 6px; +} + +QRadioButton::indicator:unchecked:disabled { + /*image:url(qss:images_dark-light/radiobutton_light.svg);*/ + border: 1px solid #C1C1C1; +} + +QRadioButton::indicator:checked { + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +QRadioButton::indicator:checked:hover, QRadioButton::indicator:checked:pressed { + background-color: #ffb916; + border: 1px solid #ffb916; + border-radius: 6px; + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +QRadioButton::indicator:checked:disabled { + outline: none; + background-color: #f6f6f6; + image:url(qss:images_dark-light/radiobutton_light.svg); +} + +/* QMenuBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenubar + +--------------------------------------------------------------------------- */ +QMenuBar { + background-color: #ffffff; + /*padding: 1px; + border: 0px solid rgba(0,0,0,140);*/ + color: black; + selection-background-color: #ffb916; +} + +QMenuBar:focus { + border: 1px solid #ffb916; +} + +QMenuBar::item { + background: transparent; + /*padding-left:5px; + padding-right: 5px; + padding-bottom: 1px; + padding-top: 1px;*/ +} + +QMenuBar::item:selected { + background: transparent; + border: 0px solid #C1C1C1; + background-color: #ffb916; +} + +QMenuBar::item:pressed { + /*padding: 2px; + padding-left: 10px; + padding-right: 10px;*/ + border: 0px solid #C1C1C1; + background-color: #ffb916; + color: black; + /*margin-bottom: 0px; + padding-bottom: 0px;*/ +} + +/* QMenu ------------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenu + +--------------------------------------------------------------------------- */ +QMenu { + border-bottom: 2px rgba(0,0,0,140); + border-right: 2px rgba(0,0,0,140); + color: black; + margin: 0px; + background-color: #ffffff; + selection-background-color: #ffb916; +} + +QMenu::separator { + height: 2px; + background-color: #f6f6f6; + margin-left: 30%; + margin-right: 30%; +} + +QMenu::item { + background-color: transparent; + padding: 2px 2px; /* make room for icon at left */ + /* Reserve space for selection border */ + border: 0px transparent #f6f6f6; +} + +QMenu::item:selected { + color: black; + background-color: #ffb916; +} + +QMenu::item:pressed { + background-color: #ffb916; +} + +QMenu::icon { + margin-left: 5px; + width: 14px; + height: 14px; +} + +QMenu::indicator { + margin-left: 2px; + margin-right: 2px; + padding: 0px; + width: 12px; + height: 12px; + /* non-exclusive indicator = check box style indicator (see QActionGroup::setExclusive) */ + /* exclusive indicator = radio button style indicator (see QActionGroup::setExclusive) */ +} + +QMenu::icon:checked { /* appearance of a 'checked' icon */ + background: #ffe098; + margin-left: -5px; + border: 5px solid #ffe098; + position: absolute; + border-radius: 0px; +} +QMenu::indicator:non-exclusive:unchecked { + image: url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QMenu::indicator:non-exclusive:unchecked:hover, QMenu::indicator:non-exclusive:unchecked:focus, QMenu::indicator:non-exclusive:unchecked:pressed { + border: none; + background: #ffb916; +} + +QMenu::indicator:non-exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QMenu::indicator:non-exclusive:checked { + image:url(qss:images_dark-light/checkbox_dark.svg); +} + +QMenu::indicator:non-exclusive:checked:hover, QMenu::indicator:non-exclusive:checked:focus, QMenu::indicator:non-exclusive:checked:pressed { + border: none; + background: #ffb916; +} + +QMenu::indicator:non-exclusive:checked:disabled { + image:url(qss:images_dark-light/checkbox_checked_disabled.svg); +} + +QMenu::indicator:non-exclusive:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:disabled { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:focus, QMenu::indicator:non-exclusive:indeterminate:hover, QMenu::indicator:non-exclusive:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QMenu::indicator:exclusive:unchecked { + image: url(qss:images_dark-light/transparent.svg); +} + +QMenu::indicator:exclusive:unchecked:hover, QMenu::indicator:exclusive:unchecked:focus, QMenu::indicator:exclusive:unchecked:pressed { + border: none; + outline: none; + background: #ffb916; + image: url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QMenu::indicator:exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QMenu::indicator:exclusive:checked { + border: none; + outline: none; + image: url(qss:images_dark-light/radiobutton_dark.svg); +} + +QMenu::indicator:exclusive:checked:hover, QMenu::indicator:exclusive:checked:focus, QMenu::indicator:exclusive:checked:pressed { + border: none; + outline: none; + background: #ffb916; + image: url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QMenu::indicator:exclusive:checked:disabled { + outline: none; + image: url(qss:images_dark-light/radiobutton_dark.svg); +} + +QMenu::right-arrow { + margin: 5px; + padding-left: 12px; + image:url(qss:images_dark-light/right_arrow_darker.svg); + height: 12px; + width: 12px; + background-color: transparent; +} + +/* QAbstractItemView ------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QAbstractItemView { + alternate-background-color: #ababab; + color: black; + border: 1px solid #C1C1C1; + border-radius: 2px; +} + +QAbstractItemView QLineEdit { + padding: 2px; +} + +/* QAbstractScrollArea ---------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QAbstractScrollArea { + background-color: transparent; + border: 0px solid #C1C1C1; + border-radius: 0px; + /* fix #159 */ + padding: 0px; + /* remove min-height to fix #244 */ + color: black; +} + +QAbstractScrollArea:disabled { + color: #A3A3A3; +} + +/* QScrollArea ------------------------------------------------------------ + +--------------------------------------------------------------------------- +text input field disabled!!!!*/ +QScrollArea QWidget:disabled { + background-color: #F6F6F6; +} + +/* QScrollBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qscrollbar + +--------------------------------------------------------------------------- */ +QScrollBar:horizontal { + height: 16px; + margin: 2px 16px 2px 16px; + border: 0px solid #C1C1C1; + border-radius: 1.9px; + background-color: #F6F6F6; +} + +QScrollBar:vertical { + background-color: #F6F6F6; + width: 16px; + margin: 16px 2px 16px 2px; + border: 0px solid #C1C1C1; + border-radius: 1.9px; +} + +QScrollBar::handle:horizontal { + background-color: #A3A3A3; + border: 1px solid #C1C1C1; + border-radius: 1.9px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:hover { + background-color: #ffb916; + border: #f6f6f6; + border-radius: 1.9px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:focus { + border: 1px solid #ffe098; +} + +QScrollBar::handle:vertical { + background-color: #A3A3A3; + border: 1px solid #C1C1C1; + min-height: 8px; + border-radius: 1.9px; +} + +QScrollBar::handle:vertical:hover { + background-color: #ffb916; + border: #f6f6f6; + border-radius: 1.9px; + min-height: 8px; +} + +QScrollBar::handle:vertical:focus { + border: 1px solid #ffe098; +} + +QScrollBar::add-line:horizontal { + border-image: url(qss:images_dark-light/right_arrow_dark.svg); + height: 9px; + width: 5px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:horizontal:hover, QScrollBar::add-line:horizontal:on { + border-image: url(qss:images_dark-light/right_arrow_dark.svg); + height: 9px; + width: 5px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical { + border-image: url(qss:images_dark-light/down_arrow_dark.svg); + height: 5px; + width: 9px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical:hover, QScrollBar::add-line:vertical:on { + border-image: url(qss:images_dark-light/down_arrow_darker.svg); + height: 5px; + width: 9px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/left_arrow_dark.svg); + height: 9px; + width: 5px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal:hover, QScrollBar::sub-line:horizontal:on { + border-image: url(qss:images_dark-light/left_arrow_darker.svg); + height: 9px; + width: 5px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/up_arrow_dark.svg); + height: 5px; + width: 9px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical:hover, QScrollBar::sub-line:vertical:on { + border-image: url(qss:images_dark-light/up_arrow_darker.svg); + height: 5px; + width: 9px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::up-arrow:horizontal, QScrollBar::down-arrow:horizontal { + background: none; +} + +QScrollBar::up-arrow:vertical, QScrollBar::down-arrow:vertical { + background: none; +} + +QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal { + background: none; +} + +QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical { + background: none; +} + +/* QTextEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-specific-widgets + + +report view +--------------------------------------------------------------------------- */ +QTextEdit { + background-color: #F6F6F6; + color: black; + border-radius: 1.9px; + border: 0px solid #C1C1C1; +} + +QTextEdit:focus { + border: 1px solid #ffe098; +} + +QTextEdit:selected { + background: #346792; + color: black; +} + +/* QPlainTextEdit --------------------------------------------------------- +Python +--------------------------------------------------------------------------- */ +QPlainTextEdit { + background-color: #f6f6f6; + color: black; + border-radius: 1.9px; + border: 0px solid #C1C1C1; +} + +QPlainTextEdit:focus { + border: 1px solid #ffe098; +} + +QPlainTextEdit:selected { + background: #ffb916; + color: black; +} + +/* QSizeGrip -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsizegrip + +--------------------------------------------------------------------------- */ +QSizeGrip { + background: transparent; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/sizegrip_dark.svg); +} + +/* QStackedWidget --------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QStackedWidget { + padding: 0px; + border: 0px solid #C1C1C1; +} + +/* QToolBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbar + +--------------------------------------------------------------------------- */ +QToolBar { + background-color: #F6F6F6; + border-bottom: 0px solid rgba(0,0,0,120); + padding: 1px; + font-weight: bold; + spacing: 1px; +} + +QToolBar:disabled { + /* Fixes #272 */ + background-color: #F6F6F6; +} + +QToolBar::handle:horizontal { + width: 8px; + margin: 3px 3px; + background-position: top right; + background-repeat: repeat-y; + background-image: url(qss:images_dark-light/Hmovetoolbar_dark.svg); +} + +QToolBar::handle:vertical { + height: 8px; + margin: 3px 3px; + background-position: left bottom; + background-repeat: repeat-x; + background-image: url(qss:images_dark-light/Vmovetoolbar_dark.svg); +} + +QToolBar::separator:horizontal { + width: 2px; + margin: 4px 4px; + background-color: transparent; +} + +QToolBar::separator:vertical { + height: 2px; + margin: 4px 4px; + background-color: transparent; +} + +/*The "show more" button (it can also be stylable with "QToolBarExtension" icon is not working Qproperty works but breaks when you move the toolbar see also */ +QToolButton#qt_toolbar_ext_button { +margin: 0px; +padding: 0px; +background-color: #A3A3A3; +/*background-image: url(qss:images_dark-light/more_dark.svg);*/ +background-repeat: none; +background-position: center center; +} + +QToolButton#qt_toolbar_ext_button:hover { +/*background-image: url(qss:images_dark-light/more_dark.svg);*/ +background-color: #ffb916; +} + +QToolButton#qt_toolbar_ext_button:on { +/*background-image: url(qss:images_dark-light/more_dark.svg);*/ +border-color: #f6f6f6; +background-color: #ffb916; } -/*================================================================================================== -Text/Python editor (macros, etc...) -==================================================================================================*/ -QPlainTextEdit, -QPlainTextEdit:focus { - background-color: #f0f0f0; - selection-color: white; - selection-background-color: #d0970c; - border: 1px solid #c3c3c3; - border-radius: 3px; - margin: 4px; +/* QAbstractSpinBox ------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractSpinBox, +QSpinBox { + background-color: #ffffff; + border: 1px solid transparent; + color: black; + /* This fixes 103, 111 */ + /* padding-top: 0px; + /* This fixes 103, 111 */ + /*padding-bottom: 0px; + /*padding-left: 4px; + /*padding-right: 4px; + border-radius: 1.9px;*/ + min-height: 1.7em; + /* min-width: 5px; removed to fix 109 */ +} + +QAbstractSpinBox:up-button { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #E2E2E2, stop:1 #EDEDED); + subcontrol-origin: border; + subcontrol-position: top right; + border: 1px solid transparent; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-bottom: -1px;*/ +} + +QAbstractSpinBox::up-arrow, QAbstractSpinBox::up-arrow:disabled, QAbstractSpinBox::up-arrow:off { + image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); + /* height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::up-arrow:hover { + image: url(qss:images_dark-light/up_arrow_darker.svg); +} + +QAbstractSpinBox:down-button { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #E2E2E2, stop:1 #EDEDED); + subcontrol-origin: border; + subcontrol-position: bottom right; + border: 1px solid transparent; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-top: -1px;*/ +} + +QAbstractSpinBox::down-arrow, QAbstractSpinBox::down-arrow:disabled, QAbstractSpinBox::down-arrow:off { + image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); + /*height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::down-arrow:hover { + image: url(qss:images_dark-light/down_arrow_darker.svg); +} + +QAbstractSpinBox:hover { + /*border: 1px solid #ffb916; + color: black;*/ +} + +QAbstractSpinBox:focus { + border: 1px solid #ffe098; +} + +QAbstractSpinBox:selected { + background: #ffe098; + /*color: black;*/ +} + +/* ------------------------------------------------------------------------ */ +/* DISPLAYS --------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QLabel ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe + +--------------------------------------------------------------------------- */ +QLabel { + background-color: transparent; + border: 0px solid #C1C1C1; + padding: 2px; + margin: 0px; + color: black; +} + +QLabel:disabled { + background-color: transparent; + border: 0px solid #C1C1C1; + color: #A3A3A3; +} + +QLabel[haslink="true"] { + color: orange; +} + + +/* QTextBrowser ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QTextBrowser { + background-color: #ffffff; + border: 1px solid #C1C1C1; + color: black; + border-radius: 1.9px; +} + +QTextBrowser:disabled { + background-color: #F6F6F6; + border: 1px solid #C1C1C1; + color: #A3A3A3; + border-radius: 1.9px; +} + +QTextBrowser:hover, QTextBrowser:!hover, QTextBrowser:selected, QTextBrowser:pressed { + border: 1px solid #ffb916; +} + +/* QGraphicsView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QGraphicsView { + background-color: transparent; + border: 0px solid #ffb916; + color: black; + border-radius: 0px; +} + +QGraphicsView:disabled { + background-color: #ffffff; + border: 0px solid #C1C1C1; + color: #A3A3A3; + border-radius: 0px; +} + +QGraphicsView:hover, QGraphicsView:!hover, QGraphicsView:selected, QGraphicsView:pressed { + border: 0px solid #ff00f7; +} + +/* QCalendarWidget -------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCalendarWidget { + border: 1px solid #C1C1C1; + border-radius: 1.9px; +} + +QCalendarWidget:disabled { + background-color: #A3A3A3; + color: #A3A3A3; +} + +/* QLCDNumber ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QLCDNumber { + background-color: #1aff00; + color: black; +} + +QLCDNumber:disabled { + background-color: #F6F6F6; + color: #A3A3A3; +} + +/* QProgressBar ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qprogressbar + +--------------------------------------------------------------------------- */ +QProgressBar { + background-color: #A3A3A3; + border: 1px solid #C1C1C1; + color: black; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar:disabled { + background-color: #ffffff; + border: 1px solid #C1C1C1; + color: #A3A3A3; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar::chunk { + background-color: #ffb916; + color: #F6F6F6; + border-radius: 1.9px; +} + +QProgressBar::chunk:disabled { + background-color: #ffffff; + color: #f6f6f6; + border-radius: 1.9px; +} + +/* ------------------------------------------------------------------------ */ +/* BUTTONS ---------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QPushButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qpushbutton + +--------------------------------------------------------------------------- */ +QPushButton { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #E2E2E2, stop:1 #EDEDED); + color: black; + border: 1px solid #EDEDED; + border-bottom-color: #AFAFAF; /* simulates shadow under the button */ + border-radius: 4px; + padding: 2px; +} + +QPushButton:disabled { + background-color: #F6F6F6; + color: #A3A3A3; + +} + +QPushButton:checked { + background-color: #ffb916; + outline: none; +} + +QPushButton:checked:disabled { + background-color: #ffb916; + color: #f6f6f6; + outline: none; +} + +QPushButton:checked:selected { + background: #ffb916; +} + +QPushButton:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #ffb916 , stop:1 #ffe098); + color: black; +} + +QPushButton:pressed { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #ffe098, stop:1 #ffb916 ); +} + +QPushButton:selected { + background: #ffe098; + color: black; +} + +QPushButton::menu-indicator { + subcontrol-origin: padding; + subcontrol-position: bottom right; + bottom: 4px; +} + +QDialogButtonBox QPushButton { + /* Issue # 194 # 248 - Special case of QPushButton inside dialogs, for better UI */ + min-width: 80px; +} + +/* QToolButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbutton + +--------------------------------------------------------------------------- */ +QToolButton { + background-color: transparent; + color: black; + border-radius: 1px; + padding: 0px; + outline: none; + border: none; + /* The subcontrols below are used only in the DelayedPopup mode */ + /* The subcontrols below are used only in the MenuButtonPopup mode */ + /* The subcontrol below is used only in the InstantPopup or DelayedPopup mode */ +} + +QToolButton:disabled { + background-color: transparent; + color: #A3A3A3; + border-radius: 1px; + padding: 0px; +} + +QToolButton:checked { + background-color: #ffb916; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:disabled { + background-color: #b65555; + color: #A3A3A3; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:hover { + background-color: #ffb916; + color: black; +} + +QToolButton:checked:pressed { + background-color: #ffb916; +} + +QToolButton:checked:selected { + background: #ffe098; + color: black; +} + +QToolButton:hover { + background-color: #ffb916; + color: black; +} + +QToolButton:pressed { + background-color: #ffe098; +} + +QToolButton:selected { + background: #ffb916; + color: black; +} + +QToolButton[popupMode="0"] { + /* Only for DelayedPopup */ + padding-right: 20px; +} + +QToolButton[popupMode="1"] { + /* Only for MenuButtonPopup */ + padding-right: 20px; +} +QToolButton[popupMode="0"]::menu-button { + border: none; +} + +QToolButton[popupMode="0"]::menu-button:hover { + border: none; + border-left: 2px solid #fe0000; + border-radius: 0px; +} +QToolButton[popupMode="1"]::menu-button { + border: none; +} + +QToolButton[popupMode="1"]::menu-button:hover { + border: none; + border-left: 2px solid #e5ff00; + border-radius: 0px; +} + +QToolButton[popupMode="2"] { + /* Only for InstantPopup */ + padding-right: 20px; +} + +QToolButton::menu-button { + border-bottom: 0px solid #b2b2b2; + border-radius: 2px; + /* 16px width + 4px for border = 20px allocated above */ + width: 1.6ex; + padding: 2px; + border-radius: 2px; + border: 0px #000000; +} + +QToolButton::menu-button:hover { + /* background: rgba(0, 0, 0, 0.5);*/ + +} + +QToolButton::menu-button:checked:hover { + /* background: rgba(0, 0, 0, 0.5);*/ +} + +QToolButton::menu-indicator { + /* Exclude a shift for better image */ + subcontrol-position: right bottom; + /* Shift it a bit */ +} + +QToolButton::menu-arrow { + image: url(qss:images_dark-light/more_arrow_dark.svg); + width: 1.5ex; + height: 1.5ex; + subcontrol-position: right bottom; + background: transparent; +} +QToolButton::menu-arrow:open { + subcontrol-position: right bottom; + image: url(qss:images_dark-light/more_arrow_dark.svg); +} +QToolButton::menu-arrow:hover { + image: url(qss:images_dark-light/more_arrow_dark.svg); + background-color: rgba(0, 0, 0, 0.498); + border: 1px solid rgba(0, 0, 0, 0.498); +} + +/* QCommandLinkButton ----------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCommandLinkButton { + background-color: transparent; + border: 1px solid #C1C1C1; + color: black; + border-radius: 1.9px; + padding: 0px; + margin: 0px; +} + +QCommandLinkButton:disabled { + background-color: transparent; + color: #A3A3A3; +} + +/* ------------------------------------------------------------------------ */ +/* INPUTS - NO FIELDS ----------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QComboBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QComboBox { + border: 1px solid transparent; + background: #ffffff; + border-radius: 2px; + selection-background-color: #ffb916; + padding-left: 2px; + padding-right: 2px; + /* padding-right = 36; 4 + 16*2 See scrollbar size */ + /* changed to 4px to fix #239 */ + /* Fixes #103, #111 */ + min-height: 1.5em; + /* padding-top: 2px; removed to fix #132 */ + /* padding-bottom: 2px; removed to fix #132 */ + /* min-width: 75px; removed to fix #109 */ + /* Needed to remove indicator - fix #132 */ +} +QComboBox:editable { + background: #ffffff; +} +QComboBox QAbstractItemView { + border: 0px solid #C1C1C1; + border-radius: 0px; + background-color: #ffffff; + selection-background-color: #ffb916; +} + +QComboBox QAbstractItemView:hover { + background-color:#ffffff; + color: black; +} + +QComboBox QAbstractItemView:selected { + background: #ffb916; + color: black; +} + +QComboBox QAbstractItemView:alternate { + background: #f6f6f6; +} + +QComboBox:disabled { + background-color: #F6F6F6; + color: #A3A3A3; +} + +QComboBox:hover { + /*background-color: #ffb916;*/ + border: 1px solid #ffb916; +} + +QComboBox:focus { + border: 1px solid #ffe098; +} + +QComboBox:on { + selection-background-color: #ffe098; +} + +QComboBox::indicator { + border: none; + border-radius: 0px; + background-color: transparent; + selection-background-color: transparent; + color: transparent; + selection-color: #ffb916; + /* Needed to remove indicator - fix #132 */ +} + +QComboBox::indicator:alternate { + background: #f6f6f6; +} + +QComboBox::item { + /* Remove to fix #282, #285 and MR #288*/ + /*&:checked { + font-weight: bold; + } + + &:selected { + border: 0px solid transparent; + } + */ +} + +QComboBox::item:alternate { + background: #f6f6f6; +} + +QComboBox::drop-down { + subcontrol-origin: padding; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #E2E2E2, stop:1 #EDEDED); + subcontrol-position: top right; + width: 14px; + border-left: 1px solid transparent; +} +QComboBox::drop-down:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #ffb916 , stop:1 #ffe098); +} + +QComboBox::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); + height: 10px; + width: 10px; +} + +QComboBox::down-arrow:on, QComboBox::down-arrow:hover, QComboBox::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_darker.svg); } /*================================================================================================== Tasks panel (custom FreeCAD class) ==================================================================================================*/ +Gui--PropertyEditor--PropertyEditor { + qproperty-groupTextColor: black; + qproperty-groupBackground: #f6f6f6; + border: 0px solid #C1C1C1; + +} + /* Action group */ QFrame[class="panel"] { - background-color: transparent; /* temporal (transparent background) */ +background-color: transparent; /* temporal (transparent background) */ + } QSint--ActionGroup { - padding: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ - margin: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +padding: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +margin: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ } /* Separator line */ @@ -1065,1256 +1498,1044 @@ QSint--ActionGroup QFrame[height="3"], QSint--ActionGroup QFrame[width="1"], QSint--ActionGroup QFrame[width="2"], QSint--ActionGroup QFrame[width="3"] { - border-color: rgba(0,0,0,60); +border-color: rgba(0,0,0,60); } /* Panel header */ QSint--ActionGroup QFrame[class="header"] { - border: none; - background-color: #b6b6b6; /* Task Panel Header background color */ - border-top-left-radius: 3px; - border-top-right-radius: 3px; - border-bottom-left-radius: 0px; - border-bottom-right-radius: 0px; - margin: 0px; - padding: 0px; +border-top: 1px solid #C1C1C1; +border-left: 1px solid #C1C1C1; +border-right: 1px solid #C1C1C1; +background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #E2E2E2, stop:1 #EDEDED); +border-top-left-radius: 3px; +border-top-right-radius: 3px; +border-bottom-left-radius: 0px; +border-bottom-right-radius: 0px; +margin: 0px; +padding: 0px; } QSint--ActionGroup QFrame[class="header"]:hover { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #daa116, stop:1 #d0970c); +background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #ffb916 , stop:1 #ffe098); } QSint--ActionGroup QToolButton[class="header"] { - color: white; /* Task Panel Header text color */ - text-align: left; - font-weight: bold; - border: none; - margin: 0px; - padding: 0px; +color: black; /* Task Panel Header text color */ +text-align: left; +font-weight: bold; +border: none; +margin: 0px; +padding: 0px; } QSint--ActionGroup QFrame[class="header"] QLabel { - background-color: transparent; - background-image: url(qss:images_dark-light/down_arrow_light.svg); - background-repeat: none; - background-position: center center; - padding: 0px; - margin: 0px; +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_dark.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; } QSint--ActionGroup QFrame[class="header"] QLabel:hover { - background-color: transparent; - background-image: url(qss:images_dark-light/down_arrow_lighter.svg); +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_darker.svg); } QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"] { - background-color: transparent; - background-image: url(qss:images_dark-light/up_arrow_light.svg); - background-repeat: none; - background-position: center center; - padding: 0px; - margin: 0px; +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_dark.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; } QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"]:hover { - background-color: transparent; - background-image: url(qss:images_dark-light/up_arrow_lighter.svg); +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_darker.svg); } QSint--ActionGroup QFrame[class="content"] { - background-color: #e6e6e6; /* Task Panel background color */ - margin: 0px; - padding: 0px; - border: none; - border-top-left-radius: 0px; - border-top-right-radius: 0px; - border-bottom-left-radius: 3px; - border-bottom-right-radius: 3px; +background-color: transparent; /* Task Panel background color */ +margin: 0px; +padding: 0px; +border-bottom: 1px solid #C1C1C1; +border-left: 1px solid #C1C1C1; +border-right: 1px solid #C1C1C1; +border-top-left-radius: 0px; +border-top-right-radius: 0px; +border-bottom-left-radius: 3px; +border-bottom-right-radius: 3px; } QSint--ActionGroup QFrame[class="content"] > QWidget { - background-color: #e6e6e6; /* Task Panel background color */ +background-color: #F6F6F6; /* Task Panel background color */ } /* Fixs for tabs inside Task Panel */ QSint--ActionGroup QFrame[class="content"] QTabBar::tab:top:selected { - border-bottom-color: #e6e6e6; /* same as Task Panel background color */ +border-bottom-color: #ffb916; /* same as Task Panel background color */ } QSint--ActionGroup QFrame[class="content"] QTabBar::tab:bottom:selected { - border-top-color: #e6e6e6; /* same as Task Panel background color */ +border-top-color: #ffb916; /* same as Task Panel background color */ } QSint--ActionGroup QFrame[class="content"] QTabBar::tab:right:selected { - border-right-color: #e6e6e6; /* same as Task Panel background color */ +border-right-color: #ffb916; /* same as Task Panel background color */ } QSint--ActionGroup QFrame[class="content"] QTabBar::tab:left:selected { - border-left-color: #e6e6e6; /* same as Task Panel background color */ +border-left-color: #ffb916; /* same as Task Panel background color */ } /* Fix for buttons with icons that showed cropped (still not happy with result) */ QSint--ActionGroup QFrame[class="content"] > QWidget > QPushButton { - padding: 2px; /* bigger padding crops text and icons... */ - margin: 0px; +padding: 2px; /* bigger padding crops text and icons... */ +margin: 0px; } -/* Fix for lists inside task panels */ -/* QSint--ActionGroup QFrame[class="content"] QTreeView, +/* Fix for lists inside task panels */ /* sketcher constraints list */ +QSint--ActionGroup QFrame[class="content"] QTreeView, QSint--ActionGroup QFrame[class="content"] QListView, QSint--ActionGroup QFrame[class="content"] QTableView { - color: #f5f5f5; - background-color: #787878; -} */ - - -/*================================================================================================== -Buttons -==================================================================================================*/ -/* Common */ -QComboBox, -QAbstractSpinBox, -QSpinBox, -QDoubleSpinBox, -QLineEdit, -QTextEdit, -QTimeEdit, -QDateEdit, -QDateTimeEdit { - color: #6e6e6e; - background-color: #e0e0e0; - selection-color: white; - selection-background-color: #daa116; - border: 1px solid #e0e0e0; - border-radius: 3px; - min-width: 50px; /* it ensures the default value is correctly displayed */ - min-height: 20px; /* important to be a pair number in order to up/down buttons to be divisible by two (if not set could create a blank line in Ubuntu. Its downside is that it's needed to reset it (min-width: 0px) on following elements that can't have it such as fields inside QToolBar and inside QTreeView (Property editor) */ - padding: 1px 2px; /* temporal: could don't be compatible with elements inside Tree/List view */ -} - -/* more contrast for QTexEdits */ -QTextEdit { - color: black; -} - -/* shifts text/number editable field to the left to make space for the up/down or drop-down buttons */ -QComboBox, -QAbstractSpinBox, -QSpinBox, -QDoubleSpinBox, -QTimeEdit, -QDateEdit, -QDateTimeEdit { - padding-right: 20px; -} - -/* when QTextEdit are no editable (like Report view)*/ -QTextEdit:!editable, -QTextEdit:!editable:focus { - background-color: #f0f0f0; - border: 1px solid #c3c3c3; -} - -QComboBox:focus, -QAbstractSpinBox:focus, -QSpinBox:focus, -QDoubleSpinBox:focus, -QLineEdit:focus, -QTextEdit:focus, -QTimeEdit:focus, -QDateEdit:focus, -QDateTimeEdit:focus { - color: black; - border-color: #e3b64d; - border-right-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #daa116, stop:1 #e3b64d); /* same as up/down or drop-down button color */ - background-color: #e3d8b9; -} - -QComboBox:disabled, -QAbstractSpinBox:disabled, -QSpinBox:disabled, -QDoubleSpinBox:disabled, -QLineEdit:disabled, -QTextEdit:disabled, -QTimeEdit:disabled, -QDateEdit:disabled, -QDateTimeEdit:disabled { - color: #c3c3c3; - background-color: #e0e0e0; /* same as enabled color */ - border-color: #e0e0e0; /* same as enabled color */ -} - -QAbstractSpinBox:up-button, -QSpinBox:up-button, -QDoubleSpinBox:up-button, -QTimeEdit:up-button, -QDateEdit:up-button, -QDateTimeEdit:up-button, -QAbstractSpinBox:down-button, -QSpinBox:down-button, -QDoubleSpinBox:down-button, -QTimeEdit:down-button, -QDateEdit:down-button, -QDateTimeEdit:down-button { - background-color: #d2d2d2; - subcontrol-origin: border; /* important */ - width: 20px; /* same as QComboBox ... QDateTimeEdit padding-right */ -} - -QAbstractSpinBox:up-button, -QSpinBox:up-button, -QDoubleSpinBox:up-button, -QTimeEdit:up-button, -QDateEdit:up-button, -QDateTimeEdit:up-button { - subcontrol-position: top right; - border-top-right-radius: 3px; -} - -QAbstractSpinBox:down-button, -QSpinBox:down-button, -QDoubleSpinBox:down-button, -QTimeEdit:down-button, -QDateEdit:down-button, -QDateTimeEdit:down-button { - subcontrol-position: bottom right; - border-bottom-right-radius: 3px; -} - -QAbstractSpinBox:up-button:focus, -QSpinBox:up-button:focus, -QDoubleSpinBox:up-button:focus, -QTimeEdit:up-button:focus, -QDateEdit:up-button:focus, -QDateTimeEdit:up-button:focus { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #e2ac2a, stop:1 #e3b64d); -} - -QAbstractSpinBox:down-button:focus, -QSpinBox:down-button:focus, -QDoubleSpinBox:down-button:focus, -QTimeEdit:down-button:focus, -QDateEdit:down-button:focus, -QDateTimeEdit:down-button:focus { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #daa116, stop:1 #e2ac2a); -} - -QAbstractSpinBox:up-button:disabled, -QSpinBox:up-button:disabled, -QDoubleSpinBox:up-button:disabled, -QTimeEdit:up-button:disabled, -QDateEdit:up-button:disabled, -QDateTimeEdit:up-button:disabled, -QAbstractSpinBox:down-button:disabled, -QSpinBox:down-button:disabled, -QDoubleSpinBox:down-button:disabled, -QTimeEdit:down-button:disabled, -QDateEdit:down-button:disabled, -QDateTimeEdit:down-button:disabled { - background-color: transparent; -} - -QAbstractSpinBox::up-arrow, -QSpinBox::up-arrow, -QDoubleSpinBox::up-arrow, -QTimeEdit::up-arrow, -QDateEdit::up-arrow, -QDateTimeEdit::up-arrow { - image: url(qss:images_dark-light/up_arrow_dark.svg); - top: 2px; /* fix symmetry between up and down images */ -} - -QAbstractSpinBox::up-arrow:focus, -QSpinBox::up-arrow:focus, -QDoubleSpinBox::up-arrow:focus, -QTimeEdit::up-arrow:focus, -QDateEdit::up-arrow:focus, -QDateTimeEdit::up-arrow:focus { - image: url(qss:images_dark-light/up_arrow_lighter.svg); -} - -QAbstractSpinBox::up-arrow:off, -QSpinBox::up-arrow:off, -QDoubleSpinBox::up-arrow:off, -QTimeEdit::up-arrow:off, -QDateEdit::up-arrow:off, -QDateTimeEdit::up-arrow:off { - image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); -} - -QAbstractSpinBox::up-arrow:disabled, -QSpinBox::up-arrow:disabled, -QDoubleSpinBox::up-arrow:disabled, -QTimeEdit::up-arrow:disabled, -QDateEdit::up-arrow:disabled, -QDateTimeEdit::up-arrow:disabled { - image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); -} - -QAbstractSpinBox::down-arrow, -QSpinBox::down-arrow, -QDoubleSpinBox::down-arrow, -QTimeEdit::down-arrow, -QDateEdit::down-arrow, -QDateTimeEdit::down-arrow { - image: url(qss:images_dark-light/down_arrow_dark.svg); - bottom: 0px; /* fix simetry between up and down images */ -} - -QAbstractSpinBox::down-arrow:focus, -QSpinBox::down-arrow:focus, -QDoubleSpinBox::down-arrow:focus, -QTimeEdit::down-arrow:focus, -QDateEdit::down-arrow:focus, -QDateTimeEdit::down-arrow:focus { - image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -QAbstractSpinBox::down-arrow:off, -QSpinBox::down-arrow:off, -QDoubleSpinBox::down-arrow:off, -QTimeEdit::down-arrow:off, -QDateEdit::down-arrow:off, -QDateTimeEdit::down-arrow:off { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - -QAbstractSpinBox::down-arrow:disabled, -QSpinBox::down-arrow:disabled, -QDoubleSpinBox::down-arrow:disabled, -QTimeEdit::down-arrow:disabled, -QDateEdit::down-arrow:disabled, -QDateTimeEdit::down-arrow:disabled { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - -/* ComboBox */ -QComboBox::drop-down { - background-color: #d2d2d2; - subcontrol-origin: border; /* important */ - subcontrol-position: top right; - width: 20px; - border-top-right-radius: 3px; - border-bottom-right-radius: 3px; -} - -QComboBox::drop-down:on, -QComboBox::drop-down:focus { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #daa116, stop:1 #e3b64d); -} - -QComboBox::down-arrow { - image: url(qss:images_dark-light/down_arrow_dark.svg); -} - -QComboBox::down-arrow:on, -QComboBox::down-arrow:focus { - image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -QComboBox::down-arrow:off, -QComboBox::down-arrow:disabled { - image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); -} - -/* ComboBox menu */ -QComboBox { - selection-color: white; - selection-background-color: #daa116; -} - -QComboBox QAbstractItemView { - color: #6e6e6e; /* same as regular QComboBox color */ - background-color: transparent; - selection-color: white; - selection-background-color: #daa116; - border-width: 5px 0px 5px 0px; - border-style: solid; - border-color: transparent; - margin: 0px -1px 0px 0px; /* temporal: hack for Mac... try it on Windows and Linux */ +color: black; +background-color: #ffffff; } -/*================================================================================================== -Push button -==================================================================================================*/ -QPushButton { - color: #6e6e6e; - text-align: center; - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #f5f5f5, stop:1 #e6e6e6); - border: 1px solid #d2d2d2; - border-bottom-color: #c3c3c3; /* simulates shadow under the button */ - padding: 4px 22px; - margin: 4px 4px; - min-height: 16px; /* same as QTabBar QPushButton min-width */ - border-radius: 4px; -} - -QPushButton:hover, -QPushButton:focus { - color: white; - border-color: #d0970c; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #daa116, stop:1 #d0970c); -} - -QPushButton:disabled, -QPushButton:disabled:checked { - color: #b6b6b6; - border-color: #e6e6e6; - background-color: #e6e6e6; -} - -QPushButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #d0970c, stop:1 #daa116); -} - -QPushButton:checked { - background-color: #daa116; - border-color: #d0970c; -} - -/* Color Buttons */ -Gui--ColorButton, -Gui--ColorButton:disabled { - padding: 0px; /* reset */ - margin: 0px; /* reset */ -} - -Gui--ColorButton { - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #f5f5f5, stop:1 #e6e6e6); - border: 1px solid #d2d2d2; - border-bottom-color: #c3c3c3; /* simulates shadow under the button */ -} - -Gui--ColorButton:disabled { - border-color: transparent; - background-color: rgba(0,0,0,10); -} - -Gui--ColorButton:hover, -Gui--ColorButton:focus { - border-color: #d0970c; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #daa116, stop:1 #d0970c); -} - -Gui--ColorButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #d0970c, stop:1 #daa116); -} - -/* Pushbutton style for "..." inside Placement cell which launches Placement tool */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QPushButton, -Gui--PropertyEditor--PropertyEditor > QWidget > QPushButton { - background-color: #b6b6b6; - border: 1px solid #828282; - min-width: 16px; /* reset it due to larger value on regular QPushButton, same or bigger value as regular QPushButton min-height */ - border-radius: 0px; - margin: 0px; /* reset */ - padding: 0px; /* reset */ -} - -Gui--PropertyEditor--PropertyEditor > QWidget > QPushButton { - text-align:left; - padding-left: 2px; -} - -/* Fix for Expressions description QFrame that is "broken" with initial reset */ -Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QWidget > QWidget > QFrame { - background-color: #f5f5f5; /* main background color */ - border: 1px solid #dcdcdc; - border-radius: 2px; - padding: 2px 6px; -} - -QPushButton:checked { - background-color: #daa116; - border-color: #d0970c; -} - -/*================================================================================================== -Tool button Icon fix in save dialogs -==================================================================================================*/ -/* found under Tools -> Save Picture */ /* Draft -> ShapeString -> Font file */ - -QFileDialog#QFileDialog QToolButton { - background-color: transparent; - padding: 1px; - border: 1px; - margin: 0px; -} - - -/*================================================================================================== -Tool button inside QDialogs that works as QPushButtons -==================================================================================================*/ -/* found under Tools -> Customize -> Macros -> Pixmap "..." button */ -QDialog QToolButton { - color: #6e6e6e; - text-align: center; - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #f5f5f5, stop:1 #e6e6e6); - border: 1px solid #d2d2d2; - border-bottom-color: #c3c3c3; /* simulates shadow under the button */ - padding: 0px; /* different than regular QPushButton */ - margin: 2px; /* different than regular QPushButton */ - min-height: 16px; /* same as QTabBar QPushButton min-width */ - border-radius: 4px; -} - -QDialog QToolButton:hover, -QDialog QToolButton:focus { - color: white; - border-color: #d0970c; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #daa116, stop:1 #d0970c); -} - -QDialog QToolButton:disabled, -QDialog QToolButton:disabled:checked { - color: #b6b6b6; - border-color: #e6e6e6; - background-color: #e6e6e6; -} - -QDialog QToolButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #d0970c, stop:1 #daa116); -} - - -/*================================================================================================== -Tool button inside Task Panel content that works as QPushButtons -==================================================================================================*/ /* found inside Part Design Workbench and "make a draft on a face" Task panel options */ QSint--ActionGroup QFrame[class="content"] QToolButton { - color: #6e6e6e; - text-align: center; - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #f5f5f5, stop:1 #e6e6e6); - border: 1px solid #d2d2d2; - border-bottom-color: #c3c3c3; /* simulates shadow under the button */ - padding: 2px 6px; /* different than regular QPushButton */ - margin: 2px; /* different than regular QPushButton */ - min-height: 16px; /* same as QTabBar QPushButton min-width */ - border-radius: 4px; + color: black; + text-align: center; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #E2E2E2, stop:1 #EDEDED); + border: 0px solid #C1C1C1; + padding: 1px 1px; /* different than regular QPushButton */ + margin: 0px; /* different than regular QPushButton */ + min-height: 16px; /* same as QTabBar QPushButton min-width */ + border-radius: 1px; } -QSint--ActionGroup QFrame[class="content"] QToolButton:hover, +QSint--ActionGroup QFrame[class="content"] QToolButton:hover{ + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #ffb916 , stop:1 #ffe098); + +} QSint--ActionGroup QFrame[class="content"] QToolButton:focus { - color: white; - border-color: #d0970c; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #daa116, stop:1 #d0970c); + border: 1px solid #ffe098 +; } QSint--ActionGroup QFrame[class="content"] QToolButton:disabled, QSint--ActionGroup QFrame[class="content"] QToolButton:disabled:checked { - color: #b6b6b6; - border-color: #e6e6e6; - background-color: #e6e6e6; + color: #A3A3A3; + background-color: #ffffff; } QSint--ActionGroup QFrame[class="content"] QToolButton:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #d0970c, stop:1 #daa116); + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #ffb916 , stop:1 #ffe098); + } -/* QToolButtons with a menu found in Sketcher task panel*/ -QSint--ActionGroup QToolButton::menu-button { - border: none; - border-top-right-radius: 4px; - border-bottom-right-radius: 4px; - padding: 2px; - width: 16px; /* 16px width + 4px for border = 20px allocated above */ - outline: none; - background-color: transparent; +/* QSlider ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qslider + +--------------------------------------------------------------------------- */ +QSlider:disabled { + background: #F6F6F6; } -QSint--ActionGroup QToolButton#settingsButton, -QSint--ActionGroup QToolButton#filterButton, -QSint--ActionGroup QToolButton#manualUpdate { - padding-right: 20px; /* make way for the popup button */ -} - -/* to give widget inside the menu same look as regular menu */ -QSint--ActionGroup QToolButton#filterButton QListWidget { - color: black; - background: #f5f5f5; - padding: 0px; - margin: 0px; -} - - -/*================================================================================================== -Radio button -==================================================================================================*/ -QRadioButton::indicator:unchecked{ - color: #505050; - background-color: rgba(0,0,0,20); - border: 1px solid #505050; -} - -QRadioButton::indicator:checked { - background-color: #daa116; /* QCheckBox has the same color */ - border: 1px solid #d0970c; /* QCheckBox has the same color */ - image:url(qss:images_dark-light/radiobutton_light.svg); -} - -QRadioButton, -QRadioButton:disabled { - color: #505050; - padding: 3px; - outline: none; - background-color: transparent; -} - -QRadioButton:disabled { - color: rgba(0,0,0,40); -} - -QRadioButton::indicator { - width: 11px; - height: 11px; - border-radius: 6px; -} - -QRadioButton::indicator:pressed { - border-color: #e0c992; -} - -QRadioButton::indicator:disabled { - color: #6e6e6e; - background-color: transparent; - border: 1px solid #6e6e6e; -} - -QRadioButton:focus { - border: none; -} - - -/*================================================================================================== -Checkbox -==================================================================================================*/ -QCheckBox, -QCheckBox:disabled { - color: #505050; - padding: 3px; - outline: none; - background-color: transparent; -} - -QCheckBox::indicator, -QGroupBox::indicator { - color: #c8c8c8; - background-color: rgba(0,0,0,20); - border: 1px solid #505050; - width: 11px; - height: 11px; - border-radius:2px; -} - -QCheckBox::indicator:pressed, -QCheckBox::indicator:non-exclusive:checked:pressed, -QCheckBox::indicator:indeterminate:pressed, -QCheckBox::indicator:checked:pressed, -QGroupBox::indicator:pressed, -QGroupBox::indicator:non-exclusive:checked:pressed, -QGroupBox::indicator:indeterminate:pressed, -QGroupBox::indicator:checked:pressed { - border-color: #e0c992; -} - -QCheckBox::indicator:checked, -QGroupBox::indicator:checked { - background-color: #daa116; /* QRadioButton has the same color */ - border: 1px solid #d0970c; /* QRadioButton has the same color */ - image:url(qss:images_dark-light/checkbox_light.svg); -} - -QCheckBox:disabled { - color: rgba(0,0,0,40); - background-color: transparent; -} - -QCheckBox::indicator:disabled, -QGroupBox::indicator:disabled { - background-color: rgba(0,0,0,20); - border: 1px solid rgba(0,0,0,20); -} - -QCheckBox::indicator:indeterminate, -QGroupBox::indicator:indeterminate { - background-color: #daa116; - border: 1px solid #d0970c; - image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); -} - -QCheckBox:focus { - border: none; -} - - -/*================================================================================================== -Checkboxes inside QListWidget and QTreeView -==================================================================================================*/ -QListWidget::indicator, -QTreeView::indicator { - color: #c8c8c8; - background-color: rgba(0,0,0,20); - border: 1px solid #505050; - width: 11px; - height: 11px; - border-radius:2px; -} - -/* fix for QTreeView::indicator losing its margin */ -QTreeView::indicator { - margin: 3px; -} - -QListWidget::indicator:selected, -QTreeView::indicator:selected { - background-color: #e6e6e6; -} - -QListWidget::indicator:checked:selected, -QListWidget::indicator:indeterminate:selected, -QTreeView::indicator:checked:selected, -QTreeView::indicator:indeterminate:selected { - background-color: #e3b64d; /* slightly lighter than default */ - border-color: #b28416; /* slightly darker than default */ -} - -QListWidget::indicator:pressed, -QListWidget::indicator:non-exclusive:checked:pressed, -QListWidget::indicator:indeterminate:pressed, -QListWidget::indicator:checked:pressed, -QTreeView::indicator:pressed, -QTreeView::indicator:non-exclusive:checked:pressed, -QTreeView::indicator:indeterminate:pressed, -QTreeView::indicator:checked:pressed { - border-color: #e0c992; -} - -QListWidget::indicator:checked, -QTreeView::indicator:checked { - background-color: #daa116; /* QRadioButton has the same color */ - border: 1px solid #d0970c; /* QRadioButton has the same color */ - image:url(qss:images_dark-light/checkbox_light.svg); -} - -QListWidget::indicator:disabled, -QTreeView::indicator:disabled { - background-color: rgba(0,0,0,20); - border: 1px solid rgba(0,0,0,20); -} - -QListWidget::indicator:indeterminate, -QTreeView::indicator:indeterminate { - background-color: #daa116; - border: 1px solid #d0970c; - image: url(qss:images_dark-light/checkbox_indeterminate_light.svg); -} - - -/*================================================================================================== -Slider -==================================================================================================*/ -QSlider, -QSlider:active, -QSlider:!active { - border: none; - background-color: transparent; -} - -QSlider:horizontal { - padding: 0px 10px; -} - -QSlider:vertical { - padding: 10px 0px; -} - -QSlider::groove { - background-color: rgba(0,0,0,30); - border: 1px solid rgba(0,0,0,40); - border-radius: 5px; - margin: 4px 0px; +QSlider:focus { + border: 1px solid #ffe098; } QSlider::groove:horizontal { - height: 8px; + background: #F6F6F6; + border: 1px solid #C1C1C1; + height: 4px; + margin: 0px; + border-radius: 1.9px; } QSlider::groove:vertical { - width: 8px; + background: #ffb916; + border: 1px solid #C1C1C1; + width: 4px; + margin: 0px; + border-radius: 1.9px; } -QSlider::groove:horizontal:disabled, -QSlider::groove:vertical:disabled { - border-color: #dcdcdc; - background-color: #dcdcdc; +QSlider::add-page:vertical { + background: #ffb916; + border: 1px solid #C1C1C1; + width: 4px; + margin: 0px; + border-radius: 1.9px; } -QSlider::handle:horizontal, -QSlider::handle:vertical { - background-color: #b6b6b6; - border: 1px solid #b6b6b6; - width: 14px; - height: 14px; - border-radius: 8px; +QSlider::add-page:vertical :disabled { + background: #f6f6f6; +} + +QSlider::sub-page:horizontal { + background: #ffb916; + border: 1px solid #C1C1C1; + height: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::sub-page:horizontal:disabled { + background: #ffb916; } QSlider::handle:horizontal { - margin: -4px 0; + background: #A3A3A3; + border: 1px solid #C1C1C1; + width: 8px; + height: 8px; + margin: -8px 0px; + border-radius: 1.9px; +} + +QSlider::handle:horizontal:hover { + background: #ffb916; + border: 1px solid #ffb916; +} + +QSlider::handle:horizontal:focus { + border: 1px solid #ffe098; } QSlider::handle:vertical { - margin: 0 -4px; + background: #A3A3A3; + border: 1px solid #C1C1C1; + width: 8px; + height: 8px; + margin: 0 -8px; + border-radius: 1.9px; } -QSlider::handle:horizontal:hover, -QSlider::handle:vertical:hover, -QSlider::handle:horizontal:pressed, -QSlider::handle:vertical:pressed { - border-color: #daa116; - background-color: #daa116; +QSlider::handle:vertical:hover { + background: #ffb916; + border: 2px solid #ffb916; } -QSlider::handle:horizontal:disabled, -QSlider::handle:vertical:disabled { - border-color: #dcdcdc; - background-color: #dcdcdc; +QSlider::handle:vertical:focus { + border: 1px solid #ffe098; +} + +/* QLineEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlineedit + +--------------------------------------------------------------------------- */ +QLineEdit { + background-color: #ffffff; + padding-top: 2px; + /* This QLineEdit fix 103, 111 */ + padding-bottom: 2px; + /* This QLineEdit fix 103, 111 */ + padding-left: 4px; + padding-right: 4px; + border-style: solid; + border: 1px solid #C1C1C1; + border-radius: 2px; + color: black; +} + +QLineEdit:disabled { + background-color: #F6F6F6; + color: #A3A3A3; +} + +QLineEdit:hover { + border: 1px solid #ffb916; + color: black; +} + +QLineEdit:focus { + border: 2px solid #ffe098; +} + +QLineEdit:selected { + background-color: #ffb916; + color: black; +} + +/* QTabWiget -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabWidget { + padding: 2px; + selection-background-color: #ffb916; +} + +QTabWidget QWidget { + /* Fixes #189 */ + border-radius: 1.9px; +} + +QTabWidget::pane { + margin: 0px; + /* Fixes double border inside pane with pyqt5 */ + padding: 0px; +} + +QTabWidget::pane:selected { + background-color: #ffb916; + border: 1px solid #C1C1C1; +} +/* QTabBar ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabBar, QDockWidget QTabBar { + qproperty-drawBase: 0; + /* left: 5px; move to the right by 5px - removed for fix */ +} + +QTabBar::close-button, QDockWidget QTabBar::close-button { + border: 0; + margin: 0; + padding: 1px; + image: url(qss:images_dark-light/close_dark.svg); +} + +QTabBar::close-button:hover, QDockWidget QTabBar::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); + /*background-color: rgba(255, 0, 0, 0.3);*/ +} + +QTabBar::close-button:pressed, QDockWidget QTabBar::close-button:pressed { + image: url(qss:images_dark-light/close_.svg); +} + +QTabBar::tab, QDockWidget QTabBar::tab { + /* !selected and disabled ----------------------------------------- */ + /* selected ------------------------------------------------------- */ + padding: 4px; +} + +QTabBar::tab:top:selected:disabled, QDockWidget QTabBar::tab:top:selected:disabled { + color: #797979; +} + +QTabBar::tab:bottom:selected:disabled, QDockWidget QTabBar::tab:bottom:selected:disabled { + color: #797979; +} + +QTabBar::tab:left:selected:disabled, QDockWidget QTabBar::tab:left:selected:disabled { + color: #A0A0A0; +} + +QTabBar::tab:right:selected:disabled, QDockWidget QTabBar::tab:right:selected:disabled { + color: #A0A0A0; +} + +QTabBar::tab:top:!selected:disabled, QDockWidget QTabBar::tab:top:!selected:disabled { + color: #A0A0A0; +} + +QTabBar::tab:bottom:!selected:disabled, QDockWidget QTabBar::tab:bottom:!selected:disabled { + color: #A0A0A0; + +} + +QTabBar::tab:left:!selected:disabled, QDockWidget QTabBar::tab:left:!selected:disabled { + color: #A0A0A0; + +} + +QTabBar::tab:right:!selected:disabled, QDockWidget QTabBar::tab:right:!selected:disabled { + color: #A0A0A0; +} + +QTabBar::tab:top:!selected, QDockWidget QTabBar::tab:top:!selected { + color: #A0A0A0; +} + +QTabBar::tab:bottom:!selected, QDockWidget QTabBar::tab:bottom:!selected { + color: #A0A0A0; +} + +QTabBar::tab:left:!selected, QDockWidget QTabBar::tab:left:!selected { + color: #A0A0A0; +} + +QTabBar::tab:right:!selected, QDockWidget QTabBar::tab:right:!selected { + color: #A0A0A0; +} + +QTabBar::tab:top, QDockWidget QTabBar::tab:top { + color: #A0A0A0; + margin-left: 0px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + min-width: 5px; + border-bottom: 1px solid #A3A3A3; /* same as tab content background color */ + border-radius: 0px; +} + +QTabBar::tab:top:selected, QDockWidget QTabBar::tab:top:selected { + color: black; + border-top: 4px solid #ffb916; /* selection color */ + border-bottom: 1px solid transparent; /* same as tab content background color */ + border-left: 1px solid #A3A3A3; + border-right: 1px solid #A3A3A3; + } + +QTabBar::tab:top:!selected:hover, QDockWidget QTabBar::tab:top:!selected:hover { + /*border: 1px solid #ffb916;*/ + border: 0px solid #ffb916; + background-color: #ffb916; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; + color: black; +} + +QTabBar::tab:bottom, QDockWidget QTabBar::tab:bottom { + color: #A0A0A0; + margin-left: 0px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + min-width: 5px; + border-top: 1px solid #A3A3A3; /* same as tab content background color */ + border-radius: 0px; +} + +QTabBar::tab:bottom:selected, QDockWidget QTabBar::tab:bottom:selected { + color: black; + border-bottom: 4px solid #ffb916; /* selection color */ + border-top: 1px solid transparent; /* same as tab content background color */ + border-left: 1px solid #A3A3A3; + border-right: 1px solid #A3A3A3; + +} + +QTabBar::tab:bottom:!selected:hover, QDockWidget QTabBar::tab:bottom:!selected:hover { +/*border: 1px solid #ffb916;*/ + border: 0px solid #ffb916; + background-color: #ffb916; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; + color: black; +} + +QTabBar::tab:left, QDockWidget QTabBar::tab:left { + background-color: #F6F6F6; + margin-top: 2px; + + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + border-radius: 4px; + min-height: 5px; +} + +QTabBar::tab:left:selected, QDockWidget QTabBar::tab:left:selected { + background-color: #F6F6F6; + border: 0px solid #ffe098; +} + +QTabBar::tab:left:!selected:hover, QDockWidget QTabBar::tab:left:!selected:hover { + border: 0px solid #ffb916; + background-color: #ffb916; + /* Fixes different behavior #271 */ + margin-right: 0px; + padding-right: -1px; + color: black; +} + +QTabBar::tab:right, QDockWidget QTabBar::tab:right { + background-color: #F6F6F6; + margin-top: 2px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + min-height: 5px; + border: 10px; +} + +QTabBar::tab:right:selected, QDockWidget QTabBar::tab:right:selected { + background-color: #F6F6F6; + border: 0px solid #ffe098; +} + +QTabBar::tab:right:!selected:hover, QDockWidget QTabBar::tab:right:!selected:hover { + border: 0px solid #ffb916; + background-color: #ffb916; + /* Fixes different behavior #271 */ + margin-left: 0px; + padding-left: 0px; + color: black; +} + +QTabBar QToolButton, QDockWidget QTabBar QToolButton { + /* Fixes #136 */ + background-color: #F6F6F6; + height: 12px; + width: 12px; +} + +QTabBar QToolButton:pressed, QDockWidget QTabBar QToolButton:pressed { + border: 0px solid #ffb916; + background-color: #ffb916; +} + +QTabBar QToolButton:pressed:hover, QDockWidget QTabBar QToolButton:pressed:hover { + border: 0px solid #ffb916; + background-color: #ffb916; + color: black; +} + +QTabBar QToolButton::left-arrow:enabled, QDockWidget QTabBar QToolButton::left-arrow:enabled { + image: url(qss:images_dark-light/left_arrow_darker.svg); +} + +QTabBar QToolButton::left-arrow:disabled, QDockWidget QTabBar QToolButton::left-arrow:disabled { + image: url(qss:images_dark-light/left_arrow_disabled_dark.svg); +} + +QTabBar QToolButton::right-arrow:enabled, QDockWidget QTabBar QToolButton::right-arrow:enabled { + image: url(qss:images_dark-light/right_arrow_darker.svg); +} + +QTabBar QToolButton::right-arrow:disabled, QDockWidget QTabBar QToolButton::right-arrow:disabled { + image: url(qss:images_dark-light/right_arrow_disabled_dark.svg); +} + +/* QDockWiget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QDockWidget { + background-color: #F6F6F6; + border: 1px solid #C1C1C1; + border-radius: 1.9px; + titlebar-close-icon: url(qss:images_dark-light/transparent.svg); + titlebar-normal-icon: url(qss:images_dark-light/transparent.svg); +} + +QDockWidget::title { + /* Better size for title bar */ + padding: 3px; + spacing: 4px; + border: none; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #E2E2E2, stop:1 #EDEDED); + text-align: center; + font-weight: bold; +} + +QDockWidget::close-button { + icon-size: 10px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/close_dark.svg); +} + +QDockWidget::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); +} + +QDockWidget::close-button:pressed { + image: url(qss:images_dark-light/close_dark.svg); +} + +QDockWidget::float-button { + icon-size: 12px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/undock_dark.svg); +} + +QDockWidget::float-button:hover { + /*background-color: #ffb916;*/ + image: url(qss:images_dark-light/undock_blue.svg); +} + +QDockWidget::float-button:pressed { + image: url(qss:images_dark-light/undock_dark.svg); +} + +/* QTreeView QListView QTableView ----------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtreeview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlistview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtableview + +--------------------------------------------------------------------------- */ +QTreeView::branch { + background: transparent; +} + +QTreeView::branch:has-siblings:!adjoins-item { + border-image: url(qss:images_dark-light/branch_vline_dark.svg) 0; +} + +QTreeView::branch:has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_more_dark.svg) 0; +} + +QTreeView::branch:!has-children:!has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_end_dark.svg) 0; +} + +QTreeView::branch:closed:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_closed_dark.svg) 0; +} + +QTreeView::branch:has-children:!has-siblings:closed { + border-image: url(qss:images_dark-light/branch_end_closed_dark.svg) 0; +} + +QTreeView::branch:open:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_open_dark.svg) 0; +} + +QTreeView::branch:open:has-children:!has-siblings { + border-image: url(qss:images_dark-light/branch_end_open_dark.svg) 0; +} + +QTreeView::indicator:checked, +QListView::indicator:checked, +QTableView::indicator:checked, +QColumnView::indicator:checked { + image: url(qss:images_dark-light/checkbox_dark.svg); +} + +QTreeView::indicator:checked:hover, QTreeView::indicator:checked:focus, QTreeView::indicator:checked:pressed, +QListView::indicator:checked:hover, +QListView::indicator:checked:focus, +QListView::indicator:checked:pressed, +QTableView::indicator:checked:hover, +QTableView::indicator:checked:focus, +QTableView::indicator:checked:pressed, +QColumnView::indicator:checked:hover, +QColumnView::indicator:checked:focus, +QColumnView::indicator:checked:pressed { + image: url(qss:images_dark-light/checkbox_light_hover.svg); +} + +QTreeView::indicator:unchecked, +QListView::indicator:unchecked, +QTableView::indicator:unchecked, +QColumnView::indicator:unchecked { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QTreeView::indicator:unchecked:hover, QTreeView::indicator:unchecked:focus, QTreeView::indicator:unchecked:pressed, +QListView::indicator:unchecked:hover, +QListView::indicator:unchecked:focus, +QListView::indicator:unchecked:pressed, +QTableView::indicator:unchecked:hover, +QTableView::indicator:unchecked:focus, +QTableView::indicator:unchecked:pressed, +QColumnView::indicator:unchecked:hover, +QColumnView::indicator:unchecked:focus, +QColumnView::indicator:unchecked:pressed { + image: url(qss:images_dark-light/checkbox_unchecked_hover_dark.svg); +} + +QTreeView::indicator:indeterminate, +QListView::indicator:indeterminate, +QTableView::indicator:indeterminate, +QColumnView::indicator:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QTreeView::indicator:indeterminate:hover, QTreeView::indicator:indeterminate:focus, QTreeView::indicator:indeterminate:pressed, +QListView::indicator:indeterminate:hover, +QListView::indicator:indeterminate:focus, +QListView::indicator:indeterminate:pressed, +QTableView::indicator:indeterminate:hover, +QTableView::indicator:indeterminate:focus, +QTableView::indicator:indeterminate:pressed, +QColumnView::indicator:indeterminate:hover, +QColumnView::indicator:indeterminate:focus, +QColumnView::indicator:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QTreeView, +QListView, +QTableView, +QColumnView { + background-color: #F6F6F6; /* background of a lot of stuff including spreadsheets.*/ + border: 0px solid #C1C1C1; + color: black; + gridline-color: #A3A3A3; + border-radius: 0px; +} + +QTableView, +QListView { + background-color: rgba(0, 0, 0, 0.050); /* background of a lot of stuff including spreadsheets.*/ } -/*================================================================================================== -Toolbar buttons -==================================================================================================*/ -/*QToolBar > QComboBox, disabled because creates different margins for body and drop-down button */ -QToolBar > QAbstractSpinBox, -QToolBar > QSpinBox, -QToolBar > QDoubleSpinBox, -QToolBar > QLineEdit, -QToolBar > QTextEdit, -QToolBar > QTimeEdit, -QToolBar > QDateEdit, -QToolBar > QDateTimeEdit { - margin: 0px 2px; - padding: 0px; - min-width: 70px; /* necessary to show its content */ +QTreeView:disabled, +QListView:disabled, +QTableView:disabled, +QColumnView:disabled { + background-color: #ffffff; + color: #A3A3A3; } -QToolBar > QComboBox, -QToolBar > QAbstractSpinBox, -QToolBar > QSpinBox, -QToolBar > QDoubleSpinBox, -QToolBar > QLineEdit, -QToolBar > QTextEdit, -QToolBar > QTimeEdit, -QToolBar > QDateEdit, -QToolBar > QDateTimeEdit { - min-height: 0px; /* reset it inside Tool Bar due to the user ability to set the "size of toolbar icons" inside Preferences */ +QTreeView:selected, +QListView:selected, +QTableView:selected, +QColumnView:selected { + background-color: #ffb916; + color: black; } -QToolBar > QPushButton { - padding: 0px; - margin: 1px; /* doesn't work with :left, :right:, :top or :bottom sub-controls */ - min-width: 16px; /* could not be larger due to switchable Preferences "Size of toolbar icons" */ - min-height: 16px; /* could not be larger due to switchable Preferences "Size of toolbar icons" */ - border-radius: 4px; /* same as regular QPushButton */ +QTreeView:focus, +QListView:focus, +QTableView:focus, +QColumnView:focus { + border: 1px solid #ffe098; } -QToolBar > QPushButton:checked { - border: 1px solid #e3b64d; - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #e3d8b9, stop:1 #e3b64d); +QTreeView::item:pressed, +QListView::item:pressed, +QTableView::item:pressed, +QColumnView::item:pressed { + background-color: #ffb916; } -QToolBar > QPushButton:!checked { - background-color: qlineargradient(spread:pad, x1:0, y1:0.3, x2:0, y2:1, stop:0 #f5f5f5, stop:1 #e6e6e6); - border: 1px solid #d2d2d2; - border-bottom-color: #c3c3c3; /* simulates shadow under the button */ - text-align: left; /* bug fix #4559 */ +QTreeView::item:selected:active, +QListView::item:selected:active, +QTableView::item:selected:active, +QColumnView::item:selected:active { + background-color: #ffb916; } -QToolBar > QPushButton:checked:hover { - border-color: #e2ac2a; +QTreeView::item:selected:!active, +QListView::item:selected:!active, +QTableView::item:selected:!active, +QColumnView::item:selected:!active { + color: black; + background-color: #A3A3A3; } -QToolBar > QPushButton:!checked:hover { +QTreeView::item:!selected:hover, +QListView::item:!selected:hover, +QTableView::item:!selected:hover, +QColumnView::item:!selected:hover { + outline: 0; + color: black; + background-color: #ffb916; +} + +QTableCornerButton::section { + background-color: #F6F6F6; + border: 1px transparent #C1C1C1; + border-radius: 0px; +} + +QTableView::item { color: black; - border-color: #b6b6b6; } - -QToolBar > QPushButton:checked:pressed { - background-color: #e3b64d; -} - -QToolBar > QPushButton:!checked:pressed { - background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #b6b6b6, stop:1 #e6e6e6); -} - -QToolBar > QPushButton:checked:disabled, -QToolBar > QPushButton:!checked:disabled { - border: none; - background-color: transparent; -} - -QToolBar > QToolButton { - margin: 2px; - padding: 2px; - border-radius: 3px; -} - -QToolBar > QToolButton:hover { - background-color: rgba(0,0,0,20); -} - -QToolBar > QToolButton:pressed { - background-color: rgba(0,0,0,30); -} - -/* ToolBar menu buttons (buttons with drop-down menu) */ -QToolBar > QToolButton#qt_toolbutton_menubutton { - padding-right: 20px; /* Hack to add more width to buttons with menu */ - border: 1px solid transparent; - border-radius: 3px; -} - -QToolBar > QToolButton#qt_toolbutton_menubutton:hover, -QToolBar > QToolButton#qt_toolbutton_menubutton:pressed, -QToolBar > QToolButton#qt_toolbutton_menubutton:open { - border: 1px solid #e3b64d; -} - -QToolBar QToolButton::menu-button, -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button { - border: none; - border-top-right-radius: 3px; - border-bottom-right-radius: 3px; - width: 16px; /* 16px width + 4px for border = 20px allocated above */ - outline: none; - background-color: transparent; -} - -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button:hover, -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button:pressed, -QToolBar > QToolButton#qt_toolbutton_menubutton::menu-button:open { - background-color: qlineargradient(spread:pad, x1:1, y1:0.8, x2:1, y2:0, stop:0 #daa116, stop:1 #e3b64d); -} - -QToolBar > QToolButton::menu-arrow { - background-image: url(qss:images_dark-light/down_arrow_dark.svg); - background-position: center center; - background-repeat: none; - subcontrol-origin: padding; - subcontrol-position: bottom right; - height: 10px; /* same as arrow image */ -} - -QToolBar > QToolButton::menu-arrow:hover { - background-image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -QToolBar > QToolButton::menu-arrow:open { - background-image: url(qss:images_dark-light/down_arrow_lighter.svg); -} - -/* when QToolButton is checked: */ -QToolButton:checked { - border: 1px solid #e3b64d; - background-color: rgba(124,171,249,60); /* transparency for #e3b64d color */ -} - -QToolButton:checked:hover { - border: 1px solid #e3b64d; - background-color: rgba(124,171,249,80); /* transparency for #e3b64d color */ -} - -/*The "show more" button (it can also be stylable with "QToolBarExtension" */ -QToolBar QToolButton#qt_toolbar_ext_button { - margin: 0px; - padding: 0px; - /*background-image: url(qss:images_dark-light/more_dark.svg);*/ - image: transparent; - background-repeat: none; - background-position: center left; -} - -QToolBar QToolButton#qt_toolbar_ext_button:hover { - /*background-image: url(qss:images_dark-light/more_light.svg);*/ - border-color: #e0e0e0; - background-color: #e0e0e0; -} - -QToolBar QToolButton#qt_toolbar_ext_button:on { - /*background-image: url(qss:images_dark-light/more_light.svg);*/ - border-color: #e0e0e0; - background-color: #e0e0e0; -} - - -/*================================================================================================== -Tables (spreadsheets) -==================================================================================================*/ QTableView { - gridline-color: #d2d2d2; - selection-color: #624b14; - selection-background-color: #e3d8b9; + /*qproperty-AliasedCellBackgroundColor: #f700ff;*/ + /*qproperty-aliasBgColor: #f700ff;*/ } -QTableView::item:hover { - background-color: rgba(0,0,0,10); /* temporal: is it displayed in Linux or Windows? on OSX it isn't */ +/* QHeaderView ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qheaderview + +--------------------------------------------------------------------------- */ +QHeaderView { + background-color: transparent; + text-align: center; } -QTableView::item:disabled { - color: #e6e6e6; +QHeaderView:disabled { + background-color: #F6F6F6; + color: rgb(174, 174, 174); } -QTableView::item:selected { - color: #624b14; - border-color: #e3d8b9; /* same as focused background color */ - border-bottom-color: #e3b64d; /* same as focused border color */ +QHeaderView::section { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #E2E2E2, stop:1 #EDEDED); + color: black; + border: 1px solid #C1C1C1; + font-size: 13px; + font-weight: bold; } -/* fix for elements inside the cells */ -QTableView > QWidget > QComboBox, -QTableView > QWidget > QAbstractSpinBox, -QTableView > QWidget > QSpinBox, -QTableView > QWidget > QDoubleSpinBox, -QTableView > QWidget > QLineEdit, -QTableView > QWidget > QTextEdit, -QTableView > QWidget > QTimeEdit, -QTableView > QWidget > QDateEdit, -QTableView > QWidget > QDateTimeEdit, -QTableView > QWidget > QComboBox:drop-down, -QTableView > QWidget > QAbstractSpinBox:up-button, -QTableView > QWidget > QSpinBox:up-button, -QTableView > QWidget > QDoubleSpinBox:up-button, -QTableView > QWidget > QTimeEdit:up-button, -QTableView > QWidget > QDateEdit:up-button, -QTableView > QWidget > QDateTimeEdit:up-button, -QTableView > QWidget > QAbstractSpinBox:down-button, -QTableView > QWidget > QSpinBox:down-button, -QTableView > QWidget > QDoubleSpinBox:down-button, -QTableView > QWidget > QTimeEdit:down-button, -QTableView > QWidget > QDateEdit:down-button, -QTableView > QWidget > QDateTimeEdit:down-button, -QTableView > QWidget > Gui--ColorButton { - border-radius: 0px; +QHeaderView::section::horizontal { + padding-top: 1px; + padding-bottom: 1px; + padding-left: 5px; + padding-right: 0px; } -QTableView > QWidget > QComboBox, -QTableView > QWidget > QAbstractSpinBox, -QTableView > QWidget > QSpinBox, -QTableView > QWidget > QDoubleSpinBox, -QTableView > QWidget > QLineEdit, -QTableView > QWidget > QTextEdit, -QTableView > QWidget > QTimeEdit, -QTableView > QWidget > QDateEdit, -QTableView > QWidget > QDateTimeEdit { - color: black; - background-color: transparent; - border-color: transparent; +QHeaderView::section::horizontal::first, QHeaderView::section::horizontal::only-one { + border-left: 0px solid #C1C1C1; } -QTableView > QWidget > QComboBox:drop-down, -QTableView > QWidget > QAbstractSpinBox:up-button, -QTableView > QWidget > QSpinBox:up-button, -QTableView > QWidget > QDoubleSpinBox:up-button, -QTableView > QWidget > QTimeEdit:up-button, -QTableView > QWidget > QDateEdit:up-button, -QTableView > QWidget > QDateTimeEdit:up-button, -QTableView > QWidget > QAbstractSpinBox:down-button, -QTableView > QWidget > QSpinBox:down-button, -QTableView > QWidget > QDoubleSpinBox:down-button, -QTableView > QWidget > QTimeEdit:down-button, -QTableView > QWidget > QDateEdit:down-button, -QTableView > QWidget > QDateTimeEdit:down-button, -QTableView > QWidget > Gui--ColorButton { - background-color: rgba(0,0,0,30); +QHeaderView::section::horizontal:disabled { + color: #A3A3A3; } -QTableView > QWidget > QComboBox:focus, -QTableView > QWidget > QAbstractSpinBox:focus, -QTableView > QWidget > QSpinBox:focus, -QTableView > QWidget > QDoubleSpinBox:focus, -QTableView > QWidget > QLineEdit:focus, -QTableView > QWidget > QTextEdit:focus, -QTableView > QWidget > QTimeEdit:focus, -QTableView > QWidget > QDateEdit:focus, -QTableView > QWidget > QDateTimeEdit:focus { - color: #624b14; - selection-color: white; - selection-background-color: #daa116; - border-color: #e3d8b9; - background-color: #e3d8b9; +QHeaderView::section::vertical { + padding-top: 1px; + padding-bottom: 0; + padding-left: 1px; + padding-right: 0px; + border-top: 2px solid #C1C1C1; } -QTableView > QWidget > QComboBox:disabled, -QTableView > QWidget > QAbstractSpinBox:disabled, -QTableView > QWidget > QSpinBox:disabled, -QTableView > QWidget > QDoubleSpinBox:disabled, -QTableView > QWidget > QLineEdit:disabled, -QTableView > QWidget > QTextEdit:disabled, -QTableView > QWidget > QTimeEdit:disabled, -QTableView > QWidget > QDateEdit:disabled, -QTableView > QWidget > QDateTimeEdit:disabled { - color: rgba(0,0,0,120); - background-color: transparent; - border-color: transparent; +QHeaderView::section::vertical::first, QHeaderView::section::vertical::only-one { + border-top: 2px solid #C1C1C1; } -QTableView > QWidget > QComboBox:read-only, -QTableView > QWidget > QAbstractSpinBox:read-only, -QTableView > QWidget > QSpinBox:read-only, -QTableView > QWidget > QDoubleSpinBox:read-only, -QTableView > QWidget > QLineEdit:read-only, -QTableView > QWidget > QTextEdit:read-only, -QTableView > QWidget > QTimeEdit:read-only, -QTableView > QWidget > QDateEdit:read-only, -QTableView > QWidget > QDateTimeEdit:read-only { - color: black; - background-color: transparent; - border-color: transparent; +QHeaderView::section::vertical:disabled { + border-top: 2px solid #C1C1C1; } - -/*================================================================================================== -SELECTORTOOLBAR widget (3rd party plugin) -==================================================================================================*/ -QToolBar:horizontal#Selector, -QToolBar:vertical#Selector { - background-color: rgba(0,0,0,120); - margin: 0px; - padding: 0px; +QHeaderView::down-arrow { + /* Those settings (border/width/height/background-color) solve bug */ + /* transparent arrow background and size */ + background-color: transparent; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/down_arrow_dark.svg); } -QToolBar::handle:top#Selector, -QToolBar::handle:bottom#Selector, -QToolBar::handle:horizontal#Selector { - alignment: bottom left; +QHeaderView::up-arrow { + background-color: transparent; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/up_arrow_dark.svg); } -QToolBar::handle:left#Selector, -QToolBar::handle:right#Selector, -QToolBar::handle:vertical#Selector { - width: 100%; - alignment: center left; +/* QToolBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbox +used in PATH + +--------------------------------------------------------------------------- */ +QToolBox { + padding: 0px; + border: 1px solid #A3A3A3; + border-radius: 4px; + background-color: transparent; } -QToolBar:top#Selector QToolButton, -QToolBar:bottom#Selector QToolButton, -QToolBar:horizontal#Selector QToolButton { - alignment: bottom left; +QToolBox:selected { + padding: 0px; + border: 0px solid #ffb916; } -QToolBar:left#Selector QToolButton, -QToolBar:right#Selector QToolButton, -QToolBar:vertical#Selector QToolButton { - alignment: center left; +QToolBox::tab { + background-color: transparent; + border: 0px solid #A3A3A3; + color: black; + background-image: url(qss:images_dark-light/down_arrow_darker.svg); + background-repeat: none; + background-position: center left; } -QToolButton[toolbar_orientation="horizontal"] { - /* nothing, when Horizontal there's no need to add special parameters */ +QToolBox::tab:disabled { + color: #A3A3A3; } -QToolButton[toolbar_orientation="vertical"] { - /* nothing, when Horizontal there's no need to add special parameters */ +QToolBox::tab:selected { + background-color: #A3A3A3; + background-image: url(qss:images_dark-light/transparent.svg); + padding-right: 5px; + background-repeat: none; } -QToolBar#Selector QToolButton { - border: none; - margin: 0px; - padding: 2px 6px; - border-radius: 0px; +QToolBox::tab:selected:disabled { + background-color: #A3A3A3; + border-bottom: 0px solid #cccccc; + color: black; } -/* Active tab */ -QToolBar#Selector QToolButton:checked { - color: black; - background-color: #f5f5f5; +QToolBox::tab:!selected { + } -/* Unactive tabs */ -QToolBar#Selector QToolButton:!checked { - color: rgba(255,255,255,160); - background-color: transparent; - margin: 0px; +QToolBox::tab:!selected:disabled { + background-color: #F6F6F6; } -/* Unactive tabs (hover) */ -QToolBar#Selector QToolButton:!checked:hover { - color: rgba(255,255,255,255); - background-color: rgba(255,255,255,20); +QToolBox::tab:hover { + background-color: #ffb916; + } + +QToolBox QScrollArea QWidget QWidget { + padding: 0px; + border: 0px; + background-color: transparent; } -/* Unactive tabs (pressed) */ -QToolBar#Selector QToolButton:!checked:pressed { - background-color: rgba(255,255,255,40); +/* QFrame ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe +https://doc.qt.io/qt-5/qframe.html#-prop +https://doc.qt.io/qt-5/qframe.html#details +https://stackoverflow.com/questions/14581498/qt-stylesheet-for-hline-vline-color + +--------------------------------------------------------------------------- */ +/* (dot) .QFrame fix #141, #126, #123 */ +.QFrame { + border-radius: 0px; + border: 0px solid #C1C1C1; + background-color: #A3A3A3; + /* No frame */ + /* HLine */ + /* HLine */ } - -/*================================================================================================== -TABBAR widget (3rd party plugin) -==================================================================================================*/ -QTabWidget#TabBar > QTabBar { - border-top: 0; +.QFrame[frameShape="0"] { + border-radius: 1.9px; + border: 1px solid #C1C1C1; } -QTabWidget#TabBar > QTabBar::tab:top, -QTabWidget#TabBar > QTabBar::tab:bottom { - min-width: -1; +.QFrame[frameShape="4"] { + max-height: 1px; + border: none; + background-color: #f6f6f6; } -QTabWidget#TabBar > QTabBar::tab:left, -QTabWidget#TabBar > QTabBar::tab:right { - min-height: -1; +.QFrame[frameShape="5"] { + max-width: 1px; + border: none; + background-color: #F6F6F6; } +/* QSplitter -------------------------------------------------------------- -/*================================================================================================== -EXPERIMENTAL -==================================================================================================*/ +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsplitter -/* Fix for preventing elements in different rows to accidentally overlap */ -QDialog QGroupBox QFrame { - margin: 2px 0px; +--------------------------------------------------------------------------- */ +QSplitter { + background-color: #f6f6f6; + spacing: 1px; + padding: 1px; + margin: 1px; } -*[mandatoryField="true"] { background-color: cyan } - -/* Hack to avoid QPushButton text partially hidden under menu-indicator */ -QPushButton#NavigationIndicator::menu-indicator { - image: none; - width: 0px; +QSplitter::handle { + margin: 0px 0px; + padding: 0px; } -/*================================================================================================== -SKETCHER -==================================================================================================*/ +QSplitter::handle:horizontal { + background-image: url(qss:images_dark-light/splitter_vertical_light.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + width: 1px; +} -Gui--StatefulLabel[state="empty_sketch"] { - color : rgba(0,0,0,127); /* 50% opacity black */ +QSplitter::handle:vertical { + background-image: url(qss:images_dark-light/splitter_horizontal_light.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + height: 1px; } -Gui--StatefulLabel[state="under_constrained"] { - color : rgba(0,0,0,255); /* Black */ + +QSplitter::handle:hover { + background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); + background-position: center center; + background-repeat: none; + background-color: #ffb916; } -Gui--StatefulLabel[state="conflicting_constraints"] { - color : rgba(255,0,0,255); /* Red */ + +/* QDateEdit, QDateTimeEdit ----------------------------------------------- + +--------------------------------------------------------------------------- */ +QDateEdit, QDateTimeEdit { + selection-background-color: #ffb916; + border-style: solid; + border: 1px solid #C1C1C1; + border-radius: 1.9px; + /* This fixes 103, 111 */ + padding-top: 2px; + /* This fixes 103, 111 */ + padding-bottom: 2px; + padding-left: 4px; + padding-right: 4px; + min-width: 10px; } -Gui--StatefulLabel[state="malformed_constraints"] { - color : rgba(255,0,0,255); /* Red */ + +QDateEdit:on, QDateTimeEdit:on { + selection-background-color: #ffb916; } -Gui--StatefulLabel[state="redundant_constraints"] { - color : rgba(255,69,0,255); /* Orange red */ + +QDateEdit::drop-down, QDateTimeEdit::drop-down { + subcontrol-origin: padding; + subcontrol-position: top right; + width: 12px; + border-left: 1px solid #C1C1C1; } -Gui--StatefulLabel[state="partially_redundant_constraints"] { - color : rgba(65,105,225,255); /* Royal blue */ + +QDateEdit::down-arrow, QDateTimeEdit::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); + height: 8px; + width: 8px; } -Gui--StatefulLabel[state="solver_failed"] { - color : rgba(255,0,0,255); /* Red */ - font-weight: bold; + +QDateEdit::down-arrow:on, QDateEdit::down-arrow:hover, QDateEdit::down-arrow:focus, QDateTimeEdit::down-arrow:on, QDateTimeEdit::down-arrow:hover, QDateTimeEdit::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_darker.svg); } -Gui--StatefulLabel[state="fully_constrained"] { - color : rgba(0,255,0,255); /* Green */ - font-weight: bold; + +QDateEdit QAbstractItemView, QDateTimeEdit QAbstractItemView { + background-color: #F6F6F6; + border-radius: 2px; + border: 1px solid #C1C1C1; + selection-background-color: #ffb916; } -Gui--UrlLabel { - color : rgba(0,0,255,255); /* Blue */ - text-decoration : underline; + +/* QAbstractView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractView:hover { + border: 1px solid #ffb916; + color: black; } + +QAbstractView:selected { + background: #ffb916; + color: black; +} + +/* PlotWidget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +PlotWidget { + /* Fix cut labels in plots #134 */ + padding: 0px; +} \ No newline at end of file diff --git a/src/Gui/Stylesheets/Light-pink.qss b/src/Gui/Stylesheets/Light-pink.qss new file mode 100644 index 0000000000..6a06f75461 --- /dev/null +++ b/src/Gui/Stylesheets/Light-pink.qss @@ -0,0 +1,2541 @@ +/* +ABOUT +============================================================================================================ +Revised stylesheet based on the original from Pablo Gil Fernández made by MisterMaker + +KNOWN BUGS and TO DO +============================================================================================================ +Please, follow the link to get updated information: +https://forum.freecad.org/viewtopic.php?t=78431 + +INSTALLATION WHEN NECESSARY +============================================================================================================ +1) Place the .qss files and /images/ folder in the path that fits your OS: + OSX = /Users/[YOUR_USER_NAME]/Library/Preferences/FreeCAD/Gui/Stylesheets/ + WINDOWS = C:/[INSTALLATION_PATH]/FreeCAD/data/Gui/Stylesheets/ + LINUX = /home/[YOUR_USER_NAME]/.FreeCAD/Gui/Stylesheets/ + +============================================================================================================ +TO MODIFY USE THESE COLORS: + #f892ff + #ffbff3 + + +See Qt documentation: + + - https://doc.qt.io/qt-5/stylesheet.html + - https://doc.qt.io/qt-5/stylesheet-reference.html + - https://doc.qt.io/qt-5/stylesheet-examples.html + +--------------------------------------------------------------------------- */ + + +/* Reset elements ------------------------------------------------------------ + +Resetting everything helps to unify styles across different operating systems + +--------------------------------------------------------------------------- */ +* { + padding: 0px; + margin: 0px; + border: 0px; + border-style: none; + border-image: none; + outline: 0; +} + +/* specific reset for elements inside QToolBar */ +QToolBar * { + margin: 0px; + padding: 0px; +} + +/*hacks */ + +Gui--PropertyEditor--PropertyEditor QLineEdit:read-only, +Gui--PropertyEditor--PropertyEditor QLineEdit:disabled, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:read-only, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:disabled { + color: transparent; + border-color: transparent; + background-color: transparent; + selection-color: transparent; + selection-background-color: transparent; + +} +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel, +Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel:disabled { + color: transparent; + background-color: transparent; + border: none; + border-radius: 1px; + margin: 0px; + padding: 0px; +} + +Gui--PropertyEditor--PropertyEditor QSpinBox, +Gui--PropertyEditor--PropertyEditor QDoubleSpinBox, +Gui--PropertyEditor--PropertyEditor QAbstractSpinBox, +Gui--PropertyEditor--PropertyEditor QLineEdit, +Gui--PropertyEditor--PropertyEditor QComboBox { + margin-left: 0px; + margin-right: 0px; + padding-top: 0px; + padding-bottom: 0px; + +} + +/*================================================================================================== +Main window +==================================================================================================*/ +QMainWindow, +QDialog, +QDockWidget, +QToolBar { + background-color: #F6F6F6; /* main background color */ +} + +QMdiArea { + background-image: url(qss:images_dark-light/background_freecad.svg); + background-position: center center; + background-repeat: no-repeat; +} +/*navgation src/Mod/Tux/NavigationIndicatorGui.py */ +Gui--NavigationIndicatorGui--BlenderNavigationStyle { +/*QAction#a4 {*/ + qproperty-icon: url(:/icons/icons/NavigationBlender_dark.svg); +} +/*===== +/* QWidget ---------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QWidget { + background-color: #F6F6F6; + border: 0px solid #C1C1C1; + padding: 0px; + color: black; + selection-background-color: #f892ff; + selection-color: black; +} + +QWidget:disabled { + background-color: transparent; + color: #A3A3A3; + selection-background-color: #f892ff; + selection-color: #A3A3A3; +} + +QWidget::item:selected { + background-color: #f892ff +; +} + + /* Causes issue with colorselector. + QWidget::item:hover:!selected { + background-color: #f892ff; + }*/ + +/* QMainWindow ------------------------------------------------------------ + +This adjusts the splitter in the dock widget, not qsplitter +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmainwindow + +--------------------------------------------------------------------------- */ +QMainWindow::separator { + /*background-color: #f6f6f6;*/ + border: 0px solid #C1C1C1; + spacing: 0px; + padding: 1px; +} + +QMainWindow::separator:vertical:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,stop:0.2 transparent,stop:0.5 #f892ff , stop:0.8 transparent); + /*background-color: #f892ff;*/ + image: url(qss:images_dark-light/splitter_vertical_dark.svg); +} + +QMainWindow::separator:horizontal:hover { + background-color: qlineargradient(x1:0, y1:0, x2:1, y2:0,stop:0.2 transparent,stop:0.5 #f892ff , stop:0.8 transparent); + /*background-color: #f892ff;*/ + image: url(qss:images_dark-light/splitter_horizontal_dark.svg); +} + +QMainWindow::separator:horizontal { + width: 4px; + margin-top: 0.1px; + margin-bottom: 0.1px; + /* image: url(qss:images_dark-light/splitter_horizontal_light.svg);*/ +} + +QMainWindow::separator:vertical { + height: 4px; + margin-left: 0.1px; + margin-right: 0.1px; + /* image: url(qss:images_dark-light/splitter_vertical_light.svg);*/ +} + +/* QToolTip --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtooltip + +--------------------------------------------------------------------------- */ +QToolTip { + background-color: #ffffff; + color: black; + /* If you remove the border property, background stops working on Windows */ + border: none; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Remove opacity, fix #174 - may need to use RGBA */ +} + +/* QStatusBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qstatusbar + +--------------------------------------------------------------------------- */ +QStatusBar { + border: 0px solid #C1C1C1; + /* Fixes Spyder #9120, #9121 */ + background: #F6F6F6; + /* Fixes #205, black vertical borders separating items */ +} + +QStatusBar::item { + border: none; +} + +QStatusBar QToolTip { + background-color: #F6F6F6; + border: 1px solid #C1C1C1; + color: #F6F6F6; + /* Remove padding, for fix combo box tooltip */ + padding: 0px; + /* Reducing transparency to read better */ + opacity: 230; +} + +QStatusBar QLabel { + /* Fixes Spyder #9120, #9121 */ + background: transparent; +} + +/* QCheckBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcheckbox + +--------------------------------------------------------------------------- */ +QCheckBox { + color: black; + padding: 0px; + outline: none; + border: 1px solid transparent; + background-color: transparent; +} + +QCheckBox:focus { + border: 1px solid #ffbff3; +} + +QCheckBox QWidget:disabled { + background-color: transparent; + color: #A3A3A3; +} + +QCheckBox::indicator { + color: black; + background-color: #ffffff; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QCheckBox::indicator:unchecked { + background-color: #ffffff; + image:url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QCheckBox::indicator:unchecked:hover, QCheckBox::indicator:unchecked:focus, QCheckBox::indicator:unchecked:pressed { + background-color: #f892ff; + image:url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QCheckBox::indicator:unchecked:disabled { + background-color: #F6F6F6; + image:url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QCheckBox::indicator:checked { + background-color: #ffffff; + /*border: 1px solid #C1C1C1; /* QRadioButton has the same color */ + image:url(qss:images_dark-light/checkbox_dark.svg); +} + +QCheckBox::indicator:checked:hover, QCheckBox::indicator:checked:pressed { + background-color: #f892ff; +} + +QCheckBox::indicator:checked:disabled { + background-color: #F6F6F6; + image: url(qss:images_dark-light/check_dark.svg); +} + +QCheckBox::indicator:indeterminate { + background-color: #ffffff; + border: 1px solid #C1C1C1; + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QCheckBox::indicator:indeterminate:disabled { + background-color: #F6F6F6; + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QCheckBox::indicator:indeterminate:hover, QCheckBox::indicator:indeterminate:pressed { + background-color: #f892ff; /* QRadioButton has the same color */ +} + +/* QGroupBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qgroupbox + +--------------------------------------------------------------------------- */ +QGroupBox { + font-weight: bold; + border: 1px solid #C1C1C1; + border-radius: 1.9px; + padding: 2px; + margin-top: 10px; + margin-bottom: 4px; +} + +QGroupBox::title { + subcontrol-origin: margin; + subcontrol-position: top left; + left: 4px; + padding-left: 2px; + padding-right: 4px; + padding-top: 6px; +} + +QGroupBox::indicator { + color: black; + background-color: #f6f6f6; + border: 1px solid #C1C1C1; + width: 12px; + height: 12px; + border-radius:1px; +} + +QGroupBox::indicator:unchecked { + background-color: #f6f6f6; + border: 1px solid #C1C1C1; + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QGroupBox::indicator:unchecked:hover, QGroupBox::indicator:unchecked:focus, QGroupBox::indicator:unchecked:pressed { + background-color: #f892ff; +} + +QGroupBox::indicator:unchecked:disabled { + background-color: #ffffff; + border: 1px solid #C1C1C1; +} + +QGroupBox::indicator:checked { + border: none; + image:url(qss:images_dark-light/checkbox_dark.svg); +} + +QGroupBox::indicator:checked:hover, QGroupBox::indicator:checked:focus, QGroupBox::indicator:checked:pressed { + background-color: #f892ff; +} + +QGroupBox::indicator:checked:disabled { + background-color: #f892ff; +} + +/* QRadioButton ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qradiobutton + +--------------------------------------------------------------------------- */ +QRadioButton { + background-color: transparent; + color: black; + border: none; + spacing: 4px; + padding-top: 4px; + padding-bottom: 4px; + outline: none; +} + +QRadioButton:focus { + border: 1px solid #ffbff3; +} + +QRadioButton:disabled { + background-color: #f6f6f6; + color: #BABABA; +} + +QRadioButton QWidget { + background-color: transparent; + color: black; + spacing: 0px; + padding: 0px; + outline: none; + border: none; +} + +QRadioButton::indicator { + background-color: #f6f6f6; + border: 1px solid #C1C1C1; + border-radius: 6px; + margin-left: 0px; + height: 11px; + width: 11px; +} + +QRadioButton::indicator:unchecked { + /*image:url(qss:images_dark-light/radiobutton_dark.svg);*/ +} + +QRadioButton::indicator:unchecked:hover, QRadioButton::indicator:unchecked:pressed { + background-color: #f892ff; + border: 1px solid #f892ff; + border-radius: 6px; +} + +QRadioButton::indicator:unchecked:disabled { + /*image:url(qss:images_dark-light/radiobutton_light.svg);*/ + border: 1px solid #C1C1C1; +} + +QRadioButton::indicator:checked { + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +QRadioButton::indicator:checked:hover, QRadioButton::indicator:checked:pressed { + background-color: #f892ff; + border: 1px solid #f892ff; + border-radius: 6px; + image:url(qss:images_dark-light/radiobutton_dark.svg); +} + +QRadioButton::indicator:checked:disabled { + outline: none; + background-color: #f6f6f6; + image:url(qss:images_dark-light/radiobutton_light.svg); +} + +/* QMenuBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenubar + +--------------------------------------------------------------------------- */ +QMenuBar { + background-color: #ffffff; + /*padding: 1px; + border: 0px solid rgba(0,0,0,140);*/ + color: black; + selection-background-color: #f892ff; +} + +QMenuBar:focus { + border: 1px solid #f892ff; +} + +QMenuBar::item { + background: transparent; + /*padding-left:5px; + padding-right: 5px; + padding-bottom: 1px; + padding-top: 1px;*/ +} + +QMenuBar::item:selected { + background: transparent; + border: 0px solid #C1C1C1; + background-color: #f892ff; +} + +QMenuBar::item:pressed { + /*padding: 2px; + padding-left: 10px; + padding-right: 10px;*/ + border: 0px solid #C1C1C1; + background-color: #f892ff; + color: black; + /*margin-bottom: 0px; + padding-bottom: 0px;*/ +} + +/* QMenu ------------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenu + +--------------------------------------------------------------------------- */ +QMenu { + border-bottom: 2px rgba(0,0,0,140); + border-right: 2px rgba(0,0,0,140); + color: black; + margin: 0px; + background-color: #ffffff; + selection-background-color: #f892ff; +} + +QMenu::separator { + height: 2px; + background-color: #f6f6f6; + margin-left: 30%; + margin-right: 30%; +} + +QMenu::item { + background-color: transparent; + padding: 2px 2px; /* make room for icon at left */ + /* Reserve space for selection border */ + border: 0px transparent #f6f6f6; +} + +QMenu::item:selected { + color: black; + background-color: #f892ff; +} + +QMenu::item:pressed { + background-color: #f892ff; +} + +QMenu::icon { + margin-left: 5px; + width: 14px; + height: 14px; +} + +QMenu::indicator { + margin-left: 2px; + margin-right: 2px; + padding: 0px; + width: 12px; + height: 12px; + /* non-exclusive indicator = check box style indicator (see QActionGroup::setExclusive) */ + /* exclusive indicator = radio button style indicator (see QActionGroup::setExclusive) */ +} + +QMenu::icon:checked { /* appearance of a 'checked' icon */ + background: #ffbff3; + margin-left: -5px; + border: 5px solid #ffbff3; + position: absolute; + border-radius: 0px; +} +QMenu::indicator:non-exclusive:unchecked { + image: url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QMenu::indicator:non-exclusive:unchecked:hover, QMenu::indicator:non-exclusive:unchecked:focus, QMenu::indicator:non-exclusive:unchecked:pressed { + border: none; + background: #f892ff; +} + +QMenu::indicator:non-exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_disabled.svg); +} + +QMenu::indicator:non-exclusive:checked { + image:url(qss:images_dark-light/checkbox_dark.svg); +} + +QMenu::indicator:non-exclusive:checked:hover, QMenu::indicator:non-exclusive:checked:focus, QMenu::indicator:non-exclusive:checked:pressed { + border: none; + background: #f892ff; +} + +QMenu::indicator:non-exclusive:checked:disabled { + image:url(qss:images_dark-light/checkbox_dark.svg); +} + +QMenu::indicator:non-exclusive:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:disabled { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QMenu::indicator:non-exclusive:indeterminate:focus, QMenu::indicator:non-exclusive:indeterminate:hover, QMenu::indicator:non-exclusive:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QMenu::indicator:exclusive:unchecked { + image: url(qss:images_dark-light/transparent.svg); +} + +QMenu::indicator:exclusive:unchecked:hover, QMenu::indicator:exclusive:unchecked:focus, QMenu::indicator:exclusive:unchecked:pressed { + border: none; + outline: none; + background: #f892ff; + image: url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QMenu::indicator:exclusive:unchecked:disabled { + image: url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QMenu::indicator:exclusive:checked { + border: none; + outline: none; + image: url(qss:images_dark-light/radiobutton_dark.svg); +} + +QMenu::indicator:exclusive:checked:hover, QMenu::indicator:exclusive:checked:focus, QMenu::indicator:exclusive:checked:pressed { + border: none; + outline: none; + background: #f892ff; + image: url(qss:images_dark-light/checkbox_unchecked_dark.svg); +} + +QMenu::indicator:exclusive:checked:disabled { + outline: none; + image: url(qss:images_dark-light/radiobutton_dark.svg); +} + +QMenu::right-arrow { + margin: 5px; + padding-left: 12px; + image:url(qss:images_dark-light/right_arrow_darker.svg); + height: 12px; + width: 12px; + background-color: transparent; +} + +/* QAbstractItemView ------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QAbstractItemView { + alternate-background-color: #ababab; + color: black; + border: 1px solid #C1C1C1; + border-radius: 2px; +} + +QAbstractItemView QLineEdit { + padding: 2px; +} + +/* QAbstractScrollArea ---------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QAbstractScrollArea { + background-color: transparent; + border: 0px solid #C1C1C1; + border-radius: 0px; + /* fix #159 */ + padding: 0px; + /* remove min-height to fix #244 */ + color: black; +} + +QAbstractScrollArea:disabled { + color: #BABABA; +} + +/* QScrollArea ------------------------------------------------------------ + +--------------------------------------------------------------------------- +text input field disabled!!!!*/ +QScrollArea QWidget:disabled { + background-color: #F6F6F6; +} + +/* QScrollBar ------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qscrollbar + +--------------------------------------------------------------------------- */ +QScrollBar:horizontal { + height: 16px; + margin: 2px 16px 2px 16px; + border: 0px solid #C1C1C1; + border-radius: 1.9px; + background-color: #F6F6F6; +} + +QScrollBar:vertical { + background-color: #F6F6F6; + width: 16px; + margin: 16px 2px 16px 2px; + border: 0px solid #C1C1C1; + border-radius: 1.9px; +} + +QScrollBar::handle:horizontal { + background-color: #A3A3A3; + border: 1px solid #C1C1C1; + border-radius: 1.9px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:hover { + background-color: #f892ff; + border: #f6f6f6; + border-radius: 1.9px; + min-width: 8px; +} + +QScrollBar::handle:horizontal:focus { + border: 1px solid #ffbff3; +} + +QScrollBar::handle:vertical { + background-color: #A3A3A3; + border: 1px solid #C1C1C1; + min-height: 8px; + border-radius: 1.9px; +} + +QScrollBar::handle:vertical:hover { + background-color: #f892ff; + border: #f6f6f6; + border-radius: 1.9px; + min-height: 8px; +} + +QScrollBar::handle:vertical:focus { + border: 1px solid #ffbff3; +} + +QScrollBar::add-line:horizontal { + border-image: url(qss:images_dark-light/right_arrow_dark.svg); + height: 9px; + width: 5px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:horizontal:hover, QScrollBar::add-line:horizontal:on { + border-image: url(qss:images_dark-light/right_arrow_dark.svg); + height: 9px; + width: 5px; + subcontrol-position: right; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical { + border-image: url(qss:images_dark-light/down_arrow_dark.svg); + height: 5px; + width: 9px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::add-line:vertical:hover, QScrollBar::add-line:vertical:on { + border-image: url(qss:images_dark-light/down_arrow_darker.svg); + height: 5px; + width: 9px; + subcontrol-position: bottom; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/left_arrow_dark.svg); + height: 9px; + width: 5px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:horizontal:hover, QScrollBar::sub-line:horizontal:on { + border-image: url(qss:images_dark-light/left_arrow_darker.svg); + height: 9px; + width: 5px; + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical { + margin: 0px 0px 0px 0px; + border-image: url(qss:images_dark-light/up_arrow_dark.svg); + height: 5px; + width: 9px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::sub-line:vertical:hover, QScrollBar::sub-line:vertical:on { + border-image: url(qss:images_dark-light/up_arrow_darker.svg); + height: 5px; + width: 9px; + subcontrol-position: top; + subcontrol-origin: margin; +} + +QScrollBar::up-arrow:horizontal, QScrollBar::down-arrow:horizontal { + background: none; +} + +QScrollBar::up-arrow:vertical, QScrollBar::down-arrow:vertical { + background: none; +} + +QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal { + background: none; +} + +QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical { + background: none; +} + +/* QTextEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-specific-widgets + + +report view +--------------------------------------------------------------------------- */ +QTextEdit { + background-color: #F6F6F6; + color: black; + border-radius: 1.9px; + border: 0px solid #C1C1C1; +} + +QTextEdit:focus { + border: 1px solid #ffbff3; +} + +QTextEdit:selected { + background: #346792; + color: black; +} + +/* QPlainTextEdit --------------------------------------------------------- +Python +--------------------------------------------------------------------------- */ +QPlainTextEdit { + background-color: #f6f6f6; + color: black; + border-radius: 1.9px; + border: 0px solid #C1C1C1; +} + +QPlainTextEdit:focus { + border: 1px solid #ffbff3; +} + +QPlainTextEdit:selected { + background: #f892ff; + color: black; +} + +/* QSizeGrip -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsizegrip + +--------------------------------------------------------------------------- */ +QSizeGrip { + background: transparent; + width: 12px; + height: 12px; + image:url(qss:images_dark-light/sizegrip_dark.svg); +} + +/* QStackedWidget --------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QStackedWidget { + padding: 0px; + border: 0px solid #C1C1C1; +} + +/* QToolBar --------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbar + +--------------------------------------------------------------------------- */ +QToolBar { + background-color: #F6F6F6; + border-bottom: 0px solid rgba(0,0,0,120); + padding: 1px; + font-weight: bold; + spacing: 1px; +} + +QToolBar:disabled { + /* Fixes #272 */ + background-color: #F6F6F6; +} + +QToolBar::handle:horizontal { + width: 8px; + margin: 3px 3px; + background-position: top right; + background-repeat: repeat-y; + background-image: url(qss:images_dark-light/Hmovetoolbar_dark.svg); +} + +QToolBar::handle:vertical { + height: 8px; + margin: 3px 3px; + background-position: left bottom; + background-repeat: repeat-x; + background-image: url(qss:images_dark-light/Vmovetoolbar_dark.svg); +} + +QToolBar::separator:horizontal { + width: 2px; + margin: 4px 4px; + background-color: transparent; +} + +QToolBar::separator:vertical { + height: 2px; + margin: 4px 4px; + background-color: transparent; +} + +/*The "show more" button (it can also be stylable with "QToolBarExtension" icon is not working Qproperty works but breaks when you move the toolbar see also */ +QToolButton#qt_toolbar_ext_button { +margin: 0px; +padding: 0px; +background-color: #A3A3A3; +/*background-image: url(qss:images_dark-light/more_dark.svg);*/ +background-repeat: none; +background-position: center center; +} + +QToolButton#qt_toolbar_ext_button:hover { +/*background-image: url(qss:images_dark-light/more_dark.svg);*/ +background-color: #f892ff; +} + +QToolButton#qt_toolbar_ext_button:on { +/*background-image: url(qss:images_dark-light/more_dark.svg);*/ +border-color: #f6f6f6; +background-color: #f892ff; +} + + +/* QAbstractSpinBox ------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractSpinBox, +QSpinBox { + background-color: #ffffff; + border: 1px solid transparent; + color: black; + /* This fixes 103, 111 */ + /* padding-top: 0px; + /* This fixes 103, 111 */ + /*padding-bottom: 0px; + /*padding-left: 4px; + /*padding-right: 4px; + border-radius: 1.9px;*/ + min-height: 1.7em; + /* min-width: 5px; removed to fix 109 */ +} + +QAbstractSpinBox:up-button { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #E2E2E2, stop:1 #EDEDED); + subcontrol-origin: border; + subcontrol-position: top right; + border: 1px solid transparent; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-bottom: -1px;*/ +} + +QAbstractSpinBox::up-arrow, QAbstractSpinBox::up-arrow:disabled, QAbstractSpinBox::up-arrow:off { + image: url(qss:images_dark-light/up_arrow_disabled_dark.svg); + /* height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::up-arrow:hover { + image: url(qss:images_dark-light/up_arrow_darker.svg); +} + +QAbstractSpinBox:down-button { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #E2E2E2, stop:1 #EDEDED); + subcontrol-origin: border; + subcontrol-position: bottom right; + border: 1px solid transparent; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + /*margin: 1px;*/ + /*width: 12px; + /*margin-top: -1px;*/ +} + +QAbstractSpinBox::down-arrow, QAbstractSpinBox::down-arrow:disabled, QAbstractSpinBox::down-arrow:off { + image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); + /*height: 8px; + width: 8px;*/ +} + +QAbstractSpinBox::down-arrow:hover { + image: url(qss:images_dark-light/down_arrow_darker.svg); +} + +QAbstractSpinBox:hover { + /*border: 1px solid #f892ff; + color: black;*/ +} + +QAbstractSpinBox:focus { + border: 1px solid #ffbff3; +} + +QAbstractSpinBox:selected { + background: #ffbff3; + /*color: black;*/ +} + +/* ------------------------------------------------------------------------ */ +/* DISPLAYS --------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QLabel ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe + +--------------------------------------------------------------------------- */ +QLabel { + background-color: transparent; + border: 0px solid #C1C1C1; + padding: 2px; + margin: 0px; + color: black; +} + +QLabel:disabled { + background-color: transparent; + border: 0px solid #C1C1C1; + color: #A3A3A3; +} + +QLabel[haslink="true"] { + color: orange; +} + + +/* QTextBrowser ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea + +--------------------------------------------------------------------------- */ +QTextBrowser { + background-color: #ffffff; + border: 1px solid #C1C1C1; + color: black; + border-radius: 1.9px; +} + +QTextBrowser:disabled { + background-color: #F6F6F6; + border: 1px solid #C1C1C1; + color: #A3A3A3; + border-radius: 1.9px; +} + +QTextBrowser:hover, QTextBrowser:!hover, QTextBrowser:selected, QTextBrowser:pressed { + border: 1px solid #f892ff; +} + +/* QGraphicsView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QGraphicsView { + background-color: transparent; + border: 0px solid #f892ff; + color: black; + border-radius: 0px; +} + +QGraphicsView:disabled { + background-color: #ffffff; + border: 0px solid #C1C1C1; + color: #A3A3A3; + border-radius: 0px; +} + +QGraphicsView:hover, QGraphicsView:!hover, QGraphicsView:selected, QGraphicsView:pressed { + border: 0px solid #ff00f7; +} + +/* QCalendarWidget -------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCalendarWidget { + border: 1px solid #C1C1C1; + border-radius: 1.9px; +} + +QCalendarWidget:disabled { + background-color: #BABABA; + color: #A3A3A3; +} + +/* QLCDNumber ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QLCDNumber { + background-color: #1aff00; + color: black; +} + +QLCDNumber:disabled { + background-color: #F6F6F6; + color: #A3A3A3; +} + +/* QProgressBar ----------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qprogressbar + +--------------------------------------------------------------------------- */ +QProgressBar { + background-color: #A3A3A3; + border: 1px solid #C1C1C1; + color: black; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar:disabled { + background-color: #ffffff; + border: 1px solid #C1C1C1; + color: #A3A3A3; + border-radius: 1.9px; + text-align: center; +} + +QProgressBar::chunk { + background-color: #f892ff; + color: #F6F6F6; + border-radius: 1.9px; +} + +QProgressBar::chunk:disabled { + background-color: #ffffff; + color: #f6f6f6; + border-radius: 1.9px; +} + +/* ------------------------------------------------------------------------ */ +/* BUTTONS ---------------------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QPushButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qpushbutton + +--------------------------------------------------------------------------- */ +QPushButton { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #E2E2E2, stop:1 #EDEDED); + color: black; + border: 1px solid #EDEDED; + border-bottom-color: #AFAFAF; /* simulates shadow under the button */ + border-radius: 4px; + padding: 2px; +} + +QPushButton:disabled { + background-color: #F6F6F6; + color: #A3A3A3; + +} + +QPushButton:checked { + background-color: #f892ff; + outline: none; +} + +QPushButton:checked:disabled { + background-color: #f892ff; + color: #f6f6f6; + outline: none; +} + +QPushButton:checked:selected { + background: #f892ff; +} + +QPushButton:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #f892ff , stop:1 #ffbff3); + color: black; +} + +QPushButton:pressed { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #ffbff3, stop:1 #f892ff ); +} + +QPushButton:selected { + background: #ffbff3; + color: black; +} + +QPushButton::menu-indicator { + subcontrol-origin: padding; + subcontrol-position: bottom right; + bottom: 4px; +} + +QDialogButtonBox QPushButton { + /* Issue # 194 # 248 - Special case of QPushButton inside dialogs, for better UI */ + min-width: 80px; +} + +/* QToolButton ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbutton + +--------------------------------------------------------------------------- */ +QToolButton { + background-color: transparent; + color: black; + border-radius: 1px; + padding: 0px; + outline: none; + border: none; + /* The subcontrols below are used only in the DelayedPopup mode */ + /* The subcontrols below are used only in the MenuButtonPopup mode */ + /* The subcontrol below is used only in the InstantPopup or DelayedPopup mode */ +} + +QToolButton:disabled { + background-color: transparent; + color: #A3A3A3; + border-radius: 1px; + padding: 0px; +} + +QToolButton:checked { + background-color: #f892ff; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:disabled { + background-color: #b65555; + color: #A3A3A3; + border-radius: 1.9px; + padding: 0px; + outline: none; +} + +QToolButton:checked:hover { + background-color: #f892ff; + color: black; +} + +QToolButton:checked:pressed { + background-color: #f892ff; +} + +QToolButton:checked:selected { + background: #ffbff3; + color: black; +} + +QToolButton:hover { + background-color: #f892ff; + color: black; +} + +QToolButton:pressed { + background-color: #ffbff3; +} + +QToolButton:selected { + background: #f892ff; + color: black; +} + +QToolButton[popupMode="0"] { + /* Only for DelayedPopup */ + padding-right: 20px; +} + +QToolButton[popupMode="1"] { + /* Only for MenuButtonPopup */ + padding-right: 20px; +} +QToolButton[popupMode="0"]::menu-button { + border: none; +} + +QToolButton[popupMode="0"]::menu-button:hover { + border: none; + border-left: 2px solid #fe0000; + border-radius: 0px; +} +QToolButton[popupMode="1"]::menu-button { + border: none; +} + +QToolButton[popupMode="1"]::menu-button:hover { + border: none; + border-left: 2px solid #e5ff00; + border-radius: 0px; +} + +QToolButton[popupMode="2"] { + /* Only for InstantPopup */ + padding-right: 20px; +} + +QToolButton::menu-button { + border-bottom: 0px solid #b2b2b2; + border-radius: 2px; + /* 16px width + 4px for border = 20px allocated above */ + width: 1.6ex; + padding: 2px; + border-radius: 2px; + border: 0px #000000; +} + +QToolButton::menu-button:hover { + /* background: rgba(0, 0, 0, 0.5);*/ + +} + +QToolButton::menu-button:checked:hover { + /* background: rgba(0, 0, 0, 0.5);*/ +} + +QToolButton::menu-indicator { + /* Exclude a shift for better image */ + subcontrol-position: right bottom; + /* Shift it a bit */ +} + +QToolButton::menu-arrow { + image: url(qss:images_dark-light/more_arrow_dark.svg); + width: 1.5ex; + height: 1.5ex; + subcontrol-position: right bottom; + background: transparent; +} +QToolButton::menu-arrow:open { + subcontrol-position: right bottom; + image: url(qss:images_dark-light/more_arrow_dark.svg); +} +QToolButton::menu-arrow:hover { + image: url(qss:images_dark-light/more_arrow_dark.svg); + background-color: rgba(0, 0, 0, 0.498); + border: 1px solid rgba(0, 0, 0, 0.498); +} + +/* QCommandLinkButton ----------------------------------------------------- + +--------------------------------------------------------------------------- */ +QCommandLinkButton { + background-color: transparent; + border: 1px solid #C1C1C1; + color: black; + border-radius: 1.9px; + padding: 0px; + margin: 0px; +} + +QCommandLinkButton:disabled { + background-color: transparent; + color: #A3A3A3; +} + +/* ------------------------------------------------------------------------ */ +/* INPUTS - NO FIELDS ----------------------------------------------------- */ +/* ------------------------------------------------------------------------ */ +/* QComboBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox + +--------------------------------------------------------------------------- */ +QComboBox { + border: 1px solid transparent; + background: #ffffff; + border-radius: 2px; + selection-background-color: #f892ff; + padding-left: 2px; + padding-right: 2px; + /* padding-right = 36; 4 + 16*2 See scrollbar size */ + /* changed to 4px to fix #239 */ + /* Fixes #103, #111 */ + min-height: 1.5em; + /* padding-top: 2px; removed to fix #132 */ + /* padding-bottom: 2px; removed to fix #132 */ + /* min-width: 75px; removed to fix #109 */ + /* Needed to remove indicator - fix #132 */ +} +QComboBox:editable { + background: #ffffff; +} +QComboBox QAbstractItemView { + border: 0px solid #C1C1C1; + border-radius: 0px; + background-color: #ffffff; + selection-background-color: #f892ff; +} + +QComboBox QAbstractItemView:hover { + background-color:#ffffff; + color: black; +} + +QComboBox QAbstractItemView:selected { + background: #f892ff; + color: black; +} + +QComboBox QAbstractItemView:alternate { + background: #f6f6f6; +} + +QComboBox:disabled { + background-color: #F6F6F6; + color: #BABABA; +} + +QComboBox:hover { + /*background-color: #f892ff;*/ + border: 1px solid #f892ff; +} + +QComboBox:focus { + border: 1px solid #ffbff3; +} + +QComboBox:on { + selection-background-color: #ffbff3; +} + +QComboBox::indicator { + border: none; + border-radius: 0px; + background-color: transparent; + selection-background-color: transparent; + color: transparent; + selection-color: #f892ff; + /* Needed to remove indicator - fix #132 */ +} + +QComboBox::indicator:alternate { + background: #f6f6f6; +} + +QComboBox::item { + /* Remove to fix #282, #285 and MR #288*/ + /*&:checked { + font-weight: bold; + } + + &:selected { + border: 0px solid transparent; + } + */ +} + +QComboBox::item:alternate { + background: #f6f6f6; +} + +QComboBox::drop-down { + subcontrol-origin: padding; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #E2E2E2, stop:1 #EDEDED); + subcontrol-position: top right; + width: 14px; + border-left: 1px solid transparent; +} +QComboBox::drop-down:hover { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #f892ff , stop:1 #ffbff3); +} + +QComboBox::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); + height: 10px; + width: 10px; +} + +QComboBox::down-arrow:on, QComboBox::down-arrow:hover, QComboBox::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_darker.svg); +} + + +/*================================================================================================== +Tasks panel (custom FreeCAD class) +==================================================================================================*/ +Gui--PropertyEditor--PropertyEditor { + qproperty-groupTextColor: black; + qproperty-groupBackground: #f6f6f6; + border: 0px solid #C1C1C1; + +} + +/* Action group */ +QFrame[class="panel"] { +background-color: transparent; /* temporal (transparent background) */ + +} + +QSint--ActionGroup { +padding: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +margin: 0px; /* if not reset, it might create problems with QPushButtons and other elements */ +} + +/* Separator line */ +QSint--ActionGroup QFrame[height="1"], +QSint--ActionGroup QFrame[height="2"], +QSint--ActionGroup QFrame[height="3"], +QSint--ActionGroup QFrame[width="1"], +QSint--ActionGroup QFrame[width="2"], +QSint--ActionGroup QFrame[width="3"] { +border-color: rgba(0,0,0,60); +} + +/* Panel header */ +QSint--ActionGroup QFrame[class="header"] { +border-top: 1px solid #C1C1C1; +border-left: 1px solid #C1C1C1; +border-right: 1px solid #C1C1C1; +background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #E2E2E2, stop:1 #EDEDED); +border-top-left-radius: 3px; +border-top-right-radius: 3px; +border-bottom-left-radius: 0px; +border-bottom-right-radius: 0px; +margin: 0px; +padding: 0px; +} + +QSint--ActionGroup QFrame[class="header"]:hover { +background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #f892ff , stop:1 #ffbff3); +} + +QSint--ActionGroup QToolButton[class="header"] { +color: black; /* Task Panel Header text color */ +text-align: left; +font-weight: bold; +border: none; +margin: 0px; +padding: 0px; +} + +QSint--ActionGroup QFrame[class="header"] QLabel { +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_dark.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; +} + +QSint--ActionGroup QFrame[class="header"] QLabel:hover { +background-color: transparent; +background-image: url(qss:images_dark-light/down_arrow_darker.svg); +} + +QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"] { +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_dark.svg); +background-repeat: none; +background-position: center center; +padding: 0px; +margin: 0px; +} + +QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"]:hover { +background-color: transparent; +background-image: url(qss:images_dark-light/up_arrow_darker.svg); +} + +QSint--ActionGroup QFrame[class="content"] { +background-color: transparent; /* Task Panel background color */ +margin: 0px; +padding: 0px; +border-bottom: 1px solid #C1C1C1; +border-left: 1px solid #C1C1C1; +border-right: 1px solid #C1C1C1; +border-top-left-radius: 0px; +border-top-right-radius: 0px; +border-bottom-left-radius: 3px; +border-bottom-right-radius: 3px; +} + +QSint--ActionGroup QFrame[class="content"] > QWidget { +background-color: #F6F6F6; /* Task Panel background color */ +} + +/* Fixs for tabs inside Task Panel */ +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:top:selected { +border-bottom-color: #f892ff; /* same as Task Panel background color */ +} + +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:bottom:selected { +border-top-color: #f892ff; /* same as Task Panel background color */ +} + +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:right:selected { +border-right-color: #f892ff; /* same as Task Panel background color */ +} + +QSint--ActionGroup QFrame[class="content"] QTabBar::tab:left:selected { +border-left-color: #f892ff; /* same as Task Panel background color */ +} + +/* Fix for buttons with icons that showed cropped (still not happy with result) */ +QSint--ActionGroup QFrame[class="content"] > QWidget > QPushButton { +padding: 2px; /* bigger padding crops text and icons... */ +margin: 0px; +} + +/* Fix for lists inside task panels */ /* sketcher constraints list */ +QSint--ActionGroup QFrame[class="content"] QTreeView, +QSint--ActionGroup QFrame[class="content"] QListView, +QSint--ActionGroup QFrame[class="content"] QTableView { +color: black; +background-color: #ffffff; +} + + +/* found inside Part Design Workbench and "make a draft on a face" Task panel options */ +QSint--ActionGroup QFrame[class="content"] QToolButton { + color: black; + text-align: center; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #E2E2E2, stop:1 #EDEDED); + border: 0px solid #C1C1C1; + padding: 1px 1px; /* different than regular QPushButton */ + margin: 0px; /* different than regular QPushButton */ + min-height: 16px; /* same as QTabBar QPushButton min-width */ + border-radius: 1px; +} + +QSint--ActionGroup QFrame[class="content"] QToolButton:hover{ + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #f892ff , stop:1 #ffbff3); + +} +QSint--ActionGroup QFrame[class="content"] QToolButton:focus { + border: 1px solid #ffbff3 +; +} + +QSint--ActionGroup QFrame[class="content"] QToolButton:disabled, +QSint--ActionGroup QFrame[class="content"] QToolButton:disabled:checked { + color: #A3A3A3; + background-color: #ffffff; +} + +QSint--ActionGroup QFrame[class="content"] QToolButton:pressed { + background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #f892ff , stop:1 #ffbff3); + +} + +/* QSlider ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qslider + +--------------------------------------------------------------------------- */ +QSlider:disabled { + background: #F6F6F6; +} + +QSlider:focus { + border: 1px solid #ffbff3; +} + +QSlider::groove:horizontal { + background: #F6F6F6; + border: 1px solid #C1C1C1; + height: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::groove:vertical { + background: #f892ff; + border: 1px solid #C1C1C1; + width: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::add-page:vertical { + background: #f892ff; + border: 1px solid #C1C1C1; + width: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::add-page:vertical :disabled { + background: #f6f6f6; +} + +QSlider::sub-page:horizontal { + background: #f892ff; + border: 1px solid #C1C1C1; + height: 4px; + margin: 0px; + border-radius: 1.9px; +} + +QSlider::sub-page:horizontal:disabled { + background: #f892ff; +} + +QSlider::handle:horizontal { + background: #BABABA; + border: 1px solid #C1C1C1; + width: 8px; + height: 8px; + margin: -8px 0px; + border-radius: 1.9px; +} + +QSlider::handle:horizontal:hover { + background: #f892ff; + border: 1px solid #f892ff; +} + +QSlider::handle:horizontal:focus { + border: 1px solid #ffbff3; +} + +QSlider::handle:vertical { + background: #A3A3A3; + border: 1px solid #C1C1C1; + width: 8px; + height: 8px; + margin: 0 -8px; + border-radius: 1.9px; +} + +QSlider::handle:vertical:hover { + background: #f892ff; + border: 2px solid #f892ff; +} + +QSlider::handle:vertical:focus { + border: 1px solid #ffbff3; +} + +/* QLineEdit -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlineedit + +--------------------------------------------------------------------------- */ +QLineEdit { + background-color: #ffffff; + padding-top: 2px; + /* This QLineEdit fix 103, 111 */ + padding-bottom: 2px; + /* This QLineEdit fix 103, 111 */ + padding-left: 4px; + padding-right: 4px; + border-style: solid; + border: 1px solid #C1C1C1; + border-radius: 2px; + color: black; +} + +QLineEdit:disabled { + background-color: #F6F6F6; + color: #A3A3A3; +} + +QLineEdit:hover { + border: 1px solid #f892ff; + color: black; +} + +QLineEdit:focus { + border: 2px solid #ffbff3; +} + +QLineEdit:selected { + background-color: #f892ff; + color: black; +} + +/* QTabWiget -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabWidget { + padding: 2px; + selection-background-color: #f892ff; +} + +QTabWidget QWidget { + /* Fixes #189 */ + border-radius: 1.9px; +} + +QTabWidget::pane { + margin: 0px; + /* Fixes double border inside pane with pyqt5 */ + padding: 0px; +} + +QTabWidget::pane:selected { + background-color: #f892ff; + border: 1px solid #C1C1C1; +} +/* QTabBar ---------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar + +--------------------------------------------------------------------------- */ +QTabBar, QDockWidget QTabBar { + qproperty-drawBase: 0; + /* left: 5px; move to the right by 5px - removed for fix */ +} + +QTabBar::close-button, QDockWidget QTabBar::close-button { + border: 0; + margin: 0; + padding: 1px; + image: url(qss:images_dark-light/close_dark.svg); +} + +QTabBar::close-button:hover, QDockWidget QTabBar::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); + /*background-color: rgba(255, 0, 0, 0.3);*/ +} + +QTabBar::close-button:pressed, QDockWidget QTabBar::close-button:pressed { + image: url(qss:images_dark-light/close_.svg); +} + +QTabBar::tab, QDockWidget QTabBar::tab { + /* !selected and disabled ----------------------------------------- */ + /* selected ------------------------------------------------------- */ + padding: 4px; +} + +QTabBar::tab:top:selected:disabled, QDockWidget QTabBar::tab:top:selected:disabled { + color: #797979; +} + +QTabBar::tab:bottom:selected:disabled, QDockWidget QTabBar::tab:bottom:selected:disabled { + color: #797979; +} + +QTabBar::tab:left:selected:disabled, QDockWidget QTabBar::tab:left:selected:disabled { + color: #A0A0A0; +} + +QTabBar::tab:right:selected:disabled, QDockWidget QTabBar::tab:right:selected:disabled { + color: #A0A0A0; +} + +QTabBar::tab:top:!selected:disabled, QDockWidget QTabBar::tab:top:!selected:disabled { + color: #A0A0A0; +} + +QTabBar::tab:bottom:!selected:disabled, QDockWidget QTabBar::tab:bottom:!selected:disabled { + color: #A0A0A0; + +} + +QTabBar::tab:left:!selected:disabled, QDockWidget QTabBar::tab:left:!selected:disabled { + color: #A0A0A0; + +} + +QTabBar::tab:right:!selected:disabled, QDockWidget QTabBar::tab:right:!selected:disabled { + color: #A0A0A0; +} + +QTabBar::tab:top:!selected, QDockWidget QTabBar::tab:top:!selected { + color: #A0A0A0; +} + +QTabBar::tab:bottom:!selected, QDockWidget QTabBar::tab:bottom:!selected { + color: #A0A0A0; +} + +QTabBar::tab:left:!selected, QDockWidget QTabBar::tab:left:!selected { + color: #A0A0A0; +} + +QTabBar::tab:right:!selected, QDockWidget QTabBar::tab:right:!selected { + color: #A0A0A0; +} + +QTabBar::tab:top, QDockWidget QTabBar::tab:top { + color: #A0A0A0; + margin-left: 0px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + min-width: 5px; + border-bottom: 1px solid #A3A3A3; /* same as tab content background color */ + border-radius: 0px; +} + +QTabBar::tab:top:selected, QDockWidget QTabBar::tab:top:selected { + color: black; + border-top: 4px solid #f892ff; /* selection color */ + border-bottom: 1px solid transparent; /* same as tab content background color */ + border-left: 1px solid #A3A3A3; + border-right: 1px solid #A3A3A3; + } + +QTabBar::tab:top:!selected:hover, QDockWidget QTabBar::tab:top:!selected:hover { + /*border: 1px solid #f892ff;*/ + border: 0px solid #f892ff; + background-color: #f892ff; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; + color: black; +} + +QTabBar::tab:bottom, QDockWidget QTabBar::tab:bottom { + color: #A0A0A0; + margin-left: 0px; + padding-left: 4px; + padding-right: 4px; + padding-top: 2px; + padding-bottom: 2px; + min-width: 5px; + border-top: 1px solid #A3A3A3; /* same as tab content background color */ + border-radius: 0px; +} + +QTabBar::tab:bottom:selected, QDockWidget QTabBar::tab:bottom:selected { + color: black; + border-bottom: 4px solid #f892ff; /* selection color */ + border-top: 1px solid transparent; /* same as tab content background color */ + border-left: 1px solid #A3A3A3; + border-right: 1px solid #A3A3A3; + +} + +QTabBar::tab:bottom:!selected:hover, QDockWidget QTabBar::tab:bottom:!selected:hover { +/*border: 1px solid #f892ff;*/ + border: 0px solid #f892ff; + background-color: #f892ff; + /* Fixes spyder-ide/spyder#9766 and #243 */ + padding-left: 3px; + padding-right: 3px; + color: black; +} + +QTabBar::tab:left, QDockWidget QTabBar::tab:left { + background-color: #F6F6F6; + margin-top: 2px; + + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + border-radius: 4px; + min-height: 5px; +} + +QTabBar::tab:left:selected, QDockWidget QTabBar::tab:left:selected { + background-color: #F6F6F6; + border: 0px solid #ffbff3; +} + +QTabBar::tab:left:!selected:hover, QDockWidget QTabBar::tab:left:!selected:hover { + border: 0px solid #f892ff; + background-color: #f892ff; + /* Fixes different behavior #271 */ + margin-right: 0px; + padding-right: -1px; + color: black; +} + +QTabBar::tab:right, QDockWidget QTabBar::tab:right { + background-color: #F6F6F6; + margin-top: 2px; + padding-left: 2px; + padding-right: 2px; + padding-top: 4px; + padding-bottom: 4px; + min-height: 5px; + border: 10px; +} + +QTabBar::tab:right:selected, QDockWidget QTabBar::tab:right:selected { + background-color: #F6F6F6; + border: 0px solid #ffbff3; +} + +QTabBar::tab:right:!selected:hover, QDockWidget QTabBar::tab:right:!selected:hover { + border: 0px solid #f892ff; + background-color: #f892ff; + /* Fixes different behavior #271 */ + margin-left: 0px; + padding-left: 0px; + color: black; +} + +QTabBar QToolButton, QDockWidget QTabBar QToolButton { + /* Fixes #136 */ + background-color: #F6F6F6; + height: 12px; + width: 12px; +} + +QTabBar QToolButton:pressed, QDockWidget QTabBar QToolButton:pressed { + border: 0px solid #f892ff; + background-color: #f892ff; +} + +QTabBar QToolButton:pressed:hover, QDockWidget QTabBar QToolButton:pressed:hover { + border: 0px solid #f892ff; + background-color: #f892ff; + color: black; +} + +QTabBar QToolButton::left-arrow:enabled, QDockWidget QTabBar QToolButton::left-arrow:enabled { + image: url(qss:images_dark-light/left_arrow_darker.svg); +} + +QTabBar QToolButton::left-arrow:disabled, QDockWidget QTabBar QToolButton::left-arrow:disabled { + image: url(qss:images_dark-light/left_arrow_disabled_dark.svg); +} + +QTabBar QToolButton::right-arrow:enabled, QDockWidget QTabBar QToolButton::right-arrow:enabled { + image: url(qss:images_dark-light/right_arrow_darker.svg); +} + +QTabBar QToolButton::right-arrow:disabled, QDockWidget QTabBar QToolButton::right-arrow:disabled { + image: url(qss:images_dark-light/right_arrow_disabled_dark.svg); +} + +/* QDockWiget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QDockWidget { + background-color: #F6F6F6; + border: 1px solid #C1C1C1; + border-radius: 1.9px; + titlebar-close-icon: url(qss:images_dark-light/transparent.svg); + titlebar-normal-icon: url(qss:images_dark-light/transparent.svg); +} + +QDockWidget::title { + /* Better size for title bar */ + padding: 3px; + spacing: 4px; + border: none; + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #E2E2E2, stop:1 #EDEDED); + text-align: center; + font-weight: bold; +} + +QDockWidget::close-button { + icon-size: 10px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/close_dark.svg); +} + +QDockWidget::close-button:hover { + image: url(qss:images_dark-light/close_red.svg); +} + +QDockWidget::close-button:pressed { + image: url(qss:images_dark-light/close_dark.svg); +} + +QDockWidget::float-button { + icon-size: 12px; + border: none; + background: transparent; + background-image: transparent; + border: 0; + margin: 0; + padding: 0; + image: url(qss:images_dark-light/undock_dark.svg); +} + +QDockWidget::float-button:hover { + /*background-color: #f892ff;*/ + image: url(qss:images_dark-light/undock_blue.svg); +} + +QDockWidget::float-button:pressed { + image: url(qss:images_dark-light/undock_dark.svg); +} + +/* QTreeView QListView QTableView ----------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtreeview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlistview +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtableview + +--------------------------------------------------------------------------- */ +QTreeView::branch { + background: transparent; +} + +QTreeView::branch:has-siblings:!adjoins-item { + border-image: url(qss:images_dark-light/branch_vline_dark.svg) 0; +} + +QTreeView::branch:has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_more_dark.svg) 0; +} + +QTreeView::branch:!has-children:!has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_end_dark.svg) 0; +} + +QTreeView::branch:closed:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_closed_dark.svg) 0; +} + +QTreeView::branch:has-children:!has-siblings:closed { + border-image: url(qss:images_dark-light/branch_end_closed_dark.svg) 0; +} + +QTreeView::branch:open:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_open_dark.svg) 0; +} + +QTreeView::branch:open:has-children:!has-siblings { + border-image: url(qss:images_dark-light/branch_end_open_dark.svg) 0; +} + +QTreeView::indicator:checked, +QListView::indicator:checked, +QTableView::indicator:checked, +QColumnView::indicator:checked { + image: url(qss:images_dark-light/checkbox_dark.svg); +} + +QTreeView::indicator:checked:hover, QTreeView::indicator:checked:focus, QTreeView::indicator:checked:pressed, +QListView::indicator:checked:hover, +QListView::indicator:checked:focus, +QListView::indicator:checked:pressed, +QTableView::indicator:checked:hover, +QTableView::indicator:checked:focus, +QTableView::indicator:checked:pressed, +QColumnView::indicator:checked:hover, +QColumnView::indicator:checked:focus, +QColumnView::indicator:checked:pressed { + image: url(qss:images_dark-light/checkbox_light_hover.svg); +} + +QTreeView::indicator:unchecked, +QListView::indicator:unchecked, +QTableView::indicator:unchecked, +QColumnView::indicator:unchecked { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QTreeView::indicator:unchecked:hover, QTreeView::indicator:unchecked:focus, QTreeView::indicator:unchecked:pressed, +QListView::indicator:unchecked:hover, +QListView::indicator:unchecked:focus, +QListView::indicator:unchecked:pressed, +QTableView::indicator:unchecked:hover, +QTableView::indicator:unchecked:focus, +QTableView::indicator:unchecked:pressed, +QColumnView::indicator:unchecked:hover, +QColumnView::indicator:unchecked:focus, +QColumnView::indicator:unchecked:pressed { + image: url(qss:images_dark-light/checkbox_unchecked_hover_dark.svg); +} + +QTreeView::indicator:indeterminate, +QListView::indicator:indeterminate, +QTableView::indicator:indeterminate, +QColumnView::indicator:indeterminate { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QTreeView::indicator:indeterminate:hover, QTreeView::indicator:indeterminate:focus, QTreeView::indicator:indeterminate:pressed, +QListView::indicator:indeterminate:hover, +QListView::indicator:indeterminate:focus, +QListView::indicator:indeterminate:pressed, +QTableView::indicator:indeterminate:hover, +QTableView::indicator:indeterminate:focus, +QTableView::indicator:indeterminate:pressed, +QColumnView::indicator:indeterminate:hover, +QColumnView::indicator:indeterminate:focus, +QColumnView::indicator:indeterminate:pressed { + image: url(qss:images_dark-light/checkbox_indeterminate_dark.svg); +} + +QTreeView, +QListView, +QTableView, +QColumnView { + background-color: #F6F6F6; /* background of a lot of stuff including spreadsheets.*/ + border: 0px solid #C1C1C1; + color: black; + gridline-color: #A3A3A3; + border-radius: 0px; +} + +QTableView, +QListView { + background-color: rgba(0, 0, 0, 0.050); /* background of a lot of stuff including spreadsheets.*/ +} + + +QTreeView:disabled, +QListView:disabled, +QTableView:disabled, +QColumnView:disabled { + background-color: #ffffff; + color: #A3A3A3; +} + +QTreeView:selected, +QListView:selected, +QTableView:selected, +QColumnView:selected { + background-color: #f892ff; + color: black; +} + +QTreeView:focus, +QListView:focus, +QTableView:focus, +QColumnView:focus { + border: 1px solid #ffbff3; +} + +QTreeView::item:pressed, +QListView::item:pressed, +QTableView::item:pressed, +QColumnView::item:pressed { + background-color: #f892ff; +} + +QTreeView::item:selected:active, +QListView::item:selected:active, +QTableView::item:selected:active, +QColumnView::item:selected:active { + background-color: #f892ff; +} + +QTreeView::item:selected:!active, +QListView::item:selected:!active, +QTableView::item:selected:!active, +QColumnView::item:selected:!active { + color: black; + background-color: #BABABA; +} + +QTreeView::item:!selected:hover, +QListView::item:!selected:hover, +QTableView::item:!selected:hover, +QColumnView::item:!selected:hover { + outline: 0; + color: black; + background-color: #f892ff; +} + +QTableCornerButton::section { + background-color: #F6F6F6; + border: 1px transparent #C1C1C1; + border-radius: 0px; +} + +QTableView::item { + color: black; +} +QTableView { + /*qproperty-AliasedCellBackgroundColor: #f700ff;*/ + /*qproperty-aliasBgColor: #f700ff;*/ +} + +/* QHeaderView ------------------------------------------------------------ + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qheaderview + +--------------------------------------------------------------------------- */ +QHeaderView { + background-color: transparent; + text-align: center; +} + +QHeaderView:disabled { + background-color: #F6F6F6; + color: rgb(174, 174, 174); +} + +QHeaderView::section { + background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #E2E2E2, stop:1 #EDEDED); + color: black; + border: 1px solid #C1C1C1; + font-size: 13px; + font-weight: bold; +} + +QHeaderView::section::horizontal { + padding-top: 1px; + padding-bottom: 1px; + padding-left: 5px; + padding-right: 0px; +} + +QHeaderView::section::horizontal::first, QHeaderView::section::horizontal::only-one { + border-left: 0px solid #C1C1C1; +} + +QHeaderView::section::horizontal:disabled { + color: #BABABA; +} + +QHeaderView::section::vertical { + padding-top: 1px; + padding-bottom: 0; + padding-left: 1px; + padding-right: 0px; + border-top: 2px solid #C1C1C1; +} + +QHeaderView::section::vertical::first, QHeaderView::section::vertical::only-one { + border-top: 2px solid #C1C1C1; +} + +QHeaderView::section::vertical:disabled { + border-top: 2px solid #C1C1C1; +} + +QHeaderView::down-arrow { + /* Those settings (border/width/height/background-color) solve bug */ + /* transparent arrow background and size */ + background-color: transparent; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/down_arrow_dark.svg); +} + +QHeaderView::up-arrow { + background-color: transparent; + border: none; + height: 12px; + width: 12px; + padding-left: 2px; + padding-right: 2px; + image: url(qss:images_dark-light/up_arrow_dark.svg); +} + +/* QToolBox -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbox +used in PATH + +--------------------------------------------------------------------------- */ +QToolBox { + padding: 0px; + border: 1px solid #A3A3A3; + border-radius: 4px; + background-color: transparent; +} + +QToolBox:selected { + padding: 0px; + border: 0px solid #f892ff; +} + +QToolBox::tab { + background-color: transparent; + border: 0px solid #A3A3A3; + color: black; + background-image: url(qss:images_dark-light/down_arrow_darker.svg); + background-repeat: none; + background-position: center left; +} + +QToolBox::tab:disabled { + color: #A3A3A3; +} + +QToolBox::tab:selected { + background-color: #A3A3A3; + background-image: url(qss:images_dark-light/transparent.svg); + padding-right: 5px; + background-repeat: none; +} + +QToolBox::tab:selected:disabled { + background-color: #A3A3A3; + border-bottom: 0px solid #cccccc; + color: black; +} + +QToolBox::tab:!selected { + +} + +QToolBox::tab:!selected:disabled { + background-color: #F6F6F6; +} + +QToolBox::tab:hover { + background-color: #f892ff; + } + +QToolBox QScrollArea QWidget QWidget { + padding: 0px; + border: 0px; + background-color: transparent; +} + +/* QFrame ----------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe +https://doc.qt.io/qt-5/qframe.html#-prop +https://doc.qt.io/qt-5/qframe.html#details +https://stackoverflow.com/questions/14581498/qt-stylesheet-for-hline-vline-color + +--------------------------------------------------------------------------- */ +/* (dot) .QFrame fix #141, #126, #123 */ +.QFrame { + border-radius: 0px; + border: 0px solid #C1C1C1; + background-color: #A3A3A3; + /* No frame */ + /* HLine */ + /* HLine */ +} + +.QFrame[frameShape="0"] { + border-radius: 1.9px; + border: 1px solid #C1C1C1; +} + +.QFrame[frameShape="4"] { + max-height: 1px; + border: none; + background-color: #f6f6f6; +} + +.QFrame[frameShape="5"] { + max-width: 1px; + border: none; + background-color: #F6F6F6; +} + +/* QSplitter -------------------------------------------------------------- + +https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsplitter + +--------------------------------------------------------------------------- */ +QSplitter { + background-color: #f6f6f6; + spacing: 1px; + padding: 1px; + margin: 1px; +} + +QSplitter::handle { + margin: 0px 0px; + padding: 0px; +} + +QSplitter::handle:horizontal { + background-image: url(qss:images_dark-light/splitter_vertical_light.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + width: 1px; +} + +QSplitter::handle:vertical { + background-image: url(qss:images_dark-light/splitter_horizontal_light.svg); + background-position: center center; + background-repeat: none; + margin: 2px 2px 2px 2px; + height: 1px; +} + +QSplitter::handle:hover { + background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg); + background-position: center center; + background-repeat: none; + background-color: #f892ff; +} + +/* QDateEdit, QDateTimeEdit ----------------------------------------------- + +--------------------------------------------------------------------------- */ +QDateEdit, QDateTimeEdit { + selection-background-color: #f892ff; + border-style: solid; + border: 1px solid #C1C1C1; + border-radius: 1.9px; + /* This fixes 103, 111 */ + padding-top: 2px; + /* This fixes 103, 111 */ + padding-bottom: 2px; + padding-left: 4px; + padding-right: 4px; + min-width: 10px; +} + +QDateEdit:on, QDateTimeEdit:on { + selection-background-color: #f892ff; +} + +QDateEdit::drop-down, QDateTimeEdit::drop-down { + subcontrol-origin: padding; + subcontrol-position: top right; + width: 12px; + border-left: 1px solid #C1C1C1; +} + +QDateEdit::down-arrow, QDateTimeEdit::down-arrow { + image: url(qss:images_dark-light/down_arrow_disabled_dark.svg); + height: 8px; + width: 8px; +} + +QDateEdit::down-arrow:on, QDateEdit::down-arrow:hover, QDateEdit::down-arrow:focus, QDateTimeEdit::down-arrow:on, QDateTimeEdit::down-arrow:hover, QDateTimeEdit::down-arrow:focus { + image: url(qss:images_dark-light/down_arrow_darker.svg); +} + +QDateEdit QAbstractItemView, QDateTimeEdit QAbstractItemView { + background-color: #F6F6F6; + border-radius: 2px; + border: 1px solid #C1C1C1; + selection-background-color: #f892ff; +} + +/* QAbstractView ---------------------------------------------------------- + +--------------------------------------------------------------------------- */ +QAbstractView:hover { + border: 1px solid #f892ff; + color: black; +} + +QAbstractView:selected { + background: #f892ff; + color: black; +} + +/* PlotWidget ------------------------------------------------------------- + +--------------------------------------------------------------------------- */ +PlotWidget { + /* Fix cut labels in plots #134 */ + padding: 0px; +} \ No newline at end of file diff --git a/src/Gui/Stylesheets/images_dark-light/check_dark.svg b/src/Gui/Stylesheets/images_dark-light/check_dark.svg new file mode 100644 index 0000000000..e59cd85528 --- /dev/null +++ b/src/Gui/Stylesheets/images_dark-light/check_dark.svg @@ -0,0 +1,74 @@ + + + + + + + + + + image/svg+xml + + + + Pablo Gil + + + + + SVG + template + + + + + + + + + + diff --git a/src/Gui/Stylesheets/images_dark-light/check_light.svg b/src/Gui/Stylesheets/images_dark-light/check_light.svg new file mode 100644 index 0000000000..77a9774de5 --- /dev/null +++ b/src/Gui/Stylesheets/images_dark-light/check_light.svg @@ -0,0 +1,74 @@ + + + + + + + + + + image/svg+xml + + + + Pablo Gil + + + + + SVG + template + + + + + + + + + + diff --git a/src/Gui/Stylesheets/images_dark-light/checkbox_checked_disabled.svg b/src/Gui/Stylesheets/images_dark-light/checkbox_checked_disabled.svg new file mode 100644 index 0000000000..c62c4792cc --- /dev/null +++ b/src/Gui/Stylesheets/images_dark-light/checkbox_checked_disabled.svg @@ -0,0 +1,83 @@ + + + + + + + + + + image/svg+xml + + + + Pablo Gil + + + + + SVG + template + + + + + + + + + + + diff --git a/src/Gui/Stylesheets/images_dark-light/checkbox_dark_hover.svg b/src/Gui/Stylesheets/images_dark-light/checkbox_dark_hover.svg new file mode 100644 index 0000000000..3c51481058 --- /dev/null +++ b/src/Gui/Stylesheets/images_dark-light/checkbox_dark_hover.svg @@ -0,0 +1,83 @@ + + + + + + + + + + image/svg+xml + + + + Pablo Gil + + + + + SVG + template + + + + + + + + + + + diff --git a/src/Gui/Stylesheets/images_dark-light/checkbox_light_hover.svg b/src/Gui/Stylesheets/images_dark-light/checkbox_light_hover.svg new file mode 100644 index 0000000000..1624d18116 --- /dev/null +++ b/src/Gui/Stylesheets/images_dark-light/checkbox_light_hover.svg @@ -0,0 +1,83 @@ + + + + + + + + + + image/svg+xml + + + + Pablo Gil + + + + + SVG + template + + + + + + + + + + + diff --git a/src/Gui/Stylesheets/images_dark-light/checkbox_unchecked_dark.svg b/src/Gui/Stylesheets/images_dark-light/checkbox_unchecked_dark.svg new file mode 100644 index 0000000000..a520fdd074 --- /dev/null +++ b/src/Gui/Stylesheets/images_dark-light/checkbox_unchecked_dark.svg @@ -0,0 +1,52 @@ + + + + + + + + + + diff --git a/src/Gui/Stylesheets/images_dark-light/checkbox_unchecked_disabled.svg b/src/Gui/Stylesheets/images_dark-light/checkbox_unchecked_disabled.svg new file mode 100644 index 0000000000..51935b024e --- /dev/null +++ b/src/Gui/Stylesheets/images_dark-light/checkbox_unchecked_disabled.svg @@ -0,0 +1,75 @@ + + + + + + + + + + image/svg+xml + + + + Pablo Gil + + + + + SVG + template + + + + + + + + + diff --git a/src/Gui/Stylesheets/images_dark-light/checkbox_unchecked_hover_dark.svg b/src/Gui/Stylesheets/images_dark-light/checkbox_unchecked_hover_dark.svg new file mode 100644 index 0000000000..27f92d4ca9 --- /dev/null +++ b/src/Gui/Stylesheets/images_dark-light/checkbox_unchecked_hover_dark.svg @@ -0,0 +1,52 @@ + + + + + + + + + + diff --git a/src/Gui/Stylesheets/images_dark-light/checkbox_unchecked_hover_light.svg b/src/Gui/Stylesheets/images_dark-light/checkbox_unchecked_hover_light.svg new file mode 100644 index 0000000000..7952fe3752 --- /dev/null +++ b/src/Gui/Stylesheets/images_dark-light/checkbox_unchecked_hover_light.svg @@ -0,0 +1,52 @@ + + + + + + + + + + diff --git a/src/Gui/Stylesheets/images_dark-light/checkbox_unchecked_light.svg b/src/Gui/Stylesheets/images_dark-light/checkbox_unchecked_light.svg new file mode 100644 index 0000000000..ee118a392e --- /dev/null +++ b/src/Gui/Stylesheets/images_dark-light/checkbox_unchecked_light.svg @@ -0,0 +1,52 @@ + + + + + + + + + + diff --git a/src/Gui/Stylesheets/images_dark-light/close_red.svg b/src/Gui/Stylesheets/images_dark-light/close_red.svg new file mode 100644 index 0000000000..e8f5480941 --- /dev/null +++ b/src/Gui/Stylesheets/images_dark-light/close_red.svg @@ -0,0 +1,100 @@ + + + + + + + + + + + + image/svg+xml + + + + Pablo Gil + + + + + SVG + template + + + + + + + + + diff --git a/src/Gui/Stylesheets/images_dark-light/more_arrow_dark.svg b/src/Gui/Stylesheets/images_dark-light/more_arrow_dark.svg new file mode 100644 index 0000000000..6316a4b76e --- /dev/null +++ b/src/Gui/Stylesheets/images_dark-light/more_arrow_dark.svg @@ -0,0 +1,122 @@ + + + + + + + + + + + + + + image/svg+xml + + + + Pablo Gil + + + + + SVG + template + + + + + + + + + diff --git a/src/Gui/Stylesheets/images_dark-light/more_arrow_light.svg b/src/Gui/Stylesheets/images_dark-light/more_arrow_light.svg new file mode 100644 index 0000000000..57bf837cc0 --- /dev/null +++ b/src/Gui/Stylesheets/images_dark-light/more_arrow_light.svg @@ -0,0 +1,122 @@ + + + + + + + + + + + + + + image/svg+xml + + + + Pablo Gil + + + + + SVG + template + + + + + + + + + diff --git a/src/Gui/Stylesheets/images_dark-light/undock_blue.svg b/src/Gui/Stylesheets/images_dark-light/undock_blue.svg new file mode 100644 index 0000000000..7fa802ad90 --- /dev/null +++ b/src/Gui/Stylesheets/images_dark-light/undock_blue.svg @@ -0,0 +1,114 @@ + + + + + + + + + + + + image/svg+xml + + + + Pablo Gil + + + + + SVG + template + + + + + + + + + + + +