ResizingTool
ResizingTool は、要素のサイズをインタラクティブに変更するために使われます。
継承元: DiagramTool
プロパティ
protected FrameworkElement AdornedElement { get; set; }
value = resizingTool.AdornedElement
resizingTool.AdornedElement = value
再サイズされている現在のFrameworkElementを受け取り、設定します。
protected Node AdornedNode { get; }
value = resizingTool.AdornedNode
AdornedElement が にある現在の Node を取得します。
public Size CellSize { get; set; }
value = resizingTool.CellSize
resizingTool.CellSize = value
選択した要素のセルサイズを取得またはセットするので、セルサイズの複数個数に制限されます。
protected FrameworkElement Handle { get; set; }
value = resizingTool.Handle
resizingTool.Handle = value
ドラッグされている現在のリサイズハンドルを受け取り、またはセットします。
public Size MaxSize { get; set; }
value = resizingTool.MaxSize
resizingTool.MaxSize = value
選択した要素の最大サイズを取得または設定します。
public Size MinSize { get; set; }
value = resizingTool.MinSize
resizingTool.MinSize = value
選択した要素の最小サイズを取得または設定します。
protected Rect OriginalBounds { get; set; }
value = resizingTool.OriginalBounds
resizingTool.OriginalBounds = value
ユーザーが再サイズを始めたとき、AdornedElementのモデル座標で、境界を受け取り、設定します。
protected Point OriginalLocation { get; set; }
value = resizingTool.OriginalLocation
resizingTool.OriginalLocation = value
ユーザがリサイジングを始めたとき、AdornedNodeのモデル座標で、場所を受け取り、設定します。
メソッド
public override bool CanStart()
result = resizingTool.CanStart()
ResizingToolは、マウスダウンイベントがリサイズハンドルに存在する場合に実行できます。
protected virtual Size ComputeCellSize()
result = resizingTool.ComputeCellSize()
このメソッドで返される値の複数は、サイズが返される必要があります。
戻り値: CellSizeは、幅と高さの1つまたは2つがDouble.NaNまたはゼロである限り、CellSize です。もしそうなら、ResizeCellSizeのResizeCellSizeTKENの横幅と高さが使われます。しかし、幅と高さの1つまたは2つがDouble.NaNまたは0の場合、AdornedNodeの背後にあるグリッドスナップノードを検索し、ResizeCellSizeS5TOKENであり、ResizeCellSizeDragOverSnapEnabledの1つで、ResizeCellSizeResizeCellSizeResizeCellSizeS5TOKENのノードが、ResizeCellSizeResizeCellSizeResizeCellSizeResizeCellSizeResizeCellSizeResizeCellSizeResizeCellSizeTKENまたはResizeCellSizeResizeCellSizeTKENまたはResizeCellSizeResizeCellSizeTKENのどちらがResizeCellSizeResizeCellSizeTKENまたはResizeCellSizeTKENまたはS2TTOKENまたはResizeCellSizeS6TOKENのどちらのどちらのどちらのノードがデフォルトでは、ResizeCellSizeDragOverSnapCellSize
protected virtual Size ComputeMaxSize()
result = resizingTool.ComputeMaxSize()
有効サイズはMaxSizeとFrameworkElementのMaxWidthの@のMaxWidthとMaxHeightの最小値です。
戻り値: 再サイズ中に必要な最大サイズ
protected virtual Size ComputeMinSize()
result = resizingTool.ComputeMinSize()
最小サイズはMinSizeとFrameworkElementのMinWidthS2@の@とMinWidthの@とMinHeightの最高です。
戻り値: 再サイズ時に最小サイズ
protected virtual Rect ComputeResize(Point newPoint, Spot spot, Size min, Size max, bool reshape)
result = resizingTool.ComputeResize(newPoint, spot, min, max, reshape)
OriginalBoundsにスポットを付与し、新しいポイントを計算します。
- newPoint
- モデルのポイント座標
- spot
- ハンドルがドラッグされている長方形の境界のスポット
- min
- 計算された長方形は、これらの寸法と同じくらい大きくなければなりません
- max
- 計算された長方形は、これらの寸法よりも大きくならず
- reshape
- 長方形のアスペクト比が変化する可能性があるかどうか
public override void DoCancel()
resizingTool.DoCancel()
AdornedElementのOriginalBoundsを復元し、このツールを停止します。
public override void DoDeactivate()
resizingTool.DoDeactivate()
現行の編集は、StopTransaction となります。
public override void DoMouseMove()
resizingTool.DoMouseMove()
マウスポイントで決定した新しい境界線でRectを呼び出します。
public override void DoMouseUp()
resizingTool.DoMouseUp()
最近のマウスポイントに基づいて長方形を呼ぶと、ツールを停止する前に「オブジェクトのサイズ変更」イベントを上げます。
protected virtual void DoResize(Rect newr)
resizingTool.DoResize(newr)
AdornedElementのWidway and/or Height を変更し、AdornedNodeのロケーションは、新しい長方形の境界を割り当てました。
- newr
public override void UpdateAdornments(Part part)
resizingTool.UpdateAdornments(part)
ノードが選択され、表示されればAdornedElementの境界の端に沿って、ポイントでハンドルをリサイズするアドレンスを表示し、CanResizeが真の場合。
- part
フィールド
public static readonly DependencyProperty CellSizeProperty
value = ResizingTool.CellSizeProperty
CellSize依存性プロパティを識別します。
public static readonly DependencyProperty MaxSizeProperty
value = ResizingTool.MaxSizeProperty
MaxSize依存性プロパティを識別します。
public static readonly DependencyProperty MinSizeProperty
value = ResizingTool.MinSizeProperty
MinSize依存性プロパティを識別します。