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

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

?? basictextui.java

?? java jdk 1.4的源碼
?? JAVA
?? 第 1 頁(yè) / 共 5 頁(yè)
字號(hào):
         * Returns the starting offset into the model for this view.         *         * @return the starting offset         */        public int getStartOffset() {            if (view != null) {                return view.getStartOffset();            }            return getElement().getStartOffset();        }        /**         * Returns the ending offset into the model for this view.         *         * @return the ending offset         */        public int getEndOffset() {            if (view != null) {                return view.getEndOffset();            }            return getElement().getEndOffset();        }        /**         * Gets the element that this view is mapped to.         *         * @return the view         */        public Element getElement() {            if (view != null) {                return view.getElement();            }            return editor.getDocument().getDefaultRootElement();        }        /**         * Breaks this view on the given axis at the given length.         *         * @param axis may be either X_AXIS or Y_AXIS         * @param len specifies where a break is desired in the span         * @param the current allocation of the view         * @return the fragment of the view that represents the given span         *   if the view can be broken, otherwise null         */        public View breakView(int axis, float len, Shape a) {            throw new Error("Can't break root view");        }        /**         * Determines the resizability of the view along the         * given axis.  A value of 0 or less is not resizable.         *         * @param axis may be either X_AXIS or Y_AXIS         * @return the weight         */        public int getResizeWeight(int axis) {            if (view != null) {                return view.getResizeWeight(axis);            }            return 0;        }        /**         * Sets the view size.         *         * @param width the width         * @param height the height         */        public void setSize(float width, float height) {            if (view != null) {                view.setSize(width, height);            }        }        /**         * Fetches the container hosting the view.  This is useful for         * things like scheduling a repaint, finding out the host          * components font, etc.  The default implementation         * of this is to forward the query to the parent view.         *         * @return the container         */        public Container getContainer() {            return editor;        }                /**         * Fetches the factory to be used for building the         * various view fragments that make up the view that         * represents the model.  This is what determines         * how the model will be represented.  This is implemented         * to fetch the factory provided by the associated         * EditorKit unless that is null, in which case this         * simply returns the BasicTextUI itself which allows         * subclasses to implement a simple factory directly without         * creating extra objects.           *         * @return the factory         */        public ViewFactory getViewFactory() {            EditorKit kit = getEditorKit(editor);            ViewFactory f = kit.getViewFactory();            if (f != null) {                return f;            }            return BasicTextUI.this;        }        private View view;    }    /**     * Handles updates from various places.  If the model is changed,     * this class unregisters as a listener to the old model and      * registers with the new model.  If the document model changes,     * the change is forwarded to the root view.  If the focus     * accelerator changes, a new keystroke is registered to request     * focus.     */    class UpdateHandler implements PropertyChangeListener, DocumentListener, LayoutManager2, UIResource {        // --- PropertyChangeListener methods -----------------------        /**         * This method gets called when a bound property is changed.         * We are looking for document changes on the editor.         */        public final void propertyChange(PropertyChangeEvent evt) {            Object oldValue = evt.getOldValue();            Object newValue = evt.getNewValue();	    String propertyName = evt.getPropertyName();            if ((oldValue instanceof Document) || (newValue instanceof Document)) {                if (oldValue != null) {                    ((Document)oldValue).removeDocumentListener(this);                }                if (newValue != null) {                    ((Document)newValue).addDocumentListener(this);		    if ("document".equals(propertyName)) {			BasicTextUI.this.propertyChange(evt);			modelChanged();			return;		    }                }                modelChanged();            }	    if (JTextComponent.FOCUS_ACCELERATOR_KEY.equals(propertyName)) {		updateFocusAcceleratorBinding(true);            } else if ("componentOrientation".equals(propertyName)) {                // Changes in ComponentOrientation require the views to be                // rebuilt.                modelChanged();            } else if ("font".equals(propertyName)) {                modelChanged();            } else if ("transferHandler".equals(propertyName)) {		DropTarget dropTarget = editor.getDropTarget();		if (dropTarget instanceof UIResource) {                    if (defaultDropTargetListener == null) {                        defaultDropTargetListener = new TextDropTargetListener();                    }		    try {			dropTarget.addDropTargetListener(defaultDropTargetListener);		    } catch (TooManyListenersException tmle) {			// should not happen... swing drop target is multicast		    }		}	    }             BasicTextUI.this.propertyChange(evt);        }        // --- DocumentListener methods -----------------------        /**         * The insert notification.  Gets sent to the root of the view structure         * that represents the portion of the model being represented by the         * editor.  The factory is added as an argument to the update so that         * the views can update themselves in a dynamic (not hardcoded) way.         *         * @param e  The change notification from the currently associated         *  document.         * @see DocumentListener#insertUpdate         */        public final void insertUpdate(DocumentEvent e) {	    Document doc = e.getDocument();	    Object o = doc.getProperty("i18n");	    if (o instanceof Boolean) {		Boolean i18nFlag = (Boolean) o;		if (i18nFlag.booleanValue() != i18nView) {		    // i18n flag changed, rebuild the view		    i18nView = i18nFlag.booleanValue();		    modelChanged();		    return;		}	    }	    // normal insert update            Rectangle alloc = (painted) ? getVisibleEditorRect() : null;            rootView.insertUpdate(e, alloc, rootView.getViewFactory());        }        /**         * The remove notification.  Gets sent to the root of the view structure         * that represents the portion of the model being represented by the         * editor.  The factory is added as an argument to the update so that         * the views can update themselves in a dynamic (not hardcoded) way.         *         * @param e  The change notification from the currently associated         *  document.         * @see DocumentListener#removeUpdate         */        public final void removeUpdate(DocumentEvent e) {            Rectangle alloc = (painted) ? getVisibleEditorRect() : null;            rootView.removeUpdate(e, alloc, rootView.getViewFactory());	}        /**         * The change notification.  Gets sent to the root of the view structure         * that represents the portion of the model being represented by the         * editor.  The factory is added as an argument to the update so that         * the views can update themselves in a dynamic (not hardcoded) way.         *         * @param e  The change notification from the currently associated         *  document.         * @see DocumentListener#changeUpdate         */        public final void changedUpdate(DocumentEvent e) {            Rectangle alloc = (painted) ? getVisibleEditorRect() : null;            rootView.changedUpdate(e, alloc, rootView.getViewFactory());        }	// --- LayoutManager2 methods --------------------------------	/**	 * Adds the specified component with the specified name to	 * the layout.	 * @param name the component name	 * @param comp the component to be added	 */	public void addLayoutComponent(String name, Component comp) {	    // not supported	}	/**	 * Removes the specified component from the layout.	 * @param comp the component to be removed	 */	public void removeLayoutComponent(Component comp) {	    if (constraints != null) {		// remove the constraint record		constraints.remove(comp);	    }	}	/**	 * Calculates the preferred size dimensions for the specified 	 * panel given the components in the specified parent container.	 * @param parent the component to be laid out	 *  	 * @see #minimumLayoutSize	 */	public Dimension preferredLayoutSize(Container parent) {	    // should not be called (JComponent uses UI instead)	    return null;	}	/** 	 * Calculates the minimum size dimensions for the specified 	 * panel given the components in the specified parent container.	 * @param parent the component to be laid out	 * @see #preferredLayoutSize	 */	public Dimension minimumLayoutSize(Container parent) {	    // should not be called (JComponent uses UI instead)	    return null;	}	/** 	 * Lays out the container in the specified panel.  This is	 * implemented to position all components that were added	 * with a View object as a constraint.  The current allocation	 * of the associated View is used as the location of the 	 * component.	 * <p>	 * A read-lock is acquired on the document to prevent the	 * view tree from being modified while the layout process	 * is active.	 *	 * @param parent the component which needs to be laid out 	 */	public void layoutContainer(Container parent) {	    if ((constraints != null) && (! constraints.isEmpty())) {		Rectangle alloc = getVisibleEditorRect();		if (alloc != null) {		    Document doc = editor.getDocument();		    if (doc instanceof AbstractDocument) {			((AbstractDocument)doc).readLock();		    }		    try {			rootView.setSize(alloc.width, alloc.height);			Enumeration components = constraints.keys();			while (components.hasMoreElements()) {			    Component comp = (Component) components.nextElement();			    View v = (View) constraints.get(comp);			    Shape ca = calculateViewPosition(alloc, v);			    if (ca != null) {				Rectangle compAlloc = (ca instanceof Rectangle) ? 				    (Rectangle) ca : ca.getBounds();				comp.setBounds(compAlloc);			    }			}		    } finally {			if (doc instanceof AbstractDocument) {			    ((AbstractDocument)doc).readUnlock();			}		    }					}	    }	}	/**	 * Find the Shape representing the given view.	 */	Shape calculateViewPosition(Shape alloc, View v) {	    int pos = v.getStartOffset();	    View child = null;	    for (View parent = rootView; (parent != null) && (parent != v); parent = child) {		int index = parent.getViewIndex(pos, Position.Bias.Forward);		alloc = parent.getChildAllocation(index, alloc);		child = parent.getView(index);	    }	    return (child != null) ? alloc : null;	}	/**	 * Adds the specified component to the layout, using the specified	 * constraint object.  We only store those components that were added	 * with a constraint that is of type View.	 *	 * @param comp the component to be added	 * @param constraint  where/how the component is added to the layout.	 */	public void addLayoutComponent(Component comp, Object constraint) {	    if (constraint instanceof View) {		if (constraints == null) {		    constraints = new Hashtable(7);		}		constraints.put(comp, constraint);	    }	}	/** 	 * Returns the maximum size of this component.	 * @see java.awt.Component#getMinimumSize()	 * @see java.awt.Component#getPreferredSize()	 * @see LayoutManager	 */        public Dimension maximumLayoutSize(Container target) {	    // should not be called (JComponent uses UI instead)	    return null;	}	/**	 * Returns the alignment along the x axis.  This specifies how	 * the component would like to be aligned relative to other 	 * components.  The value should be a number between 0 and 1	 * where 0 represents alignment along the origin, 1 is aligned	 * the furthest away from the origin, 0.5 is centered, etc.	 */        public float getLayoutAlignmentX(Container target) {	    return 0.5f;	}	/**	 * Returns the alignment along the y axis.  This specifies how	 * the component would like to be aligned relative to other 	 * components.  The value should be a number between 0 and 1	 * where 0 represents alignment along the origin, 1 is aligned	 * the furthest away from the origin, 0.5 is centered

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
午夜精品123| 日韩中文字幕麻豆| 国产农村妇女毛片精品久久麻豆 | www成人在线观看| 日韩一区二区在线免费观看| 欧美精品欧美精品系列| 欧美一区二区三区播放老司机| 7777精品伊人久久久大香线蕉的 | 亚洲另类中文字| 亚洲人吸女人奶水| 亚洲一区二区影院| 日本aⅴ亚洲精品中文乱码| 美国十次综合导航| 国产成人免费视频一区| 91网站视频在线观看| 欧美午夜片在线看| 26uuu亚洲婷婷狠狠天堂| 国产喂奶挤奶一区二区三区| 中文字幕亚洲区| 日韩在线一区二区三区| 国产专区欧美精品| 91视视频在线观看入口直接观看www | 裸体在线国模精品偷拍| 国产精品一区三区| 色激情天天射综合网| 日韩一区二区电影在线| 中文字幕一区视频| 午夜国产精品一区| 国产精品一品二品| 欧美三级在线视频| 久久亚洲一区二区三区四区| 18成人在线观看| 麻豆成人免费电影| 成人激情校园春色| 日韩一区二区在线看| 综合网在线视频| 久久99久久久欧美国产| 99久久精品免费看国产免费软件| 欧美日韩亚洲综合| 国产精品久久免费看| 免费成人在线观看视频| 91免费看片在线观看| 久久中文娱乐网| 亚洲综合免费观看高清完整版在线| 韩国三级中文字幕hd久久精品| 日本乱人伦一区| 国产人妖乱国产精品人妖| 日韩电影在线免费观看| 91啪亚洲精品| 国产精品免费久久| 精彩视频一区二区三区| 在线播放国产精品二区一二区四区| 久久久不卡网国产精品二区| 男女性色大片免费观看一区二区 | 亚洲3atv精品一区二区三区| 成人小视频免费在线观看| 欧美一区午夜视频在线观看| 亚洲欧美中日韩| 成人丝袜18视频在线观看| 日韩精品一区二区三区老鸭窝| 一区二区三区四区五区视频在线观看 | 7777精品伊人久久久大香线蕉完整版| 中文天堂在线一区| 国产电影一区在线| 久久久蜜桃精品| 激情亚洲综合在线| 日韩西西人体444www| 性做久久久久久久久| 色欧美日韩亚洲| 国产精品久久久久久久久图文区| 久久97超碰国产精品超碰| 日韩一级片网址| 老司机精品视频线观看86 | 国产精品香蕉一区二区三区| 精品国产乱码久久久久久蜜臀 | 4438x成人网最大色成网站| 香蕉久久夜色精品国产使用方法| 91福利视频网站| 亚洲国产精品综合小说图片区| 欧美网站大全在线观看| 性做久久久久久| 欧美妇女性影城| 看国产成人h片视频| 日韩一区二区电影| 国产寡妇亲子伦一区二区| 国产日韩成人精品| av不卡一区二区三区| 一区二区三区在线观看国产| 欧美日韩国产大片| 久久99久久精品| 国产精品久久久久久久久图文区 | 中文天堂在线一区| 欧美综合视频在线观看| 亚洲国产综合在线| 日韩亚洲欧美成人一区| 国产99久久久国产精品潘金| 中文字幕一区二区三区四区不卡| 91久久精品一区二区三| 免费一级欧美片在线观看| 国产亲近乱来精品视频| 欧美性猛片xxxx免费看久爱| 奇米精品一区二区三区在线观看 | 亚洲精品免费电影| 欧美一级国产精品| 成人免费的视频| 日本午夜一本久久久综合| 国产欧美精品日韩区二区麻豆天美| a在线播放不卡| 蜜桃视频一区二区| 亚洲精品五月天| 欧美变态tickling挠脚心| 99在线精品观看| 美美哒免费高清在线观看视频一区二区 | 欧美一区二区三区在| 国产中文字幕精品| 夜夜嗨av一区二区三区中文字幕| 精品国内二区三区| 91久久线看在观草草青青| 久久99久久久欧美国产| 伊人婷婷欧美激情| 国产日韩欧美高清在线| 在线播放一区二区三区| 91在线视频播放地址| 麻豆成人久久精品二区三区红 | 国产精品一卡二卡在线观看| 亚洲一区二区三区四区中文字幕| 国产三级一区二区| 日韩一区二区三区视频| 色噜噜狠狠成人中文综合| 国产一区二区久久| 奇米精品一区二区三区四区| 国产精品久久久久永久免费观看| 91精品国产综合久久精品app| www.欧美亚洲| 国产91在线观看丝袜| 国内外成人在线| 免费看欧美女人艹b| 无码av免费一区二区三区试看 | 91亚洲精品乱码久久久久久蜜桃 | 午夜一区二区三区视频| 亚洲精品视频在线观看免费| 欧美国产欧美综合| 欧美韩国一区二区| 国产精品久久久久久久久免费丝袜 | 亚洲国产电影在线观看| 精品久久久久久久久久久久久久久| 欧美亚洲动漫精品| 在线一区二区三区四区五区| av男人天堂一区| 色欲综合视频天天天| 不卡影院免费观看| 91麻豆精东视频| 日本精品裸体写真集在线观看| 91亚洲资源网| 欧美在线视频日韩| 91福利社在线观看| 欧美色手机在线观看| 欧美人动与zoxxxx乱| 欧美裸体一区二区三区| 正在播放一区二区| 91精品国产综合久久久久| 日韩欧美123| 欧美国产精品中文字幕| 综合自拍亚洲综合图不卡区| 夜夜嗨av一区二区三区四季av| 亚洲一线二线三线视频| 午夜成人在线视频| 国模冰冰炮一区二区| 成人性视频免费网站| 在线欧美日韩精品| 91精品福利在线一区二区三区| 久久无码av三级| 国产精品对白交换视频| 亚洲一级二级在线| 极品销魂美女一区二区三区| 夫妻av一区二区| 在线日韩av片| 久久影音资源网| 亚洲免费成人av| 免费在线成人网| 91视频观看视频| 欧美一级欧美一级在线播放| 欧美精品一区二区三区四区| 国产精品久久久久三级| 午夜欧美在线一二页| 黑人巨大精品欧美一区| 色婷婷综合久久久中文字幕| 精品三级在线看| 亚洲最大色网站| 福利视频网站一区二区三区| 欧美日韩精品欧美日韩精品一| 国产亚洲欧洲一区高清在线观看| 亚洲午夜电影网| 丰满白嫩尤物一区二区| 7777精品伊人久久久大香线蕉的| 亚洲综合男人的天堂| 国产电影精品久久禁18| 欧美日韩在线电影| 亚洲欧美怡红院| 国产成人在线视频网站|