Pharo: как открыть стенограмму, если нет открытой

Я хотел бы знать, является ли окно Transcript видимым, и если не открывать его.

Поскольку модель, лежащая в основе стенограммы, является PluggableTextMorph, я подумал о том, чтобы собрать все те, которые представляют транскрипты с

PluggableTextMorph allInstances select: [:e| электронная модель = стенограмма]

Это все хорошо, возвращает кучу объектов. Тем не менее, не ясно, какой из них виден. Наверное, начинающий морфийский вопрос...:)

1 ответ

Решение

Может быть, есть лучший способ, но вы определенно можете использовать это:

World submorphs
  detect: [ :m | m model = Transcript ]
  ifNone: [ Transcript open ]

или же

Обнаружены все экземпляры SystemWindow: [:m | m model = Transcript ] ifNone: [ Transcript open ]

Дело в том, что я пытался сделать

ThreadSafeTranscriptPluggableTextMorph allInstances detect: ...

но почему-то морф еще жив, даже если окно закрыто

Другие вопросы по тегам