diff --git a/apps/opencs/model/world/refidadapterimp.cpp b/apps/opencs/model/world/refidadapterimp.cpp index 56c4835f8..99ca76d73 100644 --- a/apps/opencs/model/world/refidadapterimp.cpp +++ b/apps/opencs/model/world/refidadapterimp.cpp @@ -1122,8 +1122,11 @@ void CSMWorld::WeaponRefIdAdapter::setData (const RefIdColumn *column, RefIdData } } +namespace CSMWorld +{ + template <> -void CSMWorld::NestedSpellRefIdAdapter::addNestedRow (const RefIdColumn *column, +void NestedSpellRefIdAdapter::addNestedRow (const RefIdColumn *column, RefIdData& data, int index, int position) const { Record& record = @@ -1147,7 +1150,7 @@ void CSMWorld::NestedSpellRefIdAdapter::addNestedRow (const RefIdColum } template <> -void CSMWorld::NestedSpellRefIdAdapter::removeNestedRow (const RefIdColumn *column, +void NestedSpellRefIdAdapter::removeNestedRow (const RefIdColumn *column, RefIdData& data, int index, int rowToRemove) const { Record& record = @@ -1178,7 +1181,7 @@ void CSMWorld::NestedSpellRefIdAdapter::removeNestedRow (const RefIdCo } template <> -void CSMWorld::NestedSpellRefIdAdapter::setNestedData (const RefIdColumn *column, +void NestedSpellRefIdAdapter::setNestedData (const RefIdColumn *column, RefIdData& data, int row, const QVariant& value, int subRowIndex, int subColIndex) const { Record& record = @@ -1211,13 +1214,13 @@ void CSMWorld::NestedSpellRefIdAdapter::setNestedData (const RefIdColu } template <> -QVariant CSMWorld::NestedSpellRefIdAdapter::getNestedData (const RefIdColumn *column, +QVariant NestedSpellRefIdAdapter::getNestedData (const RefIdColumn *column, const RefIdData& data, int index, int subRowIndex, int subColIndex) const { const Record& record = static_cast&> (data.getRecord (RefIdData::LocalIndex (index, mType))); - const std::vector& spells = mData.npcAutoCalculate(record.get())->spells(); + const std::vector& spells = mData.npcAutoCalculate(record.get())->spells(); if (subRowIndex < 0 || subRowIndex >= static_cast (spells.size())) throw std::runtime_error ("index out of range"); @@ -1235,24 +1238,24 @@ QVariant CSMWorld::NestedSpellRefIdAdapter::getNestedData (const RefId } template <> -int CSMWorld::NestedSpellRefIdAdapter::getNestedColumnsCount(const RefIdColumn *column, +int NestedSpellRefIdAdapter::getNestedColumnsCount(const RefIdColumn *column, const RefIdData& data) const { return 5; } template <> -int CSMWorld::NestedSpellRefIdAdapter::getNestedRowsCount(const RefIdColumn *column, const RefIdData& data, int index) const +int NestedSpellRefIdAdapter::getNestedRowsCount(const RefIdColumn *column, const RefIdData& data, int index) const { const Record& record = static_cast&> (data.getRecord (RefIdData::LocalIndex (index, mType))); - const std::vector spells = mData.npcAutoCalculate(record.get())->spells(); + const std::vector spells = mData.npcAutoCalculate(record.get())->spells(); return static_cast(spells.size()); } template <> -void CSMWorld::NestedSpellRefIdAdapter::addNestedRow (const RefIdColumn *column, +void NestedSpellRefIdAdapter::addNestedRow (const RefIdColumn *column, RefIdData& data, int index, int position) const { Record& record = @@ -1272,7 +1275,7 @@ void CSMWorld::NestedSpellRefIdAdapter::addNestedRow (const RefId } template <> -void CSMWorld::NestedSpellRefIdAdapter::removeNestedRow (const RefIdColumn *column, +void NestedSpellRefIdAdapter::removeNestedRow (const RefIdColumn *column, RefIdData& data, int index, int rowToRemove) const { Record& record = @@ -1290,7 +1293,7 @@ void CSMWorld::NestedSpellRefIdAdapter::removeNestedRow (const Re } template <> -void CSMWorld::NestedSpellRefIdAdapter::setNestedData (const RefIdColumn *column, +void NestedSpellRefIdAdapter::setNestedData (const RefIdColumn *column, RefIdData& data, int row, const QVariant& value, int subRowIndex, int subColIndex) const { Record& record = @@ -1310,7 +1313,7 @@ void CSMWorld::NestedSpellRefIdAdapter::setNestedData (const RefI } template<> -QVariant CSMWorld::NestedSpellRefIdAdapter::getNestedData (const RefIdColumn *column, +QVariant NestedSpellRefIdAdapter::getNestedData (const RefIdColumn *column, const RefIdData& data, int index, int subRowIndex, int subColIndex) const { const Record& record = @@ -1337,17 +1340,19 @@ QVariant CSMWorld::NestedSpellRefIdAdapter::getNestedData (const } template <> -int CSMWorld::NestedSpellRefIdAdapter::getNestedColumnsCount(const RefIdColumn *column, +int NestedSpellRefIdAdapter::getNestedColumnsCount(const RefIdColumn *column, const RefIdData& data) const { return 2; } template <> -int CSMWorld::NestedSpellRefIdAdapter::getNestedRowsCount(const RefIdColumn *column, const RefIdData& data, int index) const +int NestedSpellRefIdAdapter::getNestedRowsCount(const RefIdColumn *column, const RefIdData& data, int index) const { const Record& record = static_cast&> (data.getRecord (RefIdData::LocalIndex (index, mType))); return static_cast(record.get().mSpells.mList.size()); } + +}