|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요 : 상자 | 필드 | 생성자 | 메소드 | 상세 : 필드 | 생성자 | 메소드 |
java.lang.Objectjavax.swing.text.html.HTMLEditorKit.ParserCallback
javax.swing.text.html.HTMLDocument.HTMLReader
public class HTMLDocument.HTMLReader
HTML 문서를 HTML 요소 구조와 함께 로드하기 위한 HTML 리더입니다. 이 클래스는, 퍼서로부터의 콜백세트이며, 속성의 태그가 붙은 요소세트를 생성하기 위해서 구현됩니다. 해석은 필요한 요소 서브 트리를 기술하는 토큰군 (ElementSpec)을 조립해 이것을 기입해 락의 아래에서 문서의 외부 클래스의 삽입 메소드를 사용해 문서에 삽입합니다.
리더를 구성 설정하려면 , 액션을 처리하는 방법을 기술한 HTMLDocument.HTMLReader.TagAction
형의 액션을 등록합니다. 제공되고 있는 액션의 기본이 되어 있는 생각은, 요소 구조가 결국 하등의 서식을 가지는 문자의 줄로부터 완성되는 단락이면, 가장 자연스러운 텍스트의 편집 오퍼레이션을 제공할 수 있다, 라는 것입니다. 구조적으로 지정하는 것이 자연스러운 경우도 있으므로, 단락상에서의 임의의 구조가 허가되도록(듯이) 해야 하고, 그 경우에서도, 구조적인 액션을 사용해 편집할 필요가 있습니다. 즉, 해석중의 스트림로 지정되고 있는 HTML 요소의 일부는, 속성에 꺾어 접어져 경우에 따라서는 단락이 합성됩니다. HTML 요소가 속성에 변환되는 경우, 정보가 없어지지 않게 속성 키는 HTML.Tag 형이 되어, 값은 AttributeSet 형이 됩니다. 이것에 의해, 기존의 액션의 대부분이 기능하게 되어, 사용자는 입력을 키보드로부터 입력하거나 리턴 키, BackSpace 키, Delete 키등을 눌러, 그 적절한 결과를 얻을 수 있습니다. 선택을 생성하거나 속성을 적용하거나 삭제할 수도 있습니다. 이상을 고려한 다음, 리더가 실시하는 작업은 다음과 같은 태스크로 분류할 수 있습니다.
현시점에서는, <APPLET>, <PARAM>, <MAP>, <AREA>, <LINK>, <SCRIPT>, 및 <STYLE> 는 지원되고 있지 않습니다.
HTML.Tag
로 정의되고 있는 태그에 대해서 할당할 수 있고 있는 액션의 기술을 다음에 나타냅니다.
Tag | 액션 |
---|---|
HTML.Tag.A | CharacterAction |
HTML.Tag.ADDRESS | CharacterAction |
HTML.Tag.APPLET | HiddenAction |
HTML.Tag.AREA | AreaAction |
HTML.Tag.B | CharacterAction |
HTML.Tag.BASE | BaseAction |
HTML.Tag.BASEFONT | CharacterAction |
HTML.Tag.BIG | CharacterAction |
HTML.Tag.BLOCKQUOTE | BlockAction |
HTML.Tag.BODY | BlockAction |
HTML.Tag.BR | SpecialAction |
HTML.Tag.CAPTION | BlockAction |
HTML.Tag.CENTER | BlockAction |
HTML.Tag.CITE | CharacterAction |
HTML.Tag.CODE | CharacterAction |
HTML.Tag.DD | BlockAction |
HTML.Tag.DFN | CharacterAction |
HTML.Tag.DIR | BlockAction |
HTML.Tag.DIV | BlockAction |
HTML.Tag.DL | BlockAction |
HTML.Tag.DT | ParagraphAction |
HTML.Tag.EM | CharacterAction |
HTML.Tag.FONT | CharacterAction |
HTML.Tag.FORM | 1.4 에서는 BlockAction |
HTML.Tag.FRAME | SpecialAction |
HTML.Tag.FRAMESET | BlockAction |
HTML.Tag.H1 | ParagraphAction |
HTML.Tag.H2 | ParagraphAction |
HTML.Tag.H3 | ParagraphAction |
HTML.Tag.H4 | ParagraphAction |
HTML.Tag.H5 | ParagraphAction |
HTML.Tag.H6 | ParagraphAction |
HTML.Tag.HEAD | HeadAction |
HTML.Tag.HR | SpecialAction |
HTML.Tag.HTML | BlockAction |
HTML.Tag.I | CharacterAction |
HTML.Tag.IMG | SpecialAction |
HTML.Tag.INPUT | FormAction |
HTML.Tag.ISINDEX | IsndexAction |
HTML.Tag.KBD | CharacterAction |
HTML.Tag.LI | BlockAction |
HTML.Tag.LINK | LinkAction |
HTML.Tag.MAP | MapAction |
HTML.Tag.MENU | BlockAction |
HTML.Tag.META | MetaAction |
HTML.Tag.NOFRAMES | BlockAction |
HTML.Tag.OBJECT | SpecialAction |
HTML.Tag.OL | BlockAction |
HTML.Tag.OPTION | FormAction |
HTML.Tag.P | ParagraphAction |
HTML.Tag.PARAM | HiddenAction |
HTML.Tag.PRE | PreAction |
HTML.Tag.SAMP | CharacterAction |
HTML.Tag.SCRIPT | HiddenAction |
HTML.Tag.SELECT | FormAction |
HTML.Tag.SMALL | CharacterAction |
HTML.Tag.STRIKE | CharacterAction |
HTML.Tag.S | CharacterAction |
HTML.Tag.STRONG | CharacterAction |
HTML.Tag.STYLE | StyleAction |
HTML.Tag.SUB | CharacterAction |
HTML.Tag.SUP | CharacterAction |
HTML.Tag.TABLE | BlockAction |
HTML.Tag.TD | BlockAction |
HTML.Tag.TEXTAREA | FormAction |
HTML.Tag.TH | BlockAction |
HTML.Tag.TITLE | TitleAction |
HTML.Tag.TR | BlockAction |
HTML.Tag.TT | CharacterAction |
HTML.Tag.U | CharacterAction |
HTML.Tag.UL | BlockAction |
HTML.Tag.VAR | CharacterAction |
</html> 가 발견되면(자), Action 는 통지되지 않게 됩니다.
상자의 클래스의 개요 | |
---|---|
class |
HTMLDocument.HTMLReader.BlockAction
|
class |
HTMLDocument.HTMLReader.CharacterAction
|
class |
HTMLDocument.HTMLReader.FormAction
폼의 각 컨트롤을 나타내기 위한 요소를 모두 생성해, 폼을 지원하기 위한 액션입니다. |
class |
HTMLDocument.HTMLReader.HiddenAction
|
class |
HTMLDocument.HTMLReader.IsindexAction
|
class |
HTMLDocument.HTMLReader.ParagraphAction
|
class |
HTMLDocument.HTMLReader.PreAction
|
class |
HTMLDocument.HTMLReader.SpecialAction
|
class |
HTMLDocument.HTMLReader.TagAction
태그의 구문 분석에 응해 실행되는 액션입니다. |
필드의 개요 | |
---|---|
protected MutableAttributeSet |
charAttr
|
protected Vector <DefaultStyledDocument.ElementSpec > |
parseBuffer
|
클래스 javax.swing.text.html. HTMLEditorKit.ParserCallback 로부터 상속된 필드 |
---|
IMPLIED |
생성자 의 개요 | |
---|---|
HTMLDocument.HTMLReader (int offset)
|
|
HTMLDocument.HTMLReader (int offset,
int popDepth,
int pushDepth,
HTML.Tag insertTag)
|
메소드의 개요 | |
---|---|
protected void |
addContent (char[] data,
int offs,
int length)
현재의 문자 속성을 가지는 텍스트를 추가합니다. |
protected void |
addContent (char[] data,
int offs,
int length,
boolean generateImpliedPIfNecessary)
현재의 문자 속성을 가지는 텍스트를 추가합니다. |
protected void |
addSpecialElement (HTML.Tag t,
MutableAttributeSet a)
기본적으로 속성 세트 전체로 지정되고 있는 컨텐츠를 추가합니다. |
protected void |
blockClose (HTML.Tag t)
해석 버퍼에 명령을 추가해, 지정한 형태의 블록 요소를 닫습니다. |
protected void |
blockOpen (HTML.Tag t,
MutableAttributeSet attr)
해석 버퍼에 명령을 추가해, 지정한 속성을 가지는 블록 요소를 생성합니다. |
void |
flush ()
HTML 리더로 불려 가는 마지막 메소드입니다. |
void |
handleComment (char[] data,
int pos)
|
void |
handleEndOfLineString (String eol)
스트림의 해석이 종료해, flush 의 전에 불려 갑니다. |
void |
handleEndTag (HTML.Tag t,
int pos)
퍼서로부터의 콜백입니다. |
void |
handleSimpleTag (HTML.Tag t,
MutableAttributeSet a,
int pos)
퍼서로부터의 콜백입니다. |
void |
handleStartTag (HTML.Tag t,
MutableAttributeSet a,
int pos)
퍼서로부터의 콜백입니다. |
void |
handleText (char[] data,
int pos)
텍스트 블록이 발견된 것을 나타내기 위해서(때문에), 퍼서에 의해 불려 갑니다. |
protected void |
popCharacterStyle ()
이전에 푸쉬 한 문자 스타일을 스택으로부터 팝 해, 이전의 문자 스타일에 되돌립니다. |
protected void |
preContent (char[] data)
PRE 요소로 검출된 지정된 컨텐츠를 추가합니다. |
protected void |
pushCharacterStyle ()
새로운 상자의 문자 스타일을 작성할 준비로서 현재의 문자 스타일을 스택에 푸쉬 합니다. |
protected void |
registerTag (HTML.Tag t,
HTMLDocument.HTMLReader.TagAction a)
지정한 태그의 핸들러를 등록합니다. |
protected void |
textAreaContent (char[] data)
텍스트 영역 문서로 지정된 컨텐츠를 추가합니다. |
클래스 javax.swing.text.html. HTMLEditorKit.ParserCallback 로부터 상속된 메소드 |
---|
handleError |
클래스 java.lang. Object 로부터 상속된 메소드 |
---|
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait |
필드의 상세 |
---|
protected Vector <DefaultStyledDocument.ElementSpec > parseBuffer
protected MutableAttributeSet charAttr
생성자 의 상세 |
---|
public HTMLDocument.HTMLReader(int offset)
public HTMLDocument.HTMLReader(int offset, int popDepth, int pushDepth, HTML.Tag insertTag)
메소드의 상세 |
---|
public void flush() throws BadLocationException
HTMLEditorKit.ParserCallback
내의 flush
BadLocationException
public void handleText(char[] data, int pos)
HTMLEditorKit.ParserCallback
내의 handleText
public void handleStartTag(HTML.Tag t, MutableAttributeSet a, int pos)
HTMLEditorKit.ParserCallback
내의 handleStartTag
public void handleComment(char[] data, int pos)
HTMLEditorKit.ParserCallback
내의 handleComment
public void handleEndTag(HTML.Tag t, int pos)
HTMLEditorKit.ParserCallback
내의 handleEndTag
public void handleSimpleTag(HTML.Tag t, MutableAttributeSet a, int pos)
HTMLEditorKit.ParserCallback
내의 handleSimpleTag
public void handleEndOfLineString(String eol)
flush
의 전에 불려 갑니다. eol
는, 스트림의 해석중에 가장 많이 검출되는 \n, \r , \r\n 의 머지않아인가입니다.
HTMLEditorKit.ParserCallback
내의 handleEndOfLineString
protected void registerTag(HTML.Tag t, HTMLDocument.HTMLReader.TagAction a)
protected void pushCharacterStyle()
protected void popCharacterStyle()
protected void textAreaContent(char[] data)
protected void preContent(char[] data)
protected void blockOpen(HTML.Tag t, MutableAttributeSet attr)
protected void blockClose(HTML.Tag t)
protected void addContent(char[] data, int offs, int length)
data
- 추가하는 컨텐츠offs
- 초기 오프셋(offset)length
- 길이protected void addContent(char[] data, int offs, int length, boolean generateImpliedPIfNecessary)
data
- 추가하는 컨텐츠offs
- 초기 오프셋(offset)length
- 길이generateImpliedPIfNecessary
- 암묵적으로 지정된 단락을
생성할지 어떨지protected void addSpecialElement(HTML.Tag t, MutableAttributeSet a)
|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요 : 상자 | 필드 | 생성자 | 메소드 | 상세 : 필드 | 생성자 | 메소드 |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.