From e7b08612fa761f031659e5bf3f5517cb96e6b28a Mon Sep 17 00:00:00 2001
From: earthorbit <55867375+earthorbit@users.noreply.github.com>
Date: Fri, 27 Sep 2019 11:27:15 -0600
Subject: [PATCH] Themeability (#186)
* add css (qss)
* Include css
* Merge pull request #6 from Fair-Exchange/css
Css
* fix
* beta blue
* fix
* YellowFevers UI work
* Merge pull request #7 from Fair-Exchange/css
Css - YellowFevers UI work
* Update mainwindow.cpp
* Update mainwindow.ui
* Merge pull request #6 from OleksandrBlack/css
move Tx list to balance tab
* Ease of use
General usability improvements
* Delete main.css
* style for tab
* Merge pull request #7 from YellowFeveRs/UI-work
General UI improvements
* updated tab styling
* Merge pull request #8 from Fair-Exchange/css
Css
* fix
* fix for Windows
* fix for Windows
* fix
* Merge pull request #10 from Fair-Exchange/master
Merge pull request #4 from OleksandrBlack/master
* Merge pull request #10 from Fair-Exchange/master
Merge pull request #4 from OleksandrBlack/master
* Merge pull request #11 from OleksandrBlack/css
Css
* Merge pull request #12 from OleksandrBlack/style
blue prepare
* revert
* Update zec_qt_wallet_zh.ts
* Update zec_qt_wallet_es.ts
* Update zec_qt_wallet_fr.ts
* Update zec_qt_wallet_it.ts
* Update zec_qt_wallet_pt.ts
* Update json.hpp
* Update json.hpp
* Update about.ui
* Update mainwindow.ui
* Update connection.ui
* Update connection.cpp
* Update connection.cpp
* Update application.qrc
* Update mainwindow.cpp
* Update settings.ui
---
application.qrc | 16 +
res/css/blue.css | 1732 +++++++++++++++++++
res/css/dark.css | 88 +
res/css/default.css | 5 +
res/css/light.css | 90 +
res/images/blue/blue_downArrow.png | Bin 0 -> 212 bytes
res/images/blue/blue_downArrow_small.png | Bin 0 -> 246 bytes
res/images/blue/blue_leftArrow_small.png | Bin 0 -> 253 bytes
res/images/blue/blue_qtreeview_selected.png | Bin 0 -> 111 bytes
res/images/blue/blue_rightArrow_small.png | Bin 0 -> 254 bytes
res/images/blue/blue_upArrow_small.png | Bin 0 -> 247 bytes
res/images/blue/checked.png | Bin 0 -> 6377 bytes
res/images/blue/unchecked.png | Bin 0 -> 224 bytes
src/mainwindow.cpp | 52 +
src/mainwindow.h | 3 +
src/settings.cpp | 9 +
src/settings.h | 7 +-
src/settings.ui | 170 +-
zec-qt-wallet.pro | 3 +
19 files changed, 2114 insertions(+), 61 deletions(-)
create mode 100644 res/css/blue.css
create mode 100644 res/css/dark.css
create mode 100644 res/css/default.css
create mode 100644 res/css/light.css
create mode 100644 res/images/blue/blue_downArrow.png
create mode 100644 res/images/blue/blue_downArrow_small.png
create mode 100644 res/images/blue/blue_leftArrow_small.png
create mode 100644 res/images/blue/blue_qtreeview_selected.png
create mode 100644 res/images/blue/blue_rightArrow_small.png
create mode 100644 res/images/blue/blue_upArrow_small.png
create mode 100644 res/images/blue/checked.png
create mode 100644 res/images/blue/unchecked.png
diff --git a/application.qrc b/application.qrc
index 4eefd0f..33408fa 100644
--- a/application.qrc
+++ b/application.qrc
@@ -20,4 +20,20 @@
res/zec_qt_wallet_zh.qm
res/zec_qt_wallet_tr.qm
+
+ res/css/blue.css
+ res/css/dark.css
+ res/css/default.css
+ res/css/light.css
+
+
+ res/images/blue/unchecked.png
+ res/images/blue/checked.png
+ res/images/blue/blue_downArrow.png
+ res/images/blue/blue_downArrow_small.png
+ res/images/blue/blue_upArrow_small.png
+ res/images/blue/blue_leftArrow_small.png
+ res/images/blue/blue_rightArrow_small.png
+ res/images/blue/blue_qtreeview_selected.png
+
diff --git a/res/css/blue.css b/res/css/blue.css
new file mode 100644
index 0000000..25d810e
--- /dev/null
+++ b/res/css/blue.css
@@ -0,0 +1,1732 @@
+WalletFrame {
+border-image: url(':/images/blue/res/images/blue/blue_walletFrame_bg') 0 0 0 0 stretch stretch;
+border-top:0px solid #000;
+margin:0;
+padding:0;
+background: #f6f7f8;
+}
+
+QStatusBar {
+ background: #c5cad3;
+ border: 0;
+ color: #3b4c6b;
+ height: 36px;
+ min-height: 36px;
+ padding: 0;
+}
+
+.QFrame {
+background-color:transparent;
+border:0px solid #fff;
+}
+
+QMenuBar {
+background-color:#fff;
+}
+
+QMenuBar::item {
+background-color:#fff;
+color: #333;
+}
+
+QMenuBar::item:selected {
+background-color:#f8f6f6;
+}
+
+QMenu {
+background-color:#f8f6f6;
+}
+
+QMenu::item {
+color:#333;
+}
+
+QMenu::item:selected {
+background-color:#f2f0f0;
+color:#333;
+}
+
+QToolBar {
+ background: #c5cad3;
+ border: 0;
+ color: #3b4c6b;
+ height: 36px;
+ min-height: 36px;
+ padding: 0;
+}
+
+QToolBar > QToolButton {
+background-color:#01698d;
+border:0px solid #333;
+min-height:2.5em;
+padding: 0em 1em;
+font-weight:bold;
+color:#fff;
+}
+
+QToolBar > QToolButton:checked {
+background-color:#fff;
+color:#333;
+font-weight:bold;
+}
+
+QMessageBox {
+background-color:#F8F6F6;
+}
+
+/*******************************************************/
+
+QLabel { /* Base Text Size & Color */
+font-size:13px;
+color:#3b4c6b;
+}
+
+.QCheckBox { /* Checkbox Labels */
+color:#3b4c6b;
+background-color:transparent;
+}
+
+.QCheckBox:hover {
+background-color:transparent;
+}
+
+.QValidatedLineEdit, .QLineEdit { /* Text Entry Fields */
+border: 1px solid #01698d;
+font-size:11px;
+min-height:25px;
+outline:0;
+padding:3px;
+background-color:#fcfcfc;
+}
+
+.QLineEdit:!focus {
+font-size:12px;
+}
+
+.QValidatedLineEdit:disabled, .QLineEdit:disabled {
+background-color:#f2f2f2;
+}
+
+/*******************************************************/
+
+QPushButton { /* Global Button Style */
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .01 #64ACD2, stop: .1 #01698d, stop: .95 #01698d, stop: 1 #1D80B5);
+border:0;
+border-radius:10px;
+color:#ffffff;
+font-size:12px;
+font-weight:bold;
+padding-left:25px;
+padding-right:25px;
+padding-top:5px;
+padding-bottom:5px;
+min-height:25px;
+}
+
+QPushButton:hover,
+.QPushButton:hover {
+ background: rgb(186, 190, 194);
+ color: #FFF;
+}
+
+QPushButton:focus {
+border:none;
+outline:none;
+}
+
+QPushButton:pressed {
+border:1px solid #333;
+}
+
+QComboBox { /* Dropdown Menus */
+border:1px solid #82C3E6;
+padding: 3px 5px 3px 5px;
+background:#fcfcfc;
+min-height:25px;
+color:#01698d;
+}
+
+QComboBox:checked {
+background:#f2f2f2;
+}
+
+QComboBox:editable {
+background: #01698d;
+color:#616161;
+border:0px solid transparent;
+}
+
+QComboBox::drop-down {
+width:25px;
+border:0px;
+}
+
+QComboBox::down-arrow {
+border-image: url(':/images/blue/res/images/blue/blue_downArrow') 0 0 0 0 stretch stretch;
+}
+
+QComboBox QListView {
+background:#fff;
+border:1px solid #333;
+padding-right:1px;
+padding-left:1px;
+}
+
+QComboBox QAbstractItemView::item { margin:4px; }
+
+QComboBox::item {
+color:#01698d;
+}
+
+QComboBox::item:alternate {
+background:#fff;
+}
+
+QComboBox::item:selected {
+border:0px solid transparent;
+background:#f2f2f2;
+}
+
+QComboBox::indicator {
+background-color:transparent;
+selection-background-color:transparent;
+color:transparent;
+selection-color:transparent;
+}
+
+QAbstractSpinBox {
+border:1px solid #82C3E6;
+padding: 3px 5px 3px 5px;
+background:#fcfcfc;
+min-height:25px;
+color:#01698d;
+}
+
+QAbstractSpinBox::up-button {
+subcontrol-origin: border;
+subcontrol-position: top right;
+width:21px;
+background:#fcfcfc;
+border-left:0px;
+border-right:1px solid #82C3E6;
+border-top:1px solid #82C3E6;
+border-bottom:0px;
+padding-right:1px;
+padding-left:5px;
+padding-top:2px;
+}
+
+QAbstractSpinBox::up-arrow {
+image:url(':/images/blue/res/images/blue/blue_upArrow_small');
+}
+
+QAbstractSpinBox::down-button {
+subcontrol-origin: border;
+subcontrol-position: bottom right;
+width:21px;
+background:#fcfcfc;
+border-top:0px;
+border-left:0px;
+border-right:1px solid #82C3E6;
+border-bottom:1px solid #82C3E6;
+padding-right:1px;
+padding-left:5px;
+padding-bottom:2px;
+}
+
+QAbstractSpinBox::down-arrow {
+image:url(':/images/blue/res/images/blue/blue_downArrow_small');
+}
+
+QCheckBox {
+spacing: 5px;
+}
+
+QCheckBox::indicator {
+width: 16px;
+height: 16px;
+}
+
+QCheckBox::indicator:unchecked {
+image:url(':/images/blue/res/images/blue/unchecked');
+}
+
+QCheckBox::indicator:unchecked:hover {
+image:url(':/images/blue/res/images/blue/unchecked');
+}
+
+QCheckBox::indicator:unchecked:pressed {
+image:url(':/images/blue/res/images/blue/checked');
+}
+
+QCheckBox::indicator:checked {
+image:url(':/images/blue/res/images/blue/checked');
+}
+
+QCheckBox::indicator:checked:hover {
+image:url(':/images/blue/res/images/blue/checked');
+}
+
+QCheckBox::indicator:checked:pressed {
+image:url(':/images/blue/res/images/blue/unchecked');
+}
+
+QCheckBox::indicator:indeterminate:hover {
+image:url(':/images/blue/res/images/blue/unchecked');
+}
+
+QCheckBox::indicator:indeterminate:pressed {
+image:url(':/images/blue/res/images/blue/checked');
+}
+
+
+/*******************************************************/
+
+QHeaderView { /* Table Header */
+background-color:transparent;
+}
+
+QHeaderView::section { /* Table Header Sections */
+qproperty-alignment:center;
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 0.25, stop: 0 #4c97bf, stop: 1 #01698d);
+color:#fff;
+min-height:25px;
+font-weight:bold;
+font-size:11px;
+outline:0;
+border:0px solid #fff;
+border-right:1px solid #fff;
+padding-left:5px;
+padding-right:5px;
+padding-top:2px;
+padding-bottom:2px;
+}
+
+QHeaderView::section:last {
+border-right: 0px solid #d7d7d7;
+}
+
+.QScrollArea {
+background:transparent;
+border:0px;
+}
+
+.QTableView { /* Table - has to be selected as a class otherwise it throws off QCalendarWidget */
+background:transparent;
+border:0px solid #fff;
+}
+
+QTableView::item { /* Table Item */
+background-color:#fcfcfc;
+font-size:12px;
+}
+
+QTableView::item:selected { /* Table Item Selected */
+background-color:rgb(186, 190, 194);
+color:#333;
+}
+
+QScrollBar { /* Scroll Bar */
+
+}
+
+QScrollBar:vertical { /* Vertical Scroll Bar Attributes */
+border:0;
+background:#ffffff;
+width:18px;
+margin: 18px 0px 18px 0px;
+}
+
+QScrollBar:horizontal { /* Horizontal Scroll Bar Attributes */
+border:0;
+background:#ffffff;
+height:18px;
+margin: 0px 18px 0px 18px;
+}
+
+
+QScrollBar::handle:vertical { /* Scroll Bar Slider - vertical */
+background:#e0e0e0;
+min-height:10px;
+}
+
+QScrollBar::handle:horizontal { /* Scroll Bar Slider - horizontal */
+background:#e0e0e0;
+min-width:10px;
+}
+
+QScrollBar::add-page, QScrollBar::sub-page { /* Scroll Bar Background */
+background:#F8F6F6;
+}
+
+QScrollBar::add-line:vertical, QScrollBar::sub-line:vertical, QScrollBar::add-line:horizontal, QScrollBar::sub-line:horizontal { /* Define Arrow Button Dimensions */
+background-color:#F8F6F6;
+border: 1px solid #f2f0f0;
+width:16px;
+height:16px;
+}
+
+QScrollBar::add-line:vertical:pressed, QScrollBar::sub-line:vertical:pressed, QScrollBar::add-line:horizontal:pressed, QScrollBar::sub-line:horizontal:pressed {
+background-color:#e0e0e0;
+}
+
+QScrollBar::sub-line:vertical { /* Vertical - top button position */
+subcontrol-position:top;
+subcontrol-origin: margin;
+}
+
+QScrollBar::add-line:vertical { /* Vertical - bottom button position */
+subcontrol-position:bottom;
+subcontrol-origin: margin;
+}
+
+QScrollBar::sub-line:horizontal { /* Vertical - left button position */
+subcontrol-position:left;
+subcontrol-origin: margin;
+}
+
+QScrollBar::add-line:horizontal { /* Vertical - right button position */
+subcontrol-position:right;
+subcontrol-origin: margin;
+}
+
+QScrollBar:up-arrow, QScrollBar:down-arrow, QScrollBar:left-arrow, QScrollBar:right-arrow { /* Arrows Icon */
+width:10px;
+height:10px;
+}
+
+QScrollBar:up-arrow {
+background-image: url(':/images/blue/res/images/blue/blue_upArrow_small');
+}
+
+QScrollBar:down-arrow {
+background-image: url(':/images/blue/res/images/blue/blue_downArrow_small');
+}
+
+QScrollBar:left-arrow {
+background-image: url(':/images/blue/res/images/blue/blue_leftArrow_small.png');
+}
+
+QScrollBar:right-arrow {
+background-image: url(':/images/blue/res/images/blue/blue_rightArrow_small.png');
+}
+
+
+/*******************************************************/
+
+/* DIALOG BOXES */
+
+QDialog .QTabWidget {
+border-bottom:1px solid #333;
+}
+
+QDialog .QTabWidget::pane {
+border: 1px solid #d7d7d7;
+}
+
+.QTabWidget QTabBar::tab {
+background-color:#01698D;
+color:#FFFFFF;
+padding-left:20px;
+padding-right:20px;
+padding-top:5px;
+padding-bottom:5px;
+border-top: 1px solid #d7d7d7;
+border: 1px solid white;
+min-height: 9px;
+}
+
+.QTabWidget QTabBar::tab:first {
+border-left: 1px solid #01698D;
+}
+
+.QTabWidget QTabBar::tab:last {
+border-right: 1px solid #343A40;
+}
+
+.QTabWidget QTabBar::tab:selected {
+background-color:#FFFFFF;
+color:#000;
+border: 1px ridge #01698D;
+
+}
+
+.QTabWidget QTabBar::tab:hover {
+background-color:rgb(186, 190, 194);
+color:#FFFFFF;
+border: 1px ridge #FFFFFF;
+}
+
+QDialog .QTabWidget .QWidget {
+background-color:#fff;
+color:#333;
+}
+
+QDialog .QTabWidget .QWidget QAbstractSpinBox {
+min-height:15px;
+}
+
+QDialog .QTabWidget .QWidget QAbstractSpinBox::down-button {
+width:15px;
+}
+
+QDialog .QTabWidget .QWidget QAbstractSpinBox::up-button {
+width:15px;
+}
+
+QDialog .QTabWidget .QWidget QComboBox {
+min-height:15px;
+}
+
+QDialog QWidget { /* Remove Annoying Focus Rectangle */
+outline: 0;
+}
+
+/*******************************************************/
+/* FILE MENU */
+
+/* Dialog: Open URI */
+QDialog#OpenURIDialog {
+background-color:#F8F6F6;
+}
+
+QDialog#OpenURIDialog QLabel#label { /* URI Label */
+font-weight:bold;
+}
+
+QDialog#OpenURIDialog QPushButton#selectFileButton { /* ... Button */
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .01 #f6f6f6, stop: .1 rgba(250, 250, 250, 128), stop: .95 rgba(250, 250, 250, 255), stop: 1 #ebebeb);
+border:1px solid #d2d2d2;
+color:#616161;
+padding-left:10px;
+padding-right:10px;
+}
+
+QDialog#OpenURIDialog QPushButton#selectFileButton:hover {
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .01 #f6f6f6, stop: .1 rgba(240, 240, 240, 255), stop: .95 rgba(240, 240, 240, 255), stop: 1 #ebebeb);
+color:#333;
+}
+
+QDialog#OpenURIDialog QPushButton#selectFileButton:pressed {
+border:1px solid #9e9e9e;
+}
+
+/* Dialog: Sign / Verify Message */
+QDialog#SignVerifyMessageDialog {
+background-color:#F8F6F6;
+}
+
+QDialog#SignVerifyMessageDialog QPushButton#addressBookButton_SM { /* Address Book Button */
+background-color:transparent;
+padding-left:10px;
+padding-right:10px;
+}
+
+QDialog#SignVerifyMessageDialog QPlainTextEdit { /* Message Signing Text */
+border:1px solid #82C3E6;
+background-color:#fff;
+}
+
+QDialog#SignVerifyMessageDialog QPushButton#pasteButton_SM { /* Paste Button */
+qproperty-icon: url(":/icons/blue/res/icons/blue/blue_editpaste");
+background-color:transparent;
+padding-left:15px;
+}
+
+QDialog#SignVerifyMessageDialog QLineEdit:!focus { /* Font Hack */
+font-size:10px;
+}
+
+QDialog#SignVerifyMessageDialog QPushButton#copySignatureButton_SM { /* Copy Button */
+qproperty-icon: url(":/icons/blue/res/icons/blue/blue_editcopy");
+background-color:transparent;
+padding-left:10px;
+padding-right:10px;
+}
+
+QDialog#SignVerifyMessageDialog QPushButton#clearButton_SM { /* Clear Button */
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .01 #f6f6f6, stop: .1 rgba(250, 250, 250, 128), stop: .95 rgba(250, 250, 250, 255), stop: 1 #ebebeb);
+border:1px solid #d2d2d2;
+color:#616161;
+padding-left:10px;
+padding-right:10px;
+}
+
+QDialog#SignVerifyMessageDialog QPushButton#clearButton_SM:hover {
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .01 #f6f6f6, stop: .1 rgba(240, 240, 240, 255), stop: .95 rgba(240, 240, 240, 255), stop: 1 #ebebeb);
+color:#333;
+}
+
+QDialog#SignVerifyMessageDialog QPushButton#clearButton_SM:pressed {
+border:1px solid #9e9e9e;
+}
+
+QDialog#SignVerifyMessageDialog QPushButton#addressBookButton_VM { /* Verify Message - Address Book Button */
+background-color:transparent;
+border:0;
+padding-left:10px;
+padding-right:10px;
+}
+
+QDialog#SignVerifyMessageDialog QPushButton#clearButton_VM { /* Verify Message - Clear Button */
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .01 #f6f6f6, stop: .1 rgba(250, 250, 250, 128), stop: .95 rgba(250, 250, 250, 255), stop: 1 #ebebeb);
+border:1px solid #d2d2d2;
+color:#616161;
+padding-left:10px;
+padding-right:10px;
+}
+
+QDialog#SignVerifyMessageDialog QPushButton#clearButton_VM:hover {
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .01 #f6f6f6, stop: .1 rgba(240, 240, 240, 255), stop: .95 rgba(240, 240, 240, 255), stop: 1 #ebebeb);
+color:#333;
+}
+
+QDialog#SignVerifyMessageDialog QPushButton#clearButton_VM:pressed {
+border:1px solid #9e9e9e;
+}
+
+/* Dialog: Send and Receive */
+QWidget#AddressBookPage {
+background-color:#F8F6F6;
+}
+
+QWidget#AddressBookPage QPushButton#newAddress { /* New Address Button */
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .01 #f6f6f6, stop: .1 rgba(250, 250, 250, 128), stop: .95 rgba(250, 250, 250, 255), stop: 1 #ebebeb);
+border:1px solid #d2d2d2;
+color:#616161;
+padding-left:10px;
+padding-right:10px;
+}
+
+QWidget#AddressBookPage QPushButton#newAddress:hover {
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .01 #f6f6f6, stop: .1 rgba(240, 240, 240, 255), stop: .95 rgba(240, 240, 240, 255), stop: 1 #ebebeb);
+color:#333;
+}
+
+QWidget#AddressBookPage QPushButton#newAddress:pressed {
+border:1px solid #9e9e9e;
+}
+
+QWidget#AddressBookPage QPushButton#copyAddress { /* Copy Address Button */
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .01 #f6f6f6, stop: .1 rgba(250, 250, 250, 128), stop: .95 rgba(250, 250, 250, 255), stop: 1 #ebebeb);
+border:1px solid #d2d2d2;
+color:#616161;
+padding-left:10px;
+padding-right:10px;
+}
+
+QWidget#AddressBookPage QPushButton#copyAddress:hover {
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .01 #f6f6f6, stop: .1 rgba(240, 240, 240, 255), stop: .95 rgba(240, 240, 240, 255), stop: 1 #ebebeb);
+color:#333;
+}
+
+QWidget#AddressBookPage QPushButton#copyAddress:pressed {
+border:1px solid #9e9e9e;
+}
+
+QWidget#AddressBookPage QPushButton#showAddressQRCode { /* Show Address QR code Button */
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .01 #f6f6f6, stop: .1 rgba(250, 250, 250, 128), stop: .95 rgba(250, 250, 250, 255), stop: 1 #ebebeb);
+border:1px solid #d2d2d2;
+color:#616161;
+padding-left:10px;
+padding-right:10px;
+}
+
+QWidget#AddressBookPage QPushButton#showAddressQRCode:hover {
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .01 #f6f6f6, stop: .1 rgba(240, 240, 240, 255), stop: .95 rgba(240, 240, 240, 255), stop: 1 #ebebeb);
+color:#333;
+}
+
+QWidget#AddressBookPage QPushButton#showAddressQRCode:pressed {
+border:1px solid #9e9e9e;
+}
+
+QWidget#AddressBookPage QPushButton#deleteAddress { /* Delete Address Button */
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .01 #f6f6f6, stop: .1 rgba(250, 250, 250, 128), stop: .95 rgba(250, 250, 250, 255), stop: 1 #ebebeb);
+border:1px solid #d2d2d2;
+color:#616161;
+padding-left:10px;
+padding-right:10px;
+}
+
+QWidget#AddressBookPage QPushButton#deleteAddress:hover {
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .01 #f6f6f6, stop: .1 rgba(240, 240, 240, 255), stop: .95 rgba(240, 240, 240, 255), stop: 1 #ebebeb);
+color:#333;
+}
+
+QWidget#AddressBookPage QPushButton#deleteAddress:pressed {
+border:1px solid #9e9e9e;
+}
+
+QWidget#AddressBookPage QTableView { /* Address Listing */
+font-size:12px;
+}
+
+QWidget#AddressBookPage QHeaderView::section { /* Min width for Windows fix */
+min-width:260px;
+}
+
+/* SETTINGS MENU */
+
+/* Encrypt Wallet and Change Passphrase Dialog */
+QDialog#AskPassphraseDialog {
+background-color:#F8F6F6;
+}
+
+QDialog#AskPassphraseDialog QLabel#passLabel1, QDialog#AskPassphraseDialog QLabel#passLabel2, QDialog#AskPassphraseDialog QLabel#passLabel3 {
+qproperty-alignment: 'AlignVCenter | AlignRight';
+min-width:170px;
+min-height:33px; /* base width of 25px for QLineEdit, plus padding and border */
+}
+
+/* Options Dialog */
+QDialog#OptionsDialog {
+background-color:#F8F6F6;
+}
+
+QDialog#OptionsDialog QValueComboBox, QDialog#OptionsDialog QSpinBox {
+margin-top:5px;
+margin-bottom:5px;
+}
+
+QDialog#OptionsDialog QValidatedLineEdit, QDialog#OptionsDialog QValidatedLineEdit:disabled, QDialog#OptionsDialog QLineEdit, QDialog#OptionsDialog QLineEdit:disabled {
+qproperty-alignment: 'AlignVCenter | AlignLeft';
+min-height:20px;
+margin-top:0px;
+margin-bottom:0px;
+padding-top:1px;
+padding-bottom:1px;
+}
+
+QDialog#OptionsDialog > QLabel {
+qproperty-alignment: 'AlignVCenter';
+min-height:20px;
+}
+
+QDialog#OptionsDialog QWidget#tabDisplay QValueComboBox {
+margin-top:0px;
+margin-bottom:0px;
+}
+
+QDialog#OptionsDialog QLabel#label_3 { /* Translations Missing? Label */
+qproperty-alignment: 'AlignVCenter | AlignCenter';
+color:#01698d;
+padding-bottom:8px;
+}
+
+QDialog#OptionsDialog QCheckBox {
+min-height:20px;
+}
+
+QDialog#OptionsDialog QCheckBox#displayAddresses {
+min-height:33px;
+
+}
+
+/* TOOLS MENU */
+
+QDialog#RPCConsole { /* RPC Console Dialog Box */
+background-color:#F8F6F6;
+}
+
+QDialog#RPCConsole QWidget#tab_info QLabel#label_11, QDialog#RPCConsole QWidget#tab_info QLabel#label_10 { /* Margin between Network and Block Chain headers */
+qproperty-alignment: 'AlignBottom';
+min-height:25px;
+min-width:180px;
+}
+
+QDialog#RPCConsole QWidget#tab_peers QLabel#peerHeading { /* Peers Info Header */
+color:#01698d;
+}
+
+QDialog#RPCConsole QPushButton#openDebugLogfileButton {
+max-width:60px;
+}
+
+QDialog#RPCConsole QTextEdit#messagesWidget { /* Console Messages Window */
+border:0;
+}
+
+QDialog#RPCConsole QLineEdit#lineEdit { /* Console Input */
+margin-right:5px;
+}
+
+QDialog#RPCConsole QPushButton#clearButton { /* Console Clear Button */
+background-color:transparent;
+padding-left:10px;
+padding-right:10px;
+}
+
+QDialog#RPCConsole .QGroupBox #line { /* Network In Line */
+background-color:#00ff00;
+}
+
+QDialog#RPCConsole .QGroupBox #line_2 { /* Network Out Line */
+background:#ff0000;
+}
+
+/* HELP MENU */
+
+/* Command Line Options Dialog */
+QDialog#HelpMessageDialog {
+background-color:#F8F6F6;
+}
+
+QDialog#HelpMessageDialog QScrollArea * {
+background-color:#ffffff;
+}
+
+QDialog#HelpMessageDialog QScrollBar:vertical, QDialog#HelpMessageDialog QScrollBar:horizontal {
+border:0;
+}
+
+/* About Dash Dialog */
+QDialog#AboutDialog {
+background-color:#F8F6F6;
+}
+
+QDialog#AboutDialog QLabel#label, QDialog#AboutDialog QLabel#copyrightLabel, QDialog#AboutDialog QLabel#label_2 { /* About Dash Contents */
+margin-left:10px;
+}
+
+QDialog#AboutDialog QLabel#label_2 { /* Margin for About Dash text */
+margin-right:10px;
+}
+
+/* Edit Address Dialog */
+QDialog#EditAddressDialog {
+background-color:#F8F6F6;
+}
+
+QDialog#EditAddressDialog QLabel {
+qproperty-alignment: 'AlignVCenter | AlignRight';
+min-height:27px;
+font-weight:normal;
+padding-right:5px;
+}
+
+/* OVERVIEW SCREEN */
+
+QWidget .QFrame#frame { /* Wallet Balance */
+min-width:490px;
+}
+
+QWidget .QFrame#frame > .QLabel {
+min-width:190px;
+font-weight:normal;
+min-height:30px;
+}
+
+QWidget .QFrame#frame .QLabel#label_5 { /* Wallet Label */
+qproperty-alignment: 'AlignVCenter | AlignRight';
+min-width:160px;
+background-color:transparent;
+color:#fff;
+margin-right:5px;
+padding-right:5px;
+}
+
+QWidget .QFrame#frame .QLabel#labelWalletStatus { /* Wallet Sync Status */
+qproperty-alignment: 'AlignVCenter | AlignLeft';
+margin-left:3px;
+}
+
+QWidget .QFrame#frame .QLabel#labelSpendable { /* Spendable Header */
+qproperty-alignment: 'AlignVCenter | AlignLeft';
+font-size:12px;
+margin-left:18px;
+}
+
+QWidget .QFrame#frame .QLabel#labelWatchonly { /* Watch-only Header */
+qproperty-alignment: 'AlignVCenter | AlignLeft';
+font-size:12px;
+margin-left:16px;
+}
+
+QWidget .QFrame#frame .QLabel#labelBalanceText { /* Available Balance Label */
+qproperty-alignment: 'AlignVCenter | AlignRight';
+min-width:160px;
+background-color:#01698d;
+color:#ffffff;
+margin-right:5px;
+padding-right:5px;
+font-weight:bold;
+font-size:14px;
+min-height:35px;
+}
+
+QWidget .QFrame#frame .QLabel#labelBalance { /* Available Balance */
+qproperty-alignment: 'AlignVCenter | AlignLeft';
+font-size:12px;
+font-weight:bold;
+color:#01698d;
+margin-left:0px;
+}
+
+QWidget .QFrame#frame .QLabel#labelWatchAvailable { /* Watch-only Balance */
+qproperty-alignment: 'AlignVCenter | AlignLeft';
+font-size:12px;
+margin-left:16px;
+}
+
+QWidget .QFrame#frame .QLabel#labelPendingText { /* Pending Balance Label */
+qproperty-alignment: 'AlignVCenter | AlignRight';
+min-width:160px;
+font-size:12px;
+background-color:#F8F6F6;
+margin-right:5px;
+padding-right:5px;
+}
+
+QWidget .QFrame#frame .QLabel#labelUnconfirmed { /* Pending Balance */
+qproperty-alignment: 'AlignVCenter | AlignLeft';
+font-size:12px;
+margin-left:0px;
+}
+
+QWidget .QFrame#frame .QLabel#labelWatchPending { /* Watch-only Pending Balance */
+qproperty-alignment: 'AlignVCenter | AlignLeft';
+font-size:12px;
+margin-left:16px;
+}
+
+QWidget .QFrame#frame .QLabel#labelImmatureText { /* Immature Balance Label */
+qproperty-alignment: 'AlignVCenter | AlignRight';
+min-width:160px;
+font-size:12px;
+background-color:#F8F6F6;
+margin-right:5px;
+padding-right:5px;
+}
+
+QWidget .QFrame#frame .QLabel#labelImmature { /* Immature Balance */
+qproperty-alignment: 'AlignVCenter | AlignLeft';
+font-size:12px;
+margin-left:0px;
+}
+
+QWidget .QFrame#frame .QLabel#labelWatchImmature { /* Watch-only Immature Balance */
+qproperty-alignment: 'AlignVCenter | AlignLeft';
+font-size:12px;
+margin-left:16px;
+}
+
+QWidget .QFrame#frame .QLabel#labelTotalText { /* Total Balance Label */
+qproperty-alignment: 'AlignVCenter | AlignRight';
+min-width:160px;
+font-size:12px;
+background-color:#F8F6F6;
+margin-right:5px;
+padding-right:5px;
+}
+
+QWidget .QFrame#frame .QLabel#labelTotal { /* Total Balance */
+qproperty-alignment: 'AlignVCenter | AlignLeft';
+font-size:12px;
+margin-left:0px;
+}
+
+QWidget .QFrame#frame .QLabel#labelWatchTotal { /* Watch-only Total Balance */
+qproperty-alignment: 'AlignVCenter | AlignLeft';
+font-size:12px;
+margin-left:16px;
+}
+
+/* PRIVATESEND WIDGET */
+
+QWidget .QFrame#framePrivateSend { /* PrivateSend Widget */
+background-color:transparent;
+max-width: 451px;
+min-width: 451px;
+max-height: 350px;
+}
+
+QWidget .QFrame#framePrivateSend .QWidget#layoutWidgetPrivateSendHeader { /* PrivateSend Header */
+max-width: 421px;
+min-width: 421px;
+}
+
+QWidget .QFrame#framePrivateSend .QLabel#labelPrivateSendHeader { /* PrivateSend Header */
+qproperty-alignment: 'AlignVCenter | AlignRight';
+min-width:160px;
+background-color:#01698d;
+color:#fff;
+margin-right:5px;
+padding-right:5px;
+font-weight:bold;
+font-size:14px;
+min-height:35px;
+max-height:35px;
+}
+/******************************************************************/
+QWidget .QFrame#framePrivateSend .QLabel#labelPrivateSendSyncStatus { /* PrivateSend Sync Status */
+qproperty-alignment: 'AlignVCenter | AlignLeft';
+margin-left:2px;
+}
+
+QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget {
+max-width: 451px;
+max-height: 175px;
+}
+
+QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget > .QLabel {
+min-width:175px;
+font-weight:normal;
+min-height:25px;
+}
+
+QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelPrivateSendEnabledText { /* PrivateSend Status Label */
+qproperty-alignment: 'AlignVCenter | AlignRight';
+min-width:160px;
+background-color:#F8F6F6;
+margin-right:5px;
+padding-right:5px;
+}
+
+QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelPrivateSendEnabled { /* PrivateSend Status */
+
+}
+
+QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelCompletitionText { /* PrivateSend Completion Label */
+qproperty-alignment: 'AlignVCenter | AlignRight';
+min-width:160px;
+background-color:#F8F6F6;
+margin-right:5px;
+padding-right:5px;
+
+}
+
+QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QProgressBar#privateSendProgress { /* PrivateSend Completion */
+border: 1px solid #01698d;
+border-radius: 10px;
+margin-right:43px;
+text-align: right;
+color:#01698d;
+}
+
+QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QProgressBar#privateSendProgress::chunk {
+background-color: #01698d;
+width:1px;
+}
+
+QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelAnonymizedText { /* PrivateSend Balance Label */
+qproperty-alignment: 'AlignVCenter | AlignRight';
+min-width:160px;
+background-color:#F8F6F6;
+margin-right:5px;
+padding-right:5px;
+}
+
+QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelAnonymized { /* PrivateSend Balance */
+
+}
+
+QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelAmountAndRoundsText { /* PrivateSend Amount and Rounds Label */
+qproperty-alignment: 'AlignVCenter | AlignRight';
+min-width:160px;
+background-color:#F8F6F6;
+margin-right:5px;
+padding-right:5px;
+}
+
+QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelAmountRounds { /* PrivateSend Amount and Rounds */
+
+}
+
+QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelSubmittedDenomText { /* PrivateSend Submitted Denom Label */
+qproperty-alignment: 'AlignVCenter | AlignRight';
+min-width:160px;
+background-color:#F8F6F6;
+margin-right:5px;
+padding-right:5px;
+}
+
+QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelSubmittedDenom { /* PrivateSend Submitted Denom */
+
+}
+
+QWidget .QFrame#framePrivateSend .QWidget#layoutWidgetLastMessageAndButtons {
+max-width: 451px;
+}
+
+QWidget .QFrame#framePrivateSend .QLabel#labelPrivateSendLastMessage { /* PrivateSend Status Notifications */
+qproperty-alignment: 'AlignVCenter | AlignCenter';
+min-width: 288px;
+min-height: 43px;
+font-size:11px;
+color:#01698d;
+}
+
+/* PRIVATESEND BUTTONS */
+
+QWidget .QFrame#framePrivateSend .QPushButton { /* PrivateSend Buttons - General Attributes */
+border:0px solid #ffffff;
+}
+
+QWidget .QFrame#framePrivateSend QPushButton:focus {
+border:none;
+outline:none;
+}
+
+QWidget .QFrame#framePrivateSend .QPushButton#togglePrivateSend { /* Start PrivateSend Mixing */
+font-size:15px;
+font-weight:bold;
+color:#ffffff;
+padding-left:10px;
+padding-right:10px;
+padding-top:5px;
+padding-bottom:6px;
+}
+
+QWidget .QFrame#framePrivateSend .QPushButton#togglePrivateSend:hover {
+
+}
+
+QWidget .QFrame#framePrivateSend .QPushButton#privateSendAuto { /* Try Mix Button */
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .01 #f6f6f6, stop: .1 rgba(250, 250, 250, 128), stop: .95 rgba(250, 250, 250, 255), stop: 1 #ebebeb);
+border:1px solid #d2d2d2;
+color:#616161;
+min-height:25px;
+font-size:9px;
+padding:0px;
+}
+
+QWidget .QFrame#framePrivateSend .QPushButton#privateSendAuto:hover {
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .01 #f6f6f6, stop: .1 rgba(240, 240, 240, 255), stop: .95 rgba(240, 240, 240, 255), stop: 1 #ebebeb);
+color:#333;
+}
+
+QWidget .QFrame#framePrivateSend .QPushButton#privateSendAuto:pressed {
+border:1px solid #9e9e9e;
+}
+
+QWidget .QFrame#framePrivateSend .QPushButton#privateSendReset { /* Reset Button */
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .01 #f6f6f6, stop: .1 rgba(250, 250, 250, 128), stop: .95 rgba(250, 250, 250, 255), stop: 1 #ebebeb);
+border:1px solid #d2d2d2;
+color:#616161;
+min-height:25px;
+font-size:9px;
+padding:0px;
+}
+
+QWidget .QFrame#framePrivateSend .QPushButton#privateSendReset:hover {
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .01 #f6f6f6, stop: .1 rgba(240, 240, 240, 255), stop: .95 rgba(240, 240, 240, 255), stop: 1 #ebebeb);
+color:#333;
+}
+
+QWidget .QFrame#framePrivateSend .QPushButton#privateSendReset:pressed {
+border:1px solid #9e9e9e;
+}
+
+QWidget .QFrame#framePrivateSend .QPushButton#privateSendInfo { /* Info Button */
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .01 #f6f6f6, stop: .1 rgba(250, 250, 250, 128), stop: .95 rgba(250, 250, 250, 255), stop: 1 #ebebeb);
+border:1px solid #d2d2d2;
+color:#616161;
+min-height:25px;
+font-size:9px;
+padding:0px;
+}
+
+QWidget .QFrame#framePrivateSend .QPushButton#privateSendInfo:hover {
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .01 #f6f6f6, stop: .1 rgba(240, 240, 240, 255), stop: .95 rgba(240, 240, 240, 255), stop: 1 #ebebeb);
+color:#333;
+}
+
+QWidget .QFrame#framePrivateSend .QPushButton#privateSendInfo:pressed {
+border:1px solid #9e9e9e;
+}
+
+/* RECENT TRANSACTIONS */
+
+QWidget .QFrame#frame_2 { /* Transactions Widget */
+min-width:410px;
+margin-right:20px;
+margin-left:0;
+margin-top:0;
+background-image: url(':/images/blue/res/images/blue/dash_logo_horizontal');
+background-repeat:none;
+}
+
+QWidget .QFrame#frame_2 .QLabel#label_4 { /* Recent Transactions Label */
+min-width:180px;
+color:#01698d;
+margin-left:67px;
+margin-top:83px;
+margin-right:5px;
+padding-right:5px;
+font-weight:bold;
+font-size:15px;
+min-height:24px;
+}
+
+QWidget .QFrame#frame_2 .QLabel#labelTransactionsStatus { /* Recent Transactions Sync Status */
+qproperty-alignment: 'AlignBottom | AlignRight';
+min-width:93px;
+margin-top:83px;
+margin-left:16px;
+margin-right:5px;
+min-height:16px;
+}
+
+QWidget .QFrame#frame_2 QListView { /* Transaction List */
+font-weight:normal;
+font-size:12px;
+max-width:369px;
+margin-top:12px;
+margin-left:0px; /* CSS Voodoo - set to -66px to hide default transaction icons */
+}
+
+/* MODAL OVERLAY */
+
+QWidget#bgWidget { /* The 'frame' overlaying the overview-page */
+ background:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .01 #f6f6f6, stop: .1 rgba(250, 250, 250, 128), stop: .95 rgba(250, 250, 250, 255), stop: 1 #ebebeb);
+ color:#616161;
+ padding-left:10px;
+ padding-right:10px;
+}
+
+QWidget#bgWidget .QPushButton#warningIcon {
+width:64px;
+height:64px;
+padding:5px;
+background-color:transparent;
+}
+
+QWidget#contentWidget { /* The actual content with the text/buttons/etc... */
+border-image: url(':/images/blue/res/images/blue/blue_walletFrame_bg') 0 0 0 0 stretch stretch;
+border-top:0px solid #000;
+margin:0;
+padding-top:20px;
+padding-bottom: 20px;
+}
+
+QWidget#bgWidget .QPushButton#closeButton {
+
+}
+
+/* SEND DIALOG */
+
+QDialog#SendCoinsDialog .QFrame#frameCoinControl { /* Coin Control Section */
+
+}
+
+QDialog#SendCoinsDialog .QFrame#frameCoinControl > .QLabel { /* Default Font Color and Size */
+font-weight:normal;
+}
+
+QDialog#SendCoinsDialog .QFrame#frameCoinControl .QPushButton#pushButtonCoinControl { /* Coin Control Inputs Button */
+padding-left:10px;
+padding-right:10px;
+min-height:25px;
+}
+
+QDialog#SendCoinsDialog .QFrame#frameCoinControl .QLabel#labelCoinControlFeatures { /* Coin Control Header */
+color:#01698d;
+font-weight:bold;
+font-size:14px;
+}
+
+QDialog#SendCoinsDialog .QFrame#frameCoinControl .QWidget#widgetCoinControl { /* Coin Control Inputs */
+}
+
+QDialog#SendCoinsDialog .QFrame#frameCoinControl .QWidget#widgetCoinControl > .QLabel { /* Coin Control Inputs Labels */
+padding:2px;
+}
+
+QDialog#SendCoinsDialog .QFrame#frameCoinControl .QCheckBox#checkBoxCoinControlChange { /* Custom Change Label */
+}
+
+QDialog#SendCoinsDialog .QFrame#frameCoinControl .QValidatedLineEdit#lineEditCoinControlChange { /* Custom Change Address */
+}
+
+QDialog#SendCoinsDialog .QFrame#frameCoinControl .QLabel#labelCoinControlChangeLabel { /* Custom Change Address Validation Label */
+font-weight:normal;
+qproperty-margin:-6;
+margin-right:112px;
+}
+
+QDialog#SendCoinsDialog .QScrollArea#scrollArea .QWidget#scrollAreaWidgetContents { /* Send To Widget */
+background:transparent;
+}
+
+QDialog#SendCoinsDialog .QPushButton#sendButton { /* Send Button */
+padding-left:10px;
+padding-right:10px;
+}
+
+QDialog#SendCoinsDialog .QPushButton#clearButton { /* Clear Button */
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .01 #f6f6f6, stop: .1 rgba(250, 250, 250, 128), stop: .95 rgba(250, 250, 250, 255), stop: 1 #ebebeb);
+border:1px solid #d2d2d2;
+color:#616161;
+padding-left:10px;
+padding-right:10px;
+}
+
+QDialog#SendCoinsDialog .QPushButton#clearButton:hover {
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .01 #f6f6f6, stop: .1 rgba(240, 240, 240, 255), stop: .95 rgba(240, 240, 240, 255), stop: 1 #ebebeb);
+color:#333;
+}
+
+QDialog#SendCoinsDialog .QPushButton#clearButton:pressed {
+border:1px solid #9e9e9e;
+}
+
+QDialog#SendCoinsDialog .QPushButton#addButton { /* Add Button */
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .01 #f6f6f6, stop: .1 rgba(250, 250, 250, 128), stop: .95 rgba(250, 250, 250, 255), stop: 1 #ebebeb);
+border:1px solid #d2d2d2;
+color:#616161;
+padding-left:10px;
+padding-right:10px;
+}
+
+QDialog#SendCoinsDialog .QPushButton#addButton:hover {
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .01 #f6f6f6, stop: .1 rgba(240, 240, 240, 255), stop: .95 rgba(240, 240, 240, 255), stop: 1 #ebebeb);
+color:#333;
+}
+
+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:10px;
+padding-top:20px;
+padding-bottom:18px;
+}
+
+QDialog#SendCoinsDialog .QCheckBox#checkUseInstantSend { /* InstantSend 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:10px;
+padding-top:20px;
+padding-bottom:18px;
+margin-left:10px;
+margin-right:20px;
+}
+
+/* This QLabel uses name = "label" which conflicts with Address Book -> New Address */
+/* To maximize backwards compatibility this formatting has been removed */
+
+QDialog#SendCoinsDialog QLabel#label {
+/*margin-left:20px;
+margin-right:-2px;
+padding-right:-2px;
+color:#616161;
+font-size:14px;
+font-weight:bold;
+border-radius:5px;
+padding-top:20px;
+padding-bottom:20px;*/
+min-height:27px;
+}
+
+QDialog#SendCoinsDialog QLabel#labelBalance {
+margin-left:0px;
+padding-left:0px;
+color:#333333;
+/* font-weight:bold;
+border-radius:5px;
+padding-top:20px;
+padding-bottom:20px; */
+min-height:27px;
+}
+
+#checkboxSubtractFeeFromAmount {
+padding-left:10px;
+}
+
+/* SEND COINS ENTRY */
+
+QStackedWidget#SendCoinsEntry .QFrame#SendCoins > .QLabel { /* Send Coin Entry Labels */
+background-color:#01698d;
+min-width:102px;
+font-weight:bold;
+font-size:11px;
+color:#ffffff;
+min-height:25px;
+margin-right:5px;
+padding-right:5px;
+}
+
+QStackedWidget#SendCoinsEntry .QFrame#SendCoins .QLabel#amountLabel {
+background-color:#6a6a6a;
+}
+
+QStackedWidget#SendCoinsEntry .QValidatedLineEdit#payTo { /* Pay To Input Field */
+}
+
+QStackedWidget#SendCoinsEntry .QToolButton { /* General Settings for Pay To Icons */
+background-color:transparent;
+padding-left:5px;
+padding-right:5px;
+border: 0;
+outline: 0;
+}
+
+QStackedWidget#SendCoinsEntry .QToolButton#addressBookButton { /* Address Book Button */
+padding-left:10px;
+}
+
+QStackedWidget#SendCoinsEntry .QToolButton#addressBookButton {
+}
+
+QStackedWidget#SendCoinsEntry .QToolButton#pasteButton {
+}
+
+QStackedWidget#SendCoinsEntry .QToolButton#deleteButton {
+}
+
+QStackedWidget#SendCoinsEntry .QLineEdit#addAsLabel { /* Pay To Input Field */
+}
+
+/* COIN CONTROL POPUP */
+
+QDialog#CoinControlDialog { /* Coin Control Dialog Window */
+background-color:#F8F6F6;
+}
+
+QDialog#CoinControlDialog .QLabel#labelCoinControlQuantityText { /* Coin Control Quantity Label */
+min-height:30px;
+padding-left:15px;
+}
+
+QDialog#CoinControlDialog .QLabel#labelCoinControlQuantity { /* Coin Control Quantity */
+min-height:30px;
+}
+
+QDialog#CoinControlDialog .QLabel#labelCoinControlBytesText { /* Coin Control Bytes Label */
+padding-left:15px;
+}
+
+QDialog#CoinControlDialog .QLabel#labelCoinControlBytes { /* Coin Control Bytes */
+}
+
+QDialog#CoinControlDialog .QLabel#labelCoinControlAmountText { /* Coin Control Amount Label */
+min-height:30px;
+padding-left:15px;
+}
+
+QDialog#CoinControlDialog .QLabel#labelCoinControlAmount { /* Coin Control Amount */
+min-height:30px;
+}
+
+QDialog#CoinControlDialog .QLabel#labelCoinControlPriorityText { /* Coin Control Priority Label */
+padding-left:15px;
+}
+
+QDialog#CoinControlDialog .QLabel#labelCoinControlPriority { /* Coin Control Priority */
+}
+
+QDialog#CoinControlDialog .QLabel#labelCoinControlFeeText { /* Coin Control Fee Label */
+min-height:30px;
+padding-left:15px;
+}
+
+QDialog#CoinControlDialog .QLabel#labelCoinControlFee { /* Coin Control Fee */
+min-height:30px;
+}
+
+QDialog#CoinControlDialog .QLabel#labelCoinControlLowOutputText { /* Coin Control Low Output Label */
+padding-left:15px;
+}
+
+QDialog#CoinControlDialog .QLabel#labelCoinControlLowOutput { /* Coin Control Low Output */
+}
+
+QDialog#CoinControlDialog .QLabel#labelCoinControlAfterFeeText { /* Coin Control After Fee Label */
+min-height:30px;
+padding-left:15px;
+}
+
+QDialog#CoinControlDialog .QLabel#labelCoinControlAfterFee { /* Coin Control After Fee */
+min-height:30px;
+}
+
+QDialog#CoinControlDialog .QLabel#labelCoinControlChangeText { /* Coin Control Change Label */
+padding-left:15px;
+}
+
+QDialog#CoinControlDialog .QLabel#labelCoinControlChange { /* Coin Control Change */
+
+}
+
+QDialog#CoinControlDialog .QFrame#frame .QPushButton#pushButtonSelectAll { /* (un)select all button */
+padding-left:10px;
+padding-right:10px;
+min-height:25px;
+}
+
+QDialog#CoinControlDialog .QFrame#frame .QPushButton#pushButtonToggleLock { /* Toggle lock state button */
+padding-left:10px;
+padding-right:10px;
+min-height:25px;
+}
+
+QDialog#CoinControlDialog .QDialogButtonBox#buttonBox QPushButton { /* Coin Control 'OK' button */
+}
+
+QDialog#CoinControlDialog .QFrame#frame .QRadioButton#radioTreeMode { /* Coin Control Tree Mode Selector */
+color:#01698d;
+background-color:transparent;
+}
+
+QDialog#CoinControlDialog .QFrame#frame .QRadioButton#radioListMode { /* Coin Control List Mode Selector */
+color:#01698d;
+background-color:transparent;
+}
+
+QDialog#CoinControlDialog QHeaderView::section:first { /* Bug Fix: the number "1" displays in this table for some reason... */
+color:transparent;
+}
+
+QDialog#CoinControlDialog .CoinControlTreeWidget#treeWidget { /* Coin Control Widget Container */
+outline:0;
+background-color:#ffffff;
+border:0px solid #01698d;
+}
+
+QDialog#CoinControlDialog .CoinControlTreeWidget#treeWidget::item {
+}
+
+QDialog#CoinControlDialog .CoinControlTreeWidget#treeWidget::item:selected { /* Coin Control Item (selected) */
+background-color:#f7f7f7;
+color:#333;
+}
+
+QDialog#CoinControlDialog .CoinControlTreeWidget#treeWidget::item:checked { /* Coin Control Item (checked) */
+background-color:#f7f7f7;
+color:#333;
+}
+
+QDialog#CoinControlDialog .CoinControlTreeWidget#treeWidget::branch:selected { /* Coin Control Branch Icon */
+background-image: url(':/images/blue/res/images/blue/blue_qtreeview_selected');
+background-repeat:no-repeat;
+background-position:center;
+background-color:#f7f7f7;
+color:#333;
+}
+
+QDialog#CoinControlDialog .CoinControlTreeWidget#treeWidget::branch:checked { /* Coin Control Branch Icon */
+background-image: url(':/images/blue/res/images/blue/blue_qtreeview_selected');
+background-repeat:no-repeat;
+background-position:center;
+background-color:#f7f7f7;
+color:#333;
+}
+
+QDialog#CoinControlDialog .CoinControlTreeWidget#treeWidget::seperator {
+
+}
+
+QDialog#CoinControlDialog .CoinControlTreeWidget#treeWidget::indicator { /* Coin Control Widget Checkbox */
+
+}
+
+/* RECEIVE COINS */
+
+QWidget#ReceiveCoinsDialog .QFrame#frame2 .QLabel#label_2 { /* Label Label */
+background-color:#01698d;
+min-width:102px;
+color:#ffffff;
+font-weight:bold;
+font-size:11px;
+padding-right:5px;
+}
+
+QWidget#ReceiveCoinsDialog .QFrame#frame2 .QLabel#label { /* Amount Label */
+background-color:#6a6a6a;
+min-width:102px;
+color:#ffffff;
+font-weight:bold;
+font-size:11px;
+padding-right:5px;
+}
+
+QWidget#ReceiveCoinsDialog .QFrame#frame2 .QLabel#label_3 { /* Message Label */
+background-color:#01698d;
+min-width:102px;
+color:#ffffff;
+font-weight:bold;
+font-size:11px;
+padding-right:5px;
+}
+
+QWidget#ReceiveCoinsDialog .QFrame#frame2 QPushButton#clearButton { /* Clear Button */
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .01 #f6f6f6, stop: .1 rgba(250, 250, 250, 128), stop: .95 rgba(250, 250, 250, 255), stop: 1 #ebebeb);
+border:1px solid #d2d2d2;
+color:#616161;
+padding-left:10px;
+padding-right:10px;
+}
+
+QWidget#ReceiveCoinsDialog .QFrame#frame2 QPushButton#clearButton:hover {
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .01 #f6f6f6, stop: .1 rgba(240, 240, 240, 255), stop: .95 rgba(240, 240, 240, 255), stop: 1 #ebebeb);
+color:#333;
+}
+
+QWidget#ReceiveCoinsDialog .QFrame#frame2 QPushButton#clearButton:pressed {
+border:1px solid #9e9e9e;
+}
+
+QWidget#ReceiveCoinsDialog .QFrame#frame QPushButton#showRequestButton { /* Show Button */
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .01 #f6f6f6, stop: .1 rgba(250, 250, 250, 128), stop: .95 rgba(250, 250, 250, 255), stop: 1 #ebebeb);
+border:1px solid #d2d2d2;
+color:#616161;
+padding-left:10px;
+padding-right:10px;
+}
+
+QWidget#ReceiveCoinsDialog .QFrame#frame QPushButton#showRequestButton:hover {
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .01 #f6f6f6, stop: .1 rgba(240, 240, 240, 255), stop: .95 rgba(240, 240, 240, 255), stop: 1 #ebebeb);
+color:#333;
+}
+
+QWidget#ReceiveCoinsDialog .QFrame#frame QPushButton#showRequestButton:pressed {
+border:1px solid #9e9e9e;
+}
+
+QWidget#ReceiveCoinsDialog .QFrame#frame QPushButton#removeRequestButton { /* Remove Button */
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .01 #f6f6f6, stop: .1 rgba(250, 250, 250, 128), stop: .95 rgba(250, 250, 250, 255), stop: 1 #ebebeb);
+border:1px solid #d2d2d2;
+color:#616161;
+padding-left:10px;
+padding-right:10px;
+}
+
+QWidget#ReceiveCoinsDialog .QFrame#frame QPushButton#removeRequestButton:hover {
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .01 #f6f6f6, stop: .1 rgba(240, 240, 240, 255), stop: .95 rgba(240, 240, 240, 255), stop: 1 #ebebeb);
+color:#333;
+}
+
+QWidget#ReceiveCoinsDialog .QFrame#frame QPushButton#removeRequestButton:pressed {
+border:1px solid #9e9e9e;
+}
+
+QWidget#ReceiveCoinsDialog .QFrame#frame .QLabel#label_6 { /* Requested Payments History Label */
+color:#01698d;
+font-weight:bold;
+font-size:14px;
+}
+
+/* RECEIVE COINS DIALOG */
+
+QDialog#ReceiveRequestDialog {
+background-color:#F8F6F6;
+}
+
+QDialog#ReceiveRequestDialog QTextEdit { /* Contents of Receive Coin Dialog */
+border:1px solid #d7d7d7;
+}
+
+/* General QR-code DIALOG */
+
+QDialog#QRDialog {
+background-color:#F8F6F6;
+}
+
+QDialog#QRDialog QTextEdit { /* Contents of QR-code Dialog */
+border:1px solid #d7d7d7;
+}
+
+/* TRANSACTIONS PAGE */
+
+TransactionView QLineEdit { /* Filters */
+margin-bottom:2px;
+margin-right:1px;
+min-width:111px;
+text-align:center;
+}
+
+TransactionView QLineEdit#addressWidget { /* Address Filter */
+margin-bottom:2px;
+margin-right:1px;
+min-width:900px;
+text-align:center;
+}
+
+TransactionView QLineEdit#amountWidget { /* Amount Filter */
+margin-bottom:2px;
+margin-right:1px;
+max-width:100px;
+text-align:center;
+}
+
+TransactionView QComboBox {
+margin-bottom:1px;
+margin-right:1px;
+}
+
+QLabel#transactionSumLabel { /* Example of setObjectName for widgets without name */
+color:#333333;
+font-weight:bold;
+}
+
+QLabel#transactionSum { /* Example of setObjectName for widgets without name */
+color:#333333;
+}
+
+/* TRANSACTION DETAIL DIALOG */
+
+QDialog#TransactionDescDialog {
+background-color:#F8F6F6;
+}
+
+QDialog#TransactionDescDialog QTextEdit { /* Contents of Receive Coin Dialog */
+border:1px solid #d7d7d7;
+}
+
+
+/* QT */
+QLineEdit#sendAddressBalance{
+ min-width: 175px;
+ max-width: 225px;
+ font: bold;
+}
+
+QComboBox#inputsCombo QListView {
+border:2px solid #01698d;
+padding-right:1px;
+padding-left:1px;
+ font: normal;
+}
+
+QComboBox#listReceiveAddresses
+{
+ font: normal;
+}
+
+QComboBox#listReceiveAddresses QListView {
+border:2px solid #01698d;
+padding-right:1px;
+padding-left:1px;
+ font: normal;
+}
+
+.QValidatedLineEdit, .QLineEdit { /* Text Entry Fields */
+ border: 1px solid #01698d;
+ font-size:11px;
+ min-height:25px;
+ outline:0;
+ padding:3px;
+ background-color:#fcfcfc;
+ color:#333333;
+ }
+
+ .QLineEdit:!focus {
+ font-size:12px;
+ }
+
+ .QValidatedLineEdit:disabled, .QLineEdit:disabled {
+ background-color:#f2f2f2;
+ }
+
+ /* Form elements */
+QLineEdit { /* inputs */
+ border-radius: 4px;
+ border: 1px solid #c5cad3;
+ padding: 5px;
+ font: 12px "Volte";
diff --git a/res/css/dark.css b/res/css/dark.css
new file mode 100644
index 0000000..826ed99
--- /dev/null
+++ b/res/css/dark.css
@@ -0,0 +1,88 @@
+
+QWidget, QMainWindow, QMenuBar, QMenu, QDialog, QTabWidget, QTableView, QTableView::item, QScrollArea, QGroupBox, QPlainTextEdit, QLineEdit, QLabel
+{
+ background-color: #303335;
+ color: #ffffff;
+}
+
+QTabWidget QTabBar::tab {
+padding-left:20px;
+padding-right:20px;
+padding-top:5px;
+padding-bottom:5px;
+border: 1px solid #525355;
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 0.25, stop: 0 #747577, stop: 1 #3E4244);
+}
+
+QTabWidget QTabBar::tab:selected {
+min-height: 10px;
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 0.25, stop: 0 #525355, stop: 1 #303335);
+color:#fff;
+border: 1px ridge #000;
+}
+
+QTabWidget QTabBar::tab:hover {
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 0.25, stop: 0 #747577, stop: 1 #3E4244);
+color:#fff;
+border: 1px ridge #fff;
+min-height: 20px
+}
+
+QHeaderView { /* Table Header */
+background-color:#303335;
+}
+
+QHeaderView::section { /* Table Header Sections */
+qproperty-alignment:center;
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 0.25, stop: 0 #747577, stop: 1 #3E4244);
+color:#fff;
+min-height:25px;
+font-weight:bold;
+font-size:11px;
+outline:0;
+border:1px solid #525355;
+border-right:1px solid #fff;
+border-left:1px solid #fff;
+padding-left:5px;
+padding-right:5px;
+padding-top:2px;
+padding-bottom:2px;
+}
+
+QHeaderView::section:last {
+border-right: 0px solid #d7d7d7;
+}
+
+QScrollArea {
+background:transparent;
+border:0px;
+}
+
+QTableView { /* Table - has to be selected as a class otherwise it throws off QCalendarWidget */
+background:#303335;
+}
+
+QTableView::item { /* Table Item */
+background-color:#303335;
+border:1px solid #fff;
+font-size:12px;
+}
+
+QTableView::item:selected { /* Table Item Selected */
+background-color:#fff;
+color:#000;
+}
+
+QMenuBar {
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 0.25, stop: 0 #525355, stop: 1 #303335);
+color: #fff;
+}
+
+QMenuBar::item {
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 0.25, stop: 0 #525355, stop: 1 #303335);
+color: #fff;
+}
+
+QMenuBar::item:selected {
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 0.25, stop: 0 #747577, stop: 1 #3E4244);
+}
diff --git a/res/css/default.css b/res/css/default.css
new file mode 100644
index 0000000..f34f1dc
--- /dev/null
+++ b/res/css/default.css
@@ -0,0 +1,5 @@
+QWidget, QMainWindow, QMenuBar, QMenu, QDialog, QTabWidget, QTableView, QTableView::item, QScrollArea, QGroupBox, QPlainTextEdit, QLineEdit, QLabel
+{
+ /**/
+
+}
diff --git a/res/css/light.css b/res/css/light.css
new file mode 100644
index 0000000..e48c6bb
--- /dev/null
+++ b/res/css/light.css
@@ -0,0 +1,90 @@
+QWidget, QMainWindow, QMenuBar, QMenu, QDialog, QTabWidget, QTableView, QTableView::item, QScrollArea, QGroupBox, QWidget, QPlainTextEdit, QLineEdit, QLabel
+{
+ background-color: #dadada;
+ color: #000000;
+
+}
+
+QTabWidget QTabBar::tab {
+padding-left:20px;
+padding-right:20px;
+padding-top:5px;
+padding-bottom:5px;
+border: 1px solid #525355;
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 0.25, stop: 0 #DADADA, stop: 1 #747577);
+color:#fff;
+}
+
+QTabWidget QTabBar::tab:selected {
+min-height: 10px;
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 0.25, stop: 0 #747577, stop: 1 #DADADA);
+color:#000;
+border: 1px ridge #000;
+}
+
+QTabWidget QTabBar::tab:hover {
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 0.25, stop: 0 #747577, stop: 1 #DADADA);
+color:#000;
+border: 1px ridge #fff;
+min-height: 20px
+}
+
+QHeaderView { /* Table Header */
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 0.25, stop: 0 #DADADA, stop: 1 #747577);
+}
+
+QHeaderView::section { /* Table Header Sections */
+qproperty-alignment:center;
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 0.25, stop: 0 #DADADA, stop: 1 #747577);
+color:#fff;
+min-height:25px;
+font-weight:bold;
+font-size:11px;
+outline:0;
+border:1px solid #747577;
+border-right:1px solid #fff;
+border-left:1px solid #fff;
+padding-left:5px;
+padding-right:5px;
+padding-top:2px;
+padding-bottom:2px;
+}
+
+QHeaderView::section:last {
+border-right: 0px solid #d7d7d7;
+}
+
+QScrollArea {
+background:transparent;
+border:0px;
+}
+
+QTableView { /* Table - has to be selected as a class otherwise it throws off QCalendarWidget */
+background:#DADADA;
+}
+
+QTableView::item { /* Table Item */
+background-color:#DADADA;
+border:1px solid #fff;
+font-size:12px;
+}
+
+QTableView::item:selected { /* Table Item Selected */
+background-color:#747577;
+color:#fff;
+}
+
+QMenuBar {
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 0.25, stop: 0 #DADADA, stop: 1 #747577);
+color: #fff;
+}
+
+QMenuBar::item {
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 0.25, stop: 0 #DADADA, stop: 1 #747577);
+color: #fff;
+}
+
+QMenuBar::item:selected {
+background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 0.25, stop: 0 #747577, stop: 1 #DADADA);
+color:#000;
+}
diff --git a/res/images/blue/blue_downArrow.png b/res/images/blue/blue_downArrow.png
new file mode 100644
index 0000000000000000000000000000000000000000..e26c529d23d162c7a4cf3a1136a62faca0bf4b6e
GIT binary patch
literal 212
zcmeAS@N?(olHy`uVBq!ia0vp^q9Dw{3?%2B3|#`G3<7*YT>t<7uiLhnc=Ygvz)qlE
z{*oZSU;F98
zjsroB=L(&Ev}Ve!Tr=(V+9|HLC%j*Dce7sCv|P`P>G78?UYb^O?Tc#skGgk^j}Ec0
U9^m2M4K$Cz)78&qol`;+03&Z!Z~y=R
literal 0
HcmV?d00001
diff --git a/res/images/blue/blue_downArrow_small.png b/res/images/blue/blue_downArrow_small.png
new file mode 100644
index 0000000000000000000000000000000000000000..0f66a1a6ce6046df80cbab91c7a0b63712f79763
GIT binary patch
literal 246
zcmeAS@N?(olHy`uVBq!ia0vp^AT}2VGmzZ%#=aj&g#`G7xc>kDU$<>Db&==8n?Hf(
zOP2)s1v4;c`8DOXn~Uj0KRA8j+$|e%?iJ09{n;}d47*usbb!jtJY5_^IIfqTGURgs
zau3QXF5L6z$p883b_#(RQ+#Z{9&6wd{j>FVdQ&MBb@06`gFrvLx|
literal 0
HcmV?d00001
diff --git a/res/images/blue/blue_leftArrow_small.png b/res/images/blue/blue_leftArrow_small.png
new file mode 100644
index 0000000000000000000000000000000000000000..eb0f63ecf20d9dfde02329669785978b2e19c25d
GIT binary patch
literal 253
zcmeAS@N?(olHy`uVBq!ia0vp^AT}2VGmzZ%#=aj&g#`G7xc>kDU$<>Db&==8n?Hf(
zOP2)s1v4<{XmLmTt$5JXe>&G;#tFmhbIrHf8EwqP#k%%-@dB0Edb&7#`kF(*39Nys4uYYc^Jz%bz{a{P79&B
XRC5j|_dqXspg|0tu6{1-oD!M<$T(hZ
literal 0
HcmV?d00001
diff --git a/res/images/blue/blue_qtreeview_selected.png b/res/images/blue/blue_qtreeview_selected.png
new file mode 100644
index 0000000000000000000000000000000000000000..2656a1efa43ec83b28ce1515a8665440773cf766
GIT binary patch
literal 111
zcmeAS@N?(olHy`uVBq!ia0vp^qCm{g0VEjo3~z4-Qf8hmjv*44lYjK_8ca~FVp^Ty
zcC|KV(NxFD_maD|U0WKO_p?niDl*}+>zt@J&yq?Hb9UAC@GwkImcP-+zON5tlBcVm
J%Q~loCIH8>B?kDU$<>Db&==8n?Hf(
zOP2)s1v4;+iJRLnw%=;bJ(qo=$#90l>HY^R{Gz$FboT06Y5KU`cAZyh3
literal 0
HcmV?d00001
diff --git a/res/images/blue/blue_upArrow_small.png b/res/images/blue/blue_upArrow_small.png
new file mode 100644
index 0000000000000000000000000000000000000000..4e854fdfecee16ca6f4d9f480fedbe03865d0b4d
GIT binary patch
literal 247
zcmeAS@N?(olHy`uVBq!ia0vp^AT}2VGmzZ%#=aj&g#`G7xc>kDU$<>Db&==8n?Hf(
zOP2)s1v4-hIyBA5?q_UX!7Xlc>)eUc52AI%%-eJQw0siZ?g1(@_jGX#;gDrLXvo!I
zz`(FEX5kJC&cFZJx%2q=l9(76L|z?kFkCR>blu9u+~xl1Q&)wx?ga|hxtX!qDhVAs
Q2sDDh)78&qol`;+0Q7rW0{{R3
literal 0
HcmV?d00001
diff --git a/res/images/blue/checked.png b/res/images/blue/checked.png
new file mode 100644
index 0000000000000000000000000000000000000000..91a675a7534f88ec0e4a1c455cf767a2cbb03efc
GIT binary patch
literal 6377
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
literal 0
HcmV?d00001
diff --git a/res/images/blue/unchecked.png b/res/images/blue/unchecked.png
new file mode 100644
index 0000000000000000000000000000000000000000..9aabccb27f6e25c9b6d935a557c0a977d59921de
GIT binary patch
literal 224
zcmeAS@N?(olHy`uVBq!ia0vp^f*{Pn1|+R>-G2co&H|6fVg?3oArNM~bhqvgP;io`
zi(`nz>94!6Y@-Hm^7xN)&`2vo2vn%MSqmZapYf3^Q_
z&b3URoEm9zSD@e+=RqrDH=Ayo*^_s@WzMTusP!o)%Gl&?flDXzJI}k{#9Nfk%k5k8
zvQ7J$$-ID@Zmq#m+h=T(cogID_CWk6;YpTd2itDQ+i#Rlp1Ca`>CW<_)qf_Ndso}c
Ud$-XV=u`#get_theme_name();
+ }
+ catch (...)
+ {
+ theme_name = "default";
+ }
+
+ this->slot_change_theme(theme_name);
+
+
ui->setupUi(this);
logger = new Logger(this, QDir(QStandardPaths::writableLocation(QStandardPaths::AppDataLocation)).filePath("zec-qt-wallet.log"));
@@ -116,6 +132,7 @@ MainWindow::MainWindow(QWidget *parent) :
// Initialize to the balances tab
ui->tabWidget->setCurrentIndex(0);
+
// The zcashd tab is hidden by default, and only later added in if the embedded zcashd is started
zcashdtab = ui->tabWidget->widget(4);
ui->tabWidget->removeTab(4);
@@ -484,6 +501,12 @@ void MainWindow::setupSettingsModal() {
}
});
+ // Setup theme combo
+ int theme_index = settings.comboBoxTheme->findText(Settings::getInstance()->get_theme_name(), Qt::MatchExactly);
+ settings.comboBoxTheme->setCurrentIndex(theme_index);
+
+ QObject::connect(settings.comboBoxTheme, SIGNAL(currentIndexChanged(QString)), this, SLOT(slot_change_theme(QString)));
+
// Save sent transactions
settings.chkSaveTxs->setChecked(Settings::getInstance()->getSaveZtxs());
@@ -1602,6 +1625,35 @@ void MainWindow::updateLabels() {
updateLabelsAutoComplete();
}
+void MainWindow::slot_change_theme(const QString& theme_name)
+{
+ /*
+ QMessageBox msgBox;
+ msgBox.setText(theme_name);
+ msgBox.exec();
+ */
+ Settings::getInstance()->set_theme_name(theme_name);
+
+ // Include css
+ QString saved_theme_name;
+ try
+ {
+ saved_theme_name = Settings::getInstance()->get_theme_name();
+ }
+ catch (...)
+ {
+ saved_theme_name = "default";
+ }
+
+ QFile qFile(":/css/res/css/" + saved_theme_name +".css");
+ if (qFile.open(QFile::ReadOnly))
+ {
+ QString styleSheet = QLatin1String(qFile.readAll());
+ this->setStyleSheet(styleSheet);
+ }
+
+}
+
MainWindow::~MainWindow()
{
delete ui;
diff --git a/src/mainwindow.h b/src/mainwindow.h
index 5343d28..923250a 100644
--- a/src/mainwindow.h
+++ b/src/mainwindow.h
@@ -81,6 +81,9 @@ public:
void doClose();
+public slots:
+ void slot_change_theme(const QString& themeName);
+
private:
void closeEvent(QCloseEvent* event);
diff --git a/src/settings.cpp b/src/settings.cpp
index 4682700..4ad21e0 100644
--- a/src/settings.cpp
+++ b/src/settings.cpp
@@ -149,6 +149,15 @@ void Settings::setAllowCustomFees(bool allow) {
QSettings().setValue("options/customfees", allow);
}
+QString Settings::get_theme_name() {
+ // Load from the QT Settings.
+ return QSettings().value("options/theme_name", false).toString();
+}
+
+void Settings::set_theme_name(QString theme_name) {
+ QSettings().setValue("options/theme_name", theme_name);
+}
+
bool Settings::getSaveZtxs() {
// Load from the QT Settings.
return QSettings().value("options/savesenttx", true).toBool();
diff --git a/src/settings.h b/src/settings.h
index a0fbff5..395349e 100644
--- a/src/settings.h
+++ b/src/settings.h
@@ -68,7 +68,10 @@ public:
bool getCheckForUpdates();
void setCheckForUpdates(bool allow);
-
+
+ QString get_theme_name();
+ void set_theme_name(QString theme_name);
+
bool isSaplingActive();
void setUsingZcashConf(QString confLocation);
@@ -142,4 +145,4 @@ private:
double zecPrice = 0.0;
};
-#endif // SETTINGS_H
\ No newline at end of file
+#endif // SETTINGS_H
diff --git a/src/settings.ui b/src/settings.ui
index 296a4f6..50401b2 100644
--- a/src/settings.ui
+++ b/src/settings.ui
@@ -7,7 +7,7 @@
0
0
540
- 504
+ 539
@@ -145,50 +145,27 @@
Options
- -
-
-
- Qt::Vertical
-
-
-
- 20
- 40
-
-
-
-
- -
-
-
- Qt::Horizontal
-
-
-
- 40
- 20
-
-
-
-
- -
-
+
-
+
- Connect via Tor
+ Connect to github on startup to check for updates
- -
-
+
-
+
- Check github for updates at startup
+ Normally, change from t-Addresses goes to another t-Address. Checking this option will send the change to your shielded sapling address instead. Check this option to increase your privacy.
+
+
+ true
- -
-
-
- Qt::Horizontal
+
-
+
+
+ Clear History
@@ -199,16 +176,26 @@
- -
-
+
-
+
- Normally, change from t-Addresses goes to another t-Address. Checking this option will send the change to your shielded sapling address instead. Check this option to increase your privacy.
-
-
- true
+ Connect to the internet to fetch ZEC prices
+ -
+
+
+ Qt::Horizontal
+
+
+
+ 40
+ 20
+
+
+
+
-
@@ -219,10 +206,10 @@
- -
-
+
-
+
- Clear History
+ Check github for updates at startup
@@ -236,13 +223,6 @@
- -
-
-
- Allow custom fees
-
-
-
-
@@ -250,6 +230,19 @@
+ -
+
+
+
+ 0
+ 0
+
+
+
+ Qt::Horizontal
+
+
+
-
@@ -260,17 +253,30 @@
- -
-
+
-
+
+
+ Qt::Vertical
+
+
+
+ 20
+ 40
+
+
+
+
+ -
+
- Connect to github on startup to check for updates
+ Connect via Tor
- -
-
+
-
+
- Connect to the internet to fetch ZEC prices
+ Allow custom fees
@@ -281,6 +287,52 @@
+ -
+
+
+
+ 0
+ 0
+
+
+
+ Theme
+
+
+ Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
-
+
+ default
+
+
+ -
+
+ blue
+
+
+ -
+
+ light
+
+
+ -
+
+ dark
+
+
+
+
diff --git a/zec-qt-wallet.pro b/zec-qt-wallet.pro
index 52a11af..756eea2 100644
--- a/zec-qt-wallet.pro
+++ b/zec-qt-wallet.pro
@@ -25,6 +25,7 @@ DEFINES += \
QT_DEPRECATED_WARNINGS
INCLUDEPATH += src/3rdparty/
+INCLUDEPATH += src/
RESOURCES = application.qrc
@@ -151,3 +152,5 @@ else:win32-g++:CONFIG(debug, debug|release): PRE_TARGETDEPS += $$PWD/res/liblibs
else:win32:!win32-g++:CONFIG(release, debug|release): PRE_TARGETDEPS += $$PWD/res/libsodium.lib
else:win32:!win32-g++:CONFIG(debug, debug|release): PRE_TARGETDEPS += $$PWD/res/libsodiumd.lib
else:unix: PRE_TARGETDEPS += $$PWD/res/libsodium.a
+
+DISTFILES +=