better motif editor
[mussa.git] / qui / motif_editor / MotifEditorDelegate.hpp
1 #ifndef MOTIFEDITORDELEGATE_HPP_
2 #define MOTIFEDITORDELEGATE_HPP_
3
4 #include <QItemDelegate>
5 #include <QWidget>
6
7 #include "qui/motif_editor/MotifModel.hpp"
8
9 class MotifEditorDelegate : public QItemDelegate
10 {
11   Q_OBJECT
12   
13 public:
14   MotifEditorDelegate(QWidget *parent=0);
15
16   //! construct a editor widget for a given index.
17   QWidget *createEditor(QWidget *parent, const QStyleOptionViewItem &option,
18                         const QModelIndex &index) const;
19                         
20   virtual bool editorEvent(QEvent *event, QAbstractItemModel *model, 
21                            const QStyleOptionViewItem & option, const QModelIndex & index ); 
22
23   void setEditorData(QWidget *editor, const QModelIndex &index) const;
24   void setModelData(QWidget *editor, QAbstractItemModel *model,
25                     const QModelIndex &index) const;
26
27   void updateEditorGeometry(QWidget *editor,
28       const QStyleOptionViewItem &option, const QModelIndex &index) const;
29       
30   virtual void paint ( QPainter * painter, const QStyleOptionViewItem & option, const QModelIndex & index ) const;    
31 private:
32 };
33
34 #endif /*MOTIFEDITORDELEGATE_HPP_*/