Новая дочерняя опция Eclipse, доступная только для включения, равна true - PullRequest
0 голосов
/ 12 мая 2011

У меня есть метамодель ecore, которая имеет некоторые связи между ее классами. Некоторые из них являются сдерживающими, а другие нет. Я создал динамический экземпляр, который я редактирую с помощью редактора рефлексивного образца.

На данный момент я не могу создавать дочерние элементы из классов, отношения которых отличаются от условий содержания. То есть опция «новый ребенок» недоступна в меню, только «новый брат».

Я не понимаю, почему. Я не хочу настраивать метамодель, добавляя контейнеры во все отношения, так как метамодель верна без вмещений. И только установив для контейнера / контейнера значение true, можно включить новый дочерний параметр в динамическом экземпляре.

Как поступить? Почему это ограничение?

Большое спасибо.

1 Ответ

1 голос
/ 12 мая 2011

Так как ваши несохраняющие отношения не содержатся, вы не можете создать новый экземпляр с помощью "new child". Вместо этого вы можете ссылаться только на существующий объект.

Точнее: давайте предположим, что ваш EClass A имеет ссылку на сдерживание с именем ref в EClass B. Если вы создадите экземпляр A и выберете его в редакторе, вы найдете свойство «ref» в свойствах посмотреть, где вы можете выбрать экземпляры B.

Обратите внимание, что вы должны создавать экземпляры B в их собственном EResource (то есть в файле). Чтобы иметь возможность ссылаться на них из экземпляра A, вы должны загрузить ресурс, содержащий экземпляр B.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...