GnuSmalltalkUsersGuide:AdditionalChapter1 07

From 흡혈양파의 번역工房
Jump to navigation Jump to search
BLOX.BCanvasObject

BLOX.BCanvasObject

네임스페이스 BLOX에 정의됨

슈퍼클래스: BLOX.BEventTarget

범주: 그래픽-윈도우


나는 BCanvas에 놓을 수 있는 모든 항목의 모든 조상이다. 나는 구체적 자손에게 일반적인 메서드를 몇 가지 제공한다.


BLOX.BCanvasObject 클래스: 인스턴스 생성

new

이 클래스의 인스턴스를 대상으로 해당 메서드를 호출해서는 안 된다.

new: parentCanvas

주어진 parentCanvas 내에 표시된 수신자의 새 인스턴스를 응답하라.


BLOX.BCanvasObject: 접근하기

blox

수신자의 부모 캔버스를 응답하라.

boundingBox

수신자를 모두 감싸는(enclosing) Rectangle을 응답하라.

color

해당 항목의 면적을 채우는 데 사용할 색상을 응답하라.

color: color

해당 항목의 면적을 채우는 데 사용할 색상을 설정하라.

copyInto: newCanvas

이것과 똑같지만 다른 캔버스, newCanvas에 표시된 새 BCanvasObject를 응답하라. 새 인스턴스는 리턴되는 당시에는 아직 생성되지 않은 상태다.

copyObject

이것과 똑같은 새 BCanvasObject를 응답하라. 같은 캔버스 항목을 참조하고 같은 데이터로 된 새 스몰토크 객체를 생성하기만 하는 #copy와 달리 #copyObject로 생성된 객체는 물리적으로 원본과 차이가 있다. 새 인스턴스는 리턴되는 당시에는 아직 생성되지 않은 상태다.

createCopy

이것과 똑같은 새 BCanvasObject를 응답하라. 같은 캔버스 항목을 참조하고 같은 데이터로 된 새 스몰토크 객체를 생성하기만 하는 #copy와 달리 #copyObject로 생성된 객체는 물리적으로 원본과 차이가 있다. 새 인스턴스는 리턴되는 당시에 이미 생성된 상태다.

createCopyInto: newCanvas

이것과 똑같지만 다른 캔버스, newCanvas에 표시된 새 BCanvasObject를 응답하라. 새 인스턴스는 리턴되는 당시에 이미 생성된 상태다.

deepCopy

여러 객체에 걸쳐 데이터를 일관되게 만들 것이기 때문에 복사본을 만드는 의미가 없다; 따라서 수신자를 응답하라.

grayOut

50% gray stippling 패턴으로 수신자에게 적용하라.

shallowCopy

여러 객체에 걸쳐 데이터를 일관되게 만들 것이기 때문에 복사본을 만드는 의미가 없다; 따라서 수신자를 응답하라.


BLOX.BCanvasObject: 위젯 프로토콜

create

객체가 아직 생성되지 않고 올바로 초기화되었다면 부모 캔버스에 실제로 이것을 삽입하라.

created

객체가 플레이스홀더에 불과하는지 아니면 부모 캔버스에 실제로 이미 삽입되었는지 응답하라.

lower

디스플레이 리스트에서 최하 위치로 항목을 이동시켜라. 자식 위젯은 항상 다른 항목 타입을 흐릿하게 만들며, 창 항목의 삽입 순서(stacking order)는 위젯 객체로 직접 메서드를 전송함으로써 결정된다.

raise

디스플레이 리스트에서 최고 위치로 항목을 이동시켜라. 자식 위젯은 항상 다른 항목 타입을 흐릿하게 만들며, 창 항목의 삽입 순서(stacking order)는 위젯 객체로 직접 메서드를 전송함으로써 결정된다.

redraw

객체를 부모 캔버스에서 강제로 표시되도록 만들고, 실제 부모에게 삽입되지 않은 경우 생성하며, 변경된 경우 그 위치를 새로고침(refresh)하라.

remove

캔버스에서 객체를 제거하라.

show

객체가 캔버스 중간에서 보이도록 확인하고, 필요 시 스크롤하라.


Notes