LEADTOOLS JavaScript(Leadtools.Annotations.Core)

フレームを表示

LEADTOOLSアノテーション機能は、アノテーションオートメーション操作を元に戻すために、Undoエンジンを含みます。取り消し可能な操作の数は、取り消しバッファーの容量によって決まります。

LEADTOOLSは、多数のメソッドとプロパティを取り消し能力を処理するために提供します。Containerの内側のオブジェクトがユーザーインターフェースによるユーザー対話によって、または、codeによって変更するときはいつでも、取り消し/やり直しバッファは変更します、そして、UndoRedoChangedイベントは発生されます。

UndoCapacityプロパティを使って、Undoメソッドを使って反転できる、またはRedoメソッドを使って再度適用できるユーザーアクションの数を取得または設定します。UndoCapacityプロパティのデフォルトのアクション数は10です。

操作を元に戻すことができるか、やり直すことができるかどうか決定するために、CanUndoCanRedoプロパティを使います。CanUndoプロパティがtrueを返すならば、操作が実行した最後のオートメーションを取り消すためにUndoメソッドを呼び出すことができます。そして、オブジェクトプロパティになされる変化を含みます。同様に、CanRedoプロパティがtrueを返す場合は、Redoメソッドを呼び出して、最後に実行された自動操作(オブジェクトプロパティの変更など)を繰り返すことができます。

AnnAutomationオブジェクトから直接メソッドを呼び出すとき、AnnAutomationオブジェクトはそれが維持管理する取り消しスタックにノードを内部的に追加します。たとえば、DeleteSelectedObjectsメソッドを呼び出して現在編集中のオブジェクトを削除すると、AnnAutomationオブジェクトによって取り消しスタックに取り消しハンドルが追加されます。EndUndoメソッドとCancelUndoメソッドとともにBeginUndoメソッドを用いてこのAnnAutomationオブジェクトによって維持管理される取り消しスタックに、ノードをプログラムコードから追加することができます。そうして、以下の手順を実行すること:

  1. 新しいノードを作成するために変更を行う前に、BeginUndoメソッドを呼び出します。
  2. AnnAutomationオブジェクトに変更を加えます。
  3. EndUndoメソッドを呼び出して、AnnAutomationオブジェクトの取り消しスタックにこの取り消しノードをコミットします。
  4. エラーが発生した場合(通常はcatchステートメントで受け取ります)は、CancelUndoメソッドを呼び出してハンドルを削除し、操作をキャンセルします。

通常、操作は一度に元に戻る1つの操作です。実行される最後の操作がコンテナからいくつかのオブジェクトをカットするならば、その操作を元に戻すことはコンテナにオブジェクトを返すでしょう。Undoは、AnnRedactObject.Realizeメソッドを使用して実行された合成操作には効かない点に注意してください。

© 1991-2015のLEAD Technologies, Inc. All Rights Reserved.