package org.eclipse.gmf.tooling.runtime.draw2d.labels; import org.eclipse.draw2d.Label; import org.eclipse.draw2d.geometry.Rectangle; import org.eclipse.gmf.runtime.diagram.ui.label.ILabelDelegate; import org.eclipse.swt.graphics.Image; /** * A delegate for a simple label. */ public class SimpleLabelDelegate extends ILabelDelegate.Stub { private final Label myLabel; private boolean myIsSelected; public SimpleLabelDelegate(final Label label) { super(); myLabel = label; } @Override public void setFocus(final boolean b) { // not supported } @Override public void setSelected(final boolean selected) { // ui effect not supported myIsSelected = selected; } @Override public String getText() { return myLabel.getText(); } @Override public void setIcon(final Image image, final int index) { if (index == 0) { myLabel.setIcon(image); } } @Override public void setAlignment(final int right) { myLabel.setLabelAlignment(right); } @Override public void setText(final String text) { myLabel.setText(text); } @Override public void setTextAlignment(final int alignment) { myLabel.setTextAlignment(alignment); } @Override public void setIconAlignment(final int alignment) { myLabel.setIconAlignment(alignment); } @Override public Rectangle getTextBounds() { Rectangle rect = myLabel.getTextBounds().getCopy(); myLabel.translateToAbsolute(rect); return rect; } @Override public void setTextPlacement(final int placement) { myLabel.setTextPlacement(placement); } @Override public void setTextStrikeThrough(final boolean strikeThrough) { // not supported } @Override public void setTextUnderline(final boolean underline) { // not supported } @Override public Image getIcon(final int index) { if (index == 0) { return myLabel.getIcon(); } return null; } @Override public int getIconAlignment() { return myLabel.getIconAlignment(); } @Override public int getTextAlignment() { return myLabel.getTextAlignment(); } @Override public int getTextPlacement() { return myLabel.getTextPlacement(); } @Override public boolean hasFocus() { return myLabel.hasFocus(); } @Override public boolean isSelected() { return myIsSelected; } @Override public boolean isTextStrikedThrough() { return false; } @Override public boolean isTextUnderlined() { return false; } } /* Copyright (c) Avaloq License AG */