Hierarchical Tree View [KINDA LONG...]

Stewart MacLean stewart.maclean at nzhis.govt.nz
Thu Dec 2 03:47:59 UTC 1999


Hi Ali,

Thanks for your informative reply. It sounds like we've approached it in a
similar way although I'll have to take a closer look - I did this at the
beginning of the year when I was "resting".

I hear what you're saying about time! mix in a young family, a day job, and
a long commute and getting to grips with Morphic feels like a far off dream
:)

Cheers,

Stewart

> -----Original Message-----
> From: Ali Chamas [mailto:alichamas at yahoo.com]
> Sent: Thursday, December 02, 1999 1:13 PM
> To: squeak at cs.uiuc.edu
> Cc: recipient.list.not.shown; @cs.uiuc.edu
> Subject: Re: Hierarchical Tree View [KINDA LONG...]
> 
> 
> Hi Stewart,
> 
> --- Stewart MacLean <stewart.maclean at nzhis.govt.nz>
> wrote:
> > Hi Ali,
> > 
> > I have found this view very useful in VisualWorks in
> > the
> > form of the WorkspaceOrganizer. I have ported it to
> > VisualAge and was intending to port it to Squeak as
> > soon
> > as I got up to speed with Morphic.
> > 
> > However there is no point in reinventing the wheel
> > so I was
> > wondering how your TreeView was comming on and
> > whether it was
> > close to release?
> 
> Here's a breakdown of my TreeGold project, it's kind
> of long, but i hope it might be some help for your
> project, or just to know what i'm working on (plus a
> GIF screen snap):
> 
> [MODEL] The tree started with a simple <TreeNode>
> class whose instances linked together forming a
> hierarchical data tree. Each node had a tag, type, and
> data attribute which meant you could do deep recursive
> searches of individual tags, or node family types.
> Each node could also hold any object within it's data
> collection (so you could create your structure, and
> then "clip" objects to nodes of your tree).
> 
> This data tree was supported by a <TreeParser> class
> which could break the tree down into text format
> (although now in Smalltalk, it would be binary to
> support the objects held in the data attribute), and
> then create a new tree from a read source.
> 
> [VIEW] Then came the <TreeView> class which would
> compute the view in a virtual canvas (only in a
> geometric sense of spacial and graphical association),
> which meant that it could be drawn to screen, or
> printed. When drawing to screen, an view origin, and
> clipping rect were used.
> 
> [CONTROLLER] In the grand MVC tradition, there was
> also a <TreeController> to handle interactivity, and
> user feedback to the view.
> 
> Some general features were:
> * Each node held a "show children" boolean which
> related to the TreeView computing the view, and for
> shallow node recursive searches.
> * The TreeView would hold bitmap association with
> particular node tags or types so that a family of
> nodes would be drawn with "this" graphic, and another
> family would be drawn with "that" graphic, plus "this"
> particular node would draw with "that" graphic.
> * The tree computes the stems of the tree as well,
> which is also configurable graphically.
> * The view is spaced dynamically, so that if you were
> using large icons for one node type, and small for
> another, the view would be spaced neatly (same for the
> collapse/expand icons size).
> * The tag of the node was drawn next to the node in
> the view.
> * The view supported row padding so that you create
> space between node rows (the stems still reached).
> 
> I myself have been getting up to speed with Morphic,
> and plan to do this project using true Morphic
> components so that you could bring up a halo on any
> visual component. It shouldn't be too long now (...),
> there are so many things i want to do with Squeak, so
> little hours, especially when your day job is
> programming...:\
> 
> Sorry for the lengthy mail, but your interest was
> welcomed!
> 
> I'll post it here as soon as it's ready.
> 
> Cheers,
> Ali.
> __________________________________________________
> Do You Yahoo!?
> Thousands of Stores.  Millions of Products.  All in one place.
> Yahoo! Shopping: http://shopping.yahoo.com
> 





More information about the Squeak-dev mailing list