OpenMW
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
nestedcoladapterimp.hpp
Go to the documentation of this file.
1 #ifndef CSM_WOLRD_NESTEDCOLADAPTERIMP_H
2 #define CSM_WOLRD_NESTEDCOLADAPTERIMP_H
3 
4 #include <QVariant>
5 
8 #include <components/esm/loadmgef.hpp> // for converting magic effect id to string & back
9 #include <components/esm/loadskil.hpp> // for converting skill names
10 #include <components/esm/attr.hpp> // for converting attributes
12 
13 #include "nestedcolumnadapter.hpp"
14 #include "nestedtablewrapper.hpp"
15 #include "cell.hpp"
16 
17 namespace ESM
18 {
19  struct Faction;
20  struct Region;
21 }
22 
23 namespace CSMWorld
24 {
25  struct Pathgrid;
26  struct Info;
27 
29  {
30  public:
32 
33  virtual void addRow(Record<Pathgrid>& record, int position) const;
34 
35  virtual void removeRow(Record<Pathgrid>& record, int rowToRemove) const;
36 
37  virtual void setTable(Record<Pathgrid>& record,
38  const NestedTableWrapperBase& nestedTable) const;
39 
40  virtual NestedTableWrapperBase* table(const Record<Pathgrid>& record) const;
41 
42  virtual QVariant getData(const Record<Pathgrid>& record,
43  int subRowIndex, int subColIndex) const;
44 
45  virtual void setData(Record<Pathgrid>& record,
46  const QVariant& value, int subRowIndex, int subColIndex) const;
47 
48  virtual int getColumnsCount(const Record<Pathgrid>& record) const;
49 
50  virtual int getRowsCount(const Record<Pathgrid>& record) const;
51  };
52 
54  {
55  public:
57 
58  virtual void addRow(Record<Pathgrid>& record, int position) const;
59 
60  virtual void removeRow(Record<Pathgrid>& record, int rowToRemove) const;
61 
62  virtual void setTable(Record<Pathgrid>& record,
63  const NestedTableWrapperBase& nestedTable) const;
64 
65  virtual NestedTableWrapperBase* table(const Record<Pathgrid>& record) const;
66 
67  virtual QVariant getData(const Record<Pathgrid>& record,
68  int subRowIndex, int subColIndex) const;
69 
70  virtual void setData(Record<Pathgrid>& record,
71  const QVariant& value, int subRowIndex, int subColIndex) const;
72 
73  virtual int getColumnsCount(const Record<Pathgrid>& record) const;
74 
75  virtual int getRowsCount(const Record<Pathgrid>& record) const;
76  };
77 
78  class FactionReactionsAdapter : public NestedColumnAdapter<ESM::Faction>
79  {
80  public:
82 
83  virtual void addRow(Record<ESM::Faction>& record, int position) const;
84 
85  virtual void removeRow(Record<ESM::Faction>& record, int rowToRemove) const;
86 
87  virtual void setTable(Record<ESM::Faction>& record,
88  const NestedTableWrapperBase& nestedTable) const;
89 
90  virtual NestedTableWrapperBase* table(const Record<ESM::Faction>& record) const;
91 
92  virtual QVariant getData(const Record<ESM::Faction>& record,
93  int subRowIndex, int subColIndex) const;
94 
95  virtual void setData(Record<ESM::Faction>& record,
96  const QVariant& value, int subRowIndex, int subColIndex) const;
97 
98  virtual int getColumnsCount(const Record<ESM::Faction>& record) const;
99 
100  virtual int getRowsCount(const Record<ESM::Faction>& record) const;
101  };
102 
103  class RegionSoundListAdapter : public NestedColumnAdapter<ESM::Region>
104  {
105  public:
107 
108  virtual void addRow(Record<ESM::Region>& record, int position) const;
109 
110  virtual void removeRow(Record<ESM::Region>& record, int rowToRemove) const;
111 
112  virtual void setTable(Record<ESM::Region>& record,
113  const NestedTableWrapperBase& nestedTable) const;
114 
115  virtual NestedTableWrapperBase* table(const Record<ESM::Region>& record) const;
116 
117  virtual QVariant getData(const Record<ESM::Region>& record,
118  int subRowIndex, int subColIndex) const;
119 
120  virtual void setData(Record<ESM::Region>& record,
121  const QVariant& value, int subRowIndex, int subColIndex) const;
122 
123  virtual int getColumnsCount(const Record<ESM::Region>& record) const;
124 
125  virtual int getRowsCount(const Record<ESM::Region>& record) const;
126  };
127 
128  template<typename ESXRecordT>
129  class SpellListAdapter : public NestedColumnAdapter<ESXRecordT>
130  {
131  public:
133 
134  virtual void addRow(Record<ESXRecordT>& record, int position) const
135  {
136  ESXRecordT raceOrBthSgn = record.get();
137 
138  std::vector<std::string>& spells = raceOrBthSgn.mPowers.mList;
139 
140  // blank row
141  std::string spell = "";
142 
143  spells.insert(spells.begin()+position, spell);
144 
145  record.setModified (raceOrBthSgn);
146  }
147 
148  virtual void removeRow(Record<ESXRecordT>& record, int rowToRemove) const
149  {
150  ESXRecordT raceOrBthSgn = record.get();
151 
152  std::vector<std::string>& spells = raceOrBthSgn.mPowers.mList;
153 
154  if (rowToRemove < 0 || rowToRemove >= static_cast<int> (spells.size()))
155  throw std::runtime_error ("index out of range");
156 
157  spells.erase(spells.begin()+rowToRemove);
158 
159  record.setModified (raceOrBthSgn);
160  }
161 
162  virtual void setTable(Record<ESXRecordT>& record, const NestedTableWrapperBase& nestedTable) const
163  {
164  ESXRecordT raceOrBthSgn = record.get();
165 
166  raceOrBthSgn.mPowers.mList =
167  static_cast<const NestedTableWrapper<std::vector<std::string> >&>(nestedTable).mNestedTable;
168 
169  record.setModified (raceOrBthSgn);
170  }
171 
172  virtual NestedTableWrapperBase* table(const Record<ESXRecordT>& record) const
173  {
174  // deleted by dtor of NestedTableStoring
175  return new NestedTableWrapper<std::vector<std::string> >(record.get().mPowers.mList);
176  }
177 
178  virtual QVariant getData(const Record<ESXRecordT>& record, int subRowIndex, int subColIndex) const
179  {
180  ESXRecordT raceOrBthSgn = record.get();
181 
182  std::vector<std::string>& spells = raceOrBthSgn.mPowers.mList;
183 
184  if (subRowIndex < 0 || subRowIndex >= static_cast<int> (spells.size()))
185  throw std::runtime_error ("index out of range");
186 
187  std::string spell = spells[subRowIndex];
188  switch (subColIndex)
189  {
190  case 0: return QString(spell.c_str());
191  default: throw std::runtime_error("Spells subcolumn index out of range");
192  }
193  }
194 
195  virtual void setData(Record<ESXRecordT>& record, const QVariant& value,
196  int subRowIndex, int subColIndex) const
197  {
198  ESXRecordT raceOrBthSgn = record.get();
199 
200  std::vector<std::string>& spells = raceOrBthSgn.mPowers.mList;
201 
202  if (subRowIndex < 0 || subRowIndex >= static_cast<int> (spells.size()))
203  throw std::runtime_error ("index out of range");
204 
205  std::string spell = spells[subRowIndex];
206  switch (subColIndex)
207  {
208  case 0: spell = value.toString().toUtf8().constData(); break;
209  default: throw std::runtime_error("Spells subcolumn index out of range");
210  }
211 
212  raceOrBthSgn.mPowers.mList[subRowIndex] = spell;
213 
214  record.setModified (raceOrBthSgn);
215  }
216 
217  virtual int getColumnsCount(const Record<ESXRecordT>& record) const
218  {
219  return 1;
220  }
221 
222  virtual int getRowsCount(const Record<ESXRecordT>& record) const
223  {
224  return static_cast<int>(record.get().mPowers.mList.size());
225  }
226  };
227 
228  template<typename ESXRecordT>
229  class EffectsListAdapter : public NestedColumnAdapter<ESXRecordT>
230  {
231  public:
233 
234  virtual void addRow(Record<ESXRecordT>& record, int position) const
235  {
236  ESXRecordT magic = record.get();
237 
238  std::vector<ESM::ENAMstruct>& effectsList = magic.mEffects.mList;
239 
240  // blank row
241  ESM::ENAMstruct effect;
242  effect.mEffectID = 0;
243  effect.mSkill = -1;
244  effect.mAttribute = -1;
245  effect.mRange = 0;
246  effect.mArea = 0;
247  effect.mDuration = 0;
248  effect.mMagnMin = 0;
249  effect.mMagnMax = 0;
250 
251  effectsList.insert(effectsList.begin()+position, effect);
252 
253  record.setModified (magic);
254  }
255 
256  virtual void removeRow(Record<ESXRecordT>& record, int rowToRemove) const
257  {
258  ESXRecordT magic = record.get();
259 
260  std::vector<ESM::ENAMstruct>& effectsList = magic.mEffects.mList;
261 
262  if (rowToRemove < 0 || rowToRemove >= static_cast<int> (effectsList.size()))
263  throw std::runtime_error ("index out of range");
264 
265  effectsList.erase(effectsList.begin()+rowToRemove);
266 
267  record.setModified (magic);
268  }
269 
270  virtual void setTable(Record<ESXRecordT>& record, const NestedTableWrapperBase& nestedTable) const
271  {
272  ESXRecordT magic = record.get();
273 
274  magic.mEffects.mList =
275  static_cast<const NestedTableWrapper<std::vector<ESM::ENAMstruct> >&>(nestedTable).mNestedTable;
276 
277  record.setModified (magic);
278  }
279 
280  virtual NestedTableWrapperBase* table(const Record<ESXRecordT>& record) const
281  {
282  // deleted by dtor of NestedTableStoring
283  return new NestedTableWrapper<std::vector<ESM::ENAMstruct> >(record.get().mEffects.mList);
284  }
285 
286  virtual QVariant getData(const Record<ESXRecordT>& record, int subRowIndex, int subColIndex) const
287  {
288  ESXRecordT magic = record.get();
289 
290  std::vector<ESM::ENAMstruct>& effectsList = magic.mEffects.mList;
291 
292  if (subRowIndex < 0 || subRowIndex >= static_cast<int> (effectsList.size()))
293  throw std::runtime_error ("index out of range");
294 
295  ESM::ENAMstruct effect = effectsList[subRowIndex];
296  switch (subColIndex)
297  {
298  case 0:
299  {
300  if (effect.mEffectID >=0 && effect.mEffectID < ESM::MagicEffect::Length)
301  return effect.mEffectID;
302  else
303  throw std::runtime_error("Magic effects ID unexpected value");
304  }
305  case 1:
306  {
307  switch (effect.mEffectID)
308  {
314  return effect.mSkill;
315  default:
316  return QVariant();
317  }
318  }
319  case 2:
320  {
321  switch (effect.mEffectID)
322  {
328  return effect.mAttribute;
329  default:
330  return QVariant();
331  }
332  }
333  case 3:
334  {
335  if (effect.mRange >=0 && effect.mRange <=2)
336  return effect.mRange;
337  else
338  throw std::runtime_error("Magic effects range unexpected value");
339  }
340  case 4: return effect.mArea;
341  case 5: return effect.mDuration;
342  case 6: return effect.mMagnMin;
343  case 7: return effect.mMagnMax;
344  default: throw std::runtime_error("Magic Effects subcolumn index out of range");
345  }
346  }
347 
348  virtual void setData(Record<ESXRecordT>& record, const QVariant& value,
349  int subRowIndex, int subColIndex) const
350  {
351  ESXRecordT magic = record.get();
352 
353  std::vector<ESM::ENAMstruct>& effectsList = magic.mEffects.mList;
354 
355  if (subRowIndex < 0 || subRowIndex >= static_cast<int> (effectsList.size()))
356  throw std::runtime_error ("index out of range");
357 
358  ESM::ENAMstruct effect = effectsList[subRowIndex];
359  switch (subColIndex)
360  {
361  case 0:
362  {
363  effect.mEffectID = static_cast<short>(value.toInt());
364  break;
365  }
366  case 1:
367  {
368  effect.mSkill = static_cast<signed char>(value.toInt());
369  break;
370  }
371  case 2:
372  {
373  effect.mAttribute = static_cast<signed char>(value.toInt());
374  break;
375  }
376  case 3:
377  {
378  effect.mRange = value.toInt();
379  break;
380  }
381  case 4: effect.mArea = value.toInt(); break;
382  case 5: effect.mDuration = value.toInt(); break;
383  case 6: effect.mMagnMin = value.toInt(); break;
384  case 7: effect.mMagnMax = value.toInt(); break;
385  default: throw std::runtime_error("Magic Effects subcolumn index out of range");
386  }
387 
388  magic.mEffects.mList[subRowIndex] = effect;
389 
390  record.setModified (magic);
391  }
392 
393  virtual int getColumnsCount(const Record<ESXRecordT>& record) const
394  {
395  return 8;
396  }
397 
398  virtual int getRowsCount(const Record<ESXRecordT>& record) const
399  {
400  return static_cast<int>(record.get().mEffects.mList.size());
401  }
402  };
403 
405  {
406  public:
407  InfoListAdapter ();
408 
409  virtual void addRow(Record<Info>& record, int position) const;
410 
411  virtual void removeRow(Record<Info>& record, int rowToRemove) const;
412 
413  virtual void setTable(Record<Info>& record,
414  const NestedTableWrapperBase& nestedTable) const;
415 
416  virtual NestedTableWrapperBase* table(const Record<Info>& record) const;
417 
418  virtual QVariant getData(const Record<Info>& record,
419  int subRowIndex, int subColIndex) const;
420 
421  virtual void setData(Record<Info>& record,
422  const QVariant& value, int subRowIndex, int subColIndex) const;
423 
424  virtual int getColumnsCount(const Record<Info>& record) const;
425 
426  virtual int getRowsCount(const Record<Info>& record) const;
427  };
428 
430  {
431  public:
433 
434  virtual void addRow(Record<Info>& record, int position) const;
435 
436  virtual void removeRow(Record<Info>& record, int rowToRemove) const;
437 
438  virtual void setTable(Record<Info>& record,
439  const NestedTableWrapperBase& nestedTable) const;
440 
441  virtual NestedTableWrapperBase* table(const Record<Info>& record) const;
442 
443  virtual QVariant getData(const Record<Info>& record,
444  int subRowIndex, int subColIndex) const;
445 
446  virtual void setData(Record<Info>& record,
447  const QVariant& value, int subRowIndex, int subColIndex) const;
448 
449  virtual int getColumnsCount(const Record<Info>& record) const;
450 
451  virtual int getRowsCount(const Record<Info>& record) const;
452  };
453 
454  class RaceAttributeAdapter : public NestedColumnAdapter<ESM::Race>
455  {
456  public:
458 
459  virtual void addRow(Record<ESM::Race>& record, int position) const;
460 
461  virtual void removeRow(Record<ESM::Race>& record, int rowToRemove) const;
462 
463  virtual void setTable(Record<ESM::Race>& record,
464  const NestedTableWrapperBase& nestedTable) const;
465 
466  virtual NestedTableWrapperBase* table(const Record<ESM::Race>& record) const;
467 
468  virtual QVariant getData(const Record<ESM::Race>& record,
469  int subRowIndex, int subColIndex) const;
470 
471  virtual void setData(Record<ESM::Race>& record,
472  const QVariant& value, int subRowIndex, int subColIndex) const;
473 
474  virtual int getColumnsCount(const Record<ESM::Race>& record) const;
475 
476  virtual int getRowsCount(const Record<ESM::Race>& record) const;
477  };
478 
479  class RaceSkillsBonusAdapter : public NestedColumnAdapter<ESM::Race>
480  {
481  public:
483 
484  virtual void addRow(Record<ESM::Race>& record, int position) const;
485 
486  virtual void removeRow(Record<ESM::Race>& record, int rowToRemove) const;
487 
488  virtual void setTable(Record<ESM::Race>& record,
489  const NestedTableWrapperBase& nestedTable) const;
490 
491  virtual NestedTableWrapperBase* table(const Record<ESM::Race>& record) const;
492 
493  virtual QVariant getData(const Record<ESM::Race>& record,
494  int subRowIndex, int subColIndex) const;
495 
496  virtual void setData(Record<ESM::Race>& record,
497  const QVariant& value, int subRowIndex, int subColIndex) const;
498 
499  virtual int getColumnsCount(const Record<ESM::Race>& record) const;
500 
501  virtual int getRowsCount(const Record<ESM::Race>& record) const;
502  };
503 
504  class CellListAdapter : public NestedColumnAdapter<CSMWorld::Cell>
505  {
506  public:
507  CellListAdapter ();
508 
509  virtual void addRow(Record<CSMWorld::Cell>& record, int position) const;
510 
511  virtual void removeRow(Record<CSMWorld::Cell>& record, int rowToRemove) const;
512 
513  virtual void setTable(Record<CSMWorld::Cell>& record,
514  const NestedTableWrapperBase& nestedTable) const;
515 
516  virtual NestedTableWrapperBase* table(const Record<CSMWorld::Cell>& record) const;
517 
518  virtual QVariant getData(const Record<CSMWorld::Cell>& record,
519  int subRowIndex, int subColIndex) const;
520 
521  virtual void setData(Record<CSMWorld::Cell>& record,
522  const QVariant& value, int subRowIndex, int subColIndex) const;
523 
524  virtual int getColumnsCount(const Record<CSMWorld::Cell>& record) const;
525 
526  virtual int getRowsCount(const Record<CSMWorld::Cell>& record) const;
527  };
528 
529  class RegionWeatherAdapter : public NestedColumnAdapter<ESM::Region>
530  {
531  public:
533 
534  virtual void addRow(Record<ESM::Region>& record, int position) const;
535 
536  virtual void removeRow(Record<ESM::Region>& record, int rowToRemove) const;
537 
538  virtual void setTable(Record<ESM::Region>& record,
539  const NestedTableWrapperBase& nestedTable) const;
540 
541  virtual NestedTableWrapperBase* table(const Record<ESM::Region>& record) const;
542 
543  virtual QVariant getData(const Record<ESM::Region>& record,
544  int subRowIndex, int subColIndex) const;
545 
546  virtual void setData(Record<ESM::Region>& record,
547  const QVariant& value, int subRowIndex, int subColIndex) const;
548 
549  virtual int getColumnsCount(const Record<ESM::Region>& record) const;
550 
551  virtual int getRowsCount(const Record<ESM::Region>& record) const;
552  };
553 }
554 
555 #endif // CSM_WOLRD_NESTEDCOLADAPTERIMP_H
int mMagnMax
Definition: effectlist.hpp:28
virtual void setData(Record< CSMWorld::Cell > &record, const QVariant &value, int subRowIndex, int subColIndex) const
Definition: nestedcoladapterimp.cpp:893
Definition: loadmgef.hpp:190
virtual QVariant getData(const Record< Pathgrid > &record, int subRowIndex, int subColIndex) const
Definition: nestedcoladapterimp.cpp:166
virtual NestedTableWrapperBase * table(const Record< ESM::Faction > &record) const
Definition: nestedcoladapterimp.cpp:260
virtual int getRowsCount(const Record< CSMWorld::Cell > &record) const
Definition: nestedcoladapterimp.cpp:988
Definition: nestedtablewrapper.hpp:6
RegionWeatherAdapter()
Definition: nestedcoladapterimp.cpp:993
SpellListAdapter()
Definition: nestedcoladapterimp.hpp:132
virtual int getColumnsCount(const Record< Info > &record) const
Definition: nestedcoladapterimp.cpp:485
virtual int getRowsCount(const Record< ESM::Race > &record) const
Definition: nestedcoladapterimp.cpp:754
virtual int getRowsCount(const Record< ESM::Faction > &record) const
Definition: nestedcoladapterimp.cpp:332
virtual void setData(Record< Info > &record, const QVariant &value, int subRowIndex, int subColIndex) const
Definition: nestedcoladapterimp.cpp:593
virtual void setTable(Record< ESM::Region > &record, const NestedTableWrapperBase &nestedTable) const
Definition: nestedcoladapterimp.cpp:369
Definition: loadmgef.hpp:181
virtual int getColumnsCount(const Record< Info > &record) const
Definition: nestedcoladapterimp.cpp:672
Definition: loadmgef.hpp:129
virtual void setTable(Record< Info > &record, const NestedTableWrapperBase &nestedTable) const
Definition: nestedcoladapterimp.cpp:528
virtual void addRow(Record< ESM::Race > &record, int position) const
Definition: nestedcoladapterimp.cpp:684
Definition: nestedcoladapterimp.hpp:229
virtual void removeRow(Record< Info > &record, int rowToRemove) const
Definition: nestedcoladapterimp.cpp:514
Definition: nestedcoladapterimp.hpp:529
virtual NestedTableWrapperBase * table(const Record< ESXRecordT > &record) const
Definition: nestedcoladapterimp.hpp:172
EffectsListAdapter()
Definition: nestedcoladapterimp.hpp:232
virtual int getRowsCount(const Record< ESXRecordT > &record) const
Definition: nestedcoladapterimp.hpp:222
virtual void addRow(Record< ESM::Region > &record, int position) const
Definition: nestedcoladapterimp.cpp:995
virtual void setTable(Record< CSMWorld::Cell > &record, const NestedTableWrapperBase &nestedTable) const
Definition: nestedcoladapterimp.cpp:847
virtual void addRow(Record< Pathgrid > &record, int position) const
Definition: nestedcoladapterimp.cpp:15
virtual void setTable(Record< Pathgrid > &record, const NestedTableWrapperBase &nestedTable) const
Definition: nestedcoladapterimp.cpp:53
signed char mSkill
Definition: effectlist.hpp:24
virtual void setData(Record< Pathgrid > &record, const QVariant &value, int subRowIndex, int subColIndex) const
Definition: nestedcoladapterimp.cpp:83
virtual NestedTableWrapperBase * table(const Record< ESM::Race > &record) const
Definition: nestedcoladapterimp.cpp:782
virtual int getColumnsCount(const Record< ESM::Race > &record) const
Definition: nestedcoladapterimp.cpp:824
Definition: nestedcoladapterimp.hpp:429
virtual void setTable(Record< Info > &record, const NestedTableWrapperBase &nestedTable) const
Definition: nestedcoladapterimp.cpp:450
Definition: nestedcoladapterimp.hpp:103
virtual void setTable(Record< ESM::Race > &record, const NestedTableWrapperBase &nestedTable) const
Definition: nestedcoladapterimp.cpp:694
RaceSkillsBonusAdapter()
Definition: nestedcoladapterimp.cpp:759
virtual void removeRow(Record< Info > &record, int rowToRemove) const
Definition: nestedcoladapterimp.cpp:445
virtual QVariant getData(const Record< Pathgrid > &record, int subRowIndex, int subColIndex) const
Definition: nestedcoladapterimp.cpp:69
Definition: loadmgef.hpp:128
virtual QVariant getData(const Record< ESM::Race > &record, int subRowIndex, int subColIndex) const
Definition: nestedcoladapterimp.cpp:790
virtual void setData(Record< ESXRecordT > &record, const QVariant &value, int subRowIndex, int subColIndex) const
Definition: nestedcoladapterimp.hpp:348
virtual QVariant getData(const Record< CSMWorld::Cell > &record, int subRowIndex, int subColIndex) const
Definition: nestedcoladapterimp.cpp:858
virtual void removeRow(Record< CSMWorld::Cell > &record, int rowToRemove) const
Definition: nestedcoladapterimp.cpp:842
Definition: loadmgef.hpp:186
PathgridPointListAdapter()
Definition: nestedcoladapterimp.cpp:13
Definition: effectlist.hpp:17
FactionReactionsAdapter()
Definition: nestedcoladapterimp.cpp:216
short mEffectID
Definition: effectlist.hpp:20
virtual void setData(Record< ESM::Region > &record, const QVariant &value, int subRowIndex, int subColIndex) const
Definition: nestedcoladapterimp.cpp:405
virtual QVariant getData(const Record< Info > &record, int subRowIndex, int subColIndex) const
Definition: nestedcoladapterimp.cpp:461
virtual void setData(Record< Info > &record, const QVariant &value, int subRowIndex, int subColIndex) const
Definition: nestedcoladapterimp.cpp:472
virtual int getColumnsCount(const Record< ESXRecordT > &record) const
Definition: nestedcoladapterimp.hpp:217
RaceAttributeAdapter()
Definition: nestedcoladapterimp.cpp:682
virtual void removeRow(Record< ESM::Region > &record, int rowToRemove) const
Definition: nestedcoladapterimp.cpp:355
virtual void removeRow(Record< ESM::Faction > &record, int rowToRemove) const
Definition: nestedcoladapterimp.cpp:230
Definition: loadmgef.hpp:255
virtual int getColumnsCount(const Record< Pathgrid > &record) const
Definition: nestedcoladapterimp.cpp:102
virtual void setData(Record< ESM::Race > &record, const QVariant &value, int subRowIndex, int subColIndex) const
Definition: nestedcoladapterimp.cpp:806
virtual int getColumnsCount(const Record< ESM::Race > &record) const
Definition: nestedcoladapterimp.cpp:749
PathgridEdgeListAdapter()
Definition: nestedcoladapterimp.cpp:112
virtual void addRow(Record< Info > &record, int position) const
Definition: nestedcoladapterimp.cpp:497
Definition: nestedcolumnadapter.hpp:11
Definition: nestedcoladapterimp.hpp:404
Definition: nestedcoladapterimp.hpp:454
virtual NestedTableWrapperBase * table(const Record< Info > &record) const
Definition: nestedcoladapterimp.cpp:456
virtual int getRowsCount(const Record< ESM::Region > &record) const
Definition: nestedcoladapterimp.cpp:433
int mMagnMin
Definition: effectlist.hpp:28
virtual int getRowsCount(const Record< Pathgrid > &record) const
Definition: nestedcoladapterimp.cpp:107
virtual int getColumnsCount(const Record< CSMWorld::Cell > &record) const
Definition: nestedcoladapterimp.cpp:983
virtual int getRowsCount(const Record< Info > &record) const
Definition: nestedcoladapterimp.cpp:490
virtual int getColumnsCount(const Record< Pathgrid > &record) const
Definition: nestedcoladapterimp.cpp:206
virtual void setTable(Record< ESM::Race > &record, const NestedTableWrapperBase &nestedTable) const
Definition: nestedcoladapterimp.cpp:771
Definition: loadmgef.hpp:133
virtual int getRowsCount(const Record< ESM::Race > &record) const
Definition: nestedcoladapterimp.cpp:829
virtual QVariant getData(const Record< ESM::Region > &record, int subRowIndex, int subColIndex) const
Definition: nestedcoladapterimp.cpp:386
virtual void removeRow(Record< ESM::Region > &record, int rowToRemove) const
Definition: nestedcoladapterimp.cpp:1000
virtual NestedTableWrapperBase * table(const Record< ESM::Race > &record) const
Definition: nestedcoladapterimp.cpp:705
virtual void removeRow(Record< ESM::Race > &record, int rowToRemove) const
Definition: nestedcoladapterimp.cpp:766
virtual QVariant getData(const Record< Info > &record, int subRowIndex, int subColIndex) const
Definition: nestedcoladapterimp.cpp:545
int mArea
Definition: effectlist.hpp:28
Definition: nestedcoladapterimp.hpp:28
virtual void setTable(Record< ESXRecordT > &record, const NestedTableWrapperBase &nestedTable) const
Definition: nestedcoladapterimp.hpp:270
virtual NestedTableWrapperBase * table(const Record< CSMWorld::Cell > &record) const
Definition: nestedcoladapterimp.cpp:853
virtual void removeRow(Record< Pathgrid > &record, int rowToRemove) const
Definition: nestedcoladapterimp.cpp:135
Definition: loadmgef.hpp:192
virtual NestedTableWrapperBase * table(const Record< ESM::Region > &record) const
Definition: nestedcoladapterimp.cpp:1010
virtual void addRow(Record< Pathgrid > &record, int position) const
Definition: nestedcoladapterimp.cpp:114
virtual void addRow(Record< Info > &record, int position) const
Definition: nestedcoladapterimp.cpp:440
RegionSoundListAdapter()
Definition: nestedcoladapterimp.cpp:337
virtual void addRow(Record< ESM::Faction > &record, int position) const
Definition: nestedcoladapterimp.cpp:218
virtual int getColumnsCount(const Record< ESM::Faction > &record) const
Definition: nestedcoladapterimp.cpp:327
Definition: nestedcoladapterimp.hpp:504
virtual QVariant getData(const Record< ESXRecordT > &record, int subRowIndex, int subColIndex) const
Definition: nestedcoladapterimp.hpp:178
Definition: nestedcoladapterimp.hpp:479
virtual void addRow(Record< CSMWorld::Cell > &record, int position) const
Definition: nestedcoladapterimp.cpp:837
const ESXRecordT & get() const
Throws an exception, if the record is deleted.
Definition: record.hpp:106
Definition: loadmgef.hpp:185
virtual int getColumnsCount(const Record< ESM::Region > &record) const
Definition: nestedcoladapterimp.cpp:428
virtual void setData(Record< ESM::Race > &record, const QVariant &value, int subRowIndex, int subColIndex) const
Definition: nestedcoladapterimp.cpp:730
virtual QVariant getData(const Record< ESM::Region > &record, int subRowIndex, int subColIndex) const
Definition: nestedcoladapterimp.cpp:1015
virtual void addRow(Record< ESXRecordT > &record, int position) const
Definition: nestedcoladapterimp.hpp:134
virtual void setTable(Record< Pathgrid > &record, const NestedTableWrapperBase &nestedTable) const
Definition: nestedcoladapterimp.cpp:149
InfoConditionAdapter()
Definition: nestedcoladapterimp.cpp:495
virtual void removeRow(Record< Pathgrid > &record, int rowToRemove) const
Definition: nestedcoladapterimp.cpp:36
virtual void removeRow(Record< ESM::Race > &record, int rowToRemove) const
Definition: nestedcoladapterimp.cpp:689
virtual NestedTableWrapperBase * table(const Record< Pathgrid > &record) const
Definition: nestedcoladapterimp.cpp:63
int mRange
Definition: effectlist.hpp:27
virtual void setTable(Record< ESM::Region > &record, const NestedTableWrapperBase &nestedTable) const
Definition: nestedcoladapterimp.cpp:1005
virtual void setData(Record< ESM::Faction > &record, const QVariant &value, int subRowIndex, int subColIndex) const
Definition: nestedcoladapterimp.cpp:289
Definition: nestedcolumnadapter.hpp:14
void setModified(const ESXRecordT &modified)
Throws an exception, if the record is deleted.
Definition: record.hpp:133
virtual int getRowsCount(const Record< ESM::Region > &record) const
Definition: nestedcoladapterimp.cpp:1089
virtual NestedTableWrapperBase * table(const Record< Pathgrid > &record) const
Definition: nestedcoladapterimp.cpp:160
Definition: nestedcoladapterimp.hpp:129
virtual void removeRow(Record< ESXRecordT > &record, int rowToRemove) const
Definition: nestedcoladapterimp.hpp:148
virtual int getRowsCount(const Record< ESXRecordT > &record) const
Definition: nestedcoladapterimp.hpp:398
virtual void addRow(Record< ESM::Race > &record, int position) const
Definition: nestedcoladapterimp.cpp:761
signed char mAttribute
Definition: effectlist.hpp:24
virtual QVariant getData(const Record< ESM::Race > &record, int subRowIndex, int subColIndex) const
Definition: nestedcoladapterimp.cpp:713
Definition: loadmgef.hpp:124
Definition: nestedtablewrapper.hpp:16
virtual NestedTableWrapperBase * table(const Record< ESM::Region > &record) const
Definition: nestedcoladapterimp.cpp:380
virtual NestedTableWrapperBase * table(const Record< Info > &record) const
Definition: nestedcoladapterimp.cpp:539
virtual void removeRow(Record< ESXRecordT > &record, int rowToRemove) const
Definition: nestedcoladapterimp.hpp:256
virtual NestedTableWrapperBase * table(const Record< ESXRecordT > &record) const
Definition: nestedcoladapterimp.hpp:280
int mDuration
Definition: effectlist.hpp:28
virtual void setData(Record< Pathgrid > &record, const QVariant &value, int subRowIndex, int subColIndex) const
Definition: nestedcoladapterimp.cpp:184
virtual void addRow(Record< ESM::Region > &record, int position) const
Definition: nestedcoladapterimp.cpp:339
virtual void addRow(Record< ESXRecordT > &record, int position) const
Definition: nestedcoladapterimp.hpp:234
CellListAdapter()
Definition: nestedcoladapterimp.cpp:835
Definition: nestedcoladapterimp.hpp:53
virtual QVariant getData(const Record< ESXRecordT > &record, int subRowIndex, int subColIndex) const
Definition: nestedcoladapterimp.hpp:286
InfoListAdapter()
Definition: nestedcoladapterimp.cpp:438
virtual int getColumnsCount(const Record< ESM::Region > &record) const
Definition: nestedcoladapterimp.cpp:1084
Definition: loadmgef.hpp:196
virtual int getRowsCount(const Record< Pathgrid > &record) const
Definition: nestedcoladapterimp.cpp:211
virtual void setTable(Record< ESM::Faction > &record, const NestedTableWrapperBase &nestedTable) const
Definition: nestedcoladapterimp.cpp:249
virtual int getRowsCount(const Record< Info > &record) const
Definition: nestedcoladapterimp.cpp:677
Definition: nestedcoladapterimp.hpp:78
virtual void setData(Record< ESXRecordT > &record, const QVariant &value, int subRowIndex, int subColIndex) const
Definition: nestedcoladapterimp.hpp:195
virtual QVariant getData(const Record< ESM::Faction > &record, int subRowIndex, int subColIndex) const
Definition: nestedcoladapterimp.cpp:266
virtual void setTable(Record< ESXRecordT > &record, const NestedTableWrapperBase &nestedTable) const
Definition: nestedcoladapterimp.hpp:162
virtual int getColumnsCount(const Record< ESXRecordT > &record) const
Definition: nestedcoladapterimp.hpp:393
virtual void setData(Record< ESM::Region > &record, const QVariant &value, int subRowIndex, int subColIndex) const
Definition: nestedcoladapterimp.cpp:1057