mirror of
https://github.com/dashpay/dash.git
synced 2024-12-26 12:32:48 +01:00
[Qt] the RPC Console should be a QWidget to make window more independent
- fix issue #5254
This commit is contained in:
parent
5406f61373
commit
4a8fc152a9
@ -128,7 +128,7 @@ BitcoinGUI::BitcoinGUI(const NetworkStyle *networkStyle, QWidget *parent) :
|
||||
setUnifiedTitleAndToolBarOnMac(true);
|
||||
#endif
|
||||
|
||||
rpcConsole = new RPCConsole(enableWallet ? this : 0);
|
||||
rpcConsole = new RPCConsole(0);
|
||||
#ifdef ENABLE_WALLET
|
||||
if(enableWallet)
|
||||
{
|
||||
@ -234,6 +234,8 @@ BitcoinGUI::~BitcoinGUI()
|
||||
delete appMenuBar;
|
||||
MacDockIconHandler::instance()->setMainWindow(NULL);
|
||||
#endif
|
||||
|
||||
delete rpcConsole;
|
||||
}
|
||||
|
||||
void BitcoinGUI::createActions(const NetworkStyle *networkStyle)
|
||||
@ -831,6 +833,9 @@ void BitcoinGUI::closeEvent(QCloseEvent *event)
|
||||
if(!clientModel->getOptionsModel()->getMinimizeToTray() &&
|
||||
!clientModel->getOptionsModel()->getMinimizeOnClose())
|
||||
{
|
||||
// close rpcConsole in case it was open to make some space for the shutdown window
|
||||
rpcConsole->close();
|
||||
|
||||
QApplication::quit();
|
||||
}
|
||||
}
|
||||
|
@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>RPCConsole</class>
|
||||
<widget class="QDialog" name="RPCConsole">
|
||||
<widget class="QWidget" name="RPCConsole">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
|
@ -200,7 +200,7 @@ void RPCExecutor::request(const QString &command)
|
||||
}
|
||||
|
||||
RPCConsole::RPCConsole(QWidget *parent) :
|
||||
QDialog(parent),
|
||||
QWidget(parent),
|
||||
ui(new Ui::RPCConsole),
|
||||
clientModel(0),
|
||||
historyPtr(0),
|
||||
@ -278,7 +278,7 @@ bool RPCConsole::eventFilter(QObject* obj, QEvent *event)
|
||||
}
|
||||
}
|
||||
}
|
||||
return QDialog::eventFilter(obj, event);
|
||||
return QWidget::eventFilter(obj, event);
|
||||
}
|
||||
|
||||
void RPCConsole::setClientModel(ClientModel *model)
|
||||
@ -366,11 +366,12 @@ void RPCConsole::clear()
|
||||
tr("Type <b>help</b> for an overview of available commands.")), true);
|
||||
}
|
||||
|
||||
void RPCConsole::reject()
|
||||
void RPCConsole::keyPressEvent(QKeyEvent *event)
|
||||
{
|
||||
// Ignore escape keypress if this is not a seperate window
|
||||
if(windowType() != Qt::Widget)
|
||||
QDialog::reject();
|
||||
if(windowType() != Qt::Widget && event->key() == Qt::Key_Escape)
|
||||
{
|
||||
close();
|
||||
}
|
||||
}
|
||||
|
||||
void RPCConsole::message(int category, const QString &message, bool html)
|
||||
|
@ -10,7 +10,7 @@
|
||||
|
||||
#include "net.h"
|
||||
|
||||
#include <QDialog>
|
||||
#include <QWidget>
|
||||
|
||||
class ClientModel;
|
||||
|
||||
@ -23,7 +23,7 @@ class QItemSelection;
|
||||
QT_END_NAMESPACE
|
||||
|
||||
/** Local Bitcoin RPC console. */
|
||||
class RPCConsole: public QDialog
|
||||
class RPCConsole: public QWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
@ -43,6 +43,7 @@ public:
|
||||
|
||||
protected:
|
||||
virtual bool eventFilter(QObject* obj, QEvent *event);
|
||||
void keyPressEvent(QKeyEvent *);
|
||||
|
||||
private slots:
|
||||
void on_lineEdit_returnPressed();
|
||||
@ -59,7 +60,6 @@ private slots:
|
||||
|
||||
public slots:
|
||||
void clear();
|
||||
void reject();
|
||||
void message(int category, const QString &message, bool html = false);
|
||||
/** Set number of connections shown in the UI */
|
||||
void setNumConnections(int count);
|
||||
|
Loading…
Reference in New Issue
Block a user