summaryrefslogtreecommitdiffstats
path: root/src/gui/doc/snippets/code/src_gui_itemviews_qstandarditemmodel.cpp
blob: a608312424c0155b3fdd90f179e7e590f5f6bedc (plain)
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
// Copyright (C) 2016 The Qt Company Ltd.// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause#include <QStandardItemModel>#include <QTreeView>#include <QWidget>namespace src_gui_itemviews_qstandarditemmodel {struct MyWidget :public QWidget {voidwrapper2();voidclicked(const QModelIndex &index); QModelIndex index() {returnQModelIndex(); } QStandardItemModel *myStandardItemModel;};voidwrapper0() {//! [0] QStandardItemModel model(4,4);for(int row =0; row < model.rowCount(); ++row) {for(int column =0; column < model.columnCount(); ++column) { QStandardItem *item =newQStandardItem(QString("row %0, column %1").arg(row).arg(column)); model.setItem(row, column, item);}}//! [0]}// wrapper0voidwrapper1() {//! [1] QStandardItemModel model; QStandardItem *parentItem = model.invisibleRootItem();for(int i =0; i <4; ++i) { QStandardItem *item =newQStandardItem(QString("item %0").arg(i)); parentItem->appendRow(item); parentItem = item;}//! [1]}// wrapper1voidMyWidget::wrapper2() {//! [2] QTreeView *treeView =newQTreeView(this); treeView->setModel(myStandardItemModel);connect(treeView, &QTreeView::clicked,this, &MyWidget::clicked);//! [2]}// wrapper2//! [3]voidMyWidget::clicked(const QModelIndex &index){ QStandardItem *item = myStandardItemModel->itemFromIndex(index);// Do stuff with the item ...}//! [3]voidwrapper3() { QTreeView *treeView =nullptr; MyWidget *item =nullptr;//! [4] treeView->scrollTo(item->index());//! [4]}// wrapper3}// src_gui_itemviews_qstandarditemmodel
close