Spreadsheet Type Layout in RunRev?

MisterX b.xavier at internet.lu
Tue Nov 14 11:44:38 CST 2006


I've been pounding this one as I too wrote my own tables, sorted titles,
variable split columns, etc...

And there is a simple solution to all this mumbojumbo of using more than 100
fields!

That's like yielding an elephant to kill a mosquito! I've seen "table" files
at work... Some are 1GB, no prob! Obviously reading that is not "realistic"
in rev or any computer for that matter...

What you need is a windowed buffered display of your table...

You can only display so many cells on screen after all! And each can only
have so many rows and lines and there's also a text limit somewhere!

So you need scrollbars to go up and down, left and right of the spreadsheet
cells...

So we imagine 1 big field, x columns of field lists or x by y fields in a
scrolling group. The trivial solutions...

Except sooner or later you hit the limit!

Sooner or later, your field will be too big or you'll have too many fields
to adjust to make it "workeable". And you can't have multiple alignments per
field column (buuh)!

And worse, you cant display it all on screen!

So what you see is your buffer size... a grid of x by y cells. 

Your stack shows x columns and y rows. 

Divide your data array's rows and columns by the "displayed" grid rows and
columns number to get the max value of the scrollbar vertically and
horizontally (respectively :).

 +-------------------------+ -
 |_25/H_|____________|______| A
 |______|____26/I____|______| |   (note the array position
 |______|____________|______| +
 |______|__Field_wo__|______| +
 |______|_scrollbars_|______| |
 |_30/H_|____________|_30/J_| V
 +-------------------------+

 |<----------++----------->|    <-- a scrollbar control 

The field(s) don't have a scrollbar... 

The scrollbars controls move the pointer on your field much like a field
does, except when you scroll, you put the data from that "window" (or xy
position) of the array into your spreadsheet field(s). 

So you see, there is a simple solution for any problem... Learning to
program is a great adventure into logic and how to solve complex issue with
simple workings... 

Learning the basics always bring clean solutions to advanced objects
though...

I leave the script as an exercise - because I want to see other's ideas. But
IMOHO, for any "unlimited" spreadsheet, this is the way to go... Just create
the ilusion it's infinite! 

Anyone who's writen a bird-view video game needs this technique too. Works
also for graphic grids, charting, etc...

Printing solutions anyone?

You could feed serial printers (I imagine you can still find them)...

Exporting into Excel or an html browser doesn't get you points (though it
gets you through the day quicker and more to everyone's reach and
convenience!) Alas rev is not the ultimate destop tool yet.

cheers
Xavier
http://monsieurx.com




More information about the use-livecode mailing list