00001 #include "exercisedelegate.h"
00002 #include <QLineEdit>
00003 #include <QDebug>
00004
00005 ExerciseDelegate::ExerciseDelegate(QWidget *parent) : QStyledItemDelegate(parent)
00006 {
00007 }
00008
00009 QWidget* ExerciseDelegate::createEditor(QWidget *parent, const QStyleOptionViewItem &option, const QModelIndex &index) const
00010 {
00011 QLineEdit *editor = new QLineEdit(parent);
00012
00013 return editor;
00014 }
00015
00016 void ExerciseDelegate::setEditorData(QWidget *editor, const QModelIndex &index) const
00017 {
00018 QLineEdit *line = static_cast<QLineEdit*>(editor);
00019 QString data = index.model()->data(index, Qt::DisplayRole).toString();
00020 line->setText(data);
00021 }
00022
00023 void ExerciseDelegate::setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const
00024 {
00025 QLineEdit *line = static_cast<QLineEdit*>(editor);
00026 QString text = line->text();
00027
00028 model->setData(index, text, Qt::EditRole);
00029 }
00030
00031 void ExerciseDelegate::updateEditorGeometry(QWidget *editor, const QStyleOptionViewItem &option, const QModelIndex &index ) const
00032 {
00033 editor->setGeometry(option.rect);
00034
00035 }