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

📄 errorlistcellrenderer.java

📁 用java 编写的源码开放的文本编辑器。有很多有用的特性
💻 JAVA
字号:
/* * ErrorListCellRenderer.java - Used to list I/O and plugin load errors * :tabSize=8:indentSize=8:noTabs=false: * :folding=explicit:collapseFolds=1: * * Copyright (C) 2001 Slava Pestov * * 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 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 org.gjt.sp.jedit.gui;//{{{ Importsimport javax.swing.*;import javax.swing.border.*;import java.awt.*;//}}}class ErrorListCellRenderer extends JComponent implements ListCellRenderer{	//{{{ ErrorListCellRenderer constructor	ErrorListCellRenderer()	{		plainFont = UIManager.getFont("Label.font");		boldFont = new Font(plainFont.getName(),Font.BOLD,plainFont.getSize());		plainFM = getFontMetrics(plainFont);		boldFM = getFontMetrics(boldFont);		setBorder(new EmptyBorder(2,2,2,2));	} //}}}	//{{{ getListCellRendererComponent() method	public Component getListCellRendererComponent(JList list, Object value,		int index, boolean isSelected, boolean cellHasFocus)	{		ErrorListDialog.ErrorEntry entry = (ErrorListDialog.ErrorEntry)value;		this.path = entry.path + ":";		this.messages = entry.messages;		return this;	} //}}}	//{{{ getPreferredSize() method	public Dimension getPreferredSize()	{		int width = boldFM.stringWidth(path);		int height = boldFM.getHeight();		for(int i = 0; i < messages.length; i++)		{			width = Math.max(plainFM.stringWidth(messages[i]),width);			height += plainFM.getHeight();		}		Insets insets = getBorder().getBorderInsets(this);		width += insets.left + insets.right;		height += insets.top + insets.bottom;		return new Dimension(width,height);	} //}}}	//{{{ paintComponent() method	public void paintComponent(Graphics g)	{		Insets insets = getBorder().getBorderInsets(this);		g.setFont(boldFont);		g.drawString(path,insets.left,insets.top + boldFM.getAscent());		int y = insets.top + boldFM.getHeight() + 2;		g.setFont(plainFont);		for(int i = 0; i < messages.length; i++)		{			g.drawString(messages[i],insets.left,y + plainFM.getAscent());			y += plainFM.getHeight();		}	} //}}}	//{{{ Instance variables	private String path;	private String[] messages;	private Font plainFont;	private Font boldFont;	private FontMetrics plainFM;	private FontMetrics boldFM;	//}}}}

⌨️ 快捷键说明

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