title: Ensure unique value for column in QTableView
body: <p>I have implemented a custom <code>QTableView</code> and <code>QAbstractTableModel</code>. The <code>QTableView</code> uses the <code>Qt</code>-default text line edit delegate for manipulating string data. I would like to ensure that, after submitting an edit (pressing <code>enter</code>), the string is unique for its column. If another row has the same value for that column, the edit will be rejected, perhaps with a popup box, and then the text line edit will be programmatically put back into edit mode so the user can try again.</p>
  
  <p>I have thought about using a custom delegate and possibly communicating between the delegate and the table view via signal and slots. The delegate could ensure that the value is unique inside <code>setModelData()</code>. To do this it would have to be injected with knowledge about the other columns. If the value is not unique, the delegate could emit a signal that the table view would pick up; something like <code>notUniqueTryAgain()</code>. Inside that slot the table would pop up a message and then call <code>edit()</code> on the cell. Is this the right way to go? </p>