Fixed bug #520525 - Clear display sets display to empty not "Ans"
[gcalctool.git] / ChangeLog-1991
blob52fdcbb4d36ec9f502332d95d2ae24a0f761fad5
1 /*  $Header: /cvs/gnome/gcalctool/ChangeLog-1991,v 1.4 2006/01/09 16:30:20 richb Exp $
2  *
3  *  Copyright (c) 1987-2008 Sun Microsystems, Inc.
4  *  All Rights Reserved.
5  */
7 gcalctool change history - 1991.
8 ================================
10 v3.2 - patchlevel 24. 31st December 1991.
12 * Calctool ignored the -fg and -bg color command line options when
13   painting the calctool canvases. Calctool has lots of X resources
14   to allow you to set the color of different items. If -fg and/or
15   -bg is present, they now override these X resources as follows:
17   deskset.calctool.decDigitColor:        not changed
18   deskset.calctool.hexDigitColor:        not changed
19   deskset.calctool.arithOpColor:         not changed
20   deskset.calctool.adjustColor:          not changed
21   deskset.calctool.portionColor:         not changed
22   deskset.calctool.functionColor:        not changed
23   deskset.calctool.mainModeColor:        not changed
24   deskset.calctool.portionLogicalColor:  not changed
25   deskset.calctool.bitLogicalColor:      not changed
26   deskset.calctool.finColor:             not changed
27   deskset.calctool.trigModeColor:        not changed
28   deskset.calctool.trigColor:            not changed
29   deskset.calctool.sciColor:             not changed
30   deskset.calctool.backgroundColor:      background color
31   deskset.calctool.displayColor:         background color
32   deskset.calctool.memRegisterColor:     background color
33   deskset.calctool.textColor:            foreground color
35   The -reverse command line option switches the foreground and
36   background colors. Fixes bug #1077714.
38 ----
40 v3.2 - patchlevel 23. 31st December 1991.
42 * Calctool didn't allow the user to set an alternative calctool icon
43   image via the -icon_image command line option. Calctool checks if
44   the image filename given exists and is readable. If it isn't, then
45   it displays an error message and the generic XView usage message
46   and exits. If the file does exist, but isn't an icon file, then
47   XView silently ignores it. Perhaps a bug should be opened against
48   xview/library, to generate an error message for such a case. Fixes
49   bug #1077709.
51 ----
53 v3.2 - patchlevel 22. 30th December 1991.
55 * Calctool tries to localise the command line text strings. This is
56   incorrect. Created a new routine called init_cmdline_opts(),
57   which initialises the command line options (instead of in init_text(),
58   and gets called before init_Xvars(). The search for -name is also
59   done before init_Xvars(), because the xv_init() call strips it out.
60   write_cmdline() was also writing out the -name command line option
61   (if present) for a "Save Workspace". As this is now a generic XView
62   tool command line argument, this is no longer needed.  Fixes bug
63   #1077907.
65 ----
67 v3.2 - patchlevel 21. 27th December 1991.
69 * Calctool didn't allow you to set the icon label with the
70   -icon_label command line option. Fixes bug #1077710.
72 ----
74 v3.2 - patchlevel 20. 27th December 1991.
76 * Incorrect parameters to the -size command line argument
77   (ie. -size fubar) caused the tool to hang whilst trying to parse
78   it's command line arguments. In fact, any command line argument
79   that didn't start with - or + would cause it to hang.
81   An XView error procedure has been added to calctool. This is
82   called whenever there is an XView error. Invalid command line
83   arguments that cause XView errors will cause this routine to be
84   called. An attempt is made to try to determine if this is the case
85   (as opposed to an XView error at a later stage in the game). In the
86   former case, the error message is printed out, followed by the
87   XView usage message (equivalent of -help), then the program exits.
88   If calctool has already started (v->started = 1), then if the
89   error procedure is called, then calctool will print the error
90   message and try to resume, and hope the error is recoverable.
91   Fixes bug 1077706.
93 ----
95 v3.2 - patchlevel 19. 27th December 1991.
97 * Calctool didn't handle the command line option -size correctly if
98   one of the two size parameters was too small. It automatically
99   reset to the smallest size for both width and height. Calctool has
100   now been changed to one adjust the single dimension that was too
101   small. Fixes bug #1077705.
103 ----
105 v3.2 - patchlevel 18. 24th December 1991.
107 * Problems with the -title option. If you specified -title '' then
108   calctool wasn't displaying a blank titleline. Note that the XView
109   defaults_get_string() call strips off leading and trailing spaces.
110   Under SVR4, specifying a titleline, caused a core dump. This was
111   due to tool_label not being initially set to NULL in make_frames().
112   Fixes bug #1077708.
114 ----
116 v3.2 - patchlevel 17. 24th December 1991.
118 * calctool ignores -font <fontname> on the command line. To be more
119   correct, this font is only used in the XView panel popups such as
120   the property sheet, the constant and function windows and the Asc
121   window. Calctool can use upto four different fonts; these can be
122   set via X resources, and are:
124   deskset.calctool.buttonFont:         button labels.
125   deskset.calctool.modeFont:           mode line labels.
126   deskset.calctool.memoryFont:         memory window popup text.
127   deskset.calctool.displayFont:        display line font.
129   It is assumed that specifying a font using either the -font or -fn
130   command line option will override *all* of these. In other words,
131   this means that all text will be drawn in that font. Not a perfect
132   solution. Fixes bug #1077704.
134 ----
136 v3.2 - patchlevel 16. 24th December 1991.
138 * If the user is displaying in fixed point mode, and the number is
139   smaller then the current degree of accuracy, then the number is
140   displayed to the number of numeric places specified, and not
141   converted to scientific notation. Fixes bug #1077703.
143 ----
145 v3.2 - patchlevel 15. 23rd December 1991.
147 * The memory register popup window was being incorrectly repainted.
148   The width value for the amount of background to be colored was
149   incorrect. Particularily noticable with colored background and
150   non-standard fonts. Fixes bug #1077541.
152 ----
154 v3.2 - patchlevel 14. 23rd December 1991.
156 * Converting 0.00 (decimal) to binary resulted in 0.10. The problem
157   here was the MPstr_to_num() routine in display.c was assuming the
158   string to be converted was always in the current base. Added an
159   extra parameter to the MPstr_to_num() call; the base to use to do
160   the conversion.  Fixes #1077537.
162 ----
164 v3.2 - patchlevel 13. 23rd December 1991.
166 * The result of the online help example for the financial Pmt
167   calculation was incorrect. It should have been 1142.06 (to two
168   decimal places), and not 1142.29. All financial online help
169   example results are now given correct to 2DP. This involved
170   adjustments to Ctrm, Fv, Pv, Sln, Syd and Term. Fixes bugs
171   #1077534 and #1077718.
173 ----
175 v3.2 - patchlevel 12. 23rd December 1991.
177 * Added in help attributes for each of the items on the Asc, Constant
178   and Function popups. The following new entries were added to the
179   calctool.info file:
181   AscButton:
182   AscFrame:
183   AscPanel:
184   AscText:
185   ConFunConButton:
186   ConFunDescription:
187   ConFunFunButton:
188   ConFunFrame:
189   ConFunNumber:
190   ConFunPanel:
191   ConFunValue:
193   Fixes bug #1077528.
195 ----
197 v3.2 - patchlevel 11. 23rd December 1991.
199 * Fixed up the help entries in the calctool.info file for the Con and
200   Fun menus. They needed a trailing space, ie: "Con " and "Fun ".
201   Added in XV_HELP_DATA attributes for all the other calctool menus:
202   Acc, Base, Disp, Exch, Mode, Properties, Rcl, Sto, Trig, < and >.
203   Added an entry for the properties menu (:Props) to the calctool.info
204   file. Fixes bugs #1077525 and #1077526.
206 ----
208 v3.2 - patchlevel 10. 23rd December 1991.
210 * Calctool man pages didn't mention the -? and -name options.
211   Noted with the -? entry that this needs to be escaped when used
212   with the csh, ie. -\?
214   Adjusted the order of the entries in the usage message to match
215   the manual pages.
217   Moved the code in calctool that looked for "-name", before the
218   call to xv_init(XV_INIT_ARGC_PTR_ARGV, argc, argv, ... which
219   removes it from the program command line.  Fixes bug #1077524.
221 ----
223 v3.2 - patchlevel 9. 11th December 1991.
225 * Ifdef'ed XmbDrawString for painting multibyte characters on canvas.
226   Routine changed is draw_text() in xview.c. Fixes bugid #1076798.
228   Relative positioning for the "Apply", "Set Default", and "Reset" 
229   buttons on the property sheet.
231 ----
233 v3.2 - patchlevel 8. 22nd November 1991.
235 * If you pressed the middle mouse button when holding the right
236   mouse button down, when the cursor was positioned in the display
237   portion of the main calctool window, then you got the following
238   message:
240   XView warning: Notifier error: Too many interposition functions
242   Fixes bugid #1075270.
244 ----
246 v3.2 - patchlevel 7. 20th November 1991.
248 * Calctool would not allow you to enter "big" numbers like:
249   336341050452.2  The previous version of calctool represented
250   numbers internally in doubles, and checked against a certain
251   number of digits (depending upon the current radix). After a
252   certain number, internally accuracy would be lost. With v3.2
253   of calctool, internal accuracy is represented with "infinite"
254   precision, and this test can be removed. Fixes bugid #1075198.
256 ----
258 v3.2 - patchlevel 6. 5th November 1991.
260 * Changed the MP routines pow_di and pow_ri to mppow_di and mppow_ri,
261   to get calctool to compile under jup_alpha5.
263 ----
265 v3.2 - patchlevel 5. 1st November 1991.
267 * Overflow and underflow could still lock up calctool. Stricter tests
268   have been added to make_number() and do_factorial. There might be
269   other places where this is needed. Fixes bug #1073459.  Roll on V4!
271 ----
273 v3.2 - patchlevel 4. 4th September 1991.
275 * To try and remain consistent with the look&feel of the V3 calctool
276   (even though calctool now has "infinite" precision internal
277   arithmetic), the MP result of each calculation is converted into a
278   double before it is displayed. If the number is larger (or smaller)
279   then what can be correctly placed in a double, than an error is
280   generated. What was happening was that the "Error" string displayed
281   in the calculator display was getting overwritten by the converted
282   MP value. It's now been adjusted to not overwrite, if the error
283   indicator is set. All this can be adjusted for V4.
285 ----
287 v3.2 - patchlevel 3. 28th August 1991.
289 * Changed the definition of abs() in calctool.h to C_abs(), and
290   adjusted the code accordingly. This should allow calctool to now
291   correctly compile under SVR4 jup_alpha3.
293 ----
295 v3.2 - patchlevel 2. 19th August 1991.
297 * Fixed up the calculation of base 10 logarithms. It no longer relies
298   on an imprecise constant.
300 ----
302 v3.2 - patchlevel 1. 19th August 1991.
304 * Added in "infinite" precision, using the Richard Brent MP routines.
305   These were originally written in FORTRAN but have been converted to
306   C (using f2c), and tidied up, placing the resulting routines in the
307   new mp.c. Results now displayed are exact, to the given degree of
308   accuracy. Fixes bug #1039759.
310 * When you Clr the display now, it display zero in the appropriate
311   representation; fixed, scientific or engineering.
313 ----
315 v3.2 - patchlevel 0. 31st July 1991.
317 * Incremented version number. Reset patchlevel.
319 * Modified the factorial function. A factorial of 0 now returns 1.
320   Trying to do a factorial on a negative or non-integer number now
321   results in an error. The calctool man pages have been modified to
322   mention that that the factorial function is only valid for positive
323   integers. Fixes bug #1065280.
325 * When memory was being allocated for the v data object, it was not
326   being cleared, resulting in certain values being used before they
327   were set.
329 * When entering numbers with the mouse, calctool incorrectly displayed
330   and handled the left parenthesis. Fixes bug #1065388.
332 * The sequence ((1+1)) was resulting in 1 instead of 2. Fixes bugs
333   #1065697 and #1065571.
335 * If calctool is being run in click-to-type mode, and input focus is
336   on the mode popup, it was not possible to currently change modes
337   using the menu on the Mode button in the main calctool window.
338   Fixes bug #1065698.
340 ----
342 v3.1 - patchlevel 50. 23rd July 1991.
344 * Calctool did not correctly set minimum size frame hints. This is
345   the same problem as bugid 1065155 (reported against perfmeter and clock).
347 ----
349 v3.1 - patchlevel 49. 19th July 1991.
351 * Fixed a bug where it was possible to leave a calctool button
352   inverted if dragging the left mouse button from the calctool
353   button area, into the display area.
355 * The -name option is only written to the saved command line if the
356   user specified it on the command line initially.
358 * Added in support for a titleline for calctool, through the standard
359   -Wl, -title or -label options.
361 * Modified the command line option parsing in get_options(). Instead of
362   parsing the command line options, looking for options where the user
363   might have set the calctool size, init_Xvars() now strips out the
364   XView/X specific command line arguments, and calctool checks on user
365   size and scale with calls to defaults_exists(). This means that
366   xv_parse_one() is no longer needed; the original reason for doing all
367   this.
369 * Handling on the calctool button labels has been adjusted to try
370   to allow for longer strings which would probably be needed for
371   the international versions. The hooks are all in there, but the
372   I18N equivalent code needs to be rewritten, then bugid 1062858 can
373   be closed. Here are some notes taken from one of the comments in
374   text.c:
376   Some notes for translators:
378   Text in the label strings below, should be left justified. It will
379   automatically be centre justified in the buttons, but various
380   calculations depend on the text starting on the left.
382   The original English V3 version was written with fixed (upto) four
383   character button labels. I've tried to extend this to allow any sized
384   labels, however the following conditions apply:
386   - If the label won't fit in the button, then as much as possible will
387     be shown, with the last character being '>'. If you enlarge the
388     calculator, probably more of the label will show.
390   - If the last character of the label is a '.', and this is not the
391     first character of the label (ie, the numeric point label), then
392     calctool knows that this signifies that this label should have two
393     more '.' characters appended to it (ie, "Mem." becomes "Mem...").
395   - If a calctool button has a menu item glyph associated with it, the
396     width of this glyph is taken into consideration, and the amount of
397     the label that can be displayed is adjusted accordingly.
399 ----
401 v3.1 - patchlevel 48. 18th July 1991.
403 * Replaced the WIN_CMD_LINE call with the new ICCCM compliant
404   FRAME_WM_COMMAND_ARGC_ARGV stuff, rewriting write_cmdline
405   appropriately.
407 ----
409 v3.1 - patchlevel 47. 11th July 1991.
411 * The -geometry and -Ws width and height values were not being
412   correctly used. Thus it was not always possible for the user
413   to set a preferred initial size.
415 ----
417 v3.1 - patchlevel 46. 11th July 1991.
419 * The window manager does not read the NormalHints property until the
420   frame comes out of it's withdrawn state. So minimal size hints are
421   now set when we've had the first valid canvas repaint. Bugid 1064024
422   can be closed.
424 ----
426 v3.1 - patchlevel 45. 4th July 1991.
428 * Added ICON_TRANSPARENT, TRUE, to the calctool icon creation, to
429   correctly generate a transparent icon.
431 ----
433 v3.1 - patchlevel 44. 1st July 1991.
435 * Adjusted one of the examples in the calctool.info file:
437   2 * ( 3 + 4 ) = 24
439   should really be
441   2 * ( 3 + 4 ) = 14
443 ----
445 v3.1 - patchlevel 43. 24th June 1991.
447 * Adjusted the font names used by calctool from:
449   lucidasanstypewriter-10   format
451   to
453   -b&h-lucidatypewriter-medium-r-*-*-*-100-*-*-*-*-iso8859-1  format.
455 * Added in the ability to select a portion of the calctool display,
456   by using the left mouse button (to select), and the middle mouse
457   button (to adjust). This can then be used in a Copy/Paste operation.
458   Selection/adjustment via dragging is permitted, and double-clicking
459   inside the display area will hilite the full display value.
461   Bugid 1055425 can be closed.
463 ----
465 v3.1 - patchlevel 42. 13th June 1991.
467 * The calctool "buttons" are now highlighted, when the equivalent
468   keyboard input is pressed. Rfe 1062016 can be closed.
470 ----
472 v3.1 - patchlevel 41. 12th June 1991.
474 * The Cut (L10) key is now synonymous with the Copy (L6) key. This
475   will make the calctool display value the current primary selection.
476   This problem comes from bugid 1055425.
478 * Using keyboard input, it was possible to cause calctool to core dump
479   by typing an invalid mode letter, and when the "broken" mode window
480   appeared, by selecting one of the invalid keys.
482 ----
484 v3.1 - patchlevel 40. 11th June 1991.
486 * Added in ANSI prototypes for each calctool routine.
488 ----
490 v3.1 - patchlevel 39. 7th May 1991.
492 * Fixed up the alignment of the panel items on the property sheet,
493   removing the large blank area near the top left.
495 ----
497 v3.1 - patchlevel 38. 7th May 1991.
499 * The "Save settings as the default" property item has been removed,
500   and the row of three buttons on the bottom now look like:
502     (Apply)   (Set Default)    (Reset)
504   The (Defaults) button has gone. The (Set Default) button is the
505   proper OPEN LOOK way of doing the same as "Save settings as the
506   default".
508 * The main calctool frame now has minimal size hints at creation
509   time, so it's impossible to shrink below it's smallest allowed size.
511 ----
513 v3.1 - patchlevel 37. 2nd May 1991.
515 * Changes needed to get calctool to work under SVR4 (Zeus). There are
516   no SVR4 specifics; the same code runs unchanged under both SunOS
517   v4.1.1 and SVR4.
519 ----
521 v3.1 - patchlevel 36. 30th April 1991.
523 * The calctool icon is now retained. This prevents flashing when
524   another window is dragged over it when OpenWindows.DragWindow:
525   is set to true.
527 ----
529 v3.1 - patchlevel 35. 29th April 1991.
531 * The calctool button labels are are created using read_str() instead
532   of STRCPY'ing to an array of 5 characters. This doesn't work in
533   multi-byte per character environments.
535 ----
537 v3.1 - patchlevel 34. 29th April 1991.
539 * The calctool icon now correctly uses the foreground and background
540   colors. Bugid 1051860 can be closed.
542 ----
544 v3.1 - patchlevel 33. 27th April 1991.
546 * Modified all the text string initialisations in text.c to use the
547   LGET() and MGET() macro's. Wendy tells me this now works for sundae.
549 * Changed the definition for the calctool button strings from char *str
550   to char str[5]. This is needed because the dgettext() strings are now
551   read only, and the calctool buttons strings can change, so they have
552   to be STRCPY'ed.
554 * If an entry was added or changed in either the constant or the
555   function menus, the new menu wasn't being recreated.
557 * Calctool correctly displays on the NCD terminal.
559 ----
561 v3.1 - patchlevel 32. 26th April 1991.
563 * Moved the call to init_text() in do_calctool() to after the call
564   to init_Xvar(). The call to xv_init() needs to be done before the
565   calls to dgettext(). Bugid's 1056298 and 1056806 can be closed.
567 * The strings generated by dgettext are now read only. They shouln't
568   be modified in any way. The check for menu items greater then 45
569   characters long has been removed. This XView problem is now fixed,
570   and because of the read-only strings, is no longer possible.
572 ----
574 v3.1 - patchlevel 31. 26th April 1991.
576 * Ran calctool through Saber-C and fixed up discrepancies.
578 * Calctool now appears to work correctly on 24bit screens.
579   There were three problems:
581   - calctool was crashing in xv_destroy(). What was happening was the
582     frame event handler was getting a resize event before the canvas
583     repaint handler has been properly called.
585   - Should have been using GXclear and XCopyArea to clear the offscreen
586     calctool "button" server images (pixmaps).
588   - the server images for manipulationg that offscreen buttons should
589     have been using a foreground of 1 and a background of 0 (not
590     BlackPixel() and WhitePixel()). Thanks to Darren Austin for finding
591     this one.
593     Bugid 1056788 can be closed.
594     Bugid 1054340 is against SunView, but has been fixed in OW v3.0(FCS).
596 * Calctool now appears to work correctly in the 4bit and 8bit color
597   visuals on the 24bit screen. The problem here was that several
598   graphics contexts and scratch pixmaps were been created with an xid
599   of the root window instead of the calctool main window. The default
600   depth of the screen is differwent from the depth of the visual.
602 * Resizes are now correctly handled. Not all resize events are really
603   changes in size, so the current width and height are compared against
604   the new width and height, and if there is no change, then no resize
605   is done. Checking the frame sizes is now done with an xv_get()
606   on FRAME_OPEN_RECT (which works), instead of a frame_get_rect().
607   Bugid 1057636 can be closed.
608   Rfe 1052050 can be closed. Calctool redraws a *lot* quicker now.
610 * Changed the label on the Chs button to +/-. This means the help
611   key for the button now works (part of bugid 1057794).
613 ----
615 v3.1 - patchlevel 30. 23rd April 1991.
617 * Added in the right numeric function keyboard handling from Stuart
618   Marks (thanks Stuart!). This is the correct way to handle the
619   numeric keyboard, and gets rid of all the sloppy stuff I originally
620   had. The three resources:
622   deskset.calctool.sun3Keyboard:
623   deskset.calctool.sun4Keyboard:
624   deskset.calctool.numericKeypad:
626   have been removed. The manual pages have been adjusted accordingly.
628 ----
630 v3.1 - patchlevel 29. 18th April 1991.
632 * The sequence of keys 10 - 30 "sin" = was not producing the correct
633   effect. For some reason, v->cur_op was being set to the current
634   character ("sin"). I've removed this. The worrying thing, is why
635   was this there in the first place? Bugid 1056216 can be closed.
637 * Dragging with the left mouse button over certain calctool "keys"
638   such as Con and Fun, resulted in illegal xv_get()'s. This is
639   because the appropriate menu hadn't been made.
641 * Certain operators that have control character keyboard equivalents
642   weren't being handled inside parentheses properly.
644 ----
646 v3.1 - patchlevel 28. 17th April 1991.
648 * Calctool has been modified so that most calctool specific warning
649   messages from the acc compiler have been eliminated.
651 ----
653 v3.1 - patchlevel 27. 16th April 1991.
655 * Added in a routine to save the user supplied command line options.
656   These options are also saved to the WIN_CMD_LINE whenever they are
657   adjusted via the property sheet. The -Wn and +Wn options are also
658   saved. These options are then correctly placed in ~/.openwin-init
659   when the user does a "Save Workspace". Bugid 1056934 can be closed.
661 ----
663 v3.1 - patchlevel 26. 12th April 1991.
665 * Various changes to improve calctool memory usage. Resources such
666   as the property sheet, the menus are not created until they are
667   needed.
669 * No longer assume the default keyboard is a Sun4. In other words if
670   the ioctl doesn't say it's a sun3 or a sun4 keyboard, then calctool
671   wont't attempt to setup a right-hand numeric keypad.
673   Add in another X resource:
675   deskset.calctool.numericKeypad:      False
677   which if set to false, won't setup a numeric keypad (irrespective
678   of the results from above.
680 * Added in yet another X resource:
682   deskset.calctool.sun3Keyboard: False
684 * Calctool no longer assumes that the keyboard is a Sun4 keyboard by
685   default. The ioctl has got to be successful to determine if it's
686   a Sun3 or a Sun4 keyboard. If this doesn't happen, then no right
687   numeric keypad is setup.
689 ----
691 v3.1 - patchlevel 25. 20th March 1991.
693 * Changed all occurances of DefaultColormap to:
695   xv_get(xv_get(frame, WIN_CMS), CMS_CMAP_ID) ;
697 ----
699 v3.1 - patchlevel 24. 18th March 1991.
701 * On a color screen (4bit or 8bit), if calctool can't allocate all
702   the colors, it tries to cook up a special colormap using black,
703   white, the workspace color, the default window color, a shade of
704   gray (for the 3D button inversion), plus the tools foreground and
705   background colors. The only new color should be the shade of grey.
706   If we can't get that, or if this all fails for some other reason,
707   then return FALSE, forcing calctool to monochrome.
708   Color palette indices will be:
710   C_WHITE   = white pixel color.
711   C_BLACK   = black pixel color.
712   C_GREY    = grey color.
713   C_BACK    = workspace color.
714   C_DISPCOL = tool background color.
715   C_MEMORY  = tool background color.
716   C_TEXT    = tool foreground color.
717   the rest will be the window color.
719 ----
721 v3.1 - patchlevel 23. 13th March 1991.
723 * Another new X resource has been added:
725   deskset.calctool.sun4Keyboard:       true
727   which will allow the user to override the default keyboard type,
728   which is normally determined by doing an ioctl on /dev/kbd. This
729   is for situations where the calctool program is running on a
730   machine which has a different keyboard type then where the tool is
731   being displayed.
733 * The XView event handler has been adjusted to correctly handle the
734   numeric 6 key on the right function pad. Pressing this key now
735   generates an ACTION_GO_CHAR_FORWARD event, and this was being
736   incorrectly taken as Control-F (Frac) on the down press.
738 * Calctool now compiles, links and successfully runs with acc, if
739   you ignore the warning messages.
741 ----
743 v3.1 - patchlevel 22. 8th March 1991.
745 * Various control-character events are no longer recognised as ascii
746   events, but instead generate action events. The following have been
747   noticed, and the get_next_event() routine in xview.c has been
748   adjusted to correctly handle this.:
750   Control-a   - ACTION_GO_LINE_BACKWARD
751   Control-f   - ACTION_GO_CHAR_FORWARD
752   Control-u   - ACTION_ERASE_LINE_BACKWARD
754 * The calctool manual pages have been adjusted to correctly detail
755   the Asc keyboard accelerator.
757 * The default startup mode for color machines, unless specified on
758   the command line or via an X resource, has been changed to 2D. This
759   will repaint faster to the screen.
761 ----
763 v3.1 - patchlevel 21. 28th February 1991.
765 * The canvas event handler for calctool has been modified to call
766   notify_next_event_func. The menu_show() call now uses the canvas
767   paint window as its' second argument, and not the canvas itself.
768   This now correctly allows menus that have been MENU clicked up,
769   to correct accept the SELECT mouse button.
770   Bugid 1035658 can be closed.
772 ----
774 v3.1 - patchlevel 20. 27th February 1991.
776 * Added in a routine that compresses repaint events. This should speed
777   up calctool repaint fractionally.
779 * Another X resource has been added:
781   deskset.calctool.beep:        true
783   which, if set to false, suppresses the beep sound in the event of
784   an error (such as invalid input, or if the display needs to be
785   cleared).
787   The beep sound has been added for such error conditions.
789 ----
791 v3.1 - patchlevel 19. 15th February 1991.
793 * The fontnames variables were not being initialised to NULL.
795 ----
797 v3.1 - patchlevel 18. 15th February 1991.
799 * Have added in four new X resources, to allow you to specify the
800   fonts used to display text with calctool:
802   deskset.calctool.buttonFont:
803   deskset.calctool.modeFont:
804   deskset.calctool.memoryFont:
805   deskset.calctool.displayFont:
807   Normally calctool will use the lucidasanstypewriter font and pick a
808   font size depending upon the scale and size of the calctool window.
809   This would be for the button and memory fonts, with the mode font
810   2 points smaller and the display font two points bigger. If the tool
811   is resized, then the font sizes are adjusted accordingly.
813   If any of the above X resources are used, then this no longer happens,
814   and the new font names are always in effect irrespective of scale or
815   size.
817   The manual pages have been updated.
819 ----
821 v3.1 - patchlevel 17. 14th February 1991.
823 * Have rewritten parentheses handling so that the parenthesis
824   expression is not calculated until the last matching bracket has
825   been entered. This now allows backspace to be easily and correctly
826   handled.
828 ----
830 v3.1 - patchlevel 16. 27th January 1991.
832 * Adjusted the property sheet. Moved the "Save calculator settings" to
833   the bottom, and called it:
835   Save settings as the default: [no][yes]
837   If this property item is set to yes, then the current calctool
838   settings are written to the ~/.desksetdefaults file when the user
839   selects the Apply, Reset or Defaults buttons. This makes it
840   compatible with clock and perfmeter.
842 * All the new property sheet items have had their help information
843   added to the calctool.info file.
845 * Added in the command line option:   -name app-name
847   This option specifies the application name under which resources are
848   to be obtained, rather than the default executable file name.
850 * Found and fixed one more case related to bugid 1049453, which was
851   mainly fixed in patch #15.
853 * All popup windows have been adjusted so that the pushpin is not in
854   by default.
856 ----
858 v3.1 - patchlevel 15 - 23rd January 1991.
860 * Removed redundant code in xview.c that was put there to try to fix
861   the Sun4 Ins key problem, which no longer appears to be a problem.
863 * If the user presses a calctool button which has a window
864   associated with it (Asc or Mem), and that window is already displayed,
865   or if the user make a selection from a menu, and that would bring up
866   a window, but that window is already displayed, then the window is
867   popped to the top.  This fixes bugid 1049453 which can now be closed.
869 ----
871 v3.1 - patchlevel 14 - 18th January 1991.
873 * The Delete key was working incorrectly with a Sun3 keyboard.
875 * The Ins key on a Sun4 keyboard no longer works with the latest OW
876   V3 builds. A workaround would be to set the Ins key appropriately
877   depending upon whether the calctool program currently has the
878   keyboard focus. Unfortunately I don't know the magic keycode number
879   to use to define the Ins key. The code has been written. When that
880   magic number is found the INSFUNKEY definition in xview.c should be
881   set appropriately, and the call to set_ins_key() in xview.c
882   uncommented. For now, an entry has been added to the TODO file.
884 * The dynamic calctool resizing hasn't been working. Calctool no
885   longer seems to get WIN_RESIZE events when the main calctool frame
886   is resized. To try to "fix" this up, an event interpose routine
887   for the main calctool frame has been added. It then tries to set the
888   canvas size accordingly, and resize all the graphics objects, such
889   as the offscreen server images for the buttons and the text fonts.
891   With the introduction of the interpose routine to fix the resizing,
892   occasionally there are strips of foreground color to the right and
893   below in the various calctool windows.
895   A much better and simpler solution would be to find out why calctool
896   no longer gets WIN_RESIZE events on the canvas. All this used to
897   work; the code to handle resize events on the canvas has been written
898   and used to work.