[Qt-qml] Multiple signals with same name but different parameters

Mark Long mlong at weatherdata.com
Mon Feb 14 17:02:31 CET 2011


You need to have a valueChanged signal which takes a QVariant as its 
parameter, not the individual types.  I believe that since the 
Q_PROPERTY is defined as a QVariant type, then that is what QML will 
respond to.



On 02/11/2011 06:58 PM, Karsten Opdal wrote:
> Hi,
>
> I'm have been developing on a major project where we are using 
> QtDeclarative C++ to interface with the QML. Lately I found a problem 
> with Q_PROPERTY and NOTIFY member in one of our C++ classes that are 
> in to the context of a QML, the problem is that we are using a NOTIFY 
> signal that are defined multiple times with different parameters, example:
>
>
> classQMLClass :publicQObject
> {
>      Q_OBJECT
>      Q_PROPERTY(QString  name  READ  getName()  WRITE  setName  NOTIFY  nameChanged);
>      Q_PROPERTY(QVariant  value  READ  getValue  WRITE  setValue  NOTIFY  valueChanged);
>
> ...
>
> signals:
>      void  nameChanged();
>
>      void  valueChanged();
>
>      void  valueChanged(qint32  a_Value);
>
>      void  valueChanged(QString  a_Value);
>
>      void  valueChanged(bool  a_Value);
>
>
> }
>
>
> Signals are emitted like this:
>
>
>
>
>
>              {
>                  emit  valueChanged(useValue);
>
>
>                  emit  valueChanged();
>
>
>              }
>
> QML looks like this:
>
>      Connections  {
>          id:  test
>
>
>          target:  myProperty.value
>
>
>          onValueChanged:  {
>
>
>              console.log("value  changed  to  "  +  myProperty.value)
>
>
>          }
>
>      }
> Problem is that the slot for the signal "onValueChanged" is never executed. If I change to NOTIFY to other signal that only exits with one prototype, it works, ie Q_PROPERTY( QVariant value READ getValue WRITE setValue NOTIFY otherValueChanged) and of course  changed the appropriate signal/slots in the QML.
>
>
>
> Is this a BUG in QML ?
>
>
>
> Best regards,
>
>
>
> Karsten Sperling Opdal
>
>
>
>
>
> _______________________________________________
> Qt-qml mailing list
> Qt-qml at qt.nokia.com
> http://lists.qt.nokia.com/mailman/listinfo/qt-qml

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.qt.nokia.com/pipermail/qt-qml/attachments/20110214/be9bac15/attachment.html 


More information about the Qt-qml mailing list