OpenMW
|
#include <refidcollection.hpp>
Public Member Functions | |
RefIdCollection () | |
virtual | ~RefIdCollection () |
virtual int | getSize () const |
virtual std::string | getId (int index) const |
virtual int | getIndex (const std::string &id) const |
virtual int | getColumns () const |
virtual const ColumnBase & | getColumn (int column) const |
virtual QVariant | getData (int index, int column) const |
virtual void | setData (int index, int column, const QVariant &data) |
virtual void | removeRows (int index, int count) |
< Merge modified into base. | |
virtual void | appendBlankRecord (const std::string &id, UniversalId::Type type) |
virtual int | searchId (const std::string &id) const |
virtual void | replace (int index, const RecordBase &record) |
virtual void | appendRecord (const RecordBase &record, UniversalId::Type type) |
virtual const RecordBase & | getRecord (const std::string &id) const |
virtual const RecordBase & | getRecord (int index) const |
void | load (ESM::ESMReader &reader, bool base, UniversalId::Type type) |
virtual int | getAppendIndex (const std::string &id, UniversalId::Type type) const |
virtual std::vector< std::string > | getIds (bool listDeleted) const |
virtual bool | reorderRows (int baseIndex, const std::vector< int > &newOrder) |
void | save (int index, ESM::ESMWriter &writer) const |
Private Member Functions | |
const RefIdAdapter & | findAdaptor (UniversalId::Type) const |
Throws an exception if no adaptor for Type can be found. | |
Private Attributes | |
RefIdData | mData |
std::deque< RefIdColumn > | mColumns |
std::map< UniversalId::Type, RefIdAdapter * > | mAdapters |
CSMWorld::RefIdCollection::~RefIdCollection | ( | ) | [virtual] |
void CSMWorld::RefIdCollection::appendBlankRecord | ( | const std::string & | id, |
UniversalId::Type | type | ||
) | [virtual] |
type | Will be ignored, unless the collection supports multiple record types |
Implements CSMWorld::CollectionBase.
void CSMWorld::RefIdCollection::appendRecord | ( | const RecordBase & | record, |
UniversalId::Type | type | ||
) | [virtual] |
If the record type does not match, an exception is thrown.
type | Will be ignored, unless the collection supports multiple record types |
Implements CSMWorld::CollectionBase.
const CSMWorld::RefIdAdapter & CSMWorld::RefIdCollection::findAdaptor | ( | UniversalId::Type | type | ) | const [private] |
Throws an exception if no adaptor for Type can be found.
int CSMWorld::RefIdCollection::getAppendIndex | ( | const std::string & | id, |
UniversalId::Type | type | ||
) | const [virtual] |
type | Will be ignored, unless the collection supports multiple record types |
Implements CSMWorld::CollectionBase.
const CSMWorld::ColumnBase & CSMWorld::RefIdCollection::getColumn | ( | int | column | ) | const [virtual] |
Implements CSMWorld::CollectionBase.
int CSMWorld::RefIdCollection::getColumns | ( | ) | const [virtual] |
Implements CSMWorld::CollectionBase.
QVariant CSMWorld::RefIdCollection::getData | ( | int | index, |
int | column | ||
) | const [virtual] |
Implements CSMWorld::CollectionBase.
std::string CSMWorld::RefIdCollection::getId | ( | int | index | ) | const [virtual] |
Implements CSMWorld::CollectionBase.
std::vector< std::string > CSMWorld::RefIdCollection::getIds | ( | bool | listDeleted | ) | const [virtual] |
Return a sorted collection of all IDs
listDeleted | include deleted record in the list |
Implements CSMWorld::CollectionBase.
int CSMWorld::RefIdCollection::getIndex | ( | const std::string & | id | ) | const [virtual] |
Implements CSMWorld::CollectionBase.
const CSMWorld::RecordBase & CSMWorld::RefIdCollection::getRecord | ( | const std::string & | id | ) | const [virtual] |
Implements CSMWorld::CollectionBase.
const CSMWorld::RecordBase & CSMWorld::RefIdCollection::getRecord | ( | int | index | ) | const [virtual] |
Implements CSMWorld::CollectionBase.
int CSMWorld::RefIdCollection::getSize | ( | ) | const [virtual] |
Implements CSMWorld::CollectionBase.
void CSMWorld::RefIdCollection::load | ( | ESM::ESMReader & | reader, |
bool | base, | ||
UniversalId::Type | type | ||
) |
void CSMWorld::RefIdCollection::removeRows | ( | int | index, |
int | count | ||
) | [virtual] |
< Merge modified into base.
< Remove records that are flagged as erased.
Implements CSMWorld::CollectionBase.
bool CSMWorld::RefIdCollection::reorderRows | ( | int | baseIndex, |
const std::vector< int > & | newOrder | ||
) | [virtual] |
Reorder the rows [baseIndex, baseIndex+newOrder.size()) according to the indices given in newOrder (baseIndex+newOrder[0] specifies the new index of row baseIndex).
Implements CSMWorld::CollectionBase.
void CSMWorld::RefIdCollection::replace | ( | int | index, |
const RecordBase & | record | ||
) | [virtual] |
If the record type does not match, an exception is thrown.
Implements CSMWorld::CollectionBase.
void CSMWorld::RefIdCollection::save | ( | int | index, |
ESM::ESMWriter & | writer | ||
) | const |
int CSMWorld::RefIdCollection::searchId | ( | const std::string & | id | ) | const [virtual] |
Search record with id.
Implements CSMWorld::CollectionBase.
void CSMWorld::RefIdCollection::setData | ( | int | index, |
int | column, | ||
const QVariant & | data | ||
) | [virtual] |
Implements CSMWorld::CollectionBase.
std::map<UniversalId::Type, RefIdAdapter *> CSMWorld::RefIdCollection::mAdapters [private] |
std::deque<RefIdColumn> CSMWorld::RefIdCollection::mColumns [private] |
RefIdData CSMWorld::RefIdCollection::mData [private] |