const TrussMaterial* PivotPropertyTable::getMaterial ( int row ) const
{
    MaterialTableItem* cell = getMaterialCell( row );
    if ( ! cell )
        return 0;

    return cell->getMaterial();
}
void MaterialXMLExportDialog::headerViewDoubleClicked(int logicalIndex)
{
    if (logicalIndex!=0) return;

    allItemsChecked_ = !allItemsChecked_;

    for (int row=0;row<materialView_->rowCount();++row) {
        MaterialTableItem* item = static_cast<MaterialTableItem*>(materialView_->item(row, 0));
        item->setCheckState( allItemsChecked_==true ? Qt::Checked : Qt::Unchecked);
    }
}
void PivotPropertyTable::setMaterial ( int row, const TrussMaterial* m )
{
    MaterialTableItem* cell = getMaterialCell( row );
    if ( cell )
        cell->setMaterial( m );
    else {
        cell = new MaterialTableItem( m );
        setItem( row, 1, cell );
    }
    horizontalHeader()->resizeSection( 1, Global::materialColumnWidth );
}
void MaterialXMLExportDialog::exportMaterials()
{
    selectedMaterials_.clear();

    for (int row=0;row<materialView_->rowCount();++row) {
        MaterialTableItem* item = static_cast<MaterialTableItem*>(materialView_->item(row, 0));
        if (item->checkState()!=Qt::Checked) continue;
        selectedMaterials_.push_back(item->getMaterial());
    }

    accept();
}