kexi
KexiDB::RowEditBuffer Class Reference
#include <roweditbuffer.h>
Detailed Description
KexiDB::EditBuffer provides data for single edited row, needed to perform update at the database backend. Its advantage over pasing e.g. KexiDB::FieldList objet is that KexiDB::EditBuffer conatins only changed fields.
Example usage (query is of type QuerySchema*): EditBuffer buf; KexiDB::Field *f1 = query.field("name"); KexiDB::Field *f2 = query.field("surname"); buf[*f1]=QVariant("Joe"); buf[*f2]=QVariant("Surname"); .. now use buf to add or edit record via connection ..
You can use QMap::clear() to clear buffer contents, QMap::isEmpty() to see if buffer is empty. For more, see QMap documentation.
Notes: added fields should come from the same common QuerySchema object. However, it isn't checked at QValue& EditBuffer::operator[]( const Field& f ) level.
Definition at line 54 of file roweditbuffer.h.
Public Types | |
typedef QMap< QString, QVariant > | SimpleMap |
typedef QMap< QueryColumnInfo *, QVariant > | DBMap |
Public Member Functions | |
RowEditBuffer (bool dbAwareBuffer) | |
~RowEditBuffer () | |
bool | isDBAware () const |
void | clear () |
bool | isEmpty () const |
void | insert (QueryColumnInfo &fi, QVariant &val) |
void | insert (const QString &fname, QVariant &val) |
const QVariant * | at (QueryColumnInfo &fi) const |
const QVariant * | at (Field &f) const |
const QVariant * | at (const QString &fname) const |
const SimpleMap | simpleBuffer () |
const DBMap | dbBuffer () |
void | debug () |
Protected Attributes | |
SimpleMap * | m_simpleBuffer |
SimpleMap::ConstIterator * | m_simpleBufferIt |
DBMap * | m_dbBuffer |
DBMap::ConstIterator * | m_dbBufferIt |
Member Function Documentation
const QVariant * RowEditBuffer::at | ( | Field & | f | ) | const |
const QVariant * RowEditBuffer::at | ( | QueryColumnInfo & | fi | ) | const |
void RowEditBuffer::debug | ( | ) |
The documentation for this class was generated from the following files: