Developer Request #4092
openПересмотр системы transaction для ожидаемой поддержки undo\redo
0%
Description
На данный момент в проекте существуют места в которых одно действие со стороны пользователя влечет за собой несколько транзакций. В связи с этим для отмены несколько операций undo. Ожидается что несколько подобных действий повлекут за собой одну операцию undo\redo. Как пример решения данной проблемы было предложено разработать механизм поддержи "мета-транзакций" или "операций". Каждая "операция" может содержать несколько транзакций, но при undo\redo является одним действием. Как при этом обрабатываются обычные транзакции - остается под вопросом. Также стоит рассмотреть порядок вызова событий о прошедших действиях.
Требуется разработать механизм для решения вышеописанной проблемы.
Updated by Denis Kildishev over 11 years ago
Примеры ситуации с 2мя транзакциями:
1) При добавлении Location в ReqMarker если выбрать один из пунктов меню "Create Requirement..", то это действие будет восприниматься системой как два отдельных. То есть, если сделать undo, то отмениться только добавление location к requirement, но сам requirement не исчезнет
2) При перемещении requirement. Рассмотрим нижепредставленное дерево требований. В скобках указаны Id требований
-parent1(01) -child11(01) -parent2(02) -child21(01)
Если мы переместим child21 в parent1, произойдет 2 действие - переименование этого требования и, собственно, перенос.