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