blueprintengineparser.java

来自「JAVA的一些源码 JAVA2 STANDARD EDITION DEVELO」· Java 代码 · 共 1,112 行 · 第 1/3 页

JAVA
1,112
字号
                case SYM_OVERLAY_RECOLORABLE:                    token = parseRecolorable(bool);                    if (token == GTKScanner.TOKEN_NONE) {                        info.overlayRecolorable = bool[0];                    }                    break;                case SYM_DETAIL:                    token = parseDetail(info);                    break;                case SYM_STATE:                    token = parseState(info);                    break;                case SYM_SHADOW:                    token = parseShadow(info);                    break;                case SYM_GAP_SIDE:                    token = parseGapSide(info);                    break;                case SYM_ARROW_DIRECTION:                    token = parseArrowDirection(info);                    break;                case SYM_ORIENTATION:                    token = parseOrientation(info);                    break;                case SYM_FILE:                    token = parseFile(fileName);                    if (token == GTKScanner.TOKEN_NONE) {                        info.image = fileName[0];                    }                    break;                case SYM_BORDER:                    token = parseBorder(insets);                    if (token == GTKScanner.TOKEN_NONE) {                        info.fileInsets = insets[0];                    }                    break;                case SYM_STRETCH:                    token = parseStretch(bool);                    if (token == GTKScanner.TOKEN_NONE) {                        info.stretch = bool[0];                    }                    break;                case SYM_GAP_FILE:                    token = parseFile(fileName);                    if (token == GTKScanner.TOKEN_NONE) {                        info.gapImage = fileName[0];                    }                    break;                case SYM_GAP_BORDER:                    token = parseBorder(insets);                    if (token == GTKScanner.TOKEN_NONE) {                        info.gapInsets = insets[0];                    }                    break;                case SYM_GAP_START_FILE:                    token = parseFile(fileName);                    if (token == GTKScanner.TOKEN_NONE) {                        info.gapStartImage = fileName[0];                    }                    break;                case SYM_GAP_START_BORDER:                    token = parseBorder(insets);                    if (token == GTKScanner.TOKEN_NONE) {                        info.gapStartInsets = insets[0];                    }                    break;                case SYM_GAP_END_FILE:                    token = parseFile(fileName);                    if (token == GTKScanner.TOKEN_NONE) {                        info.gapEndImage = fileName[0];                    }                    break;                case SYM_GAP_END_BORDER:                    token = parseBorder(insets);                    if (token == GTKScanner.TOKEN_NONE) {                        info.gapEndInsets = insets[0];                    }                    break;                case SYM_OVERLAY_FILE:                    token = parseFile(fileName);                    if (token == GTKScanner.TOKEN_NONE) {                        info.overlayImage = fileName[0];                    }                    break;                case SYM_OVERLAY_BORDER:                    token = parseBorder(insets);                    if (token == GTKScanner.TOKEN_NONE) {                        info.overlayInsets = insets[0];                    }                    break;                case SYM_OVERLAY_STRETCH:                    token = parseStretch(bool);                    if (token == GTKScanner.TOKEN_NONE) {                        info.overlayStretch = bool[0];                    }                    break;                case SYM_PARENT_TYPE:                    // consume token                    scanner.getToken();                    if (info.parentTypeList == null) {                        info.parentTypeList = new ArrayList();                    }                    token = parseStringList(info.parentTypeList);                    break;                case SYM_COLORIZE_COLOR:                    token = parseColorizeColor(col);                    if (token == GTKScanner.TOKEN_NONE) {                        info.colorizeColor = col[0];                    }                    break;                case SYM_OVERLAY_COLORIZE_COLOR:                    token = parseColorizeColor(col);                    if (token == GTKScanner.TOKEN_NONE) {                        info.overlayColorizeColor = col[0];                    }                    break;                case SYM_USE_AS_BKG_MASK:                    token = parseUseAsBkgMask(info);                    break;                default:                    scanner.getToken();                    token = GTKScanner.TOKEN_RIGHT_CURLY;                    break;            }            if (token != GTKScanner.TOKEN_NONE) {                return token;            }            token = scanner.peekNextToken();        }        token = scanner.getToken();        if (token != GTKScanner.TOKEN_RIGHT_CURLY) {            return GTKScanner.TOKEN_RIGHT_CURLY;        }        // PENDING(shannonh) - may want to do some validation of the        //                     info before we return it        retVal[0] = info;        return GTKScanner.TOKEN_NONE;    }    private int parseFunction(BlueprintStyle.Info info) throws IOException {        int token;        token = scanner.getToken();        if (token != SYM_FUNCTION) {            return SYM_FUNCTION;        }        token = scanner.getToken();        if (token != GTKScanner.TOKEN_EQUAL_SIGN) {            return GTKScanner.TOKEN_EQUAL_SIGN;        }        token = scanner.getToken();        if (token >= SYM_D_HLINE && token <= SYM_D_STEPPER) {            info.setFunction(symbolNames[token - SYM_IMAGE]);        }                // PENDING(shannonh) - should we complain if not a valid function?        return GTKScanner.TOKEN_NONE;    }    private int parseRecolorable(boolean[] retVal) throws IOException {        int token;                scanner.getToken();                token = scanner.getToken();        if (token != GTKScanner.TOKEN_EQUAL_SIGN) {            return GTKScanner.TOKEN_EQUAL_SIGN;        }                token = scanner.getToken();        if (token == SYM_TRUE) {            retVal[0] = true;        } else if (token == SYM_FALSE) {            retVal[0] = false;        } else {            return SYM_TRUE;        }                return GTKScanner.TOKEN_NONE;    }        private int parseDetail(BlueprintStyle.Info info) throws IOException {        int token;                token = scanner.getToken();        if (token != SYM_DETAIL) {            return SYM_DETAIL;        }                token = scanner.getToken();        if (token != GTKScanner.TOKEN_EQUAL_SIGN) {            return GTKScanner.TOKEN_EQUAL_SIGN;        }                token = scanner.getToken();        if (token != GTKScanner.TOKEN_STRING) {            return GTKScanner.TOKEN_STRING;        }        info.setDetail(scanner.currValue.stringVal);        return GTKScanner.TOKEN_NONE;    }    private int parseState(BlueprintStyle.Info info) throws IOException {        int token;                token = scanner.getToken();        if (token != SYM_STATE) {            return SYM_STATE;        }                token = scanner.getToken();        if (token != GTKScanner.TOKEN_EQUAL_SIGN) {            return GTKScanner.TOKEN_EQUAL_SIGN;        }                token = scanner.getToken();        switch(token) {            case SYM_NORMAL:                info.componentState = SynthConstants.ENABLED;                break;            case SYM_ACTIVE:                info.componentState = SynthConstants.PRESSED;                break;            case SYM_PRELIGHT:                info.componentState = SynthConstants.MOUSE_OVER;                break;            case SYM_SELECTED:                info.componentState = SynthConstants.SELECTED;                break;            case SYM_INSENSITIVE:                info.componentState = SynthConstants.DISABLED;                break;            default:                return SYM_NORMAL;        }        return GTKScanner.TOKEN_NONE;    }    private int parseShadow(BlueprintStyle.Info info) throws IOException {        int token;                token = scanner.getToken();        if (token != SYM_SHADOW) {            return SYM_SHADOW;        }                token = scanner.getToken();        if (token != GTKScanner.TOKEN_EQUAL_SIGN) {            return GTKScanner.TOKEN_EQUAL_SIGN;        }                token = scanner.getToken();        switch(token) {            case SYM_NONE:                info.shadow = GTKConstants.SHADOW_NONE;                break;            case SYM_IN:                info.shadow = GTKConstants.SHADOW_IN;                break;            case SYM_OUT:                info.shadow = GTKConstants.SHADOW_OUT;                break;            case SYM_ETCHED_IN:                info.shadow = GTKConstants.SHADOW_ETCHED_IN;                break;            case SYM_ETCHED_OUT:                info.shadow = GTKConstants.SHADOW_ETCHED_OUT;                break;            default:                return SYM_NONE;        }        return GTKScanner.TOKEN_NONE;    }    private int parseGapSide(BlueprintStyle.Info info) throws IOException {        int token;                token = scanner.getToken();        if (token != SYM_GAP_SIDE) {            return SYM_GAP_SIDE;        }                token = scanner.getToken();        if (token != GTKScanner.TOKEN_EQUAL_SIGN) {            return GTKScanner.TOKEN_EQUAL_SIGN;        }                token = scanner.getToken();        switch(token) {            case SYM_TOP:                info.gapSide = GTKConstants.TOP;                break;            case SYM_BOTTOM:                info.gapSide = GTKConstants.BOTTOM;                break;            case SYM_LEFT:                info.gapSide = GTKConstants.LEFT;                break;            case SYM_RIGHT:                info.gapSide = GTKConstants.RIGHT;                break;            default:                return SYM_TOP;        }        return GTKScanner.TOKEN_NONE;    }    private int parseArrowDirection(BlueprintStyle.Info info) throws IOException {        int token;                token = scanner.getToken();        if (token != SYM_ARROW_DIRECTION) {            return SYM_ARROW_DIRECTION;        }                token = scanner.getToken();        if (token != GTKScanner.TOKEN_EQUAL_SIGN) {            return GTKScanner.TOKEN_EQUAL_SIGN;        }                token = scanner.getToken();        switch(token) {            case SYM_UP:                info.arrowDirection = GTKConstants.ARROW_UP;                break;            case SYM_DOWN:                info.arrowDirection = GTKConstants.ARROW_DOWN;                break;            case SYM_LEFT:                info.arrowDirection = GTKConstants.ARROW_LEFT;                break;            case SYM_RIGHT:                info.arrowDirection = GTKConstants.ARROW_RIGHT;                break;            default:                return SYM_UP;        }        return GTKScanner.TOKEN_NONE;    }        private int parseOrientation(BlueprintStyle.Info info) throws IOException {        int token;                token = scanner.getToken();        if (token != SYM_ORIENTATION) {            return SYM_ORIENTATION;        }                token = scanner.getToken();        if (token != GTKScanner.TOKEN_EQUAL_SIGN) {            return GTKScanner.TOKEN_EQUAL_SIGN;        }                token = scanner.getToken();        switch(token) {

⌨️ 快捷键说明

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