Перемещение объектов между папками одного приложения

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

Для перемещения объектов SAD в контекстном меню нужного объекта выбирает пункт «Переместить» - «В текущем приложении». Открывается диалоговое окно «Выберите папку», содержащее дерево папок приложения и кнопку «Переместить»:

Рисунок 4.8. Выбор целевой папки

Выбор целевой папки

Дерево по умолчанию развернуто на один уровень: отображены папки, располагающиеся непосредственно в корне приложения. Выделена корневая нода приложения.

Другие объекты приложения, кроме папок, в этом дереве не отображаются.

SAD выбирает в дереве целевую папку или корневую ноду приложения и нажимает на кнопку «Переместить». Возможно выполнение альтернативный потоков 1-3.

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

Если для перемещения была выбрана папка приложения, то она перемещается вместе со всеми объектами приложения, которые в ней располагаются, и дочерними папками.

Альтернативный поток 1. В целевой папке содержится папка с таким же наименованием, как у перемещаемой папки.

Система отображает сообщение об ошибке с текстом: «Папка с таким наименованием уже присутствует в указанной папке», перемещение не выполняется, диалог не закрывается.

Альтернативный поток 2. Целевая папка является дочерней для перемещаемой папки.

Система отображает сообщение об ошибке с текстом: «Перемещение папки в ее дочернюю папку не допускается», перемещение не выполняется, диалог не закрывается.

Альтернативный поток 3. В качестве целевой папки указывается сама перемещаемая папка.

Система отображает сообщение об ошибке с текстом: «Перемещение папки в саму себя не допускается», перемещение не выполняется, диалог не закрывается.