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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? stylesheet.java

?? JAVA的一些源碼 JAVA2 STANDARD EDITION DEVELOPMENT KIT 5.0
?? JAVA
?? 第 1 頁 / 共 5 頁
字號:
		Object cssKey = css.styleConstantsKeyToCSSKey		                    ((StyleConstants)key);		if (cssKey != null) {		    Object value = super.getAttribute(cssKey);		    if (value != null) {			return css.cssValueToStyleConstantsValue			                   ((StyleConstants)key, value);		    }		}	    }	    return super.getAttribute(key);	}    }    /**     * Small set of attributes that does conversion of requests     * for attributes of type StyleConstants.     */    class SmallConversionSet extends SmallAttributeSet {	/**	 * Creates a new attribute set based on a supplied set of attributes.	 *	 * @param source the set of attributes	 */        public SmallConversionSet(AttributeSet attrs) {	    super(attrs);	} 	        /**         * Checks whether a given attribute is defined.         *         * @param key the attribute key         * @return true if the attribute is defined         * @see AttributeSet#isDefined         */        public boolean isDefined(Object key) {	    if (key instanceof StyleConstants) {		Object cssKey = css.styleConstantsKeyToCSSKey		                    ((StyleConstants)key);		if (cssKey != null) {		    return super.isDefined(cssKey);		}	    }	    return super.isDefined(key);	}        /**         * Gets the value of an attribute.         *         * @param key the attribute name         * @return the attribute value         * @see AttributeSet#getAttribute         */        public Object getAttribute(Object key) {	    if (key instanceof StyleConstants) {		Object cssKey = css.styleConstantsKeyToCSSKey		                    ((StyleConstants)key);		if (cssKey != null) {		    Object value = super.getAttribute(cssKey);		    if (value != null) {			return css.cssValueToStyleConstantsValue			                   ((StyleConstants)key, value);		    }		}	    }	    return super.getAttribute(key);	}    }    // ---- Resource handling ----------------------------------------    /**     * Fetches the font to use for the given set of attributes.     */    public Font getFont(AttributeSet a) {	return css.getFont(this, a, 12, this);    }    /**     * Takes a set of attributes and turn it into a foreground color     * specification.  This might be used to specify things     * like brighter, more hue, etc.     *     * @param a the set of attributes     * @return the color     */    public Color getForeground(AttributeSet a) {	Color c = css.getColor(a, CSS.Attribute.COLOR);	if (c == null) {	    return Color.black;	}	return c;    }    /**     * Takes a set of attributes and turn it into a background color     * specification.  This might be used to specify things     * like brighter, more hue, etc.     *     * @param a the set of attributes     * @return the color     */    public Color getBackground(AttributeSet a) {	return css.getColor(a, CSS.Attribute.BACKGROUND_COLOR);    }    /**     * Fetches the box formatter to use for the given set     * of CSS attributes.     */    public BoxPainter getBoxPainter(AttributeSet a) {	return new BoxPainter(a, css, this);    }    /**     * Fetches the list formatter to use for the given set     * of CSS attributes.     */    public ListPainter getListPainter(AttributeSet a) {	return new ListPainter(a, this);    }    /**     * Sets the base font size, with valid values between 1 and 7.     */    public void setBaseFontSize(int sz) {	css.setBaseFontSize(sz);    }    /**     * Sets the base font size from the passed in String. The string     * can either identify a specific font size, with legal values between     * 1 and 7, or identifiy a relative font size such as +1 or -2.     */    public void setBaseFontSize(String size) {	css.setBaseFontSize(size);    }    public static int getIndexOfSize(float pt) {	return CSS.getIndexOfSize(pt, sizeMapDefault);    }    /**     * Returns the point size, given a size index.     */    public float getPointSize(int index) {	return css.getPointSize(index, this);    }    /**     *  Given a string such as "+2", "-2", or "2",     *  returns a point size value.     */    public float getPointSize(String size) {	return css.getPointSize(size, this);    }    /**     * Converts a color string such as "RED" or "#NNNNNN" to a Color.     * Note: This will only convert the HTML3.2 color strings     *       or a string of length 7;     *       otherwise, it will return null.     */    public Color stringToColor(String string) {	return CSS.stringToColor(string);    }    /**     * Returns the ImageIcon to draw in the background for     * <code>attr</code>.     */    ImageIcon getBackgroundImage(AttributeSet attr) {	Object value = attr.getAttribute(CSS.Attribute.BACKGROUND_IMAGE);	if (value != null) {	    return ((CSS.BackgroundImage)value).getImage(getBase());	}	return null;    }    /**     * Adds a rule into the StyleSheet.     *     * @param selector the selector to use for the rule.     *  This will be a set of simple selectors, and must     *  be a length of 1 or greater.     * @param declaration the set of CSS attributes that     *  make up the rule.     */    void addRule(String[] selector, AttributeSet declaration,		 boolean isLinked) {	int n = selector.length;	StringBuffer sb = new StringBuffer();	sb.append(selector[0]);	for (int counter = 1; counter < n; counter++) {	    sb.append(' ');	    sb.append(selector[counter]);	}	String selectorName = sb.toString();	Style rule = getStyle(selectorName);	if (rule == null) {	    // Notice how the rule is first created, and it not part of	    // the synchronized block. It is done like this as creating	    // a new rule will fire a ChangeEvent. We do not want to be	    // holding the lock when calling to other objects, it can	    // result in deadlock.	    Style altRule = addStyle(selectorName, null);	    synchronized(this) {		SelectorMapping mapping = getRootSelectorMapping();		for (int i = n - 1; i >= 0; i--) {		    mapping = mapping.getChildSelectorMapping                                      (selector[i], true);		}		rule = mapping.getStyle();		if (rule == null) {                    rule = altRule;                    mapping.setStyle(rule);		    refreshResolvedRules(selectorName, selector, rule,					 mapping.getSpecificity());		}	    }	}	if (isLinked) {	    rule = getLinkedStyle(rule);	}	rule.addAttributes(declaration);    }    //    // The following gaggle of methods is used in maintaing the rules from    // the sheet.    //    /**     * Updates the attributes of the rules to reference any related     * rules in <code>ss</code>.     */    private synchronized void linkStyleSheetAt(StyleSheet ss, int index) {	if (resolvedStyles.size() > 0) {	    Enumeration values = resolvedStyles.elements();	    while (values.hasMoreElements()) {		ResolvedStyle rule = (ResolvedStyle)values.nextElement();		rule.insertExtendedStyleAt(ss.getRule(rule.getName()),					   index);	    }	}    }    /**     * Removes references to the rules in <code>ss</code>.     * <code>index</code> gives the index the StyleSheet was at, that is     * how many StyleSheets had been added before it.     */    private synchronized void unlinkStyleSheet(StyleSheet ss, int index) {	if (resolvedStyles.size() > 0) {	    Enumeration values = resolvedStyles.elements();	    while (values.hasMoreElements()) {		ResolvedStyle rule = (ResolvedStyle)values.nextElement();		rule.removeExtendedStyleAt(index);	    }	}    }    /**     * Returns the simple selectors that comprise selector.     */    /* protected */    String[] getSimpleSelectors(String selector) {	selector = cleanSelectorString(selector);	SearchBuffer sb = SearchBuffer.obtainSearchBuffer();	Vector selectors = sb.getVector();	int lastIndex = 0;	int length = selector.length();	while (lastIndex != -1) {	    int newIndex = selector.indexOf(' ', lastIndex);	    if (newIndex != -1) {		selectors.addElement(selector.substring(lastIndex, newIndex));		if (++newIndex == length) {		    lastIndex = -1;		}		else {		    lastIndex = newIndex;		}	    }	    else {		selectors.addElement(selector.substring(lastIndex));		lastIndex = -1;	    }	}	String[] retValue = new String[selectors.size()];	selectors.copyInto(retValue);	SearchBuffer.releaseSearchBuffer(sb);	return retValue;    }    /**     * Returns a string that only has one space between simple selectors,     * which may be the passed in String.     */    /*protected*/ String cleanSelectorString(String selector) {	boolean lastWasSpace = true;	for (int counter = 0, maxCounter = selector.length();	     counter < maxCounter; counter++) {	    switch(selector.charAt(counter)) {	    case ' ':		if (lastWasSpace) {		    return _cleanSelectorString(selector);		}		lastWasSpace = true;		break;	    case '\n':	    case '\r':	    case '\t':		return _cleanSelectorString(selector);	    default:		lastWasSpace = false;	    }	}	if (lastWasSpace) {	    return _cleanSelectorString(selector);	}	// It was fine.	return selector;    }    /**     * Returns a new String that contains only one space between non     * white space characters.     */    private String _cleanSelectorString(String selector) {	SearchBuffer sb = SearchBuffer.obtainSearchBuffer();	StringBuffer buff = sb.getStringBuffer();	boolean lastWasSpace = true;	int lastIndex = 0;	char[] chars = selector.toCharArray();	int numChars = chars.length;	String retValue = null;	try {	    for (int counter = 0; counter < numChars; counter++) {		switch(chars[counter]) {		case ' ':		    if (!lastWasSpace) {			lastWasSpace = true;			if (lastIndex < counter) {			    buff.append(chars, lastIndex,					1 + counter - lastIndex);			}		    }		    lastIndex = counter + 1;		    break;		case '\n':		case '\r':		case '\t':		    if (!lastWasSpace) {			lastWasSpace = true;			if (lastIndex < counter) {			    buff.append(chars, lastIndex,					counter - lastIndex);			    buff.append(' ');			}		    }		    lastIndex = counter + 1;		    break;		default:		    lastWasSpace = false;		    break;		}	    }	    if (lastWasSpace && buff.length() > 0) {		// Remove last space.		buff.setLength(buff.length() - 1);	    }	    else if (lastIndex < numChars) {		buff.append(chars, lastIndex, numChars - lastIndex);	    }	    retValue = buff.toString();	}	finally {	    SearchBuffer.releaseSearchBuffer(sb);	}	return retValue;    }    /**     * Returns the root selector mapping that all selectors are relative     * to. This is an inverted graph of the selectors.     */    private SelectorMapping getRootSelectorMapping() {	return selectorMapping;    }    /**     * Returns the specificity of the passed in String. It assumes the     * passed in string doesn't contain junk, that is each selector is

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日日嗨av一区二区三区四区| 3d动漫精品啪啪| 欧美性三三影院| 91精品国产91热久久久做人人| 精品伦理精品一区| 国产精品久久久久影院亚瑟| 亚洲成人动漫在线观看| 麻豆国产精品一区二区三区| 成人午夜电影久久影院| 欧美日韩免费一区二区三区| 国产午夜精品福利| 亚洲国产视频网站| 国产成人在线视频网址| 欧美日韩在线观看一区二区| 久久久久久免费网| 亚洲国产精品一区二区久久| 激情文学综合网| 91久久线看在观草草青青| 精品国产一二三| 亚洲乱码日产精品bd| 精品一区二区三区免费| 欧美性受极品xxxx喷水| 国产日韩精品一区二区浪潮av| 亚洲免费在线视频一区 二区| 久久国产精品99久久久久久老狼| 91丨九色丨国产丨porny| 欧美电视剧在线观看完整版| 亚洲一区二区三区中文字幕在线| 国产成人自拍高清视频在线免费播放| 欧美日韩电影一区| √…a在线天堂一区| 激情偷乱视频一区二区三区| 精品视频全国免费看| 日本一区二区三区视频视频| 蜜臀av一区二区在线免费观看| 色综合夜色一区| 亚洲国产精品二十页| 美女视频黄 久久| 在线观看不卡一区| 国产精品欧美一区喷水| 久久精品二区亚洲w码| 欧美午夜片在线看| 亚洲视频一区二区在线观看| 激情欧美一区二区三区在线观看| 欧美精品乱人伦久久久久久| 一区二区三区av电影| 大白屁股一区二区视频| 久久一留热品黄| 免费人成精品欧美精品| 欧美精品v日韩精品v韩国精品v| 亚洲免费观看高清完整版在线观看 | 亚洲成人免费视| 99re成人精品视频| 国产欧美一区在线| 国产在线不卡一区| 精品国产99国产精品| 热久久国产精品| 777a∨成人精品桃花网| 亚洲成人精品在线观看| 欧美中文字幕一二三区视频| 亚洲欧洲成人精品av97| 成人av午夜影院| 国产精品色哟哟网站| 成人免费不卡视频| 亚洲一区二区在线播放相泽| 91蜜桃视频在线| 国产精品日产欧美久久久久| 成人午夜短视频| 日韩一区欧美小说| 一本久道久久综合中文字幕| 亚洲日本在线天堂| 91久久精品一区二区二区| 亚洲乱码精品一二三四区日韩在线| 99精品视频一区二区| 亚洲欧洲一区二区三区| 91影视在线播放| 一区二区三区久久| 欧美日产在线观看| 美日韩一区二区| 2021中文字幕一区亚洲| 国产69精品久久99不卡| 最新中文字幕一区二区三区| 91女厕偷拍女厕偷拍高清| 亚洲精选一二三| 欧美妇女性影城| 麻豆精品视频在线观看免费| 久久综合久久99| 成人sese在线| 亚洲韩国精品一区| 日韩一区二区三区四区| 国模冰冰炮一区二区| 国产香蕉久久精品综合网| 成人黄动漫网站免费app| 亚洲欧美日韩系列| 在线不卡a资源高清| 日韩影院免费视频| 26uuu另类欧美| 成人av免费在线播放| 亚洲精品日日夜夜| 日韩欧美综合在线| 成人国产一区二区三区精品| 一区二区三区在线播放| 欧美一区二区视频在线观看2020 | 欧美电视剧在线看免费| 国产成人av一区| 亚洲最新视频在线播放| 91精品啪在线观看国产60岁| 久久99精品久久久| 中文字幕av资源一区| 欧美日韩一本到| 国产一区二区三区不卡在线观看| 亚洲少妇最新在线视频| 欧美日韩国产美| 国产九色sp调教91| 一区二区三区美女视频| 精品美女被调教视频大全网站| 91婷婷韩国欧美一区二区| 日本欧美大码aⅴ在线播放| 国产日韩av一区| 欧美日韩免费在线视频| 国产成a人亚洲| 首页国产欧美久久| 免费精品视频在线| 亚洲欧美偷拍卡通变态| 日韩欧美激情在线| 91老司机福利 在线| 九一九一国产精品| 一区二区三区免费网站| 久久亚洲综合色| 欧美日韩一区二区在线视频| 国产凹凸在线观看一区二区| 亚洲动漫第一页| 国产精品护士白丝一区av| 日韩欧美卡一卡二| 91极品视觉盛宴| 成人性视频免费网站| 日韩avvvv在线播放| 亚洲人一二三区| 国产亚洲一区二区三区在线观看 | 另类小说视频一区二区| 亚洲欧美日韩综合aⅴ视频| 亚洲色图视频免费播放| 2022国产精品视频| 欧美酷刑日本凌虐凌虐| 91女人视频在线观看| 国产精选一区二区三区| 奇米影视一区二区三区小说| 一区二区三区四区视频精品免费 | 国产**成人网毛片九色| 蜜桃av一区二区三区| 亚洲一区二区三区四区的 | 欧洲精品在线观看| 成人av免费在线观看| 国产精品69毛片高清亚洲| 免播放器亚洲一区| 日韩在线一区二区三区| 亚洲精品视频免费看| 国产精品久久久爽爽爽麻豆色哟哟| 精品久久久久久久久久久久久久久| 欧美中文字幕一区二区三区| 99re8在线精品视频免费播放| 丁香婷婷综合激情五月色| 捆绑变态av一区二区三区| 日本色综合中文字幕| 石原莉奈一区二区三区在线观看| 一区二区三区在线看| 亚洲日本在线视频观看| 国产精品久久综合| 国产精品伦理一区二区| 国产精品美女久久久久aⅴ| 国产拍揄自揄精品视频麻豆| 国产日韩欧美一区二区三区乱码| 日韩欧美一二三四区| 日韩一级黄色片| 欧美一二三区精品| 欧美大片在线观看一区二区| 日韩欧美一区在线| 精品国产伦一区二区三区观看体验| 91精品国模一区二区三区| 欧美精品丝袜中出| 7777精品伊人久久久大香线蕉经典版下载 | 国产丝袜欧美中文另类| 久久久久国产精品麻豆ai换脸| 久久精品亚洲麻豆av一区二区 | 风流少妇一区二区| 风流少妇一区二区| 99久久99久久精品免费观看| 97久久超碰国产精品电影| 91网站黄www| 在线观看日韩精品| 911精品产国品一二三产区| 欧美一区二区三区在线电影 | 国产精品一区二区x88av| 国产福利一区二区三区| 波多野结衣中文字幕一区 | 亚洲国产cao| 日本欧美一区二区三区乱码| 欧美最猛性xxxxx直播| 欧美亚洲国产一区二区三区 | 久久99久久99|