On Wed, Aug 13, 2008 at 9:37 PM, Erick Tryzelaar
<[EMAIL PROTECTED]> wrote:
> Hello again,
>
> In our code right now, we keep having to extract data from a QVariant,
> and we end up with a lot of copies of:
>
> if v.type() == QVariant.Int:
>  ...
> elif v.type() == QVariant.String:
>  ...
> ...
>
> We don't really care exactly what the type is, but we have to do this
> in order to work directly with the values. Since there's already a
> QVariant.toPyObject that can extract arbitrary python objects, it
> seems like it wouldn't be that much extra work to extend it to be able
> to extract all the QVariant standard types as well. I'd guess that the
> implementation could just be abstracting out the first stage of
> translation, like this:
>
> QVariant(1).toPyObject() == QVariant(1).toInt()[0]
> QVariant(QDateTime(...)).toPyObject() ==
> QVariant(QDateTime(...)).toDateTime()[0]
>
> and etc. This makes QVariant a little more pythonic to me, in my opinion.

I agree about this. It would be more natural to have toPyObject work
for the standard types in addition to custom ones, and simplify the
logic greatly.

Arve
_______________________________________________
PyQt mailing list    [email protected]
http://www.riverbankcomputing.com/mailman/listinfo/pyqt

Reply via email to