On 7 January 2013 22:12, Frank Church <[email protected]> wrote:
>
>
> On 7 January 2013 14:15, Frank Church <[email protected]> wrote:
>>
>>
>>
>> On 7 January 2013 13:01, Sean P. DeNigris <[email protected]> wrote:
>>>
>>> Frank Church wrote
>>> > I want to create a collection of Workspace contents...What kind of
>>> > array
>>> > would best suited to the task?
>>>
>>> I usually just start with an OrderedCollection until I feel the need for
>>> something more complicated. It's like an Array, but will grow
>>> dynamically.
>>>
>>> Two things to check out that already exist in the system:
>>> * you can save workspace contents to a file by clicking the little arrow
>>> in
>>> the top right of the workspace window and select "Save As..."
>>> * check out ScriptManager, which is a GUI for organizing and saving
>>> workspaces. It was included in Pharo by default in 1.3 (I think) and has
>>> a
>>> repo on sqs... search the list to see how/if it can be loaded into later
>>> Pharos.
>>>
>>
>>
>> I tried ScriptManager but it appears to save the files in a binary format.
>> It wouldn't open in a text editor .
>>
>> I am interested in something which persists in Smalltalk, so I can just
>> browse them without saving to disk, 'The Smalltalk Way'. Saving to disk is
>> an option though.
>>
>> Is there a way of selecting a workspace and extracting the text it
>> contains. Something like a small script to enumerate all open Workspaces and
>> printing out their text contents in a Transcript?
>>
>> I saw your blog article about using Smalltalk to view the contents of your
>> mailbox and the other about parsing a feeds contents and I want to try
>> something similar as a
>> start.
>>
>> My thoughts are along these lines.
>>
>> 1. Define a class consisting of workspace and a method which returns their
>> text content.
>> 2. Define collection
>> 3. List workspaces and add to collection. I am not sure if this will
>> replicate the workspaces perhaps they should be 'pointers' to the workspaces
>> 4. inspect/explore the results like you did in your blog.
>>
>> Thanks
>>
>>> HTH,
>>> Sean
>>>
>
>
>
> After further investigation this is what I found.
>
>  When I shift click a Workspace window the item selected is usually a
> PluggableTextMorph or a TextMorphForEditView. When it is a
> PluggableTextMorph it owns a TextMorphforEditView which was not picked by
> the click.
>
> Inspecting or exploring the hierarchy shows that is owned by a SystemWindow
> of a Model Workspace further up the hierachy.
>
> What code do I need to first list all TextMorphforEditView(s) in the system
> and lookup the ownership hierarchy to determine whether the model of the
> SystemWindow is a Workspace or a Transcript?


just accept text in all workspaces (cmd-s) before doing it:

Workspace allInstances collect: [:ea |
 ea contents
]


>
>>>
>>> --
>>
>> Frank Church
>>
>> =======================
>> http://devblog.brahmancreations.com
>
>
>
>
> --
> Frank Church
>
> =======================
> http://devblog.brahmancreations.com



-- 
Best regards,
Igor Stasenko.

Reply via email to