Exemple #1
0
void DataDocument::setValue(const QString &data_id, const QVariant &val)
{
	qfLogFuncFrame() << "data_id:" << data_id << "val:" << val.toString();
	if(isEmpty()) {
		qfWarning() << "data_id:" << data_id << "val:" << val.toString() << "setValue() in empty document";
		return;
	}
	if(data_id.isEmpty()) {
		qfWarning() << "data_id is empty";
		return;
	}
	QVariant old_val;
	TableModel *m = model();
	int r = currentModelRow();
	old_val = m->value(r, data_id);
	if(m->setValue(r, data_id, val)) {
		if(old_val != val) {
			emit valueChanged(data_id, old_val, val);
		}
	}
}