Let's do the iOS specific stuff in separate main() source
file(s). Don't attempt to build complete iOS programs using normal
LibreOffice mechanisms, it will work for only the very lowest level
unit tests anyway, because of static linking and the circularish
UNO/URE/bootstrap/whatnot (run-time) dependencies between different
parts of the code.
We thus can't build the various iOS-specific *_cppunittester_all unit
test executables any more. Corresponding unit tests (and more complex
ones) for iOS will have to be done in a different way.
Round zoom values beginning with 50 to a multiple of 5, with 100 to one
of 10, with 500 to one of 50 and with 1000 to one of 100.
The step 100 is enforced to have one fixed point.
SAL_UNUSED_PARAMETER (expanding to __attribute__ ((unused)) for GCC)
is used to annotate legitimately unused parameters, so that static
analysis tools can tell legitimately unused parameters from truly
unnecessary ones. To that end, some patches for external modules
are also added, that are only applied when compiling with GCC and
add necessary __attribute__ ((unused)) in headers.
decompose() would return incorrect rotation angle and scales when the
angle was exactly 180 degrees, due to FPU rounding error. This commit
fixes it.
This problem would manifest itself when inserting an image into
Calc/Draw, cropping it, and flipping it vertically or rotating it
at exactly 180 degrees. Before the fix the image would simply disappear.
With the changes Julien brought in via
66fd9a610c, thought it was a good idea
to cover those code paths as well - done now, via the
checkCrossoverSolver() tests.
Triggered by fdo#43725, incrementing an invalid iterator bombs -
though this seems a corner case, depends on whether one considers
"+= 0" as incrementing or not.
* some cleanup - removed ugly-as-hell exposure of only parts of the
internal data struct on B2DPolygon (and reworked the only client
of that code)
* added stl-style begin/end to B3DPolyPolygon as well, mirroring
B2DPolyPolygon, plus adapting the insert() func to make use of
that (avoiding loads of temporaries)
Don't declare dllexport classes that are purely inlined.
This will cause for the binary that links then to look for dll symbols,
which are naturlly not present.
The Cohen/Sutherland clip flag routine was not aware of B2IBox,
thusly yielding incorrect line clipping for BitmapDevice software
rendering. Cleaned that up, added some more unit tests around the
problem, and removed the now-extraneous maLineClip member from the
bitmap device.
Added docs to the range/* classes, removed methods the compiler can
generate for us, removed unused header, and cleaned up visibility
markup (inlines don't really need to be exported).