From f3117c52312796e143d7b26550a8fb3f43f938eb Mon Sep 17 00:00:00 2001 From: Andreas Sturmlechner Date: Sat, 11 May 2019 12:04:59 +0200 Subject: [PATCH] dev-libs/kdiagram: EAPI-7 bump with a horizontal diagram fix Package-Manager: Portage-2.3.66, Repoman-2.3.12 Signed-off-by: Andreas Sturmlechner --- .../kdiagram-2.6.1-fix-horizontal-bars.patch | 75 +++++++++++++++++++ dev-libs/kdiagram/kdiagram-2.6.1-r1.ebuild | 34 +++++++++ 2 files changed, 109 insertions(+) create mode 100644 dev-libs/kdiagram/files/kdiagram-2.6.1-fix-horizontal-bars.patch create mode 100644 dev-libs/kdiagram/kdiagram-2.6.1-r1.ebuild diff --git a/dev-libs/kdiagram/files/kdiagram-2.6.1-fix-horizontal-bars.patch b/dev-libs/kdiagram/files/kdiagram-2.6.1-fix-horizontal-bars.patch new file mode 100644 index 000000000000..fae29982773e --- /dev/null +++ b/dev-libs/kdiagram/files/kdiagram-2.6.1-fix-horizontal-bars.patch @@ -0,0 +1,75 @@ +From d3783f643367b264800e853c7c55c515f17c2a3d Mon Sep 17 00:00:00 2001 +From: Dag Andersen +Date: Thu, 23 Aug 2018 10:47:05 +0200 +Subject: Fix painting bar diagrams with horizontal bars + +--- + .../Cartesian/DiagramFlavors/KChartNormalLyingBarDiagram_p.cpp | 5 +++-- + .../Cartesian/DiagramFlavors/KChartPercentLyingBarDiagram_p.cpp | 4 ++-- + .../Cartesian/DiagramFlavors/KChartStackedLyingBarDiagram_p.cpp | 4 ++-- + 3 files changed, 7 insertions(+), 6 deletions(-) + +diff --git a/src/KChart/Cartesian/DiagramFlavors/KChartNormalLyingBarDiagram_p.cpp b/src/KChart/Cartesian/DiagramFlavors/KChartNormalLyingBarDiagram_p.cpp +index 0a262ee..d2343ee 100644 +--- a/src/KChart/Cartesian/DiagramFlavors/KChartNormalLyingBarDiagram_p.cpp ++++ b/src/KChart/Cartesian/DiagramFlavors/KChartNormalLyingBarDiagram_p.cpp +@@ -158,13 +158,13 @@ void NormalLyingBarDiagram::paint( PaintContext* ctx ) + } + } + +- for ( int column = 0; column < colCount; column++ ) { ++ for ( int column = colCount-1; column >= 0; --column ) { + // paint one group + const CartesianDiagramDataCompressor::CachePosition position( row, column ); + const CartesianDiagramDataCompressor::DataPoint point = compressor().data( position ); + const QModelIndex sourceIndex = attributesModel()->mapToSource( point.index ); + +- QPointF dataPoint( 0, rowCount - ( point.key + 0.5 ) ); ++ QPointF dataPoint( 0, ( point.key + 0.5 ) ); + const QPointF topLeft = ctx->coordinatePlane()->translate( dataPoint ); + dataPoint.rx() += point.value; + const QPointF bottomRight = ctx->coordinatePlane()->translate( dataPoint ) + +@@ -173,6 +173,7 @@ void NormalLyingBarDiagram::paint( PaintContext* ctx ) + const QRectF rect = QRectF( topLeft, bottomRight ).translated( 1.0, offset ); + m_private->addLabel( &lpc, sourceIndex, 0, PositionPoints( rect ), Position::North, + Position::South, point.value ); ++ + paintBars( ctx, sourceIndex, rect, maxDepth ); + + offset += barWidth + spaceBetweenBars; +diff --git a/src/KChart/Cartesian/DiagramFlavors/KChartPercentLyingBarDiagram_p.cpp b/src/KChart/Cartesian/DiagramFlavors/KChartPercentLyingBarDiagram_p.cpp +index fee53d3..10dca65 100644 +--- a/src/KChart/Cartesian/DiagramFlavors/KChartPercentLyingBarDiagram_p.cpp ++++ b/src/KChart/Cartesian/DiagramFlavors/KChartPercentLyingBarDiagram_p.cpp +@@ -192,11 +192,11 @@ void PercentLyingBarDiagram::paint( PaintContext* ctx ) + + QPointF point, previousPoint; + if ( sumValuesVector.at( curRow ) != 0 && value > 0 ) { +- QPointF dataPoint( ( stackedValues / sumValuesVector.at( curRow ) * maxValue ), rowCount - key ); ++ QPointF dataPoint( ( stackedValues / sumValuesVector.at( curRow ) * maxValue ), key + 1 ); + point = ctx->coordinatePlane()->translate( dataPoint ); + point.ry() += offset / 2 + threeDOffset; + +- previousPoint = ctx->coordinatePlane()->translate( QPointF( ( ( stackedValues - value) / sumValuesVector.at( curRow ) * maxValue ), rowCount - key ) ); ++ previousPoint = ctx->coordinatePlane()->translate( QPointF( ( ( stackedValues - value) / sumValuesVector.at( curRow ) * maxValue ), key + 1 ) ); + } + + const qreal barHeight = point.x() - previousPoint.x(); +diff --git a/src/KChart/Cartesian/DiagramFlavors/KChartStackedLyingBarDiagram_p.cpp b/src/KChart/Cartesian/DiagramFlavors/KChartStackedLyingBarDiagram_p.cpp +index 70cbba0..1a5b003 100644 +--- a/src/KChart/Cartesian/DiagramFlavors/KChartStackedLyingBarDiagram_p.cpp ++++ b/src/KChart/Cartesian/DiagramFlavors/KChartStackedLyingBarDiagram_p.cpp +@@ -184,9 +184,9 @@ void StackedLyingBarDiagram::paint( PaintContext* ctx ) + stackedValues += point.value; + key = point.key; + } +- QPointF point = ctx->coordinatePlane()->translate( QPointF( stackedValues, rowCount - key ) ); ++ QPointF point = ctx->coordinatePlane()->translate( QPointF( stackedValues, key + 1 ) ); + point.ry() += offset / 2 + threeDOffset; +- const QPointF previousPoint = ctx->coordinatePlane()->translate( QPointF( stackedValues - value, rowCount - key ) ); ++ const QPointF previousPoint = ctx->coordinatePlane()->translate( QPointF( stackedValues - value, key + 1 ) ); + const qreal barHeight = point.x() - previousPoint.x(); + point.rx() -= barHeight; + +-- +cgit v1.1 diff --git a/dev-libs/kdiagram/kdiagram-2.6.1-r1.ebuild b/dev-libs/kdiagram/kdiagram-2.6.1-r1.ebuild new file mode 100644 index 000000000000..6e88b0a90514 --- /dev/null +++ b/dev-libs/kdiagram/kdiagram-2.6.1-r1.ebuild @@ -0,0 +1,34 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +KDE_EXAMPLES="true" +KDE_QTHELP="true" +KDE_TEST="true" +VIRTUALX_REQUIRED="test" +inherit kde5 + +if [[ ${KDE_BUILD_TYPE} = release ]]; then + KEYWORDS="~amd64 ~arm64 ~x86" + SRC_URI="mirror://kde/stable/${PN}/${PV}/${P}.tar.xz" +fi + +DESCRIPTION="Powerful libraries (KChart, KGantt) for creating business diagrams" +HOMEPAGE="https://kde.org/ https://www.kdab.com/development-resources/qt-tools/kd-chart/" +IUSE="" + +REQUIRED_USE="test? ( examples )" + +BDEPEND=" + $(add_qt_dep linguist-tools) +" +DEPEND=" + $(add_qt_dep qtgui) + $(add_qt_dep qtprintsupport) + $(add_qt_dep qtsvg) + $(add_qt_dep qtwidgets) +" +RDEPEND="${DEPEND}" + +PATCHES=( "${FILESDIR}/${P}-fix-horizontal-bars.patch" ) -- 2.26.2