On Thursday 09 December 2010 06:25:47 Matti Airas wrote: > I personally like your syntax a lot more than the C++-derived one. > Reading the tutorial you posted, the C++ syntax indeed is quite baroque > and confusing, while yours is pretty much understandable without much > extra homework. Not that I necessarily would have sufficient insight to > judge on the matter, but still. :-) > > Since the effects of this syntax are quite localized and it doesn't > prevent us from providing alternative means for supporting QML list > properties if this would somehow turn out to be a bad idea, there > wouldn't seem to be much risk for adopting this. > > What are the allowed arguments for ListProperty? append, count, at, > clear, like in QDeclarativeListProperty? Are these keyword arguments? If > so, how are the arguments named currently?
append, count, at and clear, they are also keyword arguments named append, count, at and clear. > > Cheers, > > ma. > > On 08.12.2010 18:42, ext Hugo Parente Lima wrote: > > Hi, > > > > I did implement the support for QML list properties in PySide, but using > > a different syntax than the used by C++[1]. > > > > I could mirror the C++ syntax on PySide but in my opinion the QML API to > > export list properties is a bit bizarre, in essence you create a > > *read-only* property that can be *written*, just non-sense to me. > > > > I'll use the example in [1] to show my proposed syntax and a syntax based > > in the C++ API to help you to compare both, the following code > > represents a possible implementation mirroring the C++ syntax: > > > > class PieChart (QDeclarativeItem): > > def __init__(self, parent = None): > > QDeclarativeItem.__init__(self, parent) > > self._slices = [] > > > > def appendSlice(prop, _slice): > > _slice.setParentItem(prop.object) > > prop.object._slices.append(_slice) > > > > def getSlice(self): > > return QDeclarativeListProperty(PieSlice, self, None, > > appendSlice) > > > > slices = Property(QDeclarativeListProperty, getSlice) > > > > Instead of create the getter for the property and return a "mysterious" > > object that turn a read-only property into a writable one I simplified > > the syntax to the following: > > > > class PieChart (QDeclarativeItem): > > def __init__(self, parent = None): > > QDeclarativeItem.__init__(self, parent) > > self._slices = [] > > > > def appendSlice(self, _slice): > > _slice.setParentItem(self) > > self._slices.append(_slice) > > > > slices = ListProperty(PieSlice, appendSlice) > > > > This is already implemented, Qt.Declarative.ListProperty is a subclass of > > QtCore.Property, so I would like to know your opinions about this API > > before pushing it to mainline. > > > > [1] > > http://cakebox.homeunix.net/doc/qt4/html/declarative-tutorials-extending > > - chapter5-listproperties.html > > > > > > > > > > _______________________________________________ > > PySide mailing list > > [email protected] > > http://lists.openbossa.org/listinfo/pyside > > _______________________________________________ > PySide mailing list > [email protected] > http://lists.openbossa.org/listinfo/pyside -- Hugo Parente Lima INdT - Instituto Nokia de Tecnologia
signature.asc
Description: This is a digitally signed message part.
_______________________________________________ PySide mailing list [email protected] http://lists.openbossa.org/listinfo/pyside
