title: What is the best way to work with C++ model and TableView?
body: <p>I rather newcomer in QML and can't find the best solution to work with QML <code>TableView</code> regarding C++ models. Almost all google's links say that I should use <code>QAbstractTableModel</code>. However, the problem in using this model (or better to say Presenter) is that I shoud emit <code>dataUpdated</code> every time anything is changed in real data.</p>
  
  <p>But my approach is to create <code>RowPresenter</code> with <code>QObject</code>-derived properties for every column-cell (e.g. <code>NameCellPresenter</code>, <code>StatisticsCellPresenter</code> etc.) All these cell objects have complex data and it should be displayed in cell via properties. Moreover, I could display several types of data in one cell. And nobody, except these cell presenter objects, will never know about changing (<code>RowPresenter</code> or List of <code>RowPresenter</code> will only do their function of creating/removing...)</p>
  
  <p>The questions are:</p>
  
  <ul>
  <li>How could I efficiently update to QML the number of rows and rows from <code>QList&lt;RowPresenter&gt;</code> (without resetting <code>ContextProperty</code>) ?</li>
  <li>Are there any methods to work with <code>QAbstractTableModel</code> in such way: only cell presenter knows about changing, and displaying complex data in one cell that could be changed independent from different threads?</li>
  </ul>