JavaTM Platform
Standard Ed. 6

javax.swing.text
클래스 CompositeView

java.lang.Object 
  상위를 확장 javax.swing.text.View 
      상위를 확장 javax.swing.text.CompositeView
모든 구현된 인터페이스:
SwingConstants
직계의 기존의 서브 클래스:
BoxView


public abstract class CompositeView
extends View

CompositeView 는, 1 개(살) 이상의 아이 뷰를 관리하는 abstract 클래스의 View 의 구현입니다. CompositeView 는, 비교적 소수의 아이 뷰를 관리하는 것을 상정하고 있습니다. CompositeView 는,BoxView 등, 아이의 View 를 포함한,View 의 구현의 개시 포인트로서 사용됩니다. 아이의 View 의 컬렉션을 관리하는 서브 클래스에서는,replace(int, int, javax.swing.text.View[]) 메소드가 사용됩니다. DocumentListener 통지중에 Viewreplace 를 호출하므로, 일반적으로 replace 를 직접 호출할 필요는 없습니다.

CompositeView 는, 아이의 View 에 레이아웃 정책를 강제합니다만, 지금부터 포함하게 되는 아이의 View 의 삽입은 허가합니다. 인 세트는,setInsets(short, short, short, short) 또는 setParagraphInsets(javax.swing.text.AttributeSet) 에 의해 설정할 수 있습니다.

View 의 추상 메소드에 가세해CompositeView 의 서브 클래스도 오버라이드(override) 할 필요가 있습니다.


필드의 개요
 
클래스 javax.swing.text. View 로부터 상속된 필드
BadBreakWeight , ExcellentBreakWeight , ForcedBreakWeight , GoodBreakWeight , X_AXIS , Y_AXIS
 
인터페이스 javax.swing. SwingConstants 로부터 상속된 필드
BOTTOM , CENTER , EAST , HORIZONTAL , LEADING , LEFT , NEXT , NORTH , NORTH_EAST , NORTH_WEST , PREVIOUS , RIGHT , SOUTH , SOUTH_EAST , SOUTH_WEST , TOP , TRAILING , VERTICAL , WEST
 
생성자 의 개요
CompositeView (Element  elem)
          지정된 요소의 CompositeView 를 구축합니다.
 
메소드의 개요
protected abstract  void childAllocation (int index, Rectangle  a)
          지정된 아이에게로의 할당을 돌려줍니다.
protected  boolean flipEastAndWestAtEnds (int position, Position.Bias  bias)
          다음의 뷰를 어느 방향으로 배치할까를 결정합니다.
protected  short getBottomInset ()
          아래의 인 세트를 가져옵니다.
 Shape getChildAllocation (int index, Shape  a)
          지정된, draw 하는 아이 뷰에의 할당을 가져옵니다.
protected  Rectangle getInsideAllocation (Shape  a)
          뷰로 지정된 불변의 할당을, 내부 할당을 나타내는 가변 할당해로 변경합니다.
protected  short getLeftInset ()
          왼쪽의 인 세트를 가져옵니다.
protected  int getNextEastWestVisualPositionFrom (int pos, Position.Bias  b, Shape  a, int direction, Position.Bias [] biasRet)
          커서를 둘 수 있는, 다음의 시각적인 위치를 돌려줍니다.
protected  int getNextNorthSouthVisualPositionFrom (int pos, Position.Bias  b, Shape  a, int direction, Position.Bias [] biasRet)
          커서를 둘 수 있는, 다음의 시각적인 위치를 돌려줍니다.
 int getNextVisualPositionFrom (int pos, Position.Bias  b, Shape  a, int direction, Position.Bias [] biasRet)
          caret가 배치될 가능성이 있는, 시각적으로 나타내진 다음의 모델 위치를 결정하는 수단을 제공합니다.
protected  short getRightInset ()
           오른쪽의 인 세트를 가져옵니다.
protected  short getTopInset ()
          위의 인 세트를 가져옵니다.
 View getView (int n)
          컨테이너내의 n 번째의 뷰를 돌려줍니다.
protected abstract  View getViewAtPoint (int x, int y, Rectangle  alloc)
          지정된 좌표의 아이 뷰를 가져옵니다.
protected  View getViewAtPosition (int pos, Rectangle  a)
          모델내에서 지정된 위치를 나타내는 아이 뷰를 가져옵니다.
 int getViewCount ()
          이 뷰의 아이 뷰의 수를 돌려줍니다.
 int getViewIndex (int pos, Position.Bias  b)
          모델내의 지정된 위치를 나타내는 아이 뷰의 인덱스를 돌려줍니다.
protected  int getViewIndexAtPosition (int pos)
          모델내의 지정된 위치를 나타내는 아이 뷰의 인덱스를 가져옵니다.
protected abstract  boolean isAfter (int x, int y, Rectangle  alloc)
          있는 점이, 구형 범위의 뒤에 있을지 어떨지를 판정합니다.
protected abstract  boolean isBefore (int x, int y, Rectangle  alloc)
          있는 점이, 구형 범위의 전에 있을지 어떨지를 판정합니다.
protected  void loadChildren (ViewFactory  f)
          뷰를 초기화하기 위해서 모든 아이를 로드합니다.
 Shape modelToView (int p0, Position.Bias  b0, int p1, Position.Bias  b1, Shape  a)
          문서 모델의 좌표 공간으로부터 뷰의 좌표 공간에의 매핑을 제공합니다.
 Shape modelToView (int pos, Shape  a, Position.Bias  b)
          문서 모델의 좌표 공간으로부터 뷰의 좌표 공간에의 매핑을 제공합니다.
 void replace (int offset, int length, View [] views)
          아이 뷰를 치환합니다.
protected  void setInsets (short top, short left, short bottom, short right)
          뷰의 인 세트를 설정합니다.
protected  void setParagraphInsets (AttributeSet  attr)
          지정된 속성으로부터 선택된 단락 속성으로부터, 인 세트를 설정합니다.
 void setParent (View  parent)
          뷰의 부모를 설정합니다.
 int viewToModel (float x, float y, Shape  a, Position.Bias [] bias)
          뷰의 좌표 공간으로부터 모델의 논리 좌표 공간에의 매핑을 제공합니다.
 
클래스 javax.swing.text. View 로부터 상속된 메소드
append , breakView , changedUpdate , createFragment , forwardUpdate , forwardUpdateToView , getAlignment , getAttributes , getBreakWeight , getContainer , getDocument , getElement , getEndOffset , getGraphics , getMaximumSpan , getMinimumSpan , getParent , getPreferredSpan , getResizeWeight , getStartOffset , getToolTipText , getViewFactory , getViewIndex , insert , insertUpdate , isVisible , modelToView , paint , preferenceChanged , remove , removeAll , removeUpdate , setSize , updateChildren , updateLayout , viewToModel
 
클래스 java.lang. Object 로부터 상속된 메소드
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait
 

생성자 의 상세

CompositeView

public CompositeView(Element  elem)
지정된 요소의 CompositeView 를 구축합니다.

파라미터:
elem - 이 뷰가 취급하는 요소
메소드의 상세

loadChildren

protected void loadChildren(ViewFactory  f)
뷰를 초기화하기 위해서 모든 아이를 로드합니다. 이 메소드는,setParent(javax.swing.text.View) 메소드에 의해 불려 갑니다. 서브 클래스는, 이 메소드를 재구현해 다른 방법으로 아이 뷰를 초기화할 수 있습니다. 디폴트의 구현은, 아이 요소 마다 아이 뷰를 작성합니다.

파라미터:
f - 뷰파크트리
관련 항목:
setParent(javax.swing.text.View)

setParent

public void setParent(View  parent)
뷰의 부모를 설정합니다. 이 뷰가 아직 아이를 가지지 않는 경우는,loadChildren 메소드의 호출과 함께 슈퍼 클래스의 동작을 제공다시 하기 위해서 구현합니다. 아이를 생성자 안에 로드하지 않게 해 주세요. 이것은, 부모를 설정하는 동작이 원인이 되어, 예를 들어 수용측 Container 를 취득하기 위해서, 아이가 계층을 거슬러 올라가 검색하려고 하기 때문입니다. 이 뷰가 아이를 가지는 경우는, 뷰 계층내가 있는 위치로부터 다른 위치에 이동하고 있으므로,loadChildren 메소드는 불려 가지 않습니다.

오버라이드(override):
클래스 View 내의 setParent
파라미터:
parent - 뷰의 부모. 없는 경우는 null

getViewCount

public int getViewCount()
이 뷰의 아이 뷰의 수를 돌려줍니다.

오버라이드(override):
클래스 View 내의 getViewCount
반환값:
뷰의 수 >= 0
관련 항목:
getView(int)

getView

public View  getView(int n)
컨테이너내의 n 번째의 뷰를 돌려줍니다.

오버라이드(override):
클래스 View 내의 getView
파라미터:
n - 목적의 뷰의 번호 >= 0 && < getViewCount()
반환값:
인덱스 n 의 뷰

replace

public void replace(int offset,
                    int length,
                    View [] views)
아이 뷰를 치환합니다. 삭제하는 뷰가 없는 경우는, 이 메소드가 삽입으로서 동작해, 추가하는 뷰가 없는 경우는, 이 메소드가 삭제로서 동작합니다. 삭제되는 뷰는 null 로 설정된 부모를 가져, 삭제되는 뷰의 내부 참조를 하고 있으므로, 가베지로서 회수할 수 있습니다.

오버라이드(override):
클래스 View 내의 replace
파라미터:
offset - 신규 뷰를 삽입하기 위한 , 아이 뷰의 개시 인덱스. 0 이상, getViewCount 이하
length - 삭제하는 기존의 아이 뷰의 수. 이 값은 0 이상으로, (getViewCount() - offset) 이하
views - 추가하는 아이 뷰. 추가하는 아이가 없는 경우는 null 도 가능 (삭제에 편리)

getChildAllocation

public Shape  getChildAllocation(int index,
                                Shape  a)
지정된, draw 하는 아이 뷰에의 할당을 가져옵니다. 님님인 뷰의 배치 장소를 찾을 수 있습니다.

오버라이드(override):
클래스 View 내의 getChildAllocation
파라미터:
index - 자의 인덱스 >= 0 && < getViewCount()
a - 이 뷰에 대한 할당
반환값:
자에 대한 할당

modelToView

public Shape  modelToView(int pos,
                         Shape  a,
                         Position.Bias  b)
                  throws BadLocationException 
문서 모델의 좌표 공간으로부터 뷰의 좌표 공간에의 매핑을 제공합니다.

정의:
클래스 View 내의 modelToView
파라미터:
pos - 변환 대상의 위치 >>= 0
a - draw를 위해서(때문에) 할당할 수 있었던 영역
b - Position.Bias.Forward 또는 Position.Bias.Backward 의 바이어스치
반환값:
지정된 위치의 바운딩 박스
예외:
BadLocationException - 지정된 위치가, 관련지을 수 있었던 문서내의 유효한 위치를 나타내지 않는 경우
관련 항목:
View.modelToView(int, java.awt.Shape, javax.swing.text.Position.Bias)

modelToView

public Shape  modelToView(int p0,
                         Position.Bias  b0,
                         int p1,
                         Position.Bias  b1,
                         Shape  a)
                  throws BadLocationException 
문서 모델의 좌표 공간으로부터 뷰의 좌표 공간에의 매핑을 제공합니다.

오버라이드(override):
클래스 View 내의 modelToView
파라미터:
p0 - 변환 대상의 위치 >>= 0
b0 - 위치가 2 개의 뷰의 경계인 경우에, p0 에 의해 나타내지기 직전의 문자 또는 다음의 문자에의 바이어스. Position.Bias.Forward 또는 Position.Bias.Backward
p1 - 변환 대상의 위치 >>= 0
b1 - 위치가 2 개의 뷰의 경계인 경우에, p1 에 의해 나타내지기 직전의 문자 또는 다음의 문자에의 바이어스
a - draw를 위해서(때문에) 할당할 수 있었던 영역
반환값:
지정된 위치의 바운딩 박스
예외:
BadLocationException - 지정된 위치가, 관련지을 수 있었던 문서내의 유효한 위치를 나타내지 않는 경우
IllegalArgumentException - bias 인수가 무효인 경우
관련 항목:
View.viewToModel(float, float, java.awt.Shape, javax.swing.text.Position.Bias[])

viewToModel

public int viewToModel(float x,
                       float y,
                       Shape  a,
                       Position.Bias [] bias)
뷰의 좌표 공간으로부터 모델의 논리 좌표 공간에의 매핑을 제공합니다.

정의:
클래스 View 내의 viewToModel
파라미터:
x - 변환하는 뷰 위치의 x 좌표 >= 0
y - 변환하는 뷰 위치의 y 좌표 >= 0
a - draw를 위해서(때문에) 할당할 수 있었던 영역
bias - Position.Bias.Forward 또는 Position.Bias.Backward
반환값:
지정된 뷰내의 점을 가장 적절히 표현하는 모델내의 위치. 0 이상
관련 항목:
View.viewToModel(float, float, java.awt.Shape, javax.swing.text.Position.Bias[])

getNextVisualPositionFrom

public int getNextVisualPositionFrom(int pos,
                                     Position.Bias  b,
                                     Shape  a,
                                     int direction,
                                     Position.Bias [] biasRet)
                              throws BadLocationException 
caret가 배치될 가능성이 있는, 시각적으로 나타내진 다음의 모델 위치를 결정하는 수단을 제공합니다. 뷰에 따라서는, 가시가 아닌지, 모델내와 같은 순서가 아닌지, 또는 모델내의 위치에의 액세스를 허가하지 않는 경우가 있습니다. 이것은, getNextNorthSouthVisualPositionFrom(int, javax.swing.text.Position.Bias, java.awt.Shape, int, javax.swing.text.Position.Bias[])getNextEastWestVisualPositionFrom(int, javax.swing.text.Position.Bias, java.awt.Shape, int, javax.swing.text.Position.Bias[]) 의 편리한 메소드입니다.

오버라이드(override):
클래스 View 내의 getNextVisualPositionFrom
파라미터:
pos - 변환 대상의 위치 >>= 0
b - Position.Bias.Forward 또는 Position.Bias.Backward 의 바이어스치
a - draw를 위해서(때문에) 할당할 수 있었던 영역
direction - 현재 위치로부터의 방향. 이것은, 키보드에 일반적으로 존재하는 커서 키라고 볼 수가 있어 다음의 어느 쪽인가에 된다
  • SwingConstants.WEST
  • SwingConstants.EAST
  • SwingConstants.NORTH
  • SwingConstants.SOUTH
biasRet - 체크된 바이어스를 포함한 배열
반환값:
다음의 가시의 위치를 무엇보다 자주(잘) 나타내는 모델내의 위치
예외:
BadLocationException
IllegalArgumentException - direction 가 무효인 경우

getViewIndex

public int getViewIndex(int pos,
                        Position.Bias  b)
모델내의 지정된 위치를 나타내는 아이 뷰의 인덱스를 돌려줍니다. 하위 호환을 위한 getViewIndexByPosition 메소드를 호출하기 위해서(때문에) 이 메소드를 구현하고 있습니다.

오버라이드(override):
클래스 View 내의 getViewIndex
파라미터:
pos - 위치 >= 0
반환값:
지정된 위치를 나타내는 뷰의 인덱스. 그 위치를 나타내는 뷰가 없는 경우는 -1
도입된 버젼:
1.3

isBefore

protected abstract boolean isBefore(int x,
                                    int y,
                                    Rectangle  alloc)
어느 점이, 구형 범위의 전에 있을지 어떨지를 판정합니다.

파라미터:
x - X 좌표 >= 0
y - Y 좌표 >= 0
alloc - 구형
반환값:
점이 지정된 범위의 전에 있는 경우에 true

isAfter

protected abstract boolean isAfter(int x,
                                   int y,
                                   Rectangle  alloc)
어느 점이, 구형 범위의 뒤에 있을지 어떨지를 판정합니다.

파라미터:
x - X 좌표 >= 0
y - Y 좌표 >= 0
alloc - 구형
반환값:
점이 지정된 범위의 뒤에 있는 경우에 true

getViewAtPoint

protected abstract View  getViewAtPoint(int x,
                                       int y,
                                       Rectangle  alloc)
지정된 좌표의 아이 뷰를 가져옵니다.

파라미터:
x - X 좌표 >= 0
y - Y 좌표 >= 0
alloc - 입구에서의 부모의 할당. 출구에서 아이의 할당으로 변경
반환값:
자 뷰

childAllocation

protected abstract void childAllocation(int index,
                                        Rectangle  a)
지정된 아이에게로의 할당을 돌려줍니다.

파라미터:
index - 자의 인덱스 >= 0 && < getViewCount()
a - 입구에서의 박스의 내부에의 할당. 및, 출구에서의 인덱스 위치의 아이 뷰의 할당

getViewAtPosition

protected View  getViewAtPosition(int pos,
                                 Rectangle  a)
모델내에서 지정된 위치를 나타내는 아이 뷰를 가져옵니다. 이 메소드는, 각각의 아이 요소에 대해서 아이 뷰가 있는 경우에, 뷰를 꺼내기 위해서(때문에) 구현되고 있습니다.

파라미터:
pos - 위치 >= 0
a - 입구에서의 박스의 내부에의 할당. 및, 출구에서의 위치를 포함한 뷰의 할당
반환값:
지정된 위치를 나타내는 뷰. 존재하지 않는 경우는 null

getViewIndexAtPosition

protected int getViewIndexAtPosition(int pos)
모델내의 지정된 위치를 나타내는 아이 뷰의 인덱스를 가져옵니다. 이 메소드는, 각각의 아이 요소에 대해서 아이 뷰가 있는 경우에, 뷰를 꺼내기 위해서(때문에) 구현되고 있습니다.

파라미터:
pos - 위치 >= 0
반환값:
지정된 위치를 나타내는 뷰의 인덱스. 그 위치를 나타내는 뷰가 없는 경우는 -1

getInsideAllocation

protected Rectangle  getInsideAllocation(Shape  a)
뷰로 지정된 불변의 할당을, 내부 할당을 나타내는 가변 할당해로 변경합니다. 예를 들어, 상, 좌, 하, 우의 인 세트로 지정된 할당의 경계를 삭제하는 경우 등입니다. 또, 아이 뷰에의 할당을 나타내기 위해서(때문에) 반환값이 바뀌어 버리는 일이 있습니다. 이 메소드는 Rectangle 를 너무 많이 작성하지 않게 인스턴스 변수를 재사용하기 위해서 구현되고 있습니다. 일반적으로, 이 메소드를 호출하면(자),childAllocation 메소드에 보내집니다.

파라미터:
a - 뷰로 지정된 할당
반환값:
마진이 모두 삭제된 뒤의 뷰 내부를 나타내는 할당. 지정된 할당이 null 의 경우, 반환값은 null

setParagraphInsets

protected void setParagraphInsets(AttributeSet  attr)
지정된 속성으로부터 선택된 단락 속성으로부터, 인 세트를 설정합니다.

파라미터:
attr - 속성

setInsets

protected void setInsets(short top,
                         short left,
                         short bottom,
                         short right)
뷰의 인 세트를 설정합니다.

파라미터:
top - 상의 인 세트 >= 0
left - 왼쪽의 인 세트 >= 0
bottom - 하의 인 세트 >= 0
right - 오른쪽의 인 세트 >= 0

getLeftInset

protected short getLeftInset()
왼쪽의 인 세트를 가져옵니다.

반환값:
인 세트 >= 0

getRightInset

protected short getRightInset()
오른쪽의 인 세트를 가져옵니다.

반환값:
인 세트 >= 0

getTopInset

protected short getTopInset()
위의 인 세트를 가져옵니다.

반환값:
인 세트 >= 0

getBottomInset

protected short getBottomInset()
아래의 인 세트를 가져옵니다.

반환값:
인 세트 >= 0

getNextNorthSouthVisualPositionFrom

protected int getNextNorthSouthVisualPositionFrom(int pos,
                                                  Position.Bias  b,
                                                  Shape  a,
                                                  int direction,
                                                  Position.Bias [] biasRet)
                                           throws BadLocationException 
커서를 둘 수 있는, 다음의 시각적인 위치를 돌려줍니다. 방향은 위 (north) 또는 아래 (south)가 됩니다.

파라미터:
pos - 변환 대상의 위치 >>= 0
b - Position.Bias.Forward 또는 Position.Bias.Backward 의 바이어스치
a - draw를 위해서(때문에) 할당할 수 있었던 영역
direction - 현재 위치로부터의 방향. 이것은, 키보드에 일반적으로 존재하는 커서 키라고 볼 수가 있어 다음의 어느 쪽인가에 된다
  • SwingConstants.NORTH
  • SwingConstants.SOUTH
biasRet - 체크된 바이어스를 포함한 배열
반환값:
다음 위 또는 아래의 위치를 무엇보다 자주(잘) 나타내는 모델내의 위치
예외:
BadLocationException
IllegalArgumentException - direction 가 무효인 경우
관련 항목:
getNextVisualPositionFrom(int, javax.swing.text.Position.Bias, java.awt.Shape, int, javax.swing.text.Position.Bias[])

getNextEastWestVisualPositionFrom

protected int getNextEastWestVisualPositionFrom(int pos,
                                                Position.Bias  b,
                                                Shape  a,
                                                int direction,
                                                Position.Bias [] biasRet)
                                         throws BadLocationException 
커서를 둘 수 있는, 다음의 시각적인 위치를 돌려줍니다. 방향은 오른쪽 (east) 또는 왼쪽 (west)이 됩니다.

파라미터:
pos - 변환 대상의 위치 >>= 0
b - Position.Bias.Forward 또는 Position.Bias.Backward 의 바이어스치
a - draw를 위해서(때문에) 할당할 수 있었던 영역
direction - 현재 위치로부터의 방향. 이것은, 키보드에 일반적으로 존재하는 커서 키라고 볼 수가 있어 다음의 어느 쪽인가에 된다
  • SwingConstants.WEST
  • SwingConstants.EAST
biasRet - 체크된 바이어스를 포함한 배열
반환값:
다음의 왼쪽 또는 오른쪽의 위치를 무엇보다 자주(잘) 나타내는 모델내의 위치
예외:
BadLocationException
IllegalArgumentException - direction 가 무효인 경우
관련 항목:
getNextVisualPositionFrom(int, javax.swing.text.Position.Bias, java.awt.Shape, int, javax.swing.text.Position.Bias[])

flipEastAndWestAtEnds

protected boolean flipEastAndWestAtEnds(int position,
                                        Position.Bias  bias)
다음의 뷰를 어느 방향으로 배치할까를 결정합니다. 인덱스 n 의 View 가 고려됩니다. 일반적으로은, EAST 에의 View 가 인덱스 n + 1, WEST 에의 View 가 인덱스 n -1 가 되도록(듯이),View 는 왼쪽에서 오른쪽에 레이아웃 됩니다. 쌍방향 텍스트 등 일부의 경우에서는, EAST 에의 View 를 인덱스 n + 1 은 아니고 인덱스 n -1 에, 또는 WEST 에의 View 를 인덱스 n - 1 은 아니고 인덱스 n + 1 으로 할 수도 있습니다. 이 경우, 이 메소드는 true 를 돌려주어,View 가 내림차순에 레이아웃 되고 있는 것을 나타냅니다.

여기에서는 무조건 false 가 돌려주어집니다. View 를 내림차순에 배치할 가능성이 있는 경우, 서브 클래스는 이 메소드를 오버라이드(override) 합니다.

파라미터:
position - 모델에의 위치
bias - Position.Bias.Forward 또는 Position.Bias.Backward
반환값:
false

JavaTM Platform
Standard Ed. 6

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.