📄 discoverdocumentcommand.java
字号:
/* * File: DiscoverDocumentCommand.java * Project: MPI Linguistic Application * Date: 02 May 2007 * * Copyright (C) 2001-2007 Max Planck Institute for Psycholinguistics * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */package mpi.eudico.client.annotator.commands;import mpi.eudico.client.annotator.ElanFrame2;import mpi.eudico.client.annotator.ElanLocale;import mpi.eudico.p2p.ElanP2P;import mpi.eudico.p2p.PublishAndDiscoverPanel;import java.awt.Dimension;import javax.swing.JDialog;import javax.swing.JOptionPane;import javax.swing.JProgressBar;/** * */public class DiscoverDocumentCommand implements Command { private String commandName; /** * Creates a new DiscoverDocumentCommand instance * * @param name DOCUMENT ME! */ public DiscoverDocumentCommand(String name) { commandName = name; } /** * <b>Note: </b>it is assumed the types and order of the arguments are * correct. * * @param receiver the ElanP2P object * @param arguments the arguments: <ul> * <li>arg[0] = the ElanFrame2 object</li> * </ul> */ public void execute(Object receiver, Object[] arguments) { PublishAndDiscoverPanel panel = new PublishAndDiscoverPanel(); ElanFrame2 parent = null; if ((arguments != null) && (arguments.length > 0)) { if (arguments[0] instanceof ElanFrame2) { parent = (ElanFrame2) arguments[0]; } } String docName = null; String name = null; String email = null; int option = -1; do { option = JOptionPane.showOptionDialog(parent, panel, ElanLocale.getString("Menu.P2P.DiscoverDocument"), JOptionPane.OK_CANCEL_OPTION, JOptionPane.PLAIN_MESSAGE, null, null, null); if (option != JOptionPane.OK_OPTION) { return; } else { docName = panel.getDocumentName(); name = panel.getName(); email = panel.getEmail(); if ((docName == null) || (docName.length() == 0) || (name == null) || (name.length() == 0) || (email == null) || (email.length() == 0) || (email.indexOf('@') < 1)) { JOptionPane.showMessageDialog(parent, ElanLocale.getString( "P2P.PublishAndDiscoverPanel.Message.Required"), ElanLocale.getString("Message.Warning"), JOptionPane.WARNING_MESSAGE); } else { break; } } } while (true); // do something with the docname, name and email address // ((ElanP2P)receiver).startClient(docName, name, email); // temp progress monitor solution final String doc = docName; final String nm = name; final String em = email; final ElanP2P rec = (ElanP2P) receiver; final ElanFrame2 fr = parent; new Thread(new Runnable() { public void run() { JProgressBar progBar = new JProgressBar(0, 100); progBar.setIndeterminate(true); progBar.setPreferredSize(new Dimension(220, 26)); JDialog dialog = new JDialog(fr, ElanLocale.getString("Menu.P2P.DiscoverDocument")); dialog.getContentPane().add(progBar); dialog.pack(); dialog.setLocationRelativeTo(fr); dialog.show(); ((ElanP2P) rec).startClient(doc, nm, em); dialog.dispose(); } }).start(); } /** * DOCUMENT ME! * * @return DOCUMENT ME! */ public String getName() { return commandName; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -