void TableSetting::setTable(DBTable &table)//доделать атрибуты { idTable = table.getIdTable(); tableForDeleteAtribute = table; item = new QStandardItem(" "); model->insertRow(count,item); ui->tableViewSitting->setModel(model); ui->lineEdit->setText(table.getName()); QVector<DBAttribute> &attributes = table.getAttributes(); count = attributes.size(); delegate(); qDebug()<<count; for(int i=0;i<attributes.size();i++) { DBAttribute &attribute = attributes[i]; QStandardItem *itemName = new QStandardItem(attribute.name); QStandardItem *itemType = new QStandardItem(attribute.type); QStandardItem *itemPK = new QStandardItem(attribute.PK); QStandardItem *itemNN = new QStandardItem(attribute.NN); QStandardItem *itemU = new QStandardItem(attribute.UNIQ); model->setItem(i,0,itemName); model->setItem(i,1,itemType); if(itemPK->text().toInt()==1) { model->setData(model->index(i,2,QModelIndex()),2,Qt::CheckStateRole); } else { model->setData(model->index(i,2,QModelIndex()),0,Qt::CheckStateRole ); } if(itemNN->text().toInt()==1) { model->setData(model->index(i,3,QModelIndex()),2,Qt::CheckStateRole); } else { model->setData(model->index(i,3,QModelIndex()),0,Qt::CheckStateRole ); } if(itemU->text().toInt()==1) { model->setData(model->index(i,4,QModelIndex()),2,Qt::CheckStateRole); } else { model->setData(model->index(i,4,QModelIndex()),0,Qt::CheckStateRole ); } } QVector <DBForeign> &foreigns = table.getForeigns(); int countConection = foreigns.size(); if(countConection>0) { itemConection = new QStandardItem(" "); modelConection->insertRow(countConection,itemConection); } for(int i=0;i<countConection;i++) { DBTable *table = MainData::getTableById(foreigns[i].foreignTableId); modelConection->setItem(i,0,new QStandardItem(table->getName())); if(foreigns[i].typeForeign == DBForeign::ONE_TO_ONE) { modelConection->setItem(i,1,new QStandardItem("1:1")); } else { modelConection->setItem(i,1,new QStandardItem("1:N")); } } }