Qt Reference Documentation

Contents

QSqlRelationalDelegate Class Reference

The QSqlRelationalDelegate class provides a delegate that is used to display and edit data from a QSqlRelationalTableModel. More...

 #include <QSqlRelationalDelegate>

Inherits: QItemDelegate.

Public Functions

QSqlRelationalDelegate ( QObject * parent = 0 )
~QSqlRelationalDelegate ()

Reimplemented Public Functions

virtual QWidget * createEditor ( QWidget * parent, const QStyleOptionViewItem & option, const QModelIndex & index ) const
virtual void setEditorData ( QWidget * editor, const QModelIndex & index ) const
virtual void setModelData ( QWidget * editor, QAbstractItemModel * model, const QModelIndex & index ) const

Additional Inherited Members

Detailed Description

The QSqlRelationalDelegate class provides a delegate that is used to display and edit data from a QSqlRelationalTableModel.

Unlike the default delegate, QSqlRelationalDelegate provides a combobox for fields that are foreign keys into other tables. To use the class, simply call QAbstractItemView::setItemDelegate() on the view with an instance of QSqlRelationalDelegate:

     QTableView *view = new QTableView;
     view->setModel(model);
     view->setItemDelegate(new QSqlRelationalDelegate(view));

The Relational Table Model example (shown below) illustrates how to use QSqlRelationalDelegate in conjunction with QSqlRelationalTableModel to provide tables with foreign key support.

See also QSqlRelationalTableModel and Model/View Programming.

Member Function Documentation

QSqlRelationalDelegate::QSqlRelationalDelegate ( QObject * parent = 0 )

Constructs a QSqlRelationalDelegate object with the given parent.

QSqlRelationalDelegate::~QSqlRelationalDelegate ()

Destroys the QSqlRelationalDelegate object and frees any allocated resources.

QWidget * QSqlRelationalDelegate::createEditor ( QWidget * parent, const QStyleOptionViewItem & option, const QModelIndex & index ) const [virtual]

Reimplemented from QAbstractItemDelegate::createEditor().

void QSqlRelationalDelegate::setEditorData ( QWidget * editor, const QModelIndex & index ) const [virtual]

Reimplemented from QAbstractItemDelegate::setEditorData().

void QSqlRelationalDelegate::setModelData ( QWidget * editor, QAbstractItemModel * model, const QModelIndex & index ) const [virtual]

Reimplemented from QAbstractItemDelegate::setModelData().