[Development] Forcing clipping rectangle updates for "special" geometries

Loïc Molinari loic.molinari at canonical.com
Fri Aug 9 20:52:41 CEST 2013


Alright, I will do that.

Thanks,
Loïc Molinari

On Fri, Aug 9, 2013 at 2:51 PM, Sletta Gunnar <Gunnar.Sletta at digia.com> wrote:
> The patch looks sane enough. Maybe you want to put it up on codereivew.qt-project.org?
>
> cheers,
> Gunnar
>
> On Aug 8, 2013, at 7:59 PM, Loïc Molinari <loic.molinari at canonical.com> wrote:
>
>> Hi,
>>
>> I'm creating a custom QQuickItem that casts a shadow around its
>> geometry. In order to make it easy to use from the QML side, I made
>> the shadow independent of the item size so that users can manipulate
>> the item as if it doesn't have a shadow. It's easy to implement with a
>> scene graph node that has its geometry defined to render outside of
>> the item rectangle.
>>
>> Clipping is the only problem I have with it. By default, the clip
>> rectangle is the same as the item rectangle which makes the renderer
>> clip the shadow if the "clip" property is enabled. clipRect() being
>> virtual I can provide my own clip rectangle, that's good but the
>> problem is that clipRect() is only called when the item size changes
>> or when the "clip" property is switched. I haven't found anything for
>> that in QtDeclarative and thought a solution would be to provide an
>> updateClipRect() method in QQuickItem that would force clipRect() to
>> be called by making a dedicated flag dirty. I tested it and it works,
>> the code is here [1].
>>
>> Is there a built-in solution for that? In case there's not, do you see
>> a better technique than the one proposed?
>>
>> Regards,
>> Loïc Molinari
>>
>> [1] http://paste.ubuntu.com/5963311/
>> _______________________________________________
>> Development mailing list
>> Development at qt-project.org
>> http://lists.qt-project.org/mailman/listinfo/development



More information about the Development mailing list