private BaseGridRendererHelper.RenderingInformation prepare() { this.body = null; this.header = null; this.floatingBody = null; this.floatingHeader = null; this.bodySelections = null; this.headerSelections = null; this.floatingBodySelections = null; this.floatingHeaderSelections = null; this.boundary = null; this.selection = null; this.allColumns.clear(); this.bodyColumns.clear(); this.floatingColumns.clear(); this.renderQueue.clear(); //If there's no RenderingInformation the GridWidget is not visible final BaseGridRendererHelper.RenderingInformation renderingInformation = rendererHelper.getRenderingInformation(); if (renderingInformation == null) { return null; } final BaseGridRendererHelper.RenderingBlockInformation bodyBlockInformation = renderingInformation.getBodyBlockInformation(); final BaseGridRendererHelper.RenderingBlockInformation floatingBlockInformation = renderingInformation.getFloatingBlockInformation(); final List<GridColumn<?>> allColumns = renderingInformation.getAllColumns(); final List<GridColumn<?>> bodyColumns = bodyBlockInformation.getColumns(); final List<GridColumn<?>> floatingColumns = floatingBlockInformation.getColumns(); this.allColumns.addAll(allColumns); this.bodyColumns.addAll(bodyColumns); this.floatingColumns.addAll(floatingColumns); return renderingInformation; }
private BaseGridRendererHelper.RenderingInformation prepare() { this.body = null; this.header = null; this.floatingBody = null; this.floatingHeader = null; this.bodySelections = null; this.headerSelections = null; this.floatingBodySelections = null; this.floatingHeaderSelections = null; this.boundary = null; this.selection = null; this.allColumns.clear(); this.bodyColumns.clear(); this.floatingColumns.clear(); this.renderQueue.clear(); //If there's no RenderingInformation the GridWidget is not visible final BaseGridRendererHelper.RenderingInformation renderingInformation = rendererHelper.getRenderingInformation(); if (renderingInformation == null) { return null; } final BaseGridRendererHelper.RenderingBlockInformation bodyBlockInformation = renderingInformation.getBodyBlockInformation(); final BaseGridRendererHelper.RenderingBlockInformation floatingBlockInformation = renderingInformation.getFloatingBlockInformation(); final List<GridColumn<?>> allColumns = renderingInformation.getAllColumns(); final List<GridColumn<?>> bodyColumns = bodyBlockInformation.getColumns(); final List<GridColumn<?>> floatingColumns = floatingBlockInformation.getColumns(); this.allColumns.addAll(allColumns); this.bodyColumns.addAll(bodyColumns); this.floatingColumns.addAll(floatingColumns); return renderingInformation; }
@Test public void testEditWhenHeaderCellSelected() { final GridColumn.HeaderMetaData headerMetaDataC1 = mock(GridColumn.HeaderMetaData.class); final GridColumn.HeaderMetaData headerMetaDataC2 = mock(GridColumn.HeaderMetaData.class); final GridColumn<?> gridColumnOne = mockGridColumn(100.0, Arrays.asList(headerMetaDataC1)); final GridColumn<?> gridColumnTwo = mockGridColumn(100.0, Arrays.asList(headerMetaDataC2)); doReturn(0).when(gridColumnOne).getIndex(); doReturn(1).when(gridColumnTwo).getIndex(); final double secondColumnXCoordinate = gridColumnOne.getWidth() + gridColumnTwo.getWidth() / 2; doReturn(ci).when(gridRendererHelper).getColumnInformation(secondColumnXCoordinate); doReturn(gridColumnOne.getWidth()).when(gridRendererHelper).getColumnOffset(gridColumnTwo); doReturn(gridColumnTwo).when(ci).getColumn(); doReturn(0.0).when(ci).getOffsetX(); doReturn(1).when(ci).getUiColumnIndex(); doReturn(Arrays.asList(gridColumnOne, gridColumnTwo)).when(ri).getAllColumns(); gridWidget.getModel().appendColumn(gridColumnOne); gridWidget.getModel().appendColumn(gridColumnTwo); gridWidget.getModel().selectHeaderCell(0, 1); CellContextUtilities.editSelectedCell(gridWidget); verify(headerMetaDataC1, never()).edit(any(GridBodyCellEditContext.class)); verify(headerMetaDataC2).edit(gridBodyCellEditContextCaptor.capture()); final GridBodyCellEditContext gridBodyCellEditContext = gridBodyCellEditContextCaptor.getValue(); assertThat(gridBodyCellEditContext) .hasFieldOrPropertyWithValue("columnIndex", 1) .hasFieldOrPropertyWithValue("rowIndex", 0); verify(gridWidget, never()).startEditingCell(anyInt(), anyInt()); verify(gridWidget, never()).startEditingCell(any(Point2D.class)); }
final List<GridColumn<?>> gridColumns = ri.getAllColumns(); final GridColumn.HeaderMetaData clicked = column.getHeaderMetaData().get(uiHeaderRowIndex);
protected void drawHeader(final BaseGridRendererHelper.RenderingInformation renderingInformation) { final List<GridColumn<?>> allColumns = renderingInformation.getAllColumns(); final BaseGridRendererHelper.RenderingBlockInformation bodyBlockInformation = renderingInformation.getBodyBlockInformation(); final BaseGridRendererHelper.RenderingBlockInformation floatingBlockInformation = renderingInformation.getFloatingBlockInformation();
protected void drawHeader(final BaseGridRendererHelper.RenderingInformation renderingInformation) { final List<GridColumn<?>> allColumns = renderingInformation.getAllColumns(); final BaseGridRendererHelper.RenderingBlockInformation bodyBlockInformation = renderingInformation.getBodyBlockInformation(); final BaseGridRendererHelper.RenderingBlockInformation floatingBlockInformation = renderingInformation.getFloatingBlockInformation();
@Test public void testMakeRenderContextTailBlockWithExtraTailNonBlockColumn() { final List<GridColumn<?>> allColumns = new ArrayList<>(); final GridColumn<?> uiColumn1 = mockGridColumn(25.0); final GridColumn<?> uiColumn2 = mockGridColumn(50.0, uiColumn1.getHeaderMetaData()); final GridColumn<?> uiColumn3 = mockGridColumn(100.0); allColumns.add(uiColumn1); allColumns.add(uiColumn2); allColumns.add(uiColumn3); doReturn(allColumns).when(ri).getAllColumns(); doReturn(uiColumn1).when(ci).getColumn(); doReturn(0.0).when(ci).getOffsetX(); doReturn(0).when(ci).getUiColumnIndex(); final GridBodyCellRenderContext context = CellContextUtilities.makeRenderContext(gridWidget, ri, ci, rp, 0); assertNotNull(context); assertEquals(0.0, context.getAbsoluteCellX(), 0.0); assertEquals(75.0, context.getCellWidth(), 0.0); }
@Test public void testMakeRenderContextLeadBlock() { final List<GridColumn<?>> allColumns = new ArrayList<>(); final GridColumn<?> uiColumn1 = mockGridColumn(25.0); final GridColumn<?> uiColumn2 = mockGridColumn(50.0, uiColumn1.getHeaderMetaData()); allColumns.add(uiColumn1); allColumns.add(uiColumn2); doReturn(allColumns).when(ri).getAllColumns(); doReturn(uiColumn2).when(ci).getColumn(); doReturn(25.0).when(ci).getOffsetX(); doReturn(1).when(ci).getUiColumnIndex(); final GridBodyCellRenderContext context = CellContextUtilities.makeRenderContext(gridWidget, ri, ci, rp, 0); assertNotNull(context); assertEquals(0.0, context.getAbsoluteCellX(), 0.0); assertEquals(75.0, context.getCellWidth(), 0.0); }
@Test public void testMakeRenderContextLeadBlockWithExtraLeadNonBlockColumn() { final List<GridColumn<?>> allColumns = new ArrayList<>(); final GridColumn<?> uiColumn1 = mockGridColumn(25.0); final GridColumn<?> uiColumn2 = mockGridColumn(50.0); final GridColumn<?> uiColumn3 = mockGridColumn(75.0, uiColumn2.getHeaderMetaData()); allColumns.add(uiColumn1); allColumns.add(uiColumn2); allColumns.add(uiColumn3); doReturn(allColumns).when(ri).getAllColumns(); doReturn(uiColumn3).when(ci).getColumn(); doReturn(75.0).when(ci).getOffsetX(); doReturn(2).when(ci).getUiColumnIndex(); final GridBodyCellRenderContext context = CellContextUtilities.makeRenderContext(gridWidget, ri, ci, rp, 0); assertNotNull(context); assertEquals(25.0, context.getAbsoluteCellX(), 0.0); assertEquals(125.0, context.getCellWidth(), 0.0); }
@Test public void testMakeRenderContextNoBlockMultipleColumns() { final List<GridColumn<?>> allColumns = new ArrayList<>(); final GridColumn<?> uiColumn1 = mockGridColumn(25.0); final GridColumn<?> uiColumn2 = mockGridColumn(50.0); final GridColumn<?> uiColumn3 = mockGridColumn(100.0); allColumns.add(uiColumn1); allColumns.add(uiColumn2); allColumns.add(uiColumn3); doReturn(allColumns).when(ri).getAllColumns(); doReturn(uiColumn2).when(ci).getColumn(); doReturn(25.0).when(ci).getOffsetX(); doReturn(1).when(ci).getUiColumnIndex(); final GridBodyCellRenderContext context = CellContextUtilities.makeRenderContext(gridWidget, ri, ci, rp, 0); assertNotNull(context); assertEquals(25.0, context.getAbsoluteCellX(), 0.0); assertEquals(50.0, context.getCellWidth(), 0.0); }
@Test public void testEditWhenHeaderCellSelected() { final GridColumn.HeaderMetaData headerMetaDataC1 = mock(GridColumn.HeaderMetaData.class); final GridColumn.HeaderMetaData headerMetaDataC2 = mock(GridColumn.HeaderMetaData.class); final GridColumn<?> gridColumnOne = mockGridColumn(100.0, Arrays.asList(headerMetaDataC1)); final GridColumn<?> gridColumnTwo = mockGridColumn(100.0, Arrays.asList(headerMetaDataC2)); doReturn(0).when(gridColumnOne).getIndex(); doReturn(1).when(gridColumnTwo).getIndex(); final double secondColumnXCoordinate = gridColumnOne.getWidth() + gridColumnTwo.getWidth() / 2; doReturn(ci).when(gridRendererHelper).getColumnInformation(secondColumnXCoordinate); doReturn(gridColumnOne.getWidth()).when(gridRendererHelper).getColumnOffset(gridColumnTwo); doReturn(gridColumnTwo).when(ci).getColumn(); doReturn(0.0).when(ci).getOffsetX(); doReturn(1).when(ci).getUiColumnIndex(); doReturn(Arrays.asList(gridColumnOne, gridColumnTwo)).when(ri).getAllColumns(); gridWidget.getModel().appendColumn(gridColumnOne); gridWidget.getModel().appendColumn(gridColumnTwo); gridWidget.getModel().selectHeaderCell(0, 1); CellContextUtilities.editSelectedCell(gridWidget); verify(headerMetaDataC1, never()).edit(any(GridBodyCellEditContext.class)); verify(headerMetaDataC2).edit(gridBodyCellEditContextCaptor.capture()); final GridBodyCellEditContext gridBodyCellEditContext = gridBodyCellEditContextCaptor.getValue(); assertThat(gridBodyCellEditContext) .hasFieldOrPropertyWithValue("columnIndex", 1) .hasFieldOrPropertyWithValue("rowIndex", 0); verify(gridWidget, never()).startEditingCell(anyInt(), anyInt()); verify(gridWidget, never()).startEditingCell(any(Point2D.class)); }
@Test public void testMakeRenderContextNoBlockMultipleColumns() { final List<GridColumn<?>> allColumns = new ArrayList<>(); final GridColumn<?> uiColumn1 = mockGridColumn(25.0); final GridColumn<?> uiColumn2 = mockGridColumn(50.0); final GridColumn<?> uiColumn3 = mockGridColumn(100.0); allColumns.add(uiColumn1); allColumns.add(uiColumn2); allColumns.add(uiColumn3); doReturn(allColumns).when(ri).getAllColumns(); doReturn(uiColumn2).when(ci).getColumn(); doReturn(25.0).when(ci).getOffsetX(); doReturn(1).when(ci).getUiColumnIndex(); final GridBodyCellRenderContext context = CellContextUtilities.makeRenderContext(gridWidget, ri, ci, rp, 0); assertNotNull(context); assertEquals(25.0, context.getAbsoluteCellX(), 0.0); assertEquals(50.0, context.getCellWidth(), 0.0); }
@Test public void testMakeRenderContextTailBlockWithExtraTailNonBlockColumn() { final List<GridColumn<?>> allColumns = new ArrayList<>(); final GridColumn<?> uiColumn1 = mockGridColumn(25.0); final GridColumn<?> uiColumn2 = mockGridColumn(50.0, uiColumn1.getHeaderMetaData()); final GridColumn<?> uiColumn3 = mockGridColumn(100.0); allColumns.add(uiColumn1); allColumns.add(uiColumn2); allColumns.add(uiColumn3); doReturn(allColumns).when(ri).getAllColumns(); doReturn(uiColumn1).when(ci).getColumn(); doReturn(0.0).when(ci).getOffsetX(); doReturn(0).when(ci).getUiColumnIndex(); final GridBodyCellRenderContext context = CellContextUtilities.makeRenderContext(gridWidget, ri, ci, rp, 0); assertNotNull(context); assertEquals(0.0, context.getAbsoluteCellX(), 0.0); assertEquals(75.0, context.getCellWidth(), 0.0); }
@Test public void testMakeRenderContextLeadBlock() { final List<GridColumn<?>> allColumns = new ArrayList<>(); final GridColumn<?> uiColumn1 = mockGridColumn(25.0); final GridColumn<?> uiColumn2 = mockGridColumn(50.0, uiColumn1.getHeaderMetaData()); allColumns.add(uiColumn1); allColumns.add(uiColumn2); doReturn(allColumns).when(ri).getAllColumns(); doReturn(uiColumn2).when(ci).getColumn(); doReturn(25.0).when(ci).getOffsetX(); doReturn(1).when(ci).getUiColumnIndex(); final GridBodyCellRenderContext context = CellContextUtilities.makeRenderContext(gridWidget, ri, ci, rp, 0); assertNotNull(context); assertEquals(0.0, context.getAbsoluteCellX(), 0.0); assertEquals(75.0, context.getCellWidth(), 0.0); }
@Test public void testMakeRenderContextTailBlock() { final List<GridColumn<?>> allColumns = new ArrayList<>(); final GridColumn<?> uiColumn1 = mockGridColumn(25.0); final GridColumn<?> uiColumn2 = mockGridColumn(50.0, uiColumn1.getHeaderMetaData()); allColumns.add(uiColumn1); allColumns.add(uiColumn2); doReturn(allColumns).when(ri).getAllColumns(); doReturn(uiColumn1).when(ci).getColumn(); doReturn(0.0).when(ci).getOffsetX(); doReturn(0).when(ci).getUiColumnIndex(); final GridBodyCellRenderContext context = CellContextUtilities.makeRenderContext(gridWidget, ri, ci, rp, 0); assertNotNull(context); assertEquals(0.0, context.getAbsoluteCellX(), 0.0); assertEquals(75.0, context.getCellWidth(), 0.0); }
@Test public void testMakeRenderContextTailBlock() { final List<GridColumn<?>> allColumns = new ArrayList<>(); final GridColumn<?> uiColumn1 = mockGridColumn(25.0); final GridColumn<?> uiColumn2 = mockGridColumn(50.0, uiColumn1.getHeaderMetaData()); allColumns.add(uiColumn1); allColumns.add(uiColumn2); doReturn(allColumns).when(ri).getAllColumns(); doReturn(uiColumn1).when(ci).getColumn(); doReturn(0.0).when(ci).getOffsetX(); doReturn(0).when(ci).getUiColumnIndex(); final GridBodyCellRenderContext context = CellContextUtilities.makeRenderContext(gridWidget, ri, ci, rp, 0); assertNotNull(context); assertEquals(0.0, context.getAbsoluteCellX(), 0.0); assertEquals(75.0, context.getCellWidth(), 0.0); }
@Test public void testMakeRenderContextNoBlock() { final List<GridColumn<?>> allColumns = new ArrayList<>(); final GridColumn<?> uiColumn = mockGridColumn(100.0); allColumns.add(uiColumn); doReturn(allColumns).when(ri).getAllColumns(); doReturn(uiColumn).when(ci).getColumn(); doReturn(0.0).when(ci).getOffsetX(); doReturn(0).when(ci).getUiColumnIndex(); final GridBodyCellRenderContext context = CellContextUtilities.makeRenderContext(gridWidget, ri, ci, rp, 0); assertNotNull(context); assertEquals(0.0, context.getAbsoluteCellX(), 0.0); assertEquals(100.0, context.getCellWidth(), 0.0); }
@Test public void testMakeRenderContextNoBlock() { final List<GridColumn<?>> allColumns = new ArrayList<>(); final GridColumn<?> uiColumn = mockGridColumn(100.0); allColumns.add(uiColumn); doReturn(allColumns).when(ri).getAllColumns(); doReturn(uiColumn).when(ci).getColumn(); doReturn(0.0).when(ci).getOffsetX(); doReturn(0).when(ci).getUiColumnIndex(); final GridBodyCellRenderContext context = CellContextUtilities.makeRenderContext(scenarioGridMock, ri, ci, rp, 0); assertNotNull(context); assertEquals(0.0, context.getAbsoluteCellX(), 0.0); assertEquals(100.0, context.getCellWidth(), 0.0); }
@Test public void testMakeRenderContextLeadBlockWithExtraLeadNonBlockColumn() { final List<GridColumn<?>> allColumns = new ArrayList<>(); final GridColumn<?> uiColumn1 = mockGridColumn(25.0); final GridColumn<?> uiColumn2 = mockGridColumn(50.0); final GridColumn<?> uiColumn3 = mockGridColumn(75.0, uiColumn2.getHeaderMetaData()); allColumns.add(uiColumn1); allColumns.add(uiColumn2); allColumns.add(uiColumn3); doReturn(allColumns).when(ri).getAllColumns(); doReturn(uiColumn3).when(ci).getColumn(); doReturn(75.0).when(ci).getOffsetX(); doReturn(2).when(ci).getUiColumnIndex(); final GridBodyCellRenderContext context = CellContextUtilities.makeRenderContext(gridWidget, ri, ci, rp, 0); assertNotNull(context); assertEquals(25.0, context.getAbsoluteCellX(), 0.0); assertEquals(125.0, context.getCellWidth(), 0.0); }
@Test public void testMakeRenderContextNoBlock() { final List<GridColumn<?>> allColumns = new ArrayList<>(); final GridColumn<?> uiColumn = mockGridColumn(100.0); allColumns.add(uiColumn); doReturn(allColumns).when(ri).getAllColumns(); doReturn(uiColumn).when(ci).getColumn(); doReturn(0.0).when(ci).getOffsetX(); doReturn(0).when(ci).getUiColumnIndex(); final GridBodyCellRenderContext context = CellContextUtilities.makeRenderContext(gridWidget, ri, ci, rp, 0); assertNotNull(context); assertEquals(0.0, context.getAbsoluteCellX(), 0.0); assertEquals(100.0, context.getCellWidth(), 0.0); }