[Development] About ALIAS in Q_PROPERTY

Olivier Goffart olivier at woboq.com
Wed Mar 12 12:48:20 CET 2014


On Monday 10 March 2014 17:43:35 Giuseppe D'Angelo wrote:
> Can you please explain what this feature is about, why do you think
> it's useful, how it's supposed to be used, etc.?
> 
> On 10 March 2014 17:30, mikhail.svetkin at gmail.com
> 
> <mikhail.svetkin at gmail.com> wrote:
> > Hello, I would like to clarify wherein the complexity
> > (https://codereview.qt-project.org/#change,80412)?
> > Ready to listen to any suggestions and implement them.

This is a follow-up on the earlier discussion: 
"About Q_PROPERTY in custom widget plugin for designer"

Svetkin's first idea was to extend the READ and WRITE attributes to be more 
complex expressions such as:  

  Q_PROPERTY(QString label READ ui->customWidget->label                                      
                           WRITE ui->customWidget->setLabel)

And he even made a patch for it: (https://codereview.qt-project.org/77758)
There was small issues with the patch. Notably on how complex can the 
expression be, and also on the fact that it would still be hard to have a 
NOTIFY signal.

I was also wondering if it would not be better to copy QML's idea of property 
aliases:

 Q_PROPERTY(QString label ALIAS CustomWidget ui->customWidget->label) 

However, now that Svetkin proposed a patch, I feel that it is not so much of a 
good idea. I think the syntax is not so nice especially the need to have both 
the class name and the 'path' to the property. And also because the notify 
signal is still not automatic.

And overall, i find myself preferring the first idea better. Hence I would 
like more opinions from the list.

The other question is if we should have that at all. How common is it to have 
property alias like this? 

-- 
Olivier 

Woboq - Qt services and support - http://woboq.com - http://code.woboq.org



More information about the Development mailing list