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

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

?? syntaxparser.java

?? ∥顯示數(shù)據(jù)文件未壓縮大小及壓縮大小單行文本顯示域存儲隨機生成的數(shù)據(jù)
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
package org.jr.jzj.editor;
/**
 * <p>Copyright: Copyright (c) 2002-2003</p>
 * <p>Company: JavaResearch(http://www.javaresearch.org)</p>
 * <p>最后更新日期:2003年3月20日
 * @author Barney,Cherami,Brain
 * @version 0.8
 */

import java.io.*;
import java.util.*;
import javax.xml.parsers.*;

import java.awt.*;
import java.awt.font.*;

import org.jr.util.*;
import org.w3c.dom.*;
import org.xml.sax.*;


public class SyntaxParser {
  //XML's element names
  public static final String STYLE = "style";
  public static final String FONT = "font";
  public static final String CONTENTTYPE = "contentType";
  public static final String TEXT = "text";
  public static final String STRING = "string";
  public static final String COMMENT = "comment";
  public static final String LINE_COMMENT = "line-comment";
  public static final String MULTI_COMMENT = "multi-comment";
  public static final String KEYWORDS = "keywords";
  public static final String KEYWORD = "keyword";
  public static final String CLASSES = "classes";
  public static final String CLASS = "class";
  public static final String PLAIN_TEXT = "plain-text";
  public static final String TAG = "tag";
  public static final String CONTENT = "content";
  public static final String DOC_COMMENT = "doc-comment";
  public static final String SCRIPT = "script";
  public static final String NAME = "name";
  public static final String VALUE = "value";
  public static final String SIZE = "size";
  public static final String FAMILYNAME = "familyname";
  public static final String COLOR = "color";
  public static final String ESCAPE = "escape";
  public static final String QUOTATIUON = "quotatiuon";
  public static final String DELIMITER = "delimiter";
  public static final String START = "start";
  //default values
  public static final String def_Familyname = "SansSerif";
  public static final Float def_Size = new Float(12);
  public static final Color def_Background = Color.white;
  public static final Color def_Foreground = Color.black;

  //vars
  protected Document doc;
  private Element element;
  private String contentType = "";
  private static final HashMap clrMap;
  private File syntaxFile;

  static {
    /**
     * 13種基本顏色
     */
    clrMap = new HashMap(13);

    clrMap.put("black", Color.black);
    clrMap.put("blue", Color.blue);
    clrMap.put("cyan", Color.cyan);
    clrMap.put("darkGray", Color.darkGray);

    clrMap.put("gray", Color.gray);
    clrMap.put("green", Color.green);
    clrMap.put("lightGray", Color.lightGray);
    clrMap.put("magenta", Color.magenta);

    clrMap.put("orange", Color.orange);
    clrMap.put("pink", Color.pink);
    clrMap.put("red", Color.red);
    clrMap.put("white", Color.white);
    clrMap.put("yellow", Color.yellow);
  }

  public SyntaxParser(File syntaxFile, String contentType) {
    try {
      this.contentType = contentType;
      openFile(syntaxFile);
      getStyle();
    }
    catch (Exception ex) {
      ex.printStackTrace();
    }

  }

  public SyntaxParser(File syntaxFile) {
    try {
      this.contentType = "";
      openFile(syntaxFile);

    }
    catch (Exception ex) {
      ex.printStackTrace();
    }

  }

  public void setContentType(String contentType) {
    this.contentType = contentType;
    this.getStyle();
  }

  public String getContentType() {
    return contentType;
  }

  /**
   * 返回加亮字體
   * @return
   */
  public Font[] getFonts() {

    HashMap attr = new HashMap();
    resetFontAttrs(attr);
    Font[] tokenFonts = new Font[SyntaxScanner.NUM_TOKEN_TYPES];
    ///////////////////////////////////////////////////////
    this.getFontAttrs(attr, this.TEXT);
    Font font = new Font(attr);
    tokenFonts[SyntaxScanner.TEXT] = font;
//    resetFontAttrs(attr);
    //////////////////////////////////////////////////////
    this.getFontAttrs(attr, this.PLAIN_TEXT);
    font = new Font(attr);
    tokenFonts[SyntaxScanner.PLAIN_TEXT] = font;
//    resetFontAttrs(attr);
    ///////////////////////////////////////////////////////
    this.getFontAttrs(attr, this.CONTENT);
    font = new Font(attr);
    tokenFonts[SyntaxScanner.CONTENT] = font;
//    resetFontAttrs(attr);
    //////////////////////////////////////////////////////
    this.getFontAttrs(attr, this.STRING);
    font = new Font(attr);
    tokenFonts[SyntaxScanner.STRING] = font;
//    resetFontAttrs(attr);
    //////////////////////////////////////////////////////
    this.getFontAttrs(attr, this.KEYWORDS);
    font = new Font(attr);
    tokenFonts[SyntaxScanner.KEY_WORD] = font;
//    resetFontAttrs(attr);
    //////////////////////////////////////////////////////
    this.getFontAttrs(attr, this.TAG);
    font = new Font(attr);
    tokenFonts[SyntaxScanner.TAG] = font;
//    resetFontAttrs(attr);
    /////////////////////////////////////////////////////
    this.getFontAttrs(attr, this.CLASSES);
    font = new Font(attr);
    tokenFonts[SyntaxScanner.CLASS] = font;
//    resetFontAttrs(attr);
    /////////////////////////////////////////////////////
    this.getFontAttrs(attr, this.LINE_COMMENT);
    attr.put(TextAttribute.POSTURE, TextAttribute.POSTURE_OBLIQUE);
    font = new Font(attr);
    tokenFonts[SyntaxScanner.LINE_COMMENT] = font;
//    resetFontAttrs(attr);
    ////////////////////////////////////////////////////
    this.getFontAttrs(attr, this.MULTI_COMMENT);
    font = new Font(attr);
    tokenFonts[SyntaxScanner.MULTI_COMMENT] = font;
//    resetFontAttrs(attr);
    /////////////////////////////////////////////////////
    this.getFontAttrs(attr, this.COMMENT);
    font = new Font(attr);
    tokenFonts[SyntaxScanner.COMMENT] = font;
//    resetFontAttrs(attr);
    /////////////////////////////////////////////////////
    this.getFontAttrs(attr, this.DOC_COMMENT);
    font = new Font(attr);
    attr.put(TextAttribute.POSTURE, TextAttribute.POSTURE_REGULAR);
    font = new Font(attr);
    tokenFonts[SyntaxScanner.DOC_COMMENT] = font;
//    resetFontAttrs(attr);
    /////////////////////////////////////////////////////
    this.getFontAttrs(attr, this.SCRIPT);
    font = new Font(attr);
    tokenFonts[SyntaxScanner.SCRIPT] = font;
    ///////////////////////////////////////////////////
    return tokenFonts;

//   return fakeGetFonts();

  }

  /**
   * 測試用的
   * @return
   */
  private Font[] fakeGetFonts() {
    Hashtable attr = new Hashtable();
    attr.put(TextAttribute.FAMILY, "SansSerif");
    attr.put(TextAttribute.SIZE, new Float(12));
    attr.put(TextAttribute.POSTURE, TextAttribute.POSTURE_REGULAR);
    attr.put(TextAttribute.WEIGHT, TextAttribute.WEIGHT_REGULAR);
    attr.put(TextAttribute.FOREGROUND, Color.black);
    Font font = new Font(attr);
    Font[] tokenFonts = new Font[SyntaxScanner.NUM_TOKEN_TYPES];
    tokenFonts[SyntaxScanner.TEXT] = font;
    tokenFonts[SyntaxScanner.PLAIN_TEXT] = font;
    tokenFonts[SyntaxScanner.CONTENT] = font;
    attr.put(TextAttribute.FOREGROUND, new Color(153, 153, 255));
    font = new Font(attr);
    tokenFonts[SyntaxScanner.STRING] = font;
    attr.put(TextAttribute.FOREGROUND, new Color(0, 0, 255));
    font = new Font(attr);
    tokenFonts[SyntaxScanner.KEY_WORD] = font;
    tokenFonts[SyntaxScanner.TAG] = font;
    attr.put(TextAttribute.FOREGROUND, Color.red);
    font = new Font(attr);
    tokenFonts[SyntaxScanner.CLASS] = font;
    attr.put(TextAttribute.FOREGROUND, new Color(0, 153, 0));
    attr.put(TextAttribute.POSTURE, TextAttribute.POSTURE_OBLIQUE);
    font = new Font(attr);
    tokenFonts[SyntaxScanner.LINE_COMMENT] = font;
    tokenFonts[SyntaxScanner.MULTI_COMMENT] = font;
    tokenFonts[SyntaxScanner.COMMENT] = font;
    attr.put(TextAttribute.FOREGROUND, new Color(102, 153, 102));
    attr.put(TextAttribute.POSTURE, TextAttribute.POSTURE_REGULAR);
    font = new Font(attr);
    tokenFonts[SyntaxScanner.DOC_COMMENT] = font;
    attr.put(TextAttribute.FOREGROUND, new Color(153, 102, 102));
    font = new Font(attr);
    tokenFonts[SyntaxScanner.SCRIPT] = font;
    return tokenFonts;
  }

  /**
   * 輔助函數(shù),找尋font的屬性的
   * @param attr
   * @param tagName
   */
  private void getFontAttrs(HashMap attr, String tagName) {
    if (element != null) {
      Element e = this.getChildElement(element, tagName);
      Element font = this.getChildElement(e, this.FONT);
      String str;
      str = this.getAttrValue(font, this.FAMILYNAME);
      if (str != null && !str.equals("")) {
        attr.put(TextAttribute.FAMILY, str);
      }

      str = this.getAttrValue(font, this.COLOR);
      if (str != null && !str.equals("")) {
        attr.put(TextAttribute.FOREGROUND,
                 this.getColor(str, this.def_Foreground));
      }

      str = this.getAttrValue(font, this.SIZE);
      if (str != null && !str.equals("")) {
        attr.put(TextAttribute.SIZE, new Float(str));
      }

    }
  }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美美女直播网站| 亚洲精品国产一区二区精华液| 国产欧美日韩在线看| 亚洲国产va精品久久久不卡综合| 久久国产精品99精品国产| 色就色 综合激情| 国产精品三级电影| 激情成人综合网| 欧美美女网站色| 亚洲精品福利视频网站| 国产.欧美.日韩| 欧美tickle裸体挠脚心vk| 日韩激情一区二区| 在线一区二区三区| 国产精品久久久久久久第一福利 | 精彩视频一区二区三区| 欧美又粗又大又爽| 亚洲欧美日韩国产另类专区| 国产成人在线观看| 久久一夜天堂av一区二区三区| 亚洲va国产天堂va久久en| 色婷婷综合久色| 亚洲欧美成人一区二区三区| 成人午夜av电影| 中文字幕不卡在线| 豆国产96在线|亚洲| 欧美国产精品一区二区三区| 精品在线免费视频| 欧美mv日韩mv国产网站app| 免费亚洲电影在线| 欧美一区二区三区四区高清| 麻豆国产91在线播放| 精品国产三级a在线观看| 精品午夜一区二区三区在线观看 | 裸体在线国模精品偷拍| 欧美一级艳片视频免费观看| 欧美aa在线视频| 精品国产3级a| 国产经典欧美精品| 国产精品成人免费在线| 色婷婷综合五月| 图片区小说区国产精品视频| 日韩免费一区二区三区在线播放| 美腿丝袜一区二区三区| 国产午夜久久久久| 91免费观看视频在线| 亚洲一区二区三区小说| 欧美日本一道本| 奇米精品一区二区三区四区 | 久久99热这里只有精品| 国产婷婷色一区二区三区四区| 不卡影院免费观看| 亚州成人在线电影| 久久婷婷一区二区三区| 99久久精品一区| 天天综合色天天综合色h| 精品久久久久久最新网址| 国产福利一区在线观看| 一区二区三区国产豹纹内裤在线| 欧美精品1区2区3区| 国产高清亚洲一区| 亚洲福利一区二区| 久久免费午夜影院| 欧美视频在线一区二区三区| 精品无人区卡一卡二卡三乱码免费卡| 国产精品伦理在线| 欧美乱妇15p| 99久久99久久免费精品蜜臀| 青青草一区二区三区| 亚洲丝袜美腿综合| 欧美肥妇free| 99久久国产免费看| 欧美aaa在线| 亚洲免费高清视频在线| 精品国产乱码久久久久久久 | 亚洲一二三四在线| 久久青草国产手机看片福利盒子| 91香蕉视频污在线| 国产一区二区三区日韩| 一区二区三区在线观看欧美| 国产区在线观看成人精品| 欧美日韩另类一区| 91同城在线观看| 国产大陆亚洲精品国产| 蜜臀a∨国产成人精品| 亚洲精品水蜜桃| 中文在线一区二区| 日韩精品中午字幕| 4438x成人网最大色成网站| 色综合网站在线| 国产精品1区2区3区| 美女精品一区二区| 亚洲1区2区3区视频| 亚洲欧美欧美一区二区三区| 国产亚洲女人久久久久毛片| 日韩精品一区二区三区三区免费| 欧美在线一二三四区| 成人av网站在线观看免费| 精品在线播放免费| 激情国产一区二区| 经典三级视频一区| 美女视频免费一区| 久久精品理论片| 日av在线不卡| 日韩成人午夜电影| 婷婷国产在线综合| 日韩精品电影在线观看| 人人精品人人爱| 麻豆国产一区二区| 成av人片一区二区| 国产成人精品三级| 波多野结衣在线一区| 波多野结衣中文字幕一区二区三区 | 欧美卡1卡2卡| 欧美日韩国产高清一区| 欧美日韩一本到| 欧美精品久久99久久在免费线| 欧美日韩国产经典色站一区二区三区| 欧美日韩免费一区二区三区视频| 欧美理论片在线| 欧美不卡在线视频| 国产午夜精品一区二区三区嫩草| 国产欧美综合在线| 亚洲人成网站影音先锋播放| 一区二区三区在线免费| 肉色丝袜一区二区| 狠狠色综合播放一区二区| 国产精品综合在线视频| jvid福利写真一区二区三区| 色就色 综合激情| 欧美美女黄视频| 久久久精品黄色| 亚洲女女做受ⅹxx高潮| 日韩高清国产一区在线| 九九**精品视频免费播放| 成人av动漫在线| 69堂成人精品免费视频| 精品国产一区二区三区不卡 | 一区二区免费在线| 日本在线观看不卡视频| 国产精品1区二区.| 日本精品一级二级| 精品久久一二三区| 亚洲精品自拍动漫在线| 日本三级亚洲精品| 国产91精品一区二区麻豆亚洲| 99久久99久久久精品齐齐 | 欧美丝袜丝交足nylons| 2017欧美狠狠色| 亚洲男人的天堂av| 精品无人区卡一卡二卡三乱码免费卡| 成人性视频免费网站| 欧美日韩国产小视频| 国产亚洲一区二区三区在线观看| 亚洲一区中文日韩| 国产99精品国产| 欧美一区二区三区在线电影| 国产精品免费丝袜| 老司机免费视频一区二区| 91久久精品一区二区二区| 欧美精品一区二区三区久久久| 一区二区三区**美女毛片| 国产一区二区三区日韩| 欧美日韩国产123区| 国产精品白丝在线| 九九视频精品免费| 欧美乱熟臀69xxxxxx| 中文字幕一区二区三区蜜月| 久久国产精品99久久久久久老狼| 欧美羞羞免费网站| 国产精品国产三级国产三级人妇| 久久er99热精品一区二区| 欧美日韩中文另类| 亚洲免费看黄网站| 成人av在线观| 日本一区二区电影| 国产精品中文欧美| 欧美精品一区二区三区高清aⅴ| 亚洲国产日日夜夜| 在线亚洲高清视频| 亚洲日本成人在线观看| 不卡高清视频专区| 国产精品传媒视频| 成人激情午夜影院| 日本一区二区三区久久久久久久久不| 蓝色福利精品导航| 日韩欧美一级在线播放| 蜜桃视频一区二区三区| 欧美一区二区三区四区高清| 日韩电影在线免费看| 欧美日韩精品欧美日韩精品一综合| 亚洲精品欧美激情| 91免费视频大全| 亚洲欧洲日韩在线| 一本色道久久加勒比精品 | 久热成人在线视频| 91精品国产欧美一区二区| 日韩和的一区二区| 欧美一区二区三区系列电影| 免费不卡在线视频|