title: What is the difference between QItemDelegate and QStyledItemDelegate?
body: <p>Both classes provide display and editing facilities for data items from a model. <code>QStyledItemDelegate</code>  is newer and the Qt documentation about <code>QItemDelegate</code> states that :</p>
  
  <blockquote>
    <p>Note that QStyledItemDelegate has taken over the job of drawing Qt's
    item views. We recommend the use of QStyledItemDelegate when creating
    new delegates.</p>
  </blockquote>
  
  <p>I am confused what's the difference between the two and why <code>QStyledItemDelegate</code> is preferred over <code>QItemDelegate</code>!</p>