Browse Source

Merge pull request #5258

4a8fc15 [Qt] the RPC Console should be a QWidget to make window more independent (Jonas Schnelli)
0.13
Wladimir J. van der Laan 10 years ago
parent
commit
73cbf0a527
No known key found for this signature in database
GPG Key ID: 74810B012346C9A6
  1. 7
      src/qt/bitcoingui.cpp
  2. 2
      src/qt/forms/rpcconsole.ui
  3. 13
      src/qt/rpcconsole.cpp
  4. 6
      src/qt/rpcconsole.h

7
src/qt/bitcoingui.cpp

@ -128,7 +128,7 @@ BitcoinGUI::BitcoinGUI(const NetworkStyle *networkStyle, QWidget *parent) : @@ -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() @@ -234,6 +234,8 @@ BitcoinGUI::~BitcoinGUI()
delete appMenuBar;
MacDockIconHandler::instance()->setMainWindow(NULL);
#endif
delete rpcConsole;
}
void BitcoinGUI::createActions(const NetworkStyle *networkStyle)
@ -827,6 +829,9 @@ void BitcoinGUI::closeEvent(QCloseEvent *event) @@ -827,6 +829,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();
}
}

2
src/qt/forms/rpcconsole.ui

@ -1,7 +1,7 @@ @@ -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>

13
src/qt/rpcconsole.cpp

@ -200,7 +200,7 @@ void RPCExecutor::request(const QString &command) @@ -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) @@ -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() @@ -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)

6
src/qt/rpcconsole.h

@ -10,7 +10,7 @@ @@ -10,7 +10,7 @@
#include "net.h"
#include <QDialog>
#include <QWidget>
class ClientModel;
@ -23,7 +23,7 @@ class QItemSelection; @@ -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: @@ -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: @@ -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…
Cancel
Save