如何在Pharo工作区中枚举所有工作区窗口?

时间:2013-01-07 20:54:54

标签: enumeration pharo class-hierarchy

我想列出Pharo窗口中的所有工作区窗口。当我移动单击工作区窗口时,所选项目通常是PluggableTextMorph或TextMorphForEditView。当它是一个PluggableTextMorph时,它拥有一个TextMorphforEditView,它没有被点击选中。

检查或探索层次结构显示由模型工作区的SystemWindow拥有的层次结构。

首先,我需要使用哪些代码列出系统中的所有TextMorphforEditView,并查找所有权层次结构以确定SystemWindow的模型是工作区还是成绩单?

1 个答案:

答案 0 :(得分:1)

要获取所有工作区,您只需浏览或检查:

Workspace allInstances

如果您对包含工作区的所有窗口感兴趣,可以浏览或检查:

| listOfWindows |

listOfWindows := Workspace allInstances collect: 
    [:eachWorkspace | eachWorkspace containingWindow]