[comp.sys.mac] Patches for appFont 9 and cursor handling

borton@uva.UUCP (Chris Borton) (10/19/88)

[pardon if this comes through twice; local software here said it choked]

About a month ago I decided to finally stop being bothered by various
behaviours of some applications and patch out the offending code.  This dealt
primarily with cursor settings and font usage.

I'm sharing these patches in case some other people might have encountered
the same reaction.  I don't believe there is any possible harm to the
applications involved, but do this at your own risk, please, on a backup copy.
I've used them patched for some time now and have had no problems.  If you
don't know how to apply the patches but want to, try to ask for help--it's a
potentially risky business.  E-mail inquiries welcome.

Changing my default Application Font (to Chicago) prompted several of these
patches; I find it interesting to see which applications use appFont or
geneva explicitly.  

Note to developers: if you have any cases of using appFont size 9, please
change them unless there is a very good (and specific) reason.  I believe
most of these are mere oversights and don't come up often since the
prevailing appFont is Geneva.  As soon as you set it to something that
doesn't have a nice 9-point version (like no 9-point version) it looks
horrible.  The culprits here range all over, including Apple (Calculator DA)
to SuperMac (DiskFit), both producers of high-quality software in my opinion.

-cbb

***
Fedit hides the cursor when it first starts up and finally shows it again a
few seconds later after it is done reading in all its tons of DITLs.  This
really bugged me.  This patch is easy:

  A8 52 4E BA	[HideCursor() and something else unrelated]
   | |
=>4E 71		[NOP out the HideCursor().  Note: this should not be a problem
		 with ShowCursor() balancing since he calls InitCursor() next]

***
MacScheme changes the cursor to all different things depending if it is over
the title bar, horizontal scroll bar, vertical scroll bar, or grow icon.  I
feel this is against the Interface Guidelines, and it bugged me.  The fix:

  486D F5F4 A851 4EFA 00BE 486D F6C0 A851	[bunch of SetCursors()...]
   ||   ||   ||		    ||   ||   ||
=>4E71 4E71 A850	   4E71 4E71 A850	[to NOP's and InitCursor()'s]

  486D F67C A851 4EFA 0004
   ||   ||   ||					[same...]
  4E71 4E71 A850

6600 000C 486D F638 A851
	   ||   ||   ||
	  4E71 4E71 A850

***
DiskFit

I like Geneva 9 for the display of disks and so forth, NOT Chicago (or
whatever else that doesn't come in 9) 9.

This patch must be applied THREE times (in different places):

  3F3C 0001 A887 3F3C 0009	[SetFont(appFont) and FontSize(9)]
 	||
       0003			[ to SetFont(geneva) ]

***
Calculator DA (Apple one)

Same Chicago (...) 9 problem.

  A873 3F38 0984 A887
	||   ||
       3F3C 0001

***

Actually, if you're brave and smart, you can probably use the

  3F3C 0001 A887 3F3C 0009	[SetFont(appFont) and FontSize(9)]
 	||
       0003			[ to SetFont(geneva) ]

patch on most things that use appFont with 9 point, but no guarantees!

Enjoy, if you like this!

-cbb
-- 
Chris Borton	borton%uva@mcvax.{nl,bitnet,uucp} 
Rotary Scholar, University of Amsterdam CS

a88763@tansei.cc.u-tokyo.JUNET (S. Matsuoka) (10/28/88)

In article <552@uva.UUCP> borton@uva.UUCP (Chris Borton) writes:
>Note to developers: if you have any cases of using appFont size 9, please
>change them unless there is a very good (and specific) reason.  I believe
 ^^^^^^^^^^^
>most of these are mere oversights and don't come up often since the
>prevailing appFont is Geneva.

NO NO NO, NEVER DO THIS!  Here in Japan, the application font is not
Geneva, but Osaka, which is specially configured to display Kanji
characters under Kanji Talk v2.0 (and perhaps later.)  Too often,
applications make the INCORRECT ASSUMPTION that application font = Geneva;
when they do, any Kanji characters displayed in Geneva just turns into
complete unreadable garbage! 

I would assume that the above issue also holds for other International
systems as well.  Remember, however centered the market of the Macintosh
Software be in the United States, there are tens of thousands of
us who are using the Macintoshes abroad.  Developers, your product
developed right in your hometown may someday find a customer thousands of
miles away in a strange land.  Macintoshes are international products
that U.S. should be proud of;  but to be truly accepted internationally,
everyone must follow the rules set by Apple. (e.g., using the International
Utilities Package IUCompString instead of EqualString or maybe strcmp().
In fact, why does Apple have EqualString at all?)

				S. Matsuoka
				Dept. of Information Science
				Univ. of Tokyo
				a88763%@tansei.u-tokyo.junet@japan.cs.net

borton@uva.UUCP (Chris Borton) (11/02/88)

In article <2549@tansei.cc.u-tokyo.JUNET> a88763@tansei.cc.u-tokyo.JUNET (S. Matsuoka) writes:
>>Note to developers: if you have any cases of using appFont size 9, please
>>change them unless there is a very good (and specific) reason.  I believe
> ^^^^^^^^^^^
>>most of these are mere oversights and don't come up often since the
>>prevailing appFont is Geneva.
>
>NO NO NO, NEVER DO THIS!  Here in Japan, the application font is not
>Geneva, but Osaka, which is specially configured to display Kanji
>characters under Kanji Talk v2.0 (and perhaps later.)  Too often,
>applications make the INCORRECT ASSUMPTION that application font = Geneva;
>when they do, any Kanji characters displayed in Geneva just turns into
>complete unreadable garbage! 

This is a good point.  It hilites the problem, though, that I was going to
ask soon anyway -- what should one use for default 9-point?  Most people use
appFont.  Fine, 95% (?) of users have Geneva as appFont, which looks fine in
9-point.  But those who don't get screwed.

TN 91 says nothing other than 0 and 1 (sysFont and appFont) are holy as far
as the numbers go.  I was wondering how they would 'enforce' this when Geneva
is in the SE ROMs.  Now here is a good example why not.

Unless someone comes up with a nicer solution, I guess we'll have to stick to
being much more careful--go get Geneva when you want Geneva 9 and use appFont
for nice things like default font of editor.

Suggestions?

-cbb
-- 
Chris Borton	borton%uva@mcvax.{nl,bitnet,uucp} 
Rotary Scholar, University of Amsterdam CS