RPCConsole::RPCConsole(const PlatformStyle *_platformStyle, QWidget *parent) : QWidget(parent), ui(new Ui::RPCConsole), clientModel(0), historyPtr(0), platformStyle(_platformStyle), peersTableContextMenu(0), banTableContextMenu(0), consoleFontSize(0) { ui->setupUi(this); QSettings settings; if (!restoreGeometry(settings.value("RPCConsoleWindowGeometry").toByteArray())) { // Restore failed (perhaps missing setting), center the window move(QApplication::desktop()->availableGeometry().center() - frameGeometry().center()); } ui->openDebugLogfileButton->setToolTip(ui->openDebugLogfileButton->toolTip().arg(tr(PACKAGE_NAME))); if (platformStyle->getImagesOnButtons()) { ui->openDebugLogfileButton->setIcon(platformStyle->SingleColorIcon(":/icons/export")); } ui->clearButton->setIcon(platformStyle->SingleColorIcon(":/icons/remove")); ui->fontBiggerButton->setIcon(platformStyle->SingleColorIcon(":/icons/fontbigger")); ui->fontSmallerButton->setIcon(platformStyle->SingleColorIcon(":/icons/fontsmaller")); // Install event filter for up and down arrow ui->lineEdit->installEventFilter(this); ui->messagesWidget->installEventFilter(this); connect(ui->clearButton, SIGNAL(clicked()), this, SLOT(clear())); connect(ui->fontBiggerButton, SIGNAL(clicked()), this, SLOT(fontBigger())); connect(ui->fontSmallerButton, SIGNAL(clicked()), this, SLOT(fontSmaller())); connect(ui->btnClearTrafficGraph, SIGNAL(clicked()), ui->trafficGraph, SLOT(clear())); // set library version labels #ifdef ENABLE_WALLET ui->berkeleyDBVersion->setText(DbEnv::version(0, 0, 0)); #else ui->label_berkeleyDBVersion->hide(); ui->berkeleyDBVersion->hide(); #endif // Register RPC timer interface rpcTimerInterface = new QtRPCTimerInterface(); // avoid accidentally overwriting an existing, non QTThread // based timer interface RPCSetTimerInterfaceIfUnset(rpcTimerInterface); setTrafficGraphRange(INITIAL_TRAFFIC_GRAPH_MINS); ui->detailWidget->hide(); ui->peerHeading->setText(tr("Select a peer to view detailed information.")); consoleFontSize = settings.value(fontSizeSettingsKey, QFontInfo(QFont()).pointSize()).toInt(); clear(); }
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) { setWindowTitle(QCoreApplication::applicationName()); ui.setupUi(this); // setup preferences dialog connect(&preferences, SIGNAL(accepted()), this, SLOT(getApplicationSettings())); connect(&builder, SIGNAL(highlightLine(const QString &, int, int, const QString &)), this, SLOT(highlightFileLine(const QString &, int, int))); connect(&builder, SIGNAL(finished()), this, SLOT(setBuildAvailable())); connect(&builder, SIGNAL(buildError()), &preferences, SLOT(showPreferences())); parser = language.parser(); connect(&preferences, SIGNAL(updateColors()), this, SLOT(recolorProjectView())); connect(&preferences, SIGNAL(updateFonts(const QFont &)), this, SLOT(recolorProjectView())); connect(&preferences, SIGNAL(updateFonts(const QFont &)), this, SLOT(recolorBuildManager())); connect(&preferences, SIGNAL(accepted()), ui.editorTabs, SIGNAL(accepted())); connect(&preferences, SIGNAL(updateColors()), ui.editorTabs, SIGNAL(updateColors())); connect(&preferences, SIGNAL(updateFonts(const QFont &)), ui.editorTabs, SIGNAL(updateFonts(const QFont &))); recolorProjectView(); recolorBuildManager(); // project editor tabs ui.finder->connectFileManager(ui.editorTabs); QSplitterHandle *hndl = ui.splitter->handle(1); hndl->setEnabled(false); connect(ui.editorTabs, SIGNAL(fileUpdated(int)), this, SLOT(setProject())); // File Menu connect(ui.action_New, SIGNAL(triggered()), ui.editorTabs, SLOT(newFile())); connect(ui.actionNew_From_File, SIGNAL(triggered()), ui.editorTabs, SLOT(newFromFile())); connect(ui.actionNew_From_Template, SIGNAL(triggered()), this, SLOT(newFromTemplate())); connect(ui.action_Open, SIGNAL(triggered()), ui.editorTabs, SLOT(open())); connect(ui.action_Save,SIGNAL(triggered()),ui.editorTabs,SLOT(save())); connect(ui.actionSave_As,SIGNAL(triggered()),ui.editorTabs,SLOT(saveAs())); connect(ui.actionSave_All,SIGNAL(triggered()),ui.editorTabs,SLOT(saveAll())); ui.actionPrint->setEnabled(true); connect(ui.actionPrint,SIGNAL(triggered()),this,SLOT(printFile())); ui.action_Zip->setEnabled(true); connect(ui.action_Zip,SIGNAL(triggered()),this,SLOT(zipFiles())); recentFiles = findChildren<QAction *>(QRegExp("action_[0-9]+_File")); for (int i = 0; i < recentFiles.size(); i++) connect(recentFiles.at(i), SIGNAL(triggered()),this, SLOT(openRecentFile())); connect(ui.action_Close, SIGNAL(triggered()), ui.editorTabs, SLOT(closeFile())); connect(ui.actionClose_All, SIGNAL(triggered()), ui.editorTabs, SLOT(closeAll())); connect(ui.action_Quit, SIGNAL(triggered()), this, SLOT(quitProgram())); connect(ui.editorTabs, SIGNAL(saveAvailable(bool)), this, SLOT(setSaveAvailable(bool))); connect(ui.editorTabs, SIGNAL(saveAvailable(bool)), this, SLOT(setSaveAvailable(bool))); connect(ui.editorTabs, SIGNAL(closeAvailable(bool)), this, SLOT(setCloseAvailable(bool))); connect(ui.editorTabs, SIGNAL(closeAvailable(bool)), this, SLOT(setCloseAvailable(bool))); connect(ui.editorTabs, SIGNAL(closeAvailable(bool)), this, SLOT(setBuildAvailable(bool))); // Edit Menu connect(ui.action_Undo, SIGNAL(triggered()), ui.editorTabs, SLOT(undo())); connect(ui.action_Redo, SIGNAL(triggered()), ui.editorTabs, SLOT(redo())); connect(ui.action_Cut, SIGNAL(triggered()), ui.editorTabs, SLOT(cut())); connect(ui.action_Copy, SIGNAL(triggered()), ui.editorTabs, SLOT(copy())); connect(ui.action_Paste, SIGNAL(triggered()), ui.editorTabs, SLOT(paste())); connect(ui.actionSelect_All, SIGNAL(triggered()), ui.editorTabs, SLOT(selectAll())); connect(ui.action_Find, SIGNAL(triggered()), ui.finder, SLOT(showFinder())); connect(ui.actionFind_Next, SIGNAL(triggered()), ui.finder, SLOT(findNext())); connect(ui.actionFind_Previous,SIGNAL(triggered()), ui.finder, SLOT(findPrevious())); connect(ui.actionPreferences, SIGNAL(triggered()), &preferences, SLOT(showPreferences())); connect(ui.editorTabs, SIGNAL(undoAvailable(bool)), ui.action_Undo,SLOT(setEnabled(bool))); connect(ui.editorTabs, SIGNAL(redoAvailable(bool)), ui.action_Redo,SLOT(setEnabled(bool))); connect(ui.editorTabs, SIGNAL(copyAvailable(bool)), ui.action_Cut,SLOT(setEnabled(bool))); connect(ui.editorTabs, SIGNAL(copyAvailable(bool)), ui.action_Copy,SLOT(setEnabled(bool))); // View Menu connect(ui.actionShow_Browser, SIGNAL(triggered()), this, SLOT(showBrowser())); connect(ui.actionBigger_Font, SIGNAL(triggered()), this, SLOT(fontBigger())); connect(ui.actionSmaller_Font, SIGNAL(triggered()), this, SLOT(fontSmaller())); ui.actionBigger_Font->setShortcuts(QList<QKeySequence>() << QKeySequence::ZoomIn << Qt::CTRL+Qt::Key_Equal); // Project Menu connect(ui.actionMemory_Map,SIGNAL(triggered()), this, SLOT(spawnMemoryMap())); connect(ui.actionBuild, SIGNAL(triggered()), this, SLOT(programBuild())); connect(ui.actionRun, SIGNAL(triggered()), this, SLOT(programRun())); connect(ui.actionWrite, SIGNAL(triggered()), this, SLOT(programWrite())); connect(ui.actionTerminal, SIGNAL(triggered()), this, SLOT(spawnTerminal())); // Help Menu connect(ui.actionPropeller_Quick_Reference, SIGNAL(triggered()), this, SLOT(propellerQuickReference())); connect(ui.actionPropeller_Datasheet, SIGNAL(triggered()), this, SLOT(propellerDatasheet())); connect(ui.actionPropeller_Manual, SIGNAL(triggered()), this, SLOT(propellerManual())); connect(ui.actionPropBASIC_Manual, SIGNAL(triggered()), this, SLOT(propBasicManual())); connect(ui.action_About, SIGNAL(triggered()), this, SLOT(about())); // Toolbar Extras cbPort = new QComboBox(this); cbPort->setLayoutDirection(Qt::LeftToRight); cbPort->setToolTip(tr("Select Serial Port")); cbPort->setSizeAdjustPolicy(QComboBox::AdjustToContents); ui.toolBar->addWidget(cbPort); connect(ui.projectview, SIGNAL(showFileLine(QString, int)), this, SLOT(highlightFileLine(QString, int))); updateRecentFileActions(); connect(ui.editorTabs, SIGNAL(sendMessage(const QString &)), this,SLOT(showMessage(const QString &))); connect(ui.finder, SIGNAL(sendMessage(const QString &)), this,SLOT(showMessage(const QString &))); restoreGeometry(QSettings().value("windowSize").toByteArray()); getApplicationSettings(); connect(&manager, SIGNAL(portListChanged()), this, SLOT(updatePorts())); manager.enablePortMonitor(true); updatePorts(); QSettings settings; QString lastport = settings.value("lastPort", QString()).toString(); if (!lastport.isEmpty()) { int index = cbPort->findText(lastport); if (index != -1) cbPort->setCurrentIndex(index); } ui.editorTabs->newFile(); loadSession(); installEventFilter(this); statusBar(); }
RPCConsole::RPCConsole(const PlatformStyle *_platformStyle, QWidget *parent) : QWidget(parent), ui(new Ui::RPCConsole), clientModel(0), historyPtr(0), platformStyle(_platformStyle), peersTableContextMenu(0), banTableContextMenu(0), consoleFontSize(0) { ui->setupUi(this); GUIUtil::restoreWindowGeometry("nRPCConsoleWindow", this->size(), this); ui->openDebugLogfileButton->setToolTip(ui->openDebugLogfileButton->toolTip().arg(tr(PACKAGE_NAME))); QString theme = GUIUtil::getThemeName(); if (platformStyle->getImagesOnButtons()) { ui->openDebugLogfileButton->setIcon(QIcon(":/icons/" + theme + "/export")); } // Needed on Mac also ui->clearButton->setIcon(QIcon(":/icons/" + theme + "/remove")); ui->fontBiggerButton->setIcon(QIcon(":/icons/" + theme + "/fontbigger")); ui->fontSmallerButton->setIcon(QIcon(":/icons/" + theme + "/fontsmaller")); // Install event filter for up and down arrow ui->lineEdit->installEventFilter(this); ui->messagesWidget->installEventFilter(this); connect(ui->clearButton, SIGNAL(clicked()), this, SLOT(clear())); connect(ui->fontBiggerButton, SIGNAL(clicked()), this, SLOT(fontBigger())); connect(ui->fontSmallerButton, SIGNAL(clicked()), this, SLOT(fontSmaller())); connect(ui->btnClearTrafficGraph, SIGNAL(clicked()), ui->trafficGraph, SLOT(clear())); // Wallet Repair Buttons // connect(ui->btn_salvagewallet, SIGNAL(clicked()), this, SLOT(walletSalvage())); // Disable salvage option in GUI, it's way too powerful and can lead to funds loss ui->btn_salvagewallet->setEnabled(false); connect(ui->btn_rescan, SIGNAL(clicked()), this, SLOT(walletRescan())); connect(ui->btn_zapwallettxes1, SIGNAL(clicked()), this, SLOT(walletZaptxes1())); connect(ui->btn_zapwallettxes2, SIGNAL(clicked()), this, SLOT(walletZaptxes2())); connect(ui->btn_upgradewallet, SIGNAL(clicked()), this, SLOT(walletUpgrade())); connect(ui->btn_reindex, SIGNAL(clicked()), this, SLOT(walletReindex())); // set library version labels #ifdef ENABLE_WALLET ui->berkeleyDBVersion->setText(DbEnv::version(0, 0, 0)); std::string walletPath = GetDataDir().string(); walletPath += QDir::separator().toLatin1() + GetArg("-wallet", "wallet.dat"); ui->wallet_path->setText(QString::fromStdString(walletPath)); #else ui->label_berkeleyDBVersion->hide(); ui->berkeleyDBVersion->hide(); #endif // Register RPC timer interface rpcTimerInterface = new QtRPCTimerInterface(); // avoid accidentally overwriting an existing, non QTThread // based timer interface RPCSetTimerInterfaceIfUnset(rpcTimerInterface); setTrafficGraphRange(INITIAL_TRAFFIC_GRAPH_SETTING); ui->peerHeading->setText(tr("Select a peer to view detailed information.")); QSettings settings; consoleFontSize = settings.value(fontSizeSettingsKey, QFontInfo(QFont()).pointSize()).toInt(); clear(); }