//----------------------------------------------------------------------------- int ctkCheckableHeaderViewTest1(int argc, char * argv [] ) { QApplication app(argc, argv); #if 0 QFileSystemModel model; model.setRootPath(QDir::currentPath()); #else QStandardItemModel model; QStandardItem item; item.insertColumns(0, 5); item.insertRows(0, 7); model.insertRow(0, &item); #endif QTableView table; table.setModel(&model); model.setHeaderData(0, Qt::Horizontal, Qt::Checked, Qt::CheckStateRole); QHeaderView* previousHeaderView = table.horizontalHeader(); ctkCheckableHeaderView* headerView = new ctkCheckableHeaderView(Qt::Horizontal, &table); qDebug() << previousHeaderView->isClickable(); headerView->setClickable(previousHeaderView->isClickable()); headerView->setMovable(previousHeaderView->isMovable()); headerView->setHighlightSections(previousHeaderView->highlightSections()); headerView->setPropagateToItems(true); table.setHorizontalHeader(headerView); qDebug() << headerView->isCheckable(0); table.show(); table.raise(); //app.exec(); return EXIT_SUCCESS; }
void QgsEffectStackPropertiesWidget::moveEffectByOffset( int offset ) { EffectItem *item = currentEffectItem(); if ( !item ) return; int row = item->row(); QStandardItem* root = mModel->invisibleRootItem(); int layerIdx = root->rowCount() - row - 1; // switch effects QgsPaintEffect* tmpEffect = mStack->takeEffect( layerIdx ); mStack->insertEffect( layerIdx - offset, tmpEffect ); QList<QStandardItem *> toMove = root->takeRow( row ); root->insertRows( row + offset, toMove ); QModelIndex newIdx = toMove[ 0 ]->index(); mEffectsList->setCurrentIndex( newIdx ); updatePreview(); updateUi(); }