Created
February 14, 2014 14:58
-
-
Save Trass3r/9002457 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| { | |
| connect(ui.actionDarkOrangeTheme, &QAction::triggered, this, &MainWindow::activateDarkOrangeTheme); | |
| connect(ui.actionDarkFusionTheme, &QAction::triggered, this, &MainWindow::activateDarkFusionTheme); | |
| } | |
| #include <QStyleFactory> | |
| #define raw(...) #__VA_ARGS__ | |
| #pragma region qss | |
| static const char* s = raw( | |
| QToolTip | |
| { | |
| border: | |
| 1px solid black; | |
| background - color : #ffa02f; | |
| padding: | |
| 1px; | |
| border - radius : 3px; | |
| opacity: | |
| 100; | |
| } QWidget | |
| { | |
| color: | |
| #b1b1b1; | |
| background - color : #323232; | |
| } QWidget | |
| : item | |
| : hover | |
| { | |
| background - color | |
| : QLinearGradient(x1 : 0, y1 : 0, x2 : 0, y2 : 1, stop : 0 #ffa02f, stop : 1 #ca0619); | |
| color: | |
| # 000000; | |
| } QWidget | |
| : item | |
| : selected | |
| { | |
| background - color | |
| : QLinearGradient(x1 : 0, y1 : 0, x2 : 0, y2 : 1, stop : 0 #ffa02f, stop : 1 #d7801a); | |
| } QMenuBar::item | |
| { | |
| background: | |
| transparent; | |
| } QMenuBar::item | |
| : selected | |
| { | |
| background: | |
| transparent; | |
| border: | |
| 1px solid #ffaa00; | |
| } QMenuBar::item | |
| : pressed | |
| { | |
| background: | |
| # 444; | |
| border: | |
| 1px solid #000; | |
| background - color | |
| : QLinearGradient(x1 : 0, y1 : 0, x2 : 0, y2 : 1, stop : 1 #212121, stop : 0.4 #343434 /*, | |
| stop:0.2 #343434, | |
| stop:0.1 #ffaa00*/ | |
| ); | |
| margin - bottom : -1px; | |
| padding - bottom : 1px; | |
| } QMenu | |
| { | |
| border: | |
| 1px solid #000; | |
| } QMenu::item | |
| { | |
| padding: | |
| 2px 20px 2px 20px; | |
| } QMenu::item | |
| : selected | |
| { | |
| color: | |
| # 000000; | |
| } QWidget | |
| : disabled | |
| { | |
| color: | |
| # 404040; | |
| background - color : #323232; | |
| } QAbstractItemView | |
| { | |
| background - color : QLinearGradient(x1 : 0, y1 : 0, x2 : 0, y2 : 1, stop : 0 #4d4d4d, | |
| stop : 0.1 #646464, stop : 1 #5d5d5d); | |
| } QWidget | |
| : focus | |
| { | |
| /*border: 2px solid QLinearGradient( x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 #ffa02f, stop: 1 | |
| #d7801a);*/ | |
| } QLineEdit | |
| { | |
| background - color : QLinearGradient(x1 : 0, y1 : 0, x2 : 0, y2 : 1, stop : 0 #4d4d4d, | |
| stop : 0 #646464, stop : 1 #5d5d5d); | |
| padding: | |
| 1px; | |
| border - style : solid; | |
| border: | |
| 1px solid #1e1e1e; | |
| border - radius : 5; | |
| } QPushButton | |
| { | |
| color: | |
| #b1b1b1; | |
| background - color | |
| : QLinearGradient(x1 : 0, y1 : 0, x2 : 0, y2 : 1, stop : 0 #565656, stop : 0.1 #525252, | |
| stop : 0.5 #4e4e4e, stop : 0.9 #4a4a4a, stop : 1 #464646); | |
| border - width : 1px; | |
| border - color : #1e1e1e; | |
| border - style : solid; | |
| border - radius : 6; | |
| padding: | |
| 3px; | |
| font - size : 12px; | |
| padding - left : 5px; | |
| padding - right : 5px; | |
| } QPushButton | |
| : pressed | |
| { | |
| background - color | |
| : QLinearGradient(x1 : 0, y1 : 0, x2 : 0, y2 : 1, stop : 0 #2d2d2d, stop : 0.1 #2b2b2b, | |
| stop : 0.5 #292929, stop : 0.9 #282828, stop : 1 #252525); | |
| } QComboBox | |
| { | |
| selection - background - color : #ffaa00; | |
| background - color | |
| : QLinearGradient(x1 : 0, y1 : 0, x2 : 0, y2 : 1, stop : 0 #565656, stop : 0.1 #525252, | |
| stop : 0.5 #4e4e4e, stop : 0.9 #4a4a4a, stop : 1 #464646); | |
| border - style : solid; | |
| border: | |
| 1px solid #1e1e1e; | |
| border - radius : 5; | |
| } QComboBox | |
| : hover, QPushButton | |
| : hover | |
| { | |
| border: | |
| 2px solid QLinearGradient(x1 : 0, y1 : 0, x2 : 0, y2 : 1, stop : 0 #ffa02f, stop : 1 #d7801a); | |
| } QComboBox | |
| : on | |
| { | |
| padding - top : 3px; | |
| padding - left : 4px; | |
| background - color : QLinearGradient(x1 : 0, y1 : 0, x2 : 0, y2 : 1, stop : 0 #2d2d2d, | |
| stop : 0.1 #2b2b2b, stop : 0.5 #292929, | |
| stop : 0.9 #282828, stop : 1 #252525); | |
| selection - background - color : #ffaa00; | |
| } QComboBox QAbstractItemView | |
| { | |
| border: | |
| 2px solid darkgray; | |
| selection - background - color | |
| : QLinearGradient(x1 : 0, y1 : 0, x2 : 0, y2 : 1, stop : 0 #ffa02f, stop : 1 #d7801a); | |
| } QComboBox::drop - | |
| down | |
| { | |
| subcontrol - origin : padding; | |
| subcontrol - position : top right; | |
| width: | |
| 15px; | |
| border - left - width : 0px; | |
| border - left - color : darkgray; | |
| border - left - style : solid; /* just a single line */ | |
| border - top - right - radius : 3px; /* same radius as the QComboBox */ | |
| border - bottom - right - radius : 3px; | |
| } QComboBox::down - | |
| arrow | |
| { | |
| image: | |
| url( : / down_arrow.png); | |
| } QGroupBox | |
| : focus | |
| { | |
| border: | |
| 2px solid QLinearGradient(x1 : 0, y1 : 0, x2 : 0, y2 : 1, stop : 0 #ffa02f, stop : 1 #d7801a); | |
| } QTextEdit | |
| : focus | |
| { | |
| border: | |
| 2px solid QLinearGradient(x1 : 0, y1 : 0, x2 : 0, y2 : 1, stop : 0 #ffa02f, stop : 1 #d7801a); | |
| } QScrollBar | |
| : horizontal | |
| { | |
| border: | |
| 1px solid #222222; | |
| background: | |
| QLinearGradient(x1 : 0, y1 : 0, x2 : 0, y2 : 1, stop : 0.0 #121212, stop : 0.2 #282828, | |
| stop : 1 #484848); | |
| height: | |
| 7px; | |
| margin: | |
| 0px 16px 0 16px; | |
| } QScrollBar::handle | |
| : horizontal | |
| { | |
| background: | |
| QLinearGradient(x1 : 0, y1 : 0, x2 : 1, y2 : 0, stop : 0 #ffa02f, stop : 0.5 #d7801a, | |
| stop : 1 #ffa02f); | |
| min - height : 20px; | |
| border - radius : 2px; | |
| } QScrollBar::add - | |
| line | |
| : horizontal | |
| { | |
| border: | |
| 1px solid #1b1b19; | |
| border - radius : 2px; | |
| background: | |
| QLinearGradient(x1 : 0, y1 : 0, x2 : 1, y2 : 0, stop : 0 #ffa02f, stop : 1 #d7801a); | |
| width: | |
| 14px; | |
| subcontrol - position : right; | |
| subcontrol - origin : margin; | |
| } QScrollBar::sub - | |
| line | |
| : horizontal | |
| { | |
| border: | |
| 1px solid #1b1b19; | |
| border - radius : 2px; | |
| background: | |
| QLinearGradient(x1 : 0, y1 : 0, x2 : 1, y2 : 0, stop : 0 #ffa02f, stop : 1 #d7801a); | |
| width: | |
| 14px; | |
| subcontrol - position : left; | |
| subcontrol - origin : margin; | |
| } QScrollBar::right - | |
| arrow | |
| : horizontal, QScrollBar::left - arrow | |
| : horizontal | |
| { | |
| border: | |
| 1px solid black; | |
| width: | |
| 1px; | |
| height: | |
| 1px; | |
| background: | |
| white; | |
| } QScrollBar::add - | |
| page | |
| : horizontal, QScrollBar::sub - page | |
| : horizontal | |
| { | |
| background: | |
| none; | |
| } QScrollBar | |
| : vertical | |
| { | |
| background: | |
| QLinearGradient(x1 : 0, y1 : 0, x2 : 1, y2 : 0, stop : 0.0 #121212, stop : 0.2 #282828, | |
| stop : 1 #484848); | |
| width: | |
| 7px; | |
| margin: | |
| 16px 0 16px 0; | |
| border: | |
| 1px solid #222222; | |
| } QScrollBar::handle | |
| : vertical | |
| { | |
| background: | |
| QLinearGradient(x1 : 0, y1 : 0, x2 : 0, y2 : 1, stop : 0 #ffa02f, stop : 0.5 #d7801a, | |
| stop : 1 #ffa02f); | |
| min - height : 20px; | |
| border - radius : 2px; | |
| } QScrollBar::add - | |
| line | |
| : vertical | |
| { | |
| border: | |
| 1px solid #1b1b19; | |
| border - radius : 2px; | |
| background: | |
| QLinearGradient(x1 : 0, y1 : 0, x2 : 0, y2 : 1, stop : 0 #ffa02f, stop : 1 #d7801a); | |
| height: | |
| 14px; | |
| subcontrol - position : bottom; | |
| subcontrol - origin : margin; | |
| } QScrollBar::sub - | |
| line | |
| : vertical | |
| { | |
| border: | |
| 1px solid #1b1b19; | |
| border - radius : 2px; | |
| background: | |
| QLinearGradient(x1 : 0, y1 : 0, x2 : 0, y2 : 1, stop : 0 #d7801a, stop : 1 #ffa02f); | |
| height: | |
| 14px; | |
| subcontrol - position : top; | |
| subcontrol - origin : margin; | |
| } QScrollBar::up - | |
| arrow | |
| : vertical, QScrollBar::down - arrow | |
| : vertical | |
| { | |
| border: | |
| 1px solid black; | |
| width: | |
| 1px; | |
| height: | |
| 1px; | |
| background: | |
| white; | |
| } QScrollBar::add - | |
| page | |
| : vertical, QScrollBar::sub - page | |
| : vertical | |
| { | |
| background: | |
| none; | |
| } QTextEdit | |
| { background - color : #242424; } QPlainTextEdit | |
| { background - color : #242424; } QHeaderView::section | |
| { | |
| background - color | |
| : QLinearGradient(x1 : 0, y1 : 0, x2 : 0, y2 : 1, stop : 0 #616161, stop : 0.5 #505050, | |
| stop : 0.6 #434343, stop : 1 #656565); | |
| color: | |
| white; | |
| padding - left : 4px; | |
| border: | |
| 1px solid #6c6c6c; | |
| } QCheckBox | |
| : disabled | |
| { | |
| color: | |
| # 414141; | |
| } QDockWidget::title | |
| { | |
| text - align : center; | |
| spacing: | |
| 3px; /* spacing between items in the tool bar */ | |
| background - color : QLinearGradient(x1 : 0, y1 : 0, x2 : 0, y2 : 1, stop : 0 #323232, | |
| stop : 0.5 #242424, stop : 1 #323232); | |
| } QDockWidget::close - | |
| button, | |
| QDockWidget::float - button | |
| { | |
| text - align : center; | |
| spacing: | |
| 1px; /* spacing between items in the tool bar */ | |
| background - color : QLinearGradient(x1 : 0, y1 : 0, x2 : 0, y2 : 1, stop : 0 #323232, | |
| stop : 0.5 #242424, stop : 1 #323232); | |
| } QDockWidget::close - | |
| button | |
| : hover, QDockWidget::float - button | |
| : hover | |
| { | |
| background: | |
| # 242424; | |
| } QDockWidget::close - | |
| button | |
| : pressed, QDockWidget::float - button | |
| : pressed | |
| { | |
| padding: | |
| 1px - 1px - 1px 1px; | |
| } QMainWindow::separator | |
| { | |
| background - color | |
| : QLinearGradient(x1 : 0, y1 : 0, x2 : 0, y2 : 1, stop : 0 #161616, stop : 0.5 #151515, | |
| stop : 0.6 #212121, stop : 1 #343434); | |
| color: | |
| white; | |
| padding - left : 4px; | |
| border: | |
| 1px solid #4c4c4c; | |
| spacing: | |
| 3px; /* spacing between items in the tool bar */ | |
| } QMainWindow::separator | |
| : hover | |
| { | |
| background - color : QLinearGradient(x1 : 0, y1 : 0, x2 : 0, y2 : 1, stop : 0 #d7801a, | |
| stop : 0.5 #b56c17 stop : 1 #ffa02f); | |
| color: | |
| white; | |
| padding - left : 4px; | |
| border: | |
| 1px solid #6c6c6c; | |
| spacing: | |
| 3px; /* spacing between items in the tool bar */ | |
| } QToolBar::handle | |
| { | |
| spacing: | |
| 3px; /* spacing between items in the tool bar */ | |
| background: | |
| url( : / images / handle.png); | |
| } QMenu::separator | |
| { | |
| height: | |
| 2px; | |
| background - color : QLinearGradient(x1 : 0, y1 : 0, x2 : 0, y2 : 1, stop : 0 #161616, | |
| stop : 0.5 #151515, stop : 0.6 #212121, stop : 1 #343434); | |
| color: | |
| white; | |
| padding - left : 4px; | |
| margin - left : 10px; | |
| margin - right : 5px; | |
| } QProgressBar | |
| { | |
| border: | |
| 2px solid grey; | |
| border - radius : 5px; | |
| text - align : center; | |
| } QProgressBar::chunk | |
| { | |
| background - color : #d7801a; | |
| width: | |
| 2.15px; | |
| margin: | |
| 0.5px; | |
| } QTabBar::tab | |
| { | |
| color: | |
| #b1b1b1; | |
| border: | |
| 1px solid #444; | |
| border - bottom - style : none; | |
| background - color : #323232; | |
| padding - left : 10px; | |
| padding - right : 10px; | |
| padding - top : 3px; | |
| padding - bottom : 2px; | |
| margin - right : -1px; | |
| } QTabWidget::pane | |
| { | |
| border: | |
| 1px solid #444; | |
| top: | |
| 1px; | |
| } QTabBar::tab | |
| : last | |
| { | |
| margin - right : 0; /* the last selected tab has nothing to overlap with on the right */ | |
| border - top - right - radius : 3px; | |
| } QTabBar::tab | |
| : first | |
| : !selected | |
| { | |
| margin - left : 0px; /* the last selected tab has nothing to overlap with on the right */ | |
| border - top - left - radius : 3px; | |
| } QTabBar::tab | |
| : !selected | |
| { | |
| color: | |
| #b1b1b1; | |
| border - bottom - style : solid; | |
| margin - top : 3px; | |
| background - color | |
| : QLinearGradient(x1 : 0, y1 : 0, x2 : 0, y2 : 1, stop : 1 #212121, stop : .4 #343434); | |
| } QTabBar::tab | |
| : selected | |
| { | |
| border - top - left - radius : 3px; | |
| border - top - right - radius : 3px; | |
| margin - bottom : 0px; | |
| } QTabBar::tab | |
| : !selected | |
| : hover | |
| { | |
| /*border-top: 2px solid #ffaa00; | |
| padding-bottom: 3px;*/ | |
| border - top - left - radius : 3px; | |
| border - top - right - radius : 3px; | |
| background - color | |
| : QLinearGradient(x1 : 0, y1 : 0, x2 : 0, y2 : 1, stop : 1 #212121, stop : 0.4 #343434, | |
| stop : 0.2 #343434, stop : 0.1 #ffaa00); | |
| } QRadioButton::indicator | |
| : checked, QRadioButton::indicator | |
| : unchecked | |
| { | |
| color: | |
| #b1b1b1; | |
| background - color : #323232; | |
| border: | |
| 1px solid #b1b1b1; | |
| border - radius : 6px; | |
| } QRadioButton::indicator | |
| : checked | |
| { | |
| background - color : qradialgradient(cx : 0.5, cy : 0.5, fx : 0.5, fy : 0.5, radius : 1.0, | |
| stop : 0.25 #ffaa00, stop : 0.3 #323232); | |
| } QCheckBox::indicator | |
| { | |
| color: | |
| #b1b1b1; | |
| background - color : #323232; | |
| border: | |
| 1px solid #b1b1b1; | |
| width: | |
| 9px; | |
| height: | |
| 9px; | |
| } QRadioButton::indicator | |
| { border - radius : 6px; } QRadioButton::indicator | |
| : hover, QCheckBox::indicator | |
| : hover | |
| { | |
| border: | |
| 1px solid #ffaa00; | |
| } QCheckBox::indicator | |
| : checked | |
| { | |
| image: | |
| url( : / images / checkbox.png); | |
| } QCheckBox::indicator | |
| : disabled, QRadioButton::indicator | |
| : disabled | |
| { | |
| border: | |
| 1px solid #444; | |
| }); | |
| #pragma endregion | |
| void MainWindow::activateDarkOrangeTheme() | |
| { | |
| // http://tech-artists.org/forum/showthread.php?2359-Release-Qt-dark-orange-stylesheet | |
| qApp->setStyle(QStringLiteral("plastique")); | |
| qApp->setPalette(QPalette()); | |
| qApp->setStyleSheet(QLatin1String(s)); | |
| } | |
| void MainWindow::activateDarkFusionTheme() | |
| { | |
| /* | |
| Dark Qt 5 Fusion theme | |
| http://contingencycoder.wordpress.com/2013/08/15/dark-fusion-theme-for-qt-5/ | |
| */ | |
| // bright fusion looks worse than default | |
| qApp->setStyle(QStringLiteral("fusion")); | |
| QPalette palette; | |
| palette.setColor(QPalette::Window, QColor(53, 53, 53)); | |
| palette.setColor(QPalette::WindowText, Qt::white); | |
| palette.setColor(QPalette::Base, QColor(25, 25, 25)); | |
| palette.setColor(QPalette::AlternateBase, QColor(53, 53, 53)); | |
| palette.setColor(QPalette::ToolTipBase, Qt::white); | |
| palette.setColor(QPalette::ToolTipText, Qt::white); | |
| palette.setColor(QPalette::Text, Qt::white); | |
| palette.setColor(QPalette::Button, QColor(53, 53, 53)); | |
| palette.setColor(QPalette::ButtonText, Qt::white); | |
| palette.setColor(QPalette::BrightText, Qt::red); | |
| palette.setColor(QPalette::Link, QColor(42, 130, 218)); | |
| palette.setColor(QPalette::Highlight, QColor(42, 130, 218)); | |
| palette.setColor(QPalette::HighlightedText, Qt::black); | |
| // for the tool tips to blend them better with the rest of the theme | |
| qApp->setStyleSheet( | |
| "QToolTip { color: #ffffff; background-color: #2a82da; border: 1px solid white; }"); | |
| qApp->setPalette(palette); | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment