connect(ui->btn_resetCoinControl, &QPushButton::clicked, [this]{
m_ctx->setSelectedInputs({});
});
+
+ m_walletUnlockWidget = new WalletUnlockWidget(this);
+ m_walletUnlockWidget->setWalletName(this->walletName());
+ ui->walletUnlockLayout->addWidget(m_walletUnlockWidget);
+
+ connect(m_walletUnlockWidget, &WalletUnlockWidget::closeWallet, this, &MainWindow::close);
+ connect(m_walletUnlockWidget, &WalletUnlockWidget::unlockWallet, this, &MainWindow::unlockWallet);
+
+ ui->stackedWidget->setCurrentIndex(0);
}
void MainWindow::initMenu() {
// [File]
connect(ui->actionOpen, &QAction::triggered, this, &MainWindow::menuOpenClicked);
connect(ui->actionNew_Restore, &QAction::triggered, this, &MainWindow::menuNewRestoreClicked);
+ connect(ui->actionLock, &QAction::triggered, this, &MainWindow::lockWallet);
connect(ui->actionClose, &QAction::triggered, this, &MainWindow::menuWalletCloseClicked); // Close current wallet
connect(ui->actionQuit, &QAction::triggered, this, &MainWindow::menuQuitClicked); // Quit application
connect(ui->actionSettings, &QAction::triggered, this, &MainWindow::menuSettingsClicked);
ui->actionRefresh_tabs->setShortcut(QKeySequence("Ctrl+R"));
ui->actionOpen->setShortcut(QKeySequence("Ctrl+O"));
ui->actionNew_Restore->setShortcut(QKeySequence("Ctrl+N"));
+ ui->actionLock->setShortcut(QKeySequence("Ctrl+L"));
ui->actionClose->setShortcut(QKeySequence("Ctrl+W"));
ui->actionShow_debug_info->setShortcut(QKeySequence("Ctrl+D"));
ui->actionSettings->setShortcut(QKeySequence("Ctrl+Alt+S"));
m_userLastActive = QDateTime::currentSecsSinceEpoch();
}
+void MainWindow::closeQDialogChildren(QObject *object) {
+ for (QObject *child : object->children()) {
+ if (auto *childDlg = dynamic_cast<QDialog*>(child)) {
+ qDebug() << "Closing dialog: " << childDlg->objectName();
+ childDlg->close();
+ }
+ this->closeQDialogChildren(child);
+ }
+}
+
void MainWindow::checkUserActivity() {
if (!config()->get(Config::inactivityLockEnabled).toBool()) {
return;
}
if ((m_userLastActive + (config()->get(Config::inactivityLockTimeout).toInt()*60)) < QDateTime::currentSecsSinceEpoch()) {
- m_checkUserActivity.stop();
qInfo() << "Locking wallet for inactivity";
- ui->tabWidget->hide();
- this->statusBar()->hide();
- this->menuBar()->hide();
- if (!this->verifyPassword(false)) {
- this->setEnabled(false);
- this->close();
- // This doesn't close the wallet immediately.
- // FIXME
-#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
- do {
-#endif
- QApplication::processEvents();
-#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
- // Because running it a single time is apparently not enough.
- // TODO: Qt bug? Need proper fix for this.
- } while (QApplication::hasPendingEvents());
-#endif
- } else {
- ui->tabWidget->show();
- this->statusBar()->show();
- this->menuBar()->show();
- m_checkUserActivity.start();
- }
+ this->lockWallet();
+ }
+}
+
+void MainWindow::lockWallet() {
+ if (m_locked) {
+ return;
}
+
+ if (m_constructingTransaction) {
+ QMessageBox::warning(this, "Lock wallet", "Unable to lock wallet during transaction construction");
+ return;
+ }
+ m_walletUnlockWidget->reset();
+
+ // Close all open QDialogs
+ this->closeQDialogChildren(this);
+
+ ui->tabWidget->hide();
+ this->statusBar()->hide();
+ this->menuBar()->hide();
+ ui->stackedWidget->setCurrentIndex(1);
+
+ m_checkUserActivity.stop();
+
+ m_locked = true;
+}
+
+void MainWindow::unlockWallet(const QString &password) {
+ if (!m_locked) {
+ return;
+ }
+
+ if (password != m_ctx->wallet->getPassword()) {
+ m_walletUnlockWidget->incorrectPassword();
+ return;
+ }
+ m_walletUnlockWidget->reset();
+
+ ui->tabWidget->show();
+ this->statusBar()->show();
+ this->menuBar()->show();
+ ui->stackedWidget->setCurrentIndex(0);
+
+ m_checkUserActivity.start();
+
+ m_locked = false;
}
void MainWindow::toggleSearchbar(bool visible) {
<property name="horizontalSpacing">
<number>12</number>
</property>
- <item row="1" column="0">
- <widget class="QTabWidget" name="tabWidget">
+ <item row="0" column="0">
+ <widget class="QStackedWidget" name="stackedWidget">
<property name="currentIndex">
- <number>0</number>
+ <number>1</number>
</property>
- <property name="iconSize">
- <size>
- <width>16</width>
- <height>16</height>
- </size>
- </property>
- <widget class="QWidget" name="tabHome">
- <attribute name="icon">
- <iconset resource="assets.qrc">
- <normaloff>:/assets/images/tab_home.png</normaloff>:/assets/images/tab_home.png</iconset>
- </attribute>
- <attribute name="title">
- <string>Home</string>
- </attribute>
- <layout class="QVBoxLayout" name="verticalLayout_3">
+ <widget class="QWidget" name="page_wallet">
+ <layout class="QVBoxLayout" name="verticalLayout_11">
+ <property name="leftMargin">
+ <number>0</number>
+ </property>
+ <property name="topMargin">
+ <number>0</number>
+ </property>
+ <property name="rightMargin">
+ <number>0</number>
+ </property>
<property name="bottomMargin">
- <number>5</number>
+ <number>0</number>
</property>
<item>
- <layout class="QHBoxLayout" name="horizontalLayout">
- <item>
- <layout class="QHBoxLayout" name="tickerLayout"/>
- </item>
- <item>
- <spacer name="horizontalSpacer">
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="sizeHint" stdset="0">
- <size>
- <width>40</width>
- <height>20</height>
- </size>
- </property>
- </spacer>
- </item>
- <item>
- <layout class="QHBoxLayout" name="fiatTickerLayout"/>
- </item>
- </layout>
- </item>
- <item>
- <widget class="Line" name="line">
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QTabWidget" name="tabHomeWidget">
+ <widget class="QTabWidget" name="tabWidget">
<property name="currentIndex">
<number>0</number>
</property>
- <property name="documentMode">
- <bool>true</bool>
+ <property name="iconSize">
+ <size>
+ <width>16</width>
+ <height>16</height>
+ </size>
</property>
- <widget class="QWidget" name="tab">
+ <widget class="QWidget" name="tabHome">
+ <attribute name="icon">
+ <iconset resource="assets.qrc">
+ <normaloff>:/assets/images/tab_home.png</normaloff>:/assets/images/tab_home.png</iconset>
+ </attribute>
<attribute name="title">
- <string>CCS</string>
+ <string>Home</string>
</attribute>
- <layout class="QVBoxLayout" name="verticalLayout_6">
- <property name="leftMargin">
- <number>0</number>
- </property>
- <property name="topMargin">
- <number>0</number>
- </property>
- <property name="rightMargin">
- <number>0</number>
- </property>
+ <layout class="QVBoxLayout" name="verticalLayout_3">
<property name="bottomMargin">
- <number>0</number>
+ <number>5</number>
</property>
<item>
- <widget class="CCSWidget" name="ccsWidget" native="true"/>
+ <layout class="QHBoxLayout" name="horizontalLayout">
+ <item>
+ <layout class="QHBoxLayout" name="tickerLayout"/>
+ </item>
+ <item>
+ <spacer name="horizontalSpacer">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>40</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item>
+ <layout class="QHBoxLayout" name="fiatTickerLayout"/>
+ </item>
+ </layout>
+ </item>
+ <item>
+ <widget class="Line" name="line">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QTabWidget" name="tabHomeWidget">
+ <property name="currentIndex">
+ <number>0</number>
+ </property>
+ <property name="documentMode">
+ <bool>true</bool>
+ </property>
+ <widget class="QWidget" name="tab">
+ <attribute name="title">
+ <string>CCS</string>
+ </attribute>
+ <layout class="QVBoxLayout" name="verticalLayout_6">
+ <property name="leftMargin">
+ <number>0</number>
+ </property>
+ <property name="topMargin">
+ <number>0</number>
+ </property>
+ <property name="rightMargin">
+ <number>0</number>
+ </property>
+ <property name="bottomMargin">
+ <number>0</number>
+ </property>
+ <item>
+ <widget class="CCSWidget" name="ccsWidget" native="true"/>
+ </item>
+ </layout>
+ </widget>
+ <widget class="QWidget" name="tab_4">
+ <attribute name="title">
+ <string>Bounties</string>
+ </attribute>
+ <layout class="QVBoxLayout" name="verticalLayout_10">
+ <property name="leftMargin">
+ <number>0</number>
+ </property>
+ <property name="topMargin">
+ <number>0</number>
+ </property>
+ <property name="rightMargin">
+ <number>0</number>
+ </property>
+ <property name="bottomMargin">
+ <number>0</number>
+ </property>
+ <item>
+ <widget class="BountiesWidget" name="bountiesWidget" native="true"/>
+ </item>
+ </layout>
+ </widget>
+ <widget class="QWidget" name="tab_2">
+ <attribute name="title">
+ <string>/r/Monero</string>
+ </attribute>
+ <layout class="QVBoxLayout" name="verticalLayout_7">
+ <property name="leftMargin">
+ <number>0</number>
+ </property>
+ <property name="topMargin">
+ <number>0</number>
+ </property>
+ <property name="rightMargin">
+ <number>0</number>
+ </property>
+ <property name="bottomMargin">
+ <number>0</number>
+ </property>
+ <item>
+ <widget class="RedditWidget" name="redditWidget" native="true"/>
+ </item>
+ </layout>
+ </widget>
+ <widget class="QWidget" name="tab_3">
+ <attribute name="title">
+ <string>Revuo</string>
+ </attribute>
+ <layout class="QVBoxLayout" name="verticalLayout_9">
+ <property name="leftMargin">
+ <number>0</number>
+ </property>
+ <property name="topMargin">
+ <number>0</number>
+ </property>
+ <property name="rightMargin">
+ <number>0</number>
+ </property>
+ <property name="bottomMargin">
+ <number>0</number>
+ </property>
+ <item>
+ <widget class="RevuoWidget" name="revuoWidget" native="true"/>
+ </item>
+ </layout>
+ </widget>
+ </widget>
</item>
</layout>
</widget>
- <widget class="QWidget" name="tab_4">
+ <widget class="QWidget" name="tabHistory">
+ <attribute name="icon">
+ <iconset resource="assets.qrc">
+ <normaloff>:/assets/images/history.png</normaloff>:/assets/images/history.png</iconset>
+ </attribute>
<attribute name="title">
- <string>Bounties</string>
+ <string>History</string>
</attribute>
- <layout class="QVBoxLayout" name="verticalLayout_10">
- <property name="leftMargin">
- <number>0</number>
+ <layout class="QGridLayout" name="gridLayout_3">
+ <property name="verticalSpacing">
+ <number>9</number>
</property>
- <property name="topMargin">
- <number>0</number>
- </property>
- <property name="rightMargin">
- <number>0</number>
- </property>
- <property name="bottomMargin">
- <number>0</number>
- </property>
- <item>
- <widget class="BountiesWidget" name="bountiesWidget" native="true"/>
+ <item row="0" column="0">
+ <layout class="QVBoxLayout" name="historyWidgetLayout"/>
</item>
</layout>
</widget>
- <widget class="QWidget" name="tab_2">
+ <widget class="QWidget" name="tabSend">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <attribute name="icon">
+ <iconset resource="assets.qrc">
+ <normaloff>:/assets/images/tab_send.png</normaloff>:/assets/images/tab_send.png</iconset>
+ </attribute>
<attribute name="title">
- <string>/r/Monero</string>
+ <string>Send</string>
</attribute>
- <layout class="QVBoxLayout" name="verticalLayout_7">
- <property name="leftMargin">
- <number>0</number>
+ <layout class="QVBoxLayout" name="verticalLayout">
+ <property name="spacing">
+ <number>11</number>
</property>
<property name="topMargin">
- <number>0</number>
- </property>
- <property name="rightMargin">
- <number>0</number>
- </property>
- <property name="bottomMargin">
- <number>0</number>
+ <number>11</number>
</property>
<item>
- <widget class="RedditWidget" name="redditWidget" native="true"/>
+ <layout class="QVBoxLayout" name="sendWidgetLayout">
+ <property name="spacing">
+ <number>0</number>
+ </property>
+ </layout>
+ </item>
+ <item>
+ <widget class="Line" name="line_3">
+ <property name="minimumSize">
+ <size>
+ <width>0</width>
+ <height>0</height>
+ </size>
+ </property>
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <layout class="QVBoxLayout" name="contactsWidgetLayout"/>
+ </item>
+ </layout>
+ </widget>
+ <widget class="QWidget" name="tabReceive">
+ <attribute name="icon">
+ <iconset resource="assets.qrc">
+ <normaloff>:/assets/images/coins.png</normaloff>:/assets/images/coins.png</iconset>
+ </attribute>
+ <attribute name="title">
+ <string>Receive</string>
+ </attribute>
+ <layout class="QGridLayout" name="gridLayout_5">
+ <item row="0" column="0">
+ <layout class="QVBoxLayout" name="receiveWidgetLayout"/>
+ </item>
+ </layout>
+ </widget>
+ <widget class="QWidget" name="tabCoins">
+ <attribute name="icon">
+ <iconset resource="assets.qrc">
+ <normaloff>:/assets/images/tab_coins.png</normaloff>:/assets/images/tab_coins.png</iconset>
+ </attribute>
+ <attribute name="title">
+ <string>Coins</string>
+ </attribute>
+ <layout class="QVBoxLayout" name="verticalLayout_2">
+ <item>
+ <layout class="QVBoxLayout" name="coinsWidgetLayout"/>
</item>
</layout>
</widget>
- <widget class="QWidget" name="tab_3">
+ <widget class="QWidget" name="tabCalc">
+ <attribute name="icon">
+ <iconset resource="assets.qrc">
+ <normaloff>:/assets/images/gnome-calc.png</normaloff>:/assets/images/gnome-calc.png</iconset>
+ </attribute>
<attribute name="title">
- <string>Revuo</string>
+ <string>Calc</string>
</attribute>
- <layout class="QVBoxLayout" name="verticalLayout_9">
+ <layout class="QVBoxLayout" name="verticalLayout_5">
+ <item>
+ <layout class="QHBoxLayout" name="horizontalLayout_2">
+ <item>
+ <widget class="CalcWidget" name="conversionWidget" native="true"/>
+ </item>
+ </layout>
+ </item>
+ <item>
+ <spacer name="verticalSpacer">
+ <property name="orientation">
+ <enum>Qt::Vertical</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>20</width>
+ <height>40</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ </layout>
+ </widget>
+ <widget class="QWidget" name="tabExchange">
+ <attribute name="icon">
+ <iconset resource="assets.qrc">
+ <normaloff>:/assets/images/update.png</normaloff>:/assets/images/update.png</iconset>
+ </attribute>
+ <attribute name="title">
+ <string>Exchange</string>
+ </attribute>
+ <layout class="QVBoxLayout" name="verticalLayout_8">
<property name="leftMargin">
<number>0</number>
</property>
<number>0</number>
</property>
<item>
- <widget class="RevuoWidget" name="revuoWidget" native="true"/>
+ <widget class="QTabWidget" name="tabWidgetExchanges">
+ <property name="currentIndex">
+ <number>0</number>
+ </property>
+ <widget class="QWidget" name="tabLocalMonero">
+ <attribute name="icon">
+ <iconset resource="assets.qrc">
+ <normaloff>:/assets/images/localMonero_logo.png</normaloff>:/assets/images/localMonero_logo.png</iconset>
+ </attribute>
+ <attribute name="title">
+ <string>LocalMonero</string>
+ </attribute>
+ <layout class="QVBoxLayout" name="verticalLayout_4">
+ <property name="leftMargin">
+ <number>0</number>
+ </property>
+ <property name="topMargin">
+ <number>0</number>
+ </property>
+ <property name="rightMargin">
+ <number>0</number>
+ </property>
+ <property name="bottomMargin">
+ <number>0</number>
+ </property>
+ <item>
+ <layout class="QVBoxLayout" name="localMoneroLayout"/>
+ </item>
+ </layout>
+ </widget>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ <widget class="QWidget" name="tabXmrRig">
+ <attribute name="icon">
+ <iconset resource="assets.qrc">
+ <normaloff>:/assets/images/mining.png</normaloff>:/assets/images/mining.png</iconset>
+ </attribute>
+ <attribute name="title">
+ <string>Mining</string>
+ </attribute>
+ <layout class="QGridLayout" name="gridLayout_2">
+ <item row="0" column="0">
+ <layout class="QGridLayout" name="xmrRigLayout"/>
</item>
</layout>
</widget>
</widget>
</item>
- </layout>
- </widget>
- <widget class="QWidget" name="tabHistory">
- <attribute name="icon">
- <iconset resource="assets.qrc">
- <normaloff>:/assets/images/history.png</normaloff>:/assets/images/history.png</iconset>
- </attribute>
- <attribute name="title">
- <string>History</string>
- </attribute>
- <layout class="QGridLayout" name="gridLayout_3">
- <property name="verticalSpacing">
- <number>9</number>
- </property>
- <item row="0" column="0">
- <layout class="QVBoxLayout" name="historyWidgetLayout"/>
- </item>
- </layout>
- </widget>
- <widget class="QWidget" name="tabSend">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <attribute name="icon">
- <iconset resource="assets.qrc">
- <normaloff>:/assets/images/tab_send.png</normaloff>:/assets/images/tab_send.png</iconset>
- </attribute>
- <attribute name="title">
- <string>Send</string>
- </attribute>
- <layout class="QVBoxLayout" name="verticalLayout">
- <property name="spacing">
- <number>11</number>
- </property>
- <property name="topMargin">
- <number>11</number>
- </property>
<item>
- <layout class="QVBoxLayout" name="sendWidgetLayout">
- <property name="spacing">
- <number>0</number>
- </property>
- </layout>
- </item>
- <item>
- <widget class="Line" name="line_3">
- <property name="minimumSize">
- <size>
- <width>0</width>
- <height>0</height>
- </size>
+ <widget class="QFrame" name="frame_coinControl">
+ <property name="frameShape">
+ <enum>QFrame::StyledPanel</enum>
</property>
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
+ <property name="frameShadow">
+ <enum>QFrame::Raised</enum>
</property>
+ <layout class="QHBoxLayout" name="horizontalLayout_3">
+ <property name="topMargin">
+ <number>0</number>
+ </property>
+ <property name="bottomMargin">
+ <number>0</number>
+ </property>
+ <item>
+ <widget class="QLabel" name="label_coinControl">
+ <property name="text">
+ <string>Coin control active: </string>
+ </property>
+ <property name="textInteractionFlags">
+ <set>Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse</set>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QPushButton" name="btn_resetCoinControl">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Maximum" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="text">
+ <string>Reset</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
</widget>
</item>
- <item>
- <layout class="QVBoxLayout" name="contactsWidgetLayout"/>
- </item>
- </layout>
- </widget>
- <widget class="QWidget" name="tabReceive">
- <attribute name="icon">
- <iconset resource="assets.qrc">
- <normaloff>:/assets/images/coins.png</normaloff>:/assets/images/coins.png</iconset>
- </attribute>
- <attribute name="title">
- <string>Receive</string>
- </attribute>
- <layout class="QGridLayout" name="gridLayout_5">
- <item row="0" column="0">
- <layout class="QVBoxLayout" name="receiveWidgetLayout"/>
- </item>
- </layout>
- </widget>
- <widget class="QWidget" name="tabCoins">
- <attribute name="icon">
- <iconset resource="assets.qrc">
- <normaloff>:/assets/images/tab_coins.png</normaloff>:/assets/images/tab_coins.png</iconset>
- </attribute>
- <attribute name="title">
- <string>Coins</string>
- </attribute>
- <layout class="QVBoxLayout" name="verticalLayout_2">
- <item>
- <layout class="QVBoxLayout" name="coinsWidgetLayout"/>
- </item>
- </layout>
- </widget>
- <widget class="QWidget" name="tabCalc">
- <attribute name="icon">
- <iconset resource="assets.qrc">
- <normaloff>:/assets/images/gnome-calc.png</normaloff>:/assets/images/gnome-calc.png</iconset>
- </attribute>
- <attribute name="title">
- <string>Calc</string>
- </attribute>
- <layout class="QVBoxLayout" name="verticalLayout_5">
- <item>
- <layout class="QHBoxLayout" name="horizontalLayout_2">
- <item>
- <widget class="CalcWidget" name="conversionWidget" native="true"/>
- </item>
- </layout>
- </item>
- <item>
- <spacer name="verticalSpacer">
- <property name="orientation">
- <enum>Qt::Vertical</enum>
- </property>
- <property name="sizeHint" stdset="0">
- <size>
- <width>20</width>
- <height>40</height>
- </size>
- </property>
- </spacer>
- </item>
</layout>
</widget>
- <widget class="QWidget" name="tabExchange">
- <attribute name="icon">
- <iconset resource="assets.qrc">
- <normaloff>:/assets/images/update.png</normaloff>:/assets/images/update.png</iconset>
- </attribute>
- <attribute name="title">
- <string>Exchange</string>
- </attribute>
- <layout class="QVBoxLayout" name="verticalLayout_8">
+ <widget class="QWidget" name="page_lock">
+ <layout class="QVBoxLayout" name="verticalLayout_12">
<property name="leftMargin">
<number>0</number>
</property>
<number>0</number>
</property>
<item>
- <widget class="QTabWidget" name="tabWidgetExchanges">
- <property name="currentIndex">
- <number>0</number>
- </property>
- <widget class="QWidget" name="tabLocalMonero">
- <attribute name="icon">
- <iconset resource="assets.qrc">
- <normaloff>:/assets/images/localMonero_logo.png</normaloff>:/assets/images/localMonero_logo.png</iconset>
- </attribute>
- <attribute name="title">
- <string>LocalMonero</string>
- </attribute>
- <layout class="QVBoxLayout" name="verticalLayout_4">
- <property name="leftMargin">
- <number>0</number>
- </property>
- <property name="topMargin">
- <number>0</number>
- </property>
- <property name="rightMargin">
- <number>0</number>
- </property>
- <property name="bottomMargin">
- <number>0</number>
- </property>
- <item>
- <layout class="QVBoxLayout" name="localMoneroLayout"/>
- </item>
- </layout>
- </widget>
- </widget>
- </item>
- </layout>
- </widget>
- <widget class="QWidget" name="tabXmrRig">
- <attribute name="icon">
- <iconset resource="assets.qrc">
- <normaloff>:/assets/images/mining.png</normaloff>:/assets/images/mining.png</iconset>
- </attribute>
- <attribute name="title">
- <string>Mining</string>
- </attribute>
- <layout class="QGridLayout" name="gridLayout_2">
- <item row="0" column="0">
- <layout class="QGridLayout" name="xmrRigLayout"/>
+ <layout class="QVBoxLayout" name="walletUnlockLayout"/>
</item>
</layout>
</widget>
</widget>
</item>
- <item row="2" column="0">
- <widget class="QFrame" name="frame_coinControl">
- <property name="frameShape">
- <enum>QFrame::StyledPanel</enum>
- </property>
- <property name="frameShadow">
- <enum>QFrame::Raised</enum>
- </property>
- <layout class="QHBoxLayout" name="horizontalLayout_3">
- <property name="topMargin">
- <number>0</number>
- </property>
- <property name="bottomMargin">
- <number>0</number>
- </property>
- <item>
- <widget class="QLabel" name="label_coinControl">
- <property name="text">
- <string>Coin control active: </string>
- </property>
- <property name="textInteractionFlags">
- <set>Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse</set>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QPushButton" name="btn_resetCoinControl">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Maximum" vsizetype="Fixed">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="text">
- <string>Reset</string>
- </property>
- </widget>
- </item>
- </layout>
- </widget>
- </item>
</layout>
</widget>
<widget class="QStatusBar" name="statusBar"/>
<addaction name="menuRecently_open"/>
<addaction name="actionOpen"/>
<addaction name="actionNew_Restore"/>
+ <addaction name="actionLock"/>
<addaction name="actionClose"/>
<addaction name="actionQuit"/>
<addaction name="separator"/>
<string>Documentation</string>
</property>
</action>
+ <action name="actionLock">
+ <property name="text">
+ <string>Lock wallet</string>
+ </property>
+ </action>
</widget>
<layoutdefault spacing="6" margin="11"/>
<customwidgets>