⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 discoverdocumentcommand.java

📁 编辑视频文件
💻 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 + -