package org.docear.plugin.services.actions; import java.awt.event.ActionEvent; import java.util.ArrayList; import javax.swing.JButton; import javax.swing.JOptionPane; import org.docear.plugin.services.ServiceController; import org.docear.plugin.services.components.dialog.DocearIRChoiceDialogPanel; import org.docear.plugin.services.listeners.DocearServiceSettingsDialogListener; import org.freeplane.core.ui.AFreeplaneAction; import org.freeplane.core.ui.components.UITools; import org.freeplane.core.util.TextUtils; public class DocearAllowUploadChooserAction extends AFreeplaneAction { public static final String KEY = "docear.allow.upload.action"; public DocearAllowUploadChooserAction() { super(KEY); } private static final long serialVersionUID = 1L; public void actionPerformed(ActionEvent e) { DocearAllowUploadChooserAction.showDialog(false); } public static boolean showDialog(boolean exitOnCancel) { final DocearIRChoiceDialogPanel chooser = new DocearIRChoiceDialogPanel(!exitOnCancel); ArrayList<JButton> buttonsList = new ArrayList<JButton>(); buttonsList.add(new JButton(TextUtils.getText("docear.uploadchooser.button.ok"))); buttonsList.add(new JButton(TextUtils.getText("docear.uploadchooser.button.cancel"))); JButton[] dialogButtons = buttonsList.toArray(new JButton[] {}); chooser.integrateButtons(dialogButtons); chooser.addActionListener(new DocearServiceSettingsDialogListener()); int result = JOptionPane.showOptionDialog(UITools.getFrame(), chooser, TextUtils.getText("docear.uploadchooser.title"), JOptionPane.DEFAULT_OPTION, JOptionPane.PLAIN_MESSAGE, null, dialogButtons, 1); if (result == 0) { ServiceController.getController().setBackupEnabled(chooser.allowBackup()); ServiceController.getController().setInformationRetrievalCode(chooser.getIrCode()); return true; } else { if(exitOnCancel) { System.exit(0); } } return false; } }