aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/debugger/watchhandler.cpp
diff options
context:
space:
mode:
authorAurindam Jana <[email protected]>2012-11-08 09:40:56 +0100
committerKai Koehne <[email protected]>2012-11-09 16:23:12 +0100
commitbc5cda03e481637bd93ff61f957774e2aa4e3bf7 (patch)
tree3e5666548f383780342264d9e1d7e8c5cb4a8250 /src/plugins/debugger/watchhandler.cpp
parent28bcc5634c2521d514fdae7dc05585dc20c1bde6 (diff)
Inspector: Do not disable Locals and Expressions
Inspector follows a different cycle and its contents are always valid during a debug session. Show the values in Locals and Expressions as valid for user to interact with them. Task-number: QTCREATORBUG-8167 Change-Id: If2f622de5b8bf6da78571bc007efd19602a5f389 Reviewed-by: hjk <[email protected]> Reviewed-by: Robert Loehning <[email protected]> Reviewed-by: Eike Ziller <[email protected]> Reviewed-by: Kai Koehne <[email protected]>
Diffstat (limited to 'src/plugins/debugger/watchhandler.cpp')
-rw-r--r--src/plugins/debugger/watchhandler.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/plugins/debugger/watchhandler.cpp b/src/plugins/debugger/watchhandler.cpp
index 86a47c9b869..8b1d3a6583c 100644
--- a/src/plugins/debugger/watchhandler.cpp
+++ b/src/plugins/debugger/watchhandler.cpp
@@ -731,10 +731,10 @@ bool WatchModel::canFetchMore(const QModelIndex &idx) const
{
if (!idx.isValid())
return false;
- if (!contentIsValid())
- return false;
WatchItem *item = watchItem(idx);
QTC_ASSERT(item, return false);
+ if (!contentIsValid() && !item->isInspect())
+ return false;
if (!item->iname.contains('.'))
return false;
return !m_fetchTriggered.contains(item->iname);
@@ -1032,7 +1032,7 @@ QVariant WatchModel::data(const QModelIndex &idx, int role) const
static const QVariant red(QColor(200, 0, 0));
static const QVariant gray(QColor(140, 140, 140));
if (idx.column() == 1) {
- if (!data.valueEnabled || !contentIsValid())
+ if (!data.valueEnabled || (!contentIsValid() && !data.isInspect()))
return gray;
if (data.value != m_valueCache.value(data.iname))
return red;
@@ -1152,10 +1152,11 @@ bool WatchModel::setData(const QModelIndex &idx, const QVariant &value, int role
Qt::ItemFlags WatchModel::flags(const QModelIndex &idx) const
{
- if (!contentIsValid())
+ if (!idx.isValid())
return Qt::ItemFlags();
- if (!idx.isValid())
+ const WatchData &data = *watchItem(idx);
+ if (!contentIsValid() && !data.isInspect())
return Qt::ItemFlags();
// Enabled, editable, selectable, checkable, and can be used both as the
@@ -1166,7 +1167,6 @@ Qt::ItemFlags WatchModel::flags(const QModelIndex &idx) const
static const Qt::ItemFlags editable = notEditable | Qt::ItemIsEditable;
// Disable editing if debuggee is positively running except for Inspector data
- const WatchData &data = *watchItem(idx);
const bool isRunning = engine() && engine()->state() == InferiorRunOk;
if (isRunning && engine() && !engine()->hasCapability(AddWatcherWhileRunningCapability) &&
!data.isInspect())