Merge #867: Implement an option to enable/disable advanced PrivateSend UI

953d9fb Implement an option to enable/disable advanced PrivateSend UI, more DS->PS in overview tab code
This commit is contained in:
UdjinM6 2016-06-06 23:52:24 +04:00 committed by Holger Schinzel
parent 51515775b3
commit 4d4a9df059
10 changed files with 445 additions and 881 deletions

View File

@ -163,6 +163,16 @@
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="showAdvancedPSUI">
<property name="toolTip">
<string>Show additional information and buttons for PrivateSend on overview screen.</string>
</property>
<property name="text">
<string>Enable advanced PrivateSend interface</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="spendZeroConfChange">
<property name="toolTip">

View File

@ -393,13 +393,7 @@
</widget>
</item>
<item>
<widget class="QFrame" name="frameDarksend">
<property name="minimumSize">
<size>
<width>0</width>
<height>350</height>
</size>
</property>
<widget class="QFrame" name="framePrivateSend">
<property name="layoutDirection">
<enum>Qt::LeftToRight</enum>
</property>
@ -409,707 +403,227 @@
<property name="frameShadow">
<enum>QFrame::Raised</enum>
</property>
<widget class="QWidget" name="formLayoutWidget">
<property name="geometry">
<rect>
<x>10</x>
<y>40</y>
<width>451</width>
<height>161</height>
</rect>
</property>
<layout class="QFormLayout" name="formLayout">
<property name="fieldGrowthPolicy">
<enum>QFormLayout::AllNonFixedFieldsGrow</enum>
</property>
<property name="horizontalSpacing">
<number>11</number>
</property>
<property name="verticalSpacing">
<number>12</number>
</property>
<item row="0" column="0">
<widget class="QLabel" name="label_6">
<property name="text">
<string>Status:</string>
<layout class="QVBoxLayout" name="VerticalLayout_PS1">
<item>
<widget class="QWidget" name="layoutWidgetPrivateSendHeader">
<layout class="QHBoxLayout" name="horizontalLayout_5">
<item>
<widget class="QLabel" name="labelPrivateSendHeader">
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>PrivateSend</string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="labelPrivateSendSyncStatus">
<property name="toolTip">
<string>The displayed information may be out of date. Your wallet automatically synchronizes with the Dash network after a connection is established, but this process has not completed yet.</string>
</property>
<property name="styleSheet">
<string notr="true">QLabel { color: red; }</string>
</property>
<property name="text">
<string notr="true">(out of sync)</string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item>
<spacer name="horizontalSpacer_4">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QWidget" name="privateSendFormLayoutWidget">
<layout class="QFormLayout" name="privateSendFormLayout">
<property name="fieldGrowthPolicy">
<enum>QFormLayout::AllNonFixedFieldsGrow</enum>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_7">
<property name="text">
<string>Completion:</string>
<property name="horizontalSpacing">
<number>11</number>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QProgressBar" name="darksendProgress">
<property name="maximumSize">
<size>
<width>154</width>
<height>16777215</height>
</size>
<property name="verticalSpacing">
<number>12</number>
</property>
<property name="value">
<number>0</number>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QLabel" name="labelAnonymizedText">
<property name="text">
<string>PrivateSend Balance:</string>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QLabel" name="labelAnonymized">
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string notr="true">0 DASH</string>
</property>
</widget>
</item>
<item row="3" column="0">
<widget class="QLabel" name="label_8">
<property name="text">
<string>Amount and Rounds:</string>
</property>
</widget>
</item>
<item row="3" column="1">
<widget class="QLabel" name="labelAmountRounds">
<property name="text">
<string>0 DASH / 0 Rounds</string>
</property>
</widget>
</item>
<item row="4" column="0">
<widget class="QLabel" name="label_9">
<property name="text">
<string>Submitted Denom:</string>
</property>
</widget>
</item>
<item row="4" column="1">
<widget class="QLabel" name="labelSubmittedDenom">
<property name="toolTip">
<string>The denominations you submitted to the Masternode.&lt;br&gt;To mix, other users must submit the exact same denominations.</string>
</property>
<property name="text">
<string>n/a</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QLabel" name="darksendEnabled">
<property name="text">
<string>Enabled/Disabled</string>
</property>
</widget>
</item>
</layout>
</widget>
<widget class="QPushButton" name="runAutoDenom">
<property name="geometry">
<rect>
<x>251</x>
<y>17</y>
<width>1</width>
<height>1</height>
</rect>
</property>
<property name="palette">
<palette>
<active>
<colorrole role="WindowText">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>0</red>
<green>0</green>
<blue>0</blue>
</color>
</brush>
</colorrole>
<colorrole role="Button">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>239</red>
<green>238</green>
<blue>238</blue>
</color>
</brush>
</colorrole>
<colorrole role="Light">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>255</red>
<green>255</green>
<blue>255</blue>
</color>
</brush>
</colorrole>
<colorrole role="Midlight">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>247</red>
<green>246</green>
<blue>246</blue>
</color>
</brush>
</colorrole>
<colorrole role="Dark">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>119</red>
<green>119</green>
<blue>119</blue>
</color>
</brush>
</colorrole>
<colorrole role="Mid">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>159</red>
<green>159</green>
<blue>159</blue>
</color>
</brush>
</colorrole>
<colorrole role="Text">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>0</red>
<green>0</green>
<blue>0</blue>
</color>
</brush>
</colorrole>
<colorrole role="BrightText">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>255</red>
<green>255</green>
<blue>255</blue>
</color>
</brush>
</colorrole>
<colorrole role="ButtonText">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>0</red>
<green>0</green>
<blue>0</blue>
</color>
</brush>
</colorrole>
<colorrole role="Base">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>255</red>
<green>255</green>
<blue>255</blue>
</color>
</brush>
</colorrole>
<colorrole role="Window">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>239</red>
<green>238</green>
<blue>238</blue>
</color>
</brush>
</colorrole>
<colorrole role="Shadow">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>0</red>
<green>0</green>
<blue>0</blue>
</color>
</brush>
</colorrole>
<colorrole role="AlternateBase">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>247</red>
<green>246</green>
<blue>246</blue>
</color>
</brush>
</colorrole>
<colorrole role="ToolTipBase">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>255</red>
<green>255</green>
<blue>220</blue>
</color>
</brush>
</colorrole>
<colorrole role="ToolTipText">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>0</red>
<green>0</green>
<blue>0</blue>
</color>
</brush>
</colorrole>
</active>
<inactive>
<colorrole role="WindowText">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>0</red>
<green>0</green>
<blue>0</blue>
</color>
</brush>
</colorrole>
<colorrole role="Button">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>239</red>
<green>238</green>
<blue>238</blue>
</color>
</brush>
</colorrole>
<colorrole role="Light">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>255</red>
<green>255</green>
<blue>255</blue>
</color>
</brush>
</colorrole>
<colorrole role="Midlight">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>247</red>
<green>246</green>
<blue>246</blue>
</color>
</brush>
</colorrole>
<colorrole role="Dark">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>119</red>
<green>119</green>
<blue>119</blue>
</color>
</brush>
</colorrole>
<colorrole role="Mid">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>159</red>
<green>159</green>
<blue>159</blue>
</color>
</brush>
</colorrole>
<colorrole role="Text">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>0</red>
<green>0</green>
<blue>0</blue>
</color>
</brush>
</colorrole>
<colorrole role="BrightText">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>255</red>
<green>255</green>
<blue>255</blue>
</color>
</brush>
</colorrole>
<colorrole role="ButtonText">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>0</red>
<green>0</green>
<blue>0</blue>
</color>
</brush>
</colorrole>
<colorrole role="Base">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>255</red>
<green>255</green>
<blue>255</blue>
</color>
</brush>
</colorrole>
<colorrole role="Window">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>239</red>
<green>238</green>
<blue>238</blue>
</color>
</brush>
</colorrole>
<colorrole role="Shadow">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>0</red>
<green>0</green>
<blue>0</blue>
</color>
</brush>
</colorrole>
<colorrole role="AlternateBase">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>247</red>
<green>246</green>
<blue>246</blue>
</color>
</brush>
</colorrole>
<colorrole role="ToolTipBase">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>255</red>
<green>255</green>
<blue>220</blue>
</color>
</brush>
</colorrole>
<colorrole role="ToolTipText">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>0</red>
<green>0</green>
<blue>0</blue>
</color>
</brush>
</colorrole>
</inactive>
<disabled>
<colorrole role="WindowText">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>119</red>
<green>119</green>
<blue>119</blue>
</color>
</brush>
</colorrole>
<colorrole role="Button">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>239</red>
<green>238</green>
<blue>238</blue>
</color>
</brush>
</colorrole>
<colorrole role="Light">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>255</red>
<green>255</green>
<blue>255</blue>
</color>
</brush>
</colorrole>
<colorrole role="Midlight">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>247</red>
<green>246</green>
<blue>246</blue>
</color>
</brush>
</colorrole>
<colorrole role="Dark">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>119</red>
<green>119</green>
<blue>119</blue>
</color>
</brush>
</colorrole>
<colorrole role="Mid">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>159</red>
<green>159</green>
<blue>159</blue>
</color>
</brush>
</colorrole>
<colorrole role="Text">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>119</red>
<green>119</green>
<blue>119</blue>
</color>
</brush>
</colorrole>
<colorrole role="BrightText">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>255</red>
<green>255</green>
<blue>255</blue>
</color>
</brush>
</colorrole>
<colorrole role="ButtonText">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>119</red>
<green>119</green>
<blue>119</blue>
</color>
</brush>
</colorrole>
<colorrole role="Base">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>239</red>
<green>238</green>
<blue>238</blue>
</color>
</brush>
</colorrole>
<colorrole role="Window">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>239</red>
<green>238</green>
<blue>238</blue>
</color>
</brush>
</colorrole>
<colorrole role="Shadow">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>0</red>
<green>0</green>
<blue>0</blue>
</color>
</brush>
</colorrole>
<colorrole role="AlternateBase">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>239</red>
<green>238</green>
<blue>238</blue>
</color>
</brush>
</colorrole>
<colorrole role="ToolTipBase">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>255</red>
<green>255</green>
<blue>220</blue>
</color>
</brush>
</colorrole>
<colorrole role="ToolTipText">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>0</red>
<green>0</green>
<blue>0</blue>
</color>
</brush>
</colorrole>
</disabled>
</palette>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="autoFillBackground">
<bool>true</bool>
</property>
<property name="text">
<string/>
</property>
<property name="flat">
<bool>true</bool>
</property>
</widget>
<widget class="QPushButton" name="toggleDarksend">
<property name="geometry">
<rect>
<x>10</x>
<y>292</y>
<width>221</width>
<height>56</height>
</rect>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>Start/Stop Mixing</string>
</property>
</widget>
<widget class="Line" name="lineLastMessage">
<property name="geometry">
<rect>
<x>10</x>
<y>200</y>
<width>441</width>
<height>16</height>
</rect>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
<widget class="QLabel" name="darksendStatus">
<property name="geometry">
<rect>
<x>10</x>
<y>220</y>
<width>451</width>
<height>61</height>
</rect>
</property>
<property name="minimumSize">
<size>
<width>288</width>
<height>43</height>
</size>
</property>
<property name="text">
<string>(Last Message)</string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
<widget class="QPushButton" name="darksendAuto">
<property name="geometry">
<rect>
<x>230</x>
<y>292</y>
<width>221</width>
<height>28</height>
</rect>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="toolTip">
<string>Try to manually submit a PrivateSend request.</string>
</property>
<property name="text">
<string>Try Mix</string>
</property>
</widget>
<widget class="QPushButton" name="darksendReset">
<property name="geometry">
<rect>
<x>230</x>
<y>320</y>
<width>221</width>
<height>28</height>
</rect>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="toolTip">
<string>Reset the current status of PrivateSend (can interrupt PrivateSend if it's in the process of Mixing, which can cost you money!)</string>
</property>
<property name="autoFillBackground">
<bool>false</bool>
</property>
<property name="text">
<string>Reset</string>
</property>
</widget>
<widget class="QWidget" name="layoutWidget">
<property name="geometry">
<rect>
<x>10</x>
<y>10</y>
<width>431</width>
<height>22</height>
</rect>
</property>
<layout class="QHBoxLayout" name="horizontalLayout_5">
<item>
<widget class="QLabel" name="label_2">
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>PrivateSend</string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="labelDarksendSyncStatus">
<property name="toolTip">
<string>The displayed information may be out of date. Your wallet automatically synchronizes with the Dash network after a connection is established, but this process has not completed yet.</string>
</property>
<property name="styleSheet">
<string notr="true">QLabel { color: red; }</string>
</property>
<property name="text">
<string notr="true">(out of sync)</string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item>
<spacer name="horizontalSpacer_4">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
<item row="0" column="0">
<widget class="QLabel" name="labelPrivateSendEnabledText">
<property name="text">
<string>Status:</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QLabel" name="labelPrivateSendEnabled">
<property name="text">
<string>Enabled/Disabled</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="labelCompletitionText">
<property name="text">
<string>Completion:</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QProgressBar" name="privateSendProgress">
<property name="maximumSize">
<size>
<width>154</width>
<height>16777215</height>
</size>
</property>
<property name="value">
<number>0</number>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QLabel" name="labelAnonymizedText">
<property name="text">
<string>PrivateSend Balance:</string>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QLabel" name="labelAnonymized">
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string notr="true">0 DASH</string>
</property>
</widget>
</item>
<item row="3" column="0">
<widget class="QLabel" name="labelAmountAndRoundsText">
<property name="text">
<string>Amount and Rounds:</string>
</property>
</widget>
</item>
<item row="3" column="1">
<widget class="QLabel" name="labelAmountRounds">
<property name="text">
<string>0 DASH / 0 Rounds</string>
</property>
</widget>
</item>
<item row="4" column="0">
<widget class="QLabel" name="labelSubmittedDenomText">
<property name="text">
<string>Submitted Denom:</string>
</property>
</widget>
</item>
<item row="4" column="1">
<widget class="QLabel" name="labelSubmittedDenom">
<property name="toolTip">
<string>The denominations you submitted to the Masternode.&lt;br&gt;To mix, other users must submit the exact same denominations.</string>
</property>
<property name="text">
<string>n/a</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QWidget" name="layoutWidgetLastMessageAndButtons">
<layout class="QVBoxLayout" name="VerticalLayout_PS">
<item>
<widget class="QLabel" name="labelPrivateSendLastMessage">
<property name="text">
<string>(Last Message)</string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="togglePrivateSend">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>Start/Stop Mixing</string>
</property>
</widget>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_debugbuttons">
<item>
<widget class="QPushButton" name="privateSendAuto">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="toolTip">
<string>Try to manually submit a PrivateSend request.</string>
</property>
<property name="text">
<string>Try Mix</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="privateSendReset">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="toolTip">
<string>Reset the current status of PrivateSend (can interrupt PrivateSend if it's in the process of Mixing, which can cost you money!)</string>
</property>
<property name="autoFillBackground">
<bool>false</bool>
</property>
<property name="text">
<string>Reset</string>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</widget>
</item>
</layout>
</widget>
</item>
<item>

View File

@ -197,6 +197,7 @@ void OptionsDialog::setMapper()
/* Wallet */
mapper->addMapping(ui->spendZeroConfChange, OptionsModel::SpendZeroConfChange);
mapper->addMapping(ui->showMasternodesTab, OptionsModel::ShowMasternodesTab);
mapper->addMapping(ui->showAdvancedPSUI, OptionsModel::ShowAdvancedPSUI);
mapper->addMapping(ui->coinControlFeatures, OptionsModel::CoinControlFeatures);
mapper->addMapping(ui->privateSendRounds, OptionsModel::PrivateSendRounds);
mapper->addMapping(ui->anonymizeDash, OptionsModel::AnonymizeDashAmount);

View File

@ -84,6 +84,10 @@ void OptionsModel::Init(bool resetSettings)
if (!settings.contains("fShowMasternodesTab"))
settings.setValue("fShowMasternodesTab", masternodeConfig.getCount());
if (!settings.contains("fShowAdvancedPSUI"))
settings.setValue("fShowAdvancedPSUI", false);
fShowAdvancedPSUI = settings.value("fShowAdvancedPSUI", false).toBool();
// These are shared with the core or have a command-line parameter
// and we want command-line parameters to overwrite the GUI settings.
//
@ -110,7 +114,7 @@ void OptionsModel::Init(bool resetSettings)
if (!SoftSetBoolArg("-spendzeroconfchange", settings.value("bSpendZeroConfChange").toBool()))
addOverriddenOption("-spendzeroconfchange");
// Darksend
// PrivateSend
if (!settings.contains("nPrivateSendRounds"))
settings.setValue("nPrivateSendRounds", 2);
if (!SoftSetArg("-privatesendrounds", settings.value("nPrivateSendRounds").toString().toStdString()))
@ -239,6 +243,8 @@ QVariant OptionsModel::data(const QModelIndex & index, int role) const
#ifdef ENABLE_WALLET
case SpendZeroConfChange:
return settings.value("bSpendZeroConfChange");
case ShowAdvancedPSUI:
return fShowAdvancedPSUI;
case PrivateSendRounds:
return settings.value("nPrivateSendRounds");
case AnonymizeDashAmount:
@ -367,12 +373,17 @@ bool OptionsModel::setData(const QModelIndex & index, const QVariant & value, in
setRestartRequired(true);
}
break;
case ShowAdvancedPSUI:
fShowAdvancedPSUI = value.toBool();
settings.setValue("fShowAdvancedPSUI", fShowAdvancedPSUI);
Q_EMIT advancedPSUIChanged(fShowAdvancedPSUI);
break;
case PrivateSendRounds:
if (settings.value("nPrivateSendRounds") != value)
{
nPrivateSendRounds = value.toInt();
settings.setValue("nPrivateSendRounds", nPrivateSendRounds);
Q_EMIT darksendRoundsChanged();
Q_EMIT privateSendRoundsChanged();
}
break;
case AnonymizeDashAmount:

View File

@ -46,6 +46,7 @@ public:
ThreadsScriptVerif, // int
DatabaseCache, // int
SpendZeroConfChange, // bool
ShowAdvancedPSUI, // bool
PrivateSendRounds, // int
AnonymizeDashAmount, // int
ShowMasternodesTab, // bool
@ -69,6 +70,7 @@ public:
QString getThirdPartyTxUrls() { return strThirdPartyTxUrls; }
bool getProxySettings(QNetworkProxy& proxy) const;
bool getCoinControlFeatures() { return fCoinControlFeatures; }
bool getShowAdvancedPSUI() { return fShowAdvancedPSUI; }
const QString& getOverriddenByCommandLine() { return strOverriddenByCommandLine; }
/* Restart flag helper */
@ -84,6 +86,7 @@ private:
int nDisplayUnit;
QString strThirdPartyTxUrls;
bool fCoinControlFeatures;
bool fShowAdvancedPSUI;
/* settings that were overriden by command-line */
QString strOverriddenByCommandLine;
@ -92,8 +95,9 @@ private:
Q_SIGNALS:
void displayUnitChanged(int unit);
void darksendRoundsChanged();
void privateSendRoundsChanged();
void anonymizeDashAmountChanged();
void advancedPSUIChanged(bool);
void coinControlFeaturesChanged(bool);
};

View File

@ -142,28 +142,28 @@ OverviewPage::OverviewPage(const PlatformStyle *platformStyle, QWidget *parent)
connect(ui->listTransactions, SIGNAL(clicked(QModelIndex)), this, SLOT(handleTransactionClicked(QModelIndex)));
// init "out of sync" warning labels
ui->labelWalletStatus->setText("(" + tr("out of sync") + ")");
ui->labelDarksendSyncStatus->setText("(" + tr("out of sync") + ")");
ui->labelTransactionsStatus->setText("(" + tr("out of sync") + ")");
ui->labelWalletStatus->setText("(" + tr("out of sync") + ")");
ui->labelPrivateSendSyncStatus->setText("(" + tr("out of sync") + ")");
ui->labelTransactionsStatus->setText("(" + tr("out of sync") + ")");
if(fLiteMode){
ui->frameDarksend->setVisible(false);
ui->framePrivateSend->setVisible(false);
} else {
updateAdvancedPSUI(false);
if(fMasterNode){
ui->toggleDarksend->setText("(" + tr("Disabled") + ")");
ui->darksendAuto->setText("(" + tr("Disabled") + ")");
ui->darksendReset->setText("(" + tr("Disabled") + ")");
ui->frameDarksend->setEnabled(false);
ui->togglePrivateSend->setText("(" + tr("Disabled") + ")");
ui->privateSendAuto->setText("(" + tr("Disabled") + ")");
ui->privateSendReset->setText("(" + tr("Disabled") + ")");
ui->framePrivateSend->setEnabled(false);
} else {
if(!fEnablePrivateSend){
ui->toggleDarksend->setText(tr("Start Mixing"));
ui->togglePrivateSend->setText(tr("Start Mixing"));
} else {
ui->toggleDarksend->setText(tr("Stop Mixing"));
ui->togglePrivateSend->setText(tr("Stop Mixing"));
}
timer = new QTimer(this);
connect(timer, SIGNAL(timeout()), this, SLOT(darkSendStatus()));
connect(timer, SIGNAL(timeout()), this, SLOT(privateSendStatus()));
timer->start(1000);
}
}
@ -180,7 +180,7 @@ void OverviewPage::handleTransactionClicked(const QModelIndex &index)
OverviewPage::~OverviewPage()
{
if(!fLiteMode && !fMasterNode) disconnect(timer, SIGNAL(timeout()), this, SLOT(darkSendStatus()));
if(!fLiteMode && !fMasterNode) disconnect(timer, SIGNAL(timeout()), this, SLOT(privateSendStatus()));
delete ui;
}
@ -213,7 +213,7 @@ void OverviewPage::setBalance(const CAmount& balance, const CAmount& unconfirmed
ui->labelImmatureText->setVisible(showImmature || showWatchOnlyImmature);
ui->labelWatchImmature->setVisible(showWatchOnlyImmature); // show watch-only immature balance
updateDarksendProgress();
updatePrivateSendProgress();
static int cachedTxLocks = 0;
@ -278,12 +278,14 @@ void OverviewPage::setWalletModel(WalletModel *model)
connect(model, SIGNAL(balanceChanged(CAmount,CAmount,CAmount,CAmount,CAmount,CAmount,CAmount)), this, SLOT(setBalance(CAmount,CAmount,CAmount,CAmount,CAmount,CAmount,CAmount)));
connect(model->getOptionsModel(), SIGNAL(displayUnitChanged(int)), this, SLOT(updateDisplayUnit()));
connect(model->getOptionsModel(), SIGNAL(darksendRoundsChanged()), this, SLOT(updateDarksendProgress()));
connect(model->getOptionsModel(), SIGNAL(anonymizeDashAmountChanged()), this, SLOT(updateDarksendProgress()));
connect(model->getOptionsModel(), SIGNAL(privateSendRoundsChanged()), this, SLOT(updatePrivateSendProgress()));
connect(model->getOptionsModel(), SIGNAL(anonymizeDashAmountChanged()), this, SLOT(updatePrivateSendProgress()));
connect(model->getOptionsModel(), SIGNAL(advancedPSUIChanged(bool)), this, SLOT(updateAdvancedPSUI(bool)));
updateAdvancedPSUI(model->getOptionsModel()->getShowAdvancedPSUI());
connect(ui->darksendAuto, SIGNAL(clicked()), this, SLOT(darksendAuto()));
connect(ui->darksendReset, SIGNAL(clicked()), this, SLOT(darksendReset()));
connect(ui->toggleDarksend, SIGNAL(clicked()), this, SLOT(toggleDarksend()));
connect(ui->privateSendAuto, SIGNAL(clicked()), this, SLOT(privateSendAuto()));
connect(ui->privateSendReset, SIGNAL(clicked()), this, SLOT(privateSendReset()));
connect(ui->togglePrivateSend, SIGNAL(clicked()), this, SLOT(togglePrivateSend()));
updateWatchOnlyLabels(model->haveWatchOnly());
connect(model, SIGNAL(notifyWatchonlyChanged(bool)), this, SLOT(updateWatchOnlyLabels(bool)));
}
@ -317,11 +319,11 @@ void OverviewPage::updateAlerts(const QString &warnings)
void OverviewPage::showOutOfSyncWarning(bool fShow)
{
ui->labelWalletStatus->setVisible(fShow);
ui->labelDarksendSyncStatus->setVisible(fShow);
ui->labelPrivateSendSyncStatus->setVisible(fShow);
ui->labelTransactionsStatus->setVisible(fShow);
}
void OverviewPage::updateDarksendProgress()
void OverviewPage::updatePrivateSendProgress()
{
if(!masternodeSync.IsBlockchainSynced() || ShutdownRequested()) return;
@ -332,8 +334,8 @@ void OverviewPage::updateDarksendProgress()
if(currentBalance == 0)
{
ui->darksendProgress->setValue(0);
ui->darksendProgress->setToolTip(tr("No inputs detected"));
ui->privateSendProgress->setValue(0);
ui->privateSendProgress->setToolTip(tr("No inputs detected"));
// when balance is zero just show info from settings
strAnonymizeDashAmount = strAnonymizeDashAmount.remove(strAnonymizeDashAmount.indexOf("."), BitcoinUnits::decimals(nDisplayUnit) + 1);
@ -416,7 +418,7 @@ void OverviewPage::updateDarksendProgress()
float progress = denomPartCalc + anonNormPartCalc + anonFullPartCalc;
if(progress >= 100) progress = 100;
ui->darksendProgress->setValue(progress);
ui->privateSendProgress->setValue(progress);
QString strToolPip = ("<b>" + tr("Overall progress") + ": %1%</b><br/>" +
tr("Denominated") + ": %2%<br/>" +
@ -425,11 +427,20 @@ void OverviewPage::updateDarksendProgress()
tr("Denominated inputs have %5 of %n rounds on average", "", nPrivateSendRounds))
.arg(progress).arg(denomPart).arg(anonNormPart).arg(anonFullPart)
.arg(nAverageAnonymizedRounds);
ui->darksendProgress->setToolTip(strToolPip);
ui->privateSendProgress->setToolTip(strToolPip);
}
void OverviewPage::updateAdvancedPSUI(bool fShowAdvancedPSUI) {
ui->labelCompletitionText->setVisible(fShowAdvancedPSUI);
ui->privateSendProgress->setVisible(fShowAdvancedPSUI);
ui->labelSubmittedDenomText->setVisible(fShowAdvancedPSUI);
ui->labelSubmittedDenom->setVisible(fShowAdvancedPSUI);
ui->privateSendAuto->setVisible(fShowAdvancedPSUI);
ui->privateSendReset->setVisible(fShowAdvancedPSUI);
ui->labelPrivateSendLastMessage->setVisible(fShowAdvancedPSUI);
}
void OverviewPage::darkSendStatus()
void OverviewPage::privateSendStatus()
{
if(!masternodeSync.IsBlockchainSynced() || ShutdownRequested()) return;
@ -444,11 +455,11 @@ void OverviewPage::darkSendStatus()
if(nBestHeight != darkSendPool.cachedNumBlocks)
{
darkSendPool.cachedNumBlocks = nBestHeight;
updateDarksendProgress();
updatePrivateSendProgress();
ui->darksendEnabled->setText(tr("Disabled"));
ui->darksendStatus->setText("");
ui->toggleDarksend->setText(tr("Start Mixing"));
ui->labelPrivateSendEnabled->setText(tr("Disabled"));
ui->labelPrivateSendLastMessage->setText("");
ui->togglePrivateSend->setText(tr("Start Mixing"));
}
return;
@ -459,19 +470,19 @@ void OverviewPage::darkSendStatus()
{
// Balance and number of transactions might have changed
darkSendPool.cachedNumBlocks = nBestHeight;
updateDarksendProgress();
updatePrivateSendProgress();
ui->darksendEnabled->setText(tr("Enabled"));
ui->labelPrivateSendEnabled->setText(tr("Enabled"));
}
QString strStatus = QString(darkSendPool.GetStatus().c_str());
QString s = tr("Last PrivateSend message:\n") + strStatus;
if(s != ui->darksendStatus->text())
if(s != ui->labelPrivateSendLastMessage->text())
LogPrintf("Last PrivateSend message: %s\n", strStatus.toStdString());
ui->darksendStatus->setText(s);
ui->labelPrivateSendLastMessage->setText(s);
if(darkSendPool.sessionDenom == 0){
ui->labelSubmittedDenom->setText(tr("N/A"));
@ -484,11 +495,11 @@ void OverviewPage::darkSendStatus()
}
void OverviewPage::darksendAuto(){
void OverviewPage::privateSendAuto(){
darkSendPool.DoAutomaticDenominating();
}
void OverviewPage::darksendReset(){
void OverviewPage::privateSendReset(){
darkSendPool.Reset();
QMessageBox::warning(this, tr("PrivateSend"),
@ -496,7 +507,7 @@ void OverviewPage::darksendReset(){
QMessageBox::Ok, QMessageBox::Ok);
}
void OverviewPage::toggleDarksend(){
void OverviewPage::togglePrivateSend(){
QSettings settings;
// Popup some information on first mixing
QString hasMixed = settings.value("hasMixed").toString();
@ -539,10 +550,10 @@ void OverviewPage::toggleDarksend(){
darkSendPool.cachedNumBlocks = std::numeric_limits<int>::max();
if(!fEnablePrivateSend){
ui->toggleDarksend->setText(tr("Start Mixing"));
ui->togglePrivateSend->setText(tr("Start Mixing"));
darkSendPool.UnlockCoins();
} else {
ui->toggleDarksend->setText(tr("Stop Mixing"));
ui->togglePrivateSend->setText(tr("Stop Mixing"));
/* show darksend configuration if client has defaults set */

View File

@ -37,7 +37,7 @@ public:
void showOutOfSyncWarning(bool fShow);
public Q_SLOTS:
void darkSendStatus();
void privateSendStatus();
void setBalance(const CAmount& balance, const CAmount& unconfirmedBalance, const CAmount& immatureBalance, const CAmount& anonymizedBalance,
const CAmount& watchOnlyBalance, const CAmount& watchUnconfBalance, const CAmount& watchImmatureBalance);
@ -62,11 +62,12 @@ private:
TransactionFilterProxy *filter;
private Q_SLOTS:
void toggleDarksend();
void darksendAuto();
void darksendReset();
void togglePrivateSend();
void privateSendAuto();
void privateSendReset();
void updateDisplayUnit();
void updateDarksendProgress();
void updatePrivateSendProgress();
void updateAdvancedPSUI(bool fShowAdvancedPSUI);
void handleTransactionClicked(const QModelIndex &index);
void updateAlerts(const QString &warnings);
void updateWatchOnlyLabels(bool showWatchOnly);

View File

@ -914,18 +914,21 @@ font-size:12px;
margin-left:16px;
}
/* DARKSEND WIDGET */
/* PRIVATESEND WIDGET */
QWidget .QFrame#frameDarksend { /* Darksend Widget */
QWidget .QFrame#framePrivateSend { /* PrivateSend Widget */
background-color:transparent;
qproperty-minimumSize: 451px 343px;
max-width: 451px;
min-width: 451px;
max-height: 350px;
}
QWidget .QFrame#frameDarksend QWidget {
qproperty-geometry: rect(10 0 431 35);
QWidget .QFrame#framePrivateSend .QWidget#layoutWidgetPrivateSendHeader { /* PrivateSend Header */
max-width: 421px;
min-width: 421px;
}
QWidget .QFrame#frameDarksend .QLabel#label_2 { /* Darksend Header */
QWidget .QFrame#framePrivateSend .QLabel#labelPrivateSendHeader { /* PrivateSend Header */
qproperty-alignment: 'AlignVCenter | AlignRight';
min-width:160px;
background-color: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 #000000, stop: .4 #444444, stop: .6 #444444, stop: 1 #000000);
@ -936,24 +939,26 @@ padding-right:5px;
font-weight:bold;
font-size:14px;
min-height:35px;
max-height:35px;
}
/******************************************************************/
QWidget .QFrame#frameDarksend .QLabel#labelDarksendSyncStatus { /* Darksend Sync Status */
QWidget .QFrame#framePrivateSend .QLabel#labelPrivateSendSyncStatus { /* PrivateSend Sync Status */
qproperty-alignment: 'AlignVCenter | AlignLeft';
margin-left:2px;
}
QWidget .QFrame#frameDarksend #formLayoutWidget {
qproperty-geometry: rect(10 51 451 175);
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget {
max-width: 451px;
max-height: 175px;
}
QWidget .QFrame#frameDarksend #formLayoutWidget > .QLabel {
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget > .QLabel {
min-width:175px;
font-weight:normal;
min-height:25px;
}
QWidget .QFrame#frameDarksend #formLayoutWidget .QLabel#label_6 { /* Darksend Status Label */
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelPrivateSendEnabledText { /* PrivateSend Status Label */
qproperty-alignment: 'AlignVCenter | AlignRight';
min-width:160px;
background-color:#F0F0F0;
@ -961,11 +966,11 @@ margin-right:5px;
padding-right:5px;
}
QWidget .QFrame#frameDarksend #formLayoutWidget .QLabel#darksendEnabled { /* Darksend Status */
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelPrivateSendEnabled { /* PrivateSend Status */
}
QWidget .QFrame#frameDarksend #formLayoutWidget .QLabel#label_7 { /* Darksend Completion Label */
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelCompletitionText { /* PrivateSend Completion Label */
qproperty-alignment: 'AlignVCenter | AlignRight';
min-width:160px;
background-color:#F0F0F0;
@ -974,7 +979,7 @@ padding-right:5px;
}
QWidget .QFrame#frameDarksend #formLayoutWidget .QProgressBar#darksendProgress { /* Darksend Completion */
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QProgressBar#privateSendProgress { /* PrivateSend Completion */
border: 1px solid #333333;
border-radius: 1px;
margin-right:43px;
@ -982,12 +987,12 @@ text-align: right;
color:#333333;
}
QWidget .QFrame#frameDarksend #formLayoutWidget .QProgressBar#darksendProgress::chunk {
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QProgressBar#privateSendProgress::chunk {
background-color: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 #000000, stop: .4 #EEEEEE, stop: .6 #EEEEEE, stop: 1 #000000);
width:1px;
}
QWidget .QFrame#frameDarksend #formLayoutWidget .QLabel#labelAnonymizedText { /* Darksend Balance Label */
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelAnonymizedText { /* PrivateSend Balance Label */
qproperty-alignment: 'AlignVCenter | AlignRight';
min-width:160px;
background-color:#F0F0F0;
@ -995,11 +1000,11 @@ margin-right:5px;
padding-right:5px;
}
QWidget .QFrame#frameDarksend #formLayoutWidget .QLabel#labelAnonymized { /* Darksend Balance */
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelAnonymized { /* PrivateSend Balance */
}
QWidget .QFrame#frameDarksend #formLayoutWidget .QLabel#label_8 { /* Darksend Amount and Rounds Label */
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelAmountAndRoundsText { /* PrivateSend Amount and Rounds Label */
qproperty-alignment: 'AlignVCenter | AlignRight';
min-width:160px;
background-color:#F0F0F0;
@ -1007,11 +1012,11 @@ margin-right:5px;
padding-right:5px;
}
QWidget .QFrame#frameDarksend #formLayoutWidget .QLabel#labelAmountRounds { /* Darksend Amount and Rounds */
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelAmountRounds { /* PrivateSend Amount and Rounds */
}
QWidget .QFrame#frameDarksend #formLayoutWidget .QLabel#label_9 { /* Darksend Submitted Denom Label */
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelSubmittedDenomText { /* PrivateSend Submitted Denom Label */
qproperty-alignment: 'AlignVCenter | AlignRight';
min-width:160px;
background-color:#F0F0F0;
@ -1019,34 +1024,34 @@ margin-right:5px;
padding-right:5px;
}
QWidget .QFrame#frameDarksend #formLayoutWidget .QLabel#labelSubmittedDenom { /* Darksend Submitted Denom */
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelSubmittedDenom { /* PrivateSend Submitted Denom */
}
QWidget .QFrame#frameDarksend .QLabel#darksendStatus { /* Darksend Status Notifications */
QWidget .QFrame#framePrivateSend .QWidget#layoutWidgetLastMessageAndButtons {
max-width: 451px;
}
QWidget .QFrame#framePrivateSend .QLabel#labelPrivateSendLastMessage { /* PrivateSend Status Notifications */
qproperty-alignment: 'AlignVCenter | AlignCenter';
qproperty-geometry: rect(70 226 395 34);
min-width: 288px;
min-height: 43px;
font-size:11px;
color:#222222;
}
/* DARKSEND BUTTONS */
/* PRIVATESEND BUTTONS */
QWidget .QFrame#frameDarksend .QPushButton { /* Darksend Buttons - General Attributes */
QWidget .QFrame#framePrivateSend .QPushButton { /* PrivateSend Buttons - General Attributes */
border:0px solid #ffffff;
}
QWidget .QFrame#frameDarksend QPushButton:focus {
QWidget .QFrame#framePrivateSend QPushButton:focus {
border:none;
outline:none;
}
QWidget .QFrame#frameDarksend .QPushButton#runAutoDenom { /* No idea why this button is in the .UI file... */
qproperty-geometry: rect(0 0 0 0);
}
QWidget .QFrame#frameDarksend .QPushButton#toggleDarksend { /* Start Darksend Mixing */
qproperty-geometry: rect(115 268 295 40);
QWidget .QFrame#framePrivateSend .QPushButton#togglePrivateSend { /* Start PrivateSend Mixing */
font-size:15px;
font-weight:bold;
color:#000000;
@ -1056,12 +1061,11 @@ padding-top:5px;
padding-bottom:6px;
}
QWidget .QFrame#frameDarksend .QPushButton#toggleDarksend:hover {
QWidget .QFrame#framePrivateSend .QPushButton#togglePrivateSend:hover {
}
QWidget .QFrame#frameDarksend .QPushButton#darksendAuto { /* Try Mix Button */
qproperty-geometry: rect(120 314 140 25);
QWidget .QFrame#framePrivateSend .QPushButton#privateSendAuto { /* Try Mix Button */
background-color: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .05 #222222, stop: .3 #FFFFFF, stop: .7 #FFFFFF, stop: 1 #222222);
border:1px solid #d2d2d2;
color:#616161;
@ -1070,17 +1074,16 @@ font-size:9px;
padding:0px;
}
QWidget .QFrame#frameDarksend .QPushButton#darksendAuto:hover {
QWidget .QFrame#framePrivateSend .QPushButton#privateSendAuto:hover {
background-color: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .05 #222222, stop: .2 #FFFFFF, stop: .6 #FFFFFF, stop: 1 #222222);
color:#000000;
}
QWidget .QFrame#frameDarksend .QPushButton#darksendAuto:pressed {
QWidget .QFrame#framePrivateSend .QPushButton#privateSendAuto:pressed {
border:1px solid #9e9e9e;
}
QWidget .QFrame#frameDarksend .QPushButton#darksendReset { /* Reset Button */
qproperty-geometry: rect(265 314 140 25);
QWidget .QFrame#framePrivateSend .QPushButton#privateSendReset { /* Reset Button */
background-color: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .05 #222222, stop: .3 #FFFFFF, stop: .7 #FFFFFF, stop: 1 #222222);
border:1px solid #d2d2d2;
color:#616161;
@ -1089,12 +1092,12 @@ font-size:9px;
padding:0px;
}
QWidget .QFrame#frameDarksend .QPushButton#darksendReset:hover {
QWidget .QFrame#framePrivateSend .QPushButton#privateSendReset:hover {
background-color: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: .05 #222222, stop: .2 #FFFFFF, stop: .6 #FFFFFF, stop: 1 #222222);
color:#000000;
}
QWidget .QFrame#frameDarksend .QPushButton#darksendReset:pressed {
QWidget .QFrame#framePrivateSend .QPushButton#privateSendReset:pressed {
border:1px solid #9e9e9e;
}
@ -1215,7 +1218,7 @@ QDialog#SendCoinsDialog .QPushButton#addButton:pressed {
}
QDialog#SendCoinsDialog .QCheckBox#checkUseDarksend { /* Darksend Checkbox */
QDialog#SendCoinsDialog .QCheckBox#checkUseDarksend { /* PrivateSend Checkbox */
color:#555555;
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));

View File

@ -892,18 +892,21 @@ font-size:12px;
margin-left:16px;
}
/* DARKSEND WIDGET */
/* PRIVATESEND WIDGET */
QWidget .QFrame#frameDarksend { /* Darksend Widget */
QWidget .QFrame#framePrivateSend { /* PrivateSend Widget */
background-color:transparent;
qproperty-minimumSize: 451px 343px;
max-width: 451px;
min-width: 451px;
max-height: 350px;
}
QWidget .QFrame#frameDarksend QWidget {
qproperty-geometry: rect(10 0 431 35);
QWidget .QFrame#framePrivateSend .QWidget#layoutWidgetPrivateSendHeader { /* PrivateSend Header */
max-width: 421px;
min-width: 421px;
}
QWidget .QFrame#frameDarksend .QLabel#label_2 { /* Darksend Header */
QWidget .QFrame#framePrivateSend .QLabel#labelPrivateSendHeader { /* PrivateSend Header */
qproperty-alignment: 'AlignVCenter | AlignRight';
min-width:160px;
background-color:#56ABD8;
@ -913,24 +916,26 @@ padding-right:5px;
font-weight:bold;
font-size:14px;
min-height:35px;
max-height:35px;
}
/******************************************************************/
QWidget .QFrame#frameDarksend .QLabel#labelDarksendSyncStatus { /* Darksend Sync Status */
QWidget .QFrame#framePrivateSend .QLabel#labelPrivateSendSyncStatus { /* PrivateSend Sync Status */
qproperty-alignment: 'AlignVCenter | AlignLeft';
margin-left:2px;
}
QWidget .QFrame#frameDarksend #formLayoutWidget {
qproperty-geometry: rect(10 51 451 175);
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget {
max-width: 451px;
max-height: 175px;
}
QWidget .QFrame#frameDarksend #formLayoutWidget > .QLabel {
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget > .QLabel {
min-width:175px;
font-weight:normal;
min-height:25px;
}
QWidget .QFrame#frameDarksend #formLayoutWidget .QLabel#label_6 { /* Darksend Status Label */
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelPrivateSendEnabledText { /* PrivateSend Status Label */
qproperty-alignment: 'AlignVCenter | AlignRight';
min-width:160px;
background-color:#F8F6F6;
@ -938,11 +943,11 @@ margin-right:5px;
padding-right:5px;
}
QWidget .QFrame#frameDarksend #formLayoutWidget .QLabel#darksendEnabled { /* Darksend Status */
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelPrivateSendEnabled { /* PrivateSend Status */
}
QWidget .QFrame#frameDarksend #formLayoutWidget .QLabel#label_7 { /* Darksend Completion Label */
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelCompletitionText { /* PrivateSend Completion Label */
qproperty-alignment: 'AlignVCenter | AlignRight';
min-width:160px;
background-color:#F8F6F6;
@ -951,7 +956,7 @@ padding-right:5px;
}
QWidget .QFrame#frameDarksend #formLayoutWidget .QProgressBar#darksendProgress { /* Darksend Completion */
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QProgressBar#privateSendProgress { /* PrivateSend Completion */
border: 1px solid #818181;
border-radius: 1px;
margin-right:43px;
@ -959,12 +964,12 @@ text-align: right;
color:#818181;
}
QWidget .QFrame#frameDarksend #formLayoutWidget .QProgressBar#darksendProgress::chunk {
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QProgressBar#privateSendProgress::chunk {
background-color: #3398CC;
width:1px;
}
QWidget .QFrame#frameDarksend #formLayoutWidget .QLabel#labelAnonymizedText { /* Darksend Balance Label */
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelAnonymizedText { /* PrivateSend Balance Label */
qproperty-alignment: 'AlignVCenter | AlignRight';
min-width:160px;
background-color:#F8F6F6;
@ -972,11 +977,11 @@ margin-right:5px;
padding-right:5px;
}
QWidget .QFrame#frameDarksend #formLayoutWidget .QLabel#labelAnonymized { /* Darksend Balance */
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelAnonymized { /* PrivateSend Balance */
}
QWidget .QFrame#frameDarksend #formLayoutWidget .QLabel#label_8 { /* Darksend Amount and Rounds Label */
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelAmountAndRoundsText { /* PrivateSend Amount and Rounds Label */
qproperty-alignment: 'AlignVCenter | AlignRight';
min-width:160px;
background-color:#F8F6F6;
@ -984,11 +989,11 @@ margin-right:5px;
padding-right:5px;
}
QWidget .QFrame#frameDarksend #formLayoutWidget .QLabel#labelAmountRounds { /* Darksend Amount and Rounds */
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelAmountRounds { /* PrivateSend Amount and Rounds */
}
QWidget .QFrame#frameDarksend #formLayoutWidget .QLabel#label_9 { /* Darksend Submitted Denom Label */
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelSubmittedDenomText { /* PrivateSend Submitted Denom Label */
qproperty-alignment: 'AlignVCenter | AlignRight';
min-width:160px;
background-color:#F8F6F6;
@ -996,34 +1001,34 @@ margin-right:5px;
padding-right:5px;
}
QWidget .QFrame#frameDarksend #formLayoutWidget .QLabel#labelSubmittedDenom { /* Darksend Submitted Denom */
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelSubmittedDenom { /* PrivateSend Submitted Denom */
}
QWidget .QFrame#frameDarksend .QLabel#darksendStatus { /* Darksend Status Notifications */
QWidget .QFrame#framePrivateSend .QWidget#layoutWidgetLastMessageAndButtons {
max-width: 451px;
}
QWidget .QFrame#framePrivateSend .QLabel#labelPrivateSendLastMessage { /* PrivateSend Status Notifications */
qproperty-alignment: 'AlignVCenter | AlignCenter';
qproperty-geometry: rect(70 226 395 34);
min-width: 288px;
min-height: 43px;
font-size:11px;
color:#818181;
}
/* DARKSEND BUTTONS */
/* PRIVATESEND BUTTONS */
QWidget .QFrame#frameDarksend .QPushButton { /* Darksend Buttons - General Attributes */
QWidget .QFrame#framePrivateSend .QPushButton { /* PrivateSend Buttons - General Attributes */
border:0px solid #ffffff;
}
QWidget .QFrame#frameDarksend QPushButton:focus {
QWidget .QFrame#framePrivateSend QPushButton:focus {
border:none;
outline:none;
}
QWidget .QFrame#frameDarksend .QPushButton#runAutoDenom { /* No idea why this button is in the .UI file... */
qproperty-geometry: rect(0 0 0 0);
}
QWidget .QFrame#frameDarksend .QPushButton#toggleDarksend { /* Start Darksend Mixing */
qproperty-geometry: rect(115 268 295 40);
QWidget .QFrame#framePrivateSend .QPushButton#togglePrivateSend { /* Start PrivateSend Mixing */
font-size:15px;
font-weight:bold;
color:#ffffff;
@ -1033,12 +1038,11 @@ padding-top:5px;
padding-bottom:6px;
}
QWidget .QFrame#frameDarksend .QPushButton#toggleDarksend:hover {
QWidget .QFrame#framePrivateSend .QPushButton#togglePrivateSend:hover {
}
QWidget .QFrame#frameDarksend .QPushButton#darksendAuto { /* Try Mix Button */
qproperty-geometry: rect(120 314 140 25);
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;
@ -1047,17 +1051,16 @@ font-size:9px;
padding:0px;
}
QWidget .QFrame#frameDarksend .QPushButton#darksendAuto:hover {
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#frameDarksend .QPushButton#darksendAuto:pressed {
QWidget .QFrame#framePrivateSend .QPushButton#privateSendAuto:pressed {
border:1px solid #9e9e9e;
}
QWidget .QFrame#frameDarksend .QPushButton#darksendReset { /* Reset Button */
qproperty-geometry: rect(265 314 140 25);
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;
@ -1066,12 +1069,12 @@ font-size:9px;
padding:0px;
}
QWidget .QFrame#frameDarksend .QPushButton#darksendReset:hover {
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#frameDarksend .QPushButton#darksendReset:pressed {
QWidget .QFrame#framePrivateSend .QPushButton#privateSendReset:pressed {
border:1px solid #9e9e9e;
}
@ -1199,7 +1202,7 @@ QDialog#SendCoinsDialog .QPushButton#addButton:pressed {
border:1px solid #9e9e9e;
}
QDialog#SendCoinsDialog .QCheckBox#checkUseDarksend { /* Darksend Checkbox */
QDialog#SendCoinsDialog .QCheckBox#checkUseDarksend { /* 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));

View File

@ -897,45 +897,52 @@ font-size:12px;
margin-left:16px;
}
/* DARKSEND WIDGET */
/* PRIVATESEND WIDGET */
QWidget .QFrame#frameDarksend { /* Darksend Widget */
QWidget .QFrame#framePrivateSend { /* PrivateSend Widget */
background-color:transparent;
qproperty-minimumSize: 451px 353px;
max-width: 451px;
min-width: 451px;
max-height: 350px;
}
QWidget .QFrame#frameDarksend QWidget {
qproperty-geometry: rect(10 0 431 35);
QWidget .QFrame#framePrivateSend .QWidget#layoutWidgetPrivateSendHeader { /* PrivateSend Header */
max-width: 421px;
min-width: 421px;
}
QWidget .QFrame#frameDarksend .QLabel#label_2 { /* Darksend Header */
QWidget .QFrame#framePrivateSend .QLabel#labelPrivateSendHeader { /* PrivateSend Header */
qproperty-alignment: 'AlignVCenter | AlignCenter';
min-width:451px;
max-width: 421px;
min-width: 421px;
background-color:#1c75bc;
color:#fff;
margin-right:5px;
padding-right:5px;
margin-right: 5px;
padding-right: 5px;
font-weight:bold;
font-size:14px;
min-height:35px;
max-height:35px;
}
/******************************************************************/
QWidget .QFrame#frameDarksend .QLabel#labelDarksendSyncStatus { /* Darksend Sync Status */
QWidget .QFrame#framePrivateSend .QLabel#labelPrivateSendSyncStatus { /* PrivateSend Sync Status */
qproperty-alignment: 'AlignVCenter | AlignLeft';
margin-left:2px;
padding-right:5px;
}
QWidget .QFrame#frameDarksend #formLayoutWidget {
qproperty-geometry: rect(10 51 451 175);
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget {
max-width: 451px;
max-height: 175px;
}
QWidget .QFrame#frameDarksend #formLayoutWidget > .QLabel {
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget > .QLabel {
min-width:175px;
font-weight:normal;
min-height:25px;
}
QWidget .QFrame#frameDarksend #formLayoutWidget .QLabel#label_6 { /* Darksend Status Label */
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelPrivateSendEnabledText { /* PrivateSend Enabled Status Label */
qproperty-alignment: 'AlignVCenter | AlignRight';
min-width:160px;
background-color:#F8F6F6;
@ -943,11 +950,11 @@ margin-right:5px;
padding-right:5px;
}
QWidget .QFrame#frameDarksend #formLayoutWidget .QLabel#darksendEnabled { /* Darksend Status */
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelPrivateSendEnabled { /* PrivateSend Enabled Status */
}
QWidget .QFrame#frameDarksend #formLayoutWidget .QLabel#label_7 { /* Darksend Completion Label */
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelCompletitionText { /* PrivateSend Completion Label */
qproperty-alignment: 'AlignVCenter | AlignRight';
min-width:160px;
background-color:#F8F6F6;
@ -956,7 +963,7 @@ padding-right:5px;
}
QWidget .QFrame#frameDarksend #formLayoutWidget .QProgressBar#darksendProgress { /* Darksend Completion */
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QProgressBar#privateSendProgress { /* PrivateSend Completion */
border: 1px solid #818181;
border-radius: 1px;
margin-right:43px;
@ -964,12 +971,12 @@ text-align: right;
color:#818181;
}
QWidget .QFrame#frameDarksend #formLayoutWidget .QProgressBar#darksendProgress::chunk {
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QProgressBar#privateSendProgress::chunk {
background-color: #1c75bc;
width:1px;
}
QWidget .QFrame#frameDarksend #formLayoutWidget .QLabel#labelAnonymizedText { /* Darksend Balance Label */
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelAnonymizedText { /* PrivateSend Balance Label */
qproperty-alignment: 'AlignVCenter | AlignRight';
min-width:160px;
background-color:#F8F6F6;
@ -977,11 +984,11 @@ margin-right:5px;
padding-right:5px;
}
QWidget .QFrame#frameDarksend #formLayoutWidget .QLabel#labelAnonymized { /* Darksend Balance */
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelAnonymized { /* PrivateSend Balance */
}
QWidget .QFrame#frameDarksend #formLayoutWidget .QLabel#label_8 { /* Darksend Amount and Rounds Label */
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelAmountAndRoundsText { /* PrivateSend Amount and Rounds Label */
qproperty-alignment: 'AlignVCenter | AlignRight';
min-width:160px;
background-color:#F8F6F6;
@ -989,11 +996,11 @@ margin-right:5px;
padding-right:5px;
}
QWidget .QFrame#frameDarksend #formLayoutWidget .QLabel#labelAmountRounds { /* Darksend Amount and Rounds */
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelAmountRounds { /* PrivateSend Amount and Rounds */
}
QWidget .QFrame#frameDarksend #formLayoutWidget .QLabel#label_9 { /* Darksend Submitted Denom Label */
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelSubmittedDenomText { /* PrivateSend Submitted Denom Label */
qproperty-alignment: 'AlignVCenter | AlignRight';
min-width:160px;
background-color:#F8F6F6;
@ -1001,34 +1008,35 @@ margin-right:5px;
padding-right:5px;
}
QWidget .QFrame#frameDarksend #formLayoutWidget .QLabel#labelSubmittedDenom { /* Darksend Submitted Denom */
QWidget .QFrame#framePrivateSend #privateSendFormLayoutWidget .QLabel#labelSubmittedDenom { /* PrivateSend Submitted Denom */
}
QWidget .QFrame#frameDarksend .QLabel#darksendStatus { /* Darksend Status Notifications */
QWidget .QFrame#framePrivateSend .QWidget#layoutWidgetLastMessageAndButtons {
max-width: 451px;
}
QWidget .QFrame#framePrivateSend .QLabel#labelPrivateSendLastMessage { /* PrivateSend Status Notifications */
qproperty-alignment: 'AlignVCenter | AlignCenter';
qproperty-geometry: rect(9 226 441 34);
min-width: 288px;
min-height: 43px;
font-size:11px;
color:#818181;
}
/* DARKSEND BUTTONS */
/* PRIVATESEND BUTTONS */
QWidget .QFrame#frameDarksend .QPushButton { /* Darksend Buttons - General Attributes */
QWidget .QFrame#framePrivateSend .QPushButton { /* PrivateSend Buttons - General Attributes */
border:0px solid #ffffff;
}
QWidget .QFrame#frameDarksend QPushButton:focus {
QWidget .QFrame#framePrivateSend QPushButton:focus {
border:none;
outline:none;
}
QWidget .QFrame#frameDarksend .QPushButton#runAutoDenom { /* No idea why this button is in the .UI file... */
qproperty-geometry: rect(0 0 0 0);
}
QWidget .QFrame#frameDarksend .QPushButton#toggleDarksend { /* Start Darksend Mixing */
qproperty-geometry: rect(9 268 441 40);
QWidget .QFrame#framePrivateSend .QPushButton#togglePrivateSend { /* Start PrivateSend Mixing */
min-height: 40px;
font-size:15px;
font-weight:normal;
color:#ffffff;
@ -1038,12 +1046,11 @@ padding-top:5px;
padding-bottom:6px;
}
QWidget .QFrame#frameDarksend .QPushButton#toggleDarksend:hover {
QWidget .QFrame#framePrivateSend .QPushButton#togglePrivateSend:hover {
}
QWidget .QFrame#frameDarksend .QPushButton#darksendAuto { /* Try Mix Button */
qproperty-geometry: rect(9 314 220 30);
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;
@ -1052,17 +1059,16 @@ font-size:9px;
padding:0px;
}
QWidget .QFrame#frameDarksend .QPushButton#darksendAuto:hover {
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#frameDarksend .QPushButton#darksendAuto:pressed {
QWidget .QFrame#framePrivateSend .QPushButton#privateSendAuto:pressed {
border:1px solid #9e9e9e;
}
QWidget .QFrame#frameDarksend .QPushButton#darksendReset { /* Reset Button */
qproperty-geometry: rect(232 314 220 30);
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;
@ -1071,12 +1077,12 @@ font-size:9px;
padding:0px;
}
QWidget .QFrame#frameDarksend .QPushButton#darksendReset:hover {
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#frameDarksend .QPushButton#darksendReset:pressed {
QWidget .QFrame#framePrivateSend .QPushButton#privateSendReset:pressed {
border:1px solid #9e9e9e;
}
@ -1205,7 +1211,7 @@ QDialog#SendCoinsDialog .QPushButton#addButton:pressed {
border:1px solid #9e9e9e;
}
QDialog#SendCoinsDialog .QCheckBox#checkUseDarksend { /* Darksend Checkbox */
QDialog#SendCoinsDialog .QCheckBox#checkUseDarksend { /* 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));