Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ТСМ / developer-guide.pdf
Скачиваний:
38
Добавлен:
10.05.2015
Размер:
7.31 Mб
Скачать

StarUML. Руководство разработчика. Глава 4. Использование API

33 / 139

 

 

 

 

 

 

 

 

 

 

 

 

 

Тип элемента

Метод создания

 

 

 

 

 

 

 

 

 

 

 

UMLClassifierRole; Receiver: UMLClassifierRole;

 

 

 

 

 

CommunicationConnection: UMLAssociationRole; Kind:

 

 

 

 

 

UMLFactoryMessageKind): IUMLMessage

 

 

 

UMLInclude

 

CreateInclude(AOwner: UMLNamespace; Includer: UMLUseCase;

 

 

 

Includee: UMLUseCase): IUMLInclude

 

 

 

UMLExtend

 

CreateExtend(AOwner: UMLNamespace; Extender: UMLUseCase;

 

 

 

Extendee: UMLUseCase): IUMLExtend

 

 

 

UMLRealization

 

CreateRealization(AOwner: UMLNamespace; Client: UMLModelElement;

 

 

 

Supplier: UMLModelElement): IUMLRealization

 

 

Следующий пример иллюстрирует создание модельных элементов UML с использованием

IUMLFactory.

var app = new ActiveXObject("StarUML.StarUMLApplication"); var facto = app.UMLFactory;

var pjt = app.GetProject();

var mdlElem = facto.CreateModel(pjt); // Create UMLModel element.

var pkgElem = facto.CreatePackage(mdlElem); // Create UMLPackage element. var clsElem1 = facto.CreateClass(pkgElem); // Create UMLClass element. var clsElem2 = facto.CreateClass(pkgElem); // Create UMLClass element.

var attrElem = facto.CreateAttribute(clsElem1); // Create UMLAttribute element. var opElem = facto.CreateOperation(clsElem1); // Create UMLOperation element. var paramElem1 = facto.CreateParameter(opElem); // Create UMLParameter element. var paramElem2 = facto.CreateParameter(opElem); // Create UMLParameter element. paramElem1.TypeExpression = "String";

paramElem2.Type_ = clsElem2;

...

Удаление модельных элементов UML

Метод DeleteModel интерфейса IStarUMLApplication может использоваться, чтобы удалять элементы модели UML. Метод CanDelete интерфейса IModel может использоваться, чтобы проверять, может ли текущий модельный элемент быть удален. Если текущий модельный элемент имеет статус "только для чтения", метод CanDelete возвращает "false". Помните, когда модельный элемент удаляется, все его элементы более низкого уровня, и все его визуальные представления автоматически удаляются вместе с ним. Следующий пример, продолжение примера, приведённого выше, показывает удаление класса.

...

if (clsElem1.CanDelete() == true){

app.DeleteModel(clsElem1);

}

...

Работа с диаграммами UML

Создание элемента диаграммы UML

IUMLFactory может использоваться, чтобы создавать диаграммы UML аналогично созданию элементов модели UML. IUMLFactory обеспечивает следующие связанные с диаграммами методы создания.

 

 

 

 

 

 

 

Тип диаграммы

Метод создания

 

 

 

 

 

 

 

 

UMLClassDiagram

 

 

CreateClassDiagram(AOwner: Model): IUMLClassDiagram

 

 

 

 

 

 

 

Соседние файлы в папке ТСМ