Есть ли в Sirius способ взаимодействия с пользователем (скажем, двойной щелчок) для вызова определенной Ecore операции над семантическим элементом? Подробная информация ниже.
Я использую Xcore для определения своей метамодели. У меня такая ситуация:
enum Status
{
Default
Foo
Bar
}
class ThingWithStatus
{
Status status
}
class ContainerForThings
{
contains ThingWithStatus[] thingList
op void resetAllThingsStatus()
{
for (ThingWithStatus thing : thingList)
{
thing.status = Status::DEFAULT
}
}
}
В настоящее время у меня есть диаграмма в Sirius с узлами-контейнерами для ContainerForThings с подузлами для ThingWithStatus. Что я хотел бы сделать, так это дважды щелкнуть узел контейнера на диаграмме и запустить операцию resetAllThingsStatus() для семантического элемента.
Если нет возможности сделать это напрямую, лучше всего превратить сгенерированный EMF код Java для resetAllThingsStatus() во внешнее действие Java, которое затем вызывает Сириус?
Заранее спасибо за помощь. - СЖ