0.9.10.0 14 Nov 2006
Release manager: anmar
Codebase license changed to a 3-clause-BSD license (as approved by Matt Howlett). Read license.txt
or the header of any source file for full text).
Folder layout reorganization.
Dropped VS 2003 project files and added VS 2005, MonoDevelop, NAnt and Makefile.
Added NPlot C++.Net demo application.
Fixed bugs [SF bug 1594731], [SF bug 1594664], [SF bug 1590992], [SF bug 1584460] and [SF bug 1469760]
0.9.9.2 28 Feb 2006
Fixed bug in DateTimeAxis.WorldTickPositions_FirstPass reported by Pawel Konieczny.
Fixed a bug in WorldTickPositions_SecondPass - thanks to Pawel Konieczny.
Fixed a problem in Axis.WorldToPhysical - Thanks to Pawel Konieczny again for this one.
Adding TradingDateTimeAxis contributed by Pawel Konieczny.
Made changes to DateTimeAxis to allow TradingDateTimeAxis to work.
Added Line in legend for point plot in appropriate case (thanks to Pawel Konieczny).
Pawel Konieczny: Fixing suggested axes in BarPlot, which did not take into account
all Y points originally. Made bar width configurable
Pawel Konieczny: A small fix for vertical and horizontal guidelines, to remove
their remnants from the plot. The remnants can be left over when the
mouse move is fast such that the interaction does not get enough move
even to remove itself. This fix does not really solve all problems with
guidelines; for instance, try the following: run a demo application with
a plot with a guideline, cover part of the plot by a window of another
program, then hover the mouse over the not obscured area of the plot.
Pawel Konieczny: A fix in CandlePlot.CalculatePhysicalSeparation(). The
original code bombs with a null pointer exception when there are exactly
three points.
Pawel Konieczny: fixed bugs in horizontal and vertical drag interactions when
the axis is non-linear. It fixes also a small bug for a linear axes,
which led to a slight and steady zoom-in process when dragging the plot
somewhat longer.
Pawel Konieczny: fixed bugs in axis drag interaction for non-linear axes.
Pawel Konieczny: MouseWheelZoom (which actually does scroll) adapted to
non-linear axes. Additionally, Interaction.MouseWheelZoom improved to do
zoom and handle Y axis too.
Pawel Konieczny: Performance enhancements to CandlePlot
Pawel Konieczny: Performance enhancements to LinePlot
Pawel Konieczny: Performance enhancements to Transform2D
Pawel Konieczny: Performance enhancements to SequenceAdapter
Pawel Konieczny: Performance enhancements to PointPlot
Pawel Konieczny: DataGetter_DoublesArray added to AdapeterUtils
Pawel Konieczny: Performance enhancements to Windows.PlotSurface2D and
contained classes.
Added comments to uncommented public methods.
Pawel Konieczny: This one makes HorizontalRangeSelection forgiving accidental
clicks. Originally, a single click on a plot area with
HorizontalRangeSelection active would immediately zoom into an
indefinitely small zoom window. The change makes the interaction to
ignore very small selections, that may be made accidentally (I suppose
nobody would try to make deliberately such small selections, simply
because it is very hard to make them accurately with a mouse).
Matt: Added a property to set minimum select width in pixels in
HorizontalRangeSelection.
Pawel Konieczny: This one allows changing list of interactions on MouseUp.
Originally, on MouseUp, the list of the registered interactions is
looped through to dispatch the event. However, since the list is being
looped, it cannot be modified during that process (otherwise an
exception occurs).
Pawel Konieczny: I have added handling of "MouseLeave" to the list of events
that interaction may react to. This fine tunes the problem of "cleaning
up" the guidelines (not unconditionally anymore), and is used in some
new interactions I will send you later.
Pawel Konieczny: I have disable the check whether the candle width is not
zero. The effect was that when the amount of data displayed increases
(e.g. zoom out) and the candles got thinner and thinner, suddenly they
become thick again, overlapping each other. It may be even so, that by
scrolling left or right, due to different rounding errors, they become
thin again, and then again thick. I don't think it is useful to
prohibit candles of zero width (there always will be the vertical line
visible), since in such cases the distance between them is so small that
they form an almost contiguous fill region.
Pawel Konieczny: A few changes to ImagePlot. The point here is that the
ImagePlot by default uses the gradient to span from the minimum value to
maximum value. This is sometimes useful, but sometimes not. For
instance, when the image plot is used to show a sort of a topographic
map, where each color should correspond to some absolute value. The
changes here allow to explicitly set the values corresponding to the
gradient boundaries. Values outside the boundaries are mapped to the
boundary colors (that functionality was already present in the
gradient code, except that some debug check was throwing an exception
when it happened - I had to remove that too). For instance, values of
0.0 and all negatives could be mapped to black. I have also added a
possibility of a "void" color, which is used for NaN values. I use NaN
values to indicate that no data is present for a given point.
Pawel Konieczny: A small patch in drawing a shadow of the legend box. In the
original NPlot, the shadow is not really a shadow - it is a light gray
opaque rectangle box.
Small fix from Rosco to allow zero height bars in BarPlot.
Added data clipping speed up code to StepPlot (similar to code in Line, Point
and CandlePlot).
Added SmallestAllowedRange property to HorizontalRangeSelection interaction.
0.9.9.1 20 Feb 2006 (not released).
Fixed bug with Linear Axis Offset and Scale properties which caused incorrect display.
0.9.9 22 July 2005
Added LegendZOrder to PlotSurface2D.
Added PhysicalSpacingMin to LabelAxis
Added RemoveInteraction method to Windows.PlotSurface2D. Thanks to M�ns Erlandson.
Fixed bug in Windows.PlotSurface2D.DoMouseMove reported by M�ns Erlandson.
Added StepGradient with RGB and Rainbow types.
Ivan Ivanov fixed a bug in the Web Control when url contains params.
Image stored in session variable is now explicitly deleted (known issue, but thanks
to Ivan Ivanov for pointing this out also).
Fixed up designer attributes in web control.
Other (substantial) tweaking of web control. Note that this will eventually use the
DynamicImage control in ASP.NET 2.0, this control will be much more efficient.
Revised attributes (Bindable, Browsable, Description, Category) on relevant public
properties on Windows.PlotSurface2D.
Rosco Hill pointed out a bug in RefreshZOrdering.
Spent quite a lot of time designing MultiLinePlot and MultiSequenceAdapter classes
and supporting functions in AdapterUtils. There are issues remaining. I have
left this out of pre 1.0 releases.
Now prints title in centre of plot if there is no data.
Took StringFormat construction out of PlotSurface2D.Draw method and put in
constructor (to avoid unnecessarily creating this many times).
Removed PlotSurface3D and all related.
Removed PlotSurface2Dnew and all related.
Removed BubblePlot.cs
Removed PLotSurface and all related.
Removed StartStep and all related.
Removed MathExtra from Utils (3D calculations)
Finished commenting AdapterUtils
Filled in missing comments from other classes as well.
Deleted ErrorHandler class (wasn't a good move that one...).
Added NPlotException class - all NPlot exceptions throw of this type.
Added quick fix from Rosco Hill for fixing weird behaviour when Legend is wider
than plotting surface.
Changed ToBrowser method in Bitmap.PlotSurface2D to ToStream and to take image