public void refreshVisuals() { // If the text position has been changed by user update it if (fDiagramModelConnection.getTextPosition() != fTextPosition) { fTextPosition = fDiagramModelConnection.getTextPosition(); setLabelLocator(fTextPosition); } setLabelFont(); setLabelFontColor(); setLineColor(); setConnectionText(); setLineWidth(); // Set Enabled according to current Viewpoint boolean enabled = ViewpointsManager.INSTANCE.isAllowedType(getModelConnection()); setEnabled(enabled); if (getSourceDecoration() != null) { getSourceDecoration().setEnabled(enabled); } if (getTargetDecoration() != null) { getTargetDecoration().setEnabled(enabled); } getConnectionLabel().setEnabled(enabled); }
/** Set the line color to that in the model, or failing that, as per default */ protected void setLineColor() { String val = fDiagramModelConnection.getLineColor(); Color c = ColorFactory.get(val); if (c != fLineColor) { fLineColor = c; setForegroundColor(c); } }
/** Set the font color to that in the model, or failing that, as per default */ protected void setLabelFontColor() { String val = fDiagramModelConnection.getFontColor(); Color c = ColorFactory.get(val); if (c == null) { c = ColorConstants.black; // have to set default color otherwise it inherits line color } if (c != fFontColor) { fFontColor = c; getConnectionLabel().setForegroundColor(c); } }
/** Set the font in the label to that in the model, or failing that, as per user's default */ protected void setLabelFont() { String fontName = fDiagramModelConnection.getFont(); Font font = FontFactory.get(fontName); // Adjust for Windows DPI if (PlatformUtils.isWindows()) { font = FontFactory.getAdjustedWindowsFont(font); } getConnectionLabel().setFont(font); }
protected void setLineWidth() { setLineWidth(fDiagramModelConnection.getLineWidth()); }
protected void setConnectionText() { getConnectionLabel().setText(fDiagramModelConnection.getName()); }
@Override public boolean isConnectionVisible(EditPart editPart, IDiagramModelConnection connection) { // This ensures that there are no dangling connections if this filter has removed an editpart return isChildElementVisible(editPart, connection.getSource()) && isChildElementVisible(editPart, connection.getTarget()); }