6

In the new version of QML 1.5.0, it is recommended to use the new syntax for connection e.g.

MouseArea {
Connections {
    function onClicked (mouse) {foo (mouse)}
}

Using the "Qt Design Studio 1.5.0" or "Qt Creator 4.12.1" IDE I get this warning.

With the old syntax, connections are visible in the Form Editor -> Connection View window and nothing is displayed there after the change for a new one.

Form Editor -> Connection with old syntax.

Being in a UI file e.g. main.ui.qml

Old syntax:

I receive a message:

Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo (<arguments>) {...}

After correcting for the new syntax, the message is: Function are not supported on a Qt Quick UI Form. (M22). and now is no possibility to edit the window using Form Editor.

I also can't make a connection to property e.g.

property bool mouseEnable: false

Connections {
    target: parent
    function onMouseEnableChanged(parent)
}

This is probably intended to be a signal handler but no signal of the target matches the name.

It is possible to stay with the old syntax without displaying a warning or maybe someone knows how to use the new syntax without the above IDE errors?

eyllanesc
  • 235,170
  • 19
  • 170
  • 241
user2129729
  • 61
  • 1
  • 4

0 Answers0