$Id: ChangeLog,v 1.3 2016/05/11 19:43:42 saper Exp $ Wed May 11 19:13:38 UTC 2016, Therese Godefroy * Webpage updated to GNU boilerplate 1.79. Wed Nov 22 00:24:12 CET 2000, Danny * This is Oleo 1.99.14. * Add a way to specify GIF, PNG output format in curses. * Graph documentation update. * Documentation now displays the Oleo version in the title (required changing the order of first lines in oleo.texi). * Catch signals when in plotutils different from otherwise - print an appropriate message and get out of plotutils. * Experimental : draw marker symbols at data points. * Clean up src/graph.c and src/graph.h, removing mostly all "order" related stuff. In the process, change signature of graph_set_data(). * Start coding for graphs to have lines, marks, or both. Option should be user-settable. * Add code to display XDB version in Version dialog. This only works with the CVS version of XDB, of 15 August 2000 or later. * XDB is now renamed to Xbase again. XDB already exists. * SuSE 7.0 fixes (malloc.h and stdlib.h added). * A couple of Motif 1.2 compatibility and other stupid coding error fixes. * In src/oleofile.c, avoid writing "nan" to the save file when writing floating point values. Just don't write that entry to the file. (Not sure if this is the right thing to do.) * Don't pop down the configure graph dialog if errors occur while scanning its contents. This would result in loss of the data that the user has just entered. Tue 25 Jul 14:54:21 2000, Danny * This is Oleo 1.99.12. * Removed code to deal with gnuplot from graph.c, defun.h. We only support GNU plotutils from now on. * Clean up some code that duplicated functionality in plot.c, graph.c, io-motif.c. * List of known devices for GNU plotutils is no longer an X resource, it is compiled in (src/plot.c). * Make sure it compiles in odd circumstances. * src/plotter.c : call pl_erase_r() at the beginning of a plot, to erase the plotting area. Sat 22 Jul 08:16:32 2000, Danny * Conditionally compile only GNU Plotutils support, not gnuplot, if plotutils is detected by configure. * Start developing curses menus to support plotutils. * io_close_display() now has an int parameter which you should pass a nonzero number on errors. That makes it bypass a screen refresh before leaving curses. This is interesting if you've just printed an error message... * Call io_close_display() when encountering an inconsistency in the startup script. This cleans up curses. * Replace call to display-error-msg by display-msg. * Implement support for 'tek' device in graphs, only for stdout for now. This really means if you run in an xterm window, then a plot to the tek device will open the Tektronix window of your xterm and show the plot in that. * The xBase library has been renamed to be xdb. It can be found through the old xBase home page but also on http://sourceforge.net/projects/xdb . Configuration has been adapted to recognise xdb as well as the old xBase. Things are however still messy because of inconsistent naming in xdb. Currently things work with xdb 1.2.0 . * Make sure the Id string and copyright notes appear more consistently throughout the sources. Sat 8 Jul 17:15:57 2000, Danny * Make sure Oleo compiles without GNU plotutils also. * Fix detection of GSL (GNU scientific library). * Add src/gsl.c - a file containing hooks to call most of GSL's gsl_stats_*() functions. For now. Adding more should just be work, not really hard to do. * Add documentation of Motif Button command. * Add documentation of GSL functions. * Implement zoom in the printing code. * Add a scale to the Print Options dialog to be able to set a zoom percentage. Mon 3 Jul 18:49:04 2000, Danny * This is oleo 1.99.11 . * Handle Window Manager quit (WM_DELETE_WINDOW) nicely. * Replaced the parent widget in call to XmCreate*Dialog(), OpenMotif dies if this is a button. * Add doc/oleo1.png, a simple screenshot of Oleo in action. It shows the LessTif GUI and an XY plot with GNU Plotutils. * Update spec file so we can build a reasonable RPM. rpm -ba oleo.spec should now just work. * Finally (!) fix the bug so parse.h is automatically included in the source distribution, together with parse.c. * Make sure that "oleo -t xx.oleo" works when compiled with Motif. (This should start the curses interface.) * Manipulate src/graph.c so it no longer uses GNUPLOT (which has nothing to do with GNU), but GNU plotutils. The latter is a GNU product, and is more interesting to use for other reasons too. (This is obviously a personal opinion !) * Don't draw a legend unless you have text to put in it. * Add experimental code for displaying dates as axis labels in XY plots. (Conditionally compiled out for now.) * Add support in the Configure Graph dialog to be able to set the value type for tick marks (e.g. to dates as indicated above). * Add doc/oleo1.png - a screenshot. Sat 8 Apr 14:21:36 2000, Danny * doc/oleo_web.html now points to ChangeLog in CVSWEB as well, with a remark saying you need to know the version number of the latest version... * Detect rename() system call. * intl/ : use autoconf to figure out which data type is nls_uint32. * Upgraded doc/texi2html to version 1.61. * Use XbaeGetVersionTxt() if available (in the version dialog). Fri 3 Mar 08:48:49 2000, Danny * Oleo sources are now in CVS at subversions.gnu.org, not the old cvs.gnu.org. * File with an @button command can be read without crashing. Make sure the buttons get created then. * Add more stuff for graphs to file save format. * Renamed a node in doc/ to remove name clash reported by the recent version of texi2html. * MySQL error messages now reported in the standard way (io_error_msg), not fprintf. * Read and write DBMS parameters in oleo file format, and get the Motif dialog to query them before appearing. * Remove global variables in graph.c and plot.c, replace by stuff in Global structure. * Detect getcwd(), use it instead of getwd when possible. * Fixed problem in intl/Makefile.am which prevented config.h from being used. * plotter.c, legend.c : concentrate hardcoded numbers, fix the legend position somewhat, call a new function to make the Y axis appear in the right place so PostScript output makes sense. Wed 23 Feb 20:51:06 2000, Danny * Correct ChangeLog * small update to graph.[ch] Tue 22 Feb 23:29:32 2000, Danny * Define a function @button(label, command). Motif should create a cell widget which is a button displaying "label", when the user clicks it, it should execute "command". In a non-Motif environment, the result of @button(a,b) is still b so you can safely wrap @button around the cells containing programs. -- Doesn't work yet * Clean up the (Motif) user interface to MDI. The only thing left to clean up (I think) is the global quit menu item - it doesn't currently inquire about all individual open files. * Move away from old-style GNU Plotutils API, use the new and cleaner API. This means no more support for GNU plotutils 2.2 or older. * Use the new GNU Plotutils SciPlot library which I'm writing. For now, it'll be bundled with Oleo. (src/plotter.c, src/legend.c, src/sciplot.h, src/sciplotI.h) * Upgrade doc/texi2html to version 1.60 beta, corresponding change in doc/Makefile.am. * Explicitly include src/parse.h in distributions. * More accurate value of PI, but if available, go get it from system include files. (src/eval.c) * Add AM_MAINTAINER_MODE macro call in configure.in to keep us from using the auto_ tools too many times. * Add #include consistently, and fix a couple of omitted checks for . * Worked around a memory overrun problem in SelectCellCB. Still need to pinpoint it exactly ! Wed 1 Dec 22:10:51 1999, Danny * Release 1.99.8. * Update the NEWS file for upcoming release. * Figure out which escape code to use exactly to get PCL printers to behave right. * Turned off i18n support in src/io-x11.c for now, can't get it to work. * Add set_encoding(char *) as an interface in the printer drivers. PCL can handle this too. Sat 27 Nov 19:55:41 1999, Danny * Update the TODO file. * Add stuff (variable, field in UserPreferences dialog, code to initialize, ...) to handle the character encoding. Default is set to ISOLatin1. This should, but currently doesn't, alter X's fonts. It does do things for PostScript. * Conditionally remove (#ifdef VERBOSE) fprintf statements in src/io-x11.c. The i18n stuff still won't work I'm afraid. * Fix a few cases of including io-motif.h unconditionally. * Add mysql.h to the list of files to be distributed. * Get bugfix from Dag Nygren for a crash in display.c. * src/print.c : when moving to a new line, need to do this based on the font size of the next line, not the one just printed. * src/io-term.c : changed the years that Oleo was worked on. Run oleo --version to check. * src/io-motif.c : OK button on configure graph dialog should pop down the dialog. Wed 10 Nov 01:18:09 1999, Danny * Fix a couple of printing bugs. * Add files to create a small table in MySQL (examples/create_koers.txt), fill it with data (examples/data.sql), and a spreadsheet to read from it (examples/mysql.oleo). Thu 4 Nov 13:49:26 1999, Danny * src/afm.c - implement based on the AFM spec by Adobe. Look for document "5004.AFM_Spec.pdf" on their server. * src/print.c - Clean up printing based on AFM. Drawback is that the interface of the Field() function has become more dirty. * Optimize font reencoding and font setting in PostScript. * Font Height now also obtained from AFM. * src/io-motif.c - the first printer returned by CUPS now shows up in the option menu by default (in the print dialog's upper right corner). * Created global variables for border widths, inter-line space. Sun 24 Oct 14:18:48 CEST 1999 * afm/Makefile, afm/Makefile.in were in here by accident, deleted now. * src/Makefile.am, configure.in : add the stuff needed to get $prefix from the configure process, and use it in a C source. The BUILD_PREFIX macro is used to forward the information. * src/afm.c - implement initial functionality. * src/io-motif.c : conditional compilation to show that no db access was linked in was wrong. Fixed. * src/mysql.c - some conditional compilation stuff was in the wrong place, apparently. * configure.in - AC_FUNC_MKTIME seems to have sneaked in, must be AM_FUNC_MKTIME. 1999-10-23 Jeff Bailey * src/sylk.c: Include ctype.h * src/regions.h: Declare precision_region * src/print.c: Include lists.h * src/plot.c: Include X11/Intrinsic.h * src/parse.y: Remove unused variables * src/oleofile.c: Nested comments... gone! * src/mysql.h: New File * src/mysql.c: Include mysql.h * src/mdi.c: Include io-term.h, mysql.h * src/lists.c: Include io-motif.h * src/list.h: Fix declaration for list_set_separator * src/key.h: Match CTRL definition to termcap/curses library. * src/io-utils.h: Add Function declarations * src/io-utils.c: Include io-motif.h, basic.h, oleofile.h, sc.h, list.h * src/io-term.h: Add declaration for InitializeGlobals * src/io-term.c: Include mysql.h, quench warnings. * src/io-motif.h: Add header includes, function declarations. * src/io-curses.c: Remove unused functions, local_putchar && local_puts * src/format.c: Remove unused variables, added FIXME * src/eval.c: Include stdlib.h, string.h * src/decompile.c: Include ctype.h, and cmd.h * src/cmd.c: Include io-motif.h * src/cells.c: Remove unused variables * src/basic.c: Remove extra Parameter from precision_region call. Sat 23 Oct 15:41:08 1999, Danny * Right align requires knowledge of the font metrics, unless we'd use PostScript magic. The printer driver shouldn't be doing this if we want to print on non-PostScript, so add files src/afm.c and src/afm.h to add a module that reads AFM (Adobe Font Metric) files. * Add an afm/ directory with a couple of files. Sun 17 Oct 09:38:29 CEST 1999 * io-x11.c Some copy/pasted i18n code from the LessTif XmIm.c that I wrote ages ago. Works in LessTif, not yet in the Xlib version of oleo (yet). Sigh. Sat 16 Oct 01:08:54 1999, Danny * Printing. * Call MotifSelectGlobal() with an initialized parameter. * Make the documentation available on http://www.gnu.org/software/oleo/doc/oleo.html . * Get all the documentation generated into one file by using the -monolithic flag to texi2html. * Integrate most of the SCANDI patch by Dag Nygren. * Fix silly bug that resulted in coredump when we actually have CUPS printers. * Edit doc/*.texi according to comments by Olaf Bachmann, the current maintainer of texi2html. @ifhtml, @findex, @item, and similar constructs should be at the beginning of a line, or they won't work. We had a lot of those... 1999-10-11 Jeff Bailey * src/Makefile.am: add YFLAGS -d to general parse.h. Remove parse.h reference in includes. * mkinstalldirs, INSTALL, COPYING, missing: Delete. Automake provides these and they should not be in the repository. Tue Oct 5 23:31:50 1999, Danny * Release 1.99.6 . * Use isprint() to determine whether something is printable, so Oleo shows iso-latin-1 characters. Set LANG to something like it_IT.ISO_8859-1 for this to work. Wed Sep 22 01:37:46 1999, Danny * Changes to get things to compile without mysql around. * Make sure src/mdi.h gets distributed. * Get a non-motif version to compile after all the changes with Global. * Added #include to font.c; strange things were sometimes happening. The return value of atof() should be known to the compiler. * Make the PostScript output IsoLatin1 by default. This should probably be user-definable. * Print things in the right place (overlapping cells). Fri 3 Sep 00:56:31 1999, Danny Backx * A bugfix prompted by Dag Nygren's report that PostScript printing crashes for him. Fixed the crash, don't generate the right printout yet. * Fix a few bugs in io-motif.c, now I can open more than one window in Motif, and have different spreadsheets in them. Yeah !! Tue 31 Aug 10:46:39 1999, Danny Backx * plot.c : support LineToOffScreen in XY plots (don't draw a line between points outside the visible region). * More MDI work - plot globals into the structure. * Update TODO. * Both TODO and ChangeLog are now visible on the web page. * Move many global variables into Global. * A fix for a crash reported on the bugs list by Dag Nygren. * Destroy splash widgets instead of popping them down. They're no longer useful. * Implement plots in an X drawable (GNU plotutils terms), meaning we create a widget and tell plotutils to draw in it. The advantage to this approach is that you can put the widget inside a scrolledwindow and have automatic scrolling. * Turned autoUnmanage off for all dialogs. Otherwise dialogs would disappear when Help gets clicked. Sat 28 Aug 12:40:17 1999, Danny Backx * User Preferences dialog : small implementation to change the fonts (Motif); uses a new FontChooser widget from LessTif's Xlt widget set when available. * Converted lots of global variables in io-motif.c to variables inside the Global area. Some (simple !) macro tweeking even makes this easy. * Copied ChangeLog to the web directory on www.gnu.org. * Removed ftp.* files from distribution. They're no longer needed as we can use rcp to distribute stuff to *.gnu.org. * Removed macros to find Xlt and Xbae from the distribution. You shouldn't need them; the "make dist" process should put them in the proper places and create a "configure" script that contains the right stuff. This is something the Oleo maintainer does, not anyone who just compiles Oleo. * Converted to using the AC_FIND_XLT and AC_FIND_XBAE macros as they come with Xlt, Xbae. * Add mdi.c, mdi.h files for Multi-Document Interface. Not entirely sure what the functions in there should do but it involves creating and destroying the Global structure. Fri 23 Jul 18:25:18 1999, Danny Backx * Updated Makefile.am in top directory to use rcp for uploads to the gnu.org systems. * User interface for administrative dbms things. (server host, db name, username). * Implement a simple table-driven options processing that's easier to maintain than the list of if statements. * Add configuration option to find CUPS, the Common UNIX Printing System (http://www.cups.org). Use it to find printers in the print dialog. * Menu item to save options in ~/.oleorc, based on the table for option processing. Saves options only if indicated in the table, and then only when they have the right value. Fri 23 Jul 00:13:42 1999, Danny Backx * src/mysql.c contains a simple attempt at getting SQL database data into the spreadsheet. We need to figure out a way to handle recompute on this - this should probably only happen when the user says so. * Automated maintenance of the arrays containing functions in byte-compile.c - this was a manual process and the counts were wrong ! * Removed the double quotes from the node explaining at functions. Quotes apparently aren't allowed in a node name. * Added a documentation file about database access. Not much content though. * A start at a place to store global variables, in global.h . This should help making Oleo multi-document, multi-window and who knows what else. * Fixup oleo_web.html Mon 12 Jul 18:02:51 1999, Danny Backx * Release Oleo 1.99.5 * A couple of minor fixes. Sat 10 Jul 09:40:13 1999, Danny Backx * Work on PostScript printing. * Further move a couple of global variables away. * Add MySQL access file. As with printing, this and the xbase access functions probably require a higher level of interface inside of Oleo, with the xbase and MySQL stuff functioning as backends for that. Sun 20 Jun 09:29:24 1999, Danny Backx * Fix a bug reading ranges. Some of the more exotic range definitions weren't parsed correctly. * Make print size more accurate, to improve calculation of the amount of stuff that'll fit on a page. This has two pieces : a device independent one in src/print.c, and a bunch of device dependent stuff in other sources. Thu 10 Jun 23:52:50 1999, Danny Backx * Clarify README-alpha. * Default precision gets read from *.oleo files and gets applied too. * Column MaxLength correctly applied now, makes it possible to enter field contents longer than the visible field itself in the Motif GUI. This was a bug that I neglected to write down, so forgot :-( . * Move variables in plot.c outside of #ifdef. * Fiddle with obscure XbaeMatrix options to make the cell display the result of evaluating a formula if you just typed a formula in a cell and hit enter. * Add a "bin" command to the FTP scripts to make sure we're FTPing releases the right way. Fri 4 Jun 11:13:33 1999, Danny Backx * Release 1.99.4 * Document the printer driver API in src/print.h. * Fix bug in formats handling. Setting a default format now works properly. * Remove support for panic file format. * Update TODO - some stuff actually got done. Also add a couple of remarks by Richard Curnow. * Bugfixes by Hayashida Kuniaki for i18n : use -lxpg4 when available, remove #include from acconfig.h, add "%s" argument to calls of n_alloc(). * Implement Motif support for setting default format. Wed 12 May 21:31:01 CEST 1999, Danny Backx * Release 1.99.3 * Change name of Epson driver to EpsonStylusColor. I have a Stylus Color 400 and was fooled by the documentation into believing it did Esc/P2. It doesn't. * More escape codes in src/epson.c and src/pcl.c. Fri 7 May 00:18:56 1999, Danny Backx * Try to put the right stuff in epson.c * Printing : add end of page detection to the right pages. * Printing: incorporate some more hardcoded values to get the multipage printing to work at least for such a case. Printing Courier-10 only for now. * Printing : add a couple of functionalities to the print drivers. Setting fonts. Fri 30 Apr 00:14:39 1999, Danny Backx * configure.in : don't just check for libncurses, also check for . Only go for it if both are present. * Printing : code can print multiple pages already, however it's currently not based on decent font metrics, just on some numbers and font names that seem to work. The current state already works way better than the original PostScript driver. Thu 29 Apr 00:27:02 1999, Danny Backx * print.c changes into a generic print mechanism, the print specific code is in other files. These other files define a printer that knows about printing rows and columns of stuff, top to bottom. That's all my Epson Stylus Color will do :-) * Print driver files (postscript.c,pcl.c,epson.c,prtext.c, print.h) define some basic commands. Tue 27 Apr 21:02:30 1999, Danny Backx * Add src/prtext.c, src/prtext.h, examples/q110399.csv Tue 27 Apr 20:28:18 1999, Danny Backx * README : remove comments about curses mode not working from a Motif executable until someone can prove it. * /usr/local handler in configure.in should target the INCLUDES, not the CFLAGS. The latter won't work for the C++ compiler. * Moved some variables (such as XYxAuto) from io-motif.c to plot.c - it wasn't possible to compile without Motif but with plotutils. * Adding another printer type (printer protocol such as PostScript) needs to be done only in one place, apart from writing the code : add an #include line to the top of src/print.c and add one line to the contents of the Drivers table in the same file. * Add "Epson ESC/P2" (this is the protocol used with the Stylus Color printers) and "Text" as supported printer languages. * Version dialog in Motif now lists the versions of all the libraries we link with (Motif/LessTif, Xbae, XmHTML, SciPlot) which are so kind as to provide the information. Xbase and gsl don't seem to bother. * Catch more signals when not in X. In many cases, we weren't cleaning up when getting a signal. Bad if you run curses. Pointed out by Klaus Schilling. * Remove from CVS : stamp-h.in, src/posixtm.c, lib/ansi2knr.c, lib/ansi2knr.1, lib/xmalloc.c, lib/getdate.h * First cut at splitting printing support into two layers, a general one and (currently) a PostScript layer. Once separation is good and general enough, PCL (and/or others should be pluggable). * Add src/postscript.c and src/pcl.c as low-level printer drivers. src/print.c should be a high level interface. Wed 21 Apr 1999, Jeff Bailey * configure.in: Look for sys_errlist and sys_nerr and set HAVE_SYS_ERRLIST if true. Thanks to BASH authors, although theirs doesn't actually work. =) Only look for Motif if X is available. HPUX10.20 comes with Motif but no X libraries. * acheader.h: Add HAVE_SYS_ERRLIST def'n. * src/utils.c: Check for HAVE_SYS_ERRLIST With this, it now compiles in curses mode on HPUX10.20, and fails somewhere else on Cygwin. =) Mon 12 Apr 15:50:37 1999, Danny Backx * Graph configure window deals better with empty ranges. Change to io-utils.c (range_name) was required too, it was converting struct rng {0,0,0,0} into "@0". * DeleteResponse of help window changed so it can be popped down gracefully. Works in Motif, not LessTif so I need to fix that too :-) * Rewrote parse_cell_or_range so it understands SYLK format regions as well. * Copy (Range/Values) dialog now also accepts regions selected by the mouse. * call a new function to translate SYLK functions into Oleo functions. The table that goes with this is still rather empty. * configure.in - check for GSL (GNU Scientific Library) * configure.in - bump version to 1.99.3 Fri 9 Apr 13:43:59 1999, Danny Backx * Release 1.99.2. * (read_file_generic) For recalculation after reading a file. This gets examples/paine.slk read in correctly. * Make Motif interface cope with default file format dialog. * Inserted a couple of #if XmVERSION > 1 to ensure that Oleo at least compiles if we only have Motif 1.* or a non-2.0 version of LessTif. * SYLK file format seems to have noa0 as the default, not the other way around. The output of Excel 6 (yes I know) shows this. Change our default. * File formats now find their format string (*.oleo) from a table. This table contains a pattern that can handle upper case and lower case to be able to read DBF as well as sylk and SLK suffixes. * src/io-utils.c : handle *.slk as SYLK. * m4/motif.m4 - handle absence of Motif better; Frank Bennett. * doc/*.texi - patch from Art Haas replacing @html by @ifhtml. * src/plot.c - apparently the set of macros to still work with older versions of GNU plotutils wasn't right. Fri 2 Apr 09:27:04 CEST 1999, Danny Backx * Range selection reimplemented for Motif. Click on a range textfield in a dialog to indicate that this one will get the range info, then just drag the pointer over the matrix, while pressing button 1 on the mouse. * Fix ftp stuff in Makefile.am. The 1.99.1 developer's release was on gnudist.gnu.org by accident. Only lasted a couple of minutes. Wed 31 Mar 00:01:52 1999, Danny Backx * Release 1.99.1. * Add lots of stuff to TODO. * Add some more fine-tuned dependencies on config.h to the src/Makefile.am so it recompiles what's needed after configure is rerun. * Fix "Line ..." stuff in several read functions. * I'm starting to feel like a jojo. It *is* possible to get the auto-tools to work right w.r.t. optionally compiling a C++ source, with a little help. The problem is solved by some automake definitions in src/Makefile.am (overriding the link command conditionally), and (for not aborting when no usable C++ compiler is found), copying and tweaking some autoconf macros in m4/cxx.m4. * Adapt FAQ to reflect Xbase status. * Change form attachments; help window resizes better now. Wed, 24 Mar 1999 14:02:54, Jeff Bailey * Fix typo in configure.in . Fri 26 Mar 00:27:46 1999, Danny Backx * Get configure to recognize both 2.2 and older versions of GNU plotutils and act appropriately. (The API changed.) * It seems to be impossible to use automake/autoconf to make a distribution that contains a C++ file, and have the thing gracefully degrade into not using the C++ functionality when we find no C++ compiler. Therefore, abandon automatic use of Xbase. You'll need to do something for it to work, unfortunately. What to do is documented in the FAQ. Sun 21 Mar 17:18:47 1999, Danny Backx * Add examples/loop.oleo to clarify TODO. * Print Dialog now contains file selection box. * Changed all the calls to GNU PlotUtils in src/plot.c so they call the API that comes with version 2.2 of plotutils. They all have a pl_ prefix now (alabel becomes pl_alabel). * Fix all i18n warning messages coming from the build in po/ . * Motif: src/fallback.c now contains lines saying buttons in the menus that don't work are set to insensitive by default. * Configuration: don't build when asked to include Motif but not Xbae, or the other way around. * Configuration: don't even look for Xbase library if we don't have a C++ compiler. * Add note to TODO: integration with GNU Scientific Library (GSL), a library for numerical analysis. * List of file formats we can handle is now in io-utils.c and can be queried. This is the basis for making the option menu in io-motif.c which is now decently dynamic, not hardcoded. Fri 19 Mar 00:49:19 1999, Danny Backx * Xbase file read works for the first time; you need the latest and greatest Xbase library (1.8.0c or later) for this to work. Get it from http://www.startech.keller.tx.us/xbase/xbase.html . * Remove some configuration macro junk. E.g. we were checking --without-motif in more than one place. * Update TODO * Just specify dimensions for splash shell, no need to be very specific. Remove LessTif-ness from fallback.c . Wed 17 Mar 1999, Andreas Jaeger * src/io-motif.c: Protect definition of ThisPuFunction by #ifdef HAVE_LIBPLOT. Wed 17 Mar 22:21:06 1999, Danny Backx * src/fallback.c : Motif vs. LessTif issue: need to make sure splashShell has non-zero geometry in Motif. * Protect against crash when reading CSV file with list format using default (tab) separator. * Add stuff for Xbase (again). Still crashes big time. You're advised not to use this. Wed 17 Mar 1999, Andreas Jaeger * src/decompile.c (dbg_print_formula) remove strcpy declaration since it might be defined as a macro. Tue 16 Mar 23:56:50 1999, Danny Backx * Add stuff to the top Makefile to automatically put the relevant files on the right *.gnu.org systems. * src/plot.h has a name conflict with the general header file for GNU plotutils which is also plot.h, renamed it to src/oleo_plot.h . Thank you Stephan Hegel for reporting a problem that uncovered this. * Next release will be named Oleo 1.99.1 to indicate we're moving towards a 2.0 release of Oleo. Tue 16 Mar 22:20:43 1999, Danny Backx * Default file format dialog now gets initial values right. * One more bug removed from command line processing. Now "oleo -s , -F list xx.xx" reads xx.xx with the list format using a comma as separator. * list.c : remove DOS style line end (CR-LF) when reading a file. Sat 13 Mar 15:41:27 1999, Danny Backx * Fix README and FAQ that mentioned a wrong address for getting subscribed to the bug-oleo mailing list. Fri 12 Mar 00:02:11 1999, Danny Backx * Protect against NULL defaultformat (= a file format). * Get oleo to understand reading files with .csv suffix. Now "oleo q110399.csv" works. * Don't install stuff relative to exec_prefix, but to prefix. Wed 10 Mar 23:47:05 1999, Danny Backx * Oleo 1.6.16 * Add an RPM spec file sent by Marc Zonzon. * Got more comments from Art Haas showing what else is wrong. Basically Art's patch made the set-region-format command work but it broke everything else that set a format. Including the file read stuff. I found a couple of places to fix, now both work. There is still a bit of a mess (mixing format and precision) between the functions str_to_fmt() and set_region_format(), simply because I don't know how to pass more than one variable over the command loop which is also a giant mess. * Add examples/types.oleo which contains a couple of fields in comma, percent, dollar, date, graph, ... formats. Tue 9 Mar 22:24:38 1999, Danny Backx * Oleo 1.6.15 * Use XmNgridType as suggested by Andrew Lister (Xbae's maintainer). Using the value supplied as default now (XmGRID_SHADOW_IN), Oleo looks even cooler than before :-) * Manually add Art Haas's patches, somewhat modified. I didn't change the FMT_* numbers in cell.h as this would introduce incompatibility (new oleo won't read old oleo's files). Also there were still a couple of cases which I didn't understand in the file read/write code; they should be better now. By the way: what Art's patch was all about was to further clarify the separation between precision and format in the Oleo sources. Before recently, they were always used together. Yuck. Sat 6 Mar 16:57:25 1999, Danny Backx * Back out Art Haas's patch - it messes up a couple of my files. * Get notebook to display page 1 initially. * Attempt to get some of the XY graph's special config stuff to work. Sat 6 Mar 14:45:24 1999, Danny Backx * Add to the graph configuration: XmNotebook with a couple of tabs. * Remove m4/emx.m4 from CVS; it's obsolete because we're using automake 1.4 and autoconf 2.13. * Fixed po/{en,nl,fr}.po - some messages from the source weren't here yet. * Manually reduced the colour consumption of oleo_icon.xpm to the six colours that I intended to be in there, not to the 124 that crept in. * Preliminary support printing to a real printer, and a program (pipe). X resources to support this : oleo*defaultPrinter: printer, program, or file. oleo*printer: the name of a printer oleo*program: the command to pipe stuff to for printing. * Add menu items to be able to print XY and bar charts as well. * Splash now consists of buttons, not labels. Clicking them dismisses the splash. * Splash only appears if oleo*showVersion is a positive number. The number indicates the time (milliseconds, default 3000) the splash remains visible by default. Set to 0 for no splash. Fri Mar 5 09:57:20 CST 1999 Art Haas (ahaas@neosoft.com) * cells.h: Get rid of troublesome 'PRC_FLT' definition new macros to make cell formatting work, reorganize format definitions * format.c: Use new macros and definitions * io-edit.c: Use new macros * io-motif.c: Sync up with new definitions * io-utils.c: Destroy 'PRC_FLT' and its weirdness * oleofile.c: Remove 'PRC_FLT' * regions.c: Use new macros * sylk.c: Destroy 'PRC_FLT' Thu 4 Mar 23:53:00 CET 1999, Danny Backx * The Motif splash window gets popped down after three seconds so a human has time to see it. Previously it got popped down when the main window appeared; on some systems (350 MHz Pentium II will do) this period is extremely short. * The splash window is extended with a simple XPM icon which is also the icon Oleo installs as icon pixmap. Only if we find XPM when building. * Printing of Plotutils stuff now pops up a dialog asking you to specify the file type and a file. Wed 3 Mar 21:56:22 1999 , Danny Backx * Release 1.6.14. * The err_msg() function didn't attempt to translate errno value into a string but just said "unknown error". Added code to use strerror if available or sys_errlist[] otherwise. * Call io_info_msg also when printing to stderr; this gets oleo startup error messages in the Motif status area as well. * Added examples/ directory and some files in it. * Added hooks so io_error_msg does sensible things with Motif, even before Motif is initialised. Tue 2 Mar 20:59:24 1999, Danny Backx * Fix both io-motif.c and plot.c so the XY and bar charts now do sensible things, including display of multiple data sets. Beware: this is all still quite simplistic. * Add data labels to bar chart. Tue 23 Feb 22:23:14 1999, Danny Backx * Add some details to Motif graph interface. * The infinity initialisation wasn't working on FreeBSD but it was on Linux. Strange. Now if the ANSI macros are there, don't try to find infinity by dividing 1 by 0, but just use the macro. * Enhance formats dialog for date formats. * Fix m4/x11.m4 so it links -lXt -lX11 not the other way around. * Add -lXext so plotutils is found on Linux. Thu 11 Feb 23:59:41 1999, Danny Backx (danny@gnu.org) * Fix oleo file read/write for new data structure. Wed 10 Feb 21:40:43 1999, Danny Backx * Experimentally change cell.h data structures so the cell_flags becomes a bitfield in C, not a kludge of macros. This affects many of the source files, problems may arise as the precision and type fields in cell_flags were used together in a strange way; this has to disappear. * Add flags to configure.in to enforce autoconf 2.13 or higher and to Makefile.am to enforce automake 1.4 or higher. Also add a flag to include README-alpha in the distribution automagically. * intl/Makefile.am should have a bunch of variables added, not in CFLAGS (overrides too much) but in DEFS. * Fix bad error in m4/motif.m4 which prevented Motif to be found on many systems, similar thing in xmhtml.m4 and xbae.m4 . * Added AM_LINK_FILES again. Hopefully nobody gets hard links to the root directory any more. * intl/Makefile.am added. * Rule to build gpl.h should reference $(srcdir)/gpl.sed, not just gpl.sed. * Remove lib/error.c lib/error.h lib/xmalloc.c, they're not used. * Remove AM_EMX macro: autoconf 2.13 has AC_EXEEXT. Wed, 10 Feb 1999 01:00:21, Frank Bennett * Replace README with a new version. * Fix to xlt.m4. Xlt detection no longer breaks when ./configure is run in the presence of a config.cache file. * Fix to graph.c. Setting X_DISPLAY_MISSING now completely eliminates all X11 functions from the compiled code. * Added x11.m4. Needed to make linking to X11 libraries optional. * Fixes to m4/Makefile.am, src/Makefile.am, ./configure.in. Needed to make linking to X11 libraries optional. * Added FAQ. Wed Jan 27 21:21:31 1999, Danny Backx (danny@gnu.org) * Clean up a number of files that don't belong in CVS: Makefile.in in several places, configure, gtk.m4 . * Fix the build somewhat. * Fix AC_FIND_MOTIF so it knows the difference between stuff installed in the standard place and absent. I hope. * Build can handle SciPlot in Xlt. Xlt is a library of contributed widgets that comes with LessTif. Fri Jan 22 00:25:32 1999, Danny Backx (danny@gnu.org) * Arrow keys bugfix for traditional X11 interface by Dag Nygren . * Piechart based on plotutils added in plot.c. You can only control this from the Motif interface, currently. Can show itself in an X window or plot to a file. * Oleo file format can now read and write some graph data. This means we're now at the oleo 2.0 file format. * Simplistic bar chart added. Same limitations as the pie chart. * Move NUM_DATASETS from graph.c to graph.h, needed this in oleofile.c . * Start using autoconf 2.13 and automake 1.4; requires a couple of simple changes to configure.in. Wed Dec 30 21:31:49 1998, Danny Backx (danny@gnu.org) * As the build problem appears to be fixed, I'm preparing for release 1.6.13. * Removed a call to AC_LINK_FILES from configure.in. It was already performed in AM_GNU_GETTEXT, and it turned out to be the cause for the "hard link to a directory" problem that several people reported. * src/plot.c, src/plot.h added for GNU PlotUtils support. * Remove DLD functionality. Either we support this through a decent mechanism such as Corba or we don't support it at all. * "fix" the TODO file. * Don't compile the GTK stuff under any circumstance: it doesn't work. * motif.m4 : do the right thing if there's no motif around. * Make hyperlinks in the document work with XmHTML. * Remove c++ compiler check from configure.in, it's not needed. * Get Save to work differently from Save As. Thu Dec 24 01:19:42 1998, Danny Backx (danny@gnu.org) * Getting ready for release 1.6.12. * Add a --filter option which currently already reads a file from stdin at startup. This option is dangerous: it'll likely lock up your terminal or your xterm window if you're using character mode. Use as in "oleo --filter -F list --space" . Then type "1 2 3" then Ctrl-D (to end the file). * Add a pointer to Motif in the beginning of the documentation. Also update its last changed date and the oleo version number. Added a pointer to ftp.x.org for finding Xbae, and mention the need to have GNU texinfo 3.12 for building. Texinfo 3.9 is known not to work. * Resizing a column with the GUI (shift-MB2) registers changed column width in the oleo structures. Reading back such a file works too. * List file format can read string entries that are delimited by "". * Formula editor now properly displays something other than a formula as well. * a0 mode is properly set after reading a file. * Clean up the print dialog graphically. * Make include files ANSI C. Remove non-ANSI declarations. * Try to get Formats dialog to work. Not yet. * Fixed the bug in range selection. Translations need to contain \n, but in a C language source this needs to be \\n. * Implement dialog for default file format. Mon Dec 7 18:14:05 1998, Danny Backx (danny@gnu.org) * Add to parsing numeric strings (recognise +, - too). Otherwise, list_read_file doesn't read many numbers. Wed Dec 2 20:47:49 1998 Danny Backx (danny@gnu.org) * Release oleo 1.6.11 so Tom can test and use the list file stuff. * Oleo now recognizes file name extensions at startup. This means it'll understand that "oleo x.list" needs to read a file of format list, not native oleo format. This required command line options -s (--separator) with an argument to specify the separator --space to specify space is the separator The latter seems to be necessary because a space doesn't get through. * Allow setting of separator in "list" file type. * Fix file loading for different file types. * Release 1.6.10 (sorry about this; it's to avoid misunderstandings about versions). * Partially implement range selection. A user should use Shift-Button1 to select one and Ctrl-Button1 to select the other end of a range. You need to have a range widget selected for this to make sense. They're currently in the Define Graph dialog and in the Print dialog. Wed 28 Oct 21:58:14 1998 Danny Backx (danny@gnu.org) * Fixed src/Makefile.am so automake isn't upset any more. Apparently automake can't stand multiple oleo_LDADD = lines that are in separate cases of an if statement. * Add print button in File menu, and a dialog (incomplete) to define what happens when printing. * Add an application resource to determine the default paper size. * Add a function to register widgets that want to know when the user selects a range in the matrix. I think this is what it'll do : add a focus-callback to all these widgets so you can figure out which one is active. In that callback, store the widget ID in a global variable. Then when the user selects, use that widget to store a range in. Sat 24 Oct 23:39:43 1998 Danny Backx (danny@gnu.org) * Added simplistic call to insert a row. * Fixed XmNenableBadHTMLWarnings (XmHTML widget shouldn't generate warnings about bad HTML) : False is no longer an accepted value. * Tracked a couple of bugs in XmHTML : 1.1.5 still has the problem described below. * Added Application Resource to specify default Column Width for cells in the matrix. This is copied to the XmNcolumns on a XmTextField so it counts in number of characters, not pixels. * Add C++ (!) file to call the free Xbase library. Find it at http://www.startech.keller.tx.us/xbase/xbase.html . Not included in the build right now. * Fix a problem in the Motif GUI with strings. Now the current cell always displays itself slightly differently. A cell with contents "this is text" (including the quotes) will show itself including the quotes when it is the current cell, but without the quotes when another cell is current. Wed 7 Oct 21:54:38 1998 Danny Backx (danny@gnu.org) * Release version 1.6.8 * configure.in, doc/Makefile.am : check whether we have texi2html and cope with failure on that test. Note that texi2html is widely available on the Internet so you should get it :-) Fri 2 Oct 00:09:06 1998 Danny Backx (danny@gnu.org) * src/io-motif.c, io-utils.c: file save didn't work unless the user had manipulated the "file format" option menu. Fixed. * Change window/icon title also when saving (so user always sees the file name last saved into). * Added error handling in file save function. Wed 30 Sep 23:45:31 1998 Danny Backx (danny@gnu.org) * src/io-motif.c : XmHTML doesn't need to be in a XmScrolledWindow. * Formats changing now works. * Help anchors need to start with # for XmHTML. Unfortunately this triggers a bug in XmHTML 1.1.4. It needs to check whether the widget is realised in _XmHTMLClearArea. Reported to Koen D'Hondt . XmHTML 1.1.5 fixes the problem. Wed 30 Sep 22:29:41 1998 Danny Backx (danny@gnu.org) * Too many files and changes to keep track of, really. All this is mainly to start building an OSF/Motif (aka LessTif) graphical user interface for oleo. Shameless plug: LessTif is a free clone of OSF/Motif, available from http://www.lesstif.org and ftp://ftp.lesstif.org/pub/hungry/lesstif * m4/* : add a couple of macros to detect presence of Motif/LessTif, Xbae widgets, XmHTML and SciPlot widgets. * Xresources/* : add text files that allow for internationalisation of the texts in the Motif GUI. It's easier to put it here (X has its own i18n mechanism that we're using in this way, using gettext for this would be quite a bit harder). The texts printed from source code are still to be internationalised (is this i15d or i14ed ?) via GNU gettext, i.e. by replacing "Yow baby" by _("Yow baby"). * src/io-motif. : this is the bulk of the Motif GUI source. Currently this is far from finished but it does pop up a window and you can interact with it and get reasonable things back. There's even a help system. * Talking about which: doc/*.texi was modified to add a couple of tags to allow XmHTML (the HTML widget that I'm using) to locate some specific piece of text. * */Makefile.am : a couple of tweaks to make the distribution complete. Now "make distcheck" actually works. * doc/oleo_web.html : this should be a new web page for oleo, to be put on www.gnu.org . Thu Apr 16 17:41:00 1997 Jeff Bailey (jbailey@gnu.org) * configure.in: Link for libintl.h if necessary. Fix GTK. * src/Makefile.am: Make sure INCLUDES uses -I../intl -I../lib * src/io-curses.c: Remove volatile from function that doesn't need it. * src/io-abstract.h: "" * src/io-x11.c: "" * src/io-gtk.c: "" Tue Apr 7 18:47:00 1997 Jeff Bailey (jbailey@gnu.org) * configure.in: Use gtk.m4 macro to detect Gtk. * Makefile.am: Require Automake 1.3 * */Makefile.in: Regenerate with Automake 1.3 * lib/ansi2knr.*: Update from Automake 1.3 * TODO: Update * THANKS: Update * lib/xmalloc.c: If PROTOTYPES not defined, don't use. * src/cmd.c: Include key.h to get CTRL macro. * src/Makefile.am: Make sure INTLLIBS are included in oleo. Patch file by Markku Rossi Incorporate Oleo-patched 1.6C-E from Frank Bennett: * basic.c: Added two new commands, save-point-to-cell and save-mark-to-cell. Saving these had been possible, but with an obscure combination of six commands or so. Populated necessaries to basic.h and defun.h. * basic.c: Addes new command goto-set-cell. Populated necessary changes to basic.h and defun.h * byte-compile.c: Altered value for cells_funs in hack entry (quod vidis). This accomodates the addition of new function varval(int, str, str) in cells.c * cells.c: New function varval(int, str, str). Populated necessary changes in byte-compile.c, etc. * cmd.c(command_loop): This function now takes an additional argument, used to flag execution of a command (as opposed to a macro) from execute_command. This permits the command argument types 'r' and '@' to discriminate between macro and command execution. Big improvement in flexibility and in stability at one blow. * cmd.c(command_loop): Some improvements have been made to the handling of regions in macros. Arguments of type 'r' no longer supply an implicit argument (i.e. the currently marked range, if there is one) to the called command. Instead, these now always expect an explicit range argument when called in a macro. A new type '@' argument always provides an implicit argument (even when called interactively). Macros can now bne written using the commands copy-region, move-region, copy-values-in-region and set-region-formula that don't spring nasty surprises on you when the mark is set. * cmd.c(command_loop): Introduced global variable that can be used by new error-msg expression to terminate macro processing. Unfortunetly, the approach adopted (search for "ioerror" to find the changes) does not work for macros bound to keys, but it's a start, and the limitation can be worked around by binding to a variable that invokes the target variable via "exec". * decompile.c: Function decomp is now an alias for decomp_formula. The latter is the old decomp function, with a new toggle that triggers return of the formatted content of floating point numbers. Dealing with finances is now a little less madding. * defun.h: Interface change. Changes set-region-formula arg style from $ to $', since most of the time this is used in a macro, and is seldom used to clone existing text to a passel of other cells. Command set-variable has been replaced by set-var and unset-var. New set-var command takes arguments in the opposite order (i.e. region name, rather than name, region) and the region uses the new '@' arg type which offers and prompts in interactive mode, or grabs point or region transparently in a macro. The name of execute-commnad has been changed to exec. Less typing. Eliminated disabled block of code referring to an "enter-string-in-cell" command. Can't find the source for this in the code, so it might as well go. Also made inclusion of several X11-related commands (set-default-x-font, set-x-default-font, graph-x11-mono, graph-x11-color), and eliminated their key-bindings and menu entries in the termincal version as well. Also, reorganize all the enries into catagories. * io-edit.c: Changes insert_other_cell_value and insert_cell_value so that quotes are stripped. Required a change to cell_value_string, and this was propagated to all instances of that function. Added code for insert_other_cell_Value and insert-other-cell-expression, and tweaked in a new command insert-abs-cell-ref by putting a toggle into existing insert_abs_ref function. * io-term.c: Added code for set-var and unset-var. * io-utils.s: cell_value_string now accepts a toggle that can be used to turn off enclosing quotes. Added function flt_to_str_fmt, which can be called instead of flt_to_str if the current cell arraw is available. Returns the formatted content of floating point numbers and percents, suitable for editing by humans. Performed some surgeru on range_name and cell_name to make things a little more robust and eliminate some duplicated code. * key.c: Added code for new command unbind-key. Move bind_set to bind_or_unbind_set. New function unbind_set passes an empty command argument to the old function, causing the keys designated to be unbound. * ref.c: new_var_value has been preserved in old_new_var_value, and a new function new_var_Value has been introdueced in tis stead. The only difference in the new version is that is tkaes a struct rng as argument, instad of parsing a char *. * regions.c: Changed move_region and copy_region functions so that mark follwes the new test. You can hop stuff around the sheet more easily now, and hop-and-reformat is smoother. * init.c: Eliminated key bindings to graph-x11-mono and graph-x11-color from the terminal only version. * graph.c: Replaced graph_quoted_str function with discrete functions line_to_q_char and char_to_q_char. This, and some jiggery-pokery in gnuplot_spew (look for graph_title at or about lines 1070 and 1071), prevents Oleo from whining about unquoted data set titles. We _should_ offer a default data set title that is somewhat informative. * xrdb.c: Remove sysinfo call - It wasn't posix. * font.h: Changed TimesRomand to Times-Roman in various places to confrom to the font names used by Ghostscript. * defun.h: "" * graph.c: "" * help.c: In descrive_function, forced ib.len to always be 1. I have not tested this extensively, nor have I traced through the code to see _why_ this works in the cases I have tried. But the previous algorithm found ridiculoud numbers for texts associated with macros defined using name-macro-string. Asking for help with these functions no longer dumps code. Mon Mar 23 21:00:00 1997 Jeff Bailey (jbailey@gnu.org) * lib/Makefile.am: Deposit contents of LIBOBJS into liboleo.a * configure.in: Make sure the LIBOBJS gets added into Makefiles. Detect libguile, and link against if available. Fri Mar 20 17:00:00 1997 Jeff Bailey (jbailey@gnu.org) * src/io-gtk.c: Fix typo. Sun Mar 15 12:27:00 1997 Jeff Bailey (jbailey@gnu.org) * configure.in: Make -Wall default only on --with-debug * src/io-curses.c: Expand IO_SETUP macro. * src/io-x11.c: Expand IO_SETUP macro. * src/io-abstract.h: Remove IO_SETUP macro. Sat Mar 14 14:34:00 1997 Jeff Bailey (jbailey@gnu.org) * Makefile.am: Compile i18n stuff BEFORE source. * src/io-term.c: Runtime options to disable GTK * src/input.c: Make debug printf's print to stderr for redirection. * src/io-term.c: ditto * src/io-x11.c: ditto * src/io-gtk.c: ditto Patches by Scott Heavner * src/*.c: Make debugs only print on #ifdef DEBUG * src/io-term.c: Pretty output of --help statement. * configure: Fix to work with gtk-0.99.6, Make -Wall on by default if GCC. Add --with-debug option. * src/ref.c: Remove some warnings when compiled with -Wall * src/eval.c: ditto * src/byte-compile.c: ditto * src/regions.c: ditto * src/utils.c: ditto * src/lists.c: ditto * src/io-term.c: ditto * src/io-utils.c: ditto * src/hash.c: ditto * src/io-curses.c: ditto * src/sylk.c: ditto * src/oleofile.c: ditto * src/list.c: ditto * src/busi.c: ditto * src/cells.c: ditto * src/cmd.c: ditto * src/io-gtk.c: ditto * src/sort.h: create * src/Makefile.am: Include sort.h Fri Feb 27 22:35:00 1997 Jeff Bailey (jbailey@gnu.org) * src/input.c: Remove more debug notes. * */Makefile(., .in): regenerate. Sun Feb 1 20:00:00 1997 Jeff Bailey (jbailey@gnu.org) * src/io-gtk.c: Begin to add gtk colours into Oleo. req'd to show the cursor in the grid. Mon Jan 26 19:15:00 1997 Jeff Bailey (jbailey@gnu.org) * lib/Makefile.am: Distribute getdate.h Mon Jan 26 18:25:00 1997 Jeff Bailey (jbailey@gnu.org) * oleobug.in: Create - Thanks to the GLIBC people! * Makefile.am: Distribute oleobug.in Thu Jan 15 19:14:00 1997 Jeff Bailey (jbailey@gnu.org) * src/io-term.c: i18n * acconfig.h: More 18n * po/ChangeLog: Create - Null file Sun Jan 11 21:23:00 1997 Jeff Bailey (jbailey@gnu.org) * configure.in: Create po/Makefile to fix make maintainer-clean. Fix ALL_LINGUAS statement. Sun Jan 11 18:35:00 1997 Jeff Bailey (jbailey@gnu.org) * po/: Create & populate * intl/: Create & populate * configure.in: Add AM_GNU_GETTEXT, ALL_LINGUAS * Makefile.am: Add po and intl to SUBDIRS * ABOUT-NLS: Add * gettext.m4: Add * lcmessage.m4: Add * progtest.m4: Add * po/POTFILES.in: Create * README: Update Mon Jan 5 19:18:00 1997 Jeff Bailey (jbailey@gnu.org) * src/io-gtk.c: Implement gio_inputize_cursor Change gdk_pixmap_destroy to gdk_pixmap_unref Add further debugs in gio_redraw_input Add default fonts to Oleo Kludge gio_repaint_win * src/io-term.c: Remove some Debug warnings Sun Dec 14 15:47:00 1997 Jeff Bailey (jbailey@gnu.org) * src/io-term.c: Remove openning warranty screen for testing. Fri Dec 12 21:43:00 1997 Jeff Bailey (jbailey@gnu.org) * src/io-gtk.c: Kludge g_input_metric into working so oleo will load. Mon Dec 8 20:49:00 1997 Jeff Bailey (jbailey@gnu.org) * src/utils.c: Add #include fix typos * src/line.c: "" * src/cmd.c: "" * src/info.c: "" * src/io-gtk.c: Flush out repaint function * src/input.c: Add troubleshooting statements Thu Nov 27 22:39:00 1997 Jeff Bailey (jbailey@gnu.org) * */Makefile.in: Regenerate with Automake 1.2d * doc/texinfo.tex: Update from FSF Copy Tue Nov 25 20:44:00 1997 Jeff Bailey (jbailey@gnu.org) * src/utils.c: ANSIfy * src/forminfo.c: "" * doc/*.texi: Update from fisk's 1.6 Oleo docs. * doc/ranlib.texi: Add * doc/KEYS: remove * USING: remove Tue Nov 17 19:40:00 1997 Jeff Bailey (jbailey@gnu.org) * src/io-edit.c: ANSIfy. * src/io-term.c: "" * src/io-utils.c: "" * src/decompile.c: "" * src/line.c: "" * src/key.c: "" * src/panic.c: "" * src/utils.c: "" * src/print.c: "" * src/cmd.c: "" * src/display.c: "" * src/byte-compile.c: "" Mon Nov 17 23:49:00 1997 Jeff Bailey (jbailey@gnu.org) * src/format.c: ANSIfy. * src/input.c: "" * src/info.c: "" Sun Nov 16 15:00:00 1997 Jeff Bailey (jbailey@gnu.org) * THANKS: Fix typo. Sat Nov 15 17:27:00 1997 Jeff Bailey (jbailey@gnu.org) * THANKS: File added * Makefile.am: Updated to gnits. * TODO: Updated Wed Nov 5 21:05:00 1997 Jeff Bailey (jbailey@gnu.ai.mit.edu) * src/io-gtk.c: Abstract Oleo close routine. Tue Nov 4 19:19:00 1997 Jeff Bailey (jbailey@gnu.ai.mit.edu) * src/io-gtk.c: add gset_status, gdraw_status, gset_text, flush out gio_update_status. Add stub indicators for other functions. * src/io-x11.c: rename set_status and draw_status to xset_status, xdraw_status. set_text to xset_text. * src/io-abstract.c: ANSIfy, add io_command_loop. * src/io-gtk.h, io-gtk.c: Remove IO_SETUP macro, expand out by hand to simplify troubleshooting. * src/io-term.c: remove sleep(5) from curses startup. Mon Nov 3 19:59:00 1997 Jeff Bailey (jbailey@gnu.ai.mit.edu) * lib/error.c: move program_name to PACKAGE * src/io-gtk.c: Make gdraw_text_item work. Other changes re: text pasting. * src/io-gtk.c: Add signal function to file, exit. Wed Oct 29 19:56:00 1997 Jeff Bailey (jbailey@gnu.ai.mit.edu) * Rename draw_text_item function to xdraw_text_item. Sun Oct 26 14:38:00 1997 Jeff Bailey (jbailey@gnu.ai.mit.edu) * src/io-term.c: Integrate GTK parsing in with X and curses * src/io-gtk.h: Create, add defines for generic functions. * src/io-gtk.c: Rename functions to match rest of Oleo. Add stub functions for places where code hasn't been flushed out yet. Begin to add code to place characters in drawing_area. * src/Makefile.am: modify to include io-gtk.h. Fri Oct 24 22:17:00 1997 Jeff Bailey (jbailey@gnu.ai.mit.edu) * src/io-gtk.c: Add drawing_area for spreadsheet display. Fix scroll bars. Add items to File menu. Perform unsuccessful ceremony to attempt to conjure up useful gtk docs. Fri Oct 24 18:58:00 1997 Jeff Bailey (jbailey@gnu.ai.mit.edu) * src/io-term.c: Move GTK window creation to * src/io-gtk.c: here. * src/io-gtk.c: Make Help menu conformant to GNOME. Thu Oct 23 20:31:00 1997 Jeff Bailey (jbailey@gnu.ai.mit.edu) * src/io-term.c: Add about menu and scroll bars. Thu Oct 23 17:56:00 1997 Jeff Bailey (jbailey@gnu.ai.mit.edu) * doc/interface.texi: Fix to work with Texinfo 3.11 Wed Oct 22 22:35:00 1997 Jeff Bailey (jbailey@gnu.ai.mit.edu) * io-term.c: Add File, Edit menus to window. Sat Oct 18 19:47:00 1997 Jeff Bailey (jbailey@gnu.ai.mit.edu) * Modify src/Makefile.am to not include the X Include path twice. * io-term.c: Begin to add gtk window creation. Sat Oct 18 16:28:00 1997 Jeff Bailey (jbailey@gnu.ai.mit.edu) * Add lib/libintl.h for xmalloc.c * configure.in: Modify to detect gtk and add hook to disable with --without-gtk Fri Oct 10 00:28:00 1997 Jeff Bailey (jbailey@gnu.ai.mit.edu) * KEYS: move to doc/ Tue Oct 7 20:39:00 1997 Jeff Bailey (jbailey@gnu.ai.mit.edu) * utils.c, panic.c: Remove hard coded "Oleo" words. * io-term.c: Update copywrite. * configure.in: Add AM_CYGWIN32 * utils.c: Report all errors as Error Number Sun Oct 5 19:03:00 1997 Jeff Bailey (jbailey@gnu.ai.mit.edu) * xmalloc.c: Update from Glibc 2.0.5 * xmalloc.c: Move to lib/ * random.c: "" * lib/error.[ch]: Add * error.c: Rely on system header files for sys_siglist def'n * BUGS, EIGHTBIT: remove Sun Oct 5 13:55:00 1997 Jeff Bailey (jbailey@gnu.ai.mit.edu) * getopt.[ch]: Update from Glibc 2.0.5 * getopt1.c: "" * mktime.c: Move to lib/ * obstack.[ch]: "" * getdate.y: "" * getopt.[ch]: "" * getopt1.c: "" * */Makefile.am: Create library in lib/ of all sources that do not come from oleo itself. This is so that ansi2knr won't attach those sources, which may not be formatted correctly. Also, allows for easy updating of files. Sat Oct 4 18:42:00 1997 Jeff Bailey (jbailey@gnu.ai.mit.edu) * Fix stub #defines in stub.c Sat Oct 4 17:12:00 1997 Jeff Bailey (jbailey@gnu.ai.mit.edu) * io-x11.c: ANSIfy * io-curses.c: "" * date.c: "" * eval.c: "" * graph.c: "" * font.c: "" * help.c: "" * ref.c: "" * lists.c: "" * regions.c: "" * stub.c: "" * utils.c: ANSIfy but search STDC for where I couldn't * sysdef.h: "" Fri Oct 3 00:25:00 1997 Jeff Bailey (jbailey@gnu.ai.mit.edu) * Regenerate with Automake 1.2c to remove test error * configure.in: Change Oleo to oleo Thu Oct 2 22:27:00 1997 Jeff Bailey (jbailey@gnu.ai.mit.edu) * ansi2knr.[c1] added to lib/ directory. Wed Oct 1 19:12:00 1997 Jeff Bailey (jbailey@gnu.ai.mit.edu) * regenerate with Automake-1.2c to fix build time test problem * ir.c: ANSIfy * basic.c: More of same * window.c: More of same * args.c: More of same * cmd.c: Mostly ANSIfy. Where couldn't for now, search FIXME in sources. Fri Sep 26 22:44:00 1997 Jeff Bailey (jbailey@gnu.ai.mit.edu) * getdate.y: Fix declarations, remove RCS references * configure.in, src/Makefile.am: Finally figure out a way to vary the libraries based on whether X is enabled or not. Thu Sep 25 22:05:00 1997 Jeff Bailey (jbailey@gnu.ai.mit.edu) * Update to Automake-1.2b to try and fix library problem. * ylwrap: update * missing: update Sun Sep 21 17:11:00 1997 Jeff Bailey (jbailey@gnu.ai.mit.edu) * io-x11.c: include config.h before ifdef'ing. * xrdb.c: ditto * src/Makefile.am: Don't include -lX11 if no X is compiled. Fri Sep 19 23:21:00 1997 Jeff Bailey (jbailey@gnu.ai.mit.edu) * io-x11.c: Roll back some patches now that I grok the file. Also, remove version number from window title. * src/Makefile.am: add xrdb.c, ir.c, ir.h >duh< * xrdb.c: Take out X11R4 hooks, those variables aren't tested for anymore. * configure.in: Bumped to version 1.6.6 * Makefile.am: Stole release target from gtk. * io-term.c: Make display version number correctly in --version Fri Sep 19 18:48:00 1997 Jeff Bailey (jbailey@gnu.ai.mit.edu) * Add curses support. * io-x11.c: Fix so that compiling with X11R6 libraries is possible * src/Makefile.am: Forcibly add -lX11 to linker. I'm not deceiving myself into thinking that it works now. However, it is possible to compile it, and it does spawn an X session. Thu Sep 18 16:36:00 1997 Jeff Bailey (jbailey@gnu.ai.mit.edu) * Makefile.am: Require automake 1.2, disable dependency tracking * More X fixes. * Add Termcap and Termlib support back in. * utils.c: remove def'n of sys_errlist[] for SCO portability. Tue Sep 16 18:33:00 1997 Jeff Bailey (jbailey@nisa.net) * Uptime mktime.c from Glibc. * Don't install obstack and mktime by default. Detect and add only if necessary * Detect if compiler is ANSI C or not. * Fix Broken X detection. Must configure with --without-x for now until completely working. Will not compile otherwise! Sun Sep 14 18:01:00 1997 Jeff Bailey (jbailey@nisa.net) * Remove parse.y dependancy on funcdef.h kludge. * Remove ugly function mappings from funcdef.h. * Update src/Makefile.am to include header files. Sat Sep 13 17:02:00 1997 Jeff Bailey (jbailey@nisa.net) * Update obstack.[ch] from Glibc. * Fix documentation so that no errors are produced from makeinfo. Fri Sep 12 18:55:00 1997 Jeff Bailey (jbailey@nisa.net) * *.c, *.h, *.y, ylwrap: move to src/ * get rid of irs-1992.oleo for good this time * ANNOUCE: remove * doc/: add old version of documentation * src/Makefile.am: Update * Makefile.am: Update * configure.in: Update * acconfig.h: Add Mon Sep 1 23:12:00 1997 Jeff Bailey (jbailey@nisa.net) * INSTALL.OLEO: remove * TODO: update * args.c: Reference config.h * busi.c: ditto * cells.c: ditto * date.c: ditto * decompile.c: ditto * display.c: ditto * eval.c: ditto * font.c: ditto * format.c: ditto * forminfo.c: ditto * funcs.c: ditto * graph.c: ditto * hash.c: ditto * help.c: ditto * info.c: ditto * init.c: ditto * input.c: ditto * io-curses.c: ditto * io-edit.c: ditto * io-term.c: ditto * io-utils.c: ditto * io-x11.c: ditto * ir.c: ditto * key.c: ditto * line.c: ditto * list.c: ditto * lists.c: ditto * mktime.c: ditto * obstack.c: ditto * oleofile.c: ditto * panic.c: ditto * print.c: ditto * random.c: ditto * ref.c: ditto * regions.c: ditto * sc.c: ditto * string.c: ditto * stub.c: ditto * sylk.c: ditto * windows.c: ditto * xmalloc.c: ditto * xrdb.c: ditto Update to Automake 1.2, Autoconf 2.12. Sun Jun 1 21:26:00 1997 Jeff Bailey (jbailey@nisa.net) * configure.am: create * config.h.in: create * configure.in: redo * Makefile.in: redo * utils.c: Update sys_errlist[]'s def'n. * utils.c: Reference config.h. * cmd.c: ditto * basic.c: ditto * byte-compile.c: ditto Maybe need to check portability, and check return types. * vsprintf.c: Temporarily remove. This breaks some portability, but dependancies weren't sane. * vfprintf.c: ditto * _doprnt.c: ditto * strftime.c: ditto * alloca.c: ditto Update to autoconf 2.12, automake 1.1p. Prepare to increase portability to include Gnu Libc 2. Temporarily require NCurses to function. Add check for -lm. Add AUTHORS, TODO. Update INSTALL. Fri Jun 3 22:07:49 1994 Tom Lord (lord@x1.cygnus.com) * ref.c(finish_shift_var): don't leave VAR_DANGLING_RANGE's dangling. This used to cause some vars to disappear when you saved files. * io-edit.c(goto_char): clip, don't signal errors, for arguments out of range. * io-x11.c: Return-Path: The io-x11.c.dif patch allows oleo's xio_scan_for_input() routine to accept X send_event keypress events from any application, not just tkSteal. It recognises that they are send_events, as distinct from keyboard originated events, and buffers them separately until a `return' is received. The buffer is then sent to oleo's execute_command() routine. Command lines sent to oleo in this way will therefore be executed in the same way that commands are executed under the oleo read-commands command (which reads from a file). Normal oleo operation is not affected at all by these additions. Even while running embedded within tkoleo, all existing key bindings work the same. * graph.c: Return-Path: If you wish to title a graph, your title must be the unnatural title "my graph's title" The following fix allows you to only have to type "my graph's title" when prompted for a title. * defun.h Return-Path: Problem: Using "set-default-font" in a commands file always prompts for interactive input even when arguments are included with the command. Example: set-default-font helvetica 2 Cause: In defun.h, FUNC_ARG_STRING for the set-default-font command uses the "s" verify string style token as in "sSet %0 font to? ". The verify string style routine should only be used for the last (or sole) argument because it simply does a string copy of the remaining characters on the line. Thus, in the example above, the font name is taken as "helvetica 2" and the size factor is missed resulting in the prompt and eventual error for the unmatched font name. Solution: Use the verify word style "w" in place of "s". Scope: This problem probably also affects other function argument specs and I have modified, without testing, what I think are the most suspicious in defun.h. The patch below shows which ones these are. * args.c: Return-Path: Jaakko Hyvatti's patch prompted me to play around with some malloc-debugging tools on Oleo, and I encountered the following bug during startup (running under X). In word_verify() in args.c, the pointer `e' is used to find the end of the first word in the string `*end'. The end of the string itself, however, is not checked for, and since the NUL character is not considered a space (by my isspace(), anyway), `e' walks past the end of the string if a NUL follows the word instead of more spaces. This apparently went unnoticed, I think, because the NUL is still copied into the given argument (so that arg is valid) and the total number of arguments is still computed correctly anyway (elsewhere). There are other functions in the file that don't explicitly check for the end of string, either; these are still ok because the NUL character is not a digit or alphanum, etc. so those loops stop at the end of the string. I patched some of these any way -- the ones that call isspace() -- just in case some funky C library thinks that NUL is a space. -KNG 931123 * decompile.c: Return-Path: As log as I have been usin oleo-1.5, I have been haunted by core dumps. I am using Linux, with linux-libc-4.4.4 that is quite sensitive to free()ing the same area twice in a row. Today I spent some time with gdb and some malloc-debugging-hooks, and found the cause. decomp_free() is freeing the same pointer twice. This happens only at cmd.c:1828 in command_loop(), and only if find_cell() returns NULL previously at cmd.c:1811. This triggers the bug in decomp() that is called at cmd.c:1827. save_decomp retains it's old value, and that area is re-freed in the following decomp_free(). * string.c: Return-Path: The following 2 patches fix bugs (features?) in the mid() and find() functions. mid() is indexing strings from 0 instead of 1 like other functions, and find() is switching its str1 and str2 args, so that it looks for str1 in str2 instead of vice-versa. Thu Oct 21 11:44:00 1993 Paul Amaranth (amaranth@vela.acs.oakland.edu) * xrdb.c Swapped name and class parameters on x_get_string_resource to match the calls in io-x11. Foreground/background now work. * io-x11.c Cleaned up the color allocation code a bit Added a test to set_default_point_size to bail out if x11_opened not set to prevent the thing from hanging if you had that command in your .oleorc and tried to run it from a nonX device. Fri Jun 3 21:55:31 1994 Tom Lord (lord@x1.cygnus.com) * Return-Path: There is a bug in version 1.5 file io-x11.c in function io_col_to_input_pos(). The bug prevents positioning the input cursor at the end of the input text (ie, ready for appending) using the mouse. * init.c, io-edit.c: Return-Path: The oleo "USING" file describes the key binding "M-o" for toggling overwrite mode when typing in the minibuffer. In version 1.5 this binding is not included in init.c. I think this may have been deliberate because of a bug in the over_string() function (in io-edit.c). The bug caused segmentation faults when appending to the end of the input string while in overwrite mode. * io-edit.c: Return-Path: The oleo command "insert-rel-ref" sometimes computes incorrect cell offsets in non-a0 label mode. The problem is that the corresponding C function "insert_rel_ref()" uses "setrow" (and ditto for "setcol") which is #defined to look at "the_cmd_frame->_setrow" rather than "the_cmd_frame->prev->_setrow". There is also an incorrect format string in insert_abs_ref() which causes an extra ':' to be included in some cell ranges. * parse.y(parse_cell_or_range): MAX_COL should be MAX_ROW from korfhage@weston.poly.edu> ----- release 1.5 ----- Tue Aug 10 02:19:16 1993 Tom Lord (lord@unix6.andrew.cmu.edu) * ref.c (flush_fm_ref): NULL check Mon Jul 26 16:05:29 1993 Tom Lord (lord@metis.weh.andrew.cmu.edu) * list.c: Applied a patch from chris@lslsun7.epfl.ch (Christian Iseli) The patch saves list mode from wasting time examining thousands of empty cells. Sun Jul 25 21:57:43 1993 Tom Lord (lord@unix1.andrew.cmu.edu) * configure.in, io-x11.c: Check for XSetWMProtocols and don't call it if it doesn't exist (as in X11R3?) Wed Jul 21 14:12:08 1993 Tom Lord (lord@unix8.andrew.cmu.edu) * utils.h: don't #define ck_free ----- no additional release info ---- Sun May 23 01:19:38 1993 Tom Lord (lord@unix9.andrew.cmu.edu) -- partial accounting of various patches from Andreas Schwab * io-curses.c (_io_redraw_input, redraw_info, _io_redisp): start drawing the info screen on row 0 (or else the info screen is one line too high) (_io_repaint): redraw the prompt if info screen active, too * io-edit.c (forward_char): allow the cursor to move after the last character (goto_char): ... but that is too much * window.c (io_set_input_status): use the new values to compute the layout * help.c (expand_help_message): expand unbound functions correctly Fri May 21 16:18:46 1993 Tom Lord (lord@unix10.andrew.cmu.edu) * help.c (expand_help_msg): lookup bindings from top_keymap instead of cur_keymap. Thu May 13 13:30:43 1993 Tom Lord (lord@dacre.bh.andrew.cmu.edu) * io-term.c defun.h cmd.c (pushback_keystroke, main): Made the non warrenty not consume a keystroke and not appear if a file is being loaded. Hopefully is less offensive to pro users. * io-edit.c: made the cpp macros non-recursive because gcc is just too good for the rest of the world to bear. * reginos.c, print.c ({ps,}print_region_cmd): fixed argument order. (TEST) * io-x11.c, init.c: corrected the ansi arrow bindings. (TEST) * panic.h: new file, took over some decls from utils.h * io-curses: got rid of unused variable io_input_avail_val * io-x11.c: got rid of all references to ->message Tue May 11 00:49:06 1993 Tom Lord (lord@socrates.hl.andrew.cmu.edu) * io-term.c defun.h cmd.c (pushback_keystroke, main): Made the non warrenty not consume a keystroke so that it is less offensive to pro users. * io-edit.c: made the cpp macros non-recursive because gcc is just too good for the rest of the world to bear. * reginos.c, print.c ({ps,}print_region_cmd): fixed argument order. (TEST) * io-x11.c, init.c: corrected the ansi arrow bindings. (TEST) * panic.h: new file, took over some decls from utils.h * io-curses: got rid of unused variable io_input_avail_val * io-x11.c: got rid of all references to ->message ----- some bugfixes not recorded :( ----- Fri Mar 19 01:42:54 1993 Tom Lord (lord@unix2.andrew.cmu.edu) * ref.c (shift_outside): udpate variable refs correctly (moving ranges would sometimes cause oleo to hang, othertime not to update correctly). * ref.c (copy_cell): update timer refs appropriately. Tue Mar 16 16:05:54 1993 Tom Lord (lord@antares.weh.andrew.cmu.edu) * io-x11.c (xio_scan..., open_display, ...): added a patch from Jeremy.Allison@Corp.Sun.COM (Jeremy Allison): allows oleo to receive keyboard input in X11 under IC\ CCM complient window managers (like olwm) that only give keyboard focus to clients that explicitly request it. I have also added a fix to allow oleo to quit when such \ a window manager sends a WM_DELETE_WINDOW client message. Fri Mar 12 01:48:35 1993 Tom Lord (lord@unix7.andrew.cmu.edu) * font.c: simplified the font naming system such that one must use define-font and then refer to fonts by their oleo name. The old way confused people and would not have worked as well with the new command loop. Sat Feb 13 15:14:47 1993 Tom Lord (lord@unix8.andrew.cmu.edu) * io-curses.c, basic.c, io-term.c (suspend_oleo, continue...) A new command (suspend-oleo) and also set the terminal modes nicely when being suspended or continued. Fri Feb 12 19:14:58 1993 Tom Lord (lord@watson.bh.andrew.cmu.edu) * window.c: i am removing supprot for linked windows because they don't appear ever to have worked and are now in the way of some other changes. Tue Feb 9 00:08:20 1993 Tom Lord (lord@maelstrom.ucc.andrew.cmu.edu) * -- extensive -- There are now doc strings for all interactive functions and for all formula functions. These are defined in defun.h and forminfo.h respectively. Defun.h is turned into structures and arrays in funcs.h. This replaces/augments some tables that were formerly built in io-term.c. Defun.h also correlates c functions with their Oleo names and func_args strings. Tue Feb 2 03:30:16 1993 Tom Lord (lord@thisbe.weh.andrew.cmu.edu) * basic.c (recalc_cmd => recalculate): added a parameter that tells recalculate to recompute all cells, regardless of what has changed. This is like ^L except for formula values instead of display state. When called interactively, a prefix arg causes full recalc. Otherwise, only partial recalc is done. * basic.c (imove, inc_direction): new interactive command for navigation that is less stressful on the hands/anglo-centric than Emacs bindings. Thu Jan 21 15:38:23 1993 Tom Lord (lord@thisbe.weh.andrew.cmu.edu) * -- extensive -- The command loop was formerly split between io-term and the two implementations of get_line. The newly created cmd.[ch] collect all of the command loop in one place. The mechanism that builds up arguments for interactive functions has been rewritten. Command-loops are now first class objects so multiple input contexts (e.g. recursive minibuffers) are supported. io-term.c has been carved up. Some functions have been moved into their own file (format.c). Many commands have been changed slightly to better fit the new command loop. Mon Jan 11 15:17:15 1993 Tom Lord (lord@kalypso.weh.andrew.cmu.edu) * display.c (record_display_damage): inner loop tested r. should have tested c. * alarm.[ch], io-term.c, ref.c: got rid of the alarm functions and all uses of SIGALRM. The alarm is derived by polling time() as part of a select-with-timeout loop. Sat Jan 9 15:00:16 1993 Tom Lord (lord@thisbe.weh.andrew.cmu.edu) * print.c (set_page_size_cmd): incorporated support (from Cosmos Nicolaou) for named page sizes * print.c (psprint_region): in the output postscript, define max and min because apparently not all ps interpreters do (?!?!). * io-x11.c (xio_redisp): only draw the cursor in the current window. * io-x11.c (open_): Scale the labels accounding to max_bounds (not "M" width). The reverse change for cell-width scaling. * io-term.c (got_sig): don't call io_error_msg from a signal handler and therefore don't report the signal to the user. This is a temporary fix. Fri Jan 8 02:14:39 1993 Tom Lord (lord@thisbe.weh.andrew.cmu.edu) * io-term.c io-curses.c io-x11.c: rewrote real_get_chr to use select instead of wait, SIGIO or non-blocking io. Updated the display drivers to reflect this. Wed Jan 6 01:26:00 1993 Tom Lord (lord@thisbe.weh.andrew.cmu.edu) * io-term.c (read_file_and_run_hooks): Don't pass a constant string to find_var or execute_cmd because those functions can't deal with it (grrr). (diagnosis from Cosmos Nicolaou ) * io-term.c (set_page_size_cmd): rewritten so as to parse its argument correctly. * print.c (put_eps_header, psprint_region): incorporated patches from Eric S Fraga to fix the postscript definition of CELL-GOAL (in the right-justified case) and the computation of the bounding box. Tue Jan 5 14:31:31 1993 Tom Lord (lord@thisbe.weh.andrew.cmu.edu) * everything -- cleaned up nearly all the warning from gcc -pedantic -ansi -Wall (other than those fixed by Paul Eggert). Mostly this was a matter of properly (i hope) declaring libc functions in sysdef.h. * parse.y (parse_cell_or_range): cleaned up the CK_* macros to get rid of the empty else warning. Thu Dec 31 15:31:32 1992 Paul Eggert (eggert@twinsun.com) * decompile.c (decomp): Use prototoype when defining in ANSI C, since the argument type CELLREF will be promoted otherwise, and ANSI C does not allow mixing old-style definitions with prototype declarations when argument types are promoted. * display.c (cell_display_of, pr_display_cell): Likewise. * io-curses.c (_io_pr_cell_win, move_cursor_to): Likewise. * io-term.c (set_cell_formula): Likewise. * io-utils.c (cell_value_string, cell_name, col_to_str): Likewise. * io-x11.c (xio_pr_cell_win): Likewise. * lists.c (find_cell, find_or_make_cell): Likewise. * ref.c (new_value, set_new_value, read_new_value, move_cell, copy_cell, add_ref, flush_range_ref, add_ref_fm, flush_ref_fm, push_cell): Likewise. * regions.c (set_rng): Likewise. * window.c (win_label_cols, io_pr_cell, io_move_cell_cursor): Likewise. * cell.h, font.h, global.h, io-abstract.h, io-generic.h, io-term.c, io-term.h, io-utils.h, list.h, lists.h, oleofile.h, ref.h, regions.h, sc.h, sylk.h, utils.h, window.h: If __STDC__, declare zero-argument functions using `(void)', not `()'. * global.h (for_all_vars, hash_insert, index, rindex): Declare argument types if __STDC__. * hash.c (hash_insert): 3rd arg is VOIDSTAR, not char *. * io-term.c: Declare prototype for getenv, move_region, format_area, open_window, close_window, goto_window. * io-x11.c (getenv): Argument is const char *, not char *. * ref.c (for_all_vars): Use prototype for argument if __STDC__. * utils.h (abort, malloc, calloc): Correct prototypes to agree with ANSI C. * utils.h (ck_fopen): Delete unused declaration. Fri Jan 1 02:48:28 1993 Tom Lord (lord@unix1.andrew.cmu.edu) * utils.c (fopen_with_backup): the backup_by_copying branch had out-of-order parameters to fread/fwrite. ( (patch from ron@mlfarm.com) * ualarm.c: Some systems want instead of * io-x11.c (open_display): actually use the geometry that was computed from the resource database. * io-utils.c (div => divide): name clash w/stdlib.h Thu Dec 31 13:16:32 1992 Paul Eggert (eggert@twinsun.com) * sysdef.h (SIGRET): Remove. All invokers removed. This change might cause some harmless compiler warnings in old-fashioned hosts where signal functions yield `int', but that's better than always generating warnings in modern hosts where signal functions yield `void'. Thu Dec 31 13:12:16 1992 Tom Lord (lord@ceti.weh.andrew.cmu.edu) * xrdb.c: properly include alloca.h (patch from Paul Eggert) * io-term.c (main): show the disclaimer before turning on curses. * io-utils.c (ignore_sig): reregister the signal handler after it fires. * io-x11.c (open_display): init the xwins field of thePort. * io-x11.c (get_x11_args): don't merge the command line database (which was never computed). Wed Dec 30 21:49:33 1992 Tom Lord (lord@wombat.gnu.ai.mit.edu) * utils.c, configure.in: added configuration tests for several semistandard functions that are (now conditionally) defined in utils.c. Mon Dec 28 20:10:27 1992 Tom Lord (lord@altair.weh.andrew.cmu.edu) * io-x11.c (xio_update_status): fixed formatting of the cell formula * io-term.c (main): new long option -nw to not use x. new options: --help, -h to show usage. * print.c (put_ps_string): quote left parens inside of ps strings. Mon Dec 21 01:02:03 1992 Tom Lord (lord@thisbe.weh.andrew.cmu.edu) * io-term.c (main): added new command line arguments and started to use getopt. * io-x11.c (set_cursor & elswhere): draw the cursor even when the layout needs to be recomputed (but not when it has never been computed) * cells.c (vlookup_str): new formula function. Sun Dec 20 00:31:00 1992 Tom Lord (lord@thisbe.weh.andrew.cmu.edu) * io-term.c (read_file_and_run_hooks): After reading a file, execute the macro bound to load_hooks, if any. Fri Dec 18 14:53:15 1992 Tom Lord (lord@chort.weh.andrew.cmu.edu) * io-x11 (record_damage): compute label damage precisely. Got rid of call to xwin_range which was buggy and supersceded by display_range, anyway. * display.c (layout): removed two spurious calls to damage in the first loop. * io-x11.c (io-redisp): don't repaint the cursor cell unecessarily. * io-term.c (real_get_chr): On systems that support sigio, block using wait. This way, timer events can cause continuous updating. Thu Dec 17 01:54:57 1992 Tom Lord (lord@alcyone.weh.andrew.cmu.edu) * ref.c: removed lots of bugs from shift_outside and related functions. The corresponding commands seem to work for a change. * io-term.c: made the use of input line buffers more consistent. * io-term.c (read_variables, set_region_formula, where_is): new interactive functions. * io-term.c ({upper,lower}_{left,right}): new functions. Wed Dec 16 13:13:40 1992 Tom Lord (lord@unix9.andrew.cmu.edu) * various: The SPLIT_REFS option is being removed (as it comes up). * utils.c (abort): Turned off the oleo.panic files. * font.c (intern_font): Specifications in def\(a\(u\(l\(t\)?\)?\)?\)? now return 0, which stands for the font that is set using set-default-font. * oleofile.c (oleo_write_file): don't bother generating a boundry field. (e.g. B;r23c43). read_file still parses them for compatability. Sun Dec 13 20:23:28 1992 Tom Lord (lord@monsoon.ucc.andrew.cmu.edu) * ref.c: Turned off the error messages that occured when moving a range that partially overlaps formula and variable references. That is because this isn't an error. The change means that ranges will sometimes be silently adjusted as lines are insert/deleted or regions moved. Is this a problem? Sat Dec 12 20:17:26 1992 Tom Lord (lord@wisteria.bh.andrew.cmu.edu) * sylk.c/oleofile.c (_read_file): Abort the read after a bad field is found. * io-x11.c (init): Set the window title. * ref.c (flush_range_ref): null deref bug. * oleofile.c (oleo_read/write_file): correctly set a0 mode if the option is set in the input file. * sylk.c (sylk_read/write_file): read/write in a0 mode. Fri Dec 11 11:44:10 1992 Tom Lord (lord@watson.bh.andrew.cmu.edu) * io-term.c (exchange_point_and_mark): rewritten so as to actually work. * io-x11.c (several functions): added a new field, redisp_needed, to a port structure. Set and cleared at obvious times (to avoid flashy redisplay). * ref.c (flush_ref_fm): Avoid trying flushing if *where is NULL. It's not clear that this is the right fix since an old piece of TEST code complains about this condition. I guess the expected bug, if this fix is wrong, will be bogus updating. The max_row->highest_row change might have something to do with why this bug is showing up now. * display.c (pr_display_cell): This function checks to see if the cell has truly changed appearence, and if not, does nothing. This change is because the cell cursor flashed annoyingly after empty cells went from not being allocated to being allocated (but still empty); the fix is a little more general, though. * ref.c (shift_outside): fixed several null dereferences in condition of loops that remove references to a cell. * ref.c, region.c: Wherever the comment /* sparse array bug fixed here */ occurs, there was a bug caused by keeping pointers to cells through calls to one of the make_cell functions. The fix is always to recompute the pointer from the row/column address. A number of bugs related to move_region appear to have had something to do with this. Thu Dec 10 12:24:10 1992 Tom Lord (lord@unix5.andrew.cmu.edu) * regions.c (move_region): max_row -> highest_row when clipping the region being moved. This fixed a bug that showed up when the last column in the source region had fewer filled rows than other rows in the source region. * io-term.c init.c (insert_*, delete_*): added new commands to insert/delete rows and columns. Bindings ^O ^K M-^O M-^K. * ref.c (shift_outside): When shifting a relative range reference, set cur_row/col to the destination of the cell being shifted instead of the source. This appears to be the long standing bug in which move-cells fails to correctly update formulae -- though the bug reports aren't clear enough for me to be sure this is the only bug. Wed Dec 9 16:36:13 1992 Tom Lord (lord@dacre.bh.andrew.cmu.edu) * utils.c (fopen_with_backup): applied *part* of a patch from somewhere!ron@mlfarm.com. The fix is to the __backup_by_copying case; the correct file is opened as the backup file. The patch also replaced fread/fwrite w/ fgetc/fputc; I didn't incorporate that because i see no reason why should be necessary. Someone send me a bug if i'm wrong, please. * parse.y: (yylex): For some reason, variables were never lexed in a0 mode. Now they are. Fri Dec 4 20:05:37 1992 Tom Lord (lord@unix8.andrew.cmu.edu) * io_term.c: new interactive function: write-variables. Fri Nov 27 22:03:10 1992 Tom Lord (lord@maelstrom.ucc.andrew.cmu.edu) * io_x11.c (xio_scan_for_input): recognize Mod1Mask as meta. Mon Nov 23 20:33:48 1992 Tom Lord (lord@unix9.andrew.cmu.edu) * sylk.c, oleofile.c (*_read_file): Obey user-specified a0 option when reading files. * init.c: new bindings M-C-v show-all-variables Sat Nov 21 17:00:40 1992 Tom Lord (lord@strand.bh.andrew.cmu.edu) * io_term.c (real_get_chr): replaced ERR with -1 because not all curses implementations define ERR. Hopefully they all use -1. * utils.c (stricmp): ifdefed stricmp. * Makefile.in (.c.o): -I$(srcdir) * io_term.c (main): Obtain part of the startup message from oleo_version_string so that it is up to date.