forked from qt-creator/qt-creator
Added span column property to BaseTreeView. This takes an index to a column that will span remaining space not explicitly taken by the other columns. This listens to resizing of the tree view and columns that are manually resized to keep the sizes consistent. The stack view now once again uses the StackView class, which now sets the function column as the span column. This will adjust the column size the first time stack frame contents are encountered. It will not resize automatically until it's re-created (the next debug session) so it doesn't undo custom resizing. This also restores the ability to toggle stack addresses. Some obsolete parts of this class were removed as part of retrofitting it for the current state of the debugger. Stack, breakpoint, and thread views now resize remaining space for the function column rather than empty space at the end. This is generally the most important field when debugging and can get very long, especially in C++. Task-number: QTCREATORBUG-21763 Change-Id: I821c83d1d951f3311d7fa9fcddcbdeedfeed1573 Reviewed-by: Orgad Shaneh <orgads@gmail.com>
51 lines
1.6 KiB
C++
51 lines
1.6 KiB
C++
/****************************************************************************
|
|
**
|
|
** Copyright (C) 2016 The Qt Company Ltd.
|
|
** Contact: https://www.qt.io/licensing/
|
|
**
|
|
** This file is part of Qt Creator.
|
|
**
|
|
** Commercial License Usage
|
|
** Licensees holding valid commercial Qt licenses may use this file in
|
|
** accordance with the commercial license agreement provided with the
|
|
** Software or, alternatively, in accordance with the terms contained in
|
|
** a written agreement between you and The Qt Company. For licensing terms
|
|
** and conditions see https://www.qt.io/terms-conditions. For further
|
|
** information use the contact form at https://www.qt.io/contact-us.
|
|
**
|
|
** GNU General Public License Usage
|
|
** Alternatively, this file may be used under the terms of the GNU
|
|
** General Public License version 3 as published by the Free Software
|
|
** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT
|
|
** included in the packaging of this file. Please review the following
|
|
** information to ensure the GNU General Public License requirements will
|
|
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
|
|
**
|
|
****************************************************************************/
|
|
|
|
#pragma once
|
|
|
|
#include <utils/basetreeview.h>
|
|
|
|
#include <QCoreApplication>
|
|
|
|
namespace Debugger {
|
|
namespace Internal {
|
|
|
|
class StackTreeView : public Utils::BaseTreeView
|
|
{
|
|
public:
|
|
explicit StackTreeView(QWidget *parent = nullptr);
|
|
|
|
private:
|
|
void setModel(QAbstractItemModel *model) override;
|
|
|
|
void showAddressColumn(bool on);
|
|
void adjustForContents(bool refreshSpan = false);
|
|
|
|
bool m_contentsAdjusted = false;
|
|
};
|
|
|
|
} // namespace Internal
|
|
} // namespace Debugger
|