Source browser and list question

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

Source browser and list question

Michael Rueger-6
Hi all,

based on
http://www.squeaksource.com/AidaBrowser/

I'm trying to build a more Squeak Browser like web ui for a source
database (more on that later).

I had to patch up a few methods (they still used the AidaBrowserXX class
names) in the package before it would work and also ran into the usual
problems with having to copy methods into Scribo or default web style in
order use new components. Different discussion ;-)

Two questions:
- is there a newer version of the package somewhere?
- how do I build a simple scrolling list interface like Yoshiki used for
his code browser
(http://tinlizzie.org:8080/seaside/examples/authorship2)? Couldn't find
any example or even a matching web element in AIDA, but I'm still pretty
much a newbie as far as AIDA is concerned...

Michael
_______________________________________________
Aida mailing list
[hidden email]
http://lists.aidaweb.si/mailman/listinfo/aida
Reply | Threaded
Open this post in threaded view
|

Re: Source browser and list question

Michael Rueger-6
Michael Rueger wrote:

> - how do I build a simple scrolling list interface like Yoshiki used for
> his code browser
> (http://tinlizzie.org:8080/seaside/examples/authorship2)? Couldn't find
> any example or even a matching web element in AIDA, but I'm still pretty
> much a newbie as far as AIDA is concerned...

Some progress :-)
I'm working somewhat outside of AIDA's supported features with the
overflow:auto style setting. Although one might argue it is really a CSS
layout setting, as it only really affects the layout of the page, not
the functionality.

classesElement
        | e list |
        e := WebElement new.
        e
                setDiv;
                style: 'OVERFLOW: auto; WIDTH: 300px; HEIGHT: 200px;';
                yourself.
        list := WebGrid new
                columnAspects: #(nil name);
                columnLinkViews: #(nil main);
                collection: self observee classes;
                yourself.
        e add: list.
        ^e

Tips and tricks welcome, but I'll keep you posted about my progress.

Michael
_______________________________________________
Aida mailing list
[hidden email]
http://lists.aidaweb.si/mailman/listinfo/aida
Reply | Threaded
Open this post in threaded view
|

Re: Source browser and list question

Janko Mivšek
Hi Michael,

Michael Rueger wrote:

> Michael Rueger wrote:
>
>> - how do I build a simple scrolling list interface like Yoshiki used for
>> his code browser
>> (http://tinlizzie.org:8080/seaside/examples/authorship2)? Couldn't find
>> any example or even a matching web element in AIDA, but I'm still pretty
>> much a newbie as far as AIDA is concerned...
>
> Some progress :-)
> I'm working somewhat outside of AIDA's supported features with the
> overflow:auto style setting. Although one might argue it is really a CSS
> layout setting, as it only really affects the layout of the page, not
> the functionality.


Well, CSS tricks are not outside Aida supported features, but are
orthogonal to them. I would also go your way. Now what would be really
nice is just to Ajax update other panes on selecting a class in your
pane. You can probably cascade more that one such update:

        classesLine
          onClickUpdate: methodsElement with: className;
           onClickUpdate: methodElement with: className; ...

> classesElement
> | e list |
> e := WebElement new.
> e
> setDiv;
> style: 'OVERFLOW: auto; WIDTH: 300px; HEIGHT: 200px;';
> yourself.
> list := WebGrid new
> columnAspects: #(nil name);
> columnLinkViews: #(nil main);
> collection: self observee classes;
> yourself.
> e add: list.
> ^e
>
> Tips and tricks welcome, but I'll keep you posted about my progress.

--
Janko Mivšek
AIDA/Web
Smalltalk Web Application Server
http://www.aidaweb.si
_______________________________________________
Aida mailing list
[hidden email]
http://lists.aidaweb.si/mailman/listinfo/aida
Reply | Threaded
Open this post in threaded view
|

Re: Source browser and list question

Janko Mivšek
In reply to this post by Michael Rueger-6
Hi Michael,

We actualy have a form element for such scrollable list box, it is a
WebMenu with its size set. If you set the size, it is not anymore drop
down menu but becomes a list box with scrollers on the left.

Quick example:

        m := WebMenu new.
        m collection: #('First' 'Second' 'Third').
        m size: 10.

Now for your task (let say you have an instvar #selectedClass in your App):

   m := WebMenu new.
   m size := 10.
   m collection: self classNames
       selectedToAspect: #selectedClass of: self.
   m
     onChangePostAndUpdate: methodsElement;
     onChangePostAndUpdate: methodElement.

I hope this helps.
Janko



Michael Rueger wrote:

> Michael Rueger wrote:
>
>> - how do I build a simple scrolling list interface like Yoshiki used for
>> his code browser
>> (http://tinlizzie.org:8080/seaside/examples/authorship2)? Couldn't find
>> any example or even a matching web element in AIDA, but I'm still pretty
>> much a newbie as far as AIDA is concerned...
>
> Some progress :-)
> I'm working somewhat outside of AIDA's supported features with the
> overflow:auto style setting. Although one might argue it is really a CSS
> layout setting, as it only really affects the layout of the page, not
> the functionality.
>
> classesElement
> | e list |
> e := WebElement new.
> e
> setDiv;
> style: 'OVERFLOW: auto; WIDTH: 300px; HEIGHT: 200px;';
> yourself.
> list := WebGrid new
> columnAspects: #(nil name);
> columnLinkViews: #(nil main);
> collection: self observee classes;
> yourself.
> e add: list.
> ^e
>
> Tips and tricks welcome, but I'll keep you posted about my progress.
>
> Michael
> _______________________________________________
> Aida mailing list
> [hidden email]
> http://lists.aidaweb.si/mailman/listinfo/aida
>

--
Janko Mivšek
AIDA/Web
Smalltalk Web Application Server
http://www.aidaweb.si
_______________________________________________
Aida mailing list
[hidden email]
http://lists.aidaweb.si/mailman/listinfo/aida