5 #include <QStyledItemDelegate>
6 #include <QItemEditorCreatorBase>
7 #include <QDoubleSpinBox>
8 #include <QItemEditorFactory>
10 #include <QHeaderView>
11 #include "weightspinbox.h"
13 class WeightView : public QTableView
17 explicit WeightView(QWidget *parent = 0) :
20 QItemEditorFactory *editorFactory = new QItemEditorFactory;
21 editorFactory->registerEditor(QVariant::Double, new WeightView::WeightEditCreator);
22 delegate.setItemEditorFactory(editorFactory);
23 setItemDelegate(&delegate);
24 setSelectionMode(QAbstractItemView::SingleSelection);
25 this->verticalHeader()->hide();
26 this->verticalHeader()->setResizeMode(QHeaderView::ResizeToContents);
27 this->horizontalHeader()->setResizeMode(QHeaderView::ResizeToContents);
33 struct WeightEditCreator : public QItemEditorCreatorBase
35 QWidget *createWidget(QWidget *parent) const
37 return new WeightSpinBox(parent);
39 virtual QByteArray valuePropertyName() const {
45 QStyledItemDelegate delegate;
48 #endif // WEIGHTVIEW_H