xfilelistcellrenderer.java

来自「JavaExplorer是一个独立于平台的浏览器」· Java 代码 · 共 117 行

JAVA
117
字号
/**  * File and FTP Explorer  * Copyright 2002  * BOESCH Vincent  *  * 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 javaexplorer.gui.renderer;import java.awt.Component;import javaexplorer.model.XFile;import javaexplorer.ressource.MagicNumber;import javaexplorer.util.*;import javaexplorer.util.filter.*;import javax.swing.*;/** *@author     BOESCH Vincent *@created    21 janvier 2002 *@version    3.3 */public class XFileListCellRenderer extends DefaultListCellRenderer {    ImageFilter fif = new ImageFilter();    private boolean _booShowPath = true;    public XFileListCellRenderer() {        this(true);    }    public XFileListCellRenderer(boolean booShowPath) {        super();        noFocusBorder = null;        setBorder(noFocusBorder);        _booShowPath = booShowPath;    }    /**     *  Gets the TreeCellRendererComponent     *  attribute of the ImageTreeCellRenderer     *  object     *     *@param  value         Description of     *      Parameter     *@param  list          Description of     *      the Parameter     *@param  index         Description of     *      the Parameter     *@param  isSelected    Description of     *      the Parameter     *@param  cellHasFocus  Description of     *      the Parameter     *@return               The TreeCellRendererComponent     *      value     */    public Component getListCellRendererComponent(JList list, Object value,        int index, boolean isSelected, boolean cellHasFocus) {        setComponentOrientation(list.getComponentOrientation());        if (isSelected) {            setBackground(list.getBackground().darker());            setForeground(list.getForeground());        } else {            setBackground(list.getBackground());            setForeground(list.getForeground());        }        if (value instanceof XFile) {            setForeground(XFileUtil.getXFileColor((XFile)value));            ImageIcon ii = MagicNumber.getIconForXFile((XFile) value);            if (ii != null) {                setIcon(ii);            }            setText(getDisplayValue((XFile) value));        } else {            setText(value.toString());        }        setEnabled(true);        setFont(list.getFont());        setBorder((cellHasFocus)            ? UIManager.getBorder("List.focusCellHighlightBorder") : noFocusBorder);        return this;    }    private String getDisplayValue(XFile ef) {        if (_booShowPath) {            return ef.toString();        } else {            String taille = ExplorerUtil.getLengthAsString(ef.length());            String date = DateUtil.formatDate(ef.lastModified());            return ef.getName() + " [" + date + "] " +            (ef.isDirectory() ? "" : (" (" + taille + ")"));        }    }}

⌨️ 快捷键说明

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