C# 클래스 SIL.FieldWorks.SharpViews.GroupBox

Base class for all boxes that have children.
상속: Box
파일 보기 프로젝트 열기: sillsdev/FieldWorks 1 사용 예제들

공개 프로퍼티들

프로퍼티 타입 설명
NumBoxes int

공개 메소드들

메소드 설명
AddBox ( Box box ) : void

Add another box (to the end of the chain).

ChildTransformFromRootTransform ( PaintTransform rootTransform ) : PaintTransform

Given the transform currently used to draw the root, give the transform used to draw your children.

Contains ( Box other ) : bool

Return true if this box contains the other one, that is, is one of its containers. Only group boxes can contain others.

FindBoxAt ( Point where, PaintTransform ptrans, PaintTransform &leafBoxTransform ) : LeafBox

If there is a leaf box at the specified position, return it. Also return the paint transform that should be passed to operations on that box. Enhance JohnT: should probably always return something, if box contains any leaf? Where is in drawing coords.

GetSelectionAt ( Point where, IVwGraphics vg, PaintTransform ptrans ) : Selection
GroupBox ( AssembledStyles styles ) : System
InsertBox ( Box newBox, Box insertAfter ) : void

Add a child box after the specified box (one of your children).

NextInSelectionSequence ( bool includeChildren ) : Box

Answer the next box in which to draw a selection after the current one. This is basically a sequence which considers a box to be come immediately before - its first child, if it has one; - otherwise, its Next box, if any; - otherwise, the Next box of its closest ancestor that has one. Todo JohnT: eventually will be able to be constrained to the same column.

PaintBackground ( IVwGraphics vg, PaintTransform ptrans ) : void
PaintForeground ( IVwGraphics vg, PaintTransform ptrans ) : void
SelectAtEnd ( ) : InsertionPoint

A group box by default selects at the end of its last box. Enhance: if selecting in the last box can fail (e.g., because it's a group with no children, or because we add an argument to require an editable selection and the last box doesn't have one, we may need to try more boxes, in reverse order.

SelectAtStart ( ) : InsertionPoint

Make a selection at the start of the box. Subclasses override.

비공개 메소드들

메소드 설명
BoxBefore ( Box target ) : Box
FindNumBoxes ( ) : void
FirstVisibleBox ( IVwGraphics vg, PaintTransform ptrans ) : Box

Return the first box that actually needs to be painted, that is, that intersects the clip rectangle specified in the VwGraphics. It is acceptable to answer the FirstBox, as here, if clipping is not needed; this is an optional optimization.

IsAfterVisibleBoxes ( Box box, IVwGraphics vg, PaintTransform ptrans ) : bool

Return true if the argument (child) box and all subsequent boxes need not be painted, typically because they occur after the end of the clip rectangle specified in the VwGraphics. It is acceptable to answer false, if no clipping is wanted, or for the first box for which we answer true to be later than the optimal one; this is an optional optimization.

RemoveBoxes ( Box firstGoner, Box lastGoner ) : void

메소드 상세

AddBox() 공개 메소드

Add another box (to the end of the chain).
public AddBox ( Box box ) : void
box Box
리턴 void

ChildTransformFromRootTransform() 공개 메소드

Given the transform currently used to draw the root, give the transform used to draw your children.
public ChildTransformFromRootTransform ( PaintTransform rootTransform ) : PaintTransform
rootTransform PaintTransform
리턴 PaintTransform

Contains() 공개 메소드

Return true if this box contains the other one, that is, is one of its containers. Only group boxes can contain others.
public Contains ( Box other ) : bool
other Box
리턴 bool

FindBoxAt() 공개 메소드

If there is a leaf box at the specified position, return it. Also return the paint transform that should be passed to operations on that box. Enhance JohnT: should probably always return something, if box contains any leaf? Where is in drawing coords.
public FindBoxAt ( Point where, PaintTransform ptrans, PaintTransform &leafBoxTransform ) : LeafBox
where Point
ptrans PaintTransform
leafBoxTransform PaintTransform
리턴 LeafBox

GetSelectionAt() 공개 메소드

public GetSelectionAt ( Point where, IVwGraphics vg, PaintTransform ptrans ) : Selection
where Point
vg IVwGraphics
ptrans PaintTransform
리턴 SIL.FieldWorks.SharpViews.Selections.Selection

GroupBox() 공개 메소드

public GroupBox ( AssembledStyles styles ) : System
styles AssembledStyles
리턴 System

InsertBox() 공개 메소드

Add a child box after the specified box (one of your children).
public InsertBox ( Box newBox, Box insertAfter ) : void
newBox Box
insertAfter Box
리턴 void

NextInSelectionSequence() 공개 메소드

Answer the next box in which to draw a selection after the current one. This is basically a sequence which considers a box to be come immediately before - its first child, if it has one; - otherwise, its Next box, if any; - otherwise, the Next box of its closest ancestor that has one. Todo JohnT: eventually will be able to be constrained to the same column.
public NextInSelectionSequence ( bool includeChildren ) : Box
includeChildren bool
리턴 Box

PaintBackground() 공개 메소드

public PaintBackground ( IVwGraphics vg, PaintTransform ptrans ) : void
vg IVwGraphics
ptrans PaintTransform
리턴 void

PaintForeground() 공개 메소드

public PaintForeground ( IVwGraphics vg, PaintTransform ptrans ) : void
vg IVwGraphics
ptrans PaintTransform
리턴 void

SelectAtEnd() 공개 메소드

A group box by default selects at the end of its last box. Enhance: if selecting in the last box can fail (e.g., because it's a group with no children, or because we add an argument to require an editable selection and the last box doesn't have one, we may need to try more boxes, in reverse order.
public SelectAtEnd ( ) : InsertionPoint
리턴 SIL.FieldWorks.SharpViews.Selections.InsertionPoint

SelectAtStart() 공개 메소드

Make a selection at the start of the box. Subclasses override.
public SelectAtStart ( ) : InsertionPoint
리턴 SIL.FieldWorks.SharpViews.Selections.InsertionPoint

프로퍼티 상세

NumBoxes 공개적으로 프로퍼티

public int NumBoxes
리턴 int