git-svn-id: svn://db.shs.com.ru/libs@117 a8b55f48-bf90-11e4-a774-851b48703e85

This commit is contained in:
2016-08-16 13:15:29 +00:00
parent 91f4f74df4
commit 39d406d6aa
12 changed files with 204 additions and 56 deletions

View File

@@ -3,10 +3,13 @@
//#include "cdutils_k.h"
#include <QAbstractItemModel>
#include <QItemDelegate>
#include <QStyledItemDelegate>
#include "pistring.h"
namespace CDUtils {
class CDSection;
class CDType;
}
class CDKItemModel;
@@ -17,6 +20,7 @@ public:
CDKItem(int index, CDKItemType type, CDKItem * parent);
~CDKItem();
QVariant data(int column, int role) const;
QVariant value(CDUtils::CDType t, int role) const;
bool setData(int column, const QVariant & value);
private:
@@ -29,6 +33,21 @@ private:
QList<CDKItem *> childs;
};
class CDKDelegate : public QStyledItemDelegate
{
Q_OBJECT
public:
CDKDelegate(QObject *parent = 0);
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;
void updateEditorGeometry(QWidget *editor, const QStyleOptionViewItem &option, const QModelIndex &index) const;
QSize sizeHint(const QStyleOptionViewItem &option, const QModelIndex &index) const;
};
class CDKItemModel : public QAbstractItemModel {
Q_OBJECT
public: