UndoManager

StockSharp.Xaml.Diagram.GXDiagram.Model

UndoManagerクラスはモデル変更を観察し、記録し、undoとredo操作をサポートしています。

実装: IUndoManager

コンストラクター

UndoManager
public UndoManager()
undoManager = UndoManager()

モデル変更を記録する準備は整ったUndoManagerを作成しますが、それはまだ任意のモデルについて知らなかった。

プロパティ

ChecksTransactionLevel
public bool ChecksTransactionLevel { get; set; }
value = undoManager.ChecksTransactionLevel
undoManager.ChecksTransactionLevel = value

この undo マネージャーがトランザクションの外でモデル変更が発生したときに、Trace リスナーに警告を出力するか、または設定します。

CompoundEdits
public IList<IUndoableEdit> CompoundEdits { get; private set; }
value = undoManager.CompoundEdits
undoManager.CompoundEdits = value

化合物の編集の一覧を取得します。

CurrentEdit
public CompoundEdit CurrentEdit { get; set; }
value = undoManager.CurrentEdit
undoManager.CurrentEdit = value

追加のモデル変更イベントを記録するための現在の化合物編集を取得します。

CurrentTransactionName
public string CurrentTransactionName { get; }
value = undoManager.CurrentTransactionName

文字列 で指定した現在のトランザクション名を取得します。

EditToRedo
public IUndoableEdit EditToRedo { get; }
value = undoManager.EditToRedo

何もない場合は、現在の@IUndoableEditを赤くするか、nullを取得します。

EditToUndo
public IUndoableEdit EditToUndo { get; }
value = undoManager.EditToUndo

未だにIUndoableEditを、またはnullを持たせます。

IsUndoingRedoing
public bool IsUndoingRedoing { get; protected set; }
value = undoManager.IsUndoingRedoing
undoManager.IsUndoingRedoing = value

呼びかけ時にUndoやRedoにこのプロパティは真です。

MaximumEditCount
public int MaximumEditCount { get; set; }
value = undoManager.MaximumEditCount
undoManager.MaximumEditCount = value

この undo 管理者が記憶するコンパウンドの編集数を最大に取得または設定します。

Models
public IEnumerable<IDiagramModel> Models { get; }
value = undoManager.Models

このページでは、このUndoManagerのモデルリストを、undo/redo の情報を録画しています。

NestedTransactionNames
public IList<string> NestedTransactionNames { get; private set; }
value = undoManager.NestedTransactionNames
undoManager.NestedTransactionNames = value

トランザクション名を継承するスタックを取得します。

TransactionLevel
public int TransactionLevel { get; protected set; }
value = undoManager.TransactionLevel
undoManager.TransactionLevel = value

現在のトランザクションレベルを取得します。

UndoEditIndex
public int UndoEditIndex { get; protected set; }
value = undoManager.UndoEditIndex
undoManager.UndoEditIndex = value

インデックスをCompoundEditsに送り出し、現在の編集が不可能です。

メソッド

AddModel
public virtual void AddModel(IDiagramModel model)
undoManager.AddModel(model)

変更されたイベント通知を受信している IDiagramModelについて、この undo 管理者が知っていることを確認してください。

model
CanRedo
public virtual bool CanRedo()
result = undoManager.CanRedo()

これをRedoと呼ぶことができるとき、この述語は真です。

CanUndo
public virtual bool CanUndo()
result = undoManager.CanUndo()

誰がUndoを呼び出すことができるとき、この述語は本当です。

Clear
public virtual void Clear()
undoManager.Clear()

CompoundEditsの全てをクリアし、他の全ての状態をリセットします。

CommitCompoundEdit
protected virtual CompoundEdit CommitCompoundEdit(CompoundEdit cedit)
result = undoManager.CommitCompoundEdit(cedit)

化合物の編集をコミットするときに、このメソッドは文字列で呼び出されます。

cedit
CurrentEdit; コミット時に変更がなかった場合は、この null が無効になる可能性があります。

戻り値: デフォルトでは、変更されていない。

CommitTransaction
public bool CommitTransaction(string tname)
result = undoManager.CommitTransaction(tname)

文字列を呼び出して、現在のトランザクションをコミットし、トランザクションのプレゼンテーション名で行います。

tname
トランザクション名

戻り値: 呼び出しの値を文字列に値する)

EndTransaction
protected virtual bool EndTransaction(bool commit, string tname)
result = undoManager.EndTransaction(commit, tname)

現在のトランザクションをストップし、それをロールバックするか、コミットするかのいずれかにします。

commit
トランザクションを正常に終了させるには true。 偽りを破棄し、既存の編集をロールバックします。
tname
トランザクションのローカル内部のローカル中の名前

戻り値: コミットされたトップレベルのトランザクションのためにtrue

FindPrimaryObject
public virtual object FindPrimaryObject(IUndoableEdit edit)
result = undoManager.FindPrimaryObject(edit)

IUndoableEdit は変更されたものを表す編集されたオブジェクトを返します。

edit
IUndoableEdit、通常はModelChangedEventArgsまたはCompoundEditのいずれか

戻り値: 通常、Node または Link ですが、モデルプロパティが変更されたため、そのようなオブジェクトがない場合、または引数に実際の編集がなかったため、null になる可能性があります。

HandleModelChanged
public virtual void HandleModelChanged(object sender, ModelChangedEventArgs e)
undoManager.HandleModelChanged(sender, e)

変更されたイベントのIUndoableEdit@を@に作成します。

sender
e
Redo
public virtual void Redo()
undoManager.Redo()

現行のIUndoableEditにモデルを復元します。

RemoveModel
public virtual void RemoveModel(IDiagramModel model)
undoManager.RemoveModel(model)

変更されたイベントの通知がなくなったこの undo 管理者に通知するこのメソッドを呼び出します。

model
RollbackTransaction
public bool RollbackTransaction()
result = undoManager.RollbackTransaction()

文字列を呼び出して、現在のトランザクションをロールバックします。

戻り値: 呼び出しの値を文字列に値する)

SkipEvent
protected virtual bool SkipEvent(ModelChangedEventArgs evt)
result = undoManager.SkipEvent(evt)

ModelChangedEventArgsが記録されるのに十分な面白くないと判断するという責任があります。

evt

戻り値: 通常は、与えられたイベントが記憶される原因となる false です。ただし、ModelChange の負の値の列挙に当てはまります。

StartTransaction
public virtual bool StartTransaction(string tname)
result = undoManager.StartTransaction(tname)

変更がCompoundEdit@に保持されるトランザクションを開始。

戻り値: 上位レベルのトランザクションを開始するとtrue

ToString
public override string ToString()
result = undoManager.ToString()

デバッグ用

Undo
public virtual void Undo()
undoManager.Undo()

現行のIUndoableEditにモデルを格納する。