/******************************************************************************* * Copyright (c) 2012 Original authors and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Original authors and others - initial API and implementation ******************************************************************************/ package org.eclipse.nebula.widgets.nattable.test.performance; import org.eclipse.nebula.widgets.nattable.grid.data.DefaultCornerDataProvider; import org.eclipse.nebula.widgets.nattable.grid.data.DefaultRowHeaderDataProvider; import org.eclipse.nebula.widgets.nattable.grid.data.DummyBodyDataProvider; import org.eclipse.nebula.widgets.nattable.grid.data.DummyColumnHeaderDataProvider; import org.eclipse.nebula.widgets.nattable.grid.layer.ColumnHeaderLayer; import org.eclipse.nebula.widgets.nattable.grid.layer.CornerLayer; import org.eclipse.nebula.widgets.nattable.grid.layer.GridLayer; import org.eclipse.nebula.widgets.nattable.grid.layer.RowHeaderLayer; import org.eclipse.nebula.widgets.nattable.layer.DataLayer; import org.eclipse.nebula.widgets.nattable.layer.ILayer; import org.eclipse.nebula.widgets.nattable.selection.SelectionLayer; import org.eclipse.nebula.widgets.nattable.viewport.ViewportLayer; import org.junit.Test; public class CompositeLayerPerformanceTest extends AbstractLayerPerformanceTest { @Test public void testGridLayerPerformance() { DummyBodyDataProvider bodyDataProvider = new DummyBodyDataProvider( 1000000, 1000000); SelectionLayer selectionLayer = new SelectionLayer(new DataLayer( bodyDataProvider)); ViewportLayer viewportLayer = new ViewportLayer(selectionLayer); DummyColumnHeaderDataProvider columnHeaderDataProvider = new DummyColumnHeaderDataProvider( bodyDataProvider); DataLayer columnHeaderDataLayer = new DataLayer( columnHeaderDataProvider); ILayer columnHeaderLayer = new ColumnHeaderLayer(columnHeaderDataLayer, viewportLayer, selectionLayer); DefaultRowHeaderDataProvider rowHeaderDataProvider = new DefaultRowHeaderDataProvider( bodyDataProvider); DataLayer rowHeaderDataLayer = new DataLayer(rowHeaderDataProvider); rowHeaderDataLayer.setDefaultColumnWidth(40); ILayer rowHeaderLayer = new RowHeaderLayer(rowHeaderDataLayer, viewportLayer, selectionLayer); ILayer cornerLayer = new CornerLayer(new DataLayer( new DefaultCornerDataProvider(columnHeaderDataProvider, rowHeaderDataProvider)), rowHeaderLayer, columnHeaderLayer); layer = new GridLayer(viewportLayer, columnHeaderLayer, rowHeaderLayer, cornerLayer); } }