Subversion Repositories OpenInventory

Compare Revisions

Ignore whitespace Rev 158 → Rev 157

/trunk/DBViewer/mymodel.cpp
23,15 → 23,9
 
*************************************************/
 
if (bolleans_list.indexOf(index.column()) != -1)
{
flags |= Qt::ItemIsUserCheckable; // åñëè â ñòîëáöå òèï "BOOL", äåëàåì åãî âèáèðàåìûì
flags &= ~Qt::ItemIsEditable;
}
 
return flags; // òåêóùèé ñòîëáåö
 
 
return flags;
}
 
 
53,56 → 47,37
str_tmp.append(tr("_instance"));
}
*/
lResult = QSqlTableModel::setData(index, value, role);
 
 
// MyModel::record(index.row());
 
/*****************************************************8
 
if (lResult) {
QModelIndex newindex;
QSqlRecord rec = record(index.row());
 
if (bolleans_list.indexOf(index.column()) != -1) {
// QModelIndex newindex;
// QSqlRecord rec = record(index.row());
// bool chk = (value.toInt()==Qt::Checked);
// rec.setValue(index.column(),chk);
// rec.setValue(index.column(), value);
// rec.setGenerated(index.column(), true);
rec.setValue(index.column(), value);
rec.setGenerated(index.column(), true);
 
//lResult = QSqlTableModel::setData(index, value, role);
 
// lResult = updateRowInTable(index.row(), rec);
// lResult = setRecord(index.row(),rec); // âåðíåì ðåçóëüòàò îá óñòàíîâêå
 
/*
QStandardItem* item = static_cast<QStandardItem*>(index.internalPointer());
Qt::CheckState state = (value.toInt() == 2) ? Qt::Checked : Qt::Unchecked;
item->setCheckState(state);
lResult = updateRowInTable(index.row(), rec);
/// QSqlTableModel::setData(newindex, QVariant(str_tmp), Qt::EditRole);
 
*/
 
}
**********************************************/
 
lResult = QSqlTableModel::setData(index, value, Qt::EditRole);
// emit MyModel::dataChanged(index, index);
 
// MyModel::reset();
// lResult = QSqlTableModel::setData(index, value, Qt::DisplayRole);
// QSqlTableModel::setData(index, value, Qt::CheckStateRole);
MyModel::submitAll();
////// // MyModel::select();
// MyModel::data(index, Qt::DisplayRole);
}
 
else
{
lResult = QSqlTableModel::setData(index, value, role);
}
 
return lResult;
 
return lResult;
 
 
 
 
 
}
 
 
109,7 → 84,6
 
QVariant MyModel::data(const QModelIndex &index, int role) const {
 
QHash<int, bool> check;
QVariant value = QSqlTableModel::data(index, role);
QList <int> keys;
QStringList values;
119,13 → 93,7
switch (role) {
case Qt::DisplayRole:
{
//if (check.contains(index.column()) && check.value(index.column()))
// return value.toInt() != 0 ? tr("Yes") : tr("No");
if (bolleans_list.indexOf(index.column()) != -1)
{
return value.toInt() != 0 ? tr("Äà") : tr("Íåò"); // äëÿ êîëîíîê ñ òèïîì "BOOL"
}
int index_of_list;
int index_of_list;
index_of_list = keys.indexOf(index.column());
 
if (index_of_list == -1) return value;
162,20 → 130,10
// return value.toString().prepend(tr("¹ "));
 
 
case Qt::EditRole:
if (bolleans_list.indexOf(index.column()) == -1) return value; // òåêóùèé ñòîëáåö
 
else {
return value.toInt() != 0 ? tr("Äà") : tr("Íåò");
 
}
///return value;
case Qt::EditRole: return value;
// if (index.column() == 1)
// return value.toString().prepend(tr("¹ "));
 
 
 
 
case Qt::TextColorRole:
if(index.column() == 1)
return qVariantFromValue(QColor(Qt::blue));
201,17 → 159,8
 
 
 
case Qt::CheckStateRole:
{
case Qt::CheckStateRole: return value;
 
if (bolleans_list.indexOf(index.column()) == -1) return value; // òåêóùèé ñòîëáåö
 
else
{
return (QSqlQueryModel::data(index).toInt() != 0) ? Qt::Checked : Qt::Unchecked;
}
}
 
case Qt::SizeHintRole:return value;
 
}