Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
QTreeView Class Reference

The QTreeView class provides a default model/view implementation of a tree view. More...

#include <qtreeview.h>

+ Inheritance diagram for QTreeView:
+ Collaboration diagram for QTreeView:

Public Slots

void hideColumn (int column)
 Hides the column given.
 
void showColumn (int column)
 Shows the given column in the tree view.
 
void expand (const QModelIndex &index)
 Expands the model item specified by the index.
 
void collapse (const QModelIndex &index)
 Collapses the model item specified by the index.
 
void resizeColumnToContents (int column)
 Resizes the column given to the size of its contents.
 
void sortByColumn (int column, Qt::SortOrder order)
 
void expandAll ()
 
void expandRecursively (const QModelIndex &index, int depth=-1)
 
void collapseAll ()
 
void expandToDepth (int depth)
 
- Public Slots inherited from QAbstractItemView
void edit (const QModelIndex &index)
 Starts editing the item corresponding to the given index if it is editable.
 
void clearSelection ()
 Deselects all selected items.
 
void setCurrentIndex (const QModelIndex &index)
 Sets the current item to be the item at index.
 
void scrollToTop ()
 
void scrollToBottom ()
 
void update (const QModelIndex &index)
 

Signals

void expanded (const QModelIndex &index)
 This signal is emitted when the item specified by index is expanded.
 
void collapsed (const QModelIndex &index)
 This signal is emitted when the item specified by index is collapsed.
 
- Signals inherited from QAbstractItemView
void pressed (const QModelIndex &index)
 This signal is emitted when a mouse button is pressed.
 
void clicked (const QModelIndex &index)
 This signal is emitted when a mouse button is left-clicked.
 
void doubleClicked (const QModelIndex &index)
 This signal is emitted when a mouse button is double-clicked.
 
void activated (const QModelIndex &index)
 This signal is emitted when the item specified by index is activated by the user.
 
void entered (const QModelIndex &index)
 This signal is emitted when the mouse cursor enters the item specified by index.
 
void viewportEntered ()
 This signal is emitted when the mouse cursor enters the viewport.
 
void iconSizeChanged (const QSize &size)
 

Public Member Functions

 QTreeView (QWidget *parent=nullptr)
 Constructs a tree view with a parent to represent a model's data.
 
 ~QTreeView ()
 Destroys the tree view.
 
void setModel (QAbstractItemModel *model) override
 \reimp
 
void setRootIndex (const QModelIndex &index) override
 \reimp
 
void setSelectionModel (QItemSelectionModel *selectionModel) override
 \reimp
 
QHeaderViewheader () const
 Returns the header for the tree view.
 
void setHeader (QHeaderView *header)
 Sets the header for the tree view, to the given header.
 
int autoExpandDelay () const
 
void setAutoExpandDelay (int delay)
 
int indentation () const
 
void setIndentation (int i)
 
void resetIndentation ()
 
bool rootIsDecorated () const
 
void setRootIsDecorated (bool show)
 
bool uniformRowHeights () const
 
void setUniformRowHeights (bool uniform)
 
bool itemsExpandable () const
 
void setItemsExpandable (bool enable)
 
bool expandsOnDoubleClick () const
 
void setExpandsOnDoubleClick (bool enable)
 
int columnViewportPosition (int column) const
 Returns the horizontal position of the column in the viewport.
 
int columnWidth (int column) const
 Returns the width of the column.
 
void setColumnWidth (int column, int width)
 
int columnAt (int x) const
 Returns the column in the tree view whose header covers the x coordinate given.
 
bool isColumnHidden (int column) const
 Returns true if the column is hidden; otherwise returns false.
 
void setColumnHidden (int column, bool hide)
 If hide is true the column is hidden, otherwise the column is shown.
 
bool isHeaderHidden () const
 
void setHeaderHidden (bool hide)
 
bool isRowHidden (int row, const QModelIndex &parent) const
 Returns true if the item in the given row of the parent is hidden; otherwise returns false.
 
void setRowHidden (int row, const QModelIndex &parent, bool hide)
 If hide is true the row with the given parent is hidden, otherwise the row is shown.
 
bool isFirstColumnSpanned (int row, const QModelIndex &parent) const
 
void setFirstColumnSpanned (int row, const QModelIndex &parent, bool span)
 
bool isExpanded (const QModelIndex &index) const
 Returns true if the model item index is expanded; otherwise returns false.
 
void setExpanded (const QModelIndex &index, bool expand)
 Sets the item referred to by index to either collapse or expanded, depending on the value of expanded.
 
void setSortingEnabled (bool enable)
 
bool isSortingEnabled () const
 
void setAnimated (bool enable)
 
bool isAnimated () const
 
void setAllColumnsShowFocus (bool enable)
 
bool allColumnsShowFocus () const
 
void setWordWrap (bool on)
 
bool wordWrap () const
 
void setTreePosition (int logicalIndex)
 
int treePosition () const
 
void keyboardSearch (const QString &search) override
 \reimp
 
QRect visualRect (const QModelIndex &index) const override
 Returns the rectangle on the viewport occupied by the item at index.
 
void scrollTo (const QModelIndex &index, ScrollHint hint=EnsureVisible) override
 Scroll the contents of the tree view until the given model item index is visible.
 
QModelIndex indexAt (const QPoint &p) const override
 \reimp
 
QModelIndex indexAbove (const QModelIndex &index) const
 Returns the model index of the item above index.
 
QModelIndex indexBelow (const QModelIndex &index) const
 Returns the model index of the item below index.
 
void doItemsLayout () override
 
void reset () override
 \reimp
 
void dataChanged (const QModelIndex &topLeft, const QModelIndex &bottomRight, const QList< int > &roles=QList< int >()) override
 \reimp
 
void selectAll () override
 \reimp
 
- Public Member Functions inherited from QAbstractItemView
 QAbstractItemView (QWidget *parent=nullptr)
 Constructs an abstract item view with the given parent.
 
 ~QAbstractItemView ()
 Destroys the view.
 
QAbstractItemModelmodel () const
 Returns the model that this view is presenting.
 
QItemSelectionModelselectionModel () const
 Returns the current selection model.
 
void setItemDelegate (QAbstractItemDelegate *delegate)
 Sets the item delegate for this view and its model to delegate.
 
QAbstractItemDelegateitemDelegate () const
 Returns the item delegate used by this view and model.
 
void setSelectionMode (QAbstractItemView::SelectionMode mode)
 
QAbstractItemView::SelectionMode selectionMode () const
 
void setSelectionBehavior (QAbstractItemView::SelectionBehavior behavior)
 
QAbstractItemView::SelectionBehavior selectionBehavior () const
 
QModelIndex currentIndex () const
 Returns the model index of the current item.
 
QModelIndex rootIndex () const
 Returns the model index of the model's root item.
 
void setEditTriggers (EditTriggers triggers)
 
EditTriggers editTriggers () const
 
void setVerticalScrollMode (ScrollMode mode)
 
ScrollMode verticalScrollMode () const
 
void resetVerticalScrollMode ()
 
void setHorizontalScrollMode (ScrollMode mode)
 
ScrollMode horizontalScrollMode () const
 
void resetHorizontalScrollMode ()
 
void setAutoScroll (bool enable)
 
bool hasAutoScroll () const
 
void setAutoScrollMargin (int margin)
 
int autoScrollMargin () const
 
void setTabKeyNavigation (bool enable)
 
bool tabKeyNavigation () const
 
void setAlternatingRowColors (bool enable)
 
bool alternatingRowColors () const
 
void setIconSize (const QSize &size)
 
QSize iconSize () const
 
void setTextElideMode (Qt::TextElideMode mode)
 
Qt::TextElideMode textElideMode () const
 
QSize sizeHintForIndex (const QModelIndex &index) const
 Returns the size hint for the item with the specified index or an invalid size for invalid indexes.
 
virtual int sizeHintForRow (int row) const
 Returns the height size hint for the specified row or -1 if there is no model.
 
void openPersistentEditor (const QModelIndex &index)
 Opens a persistent editor on the item at the given index.
 
void closePersistentEditor (const QModelIndex &index)
 Closes the persistent editor for the item at the given index.
 
bool isPersistentEditorOpen (const QModelIndex &index) const
 
void setIndexWidget (const QModelIndex &index, QWidget *widget)
 
QWidgetindexWidget (const QModelIndex &index) const
 
void setItemDelegateForRow (int row, QAbstractItemDelegate *delegate)
 
QAbstractItemDelegateitemDelegateForRow (int row) const
 
void setItemDelegateForColumn (int column, QAbstractItemDelegate *delegate)
 
QAbstractItemDelegateitemDelegateForColumn (int column) const
 
virtual QAbstractItemDelegateitemDelegateForIndex (const QModelIndex &index) const
 
virtual QVariant inputMethodQuery (Qt::InputMethodQuery query) const override
 \reimp
 

Protected Slots

void columnResized (int column, int oldSize, int newSize)
 This function is called whenever {column}'s size is changed in the header.
 
void columnCountChanged (int oldCount, int newCount)
 Informs the tree view that the number of columns in the tree view has changed from oldCount to newCount.
 
void columnMoved ()
 This slot is called whenever a column has been moved.
 
void reexpand ()
 
void rowsRemoved (const QModelIndex &parent, int first, int last)
 
void verticalScrollbarValueChanged (int value) override
 
- Protected Slots inherited from QAbstractItemView
virtual void updateEditorData ()
 
virtual void updateEditorGeometries ()
 
virtual void verticalScrollbarAction (int action)
 
virtual void verticalScrollbarValueChanged (int value)
 
virtual void horizontalScrollbarValueChanged (int value)
 
virtual void closeEditor (QWidget *editor, QAbstractItemDelegate::EndEditHint hint)
 Closes the given editor, and releases it.
 
virtual void commitData (QWidget *editor)
 Commit the data in the editor to the model.
 
virtual void editorDestroyed (QObject *editor)
 This function is called when the given editor has been destroyed.
 

Protected Member Functions

 QTreeView (QTreeViewPrivate &dd, QWidget *parent=nullptr)
 
void scrollContentsBy (int dx, int dy) override
 Scrolls the contents of the tree view by (dx, dy).
 
void rowsInserted (const QModelIndex &parent, int start, int end) override
 Informs the view that the rows from the start row to the end row inclusive have been inserted into the parent model item.
 
void rowsAboutToBeRemoved (const QModelIndex &parent, int start, int end) override
 Informs the view that the rows from the start row to the end row inclusive are about to removed from the given parent model item.
 
QModelIndex moveCursor (CursorAction cursorAction, Qt::KeyboardModifiers modifiers) override
 Move the cursor in the way described by cursorAction, using the information provided by the button modifiers.
 
int horizontalOffset () const override
 Returns the horizontal offset of the items in the treeview.
 
int verticalOffset () const override
 Returns the vertical offset of the items in the tree view.
 
void setSelection (const QRect &rect, QItemSelectionModel::SelectionFlags command) override
 Applies the selection command to the items in or touched by the rectangle, rect.
 
QRegion visualRegionForSelection (const QItemSelection &selection) const override
 Returns the rectangle from the viewport of the items in the given selection.
 
QModelIndexList selectedIndexes () const override
 \reimp
 
void changeEvent (QEvent *event) override
 \reimp
 
void timerEvent (QTimerEvent *event) override
 \reimp
 
void paintEvent (QPaintEvent *event) override
 \reimp
 
void drawTree (QPainter *painter, const QRegion &region) const
 
virtual void drawRow (QPainter *painter, const QStyleOptionViewItem &options, const QModelIndex &index) const
 Draws the row in the tree view that contains the model item index, using the painter given.
 
virtual void drawBranches (QPainter *painter, const QRect &rect, const QModelIndex &index) const
 Draws the branches in the tree view on the same row as the model item index, using the painter given.
 
void mousePressEvent (QMouseEvent *event) override
 \reimp
 
void mouseReleaseEvent (QMouseEvent *event) override
 \reimp
 
void mouseDoubleClickEvent (QMouseEvent *event) override
 \reimp
 
void mouseMoveEvent (QMouseEvent *event) override
 \reimp
 
void keyPressEvent (QKeyEvent *event) override
 \reimp
 
bool viewportEvent (QEvent *event) override
 \reimp
 
void updateGeometries () override
 \reimp
 
QSize viewportSizeHint () const override
 \reimp
 
int sizeHintForColumn (int column) const override
 Returns the size hint for the column's width or -1 if there is no model.
 
int indexRowSizeHint (const QModelIndex &index) const
 Returns the size hint for the row indicated by index.
 
int rowHeight (const QModelIndex &index) const
 
void horizontalScrollbarAction (int action) override
 
bool isIndexHidden (const QModelIndex &index) const override
 \reimp
 
void selectionChanged (const QItemSelection &selected, const QItemSelection &deselected) override
 \reimp
 
void currentChanged (const QModelIndex &current, const QModelIndex &previous) override
 \reimp
 
- Protected Member Functions inherited from QAbstractItemView
 QAbstractItemView (QAbstractItemViewPrivate &, QWidget *parent=nullptr)
 
virtual bool edit (const QModelIndex &index, EditTrigger trigger, QEvent *event)
 Starts editing the item at index, creating an editor if necessary, and returns true if the view's \l{State} is now EditingState; otherwise returns false.
 
virtual QItemSelectionModel::SelectionFlags selectionCommand (const QModelIndex &index, const QEvent *event=nullptr) const
 Returns the SelectionFlags to be used when updating a selection model for the specified index.
 
virtual void initViewItemOption (QStyleOptionViewItem *option) const
 
State state () const
 Returns the item view's state.
 
void setState (State state)
 Sets the item view's state to the given state.
 
void scheduleDelayedItemsLayout ()
 Schedules a layout of the items in the view to be executed when the event processing starts.
 
void executeDelayedItemsLayout ()
 Executes the scheduled layouts without waiting for the event processing to begin.
 
void setDirtyRegion (const QRegion &region)
 
void scrollDirtyRegion (int dx, int dy)
 Prepares the view for scrolling by ({dx},{dy}) pixels by moving the dirty regions in the opposite direction.
 
QPoint dirtyRegionOffset () const
 Returns the offset of the dirty regions in the view.
 
void startAutoScroll ()
 
void stopAutoScroll ()
 
void doAutoScroll ()
 
bool focusNextPrevChild (bool next) override
 \reimp
 
bool event (QEvent *event) override
 \reimp
 
bool viewportEvent (QEvent *event) override
 This function is used to handle tool tips, and What's This? mode, if the given event is a QEvent::ToolTip,or a QEvent::WhatsThis.
 
void mousePressEvent (QMouseEvent *event) override
 This function is called with the given event when a mouse button is pressed while the cursor is inside the widget.
 
void mouseMoveEvent (QMouseEvent *event) override
 This function is called with the given event when a mouse move event is sent to the widget.
 
void mouseReleaseEvent (QMouseEvent *event) override
 This function is called with the given event when a mouse button is released, after a mouse press event on the widget.
 
void mouseDoubleClickEvent (QMouseEvent *event) override
 This function is called with the given event when a mouse button is double clicked inside the widget.
 
void focusInEvent (QFocusEvent *event) override
 This function is called with the given event when the widget obtains the focus.
 
void focusOutEvent (QFocusEvent *event) override
 This function is called with the given event when the widget loses the focus.
 
void keyPressEvent (QKeyEvent *event) override
 This function is called with the given event when a key event is sent to the widget.
 
void resizeEvent (QResizeEvent *event) override
 This function is called with the given event when a resize event is sent to the widget.
 
void timerEvent (QTimerEvent *event) override
 This function is called with the given event when a timer event is sent to the widget.
 
void inputMethodEvent (QInputMethodEvent *event) override
 \reimp
 
bool eventFilter (QObject *object, QEvent *event) override
 \reimp
 
QSize viewportSizeHint () const override
 

Properties

int autoExpandDelay
 The delay time before items in a tree are opened during a drag and drop operation.
 
int indentation
 indentation of the items in the tree view.
 
bool rootIsDecorated
 whether to show controls for expanding and collapsing top-level items
 
bool uniformRowHeights
 whether all items in the treeview have the same height
 
bool itemsExpandable
 whether the items are expandable by the user.
 
bool sortingEnabled
 whether sorting is enabled
 
bool animated
 whether animations are enabled
 
bool allColumnsShowFocus
 whether items should show keyboard focus using all columns
 
bool wordWrap
 the item text word-wrapping policy
 
bool headerHidden
 whether the header is shown or not.
 
bool expandsOnDoubleClick
 whether the items can be expanded by double-clicking.
 
- Properties inherited from QAbstractItemView
bool autoScroll
 whether autoscrolling in drag move events is enabled
 
int autoScrollMargin
 the size of the area when auto scrolling is triggered
 
EditTriggers editTriggers
 which actions will initiate item editing
 
bool tabKeyNavigation
 whether item navigation with tab and backtab is enabled.
 
bool alternatingRowColors
 whether to draw the background using alternating colors
 
SelectionMode selectionMode
 which selection mode the view operates in
 
SelectionBehavior selectionBehavior
 which selection behavior the view uses
 
QSize iconSize
 the size of items' icons
 
Qt::TextElideMode textElideMode
 the position of the "..." in elided text.
 
ScrollMode verticalScrollMode
 how the view scrolls its contents in the vertical direction
 
ScrollMode horizontalScrollMode
 how the view scrolls its contents in the horizontal direction
 

Friends

class ::tst_QTreeView
 
class QAccessibleTable
 
class QAccessibleTree
 
class QAccessibleTableCell
 

Additional Inherited Members

- Public Types inherited from QAbstractItemView
enum  SelectionMode {
  NoSelection , SingleSelection , MultiSelection , ExtendedSelection ,
  ContiguousSelection
}
 This enum indicates how the view responds to user selections: More...
 
enum  SelectionBehavior { SelectItems , SelectRows , SelectColumns }
 \value SelectItems Selecting single items. More...
 
enum  ScrollHint { EnsureVisible , PositionAtTop , PositionAtBottom , PositionAtCenter }
 \value EnsureVisible Scroll to ensure that the item is visible. More...
 
enum  EditTrigger {
  NoEditTriggers = 0 , CurrentChanged = 1 , DoubleClicked = 2 , SelectedClicked = 4 ,
  EditKeyPressed = 8 , AnyKeyPressed = 16 , AllEditTriggers = 31
}
 This enum describes actions which will initiate item editing. More...
 
enum  ScrollMode { ScrollPerItem , ScrollPerPixel }
 
- Protected Types inherited from QAbstractItemView
enum  CursorAction {
  MoveUp , MoveDown , MoveLeft , MoveRight ,
  MoveHome , MoveEnd , MovePageUp , MovePageDown ,
  MoveNext , MovePrevious
}
 This enum describes the different ways to navigate between items,. More...
 
enum  State {
  NoState , DraggingState , DragSelectingState , EditingState ,
  ExpandingState , CollapsingState , AnimatingState
}
 Describes the different states the view can be in. More...
 

Detailed Description

The QTreeView class provides a default model/view implementation of a tree view.

\inmodule QtWidgets

A QTreeView implements a tree representation of items from a model. This class is used to provide standard hierarchical lists that were previously provided by the QListView class, but using the more flexible approach provided by Qt's model/view architecture.

The QTreeView class is one of the \l{Model/View Classes} and is part of Qt's \l{Model/View Programming}{model/view framework}.

QTreeView implements the interfaces defined by the QAbstractItemView class to allow it to display data provided by models derived from the QAbstractItemModel class.

It is simple to construct a tree view displaying data from a model. In the following example, the contents of a directory are supplied by a QFileSystemModel and displayed as a tree:

model->setRootPath(QDir::currentPath());
QTreeView *tree = new QTreeView(splitter);

The model/view architecture ensures that the contents of the tree view are updated as the model changes.

Items that have children can be in an expanded (children are visible) or collapsed (children are hidden) state. When this state changes a collapsed() or expanded() signal is emitted with the model index of the relevant item.

The amount of indentation used to indicate levels of hierarchy is controlled by the \l indentation property.

Headers in tree views are constructed using the QHeaderView class and can be hidden using {header()->hide()}. Note that each header is configured with its \l{QHeaderView::}{stretchLastSection} property set to true, ensuring that the view does not waste any of the space assigned to it for its header. If this value is set to true, this property will override the resize mode set on the last section in the header.

By default, all columns in a tree view are movable except the first. To disable movement of these columns, use QHeaderView's \l {QHeaderView::}{setSectionsMovable()} function. For more information about rearranging sections, see \l {Moving Header Sections}.

Definition at line 19 of file qtreeview.h.

Constructor & Destructor Documentation

◆ QTreeView() [1/2]

QTreeView::QTreeView ( QWidget * parent = nullptr)
explicit

Constructs a tree view with a parent to represent a model's data.

Use setModel() to set the model.

See also
QAbstractItemModel

Definition at line 150 of file qtreeview.cpp.

References d.

◆ ~QTreeView()

QTreeView::~QTreeView ( )

Destroys the tree view.

Definition at line 170 of file qtreeview.cpp.

References d.

◆ QTreeView() [2/2]

QTreeView::QTreeView ( QTreeViewPrivate & dd,
QWidget * parent = nullptr )
protected

Definition at line 160 of file qtreeview.cpp.

References d.

Member Function Documentation

◆ allColumnsShowFocus()

bool QTreeView::allColumnsShowFocus ( ) const

Definition at line 905 of file qtreeview.cpp.

References d.

◆ autoExpandDelay()

int QTreeView::autoExpandDelay ( ) const

Definition at line 317 of file qtreeview.cpp.

References d.

◆ changeEvent()

void QTreeView::changeEvent ( QEvent * event)
overrideprotected

\reimp

Definition at line 1240 of file qtreeview.cpp.

References d, and QEvent::StyleChange.

◆ collapse

void QTreeView::collapse ( const QModelIndex & index)
slot

Collapses the model item specified by the index.

See also
collapsed()

Definition at line 762 of file qtreeview.cpp.

References collapsed(), d, emit, i, updateGeometries(), and viewport().

Referenced by QTreeWidget::collapseItem(), keyPressEvent(), and setExpanded().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ collapseAll

void QTreeView::collapseAll ( )
slot
Since
4.2

Collapses all expanded items.

See also
expandAll(), expand(), collapse(), setExpanded()

Definition at line 2769 of file qtreeview.cpp.

References collapsed(), d, doItemsLayout(), emit, QMetaMethod::fromSignal(), i, and Qt::ItemNeverHasChildren.

+ Here is the call graph for this function:

◆ collapsed

void QTreeView::collapsed ( const QModelIndex & index)
signal

This signal is emitted when the item specified by index is collapsed.

Referenced by QTreeWidget::QTreeWidget(), collapse(), collapseAll(), and expandToDepth().

+ Here is the caller graph for this function:

◆ columnAt()

int QTreeView::columnAt ( int x) const

Returns the column in the tree view whose header covers the x coordinate given.

Definition at line 502 of file qtreeview.cpp.

References d.

◆ columnCountChanged

void QTreeView::columnCountChanged ( int oldCount,
int newCount )
protectedslot

Informs the tree view that the number of columns in the tree view has changed from oldCount to newCount.

Definition at line 2594 of file qtreeview.cpp.

References d, isVisible(), updateGeometries(), and viewport().

Referenced by setHeader().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ columnMoved

void QTreeView::columnMoved ( )
protectedslot

This slot is called whenever a column has been moved.

Definition at line 2511 of file qtreeview.cpp.

References d, and QAbstractItemView::updateEditorGeometries().

Referenced by setHeader().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ columnResized

void QTreeView::columnResized ( int column,
int oldSize,
int newSize )
protectedslot

This function is called whenever {column}'s size is changed in the header.

oldSize and newSize give the previous size and the new size in pixels.

See also
setColumnWidth()

Definition at line 2846 of file qtreeview.cpp.

References d.

Referenced by setHeader().

+ Here is the caller graph for this function:

◆ columnViewportPosition()

int QTreeView::columnViewportPosition ( int column) const

Returns the horizontal position of the column in the viewport.

Definition at line 468 of file qtreeview.cpp.

References d.

Referenced by drawRow(), scrollTo(), timerEvent(), and visualRegionForSelection().

+ Here is the caller graph for this function:

◆ columnWidth()

int QTreeView::columnWidth ( int column) const

Returns the width of the column.

See also
resizeColumnToContents(), setColumnWidth()

Definition at line 479 of file qtreeview.cpp.

References d.

Referenced by scrollTo(), timerEvent(), and visualRegionForSelection().

+ Here is the caller graph for this function:

◆ currentChanged()

void QTreeView::currentChanged ( const QModelIndex & current,
const QModelIndex & previous )
overrideprotectedvirtual

\reimp

Reimplemented from QAbstractItemView.

Definition at line 4061 of file qtreeview.cpp.

References allColumnsShowFocus, QAbstractItemView::currentChanged(), d, QTreeViewPrivate::FullRow, QModelIndex::isValid(), and viewport().

+ Here is the call graph for this function:

◆ dataChanged()

void QTreeView::dataChanged ( const QModelIndex & topLeft,
const QModelIndex & bottomRight,
const QList< int > & roles = QList<int>() )
overridevirtual

\reimp

Reimplemented from QAbstractItemView.

Definition at line 642 of file qtreeview.cpp.

References QModelIndex::column(), d, QAbstractItemView::dataChanged(), i, indexRowSizeHint(), and QModelIndex::row().

+ Here is the call graph for this function:

◆ doItemsLayout()

void QTreeView::doItemsLayout ( )
overridevirtual

Lays out the items in the tree view.

Reimplemented from QAbstractItemView.

Definition at line 2120 of file qtreeview.cpp.

References QSet< T >::begin(), QSet< T >::clear(), d, QAbstractItemView::doItemsLayout(), QSet< T >::end(), QSet< T >::erase(), and it.

Referenced by collapseAll(), hideColumn(), and showColumn().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ drawBranches()

void QTreeView::drawBranches ( QPainter * painter,
const QRect & rect,
const QModelIndex & index ) const
protectedvirtual

Draws the branches in the tree view on the same row as the model item index, using the painter given.

The branches are drawn in the rectangle specified by rect.

Definition at line 1845 of file qtreeview.cpp.

References QPainter::brushOrigin(), d, expanded(), QStyleOptionButton::features, QAbstractItemView::initViewItemOption(), item, QTreeViewItem::level, opt, painter, QModelIndex::parent(), QStyle::PE_IndicatorBranch, rect, QStyleOption::rect, QModelIndex::row(), QAbstractItemView::ScrollPerPixel, QAbstractItemView::selectionBehavior, QAbstractItemView::SelectRows, QPainter::setBrushOrigin(), QStyleOption::state, QStyle::State_Active, QStyle::State_Children, QStyle::State_Enabled, QStyle::State_Item, QStyle::State_MouseOver, QStyle::State_None, QStyle::State_Open, QStyle::State_Selected, QStyle::State_Sibling, QTreeViewItem::total, verticalOffset(), and QAbstractItemView::verticalScrollMode.

Referenced by drawRow().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ drawRow()

void QTreeView::drawRow ( QPainter * painter,
const QStyleOptionViewItem & option,
const QModelIndex & index ) const
protectedvirtual

Draws the row in the tree view that contains the model item index, using the painter given.

The option controls how the item is displayed.

See also
setAlternatingRowColors()

Definition at line 1638 of file qtreeview.cpp.

References QPalette::Active, allColumnsShowFocus, ancestorOf(), columnViewportPosition(), QHeaderView::count(), QAbstractItemView::currentIndex(), d, QPalette::Disabled, drawBranches(), QStyleOptionButton::features, QApplication::focusWidget(), header(), QPalette::Highlight, i, QPalette::Inactive, QAbstractItemView::indexWidget(), QModelIndex::isValid(), QAbstractItemView::itemDelegateForIndex(), Qt::ItemIsEnabled, QHeaderView::length(), QHeaderView::logicalIndex(), QModelIndex::model(), QPalette::Normal, o, QHeaderView::offset(), opt, painter, QStyleOption::palette, QModelIndex::parent(), QStyle::PE_FrameFocusRect, QStyle::PE_PanelItemViewRow, position(), QStyleOption::rect, QPainter::restore(), QModelIndex::row(), QPainter::save(), QHeaderView::sectionPosition(), QHeaderView::sectionSize(), QHeaderView::sectionsMoved(), QAbstractItemView::selectionBehavior, QAbstractItemView::SelectRows, QPainter::setClipRect(), QPalette::setCurrentColorGroup(), QRect::setRect(), QStyle::SH_ItemView_ShowDecorationSelected, QAbstractItemView::state(), QStyleOption::state, QStyle::State_Active, QStyle::State_Enabled, QStyle::State_HasFocus, QStyle::State_KeyboardFocusChange, QStyle::State_MouseOver, QStyle::State_Selected, QHeaderView::visualIndex(), QRect::width(), QPalette::Window, and QPoint::y().

Referenced by drawTree().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ drawTree()

void QTreeView::drawTree ( QPainter * painter,
const QRegion & region ) const
protected
Since
4.2 Draws the part of the tree intersecting the given region using the specified painter.
See also
paintEvent()

Definition at line 1478 of file qtreeview.cpp.

References area(), QRect::bottom(), QRegion::boundingRect(), d, drawRow(), QTreeViewPrivate::FullRow, i, QAbstractItemView::initViewItemOption(), painter, QCursor::pos(), QRegion::rectCount(), QAbstractItemView::state(), QStyle::State_Children, QStyle::State_None, QStyle::State_Open, and QStyle::State_Sibling.

Referenced by paintEvent().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ expand

void QTreeView::expand ( const QModelIndex & index)
slot

Expands the model item specified by the index.

See also
expanded()

Definition at line 727 of file qtreeview.cpp.

References d, emit, expanded(), i, Qt::ItemNeverHasChildren, and updateGeometries().

Referenced by QTreeWidget::expandItem(), expandRecursively(), keyPressEvent(), scrollTo(), and setExpanded().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ expandAll

void QTreeView::expandAll ( )
slot
Since
4.2 Expands all expandable items.
Note
This function will not try to \l{QAbstractItemModel::fetchMore}{fetch more} data.
Warning
If the model contains a large number of items, this function will take some time to execute.
See also
collapseAll(), expand(), collapse(), setExpanded()

Definition at line 2704 of file qtreeview.cpp.

References d, and updateGeometries().

+ Here is the call graph for this function:

◆ expanded

void QTreeView::expanded ( const QModelIndex & index)
signal

This signal is emitted when the item specified by index is expanded.

Referenced by QTreeWidget::QTreeWidget(), drawBranches(), expand(), expandRecursively(), expandToDepth(), and setExpanded().

+ Here is the caller graph for this function:

◆ expandRecursively

void QTreeView::expandRecursively ( const QModelIndex & index,
int depth = -1 )
slot
Since
5.13 Expands the item at the given index and all its children to the given depth. The depth is relative to the given index. A depth of -1 will expand all children, a depth of 0 will only expand the given index.
Note
This function will not try to \l{QAbstractItemModel::fetchMore}{fetch more} data.
Warning
If the model contains a large number of items, this function will take some time to execute.
See also
expandAll()

Definition at line 2730 of file qtreeview.cpp.

References child, d, emit, expand(), expanded(), and QModelIndex::model().

Referenced by keyPressEvent().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ expandsOnDoubleClick()

bool QTreeView::expandsOnDoubleClick ( ) const

Definition at line 453 of file qtreeview.cpp.

References d.

◆ expandToDepth

void QTreeView::expandToDepth ( int depth)
slot
Since
4.3 Expands all expandable items to the given depth.
Note
This function will not try to \l{QAbstractItemModel::fetchMore}{fetch more} data.
See also
expandAll(), collapseAll(), expand(), collapse(), setExpanded()

Definition at line 2795 of file qtreeview.cpp.

References collapsed(), d, emit, expanded(), QMetaMethod::fromSignal(), i, Qt::ItemNeverHasChildren, and updateGeometries().

+ Here is the call graph for this function:

◆ header()

QHeaderView * QTreeView::header ( ) const

Returns the header for the tree view.

See also
QAbstractItemModel::headerData()

Definition at line 258 of file qtreeview.cpp.

References d.

Referenced by QTreeWidget::QTreeWidget(), drawRow(), QTreeWidgetItem::isHidden(), moveCursor(), resizeColumnToContents(), QFileDialogTreeView::setFileDialogPrivate(), setHeader(), QTreeWidgetItem::setHidden(), setModel(), setSortingEnabled(), QComboBox::showPopup(), QFileDialogTreeView::sizeHint(), QTreeWidget::sortColumn(), QTreeWidget::sortItems(), and QTreeWidget::visualItemRect().

+ Here is the caller graph for this function:

◆ hideColumn

void QTreeView::hideColumn ( int column)
slot

Hides the column given.

Note
This function should only be called after the model has been initialized, as the view needs to know the number of columns in order to hide column.
See also
showColumn(), setColumnHidden()

Definition at line 697 of file qtreeview.cpp.

References d, and doItemsLayout().

+ Here is the call graph for this function:

◆ horizontalOffset()

int QTreeView::horizontalOffset ( ) const
overrideprotectedvirtual

Returns the horizontal offset of the items in the treeview.

Note that the tree view uses the horizontal header section positions to determine the positions of columns in the view.

See also
verticalOffset()

Implements QAbstractItemView.

Definition at line 2172 of file qtreeview.cpp.

References d.

Referenced by scrollTo().

+ Here is the caller graph for this function:

◆ horizontalScrollbarAction()

void QTreeView::horizontalScrollbarAction ( int action)
overrideprotectedvirtual

Reimplemented from QAbstractItemView.

Definition at line 3063 of file qtreeview.cpp.

References QAbstractItemView::horizontalScrollbarAction().

+ Here is the call graph for this function:

◆ indentation()

int QTreeView::indentation ( ) const

Definition at line 342 of file qtreeview.cpp.

References d.

◆ indexAbove()

QModelIndex QTreeView::indexAbove ( const QModelIndex & index) const

Returns the model index of the item above index.

Definition at line 2086 of file qtreeview.cpp.

References d, i, and QModelIndex::sibling().

Referenced by QTreeWidget::itemAbove().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ indexAt()

QModelIndex QTreeView::indexAt ( const QPoint & p) const
overridevirtual

\reimp

Implements QAbstractItemView.

Definition at line 2062 of file qtreeview.cpp.

References QModelIndex::column(), d, QModelIndex::isValid(), QModelIndex::row(), QModelIndex::sibling(), QPoint::x(), and QPoint::y().

Referenced by QTreeWidget::itemAt(), mouseDoubleClickEvent(), setSelection(), timerEvent(), and viewportEvent().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ indexBelow()

QModelIndex QTreeView::indexBelow ( const QModelIndex & index) const

Returns the model index of the item below index.

Definition at line 2102 of file qtreeview.cpp.

References d, i, and QModelIndex::sibling().

Referenced by QTreeWidget::itemBelow(), and keyboardSearch().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ indexRowSizeHint()

int QTreeView::indexRowSizeHint ( const QModelIndex & index) const
protected

Returns the size hint for the row indicated by index.

See also
sizeHintForColumn(), uniformRowHeights()

Definition at line 2982 of file qtreeview.cpp.

References d, hint(), QAbstractItemView::initViewItemOption(), QModelIndex::isValid(), isVisible(), QAbstractItemView::itemDelegateForIndex(), QModelIndex::model(), QModelIndex::parent(), qBound(), qMax(), and qSwap().

Referenced by dataChanged().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isAnimated()

bool QTreeView::isAnimated ( ) const

Definition at line 879 of file qtreeview.cpp.

References d.

◆ isColumnHidden()

bool QTreeView::isColumnHidden ( int column) const

Returns true if the column is hidden; otherwise returns false.

See also
hideColumn(), isRowHidden()

Definition at line 513 of file qtreeview.cpp.

References d.

Referenced by isIndexHidden(), and moveCursor().

+ Here is the caller graph for this function:

◆ isExpanded()

bool QTreeView::isExpanded ( const QModelIndex & index) const

Returns true if the model item index is expanded; otherwise returns false.

See also
expand(), expanded(), setExpanded()

Definition at line 799 of file qtreeview.cpp.

References d.

Referenced by QTreeWidgetItem::isExpanded(), scrollTo(), QComboBox::showPopup(), timerEvent(), and verticalScrollbarValueChanged().

+ Here is the caller graph for this function:

◆ isFirstColumnSpanned()

bool QTreeView::isFirstColumnSpanned ( int row,
const QModelIndex & parent ) const
Since
4.3

Returns true if the item in first column in the given row of the parent is spanning all the columns; otherwise returns false.

See also
setFirstColumnSpanned()

Definition at line 599 of file qtreeview.cpp.

References d, and QModelIndex::model().

Referenced by QTreeWidgetItem::isFirstColumnSpanned().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isHeaderHidden()

bool QTreeView::isHeaderHidden ( ) const

Definition at line 542 of file qtreeview.cpp.

References d.

◆ isIndexHidden()

bool QTreeView::isIndexHidden ( const QModelIndex & index) const
overrideprotectedvirtual

\reimp

Implements QAbstractItemView.

Definition at line 3071 of file qtreeview.cpp.

References isColumnHidden(), and isRowHidden().

Referenced by selectedIndexes(), and visualRegionForSelection().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isRowHidden()

bool QTreeView::isRowHidden ( int row,
const QModelIndex & parent ) const

Returns true if the item in the given row of the parent is hidden; otherwise returns false.

See also
setRowHidden(), isColumnHidden()

Definition at line 560 of file qtreeview.cpp.

References d.

Referenced by QTreeWidgetItem::isHidden(), and isIndexHidden().

+ Here is the caller graph for this function:

◆ isSortingEnabled()

bool QTreeView::isSortingEnabled ( ) const

Definition at line 854 of file qtreeview.cpp.

References d.

Referenced by QTreeWidgetItem::insertChild(), and QTreeWidgetItem::insertChildren().

+ Here is the caller graph for this function:

◆ itemsExpandable()

bool QTreeView::itemsExpandable ( ) const

Definition at line 431 of file qtreeview.cpp.

References d.

◆ keyboardSearch()

void QTreeView::keyboardSearch ( const QString & search)
overridevirtual

\reimp

Reimplemented from QAbstractItemView.

Definition at line 973 of file qtreeview.cpp.

References QString::count(), QAbstractItemView::currentIndex(), d, Qt::DisplayRole, i, indexBelow(), QString::isEmpty(), QModelIndex::isValid(), QApplication::keyboardInputInterval, match(), qMin(), QAbstractItemView::setCurrentIndex(), and QModelIndex::sibling().

+ Here is the call graph for this function:

◆ keyPressEvent()

void QTreeView::keyPressEvent ( QKeyEvent * event)
overrideprotected

\reimp

Definition at line 2037 of file qtreeview.cpp.

References collapse(), QAbstractItemView::currentIndex(), d, expand(), expandRecursively(), Qt::Key_Asterisk, Qt::Key_Minus, Qt::Key_Plus, and QAbstractItemView::keyPressEvent().

Referenced by QFileDialogTreeView::keyPressEvent().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ mouseDoubleClickEvent()

void QTreeView::mouseDoubleClickEvent ( QMouseEvent * event)
overrideprotected

\reimp

Definition at line 1968 of file qtreeview.cpp.

References QAbstractItemView::activated(), d, QAbstractItemView::DoubleClicked, QAbstractItemView::doubleClicked(), edit, emit, i, indexAt(), QPersistentModelIndex::isValid(), mousePressEvent(), QAbstractItemView::NoState, QStyle::SH_ItemView_ActivateItemOnSingleClick, QAbstractItemView::state(), updateGeometries(), and viewport().

+ Here is the call graph for this function:

◆ mouseMoveEvent()

void QTreeView::mouseMoveEvent ( QMouseEvent * event)
overrideprotected

\reimp

Definition at line 2027 of file qtreeview.cpp.

References d, and QAbstractItemView::mouseMoveEvent().

+ Here is the call graph for this function:

◆ mousePressEvent()

void QTreeView::mousePressEvent ( QMouseEvent * event)
overrideprotected

\reimp

Definition at line 1937 of file qtreeview.cpp.

References d, QEvent::MouseButtonPress, QAbstractItemView::mousePressEvent(), and QStyle::SH_ListViewExpand_SelectMouseType.

Referenced by mouseDoubleClickEvent().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ mouseReleaseEvent()

void QTreeView::mouseReleaseEvent ( QMouseEvent * event)
overrideprotected

\reimp

Definition at line 1952 of file qtreeview.cpp.

References d, QAbstractItemView::DraggingState, QAbstractItemView::DragSelectingState, QEvent::MouseButtonRelease, QAbstractItemView::mouseReleaseEvent(), QAbstractItemView::NoState, QAbstractItemView::setState(), QStyle::SH_ListViewExpand_SelectMouseType, and QAbstractItemView::state().

+ Here is the call graph for this function:

◆ moveCursor()

◆ paintEvent()

void QTreeView::paintEvent ( QPaintEvent * event)
overrideprotected

\reimp

Definition at line 1331 of file qtreeview.cpp.

References d, drawTree(), painter, and viewport().

+ Here is the call graph for this function:

◆ reexpand

void QTreeView::reexpand ( )
protectedslot

Definition at line 2521 of file qtreeview.cpp.

◆ reset()

void QTreeView::reset ( )
overridevirtual

\reimp

Reimplemented from QAbstractItemView.

Definition at line 2154 of file qtreeview.cpp.

References d, and QAbstractItemView::reset().

+ Here is the call graph for this function:

◆ resetIndentation()

void QTreeView::resetIndentation ( )

Definition at line 358 of file qtreeview.cpp.

References d.

◆ resizeColumnToContents

void QTreeView::resizeColumnToContents ( int column)
slot

Resizes the column given to the size of its contents.

See also
columnWidth(), setColumnWidth(), sizeHintForColumn(), QHeaderView::resizeContentsPrecision()

Definition at line 2612 of file qtreeview.cpp.

References contents, d, header(), qMax(), QHeaderView::sectionSizeHint(), and sizeHintForColumn().

Referenced by setHeader().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ rootIsDecorated()

bool QTreeView::rootIsDecorated ( ) const

Definition at line 378 of file qtreeview.cpp.

References d.

◆ rowHeight()

int QTreeView::rowHeight ( const QModelIndex & index) const
protected
Since
4.3 Returns the height of the row indicated by the given index.
See also
indexRowSizeHint()

Definition at line 3050 of file qtreeview.cpp.

References d, and i.

◆ rowsAboutToBeRemoved()

void QTreeView::rowsAboutToBeRemoved ( const QModelIndex & parent,
int start,
int end )
overrideprotectedvirtual

Informs the view that the rows from the start row to the end row inclusive are about to removed from the given parent model item.

Reimplemented from QAbstractItemView.

Definition at line 2568 of file qtreeview.cpp.

References d, and QAbstractItemView::rowsAboutToBeRemoved().

+ Here is the call graph for this function:

◆ rowsInserted()

void QTreeView::rowsInserted ( const QModelIndex & parent,
int start,
int end )
overrideprotectedvirtual

Informs the view that the rows from the start row to the end row inclusive have been inserted into the parent model item.

Reimplemented from QAbstractItemView.

Definition at line 2530 of file qtreeview.cpp.

References QModelIndex::column(), d, QModelIndex::isValid(), QAbstractItemView::rowsInserted(), and viewport().

+ Here is the call graph for this function:

◆ rowsRemoved

void QTreeView::rowsRemoved ( const QModelIndex & parent,
int start,
int end )
protectedslot
Since
4.1

Informs the view that the rows from the start row to the end row inclusive have been removed from the given parent model item.

Definition at line 2581 of file qtreeview.cpp.

References d.

Referenced by setModel().

+ Here is the caller graph for this function:

◆ scrollContentsBy()

void QTreeView::scrollContentsBy ( int dx,
int dy )
overrideprotected

Scrolls the contents of the tree view by (dx, dy).

Definition at line 2456 of file qtreeview.cpp.

References d, QAbstractItemView::horizontalScrollMode, i, qAbs(), qMin(), QAbstractItemView::ScrollPerItem, QAbstractItemView::sizeHintForRow(), and QAbstractItemView::verticalScrollMode.

+ Here is the call graph for this function:

◆ scrollTo()

void QTreeView::scrollTo ( const QModelIndex & index,
ScrollHint hint = EnsureVisible )
overridevirtual

Scroll the contents of the tree view until the given model item index is visible.

The hint parameter specifies more precisely where the item should be located after the operation. If any of the parents of the model item are collapsed, they will be expanded to ensure that the model item is visible.

Implements QAbstractItemView.

Definition at line 1141 of file qtreeview.cpp.

References area(), columnViewportPosition(), columnWidth(), d, QAbstractItemView::EnsureVisible, expand(), hint(), horizontalOffset(), isExpanded(), QModelIndex::isValid(), item, QModelIndex::model(), QAbstractItemView::NoState, QModelIndex::parent(), QAbstractItemView::PositionAtBottom, QAbstractItemView::PositionAtCenter, QAbstractItemView::PositionAtTop, rect, QAbstractItemView::ScrollPerItem, QAbstractItemView::state(), and QAbstractItemView::verticalScrollMode.

Referenced by QTreeWidget::scrollToItem(), and src_gui_itemviews_qstandarditemmodel::wrapper3().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ selectAll()

void QTreeView::selectAll ( )
overridevirtual

\reimp

Reimplemented from QAbstractItemView.

Definition at line 2650 of file qtreeview.cpp.

References QItemSelectionModel::ClearAndSelect, d, QAbstractItemView::NoSelection, QModelIndex::parent(), QModelIndex::row(), QItemSelectionModel::Rows, QAbstractItemView::selectionModel(), QModelIndex::sibling(), and QAbstractItemView::SingleSelection.

+ Here is the call graph for this function:

◆ selectedIndexes()

QModelIndexList QTreeView::selectedIndexes ( ) const
overrideprotectedvirtual

\reimp

Reimplemented from QAbstractItemView.

Definition at line 2435 of file qtreeview.cpp.

References i, isIndexHidden(), QModelIndex::parent(), QItemSelectionModel::selectedIndexes, and QAbstractItemView::selectionModel().

+ Here is the call graph for this function:

◆ selectionChanged()

void QTreeView::selectionChanged ( const QItemSelection & selected,
const QItemSelection & deselected )
overrideprotectedvirtual

\reimp

Reimplemented from QAbstractItemView.

Definition at line 4086 of file qtreeview.cpp.

References d, QItemSelection::indexes(), Q_ASSERT, and QAbstractItemView::selectionChanged().

+ Here is the call graph for this function:

◆ setAllColumnsShowFocus()

void QTreeView::setAllColumnsShowFocus ( bool enable)

Definition at line 896 of file qtreeview.cpp.

References d.

◆ setAnimated()

void QTreeView::setAnimated ( bool enable)

Definition at line 873 of file qtreeview.cpp.

References d.

◆ setAutoExpandDelay()

void QTreeView::setAutoExpandDelay ( int delay)

Definition at line 323 of file qtreeview.cpp.

References d.

◆ setColumnHidden()

void QTreeView::setColumnHidden ( int column,
bool hide )

If hide is true the column is hidden, otherwise the column is shown.

See also
hideColumn(), setRowHidden()

Definition at line 524 of file qtreeview.cpp.

References d, and hide().

+ Here is the call graph for this function:

◆ setColumnWidth()

void QTreeView::setColumnWidth ( int column,
int width )
Since
4.2

Sets the width of the given column to the width specified.

See also
columnWidth(), resizeColumnToContents()

Definition at line 492 of file qtreeview.cpp.

References d.

◆ setExpanded()

void QTreeView::setExpanded ( const QModelIndex & index,
bool expanded )

Sets the item referred to by index to either collapse or expanded, depending on the value of expanded.

See also
expanded(), expand(), isExpanded()

Definition at line 811 of file qtreeview.cpp.

References collapse(), expand(), and expanded().

Referenced by QTreeWidgetItem::setExpanded(), and timerEvent().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setExpandsOnDoubleClick()

void QTreeView::setExpandsOnDoubleClick ( bool enable)

Definition at line 459 of file qtreeview.cpp.

References d.

◆ setFirstColumnSpanned()

void QTreeView::setFirstColumnSpanned ( int row,
const QModelIndex & parent,
bool span )
Since
4.3

If span is true the item in the first column in the row with the given parent is set to span all columns, otherwise all items on the row are shown.

See also
isFirstColumnSpanned()

Definition at line 617 of file qtreeview.cpp.

References d, i, and QModelIndex::model().

Referenced by QTreeWidgetItem::setFirstColumnSpanned().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setHeader()

void QTreeView::setHeader ( QHeaderView * header)

Sets the header for the tree view, to the given header.

The view takes ownership over the given header and deletes it when a new header is set.

See also
QAbstractItemModel::headerData()

Definition at line 272 of file qtreeview.cpp.

References columnCountChanged(), columnMoved(), columnResized(), connect(), d, QHeaderView::geometriesChanged(), header(), resizeColumnToContents(), QHeaderView::sectionCountChanged(), QHeaderView::sectionHandleDoubleClicked(), QHeaderView::sectionMoved(), QHeaderView::sectionResized(), QHeaderView::setFirstSectionMovable(), setSortingEnabled(), and updateGeometries().

+ Here is the call graph for this function:

◆ setHeaderHidden()

void QTreeView::setHeaderHidden ( bool hide)

Definition at line 548 of file qtreeview.cpp.

References d, and hide().

+ Here is the call graph for this function:

◆ setIndentation()

void QTreeView::setIndentation ( int i)

Definition at line 348 of file qtreeview.cpp.

References d, and i.

◆ setItemsExpandable()

void QTreeView::setItemsExpandable ( bool enable)

Definition at line 437 of file qtreeview.cpp.

References d.

Referenced by QFileDialogTreeView::setFileDialogPrivate().

+ Here is the caller graph for this function:

◆ setModel()

void QTreeView::setModel ( QAbstractItemModel * model)
overridevirtual

\reimp

Reimplemented from QAbstractItemView.

Reimplemented in QTreeWidget.

Definition at line 179 of file qtreeview.cpp.

References QObject::connect(), QObjectPrivate::connect(), connection, d, QObject::disconnect(), QObjectPrivate::disconnect(), header(), QAbstractItemViewPrivate::layoutChanged(), QAbstractItemModel::layoutChanged(), QAbstractItemView::model(), QTreeViewPrivate::modelAboutToBeReset(), QAbstractItemModel::modelAboutToBeReset(), rowsRemoved(), QAbstractItemModel::rowsRemoved(), QAbstractItemViewPrivate::rowsRemoved(), QAbstractItemView::setModel(), and QAbstractItemModelPrivate::staticEmptyModel().

Referenced by QTreeWidget::QTreeWidget(), Widget::Widget(), main(), and src_gui_itemviews_qstandarditemmodel::MyWidget::wrapper2().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setRootIndex()

void QTreeView::setRootIndex ( const QModelIndex & index)
overridevirtual

\reimp

Reimplemented from QAbstractItemView.

Definition at line 223 of file qtreeview.cpp.

References d, and QAbstractItemView::setRootIndex().

Referenced by main().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setRootIsDecorated()

void QTreeView::setRootIsDecorated ( bool show)

Definition at line 384 of file qtreeview.cpp.

References d, and show().

Referenced by QFileDialogTreeView::setFileDialogPrivate().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setRowHidden()

void QTreeView::setRowHidden ( int row,
const QModelIndex & parent,
bool hide )

If hide is true the row with the given parent is hidden, otherwise the row is shown.

See also
isRowHidden(), setColumnHidden()

Definition at line 573 of file qtreeview.cpp.

References d, hide(), and QModelIndex::model().

Referenced by QTreeWidgetItem::setHidden().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setSelection()

void QTreeView::setSelection ( const QRect & rect,
QItemSelectionModel::SelectionFlags command )
overrideprotectedvirtual

Applies the selection command to the items in or touched by the rectangle, rect.

See also
selectionCommand()

Implements QAbstractItemView.

Definition at line 2339 of file qtreeview.cpp.

References QItemSelectionModel::Clear, QItemSelectionModel::clear(), d, indexAt(), QModelIndex::isValid(), qMax(), qMin(), rect, QAbstractItemView::selectionModel(), and QModelIndex::sibling().

+ Here is the call graph for this function:

◆ setSelectionModel()

void QTreeView::setSelectionModel ( QItemSelectionModel * selectionModel)
overridevirtual

\reimp

Reimplemented from QAbstractItemView.

Reimplemented in QTreeWidget.

Definition at line 233 of file qtreeview.cpp.

References connect(), QItemSelectionModel::currentRowChanged(), d, QObject::disconnect(), Q_ASSERT, QAbstractItemView::selectionModel(), QAbstractItemView::setSelectionModel(), and QAbstractItemModel::submit().

Referenced by main(), and QTreeWidget::setSelectionModel().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setSortingEnabled()

void QTreeView::setSortingEnabled ( bool enable)

Definition at line 835 of file qtreeview.cpp.

References QObjectPrivate::connect(), d, QObject::disconnect(), header(), QHeaderView::setSectionsClickable(), QHeaderView::setSortIndicatorShown(), sortByColumn(), QTreeViewPrivate::sortIndicatorChanged(), QHeaderView::sortIndicatorChanged(), and Qt::UniqueConnection.

Referenced by Widget::Widget(), QFileDialogTreeView::setFileDialogPrivate(), and setHeader().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setTreePosition()

void QTreeView::setTreePosition ( int index)
Since
5.2

This specifies that the tree structure should be placed at logical index index. If \index is set to -1 then the tree will always follow visual index 0.

See also
treePosition(), QHeaderView::swapSections(), QHeaderView::moveSection()

Definition at line 948 of file qtreeview.cpp.

References d.

◆ setUniformRowHeights()

void QTreeView::setUniformRowHeights ( bool uniform)

Definition at line 415 of file qtreeview.cpp.

References d.

◆ setWordWrap()

void QTreeView::setWordWrap ( bool on)

Definition at line 924 of file qtreeview.cpp.

References d.

◆ showColumn

void QTreeView::showColumn ( int column)
slot

Shows the given column in the tree view.

See also
hideColumn(), setColumnHidden()

Definition at line 711 of file qtreeview.cpp.

References d, and doItemsLayout().

+ Here is the call graph for this function:

◆ sizeHintForColumn()

int QTreeView::sizeHintForColumn ( int column) const
overrideprotectedvirtual

Returns the size hint for the column's width or -1 if there is no model.

If you need to set the width of a given column to a fixed value, call QHeaderView::resizeSection() on the view's header.

If you reimplement this function in a subclass, note that the value you return is only used when resizeColumnToContents() is called. In that case, if a larger column width is required by either the view's header or the item delegate, that width will be used instead.

See also
QWidget::sizeHint, header(), QHeaderView::resizeContentsPrecision()

Reimplemented from QAbstractItemView.

Definition at line 2894 of file qtreeview.cpp.

References d, i, QAbstractItemView::initViewItemOption(), qMax(), and viewport().

Referenced by resizeColumnToContents().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ sortByColumn

void QTreeView::sortByColumn ( int column,
Qt::SortOrder order )
slot
Since
4.2

Sorts the model by the values in the given column and order.

column may be -1, in which case no sort indicator will be shown and the model will return to its natural, unsorted order. Note that not all models support this and may even crash in this case.

See also
sortingEnabled

Definition at line 2634 of file qtreeview.cpp.

References d.

Referenced by setSortingEnabled().

+ Here is the caller graph for this function:

◆ timerEvent()

void QTreeView::timerEvent ( QTimerEvent * event)
overrideprotected

\reimp

Definition at line 1256 of file qtreeview.cpp.

References columnViewportPosition(), columnWidth(), d, QAbstractItemView::DraggingState, QRect::height(), i, indexAt(), isExpanded(), pos, QCursor::pos(), rect, setExpanded(), QAbstractItemView::state(), QAbstractItemView::timerEvent(), and updateGeometries().

+ Here is the call graph for this function:

◆ treePosition()

int QTreeView::treePosition ( ) const
Since
5.2

Return the logical index the tree is set on. If the return value is -1 then the tree is placed on the visual index 0.

See also
setTreePosition()

Definition at line 964 of file qtreeview.cpp.

References d.

◆ uniformRowHeights()

bool QTreeView::uniformRowHeights ( ) const

Definition at line 409 of file qtreeview.cpp.

References d.

◆ updateGeometries()

void QTreeView::updateGeometries ( )
overrideprotectedvirtual

\reimp

Reimplemented from QAbstractItemView.

Definition at line 2857 of file qtreeview.cpp.

References d, QMetaObject::invokeMethod(), QRect::left(), qMax(), qMin(), QRect::top(), QAbstractItemView::updateGeometries(), and QRect::width().

Referenced by collapse(), columnCountChanged(), expand(), expandAll(), expandToDepth(), mouseDoubleClickEvent(), moveCursor(), setHeader(), and timerEvent().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ verticalOffset()

int QTreeView::verticalOffset ( ) const
overrideprotectedvirtual

Returns the vertical offset of the items in the tree view.

See also
horizontalOffset()

Implements QAbstractItemView.

Definition at line 2183 of file qtreeview.cpp.

References d, i, qMin(), and QAbstractItemView::ScrollPerItem.

Referenced by drawBranches().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ verticalScrollbarValueChanged

void QTreeView::verticalScrollbarValueChanged ( int value)
overrideprotectedslot

Definition at line 4126 of file qtreeview.cpp.

References d, isExpanded(), QModelIndex::model(), ret, and QAbstractItemView::verticalScrollbarValueChanged().

+ Here is the call graph for this function:

◆ viewportEvent()

bool QTreeView::viewportEvent ( QEvent * event)
overrideprotected

\reimp

\reimp

Definition at line 1305 of file qtreeview.cpp.

References d, QTreeViewPrivate::FullRow, QEvent::HoverEnter, QEvent::HoverLeave, QEvent::HoverMove, indexAt(), viewport(), and QAbstractItemView::viewportEvent().

+ Here is the call graph for this function:

◆ viewportSizeHint()

QSize QTreeView::viewportSizeHint ( ) const
overrideprotected

\reimp

Definition at line 2669 of file qtreeview.cpp.

References d, QTreeViewPrivate::SingleSection, and QAbstractItemView::viewportSizeHint().

+ Here is the call graph for this function:

◆ visualRect()

QRect QTreeView::visualRect ( const QModelIndex & index) const
overridevirtual

Returns the rectangle on the viewport occupied by the item at index.

If the index is not visible or explicitly hidden, the returned rectangle is invalid.

Implements QAbstractItemView.

Definition at line 1070 of file qtreeview.cpp.

References d, and QTreeViewPrivate::SingleSection.

Referenced by QTreeWidget::visualItemRect().

+ Here is the caller graph for this function:

◆ visualRegionForSelection()

QRegion QTreeView::visualRegionForSelection ( const QItemSelection & selection) const
overrideprotectedvirtual

Returns the rectangle from the viewport of the items in the given selection.

Since 4.7, the returned region only contains rectangles intersecting (or included in) the viewport.

Implements QAbstractItemView.

Definition at line 2378 of file qtreeview.cpp.

References QRect::bottom(), columnViewportPosition(), columnWidth(), d, QRect::intersects(), QList< T >::isEmpty(), isIndexHidden(), QModelIndex::model(), QModelIndex::parent(), selection, QRect::setX(), QTreeViewPrivate::SingleSection, and QRect::top().

+ Here is the call graph for this function:

◆ wordWrap()

bool QTreeView::wordWrap ( ) const

Definition at line 933 of file qtreeview.cpp.

References d.

Friends And Related Symbol Documentation

◆ ::tst_QTreeView

friend class ::tst_QTreeView
friend

Definition at line 190 of file qtreeview.h.

◆ QAccessibleTable

friend class QAccessibleTable
friend

Definition at line 191 of file qtreeview.h.

◆ QAccessibleTableCell

friend class QAccessibleTableCell
friend

Definition at line 193 of file qtreeview.h.

◆ QAccessibleTree

friend class QAccessibleTree
friend

Definition at line 192 of file qtreeview.h.

Property Documentation

◆ allColumnsShowFocus

QTreeView::allColumnsShowFocus
readwrite

whether items should show keyboard focus using all columns

Since
4.2

If this property is true all columns will show focus, otherwise only one column will show focus.

The default is false.

Definition at line 29 of file qtreeview.h.

Referenced by currentChanged(), and drawRow().

◆ animated

QTreeView::animated
readwrite

whether animations are enabled

Since
4.2

If this property is true the treeview will animate expansion and collapsing of branches. If this property is false, the treeview will expand or collapse branches immediately without showing the animation.

By default, this property is false.

Definition at line 28 of file qtreeview.h.

◆ autoExpandDelay

QTreeView::autoExpandDelay
readwrite

The delay time before items in a tree are opened during a drag and drop operation.

Since
4.3

This property holds the amount of time in milliseconds that the user must wait over a node before that node will automatically open or close. If the time is set to less then 0 then it will not be activated.

By default, this property has a value of -1, meaning that auto-expansion is disabled.

Definition at line 22 of file qtreeview.h.

◆ expandsOnDoubleClick

QTreeView::expandsOnDoubleClick
readwrite

whether the items can be expanded by double-clicking.

Since
4.4

This property holds whether the user can expand and collapse items by double-clicking. The default value is true.

See also
itemsExpandable

Definition at line 32 of file qtreeview.h.

◆ headerHidden

QTreeView::headerHidden
readwrite

whether the header is shown or not.

Since
4.4

If this property is true, the header is not shown otherwise it is. The default value is false.

See also
header()

Definition at line 31 of file qtreeview.h.

◆ indentation

QTreeView::indentation
readwrite

indentation of the items in the tree view.

This property holds the indentation measured in pixels of the items for each level in the tree view. For top-level items, the indentation specifies the horizontal distance from the viewport edge to the items in the first column; for child items, it specifies their indentation from their parent items.

By default, the value of this property is style dependent. Thus, when the style changes, this property updates from it. Calling setIndentation() stops the updates, calling resetIndentation() will restore default behavior.

Definition at line 23 of file qtreeview.h.

◆ itemsExpandable

QTreeView::itemsExpandable
readwrite

whether the items are expandable by the user.

This property holds whether the user can expand and collapse items interactively.

By default, this property is true.

Definition at line 26 of file qtreeview.h.

◆ rootIsDecorated

QTreeView::rootIsDecorated
readwrite

whether to show controls for expanding and collapsing top-level items

Items with children are typically shown with controls to expand and collapse them, allowing their children to be shown or hidden. If this property is false, these controls are not shown for top-level items. This can be used to make a single level tree structure appear like a simple list of items.

By default, this property is true.

Definition at line 24 of file qtreeview.h.

◆ sortingEnabled

QTreeView::sortingEnabled
readwrite

whether sorting is enabled

Since
4.2

If this property is true, sorting is enabled for the tree; if the property is false, sorting is not enabled. The default value is false.

Note
In order to avoid performance issues, it is recommended that sorting is enabled after inserting the items into the tree. Alternatively, you could also insert the items into a list before inserting the items into the tree.
See also
sortByColumn()

Definition at line 27 of file qtreeview.h.

◆ uniformRowHeights

QTreeView::uniformRowHeights
readwrite

whether all items in the treeview have the same height

This property should only be set to true if it is guaranteed that all items in the view has the same height. This enables the view to do some optimizations.

The height is obtained from the first item in the view. It is updated when the data changes on that item.

Note
If the editor size hint is bigger than the cell size hint, then the size hint of the editor will be used.

By default, this property is false.

Definition at line 25 of file qtreeview.h.

◆ wordWrap

QTreeView::wordWrap
readwrite

the item text word-wrapping policy

Since
4.3

If this property is true then the item text is wrapped where necessary at word-breaks; otherwise it is not wrapped at all. This property is false by default.

Note that even if wrapping is enabled, the cell will not be expanded to fit all text. Ellipsis will be inserted according to the current \l{QAbstractItemView::}{textElideMode}.

Definition at line 30 of file qtreeview.h.


The documentation for this class was generated from the following files: