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

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

?? synthparser.java

?? JAVA的一些源碼 JAVA2 STANDARD EDITION DEVELOPMENT KIT 5.0
?? JAVA
?? 第 1 頁 / 共 3 頁
字號:
/* * @(#)SynthParser.java	1.15 04/04/16 * * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. */package javax.swing.plaf.synth;import org.xml.sax.*;import java.awt.*;import java.io.*;import java.lang.reflect.*;import java.net.*;import java.text.*;import java.util.*;import java.util.regex.*;import javax.swing.*;import javax.swing.plaf.*;import javax.xml.parsers.*;import com.sun.beans.ObjectHandler;import sun.swing.plaf.synth.*;/** * @version 1.15, 04/16/04 */class SynthParser extends HandlerBase {    //    // Known element names    //    private static final String ELEMENT_SYNTH = "synth";    private static final String ELEMENT_STYLE = "style";    private static final String ELEMENT_STATE = "state";    private static final String ELEMENT_FONT = "font";    private static final String ELEMENT_COLOR = "color";    private static final String ELEMENT_IMAGE_PAINTER = "imagePainter";    private static final String ELEMENT_PAINTER = "painter";    private static final String ELEMENT_PROPERTY = "property";    private static final String ELEMENT_SYNTH_GRAPHICS = "graphicsUtils";    private static final String ELEMENT_IMAGE_ICON = "imageIcon";    private static final String ELEMENT_BIND = "bind";    private static final String ELEMENT_BIND_KEY = "bindKey";    private static final String ELEMENT_INSETS = "insets";    private static final String ELEMENT_OPAQUE = "opaque";    private static final String ELEMENT_DEFAULTS_PROPERTY =                                        "defaultsProperty";    private static final String ELEMENT_INPUT_MAP = "inputMap";    private static final String ELEMENT_BACKGROUND_IMAGE = "backgroundImage";    //    // Known attribute names    //    private static final String ATTRIBUTE_ACTION = "action";    private static final String ATTRIBUTE_ID = "id";    private static final String ATTRIBUTE_IDREF = "idref";    private static final String ATTRIBUTE_CLONE = "clone";    private static final String ATTRIBUTE_VALUE = "value";    private static final String ATTRIBUTE_NAME = "name";    private static final String ATTRIBUTE_STYLE = "style";    private static final String ATTRIBUTE_SIZE = "size";    private static final String ATTRIBUTE_TYPE = "type";    private static final String ATTRIBUTE_TOP = "top";    private static final String ATTRIBUTE_LEFT = "left";    private static final String ATTRIBUTE_BOTTOM = "bottom";    private static final String ATTRIBUTE_RIGHT = "right";    private static final String ATTRIBUTE_KEY = "key";    private static final String ATTRIBUTE_SOURCE_INSETS = "sourceInsets";    private static final String ATTRIBUTE_DEST_INSETS = "destinationInsets";    private static final String ATTRIBUTE_PATH = "path";    private static final String ATTRIBUTE_STRETCH = "stretch";    private static final String ATTRIBUTE_PAINT_CENTER = "paintCenter";    private static final String ATTRIBUTE_METHOD = "method";    private static final String ATTRIBUTE_DIRECTION = "direction";    /**     * Lazily created, used for anything we don't understand.     */    private ObjectHandler _handler;    /**     * Indicates the depth of how many elements we've encountered but don't     * understand. This is used when forwarding to beans persistance to know     * when we hsould stop forwarding.     */    private int _depth;    /**     * Factory that new styles are added to.     */    private DefaultSynthStyleFactory _factory;    /**     * Array of state infos for the current style. These are pushed to the     * style when </style> is received.     */    private java.util.List _stateInfos;    /**     * Current style.     */    private ParsedSynthStyle _style;    /**     * Current state info.     */    private ParsedSynthStyle.StateInfo _stateInfo;    /**     * Bindings for the current InputMap     */    private java.util.List _inputMapBindings;    /**     * ID for the input map. This is cached as     * the InputMap is created AFTER the inputMapProperty has ended.     */    private String _inputMapID;    /**     * Object references outside the scope of persistance.     */    private Map _mapping;    /**     * Based used to resolve paths.     */    private Class _resourceBase;    /**     * List of ColorTypes. This is populated in startColorType.     */    private java.util.List _colorTypes;    /**     * defaultsPropertys are placed here.     */    private Map _defaultsMap;    /**     * List of SynthStyle.Painters that will be applied to the current style.     */    private java.util.List _stylePainters;    /**     * List of SynthStyle.Painters that will be applied to the current state.     */    private java.util.List _statePainters;    SynthParser() {        _mapping = new HashMap();        _stateInfos = new ArrayList();        _colorTypes = new ArrayList();        _inputMapBindings = new ArrayList();        _stylePainters = new ArrayList();        _statePainters = new ArrayList();    }    /**     * Parses a set of styles from <code>inputStream</code>, adding the     * resulting styles to the passed in DefaultSynthStyleFactory.     *     * @param inputStream XML document containing the styles to read     * @param factory DefaultSynthStyleFactory that new styles are added to     * @param resourceBase Class used to resolve any resources, such as Images     * @param defaultsMap Map that UIDefaults properties are placed in     */    public void parse(InputStream inputStream,                      DefaultSynthStyleFactory factory,                      Class resourceBase, Map defaultsMap)                      throws ParseException, IllegalArgumentException {        if (inputStream == null || factory == null || resourceBase == null) {            throw new IllegalArgumentException(                "You must supply an InputStream;, Class and StyleFactory");        }        _factory = factory;        _resourceBase = resourceBase;        _defaultsMap = defaultsMap;        try {            try {                SAXParser saxParser = SAXParserFactory.newInstance().                                                   newSAXParser();                saxParser.parse(new BufferedInputStream(inputStream), this);            } catch (ParserConfigurationException e) {                throw new ParseException("Error parsing: " + e, 0);            }             catch (SAXException se) {                throw new ParseException("Error parsing: " + se + " " +                                          se.getException(), 0);            }            catch (IOException ioe) {                 throw new ParseException("Error parsing: " + ioe, 0);            }        } finally {            reset();        }    }    /**     * Returns the path to a resource.     */    private URL getResource(String path) {        return _resourceBase.getResource(path);    }    /**     * Clears our internal state.     */    private void reset() {        _handler = null;        _depth = 0;        _mapping.clear();        _stateInfos.clear();        _colorTypes.clear();        _statePainters.clear();        _stylePainters.clear();    }    /**     * Returns true if we are forwarding to persistance.     */    private boolean isForwarding() {        return (_depth > 0);    }    /**     * Handles beans persistance.     */    private ObjectHandler getHandler() {        if (_handler == null) {            _handler = new ObjectHandler();        }        return _handler;    }    /**     * If <code>value</code> is an instance of <code>type</code> it is     * returned, otherwise a SAXException is thrown.     */    private Object checkCast(Object value, Class type) throws SAXException {        if (!type.isInstance(value)) {            throw new SAXException("Expected type " + type + " got " +                                   value.getClass());        }        return value;    }    /**     * Returns an object created with id=key. If the object is not of     * type type, this will throw an exception.     */    private Object lookup(String key, Class type) throws SAXException {        Object value = null;        if (_handler != null) {            if ((value = _handler.lookup(key)) != null) {                return checkCast(value, type);            }        }        value = _mapping.get(key);        if (value == null) {            throw new SAXException("ID " + key + " has not been defined");        }        return checkCast(value, type);    }    /**     * Registers an object by name. This will throw an exception if an     * object has already been registered under the given name.     */    private void register(String key, Object value) throws SAXException {        if (key != null) {            if (_mapping.get(key) != null ||                     (_handler != null && _handler.lookup(key) != null)) {                throw new SAXException("ID " + key + " is already defined");            }            _mapping.put(key, value);        }    }    /**     * Convenience method to return the next int, or throw if there are no     * more valid ints.     */    private int nextInt(StringTokenizer tok, String errorMsg) throws                   SAXException {        if (!tok.hasMoreTokens()) {            throw new SAXException(errorMsg);        }        try {            return Integer.parseInt(tok.nextToken());        } catch (NumberFormatException nfe) {            throw new SAXException(errorMsg);        }    }    /**     * Convenience method to return an Insets object.     */    private Insets parseInsets(String insets, String errorMsg) throws                        SAXException {        StringTokenizer tokenizer = new StringTokenizer(insets);        return new Insets(nextInt(tokenizer, errorMsg),                          nextInt(tokenizer, errorMsg),                          nextInt(tokenizer, errorMsg),                          nextInt(tokenizer, errorMsg));    }    //    // The following methods are invoked from startElement/stopElement    //    private void startStyle(AttributeList attributes) throws SAXException {        String id = null;        _style = null;        for(int i = attributes.getLength() - 1; i >= 0; i--) {            String key = attributes.getName(i);            if (key.equals(ATTRIBUTE_CLONE)) {                _style = (ParsedSynthStyle)((ParsedSynthStyle)lookup(                         attributes.getValue(i), ParsedSynthStyle.class)).                         clone();            }            else if (key.equals(ATTRIBUTE_ID)) {                id = attributes.getValue(i);            }        }        if (_style == null) {            _style = new ParsedSynthStyle();        }        register(id, _style);    }    private void endStyle() throws SAXException {        int size = _stylePainters.size();        if (size > 0) {            _style.setPainters((ParsedSynthStyle.PainterInfo[])                  _stylePainters.toArray(new ParsedSynthStyle.                  PainterInfo[size]));            _stylePainters.clear();        }        size = _stateInfos.size();        if (size > 0) {            _style.setStateInfo((ParsedSynthStyle.StateInfo[])_stateInfos.                 toArray(new ParsedSynthStyle.StateInfo[size]));            _stateInfos.clear();        }        _style = null;    }    private void startState(AttributeList attributes) throws SAXException {        ParsedSynthStyle.StateInfo stateInfo = null;        int state = 0;        String id = null;        _stateInfo = null;        for(int i = attributes.getLength() - 1; i >= 0; i--) {            String key = attributes.getName(i);            if (key.equals(ATTRIBUTE_ID)) {                id = attributes.getValue(i);            }            else if (key.equals(ATTRIBUTE_IDREF)) {                _stateInfo = (ParsedSynthStyle.StateInfo)lookup(                   attributes.getValue(i), ParsedSynthStyle.StateInfo.class);            }            else if (key.equals(ATTRIBUTE_CLONE)) {                _stateInfo = (ParsedSynthStyle.StateInfo)((ParsedSynthStyle.                             StateInfo)lookup(attributes.getValue(i),                             ParsedSynthStyle.StateInfo.class)).clone();            }            else if (key.equals(ATTRIBUTE_VALUE)) {                StringTokenizer tokenizer = new StringTokenizer(                                   attributes.getValue(i));                while (tokenizer.hasMoreTokens()) {                    String stateString = tokenizer.nextToken().toUpperCase().                                                   intern();                    if (stateString == "ENABLED") {                        state |= SynthConstants.ENABLED;                    }                    else if (stateString == "MOUSE_OVER") {                        state |= SynthConstants.MOUSE_OVER;                    }                    else if (stateString == "PRESSED") {                        state |= SynthConstants.PRESSED;                    }                    else if (stateString == "DISABLED") {                        state |= SynthConstants.DISABLED;                    }                    else if (stateString == "FOCUSED") {                        state |= SynthConstants.FOCUSED;                    }                    else if (stateString == "SELECTED") {

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲福利一二三区| 亚洲男人天堂av网| 欧美理论片在线| jlzzjlzz亚洲女人18| 国产河南妇女毛片精品久久久| 久久精品久久99精品久久| 午夜不卡av在线| 亚洲国产另类精品专区| 首页亚洲欧美制服丝腿| 丝袜美腿亚洲色图| 日本aⅴ精品一区二区三区| 三级在线观看一区二区 | 久久久久久9999| 精品裸体舞一区二区三区| 91精品综合久久久久久| 日韩一区二区三区精品视频| 日韩三级精品电影久久久| 精品久久久久久无| 国产精品伦一区二区三级视频| 中文字幕人成不卡一区| 亚洲图片欧美色图| 日韩av在线免费观看不卡| 久久精品国产成人一区二区三区 | 国产在线视频精品一区| 国产精品性做久久久久久| 成人动漫一区二区| 欧美日韩三级视频| 精品福利av导航| 中文字幕亚洲区| 午夜精品123| 国产风韵犹存在线视精品| 色就色 综合激情| 欧美大尺度电影在线| 国产精品久久久久久久久搜平片| 亚洲天堂免费看| 免费成人结看片| av在线一区二区三区| 欧美日韩国产片| 欧美激情一区三区| 亚洲成人777| 国产激情视频一区二区在线观看| 91在线免费播放| 欧美一区二区啪啪| 最新热久久免费视频| 日韩高清在线一区| 成人激情电影免费在线观看| 777xxx欧美| 自拍偷拍欧美精品| 国产一区二区三区四区五区入口 | 亚洲精品久久久蜜桃| 蜜臂av日日欢夜夜爽一区| 99这里只有精品| 久久综合久久99| 五月天精品一区二区三区| 99这里只有久久精品视频| 2024国产精品| 日韩中文字幕一区二区三区| 99国产精品视频免费观看| 亚洲精品一区在线观看| 亚洲高清免费在线| 成人不卡免费av| 精品国产乱码久久| 日韩在线卡一卡二| 色噜噜狠狠成人网p站| 国产精品天天看| 久久99久久99小草精品免视看| 91视频www| 亚洲欧洲色图综合| 波多野结衣在线一区| 国产欧美一区二区精品性色超碰| 视频一区在线视频| 一本到三区不卡视频| 亚洲欧洲国产日韩| 91在线观看视频| 欧美极品另类videosde| 国产麻豆成人精品| 久久亚洲捆绑美女| 国产一区二三区| 久久女同性恋中文字幕| 韩国三级在线一区| 国产视频一区二区在线| 国产成人三级在线观看| 久久久亚洲欧洲日产国码αv| 视频一区视频二区在线观看| 欧美吞精做爰啪啪高潮| 一区二区三区在线视频免费观看| av综合在线播放| 亚洲色图清纯唯美| 欧美性色黄大片手机版| 亚洲色图20p| 91国在线观看| 九九热在线视频观看这里只有精品| 欧美日韩一区成人| 日本欧美久久久久免费播放网| 欧美一区二区日韩| 国产成人8x视频一区二区| 久久伊人中文字幕| 不卡一卡二卡三乱码免费网站| 日韩一区在线播放| 欧美日韩黄色一区二区| 美国精品在线观看| 26uuu久久天堂性欧美| 国产成人午夜片在线观看高清观看| 中文字幕不卡的av| 在线免费观看一区| 麻豆精品国产传媒mv男同| 久久精品这里都是精品| 成人18视频在线播放| 亚洲三级在线看| 欧美日韩成人综合天天影院| 美女视频网站黄色亚洲| 中文字幕精品在线不卡| 日本二三区不卡| 美女视频一区二区三区| 国产精品久久久久久妇女6080 | 精品视频在线免费看| 免费人成精品欧美精品| 国产精品国产三级国产普通话蜜臀 | 亚洲成人综合视频| 久久天堂av综合合色蜜桃网| 99久久免费精品高清特色大片| 亚洲一区在线播放| www日韩大片| 欧美色中文字幕| 国产成人精品免费看| 亚洲国产成人tv| 日本一区二区免费在线| 欧美日韩国产一区二区三区地区| 精品亚洲porn| 亚洲高清免费观看 | 日韩西西人体444www| bt欧美亚洲午夜电影天堂| 午夜国产精品影院在线观看| 久久久久久9999| 欧美日本一道本| 99国产精品视频免费观看| 免费成人在线观看| 亚洲第一福利一区| 亚洲欧洲另类国产综合| 精品成人一区二区三区四区| 欧美无乱码久久久免费午夜一区| 丁香啪啪综合成人亚洲小说| 日韩国产精品91| 亚洲一区二区综合| 中文字幕日韩一区| 国产欧美日韩视频在线观看| 欧美一区二区三区公司| 欧美体内she精视频| av一本久道久久综合久久鬼色| 麻豆精品精品国产自在97香蕉| 亚洲国产成人av好男人在线观看| 自拍av一区二区三区| 亚洲国产精品成人综合| 精品国产一区二区三区久久久蜜月 | 9191久久久久久久久久久| 色综合视频在线观看| 99国产精品久久久久久久久久久| 狠狠色丁香九九婷婷综合五月| 午夜精品久久一牛影视| 亚洲成av人在线观看| 一区二区三区在线免费播放| 一区精品在线播放| 亚洲精品中文在线观看| 亚洲美女屁股眼交3| 亚洲欧洲综合另类| 亚洲欧美视频一区| 亚洲美女屁股眼交3| 亚洲免费在线电影| 亚洲伊人色欲综合网| 亚洲美女屁股眼交3| 亚洲靠逼com| 亚洲午夜视频在线观看| 亚洲欧洲综合另类在线| 一区二区免费在线| 亚洲国产日韩一区二区| 亚洲成av人片| 麻豆91在线播放免费| 国产精品一区二区你懂的| 国产精品一区二区男女羞羞无遮挡 | 亚洲成人av一区| 日韩av电影免费观看高清完整版| 日韩av成人高清| 国产一区二区剧情av在线| 高清在线不卡av| 91网址在线看| 在线成人av网站| 26uuu亚洲综合色| 国产精品蜜臀av| 亚洲高清免费一级二级三级| 日产国产高清一区二区三区| 久久99九九99精品| 从欧美一区二区三区| 欧美三级电影一区| 精品区一区二区| 中文字幕亚洲视频| 蜜臀久久99精品久久久久宅男| 国产一区二区三区四区在线观看| 99天天综合性| 欧美一二区视频| 国产精品区一区二区三区|