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

📄 pluginmanagerpanel.java

📁 网站即时通讯系统
💻 JAVA
字号:
/* Copyright (C) 2003 Adam Olsen 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 1, 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., 675 Mass Ave, Cambridge, MA 02139, USA. */package com.valhalla.pluginmanager;import java.awt.Color;import java.awt.Dimension;import java.awt.event.MouseAdapter;import java.awt.event.MouseEvent;import java.util.ArrayList;import java.util.Locale;import java.util.ResourceBundle;import javax.swing.BorderFactory;import javax.swing.Box;import javax.swing.BoxLayout;import javax.swing.JButton;import javax.swing.JPanel;import javax.swing.JScrollPane;import javax.swing.JTable;import com.valhalla.gui.MJTextArea;/** * Plugin Panel for the PluginManager *  * @author Adam Olsen * @version 1.0 */class PluginManagerPanel extends JPanel {    private ResourceBundle resources = ResourceBundle.getBundle(            "PluginManager", Locale.getDefault());    private PluginManager manager;    private PluginTableModel model = null;    private JTable table = null;    private JPanel buttonPanel = new JPanel();    private JButton pluginButton = new JButton(resources            .getString("installPlugins"));    private MJTextArea descArea = new MJTextArea();    /**     * Sets up the panel     *      * @param manager     *            the PluginManager enclosing this panel     */    public PluginManagerPanel(PluginManager manager, boolean managePanel) {        this.manager = manager;        model = new PluginTableModel(this);        if (managePanel)            model.setManageModel();        table = new JTable(model);        model.setTable(table);        setLayout(new BoxLayout(this, BoxLayout.Y_AXIS));        setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5));        JScrollPane scrollPane = new JScrollPane(table);        scrollPane.getViewport().setBackground(Color.WHITE);        add(scrollPane);        add(Box.createRigidArea(new Dimension(0, 5)));        JScrollPane pane = new JScrollPane(descArea);        add(pane);        Dimension dim = descArea.getSize();        dim.setSize((int) dim.getWidth(), 130);        descArea.setPreferredSize(dim);        buttonPanel.setLayout(new BoxLayout(buttonPanel, BoxLayout.X_AXIS));        buttonPanel.add(Box.createHorizontalGlue());        buttonPanel.add(pluginButton);        buttonPanel.setBorder(BorderFactory.createEmptyBorder(5, 0, 0, 0));        add(buttonPanel);        table.addMouseListener(new MouseListener());        descArea.setEditable(false);        descArea.setWrapStyleWord(true);        descArea.setLineWrap(true);        pluginButton.setEnabled(false);    }    public JTable getTable() {        return table;    }    /**     * Gets the button     *      * @return the panel's button     */    public JButton getButton() {        return pluginButton;    }    /**     * Gets the button panel     *      * @return this panel's button panel     */    public JPanel getButtonPanel() {        return buttonPanel;    }    /**     * Sets the plugin buttons text     *      * @param text     *            the plugin buttons text     */    public void setButtonText(String text) {        pluginButton.setText(text);    }    /**     * Listens for mouse events     *      * @author Adam Olsen     * @version 1.0     */    class MouseListener extends MouseAdapter {        public void mouseClicked(MouseEvent e) {            int row = table.getSelectedRow();            if (row < 0)                return;            String desc = model.getDescription(row);            descArea.setText(desc);            descArea.setCaretPosition(0);        }    }    /**     * Sets the list of plugins in the Table     *      * @param list     *            the list of plugins     */    public void setPlugins(ArrayList list) {        model.setPlugins(list);        table.repaint();        table.validate();        descArea.setText("");    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -