package tim.prune.function.compress; import javax.swing.JLabel; import tim.prune.I18nManager; import tim.prune.data.Track; /** * Summary label for compression */ public class SummaryLabel extends JLabel { /** Track object */ private Track _track = null; /** * Constructor * @param inTrack track object to work out percentages */ public SummaryLabel(Track inTrack) { super("..........................."); setEnabled(false); _track = inTrack; } /** * Set value * @param inNumToDelete number of points to delete */ public void setValue(int inNumToDelete) { setText(makeString(inNumToDelete)); setEnabled(true); } /** * Clear value */ public void clearValue() { setText(makeString(0)); setEnabled(false); } /** * Make a string describing the deletion * @param inNumToDelete number of points to delete * @return String describing number and %age */ private String makeString(int inNumToDelete) { String desc = I18nManager.getText("dialog.compress.summarylabel") + ": " + inNumToDelete; if (inNumToDelete > 0) { long percent = Math.round(100.0 * inNumToDelete / _track.getNumPoints()); desc += " (" + percent + "%)"; } return desc; } }