QgsComposerTableColumn *QgsComposerTableColumn::clone() { QgsComposerTableColumn *newColumn = new QgsComposerTableColumn; newColumn->setAttribute( mAttribute ); newColumn->setHeading( mHeading ); newColumn->setHAlignment( mHAlignment ); newColumn->setVAlignment( mVAlignment ); newColumn->setSortByRank( mSortByRank ); newColumn->setSortOrder( mSortOrder ); newColumn->setWidth( mWidth ); return newColumn; }
bool QgsComposerAttributeTableColumnModelV2::setData( const QModelIndex& index, const QVariant& value, int role ) { if ( !index.isValid() || role != Qt::EditRole || !mComposerTable ) { return false; } if ( index.row() >= mComposerTable->columns()->length() ) { return false; } //get column for index QgsComposerTableColumn* column = columnFromIndex( index ); if ( !column ) { return false; } switch ( index.column() ) { case 0: // also update column's heading, if it hasn't been customised if ( column->heading().isEmpty() || ( column->heading() == column->attribute() ) ) { column->setHeading( value.toString() ); emit dataChanged( createIndex( index.row(), 1, 0 ), createIndex( index.row(), 1, 0 ) ); } column->setAttribute( value.toString() ); emit dataChanged( index, index ); return true; case 1: column->setHeading( value.toString() ); emit dataChanged( index, index ); return true; case 2: column->setHAlignment(( Qt::AlignmentFlag )value.toInt() ); emit dataChanged( index, index ); return true; default: break; } return false; }