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 +=