Search in sources :

Example 26 with GridColumn

use of org.uberfire.ext.wires.core.grids.client.model.GridColumn in project kie-wb-common by kiegroup.

the class DecisionTableGridTest method testMultipleInputClauseColumnHeaderEditorInstances.

@Test
public void testMultipleInputClauseColumnHeaderEditorInstances() {
    final ValueAndDataTypePopoverView.Presenter headerEditor2 = mock(ValueAndDataTypePopoverView.Presenter.class);
    when(headerEditors.get()).thenReturn(headerEditor, headerEditor2);
    setupGrid(makeHasNameForDecision(), 0);
    addInputClause(2);
    // Adding the column above shows the header editor by default, so reset it for the purpose of this test.
    reset(headerEditor2);
    final GridColumn uiColumn1 = grid.getModel().getColumns().get(1);
    assertInputClauseColumnHeaderEditor(uiColumn1, headerEditor);
    final GridColumn uiColumn2 = grid.getModel().getColumns().get(2);
    assertInputClauseColumnHeaderEditor(uiColumn2, headerEditor2);
}
Also used : GridColumn(org.uberfire.ext.wires.core.grids.client.model.GridColumn) DMNGridColumn(org.kie.workbench.common.dmn.client.widgets.grid.model.DMNGridColumn) ValueAndDataTypePopoverView(org.kie.workbench.common.dmn.client.editors.types.ValueAndDataTypePopoverView) Test(org.junit.Test)

Example 27 with GridColumn

use of org.uberfire.ext.wires.core.grids.client.model.GridColumn in project kie-wb-common by kiegroup.

the class DeleteRuleAnnotationClauseCommandTest method testNewCanvasCommandUndo.

@Test
public void testNewCanvasCommandUndo() {
    final DeleteRuleAnnotationClauseCommand command = mock(DeleteRuleAnnotationClauseCommand.class);
    final AbstractCanvasHandler handler = mock(AbstractCanvasHandler.class);
    final GridData uiModel = mock(GridData.class);
    final GridColumn oldUiModelColumn = mock(GridColumn.class);
    final int uiColumnIndex = 3;
    final DecisionRule rule1 = mock(DecisionRule.class);
    final DecisionRule rule2 = mock(DecisionRule.class);
    final List<DecisionRule> rules = Arrays.asList(rule1, rule2);
    final org.uberfire.mvp.Command undoCanvasOperation = mock(org.uberfire.mvp.Command.class);
    final DecisionTableUIModelMapper uiModelMapper = mock(DecisionTableUIModelMapper.class);
    doCallRealMethod().when(command).newCanvasCommand(handler);
    when(command.getUiModel()).thenReturn(uiModel);
    when(command.getUiColumnIndex()).thenReturn(uiColumnIndex);
    when(command.getOldUiModelColumn()).thenReturn(oldUiModelColumn);
    when(command.getDecisionTable()).thenReturn(decisionTable);
    when(decisionTable.getRule()).thenReturn(rules);
    when(command.getUiModelMapper()).thenReturn(uiModelMapper);
    when(command.getUndoCanvasOperation()).thenReturn(undoCanvasOperation);
    final Command<AbstractCanvasHandler, CanvasViolation> canvasCommand = command.newCanvasCommand(handler);
    final CommandResult<CanvasViolation> result = canvasCommand.undo(handler);
    assertEquals(CanvasCommandResultBuilder.SUCCESS, result);
    verify(uiModelMapper).fromDMNModel(0, uiColumnIndex);
    verify(uiModelMapper).fromDMNModel(1, uiColumnIndex);
    verify(command).updateParentInformation();
    verify(undoCanvasOperation).execute();
}
Also used : CanvasViolation(org.kie.workbench.common.stunner.core.client.command.CanvasViolation) DecisionRule(org.kie.workbench.common.dmn.api.definition.model.DecisionRule) AbstractCanvasHandler(org.kie.workbench.common.stunner.core.client.canvas.AbstractCanvasHandler) GridData(org.uberfire.ext.wires.core.grids.client.model.GridData) GridColumn(org.uberfire.ext.wires.core.grids.client.model.GridColumn) DecisionTableUIModelMapper(org.kie.workbench.common.dmn.client.editors.expressions.types.dtable.DecisionTableUIModelMapper) Test(org.junit.Test)

Example 28 with GridColumn

use of org.uberfire.ext.wires.core.grids.client.model.GridColumn in project kie-wb-common by kiegroup.

the class ListGrid method initialiseUiColumns.

@Override
public void initialiseUiColumns() {
    final ContextGridRowNumberColumn rowNumberColumn = new ContextGridRowNumberColumn(Collections.emptyList(), getAndSetInitialWidth(ListUIModelMapperHelper.ROW_COLUMN_INDEX, ContextGridRowNumberColumn.DEFAULT_WIDTH));
    final GridColumn listColumn = new ListExpressionEditorColumn(gridLayer, getAndSetInitialWidth(ListUIModelMapperHelper.EXPRESSION_COLUMN_INDEX, ExpressionEditorColumn.DEFAULT_WIDTH), this);
    model.appendColumn(rowNumberColumn);
    model.appendColumn(listColumn);
    getRenderer().setColumnRenderConstraint((isSelectionLayer, gridColumn) -> true);
}
Also used : GridColumn(org.uberfire.ext.wires.core.grids.client.model.GridColumn) ContextGridRowNumberColumn(org.kie.workbench.common.dmn.client.editors.expressions.types.context.ContextGridRowNumberColumn)

Example 29 with GridColumn

use of org.uberfire.ext.wires.core.grids.client.model.GridColumn in project kie-wb-common by kiegroup.

the class FunctionGrid method initialiseUiColumns.

@Override
protected void initialiseUiColumns() {
    final List<GridColumn.HeaderMetaData> headerMetaData = new ArrayList<>();
    if (nesting == 0) {
        headerMetaData.add(new FunctionColumnNameHeaderMetaData(hasExpression, hasName, clearValueConsumer(true, new Name()), setValueConsumer(true), setTypeRefConsumer(), translationService, cellEditorControls, headerEditor));
    }
    headerMetaData.add(new FunctionColumnParametersHeaderMetaData(getExpression(), translationService, cellEditorControls, parametersEditor, this));
    final FunctionKindRowColumn kindColumn = new FunctionKindRowColumn(getExpression(), cellEditorControls, kindEditor, getAndSetInitialWidth(0, EmptyColumn.DEFAULT_WIDTH), this);
    final GridColumn expressionColumn = new FunctionColumn(gridLayer, headerMetaData, getAndSetInitialWidth(1, UndefinedExpressionColumn.DEFAULT_WIDTH), this);
    model.appendColumn(kindColumn);
    model.appendColumn(expressionColumn);
    getRenderer().setColumnRenderConstraint((isSelectionLayer, gridColumn) -> !isSelectionLayer || gridColumn.equals(expressionColumn));
}
Also used : ArrayList(java.util.ArrayList) GridColumn(org.uberfire.ext.wires.core.grids.client.model.GridColumn) HasName(org.kie.workbench.common.dmn.api.definition.HasName) QName(org.kie.workbench.common.dmn.api.property.dmn.QName) Name(org.kie.workbench.common.dmn.api.property.dmn.Name)

Example 30 with GridColumn

use of org.uberfire.ext.wires.core.grids.client.model.GridColumn in project kie-wb-common by kiegroup.

the class EditableHeaderGridWidgetEditCellMouseEventHandler method handleHeaderCell.

@Override
public boolean handleHeaderCell(final GridWidget gridWidget, final Point2D relativeLocation, final int uiHeaderRowIndex, final int uiHeaderColumnIndex, final AbstractNodeMouseEvent event) {
    final List<GridColumn<?>> gridColumns = gridWidget.getModel().getColumns();
    final GridColumn<?> gridColumn = gridColumns.get(uiHeaderColumnIndex);
    final List<GridColumn.HeaderMetaData> gridColumnHeaderMetaData = gridColumn.getHeaderMetaData();
    if (Objects.isNull(gridColumnHeaderMetaData) || gridColumnHeaderMetaData.isEmpty()) {
        return false;
    }
    if (!EditableHeaderUtilities.hasEditableHeader(gridColumn)) {
        return false;
    }
    if (!EditableHeaderUtilities.isEditableHeader(gridColumn, uiHeaderRowIndex)) {
        return false;
    }
    final EditableHeaderMetaData editableHeaderMetaData = (EditableHeaderMetaData) gridColumn.getHeaderMetaData().get(uiHeaderRowIndex);
    if (Objects.equals(editableHeaderMetaData.getSupportedEditAction(), GridCellEditAction.getSupportedEditAction(event))) {
        final Point2D gridWidgetComputedLocation = gridWidget.getComputedLocation();
        CellContextUtilities.editSelectedCell(gridWidget, relativeLocation.add(gridWidgetComputedLocation));
        return true;
    }
    return false;
}
Also used : Point2D(com.ait.lienzo.client.core.types.Point2D) EditableHeaderMetaData(org.kie.workbench.common.dmn.client.widgets.grid.columns.EditableHeaderMetaData) GridColumn(org.uberfire.ext.wires.core.grids.client.model.GridColumn) EditableHeaderMetaData(org.kie.workbench.common.dmn.client.widgets.grid.columns.EditableHeaderMetaData)

Aggregations

GridColumn (org.uberfire.ext.wires.core.grids.client.model.GridColumn)62 Test (org.junit.Test)42 GridData (org.uberfire.ext.wires.core.grids.client.model.GridData)15 BaseGridColumn (org.uberfire.ext.wires.core.grids.client.model.impl.BaseGridColumn)12 ArrayList (java.util.ArrayList)11 BaseGridData (org.uberfire.ext.wires.core.grids.client.model.impl.BaseGridData)10 ContextMenuHandler (com.google.gwt.event.dom.client.ContextMenuHandler)8 DMNGridColumn (org.kie.workbench.common.dmn.client.widgets.grid.model.DMNGridColumn)8 IntegerUiColumn (org.drools.workbench.screens.guided.dtable.client.widget.table.columns.IntegerUiColumn)7 StringUiColumn (org.drools.workbench.screens.guided.dtable.client.widget.table.columns.StringUiColumn)7 GridBodyCellRenderContext (org.uberfire.ext.wires.core.grids.client.widget.context.GridBodyCellRenderContext)7 RowNumberColumn (org.uberfire.ext.wires.core.grids.client.widget.grid.columns.RowNumberColumn)6 List (java.util.List)5 ConditionCol52 (org.drools.workbench.models.guided.dtable.shared.model.ConditionCol52)5 Pattern52 (org.drools.workbench.models.guided.dtable.shared.model.Pattern52)5 GridRow (org.uberfire.ext.wires.core.grids.client.model.GridRow)5 Optional (java.util.Optional)4 ScenarioHeaderMetaData (org.drools.workbench.screens.scenariosimulation.client.metadata.ScenarioHeaderMetaData)4 ScenarioGridColumn (org.drools.workbench.screens.scenariosimulation.client.widgets.ScenarioGridColumn)4 GridCell (org.uberfire.ext.wires.core.grids.client.model.GridCell)4