34 lines
653 B
C++
34 lines
653 B
C++
#ifndef IPropertyHandleImpl_h__
|
|
#define IPropertyHandleImpl_h__
|
|
|
|
#include <QQmlContext>
|
|
#include <QQuickItem>
|
|
#include <QVariant>
|
|
#include <QObject>
|
|
#include "export.hpp"
|
|
|
|
class QPropertyHandle;
|
|
|
|
class IPropertyHandleImpl{
|
|
friend class QPropertyHandle;
|
|
public:
|
|
enum Type {
|
|
Null,
|
|
RawType,
|
|
Associative,
|
|
Sequential,
|
|
Enum,
|
|
Object,
|
|
};
|
|
protected:
|
|
IPropertyHandleImpl(QPropertyHandle* inHandle);
|
|
virtual QQuickItem* createNameEditor(QQuickItem* inParent);
|
|
virtual QQuickItem* createValueEditor(QQuickItem* inParent)= 0;
|
|
virtual Type type() { return Type::Null; };
|
|
|
|
protected:
|
|
QPropertyHandle* mHandle;
|
|
};
|
|
|
|
#endif // IPropertyHandleImpl_h__
|