[comp.sys.mac.programmer] TextEdit 32K limit.

cro@cs.arizona.edu (Charles R. Oldham) (06/15/90)

Hello fellow masochistic mac programmers.

	I've written an application that uses TextEdit records to
display a list of files.  The list can get rather large (60-70K) and
so I've passed the notorious 32K limit.
	
	I've tried to write a switching algorithm for TERecs, and I'm
about to pound my head against the wall.  I can't make it smooth or
get the scroll bars to line up, or anything...

	Has ANYONE DONE THIS?  I could really use some help.  Breaking
the 32K barrier is now kind of important to me retaining my tenuous
status as staff Mac Programmer.

	Thanks very much.

*-----------------------------------------------------------------------------*
*Charles R. (C. R.) Oldham                    | Bitnet: OLDHAM@ARIZRVAX       *
*Department of Instructional Computing        | Internet:                     *
*Ctr. for Computing Information and Technology| (Preferred)                   *
*University of Arizona                        |   cro@caslon.cs.arizona.edu   *
*Tucson, Arizona                              |or oldham@rvax.ccit.arizona.edu*
*USA                                          | IXOYE                         *
*-----------------------------------------------------------------------------*
*  #include <disclaimer.yuk>                                                  *
*-----------------------------------------------------------------------------* 

mxmora@unix.SRI.COM (Matt Mora) (06/15/90)

In article <334@caslon.cs.arizona.edu> cro@cs.arizona.edu (Charles R. Oldham) writes:
>Hello fellow masochistic mac programmers.

[sobb story deleted :-)]

>	Has ANYONE DONE THIS?  I could really use some help.  Breaking
>the 32K barrier is now kind of important to me retaining my tenuous
>status as staff Mac Programmer.
>
>	Thanks very much.
>

>*Charles R. (C. R.) Oldham                    | Bitnet: OLDHAM@ARIZRVAX     

I just purchased from DataPak software a TE replacement that breaks the
32k limit. The limit now is 16 megabytes. I just received it yesterday 
so I haven't had time to play with it.

Its called Word Solution Engine.

some of its features:

	No 32k limit
	Fast editing display of large text files
	Multiple Font, styles, and point sizes
	Script manager support
	Quickdraw color support (don't know what that means old style color?)
	"UserStyles" hooks provided to customize characters. (pictures I think)
	Printing Support 
	File I/O
	scrap support
	low level hooks
	Tabs
	Res version for Code resources (da's,xcmds and such) & linkable Version
	available for C,Pascal or Assembly
	developed by Gary Crandal
	
The above was taken fron their flyer. I bought is solely for the no 32k limit.
A lot of times you just need a quick and dirty editor added to an application
you are writing and it needs to go beyond the 32k limit. (the Mews stack
and net news reader could use this library for example).

They've been trying to sell this thing to me for a while but I said it was 
useless to me unless it was handled more than 32k. It also was a lot more 
expensive before. It was $600 per application that you included it in.
Now its $300 one time licensing fee. No limit to the number of applications you
can include this in.

There are a lot of hooks that are included in the library so you 
or dataPak can creat modules to expand it. One they are working on
is a module for displaying pictures within the text.

If you are interested call Pam B. Smith at (800) 327-6703
and tell her I told you about it on the net.

I have no connection with the company except as a soon to be
happy customer if this thing really works as they say.


Also Martin Minow Has published his Trackedit TE replacement
in MacTutor Feb and March issues. Source code is in C. You
have to contact Martin if you want to include it in a Commercial
application.


-- 
___________________________________________________________
Matthew Mora                |   my Mac  Matt_Mora@sri.com
SRI International           |  my unix  mxmora@unix.sri.com
___________________________________________________________

anderson@Apple.COM (Clark Anderson) (06/16/90)

I wrote a set of routines that helps surpass the 32K limit.
It was a pain in the neck, too. I would love to give
you the source, because I am full aware of the frustration
you're dealing with, but since it belongs to Apple, I can't do that.
If it was my code, I'd mail it to you in a flash...

What you might try is this:
1) Have a single TERec. This rec hold the text that the user
   is currently looking at.
2) Create 2 10K buffers, one to hold the text immediately
   before and immediately after the text in the TERec.
   The TERec only holds 10K at a time. This allows the TE
   routines to run fairly fast, since they only deal with
   10K at a time. 
   Unfortunately, this limits pasting to 20K, but
   you can't have everything...
3) As the user scrolls thru the text, you swap blocks of text
   in and out of the TERec. The tricky part is adjusting the
   scroll bars...I worked on it for days, but it can be done.
   It can probably be done quicker, too, since I'm not an
   expert programmer.
4) You have to deal with little irritations like breaking
   the buffers at even lines, so half lines aren't coming
   up next, and things like that.
4) When it runs, it does run NICE.

Another alternative is to get the ThinkC libraries called
Capp's Construction Set. They have routines that bypass
the 32K limit on TextEdit.

Good luck. I hope this helps. 
                                         --clark

-- 
-----------------------------------------------------------
Clark Anderson                  InterNet:  anderson@apple.com
CPU Engineering                 AppleLink: C.ANDERSON
Apple Computer, Inc             BellNet:   408-974-4593

"I speak only for myself, much to my employer's relief..."
-------------------------------------------------------------

ews00461@uxa.cso.uiuc.edu (06/16/90)

I too would be very interested in this topic.  In the times before,
when I have had to fight the 32k wall, everyone has told me "it
can't be done.  Don't use TextEdit."  Is this true ?  The
alternative question is: How difficult is it to do what TextEdit
does without using TextEdit ?  Does MSWord use TextEdit (obviously
not) ?  Who is willing to write a replacement for TextEdit for
other programmers to use ?  Let me know if I'm out of my expertise
level here and these questions are inane.

Eric W Sink