use of org.eclipse.draw2d.Figure in project dbeaver by serge-rider.
the class NodePart method modifyBounds.
/**
* If modified, sets bounds and fires off event notification
*
* @param bounds The bounds to set.
*/
public void modifyBounds(Rectangle bounds) {
Rectangle oldBounds = this.bounds;
if (!bounds.equals(oldBounds)) {
this.bounds = bounds;
Figure entityFigure = (Figure) getFigure();
DiagramPart parent = (DiagramPart) getParent();
parent.setLayoutConstraint(this, entityFigure, bounds);
}
}
use of org.eclipse.draw2d.Figure in project tdi-studio-se by Talend.
the class SearchZoneMapper method search.
public void search(Map<Integer, Map<Integer, Figure>> searchMaps, String searchValue) {
if (searchValue.equals("") || searchValue == null) {
return;
}
List<InputXmlTree> inputTrees = mapperManager.getExternalData().getInputTrees();
List<VarTable> varTables = mapperManager.getExternalData().getVarTables();
List<OutputXmlTree> outputTrees = mapperManager.getExternalData().getOutputTrees();
matcher.setPattern("*" + searchValue.trim() + "*");
int index = -1;
// for the InputTables
for (InputXmlTree inputXmlTree : inputTrees) {
// ExpressionFilter
if (inputXmlTree.getExpressionFilter() != null && matcher.matches(inputXmlTree.getExpressionFilter())) {
EList<Adapter> adapter = inputXmlTree.eAdapters();
if (adapter.size() > 0) {
if (adapter.get(0) instanceof InputXmlTreeEditPart) {
InputXmlTreeEditPart inputXmlTreeEditPart = (InputXmlTreeEditPart) adapter.get(0);
if (inputXmlTreeEditPart != null && inputXmlTreeEditPart.getFigure() != null && inputXmlTreeEditPart.getFigure() instanceof InputXmlTreeFigure) {
InputXmlTreeFigure inputXmlTreeFigure = (InputXmlTreeFigure) inputXmlTreeEditPart.getFigure();
Map<Integer, Figure> map = new HashMap<Integer, Figure>();
map.put(0, inputXmlTreeFigure.getFilterContainer());
index++;
searchMaps.put(index, map);
}
}
}
}
// TreeNode
for (TreeNode node : inputXmlTree.getNodes()) {
// id_Document type
if (XmlMapUtil.DOCUMENT.equals(node.getType())) {
for (TreeNode nodeTemp : XmlMapUtil.getFlatChildrenList(node)) {
if (getMatcherNodeFigure(nodeTemp).size() > 0) {
index++;
searchMaps.put(index, getMatcherNodeFigure(nodeTemp));
}
}
}
if (getMatcherNodeFigure(node).size() > 0) {
index++;
searchMaps.put(index, getMatcherNodeFigure(node));
}
}
}
// for the VarsTables
for (VarTable varTable : varTables) {
for (VarNode node : varTable.getNodes()) {
if (getMatcherNodeFigure(node).size() > 0) {
index++;
searchMaps.put(index, getMatcherNodeFigure(node));
}
}
}
// for the OutputTables
for (OutputXmlTree outputXmlTree : outputTrees) {
// ExpressionFilter
if (outputXmlTree.getExpressionFilter() != null && matcher.matches(outputXmlTree.getExpressionFilter())) {
EList<Adapter> adapter = outputXmlTree.eAdapters();
if (adapter.size() > 0) {
if (adapter.get(0) instanceof OutputXmlTreeEditPart) {
OutputXmlTreeEditPart outputXmlTreeEditPart = (OutputXmlTreeEditPart) adapter.get(0);
if (outputXmlTreeEditPart != null && outputXmlTreeEditPart.getFigure() != null && outputXmlTreeEditPart.getFigure() instanceof OutputXmlTreeFigure) {
OutputXmlTreeFigure outputXmlTreeFigure = (OutputXmlTreeFigure) outputXmlTreeEditPart.getFigure();
Map<Integer, Figure> map = new HashMap<Integer, Figure>();
map.put(0, outputXmlTreeFigure.getFilterContainer());
index++;
searchMaps.put(index, map);
}
}
}
}
// OutputTreeNode
for (OutputTreeNode node : outputXmlTree.getNodes()) {
// id_Document type
if (XmlMapUtil.DOCUMENT.equals(node.getType())) {
for (TreeNode nodeTemp : XmlMapUtil.getFlatChildrenList(node)) {
if (getMatcherNodeFigure(nodeTemp).size() > 0) {
index++;
searchMaps.put(index, getMatcherNodeFigure(nodeTemp));
}
}
} else {
if (getMatcherNodeFigure(node).size() > 0) {
index++;
searchMaps.put(index, getMatcherNodeFigure(node));
}
}
}
}
}
use of org.eclipse.draw2d.Figure in project tdi-studio-se by Talend.
the class SearchZoneMapper method hightlightAll.
public void hightlightAll(Map<Integer, Map<Integer, Figure>> searchMaps, boolean isHightlight) {
Iterator iter = searchMaps.entrySet().iterator();
while (iter.hasNext()) {
Map.Entry entry = (Map.Entry) iter.next();
Map<Integer, Figure> map = (Map<Integer, Figure>) entry.getValue();
Iterator it = map.entrySet().iterator();
while (it.hasNext()) {
Map.Entry e = (Map.Entry) it.next();
if (isHightlight) {
setEntryState(mapperManager, EntryState.HIGHLIGHTALL, (Figure) e.getValue());
} else {
setEntryState(mapperManager, EntryState.NONE, (Figure) e.getValue());
}
}
}
}
use of org.eclipse.draw2d.Figure in project tdi-studio-se by Talend.
the class SearchZoneMapper method getMatcherNodeFigure.
private Map<Integer, Figure> getMatcherNodeFigure(AbstractNode node) {
Map<Integer, Figure> map = new HashMap<Integer, Figure>();
int i = -1;
TableEntityFigure figure = null;
if (node != null) {
EList<Adapter> adapter = node.eAdapters();
if (adapter.size() > 0) {
if (adapter.get(0) instanceof TableEntityPart) {
TableEntityPart tableEntityPart = (TableEntityPart) adapter.get(0);
if (tableEntityPart != null && tableEntityPart.getFigure() != null && tableEntityPart.getFigure() instanceof TableEntityFigure) {
figure = (TableEntityFigure) tableEntityPart.getFigure();
}
}
}
if (node.getExpression() != null && matcher.matches(node.getExpression())) {
i++;
map.put(i, figure);
} else if (node.getName() != null && matcher.matches(node.getName())) {
i++;
map.put(i, figure);
}
}
return map;
}
use of org.eclipse.draw2d.Figure in project tdi-studio-se by Talend.
the class OutputTreeSettingTable method createColumns.
/*
* (non-Javadoc)
*
* @see org.talend.designer.newabstractmap.figures.table.AbstractTable#createColumns()
*/
@Override
protected void createColumns() {
TableColumn column = new TableColumn(ColumnKeyConstant.TREE_SETTING_PROPERTY);
column.setText("Property");
addColumn(column);
ColumnSash sash = new ColumnSash(this);
sash.setLeftColumn(column);
addSeparator(sash);
column = new TableColumn(ColumnKeyConstant.TREE_SETTING_VALUE);
column.setText("Value");
sash.setRightColumn(column);
addColumn(column);
settingsContainer = getTableItemContainer();
rejectRow = new Figure();
rejectRow.setLayoutManager(new RowLayout());
Label label = new Label();
label.setText("Catch Output Reject");
label.setLabelAlignment(PositionConstants.LEFT);
CompoundBorder compoundBorder = new CompoundBorder(new ColumnBorder(), new RowBorder(2, 5, 2, -1));
label.setBorder(compoundBorder);
rejectRow.add(label);
reject = new ComboCellLabel();
reject.setDirectEditType(DirectEditType.OUTPUT_REJECT);
reject.setText(String.valueOf(outputxmlTree.isReject()));
reject.setLabelAlignment(PositionConstants.LEFT);
reject.setBorder(new RowBorder(2, 5, 2, -1));
rejectRow.add(reject);
settingsContainer.add(rejectRow);
innerJoinRejectRow = new Figure();
innerJoinRejectRow.setLayoutManager(new RowLayout());
label = new Label();
label.setText("Catch Lookup Inner Join Reject");
label.setLabelAlignment(PositionConstants.LEFT);
compoundBorder = new CompoundBorder(new ColumnBorder(), new RowBorder(2, 5, 2, -1));
label.setBorder(compoundBorder);
innerJoinRejectRow.add(label);
innerJoinReject = new ComboCellLabel();
innerJoinReject.setDirectEditType(DirectEditType.LOOK_UP_INNER_JOIN_REJECT);
innerJoinReject.setText(String.valueOf(outputxmlTree.isRejectInnerJoin()));
innerJoinReject.setLabelAlignment(PositionConstants.LEFT);
innerJoinReject.setBorder(new RowBorder(2, 5, 2, -1));
innerJoinRejectRow.add(innerJoinReject);
settingsContainer.add(innerJoinRejectRow);
allInOneRow = new Figure();
allInOneRow.setLayoutManager(new RowLayout());
label = new Label();
label.setText("All in one");
label.setLabelAlignment(PositionConstants.LEFT);
compoundBorder = new CompoundBorder(new ColumnBorder(), new RowBorder(2, 5, 2, -1));
label.setBorder(compoundBorder);
allInOneRow.add(label);
allInOne = new ComboCellLabel();
allInOne.setDirectEditType(DirectEditType.ALL_IN_ONE);
allInOne.setText(String.valueOf(outputxmlTree.isAllInOne()));
allInOne.setLabelAlignment(PositionConstants.LEFT);
allInOne.setBorder(new RowBorder(2, 5, 2, -1));
allInOneRow.add(allInOne);
// container.add(allInOneRow);
enableEmptyElementRow = new Figure();
enableEmptyElementRow.setLayoutManager(new RowLayout());
label = new Label();
label.setText("Create empty element");
label.setLabelAlignment(PositionConstants.LEFT);
compoundBorder = new CompoundBorder(new ColumnBorder(), new RowBorder(2, 5, 2, -1));
label.setBorder(compoundBorder);
enableEmptyElementRow.add(label);
enableEmptyElement = new ComboCellLabel();
enableEmptyElement.setDirectEditType(DirectEditType.ENABLE_EMPTY_ELEMENT);
enableEmptyElement.setText(String.valueOf(outputxmlTree.isEnableEmptyElement()));
enableEmptyElement.setLabelAlignment(PositionConstants.LEFT);
enableEmptyElement.setBorder(new RowBorder(2, 5, 2, -1));
enableEmptyElementRow.add(enableEmptyElement);
// container.add(enableEmptyElementRow);
showOrHideDocumentSetting();
settingsContainer.setOpaque(true);
settingsContainer.setBackgroundColor(ColorConstants.white);
// show selection
settingsContainer.addMouseListener(new MouseListener() {
Figure selectedFigure = null;
@Override
public void mousePressed(MouseEvent me) {
boolean joinModel = rejectRow.containsPoint(me.x, me.y);
if (joinModel) {
if (selectedFigure != rejectRow) {
rejectRow.setBackgroundColor(ColorProviderMapper.getColor(ColorInfo.COLOR_COLUMN_TREE_SETTING));
rejectRow.setOpaque(true);
innerJoinRejectRow.setOpaque(false);
allInOneRow.setOpaque(false);
enableEmptyElementRow.setOpaque(false);
}
return;
}
boolean persistentModel = innerJoinRejectRow.containsPoint(me.x, me.y);
if (persistentModel) {
if (selectedFigure != innerJoinRejectRow) {
innerJoinRejectRow.setBackgroundColor(ColorProviderMapper.getColor(ColorInfo.COLOR_COLUMN_TREE_SETTING));
innerJoinRejectRow.setOpaque(true);
rejectRow.setOpaque(false);
allInOneRow.setOpaque(false);
enableEmptyElementRow.setOpaque(false);
}
return;
}
boolean allInOne = allInOneRow.containsPoint(me.x, me.y);
if (allInOne) {
if (selectedFigure != allInOneRow) {
allInOneRow.setBackgroundColor(ColorProviderMapper.getColor(ColorInfo.COLOR_COLUMN_TREE_SETTING));
allInOneRow.setOpaque(true);
rejectRow.setOpaque(false);
innerJoinRejectRow.setOpaque(false);
enableEmptyElementRow.setOpaque(false);
}
return;
}
boolean emptyElement = enableEmptyElementRow.containsPoint(me.x, me.y);
if (emptyElement) {
if (selectedFigure != enableEmptyElementRow) {
enableEmptyElementRow.setBackgroundColor(ColorProviderMapper.getColor(ColorInfo.COLOR_COLUMN_TREE_SETTING));
enableEmptyElementRow.setOpaque(true);
rejectRow.setOpaque(false);
innerJoinRejectRow.setOpaque(false);
allInOneRow.setOpaque(false);
}
}
}
@Override
public void mouseReleased(MouseEvent me) {
}
@Override
public void mouseDoubleClicked(MouseEvent me) {
}
});
}
Aggregations