UndoManager

StockSharp.Xaml.Diagram.GXDiagram.Model

Класс UndoManager наблюдает и записывает изменения модели и поддерживает операции отмены и повтора.

Реализует: IUndoManager

Конструкторы

UndoManager
public UndoManager()
undoManager = UndoManager()

Создайте UndoManager, который готов записывать модификации моделей, но пока не знает о каких-либо моделях.

Свойства

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

Получает или устанавливает, будет ли этот менеджер отключения выдавать предупреждения слушателям, когда изменения модели происходят за пределами транзакции.

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

Получает текущее название транзакции, данное String.

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

Получает текущий IUndoableEdit, чтобы быть переделанным, или нуль, если нет.

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

Получает текущий IUndoableEdit быть отменены, или недействительным, если нет.

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

Это свойство верно во время звонка в Ундо или Редо.

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

Получает или устанавливает максимальное количество сложных правок, которые запомнит этот менеджер отмены.

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

Получает список моделей, для которых этот UndoManager записывает информацию о не-редо.

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, для которого он получает уведомления об изменениях модели.

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)

Этот метод называется String при выполнении сложного редактирования.

cedit
CurrentEdit; это может быть недействительным, если в момент совершения сделки не было никаких изменений

Возвращает: По умолчанию, неизмененный.

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

Просто позвоните в String, совершая текущую транзакцию, с презентационным названием для транзакции.

tname
Название сделки

Возвращает: Значение призыва к струне

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

Остановите текущую транзакцию, либо откатите ее назад, либо совершите ее.

commit
истинное прекращение транзакции в обычном режиме; ложное прерывание ее и откат существующих правок
tname
внутреннее локально-нейтральное название для транзакции;

Возвращает: Это верно для совершенной транзакции на высшем уровне

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

При наличии IUndoableEdit возвращайте отредактированный объект, который представляет собой то, что было изменено.

edit
a IUndoableEdit, обычно либо ModelChangedEventArgs, либо CompoundEdit

Возвращает: Обычно это узел или ссылка, но это может быть нулевым, если такого объекта нет, возможно, потому, что свойство модели было изменено или потому, что в аргументе не было реальных правок.

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)

Назовите этот метод, чтобы сообщить этому менеджеру отмены, что он больше не будет уведомлен о событиях, изменивших модель.

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

Просто позвони Стрингу, откатив текущую транзакцию.

Возвращает: Значение призыва к струне

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

Этот предикат отвечает за принятие решения о том, является ли ModelChangedEventArgs достаточно интересным для записи.

evt

Возвращает: Обычно ложные, что приводит к запоминанию данного события; но верные для отрицательных значений перечня ModelChange.

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

Начните транзакцию, где изменения проводятся по адресу CompoundEdit.

Возвращает: Правда, если начать транзакцию на высшем уровне

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

За отладку.

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

Восстановить состояние некоторых моделей до текущего IUndoableEdit.