serverbrowser.java
来自「很棒的web服务器源代码」· Java 代码 · 共 170 行
JAVA
170 行
// ServerBrowser.java// $Id: ServerBrowser.java,v 1.29 2000/08/16 21:37:31 ylafon Exp $// (c) COPYRIGHT MIT and INRIA, 1998.// Please first read the full copyright statement in file COPYRIGHT.htmlpackage org.w3c.jigadmin.gui; import javax.swing.ImageIcon;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JMenuBar;import javax.swing.JMenuItem;import javax.swing.JMenu;import javax.swing.JPanel;import javax.swing.JDialog;import javax.swing.BorderFactory;import javax.swing.JOptionPane;import javax.swing.UIManager;import java.awt.BorderLayout;import java.awt.Font;import java.awt.Cursor;import java.awt.Dimension;import java.awt.Container;import java.awt.GridLayout;import java.awt.CardLayout;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;import java.awt.event.ActionListener;import java.awt.event.ActionEvent;import java.util.Properties;import java.net.URL;import java.net.MalformedURLException;import org.w3c.jigsaw.admin.AdminContext;import org.w3c.jigsaw.admin.RemoteAccessException;import org.w3c.jigsaw.admin.RemoteResource;import org.w3c.jigadmin.PropertyManager;import org.w3c.jigadmin.RemoteResourceWrapper;import org.w3c.jigadmin.gui.Message;import org.w3c.jigadmin.gui.slist.ServerList;import org.w3c.jigadmin.gui.slist.ServerListModel;import org.w3c.jigadmin.gui.slist.ServerListListener;import org.w3c.jigadmin.editors.ServerEditorInterface;import org.w3c.jigadmin.editors.ServerEditorFactory;import org.w3c.jigadmin.editors.FramedResourceHelper;import org.w3c.jigadmin.widgets.DnDJPanel;import org.w3c.jigadmin.widgets.Icons;class WindowCloser extends WindowAdapter { protected static int windows = 0; public synchronized static void close(JFrame frame) { windows--; frame.setVisible(false); frame.dispose(); if (windows < 0) System.exit(0); } public void windowClosing(WindowEvent e) { close((JFrame)e.getWindow()); }}class ServerMenu extends JMenuBar implements ActionListener { ServerBrowser browser = null; protected String getAdminURL() { String url = JOptionPane.showInputDialog(this, "Admin server URL", "Open", JOptionPane.PLAIN_MESSAGE); if ((url != null) && (! url.startsWith("http://"))) url = "http://"+url; return url; } public void actionPerformed(ActionEvent evt) { String command = evt.getActionCommand(); if (command.equals("open")) { String adminurl = getAdminURL(); if (adminurl == null) return; try { URL url = new URL(adminurl); browser.open(url); } catch (MalformedURLException ex) { JOptionPane.showMessageDialog(this, adminurl+" is not a valid URL", "Invalid URL", JOptionPane.ERROR_MESSAGE); } } else if(command.equals("new")) { String adminurl = getAdminURL(); if (adminurl == null) return; URL url = null; try { url = new URL(adminurl); } catch (MalformedURLException ex) { JOptionPane.showMessageDialog(this, adminurl+" is not a valid URL", "Invalid URL", JOptionPane.ERROR_MESSAGE); } JFrame frame = new JFrame("Server Browser: " + adminurl); ServerBrowser sb = new ServerBrowser(frame); frame.getContentPane().add(sb, BorderLayout.CENTER); frame.setVisible(true); sb.open(url); WindowCloser.windows++; } else if(command.equals("close")) { JFrame cont = browser.frame; cont.setVisible(false); cont.dispose(); WindowCloser.windows--; if (WindowCloser.windows < 0) System.exit(0); } else if(command.equals("quit")) { JFrame cont = browser.frame; cont.setVisible(false); cont.dispose(); WindowCloser.windows = 0; System.exit(0); } else if (command.equals("about")) { AboutJigAdmin.show(this); } } ServerMenu(ServerBrowser browser) { super(); this.browser = browser; JMenu server = new JMenu("JigAdmin"); add(server); JMenuItem about = new JMenuItem("About JigAdmin"); about.setActionCommand("about"); about.addActionListener(this); server.add( about ); server.addSeparator(); JMenuItem open = new JMenuItem("Open"); open.setActionCommand("open"); open.addActionListener(this); server.add( open ); JMenuItem newOpen = new JMenuItem("Open in new window"); newOpen.setActionCommand("new"); newOpen.addActionListener(this); server.add( newOpen ); server.addSeparator(); JMenuItem close = new JMenuItem("Close window"); close.setActionCommand("close"); close.addActionListener(this); server.add( close ); JMenuItem quit = new JMenuItem("Exit"); quit.setActionCommand("quit"); quit.addActionListener(this); server.add( quit ); }}/** * The ServerBrowser. * @version $Revision: 1.29 $ * @author Beno顃 Mah
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?