|
| 1 | +/*************************************************************************** |
| 2 | +** ** |
| 3 | +** This file is part of FDMLControl. ** |
| 4 | +** FDMLControl enables the control of the Optores FDML laser via a ** |
| 5 | +** serial connection. ** |
| 6 | +** Copyright (C) 2019 Miroslav Zabic ** |
| 7 | +** ** |
| 8 | +** FDMLControl is free software: you can redistribute it and/or modify ** |
| 9 | +** it under the terms of the GNU General Public License as published by ** |
| 10 | +** the Free Software Foundation, either version 3 of the License, or ** |
| 11 | +** (at your option) any later version. ** |
| 12 | +** ** |
| 13 | +** This program is distributed in the hope that it will be useful, ** |
| 14 | +** but WITHOUT ANY WARRANTY; without even the implied warranty of ** |
| 15 | +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ** |
| 16 | +** GNU General Public License for more details. ** |
| 17 | +** ** |
| 18 | +** You should have received a copy of the GNU General Public License ** |
| 19 | +** along with this program. If not, see http://www.gnu.org/licenses/. ** |
| 20 | +** ** |
| 21 | +**************************************************************************** |
| 22 | +** Author: Miroslav Zabic ** |
| 23 | +** Contact: zabic ** |
| 24 | +** at ** |
| 25 | +** iqo.uni-hannover.de ** |
| 26 | +** ** |
| 27 | +** Date: 12 June 2019 ** |
| 28 | +** Version: 1.0.0 ** |
| 29 | +****************************************************************************/ |
| 30 | + |
| 31 | +#include "consolewidget.h" |
| 32 | + |
| 33 | +ConsoleWidget::ConsoleWidget(QWidget *parent) |
| 34 | + : QueryWidget(parent) |
| 35 | +{ |
| 36 | + ui.setupUi(this); |
| 37 | + connect(this->ui.lineEdit, &QLineEdit::returnPressed, this, &ConsoleWidget::slot_commandSent); |
| 38 | + connect(this->ui.pushButton_send, &QPushButton::clicked, this, &ConsoleWidget::slot_commandSent); |
| 39 | +} |
| 40 | + |
| 41 | +ConsoleWidget::~ConsoleWidget() |
| 42 | +{ |
| 43 | +} |
| 44 | + |
| 45 | +void ConsoleWidget::slot_commandSent() { |
| 46 | + QString command = this->ui.lineEdit->text(); |
| 47 | + emit query(this, command); |
| 48 | +} |
| 49 | + |
| 50 | +void ConsoleWidget::slot_addText(QString text) { |
| 51 | + this->ui.plainTextEdit->appendPlainText(text); |
| 52 | +} |
| 53 | + |
| 54 | +void ConsoleWidget::handleResponse(QString initialQuery, QString response) { |
| 55 | + this->slot_addText(initialQuery.remove(QRegExp("[\\r\\n]")) + "> " + response.remove(QRegExp("[\\r\\n]"))); |
| 56 | +} |
0 commit comments