From f9e373bba7fc520e14b197277ad559765761a55e Mon Sep 17 00:00:00 2001 From: hjk Date: Tue, 13 Dec 2022 14:51:58 +0100 Subject: [PATCH] RemoteLinux: Add a per-device setting for qml runtimes Task-number: QTCREATORBUG-28074 Change-Id: I8d1ea1908685212a8aba79ade39a2abf77e05409 Reviewed-by: Christian Kandeler --- .../genericlinuxdeviceconfigurationwidget.cpp | 20 ++++++++++++++++--- .../genericlinuxdeviceconfigurationwidget.h | 2 ++ 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/src/plugins/remotelinux/genericlinuxdeviceconfigurationwidget.cpp b/src/plugins/remotelinux/genericlinuxdeviceconfigurationwidget.cpp index 1f2134dc06f..96784f70b59 100644 --- a/src/plugins/remotelinux/genericlinuxdeviceconfigurationwidget.cpp +++ b/src/plugins/remotelinux/genericlinuxdeviceconfigurationwidget.cpp @@ -69,8 +69,14 @@ GenericLinuxDeviceConfigurationWidget::GenericLinuxDeviceConfigurationWidget( m_machineTypeValueLabel = new QLabel(this); + const QString hint = Tr::tr("Leave empty to look up executable in $PATH"); m_gdbServerLineEdit = new QLineEdit(this); - m_gdbServerLineEdit->setPlaceholderText(Tr::tr("Leave empty to look up executable in $PATH")); + m_gdbServerLineEdit->setPlaceholderText(hint); + m_gdbServerLineEdit->setToolTip(hint); + + m_qmlRuntimeLineEdit = new QLineEdit(this); + m_qmlRuntimeLineEdit->setPlaceholderText(hint); + m_qmlRuntimeLineEdit->setToolTip(hint); auto sshPortLabel = new QLabel(Tr::tr("&SSH port:")); sshPortLabel->setBuddy(m_sshPortSpinBox); @@ -84,7 +90,8 @@ GenericLinuxDeviceConfigurationWidget::GenericLinuxDeviceConfigurationWidget( Tr::tr("Free ports:"), m_portsLineEdit, m_portsWarningLabel, Tr::tr("Timeout:"), m_timeoutSpinBox, st, br, Tr::tr("&Username:"), m_userLineEdit, st, br, m_keyLabel, m_keyFileLineEdit, createKeyButton, st, br, - Tr::tr("GDB server executable:"), m_gdbServerLineEdit, st, br + Tr::tr("GDB server executable:"), m_gdbServerLineEdit, st, br, + Tr::tr("QML runtime executable:"), m_qmlRuntimeLineEdit, st, br }.attachTo(this); connect(m_hostLineEdit, &QLineEdit::editingFinished, @@ -111,9 +118,10 @@ GenericLinuxDeviceConfigurationWidget::GenericLinuxDeviceConfigurationWidget( this, &GenericLinuxDeviceConfigurationWidget::createNewKey); connect(m_gdbServerLineEdit, &QLineEdit::editingFinished, this, &GenericLinuxDeviceConfigurationWidget::gdbServerEditingFinished); + connect(m_qmlRuntimeLineEdit, &QLineEdit::editingFinished, + this, &GenericLinuxDeviceConfigurationWidget::qmlRuntimeEditingFinished); connect(m_hostKeyCheckBox, &QCheckBox::toggled, this, &GenericLinuxDeviceConfigurationWidget::hostKeyCheckingChanged); - m_gdbServerLineEdit->setToolTip(m_gdbServerLineEdit->placeholderText()); initGui(); } @@ -172,6 +180,11 @@ void GenericLinuxDeviceConfigurationWidget::gdbServerEditingFinished() device()->setDebugServerPath(device()->filePath(m_gdbServerLineEdit->text())); } +void GenericLinuxDeviceConfigurationWidget::qmlRuntimeEditingFinished() +{ + device()->setQmlRunCommand(device()->filePath(m_qmlRuntimeLineEdit->text())); +} + void GenericLinuxDeviceConfigurationWidget::handleFreePortsChanged() { device()->setFreePorts(PortList::fromString(m_portsLineEdit->text())); @@ -254,6 +267,7 @@ void GenericLinuxDeviceConfigurationWidget::initGui() m_keyFileLineEdit->setFilePath(sshParams.privateKeyFile); // FIXME: Use a remote executable line edit m_gdbServerLineEdit->setText(device()->debugServerPath().path()); + m_qmlRuntimeLineEdit->setText(device()->qmlRunCommand().path()); updatePortsWarningLabel(); } diff --git a/src/plugins/remotelinux/genericlinuxdeviceconfigurationwidget.h b/src/plugins/remotelinux/genericlinuxdeviceconfigurationwidget.h index bc720463b1a..4d3a380bb5d 100644 --- a/src/plugins/remotelinux/genericlinuxdeviceconfigurationwidget.h +++ b/src/plugins/remotelinux/genericlinuxdeviceconfigurationwidget.h @@ -37,6 +37,7 @@ private: void userNameEditingFinished(); void keyFileEditingFinished(); void gdbServerEditingFinished(); + void qmlRuntimeEditingFinished(); void handleFreePortsChanged(); void setPrivateKey(const Utils::FilePath &path); void createNewKey(); @@ -59,6 +60,7 @@ private: Utils::PathChooser *m_keyFileLineEdit; QLabel *m_machineTypeValueLabel; QLineEdit *m_gdbServerLineEdit; + QLineEdit *m_qmlRuntimeLineEdit; }; } // RemoteLinux::Internal