From 2d49fcefe24d7ca5ea5cf1211fa702a1ab590cea Mon Sep 17 00:00:00 2001 From: MisterMaker Date: Mon, 29 Apr 2024 18:24:33 +0200 Subject: [PATCH] Overlay fix for default windows style and other light theme's. (#12573) * Removing white spaces * Fixes made by Kadet I am cleaning up my previous PR because of the white space removal. I now make a single commit with the white space stuff and one with Kadet fixes. Co-Authored-By: Kacper Donat * Delete CMakeSettings.json screwed it up * added stylesheet for example code. * added example to cmakelist * Mouse over fix This fixes the mouse over issue! Co-Authored-By: Bas Ruigrok <14298143+Rexbas@users.noreply.github.com> * Added more overlay stylesheet for all options * Removed reddudant code! * Fixed the code Works great! Co-Authored-By: Bas Ruigrok <14298143+Rexbas@users.noreply.github.com> --------- Co-authored-by: Kacper Donat Co-authored-by: Bas Ruigrok <14298143+Rexbas@users.noreply.github.com> --- src/Gui/OverlayWidgets.cpp | 43 ++-- src/Gui/Stylesheets/CMakeLists.txt | 4 + .../Default_Dark-theme_Light-background.qss | 209 ++++++++++++++++ .../Default_Dark-theme_dark-background.qss | 209 ++++++++++++++++ .../Default_Light-theme_dark-background.qss | 209 ++++++++++++++++ .../Default_Light-theme_light-background.qss | 227 ++++++++++++++++++ 6 files changed, 880 insertions(+), 21 deletions(-) create mode 100644 src/Gui/Stylesheets/overlay/Default_Dark-theme_Light-background.qss create mode 100644 src/Gui/Stylesheets/overlay/Default_Dark-theme_dark-background.qss create mode 100644 src/Gui/Stylesheets/overlay/Default_Light-theme_dark-background.qss create mode 100644 src/Gui/Stylesheets/overlay/Default_Light-theme_light-background.qss diff --git a/src/Gui/OverlayWidgets.cpp b/src/Gui/OverlayWidgets.cpp index 8c9b32347d..600a17976d 100644 --- a/src/Gui/OverlayWidgets.cpp +++ b/src/Gui/OverlayWidgets.cpp @@ -638,7 +638,7 @@ void OverlayTabWidget::onRepaint() void OverlayTabWidget::scheduleRepaint() { if(!repainting - && isVisible() + && isVisible() && _graphicsEffect) { repaintTimer.start(100); @@ -1004,7 +1004,7 @@ bool OverlayTabWidget::checkAutoHide() const } if(autoMode == AutoMode::EditShow) { - return !Application::Instance->editDocument() + return !Application::Instance->editDocument() && (!Control().taskPanel() || Control().taskPanel()->isEmpty(false)); } @@ -1294,6 +1294,7 @@ void OverlayTabWidget::setOverlayMode(bool enable) } else { option = enable?OverlayOption::Enable:OverlayOption::Disable; } + setProperty("transparent", option != OverlayOption::Disable); proxyWidget->setStyleSheet(stylesheet); this->setStyleSheet(stylesheet); @@ -1424,17 +1425,17 @@ void OverlayTabWidget::setRect(QRect rect) startHide(); else if (count() && OverlayParams::getDockOverlayHintTabBar()) { switch(dockArea) { - case Qt::LeftDockWidgetArea: - case Qt::RightDockWidgetArea: + case Qt::LeftDockWidgetArea: + case Qt::RightDockWidgetArea: if (dockArea == Qt::LeftDockWidgetArea) rect.setWidth(tabBar()->width()); else rect.setLeft(rect.left() + rect.width() - tabBar()->width()); - rect.setHeight(std::max(rect.height(), + rect.setHeight(std::max(rect.height(), tabBar()->y() + tabBar()->sizeHint().height() + 5)); break; - case Qt::BottomDockWidgetArea: - case Qt::TopDockWidgetArea: + case Qt::BottomDockWidgetArea: + case Qt::TopDockWidgetArea: if (dockArea == Qt::TopDockWidgetArea) rect.setHeight(tabBar()->height()); else @@ -1631,7 +1632,7 @@ void OverlayTabWidget::setupLayout() void OverlayTabWidget::setCurrent(QDockWidget *widget) { int index = dockWidgetIndex(widget); - if(index >= 0) + if(index >= 0) setCurrentIndex(index); } @@ -1671,7 +1672,7 @@ void OverlayTabWidget::onCurrentChanged(int index) auto sizes = splitter->sizes(); int i=0; - int size = splitter->orientation()==Qt::Vertical ? + int size = splitter->orientation()==Qt::Vertical ? height()-tabBar()->height() : width()-tabBar()->width(); for(auto &s : sizes) { if(i++ == index) @@ -1725,21 +1726,21 @@ QLayoutItem *OverlayTabWidget::prepareTitleWidget(QWidget *widget, const QList(widget->parentWidget()); if(!tabWidget) { - layout = new QBoxLayout(QBoxLayout::LeftToRight, widget); + layout = new QBoxLayout(QBoxLayout::LeftToRight, widget); } else { switch(tabWidget->getDockArea()) { case Qt::LeftDockWidgetArea: - layout = new QBoxLayout(QBoxLayout::LeftToRight, widget); + layout = new QBoxLayout(QBoxLayout::LeftToRight, widget); break; case Qt::RightDockWidgetArea: - layout = new QBoxLayout(QBoxLayout::RightToLeft, widget); + layout = new QBoxLayout(QBoxLayout::RightToLeft, widget); break; case Qt::TopDockWidgetArea: - layout = new QBoxLayout(QBoxLayout::TopToBottom, widget); + layout = new QBoxLayout(QBoxLayout::TopToBottom, widget); vertical = true; break; case Qt::BottomDockWidgetArea: - layout = new QBoxLayout(QBoxLayout::BottomToTop, widget); + layout = new QBoxLayout(QBoxLayout::BottomToTop, widget); vertical = true; break; default: @@ -1772,7 +1773,7 @@ QLayoutItem *OverlayTabWidget::prepareTitleWidget(QWidget *widget, const QListorientation() == Qt::Vertical) @@ -2245,7 +2246,7 @@ void OverlaySplitterHandle::paintEvent(QPaintEvent *e) QSplitterHandle::paintEvent(e); return; } - + QPainter painter(this); painter.fillRect(this->rect(), painter.background()); @@ -2359,7 +2360,7 @@ void OverlaySplitterHandle::mousePressEvent(QMouseEvent *me) void OverlaySplitterHandle::mouseReleaseEvent(QMouseEvent *me) { - if (OverlayTabWidget::_Dragging != this || me->button() != Qt::LeftButton) + if (OverlayTabWidget::_Dragging != this || me->button() != Qt::LeftButton) return; if (dragging == 1) { @@ -2503,7 +2504,7 @@ void OverlayGraphicsEffect::draw(QPainter* painter) for(auto w=edit->parentWidget(); w; w=w->parentWidget()) { if (w == widget) { QRect r = edit->cursorRect(); - QRect rect(edit->viewport()->mapTo(widget, r.topLeft()), + QRect rect(edit->viewport()->mapTo(widget, r.topLeft()), edit->viewport()->mapTo(widget, r.bottomRight())); // painter->fillRect(rect, edit->textColor()); // painter->fillRect(rect, edit->currentCharFormat().foreground()); @@ -2523,8 +2524,8 @@ QRectF OverlayGraphicsEffect::boundingRectFor(const QRectF& rect) const { if (!_enabled) return rect; - return rect.united(rect.adjusted(-_blurRadius - _size.width() + _offset.x(), - -_blurRadius - _size.height()+ _offset.y(), + return rect.united(rect.adjusted(-_blurRadius - _size.width() + _offset.x(), + -_blurRadius - _size.height()+ _offset.y(), _blurRadius + _size.width() + _offset.x(), _blurRadius + _size.height() + _offset.y())); } diff --git a/src/Gui/Stylesheets/CMakeLists.txt b/src/Gui/Stylesheets/CMakeLists.txt index f953a64a3b..ae76a66a6e 100644 --- a/src/Gui/Stylesheets/CMakeLists.txt +++ b/src/Gui/Stylesheets/CMakeLists.txt @@ -12,6 +12,10 @@ SET(Stylesheets_Files SET(Overlay_Stylesheets_Files "overlay/Dark.qss" + "overlay/Default_Dark-theme_dark-background.qss" + "overlay/Default_Dark-theme_Light-background.qss" + "overlay/Default_Light-theme_dark-background.qss" + "overlay/Default_Light-theme_light-background.qss" "overlay/Light.qss" "overlay/Dark-Outline.qss" "overlay/Light-Outline.qss" diff --git a/src/Gui/Stylesheets/overlay/Default_Dark-theme_Light-background.qss b/src/Gui/Stylesheets/overlay/Default_Dark-theme_Light-background.qss new file mode 100644 index 0000000000..2b25f99ac6 --- /dev/null +++ b/src/Gui/Stylesheets/overlay/Default_Dark-theme_Light-background.qss @@ -0,0 +1,209 @@ +* { + /* color: #000000; */ + alternate-background-color: rgba(255, 255, 255, 0.437); +} + +QTabWidget::pane { + background-color: rgba(255, 255, 255, 0.566); + border: transparent; +} + +Gui--OverlayTabWidget[transparent="true"] QTreeView::item:disabled { + color: #8b8b8b; +} +Gui--OverlayTabWidget[transparent="true"] QTreeView::item { + color: #000000; +} + + + +/* The OverlayTabWidget is named as OverlayLeft, OverlayRight, OverlayTop, OverlayBottom. +To customize for each overlay docking site, use the following selector + +Gui--OverlayTabWidget#OverlayLeft {} +*/ + +Gui--OverlayTabWidget { + qproperty-effectColor: rgba(225, 225, 225, 220); + qproperty-effectBlurRadius: 5; + qproperty-effectOffsetX: 0; + qproperty-effectOffsetY: 0; + qproperty-effectWidth: 1; + qproperty-effectHeight: 1; + qproperty-enableEffect: 1; +} + Gui--OverlayTabWidget#OverlayBottom { + qproperty-effectColor: rgba(225, 225, 225, 220); + qproperty-effectBlurRadius: 5; + qproperty-effectOffsetX: 0.0; + qproperty-effectOffsetY: 0.0; + qproperty-effectWidth: 1; + qproperty-effectHeight: 1; + qproperty-enableEffect: 1; +} + + Gui--OverlayTabWidget::pane { + background-color: transparent; + border: transparent; + } + + QSint--ActionGroup QFrame[class="content"] { + border-bottom-left-radius: 5px; + border-bottom-right-radius: 5px; + } + + Gui--OverlayTabWidget::tab-bar:top, + Gui--OverlayTabWidget::tab-bar:bottom { + left: 10px; + alignment: left; + } + + Gui--OverlayTabWidget::tab-bar:left, + Gui--OverlayTabWidget::tab-bar:right { + top: 10px; + alignment: top; + } + + Gui--OverlayProxyWidget { + qproperty-hintColor: rgba(250, 250, 250, 0.6); + } + + Gui--OverlayToolButton { + background: transparent; + padding: 0px; + border: none; + } + + Gui--OverlayToolButton::hover { + background: rgba(250,250,250,200); + } + + Gui--OverlayToolButton::focus { + background: rgba(250,250,250,255); + } + + Gui--OverlayToolButton::pressed, + Gui--OverlayToolButton::checked { + background: rgba(150,150,50,80); + border: 1px inset #f5f5f5; + } + + Gui--OverlayToolButton::checked:hover { + background: rgba(150,150,150,200); + border: 1px inset #f5f5f5; + } + + /* QTreeView{ + color: #000000; + } */ + /* + QTreeView:disabled { + color: #262626; + } */ + + /* Gui--OverlayTabWidget[transparent="true"] QTreeView { + color: #ffffff; + } */ + /* QTreeView::item { + /* border-radius: 3px; */ + /* margin: 1.5px 0px; */ + /* background-color: rgba(255, 255, 255, 200); */ + /* } */ + + QFrame { + border: none; + } + + Gui--OverlayToolButton[objectName="OBTN Transparent"] { + image: url(qss:overlay/transparent_light.svg); + } + + Gui--OverlayToolButton[objectName="OBTN Transparent"]:hover { + image: url(qss:overlay/transparent_lighter.svg); + } + + Gui--OverlayToolButton[objectName="OBTN Overlay"] { + image: url(qss:overlay/overlay_light.svg); + } + + Gui--OverlayToolButton[objectName="OBTN Overlay"]:hover { + image: url(qss:overlay/overlay_lighter.svg); + } + + Gui--OverlayToolButton[objectName="OBTN AutoMode"] { + image: url(qss:overlay/mode_light.svg); + } + + Gui--OverlayToolButton[objectName="OBTN AutoMode"]:hover { + image: url(qss:overlay/mode_lighter.svg); + } + + Gui--OverlaySplitterHandle Gui--OverlayToolButton, + Gui--OverlayToolButton[objectName="OBTN Float"] { + image: url(qss:overlay/float_light.svg); + } + + Gui--OverlaySplitterHandle Gui--OverlayToolButton:hover, + Gui--OverlayToolButton[objectName="OBTN Float"]:hover { + image: url(qss:overlay/float_lighter.svg); + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::branch:has-siblings:!adjoins-item { + border-image: url(qss:images_dark-light/branch_vline_dark.svg) 0; + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::branch:has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_more_dark.svg) 0; + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::branch:!has-children:!has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_end_dark.svg) 0; + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::branch:closed:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_closed_dark.svg) 0; + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::branch:has-children:!has-siblings:closed { + border-image: url(qss:images_dark-light/branch_end_closed_dark.svg) 0; + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::branch:open:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_open_dark.svg) 0; + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::branch:open:has-children:!has-siblings { + border-image: url(qss:images_dark-light/branch_end_open_dark.svg) 0; + } + + + /* Normal stuff */ + + + 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; + } \ No newline at end of file diff --git a/src/Gui/Stylesheets/overlay/Default_Dark-theme_dark-background.qss b/src/Gui/Stylesheets/overlay/Default_Dark-theme_dark-background.qss new file mode 100644 index 0000000000..4eeba2d459 --- /dev/null +++ b/src/Gui/Stylesheets/overlay/Default_Dark-theme_dark-background.qss @@ -0,0 +1,209 @@ +* { + /* color: #000000; */ + alternate-background-color: rgba(255, 255, 255, 0.437); + } + + QTabWidget::pane { + background-color: rgba(255, 255, 255, 0.566); + border: transparent; + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::item:disabled { + color: #535353; + } + Gui--OverlayTabWidget[transparent="true"] QTreeView::item { + color: #ffffff; + } + + + + /* The OverlayTabWidget is named as OverlayLeft, OverlayRight, OverlayTop, OverlayBottom. + To customize for each overlay docking site, use the following selector + + Gui--OverlayTabWidget#OverlayLeft {} + */ + + Gui--OverlayTabWidget { + qproperty-effectColor: rgba(25, 25, 25, 220); + qproperty-effectBlurRadius: 5; + qproperty-effectOffsetX: 0; + qproperty-effectOffsetY: 0; + qproperty-effectWidth: 1; + qproperty-effectHeight: 1; + qproperty-enableEffect: 1; + } + Gui--OverlayTabWidget#OverlayBottom { + qproperty-effectColor: rgba(100, 100, 100, 220); + qproperty-effectBlurRadius: 5; + qproperty-effectOffsetX: 0.0; + qproperty-effectOffsetY: 0.0; + qproperty-effectWidth: 1; + qproperty-effectHeight: 1; + qproperty-enableEffect: 1; + } + + Gui--OverlayTabWidget::pane { + background-color: transparent; + border: transparent; + } + + QSint--ActionGroup QFrame[class="content"] { + border-bottom-left-radius: 5px; + border-bottom-right-radius: 5px; + } + + Gui--OverlayTabWidget::tab-bar:top, + Gui--OverlayTabWidget::tab-bar:bottom { + left: 10px; + alignment: left; + } + + Gui--OverlayTabWidget::tab-bar:left, + Gui--OverlayTabWidget::tab-bar:right { + top: 10px; + alignment: top; + } + + Gui--OverlayProxyWidget { + qproperty-hintColor: rgba(250, 250, 250, 0.6); + } + + Gui--OverlayToolButton { + background: transparent; + padding: 0px; + border: none; + } + + Gui--OverlayToolButton::hover { + background: rgba(250,250,250,200); + } + + Gui--OverlayToolButton::focus { + background: rgba(250,250,250,255); + } + + Gui--OverlayToolButton::pressed, + Gui--OverlayToolButton::checked { + background: rgba(150,150,50,80); + border: 1px inset #f5f5f5; + } + + Gui--OverlayToolButton::checked:hover { + background: rgba(150,150,150,200); + border: 1px inset #f5f5f5; + } + + /* QTreeView{ + color: #000000; + } */ + /* + QTreeView:disabled { + color: #262626; + } */ + + /* Gui--OverlayTabWidget[transparent="true"] QTreeView { + color: #ffffff; + } */ + /* QTreeView::item { + /* border-radius: 3px; */ + /* margin: 1.5px 0px; */ + /* background-color: rgba(255, 255, 255, 200); */ + /* } */ + + QFrame { + border: none; + } + + Gui--OverlayToolButton[objectName="OBTN Transparent"] { + image: url(qss:overlay/transparent_light.svg); + } + + Gui--OverlayToolButton[objectName="OBTN Transparent"]:hover { + image: url(qss:overlay/transparent_lighter.svg); + } + + Gui--OverlayToolButton[objectName="OBTN Overlay"] { + image: url(qss:overlay/overlay_light.svg); + } + + Gui--OverlayToolButton[objectName="OBTN Overlay"]:hover { + image: url(qss:overlay/overlay_lighter.svg); + } + + Gui--OverlayToolButton[objectName="OBTN AutoMode"] { + image: url(qss:overlay/mode_light.svg); + } + + Gui--OverlayToolButton[objectName="OBTN AutoMode"]:hover { + image: url(qss:overlay/mode_lighter.svg); + } + + Gui--OverlaySplitterHandle Gui--OverlayToolButton, + Gui--OverlayToolButton[objectName="OBTN Float"] { + image: url(qss:overlay/float_light.svg); + } + + Gui--OverlaySplitterHandle Gui--OverlayToolButton:hover, + Gui--OverlayToolButton[objectName="OBTN Float"]:hover { + image: url(qss:overlay/float_lighter.svg); + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::branch:has-siblings:!adjoins-item { + border-image: url(qss:images_dark-light/branch_vline_light.svg) 0; + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::branch:has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_more_light.svg) 0; + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::branch:!has-children:!has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_end_light.svg) 0; + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::branch:closed:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_closed_light.svg) 0; + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::branch:has-children:!has-siblings:closed { + border-image: url(qss:images_dark-light/branch_end_closed_light.svg) 0; + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::branch:open:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_open_light.svg) 0; + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::branch:open:has-children:!has-siblings { + border-image: url(qss:images_dark-light/branch_end_open_light.svg) 0; + } + + + /* Normal stuff */ + + + 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; + } \ No newline at end of file diff --git a/src/Gui/Stylesheets/overlay/Default_Light-theme_dark-background.qss b/src/Gui/Stylesheets/overlay/Default_Light-theme_dark-background.qss new file mode 100644 index 0000000000..242f312db1 --- /dev/null +++ b/src/Gui/Stylesheets/overlay/Default_Light-theme_dark-background.qss @@ -0,0 +1,209 @@ +* { + /* color: #000000; */ + alternate-background-color: rgba(255, 255, 255, 0.437); + } + + QTabWidget::pane { + background-color: rgba(255, 255, 255, 0.566); + border: transparent; + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::item:disabled { + color: #535353; + } + Gui--OverlayTabWidget[transparent="true"] QTreeView::item { + color: #ffffff; + } + + + + /* The OverlayTabWidget is named as OverlayLeft, OverlayRight, OverlayTop, OverlayBottom. + To customize for each overlay docking site, use the following selector + + Gui--OverlayTabWidget#OverlayLeft {} + */ + + Gui--OverlayTabWidget { + qproperty-effectColor: rgba(25, 25, 25, 220); + qproperty-effectBlurRadius: 5; + qproperty-effectOffsetX: 0; + qproperty-effectOffsetY: 0; + qproperty-effectWidth: 1; + qproperty-effectHeight: 1; + qproperty-enableEffect: 1; + } + Gui--OverlayTabWidget#OverlayBottom { + qproperty-effectColor: rgba(225, 225, 225, 220); + qproperty-effectBlurRadius: 5; + qproperty-effectOffsetX: 0.0; + qproperty-effectOffsetY: 0.0; + qproperty-effectWidth: 1; + qproperty-effectHeight: 1; + qproperty-enableEffect: 1; + } + + Gui--OverlayTabWidget::pane { + background-color: transparent; + border: transparent; + } + + QSint--ActionGroup QFrame[class="content"] { + border-bottom-left-radius: 5px; + border-bottom-right-radius: 5px; + } + + Gui--OverlayTabWidget::tab-bar:top, + Gui--OverlayTabWidget::tab-bar:bottom { + left: 10px; + alignment: left; + } + + Gui--OverlayTabWidget::tab-bar:left, + Gui--OverlayTabWidget::tab-bar:right { + top: 10px; + alignment: top; + } + + Gui--OverlayProxyWidget { + qproperty-hintColor: rgba(250, 250, 250, 0.6); + } + + Gui--OverlayToolButton { + background: transparent; + padding: 0px; + border: none; + } + + Gui--OverlayToolButton::hover { + background: rgba(250,250,250,200); + } + + Gui--OverlayToolButton::focus { + background: rgba(250,250,250,255); + } + + Gui--OverlayToolButton::pressed, + Gui--OverlayToolButton::checked { + background: rgba(150,150,50,80); + border: 1px inset #f5f5f5; + } + + Gui--OverlayToolButton::checked:hover { + background: rgba(150,150,150,200); + border: 1px inset #f5f5f5; + } + + /* QTreeView{ + color: #000000; + } */ + /* + QTreeView:disabled { + color: #262626; + } */ + + /* Gui--OverlayTabWidget[transparent="true"] QTreeView { + color: #ffffff; + } */ + /* QTreeView::item { + /* border-radius: 3px; */ + /* margin: 1.5px 0px; */ + /* background-color: rgba(255, 255, 255, 200); */ + /* } */ + + QFrame { + border: none; + } + + Gui--OverlayToolButton[objectName="OBTN Transparent"] { + image: url(qss:overlay/transparent_dark.svg); + } + + Gui--OverlayToolButton[objectName="OBTN Transparent"]:hover { + image: url(qss:overlay/transparent_light.svg); + } + + Gui--OverlayToolButton[objectName="OBTN Overlay"] { + image: url(qss:overlay/overlay_dark.svg); + } + + Gui--OverlayToolButton[objectName="OBTN Overlay"]:hover { + image: url(qss:overlay/overlay_light.svg); + } + + Gui--OverlayToolButton[objectName="OBTN AutoMode"] { + image: url(qss:overlay/mode_dark.svg); + } + + Gui--OverlayToolButton[objectName="OBTN AutoMode"]:hover { + image: url(qss:overlay/mode_light.svg); + } + + Gui--OverlaySplitterHandle Gui--OverlayToolButton, + Gui--OverlayToolButton[objectName="OBTN Float"] { + image: url(qss:overlay/float_dark.svg); + } + + Gui--OverlaySplitterHandle Gui--OverlayToolButton:hover, + Gui--OverlayToolButton[objectName="OBTN Float"]:hover { + image: url(qss:overlay/float_light.svg); + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::branch:has-siblings:!adjoins-item { + border-image: url(qss:images_dark-light/branch_vline_light.svg) 0; + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::branch:has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_more_light.svg) 0; + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::branch:!has-children:!has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_end_light.svg) 0; + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::branch:closed:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_closed_light.svg) 0; + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::branch:has-children:!has-siblings:closed { + border-image: url(qss:images_dark-light/branch_end_closed_light.svg) 0; + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::branch:open:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_open_light.svg) 0; + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::branch:open:has-children:!has-siblings { + border-image: url(qss:images_dark-light/branch_end_open_light.svg) 0; + } + + + /* Normal stuff */ + + + 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; + } \ No newline at end of file diff --git a/src/Gui/Stylesheets/overlay/Default_Light-theme_light-background.qss b/src/Gui/Stylesheets/overlay/Default_Light-theme_light-background.qss new file mode 100644 index 0000000000..1ef36ab552 --- /dev/null +++ b/src/Gui/Stylesheets/overlay/Default_Light-theme_light-background.qss @@ -0,0 +1,227 @@ +* { + /* color: #000000; */ + alternate-background-color: rgba(255, 255, 255, 0.437); + } + + QTabWidget::pane { + background-color: rgba(255, 255, 255, 0.566); + border: transparent; + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::item:disabled { + color: #8b8b8b; + } + Gui--OverlayTabWidget[transparent="true"] QTreeView::item { + color: #000000; + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::item:pressed { + background-color: @ThemeAccentColor1; + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::item:selected:active{ + background-color: @ThemeAccentColor1; + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::item:selected:!active { + color: white; + background-color: #353535; + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::item:!selected:hover { + outline: 0; + color: white; + background-color: @ThemeAccentColor1; + } + + + /* The OverlayTabWidget is named as OverlayLeft, OverlayRight, OverlayTop, OverlayBottom. + To customize for each overlay docking site, use the following selector + + Gui--OverlayTabWidget#OverlayLeft {} + */ + + Gui--OverlayTabWidget { + qproperty-effectColor: rgba(225, 225, 225, 220); + qproperty-effectBlurRadius: 5; + qproperty-effectOffsetX: 0; + qproperty-effectOffsetY: 0; + qproperty-effectWidth: 1; + qproperty-effectHeight: 1; + qproperty-enableEffect: 1; + } + Gui--OverlayTabWidget#OverlayBottom { + qproperty-effectColor: rgba(225, 225, 225, 220); + qproperty-effectBlurRadius: 5; + qproperty-effectOffsetX: 0.0; + qproperty-effectOffsetY: 0.0; + qproperty-effectWidth: 1; + qproperty-effectHeight: 1; + qproperty-enableEffect: 1; + } + + Gui--OverlayTabWidget::pane { + background-color: transparent; + border: transparent; + } + + QSint--ActionGroup QFrame[class="content"] { + border-bottom-left-radius: 5px; + border-bottom-right-radius: 5px; + } + + Gui--OverlayTabWidget::tab-bar:top, + Gui--OverlayTabWidget::tab-bar:bottom { + left: 10px; + alignment: left; + } + + Gui--OverlayTabWidget::tab-bar:left, + Gui--OverlayTabWidget::tab-bar:right { + top: 10px; + alignment: top; + } + + Gui--OverlayProxyWidget { + qproperty-hintColor: rgba(250, 250, 250, 0.6); + } + + Gui--OverlayToolButton { + background: transparent; + padding: 0px; + border: none; + } + + Gui--OverlayToolButton::hover { + background: rgba(250,250,250,200); + } + + Gui--OverlayToolButton::focus { + background: rgba(250,250,250,255); + } + + Gui--OverlayToolButton::pressed, + Gui--OverlayToolButton::checked { + background: rgba(150,150,50,80); + border: 1px inset #f5f5f5; + } + + Gui--OverlayToolButton::checked:hover { + background: rgba(150,150,150,200); + border: 1px inset #f5f5f5; + } + + /* QTreeView{ + color: #000000; + } */ + /* + QTreeView:disabled { + color: #262626; + } */ + + /* Gui--OverlayTabWidget[transparent="true"] QTreeView { + color: #ffffff; + } */ + /* QTreeView::item { + /* border-radius: 3px; */ + /* margin: 1.5px 0px; */ + /* background-color: rgba(255, 255, 255, 200); */ + /* } */ + + QFrame { + border: none; + } + + Gui--OverlayToolButton[objectName="OBTN Transparent"] { + image: url(qss:overlay/transparent_dark.svg); + } + + Gui--OverlayToolButton[objectName="OBTN Transparent"]:hover { + image: url(qss:overlay/transparent_light.svg); + } + + Gui--OverlayToolButton[objectName="OBTN Overlay"] { + image: url(qss:overlay/overlay_dark.svg); + } + + Gui--OverlayToolButton[objectName="OBTN Overlay"]:hover { + image: url(qss:overlay/overlay_light.svg); + } + + Gui--OverlayToolButton[objectName="OBTN AutoMode"] { + image: url(qss:overlay/mode_dark.svg); + } + + Gui--OverlayToolButton[objectName="OBTN AutoMode"]:hover { + image: url(qss:overlay/mode_light.svg); + } + + Gui--OverlaySplitterHandle Gui--OverlayToolButton, + Gui--OverlayToolButton[objectName="OBTN Float"] { + image: url(qss:overlay/float_dark.svg); + } + + Gui--OverlaySplitterHandle Gui--OverlayToolButton:hover, + Gui--OverlayToolButton[objectName="OBTN Float"]:hover { + image: url(qss:overlay/float_light.svg); + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::branch:has-siblings:!adjoins-item { + border-image: url(qss:images_dark-light/branch_vline_dark.svg) 0; + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::branch:has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_more_dark.svg) 0; + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::branch:!has-children:!has-siblings:adjoins-item { + border-image: url(qss:images_dark-light/branch_end_dark.svg) 0; + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::branch:closed:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_closed_dark.svg) 0; + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::branch:has-children:!has-siblings:closed { + border-image: url(qss:images_dark-light/branch_end_closed_dark.svg) 0; + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::branch:open:has-children:has-siblings { + border-image: url(qss:images_dark-light/branch_more_open_dark.svg) 0; + } + + Gui--OverlayTabWidget[transparent="true"] QTreeView::branch:open:has-children:!has-siblings { + border-image: url(qss:images_dark-light/branch_end_open_dark.svg) 0; + } + + + /* Normal stuff */ + + + 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; + } \ No newline at end of file