亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? basictextareaui.java

?? JAVA的一些源碼 JAVA2 STANDARD EDITION DEVELOPMENT KIT 5.0
?? JAVA
字號(hào):
/* * @(#)BasicTextAreaUI.java	1.68 03/01/23 * * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. */package javax.swing.plaf.basic;import java.beans.*;import java.awt.*;import java.awt.event.KeyEvent;import java.awt.event.InputEvent;import javax.swing.*;import javax.swing.event.DocumentEvent;import javax.swing.text.*;import javax.swing.plaf.*;/** * Provides the look and feel for a plain text editor.  In this * implementation the default UI is extended to act as a simple * view factory. * <p> * <strong>Warning:</strong> * Serialized objects of this class will not be compatible with * future Swing releases. The current serialization support is * appropriate for short term storage or RMI between applications running * the same version of Swing.  As of 1.4, support for long term storage * of all JavaBeans<sup><font size="-2">TM</font></sup> * has been added to the <code>java.beans</code> package. * Please see {@link java.beans.XMLEncoder}. * * @author  Timothy Prinzing * @version 1.68 01/23/03 */public class BasicTextAreaUI extends BasicTextUI {        /**     * Creates a UI for a JTextArea.     *     * @param ta a text area     * @return the UI     */    public static ComponentUI createUI(JComponent ta) {        return new BasicTextAreaUI();    }    /**     * Constructs a new BasicTextAreaUI object.     */    public BasicTextAreaUI() {	super();    }    /**     * Fetches the name used as a key to look up properties through the     * UIManager.  This is used as a prefix to all the standard     * text properties.     *     * @return the name ("TextArea")     */    protected String getPropertyPrefix() {	return "TextArea";    }        protected void installDefaults() {        super.installDefaults();        //the fix for 4785160 is undone    }    /**     * This method gets called when a bound property is changed     * on the associated JTextComponent.  This is a hook     * which UI implementations may change to reflect how the     * UI displays bound properties of JTextComponent subclasses.     * This is implemented to rebuild the View when the     * <em>WrapLine</em> or the <em>WrapStyleWord</em> property changes.     *     * @param evt the property change event     */    protected void propertyChange(PropertyChangeEvent evt) {	if (evt.getPropertyName().equals("lineWrap") ||	    evt.getPropertyName().equals("wrapStyleWord") ||		evt.getPropertyName().equals("tabSize")) {	    // rebuild the view	    modelChanged();	} else if ("editable".equals(evt.getPropertyName())) {	    updateFocusTraversalKeys();	}    }    /**     * The method is overridden to take into account caret width.     *     * @param c the editor component     * @return the preferred size     * @throws IllegalArgumentException if invalid value is passed     *     * @since 1.5     */    public Dimension getPreferredSize(JComponent c) {                            return super.getPreferredSize(c);                                 //the fix for 4785160 is undone    }                                                                                                                                                  /**     * The method is overridden to take into account caret width.     *     * @param c the editor component     * @return the minimum size     * @throws IllegalArgumentException if invalid value is passed     *     * @since 1.5     */    public Dimension getMinimumSize(JComponent c) {        return super.getMinimumSize(c);        //the fix for 4785160 is undone    }    /**     * Creates the view for an element.  Returns a WrappedPlainView or     * PlainView.     *     * @param elem the element     * @return the view     */    public View create(Element elem) {	Document doc = elem.getDocument();	Object i18nFlag = doc.getProperty("i18n"/*AbstractDocument.I18NProperty*/);	if ((i18nFlag != null) && i18nFlag.equals(Boolean.TRUE)) {	    // build a view that support bidi	    return createI18N(elem);	} else {	    JTextComponent c = getComponent();	    if (c instanceof JTextArea) {		JTextArea area = (JTextArea) c;		View v;		if (area.getLineWrap()) {		    v = new WrappedPlainView(elem, area.getWrapStyleWord());		} else {		    v = new PlainView(elem);		}		return v;	    }	}	return null;    }    View createI18N(Element elem) {	String kind = elem.getName();	if (kind != null) {	    if (kind.equals(AbstractDocument.ContentElementName)) {		return new PlainParagraph(elem);	    } else if (kind.equals(AbstractDocument.ParagraphElementName)) {		return new BoxView(elem, View.Y_AXIS);	    }	}	return null;    }    /**     * Paragraph for representing plain-text lines that support     * bidirectional text.     */    static class PlainParagraph extends ParagraphView {	PlainParagraph(Element elem) {	    super(elem);	    layoutPool = new LogicalView(elem);	    layoutPool.setParent(this);	}        public void setParent(View parent) {            super.setParent(parent);            if (parent != null) {                setPropertiesFromAttributes();            }        }        protected void setPropertiesFromAttributes() {	    Component c = getContainer();	    if ((c != null) && (! c.getComponentOrientation().isLeftToRight())) {		setJustification(StyleConstants.ALIGN_RIGHT);	    } else {		setJustification(StyleConstants.ALIGN_LEFT);	    }	}	/**	 * Fetch the constraining span to flow against for	 * the given child index.	 */        public int getFlowSpan(int index) {	    Component c = getContainer();	    if (c instanceof JTextArea) {		JTextArea area = (JTextArea) c;		if (! area.getLineWrap()) {		    // no limit if unwrapped		    return Integer.MAX_VALUE;		}	    }	    return super.getFlowSpan(index);	}        protected SizeRequirements calculateMinorAxisRequirements(int axis, 								  SizeRequirements r) {	    SizeRequirements req = super.calculateMinorAxisRequirements(axis, r);	    Component c = getContainer();	    if (c instanceof JTextArea) {		JTextArea area = (JTextArea) c;		if (! area.getLineWrap()) {		    // min is pref if unwrapped		    req.minimum = req.preferred;		} else {                    req.minimum = 0;                    req.preferred = getWidth();                    if (req.preferred == Integer.MAX_VALUE) {                        // We have been initially set to MAX_VALUE, but we                        // don't want this as our preferred.                         req.preferred = 100;                    }                }	    }	    return req;	}        /**         * Sets the size of the view.  If the size has changed, layout         * is redone.  The size is the full size of the view including         * the inset areas.           *         * @param width the width >= 0         * @param height the height >= 0         */        public void setSize(float width, float height) {            if ((int) width != getWidth()) {                preferenceChanged(null, true, true);            }            super.setSize(width, height);        }	/**	 * This class can be used to represent a logical view for 	 * a flow.  It keeps the children updated to reflect the state	 * of the model, gives the logical child views access to the	 * view hierarchy, and calculates a preferred span.  It doesn't	 * do any rendering, layout, or model/view translation.	 */	static class LogicalView extends CompositeView {	    	    LogicalView(Element elem) {		super(elem);	    }            protected int getViewIndexAtPosition(int pos) {		Element elem = getElement();		if (elem.getElementCount() > 0) {		    return elem.getElementIndex(pos);		}		return 0;	    }            protected boolean updateChildren(DocumentEvent.ElementChange ec, 					     DocumentEvent e, ViewFactory f) {		return false;	    }            protected void loadChildren(ViewFactory f) {		Element elem = getElement();		if (elem.getElementCount() > 0) {		    super.loadChildren(f);		} else {		    View v = new GlyphView(elem);		    append(v);		}	    }            public float getPreferredSpan(int axis) {                if( getViewCount() != 1 )                    throw new Error("One child view is assumed.");                		View v = getView(0);		return v.getPreferredSpan(axis);	    }            /**             * Forward the DocumentEvent to the given child view.  This             * is implemented to reparent the child to the logical view             * (the children may have been parented by a row in the flow             * if they fit without breaking) and then execute the superclass              * behavior.             *             * @param v the child view to forward the event to.             * @param e the change information from the associated document             * @param a the current allocation of the view             * @param f the factory to use to rebuild if the view has children             * @see #forwardUpdate             * @since 1.3             */            protected void forwardUpdateToView(View v, DocumentEvent e,                                                Shape a, ViewFactory f) {                v.setParent(this);                super.forwardUpdateToView(v, e, a, f);            }	    // The following methods don't do anything useful, they	    // simply keep the class from being abstract.            public void paint(Graphics g, Shape allocation) {	    }            protected boolean isBefore(int x, int y, Rectangle alloc) {		return false;	    }            protected boolean isAfter(int x, int y, Rectangle alloc) {		return false;	    }            protected View getViewAtPoint(int x, int y, Rectangle alloc) {		return null;	    }            protected void childAllocation(int index, Rectangle a) {	    }        }    }}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
免费成人av资源网| 欧美精品日日鲁夜夜添| 在线看日韩精品电影| 国产嫩草影院久久久久| 国产精品自在在线| 精品精品欲导航| 日本一道高清亚洲日美韩| 在线亚洲欧美专区二区| 亚洲免费在线电影| 91一区二区在线观看| 国产精品美日韩| 91在线你懂得| 中文字幕一区在线观看| 成人精品高清在线| 自拍偷拍亚洲欧美日韩| 91美女片黄在线观看91美女| 亚洲一区二区三区在线播放| 欧美性猛片aaaaaaa做受| 亚洲妇女屁股眼交7| 欧美军同video69gay| 一区二区三区中文字幕| 一本色道亚洲精品aⅴ| 亚洲国产精品人人做人人爽| 欧美日韩精品三区| 麻豆精品视频在线观看免费| 久久夜色精品一区| aaa国产一区| 婷婷国产v国产偷v亚洲高清| 色噜噜狠狠成人中文综合 | 丁香亚洲综合激情啪啪综合| 中文字幕二三区不卡| 99久久精品情趣| 一区二区三区不卡在线观看| 91精品国产麻豆国产自产在线| 久久精品噜噜噜成人88aⅴ| 久久久久亚洲蜜桃| 色女孩综合影院| 七七婷婷婷婷精品国产| 国产午夜精品一区二区三区四区| 国产精品亚洲视频| 日韩一区在线看| 欧美一区二区人人喊爽| 国产69精品一区二区亚洲孕妇| 亚洲人成亚洲人成在线观看图片 | 日韩欧美国产系列| 国产盗摄一区二区三区| 亚洲激情一二三区| 欧美大片一区二区| 一本久道久久综合中文字幕| 亚洲国产一二三| 26uuu国产日韩综合| 在线视频你懂得一区二区三区| 日韩1区2区日韩1区2区| 三级亚洲高清视频| 精品999久久久| 在线日韩一区二区| 国产麻豆精品久久一二三| 一区二区三区四区不卡在线| 精品国产一区二区三区忘忧草| 色欧美日韩亚洲| 免费在线看一区| 亚洲国产精品成人综合色在线婷婷| 91激情五月电影| 国产成人精品网址| 麻豆国产精品官网| 亚洲一卡二卡三卡四卡五卡| 国产日韩影视精品| 日韩午夜小视频| 欧美日韩的一区二区| 国产成人精品亚洲777人妖 | 日韩在线观看一区二区| 国产精品不卡在线观看| 日韩欧美一区在线| 欧美视频第二页| 91蝌蚪porny| 成人国产精品视频| 精品一区二区成人精品| 午夜电影网亚洲视频| 中文字幕一区二区三区在线不卡| 日韩欧美一级二级三级| 欧美视频中文字幕| 色婷婷av久久久久久久| 成人综合激情网| 国产精品综合二区| 天天色图综合网| 中文字幕av在线一区二区三区| 精品国偷自产国产一区| 欧美一区二区三区免费观看视频| 69堂精品视频| 91精品视频网| 91精品国产欧美一区二区18| 欧美日韩在线不卡| 欧美主播一区二区三区| 在线视频欧美区| 欧美日韩精品免费| 91精品欧美久久久久久动漫| 欧美日韩国产高清一区| 欧美久久久久中文字幕| 欧美丰满少妇xxxxx高潮对白| 欧美日韩精品一区二区三区蜜桃| 在线不卡免费av| 日韩免费视频一区| 精品成人免费观看| 91精品视频网| 精品av久久707| 国产欧美日韩另类一区| 国产欧美视频一区二区| 国产精品三级av| 一区二区三区成人在线视频| 亚洲老司机在线| 午夜影视日本亚洲欧洲精品| 蜜臀99久久精品久久久久久软件 | 视频一区欧美日韩| 麻豆精品在线视频| 丁香另类激情小说| 91色porny在线视频| 精品1区2区3区| 精品久久久久久久久久久久包黑料| 精品国产免费人成电影在线观看四季 | 国产精品夫妻自拍| 一区二区三区在线观看视频| 日韩激情在线观看| 久久99热这里只有精品| 国产精品18久久久久久久久| 成人在线一区二区三区| 91丨九色丨国产丨porny| 欧美三级电影一区| 国产三级欧美三级| 五月天精品一区二区三区| 东方欧美亚洲色图在线| 3d成人动漫网站| 亚洲日本乱码在线观看| 极品尤物av久久免费看| 欧美性生活一区| 国产精品久久久久久妇女6080| 奇米精品一区二区三区四区| 91在线国产福利| 国产免费观看久久| 老司机精品视频一区二区三区| 91在线免费看| 久久精品在线观看| 久久精品国产亚洲5555| 色网站国产精品| 国产精品网站在线| 精久久久久久久久久久| 欧美高清一级片在线| 亚洲欧美一区二区三区久本道91 | 国产成人高清视频| 日韩一区二区三区高清免费看看| 夜夜夜精品看看| 色哟哟亚洲精品| 亚洲色图.com| 暴力调教一区二区三区| 久久亚洲综合av| 精品亚洲成av人在线观看| 91精品国产综合久久精品app| 一区二区三区四区不卡视频| 91在线观看成人| 亚洲国产精品99久久久久久久久| 精品一二线国产| 精品国产免费人成在线观看| 麻豆成人在线观看| 日韩三级在线免费观看| 日本亚洲最大的色成网站www| 欧美亚洲国产一卡| 亚洲影院在线观看| 欧美又粗又大又爽| 亚洲高清免费视频| 欧美日韩成人一区二区| 亚洲一区二区三区四区的 | 日本欧美一区二区三区乱码| 欧美精品日日鲁夜夜添| 日日夜夜免费精品视频| 5566中文字幕一区二区电影| 日本成人在线网站| 日韩欧美亚洲另类制服综合在线 | 岛国一区二区在线观看| 国产精品久久久久久久久图文区| 成人伦理片在线| 亚洲男人的天堂在线aⅴ视频| 99久久亚洲一区二区三区青草| ...xxx性欧美| 日本精品裸体写真集在线观看| 亚洲午夜av在线| 欧美一级高清片| 国产高清精品久久久久| 国产精品成人在线观看| 在线欧美小视频| 秋霞电影一区二区| 国产夜色精品一区二区av| 成人三级伦理片| 一区二区三区鲁丝不卡| 91精品国模一区二区三区| 久久国内精品自在自线400部| 国产亚洲一本大道中文在线| 91视频免费看| 日韩高清电影一区| 国产精品视频在线看| 欧美私模裸体表演在线观看| 精品一区二区三区的国产在线播放|