Nov 88 Letters
Volume Number: 4
Issue Number: 11
Column Tag: Letters
Disappearing File Icons 
By Kirk Chase, Technical Editor, MacTutor
Font Sorting via the Toolbox
David Dunham
Goleta, CA
In reference to Ray Cameron’s Font Dialog Box article: Believe it or not, there’s
a toolbox routine which sorts font names (at least with 128K ROMs). Just have a fake
(i.e. never displayed in a menu bar) menu, and use AddResMenu (menu,’FONT’). This
does the right thing (or at least the official thing) with FONDs and NFNTs, and
properly ignores fonts starting with “.” or “%” (such as bold or italic screen
bitmaps for PostScript fonts). If you want to use this information in a list just call
GetItem(), CountMItems(menu) times.
Background Problems
David Linder
San Carlos
First of all, I want to apologize for the “Stone Age” way that I am contacting you.
Unfortunately, I have not purchased a modem yet for my Mac, so I am unable to reach
you via a BBS - however, that will soon change
Being a recent Mac convert, let me add to the accolades of others in congratulating
you on a fine magazine. For those of us who are caught in the middle of the steep
learning curve for Mac programming, MacTutor is a much needed resource. Keep up
the good work - you can count on my subscription for as long as the magazine
continues!
As one of my early learn-to-program-the-Mac projects, I tried working with
Peter Korn’s GraphLoad program from the March 1988 MacTutor. After typing it in,
compiling it, and debugging it (using MPW C 2.0), it seems to work just fine when the
GraphLoad window is the front window. However, when I activate a window from
another application in Multi finder, GraphLoad freezes until I reactivate its window and
bring it to the front. I thought GraphLoad would run in the background so that it would
always show system load even when it was not the front window. What am I doing
wrong? My SIZE -1 resource has the following bits set:
Accept Suspend Events
Can Background
Juggler Aware
Doesn’t the Can Background bit mean that this program will run as a background
program? Any help you can give me would be appreciated. [Checking the source code as
distributed on the source code disk #30, the program runs fine in MultiFinder. I'm
looking at it as I type and it's blinking away. You must have an error in your code.
Check it against source code disk 30. -Ed]
Language Needs
Thurman Gillespy III, M.D.
Gainesville, FL
I am a long time MacTutor reader, and would like some advice on the purchase of a
programming language. I am a radiologist who would like to display true grey scale
radiologic images on a Mac II for educational purposes. I need to be able to
interactively overlay text and graphics.
I have several years experience programming in Microsoft BASIC (both compiler
and interpreter). I have written an animated teaching tutorial on the
temporomandibular joint that has been well received. I have purchased all of the CLS
library extensions, and have used many of the ROM routines relating to resources,
pictures, icons, etc. I also own all five volumes of IM, both volumes of Chernicoff’s
Macintosh Revealed and Knaster’s helpful Macintosh Programming Secrets (although I
haven’t read quite everything yet).
I am interested in migrating to Pascal, which seems to have the best combination
of power and ease of use for my application (and besides, all of IM is written in it).
There appear to be 3-4 potential choices, and I would like your thoughts on which
would be most appropriate. I would also like your opinion on whether using MPW or
MacApp would be advisable.
[Buy Lightspeed Pascal version 2.0. It is the best implementation of Pascal on the
Mac and the new version is as fast and produces as tight of code as MPW Pascal. If you
dont want to mess with the user interface, then use MacApp, the new version, with the
new dialog windows, but be prepared for a learning curve on MPW, MacApp and object
Pascal. -Ed]
MacTutor Inquisition
Bradley Dichter
Do you have an index of past articles since your premier issue? I would like to
order some back issues if I knew what I have missed in the past. I’m particularly
interested in (Consulair) C, but assembler and Pascal articles also are of interest. In
regards to the June 1988 issue, I was intrigued by the “Advanced Mac’ing/Menus as
Objects in TML Pascal” article. Do you have a technique or past article wherein I may
put small (smaller than an ICON) bit images in a graphic menu? I would appreciate
greatly any assistance you may offer. Thank you.
[Unfortunately, our first year’s compilation of articles (Best of MacTutor, Vol.
1) did not include an index by subject or author in the back. An index was made for it
and placed in our second book (Complete MacTutor, Vol. 2). In that book though, the
issue number was not given with the article (my fault - Kirk Chase). Our third book,
The Essential MacTutor Vol. 3, hopefully took care of all those problems. In addition to
this, Dave Kelly, our Basic School editor, has made a HyperCard stack index on his
own. We try to place the stack on the source code disks if we have the space. -ed]
Developer Responsibility
Edward J. Groth
Scottsdale, AZ
After seeing the DCM promotional ad on page 23 of the June, 1988, MacTutor and
being quite disenchanted with the horrible implementation of the MS FORTRAN 2.2
package, I ordered and received DCM’s MACTRAN PLUS.
I sent a letter to DCM about a month ago, and since I have not heard anything from
them, I must assume that they have decided to ignore it. The note that came with their
package that is referred to in my letter reads as follows:
The file “tlbox.Rel” in the folder “Other files” is corrupted. You would have to
reassemble the program “tlbox.asm” with a 68000 assembler. If you do not have one,
please send the disk back to us, and we will include an uncorrupted, working copy.
I have sent you this letter for perhaps one or both of two reasons. I would like to
see MacTutor supply useful and complete reviews of such things as languages. The
usual magazines do not review languages but only applications. The user base needs
such help. Hopefully reviews would include real comparisons of strengths and
weaknesses of competing development systems.
The other reason is much more abstract. We really need to bring about some
degree of maturity and responsibility within the software industry. This business of
selling a blister-packed and copy protected piece of software without any
responsibility to make sure that it works, at least somewhat, has got to go. There is
also no recourse against extravagant and fraudulent claims made by many software
developers and venders. I really have no good way to suggest for bringing this under
control, but I am sure that exposure to the light of examination and comparison will
certainly help. It seems to me that MacTutor is in the unique position of being able to
supply such comparisons. I fully realize that this might not be viewed as the most
astute business move, but I believe that being a real source of reliable information
could only result in a more loyal readership.
Thanks for bearing with my frustration. If I can be of any help or provide any
further information, please let me know.
[I, too, see no alternative suggestion except maybe the free market system. The
amount of differing development systems and tools is just amazing, not to even mention
the constant flood of upgrades. I personally do not trust a product until it has got a
version 2 next to it. We will try, as space permits, to review development systems,
but frankly, we do not get very many good reviews across our desks. -Ed.]
Disappearing File Icons and Other Problems
Steve Seaquist
Temple Hills, MD
When you drag a disk’s icon into the trash can or select Erase Disk on it, Finder
5.3/System 3.2 and Finder 6.0/MultiFinder/System 4.2 sometimes forget how to
redraw file icons on currently mounted HFS volumes. Here’s what I’ve found out so
far:
(1) Finder 5.3 doesn’t redraw file icons at all and starts thinking that disks are too
full to record folder changes.
(2) Finder 6.0 and MultiFinder temporarily draw generic file icons, then suddenly
gray the desktop, pause briefly and redraw the correct icons. (Presumably they
read the desktop file during the pause.)
(3) It’s a consistent property of the ejected (or erased) disk.
(4) Every disk newly formatted by my 5.3, 6.0 or MultiFinder (800K or 400K)
starts out with this property:
(a) Erasing a normal disk causes that disk to exhibit the problem when its icon is
dragged to the trash in the future.
(b) Erasing a disk that already has the problem causes the icons to disappear as
part of the erase process, and doesn’t fix the disk.
(5) A visible characteristic of such disks is the fact that the Finder doesn’t recognize
the space taken up by the directory and desktop. (It says empty ones have “0K in
disk”.)
(6) It’ll happen every time with the same disk until something fixes it.
(7) Once fixed, it’ll never happen again unless you erase it.
Out of paranoia, I shutdown or restart when this happens. I haven’t lost any data
yet, but it’s very annoying. I don’t know how other versions of the Finder/System
behave in this regard.
Fixing a disk with the disappearing file icons
In the process of testing whether Finder 5.5/System 4.1 had the same problem, I
discovered that simply inserting the disk under 5.5 was sufficient to repair it and keep
it from screwing up 5.3, 6.0 or MF. Although 6.0 and MF recover from the problem
more gracefully than 5.3, they don’t fix the disk the way 5.5 does. It would appear
that someone removed the 5.5 fix in the development of 6.0 and MultiFinder.
ImageWriter drafts of LaserWriter’d docs
This is a user question, but it has developer implications:
I often have to produce business reports to my clients describing what changes I
made (or recommend making) to their computer systems. I use just about every
snazzy Word 3.01 feature, including footnoting, formulas, intermixed graphics
(snazzy for those not used to Macintosh), outlining, side-by-side paragraphs, style
sheets, table of contents generation, etc. My clients want to see professionalism in
both the interim and final deliverables of the report. Because I don’t own a
LaserWriter, I have to go to Kinko’s and run off copies there. That’s where the
problems start.
When Word detects that the Chooser’d printer is a LaserWriter, it changes the
font widths. (I use Times-12, mostly.) Because word wrap and tabs are affected by
the width of text that precedes the right margin or tab stop, all the line breaks and
tables get screwed up. As a shortcut to reformatting the entire document, I change the
margins from 1.25" (IW) to 0.98" (LW). This keeps the word wrap about the same,
but I still have to reformat a lot of tab settings. To save time and money that would be
wasted doing this at Kinko’s, I keep a LW driver in my System folder, Chooser it even
though I don’t have one to print to, and reformat it on my system. Then I go to Kinko’s
and run off a copy.
Now what do I do? Do I leave the document formatted for the LW, so I don’t have
to reformat it again the next time I take it to Kinko’s? If I do, I won’t be able to get a
draft copy on my IW. Do I Chooser the IW and reformat it again, so that I can get drafts
on my system? If I do, I have to reformat it again for the next deliverable. It’s
absolutely infuriating. My dilemma gives rise to several questions:
(1)Why should the Chooser’d printer affect font width in Word? It doesn’t in
MacWrite. Word has to be doing it on purpose. But why? This is a question of
concern to all developers of applications that print, including myself. Despite
what it says at the beginning of Tech Note 72 about printing to LWs the same as
IWs, we all know there are some reasons to print differently (notably page size).
But is there a good reason to change font widths for LWs?
(2)More to the point, how does Word change the font width according to the Chooser’d
printer? I didn’t see any FONT or FOND resources in Word’s resource fork, so it
doesn’t seem to be playing any “APPL file overrides System file” tricks. The
only thing I can figure is that it could install its own QD bottlenecks (like the
November 86 MacTutor article on using StdText and StdTxMeas to support tabs in
text edit), and that the LW driver’s QD-to-PostScript bottlenecks end up using
Word’s bottlenecks that way.
(3)Does anyone know a way to get Word to image the page the same way for both IWs
and LWs? I’ll take anything: a secret flag editable with ResEdit, an FEdit patch,
a disabling of the trick in question 2, anything. The direction of the change
depends on the answer to question 1. That is, if there’s a valid reason to make
text take up more space on the LW, then I’d greatly appreciate a way to make it
take up more space on the IW as well. If not, I’d greatly appreciate a way to make
its LW output as condensed as its IW output. [I suggest you make the following
assumption: MS Word 3.01 does not work on anything except a Laserwriter
printer. -Ed.]
ResEdit 1.0.1 bugs under MultiFinder
Deleting a string from a STR# resource causes ResEdit to crash. My workaround
for this problem is to run ResEdit under Finder 5.3/System 3.2 whenever I want to
delete a string from a STR#.
Sometimes ResEdit doesn’t see all resource types (or all resources within a
type) in the system file. My workaround for this problem is to restart the Mac and to
rerun ResEdit right after the restart.