RRe: Continues flds

Peter Brigham pmbrig at gmail.com
Fri May 9 15:27:40 EDT 2008


On May 8, 2008, Eric Chatonet <eric.chatonet at sosmartsoftware.com> wrote:

> Bonjour Hershel,
>
> Le 8 mai 08 à 00:53, Hershel Fisch a écrit :
>
>> I'm trying to have text in a field and in the next page (like a
>> book) or
>> card it should start where the previous page left off.
>> Hershel
>
> Two years ago I did it in a kind of 'book' layout: see the LAMM
> project at http://www.sosmartsoftware.com/?r=logiciels&l=en
> As the user could change the text size, I had to reorganize it on -
> the-fly and calculate 'text flow'.
> The only thing I remember well is that was tricky ;-)
> I ended by having a single card with one (or two) field containing
> the whole text (without scroll bar) and just set the scroll
> programmatically combined with a visual effect to 'fake' pages  
> turning.
> So I did not use what you call 'flds continuing' but two fields only
> even if a wipe left/right let the user think the 'card' has changed.
> May be a clue for you?
>
> Best regards from Paris,
> Eric Chatonet.

I have a stack that does this, The Gutenberg Reader, that allows you  
to download texts from the Gutenberg web pages and read them in a  
book-like layout. You can't change the field size but you can change  
the font. It works by putting all the text in a two fields side by  
side, and setting the scroll of each field when you go to the next  
"page." The scroll of the right-hand field (the "righthand page") is  
simply set to the the scroll of the left field + the textHeight*(the  
number of lines visible), so it acts like a book. You can download  
the standalone at
http://home.comcast.net/~pmbrig/Gutenberg.html
and I can email the original stack to anyone interested.
At some point I will probably tackle the problem of allowing resizing  
of the stack and field sizes and/or allowing the user to change the  
fontSize/lineHeight, but I kept it relatively simple. Once you get  
the scrolling routines set in a couple of handlers (scrollToPageNbr 
(), pageNbrToScroll(), etc) it works quite smoothly. The user has no  
idea what's happening behind the scenes.

Peter M. Brigham
pmbrig at gmail.com


More information about the use-livecode mailing list