The issue of 362d4f0cd4e50111edfae9d30c90602c37ed65a2 "Explicitly mark
overriding destructors as 'virtual'" appears to no longer be a problem with
MSVC 2013.
(The little change in the rewriting code of compilerplugins/clang/override.cxx
was necessary to prevent an endless loop when adding "override" to
OOO_DLLPUBLIC_CHARTTOOLS virtual ~CloseableLifeTimeManager();
in chart2/source/inc/LifeTime.hxx, getting stuck in the leading
OOO_DLLPUBLIC_CHARTTOOLS macro. Can't remember what that
isAtEndOfImmediateMacroExpansion thing was originally necessary for, anyway.)
Change-Id: I534c634504d7216b9bb632c2775c04eaf27e927e
Drawing fat lines is slow on linux due to X11 having no direct
support for it. This leads to creating the PolyPolygon geometry
for each fat line, then tesselate and draw as trapezoids. This
is not buffered in any way and is done at each paint.
As a side effect, fat lines composed of multiple anti-aliased
lines also show errors since AA-ed edges do not add up graphically.
Since we have cairo now available it makes sense to use it
for fat line drawing, it is markedly faster despite being a software
renderer. No such gains for PolyPolygons though.
Change-Id: If4001556e2dd4c15ecf2587cad6ce1e864558f2d
Remove the subdivider we used until now as there is a better
way to subdivide a polygon with getDefaultAdaptiveSubdivision,
which in additiona also caches the result. The subdivider used in
getDefaultAdaptiveSubdivision was a limited count based subdivider
so this exchanges that with an angle based one which gives much
better results.
Change-Id: I95c009ccf3d54305df0d8eef177cab0df0a23bea
Reviewed-on: https://gerrit.libreoffice.org/25033
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
This try uses full 3D renderers working on the same ZBuffer
target, but are capable to render one stripe per thread.
This is rougher in granularity and uses multiple cores better
than the first try (see gerrit 24393) which was too fine-granular
being based on scanline render parallelization.
SecUred some more classes based on SdrPrimitive3D for multi-
theaded usage (places where local buffered stuff is done)
Change-Id: I4ddd5885ad41dd6432d0695e528818a86e427bfd
Reviewed-on: https://gerrit.libreoffice.org/24538
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Reviewed-by: Armin Le Grand <Armin.Le.Grand@cib.de>
Sequence.h(xx), Any.h(xx) and Type.h(xx)
and remove unused using-declarations from these files.
Add a few missing includes provided by them.
Change-Id: I6b91b6d1fdf9d0496dd546c0aab9bdcc6831a5d4
Reviewed-on: https://gerrit.libreoffice.org/23805
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Adds native opengl polyline rendering to draw polylines, line joins
and line caps as triangle strips. The vertex shader allows for the
dynamic line width by calculating the correct vertex posiitons,
and the fragment shader is used for anti-aliasing.
Change-Id: If7982c828cae1fae59c57194c8ac77e5ad7f1d26
A ridiculously fast way of doing this is:
for i in $(pcregrep -l -M -r --include='.*[hc]xx$' \
--exclude-dir=workdir --exclude-dir=instdir '^
{3,}' .)
do
perl -0777 -i -pe 's/^
{3,}/
/gm' $i
done
Change-Id: Iebb93eccbee9e4fc5c4380474ba595858a27ac2c
Reviewed-on: https://gerrit.libreoffice.org/22224
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com>
and consistently map css::drawing::LineJoint_MIDDLE to the same thing that
css::drawing::LineJoint_MITRE points to everywhere else
Change-Id: I77b7586ea13f3fe84c0529172758256666488d36
...which, somewhat arbitrarily, expects GNU extension __attribute__((...)) to
come before MSVC extension __declspec(...) with
MaybeParseGNUAttributes(attrs);
MaybeParseMicrosoftDeclSpecs(attrs);
in Parser::ParseClassSpecifier (lib/Parse/ParseDeclCXX.cpp).
Change-Id: I5936558c8fc08b278575b6c678cde6eccd4647fb
includes should be able to be included on their own
fix some of the ones that do not respect
that rule.
Change-Id: Id161224a1978461d3cea43252f232f18888a4f61
Reviewed-on: https://gerrit.libreoffice.org/19612
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Norbert Thiebaud <nthiebaud@gmail.com>
Polygon is one of these names that Clash with some system objects
A similar work has been done earlier with PolyPolygon.
Change-Id: Icf2217cb2906292b7275760f1a16be0e150312f5
Reviewed-on: https://gerrit.libreoffice.org/17789
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Norbert Thiebaud <nthiebaud@gmail.com>