package org.openslx.dozmod.gui.activity; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import org.apache.log4j.Logger; import org.openslx.dozmod.gui.Gui; import org.openslx.dozmod.gui.helper.MessageType; import org.openslx.dozmod.state.UploadWizardState; import org.openslx.util.QuickTimer; import org.openslx.util.QuickTimer.Task; @SuppressWarnings("serial") public class UploadPanel extends TransferPanel { private static final Logger LOGGER = Logger.getLogger(UploadPanel.class); private final UploadWizardState state; private final UploadPanel panel = this; public UploadPanel(UploadWizardState state) { super(state.upload.getUploadTask(), state.name, state.diskFile.getName()); btnClose.addActionListener(new ButtonAction()); this.state = state; state.upload.getUploadTask().addListener(this); } private class ButtonAction implements ActionListener { @Override public void actionPerformed(ActionEvent e) { if (!state.upload.getUploadTask().isCanceled()) { if (!Gui.showMessageBox(panel, "Wollen Sie diesen Transfer wirklich abbrechen?", MessageType.QUESTION_YESNO, null, null)) return; QuickTimer.scheduleOnce(new Task() { @Override public void fire() { state.upload.cancelError(); } }); } state.upload.getUploadTask().removeListener(panel); close(); } } }