4
Updated for Qt 4.5 + some minor bug fixes
11
1) Several compiler incompatibilities fixed
12
2) DBL_EPSILON removed
13
Using DBL_EPSILON in the calculations of the dials/sliders and the
14
scale engines leads to problems with the inaccuracy of floating points.
15
The behaviour has been reverted to 5.0.x.
19
Pointless private declaration removed
26
1) QwtSymbol::copy introduced
27
Now it is possible to use derived symbol classes for curves
28
2) QwtPlotScaleItem introduced
29
A new type of plot item for displaying axes on the canvas
31
A collection of clipping algos
33
This change allows smaller intervals for sliders/dials
35
setOrientation() added.
40
PrintCanvasBackground splitted into PrintBackground, PrintFrameWithScales
43
9) Changes for the QwtPolar package
44
QwtLegendItemManager introduced
45
QwtMagnifier introduced
46
10)Suffix rules added in qwtconfig.pri for different targets for
51
1. QwtAbstractScaleDraw::setAbstractScaleDraw
52
Reinitialization problem fixed
54
key event handlers fixed
56
solaris-cc compiler problem fixed
57
4. Inaccurate mapping of scale to widget coordinates fixed
59
Updates for Qt 4.3 added
61
AlignToCanvas layout calculation fixed
63
Workaround for a QPen initialization problem,
64
when printing to Pdf, added
66
Layout of rich text documents fixed
68
Handling of QwtScaleWidget fixed
70
Qt::WA_PaintOutsidePaintEvent added, ScrollZoomer fixed
71
11. Several others I have forgotten
78
1. QwtPlotCurve::Xfy curve type fixed
79
2. Memory leak in QwtLegend fixed
80
3. Vertical alignment of rich texts fixed
81
4. Workaround for a Qt4 bug added, that produces horrible performance
82
when painting curves with a pen width > 1.
83
5. Background for the tracker text of QwtPickers fixed.
84
Improved (faster + better rendered texts) implementation of
85
painting tracker texts, using capabilities of Qt >= 4.3.
86
6. QwtArrowButton/QwtCounter: workaround for layout bug ( Qt < 4.3 )
87
of the Cleanlook style added.
88
7. A couple of minor fixes
92
1. QSvgGenerator added to the bode example
99
1. A couple of problems, when building Qwt fixed.
100
2. Displaying Rich Text with Qt 4.x fixed
107
Support of Qt3 and Qt4. Qt2 is not supported any longer.
111
1. Redesign of plot items. Makes it much easier to develop
113
2. Redesign of the scale classes. All calculations are
114
collected in scale engines, where the application can
115
implement it´s own (f.e log2, or date scales). Now it´s
116
also possible to have individual and completely irregular scales
117
3. Redesign of the QwtText classes. The MathML renderer of
118
the Qt4 solutions package is embedded.
119
work for all expressions/situations.
120
4. New classes for navigating: QwtPanner, QwtMaginfier
121
5. Spectrogram/Contour plots and other classes for displaying
126
5.0.0 is by far the release with the most changes in the history of Qwt
127
- too many to make list.
135
A couple of exceptions to the LGPL with the intention to allow static
136
linking with commercial applications. See COPYING.
141
2. Rich Text support ( f.e. E = m * c<sup>2</sup> ) added.
142
3. QwtDial class family added (QwtDial, QwtCompass, QwtAnalogClock, ...)
143
4. QwtPicker class family added. Includes QwtPlotZoomer, a complete
144
implementation of recursive zooming.
145
5. Device metrics independent printing of QwtPlot. (QPrinter::HighResolution)
146
6. QwtPlot::setCurveBrush(), QwtCurve::setBrush() added. The area
147
between curve and baseline will be filled with this brush.
148
7. Rotation of axis tick labels added. Very useful for axis with long
149
labels like time scales ...
150
8. Added a new abstract QwtData class to plot data from almost any type of
152
9. QwtDoublePoint, QwtDoubleSize, QwtDoubleRect double counterparts
153
for QPoint, QSize, QRect.
154
10. First steps to support Qtopia. All examples can be compiled and started
155
in the qvfb emulator.
160
1. Rewrite of QwtLegend/QwtLegendItem (no QTable anymore)
161
2. Each plot item will be painted, even if one of the axis it is
162
attached to is disabled. (like in all other releases beside 0.4.1)
163
3. Code for double buffering moved to a new class QwtPaintBuffer.
164
Double buffering can be enabled/disabled now.
165
4. QwtPainter, QwtMetricsMap, QwtLayoutMetrics added
166
Hide paint device metrics dependencies.
167
5. Layout code rewritten and moved to a new class QwtPlotLayout
168
New layout options canvasMargin(), alignCanvasToScales()
169
6. QwtPlot: sizeHint() != minimumSizeHint()
170
9. Internal plot data are private again. A couple of get methods
172
10. canvas repaints triggered by paint events. Enables event filtering
173
11. QwtPlot::drawCanvasItems added. In opposite to QwtPlot::drawCanvas
174
it is used by the printing code too.
175
12. qwtMax, qwtMin, qwtInt mapped to QMAX, QMIN, qRound from qglobal.h
176
13. operator= for plot item classes changed.
177
14. readOnly property added for sliders.
178
15. valid flag added for QwtDblRange
179
16. QwtCounter wrap around policy: a counter under- or overflow sets
180
focus to the smallest up/down button and disables counting.
181
A space bar keypress release event re-enables counting.
182
17. QwtPushButton added. A class that adds rich text and alignments
183
features to QPushButton, like they are used in QLabel
184
18. Clipped painting code moved from QwtCurve to QwtPainter/QwtRect
185
19. Canvas cache added to optimize trivial repaints.
186
20. QwtPlot::drawCurve added for incremental curve data
187
21. QwtSliderBase, readOnly, isValid added
188
22. Added filtering of the colors of the title and scales to QwtPrintFilter.
189
23. Support of QT_NO_CAST_ASII and QT_NO_COMPAT added
190
24. Batch file added for generating Visual Studio project files
191
25. QwtPlotCurve, QwtPlotMarker, QwtPlotGrid: more methods public
192
26. QwtPlot::setLegendPosition added
193
27. A lot of changes I don't remember, ... sorry.
197
1. Autodetection of painter redirection. QPixmap::grabWidget() works
198
with Qwt Widgets again.
199
2. QwtSlider: Rounding double->int conversions instead of simple casts.
200
3. Bad additional line, connected to the first curve point, when zooming
202
4. QwtMarker: Painting of symbols with width != height fixed
203
5. QwtPlot::plotMouseXXX/canvasMap pixel coordinates synced.
204
Now both include the canvas frame.
205
6. Layout fixed for QwtScaleDraws without tick labels
206
8. Tab focus chains fixed, focus indications added.
207
9. Support QwtAutoScale::Inverted when autoScale is off also.
208
10. Keyboard control, focus indications added.
209
11. Improved QStyle awareness.
210
12. Printing of plots with disabled axes
214
1. New example linux/cpustat added. Runs also on non linux boxes
215
with dummy values. Beside showing a couple of features that
216
are new with 0.4.1 and 0.4.2, it shows how to extend and customize
218
2. Added new example event_filter to demonstrate event filtering.
219
This example shows how to add additional controls to the scales,
220
how to translate mouse clicks on the scales into signals and
221
how to move points on the canvas.
222
3. realtime example shows how to use scrollbars when zooming
229
1. Platform independent project files. makefiles directory removed.
230
2. RPM spec file template added.
231
3. __declspec formalism added for Win32 DLLs. Requires
232
'DEFINES += QWT_DLL' in the .pro file.
233
4. QString used for visible texts.
234
5. Code for error curves removed. These type of features should be
235
implemented in derived curve classes.
236
6. A lot of Qt 1.2 related code removed/replaced.
237
7. QwtColorFilter, QwtPixFrame removed. QwtPlotPixFrame renamed
239
8. qmodules.h aware. Skips QwtLegend in case of !QT_MODULE_TABLE
240
9. All Widgets including QwtPlot optimized to reduce flicker
241
during resize/repaint.
242
10. QwtPlot curves/markers can be disabled/enabled to hide/show individual
243
curves without removing the curves from the plot.
244
11. Internal maps removed from QwtCurve. QwtCurve::setMap, QwtCurve::setRect,
245
QwtCurve::setRange removed.
250
QwtPlot::print prints to any type of QPaintDevice now.
251
Hardcoded printer attributes margin, creator and document title have
252
been removed and must/can be set by the applications now.
253
Printing of background and legends added. QwtColorFilter replaced
254
by QwtPlotPrintFilter.
256
Many layout fixes and additions. Now all Widgets behave well in
257
QLayouts and provide sensible sizeHints. QwtPlot::setMargin(int) added.
258
Fieldwidth added for QwtPlot::setAxisFormat for application that need
259
range independent width. Title and axis title are Qt:Alignment aware.
260
Qt::WordBreak or multiline titles are possible.
262
En/Disabling of single curves in the legend added.
263
QwtPlot::setAutoLegend added.
265
QwtPlot::insertCurve + QwtPlot::insertMarker added. Now derived
266
classes of QwtPlotCurve and QwtPlotMarker can be added. Virtual
267
methods provided by QwtPlotCurve for sub-classing.
268
QwtScale::setScaleDraw + QwtPlot::setAxisScaleDraw + some virtual
269
methods for QwtScaleDraw added. Application can implement individual
272
QWheelEvent added. The MouseWheel stepsize is controlled by the
273
Scroll Page Size. QwtWheel::setWheelWidth added. QwtKnob::setSymbol,
274
QwtKnob::symbol added.
278
1. Workaround for spontanous curves resulting from overruns
279
when zooming too deep.
280
2. Wrong QColorGroup::ColorRole for background colors fixed.
281
Necessary for several non default QStyles.
282
3. QwtWheel fixed for vertical wheels. Better color support.
284
5. Many forgotten others
291
1. A few occurences of the boolean literal \c false were changed into macro
292
\c FALSE for cross compiler compatibility.
293
2. A few local variables in member functions were renamed to suppress
294
warnings issued by really picky compilers about global/class variables
296
3. In qwt_legend.h, a fully qualified name was used in a class declaration.
297
The HPUX compiler chokes on this (and it's ugly), so it was fixed.
298
4. Macro M_2PI is now only defined is this hasn't already been done by the
303
1. Qwt now works with Qt3.0. In order to achieve this, QwtLegend now no
304
longer derives from QTableView, but from QTable. This seems to have had
305
quite a few consequences. Kudo's to Uwe Rathmann for uploading this nice
307
2. Getters for a plot's title and title font have been added.
314
1. The license has changed from GPL to LGPL.
318
1. The makefiles for win32 caused object files to have extension .o instead of
319
.obj. The 'propagate' file was changed to fix this, using tmake's target
321
2. There were problems with rint() on win32 platforms. rint() is a BSD call,
322
not even available on all unices. All calls to rint(x) have been replaced
324
3. Some static class data members were initialized with the value of other
325
static class data members (from Qt). This caused programs depend on the
326
initialization order of class members. This is now fixed by replacing the
327
static properties by static signleton factories.
328
4. When a plot was zoomed and then printed, curves and markers laying outside
329
the plot's scale were still printed. The print() function now uses clipping.
333
1. Multi-line plot titles are now supported: the PostScript document name is
334
not the plot title, with "\n" characters replaced by "--". Geometry
335
management has been changed to support multi-line titles.
336
2. In the mailinglist, there were often feature requests for features that
337
were in fact implemented, but not available through QwtPlot's API. Many
338
private members have been made protected or even public, to give users
339
more control. This is poor design, but Qwt will be refactored anyway.
340
3. Qwt always displayed floats with 5 digits. This was insufficient for many
341
applications. QwtPlot, QwtScale, QwtAutoScale got some methods to set the
342
label format. This is a printf like format for the numbers at the scales,
343
consisting of 'f' and a precision, or 'g' and the significance.
347
1. The 'makefiles' directory was removed from the cvs tree, and is now only
348
generated for releases. CVS users should have tmake installed, to generate
349
the makefiles themselves.
350
2. The 'examples' directory now uses tmake's 'subdirs' template, to iterate
351
over all subdirectories and build all examples with one command. There was
352
allready a makefile for this, but now the process is automated by tmake.
353
3. Under unix, the library now gets a proper version number. Current version
358
1. All documentation is converted to the Doxygen documentation system. The
359
release contains two settings files, 'Doxygen' and 'Doxygen.users',
360
generating a developer's and user's manual, respectively.