[aida] Panes?

Janko Mivšek janko.mivsek at eranova.si
Fri Sep 19 00:01:45 CEST 2008


Rob Rothwell wrote:
> Thanks...I'll think about that.
> 
> So...if you just wanted to "get something working" for now and you 
> wanted to break up your screen into different regions and not worry 
> about them being resizeable, etc...  what would you do?

Plain simple tables. But as I said problem will be in updating other 
panes (cells in that case) when you for instance select something in 
first pane (like in smalltalk browser). Try with calling many 
onClickUpdate: , each for pane which needs to be updated on such a 
select. Each pane is therefore an ajaxified element added to each cell 
of the browser.

For example:

smalltalkBroswer

   e := WebElement new.
   e cell add: self classPane.
   e newCell add: self protocolPane.
   e newCell add: self methodPane.
   e newRow.
   e cell collSpan: 3; add: self editPane.
   ^e

classPane

  ^self panes at: #class ifAbsentPut:
    [| e l |
    e := WebElement new.
    ...
    l := some link to be clicked etc...
    l
      onClickUpdate: self protocolPane;
      onClickUpdate: self methodPAne;
      onClickUpdate: self editPane.
    e]

...

Well, try something like this, but note, these are just some ideas right 
from my head and probably won't work "out of the box".


Janko


> 
> Take care,
> 
> Rob
> 
> On Thu, Sep 18, 2008 at 4:25 PM, Janko Mivšek <janko.mivsek na eranova.si 
> <mailto:janko.mivsek na eranova.si>> wrote:
> 
>     Hi Rob,
> 
> 
>     Rob Rothwell wrote:
> 
>         Can you create panes in Aida?
> 
> 
>         I am trying to create a "browser" for queries against my object
>         with a "Criteria" pane, a "Group" pane, a "Results" pane, and a
>         "Detail" pane.  So...basically a typical Smalltalk code browser
>         with different functionality for the panes.
> 
> 
>     One possibility is to use IFRAMEs (see WebIFrame), where every such
>     frame is like a separate window (with separate Url) inside your main
>     window. We use IFrames in Scribo for attachments, for instance.
> 
>     Another possibility is to use usual table with ajaxified elements as
>     panes in each cell.
> 
>     Problem in both cases is how to update other panes when something
>     changes. Aida Ajax so far supports updating only one element at
>     once. That is, you can change one pane at once. Maybe with some
>     trick more panes can be updated even with current Aida? Otherwise we
>     need to extend Ajax support to multi-element updating (inside a
>     single Ajax call).
> 
>     But, hmm, more that one ajax call can be sent even now, you just
>     send two onClickUpdate: ? A bit experimentation is therefore needed ...
> 
>     Just few thoughts...
> 
>     Janko
> 
> 
>     -- 
>     Janko Mivšek
>     AIDA/Web
>     Smalltalk Web Application Server
>     http://www.aidaweb.si
> 
> 

-- 
Janko Mivšek
AIDA/Web
Smalltalk Web Application Server
http://www.aidaweb.si


More information about the Aida mailing list