|
|
|
@ -264,7 +264,7 @@ namespace CSMWorld
|
|
|
|
|
|
|
|
|
|
virtual void addNestedRow (RefIdData& data, int index, int position) const
|
|
|
|
|
{
|
|
|
|
|
std::vector<ESM::NPC::Dest>& list = CastableHelper<ESXRecordT>::getRecord(data, index).get().mTransport;
|
|
|
|
|
std::vector<ESM::Transport::Dest>& list = CastableHelper<ESXRecordT>::getRecord(data, index).get().mTransport.mList;
|
|
|
|
|
|
|
|
|
|
ESM::Position newPos;
|
|
|
|
|
for (unsigned i = 0; i < 3; ++i)
|
|
|
|
@ -273,7 +273,7 @@ namespace CSMWorld
|
|
|
|
|
newPos.rot[i] = 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ESM::NPC::Dest newRow;
|
|
|
|
|
ESM::Transport::Dest newRow;
|
|
|
|
|
newRow.mPos = newPos;
|
|
|
|
|
newRow.mCellName = "";
|
|
|
|
|
|
|
|
|
@ -295,7 +295,7 @@ namespace CSMWorld
|
|
|
|
|
virtual int getNestedRowsCount(const RefIdData& data,
|
|
|
|
|
int index) const
|
|
|
|
|
{
|
|
|
|
|
return CastableHelper<ESXRecordT>::getRecord(data, index).get().mTransport.size();
|
|
|
|
|
return CastableHelper<ESXRecordT>::getRecord(data, index).get().mTransport.mList.size();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
@ -312,14 +312,14 @@ namespace CSMWorld
|
|
|
|
|
int index,
|
|
|
|
|
const NestedTableWrapperBase& nestedTable)
|
|
|
|
|
{
|
|
|
|
|
CastableHelper<ESXRecordT>::getRecord(data, index).get().mTransport =
|
|
|
|
|
(static_cast<const NestedTableWrapper<std::vector<ESM::NPC::Dest> >&>(nestedTable)).mNestedTable;
|
|
|
|
|
CastableHelper<ESXRecordT>::getRecord(data, index).get().mTransport.mList =
|
|
|
|
|
(static_cast<const NestedTableWrapper<std::vector<ESM::Transport::Dest> >&>(nestedTable)).mNestedTable;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual NestedTableWrapperBase* nestedTable(const RefIdData& data,
|
|
|
|
|
int index) const
|
|
|
|
|
{
|
|
|
|
|
return new NestedTableWrapper<std::vector<ESM::NPC::Dest> >(CastableHelper<ESXRecordT>::getRecord(data, index).get().mTransport);
|
|
|
|
|
return new NestedTableWrapper<std::vector<ESM::Transport::Dest> >(CastableHelper<ESXRecordT>::getRecord(data, index).get().mTransport.mList);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual QVariant getNestedData(const CSMWorld::RefIdData& data,
|
|
|
|
@ -327,7 +327,7 @@ namespace CSMWorld
|
|
|
|
|
int subRowIndex,
|
|
|
|
|
int subColIndex) const
|
|
|
|
|
{
|
|
|
|
|
const ESM::NPC::Dest& content = CastableHelper<ESXRecordT>::getRecord(data, index).get().mTransport.at(subRowIndex);
|
|
|
|
|
const ESM::Transport::Dest& content = CastableHelper<ESXRecordT>::getRecord(data, index).get().mTransport.mList.at(subRowIndex);
|
|
|
|
|
|
|
|
|
|
switch (subColIndex)
|
|
|
|
|
{
|
|
|
|
@ -359,7 +359,7 @@ namespace CSMWorld
|
|
|
|
|
|
|
|
|
|
virtual void removeNestedRow (RefIdData& data, int index, int rowToRemove) const
|
|
|
|
|
{
|
|
|
|
|
std::vector<ESM::NPC::Dest>& list = CastableHelper<ESXRecordT>::getRecord(data, index).get().mTransport;
|
|
|
|
|
std::vector<ESM::Transport::Dest>& list = CastableHelper<ESXRecordT>::getRecord(data, index).get().mTransport.mList;
|
|
|
|
|
|
|
|
|
|
list.erase (list.begin () + rowToRemove);
|
|
|
|
|
}
|
|
|
|
@ -373,31 +373,31 @@ namespace CSMWorld
|
|
|
|
|
switch(subColIndex)
|
|
|
|
|
{
|
|
|
|
|
case 0:
|
|
|
|
|
CastableHelper<ESXRecordT>::getRecord(data, index).get().mTransport.at(subRowIndex).mCellName = std::string(value.toString().toUtf8().constData());
|
|
|
|
|
CastableHelper<ESXRecordT>::getRecord(data, index).get().mTransport.mList.at(subRowIndex).mCellName = std::string(value.toString().toUtf8().constData());
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
case 1:
|
|
|
|
|
CastableHelper<ESXRecordT>::getRecord(data, index).get().mTransport.at(subRowIndex).mPos.pos[0] = value.toFloat();
|
|
|
|
|
CastableHelper<ESXRecordT>::getRecord(data, index).get().mTransport.mList.at(subRowIndex).mPos.pos[0] = value.toFloat();
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
case 2:
|
|
|
|
|
CastableHelper<ESXRecordT>::getRecord(data, index).get().mTransport.at(subRowIndex).mPos.pos[1] = value.toFloat();
|
|
|
|
|
CastableHelper<ESXRecordT>::getRecord(data, index).get().mTransport.mList.at(subRowIndex).mPos.pos[1] = value.toFloat();
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
case 3:
|
|
|
|
|
CastableHelper<ESXRecordT>::getRecord(data, index).get().mTransport.at(subRowIndex).mPos.pos[2] = value.toFloat();
|
|
|
|
|
CastableHelper<ESXRecordT>::getRecord(data, index).get().mTransport.mList.at(subRowIndex).mPos.pos[2] = value.toFloat();
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
case 4:
|
|
|
|
|
CastableHelper<ESXRecordT>::getRecord(data, index).get().mTransport.at(subRowIndex).mPos.rot[0] = value.toFloat();
|
|
|
|
|
CastableHelper<ESXRecordT>::getRecord(data, index).get().mTransport.mList.at(subRowIndex).mPos.rot[0] = value.toFloat();
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
case 5:
|
|
|
|
|
CastableHelper<ESXRecordT>::getRecord(data, index).get().mTransport.at(subRowIndex).mPos.rot[1] = value.toFloat();
|
|
|
|
|
CastableHelper<ESXRecordT>::getRecord(data, index).get().mTransport.mList.at(subRowIndex).mPos.rot[1] = value.toFloat();
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
case 6:
|
|
|
|
|
CastableHelper<ESXRecordT>::getRecord(data, index).get().mTransport.at(subRowIndex).mPos.rot[2] = value.toFloat();
|
|
|
|
|
CastableHelper<ESXRecordT>::getRecord(data, index).get().mTransport.mList.at(subRowIndex).mPos.rot[2] = value.toFloat();
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
default:
|
|
|
|
@ -407,7 +407,7 @@ namespace CSMWorld
|
|
|
|
|
|
|
|
|
|
virtual void addNestedRow (RefIdData& data, int index, int position) const
|
|
|
|
|
{
|
|
|
|
|
std::vector<ESM::NPC::Dest>& list = CastableHelper<ESXRecordT>::getRecord(data, index).get().mTransport;
|
|
|
|
|
std::vector<ESM::Transport::Dest>& list = CastableHelper<ESXRecordT>::getRecord(data, index).get().mTransport.mList;
|
|
|
|
|
|
|
|
|
|
ESM::Position newPos;
|
|
|
|
|
for (unsigned i = 0; i < 3; ++i)
|
|
|
|
@ -416,7 +416,7 @@ namespace CSMWorld
|
|
|
|
|
newPos.rot[i] = 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ESM::NPC::Dest newRow;
|
|
|
|
|
ESM::Transport::Dest newRow;
|
|
|
|
|
newRow.mPos = newPos;
|
|
|
|
|
newRow.mCellName = "";
|
|
|
|
|
|
|
|
|
@ -434,11 +434,10 @@ namespace CSMWorld
|
|
|
|
|
return 7;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
virtual int getNestedRowsCount(const RefIdData& data,
|
|
|
|
|
int index) const
|
|
|
|
|
{
|
|
|
|
|
return CastableHelper<ESXRecordT>::getRecord(data, index).get().mTransport.size();
|
|
|
|
|
return CastableHelper<ESXRecordT>::getRecord(data, index).get().mTransport.mList.size();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
@ -532,7 +531,6 @@ namespace CSMWorld
|
|
|
|
|
return 2;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
virtual int getNestedRowsCount(const RefIdData& data,
|
|
|
|
|
int index) const
|
|
|
|
|
{
|
|
|
|
|