#ifndef QTMVVM_INPUTVIEWFACTORY_H #define QTMVVM_INPUTVIEWFACTORY_H #include #include #include #include #include "QtMvvmQuick/qtmvvmquick_global.h" namespace QtMvvm { class InputViewFactoryPrivate; class Q_MVVMQUICK_EXPORT InputViewFactory : public QObject { Q_OBJECT public: InputViewFactory(); virtual ~InputViewFactory(); Q_INVOKABLE virtual QUrl getInputUrl(const QByteArray &type, const QVariantMap &viewProperties); Q_INVOKABLE virtual void addSimpleView(const QByteArray &type, const QUrl &qmlFileUrl); template inline void addSimpleView(const QUrl &qmlFileUrl); Q_INVOKABLE virtual void addAlias(const QByteArray &alias, const QByteArray &targetType); template inline void addAlias(); private: QScopedPointer d; }; template inline void InputViewFactory::addSimpleView(const QUrl &qmlFileUrl) { addSimpleView(QMetaType::typeName(qMetaTypeId()), qmlFileUrl); } template inline void InputViewFactory::addAlias() { addAlias(QMetaType::typeName(qMetaTypeId()), QMetaType::typeName(qMetaTypeId())); } } #endif // QTMVVM_INPUTVIEWFACTORY_H