Shape shadows
Inge Wallin
inge at lysator.liu.se
Tue May 1 23:16:34 BST 2012
https://bugs.kde.org/show_bug.cgi?id=260535 has the title:
kpresenter:openoffice:Shadow of the picture is not getting displayed.
I had a look at this, and the reason is the following code in void
KoShapeShadow::Private::paintShadow() at line 86 in
libs/flake/KoShapeShadow.cpp:
if (shape->background()) {
painter.save();
KoShape::applyConversion(painter, converter);
painter.setBrush(QBrush(color));
QPainterPath path(shape->outline());
KoPathShape * pathShape = dynamic_cast<KoPathShape*>(shape);
if (pathShape)
path.setFillRule(pathShape->fillRule());
painter.drawPath(path);
painter.restore();
}
There is a similar test for stroke right behind it.
This means that only shapes with a defined background can ever get a shadow. I
don't really see the reason for this. Shouldn't it be enough to remove the
test to make it work everywhere? What would be the drawbacks?
More information about the calligra-devel
mailing list