Search in sources :

Example 41 with BaseColumn

use of org.drools.workbench.models.guided.dtable.shared.model.BaseColumn in project drools-wb by kiegroup.

the class ColumnManagementView method renderColumns.

public void renderColumns(final Map<String, List<BaseColumn>> columnGroups) {
    clear();
    for (String groupLabel : columnGroups.keySet()) {
        final VerticalPanel columnGroup = new VerticalPanel();
        final HorizontalPanel columnGroupHeader = new HorizontalPanel();
        final VerticalPanel columnGroupColumns = new VerticalPanel();
        columnGroupHeader.add(new Label(groupLabel));
        columnGroup.add(columnGroupHeader);
        columnGroup.add(columnGroupColumns);
        add(columnGroup);
        for (final BaseColumn column : columnGroups.get(groupLabel)) {
            if (column instanceof ActionCol52) {
                columnGroupColumns.add(renderColumn((ActionCol52) column));
            } else if (column instanceof BRLConditionColumn) {
                columnGroupColumns.add(renderColumn((BRLConditionColumn) column));
            } else if (column instanceof Pattern52) {
                renderColumn((Pattern52) column).forEach(columnGroupColumns::add);
            }
        }
    }
}
Also used : BRLConditionColumn(org.drools.workbench.models.guided.dtable.shared.model.BRLConditionColumn) VerticalPanel(com.google.gwt.user.client.ui.VerticalPanel) Pattern52(org.drools.workbench.models.guided.dtable.shared.model.Pattern52) ActionCol52(org.drools.workbench.models.guided.dtable.shared.model.ActionCol52) HorizontalPanel(com.google.gwt.user.client.ui.HorizontalPanel) Label(com.google.gwt.user.client.ui.Label) BaseColumn(org.drools.workbench.models.guided.dtable.shared.model.BaseColumn)

Example 42 with BaseColumn

use of org.drools.workbench.models.guided.dtable.shared.model.BaseColumn in project drools-wb by kiegroup.

the class AttributeColumnSynchronizer method moveColumnsTo.

@Override
public void moveColumnsTo(final List<MoveColumnToMetaData> metaData) throws VetoException {
    // Check operation is supported
    if (!handlesMoveColumnsTo(metaData)) {
        return;
    }
    final MoveColumnToMetaData md = metaData.get(0);
    final AttributeCol52 modelColumn = (AttributeCol52) md.getColumn();
    final List<AttributeCol52> modelAttributeColumns = model.getAttributeCols();
    final int modelAttributeColumnCount = modelAttributeColumns.size();
    if (modelAttributeColumnCount == 0) {
        throw new ModelSynchronizer.MoveVetoException();
    }
    final List<BaseColumn> allModelColumns = model.getExpandedColumns();
    final int minColumnIndex = allModelColumns.indexOf(modelAttributeColumns.get(0));
    final int maxColumnIndex = allModelColumns.indexOf(modelAttributeColumns.get(modelAttributeColumnCount - 1));
    final int targetColumnIndex = md.getTargetColumnIndex();
    final int sourceColumnIndex = md.getSourceColumnIndex();
    if (targetColumnIndex < minColumnIndex || targetColumnIndex > maxColumnIndex) {
        throw new ModelSynchronizer.MoveVetoException();
    }
    moveModelData(targetColumnIndex, sourceColumnIndex, sourceColumnIndex);
    modelAttributeColumns.remove(modelColumn);
    modelAttributeColumns.add(targetColumnIndex - minColumnIndex, modelColumn);
}
Also used : AttributeCol52(org.drools.workbench.models.guided.dtable.shared.model.AttributeCol52) BaseColumn(org.drools.workbench.models.guided.dtable.shared.model.BaseColumn)

Example 43 with BaseColumn

use of org.drools.workbench.models.guided.dtable.shared.model.BaseColumn in project drools-wb by kiegroup.

the class BRLConditionColumnSynchronizer method doMoveBRLFragment.

private void doMoveBRLFragment(final List<MoveColumnToMetaData> metaData) throws VetoException {
    final MoveColumnToMetaData md = metaData.get(0);
    final BRLConditionVariableColumn srcModelColumn = (BRLConditionVariableColumn) md.getColumn();
    final BRLConditionColumn srcModelBRLFragment = model.getBRLColumn(srcModelColumn);
    if (srcModelBRLFragment == null) {
        throw new ModelSynchronizer.MoveVetoException();
    }
    final List<BRLConditionVariableColumn> srcModelBRLFragmentColumns = srcModelBRLFragment.getChildColumns();
    final int srcModelPatternConditionColumnCount = srcModelBRLFragmentColumns.size();
    if (srcModelPatternConditionColumnCount == 0) {
        throw new ModelSynchronizer.MoveVetoException();
    }
    if (srcModelPatternConditionColumnCount != metaData.size()) {
        throw new ModelSynchronizer.MoveVetoException();
    }
    final int tgtColumnIndex = md.getTargetColumnIndex();
    final int tgtPatternIndex = findTargetPatternIndex(md);
    final List<BaseColumn> allModelColumns = model.getExpandedColumns();
    moveModelData(tgtColumnIndex, allModelColumns.indexOf(srcModelBRLFragmentColumns.get(0)), allModelColumns.indexOf(srcModelBRLFragmentColumns.get(0)) + srcModelPatternConditionColumnCount - 1);
    model.getConditions().remove(srcModelBRLFragment);
    model.getConditions().add(tgtPatternIndex, srcModelBRLFragment);
}
Also used : BRLConditionColumn(org.drools.workbench.models.guided.dtable.shared.model.BRLConditionColumn) BaseColumn(org.drools.workbench.models.guided.dtable.shared.model.BaseColumn) BRLConditionVariableColumn(org.drools.workbench.models.guided.dtable.shared.model.BRLConditionVariableColumn)

Example 44 with BaseColumn

use of org.drools.workbench.models.guided.dtable.shared.model.BaseColumn in project drools-wb by kiegroup.

the class LimitedEntryBRLActionColumnSynchronizer method moveColumnsTo.

@Override
public void moveColumnsTo(final List<MoveColumnToMetaData> metaData) throws VetoException {
    // Check operation is supported
    if (!handlesMoveColumnsTo(metaData)) {
        return;
    }
    final MoveColumnToMetaData md = metaData.get(0);
    final LimitedEntryBRLActionColumn modelColumn = (LimitedEntryBRLActionColumn) md.getColumn();
    final List<ActionCol52> modelActionColumns = model.getActionCols();
    final int modelActionColumnCount = modelActionColumns.size();
    if (modelActionColumnCount == 0) {
        throw new ModelSynchronizer.MoveVetoException();
    }
    final List<BaseColumn> allModelColumns = model.getExpandedColumns();
    final int minColumnIndex = allModelColumns.indexOf(modelActionColumns.get(0));
    final int maxColumnIndex = allModelColumns.indexOf(modelActionColumns.get(modelActionColumnCount - 1));
    final int targetColumnIndex = md.getTargetColumnIndex();
    final int sourceColumnIndex = md.getSourceColumnIndex();
    if (targetColumnIndex < minColumnIndex || targetColumnIndex > maxColumnIndex) {
        throw new ModelSynchronizer.MoveVetoException();
    }
    moveModelData(targetColumnIndex, sourceColumnIndex, sourceColumnIndex);
    modelActionColumns.remove(modelColumn);
    modelActionColumns.add(targetColumnIndex - minColumnIndex, modelColumn);
}
Also used : LimitedEntryBRLActionColumn(org.drools.workbench.models.guided.dtable.shared.model.LimitedEntryBRLActionColumn) ActionCol52(org.drools.workbench.models.guided.dtable.shared.model.ActionCol52) BaseColumn(org.drools.workbench.models.guided.dtable.shared.model.BaseColumn)

Example 45 with BaseColumn

use of org.drools.workbench.models.guided.dtable.shared.model.BaseColumn in project drools-wb by kiegroup.

the class MetaDataColumnSynchronizer method moveColumnsTo.

@Override
public void moveColumnsTo(final List<MoveColumnToMetaData> metaData) throws VetoException {
    // Check operation is supported
    if (!handlesMoveColumnsTo(metaData)) {
        return;
    }
    final MoveColumnToMetaData md = metaData.get(0);
    final MetadataCol52 modelColumn = (MetadataCol52) md.getColumn();
    final List<MetadataCol52> modelMetaDataColumns = model.getMetadataCols();
    final int modelMetaDataColumnCount = modelMetaDataColumns.size();
    if (modelMetaDataColumnCount == 0) {
        throw new ModelSynchronizer.MoveVetoException();
    }
    final List<BaseColumn> allModelColumns = model.getExpandedColumns();
    final int minColumnIndex = allModelColumns.indexOf(modelMetaDataColumns.get(0));
    final int maxColumnIndex = allModelColumns.indexOf(modelMetaDataColumns.get(modelMetaDataColumnCount - 1));
    final int targetColumnIndex = md.getTargetColumnIndex();
    final int sourceColumnIndex = md.getSourceColumnIndex();
    if (targetColumnIndex < minColumnIndex || targetColumnIndex > maxColumnIndex) {
        throw new ModelSynchronizer.MoveVetoException();
    }
    moveModelData(targetColumnIndex, sourceColumnIndex, sourceColumnIndex);
    modelMetaDataColumns.remove(modelColumn);
    modelMetaDataColumns.add(targetColumnIndex - minColumnIndex, modelColumn);
}
Also used : MetadataCol52(org.drools.workbench.models.guided.dtable.shared.model.MetadataCol52) BaseColumn(org.drools.workbench.models.guided.dtable.shared.model.BaseColumn)

Aggregations

BaseColumn (org.drools.workbench.models.guided.dtable.shared.model.BaseColumn)118 Test (org.junit.Test)69 RowNumberCol52 (org.drools.workbench.models.guided.dtable.shared.model.RowNumberCol52)57 ArrayList (java.util.ArrayList)53 DescriptionCol52 (org.drools.workbench.models.guided.dtable.shared.model.DescriptionCol52)43 ConditionCol52 (org.drools.workbench.models.guided.dtable.shared.model.ConditionCol52)30 DTCellValue52 (org.drools.workbench.models.guided.dtable.shared.model.DTCellValue52)30 ActionCol52 (org.drools.workbench.models.guided.dtable.shared.model.ActionCol52)27 GuidedDecisionTable52 (org.drools.workbench.models.guided.dtable.shared.model.GuidedDecisionTable52)25 RuleModel (org.drools.workbench.models.datamodel.rule.RuleModel)23 List (java.util.List)22 GuidedDTTemplateDataProvider (org.drools.workbench.models.guided.dtable.backend.util.GuidedDTTemplateDataProvider)20 TemplateDataProvider (org.drools.workbench.models.guided.dtable.backend.util.TemplateDataProvider)20 CompositeColumn (org.drools.workbench.models.guided.dtable.shared.model.CompositeColumn)20 BRLConditionColumn (org.drools.workbench.models.guided.dtable.shared.model.BRLConditionColumn)19 Pattern52 (org.drools.workbench.models.guided.dtable.shared.model.Pattern52)19 IOException (java.io.IOException)17 InputStream (java.io.InputStream)17 ExcelParser (org.drools.decisiontable.parser.xls.ExcelParser)17 DataListener (org.drools.template.parser.DataListener)17