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?


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



-- 
Frank Church

=======================
http://devblog.brahmancreations.com

Reply via email to