|
Q_INVOKABLE | InputViewFactory (QObject *parent=nullptr) |
| Default constructor.
|
|
virtual Q_INVOKABLE QUrl | getInputUrl (const QByteArray &type, const QVariantMap &viewProperties) |
| Find the input view URL of the given input type. More...
|
|
virtual Q_INVOKABLE QUrl | getDelegate (const QByteArray &type, const QVariantMap &viewProperties) |
| Find the input list delegate URL of the given input type. More...
|
|
template<typename TType > |
void | addSimpleInput (const QUrl &qmlFileUrl) |
| Adds a new QML file to create views for the given type. More...
|
|
virtual Q_INVOKABLE void | addSimpleInput (const QByteArray &type, const QUrl &qmlFileUrl) |
| Adds a new QML file to create views for the given type. More...
|
|
template<typename TType > |
void | addSimpleDelegate (const QUrl &qmlFileUrl) |
| Adds a new QML file to create delegates for the given type. More...
|
|
virtual Q_INVOKABLE void | addSimpleDelegate (const QByteArray &type, const QUrl &qmlFileUrl) |
| Adds a new QML file to create delegates for the given type. More...
|
|
template<typename TAliasType , typename TTargetType > |
void | addInputAlias () |
| Adds a type name alias for views. More...
|
|
virtual Q_INVOKABLE void | addInputAlias (const QByteArray &alias, const QByteArray &targetType) |
| Adds a type name alias for views. More...
|
|
template<typename TAliasType , typename TTargetType > |
void | addDelegateAlias () |
| Adds a type name alias for delegates. More...
|
|
virtual Q_INVOKABLE void | addDelegateAlias (const QByteArray &alias, const QByteArray &targetType) |
| Adds a type name alias for delegates. More...
|
|
| QObject (QObject *parent) |
|
virtual bool | event (QEvent *e) |
|
virtual bool | eventFilter (QObject *watched, QEvent *event) |
|
virtual const QMetaObject * | metaObject () const |
|
QString | objectName () const |
|
void | setObjectName (const QString &name) |
|
bool | isWidgetType () const |
|
bool | isWindowType () const |
|
bool | signalsBlocked () const |
|
bool | blockSignals (bool block) |
|
QThread * | thread () const |
|
void | moveToThread (QThread *targetThread) |
|
int | startTimer (int interval, Qt::TimerType timerType) |
|
int | startTimer (std::chrono::milliseconds time, Qt::TimerType timerType) |
|
void | killTimer (int id) |
|
T | findChild (const QString &name, Qt::FindChildOptions options) const |
|
QList< T > | findChildren (const QString &name, Qt::FindChildOptions options) const |
|
QList< T > | findChildren (const QRegExp ®Exp, Qt::FindChildOptions options) const |
|
QList< T > | findChildren (const QRegularExpression &re, Qt::FindChildOptions options) const |
|
const QObjectList & | children () const |
|
void | setParent (QObject *parent) |
|
void | installEventFilter (QObject *filterObj) |
|
void | removeEventFilter (QObject *obj) |
|
QMetaObject::Connection | connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const |
|
bool | disconnect (const char *signal, const QObject *receiver, const char *method) const |
|
bool | disconnect (const QObject *receiver, const char *method) const |
|
void | dumpObjectTree () |
|
void | dumpObjectInfo () |
|
void | dumpObjectTree () const |
|
void | dumpObjectInfo () const |
|
bool | setProperty (const char *name, const QVariant &value) |
|
QVariant | property (const char *name) const |
|
QList< QByteArray > | dynamicPropertyNames () const |
|
void | destroyed (QObject *obj) |
|
void | objectNameChanged (const QString &objectName) |
|
QObject * | parent () const |
|
bool | inherits (const char *className) const |
|
void | deleteLater () |
|
|
QString | tr (const char *sourceText, const char *disambiguation, int n) |
|
QString | trUtf8 (const char *sourceText, const char *disambiguation, int n) |
|
QMetaObject::Connection | connect (const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type) |
|
QMetaObject::Connection | connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type) |
|
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method, Qt::ConnectionType type) |
|
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, Functor functor) |
|
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, const QObject *context, Functor functor, Qt::ConnectionType type) |
|
bool | disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *method) |
|
bool | disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method) |
|
bool | disconnect (const QMetaObject::Connection &connection) |
|
bool | disconnect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method) |
|
QObject * | sender () const |
|
int | senderSignalIndex () const |
|
int | receivers (const char *signal) const |
|
bool | isSignalConnected (const QMetaMethod &signal) const |
|
virtual void | timerEvent (QTimerEvent *event) |
|
virtual void | childEvent (QChildEvent *event) |
|
virtual void | customEvent (QEvent *event) |
|
virtual void | connectNotify (const QMetaMethod &signal) |
|
virtual void | disconnectNotify (const QMetaMethod &signal) |
|
| objectName |
|
A factory class to generate input edit views by their type names.
The factory is used by the QuickPresenter to create input views and delegates for various types. This is used to for example create the edits of input dialogs or for the list delegates of a SettingsView.
- See also
- QuickPresenter, QuickPresenter::inputViewFactory, MessageConfig::TypeInputDialog, QtMvvm::getInput, SettingsViewModel
Definition at line 15 of file inputviewfactory.h.
QtMvvm::InputViewFactory::getDelegate |
( |
const QByteArray & |
type, |
|
|
const QVariantMap & |
viewProperties |
|
) |
| |
|
virtual |
Find the input list delegate URL of the given input type.
- Parameters
-
type | The input type to create a delegate for |
viewProperties | A map with extra properties to be set on the delegate |
- Returns
- A url to a QML component suitable for editing input of the given type, as a delegate
Delegates can be used to provide "editabel" list items for ListViews. (For example, the SettingsView makes use of them). Available roles are:
- group
- key
- type
- title
- tooltip
- delegateUrl
- inputValue
- properties
The factory first checks if the given type is registered as alias. If yes, it continues with the aliased type. Then it checks for a url registered as simple delegate exists for the given type and uses that one if present. If no simple delegate is set the default mapping for type to urls is used (See MessageConfig::TypeInputDialog for a full table of supported types). If no url can be found for a type, the MsgDelegate is returned, which will simply show an input of the given type. Thus, for all not explicitly supported delegate types, the getInputUrl() is used to find an edit for the dialog.
The viewProperties are used to setup the created delegate by settings them as properties on the delegate. For every key-value-pair in the map, QObject::setProperty is called on the delegate to set the property.
- See also
- MessageConfig::TypeInputDialog, InputViewFactory::addSimpleDelegate, InputViewFactory::addDelegateAlias, InputViewFactory::getInputUrl
QtMvvm::InputViewFactory::getInputUrl |
( |
const QByteArray & |
type, |
|
|
const QVariantMap & |
viewProperties |
|
) |
| |
|
virtual |
Find the input view URL of the given input type.
- Parameters
-
type | The input type to create a view for |
viewProperties | A map with extra properties to be set on the edit |
- Returns
- A url to a QML component suitable for editing input of the given type
The factory first checks if the given type is registered as alias. If yes, it continues with the aliased type. Then it checks for a url registered as simple view exists for the given type and uses that one if present. If no simple view is set the default mapping for type to urls is used (See MessageConfig::TypeInputDialog for a full table of supported types). If no url can be found for a type, an invalid url is returned.
The viewProperties are used to setup the created view by settings them as properties on the view. For every key-value-pair in the map, QObject::setProperty is called on the view to set the property.
- See also
- MessageConfig::TypeInputDialog, InputViewFactory::addSimpleInput, InputViewFactory::addInputAlias, InputViewFactory::getDelegate