Типы диаграмм, связи и не-связи, панель инструментов, элементы диаграммы

В данной статье описаны особенности и возможности по созданию и редактированию элементов на диаграмме.
Вопрос работы с диаграммами как с репозиторными объектами разобран в статье “Работа с диаграммами в браузере репозитория”.

Типы редактируемых UML-диаграмм

  1. Диаграмма активностей (Activity diagram)
  2. Диаграмма классов (Class diagram)
  3. Диаграмма сотрудничества (Collaboration diagram)
  4. Диаграмма развёртывания (Deployment diagram)
  5. Диаграмма последовательности (Sequence diagram)
  6. Диаграмма состояний (Statechart diagram)
  7. Диаграмма вариантов использования (UseCase diagram)

Интерфейс редактора диаграмм

Окно редактора диаграмм содержит следующие области:

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

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

Пример

Назначение кнопок панели инструментов

Пример

Наименование кнопки Описание
Сохранение Cохранение диаграммы.
Предварительный просмотр Открытие окна предварительного просмотра перед выводом на принтер.
Печать Вывод диаграммы на принтер.
Настройки принтера Открытие диалогового окна настроек свойств принтера.
Вырезать выделенные объекты Аналогично копированию объектов, только выделенные элементы удаляются с диаграммы.
Копировать выделенные объекты Выделенные на диаграмме элементы копируются в буфер обмена Windows. Скопированные элементы можно вставить как в Flexberry Designer на другую однотипную диаграмму, так и в какое-либо другое приложение (например, текстовый или графический редактор) в виде Windows metafile (WMF).
Вставить из буфера обмена Вставить предварительно скопированные в буфер обмена элементы на диаграмму.
Сохранить диаграмму как Windows metafile (WMF) Позволяет сохранить диаграмму как векторную картинку, есть возможность экспортировать диаграммы в формат wmf как с уровня системы, так и с уровня стадии.
Удаление выделенных элементов Выделенные на диаграмме объекты удаляются.
Крупнее Увеличение масштаба изображения диаграммы.
Мельче Уменьшение масштаба изображения диаграммы.
Выбор масштаба изображения Выбор относительного масштаба изображения диаграммы.
Цвет фона новых элементов Изменение цвета фона всех новых элементов. При этом уже существующие объекты диаграммы свой цвет не изменяют. Выбранный цвет фона отображается в статусной строке.
Цвет текста новых элементов Изменение цвета текста и линий всех новых элементов, аналогично цвету фона.
Создавать свернутыми Удобно, что некоторые диаграммные элементы могут показываться свёрнутыми. Например, свёрнутый класс на диаграмме классов становится просто прямоугольником с именем класса. При этом, атрибуты и методы класса, разумеется, никуда не исчезают, они просто не отображаются. В общем, это не противоречит нотации. Так вот, при включении данного переключателя новые элементы на диаграмме будут создаваться свернутыми.
Немедленное редактирование При включении данного переключателя, после создания нового объекта на диаграмме, происходит автоматический переход в режим редактирования наименования элемента.
Выбор (отмена множественного создания объектов) При включении данного переключателя после создания нового объекта на диаграмме указатель мыши переходит в обычный режим выделения. При отключенном переключателе происходит запоминание выбранного на панели элементов типа элемента, и каждый последующий щелчок мыши в области диаграммы вызывает создание нового элемента того же типа.
Отмена последнего действия Отмена последнего действия по редактированию диаграммы.
Возврат последнего действия Возврат последнего отмененного действия.

Манипулирование элементами на диаграмме

Главным образом, элементы диаграмм делятся на два типа:

  • связи (ассоциации, коннекторы комментариев и т.п.)
  • “не-связи” (классы, варианты, акторы и т.п.)

Для создания нового элемента-“не-связи” необходимо:

  • мышью выбрать нужный тип элемента на панели
  • щелкнуть мышью на свободном месте в области диаграммы.

Для создания нового элемента-связи необходимо:

  • мышью выбрать нужный тип элемента
  • выбрать начальный доступный элемент “не-связь”
  • затем (если нужно) кликнуть произвольное количество раз на пустых местах в диаграмме (чтобы придать связи нужный изгиб)
  • выбрать конечный доступный элемент.

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

Поведение “не-связи” при выделении

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

Поведение связей при выделении

В общем случае связь представляет собой ломаную, концы которой присоединены к элементам “не-связям”. Если пользователь щёлкает мышью на любом отрезке ломаной, связь выбирается целиком: концы и каждый угол снабжаются маркерами. Потянув за конечные маркеры, пользователь может “перецепить” конец к любому другому доступному элементу. Потянув за любой маркер угла, пользователь перемещает все углы связи.
Если пользователь щёлкает мышью на угле, появляется маркер этого угла и пользователь может переместить угол, “потянув” за этот маркер.
Для того чтобы создать новый угол, пользователь может выбрать инструмент из панели инструментов, затем кликнуть на нужном отрезке. То же самое можно сделать просто кликнув мышью на отрезке, удерживая на клавиатуре Ctrl. То же самое можно сделать и из контекстного меню.
Для того чтобы удалить угол, необходимо кликнуть на нём, удерживая на клавиатуре Alt, либо из контекстного меню.
Для того чтобы создать новый угол, пользователь может выбрать инструмент Пример из панели инструментов, затем кликнуть на нужном отрезке. То же самое можно сделать просто кликнув мышью на отрезке, удерживая на клавиатуре Ctrl. То же самое можно сделать и из контекстного меню.
Для того чтобы удалить угол, необходимо кликнуть на нём, удерживая на клавиатуре Alt, либо из контекстного меню.

Общие пункты контекстного меню для всех элементов

Пример

Пункт меню Краткое описание
Удалить Удалить элемент с диаграммы.
Установить цвет текста Установить цвет текста для выделенных элементов (созданная палитра цветов сохраняется в стадию).
Установить цвет фона Установить цвет фона для выделенных элементов (созданная палитра цветов сохраняется в стадию).
Копировать Аналогично кнопке копирования на тулбаре.
Вставить Аналогично кнопке вставки на тулбаре.
Показать зависимости Показывает, на каких ещё диаграммах внутри данной стадии используется данный элемент.

Выравнивание классов по ширине

Для того чтобы выровнять классы (или любые другие прямоугольные сущности) по ширине нужно:

  1. Выделить необходимые объекты.
  2. В контекстом меню выбрать “Выровнять по ширине”.

Всем выделенным объектам установится одинаковая ширина, равная максимальной ширине выделенных объектов.

Пессимистическая блокировка репозиторных объектов

Flexberry Designer предназначается в первую очередь для проектных команд, а не индивидуальных разработчиков.
Чтобы обеспечить совместную работу над UML-моделью в редакторе диаграмм реализован механизм пессимистических блокировок. Это означает, что если один участник команды начинает работу над каким-либо репозиторным объектом (стадией, диаграммой, классом, связью), то другим этот же элемент становится доступен только для просмотра.
Как только первый пользователь заканчивает редактирование - репозиторный объект становится доступным для редактирования другими пользователями.
В случае, если репозиторный объект не был закрыт должным образом (отключение электропитания или другие проблемы), то снятие блокировки выполняется простым повторным запуском Flexberry Designer. Если класс открыт на редактирование другим пользователем, то кем именно он был заблокирован можно посмотреть в строке состояния (левый нижний угол окна, под полем диаграммы).