Autodesk Inventor API. Первые шаги/Взаимодействие с пользователем: различия между версиями

Содержимое удалено Содержимое добавлено
Строка 281:
</pre>
 
== Организация отменыОтмена выполненных действий (TransactionManager) ==
 
 
==== Типичные варианты применения транзакций ====
=== TransactionManager ===
 
==== Типичные варианты применения транзакций ====
 
Транзакции (Transaction) используются Инвентором для отслеживания выполняемых действий. С точки зрения пользователя, каждая транзакция есть некоторое действие, которое может быть отменено (Undo). API открывает доступ к транзакциям так, чтобы вы могли управлять из своей программы процессом отмены выполняемых действий. Например, если вы разрабатываете процедуру, которая создает полностью определенный зависимостями эскизный элемент, вы, вероятно, захотите, чтобы конечный пользователь воспринимал эту операцию как неделимое действие, отменяемое за один шаг Undo. Без управления транзакциями через API, пользователь в процессе отмены будет иметь дело с последовательностью элементарных шагов (напр., создана линия, создана еще одна линия, создана дуга, наложена зависимость касательности (tangent constraint), создан управляющий размер (dimension constraint) и т.п.). Без вмешательства в последовательность шагов отмены сама возможность отмены становится для конечного пользователя бесполезной, особенно, если учесть конечный размер списка отмены длиной по умолчанию в 10 действий.
Строка 354 ⟶ 352 :
[[Изображение: Transactions_2.png| Transactions_2 ]]
 
==== Транзакции: вид изнутри ====
 
Прежде, чем далее описывать API для управления транзакциями, позвольте несколько подробнее рассмотреть их работу. Нас будут интересовать нюансы, нередко ускользающие от внимания рядового пользователя.
Строка 384 ⟶ 382 :
 
И последнее, что важно знать и что вызывает наибольшее количество недоразумений, — '''при закрытии документа стек полностью очищается'''. Это означает, что после закрытия документа вы лишаетесь возможности отката любых действий, совершенных к этому моменту. Это распространяется как на видимые (visible), так и на скрытые (hidden) документы. Например, если вы откроете документ, назначив аргументу Visible метода Open значение False, чтобы документ стал невидимым после открытия, выполните какие-нибудь действия в этом документе и закроете его, стек откатов окажется очищенным.
 
 
<!--
=== Change Processor ===
 
 
 
 
{{Внимание|Текст подраздела еще не готов}}