#include <ViewParamEditor.h>
List of all members.
Public Member Functions |
QWidget * | createEditor (QWidget *parent, const QStyleOptionViewItem &option, const QModelIndex &index) const |
void | setEditorData (QWidget *editor, const QModelIndex &index) const |
void | setModelData (QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const |
| ViewParamDelegate (QObject *parent=0) |
Constructor & Destructor Documentation
References TRACE.
: QItemDelegate(parent)
{
TRACE;
_tableFieldList=MetaDataFactory::instance()->registeredNames();
}
Member Function Documentation
References GeopsyCore::MetaDataIndex::id(), GeopsyCore::MetaDataIndex::index(), GeopsyCore::MetaData::indexList(), GeopsyCore::MetaDataIndex::subId(), and w.
{
switch(index.column()) {
case 0: {
QComboBox *w=new QComboBox (parent);
w->addItems(_tableFieldList);
connect(w, SIGNAL(activated(int)), this, SLOT(commit()));
return w;
}
case 1: {
QComboBox * w=new QComboBox(parent);
QModelIndex metaDataNameIndex=static_cast<const QAbstractTableModel *>(index.model())->index(index.row(), 0, index.parent());
MetaDataIndex dataIndex=MetaDataFactory::instance()->index(index.model()->data(metaDataNameIndex).toString());
MetaData * d=MetaDataFactory::instance()->create(dataIndex.id());
ASSERT(d);
w->addItems(d->indexList(dataIndex.subId()));
delete d;
w->setEditable(true);
connect(w, SIGNAL(textChanged(QString)), this, SLOT(commit()));
return w;
}
default:
QLineEdit * w=new QLineEdit(parent);
return w;
}
}
References TRACE.
{
TRACE;
switch(index.column()) {
case 0: {
QComboBox *w=qobject_cast<QComboBox *>(editor);
if(!w) return;
int pos=w->findText(index.model()->data(index).toString(), Qt::MatchExactly);
w->setCurrentIndex(pos);
break;
}
case 1: {
QComboBox * w=qobject_cast<QComboBox *>(editor);
if(!w) return;
w->setEditText(index.model()->data(index).toString());
break;
}
default:
QLineEdit * w=qobject_cast<QLineEdit *>(editor);
if( !w) return;
w->setText(index.model() ->data(index).toString());
w->selectAll();
break;
}
}
References TRACE.
{
TRACE;
switch(index.column()) {
case 0: {
QComboBox *w=qobject_cast<QComboBox *>(editor);
if(!w) return;
model->setData(index, w->currentText());
break;
}
case 1: {
QComboBox * w=qobject_cast<QComboBox *>(editor);
if(!w) return;
model->setData(index, w->currentText());
break;
}
default:
QLineEdit * w=qobject_cast<QLineEdit *>(editor);
if( !w) return;
model->setData(index, w->text());
break;
}
}
The documentation for this class was generated from the following files: