Multi-column tree view?

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

Multi-column tree view?

Paul Hudson
I've still plodding away with my newsreader. I'd like it to
handle threads. Building the tree model ended up almost trivial
(although it took me a while to get there!):

"add all the articles to the tree as roots"
articles do: [:article | tree add: article asChildOf: nil].

"and then move them to their parent, if that's in the tree"
articles do: [:article | article parentArticle ifNotNil:
[:parent | (tree includes: parent) ifTrue: [tree move: article
asChildOf: parent]]].

... which is kind of cool.

However, I can't find a satisfactory view for displaying this
in. I'd like one where I can collapse and expand the nodes of
the tree _and_ where I can display multiple columns of
information about each article (e.g. From, Date, Subject).

Treeview does the expand and contract, but not the multiple
columns (I think).

FolderView does the multiple columns, but "expanding" a node
displays only the children (like a Windows Explorer folder,
oddly enough :-)

Am I out of luck? DO I have to write my own? And if so, some
pointers would be gratefully received.

(For those of you who know Xnews, I'm trying to get something
like the threaded-articles view in that)


Reply | Threaded
Open this post in threaded view
|

Re: Multi-column tree view?

Paul Hudson
Paul Hudson <[hidden email]> wrote in
news:Xns9247D1D4D7326phudsonpoboxcom@127.0.0.1:

> (For those of you who know Xnews, I'm trying to get something
> like the threaded-articles view in that)

Or (easier to find for most people, I guess) Outlook Express's
new article list


Reply | Threaded
Open this post in threaded view
|

Re: Multi-column tree view?

Stefan Schmiedl
In reply to this post by Paul Hudson
On 10 Jul 2002 19:44:22 GMT,
Paul Hudson <[hidden email]> wrote:

>
> "add all the articles to the tree as roots"
> articles do: [:article | tree add: article asChildOf: nil].
>
> "and then move them to their parent, if that's in the tree"
> articles do: [:article | article parentArticle ifNotNil:
> [:parent | (tree includes: parent) ifTrue: [tree move: article
> asChildOf: parent]]].
>
> ... which is kind of cool.

very nice, indeed :-)

>
> However, I can't find a satisfactory view for displaying this
> in. I'd like one where I can collapse and expand the nodes of
> the tree _and_ where I can display multiple columns of
> information about each article (e.g. From, Date, Subject).

Judging all those multicolumn email or news clients,
I don't like them, because either the subject or from
column is too narrow or the date is out of sight.

What about using the simple tree for navigation
and the other half for a spacious display of
information about the posting.

To top things off, you could go for tooltips, or whatever
those little notes are called, for popping up the author's
name. And don't forget toggle radio buttons below the
tree view to switch between subject (author) and author (subject)

>
> (For those of you who know Xnews, I'm trying to get something
> like the threaded-articles view in that)

You could try to dig out a screenshot of MacSOUP, a shareware
offline newsreader for the Mac back in the days of System 7.
It showed the threading in a purely symbolic map with different
icons for downloaded, read, available, unavailable articles.

That was very cool.

Have fun,
s.
--
Stefan Schmiedl
Approximity GmbH                                      http://www.approximity.com
Research & Development                             mailto:[hidden email]

Agile Entwicklerkonferenz: 22. und 23.10 in Nürnberg.
http://www.approximity.com/public/conferences/AgileConf.html


Reply | Threaded
Open this post in threaded view
|

Re: Multi-column tree view?

Christopher J. Demers
In reply to this post by Paul Hudson
Paul Hudson <[hidden email]> wrote in message
news:Xns9247D1D4D7326phudsonpoboxcom@127.0.0.1...
...
> However, I can't find a satisfactory view for displaying this
> in. I'd like one where I can collapse and expand the nodes of
> the tree _and_ where I can display multiple columns of
> information about each article (e.g. From, Date, Subject).
...

I would be interested to hear other people's thoughts as well.  I needed
something similar myself.  I opted to do some slight of hand with a
multi-column list view.  It works pretty well for me so far.  My
implementation could probably be a little more elegant.  My wrapper classes
handles the indentation, and display of a + or - depending upon its state.

Here is the most interesting method from my approach (The formatting is
probably going to be kiboshed).
===============================
onListDoubleClick

 | listView idx |

 listView := self view viewNamed: 'lbList'.
 (listView selection respondsTo: #isExpanded) ifFalse: [^nil].
 listView selection isExpanded
  ifFalse: [listView model addAll:  listView selection children after:
listView selection.
   listView selection isExpanded: true]
  ifTrue: [idx := listView selectionByIndex + 1.
   [(idx > listView size) or: [(listView model at: idx) isKindOf:
ExpandableListObject]]
    whileFalse: [listView model removeAtIndex: idx].
   listView selection isExpanded: false].
 listView model updateAtIndex: listView selectionByIndex.
===============================

Chris


Reply | Threaded
Open this post in threaded view
|

Re: Multi-column tree view?

Paul Hudson
"Christopher J. Demers" <[hidden email]>
wrote in news:agidcu$lt4ua$[hidden email]:

> Here is the most interesting method from my approach (The
> formatting is probably going to be kiboshed).

Thanks. It looks like I need to learn a bit more before I can
understand how it works, though.


Reply | Threaded
Open this post in threaded view
|

Re: Multi-column tree view?

Paul Hudson
In reply to this post by Stefan Schmiedl
Stefan Schmiedl <[hidden email]> wrote in news:agicka$lm523$1@ID-
57631.news.dfncis.de:

>
> Judging all those multicolumn email or news clients,
> I don't like them, because either the subject or from
> column is too narrow or the date is out of sight.

Xnews has a good way of dealing with this. Since (normally) the
subject lines of replies is the same as the article to which
they are replying, it just displays "..." for replies.


> What about using the simple tree for navigation
> and the other half for a spacious display of
> information about the posting.

Would need a huge screen and a lot of flipping the eye back and
forth. For me, a good news reader makes it easy to not read a a
lot of news (by which I mean makes it easy to scan and decide
not to read most of the messages)