home *** CD-ROM | disk | FTP | other *** search
/ ftp.mactech.com 2010 / ftp.mactech.com.tar / ftp.mactech.com / csmpdigest / csmp-digest-v3-011 < prev    next >
Text File  |  2010-09-21  |  64KB  |  1,768 lines

  1. Received-Date: Sat, 9 Apr 1994 11:03:48 +0200
  2. From: pottier@clipper.ens.fr (Francois Pottier)
  3. Subject: csmp-digest-v3-011
  4. To: csmp-digest@ens.fr
  5. Date: Sat, 9 Apr 94 11:03:42 MET DST
  6. X-Mailer: ELM [version 2.3 PL11]
  7. Errors-To: listman@ens.fr
  8. Reply-To: pottier@clipper.ens.fr
  9. X-Sequence: 13
  10.  
  11. C.S.M.P. Digest             Sat, 09 Apr 94       Volume 3 : Issue 11
  12.  
  13. Today's Topics:
  14.  
  15.         AddResource() to self?
  16.         Changing font when using PopupMenuSelect () Q!
  17.         Converting C String to Str255?
  18.         How to keep screen savers from activating?
  19.         How to save a PICT?
  20.         INIT: displaying a dialog
  21.         LabView programming group?
  22.         Proper way to dim screen
  23.         Think Pascal tools for tracking down memory problems
  24.         WorldScript compatible Text Editors
  25.  
  26.  
  27.  
  28. The Comp.Sys.Mac.Programmer Digest is moderated by Francois Pottier
  29. (pottier@clipper.ens.fr).
  30.  
  31. The digest is a collection of article threads from the internet newsgroup
  32. comp.sys.mac.programmer.  It is designed for people who read c.s.m.p. semi-
  33. regularly and want an archive of the discussions.  If you don't know what a
  34. newsgroup is, you probably don't have access to it.  Ask your systems
  35. administrator(s) for details.  If you don't have access to news, you may
  36. still be able to post messages to the group by using a mail server like
  37. anon.penet.fi (mail help@anon.penet.fi for more information).
  38.  
  39. Each issue of the digest contains one or more sets of articles (called
  40. threads), with each set corresponding to a 'discussion' of a particular
  41. subject.  The articles are not edited; all articles included in this digest
  42. are in their original posted form (as received by our news server at
  43. nef.ens.fr).  Article threads are not added to the digest until the last
  44. article added to the thread is at least two weeks old (this is to ensure that
  45. the thread is dead before adding it to the digest).  Article threads that
  46. consist of only one message are generally not included in the digest.
  47.  
  48. The digest is officially distributed by two means, by email and ftp.
  49.  
  50. If you want to receive the digest by mail, send email to listserv@ens.fr
  51. with no subject and one of the following commands as body:
  52.     help                        Sends you a summary of commands
  53.     subscribe csmp-digest Your Name    Adds you to the mailing list
  54.     signoff csmp-digest            Removes you from the list
  55. Once you have subscribed, you will automatically receive each new
  56. issue as it is created.
  57.  
  58. The official ftp info is //ftp.dartmouth.edu/pub/csmp-digest.
  59. Questions related to the ftp site should be directed to
  60. scott.silver@dartmouth.edu. Currently no previous volumes of the CSMP
  61. digest are available there.
  62.  
  63. Also, the digests are available to WAIS users as comp.sys.mac.programmer.src.
  64.  
  65.  
  66. -------------------------------------------------------
  67.  
  68. >From smoke@well.sf.ca.us (Nicholas Jackiw)
  69. Subject: AddResource() to self?
  70. Date: 24 Mar 1994 21:57:56 GMT
  71. Organization: The Whole Earth 'Lectronic Link, Sausalito, CA
  72.  
  73.  
  74. Hi Netters,
  75.  
  76. I'm required to add one of those annoying "Enter your name
  77. and organization" splash pages (but at least I talked "them"
  78. out of copy protection!).  I figured that the way these
  79. were implemented was to add a resource directly to the
  80. application. I know that in general, one shouldn't write
  81. back to the application, because it may be locked, or
  82. simultaneously in use, or what have you. On the other hand,
  83. in this scheme, the application isn't legitimate until
  84. this owner/organization resource has been written (once),
  85. at which point the application will never "touch itself"
  86. again.
  87.  
  88. So I put together a simple scheme:
  89.  
  90. a) Get user info, put it in a Handle
  91. b) AddResource
  92. c) ChangedResource
  93. d) WriteResource
  94.  
  95. Works fine under THINK Pascal, where the resource file is
  96. physically separate from the application code (which is
  97. run from within the THINK Pascal application). But when
  98. I build it into an application, AddResource fails with
  99. -61/Write Premissions Error.
  100.  
  101. Why is this? I could see WriteResource failing, if the
  102. app were on a locked disk, or there wasn't enough disk
  103. space, but I thought AddResource() just modified the
  104. in-memory resource map. How and why is this map being
  105. declared read-only? And more to the point: how can I
  106. add a resource to my own application?  [Sticking the
  107. info into a Prefs file makes no sense; the whole point
  108. is to keep the information with the application when
  109. it moves between machines.]
  110.  
  111. Thanks for any tips you can give me. I suspect I'm
  112. overlooking something obvious.
  113.  
  114. Cheers,
  115. Nick
  116.  
  117. -- 
  118.                               --- * ---
  119. Nick Jackiw                  Smoke@well.sf.ca.us   | Jackiw@cs.swarthmore.edu
  120. Key Curriculum Press, Inc.   Applelink:KEY.EDUSOFT | (510) 548-2304
  121.                               --- * ---
  122.  
  123. +++++++++++++++++++++++++++
  124.  
  125. >From mxmora@unix.sri.com (Matt Mora)
  126. Date: 24 Mar 1994 15:29:52 -0800
  127. Organization: SRI International, Menlo Park, CA
  128.  
  129. In article <2mt2d4$h12@nkosi.well.com> smoke@well.sf.ca.us (Nicholas Jackiw) writes:
  130. >
  131. >Hi Netters,
  132.  
  133. Hi. Long time no post. Are you working in the real world now? :-)
  134.  
  135.  
  136. >I'm required to add one of those annoying "Enter your name
  137. >and organization" splash pages (but at least I talked "them"
  138. >out of copy protection!).  I figured that the way these
  139. >were implemented was to add a resource directly to the
  140. >application. I know that in general, one shouldn't write
  141. >back to the application, because it may be locked, or
  142.  
  143. As long as you are doing this during the installation process
  144. then you know you have write permission. 
  145.  
  146. >
  147. >So I put together a simple scheme:
  148. >
  149. >a) Get user info, put it in a Handle
  150. >b) AddResource
  151. >c) ChangedResource
  152. >d) WriteResource
  153.  
  154. I don't know what could be wrong. Maybe your system is corrupt.
  155.  
  156. I ran this program and it worked fine in both cases. (From TP and
  157. from the built application.
  158.  
  159.  
  160. program Test;
  161.  
  162.   type
  163.  
  164.     PersonalInfoRec = record
  165.         name: Str32;
  166.         address: Str32;
  167.         Phone: Str32;
  168.       end;
  169.  
  170.   var
  171.     pref: PersonalInfoRec;
  172.     h: Handle;
  173. begin
  174.  
  175.   pref.name := 'Matthew Mora';
  176.   pref.address := '123 nowhereville';
  177.   pref.phone := '765-4321';
  178.   h := NewHandle(sizeof(PersonalInfoRec));
  179.   if h <> nil then
  180.     begin
  181.       BlockMove(@pref, h^, sizeof(PersonalInfoRec));
  182.       AddResource(h, 'PREF', 128, 'Prefs');
  183.       ChangedResource(h);
  184.       WriteResource(h);
  185.       UpdateResFile(CurResFile);
  186.       ReleaseResource(h);
  187.     end;
  188.  
  189. end.
  190.  
  191.  
  192. Xavier
  193.  
  194. -- 
  195. ___________________________________________________________
  196. Matthew Xavier Mora                       Matt_Mora@sri.com
  197. SRI International                       mxmora@unix.sri.com
  198. 333 Ravenswood Ave                    Menlo Park, CA. 94025
  199.  
  200. +++++++++++++++++++++++++++
  201.  
  202. >From d88-jwa@mumrik.nada.kth.se (Jon Wdtte)
  203. Date: 25 Mar 1994 08:28:32 GMT
  204. Organization: The Royal Institute of Technology
  205.  
  206. In <2mt2d4$h12@nkosi.well.com> smoke@well.sf.ca.us (Nicholas Jackiw) writes:
  207.  
  208. >I'm required to add one of those annoying "Enter your name
  209. >and organization" splash pages (but at least I talked "them"
  210.  
  211. Don't forget the validated serial number!
  212.  
  213. >were implemented was to add a resource directly to the
  214. >application. I know that in general, one shouldn't write
  215.  
  216. Not good, since the user may run the app from a locked server
  217. or CD-ROM or... and the application would always work, albeit
  218. with a "known" name or number, if you copied it elsewhere.
  219.  
  220. Instead, put the pertinent info in a file in the preferences
  221. folder. The app is always legitimate until it's moved to a
  222. new CPU, or the system is re-installed from scratch.
  223.  
  224. ON THE OTHER HAND - adding a resource to yourself and staying
  225. valid across crashes/backups is a good thing as well. If you're
  226. worried about copying, though, you have to go the prefs file
  227. route.
  228.  
  229. -- 
  230.  -- Jon W{tte, h+@nada.kth.se, Mac Hacker Deluxe --
  231.  
  232.     CORRECTLY in this case meaning to the language spec, not to the
  233.     naive expectations of the programmer.
  234.  
  235. ---------------------------
  236.  
  237. >From rudolph@unixg.ubc.ca (Christopher E Rudolph)
  238. Subject: Changing font when using PopupMenuSelect () Q!
  239. Date: 25 Mar 94 05:09:43 GMT
  240. Organization: The University of British Columbia
  241.  
  242. Hello,
  243.  
  244. I am using PopupMenuSelect (..) to display popup menus in an application. 
  245. However the font is always in the System font regardless of what I try. 
  246. Do I need to define a MDEF just to have a different font (geneva, 9) in my
  247. popup menu or is there something I am missing.
  248.  
  249. thanx,
  250.  
  251. Chris Rudolph <rudolph@unixg.ubc.ca>
  252. - ----------------------------------
  253.  
  254.  
  255. +++++++++++++++++++++++++++
  256.  
  257. >From first.ascent@mindlink.bc.ca (Alex Curylo)
  258. Date: 25 Mar 94 19:43:08 GMT
  259. Organization: MIND LINK! - British Columbia, Canada
  260.  
  261. >I am using PopupMenuSelect (..) to display popup menus in an application.
  262. However the font is always in the System font regardless of what I try.
  263.  
  264. The easiest way I know to work around this is to make your popup into a
  265. popup menu control, and define the control procedure as popupMenuProc
  266. (1008) + useWFont (2? 1? 4?). This is how all those 9-point popups in CTB
  267. tool config dialogs are done.
  268.  
  269. ---------------------------
  270.  
  271. >From danny@utkux.utcc.utk.edu (Danny W. McCampbell)
  272. Subject: Converting C String to Str255?
  273. Date: Fri, 18 Mar 1994 15:18:35 GMT
  274. Organization: University of Tennessee
  275.  
  276. Hi all.  I am using straight C string manipulations
  277. and want to convert a C string to a Str255 to pass
  278. it through ParamText.  It is this easy to do? Please
  279. help.  
  280.  
  281. Thanks in advance.
  282.  
  283. Danny W. McCampbell
  284. danny@utkux.utcc.utk.edu
  285.  
  286. +++++++++++++++++++++++++++
  287.  
  288. >From Carl R. Osterwald <carl_osterwald@nrel.gov>
  289. Date: Fri, 18 Mar 94 18:40:18 GMT
  290. Organization: National Renewable Energy Laboratory
  291.  
  292. In article <danny.1114391555B@martha.utcc.utk.edu> Danny W. McCampbell,
  293. danny@utkux.utcc.utk.edu writes:
  294. >Hi all.  I am using straight C string manipulations
  295. >and want to convert a C string to a Str255 to pass
  296. >it through ParamText.  It is this easy to do? Please
  297. >help.  
  298.  
  299. Try using c2pstr.
  300.  
  301. +++++++++++++++++++++++++++
  302.  
  303. >From rondavis@datawatch.com (Ron Davis)
  304. Date: Fri, 18 Mar 1994 19:40:21 GMT
  305. Organization: Datawatch
  306.  
  307. In article <danny.1114391555B@martha.utcc.utk.edu>,
  308. danny@utkux.utcc.utk.edu (Danny W. McCampbell) wrote:
  309.  
  310. > Hi all.  I am using straight C string manipulations
  311. > and want to convert a C string to a Str255 to pass
  312. > it through ParamText.  It is this easy to do? Please
  313. > help.  
  314. > Thanks in advance.
  315. > Danny W. McCampbell
  316. > danny@utkux.utcc.utk.edu
  317.  
  318.     Most environments have procedures for doing this both ways.  In Think 
  319.        its CtoPstr((char*)string).  There's also c2pstr() that I use in
  320. Codewarrior
  321.        but I believe it also work in Think.
  322.  
  323. __________________________________________________________________________
  324. "I want to know God's thoughts...the rest are details."
  325.                                            -- Albert Einstein
  326. _________________________________________
  327. Ron Davis                                  rondavis@datawatch.com       
  328. Datawatch, Research Triangle Park, NC      (919)549-0711
  329.  
  330. The opions expressed are mine, not Datawatch's
  331.  
  332. +++++++++++++++++++++++++++
  333.  
  334. >From bsc@oui.com (Bill Stewart-Cole)
  335. Date: 18 Mar 1994 20:30:06 -0600
  336. Organization: Odyssey Ultraware Inc
  337. St Louis, MO
  338.  
  339. Since you obviously are using a Mac, you are fairly likely to be using Think C
  340. or Symantec C++. Both include the simple ctopstr() and ptocstr() functions,
  341. which convert in place and take a string as a parameter. 
  342.  
  343. +++++++++++++++++++++++++++
  344.  
  345. >From kenlong@netcom.com (Ken Long)
  346. Date: Mon, 21 Mar 1994 03:46:42 GMT
  347. Organization: NETCOM On-line Communication Services (408 241-9760 guest)
  348.  
  349. Bill Stewart-Cole (bsc@oui.com) wrote:
  350. : Since you obviously are using a Mac, you are fairly likely to be using Think C
  351. : or Symantec C++. Both include the simple ctopstr() and ptocstr() functions,
  352. : which convert in place and take a string as a parameter. 
  353.  
  354. And they are both in the Pascal.h header file.  I ran into some old 
  355. source calls to "ptoc" or "ctop" which are not current.  Changing to the 
  356. current calls ran fine.
  357.  
  358. -Ken-
  359.  
  360. +++++++++++++++++++++++++++
  361.  
  362. >From Bill McCloskey <billm@interaccess.com>
  363. Date: 21 Mar 1994 03:05:03 GMT
  364. Organization: ???
  365.  
  366. In article <danny.1114391555B@martha.utcc.utk.edu> Danny W. McCampbell,
  367. danny@utkux.utcc.utk.edu writes:
  368. >Hi all.  I am using straight C string manipulations
  369. >and want to convert a C string to a Str255 to pass
  370. >it through ParamText.  It is this easy to do? Please
  371. >help.  
  372.  
  373. I usually do:
  374. BlockMove( theCStr, thePStr+1, strlen( theCStr ) );
  375. thePStr[0] = strlen( theCStr );
  376.  
  377. +++++++++++++++++++++++++++
  378.  
  379. >From michaelp@calvin.usc.edu (Michael Peterson)
  380. Date: 22 Mar 1994 20:18:35 -0800
  381. Organization: University of Southern California, Los Angeles, CA
  382.  
  383. Bill McCloskey <billm@interaccess.com> writes:
  384.  
  385. >In article <danny.1114391555B@martha.utcc.utk.edu> Danny W. McCampbell,
  386. >danny@utkux.utcc.utk.edu writes:
  387. >>Hi all.  I am using straight C string manipulations
  388. >>and want to convert a C string to a Str255 to pass
  389. >>it through ParamText.  It is this easy to do? Please
  390. >>help.  
  391.  
  392. >I usually do:
  393. >BlockMove( theCStr, thePStr+1, strlen( theCStr ) );
  394. >thePStr[0] = strlen( theCStr );
  395.  
  396. Have you tried c2pstr, or mabye this only exists in MPW?
  397.  
  398. Michael Peterson
  399.  
  400. +++++++++++++++++++++++++++
  401.  
  402. >From Bill McCloskey <billm@interaccess.com>
  403. Date: 25 Mar 1994 23:32:29 GMT
  404. Organization: ???
  405.  
  406. In article <2mofur$aeu@calvin.usc.edu> Michael Peterson,
  407. michaelp@calvin.usc.edu writes:
  408. >>I usually do:
  409. >>BlockMove( theCStr, thePStr+1, strlen( theCStr ) );
  410. >>thePStr[0] = strlen( theCStr );
  411. >
  412. >Have you tried c2pstr, or mabye this only exists in MPW?
  413.  
  414. Usually the reason I do this is because you have two variables: a C and a
  415. Pascal
  416. string. On the version of c2pstr I found, you give it the C string, it
  417. converts
  418. it, and then you still have a C string, but containing Pascal data. Then
  419. you have
  420. to do some casting and stuff and I end up just copying it into a Pascal
  421. string
  422. anyway.
  423.  
  424. ---------------------------
  425.  
  426. >From neath@brazil.psych.purdue.edu (Ian Neath)
  427. Subject: How to keep screen savers from activating?
  428. Date: Tue, 22 Mar 1994 14:00:17 GMT
  429. Organization: Purdue University
  430.  
  431. First, thanks to the many people who've posted/emailed answers
  432. previously.
  433.  
  434. I have a simulation program that keeps updating the screen each
  435. cycle.  The problem is that many screen savers (e.g., Darkside)
  436. kick in.  How do these screen savers decide when to save a screen
  437. and how do I make my app tell these screen savers not too?
  438.  
  439. Thanks again.
  440.  
  441. --
  442.       Ian Neath        | There are four kinds of people in this world:
  443. neath@psych.purdue.edu | cretins, fools, morons and lunatics - U. Eco
  444.  
  445. +++++++++++++++++++++++++++
  446.  
  447. >From giles@med.cornell.edu (Aaron Giles)
  448. Date: Tue, 22 Mar 1994 11:03:53 -0500
  449. Organization: Cornell University Medical College
  450.  
  451. In article <Cn2K8I.rxu@mozo.cc.purdue.edu>, neath@brazil.psych.purdue.edu
  452. (Ian Neath) wrote:
  453.  
  454. > I have a simulation program that keeps updating the screen each
  455. > cycle.  The problem is that many screen savers (e.g., Darkside)
  456. > kick in.  How do these screen savers decide when to save a screen
  457. > and how do I make my app tell these screen savers not too?
  458.  
  459. I've had some (limited) success with posting key down events periodically.
  460.  Like most solutions to this problem, this one has certain idiosyncracies.
  461.  For instance, I got email from one person who said that there was a quiet
  462. rhythmic tapping noise in the background -- turns out he had some
  463. extension which make audible key clicks whenever he typed!
  464.  
  465. Anyone have a better solution? :-)
  466. -- 
  467. Aaron Giles
  468. Macintosh & Newton Developer
  469. Cornell University Medical College
  470. giles@med.cornell.edu
  471.  
  472. +++++++++++++++++++++++++++
  473.  
  474. >From lowry@shiva.eche.ualberta.ca (Brian Lowry)
  475. Date: 22 Mar 1994 22:46:27 GMT
  476. Organization: Chem Eng - Univ of Alberta
  477.  
  478. In article <giles-220394110353@140.251.160.160>, giles@med.cornell.edu
  479. (Aaron Giles) wrote:
  480.  
  481. > In article <Cn2K8I.rxu@mozo.cc.purdue.edu>, neath@brazil.psych.purdue.edu
  482. > (Ian Neath) wrote:
  483.  
  484. > > I have a simulation program that keeps updating the screen each
  485. > > cycle.  The problem is that many screen savers (e.g., Darkside)
  486. > > kick in.  How do these screen savers decide when to save a screen
  487. > > and how do I make my app tell these screen savers not too?
  488.  
  489. > I've had some (limited) success with posting key down events periodically.
  490. >  Like most solutions to this problem, this one has certain idiosyncracies.
  491. >  For instance, I got email from one person who said that there was a quiet
  492. > rhythmic tapping noise in the background -- turns out he had some
  493. > extension which make audible key clicks whenever he typed!
  494.  
  495. > Anyone have a better solution? :-)
  496.  
  497.   Look, either your application saves its graphics offscreen (like it's
  498. supposed to), or it's simply incompatible with screen savers (or anything
  499. else that can come in front of it.  What do you do when your application is
  500. moved to the background or hidden?  Well, do the same thing when you
  501. receive ANY redraw event, and, screen saver or not, your app will work
  502. fine.  By the way, if the user didn't want their screen saver to go on,
  503. then they'd turn it off or lengthen the time before activation...
  504.  
  505. -- 
  506.  
  507. Brian Lowry
  508.  
  509. +++++++++++++++++++++++++++
  510.  
  511. >From deweeset@ptolemy2.rdrc.rpi.edu (Thomas E. DeWeese)
  512. Date: 22 Mar 1994 20:20:34 GMT
  513. Organization: Rensselaer Polytechnic Institute, Troy NY, USA
  514.  
  515. In article <giles-220394110353@140.251.160.160>,
  516. Aaron Giles <giles@med.cornell.edu> wrote:
  517. >In article <Cn2K8I.rxu@mozo.cc.purdue.edu>, neath@brazil.psych.purdue.edu
  518. >(Ian Neath) wrote:
  519. >> kick in.  How do these screen savers decide when to save a screen
  520. >> and how do I make my app tell these screen savers not too?
  521. >
  522. >I've had some (limited) success with posting key down events periodically.
  523.  
  524. >Anyone have a better solution? :-)
  525. >Aaron Giles
  526.  
  527.     I don't know if it's better, but you could 'wiggle' the mouse
  528. for the user, just one pixel back an forth, every minute or so.  You'd
  529. have to experiment a little since some screen savers might have a min
  530. that they consider a move.  It is concievable that people might notice
  531. this and get upset, but I bet the mouse moves one pixel all the time
  532. from tapping the table, or shifting your arms, and no one notices.
  533. -- 
  534.                             Thomas DeWeese
  535. deweeset@rdrc.rpi.edu     
  536.             "The only difference between theory and practice is
  537.              that in theory there isn't any." -- unknown
  538.  
  539. +++++++++++++++++++++++++++
  540.  
  541. >From rang@winternet.mpls.mn.us (Anton Rang)
  542. Date: 23 Mar 1994 00:30:32 GMT
  543. Organization: Minnesota Angsters
  544.  
  545. In article <giles-220394110353@140.251.160.160> giles@med.cornell.edu (Aaron Giles) writes:
  546. >In article <Cn2K8I.rxu@mozo.cc.purdue.edu>, neath@brazil.psych.purdue.edu
  547. >(Ian Neath) wrote:
  548. >
  549. >> The problem is that many screen savers (e.g., Darkside)
  550. >> kick in.  How do these screen savers decide when to save a screen
  551. >> and how do I make my app tell these screen savers not too?
  552. >
  553. >I've had some (limited) success with posting key down events periodically.
  554. > [...]
  555. >Anyone have a better solution? :-)
  556.  
  557.   I believe that After Dark (and most newer screen savers, like
  558. DarkSide) implement a Gestalt selector which can be used to control
  559. the screen saver ('SAVR' or 'SAVC').  I don't know what level of
  560. control's possible through it, though.  Anyone have more info on this?
  561. --
  562. Anton Rang (rang@winternet.mpls.mn.us)
  563.  
  564. +++++++++++++++++++++++++++
  565.  
  566. >From L.H.Wood@student.lut.ac.uk
  567. Date: Tue, 22 Mar 1994 23:50:51 GMT
  568. Organization: Loughborough University, UK.
  569.  
  570. In article <giles-220394110353@140.251.160.160> giles@med.cornell.edu (Aaron Giles) writes:
  571. >In article <Cn2K8I.rxu@mozo.cc.purdue.edu>, neath@brazil.psych.purdue.edu
  572. >(Ian Neath) wrote:
  573. >
  574. >> I have a simulation program that keeps updating the screen each
  575. >> cycle.  The problem is that many screen savers (e.g., Darkside)
  576. >> kick in.  How do these screen savers decide when to save a screen
  577. >> and how do I make my app tell these screen savers not too?
  578. >
  579. >I've had some (limited) success with posting key down events periodically.
  580. > Like most solutions to this problem, this one has certain idiosyncracies.
  581. > For instance, I got email from one person who said that there was a quiet
  582. >rhythmic tapping noise in the background -- turns out he had some
  583. >extension which make audible key clicks whenever he typed!
  584. >
  585. >Anyone have a better solution? :-)
  586.  
  587. Use the screensaver gestalts defined by After dark and used by most screensavers
  588. these days.
  589.  
  590. Full info in the After Dark programming manuals, available from info-mac or
  591. the After Dark site at ftp.att.com /pub/afterdark.
  592.  
  593. L.
  594.  
  595.  
  596. +++++++++++++++++++++++++++
  597.  
  598. >From Thomas Reed <reed@medicine.wustl.edu>
  599. Date: 23 Mar 1994 14:49:28 GMT
  600. Organization: Washington University
  601.  
  602. In article <lowry-220394154247@lowry.eche.ualberta.ca> Brian Lowry,
  603. lowry@shiva.eche.ualberta.ca writes:
  604. >  Look, either your application saves its graphics offscreen (like it's
  605. >supposed to), or it's simply incompatible with screen savers (or anything
  606. >else that can come in front of it.  What do you do when your application
  607. is
  608. >moved to the background or hidden?
  609.  
  610. I think his point is that he's written a simulation program that you sit
  611. and watch without hitting any keys (or something like that), and the
  612. screensaver always comes on during it.  I think that wanting to keep the
  613. screensaver from kicking in is a legitimate desire.
  614.  
  615. Plus, there's no "supposed to" about saving graphics offscreen.  You can
  616. update your graphics any way you want.  I've written programs where it's
  617. more efficient to recalculate the graphics in a temporary buffer, rather
  618. than saving it constantly in a static buffer.
  619.  
  620. -Thomas
  621. =====================================================
  622. Thomas Reed                    Washington University
  623. Reed@telesphere.wustl.edu          Medical School
  624. (also:  Reed@medicine.wustl.edu)
  625. - ---------------------------------------------------
  626. Clothes make the man.  Naked people have little or no
  627. influence on society.  -- Mark Twain
  628. =====================================================
  629.  
  630. +++++++++++++++++++++++++++
  631.  
  632. >From lowry@shiva.eche.ualberta.ca (Brian Lowry)
  633. Date: 23 Mar 1994 18:18:21 GMT
  634. Organization: Chem Eng - Univ of Alberta
  635.  
  636. In article <2mpktoINNosu@medicine.wustl.edu>, Thomas Reed
  637. <reed@medicine.wustl.edu> wrote:
  638.  
  639. > I think his point is that he's written a simulation program that you sit
  640. > and watch without hitting any keys (or something like that), and the
  641. > screensaver always comes on during it.  I think that wanting to keep the
  642. > screensaver from kicking in is a legitimate desire.
  643.  
  644.   Well then, ask the user to turn off their screen saver.  Or, better yet,
  645. use the screen saver as a display shell (that's what they do best).  I've
  646. been known to try out all kinds of graphics in After Dark first, because it
  647. keeps the rest of my system happy (AD handles all the
  648. refresh/update/background stuff for me).  Anyway, the above doesn't just
  649. have a problem with screen savers - it will also die when an application
  650. moves itself to the front (or when the user, so innocent that they can't
  651. turn off a screen saver themself, brings something to the front, or -- gasp
  652. -- clicks on the desktop!).  Not handling update events properly seems (to
  653. me) an extreme example of laziness.
  654.  
  655. -- 
  656.  
  657. Brian Lowry
  658.  
  659. +++++++++++++++++++++++++++
  660.  
  661. >From Thomas Reed <reed@medicine.wustl.edu>
  662. Date: 23 Mar 1994 20:22:48 GMT
  663. Organization: Washington University
  664.  
  665. In article <lowry-230394111212@lowry.eche.ualberta.ca> Brian Lowry,
  666. lowry@shiva.eche.ualberta.ca writes:
  667. >  Well then, ask the user to turn off their screen saver.
  668.  
  669. What a pain?  As a user, would you rather turn off your screen saver, or
  670. have the program do it for you?
  671.  
  672. >Anyway, the above doesn't just
  673. >have a problem with screen savers - it will also die when an application
  674. >moves itself to the front (or when the user, so innocent that they can't
  675. >turn off a screen saver themself, brings something to the front, or --
  676. gasp
  677. >-- clicks on the desktop!).  Not handling update events properly seems
  678. (to
  679. >me) an extreme example of laziness.
  680.  
  681. Nobody ever said anything about not handling updates properly!  The
  682. reason I can see is that it would be a major pain-in-the-ass if your
  683. screensaver came on every five minutes (or whatever it's set to) while
  684. watching a simulation.  That doesn't mean that he isn't handling updates!
  685.  
  686. -Thomas
  687. =====================================================
  688. Thomas Reed                    Washington University
  689. Reed@telesphere.wustl.edu          Medical School
  690. (also:  Reed@medicine.wustl.edu)
  691. - ---------------------------------------------------
  692. Clothes make the man.  Naked people have little or no
  693. influence on society.  -- Mark Twain
  694. =====================================================
  695.  
  696. +++++++++++++++++++++++++++
  697.  
  698. >From tzs@u.washington.edu (Tim Smith)
  699. Date: 24 Mar 1994 03:13:47 GMT
  700. Organization: University of Washington School of Law, Class of '95
  701.  
  702. Thomas Reed  <reed@medicine.wustl.edu> wrote:
  703. >I think his point is that he's written a simulation program that you sit
  704. >and watch without hitting any keys (or something like that), and the
  705. >screensaver always comes on during it.  I think that wanting to keep the
  706. >screensaver from kicking in is a legitimate desire.
  707.  
  708. Don't most screen savers provide a way for the user to indicate that they
  709. are not kick in (e.g., moving the mouse to a specified part of the
  710. screen)?  If the user of the simulation doesn't want the screen saver
  711. to interfere, shouldn't it be left to the user to tell this to the
  712. screen saver.  Presumably, they user installed the screen saver
  713. because he or she *wants* it to kick in, and it is not the place of
  714. the simulation program to decide that the user was wrong.
  715.  
  716. --Tim Smith
  717.  
  718. +++++++++++++++++++++++++++
  719.  
  720. >From mason@cis.umassd.edu (Mason Bliss)
  721. Date: Fri, 25 Mar 1994 19:34:11 GMT
  722. Organization: University of Massachusetts Dartmouth
  723.  
  724. In <RANG.94Mar22183032@icicle.winternet.mpls.mn.us> rang@winternet.mpls.mn.us (Anton Rang) writes:
  725.  
  726. >  I believe that After Dark (and most newer screen savers, like
  727. >DarkSide) implement a Gestalt selector which can be used to control
  728. >the screen saver ('SAVR' or 'SAVC').  I don't know what level of
  729. >control's possible through it, though.  Anyone have more info on this?
  730.  
  731. You can turn the screen saver on and off, or wake it up and send it back
  732. to slumber land... Pretty much whatever you want.
  733.  
  734. Check out the Gestalt 'SAVC' selector, as that does what you want.
  735.  
  736. So far, After Dark, Darkside, and Basic Black support this. I don't know
  737. who else does.
  738.  
  739. -- 
  740. Mason L. Bliss  <>  Psych Student & Random Hacker  <>  UMass Dartmouth
  741.     Internet: mason@cis.umassd.edu    <>    FidoNet: 1:109/370.6
  742.         You're brave! You shoot men! You step on their necks!
  743.  
  744. ---------------------------
  745.  
  746. >From darrin@engin.umich.edu (Darrin P Cardani)
  747. Subject: How to save a PICT?
  748. Date: 22 Mar 1994 23:48:52 GMT
  749. Organization: University of Michigan Engineering, Ann Arbor
  750.  
  751. I have a picture in a GWorld which I want to save to a file. I've tried
  752. adapting the code from Think Reference for this, but it doesn't seem
  753. to work. My Gworld is 16 bits deep. And I'm replacing the PutPict Std
  754. Proc with one that writesto disk, like in the Think Ref. example.
  755. I'm then doing a CopyBits of the entire GWorld onto itself.
  756. Is this a problem? Is there a better way? Thanks for any help.
  757.  
  758. Darrin Cardani
  759. darrin@engin.umich.edu
  760. Darrin.Cardani@AtlantaGA.NCR.COM
  761.  
  762.  
  763. +++++++++++++++++++++++++++
  764.  
  765. >From markhanrek@aol.com (MarkHanrek)
  766. Date: 22 Mar 1994 20:39:02 -0500
  767. Organization: America Online, Inc. (1-800-827-6364)
  768.  
  769. You are doing it the hard way, which is the slower memory-conservative
  770. approach.
  771.  
  772. You really should find working example source code and imitate it.
  773.  
  774. Essentially, you write 512 bytes of zeroes to a file, then write the data in
  775. your PicHandle (picture).
  776.  
  777. The way you come up with a PicHandle -- i.e. a picture version of the image in
  778. your GWorld -- is you open up a new picture, and then CopyBits the GWorld's
  779. PixMap to itself, then close the picture.
  780.  
  781. Off the top of my head, you'd do something like this...
  782.  
  783.  
  784.   PicHandle     thePicture;
  785.   PixMapHandle  thePixels;
  786.   Rect          theRect;
  787.   GWorldPtr     theGWorld;
  788.  
  789.   thePicture = OpenPicture( &theRect );
  790.  
  791.   thePixels = GetGWorldPixMap( theGWorld );
  792.   LockPixels( thePixels );
  793.  
  794.   CopyBits( *thePixels, *thePixels, &theRect, &theRect, srcCopy, nil );
  795.  
  796.   ClosePicture;
  797.  
  798.   UnlockPixels( thePixels );
  799.  
  800.   // Create file with type 'PICT'
  801.   // Open file
  802.   // Write 512 bytes of zeros ( to accomodate ancient unused protocol )
  803.   // Write all the data in thePicture
  804.   // Close file
  805.  
  806.  
  807. Of course, you could also now perform...
  808.  
  809.      DrawPicture( thePicture );
  810.  
  811. ... if you wanted -- just to give you a point of reference.
  812.  
  813. You can take care of handling the appropriate rect and GWorld in the example
  814. code above, natch.
  815.  
  816. Hope this helps.
  817.  
  818. Mark Hanrek
  819.  
  820. +++++++++++++++++++++++++++
  821.  
  822. >From Steve Bryan <sbryan@maroon.tc.umn.edu>
  823. Date: Wed, 23 Mar 1994 16:18:46 GMT
  824. Organization: Sexton Software
  825.  
  826. In article <2mo054INNfca@srvr1.engin.umich.edu> Darrin P Cardani,
  827. darrin@engin.umich.edu writes:
  828. >to work. My Gworld is 16 bits deep. And I'm replacing the PutPict Std
  829. >Proc with one that writesto disk, like in the Think Ref. example.
  830. >I'm then doing a CopyBits of the entire GWorld onto itself.
  831. >Is this a problem? Is there a better way? Thanks for any help.
  832.  
  833. This should generate the pict but not quite a pict file. Are you getting
  834. any output at all? Assuming you are don't forget that your pict file will
  835. need a 256 byte header. You have the option of making that header all
  836. zeros and still being compatible with most pict reading programs (eg
  837. TeachText). Sorry if I'm pointing out something you already know but it
  838. would be helpful if you'd include at least a little pseudo code to show
  839. what you are trying.
  840. Steve Bryan                       sbryan@maroon.tc.umn.edu
  841. Sexton Software                   CompuServe: 76545,527
  842. Minneapolis, MN                   fax: (612) 929-1799
  843.  
  844. ---------------------------
  845.  
  846. >From petm@soda.berkeley.edu (Peter Mattis)
  847. Subject: INIT: displaying a dialog
  848. Date: 20 Mar 1994 22:25:56 GMT
  849. Organization: Computer Science Undergrad Assoc., UCBerkeley
  850.  
  851. Ok, I'm trying to write an init that displays a dialog when the user
  852. control-option-command clicks on the screen.
  853.  
  854. I know how to check for the click, but what is the best way to show
  855. the dialog?
  856.  
  857. Creating it from scratch each time would be a pain, since I'm not 
  858. sure how to create the control items in the dialog.
  859.  
  860. The method I tried and got a little success with is copying the
  861. DITL and DLOG resources from my init to the system file when the init
  862. loads, that way I can make a call to GetNewDialog(). (Of course, I set
  863. the current resource file to the system file first).
  864.  
  865. It would be nice if I could simply keep the dialog around permanently and
  866. keep it hidden when not needed. So how do I make a call to GetNewDialog at
  867. startup? (i.e. How do you init the toolbox managers at startup? I've had
  868. trouble doing this.) This would seem to be the nicest way since if some
  869. user doesn't like this init they can simply through it away and not have
  870. extra resources floating around in the system file.
  871.  
  872. Are there any other methods for doing this than what I've described?
  873.  
  874. All comments are welcome.
  875. Thanks in advance.
  876.  
  877. -Peter Mattis
  878.  
  879. +++++++++++++++++++++++++++
  880.  
  881. >From gurgle@netcom.com (Pete Gontier)
  882. Date: Mon, 21 Mar 1994 02:28:16 GMT
  883. Organization: cellular
  884.  
  885. petm@soda.berkeley.edu (Peter Mattis) writes:
  886.  
  887. >Ok, I'm trying to write an init that displays a dialog when the user
  888. >control-option-command clicks on the screen.
  889.  
  890. This is not the crux of your post, but allow me to point out anyway that
  891. this is not great interface. There are plenty of INITs which detect
  892. clicks in combination with some set of modifier keys, but they generally
  893. respond with some interface like a popup menu which conforms intuitively
  894. to the user's notion of clicking and holding the mouse button down.
  895. Users generally don't cause dialogs to appear by clicking and holding.
  896. When they cause dialogs to appear by clicking, there is always some
  897. visual cue which tells them (a) where to click and (b) whether they have
  898. succeeded in clicking on it. And then the dialog does not appear until
  899. after the mouse button goes up.
  900.  
  901. >I know how to check for the click, but what is the best way to show
  902. >the dialog? Creating it from scratch each time would be a pain, since
  903. >I'm not sure how to create the control items in the dialog. The method
  904. >I tried and got a little success with is copying the DITL and DLOG
  905. >resources from my init to the system file when the init loads, that
  906. >way I can make a call to GetNewDialog(). (Of course, I set the current
  907. >resource file to the system file first).
  908.  
  909. Ack! Phbbt! You must have gotten tons of email already telling you not
  910. to do this. Modifying the System file by any program other than an
  911. installer is truly evil.
  912.  
  913. >It would be nice if I could simply keep the dialog around permanently
  914. >and keep it hidden when not needed. So how do I make a call to
  915. >GetNewDialog at startup?
  916.  
  917. Well, first of all, this is not something you want to do. If you succeed
  918. in doing it, your dialog will only stick around until MultiFinder starts
  919. up. Then seven zillion traps get patched and the window list gets new
  920. behavior, etc. etc., and your dialog gets taken out of the loop, as it
  921. were.
  922.  
  923. Fortunately, you don't have to do this. You have two alternatives,
  924. and they both involve saving away some information at startup for
  925. future use.
  926.  
  927. Firstly, you can save info which allows you to locate the extension file
  928. when you need it. This might involve saving the file name, vRefNum, and
  929. dirID. If you're really cool, you'll save the file type and creator
  930. instead of the file name and search for your extension that way so that
  931. the user can rename you during a session without screwing you. To get
  932. this sort of information in the first place, start with CurResFile and
  933. PBGetFCBInfo diring startup. If you can require System 7, you might be
  934. interested in saving an alias record to yourself.
  935.  
  936. The nice thing about the above method is that it gives you general-case
  937. access to your extension's resource fork. That means you can almost
  938. pretend to be an app and do all the resource getting you like. Of
  939. course, you can;t go opening the fork and leaving it open, so you'll
  940. have to pretend your "app" is modal -- startup, run, and shutdown --
  941. during which time the user cannot interact with other programs.
  942.  
  943. A more special-case method would be to save the DITL resource in a
  944. handle in the System Heap during startup and later call NewDialog with
  945. it. This works just fine, too.
  946.  
  947. >(i.e. How do you init the toolbox managers at startup? I've had trouble
  948. >doing this.
  949.  
  950. This won't help you, because as I said all the initialization you do
  951. will be wiped out when MultiFinder starts up anyway.
  952.  
  953. >This would seem to be the nicest way since if some user doesn't like
  954. >this init they can simply through it away and not have extra resources
  955. >floating around in the system file.
  956.  
  957. And that's precisely the reason you don't want to diddle the System
  958. file, assuming you write absolutely perfect code and there's no chance
  959. you'll blow away that file, rendering the Mac non-bootable. :-)
  960.  
  961. >All comments are welcome.
  962.  
  963. Oh yeah? Your mother wears army boots!
  964. -- 
  965.  Pete Gontier, CTO, Integer Poet Software; gurgle@netcom.com
  966.  
  967. +++++++++++++++++++++++++++
  968.  
  969. >From petm@soda.berkeley.edu (Peter Mattis)
  970. Date: 21 Mar 1994 04:52:44 GMT
  971. Organization: Computer Science Undergrad Assoc., UCBerkeley
  972.  
  973. gurgle@netcom.com (Pete Gontier) writes:
  974.  
  975. >A more special-case method would be to save the DITL resource in a
  976. >handle in the System Heap during startup and later call NewDialog with
  977. >it. This works just fine, too.
  978.  
  979. Go figure, just a little bit earlier I think that a cool way to
  980. do what I want is to save a handle to a DITL resource at startup and
  981. then use this in a call to NewDialog. I try this and it works in a
  982. test app, but fails when I incorporate it into an init.
  983.  
  984. A few questions:
  985. -Why is this method crashing?
  986. -When I tested this method using an app I noticed that I couldn't use
  987. the same handle over and over. I had to make a copy of it for each call
  988. to NewDialog. Why? Does DisposDialog dispose of the itemlist?
  989.  
  990. On your comments about my displaying a dialog in response to a modifier-
  991. click combination. This init is actually a mild form of security
  992. protection for my computer. What I posted earlier wasn't quite correct.
  993. The user (me) will (modifiers)-click in a certain place on the screen
  994. to turn on the security. Then whenever the mouse button is clicked the
  995. dialog box will appear prompting for a password. I'm not sure how
  996. correct this is by Apple's UI guidelines, but since I probably won't
  997. be releasing it, then I have little to worry about in that area.
  998.  
  999. I know there are other security programs out there, but the point isn't to
  1000. have a really terrific security program, but to have a simple one that
  1001. works adequately well. (In it's first incarnation, this program stops all
  1002. intermediate users from accessing my computer. In fact, the only way I
  1003. know of to circumvent it is to reboot the computer using a DIFFERENT
  1004. startup disk. This is because I disable the shift key from keeping inits
  1005. from loading when it's on. The first version was activated and
  1006. deactivated by using (modifier)-click combinations in certain areas
  1007. of the screen. I thought using a password to gain access would be much
  1008. more cool.)
  1009.  
  1010. -Peter Mattis
  1011.  
  1012. +++++++++++++++++++++++++++
  1013.  
  1014. >From rmah@panix.com (Robert S. Mah)
  1015. Date: Mon, 21 Mar 1994 04:34:45 -0500
  1016. Organization: One Step Beyond
  1017.  
  1018. petm@soda.berkeley.edu (Peter Mattis) wrote:
  1019.  
  1020. > gurgle@netcom.com (Pete Gontier) writes:
  1021. > >A more special-case method would be to save the DITL resource in a
  1022. > >handle in the System Heap during startup and later call NewDialog with
  1023. > >it. This works just fine, too.
  1024. > Go figure, just a little bit earlier I think that a cool way to
  1025. > do what I want is to save a handle to a DITL resource at startup and
  1026. > then use this in a call to NewDialog. I try this and it works in a
  1027. > test app, but fails when I incorporate it into an init.
  1028. > A few questions:
  1029. > -Why is this method crashing?
  1030.  
  1031. Most likely because you're not calling DetachResource() on the DITL 
  1032. handle.  When a resource file (i.e. your INIT) get's closed, all the 
  1033. associated resources are purged from RAM.  Except, of course, for the 
  1034. ones you called DetachResource() on (because then, they're no longer 
  1035. technically resources).
  1036.  
  1037. > -When I tested this method using an app I noticed that I couldn't use
  1038. > the same handle over and over. I had to make a copy of it for each call
  1039. > to NewDialog. Why?
  1040.  
  1041. Because that's the way it i:-)   Dialog manager changes the DITL handle
  1042. in place and if you want to use it over again, you must do so from a
  1043. fresh copy.  This is described in Inside Mac I.
  1044.  
  1045.  
  1046. > Does DisposDialog dispose of the itemlist?
  1047.  
  1048. Yes.  Be careful here though.  Since you are planning to use this from
  1049. an INIT, be aware that calling NewDialog or GetNewDialog with a NULL
  1050. for the storage parameter will allocate the storage in the current app
  1051. heap, not the system heap.  Therefore, the storage can get munched if
  1052. you try to use the dialog between WaitNextEvent calls made by the under-
  1053. lying apps.
  1054.  
  1055.  
  1056. > startup disk. This is because I disable the shift key from keeping inits
  1057. > from loading when it's on. The first version was activated and
  1058.  
  1059. Pretty skanky!  How do you do diable the shift-key-disables-inits feature?
  1060.  
  1061. Cheers,
  1062. Rob
  1063. ________________________________________________________________________
  1064.  Robert S. Mah              One Step Beyond              rmah@panix.com
  1065.  
  1066. +++++++++++++++++++++++++++
  1067.  
  1068. >From devon_hubbard@taligent.com (Devon Hubbard)
  1069. Date: Sat, 26 Mar 1994 00:09:55 GMT
  1070. Organization: Taligent, Inc.
  1071.  
  1072. In article <2miihk$qtl@agate.berkeley.edu>, petm@soda.berkeley.edu (Peter
  1073. Mattis) wrote:
  1074.  
  1075. > Ok, I'm trying to write an init that displays a dialog when the user
  1076. > control-option-command clicks on the screen.
  1077. > I know how to check for the click, but what is the best way to show
  1078. > the dialog?
  1079. > Creating it from scratch each time would be a pain, since I'm not 
  1080. > sure how to create the control items in the dialog.
  1081. > The method I tried and got a little success with is copying the
  1082. > DITL and DLOG resources from my init to the system file when the init
  1083. > loads, that way I can make a call to GetNewDialog(). (Of course, I set
  1084. > the current resource file to the system file first).
  1085. > It would be nice if I could simply keep the dialog around permanently and
  1086. > keep it hidden when not needed. So how do I make a call to GetNewDialog at
  1087. > startup? (i.e. How do you init the toolbox managers at startup? I've had
  1088. > trouble doing this.) This would seem to be the nicest way since if some
  1089. > user doesn't like this init they can simply through it away and not have
  1090. > extra resources floating around in the system file.
  1091. > Are there any other methods for doing this than what I've described?
  1092. > All comments are welcome.
  1093. > Thanks in advance.
  1094. > -Peter Mattis
  1095.  
  1096. I hate to give away a method I used years ago to do this, but since this
  1097. isn't rocket science we're talking about, what can it hurt.  During INIT
  1098. time save the vol/dirid of your INIT (e.g. the current open res file). 
  1099. When it's time to bring up your dialog (or whatever), your INIT code opens
  1100. up (_HOpenResFile, etc.) your INIT/cdev from where it knows it's supposed
  1101. to be, thereby making it the current res file.  Your calls to
  1102. _GetNewDialog, etc. will work just fine.  Be very careful to save the
  1103. previous _CurResFile, restore it and everything the way it was, and close
  1104. your res file when done.  Be very careful about ResID numbering and check
  1105. all your rsrc calls to make sure they don't fall back to other rsrc files
  1106. in the chain.  It's a good idea to use Get1Resource-type calls wherever you
  1107. can.  Being polite and asking the user to locate the file if it's moved
  1108. since startup is a polite thing to do.  Use regular StandardGetFile calls
  1109. for that or politely fail.  Don't just beep or something if you can't open
  1110. your res file.
  1111.  
  1112. There are a lot of INITs out there (uh hem, mail type programs) that open
  1113. themselves during INIT time and leave themselves open forever.  I've always
  1114. hated this and thought this was nasty and stupid but that's just me.  Hope
  1115. this helps.
  1116.  
  1117. dEVoN
  1118.  
  1119. - ------------------------------------------------------------------------
  1120. Devon Hubbard                                                Silicon Pilot
  1121. devon_hubbard@taligent.com                                   Taligent, Inc
  1122.  
  1123. ---------------------------
  1124.  
  1125. >From jcovele@netcom.com (John Covele)
  1126. Subject: LabView programming group?
  1127. Date: Fri, 25 Mar 1994 09:30:52 GMT
  1128. Organization: NETCOM On-line Communication Services (408 241-9760 guest)
  1129.  
  1130. Does anyone know where I can find a LabView programming group on the
  1131. internet?
  1132.  
  1133. -- 
  1134. John
  1135.  
  1136. jcovele@netcom.com
  1137. keymaster5@aol.com
  1138. keymaster@online.apple.com
  1139.  
  1140. +++++++++++++++++++++++++++
  1141.  
  1142. >From ejensen@server.uwindsor.ca (Erik Jensen)
  1143. Date: Fri, 25 Mar 1994 14:34:58 GMT
  1144. Organization: University of Windsor
  1145.  
  1146. In article <jcovele-250394013052@jcovele.slip.netcom.com>,
  1147. jcovele@netcom.com (John Covele) wrote:
  1148.  
  1149. > Does anyone know where I can find a LabView programming group on the
  1150. > internet?
  1151. > -- 
  1152. > John
  1153.  
  1154. There is a LabVIEW mailing list that gets quite a few articles daily. Some
  1155. information I have is printed below:
  1156.  
  1157. >Welcome to the Info-LabVIEW Mailing List! At this time I would ask that you
  1158. >check the mail address I have used to send this msg to you. If it is
  1159. >not correct, please let me know, and I will make the necessary changes.
  1160.  
  1161. >If you'd like, a digest version of the list is available. Daily digests are
  1162. >formed and mailed at ~11:30 PM local time (east coast USA). Let me know if
  1163. >this is your preference. Please put the word "Digest" in the subject
  1164. >line to enable me to sort such msgs readily. In case you were wondering,
  1165. >the difference is that you'll get only one Info-LabVIEW msg a day, rather
  1166. >than the 15-20 msgs a day the list typically sees.
  1167.  
  1168. >To post to the list, mail to <info-labview@pica.army.mil>. Administrative
  1169. >issues such as SUBSCRIPTION and DELETION REQUESTS, as well as any mailer
  1170. >problems, SHOULD BE ADDRESSED TO <info-labview-request@pica.army.mil>,
  1171. >not to info-labview, or my personal account.
  1172.  
  1173. >PLEASE! DO NOT send subscription and deletion requests to <info-labview>. If
  1174. >you do so, your request will be forwarded to each of the readers of the list.
  1175. >Aside from their disinterest in such matters, it wastes lots of net bandwidth.
  1176. >Also, do not send list submissions to <info-labview-request>, as I have to
  1177. >forward them to the list by hand!
  1178.  
  1179. I hope this helps.
  1180.  
  1181. __________________________________________________________________________ 
  1182. Erik Jensen                                    
  1183. Department of Physics                         
  1184. University of Windsor                          ejensen@server.uwindsor.ca
  1185. __________________________________________________________________________
  1186.  
  1187. +++++++++++++++++++++++++++
  1188.  
  1189. >From timothys@hood.uucp (Timothy Sherburne)
  1190. Date: 26 Mar 94 06:00:42 GMT
  1191. Organization: University of Portland
  1192.  
  1193. jcovele@netcom.com (John Covele) writes:
  1194.  
  1195. >Does anyone know where I can find a LabView programming group on the
  1196. >internet?
  1197.  
  1198. >-- 
  1199. >John
  1200.  
  1201. >jcovele@netcom.com
  1202. >keymaster5@aol.com
  1203. >keymaster@online.apple.com
  1204.  
  1205. John-
  1206.  
  1207. There was a BitNet group devoted to LabVIEW programming (with access via e-mail, too).  This was 'bout a year ago since I last subscribed to it, but I'm sure it's still around.  Unfortunately, I can't remember the address off hand-try looking in the "List of Lists" for more info.
  1208.  
  1209. Tim
  1210. -- 
  1211. - ---------------------------------------
  1212. | Timothy Sherburne            |
  1213. | Internet:  timothys@hood.uofport.edu    |
  1214. - ---------------------------------------
  1215.  
  1216. ---------------------------
  1217.  
  1218. >From daniels@tts.lth.se (Daniel Sobirk)
  1219. Subject: Proper way to dim screen
  1220. Date: Wed, 23 Mar 1994 16:18:07 +0100
  1221. Organization: TTS
  1222.  
  1223. HI!
  1224. For the purpose of a game I would like to neatly fade the screen to
  1225. black, do a little drawing and then fade back to the proper colors.
  1226. I have played around a bit with the clut, but compared with the
  1227. FadeAway module of AfterDark (which does exactly what I want) the clut
  1228. method is very slow. 
  1229. I think that modifing the gamma table(?) could be a way to go, but this
  1230. seems only to be documented in Designing Cards and Drivers... which I
  1231. don't own.
  1232. If somebody could point me in the right direction, or, even better,
  1233. could provide me with some example code I would be eternally grateful.
  1234. Pascal is preferred but anything will do.
  1235.  
  1236. Cheers,
  1237. Daniel.
  1238.  
  1239. PS
  1240. The game will eventually be released on CD-ROM (here in Sweden) and since I
  1241. will also do the About box. So if you can help me you will be immortalized,
  1242. at least in Sweden. Not bad eh?
  1243. D.
  1244.  
  1245. +++++++++++++++++++++++++++
  1246.  
  1247. >From Matt Slot <fprefect@engin.umich.edu>
  1248. Date: 23 Mar 1994 20:31:50 GMT
  1249. Organization: University of Michigan
  1250.  
  1251. Daniel Sobirk, daniels@tts.lth.se writes:
  1252.  
  1253. >I think that modifing the gamma table(?) could be a way to go, but this
  1254. >seems only to be documented in Designing Cards and Drivers... which I
  1255. >don't own.
  1256.  
  1257. I have written a THINK C library that does Gamma Fading with a simple
  1258. interface. The library is free and available for FTP from Sumex, Mac-Archive,
  1259. and I will post it to alt.sources.mac newsgroup. There is also a Pascal
  1260. version available (thanks to Matthew Xavier Mora).
  1261.  
  1262. Enjoy
  1263. Matt Slot
  1264.  
  1265. +++++++++++++++++++++++++++
  1266.  
  1267. >From kenlong@netcom.com (Ken Long)
  1268. Date: Wed, 23 Mar 1994 18:57:30 GMT
  1269. Organization: NETCOM On-line Communication Services (408 241-9760 guest)
  1270.  
  1271. One of the GMonde DTS snippets does gamma fades.  Mark Slot posted a 
  1272. gamma fade demo and a lib.  Cheese Toast 1.0 has the GMonde .c and.h 
  1273. (that's not suger) files in it.  Cheese Toast 1.1 does fades, too (and 
  1274. works on an LC).  There's a 'clut' fader demo on sumex.There are fade 
  1275. routines in Mark Pilgrim's MSG demo.  DarkSide fade sources are around.
  1276.  
  1277. There's a knob on your monitor that fades.    :)
  1278.  
  1279. Gee, I feel less mortal already!  Maybe in a couple lifetimes I may give 
  1280. up dying altogether!
  1281.  
  1282. -Ken-
  1283.  
  1284. +++++++++++++++++++++++++++
  1285.  
  1286. >From Carl R. Osterwald <carl_osterwald@nrel.gov>
  1287. Date: Thu, 24 Mar 94 16:21:01 GMT
  1288. Organization: National Renewable Energy Laboratory
  1289.  
  1290. In article <daniels-230394161807@mac1-tts.tts.lth.se> Daniel Sobirk,
  1291. daniels@tts.lth.se writes:
  1292. >I have played around a bit with the clut, but compared with the
  1293. >FadeAway module of AfterDark (which does exactly what I want) the clut
  1294. >method is very slow. 
  1295.  
  1296. One problem with clut manipulations is that they won't work on fixed-clut
  1297. GDevices, such as PowerBooks and Duos with LCD displays.  Considering the
  1298. number of these Macs out there, this is a serious limitation.  One of the
  1299. new tech notes on ftp.apple.com discusses this problem.
  1300.  
  1301. +++++++++++++++++++++++++++
  1302.  
  1303. >From kenlong@netcom.com (Ken Long)
  1304. Date: Fri, 25 Mar 1994 02:19:29 GMT
  1305. Organization: NETCOM On-line Communication Services (408 241-9760 guest)
  1306.  
  1307. That's MATT Slot, Ken!  "Mark-a-lot" is a pen!  Now, what's this 
  1308. "Shinola" stuff I've been hearing about (or is that 'smelling')?
  1309.  
  1310. -Ken- 
  1311.  
  1312. +++++++++++++++++++++++++++
  1313.  
  1314. >From danprice@delphi.com
  1315. Date: Fri, 25 Mar 94 22:52:46 -0500
  1316. Organization: Delphi (info@delphi.com email, 800-695-4005 voice)
  1317.  
  1318.  
  1319. Will the gamma or clut methods work with classic QDraw?  My Classic's monitor
  1320. can fade via a control panel and via after dark.  Any ideas?
  1321.  
  1322.     -dp
  1323.  
  1324. ---------------------------
  1325.  
  1326. >From Peter Su <psu+@cs.cmu.edu>
  1327. Subject: Think Pascal tools for tracking down memory problems
  1328. Date: Tue, 22 Mar 1994 19:54:21 GMT
  1329. Organization: School of Computer Science, Carnegie Mellon
  1330.  
  1331. Are there any tools that could help one find memory leaks and/or
  1332. handle botches in THINK Pascal programs?
  1333.  
  1334. Thanks,
  1335. Pete
  1336.  
  1337. +++++++++++++++++++++++++++
  1338.  
  1339. >From ingemar@lysator.liu.se (Ingemar Ragnemalm)
  1340. Date: Thu, 24 Mar 1994 22:22:39 GMT
  1341. Organization: (none)
  1342.  
  1343. Peter Su <psu+@cs.cmu.edu> writes:
  1344.  
  1345. >Are there any tools that could help one find memory leaks and/or
  1346. >handle botches in THINK Pascal programs?
  1347.  
  1348. I just type FreeMem in the Observe window and see if it changes (signifi-
  1349. cantly), and if it does, step though the code to see when. Or did you have
  1350. something else in mind? (What are "botches?)
  1351.  
  1352. --
  1353. - -
  1354. Ingemar Ragnemalm, PhD
  1355. Image processing, Mac shareware games
  1356. E-mail address: ingemar@isy.liu.se or ingemar@lysator.liu.se
  1357.  
  1358. +++++++++++++++++++++++++++
  1359.  
  1360. >From omh@cs.brown.edu (Owen M. Hartnett)
  1361. Date: Fri, 25 Mar 1994 14:34:50 GMT
  1362. Organization: Brown University Department of Computer Science
  1363.  
  1364. In article <Cn6wts.1rH@lysator.liu.se> ingemar@lysator.liu.se (Ingemar Ragnemalm) writes:
  1365. >Peter Su <psu+@cs.cmu.edu> writes:
  1366. >
  1367. >>Are there any tools that could help one find memory leaks and/or
  1368. >>handle botches in THINK Pascal programs?
  1369. >
  1370. >I just type FreeMem in the Observe window and see if it changes (signifi-
  1371. >cantly), and if it does, step though the code to see when. Or did you have
  1372. >something else in mind? (What are "botches?)
  1373. >
  1374. >--
  1375. >---
  1376. >Ingemar Ragnemalm, PhD
  1377. >Image processing, Mac shareware games
  1378. >E-mail address: ingemar@isy.liu.se or ingemar@lysator.liu.se
  1379.  
  1380. Get the MacsBug dcmd "Leaks" from ftp.apple.com (I should be in there.)
  1381. You'll need somewhat of a knowledge of MacsBug to use it, but this is
  1382. good knowledge to have, anyway. Leaks does an excellent job of tracking
  1383. down memory leaks.
  1384.  
  1385. -Owen
  1386.  
  1387. -- 
  1388. Owen Hartnett                omh@cs.brown.edu
  1389. "FAITH, n. Belief without evidence in what is told by one who speaks
  1390.         without knowledge, of things without parallel."
  1391.             -Ambrose Bierce - The Devil's Dictionary
  1392.  
  1393. +++++++++++++++++++++++++++
  1394.  
  1395. >From pottier@goelette.ens.fr (Francois Pottier)
  1396. Date: 25 Mar 1994 19:40:47 GMT
  1397. Organization: Ecole Normale Superieure, PARIS, France
  1398.  
  1399. >Peter Su <psu+@cs.cmu.edu> writes:
  1400. >
  1401. >>Are there any tools that could help one find memory leaks and/or
  1402. >>handle botches in THINK Pascal programs?
  1403.  
  1404. I think that a wonderful tool for this is the 'Leaks' dcmd. It's very
  1405. simple to use: break into Macsbug, type 'Leaks On'. Then let your program
  1406. run for a while and do whatever it's supposed to do. Then break into
  1407. Macsbug again and type 'Leaks Off'. It will display a list of blocks that
  1408. have been allocated and not released, along with the names of the routines
  1409. which allocated them. It's incredibly efficient and useful. You can fix
  1410. memory leaks without even thinking. Just use Leaks, which tells you which
  1411. routine is broken, go fix the routine and it works.
  1412.  
  1413. -- 
  1414. - -----------------------------------------------------------------------------
  1415. Francois Pottier
  1416. pottier@dmi.ens.fr
  1417.  
  1418. ---------------------------
  1419.  
  1420. >From John Delacour <JD@eremita.demon.co.uk>
  1421. Subject: WorldScript compatible Text Editors
  1422. Date: Sat, 19 Mar 1994 01:23:53 GMT
  1423. Organization: Eremita
  1424.  
  1425.  
  1426. I'm quite out of my depth in this newsgroup but it looks like the best 
  1427. place to ask the question.
  1428.  
  1429. Certain text-editors and word-processors for the Mac behave well with 
  1430. Chinese or a mixture of Chinese and single-byte characters but the majority 
  1431. do not.
  1432.  
  1433. Of the main wordprocessors only Nisus and WordPerfect (nearly) are designed 
  1434. to allow comfortable editing, and yet there are a few tiny and not so tiny 
  1435. text-editors (eg. MiniWriter, Tex-Edit, Joliwrite, Eudora) which behave 
  1436. perfectly and can delete, insert, cut, paste etc. and generally recognize a 
  1437. two-byte character when they see one.
  1438.  
  1439. Is there some standard code that can be incorporated into an application to 
  1440. make a text-editor "WorldScript aware"? (probably not the right 
  1441. terminology.
  1442.  
  1443. It puzzles me that an application like MiniWriter (39K on disk) can cope 
  1444. with mixed inputs whereas Word 5 and MacWrite Pro cannot.
  1445.  
  1446. Any information on this a question would be gratefully received, preferably 
  1447. by email, since as I said, I am not really a worthy denizen of this august 
  1448. newsgroup.
  1449.  
  1450.            John
  1451.  
  1452.  
  1453.  
  1454.  
  1455.  
  1456. --
  1457.  
  1458.  
  1459. +++++++++++++++++++++++++++
  1460.  
  1461. >From wbostow@hounix.org (Wayne Bostow)
  1462. Date: Sat, 19 Mar 1994 21:02:07 GMT
  1463. Organization: Houston UNIX Users Group (HOUNIX), Houston, TX
  1464.  
  1465.  
  1466. >there are a few tiny and not so tiny
  1467. text-editors (eg. MiniWriter, Tex-Edit, Joliwrite, Eudora) which behave
  1468. perfectly and can delete, insert, cut, paste etc. and generally recognize a
  1469.  
  1470. two-byte character when they see one.
  1471.  
  1472.   Can you give some info on these? I never heard that they were two-byte
  1473. compatible.
  1474.  
  1475.   What two-byte process do you use?
  1476.  
  1477. >It puzzles me that an application like MiniWriter (39K on disk) can cope
  1478. with mixed inputs whereas Word 5 and MacWrite Pro cannot.
  1479.  
  1480.   This aspect of processing occurs at a very low level. To take an
  1481. analogy, Suppose you wired a house for 1000 volts. That would become
  1482. increasingly difficult as you had more built-in appliances and larger
  1483. space.
  1484.  
  1485.   Developers who have tried to convert existing apps run into Excedrin+
  1486. headaches. Often the needed code is in a closed module licensed from
  1487. someone who never, or no longer worked in the company. The first 95% of
  1488. conversion might come easily, but how do you deal with command key entries,
  1489. file names, and keyboard input for font names and sizes?
  1490.  
  1491.  
  1492. -- 
  1493. __________________________________________________________
  1494.   Wayne Bostow "The HangulMan"
  1495.    10558 Alcott, Houston, TX 77043    ph. (713)468-6546
  1496.      wbostow@hounix.org
  1497.  
  1498. +++++++++++++++++++++++++++
  1499.  
  1500. >From mlanett@netcom.com (Mark Lanett)
  1501. Date: Sun, 20 Mar 1994 02:11:01 GMT
  1502. Organization: Etch-a-Sketch Analysis and Design
  1503.  
  1504. wbostow@hounix.org (Wayne Bostow) writes:
  1505.  
  1506. >>there are a few tiny and not so tiny
  1507. >text-editors (eg. MiniWriter, Tex-Edit, Joliwrite, Eudora) which behave
  1508. >perfectly and can delete, insert, cut, paste etc. and generally recognize a
  1509. >two-byte character when they see one.
  1510.  
  1511. >  Can you give some info on these? I never heard that they were two-byte
  1512. >compatible.
  1513.  
  1514. Setting a break on TENew and TEStylNew shows that...
  1515.  
  1516. Tex-Edit (112K) uses Styled TE and handles Japanese perfectly.
  1517.  
  1518. UsenEdit (24K) and one of the several thousand TeachText's on my HD
  1519. use mono TE and get escape codes when I type in Japanese.
  1520.  
  1521. BBEdit Lite (168K) doesn't use TE at all and can't (as expected anyway) handle
  1522. Japanese.
  1523.  
  1524. WASTE (a >32K styled text engine, 47K) doesn't use TE or STE but does use the
  1525. script manager and can handle mixed scripts to some degree (not 2-byte).
  1526.  
  1527. >>It puzzles me that an application like MiniWriter (39K on disk) can cope
  1528. >with mixed inputs whereas Word 5 and MacWrite Pro cannot.
  1529.  
  1530. One of the benefits of the Script Manager and TE's use of it. One of the few
  1531. benefits of TE come to think of it, although when WASTE gets finished it'll
  1532. be preferable.
  1533.  
  1534. The WASTE readme intro:
  1535. --
  1536. About WASTE
  1537.  
  1538. This archive contains an alpha version (1.0a2 of March 1994) of the WASTE text engine, currently in the form of a THINK Pascal library (compatible with MPW .o files), and a simple demo application using the engine.  The WASTE text engine is replacement for styled TextEdit which can handle text bigger than 32K.
  1539. A first draft of the documentation (still missing some pieces) is provided in Microsoft Word format.  Send comments and suggestions to the author at the following address:
  1540.  
  1541. Marco Piovanelli
  1542. Mail: 26, via del Sebino Q 25126 Brescia Q Italy
  1543. Internet: piovanel@dsi.unimi.it
  1544.  
  1545. PS: I read my Internet mail only once or twice a week, so don't expect prompt replies.
  1546.  
  1547. -- 
  1548.     Mark Lanett "...a bajillion brilliant Jobsian lithium licks"
  1549.  
  1550. +++++++++++++++++++++++++++
  1551.  
  1552. >From qsi@cnh.wlink.nl (Peter Kocourek)
  1553. Date: Sun, 20 Mar 1994 13:59:44 +0100
  1554. Organization: (none)
  1555.  
  1556. Mark Lanett wrote in a message on 20 Mar 94
  1557.  
  1558. >  Can you give some info on these? I never heard that they were two-byte
  1559. >compatible.
  1560.  
  1561.  ML>  Setting a break on TENew and TEStylNew shows that... 
  1562.  ML> Tex-Edit (112K) uses Styled TE and handles Japanese perfectly. 
  1563.  
  1564. [...]
  1565.  
  1566. Others include Edit7 (320K or so), which handles 2-byte scripts properly, and
  1567. muEdit, which is supposed to handle right-to-left scripts properly (I have not
  1568. tested it extensively yet, but it seems to work). Both are avaivable at your
  1569. favorite Info-Mac mirror site.
  1570.  
  1571.  
  1572. YHS:QSI!
  1573.  
  1574.  
  1575. +++++++++++++++++++++++++++
  1576.  
  1577. >From piovanel@hp4.sm.dsi.unimi.it (Marco Piovanelli)
  1578. Date: 21 Mar 1994 17:07:34 +0100
  1579. Organization: Computer Science Dep. - Milan University
  1580.  
  1581. mlanett@netcom.com (Mark Lanett) writes:
  1582.  
  1583. >WASTE (a >32K styled text engine, 47K) doesn't use TE or STE but does use the
  1584. >script manager and can handle mixed scripts to some degree (not 2-byte).
  1585.                                                              ^^^^^^^^^^
  1586.  
  1587. I beg to differ.
  1588. WASTE does handle double-byte scripts correctly (well, at least it tries...)
  1589. What WASTE doesn't do so far is bidirectional scripts.
  1590.  
  1591.                     -- marco
  1592.  
  1593. --
  1594. You can prove just about anything with statistics -- even the truth.
  1595.  
  1596. +++++++++++++++++++++++++++
  1597.  
  1598. >From Dan Crevier <crevier@husc.harvard.edu>
  1599. Date: 21 Mar 1994 14:52:39 GMT
  1600. Organization: Harvard University
  1601.  
  1602. In article <mlanettCMxy2D.1yu@netcom.com> Mark Lanett, mlanett@netcom.com
  1603. writes:
  1604. >wbostow@hounix.org (Wayne Bostow) writes:
  1605. >
  1606. >>>there are a few tiny and not so tiny
  1607. >>text-editors (eg. MiniWriter, Tex-Edit, Joliwrite, Eudora) which behave
  1608. >>perfectly and can delete, insert, cut, paste etc. and generally
  1609. recognize a
  1610. >>two-byte character when they see one.
  1611. >
  1612. >>  Can you give some info on these? I never heard that they were two-byte
  1613. >>compatible.
  1614. >
  1615. >Setting a break on TENew and TEStylNew shows that...
  1616. >
  1617. >Tex-Edit (112K) uses Styled TE and handles Japanese perfectly.
  1618. >
  1619. >UsenEdit (24K) and one of the several thousand TeachText's on my HD
  1620. >use mono TE and get escape codes when I type in Japanese.
  1621. >
  1622. >BBEdit Lite (168K) doesn't use TE at all and can't (as expected anyway)
  1623. handle
  1624. >Japanese.
  1625. >
  1626. >WASTE (a >32K styled text engine, 47K) doesn't use TE or STE but does
  1627. use the
  1628. >script manager and can handle mixed scripts to some degree (not 2-byte).
  1629. >
  1630.  
  1631.     What do you mean WASTE can't handle 2-byte characters?  It handles them 
  1632. very well, including inline input.
  1633.  
  1634. >>>It puzzles me that an application like MiniWriter (39K on disk) can
  1635. cope
  1636. >>with mixed inputs whereas Word 5 and MacWrite Pro cannot.
  1637. >
  1638. >One of the benefits of the Script Manager and TE's use of it. One of the
  1639. few
  1640. >benefits of TE come to think of it, although when WASTE gets finished
  1641. it'll
  1642. >be preferable.
  1643. >
  1644.  
  1645.     If you use TE, you get two-byte character support automatically, since 
  1646. TE is written to handle two-byte characters.  Something like Word is not 
  1647. as well behaved because they write their own replacement for TE, since TE 
  1648. is slow, and can only handle 32K.  In their replacement, they make 
  1649. assumptions that each character is one-byte, which makes things easier, 
  1650. but of course breaks for two byte systems.
  1651.  
  1652. Dan
  1653.  
  1654. +++++++++++++++++++++++++++
  1655.  
  1656. >From mlanett@netcom.com (Mark Lanett)
  1657. Date: Tue, 22 Mar 1994 00:32:14 GMT
  1658. Organization: Etch-a-Sketch Analysis and Design
  1659.  
  1660. piovanel@hp4.sm.dsi.unimi.it (Marco Piovanelli) writes:
  1661.  
  1662. >mlanett@netcom.com (Mark Lanett) writes:
  1663.  
  1664. >>WASTE (a >32K styled text engine, 47K) doesn't use TE or STE but does use the
  1665. >>script manager and can handle mixed scripts to some degree (not 2-byte).
  1666. >                                                             ^^^^^^^^^^
  1667.  
  1668. >I beg to differ.
  1669. >WASTE does handle double-byte scripts correctly (well, at least it tries...)
  1670.  
  1671. [after a reboot to turn on the JLK]
  1672. Ack. So it does. And I should have remembered from reading the docs...
  1673. I think what confused me was the inline input instead of the floater that the
  1674. JLK TeachText is using. My mistake, poor testing.
  1675.  
  1676. Mark L
  1677. -- 
  1678.     Mark Lanett "...a bajillion brilliant Jobsian lithium licks"
  1679.  
  1680. +++++++++++++++++++++++++++
  1681.  
  1682. >From Steve Bryan <sbryan@maroon.tc.umn.edu>
  1683. Date: Tue, 22 Mar 1994 16:31:46 GMT
  1684. Organization: Sexton Software
  1685.  
  1686. In article <94031901235300102@eremita.demon.co.uk> John Delacour,
  1687. JD@eremita.demon.co.uk writes:
  1688. >Is there some standard code that can be incorporated into an application
  1689. to 
  1690. >make a text-editor "WorldScript aware"? (probably not the right 
  1691. >terminology.
  1692.  
  1693. All you might want to know on this topic and more is covered in the book
  1694. "Inside Macintosh: Text" published by Addison Wesley. Apple supports
  1695. multiple script systems at the system level so you can write a credible
  1696. Kanji version (among others) of your product simply by paying attention
  1697. (and finding someone to translate all the menus, dialogs, etc).
  1698. Steve Bryan                       sbryan@maroon.tc.umn.edu
  1699. Sexton Software                   CompuServe: 76545,527
  1700. Minneapolis, MN                   fax: (612) 929-1799
  1701.  
  1702. +++++++++++++++++++++++++++
  1703.  
  1704. >From paulcho@ionews.io.org (paulcho)
  1705. Date: 26 Mar 1994 11:35:06 -0500
  1706. Organization: Internex Online (io.org) Data: 416-363-4151  Voice: 416-363-8676
  1707.  
  1708.  
  1709. Article: 23166 of comp.sys.mac.programmer
  1710.  
  1711. qsi@cnh.wlink.nl (Peter Kocourek) wrote:
  1712. > Mark Lanett wrote in a message on 20 Mar 94
  1713. > >  Can you give some info on these? I never heard that they were two-byte
  1714. > >compatible.
  1715. >  ML>  Setting a break on TENew and TEStylNew shows that... 
  1716. >  ML> Tex-Edit (112K) uses Styled TE and handles Japanese perfectly. 
  1717. > [...]
  1718. > Others include Edit7 (320K or so), which handles 2-byte scripts properly,
  1719. and
  1720. > muEdit, which is supposed to handle right-to-left scripts properly (I have
  1721. not
  1722. > tested it extensively yet, but it seems to work). Both are avaivable at your
  1723. > favorite Info-Mac mirror site.
  1724. > YHS:QSI!
  1725.  
  1726. Add my TextMovie to the list please! (part of MovieTrilogy available from 
  1727. sumex)
  1728. It use Styled TE and allowed you to use any color. (24bit Color Styled Edit!)
  1729. You can use it as a color text editor, and as a bonus you can save the text as
  1730.  
  1731. QuickTime text track movie! :-) I tested it in Chinese and worked ok. With the
  1732. rest of MovieTrilogy, now you can add English subtitle to Japanese anime or 
  1733. add Chinese subtitle to English movie etc...
  1734.  
  1735. ________________________________________________________________
  1736. Paul C.H. Ho   paulcho@io.org         Pink Elephant Technologies
  1737. Paul_C.H._Ho@magic-bbs.corp.apple.com   74020.772@compuserve.com
  1738.  
  1739.  
  1740.  
  1741.  
  1742. ---------------------------
  1743.  
  1744. End of C.S.M.P. Digest
  1745. **********************
  1746.  
  1747.  
  1748.