The AthenaTools Plotter Widget Set Version 6.0 CHANGES ------------------------------------------------------------------------------ Changes from version 6-beta to version 6.0 ------------------------------------------------------------------------------ o Patchlevel 1 - klin, Sun Jul 19 09:39:15 1992 patchlevel.h added Plotter.h, Plotter.c Added the global function AtPlotterGetLegendWidth() to get the maximal legend width from within application programs to give the possibility that the legends of multiple plotters are of the same width. RecalcLegend() changed: returns True if legend width OR heigth changed. RedrawLegend() always calls RecalcLegend() and calculates the correct legend_y value. XYAxis.c Stop infinite loop in calculation of linear tic interval using a simple counter in procedure LinAxisRange(). This is a workaround only! The linear axis core should be rewritten. - klin, Wed Jul 22 09:32:26 1992 AxisCore.c Ken Rempe (ken@caesar.uucp) reported a bug in the setvalues procedure when changing the axis label and sent a bug fix. - klin, Fri Jul 24 15:06:19 1992 PlotterPS.c Fixed a bug in PostScript code for star marker. o Patchlevel 2 - klin, Mon Jul 27 14:14:32 1992 Plotter.h PlotterP.h Plotter.c PlotterPS.c Added the new resource XtNlegendLeft (legend_left) which defaults to False. Setting this resource to True causes the plotter to display the legend on the left hand side of the plotting area. Added the new resource XtNautoRedisplay (auto_redisplay) which defaults to True. Setting this resource to False causes the plotter to avoid redisplaying after changes. When then this resource is set to True the new full state is displayed. This may be useful to avoid unnecessary flickering when changing multiple values or to do not visible changes, i.e. when writing PostScript output with different line styles instead of colors. Added the new resource XtNuseCursor (use_cursors) which defaults to True. If this resource is set then the plotter will use different cursors when in click or drag callback. Added the new callback XtNbusyCallback. Procedures of the busy callback list are called when the plotter starts redisplay with callback data from type AtBusyCallbackData and the item busy set to True. When the plotter finished the redisplay process this item will be set to False. Added the new resource XtNusePixmap (use_pixmap) which defaults to False. If this resource is set the plotter draws to a pixmap instead to a window. This helps avoid flickering when data often change, but uses more memory, especially on color terminals. To implement this feature, the draw procedure of all of the plotters child widgets (axes and plots) and the AtText code had to be changed. Increased the valid plotting area in callbacks some pixels. AtPlotterGeneratePostscript() generates a core dump when the plotter widget is not realized. Bug reported by Gustaf Neumann at 92/07/27 (neumann@dec4.wu-wien.ac.at, neumann@awiwuw11.bitnet). AxisCore.h AxisCoreP.h AxisCore.c Added the public function AtAxisGetNumberWidth() which can be used by applications to get the current number width of an axis. Added the resource XtNnumberWidth (default_number_width) which defaults to 0. This resource can be used to set the number width to a default value, i.e. to align the axes of multiple plotters in one application after the maximal number width of the axes are requested using AtAxisGetNumberWidth(). XY*.[ch] Shorter names for procedures XYLinePlot.c When drawing impulse plots in PostScript the first impulse was missing. Bug in DrawPS() fixed. Added the new line types AtPlotSTEPS and AtPlotBARS. XYAxis.c Register axis transform converter in the new class initialize procedure ClassInitialize(). Reported by Gustaf Neumann at 92/07/27. Text.c When destroying an NIL AtText object AtTextDestroy() generates a core dump. Fixed and reported by Gustaf Neumann at 92/07/27 o patchlevel 3 - klin, Sun Aug 2 18:25:42 1992 XYAxis.c Accept initial min/max values set with XtNmin/XtNmax in Initialize(). Plotter.h PlotterP.h Plotter.c Added the layout callback (layout_callback) which defaults to NULL and is called when the plotter is in layout. Client data of this callback of the new type AtAxisPositions contain the positions of the X and Y axes and may be changed by applications or other plotters to align the axes of multiple plotters in one application. The additional function AtPlotterGetAxisPositions() may be used to get the current axis positions, the procedure AtPlotterSetAxisPosition() may be used to set aligned positions. A better way to do such axis alignment would be to create a new plotter form widget which holds and manages his child plotters and exempts the user from doing this. Added the new resource XtNtitleHeight (default_title_height) which defaults to 0. This resource may be used to set a default height for the title text, for i.e. aligning multiple plotters. The real height of the title string can be requested with the new function AtPlotterGetTitleHeight(). Internal callback EnterLeave() when entering or leaving the plotter window added. This callback is called when entering or leaving the plotter window to set appropiate cursors, i.e. when procs in the motion callback list are defined. Cursor resources XtNxxxCursor (xxx_cursor) added. Method query_geometry in QueryGeometry() added. FontFamily.h Defined all font resource names and classes within FontFamily.h. Include FontFamily.h in all modules which use this stuff. ------------------------------------------------------------------------------ Changes to version 6.0 ------------------------------------------------------------------------------ o patchlevel 4 - klin, Wed Aug 12 07:33:12 1992 AxisCoreP.h Bug in type of default_number_width fixed. Patch by Gustaf Neumann at 92/08/11 (neumann@dec4.wu-wien.ac.at, neumann@awiwuw11.bitnet). XYPlot.h XYPlotP.h XYPlot.c Added the new resources XtNxOffset (x_offset) and XtNyOffset (y_offset) and all needed stuff for resources and set values. - klin, Sat Aug 15 10:27:55 1992 *.h *.c All X stuff should go to X directories as pointed out by S. Beck (beck@qtp.ufl.edu). Therefore changed to . *.man All needed updates. FontFamilyP.h SPlot.c PlotterP.h Some typo fixes. Reported by S. Beck (beck@qtp.ufl.edu). PlotterPS.c AxisCore.c BarPlot.c LinePlot.c XYLinePlot.c Minor changes in PostScript output. Plotter.h PlotterP.h Plotter.c PlotterPS.c Added resources XtNslideCallback and XtNslideCursor and all needed stuff for this callback. Added resources XtNselectCallback and XtNselectCursor and all needed stuff for this callback. Added busy callback in PostScript output routines. Added reason item to callback data structs. Some more minor changes in callbacks.