home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 2 / Apprentice-Release2.iso / Source Code / C / Utilities / DVIM72-Mac 1.9.6 / source / 1 change history.c next >
Encoding:
C/C++ Source or Header  |  1992-09-14  |  16.5 KB  |  580 lines  |  [TEXT/R*ch]

  1. #if justacomment
  2.  
  3. ** Change History of DVIM72-Mac ** (reverse chronological order)
  4.  
  5. 1.9.6
  6. -----
  7.  
  8. Installed Show_help 2.1, for proper handling of suspend/resume.
  9.  
  10. Changed number of folder button in get-folder dialog, to work around
  11. a Directory Assistance II bug.
  12.  
  13. Recompiled with THINK C 5.0.3.
  14.  
  15.  
  16. 1.9.5
  17. -----
  18.  
  19. Installed Show_help 1.8 (or was it 2.0?) with movable modal dialog.
  20.  
  21. Fixed bug in Get_keyword that caused it to bomb if a \special had more
  22. than 50 characters before an =.
  23.  
  24.  
  25. 1.9.4
  26. -----
  27.  
  28. The previous version bombed on a Plus.  The 'Cstr' resource named
  29. CONSOLE_LOG_FILE was marked purgeable.
  30.  
  31.  
  32. 1.9.3
  33. -----
  34.  
  35. Changed help text to explain that DVIM72-Mac does not crop pictures
  36. the way OzTeX does.
  37.  
  38.  
  39. 1.9.2
  40. -----
  41.  
  42. Added note about bigbird ftp site to the manual.
  43.  
  44. In setupbeachball(), used MoveHHi for CURS resources.
  45.  
  46. Changes to mac-specific and TextDisplay to alter the updating and
  47. resizing behavior of the console window.  Previously, increasing the
  48. window size left an extra image of the grow icon.
  49.  
  50. Changed SPECIAL.c so that the bottom left, rather than the top left, of
  51. a picture is placed at the location of \special, for compatibility with
  52. OzTeX.  Also allow scaling keywords.  The Parse_special.c file was added
  53. to help with this.
  54.  
  55. Updated Show_help to 1.6, to fix highlighting bug in Japan.  Changed to
  56. use of standalone SHow_help CUST resource.
  57.  
  58.  
  59. 1.9.1
  60. -----
  61.  
  62. Added error message after AddResource in Find_prefs.
  63.  
  64. Recompiled with TC 5.0.2.
  65.  
  66. Added Show_help 1.5 with compression.
  67.  
  68. Moved HiliteMenu to end of Handle_menu_choice to improve behavior of
  69. the keyboard menu.
  70.  
  71. Modified the beachball routines to use an 'acur' resource.
  72.  
  73. Defined g_DragRect using the gray region rather than the screen rectangle.
  74.  
  75.  
  76. 1.9
  77. ---
  78.  
  79. In PICT \specials, open the PICT with read-only permission.
  80.  
  81.  
  82. 1.9b16
  83. ------
  84.  
  85. Yet another change to Copy_banded():  I was assuming that if you CopyBits
  86. with a source rectangle that extends outside the source bitmap, then
  87. some sort of clipping would take care of it, but maybe not.  Maybe you
  88. could get an address error that way.
  89.  
  90.  
  91. 1.9b15
  92. ------
  93.  
  94. Reserve some temporary memory.
  95.  
  96. Introduced g_print_status global variable, so that we will be able to
  97. do the right set of close operations in case of an error.
  98.  
  99. Started replacing some fatal() calls with Kill_dvi() calls.
  100.  
  101. Changed the manual to Geneva 9, since minimal systems may not have Geneva 10.
  102.  
  103. In Explain_print_error(), assume the spool file is on the startup volume.
  104.  
  105. Made Stack_space an inline function.
  106.  
  107. Added font and printer resolution to magnification log entry.
  108.  
  109. Reset basemag and runmag in dviinit.
  110.  
  111. In Copy_banded(), set dest_strip_depth from the iBandV number in the
  112. print record, rather than using a constant 32.  I hope this will fix a
  113. problem with the LS when banding is on.
  114.  
  115.  
  116. 1.9b14
  117. ------
  118.  
  119. Recompiled with optimizations under ThC 5.0.1.
  120.  
  121. Added InitCursor on error after Open_printer().
  122.  
  123. Added Stack_space(), to replace Apple's StackSpace trap.  Apparently it
  124. was returning nonsense on 68000 machines.
  125.  
  126.  
  127. 1.9b13
  128. ------
  129.  
  130. Added PicComment after \special handing in prtpage(), because I saw a case
  131. in which a PICT undid my PicComment.  (ImageWriter-specific.)
  132.  
  133. Introduced "banding" setting, needed when printing on an ImageWriter, with
  134. offscreen printing and high font resolution.
  135.  
  136. Added InitCursor() to Close_printer(), due to a report that cancelling very
  137. quickly could leave the beachball cursor in place.
  138.  
  139.  
  140. 1.9b12
  141. ------
  142.  
  143. Introduced 'LONG' resource "\pheap reserve" to keep more space on the
  144. app heap.
  145.  
  146. Replaced 72dpi radio button by 360dpi radio button.
  147.  
  148. Added InitCursor() call in Select_folder().  Under 6.0.7, the watch cursor
  149. was staying around after the SF dialog went away.
  150.  
  151.  
  152. 1.9b11
  153. ------
  154.  
  155. Change to user interface for selecting the font folder, using the file
  156. Select_folder.c.
  157.  
  158. Make help key bring up online manual.
  159.  
  160. Added balloon help to the Other Commands box in the print job dialog,
  161. using the Append2hdlg routine.
  162.  
  163. Call Close_printer() from Handle_print if aborted before dvifile, as in
  164. a nonsense command in "other commands".  Slight change to Close_printer()
  165. to look at g_abort_dvi instead of PrError.
  166.  
  167. Turned off all optimizations for now.
  168.  
  169.  
  170. 1.9b10
  171. ------
  172.  
  173. Fixed a bug in sillynewpool(), where I used sizeof(pool), where pool is
  174. a *pointer* to a sillypool, instead of sizeof(sillypool).
  175.  
  176. Changed dialog filter to use Cancel_key and look for return and enter
  177. by character code rather than key code.
  178.  
  179.  
  180. 1.9b9
  181. -----
  182.  
  183. No code changes, just changed SIZE resource and included command-P as an
  184. equivalent for the Print menu item.
  185.  
  186.  
  187. 1.9b8
  188. -----
  189.  
  190. Drag grow icon in console window.
  191.  
  192. Added InitCursor() on resume event.
  193.  
  194. Handle command-period per TN 263, "International Cancelling".
  195.  
  196. Fixed bug in growsillypool().
  197.  
  198.  
  199. 1.9b7
  200. -----
  201.  
  202. Increased MAXPAGE from 200 to 999.
  203.  
  204. Optimizations turned off pending patches.
  205.  
  206.  
  207. 1.9b6
  208. -----
  209.  
  210. Call Set_pic_procs() only when we are not drawing offscreen.
  211.  
  212. Changed Set_pic_procs() to use MALLOC instead of NewPtr().
  213.  
  214. Increased the extra stack space, and made it a parameter stored in
  215. a resource.  Motivated by a type 28 error report.
  216.  
  217. Inserted StackSpace() check in Printer_idle().
  218.  
  219. Changed resource type of print record from PREC to Prec, per Q & A Stack.
  220.  
  221. Turned on a couple of optimizations.
  222.  
  223.  
  224. 1.9b5
  225. -----
  226.  
  227. Sillymalloc had been testing the wrong bit for real temp memory.
  228.  
  229. Took out         DebugStr("\pNewPtr for print");
  230. from Set_pic_procs();
  231.  
  232.  
  233. 1.9b4
  234. -----
  235.  
  236. Refined the dvi filter.
  237.  
  238. Rebuilt with THINK C 5.0.
  239.  
  240. Change popup font name format menu to pop-down.
  241.  
  242.  
  243. 1.9b3
  244. -----
  245.  
  246. Added some balloon help.
  247.  
  248. Moved Maximize_resolution() to before the job dialog, which I hear
  249. may be more device-independent.  Also introduced Reset_resolution().
  250.  
  251. Call Update_memory_indicators() on resume event.
  252.  
  253. Call Init_print_rec() in Do_page_setup().  Previously, if you tried a
  254. page setup before printing, you crashed because g_print_rec_h was nil.
  255.  
  256. Replaced some Show_error(), alldone() pairs by fatal() in mac_specific
  257. and Find_prefs.
  258.  
  259. Added Edit menu.  It works in the Settings dialog under system 7
  260. automagically.
  261.  
  262.  
  263. 1.9b2
  264. -----
  265.  
  266. Fixed bug wherein the online manual did not work under System 6.
  267.  
  268.  
  269. 1.9b1
  270. -----
  271.  
  272. Changed memory management, with sillymalloc, to take advantage of
  273. temporary memory.
  274.  
  275. Switched order of dviterm() and Close_printer() so as to free font memory
  276. as soon as possible.
  277.  
  278. Use QuickDraw to manipulate the bitmap in fillrect() and dispchar().
  279.  
  280. Use a separate preferences file.
  281.  
  282. Removed the page image bitmap.
  283.  
  284. Allow colon in PICT \special syntax, e.g.
  285. \special{pict: drive:folder:filename}
  286.  
  287. Allow cancelling with escape as well as command period.
  288.  
  289. Changed interface, with many settings removed.
  290.  
  291. Online manual added.
  292.  
  293.  
  294. v. 1.8.4
  295. --------
  296.  
  297. Added an FREF for type ODVI, and mstr resources specifying
  298. the “Print…” menu item as equivalent to Open.  Now with
  299. Super Boomerang, dvi files can appear in a Direct Open menu.
  300.  
  301. Removed the     DisposPtr( nameformat );  statement from the
  302. fontfile() routine.  Since nameformat was a master pointer
  303. to a resource, this was not a good thing to do.
  304.  
  305.  
  306. v. 1.8.3
  307. --------
  308.  
  309. Added an option in the “Memory Options...” dialog to change
  310. the MultiFinder partition size.
  311.  
  312. Explicitly closed the console log file.  The file was not getting closed under
  313. Finder, but was getting closed under MultiFinder.  Thus only those
  314. unfortunates who were not running MultiFinder had a problem with this.
  315.  
  316. Merged the code of abortrun() into alldone() and removed the g_errenc global.
  317.  
  318.  
  319. v. 1.8.2
  320. ------
  321.  
  322. The SFGetFolder DLOG and DITL resources are now unpurgeable.
  323. This is just a guess as to what might have caused a crash
  324. when attempting to reset the font folder.
  325.  
  326. The version number in the About box is now read from the
  327. ‘vers’ resource, so I only have to change the version number
  328. in one place.
  329.  
  330. Added some EventAvail calls at startup so we would be in the
  331. foreground before the windows appear.
  332.  
  333.  
  334. v. 1.8.1
  335. ------
  336.  
  337. Fixed a bug in the custom WDEF (window definition).  The
  338. only effect of this bug that I know of is that it sometimes
  339. caused the upper corners of the screen to be gray instead of
  340. the usual black.
  341.  
  342.  
  343. v. 1.8
  344. -----
  345.  
  346. Added more event-handling during printing.  For instance it
  347. is now possible to bring the page-preview window to the
  348. front during printing.  It is also now possible for printing
  349. to continue while in the background under MultiFinder.
  350.  
  351. When using spooled printing, the dialog now says “Now
  352. Spooling” while spooling, and “Now Printing” when printing,
  353. instead of saying “Now Printing” during the whole process.
  354.  
  355. It is now possible to change printer resolution (but not
  356. font resolution) without restarting the program.
  357.  
  358.  
  359. v. 1.7.1
  360. ------
  361.  
  362. Fixed a bug introduced in 1.7 that prevented one from changing resolution.
  363.  
  364.  
  365. v. 1.7
  366. ------
  367.  
  368. Added a FlushVol after anything is written to the console, to make sure
  369. the log file will be up to date in the event of a crash.
  370.  
  371. Removed the .dvi-err log files, since they duplicated information in the
  372. console log file.
  373.  
  374. In the Configure->Printing Options dialog, I added “Use Driver Defaults”
  375. radio controls for paper feed and printing method.  This is for greater
  376. compatibility with non-ImageWriter printers.  The WriteMove printer, in
  377. particular, uses a paper feed setting other than hand or fanfold.
  378.  
  379. Freed some memory at the beginning of the fatal() routine, to make it
  380. more likely that an out-of-memory error will lead to a peaceful exit
  381. rather than a crash.
  382.  
  383.  
  384. v. 1.6
  385. -----
  386.  
  387. Previously, if you tried to print when the console window was frontmost,
  388. the application hung.  I have fixed that by re-implementing the console
  389. with my own routines rather than the THINK C console library routines.
  390.  
  391.  
  392. v. 1.5
  393. -----
  394.  
  395. I split the Configure dialog into 4 dialogs, invoked from a new
  396. Configure menu.  The main reason was to make room for specifying
  397. font resolution and printer resolution separately.
  398.  
  399. PICT file \specials are now allowed.  The picture is scaled so that it
  400. will be the same size as on the screen, independent of printer resolution.
  401.  
  402. The dialogs now support cutting and pasting, and allow the Cancel
  403. button to be invoked with command-period, escape, or tilde.
  404.  
  405. When the driver puts band data into the print record, DVIM72-Mac uses
  406. the band size for printing.  For instance on the ImageWriter, it prints
  407. 32 rows of dots at a time.  Previously, 32 was used as a default for
  408. printers that put 0 in the band size parameter.  Now the value 3600
  409. is used, meaning that the whole page should be printed at once.
  410.  
  411.  
  412. v. 1.4
  413. -----
  414.  
  415. Improved the performance of cancelling printing with command-period.
  416.  
  417. You can now keep an eye on free memory with an optional window.  There
  418. is a new check box in the Configure dialog that selects this option.
  419.  
  420. There is also a new option to use the system heap for font memory when
  421. the application heap runs low. 
  422.  
  423.  
  424. v. 1.3
  425. -----
  426.  
  427. A bug in handling of multiple copies has been fixed.
  428.  
  429. In spooled mode, the Draft radio control in the print job dialog is now
  430. disabled.   At 72dpi, Best is also disabled.  This change involves
  431. looking for radio controls named "Best", "Faster", and "Draft", so it
  432. will not work for foreign-language systems.  However, you can fix this
  433. by using ResEdit to change the values of the 'STR ' resources numbered
  434. 700, 701, 702 to the local equivalents of "Best", "Faster", and "Draft".
  435. (It's a good thing I'm not trying to *sell* this software, or I'd never
  436. get away with stuff like that.)
  437.  
  438. Certain printing errors now bring up an explanatory alert instead of just
  439. an error code.
  440.  
  441.  
  442. v. 1.2
  443. -----
  444.  
  445. The previous version had a call to Color Quickdraw, which caused a bomb
  446. on machines that did not have Color QuickDraw.  That has been corrected.
  447.  
  448. There was also a minor change in the way SF dialogs are centered on the
  449. screen.
  450.  
  451.  
  452. v. 1.1
  453. -----
  454.  
  455. The past few versions had a bug which, when used with some
  456. *non-ImageWriter* drivers, caused the program to go into an infinite
  457. loop.  In detail: DVIM72-Mac prints the image in strips, and used a
  458. certain parameter in the print record to determine the depth of the
  459. strip.  But for some drivers (such as MacPrint for the DeskJet) that
  460. parameter is zero.  Now I check for that condition.
  461.  
  462. I also fixed a bug that caused an incorrect position to be recorded for
  463. the page window if it were never shown (i.e., if you ran the program,
  464. changed your mind, and quit without printing anything.)
  465.  
  466. I have rearranged some of the printing code, and added a "Page Setup…"
  467. menu item.  These changes will probably be irrelevant to ImageWriter
  468. users, but may help those with other printers.
  469.  
  470.  
  471. v. 1.0
  472. -----
  473.  
  474. Does the version 1.0 mean that the program is in a final, stable form?
  475. Of course not.  I just ran out of numbers smaller than 1.0.
  476.  
  477. I now use a standard printing job dialog (whose appearance depends upon
  478. the printer selected in the Chooser) rather than my own dialog.  This
  479. is intended to enhance device-independence.  I have eliminated the
  480. start-up check that an ImageWriter has been selected, since the job
  481. dialog will show you which driver is in effect.
  482.  
  483. The Configure… dialog no longer has a "Skip print dialog" check box.
  484. Instead, I have added a "Just Print…" menu item.
  485.  
  486. There is now a beachball cursor instead of a watch cursor, which rolls
  487. when a page is being computed.  There are some times when the Printing
  488. Manager has control and I haven't been able to get the beachball to roll,
  489. however.
  490.  
  491. The positions and sizes of the windows are remembered when you quit.
  492. The next time you start, they are restored, so long as they are
  493. entirely on the screen.
  494.  
  495. v. 0.9b9
  496. -------
  497.  
  498. The one-dot kludge for draft-mode printing introduced in the previous
  499. version has been replaced by a technique of printing the bitmap in strips.  I have also introduced an option for spooled printing.  Although spooled printing is probably less efficient for an ImageWriter, it is probably more device-independent.  Therefore, if you're trying to use DVIM72-Mac for a printer other than an ImageWriter, try spooled mode first.  As another attempt to help those with weird printers and drivers, I added an "Other" resolution option.  I rearranged the Configure dialog to fit these new items in.
  500.  
  501. There was another minor change for A/UX compatibility.
  502. Also simplified the code for the font path.  No big deal.
  503.  
  504. v. 0.9b8
  505. -------
  506.  
  507. There is a bug in draft-mode bitmap printing, apparently in the
  508. ImageWriter driver or the Printing Manager, which makes printing
  509. fail at 144dpi if the top .8 inches or so of the image is blank.
  510. The printer prints  a digit, does a line feed, and stops.   This
  511. can also occur at 72dpi if the page is completely blank.  The "fix"
  512. in this version is to put one dot at position (0,0) in the bitmap.
  513.  
  514. While trying to diagnose the problem above, I put in a window which
  515. displays the bitmap just before it gets sent to the printer.  I decided
  516. it was kind of cute and left it in.  What do you think?  By the way,
  517. both this new page preview window and the console window are movable
  518. and resizable, even though they don't have grow boxes.
  519.  
  520. I also changed the memory management, replacing malloc() calls by
  521. NewPtr() calls.
  522.  
  523. v. 0.9b7
  524. -------
  525.  
  526. Fixed a bug that made the font folder button fail if the folder was
  527. not on the startup disk.  Also fixed an event-handling bug that
  528. affected DAs not running under DA handler.
  529.  
  530. v. 0.9b6
  531. -------
  532.  
  533. Mostly minor changes to the user interface.  The most significant thing
  534. is that the Configure dialog now has a popup menu that selects the
  535. formats by which to search for fonts.  For instance, if all of your
  536. fonts are in one folder, with magnification indicated in the file
  537. extension as in "cmr8.72pk", then it is enough to check just the
  538. "cmr8.72pk" item.  The other items assume that your fonts are arranged
  539. in subfolders according to magnification.  The last three have the
  540. subfolder name separated from the font name by a slash rather than a
  541. colon; these are intended only for A/UX.  
  542. (Does DVIM72-Mac run under A/UX?  Beats me.  Try it and let me know.)
  543.  
  544. v. 0.9b5
  545. -------
  546.  
  547. Now instead of filling in the Configure dialog's font folder path by
  548. hand, you click a button which brings up a Standard File dialog.
  549.  
  550. v. 0.9b4
  551. -------
  552.  
  553. Fixed a bug that caused printing to be much slower than necessary.
  554. Also, the page image bitmap is now part of an offscreen GrafPort; this
  555. has little or no effect on present performance, but will make it easier
  556. to add \specials in the future.
  557.  
  558. v. 0.9b3:
  559. -------
  560.  
  561. A 300dpi option has been added.  I have not tested this myself, for lack
  562. of an appropriate printer.  If you try this, you should jack up the
  563. application's MultiFinder partition to a megabyte or so.
  564.  
  565. More error checking has been introduced.
  566.  
  567. v. 0.9b2:
  568. -------
  569.  
  570. The notes accompanying version 0.9b claimed that you needed to put
  571. linefeeds in the texfonts.sub file.  That was incorrect.
  572.  
  573. A fatal error now puts up an alert box, so you at least get to read the
  574. error message before the program quits.
  575.  
  576. At program start, the program checks to make sure that you have selected
  577. the ImageWriter resource in the Chooser, and warns you if not.
  578.  
  579. #endif
  580.