borderline: correct problems with border display

Desktop / LibreOffice - Armin Le Grand [] - 12 July 2017 15:01 EDT

Borderline display with direct paint and with primitive direct paint has quite some errors in the current state. Started to unify usages, check deeper with creation/usage.

borderline: deep changes to BorderLine

Found basic error in determining the offset values for BorderLinePrimitive creation, these were not centered on the lines. Corrected that. This makes it possible to remove the formally used clipping which seems to have been used to correct that. Also allows to go back to a 'normal' decomposition that creates line primitives as expected. That again can then be painted quite normally. Also added view-dependent case to the decomposition to guarantee a gap of one discrete unit (pixel). Removed the direct painter, too. Checked and corrected stroking.

borderline: Adapted previews to primitives

Added code to use the primitive representation in all dialogs and apps using tables. The edit views use these mostly, so the preview should do that, too. Currently missing is a good visualization of diagonals, but this is also true for edit views. Checked all apps and table usages to not get worse

borderline: correct line dash visualization

When a dashed line is used, a factor of 10.0 was applied in the original coded, added that. Also the orientation of vertical borders was inverted since it was simpler to exchange Start/End, but this also mirrors the line dash visualisation, corrected that

f65cbae borderline: correct problems with border display
compilerplugins/clang/fpcomparison.cxx | 1 -
drawinglayer/ | 1 -
drawinglayer/qa/unit/border.cxx | 47 +--
.../source/primitive2d/borderlineprimitive2d.cxx | 389 ++++++++------------
.../primitive2d/clippedborderlineprimitive2d.cxx | 64 ----
.../source/processor2d/vclpixelprocessor2d.cxx | 395 +--------------------
.../source/processor2d/vclpixelprocessor2d.hxx | 1 -
.../primitive2d/borderlineprimitive2d.hxx | 26 +-
.../primitive2d/clippedborderlineprimitive2d.hxx | 65 ----
include/svx/framelink.hxx | 8 +-
include/svx/framelinkarray.hxx | 7 +-
sc/source/ui/view/output.cxx | 86 +++--
svx/source/dialog/framelink.cxx | 103 +++---
svx/source/dialog/framelinkarray.cxx | 165 +++++++--
svx/source/dialog/frmsel.cxx | 32 +-
sw/source/core/layout/paintfrm.cxx | 52 +--
16 files changed, 497 insertions(+), 945 deletions(-)


  • Share