1Release 5.2.3
2===================
3
4Bug Fixes
5---------
6Several minor bug fixes
7
8Release 5.2.2
9===================
10
11Bug Fixes
12---------
131) QwtSplineCurveFitter
14   Rounding to integers values removed
152) QwtPlot
16   initial size of 200x200
173) QwtPlotPrintFilter, QwtPlot::print
18   handling of background color in QwtPlot::print
194) QwtPlotPrintFilter
20   Problem with colored plot titles fixed
215) QwtPlotItem
22   Crash fixed, when changing the z order of attached items
236) QwtLinearScaleEngine, QwtLog10ScaleEngine
24   Several minor fixes
25
26Release 5.2.1
27===================
28
29Bug Fixes
30---------
311) Export declarations removed from qwt_valuelist.h to avoid
32   compiler errors with Qt 4.6 + certain compilers on Windows.
332) QwtScaleDraw
34   Wrong border dist hints for unregular scale divisions fixed
35   Layout calculation for the tick labels fixed.
36   The layout was wrong by 1 pixel for top/left/bottom axes.
37   On a left axis without a title the labels were sometimes cut off.
383) QwtPainter
39   Splits polylines for all pens to avoid a bottleneck of the
40   raster paint engine.
414) QwtScaleWidget
42   Calculation of the colorbar position fixed ( spacing/margin )
435) QwtPlotCurve
44   Wrong clipping rect fixed
456) QwtPicker
46   QwtPicker::setTrackerFont() fixed.
47   Recursion on the Mac, when constructing the rubberband fixed.
48   Workaround for a Qt3 bug added that is responsible for left aligning
49   all tracker texts to the canvas.
50
51Changes
52-------
531) Project files adopted for symbian
542) qwt.pro
55   CONFIG += ordered added for using make -j
56   CONFIG += silent added
57
58Release 5.2.0
59===================
60
61Changes
62-------
631) Ported to Qt 4.5.x
642) Scaling of non cosmetic pens (for printing to devices in high resolution)
653) Clipping of polygons for SVG rendering
664) QwtRect removed
67   use QwtClipper instead
685) QwtPlotRescaler
69   Introduced
706) QwtDoubleInterval
71   BorderMode introduced
727) QwtPlotCurve
73   Performance of incremental curve painting ( = draw(from, to) ) improved.
748) QwtLegendItem
75   setIdentfierMode renamed to setIdentifierMode
769) QwtPlotCanvas::replot() introduced
77   code from QwtPlot::replot shifted
7810)QwtPlot
79   drawCanvas(), updateAxes() changed from protected to public
8011)QwtScaleEngine
81   loMargin/hiMargin renamed to lowerMargin/upperMargin
8212)QwtScaleDiv
83   lBound/hBound renamed to lowerBound/upperBound
8413)QwtSpline
85   cofficientA/B/C introduced
8614)QwtDial
87   counter clockwise scales introduced
8815)QwtPlotMarker
89   Vertical text labels
9016)doc/qwt-5.2.0.qch added foe browsing the Qwt docs in the Qt assistant
91
92Bug Fixes
93---------
941) QwtLinearScaleEngine
95   Rounding problems fixed
962) Again some print layout problems fixed
973) QwtPlotScaleItem: 1 pixel offset fixed
984) QwtPlotSpectrogram, clipping of contour lines
99   against the bounding rect
1005) QwtPlotZoomer::setZoomStack for stacks with unlimited depth
1016) Printing of rotated tick labels
102
103
104Release 5.1.1
105===================
106
107Bug Fixes
108---------
1091) Several compiler incompatibilities fixed
1102) DBL_EPSILON removed
111   Using DBL_EPSILON in the calculations of the dials/sliders and the
112   scale engines leads to problems with the inaccuracy of floating points.
113   The behaviour has been reverted to 5.0.x.
1143) QwtSlider/QwtKnob
115   setScaleDraw() fixed.
1164) QwtRect
117   Pointless private declaration removed
118
119Release 5.1.0
120===================
121
122Changes
123-------
1241) QwtSymbol::copy introduced
125   Now it is possible to use derived symbol classes for curves
1262) QwtPlotScaleItem introduced
127   A new type of plot item for displaying axes on the canvas
1283) QwtClipper added
129   A collection of clipping algos
1304) Using DBL_EPSILON
131   This change allows smaller intervals for sliders/dials
1325) QwtPanner
133   setOrientation() added.
1346) QwtPlot
135   axisStepSize() added
136   clear is virtual now
1377) QwtPlotPrintFilter
138   PrintCanvasBackground splitted into PrintBackground, PrintFrameWithScales
1398) QwtPlotZoomer
140   setZoomStack() added
1419) Changes for the QwtPolar package
142   QwtLegendItemManager introduced
143   QwtMagnifier introduced
14410)Suffix rules added in qwtconfig.pri for different targets for
145   debug/release builds.
146
147Bug Fixes
148---------
1491. QwtAbstractScaleDraw::setAbstractScaleDraw
150   Reinitialization problem fixed
1512. QwtLegendItem
152   key event handlers fixed
1533. QwtPicker
154   solaris-cc compiler problem fixed
1554. Inaccurate mapping of scale to widget coordinates fixed
1565. QwtPlotCurve::draw
157   Updates for Qt 4.3 added
1586. QwtPlotLayout
159   AlignToCanvas layout calculation fixed
1607. QwtPlot::print
161   Workaround for a QPen initialization problem,
162   when printing to Pdf, added
1638. QwtText
164   Layout of rich text documents fixed
1659. Designer
166   Handling of QwtScaleWidget fixed
16710. realtime example
168   Qt::WA_PaintOutsidePaintEvent added, ScrollZoomer fixed
16911. Several others I have forgotten
170
171Release 5.0.2
172===================
173
174Bug Fixes
175---------
1761. QwtPlotCurve::Xfy curve type fixed
1772. Memory leak in QwtLegend fixed
1783. Vertical alignment of rich texts fixed
1794. Workaround for a Qt4 bug added, that produces horrible performance
180   when painting curves with a pen width > 1.
1815. Background for the tracker text of QwtPickers fixed.
182   Improved (faster + better rendered texts) implementation of
183   painting tracker texts, using capabilities of Qt >= 4.3.
1846. QwtArrowButton/QwtCounter: workaround for layout bug ( Qt < 4.3 )
185   of the Cleanlook style added.
1867. A couple of minor fixes
187
188Changes
189-------
1901. QSvgGenerator added to the bode example
191
192Release 5.0.1
193===================
194
195Changes
196-------
1971.  A couple of problems, when building Qwt fixed.
1982.  Displaying Rich Text with Qt 4.x fixed
199
200Release 5.0.0
201===================
202
203Platforms
204---------
205Support of Qt3 and Qt4. Qt2 is not supported any longer.
206
207Key features
208------------
2091.  Redesign of plot items. Makes it much easier to develop
210    individual items.
2112.  Redesign of the scale classes. All calculations are
212    collected in scale engines, where the application can
213    implement it´s own (f.e log2, or date scales). Now it´s
214    also possible to have individual and completely irregular scales
2153.  Redesign of the QwtText classes. The MathML renderer of
216    the Qt4 solutions package is embedded.
217    work for all expressions/situations.
2184.  New classes for navigating: QwtPanner, QwtMaginfier
2195.  Spectrogram/Contour plots  and other classes for displaying
220    raster data added.
221
222Changes
223-------
2245.0.0 is by far the release with the most changes in the history of Qwt
225- too many to make list.
226
227
228Release 4.2.0/0.4.2
229===================
230
231License
232--------
233A couple of exceptions to the LGPL with the intention to allow static
234linking with commercial applications. See COPYING.
235
236Key features:
237-------------
2381.  Designer plugin
2392.  Rich Text support ( f.e. E = m * c<sup>2</sup> ) added.
2403.  QwtDial class family added (QwtDial, QwtCompass, QwtAnalogClock, ...)
2414.  QwtPicker class family added. Includes QwtPlotZoomer, a complete
242    implementation of recursive zooming.
2435.  Device metrics independent printing of QwtPlot. (QPrinter::HighResolution)
2446.  QwtPlot::setCurveBrush(), QwtCurve::setBrush() added. The area
245    between curve and baseline will be filled with this brush.
2467.  Rotation of axis tick labels added. Very useful for axis with long
247    labels like time scales ...
2488.  Added a new abstract QwtData class to plot data from almost any type of
249    container class.
2509.  QwtDoublePoint, QwtDoubleSize, QwtDoubleRect double counterparts
251    for QPoint, QSize, QRect.
25210. First steps to support Qtopia. All examples can be compiled and started
253    in the qvfb emulator.
254
255
256Changes:
257---------
2581.  Rewrite of QwtLegend/QwtLegendItem (no QTable anymore)
2592.  Each plot item will be painted, even if one of the axis it is
260    attached to is disabled. (like in all other releases beside 0.4.1)
2613.  Code for double buffering moved to a new class QwtPaintBuffer.
262    Double buffering can be enabled/disabled now.
2634.  QwtPainter, QwtMetricsMap, QwtLayoutMetrics added
264    Hide paint device metrics dependencies.
2655.  Layout code rewritten and moved to a new class QwtPlotLayout
266    New layout options canvasMargin(), alignCanvasToScales()
2676.  QwtPlot: sizeHint() != minimumSizeHint()
2689.  Internal plot data are private again. A couple of get methods
269    added instead.
27010. canvas repaints triggered by paint events. Enables event filtering
27111. QwtPlot::drawCanvasItems added. In opposite to QwtPlot::drawCanvas
272    it is used by the printing code too.
27312. qwtMax, qwtMin, qwtInt mapped to QMAX, QMIN, qRound from qglobal.h
27413. operator= for plot item classes changed.
27514. readOnly property added for sliders.
27615. valid flag added for QwtDblRange
27716. QwtCounter wrap around policy: a counter under- or overflow sets
278    focus to the smallest up/down button and disables counting.
279    A space bar keypress release event re-enables counting.
28017. QwtPushButton added. A class that adds rich text and alignments
281    features to QPushButton, like they are used in QLabel
28218. Clipped painting code moved from QwtCurve to QwtPainter/QwtRect
28319. Canvas cache added to optimize trivial repaints.
28420. QwtPlot::drawCurve added for incremental curve data
28521. QwtSliderBase, readOnly, isValid added
28622. Added filtering of the colors of the title and scales to QwtPrintFilter.
28723. Support of QT_NO_CAST_ASII and QT_NO_COMPAT added
28824. Batch file added for generating Visual Studio project files
28925. QwtPlotCurve, QwtPlotMarker, QwtPlotGrid: more methods public
29026. QwtPlot::setLegendPosition added
29127. A lot of changes I don't remember, ... sorry.
292
293Bugfixes:
294---------
2951.  Autodetection of painter redirection. QPixmap::grabWidget() works
296    with Qwt Widgets again.
2972.  QwtSlider: Rounding double->int conversions instead of simple casts.
2983.  Bad additional line, connected to the first curve point, when zooming
299    deep, fixed.
3004.  QwtMarker: Painting of symbols with width != height fixed
3015.  QwtPlot::plotMouseXXX/canvasMap pixel coordinates synced.
302    Now both include the canvas frame.
3036.  Layout fixed for QwtScaleDraws without tick labels
3048.  Tab focus chains fixed, focus indications added.
3059.  Support QwtAutoScale::Inverted when autoScale is off also.
30610. Keyboard control, focus indications added.
30711. Improved QStyle awareness.
30812. Printing of plots with disabled axes
309
310Examples
311--------
3121.  New example linux/cpustat added. Runs also on non linux boxes
313    with dummy values. Beside showing a couple of features that
314    are new with 0.4.1 and 0.4.2, it shows how to extend and customize
315    a QwtPlots.
3162.  Added new example event_filter to demonstrate event filtering.
317    This example shows how to add additional controls to the scales,
318    how to translate mouse clicks on the scales into signals and
319    how to move points on the canvas.
3203.  realtime example shows how to use scrollbars when zooming
321
322Release 0.4.1
323============
324
325Changes:
326---------
3271.  Platform independent project files. makefiles directory removed.
3282.  RPM spec file template added.
3293.  __declspec formalism added for Win32 DLLs. Requires
330    'DEFINES += QWT_DLL' in the .pro file.
3314.  QString used for visible texts.
3325.  Code for error curves removed. These type of features should be
333    implemented in derived curve classes.
3346.  A lot of Qt 1.2 related code removed/replaced.
3357.  QwtColorFilter, QwtPixFrame removed. QwtPlotPixFrame renamed
336    to QwtPlotCanvas.
3378.  qmodules.h aware. Skips QwtLegend in case of !QT_MODULE_TABLE
3389.  All Widgets including QwtPlot optimized to reduce flicker
339    during resize/repaint.
34010. QwtPlot curves/markers can be disabled/enabled to hide/show individual
341    curves without removing the curves from the plot.
34211. Internal maps removed from QwtCurve. QwtCurve::setMap, QwtCurve::setRect,
343    QwtCurve::setRange removed.
344
345Feature additions:
346------------------
3471. Printing
348   QwtPlot::print prints to any type of QPaintDevice now.
349   Hardcoded printer attributes margin, creator and document title have
350   been removed and must/can be set by the applications now.
351   Printing of background and legends added. QwtColorFilter replaced
352   by QwtPlotPrintFilter.
3532. Layout
354   Many layout fixes and additions.  Now all Widgets behave well in
355   QLayouts and provide sensible sizeHints. QwtPlot::setMargin(int) added.
356   Fieldwidth added for QwtPlot::setAxisFormat for application that need
357   range independent width. Title and axis title are Qt:Alignment aware.
358   Qt::WordBreak or multiline titles are possible.
3593. Legend
360   En/Disabling of single curves in the legend added.
361   QwtPlot::setAutoLegend added.
3624. Extensibility
363   QwtPlot::insertCurve + QwtPlot::insertMarker added. Now derived
364   classes of QwtPlotCurve and QwtPlotMarker can be added. Virtual
365   methods provided by QwtPlotCurve for sub-classing.
366   QwtScale::setScaleDraw + QwtPlot::setAxisScaleDraw + some virtual
367   methods for QwtScaleDraw added. Application can implement individual
368   axis labels now.
3695. Sliders
370   QWheelEvent added. The MouseWheel stepsize is controlled by the
371   Scroll Page Size. QwtWheel::setWheelWidth added. QwtKnob::setSymbol,
372   QwtKnob::symbol added.
373
374Bugfixes:
375---------
3761. Workaround for spontanous curves resulting from overruns
377   when zooming too deep.
3782. Wrong QColorGroup::ColorRole for background colors fixed.
379   Necessary for several non default QStyles.
3803. QwtWheel fixed for vertical wheels. Better color support.
3814. QwtSlider fixed.
3825. Many forgotten others
383
384Release 0.4.0
385============
386
387Bugfixes:
388---------
3891. A few occurences of the boolean literal \c false were changed into macro
390   \c FALSE for cross compiler compatibility.
3912. A few local variables in member functions were renamed to suppress
392   warnings issued by really picky compilers about global/class variables
393   being hidden.
3943. In qwt_legend.h, a fully qualified name was used in a class declaration.
395   The HPUX compiler chokes on this (and it's ugly), so it was fixed.
3964. Macro M_2PI is now only defined is this hasn't already been done by the
397   system's clib.
398
399Feature additions:
400------------------
4011. Qwt now works with Qt3.0. In order to achieve this, QwtLegend now no
402   longer derives from QTableView, but from QTable. This seems to have had
403   quite a few consequences. Kudo's to Uwe Rathmann for uploading this nice
404   fix to the CVS tree.
4052. Getters for a plot's title and title font have been added.
406
407Release 0.3.0
408============
409
410License:
411--------
4121. The license has changed from GPL to LGPL.
413
414Bugfixes:
415---------
4161. The makefiles for win32 caused object files to have extension .o instead of
417   .obj. The 'propagate' file was changed to fix this, using tmake's target
418   platform flag.
4192. There were problems with rint() on win32 platforms. rint() is a BSD call,
420   not even available on all unices. All calls to rint(x) have been replaced
421   by floor(x+.5).
4223. Some static class data members were initialized with the value of other
423   static class data members (from Qt). This caused programs depend on the
424   initialization order of class members. This is now fixed by replacing the
425   static properties by static signleton factories.
4264. When a plot was zoomed and then printed, curves and markers laying outside
427   the plot's scale were still printed. The print() function now uses clipping.
428
429Feature additions:
430------------------
4311. Multi-line plot titles are now supported: the PostScript document name is
432   not the plot title, with "\n" characters replaced by "--". Geometry
433   management has been changed to support multi-line titles.
4342. In the mailinglist, there were often feature requests for features that
435   were in fact implemented, but not available through QwtPlot's API. Many
436   private members have been made protected or even public, to give users
437   more control. This is poor design, but Qwt will be refactored anyway.
4383. Qwt always displayed floats with 5 digits. This was insufficient for many
439   applications. QwtPlot, QwtScale, QwtAutoScale got some methods to set the
440   label format. This is a printf like format for the numbers at the scales,
441   consisting of 'f' and a precision, or 'g' and the significance.
442
443Build system:
444-------------
4451. The 'makefiles' directory was removed from the cvs tree, and is now only
446   generated for releases. CVS users should have tmake installed, to generate
447   the makefiles themselves.
4482. The 'examples' directory now uses tmake's 'subdirs' template, to iterate
449   over all subdirectories and build all examples with one command. There was
450   allready a makefile for this, but now the process is automated by tmake.
4513. Under unix, the library now gets a proper version number. Current version
452   is 0.3.0.
453
454Documentation:
455--------------
4561. All documentation is converted to the Doxygen documentation system. The
457   release contains two settings files, 'Doxygen' and 'Doxygen.users',
458   generating a developer's and user's manual, respectively.
459