diff --git a/src/plugins/debugger/debuggerdialogs.cpp b/src/plugins/debugger/debuggerdialogs.cpp index bb903e30ced2e811c04192d8b1042e7c651b7d94..4e8738040ed7344efc935ed2e02eb3fd7178ac8b 100644 --- a/src/plugins/debugger/debuggerdialogs.cpp +++ b/src/plugins/debugger/debuggerdialogs.cpp @@ -224,7 +224,6 @@ static QList<ProcData> processList() return unixProcessList(); #endif } - /////////////////////////////////////////////////////////////////////// // // AttachExternalDialog @@ -385,8 +384,11 @@ StartRemoteDialog::StartRemoteDialog(QWidget *parent) { m_ui->setupUi(this); m_ui->buttonBox->button(QDialogButtonBox::Ok)->setDefault(true); + m_ui->debuggerPathChooser->setExpectedKind(Utils::PathChooser::File); + m_ui->debuggerPathChooser->setPromptDialogTitle(tr("Select Debugger")); m_ui->executablePathChooser->setExpectedKind(Utils::PathChooser::File); m_ui->executablePathChooser->setPromptDialogTitle(tr("Select Executable")); + m_ui->sysrootPathChooser->setPromptDialogTitle(tr("Select Sysroot")); m_ui->serverStartScript->setExpectedKind(Utils::PathChooser::File); m_ui->serverStartScript->setPromptDialogTitle(tr("Select Start Script")); @@ -424,6 +426,16 @@ QString StartRemoteDialog::localExecutable() const return m_ui->executablePathChooser->path(); } +void StartRemoteDialog::setDebugger(const QString &debugger) +{ + m_ui->debuggerPathChooser->setPath(debugger); +} + +QString StartRemoteDialog::debugger() const +{ + return m_ui->debuggerPathChooser->path(); +} + void StartRemoteDialog::setRemoteArchitectures(const QStringList &list) { m_ui->architectureComboBox->clear(); diff --git a/src/plugins/debugger/debuggerdialogs.h b/src/plugins/debugger/debuggerdialogs.h index 87d59d11bbce5b41810804fb07057d8baab6d2fa..f80eafeba7fcea36a2bd02cacfe0e3e13579d830 100644 --- a/src/plugins/debugger/debuggerdialogs.h +++ b/src/plugins/debugger/debuggerdialogs.h @@ -135,6 +135,7 @@ public: void setRemoteArchitecture(const QString &arch); void setRemoteArchitectures(const QStringList &arches); void setLocalExecutable(const QString &executable); + void setDebugger(const QString &debugger); QString localExecutable() const; QString remoteChannel() const; QString remoteArchitecture() const; @@ -144,6 +145,7 @@ public: bool useServerStartScript() const; void setSysRoot(const QString &sysRoot); QString sysRoot() const; + QString debugger() const; private slots: void updateState(); diff --git a/src/plugins/debugger/debuggerplugin.cpp b/src/plugins/debugger/debuggerplugin.cpp index b46d9b7cdd4947568fabf96acc0fa1cce05dfdba..ddf7d2449fae3ca14e9a810be2cdc0ef3d029469 100644 --- a/src/plugins/debugger/debuggerplugin.cpp +++ b/src/plugins/debugger/debuggerplugin.cpp @@ -1359,6 +1359,7 @@ void DebuggerPlugin::startRemoteApplication() configValue(_("LastRemoteChannel")).toString()); dlg.setLocalExecutable( configValue(_("LastLocalExecutable")).toString()); + dlg.setDebugger(configValue(_("LastDebugger")).toString()); dlg.setRemoteArchitecture(lastUsed); dlg.setServerStartScript( configValue(_("LastServerStartScript")).toString()); @@ -1369,6 +1370,7 @@ void DebuggerPlugin::startRemoteApplication() return; setConfigValue(_("LastRemoteChannel"), dlg.remoteChannel()); setConfigValue(_("LastLocalExecutable"), dlg.localExecutable()); + setConfigValue(_("LastDebugger"), dlg.debugger()); setConfigValue(_("LastRemoteArchitecture"), dlg.remoteArchitecture()); setConfigValue(_("LastServerStartScript"), dlg.serverStartScript()); setConfigValue(_("LastUseServerStartScript"), dlg.useServerStartScript()); @@ -1376,6 +1378,7 @@ void DebuggerPlugin::startRemoteApplication() sp->remoteChannel = dlg.remoteChannel(); sp->remoteArchitecture = dlg.remoteArchitecture(); sp->executable = dlg.localExecutable(); + sp->debuggerCommand = dlg.debugger(); sp->startMode = StartRemote; if (dlg.useServerStartScript()) sp->serverStartScript = dlg.serverStartScript(); diff --git a/src/plugins/debugger/startremotedialog.ui b/src/plugins/debugger/startremotedialog.ui index f6ac099ea58244c11325153c48e868fb473ea6d7..fe83dd259fe374a2f0e3a1a288ff90624b60b0d3 100644 --- a/src/plugins/debugger/startremotedialog.ui +++ b/src/plugins/debugger/startremotedialog.ui @@ -25,74 +25,84 @@ <property name="fieldGrowthPolicy"> <enum>QFormLayout::ExpandingFieldsGrow</enum> </property> + <item row="0" column="0"> + <widget class="QLabel" name="debuggerLabel"> + <property name="text"> + <string>Debugger:</string> + </property> + </widget> + </item> + <item row="0" column="1"> + <widget class="Utils::PathChooser" name="debuggerPathChooser" native="true"/> + </item> <item row="1" column="0"> + <widget class="QLabel" name="executableLabel"> + <property name="text"> + <string>Local executable:</string> + </property> + </widget> + </item> + <item row="1" column="1"> + <widget class="Utils::PathChooser" name="executablePathChooser" native="true"/> + </item> + <item row="2" column="0"> <widget class="QLabel" name="channelLabel"> <property name="text"> <string>Host and port:</string> </property> </widget> </item> - <item row="1" column="1"> + <item row="2" column="1"> <widget class="QLineEdit" name="channelLineEdit"> <property name="text"> <string notr="true">localhost:5115</string> </property> </widget> </item> - <item row="0" column="1"> - <widget class="Utils::PathChooser" name="executablePathChooser" native="true"/> - </item> - <item row="2" column="0"> + <item row="3" column="0"> <widget class="QLabel" name="architectureLabel"> <property name="text"> <string>Architecture:</string> </property> </widget> </item> - <item row="2" column="1"> + <item row="3" column="1"> <widget class="QComboBox" name="architectureComboBox"> <property name="editable"> <bool>true</bool> </property> </widget> </item> - <item row="4" column="1"> - <widget class="QCheckBox" name="useServerStartScriptCheckBox"/> - </item> - <item row="5" column="1"> - <widget class="Utils::PathChooser" name="serverStartScript" native="true"/> - </item> - <item row="5" column="0"> - <widget class="QLabel" name="serverStartScriptLabel"> + <item row="4" column="0"> + <widget class="QLabel" name="sysrootLabel"> <property name="text"> - <string>Server start script:</string> + <string>Sysroot:</string> </property> </widget> </item> - <item row="4" column="0"> + <item row="4" column="1"> + <widget class="Utils::PathChooser" name="sysrootPathChooser" native="true"/> + </item> + <item row="5" column="0"> <widget class="QLabel" name="useServerStartScriptLabel"> <property name="text"> <string>Use server start script:</string> </property> </widget> </item> - <item row="3" column="0"> - <widget class="QLabel" name="sysrootLabel"> - <property name="text"> - <string>Sysroot:</string> - </property> - </widget> - </item> - <item row="3" column="1"> - <widget class="Utils::PathChooser" name="sysrootPathChooser" native="true"/> + <item row="5" column="1"> + <widget class="QCheckBox" name="useServerStartScriptCheckBox"/> </item> - <item row="0" column="0"> - <widget class="QLabel" name="executableLabel"> + <item row="6" column="0"> + <widget class="QLabel" name="serverStartScriptLabel"> <property name="text"> - <string>Local executable:</string> + <string>Server start script:</string> </property> </widget> </item> + <item row="6" column="1"> + <widget class="Utils::PathChooser" name="serverStartScript" native="true"/> + </item> </layout> </item> <item>