package bndtools.model.clauses; import org.bndtools.core.ui.icons.Icons; import org.eclipse.jface.viewers.StyledCellLabelProvider; import org.eclipse.jface.viewers.StyledString; import org.eclipse.jface.viewers.ViewerCell; import org.eclipse.swt.graphics.Image; public class VersionedClauseLabelProvider extends StyledCellLabelProvider { Image bundleImg = Icons.desc("bundle").createImage(); @Override public void update(ViewerCell cell) { aQute.bnd.build.model.clauses.VersionedClause clause = (aQute.bnd.build.model.clauses.VersionedClause) cell.getElement(); StyledString label = new StyledString(clause.getName()); String version = clause.getVersionRange(); if (version != null) { label.append(" " + version, StyledString.COUNTER_STYLER); } cell.setText(label.getString()); cell.setStyleRanges(label.getStyleRanges()); cell.setImage(bundleImg); } @Override public void dispose() { super.dispose(); bundleImg.dispose(); } }