you can subclass QStyledItemDelegate and in re implement paintEvent as
Qt Code:
  1. void styledListItemDelegate::paint(QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index) const
  2. {
  3.  
  4. QStyleOptionViewItem myOpt = option;
  5. initStyleOption(&myOpt,index);
  6. //for drawing the checkbox
  7.  
  8.  
  9. QRect chkRect(option.rect.right() - option.rect.height(),
  10. option.rect.top(),
  11. option.rect.height(),
  12. option.rect.height());
  13. opt.rect = chkRect;
  14.  
  15. if(option.state & QStyle::State_Selected)
  16. opt.state = QStyle::State_On;
  17.  
  18. QApplication::style()->drawControl(QStyle::CE_CheckBox,
  19. &opt, painter);
  20.  
  21. //adjust the rect for displayed text
  22. int dw = -chkRect.width();
  23. myOpt.rect.adjust(0,0,dw,0);
  24. QStyledItemDelegate::paint(painter, myOpt, index);
  25. }
To copy to clipboard, switch view to plain text mode 

set the item delegate for the list widget in your code

Qt Code:
  1. listWidget = new QListWidget();
  2.  
  3. listWidget->setItemDelegate(new styledListItemDelegate());
  4.  
  5. new QListWidgetItem(tr("Oak"), listWidget);
  6.  
  7. new QListWidgetItem(tr("Fir"), listWidget);
  8.  
  9. new QListWidgetItem(tr("Pine"), listWidget);
To copy to clipboard, switch view to plain text mode 


Please note that I have shown code for enabling checkboxes on the left side of the text you need to write code to handle stuff like switching on and off the checked state etc.

Hope this helps

-Sukesh