forked from qt-creator/qt-creator
Debugger: More visible buttons, less clicks in DebuggerKitConfigWidget
Change-Id: If19c3640d40b1af8df6316b9bcb17e99020bee15 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: hjk <hjk121@nokiamail.com>
This commit is contained in:
@@ -30,6 +30,8 @@
|
|||||||
#include "debuggerkitconfigwidget.h"
|
#include "debuggerkitconfigwidget.h"
|
||||||
#include "debuggerkitinformation.h"
|
#include "debuggerkitinformation.h"
|
||||||
|
|
||||||
|
#include <coreplugin/icore.h>
|
||||||
|
|
||||||
#include <projectexplorer/abi.h>
|
#include <projectexplorer/abi.h>
|
||||||
#include <projectexplorer/kitinformation.h>
|
#include <projectexplorer/kitinformation.h>
|
||||||
|
|
||||||
@@ -65,17 +67,19 @@ static const char debuggingToolsWikiLinkC[] = "http://qt-project.org/wiki/Qt_Cre
|
|||||||
|
|
||||||
DebuggerKitConfigWidget::DebuggerKitConfigWidget(ProjectExplorer::Kit *workingCopy)
|
DebuggerKitConfigWidget::DebuggerKitConfigWidget(ProjectExplorer::Kit *workingCopy)
|
||||||
: KitConfigWidget(workingCopy),
|
: KitConfigWidget(workingCopy),
|
||||||
m_label(new Utils::ElidingLabel),
|
m_main(new QWidget),
|
||||||
m_button(new QPushButton(tr("Manage...")))
|
m_label(new Utils::ElidingLabel(m_main)),
|
||||||
|
m_autoDetectButton(new QPushButton(tr("Auto-detect"))),
|
||||||
|
m_editButton(new QPushButton(tr("Edit...")))
|
||||||
{
|
{
|
||||||
// ToolButton with Menu, defaulting to 'Autodetect'.
|
QHBoxLayout *mainLayout = new QHBoxLayout(m_main);
|
||||||
QMenu *buttonMenu = new QMenu(m_button);
|
mainLayout->addWidget(m_label);
|
||||||
QAction *autoDetectAction = buttonMenu->addAction(tr("Auto-detect"));
|
mainLayout->addStretch();
|
||||||
connect(autoDetectAction, SIGNAL(triggered()), this, SLOT(autoDetectDebugger()));
|
mainLayout->addWidget(m_autoDetectButton);
|
||||||
QAction *changeAction = buttonMenu->addAction(tr("Edit..."));
|
m_label->setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::Preferred);
|
||||||
connect(changeAction, SIGNAL(triggered()), this, SLOT(showDialog()));
|
|
||||||
m_button->setMenu(buttonMenu);
|
|
||||||
|
|
||||||
|
connect(m_autoDetectButton, SIGNAL(pressed()), SLOT(autoDetectDebugger()));
|
||||||
|
connect(m_editButton, SIGNAL(pressed()), SLOT(showDialog()));
|
||||||
refresh();
|
refresh();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -86,12 +90,12 @@ QString DebuggerKitConfigWidget::toolTip() const
|
|||||||
|
|
||||||
QWidget *DebuggerKitConfigWidget::mainWidget() const
|
QWidget *DebuggerKitConfigWidget::mainWidget() const
|
||||||
{
|
{
|
||||||
return m_label;
|
return m_main;
|
||||||
}
|
}
|
||||||
|
|
||||||
QWidget *DebuggerKitConfigWidget::buttonWidget() const
|
QWidget *DebuggerKitConfigWidget::buttonWidget() const
|
||||||
{
|
{
|
||||||
return m_button;
|
return m_editButton;
|
||||||
}
|
}
|
||||||
|
|
||||||
QString DebuggerKitConfigWidget::displayName() const
|
QString DebuggerKitConfigWidget::displayName() const
|
||||||
@@ -101,7 +105,7 @@ QString DebuggerKitConfigWidget::displayName() const
|
|||||||
|
|
||||||
void DebuggerKitConfigWidget::makeReadOnly()
|
void DebuggerKitConfigWidget::makeReadOnly()
|
||||||
{
|
{
|
||||||
m_button->setEnabled(false);
|
m_editButton->setEnabled(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
void DebuggerKitConfigWidget::refresh()
|
void DebuggerKitConfigWidget::refresh()
|
||||||
@@ -116,7 +120,7 @@ void DebuggerKitConfigWidget::autoDetectDebugger()
|
|||||||
|
|
||||||
void DebuggerKitConfigWidget::showDialog()
|
void DebuggerKitConfigWidget::showDialog()
|
||||||
{
|
{
|
||||||
DebuggerKitConfigDialog dialog;
|
DebuggerKitConfigDialog dialog(Core::ICore::mainWindow());
|
||||||
dialog.setWindowTitle(tr("Debugger for \"%1\"").arg(m_kit->displayName()));
|
dialog.setWindowTitle(tr("Debugger for \"%1\"").arg(m_kit->displayName()));
|
||||||
dialog.setDebuggerItem(DebuggerKitInformation::debuggerItem(m_kit));
|
dialog.setDebuggerItem(DebuggerKitInformation::debuggerItem(m_kit));
|
||||||
if (dialog.exec() == QDialog::Accepted)
|
if (dialog.exec() == QDialog::Accepted)
|
||||||
|
|||||||
@@ -78,8 +78,10 @@ private slots:
|
|||||||
void showDialog();
|
void showDialog();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
QWidget *m_main;
|
||||||
QLabel *m_label;
|
QLabel *m_label;
|
||||||
QPushButton *m_button;
|
QPushButton *m_autoDetectButton;
|
||||||
|
QPushButton *m_editButton;
|
||||||
};
|
};
|
||||||
|
|
||||||
class DebuggerKitConfigDialog : public QDialog
|
class DebuggerKitConfigDialog : public QDialog
|
||||||
|
|||||||
Reference in New Issue
Block a user