 |
 |
QotD |
"To be or not to be" – Shakespeare
|
|
        |
 |
Note on the implementation of Workspace
Last updated at 11:02 am UTC on 5 April 2019
Needs to be updated...
Also see List the content of all workspaces of all projects in an image.
In Morphic a Workspace is opened by plugging a FAQ: Entry Field in Morphic on it and wrapping it in a SystemWindow. The SystemWindow has as submorphs an AlignmentMorph and the FAQ: Entry Field in Morphic. The AlignmentMorph is kept in the instance variable labelArea of the SystemWindow.
The following method opens the Workspace. It is implemented in the superclass StringHolder
openAsMorphLabel: labelString inWorld: aWorld
"Workspace new openAsMorphLabel: 'Workspace'"
| window |
window _ (SystemWindow labelled: labelString) model: self.
window addMorph: (PluggableTextMorph on: self text: #contents accept: #acceptContents:
readSelection: nil menu: #codePaneMenu:shifted:)
frame: (0@0 corner: 1@1).
window openInWorld: aWorld