summaryrefslogtreecommitdiff
path: root/oox/source/drawingml/diagram/diagramlayoutatoms.hxx
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@collabora.com>2020-09-30 14:55:13 +0200
committerMiklos Vajna <vmiklos@collabora.com>2020-09-30 15:55:27 +0200
commit99e51aaf2ad216888622a46a625479e1b42946d4 (patch)
tree8ac8c2cf8e5344600643a4ccc11abba0e636d7dd /oox/source/drawingml/diagram/diagramlayoutatoms.hxx
parente4c8e666541a058dc9ca3c17029eb629bd7cf100 (diff)
oox smartart: extract snake algo from AlgAtom::layoutShape()
AlgAtom::layoutShape() is more or less the single function where all layouting happens for all algoritms. Extract the snake algorithm part from it to a separate SnakeAlg::layoutShapeChildren() before that function grows too large. Change-Id: I5e5ae66d16770fa72db6edf5df4cbd2ef3eea9c2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/103686 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
Diffstat (limited to 'oox/source/drawingml/diagram/diagramlayoutatoms.hxx')
-rw-r--r--oox/source/drawingml/diagram/diagramlayoutatoms.hxx8
1 files changed, 8 insertions, 0 deletions
diff --git a/oox/source/drawingml/diagram/diagramlayoutatoms.hxx b/oox/source/drawingml/diagram/diagramlayoutatoms.hxx
index 81b96c2207b8..bc59e3ab307a 100644
--- a/oox/source/drawingml/diagram/diagramlayoutatoms.hxx
+++ b/oox/source/drawingml/diagram/diagramlayoutatoms.hxx
@@ -201,6 +201,14 @@ private:
typedef std::shared_ptr< AlgAtom > AlgAtomPtr;
+/// Finds optimal grid to layout children that have fixed aspect ratio.
+class SnakeAlg
+{
+public:
+ static void layoutShapeChildren(const AlgAtom::ParamMap& rMap, const ShapePtr& rShape,
+ const std::vector<Constraint>& rConstraints);
+};
+
class ForEachAtom
: public LayoutAtom
{