blob: 57c0113ed97051765610c97221c65ad4a891464a [file] [log] [blame]
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 */