diff --git a/src/Makefile.qt.include b/src/Makefile.qt.include
index ecc2e51dc933..287bb896e945 100644
--- a/src/Makefile.qt.include
+++ b/src/Makefile.qt.include
@@ -303,21 +303,54 @@ BITCOIN_QT_CPP += $(BITCOIN_QT_WALLET_CPP)
endif
RES_IMAGES = \
- qt/res/images/arrow_down.png \
- qt/res/images/arrow_down_small.png \
- qt/res/images/arrow_left_small.png \
- qt/res/images/arrow_right_small.png \
- qt/res/images/arrow_up_small.png \
- qt/res/images/checked.png \
+ qt/res/images/arrow_down_normal.png \
+ qt/res/images/arrow_down_hover.png \
+ qt/res/images/arrow_down_pressed.png \
+ qt/res/images/arrow_left_normal.png \
+ qt/res/images/arrow_left_hover.png \
+ qt/res/images/arrow_left_pressed.png \
+ qt/res/images/arrow_right_normal.png \
+ qt/res/images/arrow_right_hover.png \
+ qt/res/images/arrow_right_pressed.png \
+ qt/res/images/arrow_up_normal.png \
+ qt/res/images/arrow_up_hover.png \
+ qt/res/images/arrow_up_pressed.png \
+ qt/res/images/arrow_light_down_normal.png \
+ qt/res/images/arrow_light_down_hover.png \
+ qt/res/images/arrow_light_left_normal.png \
+ qt/res/images/arrow_light_left_hover.png \
+ qt/res/images/arrow_light_right_normal.png \
+ qt/res/images/arrow_light_right_hover.png \
+ qt/res/images/arrow_light_up_normal.png \
+ qt/res/images/arrow_light_up_hover.png \
+ qt/res/images/checkbox_normal.png \
+ qt/res/images/checkbox_normal_hover.png \
+ qt/res/images/checkbox_normal_pressed.png \
+ qt/res/images/checkbox_normal_disabled.png \
+ qt/res/images/checkbox_checked.png \
+ qt/res/images/checkbox_checked_hover.png \
+ qt/res/images/checkbox_checked_pressed.png \
+ qt/res/images/checkbox_checked_disabled.png \
+ qt/res/images/checkbox_partly_checked.png \
+ qt/res/images/checkbox_partly_checked_hover.png \
+ qt/res/images/checkbox_partly_checked_pressed.png \
+ qt/res/images/checkbox_partly_checked_disabled.png \
qt/res/images/dash_logo_horizontal.png \
qt/res/images/dash_logo_toolbar.png \
qt/res/images/dash_logo_toolbar_blue.png \
- qt/res/images/qtreeview_selected.png \
- qt/res/images/splash.png \
- qt/res/images/unchecked.png
+ qt/res/images/radio_normal.png \
+ qt/res/images/radio_normal_hover.png \
+ qt/res/images/radio_normal_pressed.png \
+ qt/res/images/radio_checked.png \
+ qt/res/images/radio_checked_hover.png \
+ qt/res/images/radio_checked_pressed.png \
+ qt/res/images/radio_normal_disabled.png \
+ qt/res/images/radio_checked_disabled.png \
+ qt/res/images/splash.png
RES_CSS = \
qt/res/css/dark.css \
+ qt/res/css/general.css \
qt/res/css/light.css \
qt/res/css/scrollbars.css \
qt/res/css/trad.css
diff --git a/src/qt/bitcoingui.cpp b/src/qt/bitcoingui.cpp
index 81d127cc8f2d..4da94010b4c7 100644
--- a/src/qt/bitcoingui.cpp
+++ b/src/qt/bitcoingui.cpp
@@ -241,19 +241,6 @@ BitcoinGUI::BitcoinGUI(const PlatformStyle *_platformStyle, const NetworkStyle *
progressBar->setStyleSheet("QProgressBar { background-color: #F8F8F8; border: 1px solid grey; border-radius: 7px; padding: 1px; text-align: center; } QProgressBar::chunk { background: QLinearGradient(x1: 0, y1: 0, x2: 1, y2: 0, stop: 0 #00CCFF, stop: 1 #33CCFF); border-radius: 7px; margin: 0px; }");
}
-#ifndef Q_OS_MAC
- // Apply some styling to scrollbars
- QString theme = settings.value("theme", "").toString();
- if (theme != "Traditional") { // No scrollbar styling for the traditional theme
- QFile qFile(QString(":/css/scrollbars"));
- QString styleSheet;
- if (qFile.open(QFile::ReadOnly)) {
- styleSheet = QLatin1String(qFile.readAll());
- }
- this->setStyleSheet(this->styleSheet().append(styleSheet));
- }
-#endif
-
statusBar()->addWidget(progressBarLabel);
statusBar()->addWidget(progressBar);
statusBar()->addPermanentWidget(frameBlocks);
@@ -620,9 +607,8 @@ void BitcoinGUI::createToolBars()
toolbar->addWidget(spacer);
QLabel *logoLabel = new QLabel();
- QString theme = settings.value("theme", "").toString();
QString logoImage = ":/images/dash_logo_toolbar";
- if (theme == "Traditional") {
+ if (!GUIUtil::dashThemeActive()) {
logoImage = ":/images/dash_logo_toolbar_blue";
}
diff --git a/src/qt/dash.qrc b/src/qt/dash.qrc
index 52b004165d96..b66c470d61ac 100644
--- a/src/qt/dash.qrc
+++ b/src/qt/dash.qrc
@@ -55,6 +55,7 @@
res/icons/network_disabled.png
+ res/css/general.css
res/css/scrollbars.css
@@ -63,18 +64,50 @@
res/css/trad.css
- res/images/arrow_down.png
- res/images/arrow_down_small.png
- res/images/arrow_left_small.png
- res/images/arrow_right_small.png
- res/images/arrow_up_small.png
- res/images/checked.png
+ res/images/arrow_down_normal.png
+ res/images/arrow_down_hover.png
+ res/images/arrow_down_pressed.png
+ res/images/arrow_left_normal.png
+ res/images/arrow_left_hover.png
+ res/images/arrow_left_pressed.png
+ res/images/arrow_right_normal.png
+ res/images/arrow_right_hover.png
+ res/images/arrow_right_pressed.png
+ res/images/arrow_up_normal.png
+ res/images/arrow_up_hover.png
+ res/images/arrow_up_pressed.png
+ res/images/arrow_light_down_normal.png
+ res/images/arrow_light_down_hover.png
+ res/images/arrow_light_left_normal.png
+ res/images/arrow_light_left_hover.png
+ res/images/arrow_light_right_normal.png
+ res/images/arrow_light_right_hover.png
+ res/images/arrow_light_up_normal.png
+ res/images/arrow_light_up_hover.png
+ res/images/checkbox_normal.png
+ res/images/checkbox_normal_hover.png
+ res/images/checkbox_normal_pressed.png
+ res/images/checkbox_normal_disabled.png
+ res/images/checkbox_checked.png
+ res/images/checkbox_checked_hover.png
+ res/images/checkbox_checked_pressed.png
+ res/images/checkbox_checked_disabled.png
+ res/images/checkbox_partly_checked.png
+ res/images/checkbox_partly_checked_hover.png
+ res/images/checkbox_partly_checked_pressed.png
+ res/images/checkbox_partly_checked_disabled.png
res/images/dash_logo_horizontal.png
res/images/dash_logo_toolbar.png
res/images/dash_logo_toolbar_blue.png
- res/images/qtreeview_selected.png
+ res/images/radio_normal.png
+ res/images/radio_normal_hover.png
+ res/images/radio_normal_pressed.png
+ res/images/radio_checked.png
+ res/images/radio_checked_hover.png
+ res/images/radio_checked_pressed.png
+ res/images/radio_normal_disabled.png
+ res/images/radio_checked_disabled.png
res/images/splash.png
- res/images/unchecked.png
res/movies/spinner-000.png
diff --git a/src/qt/guiutil.cpp b/src/qt/guiutil.cpp
index b5614e7d0efc..12af1fa506eb 100644
--- a/src/qt/guiutil.cpp
+++ b/src/qt/guiutil.cpp
@@ -85,6 +85,8 @@ void ForceActivation();
namespace GUIUtil {
+// The name of the traditional theme
+static const QString traditionalTheme = "Traditional";
// The theme to set by default if settings are missing or incorrect
static const QString defaultTheme = "Light";
// The prefix a theme name should have if we want to apply dark colors and styles to it
@@ -974,22 +976,52 @@ void migrateQtSettings()
// Open CSS when configured
QString loadStyleSheet()
{
- QSettings settings;
- QString theme = settings.value("theme", "").toString();
+ static std::unique_ptr stylesheet;
- QDir themes(":themes");
- // Make sure settings are pointing to an existent theme
- if (theme.isEmpty() || !themes.exists(theme)) {
- theme = defaultTheme;
- settings.setValue("theme", theme);
- }
+ if (stylesheet.get() == nullptr) {
+
+ stylesheet = std::make_unique();
+
+ QSettings settings;
+ QDir themes(":themes");
+ QString theme = settings.value("theme", "").toString();
- QFile qFile(":themes/" + theme);
- if (qFile.open(QFile::ReadOnly)) {
- return QLatin1String(qFile.readAll());
+ // Make sure settings are pointing to an existent theme
+ if (theme.isEmpty() || !themes.exists(theme)) {
+ theme = defaultTheme;
+ settings.setValue("theme", theme);
+ }
+
+ // If light/dark theme is used load general styles first
+ if (dashThemeActive()) {
+ QFile qFileGeneral(":css/general");
+ if (qFileGeneral.open(QFile::ReadOnly)) {
+ stylesheet.get()->append(QLatin1String(qFileGeneral.readAll()));
+ }
+
+#ifndef Q_OS_MAC
+ // Apply some styling to scrollbars
+ QFile qFileScrollbars(QString(":/css/scrollbars"));
+ if (qFileScrollbars.open(QFile::ReadOnly)) {
+ stylesheet.get()->append(QLatin1String(qFileScrollbars.readAll()));
+ }
+#endif
+ }
+
+ QFile qFileTheme(":themes/" + theme);
+ if (qFileTheme.open(QFile::ReadOnly)) {
+ stylesheet.get()->append(QLatin1String(qFileTheme.readAll()));
+ }
}
- return QString();
+ return *stylesheet.get();
+}
+
+bool dashThemeActive()
+{
+ QSettings settings;
+ QString theme = settings.value("theme", "").toString();
+ return theme != traditionalTheme;
}
void setClipboard(const QString& str)
diff --git a/src/qt/guiutil.h b/src/qt/guiutil.h
index 400d4c234aa9..f8494040412a 100644
--- a/src/qt/guiutil.h
+++ b/src/qt/guiutil.h
@@ -233,6 +233,9 @@ namespace GUIUtil
/** Load global CSS theme */
QString loadStyleSheet();
+ /** Check if a dash specific theme is activated (light/dark) */
+ bool dashThemeActive();
+
/* Convert QString to OS specific boost path through UTF-8 */
fs::path qstringToBoostPath(const QString &path);
diff --git a/src/qt/res/css/dark.css b/src/qt/res/css/dark.css
index 7d0e6b071a19..36c11200bec2 100644
--- a/src/qt/res/css/dark.css
+++ b/src/qt/res/css/dark.css
@@ -82,20 +82,13 @@ background-color: #555;
/*******************************************************/
-QLabel { /* Base Text Size & Color */
+QLabel,
+QCheckBox,
+QRadioButton { /* Base Text Size & Color */
font-size:12px;
color: #ccc;
}
-.QCheckBox { /* Checkbox Labels */
-color: #ccc;
-background-color:transparent;
-}
-
-.QCheckBox:hover {
-background-color:transparent;
-}
-
.QValidatedLineEdit, .QLineEdit { /* Text Entry Fields */
border: 1px solid #1c75bc;
font-size:11px;
@@ -114,16 +107,6 @@ font-size:12px;
background-color: #3e3e3e;
}
-.QRadioButton {
-color: #aaa;
-background-color:transparent;
-}
-
-.QRadioButton:checked {
-color: #ccc;
-background-color:transparent;
-}
-
QWidget { /* override text selection background color for all text widgets */
selection-background-color: #999;
}
@@ -184,10 +167,6 @@ width:25px;
border:0px;
}
-QComboBox::down-arrow {
-border-image: url(':/images/arrow_down') 0 0 0 0 stretch stretch;
-}
-
QComboBox QListView {
color: #aaa;
background: #555;
@@ -239,10 +218,6 @@ padding-left:5px;
padding-top:2px;
}
-QAbstractSpinBox::up-arrow {
-image:url(':/images/arrow_up_small');
-}
-
QAbstractSpinBox::down-button {
subcontrol-origin: border;
subcontrol-position: bottom right;
@@ -257,51 +232,6 @@ padding-left:5px;
padding-bottom:2px;
}
-QAbstractSpinBox::down-arrow {
-image:url(':/images/arrow_down_small');
-}
-
-QCheckBox {
-spacing: 5px;
-}
-
-QCheckBox::indicator {
-width: 16px;
-height: 16px;
-}
-
-QCheckBox::indicator:unchecked {
-image:url(':/images/unchecked');
-}
-
-QCheckBox::indicator:unchecked:hover {
-image:url(':/images/unchecked');
-}
-
-QCheckBox::indicator:unchecked:pressed {
-image:url(':/images/checked');
-}
-
-QCheckBox::indicator:checked {
-image:url(':/images/checked');
-}
-
-QCheckBox::indicator:checked:hover {
-image:url(':/images/checked');
-}
-
-QCheckBox::indicator:checked:pressed {
-image:url(':/images/unchecked');
-}
-
-QCheckBox::indicator:indeterminate:hover {
-image:url(':/images/unchecked');
-}
-
-QCheckBox::indicator:indeterminate:pressed {
-image:url(':/images/checked');
-}
-
/*******************************************************/
QHeaderView { /* Table Header */
@@ -656,15 +586,6 @@ color: #aaa;
padding-bottom:8px;
}
-QDialog#OptionsDialog QCheckBox {
-min-height:20px;
-}
-
-QDialog#OptionsDialog QCheckBox#displayAddresses {
-min-height:33px;
-
-}
-
QDialog#OptionsDialog QGroupBox {
color: #ccc;
}
@@ -1142,9 +1063,6 @@ QDialog#SendCoinsDialog .QFrame#frameCoinControl .QWidget#widgetCoinControl > .Q
padding:2px;
}
-QDialog#SendCoinsDialog .QFrame#frameCoinControl .QCheckBox#checkBoxCoinControlChange { /* Custom Change Label */
-}
-
QDialog#SendCoinsDialog .QFrame#frameCoinControl .QValidatedLineEdit#lineEditCoinControlChange { /* Custom Change Address */
}
@@ -1201,15 +1119,6 @@ QDialog#SendCoinsDialog .QPushButton#addButton:pressed {
border:1px solid #9e9e9e;
}
-QDialog#SendCoinsDialog .QCheckBox#checkUsePrivateSend { /* PrivateSend Checkbox */
-color: #ccc;
-font-weight:bold;
-border-radius:5px;
-padding-top:20px;
-padding-bottom:18px;
-margin-right:20px;
-}
-
/* This QLabel uses name = "label" which conflicts with Address Book -> New Address */
/* To maximize backwards compatibility this formatting has been removed */
@@ -1399,7 +1308,6 @@ color: #ccc;
}
QDialog#CoinControlDialog .CoinControlTreeWidget#treeWidget::branch:selected { /* Coin Control Branch Icon */
-background-image: url(':/images/qtreeview_selected');
background-repeat:no-repeat;
background-position:center;
background-color: #666;
@@ -1407,7 +1315,6 @@ color: #ccc;
}
QDialog#CoinControlDialog .CoinControlTreeWidget#treeWidget::branch:checked { /* Coin Control Branch Icon */
-background-image: url(':/images/qtreeview_selected');
background-repeat:no-repeat;
background-position:center;
background-color: #333;
@@ -1581,7 +1488,7 @@ QLabel#transactionSumLabel { /* Example of setObjectName for widgets without nam
color: #ccc;
font-weight:bold;
}
-
+
QLabel#transactionSum { /* Example of setObjectName for widgets without name */
color: #ccc;
}
diff --git a/src/qt/res/css/general.css b/src/qt/res/css/general.css
new file mode 100644
index 000000000000..9bcdaec401b8
--- /dev/null
+++ b/src/qt/res/css/general.css
@@ -0,0 +1,242 @@
+/**
+ Copyright (c) 2020 The Dash Core developers
+ Distributed under the MIT/X11 software license, see the accompanying
+ file COPYING or http://www.opensource.org/licenses/mit-license.php.
+
+ This file contains style changes used by both dash themes: "Light" and "Dark"
+**/
+
+
+/******************************************************
+QAbstractSpinBox
+******************************************************/
+
+QAbstractSpinBox::up-arrow {
+ width: 20px;
+ height: 20px;
+ image:url(':/images/arrow_up_normal');
+}
+QAbstractSpinBox::up-arrow:hover {
+ width: 20px;
+ height: 20px;
+ image:url(':/images/arrow_up_hover');
+}
+QAbstractSpinBox::up-arrow:pressed {
+ width: 20px;
+ height: 20px;
+ image:url(':/images/arrow_up_pressed');
+}
+QAbstractSpinBox::up-arrow:disabled {
+ width: 20px;
+ height: 20px;
+ image:url(':/images/arrow_light_up_hover');
+}
+
+QAbstractSpinBox::down-arrow {
+ width: 20px;
+ height: 20px;
+ image:url(':/images/arrow_down_normal');
+}
+QAbstractSpinBox::down-arrow:hover {
+ width: 20px;
+ height: 20px;
+ image:url(':/images/arrow_down_hover');
+}
+QAbstractSpinBox::down-arrow:pressed {
+ width: 20px;
+ height: 20px;
+ image:url(':/images/arrow_down_pressed');
+}
+QAbstractSpinBox::down-arrow:disabled {
+ width: 20px;
+ height: 20px;
+ image:url(':/images/arrow_light_down_hover');
+}
+
+/******************************************************
+QComboBox
+******************************************************/
+
+QComboBox::down-arrow {
+ width: 20px;
+ height: 20px;
+ border-image: url(':/images/arrow_down_normal') 0 0 0 0 stretch stretch;
+}
+QComboBox::down-arrow:hover {
+ width: 20px;
+ height: 20px;
+ border-image: url(':/images/arrow_down_hover') 0 0 0 0 stretch stretch;
+}
+QComboBox::down-arrow:pressed {
+ width: 20px;
+ height: 20px;
+ border-image: url(':/images/arrow_down_pressed') 0 0 0 0 stretch stretch;
+}
+QComboBox::down-arrow:disabled {
+ width: 20px;
+ height: 20px;
+ border-image: url(':/images/arrow_light_down_hover') 0 0 0 0 stretch stretch;
+}
+
+/******************************************************
+QRadioButton
+******************************************************/
+
+QRadioButton {
+ background-color: transparent;
+}
+QRadioButton::indicator {
+ width: 15px;
+ height: 15px;
+ margin-right: 5px;
+}
+QRadioButton::indicator:unchecked {
+ image: url(':/images/radio_normal');
+}
+QRadioButton::indicator:hover:unchecked {
+ image: url(':/images/radio_normal_hover');
+}
+QRadioButton::indicator:unchecked:pressed {
+ image: url(':/images/radio_normal_pressed');
+}
+QRadioButton::indicator:checked {
+ image: url(':/images/radio_checked');
+}
+QRadioButton::indicator:checked:hover {
+ image: url(':/images/radio_checked_hover');
+}
+QRadioButton::indicator:checked:pressed {
+ image: url(':/images/radio_checked_pressed');
+}
+QRadioButton::indicator:checked:disabled {
+ image: url(':/images/radio_checked_disabled');
+}
+QRadioButton::indicator:unchecked:disabled {
+ image: url(':/images/radio_normal_disabled');
+}
+
+/******************************************************
+QCheckBox & QTreeWidget::indicator checkboxes
+******************************************************/
+
+QCheckBox{
+ background-color: transparent;
+ min-height:20px;
+}
+QTreeWidget::indicator,
+QCheckBox::indicator {
+ width: 15px;
+ height: 15px;
+ margin-right: 5px;
+}
+
+QTreeWidget::indicator:unchecked,
+QCheckBox::indicator:unchecked {
+ image: url(':/images/checkbox_normal');
+}
+QTreeWidget::indicator:hover:unchecked,
+QCheckBox::indicator:hover:unchecked {
+ image: url(':/images/checkbox_normal_hover');
+}
+QTreeWidget::indicator:unchecked:pressed,
+QCheckBox::indicator:unchecked:pressed {
+ image: url(':/images/checkbox_normal_pressed');
+}
+QTreeWidget::indicator:unchecked:disabled,
+QCheckBox::indicator:unchecked:disabled {
+ image: url(':/images/checkbox_normal_disabled');
+}
+QTreeWidget::indicator:checked,
+QCheckBox::indicator:checked {
+ image: url(':/images/checkbox_checked');
+}
+QTreeWidget::indicator:checked:hover,
+QCheckBox::indicator:checked:hover {
+ image: url(':/images/checkbox_checked_hover');
+}
+QTreeWidget::indicator:checked:pressed,
+QCheckBox::indicator:checked:pressed {
+ image: url(':/images/checkbox_checked_pressed');
+}
+QTreeWidget::indicator:checked:disabled,
+QCheckBox::indicator:checked:disabled {
+ image: url(':/images/checkbox_checked_disabled');
+}
+QTreeWidget::indicator:indeterminate,
+QCheckBox::indicator:indeterminate {
+ image: url(':/images/checkbox_partly_checked');
+}
+QTreeWidget::indicator:indeterminate:hover,
+QCheckBox::indicator:indeterminate:hover {
+ image: url(':/images/checkbox_partly_checked_hover');
+}
+QTreeWidget::indicator:indeterminate:pressed,
+QCheckBox::indicator:indeterminate:pressed {
+ image: url(':/images/checkbox_partly_checked_pressed');
+}
+QTreeWidget::indicator:indeterminate:disabled,
+QCheckBox::indicator:indeterminate:disabled {
+ image: url(':/images/checkbox_partly_checked_disabled');
+}
+
+/******************************************************
+QHeaderView
+******************************************************/
+
+QHeaderView::down-arrow {
+ width: 20px;
+ height: 20px;
+ image: url(':/images/arrow_light_down_normal');
+ subcontrol-position: right center;
+ subcontrol-origin: margin;
+ margin-right: 5px;
+}
+QHeaderView::down-arrow:hover {
+ width: 20px;
+ height: 20px;
+ image: url(':/images/arrow_light_down_hover');
+ subcontrol-position: right center;
+ subcontrol-origin: margin;
+ margin-right: 5px;
+}
+
+QHeaderView::up-arrow {
+ width: 20px;
+ height: 20px;
+ image: url(':/images/arrow_light_up_normal');
+ subcontrol-position: right center;
+ subcontrol-origin: margin;
+ margin-right: 5px;
+}
+QHeaderView::up-arrow:hover {
+ width: 20px;
+ height: 20px;
+ image: url(':/images/arrow_light_up_hover');
+ subcontrol-position: right center;
+ subcontrol-origin: margin;
+ margin-right: 5px;
+}
+
+/******************************************************
+QTreeWidget
+******************************************************/
+
+QTreeWidget {
+ background-color: transparent;
+}
+QTreeWidget::branch::closed:has-children {
+ padding: 0 -2px 0 2px;
+ image: url(':/images/arrow_right_normal');
+}
+QTreeWidget::branch::closed:has-children:hover {
+ padding: 0 -2px 0 2px;
+ image: url(':/images/arrow_right_hover');
+}
+QTreeWidget::branch::open {
+ padding: 0 -2px 0 2px;
+ image: url(':/images/arrow_down_normal');
+}
+QTreeWidget::branch::open:hover {
+ padding: 0 -2px 0 2px;
+ image: url(':/images/arrow_down_hover');
+}
diff --git a/src/qt/res/css/light.css b/src/qt/res/css/light.css
index 5e24d95b22a9..97869ad61e89 100644
--- a/src/qt/res/css/light.css
+++ b/src/qt/res/css/light.css
@@ -80,20 +80,13 @@ background-color:#F8F6F6;
/*******************************************************/
-QLabel { /* Base Text Size & Color */
+QLabel,
+QCheckBox,
+QRadioButton { /* Base Text Size & Color */
font-size:12px;
color:#333333;
}
-.QCheckBox { /* Checkbox Labels */
-color:#333333;
-background-color:transparent;
-}
-
-.QCheckBox:hover {
-background-color:transparent;
-}
-
.QValidatedLineEdit, .QLineEdit { /* Text Entry Fields */
border: 1px solid #82C3E6;
font-size:11px;
@@ -171,10 +164,6 @@ width:25px;
border:0px;
}
-QComboBox::down-arrow {
-border-image: url(':/images/arrow_down') 0 0 0 0 stretch stretch;
-}
-
QComboBox QListView {
background:#fff;
padding: 3px;
@@ -224,10 +213,6 @@ padding-left:5px;
padding-top:2px;
}
-QAbstractSpinBox::up-arrow {
-image:url(':/images/arrow_up_small');
-}
-
QAbstractSpinBox::down-button {
subcontrol-origin: border;
subcontrol-position: bottom right;
@@ -242,51 +227,6 @@ padding-left:5px;
padding-bottom:2px;
}
-QAbstractSpinBox::down-arrow {
-image:url(':/images/arrow_down_small');
-}
-
-QCheckBox {
-spacing: 5px;
-}
-
-QCheckBox::indicator {
-width: 16px;
-height: 16px;
-}
-
-QCheckBox::indicator:unchecked {
-image:url(':/images/unchecked');
-}
-
-QCheckBox::indicator:unchecked:hover {
-image:url(':/images/unchecked');
-}
-
-QCheckBox::indicator:unchecked:pressed {
-image:url(':/images/checked');
-}
-
-QCheckBox::indicator:checked {
-image:url(':/images/checked');
-}
-
-QCheckBox::indicator:checked:hover {
-image:url(':/images/checked');
-}
-
-QCheckBox::indicator:checked:pressed {
-image:url(':/images/unchecked');
-}
-
-QCheckBox::indicator:indeterminate:hover {
-image:url(':/images/unchecked');
-}
-
-QCheckBox::indicator:indeterminate:pressed {
-image:url(':/images/checked');
-}
-
/*******************************************************/
QHeaderView { /* Table Header */
@@ -623,15 +563,6 @@ color:#818181;
padding-bottom:8px;
}
-QDialog#OptionsDialog QCheckBox {
-min-height:20px;
-}
-
-QDialog#OptionsDialog QCheckBox#displayAddresses {
-min-height:33px;
-
-}
-
/* TOOLS MENU */
QWidget#RPCConsole { /* RPC Console Dialog Box */
@@ -1092,9 +1023,6 @@ QDialog#SendCoinsDialog .QFrame#frameCoinControl .QWidget#widgetCoinControl > .Q
padding:2px;
}
-QDialog#SendCoinsDialog .QFrame#frameCoinControl .QCheckBox#checkBoxCoinControlChange { /* Custom Change Label */
-}
-
QDialog#SendCoinsDialog .QFrame#frameCoinControl .QValidatedLineEdit#lineEditCoinControlChange { /* Custom Change Address */
}
@@ -1151,16 +1079,6 @@ QDialog#SendCoinsDialog .QPushButton#addButton:pressed {
border:1px solid #9e9e9e;
}
-QDialog#SendCoinsDialog .QCheckBox#checkUsePrivateSend { /* PrivateSend Checkbox */
-color:#616161;
-font-weight:bold;
-background: qradialgradient(cx:0.5, cy:0.5, radius: 0.5, fx:0.5, fy:0.5, stop:0 rgba(248, 246, 246, 128), stop: 1 rgba(0, 0, 0, 0));
-border-radius:5px;
-padding-top:20px;
-padding-bottom:18px;
-margin-right:20px;
-}
-
/* This QLabel uses name = "label" which conflicts with Address Book -> New Address */
/* To maximize backwards compatibility this formatting has been removed */
@@ -1324,16 +1242,6 @@ min-height:25px;
QDialog#CoinControlDialog .QDialogButtonBox#buttonBox QPushButton { /* Coin Control 'OK' button */
}
-QDialog#CoinControlDialog .QFrame#frame .QRadioButton#radioTreeMode { /* Coin Control Tree Mode Selector */
-color:#818181;
-background-color:transparent;
-}
-
-QDialog#CoinControlDialog .QFrame#frame .QRadioButton#radioListMode { /* Coin Control List Mode Selector */
-color:#818181;
-background-color:transparent;
-}
-
QDialog#CoinControlDialog QHeaderView::section:first { /* Bug Fix: the number "1" displays in this table for some reason... */
color:transparent;
}
@@ -1358,7 +1266,6 @@ color:#333;
}
QDialog#CoinControlDialog .CoinControlTreeWidget#treeWidget::branch:selected { /* Coin Control Branch Icon */
-background-image: url(':/images/qtreeview_selected');
background-repeat:no-repeat;
background-position:center;
background-color:#f7f7f7;
@@ -1366,7 +1273,6 @@ color:#333;
}
QDialog#CoinControlDialog .CoinControlTreeWidget#treeWidget::branch:checked { /* Coin Control Branch Icon */
-background-image: url(':/images/qtreeview_selected');
background-repeat:no-repeat;
background-position:center;
background-color:#f7f7f7;
@@ -1522,7 +1428,7 @@ QLabel#transactionSumLabel { /* Example of setObjectName for widgets without nam
color:#333333;
font-weight:bold;
}
-
+
QLabel#transactionSum { /* Example of setObjectName for widgets without name */
color:#333333;
}
@@ -1536,5 +1442,3 @@ background-color:#F8F6F6;
QDialog#TransactionDescDialog QTextEdit { /* Contents of Receive Coin Dialog */
border:1px solid #d7d7d7;
}
-
-
diff --git a/src/qt/res/css/scrollbars.css b/src/qt/res/css/scrollbars.css
index 9e736156d1b6..dd4ef5a83ed0 100644
--- a/src/qt/res/css/scrollbars.css
+++ b/src/qt/res/css/scrollbars.css
@@ -58,24 +58,60 @@ QScrollBar::add-line:horizontal { /* Vertical - right button position */
}
QScrollBar:up-arrow, QScrollBar:down-arrow, QScrollBar:left-arrow, QScrollBar:right-arrow { /* Arrows Icon */
- width:10px;
- height:10px;
+ width:18px;
+ height:18px;
}
QScrollBar:up-arrow {
- background-image: url(':/images/arrow_up_small');
+ border-image: url(':/images/arrow_up_normal');
+}
+QScrollBar:up-arrow:hover {
+ border-image: url(':/images/arrow_up_hover');
+}
+QScrollBar:up-arrow:pressed {
+ border-image: url(':/images/arrow_up_pressed');
+}
+QScrollBar:up-arrow:disabled {
+ border-image: url(':/images/arrow_light_up_hover');
}
QScrollBar:down-arrow {
- background-image: url(':/images/arrow_down_small');
+ border-image: url(':/images/arrow_down_normal');
+}
+QScrollBar:down-arrow:hover {
+ border-image: url(':/images/arrow_down_hover');
+}
+QScrollBar:down-arrow:pressed {
+ border-image: url(':/images/arrow_down_pressed');
+}
+QScrollBar:down-arrow:disabled {
+ border-image: url(':/images/arrow_light_down_hover');
}
QScrollBar:left-arrow {
- background-image: url(':/images/arrow_left_small');
+ border-image: url(':/images/arrow_left_normal');
+}
+QScrollBar:left-arrow:hover {
+ border-image: url(':/images/arrow_left_hover');
+}
+QScrollBar:left-arrow:pressed {
+ border-image: url(':/images/arrow_left_pressed');
+}
+QScrollBar:left-arrow:disabled {
+ border-image: url(':/images/arrow_light_left_hover');
}
QScrollBar:right-arrow {
- background-image: url(':/images/arrow_right_small');
+ border-image: url(':/images/arrow_right_normal');
+}
+QScrollBar:right-arrow:hover {
+ border-image: url(':/images/arrow_right_hover');
+}
+QScrollBar:right-arrow:pressed {
+ border-image: url(':/images/arrow_right_pressed');
+}
+QScrollBar:right-arrow:disabled {
+ border-image: url(':/images/arrow_light_right_hover');
}
QDialog#HelpMessageDialog QScrollBar:vertical, QDialog#HelpMessageDialog QScrollBar:horizontal {
diff --git a/src/qt/res/images/arrow_down.png b/src/qt/res/images/arrow_down.png
deleted file mode 100644
index e26c529d23d1..000000000000
Binary files a/src/qt/res/images/arrow_down.png and /dev/null differ
diff --git a/src/qt/res/images/arrow_down_hover.png b/src/qt/res/images/arrow_down_hover.png
new file mode 100644
index 000000000000..e574108a31ad
Binary files /dev/null and b/src/qt/res/images/arrow_down_hover.png differ
diff --git a/src/qt/res/images/arrow_down_normal.png b/src/qt/res/images/arrow_down_normal.png
new file mode 100644
index 000000000000..9ab47a51dfa8
Binary files /dev/null and b/src/qt/res/images/arrow_down_normal.png differ
diff --git a/src/qt/res/images/arrow_down_pressed.png b/src/qt/res/images/arrow_down_pressed.png
new file mode 100644
index 000000000000..890d9a291ee2
Binary files /dev/null and b/src/qt/res/images/arrow_down_pressed.png differ
diff --git a/src/qt/res/images/arrow_down_small.png b/src/qt/res/images/arrow_down_small.png
deleted file mode 100644
index 0f66a1a6ce60..000000000000
Binary files a/src/qt/res/images/arrow_down_small.png and /dev/null differ
diff --git a/src/qt/res/images/arrow_left_hover.png b/src/qt/res/images/arrow_left_hover.png
new file mode 100644
index 000000000000..a3d45c3e605b
Binary files /dev/null and b/src/qt/res/images/arrow_left_hover.png differ
diff --git a/src/qt/res/images/arrow_left_normal.png b/src/qt/res/images/arrow_left_normal.png
new file mode 100644
index 000000000000..dac90504f17c
Binary files /dev/null and b/src/qt/res/images/arrow_left_normal.png differ
diff --git a/src/qt/res/images/arrow_left_pressed.png b/src/qt/res/images/arrow_left_pressed.png
new file mode 100644
index 000000000000..b74418330aa7
Binary files /dev/null and b/src/qt/res/images/arrow_left_pressed.png differ
diff --git a/src/qt/res/images/arrow_left_small.png b/src/qt/res/images/arrow_left_small.png
deleted file mode 100644
index eb0f63ecf20d..000000000000
Binary files a/src/qt/res/images/arrow_left_small.png and /dev/null differ
diff --git a/src/qt/res/images/arrow_light_down_hover.png b/src/qt/res/images/arrow_light_down_hover.png
new file mode 100644
index 000000000000..852b762186f2
Binary files /dev/null and b/src/qt/res/images/arrow_light_down_hover.png differ
diff --git a/src/qt/res/images/arrow_light_down_normal.png b/src/qt/res/images/arrow_light_down_normal.png
new file mode 100644
index 000000000000..bdfe55b8b9f9
Binary files /dev/null and b/src/qt/res/images/arrow_light_down_normal.png differ
diff --git a/src/qt/res/images/arrow_light_left_hover.png b/src/qt/res/images/arrow_light_left_hover.png
new file mode 100644
index 000000000000..4b53599426e1
Binary files /dev/null and b/src/qt/res/images/arrow_light_left_hover.png differ
diff --git a/src/qt/res/images/arrow_light_left_normal.png b/src/qt/res/images/arrow_light_left_normal.png
new file mode 100644
index 000000000000..c043ce8f5699
Binary files /dev/null and b/src/qt/res/images/arrow_light_left_normal.png differ
diff --git a/src/qt/res/images/arrow_light_right_hover.png b/src/qt/res/images/arrow_light_right_hover.png
new file mode 100644
index 000000000000..e8000aef90c8
Binary files /dev/null and b/src/qt/res/images/arrow_light_right_hover.png differ
diff --git a/src/qt/res/images/arrow_light_right_normal.png b/src/qt/res/images/arrow_light_right_normal.png
new file mode 100644
index 000000000000..7428af55bce6
Binary files /dev/null and b/src/qt/res/images/arrow_light_right_normal.png differ
diff --git a/src/qt/res/images/arrow_light_up_hover.png b/src/qt/res/images/arrow_light_up_hover.png
new file mode 100644
index 000000000000..703beb77eebe
Binary files /dev/null and b/src/qt/res/images/arrow_light_up_hover.png differ
diff --git a/src/qt/res/images/arrow_light_up_normal.png b/src/qt/res/images/arrow_light_up_normal.png
new file mode 100644
index 000000000000..dd4a83de1d4e
Binary files /dev/null and b/src/qt/res/images/arrow_light_up_normal.png differ
diff --git a/src/qt/res/images/arrow_right_hover.png b/src/qt/res/images/arrow_right_hover.png
new file mode 100644
index 000000000000..7f430f9d11d1
Binary files /dev/null and b/src/qt/res/images/arrow_right_hover.png differ
diff --git a/src/qt/res/images/arrow_right_normal.png b/src/qt/res/images/arrow_right_normal.png
new file mode 100644
index 000000000000..4e99a568fdb9
Binary files /dev/null and b/src/qt/res/images/arrow_right_normal.png differ
diff --git a/src/qt/res/images/arrow_right_pressed.png b/src/qt/res/images/arrow_right_pressed.png
new file mode 100644
index 000000000000..c76c987d4027
Binary files /dev/null and b/src/qt/res/images/arrow_right_pressed.png differ
diff --git a/src/qt/res/images/arrow_right_small.png b/src/qt/res/images/arrow_right_small.png
deleted file mode 100644
index 6041a526891a..000000000000
Binary files a/src/qt/res/images/arrow_right_small.png and /dev/null differ
diff --git a/src/qt/res/images/arrow_up_hover.png b/src/qt/res/images/arrow_up_hover.png
new file mode 100644
index 000000000000..caa043629d68
Binary files /dev/null and b/src/qt/res/images/arrow_up_hover.png differ
diff --git a/src/qt/res/images/arrow_up_normal.png b/src/qt/res/images/arrow_up_normal.png
new file mode 100644
index 000000000000..d727135f178a
Binary files /dev/null and b/src/qt/res/images/arrow_up_normal.png differ
diff --git a/src/qt/res/images/arrow_up_pressed.png b/src/qt/res/images/arrow_up_pressed.png
new file mode 100644
index 000000000000..3b15dc1dcc2b
Binary files /dev/null and b/src/qt/res/images/arrow_up_pressed.png differ
diff --git a/src/qt/res/images/arrow_up_small.png b/src/qt/res/images/arrow_up_small.png
deleted file mode 100644
index 4e854fdfecee..000000000000
Binary files a/src/qt/res/images/arrow_up_small.png and /dev/null differ
diff --git a/src/qt/res/images/checkbox_checked.png b/src/qt/res/images/checkbox_checked.png
new file mode 100644
index 000000000000..9558d3877ed8
Binary files /dev/null and b/src/qt/res/images/checkbox_checked.png differ
diff --git a/src/qt/res/images/checkbox_checked_disabled.png b/src/qt/res/images/checkbox_checked_disabled.png
new file mode 100644
index 000000000000..4fe3e5dca6a4
Binary files /dev/null and b/src/qt/res/images/checkbox_checked_disabled.png differ
diff --git a/src/qt/res/images/checkbox_checked_hover.png b/src/qt/res/images/checkbox_checked_hover.png
new file mode 100644
index 000000000000..04ddcbc039c5
Binary files /dev/null and b/src/qt/res/images/checkbox_checked_hover.png differ
diff --git a/src/qt/res/images/checkbox_checked_pressed.png b/src/qt/res/images/checkbox_checked_pressed.png
new file mode 100644
index 000000000000..181b7a633eaa
Binary files /dev/null and b/src/qt/res/images/checkbox_checked_pressed.png differ
diff --git a/src/qt/res/images/checkbox_normal.png b/src/qt/res/images/checkbox_normal.png
new file mode 100644
index 000000000000..fd944e05555e
Binary files /dev/null and b/src/qt/res/images/checkbox_normal.png differ
diff --git a/src/qt/res/images/checkbox_normal_disabled.png b/src/qt/res/images/checkbox_normal_disabled.png
new file mode 100644
index 000000000000..e4aa67038356
Binary files /dev/null and b/src/qt/res/images/checkbox_normal_disabled.png differ
diff --git a/src/qt/res/images/checkbox_normal_hover.png b/src/qt/res/images/checkbox_normal_hover.png
new file mode 100644
index 000000000000..d62207f94141
Binary files /dev/null and b/src/qt/res/images/checkbox_normal_hover.png differ
diff --git a/src/qt/res/images/checkbox_normal_pressed.png b/src/qt/res/images/checkbox_normal_pressed.png
new file mode 100644
index 000000000000..289e9f26f145
Binary files /dev/null and b/src/qt/res/images/checkbox_normal_pressed.png differ
diff --git a/src/qt/res/images/checkbox_partly_checked.png b/src/qt/res/images/checkbox_partly_checked.png
new file mode 100644
index 000000000000..beb54be76b64
Binary files /dev/null and b/src/qt/res/images/checkbox_partly_checked.png differ
diff --git a/src/qt/res/images/checkbox_partly_checked_disabled.png b/src/qt/res/images/checkbox_partly_checked_disabled.png
new file mode 100644
index 000000000000..7d1ef94643d0
Binary files /dev/null and b/src/qt/res/images/checkbox_partly_checked_disabled.png differ
diff --git a/src/qt/res/images/checkbox_partly_checked_hover.png b/src/qt/res/images/checkbox_partly_checked_hover.png
new file mode 100644
index 000000000000..171b82728036
Binary files /dev/null and b/src/qt/res/images/checkbox_partly_checked_hover.png differ
diff --git a/src/qt/res/images/checkbox_partly_checked_pressed.png b/src/qt/res/images/checkbox_partly_checked_pressed.png
new file mode 100644
index 000000000000..545db542a67b
Binary files /dev/null and b/src/qt/res/images/checkbox_partly_checked_pressed.png differ
diff --git a/src/qt/res/images/checked.png b/src/qt/res/images/checked.png
deleted file mode 100644
index 800a75680895..000000000000
Binary files a/src/qt/res/images/checked.png and /dev/null differ
diff --git a/src/qt/res/images/qtreeview_selected.png b/src/qt/res/images/qtreeview_selected.png
deleted file mode 100644
index 2656a1efa43e..000000000000
Binary files a/src/qt/res/images/qtreeview_selected.png and /dev/null differ
diff --git a/src/qt/res/images/radio_checked.png b/src/qt/res/images/radio_checked.png
new file mode 100644
index 000000000000..c0d7a33fcf68
Binary files /dev/null and b/src/qt/res/images/radio_checked.png differ
diff --git a/src/qt/res/images/radio_checked_disabled.png b/src/qt/res/images/radio_checked_disabled.png
new file mode 100644
index 000000000000..bc54a7c91828
Binary files /dev/null and b/src/qt/res/images/radio_checked_disabled.png differ
diff --git a/src/qt/res/images/radio_checked_hover.png b/src/qt/res/images/radio_checked_hover.png
new file mode 100644
index 000000000000..e1d21a866206
Binary files /dev/null and b/src/qt/res/images/radio_checked_hover.png differ
diff --git a/src/qt/res/images/radio_checked_pressed.png b/src/qt/res/images/radio_checked_pressed.png
new file mode 100644
index 000000000000..ed34a2d7a47e
Binary files /dev/null and b/src/qt/res/images/radio_checked_pressed.png differ
diff --git a/src/qt/res/images/radio_normal.png b/src/qt/res/images/radio_normal.png
new file mode 100644
index 000000000000..886a2f87c582
Binary files /dev/null and b/src/qt/res/images/radio_normal.png differ
diff --git a/src/qt/res/images/radio_normal_disabled.png b/src/qt/res/images/radio_normal_disabled.png
new file mode 100644
index 000000000000..9ab75e7d512b
Binary files /dev/null and b/src/qt/res/images/radio_normal_disabled.png differ
diff --git a/src/qt/res/images/radio_normal_hover.png b/src/qt/res/images/radio_normal_hover.png
new file mode 100644
index 000000000000..4cb7a5c94e10
Binary files /dev/null and b/src/qt/res/images/radio_normal_hover.png differ
diff --git a/src/qt/res/images/radio_normal_pressed.png b/src/qt/res/images/radio_normal_pressed.png
new file mode 100644
index 000000000000..444124c6d4c6
Binary files /dev/null and b/src/qt/res/images/radio_normal_pressed.png differ
diff --git a/src/qt/res/images/unchecked.png b/src/qt/res/images/unchecked.png
deleted file mode 100644
index cb446e3d2ec6..000000000000
Binary files a/src/qt/res/images/unchecked.png and /dev/null differ