From c1de8966d4b9bc7fa50eb27d19cc5142205a167d Mon Sep 17 00:00:00 2001 From: Henrik Paul Date: Mon, 20 Oct 2014 16:14:17 +0300 Subject: Restructures Escalator method hierarchy (#13334) Previously AbstractRowContainer.paintInsertRows was simply overridden by BodyRowContainer, which was hard to follow. Now ARC.pIR is an abstract method and the implementation has been put into another protected method. Change-Id: Ia47a46216d2f9713b958785b5239d6850b1ede0d --- client/src/com/vaadin/client/ui/grid/Escalator.java | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) (limited to 'client') diff --git a/client/src/com/vaadin/client/ui/grid/Escalator.java b/client/src/com/vaadin/client/ui/grid/Escalator.java index b3aebb1ec4..be831b5b61 100644 --- a/client/src/com/vaadin/client/ui/grid/Escalator.java +++ b/client/src/com/vaadin/client/ui/grid/Escalator.java @@ -16,7 +16,6 @@ package com.vaadin.client.ui.grid; import java.util.ArrayList; -import java.util.Collections; import java.util.HashMap; import java.util.LinkedList; import java.util.List; @@ -1285,8 +1284,11 @@ public class Escalator extends Widget implements RequiresResize, DeferredWorker * the number of rows to insert * @return a list of the added row elements */ - protected List paintInsertRows(final int visualIndex, - final int numberOfRows) { + protected abstract void paintInsertRows(final int visualIndex, + final int numberOfRows); + + protected List paintInsertStaticRows( + final int visualIndex, final int numberOfRows) { assert isAttached() : "Can't paint rows if Escalator is not attached"; final List addedRows = new ArrayList(); @@ -1981,6 +1983,11 @@ public class Escalator extends Widget implements RequiresResize, DeferredWorker Profiler.leave("Escalator.AbstractStaticRowContainer.refreshRows"); } + + @Override + protected void paintInsertRows(int visualIndex, int numberOfRows) { + paintInsertStaticRows(visualIndex, numberOfRows); + } } private class HeaderRowContainer extends AbstractStaticRowContainer { @@ -2306,10 +2313,9 @@ public class Escalator extends Widget implements RequiresResize, DeferredWorker } @Override - protected List paintInsertRows(final int index, - final int numberOfRows) { + protected void paintInsertRows(final int index, final int numberOfRows) { if (numberOfRows == 0) { - return Collections.emptyList(); + return; } /* @@ -2405,7 +2411,6 @@ public class Escalator extends Widget implements RequiresResize, DeferredWorker fireRowVisibilityChangeEvent(); sortDomElements(); } - return addedRows; } /** @@ -2585,7 +2590,7 @@ public class Escalator extends Widget implements RequiresResize, DeferredWorker if (escalatorRowsNeeded > 0) { - final List addedRows = super.paintInsertRows( + final List addedRows = paintInsertStaticRows( index, escalatorRowsNeeded); visualRowOrder.addAll(index, addedRows); -- cgit v1.2.3