Решение состоит в том, чтобы создать новую область видимости для нового редактора и вставить соответствующие модели в эту новую область видимости. Если вы используете рабочее пространство, это делается с помощью встроенных функций, таких как dockInNewScope
:
workspace.dockInNewScope<MyEditor>(myModel1, myModel2, etc)
Если вы не используете рабочее пространство, вы можете создать новую область вручную, поместить в нее модели и Кроме того, в новой области видимости поиска:
val newScope = Scope(myModel1, myModel2)
find<MyEditor>(newScope).openWindow()
MyEditor
в этом случае увидит myModel
и myModel2
в своей области видимости, так что он сможет внедрить их.