// License: GPL. For details, see LICENSE file. package org.openstreetmap.josm.gui.progress; import java.awt.Component; public class ChildProgress extends AbstractProgressMonitor { private final AbstractProgressMonitor parent; private final boolean internal; public ChildProgress(AbstractProgressMonitor parent, CancelHandler cancelHandler, boolean internal) { super(cancelHandler); this.parent = parent; this.internal = internal; } public final AbstractProgressMonitor getParent() { return parent; } public final boolean isInternal() { return internal; } @Override protected void updateProgress(double value) { parent.childSetProgress(this, value); } @Override protected void doBeginTask() { // Do nothing } @Override protected void doSetCustomText(String title) { if (!internal) { parent.childSetCustomText(this, title); } } @Override protected void doSetTitle(String title) { if (!internal) { parent.childSetTitle(this, title); } } @Override protected void doSetIntermediate(boolean value) { if (!internal) { parent.childSetIntermediate(this, value); } } @Override protected void doFinishTask() { parent.childFinished(this); } @Override public void setProgressTaskId(ProgressTaskId taskId) { parent.setProgressTaskId(taskId); } @Override public ProgressTaskId getProgressTaskId() { return parent.getProgressTaskId(); } @Override public Component getWindowParent() { return parent.getWindowParent(); } }