diff options
author | Tobias Hunger <tobias.hunger@nokia.com> | 2010-06-29 12:56:08 +0200 |
---|---|---|
committer | Tobias Hunger <tobias.hunger@nokia.com> | 2010-06-29 12:58:43 +0200 |
commit | edfe3fec1c96962106d20a1792567472219af129 (patch) | |
tree | d6c9160b6c6835bdccd0d39bbe3c8a653acef373 /src/plugins/projectexplorer/targetselector.cpp | |
parent | d8ad6aa275ce4ab7e0827aa342d75c6a2f5c3f5c (diff) | |
download | qt-creator-edfe3fec1c96962106d20a1792567472219af129.tar.gz |
Use popup menu when selecting new targets
Use a popup menu when adding new targets in projects mode.
Task-number: QTCREATORBUG-1763
Diffstat (limited to 'src/plugins/projectexplorer/targetselector.cpp')
-rw-r--r-- | src/plugins/projectexplorer/targetselector.cpp | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/src/plugins/projectexplorer/targetselector.cpp b/src/plugins/projectexplorer/targetselector.cpp index dd920ec46e..c17433feba 100644 --- a/src/plugins/projectexplorer/targetselector.cpp +++ b/src/plugins/projectexplorer/targetselector.cpp @@ -4,6 +4,7 @@ #include <utils/stylehelper.h> #include <QtGui/QPainter> +#include <QtGui/QMenu> #include <QtGui/QMouseEvent> #include <QtGui/QFontMetrics> @@ -23,7 +24,8 @@ TargetSelector::TargetSelector(QWidget *parent) : m_targetremovebuttondisabled(QLatin1String(":/projectexplorer/images/targetremovebutton_disabled.png")), m_currentTargetIndex(-1), m_addButtonEnabled(true), - m_removeButtonEnabled(false) + m_removeButtonEnabled(false), + m_addButtonMenu(0) { QFont f = font(); f.setPixelSize(10); @@ -94,6 +96,11 @@ void TargetSelector::setRemoveButtonEnabled(bool enabled) m_removeButtonEnabled = enabled; } +void TargetSelector::setAddButtonMenu(QMenu *menu) +{ + m_addButtonMenu = menu; +} + void TargetSelector::setCurrentSubIndex(int subindex) { if (subindex < 0 || @@ -148,8 +155,8 @@ void TargetSelector::mousePressEvent(QMouseEvent *event) } else if (event->x() > ADDBUTTON_WIDTH + (targetWidth() + 1) * m_targets.size()) { // check for add button event->accept(); - if (m_addButtonEnabled) - emit addButtonClicked(); + if (m_addButtonEnabled && m_addButtonMenu) + m_addButtonMenu->popup(mapToGlobal(event->pos())); } else { // find the clicked target button int x = ADDBUTTON_WIDTH; |