diff -Nru phyxcalc-3rev200/debian/changelog phyxcalc-3rev200/debian/changelog --- phyxcalc-3rev200/debian/changelog 2016-03-31 14:33:05.000000000 +0000 +++ phyxcalc-3rev200/debian/changelog 2016-04-02 00:59:47.000000000 +0000 @@ -1,4 +1,11 @@ -phyxcalc (3rev200-3~xenial1) xenial; urgency=low +phyxcalc (3rev200-3~xenial2) xenial; urgency=low + + * Build a static qwt library to link phyxcalc against (the version from the + repositories is incompatible) + + -- Marshall Banana Sat, 02 Apr 2016 00:58:12 +0000 + +phyxcalc (3rev200-3~trusty1) trusty; urgency=low * Change copyright year diff -Nru phyxcalc-3rev200/debian/control phyxcalc-3rev200/debian/control --- phyxcalc-3rev200/debian/control 2014-08-27 19:45:00.000000000 +0000 +++ phyxcalc-3rev200/debian/control 2016-04-02 01:00:20.000000000 +0000 @@ -5,8 +5,7 @@ debhelper (>= 9), imagemagick, libboost-dev, - libqt4-dev, - libqwt-dev + libqt4-dev Standards-Version: 3.9.5 Section: math Homepage: http://sourceforge.net/projects/phyxcalc diff -Nru phyxcalc-3rev200/debian/copyright phyxcalc-3rev200/debian/copyright --- phyxcalc-3rev200/debian/copyright 2014-07-05 09:53:55.000000000 +0000 +++ phyxcalc-3rev200/debian/copyright 2016-04-02 01:14:45.000000000 +0000 @@ -3,21 +3,8 @@ Source: http://sourceforge.net/projects/phyxcalc/ Files: * -Copyright: - 2011-2012 Alexander Rössler - 2011 Christian Schirm -License: GPL-3+ - -Files: debian/* -Copyright: - 2014 djcj -License: GPL-3+ - -Files: debian/make-icons.sh -Copyright: - 2014 djcj -License: MIT - +Copyright: 2011-2012 Alexander Rössler + 2011 Christian Schirm License: GPL-3+ This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -35,6 +22,66 @@ On Debian systems, the complete text of the GNU General Public License version 3 can be found in "/usr/share/common-licenses/GPL-3". +Files: qwt_6.0.0.orig.tar.bz2 +Copyright: 1997 Josef Wilgen + 2002-2011 Uwe Rathmann +License: LGPL-2.1+ with exceptions + Qwt License + Version 1.0, January 1, 2003 + . + The Qwt library and included programs are provided under the terms + of the GNU LESSER GENERAL PUBLIC LICENSE (LGPL) with the following + exceptions: + . + 1. Widgets that are subclassed from Qwt widgets do not + constitute a derivative work. + . + 2. Static linking of applications and widgets to the + Qwt library does not constitute a derivative work + and does not require the author to provide source + code for the application or widget, use the shared + Qwt libraries, or link their applications or + widgets against a user-supplied version of Qwt. + . + If you link the application or widget to a modified + version of Qwt, then the changes to Qwt must be + provided under the terms of the LGPL in sections + 1, 2, and 4. + . + 3. You do not have to provide a copy of the Qwt license + with programs that are linked to the Qwt library, nor + do you have to identify the Qwt license in your + program or documentation as required by section 6 + of the LGPL. + . + . + However, programs must still identify their use of Qwt. + The following example statement can be included in user + documentation to satisfy this requirement: + . + [program/widget] is based in part on the work of + the Qwt project (http://qwt.sf.net). + . + ---------------------------------------------------------------------- + . + This package is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + . + This package is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + . + You should have received a copy of the GNU General Public License + along with this program. If not, see . + . + On Debian systems, the complete text of the GNU Lesser General + Public License can be found in "/usr/share/common-licenses/LGPL-2.1". + +Files: debian/* +Copyright: 2014, 2016 djcj License: MIT Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff -Nru phyxcalc-3rev200/debian/make-icons.sh phyxcalc-3rev200/debian/make-icons.sh --- phyxcalc-3rev200/debian/make-icons.sh 2014-08-14 10:43:41.000000000 +0000 +++ phyxcalc-3rev200/debian/make-icons.sh 2016-02-13 01:36:55.000000000 +0000 @@ -3,11 +3,11 @@ # Create an X11 icon set from a single image file. # Usage: make-icon.sh [] -# Last revision : (2014-06-04 11:40) +# Last revision : 2015-04-10 # Requires: librsvg2-bin imagemagick -# Copyright (c) 2014, djcj +# Copyright (c) 2014-2015, djcj # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal @@ -31,7 +31,9 @@ input="$1" output1=$(basename "$1") output="${output1%.*}" -tmp="$output1"_tmp.png +tmpstring=`tempfile` +rm $tmpstring +tmp="$tmpstring-${output1}.png" if [ -z "$1" ] ; then echo "Usage: $0 []" @@ -53,27 +55,31 @@ ## Check if input is an SVG if [ "${input##*.}" = "svg" ] || [ "${input##*.}" = "SVG" ] ; then - svgdir=$destdir/icons/hicolor/scalable/apps + svgdir="$destdir/icons/hicolor/scalable/apps" echo "install SVG" - # install SVG into hicolor/scalable/apps - install -c -D -m644 "$input" $svgdir/"$output1" + # install SVG into hicolor/scalable/apps + install -c -D -m644 "$input" "$svgdir/$output1" + + # compress SVG + gzip -f9 "$svgdir/$output1" + mv "$svgdir/$output1.gz" "$svgdir/$output.svgz" # Create temporary input PNG file - rsvg-convert "$input" -o $tmp - input=$tmp + rsvg-convert "$input" -o "$tmp" + input="$tmp" fi ## Create XPM -pixmaps=$destdir/pixmaps -mkdir -p $pixmaps +pixmaps="$destdir/pixmaps" +mkdir -p "$pixmaps" echo "create pixmap" -convert "$input" -filter Lanczos -resize 32x32 $pixmaps/"$output".xpm +convert "$input" -filter Lanczos -resize 32x32 "$pixmaps/$output.xpm" ## Create PNGs -for n in 16 24 32 48 64 96 128 256 512 +for n in 16 22 24 32 48 64 96 128 256 512 do w=$(identify -format "%w" "$input") h=$(identify -format "%h" "$input") @@ -85,13 +91,13 @@ fi if [ $w -ge $n ] ; then - icondestdir=$destdir/icons/hicolor/${n}x${n}/apps - mkdir -p $icondestdir + icondestdir="$destdir/icons/hicolor/${n}x${n}/apps" + mkdir -p "$icondestdir" echo "create hicolor ${n}x${n}" - convert "$input" -filter Lanczos -resize ${n}x${n} $icondestdir/"$output".png + convert "$input" -filter Lanczos -resize ${n}x${n} "$icondestdir/$output.png" fi done -if [ -f $tmp ] ; then - rm $tmp -fi \ No newline at end of file +if [ -f "$tmp" ] ; then + rm "$tmp" +fi diff -Nru phyxcalc-3rev200/debian/patches/local-qwt-lib.patch phyxcalc-3rev200/debian/patches/local-qwt-lib.patch --- phyxcalc-3rev200/debian/patches/local-qwt-lib.patch 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/debian/patches/local-qwt-lib.patch 2016-04-02 01:19:47.000000000 +0000 @@ -0,0 +1,18 @@ +--- a/PhyxCalc.pro ++++ b/PhyxCalc.pro +@@ -47,13 +47,10 @@ + } + + linux-g++ | linux-g++-64 | linux-g++-32 { +- INCLUDEPATH += /usr/include/qwt5 \ #openSUSE +- /usr/include/qwt6 \ #openSUSE +- /usr/include/qwt \ #Fedora +- /usr/include/qwt-qt4 #ubuntu ++ INCLUDEPATH += qwt-6.0.0/src + } + +-LIBS += -lqwt ++LIBS += qwt-6.0.0/lib/libqwt.a + + SOURCES += main.cpp\ + mainwindow.cpp \ diff -Nru phyxcalc-3rev200/debian/patches/series phyxcalc-3rev200/debian/patches/series --- phyxcalc-3rev200/debian/patches/series 2014-08-27 19:41:45.000000000 +0000 +++ phyxcalc-3rev200/debian/patches/series 2016-04-02 01:00:07.000000000 +0000 @@ -1,3 +1,4 @@ set-correct-revision-number.patch set-copyright-year.patch fixed-a-bug-prefixes-for-compounds-with-powers-greater-than-1.patch +local-qwt-lib.patch diff -Nru phyxcalc-3rev200/debian/rules phyxcalc-3rev200/debian/rules --- phyxcalc-3rev200/debian/rules 2014-07-05 09:50:24.000000000 +0000 +++ phyxcalc-3rev200/debian/rules 2016-04-02 01:27:22.000000000 +0000 @@ -4,12 +4,19 @@ %: dh ${@} --parallel +override_dh_auto_clean: + dh_auto_clean + rm -rf qwt-6.0.0 converted_icons + +override_dh_auto_configure: + tar xf qwt_6.0.0.orig.tar.bz2 + dh_auto_configure -Dqwt-6.0.0/src + dh_auto_configure + override_dh_auto_build: + dh_auto_build -Dqwt-6.0.0/src -- staticlib dh_auto_build - $(CURDIR)/debian/make-icons.sh images/PhyxCalc.png + debian/make-icons.sh images/PhyxCalc.png override_dh_auto_install: - # will be handled by dh_install -override_dh_builddeb: - dh_builddeb -- -Zxz -z9 diff -Nru phyxcalc-3rev200/debian/source/include-binaries phyxcalc-3rev200/debian/source/include-binaries --- phyxcalc-3rev200/debian/source/include-binaries 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/debian/source/include-binaries 2016-04-02 01:15:08.000000000 +0000 @@ -0,0 +1 @@ +qwt_6.0.0.orig.tar.bz2 diff -Nru phyxcalc-3rev200/qwt-6.0.0/CHANGES phyxcalc-3rev200/qwt-6.0.0/CHANGES --- phyxcalc-3rev200/qwt-6.0.0/CHANGES 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/CHANGES 2011-04-15 10:48:46.000000000 +0000 @@ -0,0 +1,482 @@ +Release 6.0 +=================== + +Changes +------- +1) Qt3 support dropped +2) QwtPlot layout/render code ported from int to double + Exported/printed documents in scalable formats like SVG or PDF + are 100% scalable now. +3) Template base classes introduced for curve and curve data + to be reusable in all plot items displaying series of samples. +4) New plot items + - QwtPlotHistogram + - QwtPlotIntervalCurve ( error bars or displaying the area between 2 curves ) + - QwtPlotSpectroCurve ( mapping the z value to a color ) +5) Raster items + - QwtMatrixRasterData introduced + - More accurate rendering + - Several API changes + - Thread support for rendering spectrograms +6) QwtPlot::print moved to QwtPlotRenderer +7) Other new classes + QwtColumnSymbol + QwtDoublePoint3D + QwtIntervalSymbol + QwtPlotDirectPainter + QwtSamplingThread + QwtSystemClock +8) QwtPicker and friends reorganized, + QwtPickerTrackerMachine added for displaying a rubberband for + mouse moves. Enter/Leave added to events, that are handled + by the picker machines. +9) QwtScaleWidget::LayoutFlag added + Introduced to control the direction of vertical axis titles. +10)QwtWeedingCurveFitter added + QwtWeedingCurveFitter is an implementation of the Douglas/Peuker + algorithm, that can be used to reduce the number of curve points. + It can be very useful to improve the performance of painting + curves of many lines ( f.e. by implementing different level of details ). +11)Legend code update for representing different pixmaps for different + types of plot items. +12)Copy operators removed, using pointers instead +13)QwtPolarPoint from qwtpolar added +14)QwtThermo + Optional QwtColorMaps added +15)Interfaces and code of all sliders/dials cleaned up. + QApplication::globalStrut(), styled backgrounds ... + + +Release 5.2.1 +=================== + +Bug Fixes +--------- +1) Export declarations removed from qwt_valuelist.h to avoid + compiler errors with Qt 4.6 + certain compilers on Windows. +2) QwtScaleDraw + Wrong border dist hints for unregular scale divisions fixed + Layout calculation for the tick labels fixed. + The layout was wrong by 1 pixel for top/left/bottom axes. + On a left axis without a title the labels were sometimes cut off. +3) QwtPainter + Splits polylines for all pens to avoid a bottleneck of the + raster paint engine. +4) QwtScaleWidget + Calculation of the colorbar position fixed ( spacing/margin ) +5) QwtPlotCurve + Wrong clipping rect fixed +6) QwtPicker + QwtPicker::setTrackerFont() fixed. + Recursion on the Mac, when constructing the rubberband fixed. + Workaround for a Qt3 bug added that is responsible for left aligning + all tracker texts to the canvas. + +Changes +------- +1) Project files adopted for symbian +2) qwt.pro + CONFIG += ordered added for using make -j + CONFIG += silent added + +Release 5.2.0 +=================== + +Changes +------- +1) Ported to Qt 4.5.x +2) Scaling of non cosmetic pens (for printing to devices in high resolution) +3) Clipping of polygons for SVG rendering +4) QwtRect removed + use QwtClipper instead +5) QwtPlotRescaler + Introduced +6) QwtDoubleInterval + BorderMode introduced +7) QwtPlotCurve + Performance of incremental curve painting ( = draw(from, to) ) improved. +8) QwtLegendItem + setIdentfierMode renamed to setIdentifierMode +9) QwtPlotCanvas::replot() introduced + code from QwtPlot::replot shifted +10)QwtPlot + drawCanvas(), updateAxes() changed from protected to public +11)QwtScaleEngine + loMargin/hiMargin renamed to lowerMargin/upperMargin +12)QwtScaleDiv + lBound/hBound renamed to lowerBound/upperBound +13)QwtSpline + cofficientA/B/C introduced +14)QwtDial + counter clockwise scales introduced +15)QwtPlotMarker + Vertical text labels +16)doc/qwt-5.2.0.qch added foe browsing the Qwt docs in the Qt assistant + +Bug Fixes +--------- +1) QwtLinearScaleEngine + Rounding problems fixed +2) Again some print layout problems fixed +3) QwtPlotScaleItem: 1 pixel offset fixed +4) QwtPlotSpectrogram, clipping of contour lines + against the bounding rect +5) QwtPlotZoomer::setZoomStack for stacks with unlimited depth +6) Printing of rotated tick labels + + +Release 5.1.1 +=================== + +Bug Fixes +--------- +1) Several compiler incompatibilities fixed +2) DBL_EPSILON removed + Using DBL_EPSILON in the calculations of the dials/sliders and the + scale engines leads to problems with the inaccuracy of floating points. + The behaviour has been reverted to 5.0.x. +3) QwtSlider/QwtKnob + setScaleDraw() fixed. +4) QwtRect + Pointless private declaration removed + +Release 5.1.0 +=================== + +Changes +------- +1) QwtSymbol::copy introduced + Now it is possible to use derived symbol classes for curves +2) QwtPlotScaleItem introduced + A new type of plot item for displaying axes on the canvas +3) QwtClipper added + A collection of clipping algos +4) Using DBL_EPSILON + This change allows smaller intervals for sliders/dials +5) QwtPanner + setOrientation() added. +6) QwtPlot + axisStepSize() added + clear is virtual now +7) QwtPlotPrintFilter + PrintCanvasBackground splitted into PrintBackground, PrintFrameWithScales +8) QwtPlotZoomer + setZoomStack() added +9) Changes for the QwtPolar package + QwtLegendItemManager introduced + QwtMagnifier introduced +10)Suffix rules added in qwtconfig.pri for different targets for + debug/release builds. + +Bug Fixes +--------- +1. QwtAbstractScaleDraw::setAbstractScaleDraw + Reinitialization problem fixed +2. QwtLegendItem + key event handlers fixed +3. QwtPicker + solaris-cc compiler problem fixed +4. Inaccurate mapping of scale to widget coordinates fixed +5. QwtPlotCurve::draw + Updates for Qt 4.3 added +6. QwtPlotLayout + AlignToCanvas layout calculation fixed +7. QwtPlot::print + Workaround for a QPen initialization problem, + when printing to Pdf, added +8. QwtText + Layout of rich text documents fixed +9. Designer + Handling of QwtScaleWidget fixed +10. realtime example + Qt::WA_PaintOutsidePaintEvent added, ScrollZoomer fixed +11. Several others I have forgotten + +Release 5.0.2 +=================== + +Bug Fixes +--------- +1. QwtPlotCurve::Xfy curve type fixed +2. Memory leak in QwtLegend fixed +3. Vertical alignment of rich texts fixed +4. Workaround for a Qt4 bug added, that produces horrible performance + when painting curves with a pen width > 1. +5. Background for the tracker text of QwtPickers fixed. + Improved (faster + better rendered texts) implementation of + painting tracker texts, using capabilities of Qt >= 4.3. +6. QwtArrowButton/QwtCounter: workaround for layout bug ( Qt < 4.3 ) + of the Cleanlook style added. +7. A couple of minor fixes + +Changes +------- +1. QSvgGenerator added to the bode example + +Release 5.0.1 +=================== + +Changes +------- +1. A couple of problems, when building Qwt fixed. +2. Displaying Rich Text with Qt 4.x fixed + +Release 5.0.0 +=================== + +Platforms +--------- +Support of Qt3 and Qt4. Qt2 is not supported any longer. + +Key features +------------ +1. Redesign of plot items. Makes it much easier to develop + individual items. +2. Redesign of the scale classes. All calculations are + collected in scale engines, where the application can + implement it´s own (f.e log2, or date scales). Now it´s + also possible to have individual and completely irregular scales +3. Redesign of the QwtText classes. The MathML renderer of + the Qt4 solutions package is embedded. + work for all expressions/situations. +4. New classes for navigating: QwtPanner, QwtMaginfier +5. Spectrogram/Contour plots and other classes for displaying + raster data added. + +Changes +------- +5.0.0 is by far the release with the most changes in the history of Qwt +- too many to make list. + + +Release 4.2.0/0.4.2 +=================== + +License +-------- +A couple of exceptions to the LGPL with the intention to allow static +linking with commercial applications. See COPYING. + +Key features: +------------- +1. Designer plugin +2. Rich Text support ( f.e. E = m * c2 ) added. +3. QwtDial class family added (QwtDial, QwtCompass, QwtAnalogClock, ...) +4. QwtPicker class family added. Includes QwtPlotZoomer, a complete + implementation of recursive zooming. +5. Device metrics independent printing of QwtPlot. (QPrinter::HighResolution) +6. QwtPlot::setCurveBrush(), QwtCurve::setBrush() added. The area + between curve and baseline will be filled with this brush. +7. Rotation of axis tick labels added. Very useful for axis with long + labels like time scales ... +8. Added a new abstract QwtData class to plot data from almost any type of + container class. +9. QwtDoublePoint, QwtDoubleSize, QwtDoubleRect double counterparts + for QPoint, QSize, QRect. +10. First steps to support Qtopia. All examples can be compiled and started + in the qvfb emulator. + + +Changes: +--------- +1. Rewrite of QwtLegend/QwtLegendItem (no QTable anymore) +2. Each plot item will be painted, even if one of the axis it is + attached to is disabled. (like in all other releases beside 0.4.1) +3. Code for double buffering moved to a new class QwtPaintBuffer. + Double buffering can be enabled/disabled now. +4. QwtPainter, QwtMetricsMap, QwtLayoutMetrics added + Hide paint device metrics dependencies. +5. Layout code rewritten and moved to a new class QwtPlotLayout + New layout options canvasMargin(), alignCanvasToScales() +6. QwtPlot: sizeHint() != minimumSizeHint() +9. Internal plot data are private again. A couple of get methods + added instead. +10. canvas repaints triggered by paint events. Enables event filtering +11. QwtPlot::drawCanvasItems added. In opposite to QwtPlot::drawCanvas + it is used by the printing code too. +12. qwtMax, qwtMin, qwtInt mapped to QMAX, QMIN, qRound from qglobal.h +13. operator= for plot item classes changed. +14. readOnly property added for sliders. +15. valid flag added for QwtDblRange +16. QwtCounter wrap around policy: a counter under- or overflow sets + focus to the smallest up/down button and disables counting. + A space bar keypress release event re-enables counting. +17. QwtPushButton added. A class that adds rich text and alignments + features to QPushButton, like they are used in QLabel +18. Clipped painting code moved from QwtCurve to QwtPainter/QwtRect +19. Canvas cache added to optimize trivial repaints. +20. QwtPlot::drawCurve added for incremental curve data +21. QwtSliderBase, readOnly, isValid added +22. Added filtering of the colors of the title and scales to QwtPrintFilter. +23. Support of QT_NO_CAST_ASII and QT_NO_COMPAT added +24. Batch file added for generating Visual Studio project files +25. QwtPlotCurve, QwtPlotMarker, QwtPlotGrid: more methods public +26. QwtPlot::setLegendPosition added +27. A lot of changes I don't remember, ... sorry. + +Bugfixes: +--------- +1. Autodetection of painter redirection. QPixmap::grabWidget() works + with Qwt Widgets again. +2. QwtSlider: Rounding double->int conversions instead of simple casts. +3. Bad additional line, connected to the first curve point, when zooming + deep, fixed. +4. QwtMarker: Painting of symbols with width != height fixed +5. QwtPlot::plotMouseXXX/canvasMap pixel coordinates synced. + Now both include the canvas frame. +6. Layout fixed for QwtScaleDraws without tick labels +8. Tab focus chains fixed, focus indications added. +9. Support QwtAutoScale::Inverted when autoScale is off also. +10. Keyboard control, focus indications added. +11. Improved QStyle awareness. +12. Printing of plots with disabled axes + +Examples +-------- +1. New example linux/cpustat added. Runs also on non linux boxes + with dummy values. Beside showing a couple of features that + are new with 0.4.1 and 0.4.2, it shows how to extend and customize + a QwtPlots. +2. Added new example event_filter to demonstrate event filtering. + This example shows how to add additional controls to the scales, + how to translate mouse clicks on the scales into signals and + how to move points on the canvas. +3. realtime example shows how to use scrollbars when zooming + +Release 0.4.1 +============ + +Changes: +--------- +1. Platform independent project files. makefiles directory removed. +2. RPM spec file template added. +3. __declspec formalism added for Win32 DLLs. Requires + 'DEFINES += QWT_DLL' in the .pro file. +4. QString used for visible texts. +5. Code for error curves removed. These type of features should be + implemented in derived curve classes. +6. A lot of Qt 1.2 related code removed/replaced. +7. QwtColorFilter, QwtPixFrame removed. QwtPlotPixFrame renamed + to QwtPlotCanvas. +8. qmodules.h aware. Skips QwtLegend in case of !QT_MODULE_TABLE +9. All Widgets including QwtPlot optimized to reduce flicker + during resize/repaint. +10. QwtPlot curves/markers can be disabled/enabled to hide/show individual + curves without removing the curves from the plot. +11. Internal maps removed from QwtCurve. QwtCurve::setMap, QwtCurve::setRect, + QwtCurve::setRange removed. + +Feature additions: +------------------ +1. Printing + QwtPlot::print prints to any type of QPaintDevice now. + Hardcoded printer attributes margin, creator and document title have + been removed and must/can be set by the applications now. + Printing of background and legends added. QwtColorFilter replaced + by QwtPlotPrintFilter. +2. Layout + Many layout fixes and additions. Now all Widgets behave well in + QLayouts and provide sensible sizeHints. QwtPlot::setMargin(int) added. + Fieldwidth added for QwtPlot::setAxisFormat for application that need + range independent width. Title and axis title are Qt:Alignment aware. + Qt::WordBreak or multiline titles are possible. +3. Legend + En/Disabling of single curves in the legend added. + QwtPlot::setAutoLegend added. +4. Extensibility + QwtPlot::insertCurve + QwtPlot::insertMarker added. Now derived + classes of QwtPlotCurve and QwtPlotMarker can be added. Virtual + methods provided by QwtPlotCurve for sub-classing. + QwtScale::setScaleDraw + QwtPlot::setAxisScaleDraw + some virtual + methods for QwtScaleDraw added. Application can implement individual + axis labels now. +5. Sliders + QWheelEvent added. The MouseWheel stepsize is controlled by the + Scroll Page Size. QwtWheel::setWheelWidth added. QwtKnob::setSymbol, + QwtKnob::symbol added. + +Bugfixes: +--------- +1. Workaround for spontanous curves resulting from overruns + when zooming too deep. +2. Wrong QColorGroup::ColorRole for background colors fixed. + Necessary for several non default QStyles. +3. QwtWheel fixed for vertical wheels. Better color support. +4. QwtSlider fixed. +5. Many forgotten others + +Release 0.4.0 +============ + +Bugfixes: +--------- +1. A few occurences of the boolean literal \c false were changed into macro + \c FALSE for cross compiler compatibility. +2. A few local variables in member functions were renamed to suppress + warnings issued by really picky compilers about global/class variables + being hidden. +3. In qwt_legend.h, a fully qualified name was used in a class declaration. + The HPUX compiler chokes on this (and it's ugly), so it was fixed. +4. Macro M_2PI is now only defined is this hasn't already been done by the + system's clib. + +Feature additions: +------------------ +1. Qwt now works with Qt3.0. In order to achieve this, QwtLegend now no + longer derives from QTableView, but from QTable. This seems to have had + quite a few consequences. Kudo's to Uwe Rathmann for uploading this nice + fix to the CVS tree. +2. Getters for a plot's title and title font have been added. + +Release 0.3.0 +============ + +License: +-------- +1. The license has changed from GPL to LGPL. + +Bugfixes: +--------- +1. The makefiles for win32 caused object files to have extension .o instead of + .obj. The 'propagate' file was changed to fix this, using tmake's target + platform flag. +2. There were problems with rint() on win32 platforms. rint() is a BSD call, + not even available on all unices. All calls to rint(x) have been replaced + by floor(x+.5). +3. Some static class data members were initialized with the value of other + static class data members (from Qt). This caused programs depend on the + initialization order of class members. This is now fixed by replacing the + static properties by static signleton factories. +4. When a plot was zoomed and then printed, curves and markers laying outside + the plot's scale were still printed. The print() function now uses clipping. + +Feature additions: +------------------ +1. Multi-line plot titles are now supported: the PostScript document name is + not the plot title, with "\n" characters replaced by "--". Geometry + management has been changed to support multi-line titles. +2. In the mailinglist, there were often feature requests for features that + were in fact implemented, but not available through QwtPlot's API. Many + private members have been made protected or even public, to give users + more control. This is poor design, but Qwt will be refactored anyway. +3. Qwt always displayed floats with 5 digits. This was insufficient for many + applications. QwtPlot, QwtScale, QwtAutoScale got some methods to set the + label format. This is a printf like format for the numbers at the scales, + consisting of 'f' and a precision, or 'g' and the significance. + +Build system: +------------- +1. The 'makefiles' directory was removed from the cvs tree, and is now only + generated for releases. CVS users should have tmake installed, to generate + the makefiles themselves. +2. The 'examples' directory now uses tmake's 'subdirs' template, to iterate + over all subdirectories and build all examples with one command. There was + allready a makefile for this, but now the process is automated by tmake. +3. Under unix, the library now gets a proper version number. Current version + is 0.3.0. + +Documentation: +-------------- +1. All documentation is converted to the Doxygen documentation system. The + release contains two settings files, 'Doxygen' and 'Doxygen.users', + generating a developer's and user's manual, respectively. diff -Nru phyxcalc-3rev200/qwt-6.0.0/COPYING phyxcalc-3rev200/qwt-6.0.0/COPYING --- phyxcalc-3rev200/qwt-6.0.0/COPYING 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/COPYING 2011-04-15 10:48:46.000000000 +0000 @@ -0,0 +1,543 @@ + Qwt License + Version 1.0, January 1, 2003 + +The Qwt library and included programs are provided under the terms +of the GNU LESSER GENERAL PUBLIC LICENSE (LGPL) with the following +exceptions: + + 1. Widgets that are subclassed from Qwt widgets do not + constitute a derivative work. + + 2. Static linking of applications and widgets to the + Qwt library does not constitute a derivative work + and does not require the author to provide source + code for the application or widget, use the shared + Qwt libraries, or link their applications or + widgets against a user-supplied version of Qwt. + + If you link the application or widget to a modified + version of Qwt, then the changes to Qwt must be + provided under the terms of the LGPL in sections + 1, 2, and 4. + + 3. You do not have to provide a copy of the Qwt license + with programs that are linked to the Qwt library, nor + do you have to identify the Qwt license in your + program or documentation as required by section 6 + of the LGPL. + + + However, programs must still identify their use of Qwt. + The following example statement can be included in user + documentation to satisfy this requirement: + + [program/widget] is based in part on the work of + the Qwt project (http://qwt.sf.net). + +---------------------------------------------------------------------- + + + GNU LESSER GENERAL PUBLIC LICENSE + Version 2.1, February 1999 + + Copyright (C) 1991, 1999 Free Software Foundation, Inc. + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + +[This is the first released version of the Lesser GPL. It also counts + as the successor of the GNU Library Public License, version 2, hence + the version number 2.1.] + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +Licenses are intended to guarantee your freedom to share and change +free software--to make sure the software is free for all its users. + + This license, the Lesser General Public License, applies to some +specially designated software packages--typically libraries--of the +Free Software Foundation and other authors who decide to use it. You +can use it too, but we suggest you first think carefully about whether +this license or the ordinary General Public License is the better +strategy to use in any particular case, based on the explanations below. + + When we speak of free software, we are referring to freedom of use, +not price. Our General Public Licenses are designed to make sure that +you have the freedom to distribute copies of free software (and charge +for this service if you wish); that you receive source code or can get +it if you want it; that you can change the software and use pieces of +it in new free programs; and that you are informed that you can do +these things. + + To protect your rights, we need to make restrictions that forbid +distributors to deny you these rights or to ask you to surrender these +rights. These restrictions translate to certain responsibilities for +you if you distribute copies of the library or if you modify it. + + For example, if you distribute copies of the library, whether gratis +or for a fee, you must give the recipients all the rights that we gave +you. You must make sure that they, too, receive or can get the source +code. If you link other code with the library, you must provide +complete object files to the recipients, so that they can relink them +with the library after making changes to the library and recompiling +it. And you must show them these terms so they know their rights. + + We protect your rights with a two-step method: (1) we copyright the +library, and (2) we offer you this license, which gives you legal +permission to copy, distribute and/or modify the library. + + To protect each distributor, we want to make it very clear that +there is no warranty for the free library. Also, if the library is +modified by someone else and passed on, the recipients should know +that what they have is not the original version, so that the original +author's reputation will not be affected by problems that might be +introduced by others. + + Finally, software patents pose a constant threat to the existence of +any free program. We wish to make sure that a company cannot +effectively restrict the users of a free program by obtaining a +restrictive license from a patent holder. Therefore, we insist that +any patent license obtained for a version of the library must be +consistent with the full freedom of use specified in this license. + + Most GNU software, including some libraries, is covered by the +ordinary GNU General Public License. This license, the GNU Lesser +General Public License, applies to certain designated libraries, and +is quite different from the ordinary General Public License. We use +this license for certain libraries in order to permit linking those +libraries into non-free programs. + + When a program is linked with a library, whether statically or using +a shared library, the combination of the two is legally speaking a +combined work, a derivative of the original library. The ordinary +General Public License therefore permits such linking only if the +entire combination fits its criteria of freedom. The Lesser General +Public License permits more lax criteria for linking other code with +the library. + + We call this license the "Lesser" General Public License because it +does Less to protect the user's freedom than the ordinary General +Public License. It also provides other free software developers Less +of an advantage over competing non-free programs. These disadvantages +are the reason we use the ordinary General Public License for many +libraries. However, the Lesser license provides advantages in certain +special circumstances. + + For example, on rare occasions, there may be a special need to +encourage the widest possible use of a certain library, so that it becomes +a de-facto standard. To achieve this, non-free programs must be +allowed to use the library. A more frequent case is that a free +library does the same job as widely used non-free libraries. In this +case, there is little to gain by limiting the free library to free +software only, so we use the Lesser General Public License. + + In other cases, permission to use a particular library in non-free +programs enables a greater number of people to use a large body of +free software. For example, permission to use the GNU C Library in +non-free programs enables many more people to use the whole GNU +operating system, as well as its variant, the GNU/Linux operating +system. + + Although the Lesser General Public License is Less protective of the +users' freedom, it does ensure that the user of a program that is +linked with the Library has the freedom and the wherewithal to run +that program using a modified version of the Library. + + The precise terms and conditions for copying, distribution and +modification follow. Pay close attention to the difference between a +"work based on the library" and a "work that uses the library". The +former contains code derived from the library, whereas the latter must +be combined with the library in order to run. + + GNU LESSER GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License Agreement applies to any software library or other +program which contains a notice placed by the copyright holder or +other authorized party saying it may be distributed under the terms of +this Lesser General Public License (also called "this License"). +Each licensee is addressed as "you". + + A "library" means a collection of software functions and/or data +prepared so as to be conveniently linked with application programs +(which use some of those functions and data) to form executables. + + The "Library", below, refers to any such software library or work +which has been distributed under these terms. A "work based on the +Library" means either the Library or any derivative work under +copyright law: that is to say, a work containing the Library or a +portion of it, either verbatim or with modifications and/or translated +straightforwardly into another language. (Hereinafter, translation is +included without limitation in the term "modification".) + + "Source code" for a work means the preferred form of the work for +making modifications to it. For a library, complete source code means +all the source code for all modules it contains, plus any associated +interface definition files, plus the scripts used to control compilation +and installation of the library. + + Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running a program using the Library is not restricted, and output from +such a program is covered only if its contents constitute a work based +on the Library (independent of the use of the Library in a tool for +writing it). Whether that is true depends on what the Library does +and what the program that uses the Library does. + + 1. You may copy and distribute verbatim copies of the Library's +complete source code as you receive it, in any medium, provided that +you conspicuously and appropriately publish on each copy an +appropriate copyright notice and disclaimer of warranty; keep intact +all the notices that refer to this License and to the absence of any +warranty; and distribute a copy of this License along with the +Library. + + You may charge a fee for the physical act of transferring a copy, +and you may at your option offer warranty protection in exchange for a +fee. + + 2. You may modify your copy or copies of the Library or any portion +of it, thus forming a work based on the Library, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) The modified work must itself be a software library. + + b) You must cause the files modified to carry prominent notices + stating that you changed the files and the date of any change. + + c) You must cause the whole of the work to be licensed at no + charge to all third parties under the terms of this License. + + d) If a facility in the modified Library refers to a function or a + table of data to be supplied by an application program that uses + the facility, other than as an argument passed when the facility + is invoked, then you must make a good faith effort to ensure that, + in the event an application does not supply such function or + table, the facility still operates, and performs whatever part of + its purpose remains meaningful. + + (For example, a function in a library to compute square roots has + a purpose that is entirely well-defined independent of the + application. Therefore, Subsection 2d requires that any + application-supplied function or table used by this function must + be optional: if the application does not supply it, the square + root function must still compute square roots.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Library, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Library, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote +it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Library. + +In addition, mere aggregation of another work not based on the Library +with the Library (or with a work based on the Library) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may opt to apply the terms of the ordinary GNU General Public +License instead of this License to a given copy of the Library. To do +this, you must alter all the notices that refer to this License, so +that they refer to the ordinary GNU General Public License, version 2, +instead of to this License. (If a newer version than version 2 of the +ordinary GNU General Public License has appeared, then you can specify +that version instead if you wish.) Do not make any other change in +these notices. + + Once this change is made in a given copy, it is irreversible for +that copy, so the ordinary GNU General Public License applies to all +subsequent copies and derivative works made from that copy. + + This option is useful when you wish to copy part of the code of +the Library into a program that is not a library. + + 4. You may copy and distribute the Library (or a portion or +derivative of it, under Section 2) in object code or executable form +under the terms of Sections 1 and 2 above provided that you accompany +it with the complete corresponding machine-readable source code, which +must be distributed under the terms of Sections 1 and 2 above on a +medium customarily used for software interchange. + + If distribution of object code is made by offering access to copy +from a designated place, then offering equivalent access to copy the +source code from the same place satisfies the requirement to +distribute the source code, even though third parties are not +compelled to copy the source along with the object code. + + 5. A program that contains no derivative of any portion of the +Library, but is designed to work with the Library by being compiled or +linked with it, is called a "work that uses the Library". Such a +work, in isolation, is not a derivative work of the Library, and +therefore falls outside the scope of this License. + + However, linking a "work that uses the Library" with the Library +creates an executable that is a derivative of the Library (because it +contains portions of the Library), rather than a "work that uses the +library". The executable is therefore covered by this License. +Section 6 states terms for distribution of such executables. + + When a "work that uses the Library" uses material from a header file +that is part of the Library, the object code for the work may be a +derivative work of the Library even though the source code is not. +Whether this is true is especially significant if the work can be +linked without the Library, or if the work is itself a library. The +threshold for this to be true is not precisely defined by law. + + If such an object file uses only numerical parameters, data +structure layouts and accessors, and small macros and small inline +functions (ten lines or less in length), then the use of the object +file is unrestricted, regardless of whether it is legally a derivative +work. (Executables containing this object code plus portions of the +Library will still fall under Section 6.) + + Otherwise, if the work is a derivative of the Library, you may +distribute the object code for the work under the terms of Section 6. +Any executables containing that work also fall under Section 6, +whether or not they are linked directly with the Library itself. + + 6. As an exception to the Sections above, you may also combine or +link a "work that uses the Library" with the Library to produce a +work containing portions of the Library, and distribute that work +under terms of your choice, provided that the terms permit +modification of the work for the customer's own use and reverse +engineering for debugging such modifications. + + You must give prominent notice with each copy of the work that the +Library is used in it and that the Library and its use are covered by +this License. You must supply a copy of this License. If the work +during execution displays copyright notices, you must include the +copyright notice for the Library among them, as well as a reference +directing the user to the copy of this License. Also, you must do one +of these things: + + a) Accompany the work with the complete corresponding + machine-readable source code for the Library including whatever + changes were used in the work (which must be distributed under + Sections 1 and 2 above); and, if the work is an executable linked + with the Library, with the complete machine-readable "work that + uses the Library", as object code and/or source code, so that the + user can modify the Library and then relink to produce a modified + executable containing the modified Library. (It is understood + that the user who changes the contents of definitions files in the + Library will not necessarily be able to recompile the application + to use the modified definitions.) + + b) Use a suitable shared library mechanism for linking with the + Library. A suitable mechanism is one that (1) uses at run time a + copy of the library already present on the user's computer system, + rather than copying library functions into the executable, and (2) + will operate properly with a modified version of the library, if + the user installs one, as long as the modified version is + interface-compatible with the version that the work was made with. + + c) Accompany the work with a written offer, valid for at + least three years, to give the same user the materials + specified in Subsection 6a, above, for a charge no more + than the cost of performing this distribution. + + d) If distribution of the work is made by offering access to copy + from a designated place, offer equivalent access to copy the above + specified materials from the same place. + + e) Verify that the user has already received a copy of these + materials or that you have already sent this user a copy. + + For an executable, the required form of the "work that uses the +Library" must include any data and utility programs needed for +reproducing the executable from it. However, as a special exception, +the materials to be distributed need not include anything that is +normally distributed (in either source or binary form) with the major +components (compiler, kernel, and so on) of the operating system on +which the executable runs, unless that component itself accompanies +the executable. + + It may happen that this requirement contradicts the license +restrictions of other proprietary libraries that do not normally +accompany the operating system. Such a contradiction means you cannot +use both them and the Library together in an executable that you +distribute. + + 7. You may place library facilities that are a work based on the +Library side-by-side in a single library together with other library +facilities not covered by this License, and distribute such a combined +library, provided that the separate distribution of the work based on +the Library and of the other library facilities is otherwise +permitted, and provided that you do these two things: + + a) Accompany the combined library with a copy of the same work + based on the Library, uncombined with any other library + facilities. This must be distributed under the terms of the + Sections above. + + b) Give prominent notice with the combined library of the fact + that part of it is a work based on the Library, and explaining + where to find the accompanying uncombined form of the same work. + + 8. You may not copy, modify, sublicense, link with, or distribute +the Library except as expressly provided under this License. Any +attempt otherwise to copy, modify, sublicense, link with, or +distribute the Library is void, and will automatically terminate your +rights under this License. However, parties who have received copies, +or rights, from you under this License will not have their licenses +terminated so long as such parties remain in full compliance. + + 9. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Library or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Library (or any work based on the +Library), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Library or works based on it. + + 10. Each time you redistribute the Library (or any work based on the +Library), the recipient automatically receives a license from the +original licensor to copy, distribute, link with or modify the Library +subject to these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties with +this License. + + 11. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Library at all. For example, if a patent +license would not permit royalty-free redistribution of the Library by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Library. + +If any portion of this section is held invalid or unenforceable under any +particular circumstance, the balance of the section is intended to apply, +and the section as a whole is intended to apply in other circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 12. If the distribution and/or use of the Library is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Library under this License may add +an explicit geographical distribution limitation excluding those countries, +so that distribution is permitted only in or among countries not thus +excluded. In such case, this License incorporates the limitation as if +written in the body of this License. + + 13. The Free Software Foundation may publish revised and/or new +versions of the Lesser General Public License from time to time. +Such new versions will be similar in spirit to the present version, +but may differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Library +specifies a version number of this License which applies to it and +"any later version", you have the option of following the terms and +conditions either of that version or of any later version published by +the Free Software Foundation. If the Library does not specify a +license version number, you may choose any version ever published by +the Free Software Foundation. + + 14. If you wish to incorporate parts of the Library into other free +programs whose distribution conditions are incompatible with these, +write to the author to ask for permission. For software which is +copyrighted by the Free Software Foundation, write to the Free +Software Foundation; we sometimes make exceptions for this. Our +decision will be guided by the two goals of preserving the free status +of all derivatives of our free software and of promoting the sharing +and reuse of software generally. + + NO WARRANTY + + 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO +WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. +EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR +OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY +KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE +LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME +THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN +WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY +AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU +FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR +CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE +LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING +RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A +FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF +SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Libraries + + If you develop a new library, and you want it to be of the greatest +possible use to the public, we recommend making it free software that +everyone can redistribute and change. You can do so by permitting +redistribution under these terms (or, alternatively, under the terms of the +ordinary General Public License). + + To apply these terms, attach the following notices to the library. It is +safest to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least the +"copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + +Also add information on how to contact you by electronic and paper mail. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the library, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the + library `Frob' (a library for tweaking knobs) written by James Random Hacker. + + , 1 April 1990 + Ty Coon, President of Vice + +That's all there is to it! + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/designer/designer.pro phyxcalc-3rev200/qwt-6.0.0/designer/designer.pro --- phyxcalc-3rev200/qwt-6.0.0/designer/designer.pro 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/designer/designer.pro 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,72 @@ +################################################################ +# Qwt Widget Library +# Copyright (C) 1997 Josef Wilgen +# Copyright (C) 2002 Uwe Rathmann +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the Qwt License, Version 1.0 +################################################################ + +QWT_ROOT = $${PWD}/.. + +include ( $${QWT_ROOT}/qwtconfig.pri ) +include ( $${QWT_ROOT}/qwtbuild.pri ) + +contains(QWT_CONFIG, QwtDesigner) { + + CONFIG += qt designer plugin + CONFIG += warn_on + + TEMPLATE = lib + TARGET = qwt_designer_plugin + + DESTDIR = plugins/designer + + INCLUDEPATH += $${QWT_ROOT}/src + DEPENDPATH += $${QWT_ROOT}/src + + contains(QWT_CONFIG, QwtFramework) { + + LIBS += -F$${QWT_ROOT}/lib + } + else { + + LIBS += -L$${QWT_ROOT}/lib + } + + IPATH = $${INCLUDEPATH} + qtAddLibrary(qwt) + INCLUDEPATH = $${IPATH} + + contains(QWT_CONFIG, QwtDll) { + + win32 { + DEFINES += QT_DLL QWT_DLL + } + } + + !contains(QWT_CONFIG, QwtPlot) { + DEFINES += NO_QWT_PLOT + } + + !contains(QWT_CONFIG, QwtWidgets) { + DEFINES += NO_QWT_WIDGETS + } + + HEADERS += qwt_designer_plugin.h + SOURCES += qwt_designer_plugin.cpp + + contains(QWT_CONFIG, QwtPlot) { + + HEADERS += qwt_designer_plotdialog.h + SOURCES += qwt_designer_plotdialog.cpp + } + + RESOURCES += qwt_designer_plugin.qrc + + target.path = $${QWT_INSTALL_PLUGINS} + INSTALLS += target +} +else { + TEMPLATE = subdirs # do nothing +} Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/designer/pixmaps/qwtanalogclock.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/designer/pixmaps/qwtanalogclock.png differ Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/designer/pixmaps/qwtcompass.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/designer/pixmaps/qwtcompass.png differ Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/designer/pixmaps/qwtcounter.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/designer/pixmaps/qwtcounter.png differ Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/designer/pixmaps/qwtdial.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/designer/pixmaps/qwtdial.png differ Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/designer/pixmaps/qwtknob.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/designer/pixmaps/qwtknob.png differ Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/designer/pixmaps/qwtplot.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/designer/pixmaps/qwtplot.png differ Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/designer/pixmaps/qwtscale.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/designer/pixmaps/qwtscale.png differ Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/designer/pixmaps/qwtslider.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/designer/pixmaps/qwtslider.png differ Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/designer/pixmaps/qwtthermo.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/designer/pixmaps/qwtthermo.png differ Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/designer/pixmaps/qwtwheel.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/designer/pixmaps/qwtwheel.png differ Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/designer/pixmaps/qwtwidget.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/designer/pixmaps/qwtwidget.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/designer/qwt_designer_plotdialog.cpp phyxcalc-3rev200/qwt-6.0.0/designer/qwt_designer_plotdialog.cpp --- phyxcalc-3rev200/qwt-6.0.0/designer/qwt_designer_plotdialog.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/designer/qwt_designer_plotdialog.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,42 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include +#include +#include +#include +#include "qwt_designer_plotdialog.h" + +using namespace QwtDesignerPlugin; + +PlotDialog::PlotDialog(const QString &properties, QWidget *parent): + QDialog(parent) +{ + setWindowTitle("Plot Properties"); + + QLineEdit *lineEdit = new QLineEdit(properties); + connect(lineEdit, SIGNAL(textChanged(const QString &)), + SIGNAL(edited(const QString &))); + + QTabWidget *tabWidget = new QTabWidget(this); + tabWidget->addTab(lineEdit, "General"); + + QPushButton *closeButton = new QPushButton("Close"); + connect(closeButton, SIGNAL(clicked()), this, SLOT(accept())); + + QHBoxLayout *buttonLayout = new QHBoxLayout; + buttonLayout->addStretch(1); + buttonLayout->addWidget(closeButton); + + QVBoxLayout *mainLayout = new QVBoxLayout; + mainLayout->addWidget(tabWidget); + mainLayout->addLayout(buttonLayout); + setLayout(mainLayout); +} + diff -Nru phyxcalc-3rev200/qwt-6.0.0/designer/qwt_designer_plotdialog.h phyxcalc-3rev200/qwt-6.0.0/designer/qwt_designer_plotdialog.h --- phyxcalc-3rev200/qwt-6.0.0/designer/qwt_designer_plotdialog.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/designer/qwt_designer_plotdialog.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,31 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_DESIGNER_PLOTDIALOG_H +#define QWT_DESIGNER_PLOTDIALOG_H + +#include + +namespace QwtDesignerPlugin +{ + +class PlotDialog: public QDialog +{ + Q_OBJECT + +public: + PlotDialog(const QString &properties, QWidget *parent = NULL); + +Q_SIGNALS: + void edited(const QString&); +}; + +} + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/designer/qwt_designer_plugin.cpp phyxcalc-3rev200/qwt-6.0.0/designer/qwt_designer_plugin.cpp --- phyxcalc-3rev200/qwt-6.0.0/designer/qwt_designer_plugin.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/designer/qwt_designer_plugin.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,512 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#if defined(_MSC_VER) /* MSVC Compiler */ +#pragma warning ( disable : 4786 ) +#endif + +#include +#include +#include +#include +#include +#include +#include +#include + +#include "qwt_designer_plugin.h" + +#ifndef NO_QWT_PLOT +#include "qwt_designer_plotdialog.h" +#include "qwt_plot.h" +#include "qwt_scale_widget.h" +#endif + +#ifndef NO_QWT_WIDGETS +#include "qwt_counter.h" +#include "qwt_wheel.h" +#include "qwt_thermo.h" +#include "qwt_knob.h" +#include "qwt_slider.h" +#include "qwt_analog_clock.h" +#include "qwt_compass.h" +#endif + +#include "qwt_text_label.h" + +using namespace QwtDesignerPlugin; + +CustomWidgetInterface::CustomWidgetInterface(QObject *parent): + QObject(parent), + d_isInitialized(false) +{ +} + +bool CustomWidgetInterface::isContainer() const +{ + return false; +} + +bool CustomWidgetInterface::isInitialized() const +{ + return d_isInitialized; +} + +QIcon CustomWidgetInterface::icon() const +{ + return d_icon; +} + +QString CustomWidgetInterface::codeTemplate() const +{ + return d_codeTemplate; +} + +QString CustomWidgetInterface::domXml() const +{ + return d_domXml; +} + +QString CustomWidgetInterface::group() const +{ + return "Qwt Widgets"; +} + +QString CustomWidgetInterface::includeFile() const +{ + return d_include; +} + +QString CustomWidgetInterface::name() const +{ + return d_name; +} + +QString CustomWidgetInterface::toolTip() const +{ + return d_toolTip; +} + +QString CustomWidgetInterface::whatsThis() const +{ + return d_whatsThis; +} + +void CustomWidgetInterface::initialize( + QDesignerFormEditorInterface *formEditor) +{ + if ( d_isInitialized ) + return; + + QExtensionManager *manager = formEditor->extensionManager(); + if ( manager ) + { + manager->registerExtensions(new TaskMenuFactory(manager), + Q_TYPEID(QDesignerTaskMenuExtension)); + } + + d_isInitialized = true; +} + +#ifndef NO_QWT_PLOT + +PlotInterface::PlotInterface(QObject *parent): + CustomWidgetInterface(parent) +{ + d_name = "QwtPlot"; + d_include = "qwt_plot.h"; + d_icon = QPixmap(":/pixmaps/qwtplot.png"); + d_domXml = + "\n" + " \n" + " \n" + " 0\n" + " 0\n" + " 400\n" + " 200\n" + " \n" + " \n" + "\n"; +} + +QWidget *PlotInterface::createWidget(QWidget *parent) +{ + return new QwtPlot(parent); +} + +#endif + +#ifndef NO_QWT_WIDGETS + +AnalogClockInterface::AnalogClockInterface(QObject *parent): + CustomWidgetInterface(parent) +{ + d_name = "QwtAnalogClock"; + d_include = "qwt_analog_clock.h"; + d_icon = QPixmap(":/pixmaps/qwtanalogclock.png"); + d_domXml = + "\n" + " \n" + " \n" + " 0\n" + " 0\n" + " 200\n" + " 200\n" + " \n" + " \n" + " \n" + " 4\n" + " \n" + "\n"; +} + +QWidget *AnalogClockInterface::createWidget(QWidget *parent) +{ + return new QwtAnalogClock(parent); +} + +#endif + +#ifndef NO_QWT_WIDGETS + +CompassInterface::CompassInterface(QObject *parent): + CustomWidgetInterface(parent) +{ + d_name = "QwtCompass"; + d_include = "qwt_compass.h"; + d_icon = QPixmap(":/pixmaps/qwtcompass.png"); + d_domXml = + "\n" + " \n" + " \n" + " 0\n" + " 0\n" + " 200\n" + " 200\n" + " \n" + " \n" + " \n" + " 4\n" + " \n" + "\n"; +} + +QWidget *CompassInterface::createWidget(QWidget *parent) +{ + return new QwtCompass(parent); +} + +#endif + +#ifndef NO_QWT_WIDGETS + +CounterInterface::CounterInterface(QObject *parent): + CustomWidgetInterface(parent) +{ + d_name = "QwtCounter"; + d_include = "qwt_counter.h"; + d_icon = QPixmap(":/pixmaps/qwtcounter.png"); + d_domXml = + "\n" + "\n"; +} + +QWidget *CounterInterface::createWidget(QWidget *parent) +{ + return new QwtCounter(parent); +} + +#endif + +#ifndef NO_QWT_WIDGETS + +DialInterface::DialInterface(QObject *parent): + CustomWidgetInterface(parent) +{ + d_name = "QwtDial"; + d_include = "qwt_dial.h"; + d_icon = QPixmap(":/pixmaps/qwtdial.png"); + d_domXml = + "\n" + " \n" + " \n" + " 0\n" + " 0\n" + " 200\n" + " 200\n" + " \n" + " \n" + " \n" + " 4\n" + " \n" + "\n"; +} + +QWidget *DialInterface::createWidget(QWidget *parent) +{ + return new QwtDial(parent); +} + +#endif + +#ifndef NO_QWT_WIDGETS + +KnobInterface::KnobInterface(QObject *parent): + CustomWidgetInterface(parent) +{ + d_name = "QwtKnob"; + d_include = "qwt_knob.h"; + d_icon = QPixmap(":/pixmaps/qwtknob.png"); + d_domXml = + "\n" + " \n" + " \n" + " 0\n" + " 0\n" + " 100\n" + " 100\n" + " \n" + " \n" + "\n"; +} + +QWidget *KnobInterface::createWidget(QWidget *parent) +{ + return new QwtKnob(parent); +} + +#endif + +#ifndef NO_QWT_PLOT + +ScaleWidgetInterface::ScaleWidgetInterface(QObject *parent): + CustomWidgetInterface(parent) +{ + d_name = "QwtScaleWidget"; + d_include = "qwt_scale_widget.h"; + d_icon = QPixmap(":/pixmaps/qwtscale.png"); + d_domXml = + "\n" + "\n"; +} + +QWidget *ScaleWidgetInterface::createWidget(QWidget *parent) +{ + return new QwtScaleWidget(QwtScaleDraw::LeftScale, parent); +} + +#endif + +#ifndef NO_QWT_WIDGETS + +SliderInterface::SliderInterface(QObject *parent): + CustomWidgetInterface(parent) +{ + d_name = "QwtSlider"; + d_include = "qwt_slider.h"; + d_icon = QPixmap(":/pixmaps/qwtslider.png"); + d_domXml = + "\n" + " \n" + " \n" + " 0\n" + " 0\n" + " 200\n" + " 60\n" + " \n" + " \n" + "\n"; +} + +QWidget *SliderInterface::createWidget(QWidget *parent) +{ + QwtSlider *slider = new QwtSlider(parent); +#if 0 + slider->setScalePosition(QwtSlider::Bottom); + slider->setRange(0.0, 10.0, 1.0, 0); + slider->setValue(3.0); +#endif + return slider; +} + +#endif + +TextLabelInterface::TextLabelInterface(QObject *parent): + CustomWidgetInterface(parent) +{ + d_name = "QwtTextLabel"; + d_include = "qwt_text_label.h"; + + d_icon = QPixmap(":/pixmaps/qwtwidget.png"); + d_domXml = + "\n" + " \n" + " \n" + " 0\n" + " 0\n" + " 100\n" + " 20\n" + " \n" + " \n" + "\n"; +} + +QWidget *TextLabelInterface::createWidget(QWidget *parent) +{ + return new QwtTextLabel(parent); +} + +#ifndef NO_QWT_WIDGETS + +ThermoInterface::ThermoInterface(QObject *parent): + CustomWidgetInterface(parent) +{ + d_name = "QwtThermo"; + d_include = "qwt_thermo.h"; + d_icon = QPixmap(":/pixmaps/qwtthermo.png"); + d_domXml = + "\n" + "\n"; +} + +QWidget *ThermoInterface::createWidget(QWidget *parent) +{ + return new QwtThermo(parent); +} + +#endif + +#ifndef NO_QWT_WIDGETS + +WheelInterface::WheelInterface(QObject *parent): + CustomWidgetInterface(parent) +{ + d_name = "QwtWheel"; + d_include = "qwt_wheel.h"; + d_icon = QPixmap(":/pixmaps/qwtwheel.png"); + d_domXml = + "\n" + "\n"; +} + +QWidget *WheelInterface::createWidget(QWidget *parent) +{ + return new QwtWheel(parent); +} + +#endif + +CustomWidgetCollectionInterface::CustomWidgetCollectionInterface( + QObject *parent): + QObject(parent) +{ +#ifndef NO_QWT_PLOT + d_plugins.append(new PlotInterface(this)); + d_plugins.append(new ScaleWidgetInterface(this)); +#endif + +#ifndef NO_QWT_WIDGETS + d_plugins.append(new AnalogClockInterface(this)); + d_plugins.append(new CompassInterface(this)); + d_plugins.append(new CounterInterface(this)); + d_plugins.append(new DialInterface(this)); + d_plugins.append(new KnobInterface(this)); + d_plugins.append(new SliderInterface(this)); + d_plugins.append(new ThermoInterface(this)); + d_plugins.append(new WheelInterface(this)); +#endif + + d_plugins.append(new TextLabelInterface(this)); +} + +QList + CustomWidgetCollectionInterface::customWidgets(void) const +{ + return d_plugins; +} + +TaskMenuFactory::TaskMenuFactory(QExtensionManager *parent): + QExtensionFactory(parent) +{ +} + +QObject *TaskMenuFactory::createExtension( + QObject *object, const QString &iid, QObject *parent) const +{ + if (iid == Q_TYPEID(QDesignerTaskMenuExtension)) + { +#ifndef NO_QWT_PLOT + if (QwtPlot *plot = qobject_cast(object)) + return new TaskMenuExtension(plot, parent); +#endif +#ifndef NO_QWT_WIDGETS + if (QwtDial *dial = qobject_cast(object)) + return new TaskMenuExtension(dial, parent); +#endif + } + + return QExtensionFactory::createExtension(object, iid, parent); +} + + +TaskMenuExtension::TaskMenuExtension(QWidget *widget, QObject *parent): + QObject(parent), + d_widget(widget) +{ + d_editAction = new QAction(tr("Edit Qwt Attributes ..."), this); + connect(d_editAction, SIGNAL(triggered()), + this, SLOT(editProperties())); +} + +QList TaskMenuExtension::taskActions() const +{ + QList list; + list.append(d_editAction); + return list; +} + +QAction *TaskMenuExtension::preferredEditAction() const +{ + return d_editAction; +} + +void TaskMenuExtension::editProperties() +{ + const QVariant v = d_widget->property("propertiesDocument"); + if ( v.type() != QVariant::String ) + return; + +#ifndef NO_QWT_PLOT + QString properties = v.toString(); + + if ( qobject_cast(d_widget) ) + { + PlotDialog dialog(properties); + connect(&dialog, SIGNAL(edited(const QString&)), + SLOT(applyProperties(const QString &))); + (void)dialog.exec(); + return; + } +#endif + + static QErrorMessage *errorMessage = NULL; + if ( errorMessage == NULL ) + errorMessage = new QErrorMessage(); + errorMessage->showMessage("Not implemented yet."); +} + +void TaskMenuExtension::applyProperties(const QString &properties) +{ + QDesignerFormWindowInterface *formWindow + = QDesignerFormWindowInterface::findFormWindow(d_widget); + if ( formWindow && formWindow->cursor() ) + formWindow->cursor()->setProperty("propertiesDocument", properties); +} + +Q_EXPORT_PLUGIN2(QwtDesignerPlugin, CustomWidgetCollectionInterface) diff -Nru phyxcalc-3rev200/qwt-6.0.0/designer/qwt_designer_plugin.h phyxcalc-3rev200/qwt-6.0.0/designer/qwt_designer_plugin.h --- phyxcalc-3rev200/qwt-6.0.0/designer/qwt_designer_plugin.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/designer/qwt_designer_plugin.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,234 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_DESIGNER_PLUGIN_H +#define QWT_DESIGNER_PLUGIN_H + +#include +#include +#include + +namespace QwtDesignerPlugin +{ + +class CustomWidgetInterface: public QObject, + public QDesignerCustomWidgetInterface +{ + Q_OBJECT + Q_INTERFACES(QDesignerCustomWidgetInterface) + +public: + CustomWidgetInterface(QObject *parent); + + virtual bool isContainer() const; + virtual bool isInitialized() const; + virtual QIcon icon() const; + virtual QString codeTemplate() const; + virtual QString domXml() const; + virtual QString group() const; + virtual QString includeFile() const; + virtual QString name() const; + virtual QString toolTip() const; + virtual QString whatsThis() const; + virtual void initialize(QDesignerFormEditorInterface *); + +protected: + QString d_name; + QString d_include; + QString d_toolTip; + QString d_whatsThis; + QString d_domXml; + QString d_codeTemplate; + QIcon d_icon; + +private: + bool d_isInitialized; +}; + +class CustomWidgetCollectionInterface: public QObject, + public QDesignerCustomWidgetCollectionInterface +{ + Q_OBJECT + Q_INTERFACES(QDesignerCustomWidgetCollectionInterface) + +public: + CustomWidgetCollectionInterface(QObject *parent = NULL); + + virtual QList customWidgets() const; + +private: + QList d_plugins; +}; + +#ifndef NO_QWT_PLOT +class PlotInterface: public CustomWidgetInterface +{ + Q_OBJECT + Q_INTERFACES(QDesignerCustomWidgetInterface) + +public: + PlotInterface(QObject *parent); + virtual QWidget *createWidget(QWidget *parent); +}; +#endif + +#ifndef NO_QWT_WIDGETS +class AnalogClockInterface: public CustomWidgetInterface +{ + Q_OBJECT + Q_INTERFACES(QDesignerCustomWidgetInterface) + +public: + AnalogClockInterface(QObject *parent); + virtual QWidget *createWidget(QWidget *parent); +}; +#endif + +#ifndef NO_QWT_WIDGETS +class CompassInterface: public CustomWidgetInterface +{ + Q_OBJECT + Q_INTERFACES(QDesignerCustomWidgetInterface) + +public: + CompassInterface(QObject *parent); + virtual QWidget *createWidget(QWidget *parent); +}; +#endif + +#ifndef NO_QWT_WIDGETS +class CounterInterface: public CustomWidgetInterface +{ + Q_OBJECT + Q_INTERFACES(QDesignerCustomWidgetInterface) + +public: + CounterInterface(QObject *parent); + virtual QWidget *createWidget(QWidget *parent); +}; +#endif + +#ifndef NO_QWT_WIDGETS +class DialInterface: public CustomWidgetInterface +{ + Q_OBJECT + Q_INTERFACES(QDesignerCustomWidgetInterface) + +public: + DialInterface(QObject *parent); + virtual QWidget *createWidget(QWidget *parent); +}; +#endif + +#ifndef NO_QWT_WIDGETS +class KnobInterface: public CustomWidgetInterface +{ + Q_OBJECT + Q_INTERFACES(QDesignerCustomWidgetInterface) + +public: + KnobInterface(QObject *parent); + virtual QWidget *createWidget(QWidget *parent); +}; +#endif + +#ifndef NO_QWT_PLOT +class ScaleWidgetInterface: public CustomWidgetInterface +{ + Q_OBJECT + Q_INTERFACES(QDesignerCustomWidgetInterface) + +public: + ScaleWidgetInterface(QObject *parent); + virtual QWidget *createWidget(QWidget *parent); +}; +#endif + +#ifndef NO_QWT_WIDGETS +class SliderInterface: public CustomWidgetInterface +{ + Q_OBJECT + Q_INTERFACES(QDesignerCustomWidgetInterface) + +public: + SliderInterface(QObject *parent); + virtual QWidget *createWidget(QWidget *parent); +}; +#endif + +class TextLabelInterface: public CustomWidgetInterface +{ + Q_OBJECT + Q_INTERFACES(QDesignerCustomWidgetInterface) + +public: + TextLabelInterface(QObject *parent); + virtual QWidget *createWidget(QWidget *parent); +}; + +#ifndef NO_QWT_WIDGETS +class ThermoInterface: public CustomWidgetInterface +{ + Q_OBJECT + Q_INTERFACES(QDesignerCustomWidgetInterface) + +public: + ThermoInterface(QObject *parent); + virtual QWidget *createWidget(QWidget *parent); +}; +#endif + +#ifndef NO_QWT_WIDGETS +class WheelInterface: public CustomWidgetInterface +{ + Q_OBJECT + Q_INTERFACES(QDesignerCustomWidgetInterface) + +public: + WheelInterface(QObject *parent); + virtual QWidget *createWidget(QWidget *parent); +}; +#endif + +class TaskMenuFactory: public QExtensionFactory +{ + Q_OBJECT + +public: + TaskMenuFactory(QExtensionManager *parent = 0); + +protected: + QObject *createExtension(QObject *object, + const QString &iid, QObject *parent) const; +}; + +class TaskMenuExtension: public QObject, + public QDesignerTaskMenuExtension +{ + Q_OBJECT + Q_INTERFACES(QDesignerTaskMenuExtension) + +public: + TaskMenuExtension(QWidget *widget, QObject *parent); + + QAction *preferredEditAction() const; + QList taskActions() const; + +private Q_SLOTS: + void editProperties(); + void applyProperties(const QString &); + +private: + QAction *d_editAction; + QWidget *d_widget; +}; + +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/designer/qwt_designer_plugin.qrc phyxcalc-3rev200/qwt-6.0.0/designer/qwt_designer_plugin.qrc --- phyxcalc-3rev200/qwt-6.0.0/designer/qwt_designer_plugin.qrc 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/designer/qwt_designer_plugin.qrc 2011-04-15 10:48:42.000000000 +0000 @@ -0,0 +1,15 @@ + + + pixmaps/qwtplot.png + pixmaps/qwtanalogclock.png + pixmaps/qwtcounter.png + pixmaps/qwtcompass.png + pixmaps/qwtdial.png + pixmaps/qwtknob.png + pixmaps/qwtscale.png + pixmaps/qwtslider.png + pixmaps/qwtthermo.png + pixmaps/qwtwheel.png + pixmaps/qwtwidget.png + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/Doxyfile phyxcalc-3rev200/qwt-6.0.0/doc/Doxyfile --- phyxcalc-3rev200/qwt-6.0.0/doc/Doxyfile 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/Doxyfile 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,1519 @@ +# Doxyfile 1.5.8 + +# This file describes the settings to be used by the documentation system +# doxygen (www.doxygen.org) for a project +# +# All text after a hash (#) is considered a comment and will be ignored +# The format is: +# TAG = value [value, ...] +# For lists items can also be appended using: +# TAG += value [value, ...] +# Values that contain spaces should be placed between quotes (" ") + +#--------------------------------------------------------------------------- +# Project related configuration options +#--------------------------------------------------------------------------- + +# This tag specifies the encoding used for all characters in the config file +# that follow. The default is UTF-8 which is also the encoding used for all +# text before the first occurrence of this tag. Doxygen uses libiconv (or the +# iconv built into libc) for the transcoding. See +# http://www.gnu.org/software/libiconv for the list of possible encodings. + +DOXYFILE_ENCODING = UTF-8 + +# The PROJECT_NAME tag is a single word (or a sequence of words surrounded +# by quotes) that should identify the project. + +PROJECT_NAME = "Qwt User's Guide" + +# The PROJECT_NUMBER tag can be used to enter a project or revision number. +# This could be handy for archiving the generated documentation or +# if some version control system is used. + +PROJECT_NUMBER = 6.0.0 + +# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) +# base path where the generated documentation will be put. +# If a relative path is entered, it will be relative to the location +# where doxygen was started. If left blank the current directory will be used. + +OUTPUT_DIRECTORY = + +# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create +# 4096 sub-directories (in 2 levels) under the output directory of each output +# format and will distribute the generated files over these directories. +# Enabling this option can be useful when feeding doxygen a huge amount of +# source files, where putting all generated files in the same directory would +# otherwise cause performance problems for the file system. + +CREATE_SUBDIRS = NO + +# The OUTPUT_LANGUAGE tag is used to specify the language in which all +# documentation generated by doxygen is written. Doxygen will use this +# information to generate all constant output in the proper language. +# The default language is English, other supported languages are: +# Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional, +# Croatian, Czech, Danish, Dutch, Farsi, Finnish, French, German, Greek, +# Hungarian, Italian, Japanese, Japanese-en (Japanese with English messages), +# Korean, Korean-en, Lithuanian, Norwegian, Macedonian, Persian, Polish, +# Portuguese, Romanian, Russian, Serbian, Serbian-Cyrilic, Slovak, Slovene, +# Spanish, Swedish, and Ukrainian. + +OUTPUT_LANGUAGE = English + +# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will +# include brief member descriptions after the members that are listed in +# the file and class documentation (similar to JavaDoc). +# Set to NO to disable this. + +BRIEF_MEMBER_DESC = NO + +# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend +# the brief description of a member or function before the detailed description. +# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the +# brief descriptions will be completely suppressed. + +REPEAT_BRIEF = YES + +# This tag implements a quasi-intelligent brief description abbreviator +# that is used to form the text in various listings. Each string +# in this list, if found as the leading text of the brief description, will be +# stripped from the text and the result after processing the whole list, is +# used as the annotated text. Otherwise, the brief description is used as-is. +# If left blank, the following values are used ("$name" is automatically +# replaced with the name of the entity): "The $name class" "The $name widget" +# "The $name file" "is" "provides" "specifies" "contains" +# "represents" "a" "an" "the" + +ABBREVIATE_BRIEF = + +# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then +# Doxygen will generate a detailed section even if there is only a brief +# description. + +ALWAYS_DETAILED_SEC = YES + +# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all +# inherited members of a class in the documentation of that class as if those +# members were ordinary class members. Constructors, destructors and assignment +# operators of the base classes will not be shown. + +INLINE_INHERITED_MEMB = NO + +# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full +# path before files name in the file list and in the header files. If set +# to NO the shortest path that makes the file name unique will be used. + +FULL_PATH_NAMES = NO + +# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag +# can be used to strip a user-defined part of the path. Stripping is +# only done if one of the specified strings matches the left-hand part of +# the path. The tag can be used to show relative paths in the file list. +# If left blank the directory from which doxygen is run is used as the +# path to strip. + +STRIP_FROM_PATH = + +# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of +# the path mentioned in the documentation of a class, which tells +# the reader which header file to include in order to use a class. +# If left blank only the name of the header file containing the class +# definition is used. Otherwise one should specify the include paths that +# are normally passed to the compiler using the -I flag. + +STRIP_FROM_INC_PATH = + +# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter +# (but less readable) file names. This can be useful is your file systems +# doesn't support long names like on DOS, Mac, or CD-ROM. + +SHORT_NAMES = NO + +# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen +# will interpret the first line (until the first dot) of a JavaDoc-style +# comment as the brief description. If set to NO, the JavaDoc +# comments will behave just like regular Qt-style comments +# (thus requiring an explicit @brief command for a brief description.) + +JAVADOC_AUTOBRIEF = NO + +# If the QT_AUTOBRIEF tag is set to YES then Doxygen will +# interpret the first line (until the first dot) of a Qt-style +# comment as the brief description. If set to NO, the comments +# will behave just like regular Qt-style comments (thus requiring +# an explicit \brief command for a brief description.) + +QT_AUTOBRIEF = NO + +# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen +# treat a multi-line C++ special comment block (i.e. a block of //! or /// +# comments) as a brief description. This used to be the default behaviour. +# The new default is to treat a multi-line C++ comment block as a detailed +# description. Set this tag to YES if you prefer the old behaviour instead. + +MULTILINE_CPP_IS_BRIEF = NO + +# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented +# member inherits the documentation from any documented member that it +# re-implements. + +INHERIT_DOCS = YES + +# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce +# a new page for each member. If set to NO, the documentation of a member will +# be part of the file/class/namespace that contains it. + +SEPARATE_MEMBER_PAGES = NO + +# The TAB_SIZE tag can be used to set the number of spaces in a tab. +# Doxygen uses this value to replace tabs by spaces in code fragments. + +TAB_SIZE = 2 + +# This tag can be used to specify a number of aliases that acts +# as commands in the documentation. An alias has the form "name=value". +# For example adding "sideeffect=\par Side Effects:\n" will allow you to +# put the command \sideeffect (or @sideeffect) in the documentation, which +# will result in a user-defined paragraph with heading "Side Effects:". +# You can put \n's in the value part of an alias to insert newlines. + +ALIASES = + +# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C +# sources only. Doxygen will then generate output that is more tailored for C. +# For instance, some of the names that are used will be different. The list +# of all members will be omitted, etc. + +OPTIMIZE_OUTPUT_FOR_C = NO + +# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java +# sources only. Doxygen will then generate output that is more tailored for +# Java. For instance, namespaces will be presented as packages, qualified +# scopes will look different, etc. + +OPTIMIZE_OUTPUT_JAVA = NO + +# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran +# sources only. Doxygen will then generate output that is more tailored for +# Fortran. + +OPTIMIZE_FOR_FORTRAN = NO + +# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL +# sources. Doxygen will then generate output that is tailored for +# VHDL. + +OPTIMIZE_OUTPUT_VHDL = NO + +# Doxygen selects the parser to use depending on the extension of the files it parses. +# With this tag you can assign which parser to use for a given extension. +# Doxygen has a built-in mapping, but you can override or extend it using this tag. +# The format is ext=language, where ext is a file extension, and language is one of +# the parsers supported by doxygen: IDL, Java, Javascript, C#, C, C++, D, PHP, +# Objective-C, Python, Fortran, VHDL, C, C++. For instance to make doxygen treat +# .inc files as Fortran files (default is PHP), and .f files as C (default is Fortran), +# use: inc=Fortran f=C + +EXTENSION_MAPPING = + +# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want +# to include (a tag file for) the STL sources as input, then you should +# set this tag to YES in order to let doxygen match functions declarations and +# definitions whose arguments contain STL classes (e.g. func(std::string); v.s. +# func(std::string) {}). This also make the inheritance and collaboration +# diagrams that involve STL classes more complete and accurate. + +BUILTIN_STL_SUPPORT = NO + +# If you use Microsoft's C++/CLI language, you should set this option to YES to +# enable parsing support. + +CPP_CLI_SUPPORT = NO + +# Set the SIP_SUPPORT tag to YES if your project consists of sip sources only. +# Doxygen will parse them like normal C++ but will assume all classes use public +# instead of private inheritance when no explicit protection keyword is present. + +SIP_SUPPORT = NO + +# For Microsoft's IDL there are propget and propput attributes to indicate getter +# and setter methods for a property. Setting this option to YES (the default) +# will make doxygen to replace the get and set methods by a property in the +# documentation. This will only work if the methods are indeed getting or +# setting a simple type. If this is not the case, or you want to show the +# methods anyway, you should set this option to NO. + +IDL_PROPERTY_SUPPORT = YES + +# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC +# tag is set to YES, then doxygen will reuse the documentation of the first +# member in the group (if any) for the other members of the group. By default +# all members of a group must be documented explicitly. + +DISTRIBUTE_GROUP_DOC = NO + +# Set the SUBGROUPING tag to YES (the default) to allow class member groups of +# the same type (for instance a group of public functions) to be put as a +# subgroup of that type (e.g. under the Public Functions section). Set it to +# NO to prevent subgrouping. Alternatively, this can be done per class using +# the \nosubgrouping command. + +SUBGROUPING = NO + +# When TYPEDEF_HIDES_STRUCT is enabled, a typedef of a struct, union, or enum +# is documented as struct, union, or enum with the name of the typedef. So +# typedef struct TypeS {} TypeT, will appear in the documentation as a struct +# with name TypeT. When disabled the typedef will appear as a member of a file, +# namespace, or class. And the struct will be named TypeS. This can typically +# be useful for C code in case the coding convention dictates that all compound +# types are typedef'ed and only the typedef is referenced, never the tag name. + +TYPEDEF_HIDES_STRUCT = NO + +# The SYMBOL_CACHE_SIZE determines the size of the internal cache use to +# determine which symbols to keep in memory and which to flush to disk. +# When the cache is full, less often used symbols will be written to disk. +# For small to medium size projects (<1000 input files) the default value is +# probably good enough. For larger projects a too small cache size can cause +# doxygen to be busy swapping symbols to and from disk most of the time +# causing a significant performance penality. +# If the system has enough physical memory increasing the cache will improve the +# performance by keeping more symbols in memory. Note that the value works on +# a logarithmic scale so increasing the size by one will rougly double the +# memory usage. The cache size is given by this formula: +# 2^(16+SYMBOL_CACHE_SIZE). The valid range is 0..9, the default is 0, +# corresponding to a cache size of 2^16 = 65536 symbols + +SYMBOL_CACHE_SIZE = 0 + +#--------------------------------------------------------------------------- +# Build related configuration options +#--------------------------------------------------------------------------- + +# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in +# documentation are documented, even if no documentation was available. +# Private class members and static file members will be hidden unless +# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES + +EXTRACT_ALL = NO + +# If the EXTRACT_PRIVATE tag is set to YES all private members of a class +# will be included in the documentation. + +EXTRACT_PRIVATE = NO + +# If the EXTRACT_STATIC tag is set to YES all static members of a file +# will be included in the documentation. + +EXTRACT_STATIC = NO + +# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) +# defined locally in source files will be included in the documentation. +# If set to NO only classes defined in header files are included. + +EXTRACT_LOCAL_CLASSES = NO + +# This flag is only useful for Objective-C code. When set to YES local +# methods, which are defined in the implementation section but not in +# the interface are included in the documentation. +# If set to NO (the default) only methods in the interface are included. + +EXTRACT_LOCAL_METHODS = NO + +# If this flag is set to YES, the members of anonymous namespaces will be +# extracted and appear in the documentation as a namespace called +# 'anonymous_namespace{file}', where file will be replaced with the base +# name of the file that contains the anonymous namespace. By default +# anonymous namespace are hidden. + +EXTRACT_ANON_NSPACES = NO + +# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all +# undocumented members of documented classes, files or namespaces. +# If set to NO (the default) these members will be included in the +# various overviews, but no documentation section is generated. +# This option has no effect if EXTRACT_ALL is enabled. + +HIDE_UNDOC_MEMBERS = NO + +# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all +# undocumented classes that are normally visible in the class hierarchy. +# If set to NO (the default) these classes will be included in the various +# overviews. This option has no effect if EXTRACT_ALL is enabled. + +HIDE_UNDOC_CLASSES = NO + +# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all +# friend (class|struct|union) declarations. +# If set to NO (the default) these declarations will be included in the +# documentation. + +HIDE_FRIEND_COMPOUNDS = NO + +# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any +# documentation blocks found inside the body of a function. +# If set to NO (the default) these blocks will be appended to the +# function's detailed documentation block. + +HIDE_IN_BODY_DOCS = NO + +# The INTERNAL_DOCS tag determines if documentation +# that is typed after a \internal command is included. If the tag is set +# to NO (the default) then the documentation will be excluded. +# Set it to YES to include the internal documentation. + +INTERNAL_DOCS = NO + +# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate +# file names in lower-case letters. If set to YES upper-case letters are also +# allowed. This is useful if you have classes or files whose names only differ +# in case and if your file system supports case sensitive file names. Windows +# and Mac users are advised to set this option to NO. + +CASE_SENSE_NAMES = NO + +# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen +# will show members with their full class and namespace scopes in the +# documentation. If set to YES the scope will be hidden. + +HIDE_SCOPE_NAMES = NO + +# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen +# will put a list of the files that are included by a file in the documentation +# of that file. + +SHOW_INCLUDE_FILES = YES + +# If the INLINE_INFO tag is set to YES (the default) then a tag [inline] +# is inserted in the documentation for inline members. + +INLINE_INFO = YES + +# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen +# will sort the (detailed) documentation of file and class members +# alphabetically by member name. If set to NO the members will appear in +# declaration order. + +SORT_MEMBER_DOCS = YES + +# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the +# brief documentation of file, namespace and class members alphabetically +# by member name. If set to NO (the default) the members will appear in +# declaration order. + +SORT_BRIEF_DOCS = NO + +# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the +# hierarchy of group names into alphabetical order. If set to NO (the default) +# the group names will appear in their defined order. + +SORT_GROUP_NAMES = NO + +# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be +# sorted by fully-qualified names, including namespaces. If set to +# NO (the default), the class list will be sorted only by class name, +# not including the namespace part. +# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES. +# Note: This option applies only to the class list, not to the +# alphabetical list. + +SORT_BY_SCOPE_NAME = NO + +# The GENERATE_TODOLIST tag can be used to enable (YES) or +# disable (NO) the todo list. This list is created by putting \todo +# commands in the documentation. + +GENERATE_TODOLIST = NO + +# The GENERATE_TESTLIST tag can be used to enable (YES) or +# disable (NO) the test list. This list is created by putting \test +# commands in the documentation. + +GENERATE_TESTLIST = NO + +# The GENERATE_BUGLIST tag can be used to enable (YES) or +# disable (NO) the bug list. This list is created by putting \bug +# commands in the documentation. + +GENERATE_BUGLIST = NO + +# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or +# disable (NO) the deprecated list. This list is created by putting +# \deprecated commands in the documentation. + +GENERATE_DEPRECATEDLIST= YES + +# The ENABLED_SECTIONS tag can be used to enable conditional +# documentation sections, marked by \if sectionname ... \endif. + +ENABLED_SECTIONS = + +# The MAX_INITIALIZER_LINES tag determines the maximum number of lines +# the initial value of a variable or define consists of for it to appear in +# the documentation. If the initializer consists of more lines than specified +# here it will be hidden. Use a value of 0 to hide initializers completely. +# The appearance of the initializer of individual variables and defines in the +# documentation can be controlled using \showinitializer or \hideinitializer +# command in the documentation regardless of this setting. + +MAX_INITIALIZER_LINES = 30 + +# Set the SHOW_USED_FILES tag to NO to disable the list of files generated +# at the bottom of the documentation of classes and structs. If set to YES the +# list will mention the files that were used to generate the documentation. + +SHOW_USED_FILES = NO + +# If the sources in your project are distributed over multiple directories +# then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy +# in the documentation. The default is NO. + +SHOW_DIRECTORIES = NO + +# Set the SHOW_FILES tag to NO to disable the generation of the Files page. +# This will remove the Files entry from the Quick Index and from the +# Folder Tree View (if specified). The default is YES. + +SHOW_FILES = NO + +# Set the SHOW_NAMESPACES tag to NO to disable the generation of the +# Namespaces page. +# This will remove the Namespaces entry from the Quick Index +# and from the Folder Tree View (if specified). The default is YES. + +SHOW_NAMESPACES = YES + +# The FILE_VERSION_FILTER tag can be used to specify a program or script that +# doxygen should invoke to get the current version for each file (typically from +# the version control system). Doxygen will invoke the program by executing (via +# popen()) the command , where is the value of +# the FILE_VERSION_FILTER tag, and is the name of an input file +# provided by doxygen. Whatever the program writes to standard output +# is used as the file version. See the manual for examples. + +FILE_VERSION_FILTER = + +# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed by +# doxygen. The layout file controls the global structure of the generated output files +# in an output format independent way. The create the layout file that represents +# doxygen's defaults, run doxygen with the -l option. You can optionally specify a +# file name after the option, if omitted DoxygenLayout.xml will be used as the name +# of the layout file. + +LAYOUT_FILE = + +#--------------------------------------------------------------------------- +# configuration options related to warning and progress messages +#--------------------------------------------------------------------------- + +# The QUIET tag can be used to turn on/off the messages that are generated +# by doxygen. Possible values are YES and NO. If left blank NO is used. + +QUIET = YES + +# The WARNINGS tag can be used to turn on/off the warning messages that are +# generated by doxygen. Possible values are YES and NO. If left blank +# NO is used. + +WARNINGS = YES + +# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings +# for undocumented members. If EXTRACT_ALL is set to YES then this flag will +# automatically be disabled. + +WARN_IF_UNDOCUMENTED = YES + +# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for +# potential errors in the documentation, such as not documenting some +# parameters in a documented function, or documenting parameters that +# don't exist or using markup commands wrongly. + +WARN_IF_DOC_ERROR = YES + +# This WARN_NO_PARAMDOC option can be abled to get warnings for +# functions that are documented, but have no documentation for their parameters +# or return value. If set to NO (the default) doxygen will only warn about +# wrong or incomplete parameter documentation, but not about the absence of +# documentation. + +WARN_NO_PARAMDOC = NO + +# The WARN_FORMAT tag determines the format of the warning messages that +# doxygen can produce. The string should contain the $file, $line, and $text +# tags, which will be replaced by the file and line number from which the +# warning originated and the warning text. Optionally the format may contain +# $version, which will be replaced by the version of the file (if it could +# be obtained via FILE_VERSION_FILTER) + +WARN_FORMAT = "$file:$line: $text" + +# The WARN_LOGFILE tag can be used to specify a file to which warning +# and error messages should be written. If left blank the output is written +# to stderr. + +WARN_LOGFILE = Doxygen.log + +#--------------------------------------------------------------------------- +# configuration options related to the input files +#--------------------------------------------------------------------------- + +# The INPUT tag can be used to specify the files and/or directories that contain +# documented source files. You may enter file names like "myfile.cpp" or +# directories like "/usr/src/myproject". Separate the files or directories +# with spaces. + +INPUT = . \ + ../src \ + ../textengines/mathml + +# This tag can be used to specify the character encoding of the source files +# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is +# also the default input encoding. Doxygen uses libiconv (or the iconv built +# into libc) for the transcoding. See http://www.gnu.org/software/libiconv for +# the list of possible encodings. + +INPUT_ENCODING = UTF-8 + +# If the value of the INPUT tag contains directories, you can use the +# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp +# and *.h) to filter out the source-files in the directories. If left +# blank the following patterns are tested: +# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx +# *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py *.f90 + +FILE_PATTERNS = *.cpp \ + *.h \ + *.dox + +# The RECURSIVE tag can be used to turn specify whether or not subdirectories +# should be searched for input files as well. Possible values are YES and NO. +# If left blank NO is used. + +RECURSIVE = NO + +# The EXCLUDE tag can be used to specify files and/or directories that should +# excluded from the INPUT source files. This way you can easily exclude a +# subdirectory from a directory tree whose root is specified with the INPUT tag. + +EXCLUDE = + +# The EXCLUDE_SYMLINKS tag can be used select whether or not files or +# directories that are symbolic links (a Unix filesystem feature) are excluded +# from the input. + +EXCLUDE_SYMLINKS = NO + +# If the value of the INPUT tag contains directories, you can use the +# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude +# certain files from those directories. Note that the wildcards are matched +# against the file with absolute path, so to exclude all test directories +# for example use the pattern */test/* + +EXCLUDE_PATTERNS = qwt.h + +# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names +# (namespaces, classes, functions, etc.) that should be excluded from the +# output. The symbol name can be a fully qualified name, a word, or if the +# wildcard * is used, a substring. Examples: ANamespace, AClass, +# AClass::ANamespace, ANamespace::*Test + +EXCLUDE_SYMBOLS = + +# The EXAMPLE_PATH tag can be used to specify one or more files or +# directories that contain example code fragments that are included (see +# the \include command). + +EXAMPLE_PATH = . + +# If the value of the EXAMPLE_PATH tag contains directories, you can use the +# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp +# and *.h) to filter out the source-files in the directories. If left +# blank all files are included. + +EXAMPLE_PATTERNS = + +# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be +# searched for input files to be used with the \include or \dontinclude +# commands irrespective of the value of the RECURSIVE tag. +# Possible values are YES and NO. If left blank NO is used. + +EXAMPLE_RECURSIVE = NO + +# The IMAGE_PATH tag can be used to specify one or more files or +# directories that contain image that are included in the documentation (see +# the \image command). + +IMAGE_PATH = images + +# The INPUT_FILTER tag can be used to specify a program that doxygen should +# invoke to filter for each input file. Doxygen will invoke the filter program +# by executing (via popen()) the command , where +# is the value of the INPUT_FILTER tag, and is the name of an +# input file. Doxygen will then use the output that the filter program writes +# to standard output. +# If FILTER_PATTERNS is specified, this tag will be +# ignored. + +INPUT_FILTER = + +# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern +# basis. +# Doxygen will compare the file name with each pattern and apply the +# filter if there is a match. +# The filters are a list of the form: +# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further +# info on how filters are used. If FILTER_PATTERNS is empty, INPUT_FILTER +# is applied to all files. + +FILTER_PATTERNS = + +# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using +# INPUT_FILTER) will be used to filter the input files when producing source +# files to browse (i.e. when SOURCE_BROWSER is set to YES). + +FILTER_SOURCE_FILES = NO + +#--------------------------------------------------------------------------- +# configuration options related to source browsing +#--------------------------------------------------------------------------- + +# If the SOURCE_BROWSER tag is set to YES then a list of source files will +# be generated. Documented entities will be cross-referenced with these sources. +# Note: To get rid of all source code in the generated output, make sure also +# VERBATIM_HEADERS is set to NO. + +SOURCE_BROWSER = NO + +# Setting the INLINE_SOURCES tag to YES will include the body +# of functions and classes directly in the documentation. + +INLINE_SOURCES = NO + +# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct +# doxygen to hide any special comment blocks from generated source code +# fragments. Normal C and C++ comments will always remain visible. + +STRIP_CODE_COMMENTS = YES + +# If the REFERENCED_BY_RELATION tag is set to YES +# then for each documented function all documented +# functions referencing it will be listed. + +REFERENCED_BY_RELATION = NO + +# If the REFERENCES_RELATION tag is set to YES +# then for each documented function all documented entities +# called/used by that function will be listed. + +REFERENCES_RELATION = NO + +# If the REFERENCES_LINK_SOURCE tag is set to YES (the default) +# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from +# functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will +# link to the source code. +# Otherwise they will link to the documentation. + +REFERENCES_LINK_SOURCE = NO + +# If the USE_HTAGS tag is set to YES then the references to source code +# will point to the HTML generated by the htags(1) tool instead of doxygen +# built-in source browser. The htags tool is part of GNU's global source +# tagging system (see http://www.gnu.org/software/global/global.html). You +# will need version 4.8.6 or higher. + +USE_HTAGS = NO + +# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen +# will generate a verbatim copy of the header file for each class for +# which an include is specified. Set to NO to disable this. + +VERBATIM_HEADERS = YES + +#--------------------------------------------------------------------------- +# configuration options related to the alphabetical class index +#--------------------------------------------------------------------------- + +# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index +# of all compounds will be generated. Enable this if the project +# contains a lot of classes, structs, unions or interfaces. + +ALPHABETICAL_INDEX = YES + +# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then +# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns +# in which this list will be split (can be a number in the range [1..20]) + +COLS_IN_ALPHA_INDEX = 4 + +# In case all classes in a project start with a common prefix, all +# classes will be put under the same header in the alphabetical index. +# The IGNORE_PREFIX tag can be used to specify one or more prefixes that +# should be ignored while generating the index headers. + +IGNORE_PREFIX = Qwt \ + Q + +#--------------------------------------------------------------------------- +# configuration options related to the HTML output +#--------------------------------------------------------------------------- + +# If the GENERATE_HTML tag is set to YES (the default) Doxygen will +# generate HTML output. + +GENERATE_HTML = YES + +# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `html' will be used as the default path. + +HTML_OUTPUT = html + +# The HTML_FILE_EXTENSION tag can be used to specify the file extension for +# each generated HTML page (for example: .htm,.php,.asp). If it is left blank +# doxygen will generate files with .html extension. + +HTML_FILE_EXTENSION = .html + +# The HTML_HEADER tag can be used to specify a personal HTML header for +# each generated HTML page. If it is left blank doxygen will generate a +# standard header. + +HTML_HEADER = + +# The HTML_FOOTER tag can be used to specify a personal HTML footer for +# each generated HTML page. If it is left blank doxygen will generate a +# standard footer. + +HTML_FOOTER = + +# The HTML_STYLESHEET tag can be used to specify a user-defined cascading +# style sheet that is used by each HTML page. It can be used to +# fine-tune the look of the HTML output. If the tag is left blank doxygen +# will generate a default style sheet. Note that doxygen will try to copy +# the style sheet file to the HTML output directory, so don't put your own +# stylesheet in the HTML output directory as well, or it will be erased! + +HTML_STYLESHEET = + +# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, +# files or namespaces will be aligned in HTML using tables. If set to +# NO a bullet list will be used. + +HTML_ALIGN_MEMBERS = YES + +# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML +# documentation will contain sections that can be hidden and shown after the +# page has loaded. For this to work a browser that supports +# JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox +# Netscape 6.0+, Internet explorer 5.0+, Konqueror, or Safari). + +HTML_DYNAMIC_SECTIONS = NO + +# If the GENERATE_DOCSET tag is set to YES, additional index files +# will be generated that can be used as input for Apple's Xcode 3 +# integrated development environment, introduced with OSX 10.5 (Leopard). +# To create a documentation set, doxygen will generate a Makefile in the +# HTML output directory. Running make will produce the docset in that +# directory and running "make install" will install the docset in +# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find +# it at startup. +# See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html for more information. + +GENERATE_DOCSET = NO + +# When GENERATE_DOCSET tag is set to YES, this tag determines the name of the +# feed. A documentation feed provides an umbrella under which multiple +# documentation sets from a single provider (such as a company or product suite) +# can be grouped. + +DOCSET_FEEDNAME = "Doxygen generated docs" + +# When GENERATE_DOCSET tag is set to YES, this tag specifies a string that +# should uniquely identify the documentation set bundle. This should be a +# reverse domain-name style string, e.g. com.mycompany.MyDocSet. Doxygen +# will append .docset to the name. + +DOCSET_BUNDLE_ID = org.doxygen.Project + +# If the GENERATE_HTMLHELP tag is set to YES, additional index files +# will be generated that can be used as input for tools like the +# Microsoft HTML help workshop to generate a compiled HTML help file (.chm) +# of the generated HTML documentation. + +GENERATE_HTMLHELP = NO + +# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can +# be used to specify the file name of the resulting .chm file. You +# can add a path in front of the file if the result should not be +# written to the html output directory. + +CHM_FILE = + +# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can +# be used to specify the location (absolute path including file name) of +# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run +# the HTML help compiler on the generated index.hhp. + +HHC_LOCATION = + +# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag +# controls if a separate .chi index file is generated (YES) or that +# it should be included in the master .chm file (NO). + +GENERATE_CHI = NO + +# If the GENERATE_HTMLHELP tag is set to YES, the CHM_INDEX_ENCODING +# is used to encode HtmlHelp index (hhk), content (hhc) and project file +# content. + +CHM_INDEX_ENCODING = + +# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag +# controls whether a binary table of contents is generated (YES) or a +# normal table of contents (NO) in the .chm file. + +BINARY_TOC = NO + +# The TOC_EXPAND flag can be set to YES to add extra items for group members +# to the contents of the HTML help documentation and to the tree view. + +TOC_EXPAND = NO + +# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and QHP_VIRTUAL_FOLDER +# are set, an additional index file will be generated that can be used as input for +# Qt's qhelpgenerator to generate a Qt Compressed Help (.qch) of the generated +# HTML documentation. + +GENERATE_QHP = NO + +# If the QHG_LOCATION tag is specified, the QCH_FILE tag can +# be used to specify the file name of the resulting .qch file. +# The path specified is relative to the HTML output folder. + +QCH_FILE = qwtdoc.qch + +# The QHP_NAMESPACE tag specifies the namespace to use when generating +# Qt Help Project output. For more information please see +# http://doc.trolltech.com/qthelpproject.html#namespace + +QHP_NAMESPACE = net.sourceforge.qwt-6.0.0 + +# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating +# Qt Help Project output. For more information please see +# http://doc.trolltech.com/qthelpproject.html#virtual-folders + +QHP_VIRTUAL_FOLDER = qwt-6.0.0 + +# If QHP_CUST_FILTER_NAME is set, it specifies the name of a custom filter to add. +# For more information please see +# http://doc.trolltech.com/qthelpproject.html#custom-filters + +QHP_CUST_FILTER_NAME = + +# The QHP_CUST_FILT_ATTRS tag specifies the list of the attributes of the custom filter to add.For more information please see +# Qt Help Project / Custom Filters. + +QHP_CUST_FILTER_ATTRS = + +# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this project's +# filter section matches. +# Qt Help Project / Filter Attributes. + +QHP_SECT_FILTER_ATTRS = + +# If the GENERATE_QHP tag is set to YES, the QHG_LOCATION tag can +# be used to specify the location of Qt's qhelpgenerator. +# If non-empty doxygen will try to run qhelpgenerator on the generated +# .qhp file. + +QHG_LOCATION = qhelpgenerator + +# The DISABLE_INDEX tag can be used to turn on/off the condensed index at +# top of each HTML page. The value NO (the default) enables the index and +# the value YES disables it. + +DISABLE_INDEX = NO + +# This tag can be used to set the number of enum values (range [1..20]) +# that doxygen will group on one line in the generated HTML documentation. + +ENUM_VALUES_PER_LINE = 1 + +# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index +# structure should be generated to display hierarchical information. +# If the tag value is set to FRAME, a side panel will be generated +# containing a tree-like index structure (just like the one that +# is generated for HTML Help). For this to work a browser that supports +# JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+, +# Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are +# probably better off using the HTML help feature. Other possible values +# for this tag are: HIERARCHIES, which will generate the Groups, Directories, +# and Class Hierarchy pages using a tree view instead of an ordered list; +# ALL, which combines the behavior of FRAME and HIERARCHIES; and NONE, which +# disables this behavior completely. For backwards compatibility with previous +# releases of Doxygen, the values YES and NO are equivalent to FRAME and NONE +# respectively. + +GENERATE_TREEVIEW = NO + +# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be +# used to set the initial width (in pixels) of the frame in which the tree +# is shown. + +TREEVIEW_WIDTH = 250 + +# Use this tag to change the font size of Latex formulas included +# as images in the HTML documentation. The default is 10. Note that +# when you change the font size after a successful doxygen run you need +# to manually remove any form_*.png images from the HTML output directory +# to force them to be regenerated. + +FORMULA_FONTSIZE = 10 + +#--------------------------------------------------------------------------- +# configuration options related to the LaTeX output +#--------------------------------------------------------------------------- + +# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will +# generate Latex output. + +GENERATE_LATEX = NO + +# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `latex' will be used as the default path. + +LATEX_OUTPUT = latex + +# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be +# invoked. If left blank `latex' will be used as the default command name. + +LATEX_CMD_NAME = latex + +# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to +# generate index for LaTeX. If left blank `makeindex' will be used as the +# default command name. + +MAKEINDEX_CMD_NAME = makeindex + +# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact +# LaTeX documents. This may be useful for small projects and may help to +# save some trees in general. + +COMPACT_LATEX = YES + +# The PAPER_TYPE tag can be used to set the paper type that is used +# by the printer. Possible values are: a4, a4wide, letter, legal and +# executive. If left blank a4wide will be used. + +PAPER_TYPE = a4wide + +# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX +# packages that should be included in the LaTeX output. + +EXTRA_PACKAGES = + +# The LATEX_HEADER tag can be used to specify a personal LaTeX header for +# the generated latex document. The header should contain everything until +# the first chapter. If it is left blank doxygen will generate a +# standard header. Notice: only use this tag if you know what you are doing! + +LATEX_HEADER = + +# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated +# is prepared for conversion to pdf (using ps2pdf). The pdf file will +# contain links (just like the HTML output) instead of page references +# This makes the output suitable for online browsing using a pdf viewer. + +PDF_HYPERLINKS = YES + +# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of +# plain latex in the generated Makefile. Set this option to YES to get a +# higher quality PDF documentation. + +USE_PDFLATEX = YES + +# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode. +# command to the generated LaTeX files. This will instruct LaTeX to keep +# running if errors occur, instead of asking the user for help. +# This option is also used when generating formulas in HTML. + +LATEX_BATCHMODE = NO + +# If LATEX_HIDE_INDICES is set to YES then doxygen will not +# include the index chapters (such as File Index, Compound Index, etc.) +# in the output. + +LATEX_HIDE_INDICES = NO + +#--------------------------------------------------------------------------- +# configuration options related to the RTF output +#--------------------------------------------------------------------------- + +# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output +# The RTF output is optimized for Word 97 and may not look very pretty with +# other RTF readers or editors. + +GENERATE_RTF = NO + +# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `rtf' will be used as the default path. + +RTF_OUTPUT = rtf + +# If the COMPACT_RTF tag is set to YES Doxygen generates more compact +# RTF documents. This may be useful for small projects and may help to +# save some trees in general. + +COMPACT_RTF = NO + +# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated +# will contain hyperlink fields. The RTF file will +# contain links (just like the HTML output) instead of page references. +# This makes the output suitable for online browsing using WORD or other +# programs which support those fields. +# Note: wordpad (write) and others do not support links. + +RTF_HYPERLINKS = NO + +# Load stylesheet definitions from file. Syntax is similar to doxygen's +# config file, i.e. a series of assignments. You only have to provide +# replacements, missing definitions are set to their default value. + +RTF_STYLESHEET_FILE = + +# Set optional variables used in the generation of an rtf document. +# Syntax is similar to doxygen's config file. + +RTF_EXTENSIONS_FILE = + +#--------------------------------------------------------------------------- +# configuration options related to the man page output +#--------------------------------------------------------------------------- + +# If the GENERATE_MAN tag is set to YES (the default) Doxygen will +# generate man pages + +GENERATE_MAN = NO + +# The MAN_OUTPUT tag is used to specify where the man pages will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `man' will be used as the default path. + +MAN_OUTPUT = man + +# The MAN_EXTENSION tag determines the extension that is added to +# the generated man pages (default is the subroutine's section .3) + +MAN_EXTENSION = .3 + +# If the MAN_LINKS tag is set to YES and Doxygen generates man output, +# then it will generate one additional man file for each entity +# documented in the real man page(s). These additional files +# only source the real man page, but without them the man command +# would be unable to find the correct page. The default is NO. + +MAN_LINKS = NO + +#--------------------------------------------------------------------------- +# configuration options related to the XML output +#--------------------------------------------------------------------------- + +# If the GENERATE_XML tag is set to YES Doxygen will +# generate an XML file that captures the structure of +# the code including all documentation. + +GENERATE_XML = NO + +# The XML_OUTPUT tag is used to specify where the XML pages will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `xml' will be used as the default path. + +XML_OUTPUT = xml + +# The XML_SCHEMA tag can be used to specify an XML schema, +# which can be used by a validating XML parser to check the +# syntax of the XML files. + +XML_SCHEMA = + +# The XML_DTD tag can be used to specify an XML DTD, +# which can be used by a validating XML parser to check the +# syntax of the XML files. + +XML_DTD = + +# If the XML_PROGRAMLISTING tag is set to YES Doxygen will +# dump the program listings (including syntax highlighting +# and cross-referencing information) to the XML output. Note that +# enabling this will significantly increase the size of the XML output. + +XML_PROGRAMLISTING = YES + +#--------------------------------------------------------------------------- +# configuration options for the AutoGen Definitions output +#--------------------------------------------------------------------------- + +# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will +# generate an AutoGen Definitions (see autogen.sf.net) file +# that captures the structure of the code including all +# documentation. Note that this feature is still experimental +# and incomplete at the moment. + +GENERATE_AUTOGEN_DEF = NO + +#--------------------------------------------------------------------------- +# configuration options related to the Perl module output +#--------------------------------------------------------------------------- + +# If the GENERATE_PERLMOD tag is set to YES Doxygen will +# generate a Perl module file that captures the structure of +# the code including all documentation. Note that this +# feature is still experimental and incomplete at the +# moment. + +GENERATE_PERLMOD = NO + +# If the PERLMOD_LATEX tag is set to YES Doxygen will generate +# the necessary Makefile rules, Perl scripts and LaTeX code to be able +# to generate PDF and DVI output from the Perl module output. + +PERLMOD_LATEX = NO + +# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be +# nicely formatted so it can be parsed by a human reader. +# This is useful +# if you want to understand what is going on. +# On the other hand, if this +# tag is set to NO the size of the Perl module output will be much smaller +# and Perl will parse it just the same. + +PERLMOD_PRETTY = YES + +# The names of the make variables in the generated doxyrules.make file +# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. +# This is useful so different doxyrules.make files included by the same +# Makefile don't overwrite each other's variables. + +PERLMOD_MAKEVAR_PREFIX = + +#--------------------------------------------------------------------------- +# Configuration options related to the preprocessor +#--------------------------------------------------------------------------- + +# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will +# evaluate all C-preprocessor directives found in the sources and include +# files. + +ENABLE_PREPROCESSING = YES + +# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro +# names in the source code. If set to NO (the default) only conditional +# compilation will be performed. Macro expansion can be done in a controlled +# way by setting EXPAND_ONLY_PREDEF to YES. + +MACRO_EXPANSION = YES + +# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES +# then the macro expansion is limited to the macros specified with the +# PREDEFINED and EXPAND_AS_DEFINED tags. + +EXPAND_ONLY_PREDEF = YES + +# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files +# in the INCLUDE_PATH (see below) will be search if a #include is found. + +SEARCH_INCLUDES = YES + +# The INCLUDE_PATH tag can be used to specify one or more directories that +# contain include files that are not input files but should be processed by +# the preprocessor. + +INCLUDE_PATH = $(QTDIR)/include + +# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard +# patterns (like *.h and *.hpp) to filter out the header-files in the +# directories. If left blank, the patterns specified with FILE_PATTERNS will +# be used. + +INCLUDE_FILE_PATTERNS = *.h + +# The PREDEFINED tag can be used to specify one or more macro names that +# are defined before the preprocessor is started (similar to the -D option of +# gcc). The argument of the tag is a list of macros of the form: name +# or name=definition (no spaces). If the definition and the = are +# omitted =1 is assumed. To prevent a macro definition from being +# undefined via #undef or recursively expanded use the := operator +# instead of the = operator. + +PREDEFINED = Q_ENUMS(x)= \ + Q_EXPORT= \ + Q_OBJECT= \ + Q_PROPERTY(x)= \ + QT_VERSION=0x040700 + +# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then +# this tag can be used to specify a list of macro names that should be expanded. +# The macro definition that is found in the sources will be used. +# Use the PREDEFINED tag if you want to use a different macro definition. + +EXPAND_AS_DEFINED = + +# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then +# doxygen's preprocessor will remove all function-like macros that are alone +# on a line, have an all uppercase name, and do not end with a semicolon. Such +# function macros are typically used for boiler-plate code, and will confuse +# the parser if not removed. + +SKIP_FUNCTION_MACROS = YES + +#--------------------------------------------------------------------------- +# Configuration::additions related to external references +#--------------------------------------------------------------------------- + +# The TAGFILES option can be used to specify one or more tagfiles. +# Optionally an initial location of the external documentation +# can be added for each tagfile. The format of a tag file without +# this location is as follows: +# +# TAGFILES = file1 file2 ... +# Adding location for the tag files is done as follows: +# +# TAGFILES = file1=loc1 "file2 = loc2" ... +# where "loc1" and "loc2" can be relative or absolute paths or +# URLs. If a location is present for each tag, the installdox tool +# does not have to be run to correct the links. +# Note that each tag file must have a unique name +# (where the name does NOT include the path) +# If a tag file is not located in the directory in which doxygen +# is run, you must also specify the path to the tagfile here. + +TAGFILES = + +# When a file name is specified after GENERATE_TAGFILE, doxygen will create +# a tag file that is based on the input files it reads. + +GENERATE_TAGFILE = + +# If the ALLEXTERNALS tag is set to YES all external classes will be listed +# in the class index. If set to NO only the inherited external classes +# will be listed. + +ALLEXTERNALS = NO + +# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed +# in the modules index. If set to NO, only the current project's groups will +# be listed. + +EXTERNAL_GROUPS = NO + +# The PERL_PATH should be the absolute path and name of the perl script +# interpreter (i.e. the result of `which perl'). + +PERL_PATH = /usr/bin/perl + +#--------------------------------------------------------------------------- +# Configuration options related to the dot tool +#--------------------------------------------------------------------------- + +# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will +# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base +# or super classes. Setting the tag to NO turns the diagrams off. Note that +# this option is superseded by the HAVE_DOT option below. This is only a +# fallback. It is recommended to install and use dot, since it yields more +# powerful graphs. + +CLASS_DIAGRAMS = YES + +# You can define message sequence charts within doxygen comments using the \msc +# command. Doxygen will then run the mscgen tool (see +# http://www.mcternan.me.uk/mscgen/) to produce the chart and insert it in the +# documentation. The MSCGEN_PATH tag allows you to specify the directory where +# the mscgen tool resides. If left empty the tool is assumed to be found in the +# default search path. + +MSCGEN_PATH = + +# If set to YES, the inheritance and collaboration graphs will hide +# inheritance and usage relations if the target is undocumented +# or is not a class. + +HIDE_UNDOC_RELATIONS = YES + +# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is +# available from the path. This tool is part of Graphviz, a graph visualization +# toolkit from AT&T and Lucent Bell Labs. The other options in this section +# have no effect if this option is set to NO (the default) + +HAVE_DOT = YES + +# By default doxygen will write a font called FreeSans.ttf to the output +# directory and reference it in all dot files that doxygen generates. This +# font does not include all possible unicode characters however, so when you need +# these (or just want a differently looking font) you can specify the font name +# using DOT_FONTNAME. You need need to make sure dot is able to find the font, +# which can be done by putting it in a standard location or by setting the +# DOTFONTPATH environment variable or by setting DOT_FONTPATH to the directory +# containing the font. + +DOT_FONTNAME = FreeSans + +# The DOT_FONTSIZE tag can be used to set the size of the font of dot graphs. +# The default size is 10pt. + +DOT_FONTSIZE = 10 + +# By default doxygen will tell dot to use the output directory to look for the +# FreeSans.ttf font (which doxygen will put there itself). If you specify a +# different font using DOT_FONTNAME you can set the path where dot +# can find it using this tag. + +DOT_FONTPATH = + +# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen +# will generate a graph for each documented class showing the direct and +# indirect inheritance relations. Setting this tag to YES will force the +# the CLASS_DIAGRAMS tag to NO. + +CLASS_GRAPH = YES + +# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen +# will generate a graph for each documented class showing the direct and +# indirect implementation dependencies (inheritance, containment, and +# class references variables) of the class with other documented classes. + +COLLABORATION_GRAPH = NO + +# If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen +# will generate a graph for groups, showing the direct groups dependencies + +GROUP_GRAPHS = YES + +# If the UML_LOOK tag is set to YES doxygen will generate inheritance and +# collaboration diagrams in a style similar to the OMG's Unified Modeling +# Language. + +UML_LOOK = NO + +# If set to YES, the inheritance and collaboration graphs will show the +# relations between templates and their instances. + +TEMPLATE_RELATIONS = YES + +# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT +# tags are set to YES then doxygen will generate a graph for each documented +# file showing the direct and indirect include dependencies of the file with +# other documented files. + +INCLUDE_GRAPH = YES + +# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and +# HAVE_DOT tags are set to YES then doxygen will generate a graph for each +# documented header file showing the documented files that directly or +# indirectly include this file. + +INCLUDED_BY_GRAPH = NO + +# If the CALL_GRAPH and HAVE_DOT options are set to YES then +# doxygen will generate a call dependency graph for every global function +# or class method. Note that enabling this option will significantly increase +# the time of a run. So in most cases it will be better to enable call graphs +# for selected functions only using the \callgraph command. + +CALL_GRAPH = NO + +# If the CALLER_GRAPH and HAVE_DOT tags are set to YES then +# doxygen will generate a caller dependency graph for every global function +# or class method. Note that enabling this option will significantly increase +# the time of a run. So in most cases it will be better to enable caller +# graphs for selected functions only using the \callergraph command. + +CALLER_GRAPH = NO + +# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen +# will graphical hierarchy of all classes instead of a textual one. + +GRAPHICAL_HIERARCHY = YES + +# If the DIRECTORY_GRAPH, SHOW_DIRECTORIES and HAVE_DOT tags are set to YES +# then doxygen will show the dependencies a directory has on other directories +# in a graphical way. The dependency relations are determined by the #include +# relations between the files in the directories. + +DIRECTORY_GRAPH = YES + +# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images +# generated by dot. Possible values are png, jpg, or gif +# If left blank png will be used. + +DOT_IMAGE_FORMAT = png + +# The tag DOT_PATH can be used to specify the path where the dot tool can be +# found. If left blank, it is assumed the dot tool can be found in the path. + +DOT_PATH = + +# The DOTFILE_DIRS tag can be used to specify one or more directories that +# contain dot files that are included in the documentation (see the +# \dotfile command). + +DOTFILE_DIRS = + +# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of +# nodes that will be shown in the graph. If the number of nodes in a graph +# becomes larger than this value, doxygen will truncate the graph, which is +# visualized by representing a node as a red box. Note that doxygen if the +# number of direct children of the root node in a graph is already larger than +# DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note +# that the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH. + +DOT_GRAPH_MAX_NODES = 50 + +# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the +# graphs generated by dot. A depth value of 3 means that only nodes reachable +# from the root by following a path via at most 3 edges will be shown. Nodes +# that lay further from the root node will be omitted. Note that setting this +# option to 1 or 2 may greatly reduce the computation time needed for large +# code bases. Also note that the size of a graph can be further restricted by +# DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction. + +MAX_DOT_GRAPH_DEPTH = 0 + +# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent +# background. This is disabled by default, because dot on Windows does not +# seem to support this out of the box. Warning: Depending on the platform used, +# enabling this option may lead to badly anti-aliased labels on the edges of +# a graph (i.e. they become hard to read). + +DOT_TRANSPARENT = NO + +# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output +# files in one run (i.e. multiple -o and -T options on the command line). This +# makes dot run faster, but since only newer versions of dot (>1.8.10) +# support this, this feature is disabled by default. + +DOT_MULTI_TARGETS = NO + +# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will +# generate a legend page explaining the meaning of the various boxes and +# arrows in the dot generated graphs. + +GENERATE_LEGEND = YES + +# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will +# remove the intermediate dot files that are used to generate +# the various graphs. + +DOT_CLEANUP = YES + +#--------------------------------------------------------------------------- +# Options related to the search engine +#--------------------------------------------------------------------------- + +# The SEARCHENGINE tag specifies whether or not a search engine should be +# used. If set to NO the values of all tags below this one will be ignored. + +SEARCHENGINE = NO Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/analogclock.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/analogclock.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/annotated.html phyxcalc-3rev200/qwt-6.0.0/doc/html/annotated.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/annotated.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/annotated.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,162 @@ + + + + +Qwt User's Guide: Class List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

Class List

+
+
+
Here are the classes, structs, unions and interfaces with brief descriptions:
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
QwtEventPattern::KeyPatternA pattern for key events
QwtEventPattern::MousePatternA pattern for mouse events
QwtAbstractScaleAn abstract base class for classes containing a scale
QwtAbstractScaleDrawA abstract base class for drawing scales
QwtAbstractSliderAn abstract base class for slider widgets
QwtAlphaColorMapQwtAlphaColorMap variies the alpha value of a color
QwtAnalogClockAn analog clock
QwtArraySeriesData< T >Template class for data, that is organized as QVector
QwtArrowButtonArrow Button
QwtClipperSome clipping algos
QwtColorMapQwtColorMap is used to map values into colors
QwtColumnRectDirected rectangle representing bounding rectangle und orientation of a column
QwtColumnSymbolA drawing primitive for columns
QwtCompassA Compass Widget
QwtCompassMagnetNeedleA magnet needle for compass widgets
QwtCompassRoseAbstract base class for a compass rose
QwtCompassWindArrowAn indicator for the wind direction
QwtCounterThe Counter Widget
QwtCPointerDataData class containing two pointers to memory blocks of doubles
QwtCurveFitterAbstract base class for a curve fitter
QwtDialQwtDial class provides a rounded range control
QwtDialNeedleBase class for needles that can be used in a QwtDial
QwtDialScaleDrawA special scale draw made for QwtDial
QwtDialSimpleNeedleA needle for dial widgets
QwtDoubleRangeA class which controls a value within an interval
QwtDynGridLayoutLays out widgets in a grid, adjusting the number of columns and rows to the current size
QwtEventPatternA collection of event patterns
QwtIntervalA class representing an interval
QwtIntervalSampleA sample of the types (x1-x2, y) or (x, y1-y2)
QwtIntervalSeriesDataInterface for iterating over an array of intervals
QwtIntervalSymbolA drawing primitive for displaying an interval like an error bar
QwtKnobThe Knob Widget
QwtLegendThe legend widget
QwtLegendItemA widget representing something on a QwtLegend()
QwtLegendItemManagerAbstract API to bind plot items to the legend
QwtLinearColorMapQwtLinearColorMap builds a color map from color stops
QwtLinearScaleEngineA scale engine for linear scales
QwtLog10ScaleEngineA scale engine for logarithmic (base 10) scales
QwtMagnifierQwtMagnifier provides zooming, by magnifying in steps
QwtMathMLDocumentRenders mathematical formulas written in MathML 2.0
QwtMathMLTextEngineText Engine for the MathML renderer of the Qt solutions package
QwtMatrixRasterDataA class representing a matrix of values as raster data
QwtNullPaintDeviceA null paint device doing nothing
QwtPainterA collection of QPainter workarounds
QwtPannerQwtPanner provides panning of a widget
QwtPickerQwtPicker provides selections on a widget
QwtPickerClickPointMachineA state machine for point selections
QwtPickerClickRectMachineA state machine for rectangle selections
QwtPickerDragPointMachineA state machine for point selections
QwtPickerDragRectMachineA state machine for rectangle selections
QwtPickerMachineA state machine for QwtPicker selections
QwtPickerPolygonMachineA state machine for polygon selections
QwtPickerTrackerMachineA state machine for indicating mouse movements
QwtPlainTextEngineA text engine for plain texts
QwtPlotA 2-D plotting widget
QwtPlotAbstractSeriesItemBase class for plot items representing a series of samples
QwtPlotCanvasCanvas of a QwtPlot
QwtPlotCurveA plot item, that represents a series of points
QwtPlotDictA dictionary for plot items
QwtPlotDirectPainterPainter object trying to paint incrementally
QwtPlotGridA class which draws a coordinate grid
QwtPlotHistogramQwtPlotHistogram represents a series of samples, where an interval is associated with a value ( $y = f([x1,x2])$ )
QwtPlotIntervalCurveQwtPlotIntervalCurve represents a series of samples, where each value is associated with an interval ( $[y1,y2] = f(x)$ )
QwtPlotItemBase class for items on the plot canvas
QwtPlotLayoutLayout engine for QwtPlot
QwtPlotMagnifierQwtPlotMagnifier provides zooming, by magnifying in steps
QwtPlotMarkerA class for drawing markers
QwtPlotPannerQwtPlotPanner provides panning of a plot canvas
QwtPlotPickerQwtPlotPicker provides selections on a plot canvas
QwtPlotRasterItemA class, which displays raster data
QwtPlotRendererRenderer for exporting a plot to a document, a printer or anything else, that is supported by QPainter/QPaintDevice
QwtPlotRescalerQwtPlotRescaler takes care of fixed aspect ratios for plot scales
QwtPlotScaleItemA class which draws a scale inside the plot canvas
QwtPlotSeriesItem< T >Class template for plot items representing a series of samples
QwtPlotSpectroCurveCurve that displays 3D points as dots, where the z coordinate is mapped to a color
QwtPlotSpectrogramA plot item, which displays a spectrogram
QwtPlotSvgItemA plot item, which displays data in Scalable Vector Graphics (SVG) format
QwtPlotZoomerQwtPlotZoomer provides stacked zooming for a plot widget
QwtPoint3DQwtPoint3D class defines a 3D point in double coordinates
QwtPoint3DSeriesDataInterface for iterating over an array of 3D points
QwtPointArrayDataInterface for iterating over two QVector<double> objects
QwtPointPolarA point in polar coordinates
QwtPointSeriesDataInterface for iterating over an array of points
QwtRasterDataQwtRasterData defines an interface to any type of raster data
QwtRichTextEngineA text engine for Qt rich texts
QwtRoundScaleDrawA class for drawing round scales
QwtSamplingThreadA thread collecting samples at regular intervals
QwtScaleArithmeticArithmetic including a tolerance
QwtScaleDivA class representing a scale division
QwtScaleDrawA class for drawing scales
QwtScaleEngineBase class for scale engines
QwtScaleMapA scale map
QwtScaleTransformationOperations for linear or logarithmic (base 10) transformations
QwtScaleWidgetA Widget which contains a scale
QwtSeriesData< T >Abstract interface for iterating over samples
QwtSetSampleA sample of the types (x1...xn, y) or (x, y1..yn)
QwtSetSeriesDataInterface for iterating over an array of samples
QwtSimpleCompassRoseA simple rose for QwtCompass
QwtSliderThe Slider Widget
QwtSplineA class for spline interpolation
QwtSplineCurveFitterA curve fitter using cubic splines
QwtSymbolA class for drawing symbols
QwtSyntheticPointDataSynthetic point data
QwtSystemClockQwtSystemClock provides high resolution clock time functions
QwtTextA class representing a text
QwtTextEngineAbstract base class for rendering text strings
QwtTextLabelA Widget which displays a QwtText
QwtThermoThe Thermometer Widget
QwtWeedingCurveFitterA curve fitter implementing Douglas and Peucker algorithm
QwtWheelThe Wheel Widget
+
+ + + Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/bc_s.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/bc_s.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/classes.html phyxcalc-3rev200/qwt-6.0.0/doc/html/classes.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/classes.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/classes.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,67 @@ + + + + +Qwt User's Guide: Class Index + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

Class Index

+
+
+
A | C | D | E | I | K | L | M | N | P | R | S | T | W
+ +
  A  
+
QwtIntervalSample   QwtPickerTrackerMachine   
  R  
+
QwtAbstractScale   QwtIntervalSeriesData   QwtPlainTextEngine   QwtRasterData   
QwtAbstractScaleDraw   QwtIntervalSymbol   QwtPlot   QwtRichTextEngine   
QwtAbstractSlider   
  K  
+
QwtPlotAbstractSeriesItem   QwtRoundScaleDraw   
QwtAlphaColorMap   QwtEventPattern::KeyPattern   QwtPlotCanvas   
  S  
+
QwtAnalogClock   QwtKnob   QwtPlotCurve   QwtSamplingThread   
QwtArraySeriesData   
  L  
+
QwtPlotDict   QwtScaleArithmetic   
QwtArrowButton   QwtLegend   QwtPlotDirectPainter   QwtScaleDiv   
  C  
+
QwtLegendItem   QwtPlotGrid   QwtScaleDraw   
QwtClipper   QwtLegendItemManager   QwtPlotHistogram   QwtScaleEngine   
QwtColorMap   QwtLinearColorMap   QwtPlotIntervalCurve   QwtScaleMap   
QwtColumnRect   QwtLinearScaleEngine   QwtPlotItem   QwtScaleTransformation   
QwtColumnSymbol   QwtLog10ScaleEngine   QwtPlotLayout   QwtScaleWidget   
QwtCompass   
  M  
+
QwtPlotMagnifier   QwtSeriesData   
QwtCompassMagnetNeedle   QwtMagnifier   QwtPlotMarker   QwtSetSample   
QwtCompassRose   QwtMathMLDocument   QwtPlotPanner   QwtSetSeriesData   
QwtCompassWindArrow   QwtMathMLTextEngine   QwtPlotPicker   QwtSimpleCompassRose   
QwtCounter   QwtMatrixRasterData   QwtPlotRasterItem   QwtSlider   
QwtCPointerData   QwtEventPattern::MousePattern   QwtPlotRenderer   QwtSpline   
QwtCurveFitter   
  N  
+
QwtPlotRescaler   QwtSplineCurveFitter   
  D  
+
QwtNullPaintDevice   QwtPlotScaleItem   QwtSymbol   
QwtDial   
  P  
+
QwtPlotSeriesItem   QwtSyntheticPointData   
QwtDialNeedle   QwtPainter   QwtPlotSpectroCurve   QwtSystemClock   
QwtDialScaleDraw   QwtPanner   QwtPlotSpectrogram   
  T  
+
QwtDialSimpleNeedle   QwtPicker   QwtPlotSvgItem   QwtText   
QwtDoubleRange   QwtPickerClickPointMachine   QwtPlotZoomer   QwtTextEngine   
QwtDynGridLayout   QwtPickerClickRectMachine   QwtPoint3D   QwtTextLabel   
  E  
+
QwtPickerDragPointMachine   QwtPoint3DSeriesData   QwtThermo   
QwtEventPattern   QwtPickerDragRectMachine   QwtPointArrayData   
  W  
+
  I  
+
QwtPickerMachine   QwtPointPolar   QwtWeedingCurveFitter   
QwtInterval   QwtPickerPolygonMachine   QwtPointSeriesData   QwtWheel   
A | C | D | E | I | K | L | M | N | P | R | S | T | W
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale_draw.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale_draw.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale_draw.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale_draw.html 2011-04-15 10:49:22.000000000 +0000 @@ -0,0 +1,818 @@ + + + + +Qwt User's Guide: QwtAbstractScaleDraw Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtAbstractScaleDraw Class Reference

+
+
+ +

A abstract base class for drawing scales. +More...

+ +

#include <qwt_abstract_scale_draw.h>

+
+Inheritance diagram for QwtAbstractScaleDraw:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Types

enum  ScaleComponent {
+  Backbone = 0x01, +
+  Ticks = 0x02, +
+  Labels = 0x04 +
+ }
typedef QFlags< ScaleComponentScaleComponents

+Public Member Functions

 QwtAbstractScaleDraw ()
virtual ~QwtAbstractScaleDraw ()
void setScaleDiv (const QwtScaleDiv &s)
const QwtScaleDivscaleDiv () const
void setTransformation (QwtScaleTransformation *)
const QwtScaleMapscaleMap () const
QwtScaleMapscaleMap ()
void enableComponent (ScaleComponent, bool enable=true)
bool hasComponent (ScaleComponent) const
void setTickLength (QwtScaleDiv::TickType, double length)
double tickLength (QwtScaleDiv::TickType) const
double maxTickLength () const
void setSpacing (double margin)
double spacing () const
void setPenWidth (int width)
int penWidth () const
virtual void draw (QPainter *, const QPalette &) const
virtual QwtText label (double) const
virtual double extent (const QFont &) const =0
void setMinimumExtent (double)
double minimumExtent () const

+Protected Member Functions

virtual void drawTick (QPainter *painter, double value, double len) const =0
virtual void drawBackbone (QPainter *painter) const =0
virtual void drawLabel (QPainter *painter, double value) const =0
void invalidateCache ()
const QwtTexttickLabel (const QFont &, double value) const
+

Detailed Description

+

A abstract base class for drawing scales.

+

QwtAbstractScaleDraw can be used to draw linear or logarithmic scales.

+

After a scale division has been specified as a QwtScaleDiv object using QwtAbstractScaleDraw::setScaleDiv(const QwtScaleDiv &s), the scale can be drawn with the QwtAbstractScaleDraw::draw() member.

+

Member Typedef Documentation

+ +
+ +
+ +

Scale components.

+ +
+
+

Member Enumeration Documentation

+ +
+ +
+

Components of a scale

+
See also:
enableComponent(), hasComponent
+
Enumerator:
+ + + +
Backbone  +

Backbone = the line where the ticks are located.

+
Ticks  +

Ticks.

+
Labels  +

Labels.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtAbstractScaleDraw::QwtAbstractScaleDraw ()
+
+
+ +

Constructor.

+

The range of the scale is initialized to [0, 100], The spacing (distance between ticks and labels) is set to 4, the tick lengths are set to 4,6 and 8 pixels

+ +
+
+ +
+
+ + + + + + + +
QwtAbstractScaleDraw::~QwtAbstractScaleDraw () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtAbstractScaleDraw::draw (QPainter * painter,
const QPalette & palette 
) const [virtual]
+
+
+ +

Draw the scale.

+
Parameters:
+ + + +
painterThe painter
palettePalette, text color is used for the labels, foreground color for ticks and backbone
+
+
+ +
+
+ +
+
+ + + + + + + + +
virtual void QwtAbstractScaleDraw::drawBackbone (QPainter * painter) const [protected, pure virtual]
+
+
+

Draws the baseline of the scale

+
Parameters:
+ + +
painterPainter
+
+
+
See also:
drawTick(), drawLabel()
+ +

Implemented in QwtRoundScaleDraw, and QwtScaleDraw.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
virtual void QwtAbstractScaleDraw::drawLabel (QPainter * painter,
double value 
) const [protected, pure virtual]
+
+
+

Draws the label for a major scale tick

+
Parameters:
+ + + +
painterPainter
valueValue
+
+
+
See also:
drawTick(), drawBackbone()
+ +

Implemented in QwtRoundScaleDraw, and QwtScaleDraw.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual void QwtAbstractScaleDraw::drawTick (QPainter * painter,
double value,
double len 
) const [protected, pure virtual]
+
+
+

Draw a tick

+
Parameters:
+ + + + +
painterPainter
valueValue of the tick
lenLenght of the tick
+
+
+
See also:
drawBackbone(), drawLabel()
+ +

Implemented in QwtRoundScaleDraw, and QwtScaleDraw.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtAbstractScaleDraw::enableComponent (ScaleComponent component,
bool enable = true 
)
+
+
+

En/Disable a component of the scale

+
Parameters:
+ + + +
componentScale component
enableOn/Off
+
+
+
See also:
hasComponent()
+ +
+
+ +
+
+ + + + + + + + +
virtual double QwtAbstractScaleDraw::extent (const QFont & ) const [pure virtual]
+
+
+

Calculate the extent

+

The extent is the distcance from the baseline to the outermost pixel of the scale draw in opposite to its orientation. It is at least minimumExtent() pixels.

+
See also:
setMinimumExtent(), minimumExtent()
+ +

Implemented in QwtRoundScaleDraw, and QwtScaleDraw.

+ +
+
+ +
+
+ + + + + + + + +
bool QwtAbstractScaleDraw::hasComponent (ScaleComponent component) const
+
+
+

Check if a component is enabled

+
See also:
enableComponent()
+ +
+
+ +
+
+ + + + + + + +
void QwtAbstractScaleDraw::invalidateCache () [protected]
+
+
+

Invalidate the cache used by QwtAbstractScaleDraw::tickLabel

+

The cache is invalidated, when a new QwtScaleDiv is set. If the labels need to be changed. while the same QwtScaleDiv is set, invalidateCache() needs to be called manually.

+ +
+
+ +
+
+ + + + + + + + +
QwtText QwtAbstractScaleDraw::label (double value) const [virtual]
+
+
+ +

Convert a value into its representing label.

+

The value is converted to a plain text using QLocale::system().toString(value). This method is often overloaded by applications to have individual labels.

+
Parameters:
+ + +
valueValue
+
+
+
Returns:
Label string.
+ +

Reimplemented in QwtDialScaleDraw.

+ +
+
+ +
+
+ + + + + + + +
double QwtAbstractScaleDraw::maxTickLength () const
+
+
+
Returns:
Length of the longest tick
+

Useful for layout calculations

+
See also:
tickLength(), setTickLength()
+ +
+
+ +
+
+ + + + + + + +
double QwtAbstractScaleDraw::minimumExtent () const
+
+
+

Get the minimum extent

+
See also:
extent(), setMinimumExtent()
+ +
+
+ +
+
+ + + + + + + +
int QwtAbstractScaleDraw::penWidth () const
+
+
+
Returns:
Scale pen width
+
See also:
setPenWidth()
+ +

Reimplemented in QwtDialScaleDraw.

+ +
+
+ +
+
+ + + + + + + +
const QwtScaleDiv & QwtAbstractScaleDraw::scaleDiv () const
+
+
+
Returns:
scale division
+ +
+
+ +
+
+ + + + + + + +
const QwtScaleMap & QwtAbstractScaleDraw::scaleMap () const
+
+
+
Returns:
Map how to translate between scale and pixel values
+ +
+
+ +
+
+ + + + + + + +
QwtScaleMap & QwtAbstractScaleDraw::scaleMap ()
+
+
+
Returns:
Map how to translate between scale and pixel values
+ +
+
+ +
+
+ + + + + + + + +
void QwtAbstractScaleDraw::setMinimumExtent (double minExtent)
+
+
+ +

Set a minimum for the extent.

+

The extent is calculated from the coomponents of the scale draw. In situations, where the labels are changing and the layout depends on the extent (f.e scrolling a scale), setting an upper limit as minimum extent will avoid jumps of the layout.

+
Parameters:
+ + +
minExtentMinimum extent
+
+
+
See also:
extent(), minimumExtent()
+ +
+
+ +
+
+ + + + + + + + +
void QwtAbstractScaleDraw::setPenWidth (int width)
+
+
+ +

Specify the width of the scale pen.

+
Parameters:
+ + +
widthPen width
+
+
+
See also:
penWidth()
+ +
+
+ +
+
+ + + + + + + + +
void QwtAbstractScaleDraw::setScaleDiv (const QwtScaleDivsd)
+
+
+

Change the scale division

+
Parameters:
+ + +
sdNew scale division
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtAbstractScaleDraw::setSpacing (double spacing)
+
+
+ +

Set the spacing between tick and labels.

+

The spacing is the distance between ticks and labels. The default spacing is 4 pixels.

+
Parameters:
+ + +
spacingSpacing
+
+
+
See also:
spacing()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtAbstractScaleDraw::setTickLength (QwtScaleDiv::TickType tickType,
double length 
)
+
+
+

Set the length of the ticks

+
Parameters:
+ + + +
tickTypeTick type
lengthNew length
+
+
+
Warning:
the length is limited to [0..1000]
+ +
+
+ +
+
+ + + + + + + + +
void QwtAbstractScaleDraw::setTransformation (QwtScaleTransformationtransformation)
+
+
+

Change the transformation of the scale

+
Parameters:
+ + +
transformationNew scale transformation
+
+
+ +
+
+ +
+
+ + + + + + + +
double QwtAbstractScaleDraw::spacing () const
+
+
+ +

Get the spacing.

+

The spacing is the distance between ticks and labels. The default spacing is 4 pixels.

+
See also:
setSpacing()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
const QwtText & QwtAbstractScaleDraw::tickLabel (const QFont & font,
double value 
) const [protected]
+
+
+ +

Convert a value into its representing label and cache it.

+

The conversion between value and label is called very often in the layout and painting code. Unfortunately the calculation of the label sizes might be slow (really slow for rich text in Qt4), so it's necessary to cache the labels.

+
Parameters:
+ + + +
fontFont
valueValue
+
+
+
Returns:
Tick label
+ +
+
+ +
+
+ + + + + + + + +
double QwtAbstractScaleDraw::tickLength (QwtScaleDiv::TickType tickType) const
+
+
+

Return the length of the ticks

+
See also:
setTickLength(), maxTickLength()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale_draw__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale_draw__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale_draw__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale_draw__inherit__graph.map 2011-04-15 10:49:04.000000000 +0000 @@ -0,0 +1,5 @@ + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale_draw__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale_draw__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale_draw__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale_draw__inherit__graph.md5 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1 @@ +69798cc64c0f0b4ab803ffed2d95c92a \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale_draw__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale_draw__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale_draw-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale_draw-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale_draw-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale_draw-members.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,82 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtAbstractScaleDraw Member List

+
+
+This is the complete list of members for QwtAbstractScaleDraw, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Backbone enum valueQwtAbstractScaleDraw
draw(QPainter *, const QPalette &) const QwtAbstractScaleDraw [virtual]
drawBackbone(QPainter *painter) const =0QwtAbstractScaleDraw [protected, pure virtual]
drawLabel(QPainter *painter, double value) const =0QwtAbstractScaleDraw [protected, pure virtual]
drawTick(QPainter *painter, double value, double len) const =0QwtAbstractScaleDraw [protected, pure virtual]
enableComponent(ScaleComponent, bool enable=true)QwtAbstractScaleDraw
extent(const QFont &) const =0QwtAbstractScaleDraw [pure virtual]
hasComponent(ScaleComponent) const QwtAbstractScaleDraw
invalidateCache()QwtAbstractScaleDraw [protected]
label(double) const QwtAbstractScaleDraw [virtual]
Labels enum valueQwtAbstractScaleDraw
maxTickLength() const QwtAbstractScaleDraw
minimumExtent() const QwtAbstractScaleDraw
penWidth() const QwtAbstractScaleDraw
QwtAbstractScaleDraw()QwtAbstractScaleDraw
ScaleComponent enum nameQwtAbstractScaleDraw
ScaleComponents typedefQwtAbstractScaleDraw
scaleDiv() const QwtAbstractScaleDraw
scaleMap() const QwtAbstractScaleDraw
scaleMap()QwtAbstractScaleDraw
setMinimumExtent(double)QwtAbstractScaleDraw
setPenWidth(int width)QwtAbstractScaleDraw
setScaleDiv(const QwtScaleDiv &s)QwtAbstractScaleDraw
setSpacing(double margin)QwtAbstractScaleDraw
setTickLength(QwtScaleDiv::TickType, double length)QwtAbstractScaleDraw
setTransformation(QwtScaleTransformation *)QwtAbstractScaleDraw
spacing() const QwtAbstractScaleDraw
tickLabel(const QFont &, double value) const QwtAbstractScaleDraw [protected]
tickLength(QwtScaleDiv::TickType) const QwtAbstractScaleDraw
Ticks enum valueQwtAbstractScaleDraw
~QwtAbstractScaleDraw()QwtAbstractScaleDraw [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale.html 2011-04-15 10:49:22.000000000 +0000 @@ -0,0 +1,563 @@ + + + + +Qwt User's Guide: QwtAbstractScale Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtAbstractScale Class Reference

+
+
+ +

An abstract base class for classes containing a scale. +More...

+ +

#include <qwt_abstract_scale.h>

+
+Inheritance diagram for QwtAbstractScale:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 QwtAbstractScale ()
virtual ~QwtAbstractScale ()
void setScale (double vmin, double vmax, double step=0.0)
void setScale (const QwtInterval &, double step=0.0)
void setScale (const QwtScaleDiv &)
void setAutoScale ()
bool autoScale () const
void setScaleMaxMajor (int ticks)
int scaleMaxMinor () const
void setScaleMaxMinor (int ticks)
int scaleMaxMajor () const
void setScaleEngine (QwtScaleEngine *)
const QwtScaleEnginescaleEngine () const
QwtScaleEnginescaleEngine ()
const QwtScaleMapscaleMap () const

+Protected Member Functions

void rescale (double vmin, double vmax, double step=0.0)
void setAbstractScaleDraw (QwtAbstractScaleDraw *)
const QwtAbstractScaleDrawabstractScaleDraw () const
QwtAbstractScaleDrawabstractScaleDraw ()
virtual void scaleChange ()
+

Detailed Description

+

An abstract base class for classes containing a scale.

+

QwtAbstractScale is used to provide classes with a QwtScaleDraw, and a QwtScaleDiv. The QwtScaleDiv might be set explicitely or calculated by a QwtScaleEngine.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtAbstractScale::QwtAbstractScale ()
+
+
+

Constructor

+

Creates a default QwtScaleDraw and a QwtLinearScaleEngine. Autoscaling is enabled, and the stepSize is initialized by 0.0.

+ +
+
+ +
+
+ + + + + + + +
QwtAbstractScale::~QwtAbstractScale () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
const QwtAbstractScaleDraw * QwtAbstractScale::abstractScaleDraw () const [protected]
+
+
+
Returns:
Scale draw
+
See also:
setAbstractScaleDraw()
+ +
+
+ +
+
+ + + + + + + +
QwtAbstractScaleDraw * QwtAbstractScale::abstractScaleDraw () [protected]
+
+
+
Returns:
Scale draw
+
See also:
setAbstractScaleDraw()
+ +
+
+ +
+
+ + + + + + + +
bool QwtAbstractScale::autoScale () const
+
+
+
Returns:
true if autoscaling is enabled
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtAbstractScale::rescale (double vmin,
double vmax,
double stepSize = 0.0 
) [protected]
+
+
+

Recalculate the scale division and update the scale draw.

+
Parameters:
+ + + + +
vminLower limit of the scale interval
vmaxUpper limit of the scale interval
stepSizeMajor step size
+
+
+
See also:
scaleChange()
+ +
+
+ +
+
+ + + + + + + +
void QwtAbstractScale::scaleChange () [protected, virtual]
+
+
+ +

Notify changed scale.

+

Dummy empty implementation, intended to be overloaded by derived classes

+ +

Reimplemented in QwtSlider, and QwtThermo.

+ +
+
+ +
+
+ + + + + + + +
const QwtScaleEngine * QwtAbstractScale::scaleEngine () const
+
+
+
Returns:
Scale engine
+
See also:
setScaleEngine()
+ +
+
+ +
+
+ + + + + + + +
QwtScaleEngine * QwtAbstractScale::scaleEngine ()
+
+
+
Returns:
Scale engine
+
See also:
setScaleEngine()
+ +
+
+ +
+
+ + + + + + + +
const QwtScaleMap & QwtAbstractScale::scaleMap () const
+
+ +
+ +
+
+ + + + + + + +
int QwtAbstractScale::scaleMaxMajor () const
+
+
+
Returns:
Max. number of major tick intervals The default value is 5.
+ +
+
+ +
+
+ + + + + + + +
int QwtAbstractScale::scaleMaxMinor () const
+
+
+
Returns:
Max. number of minor tick intervals The default value is 3.
+ +
+
+ +
+
+ + + + + + + + +
void QwtAbstractScale::setAbstractScaleDraw (QwtAbstractScaleDrawscaleDraw) [protected]
+
+
+ +

Set a scale draw.

+

scaleDraw has to be created with new and will be deleted in ~QwtAbstractScale or the next call of setAbstractScaleDraw.

+ +
+
+ +
+
+ + + + + + + +
void QwtAbstractScale::setAutoScale ()
+
+
+ +

Advise the widget to control the scale range internally.

+

Autoscaling is on by default.

+
See also:
setScale(), autoScale()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtAbstractScale::setScale (double vmin,
double vmax,
double stepSize = 0.0 
)
+
+
+ +

Specify a scale.

+

Disable autoscaling and define a scale by an interval and a step size

+
Parameters:
+ + + + +
vminlower limit of the scale interval
vmaxupper limit of the scale interval
stepSizemajor step size
+
+
+
See also:
setAutoScale()
+ +
+
+ +
+
+ + + + + + + + +
void QwtAbstractScale::setScale (const QwtScaleDivscaleDiv)
+
+
+ +

Specify a scale.

+

Disable autoscaling and define a scale by a scale division

+
Parameters:
+ + +
scaleDivScale division
+
+
+
See also:
setAutoScale()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtAbstractScale::setScale (const QwtIntervalinterval,
double stepSize = 0.0 
)
+
+
+ +

Specify a scale.

+

Disable autoscaling and define a scale by an interval and a step size

+
Parameters:
+ + + +
intervalInterval
stepSizemajor step size
+
+
+
See also:
setAutoScale()
+ +
+
+ +
+
+ + + + + + + + +
void QwtAbstractScale::setScaleEngine (QwtScaleEnginescaleEngine)
+
+
+ +

Set a scale engine.

+

The scale engine is responsible for calculating the scale division, and in case of auto scaling how to align the scale.

+

scaleEngine has to be created with new and will be deleted in ~QwtAbstractScale or the next call of setScaleEngine.

+ +
+
+ +
+
+ + + + + + + + +
void QwtAbstractScale::setScaleMaxMajor (int ticks)
+
+
+ +

Set the maximum number of major tick intervals.

+

The scale's major ticks are calculated automatically such that the number of major intervals does not exceed ticks. The default value is 5.

+
Parameters:
+ + +
ticksmaximal number of major ticks.
+
+
+
See also:
QwtAbstractScaleDraw
+ +
+
+ +
+
+ + + + + + + + +
void QwtAbstractScale::setScaleMaxMinor (int ticks)
+
+
+ +

Set the maximum number of minor tick intervals.

+

The scale's minor ticks are calculated automatically such that the number of minor intervals does not exceed ticks. The default value is 3.

+
Parameters:
+ + +
ticks
+
+
+
See also:
QwtAbstractScaleDraw
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale__inherit__graph.map 2011-04-15 10:49:04.000000000 +0000 @@ -0,0 +1,5 @@ + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale__inherit__graph.md5 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1 @@ +d25c6b0885598a8a5fba753f37d16ca2 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_scale-members.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,71 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtAbstractScale Member List

+
+
+This is the complete list of members for QwtAbstractScale, including all inherited members. + + + + + + + + + + + + + + + + + + + + +
abstractScaleDraw() const QwtAbstractScale [protected]
abstractScaleDraw()QwtAbstractScale [protected]
autoScale() const QwtAbstractScale
QwtAbstractScale()QwtAbstractScale
rescale(double vmin, double vmax, double step=0.0)QwtAbstractScale [protected]
scaleChange()QwtAbstractScale [protected, virtual]
scaleEngine() const QwtAbstractScale
scaleEngine()QwtAbstractScale
scaleMap() const QwtAbstractScale
scaleMaxMajor() const QwtAbstractScale
scaleMaxMinor() const QwtAbstractScale
setAbstractScaleDraw(QwtAbstractScaleDraw *)QwtAbstractScale [protected]
setAutoScale()QwtAbstractScale
setScale(double vmin, double vmax, double step=0.0)QwtAbstractScale
setScale(const QwtInterval &, double step=0.0)QwtAbstractScale
setScale(const QwtScaleDiv &)QwtAbstractScale
setScaleEngine(QwtScaleEngine *)QwtAbstractScale
setScaleMaxMajor(int ticks)QwtAbstractScale
setScaleMaxMinor(int ticks)QwtAbstractScale
~QwtAbstractScale()QwtAbstractScale [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_slider.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_slider.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_slider.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_slider.html 2011-04-15 10:49:22.000000000 +0000 @@ -0,0 +1,974 @@ + + + + +Qwt User's Guide: QwtAbstractSlider Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtAbstractSlider Class Reference

+
+
+ +

An abstract base class for slider widgets. +More...

+ +

#include <qwt_abstract_slider.h>

+
+Inheritance diagram for QwtAbstractSlider:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Types

enum  ScrollMode {
+  ScrNone, +
+  ScrMouse, +
+  ScrTimer, +
+  ScrDirect, +
+  ScrPage +
+ }

+Public Slots

virtual void setValue (double val)
virtual void fitValue (double val)
virtual void incValue (int steps)
virtual void setReadOnly (bool)

+Signals

void valueChanged (double value)
void sliderPressed ()
void sliderReleased ()
void sliderMoved (double value)

+Public Member Functions

 QwtAbstractSlider (Qt::Orientation, QWidget *parent=NULL)
virtual ~QwtAbstractSlider ()
void setUpdateTime (int t)
void stopMoving ()
void setTracking (bool enable)
virtual void setMass (double val)
virtual double mass () const
virtual void setOrientation (Qt::Orientation o)
Qt::Orientation orientation () const
bool isReadOnly () const
bool isValid () const
void setValid (bool valid)

+Protected Member Functions

virtual void setPosition (const QPoint &)
virtual void valueChange ()
virtual void timerEvent (QTimerEvent *e)
virtual void mousePressEvent (QMouseEvent *e)
virtual void mouseReleaseEvent (QMouseEvent *e)
virtual void mouseMoveEvent (QMouseEvent *e)
virtual void keyPressEvent (QKeyEvent *e)
virtual void wheelEvent (QWheelEvent *e)
virtual double getValue (const QPoint &p)=0
virtual void getScrollMode (const QPoint &pos, ScrollMode &scrollMode, int &direction) const =0
void setMouseOffset (double)
double mouseOffset () const
int scrollMode () const
+

Detailed Description

+

An abstract base class for slider widgets.

+

QwtAbstractSlider is a base class for slider widgets. It handles mouse events and updates the slider's value accordingly. Derived classes only have to implement the getValue() and getScrollMode() members, and should react to a valueChange(), which normally requires repainting.

+

Member Enumeration Documentation

+ +
+ +
+

Scroll mode

+
See also:
getScrollMode()
+
Enumerator:
+ + + + +
ScrNone  +

Scrolling switched off. Don't change the value.

+
ScrMouse  +

Change the value while the user keeps the button pressed and moves the mouse.

+
ScrTimer  +

Automatic scrolling. Increment the value in the specified direction as long as the user keeps the button pressed.

+
ScrPage  +

Automatic scrolling. Same as ScrTimer, but increment by page size.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
QwtAbstractSlider::QwtAbstractSlider (Qt::Orientation orientation,
QWidget * parent = NULL 
) [explicit]
+
+
+ +

Constructor.

+
Parameters:
+ + + +
orientationOrientation
parentParent widget
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtAbstractSlider::~QwtAbstractSlider () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + +
void QwtAbstractSlider::fitValue (double value) [virtual, slot]
+
+
+ +

Set the slider's value to the nearest integer multiple of the step size.

+
Parameters:
+ + +
valueValue
+
+
+
See also:
setValue(), incValue()
+ +

Reimplemented from QwtDoubleRange.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual void QwtAbstractSlider::getScrollMode (const QPoint & pos,
ScrollModescrollMode,
int & direction 
) const [protected, pure virtual]
+
+
+ +

Determine what to do when the user presses a mouse button.

+

This function is abstract and has to be implemented by derived classes. It is called on a mousePress event. The derived class can determine what should happen next in dependence of the position where the mouse was pressed by returning scrolling mode and direction.

+
Parameters:
+ + +
pospoint where the mouse was pressed
+
+
+
Return values:
+ + + +
scrollModeThe scrolling mode
directiondirection: 1, 0, or -1.
+
+
+ +

Implemented in QwtDial, QwtKnob, QwtSlider, and QwtWheel.

+ +
+
+ +
+
+ + + + + + + + +
virtual double QwtAbstractSlider::getValue (const QPoint & p) [protected, pure virtual]
+
+
+ +

Determine the value corresponding to a specified poind.

+

This is an abstract virtual function which is called when the user presses or releases a mouse button or moves the mouse. It has to be implemented by the derived class.

+
Parameters:
+ + +
ppoint
+
+
+ +

Implemented in QwtDial, QwtKnob, QwtSlider, and QwtWheel.

+ +
+
+ +
+
+ + + + + + + + +
void QwtAbstractSlider::incValue (int steps) [virtual, slot]
+
+
+ +

Increment the value by a specified number of steps.

+
Parameters:
+ + +
stepsnumber of steps
+
+
+
See also:
setValue()
+ +

Reimplemented from QwtDoubleRange.

+ +
+
+ +
+
+ + + + + + + +
bool QwtAbstractSlider::isReadOnly () const
+
+
+

In read only mode the slider can't be controlled by mouse or keyboard.

+
Returns:
true if read only
+
See also:
setReadOnly()
+ +
+
+ +
+
+ + + + + + + +
bool QwtAbstractSlider::isValid () const [inline]
+
+
+
See also:
QwtDblRange::isValid()
+ +

Reimplemented from QwtDoubleRange.

+ +
+
+ +
+
+ + + + + + + + +
void QwtAbstractSlider::keyPressEvent (QKeyEvent * e) [protected, virtual]
+
+
+

Handles key events

+
    +
  • Key_Down, KeyLeft
    + Decrement by 1
  • +
  • Key_Up, Key_Right
    + Increment by 1
  • +
+
Parameters:
+ + +
eKey event
+
+
+
See also:
isReadOnly()
+ +

Reimplemented in QwtCompass, and QwtDial.

+ +
+
+ +
+
+ + + + + + + +
double QwtAbstractSlider::mass () const [virtual]
+
+
+
Returns:
mass
+
See also:
setMass()
+ +

Reimplemented in QwtWheel.

+ +
+
+ +
+
+ + + + + + + + +
void QwtAbstractSlider::mouseMoveEvent (QMouseEvent * e) [protected, virtual]
+
+
+

Mouse Move Event handler

+
Parameters:
+ + +
eMouse event
+
+
+ +
+
+ +
+
+ + + + + + + +
double QwtAbstractSlider::mouseOffset () const [protected]
+
+
+
See also:
setMouseOffset()
+ +
+
+ +
+
+ + + + + + + + +
void QwtAbstractSlider::mousePressEvent (QMouseEvent * e) [protected, virtual]
+
+
+

Mouse press event handler

+
Parameters:
+ + +
eMouse event
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtAbstractSlider::mouseReleaseEvent (QMouseEvent * e) [protected, virtual]
+
+
+

Mouse Release Event handler

+
Parameters:
+ + +
eMouse event
+
+
+ +
+
+ +
+
+ + + + + + + +
Qt::Orientation QwtAbstractSlider::orientation () const
+
+
+
Returns:
Orientation
+
See also:
setOrientation()
+ +
+
+ +
+
+ + + + + + + +
int QwtAbstractSlider::scrollMode () const [protected]
+
+
+ +

sa ScrollMode

+ +
+
+ +
+
+ + + + + + + + +
void QwtAbstractSlider::setMass (double val) [virtual]
+
+
+ +

Set the slider's mass for flywheel effect.

+

If the slider's mass is greater then 0, it will continue to move after the mouse button has been released. Its speed decreases with time at a rate depending on the slider's mass. A large mass means that it will continue to move for a long time.

+

Derived widgets may overload this function to make it public.

+
Parameters:
+ + +
valNew mass in kg
+
+
+
See also:
mass()
+ +

Reimplemented in QwtWheel.

+ +
+
+ +
+
+ + + + + + + + +
void QwtAbstractSlider::setMouseOffset (double offset) [protected]
+
+
+
See also:
mouseOffset()
+ +
+
+ +
+
+ + + + + + + + +
void QwtAbstractSlider::setOrientation (Qt::Orientation o) [virtual]
+
+
+ +

Set the orientation.

+
Parameters:
+ + +
oOrientation. Allowed values are Qt::Horizontal and Qt::Vertical.
+
+
+ +

Reimplemented in QwtSlider, and QwtWheel.

+ +
+
+ +
+
+ + + + + + + + +
void QwtAbstractSlider::setPosition (const QPoint & p) [protected, virtual]
+
+
+

Move the slider to a specified point, adjust the value and emit signals if necessary.

+ +
+
+ +
+
+ + + + + + + + +
void QwtAbstractSlider::setReadOnly (bool readOnly) [virtual, slot]
+
+
+

En/Disable read only mode

+

In read only mode the slider can't be controlled by mouse or keyboard.

+
Parameters:
+ + +
readOnlyEnables in case of true
+
+
+
See also:
isReadOnly()
+ +
+
+ +
+
+ + + + + + + + +
void QwtAbstractSlider::setTracking (bool enable)
+
+
+ +

Enables or disables tracking.

+

If tracking is enabled, the slider emits a valueChanged() signal whenever its value changes (the default behaviour). If tracking is disabled, the value changed() signal will only be emitted if:

+
    +
  • +the user releases the mouse button and the value has changed or
  • +
  • +at the end of automatic scrolling.
  • +
+

Tracking is enabled by default.

+
Parameters:
+ + +
enabletrue (enable) or false (disable) tracking.
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtAbstractSlider::setUpdateTime (int t)
+
+
+ +

Specify the update interval for automatic scrolling.

+
Parameters:
+ + +
tupdate interval in milliseconds
+
+
+
See also:
getScrollMode()
+ +
+
+ +
+
+ + + + + + + + +
void QwtAbstractSlider::setValid (bool valid) [inline]
+
+
+
Parameters:
+ + +
validtrue/false
+
+
+
See also:
QwtDblRange::isValid()
+ +

Reimplemented from QwtDoubleRange.

+ +
+
+ +
+
+ + + + + + + + +
void QwtAbstractSlider::setValue (double val) [virtual, slot]
+
+
+ +

Move the slider to a specified value.

+

This function can be used to move the slider to a value which is not an integer multiple of the step size.

+
Parameters:
+ + +
valnew value
+
+
+
See also:
fitValue()
+ +

Reimplemented from QwtDoubleRange.

+ +
+
+ +
+
+ + + + + + + + +
void QwtAbstractSlider::sliderMoved (double value) [signal]
+
+
+

This signal is emitted when the user moves the slider with the mouse.

+
Parameters:
+ + +
valuenew value
+
+
+ +
+
+ +
+
+ + + + + + + +
void QwtAbstractSlider::sliderPressed () [signal]
+
+
+

This signal is emitted when the user presses the movable part of the slider (start ScrMouse Mode).

+ +
+
+ +
+
+ + + + + + + +
void QwtAbstractSlider::sliderReleased () [signal]
+
+
+

This signal is emitted when the user releases the movable part of the slider.

+ +
+
+ +
+
+ + + + + + + +
void QwtAbstractSlider::stopMoving ()
+
+
+ +

Stop updating if automatic scrolling is active.

+ +
+
+ +
+
+ + + + + + + + +
void QwtAbstractSlider::timerEvent (QTimerEvent * e) [protected, virtual]
+
+
+

Qt timer event

+
Parameters:
+ + +
eTimer event
+
+
+ +
+
+ +
+
+ + + + + + + +
void QwtAbstractSlider::valueChange () [protected, virtual]
+
+
+

Notify change of value

+

This function can be reimplemented by derived classes in order to keep track of changes, i.e. repaint the widget. The default implementation emits a valueChanged() signal if tracking is enabled.

+ +

Reimplemented from QwtDoubleRange.

+ +

Reimplemented in QwtDial, QwtSlider, and QwtWheel.

+ +
+
+ +
+
+ + + + + + + + +
void QwtAbstractSlider::valueChanged (double value) [signal]
+
+
+ +

Notify a change of value.

+

In the default setting (tracking enabled), this signal will be emitted every time the value changes ( see setTracking() ).

+
Parameters:
+ + +
valuenew value
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtAbstractSlider::wheelEvent (QWheelEvent * e) [protected, virtual]
+
+
+

Wheel Event handler

+
Parameters:
+ + +
eWhell event
+
+
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_slider__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_slider__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_slider__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_slider__inherit__graph.map 2011-04-15 10:49:04.000000000 +0000 @@ -0,0 +1,9 @@ + + + + + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_slider__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_slider__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_slider__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_slider__inherit__graph.md5 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1 @@ +fcabc2882ff3ed210700071b1a3ffa0b \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_slider__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_slider__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_slider-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_slider-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_slider-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_abstract_slider-members.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,107 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtAbstractSlider Member List

+
+
+This is the complete list of members for QwtAbstractSlider, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
exactPrevValue() const QwtDoubleRange [protected]
exactValue() const QwtDoubleRange [protected]
fitValue(double val)QwtAbstractSlider [virtual, slot]
getScrollMode(const QPoint &pos, ScrollMode &scrollMode, int &direction) const =0QwtAbstractSlider [protected, pure virtual]
getValue(const QPoint &p)=0QwtAbstractSlider [protected, pure virtual]
incPages(int)QwtDoubleRange [virtual]
incValue(int steps)QwtAbstractSlider [virtual, slot]
isReadOnly() const QwtAbstractSlider
isValid() const QwtAbstractSlider [inline]
keyPressEvent(QKeyEvent *e)QwtAbstractSlider [protected, virtual]
mass() const QwtAbstractSlider [virtual]
maxValue() const QwtDoubleRange
minValue() const QwtDoubleRange
mouseMoveEvent(QMouseEvent *e)QwtAbstractSlider [protected, virtual]
mouseOffset() const QwtAbstractSlider [protected]
mousePressEvent(QMouseEvent *e)QwtAbstractSlider [protected, virtual]
mouseReleaseEvent(QMouseEvent *e)QwtAbstractSlider [protected, virtual]
orientation() const QwtAbstractSlider
pageSize() const QwtDoubleRange
periodic() const QwtDoubleRange
prevValue() const QwtDoubleRange [protected]
QwtAbstractSlider(Qt::Orientation, QWidget *parent=NULL)QwtAbstractSlider [explicit]
QwtDoubleRange()QwtDoubleRange
rangeChange()QwtDoubleRange [protected, virtual]
ScrDirect enum value (defined in QwtAbstractSlider)QwtAbstractSlider
ScrMouse enum valueQwtAbstractSlider
ScrNone enum valueQwtAbstractSlider
ScrollMode enum nameQwtAbstractSlider
scrollMode() const QwtAbstractSlider [protected]
ScrPage enum valueQwtAbstractSlider
ScrTimer enum valueQwtAbstractSlider
setMass(double val)QwtAbstractSlider [virtual]
setMouseOffset(double)QwtAbstractSlider [protected]
setOrientation(Qt::Orientation o)QwtAbstractSlider [virtual]
setPeriodic(bool tf)QwtDoubleRange
setPosition(const QPoint &)QwtAbstractSlider [protected, virtual]
setRange(double vmin, double vmax, double vstep=0.0, int pagesize=1)QwtDoubleRange
setReadOnly(bool)QwtAbstractSlider [virtual, slot]
setStep(double)QwtDoubleRange
setTracking(bool enable)QwtAbstractSlider
setUpdateTime(int t)QwtAbstractSlider
setValid(bool valid)QwtAbstractSlider [inline]
setValue(double val)QwtAbstractSlider [virtual, slot]
sliderMoved(double value)QwtAbstractSlider [signal]
sliderPressed()QwtAbstractSlider [signal]
sliderReleased()QwtAbstractSlider [signal]
step() const QwtDoubleRange
stepChange()QwtDoubleRange [protected, virtual]
stopMoving()QwtAbstractSlider
timerEvent(QTimerEvent *e)QwtAbstractSlider [protected, virtual]
value() const QwtDoubleRange
valueChange()QwtAbstractSlider [protected, virtual]
valueChanged(double value)QwtAbstractSlider [signal]
wheelEvent(QWheelEvent *e)QwtAbstractSlider [protected, virtual]
~QwtAbstractSlider()QwtAbstractSlider [virtual]
~QwtDoubleRange()QwtDoubleRange [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_alpha_color_map.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_alpha_color_map.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_alpha_color_map.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_alpha_color_map.html 2011-04-15 10:49:22.000000000 +0000 @@ -0,0 +1,204 @@ + + + + +Qwt User's Guide: QwtAlphaColorMap Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtAlphaColorMap Class Reference

+
+
+ +

QwtAlphaColorMap variies the alpha value of a color. +More...

+ +

#include <qwt_color_map.h>

+
+Inheritance diagram for QwtAlphaColorMap:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + +

+Public Member Functions

 QwtAlphaColorMap (const QColor &=QColor(Qt::gray))
virtual ~QwtAlphaColorMap ()
void setColor (const QColor &)
QColor color () const
virtual QRgb rgb (const QwtInterval &, double value) const
+

Detailed Description

+

QwtAlphaColorMap variies the alpha value of a color.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtAlphaColorMap::QwtAlphaColorMap (const QColor & color = QColor( Qt::gray ))
+
+
+

Constructor

+
Parameters:
+ + +
colorColor of the map
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtAlphaColorMap::~QwtAlphaColorMap () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
QColor QwtAlphaColorMap::color () const
+
+
+
Returns:
the color
+
See also:
setColor()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
QRgb QwtAlphaColorMap::rgb (const QwtIntervalinterval,
double value 
) const [virtual]
+
+
+ +

Map a value of a given interval into a alpha value.

+

alpha := (value - interval.minValue()) / interval.width();

+
Parameters:
+ + + +
intervalRange for all values
valueValue to map into a rgb value
+
+
+
Returns:
rgb value, with an alpha value
+ +

Implements QwtColorMap.

+ +
+
+ +
+
+ + + + + + + + +
void QwtAlphaColorMap::setColor (const QColor & color)
+
+
+

Set the color

+
Parameters:
+ + +
colorColor
+
+
+
See also:
color()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_alpha_color_map__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_alpha_color_map__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_alpha_color_map__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_alpha_color_map__inherit__graph.map 2011-04-15 10:49:05.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_alpha_color_map__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_alpha_color_map__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_alpha_color_map__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_alpha_color_map__inherit__graph.md5 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1 @@ +169220abc73547f4bf431082bed8ce87 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_alpha_color_map__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_alpha_color_map__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_alpha_color_map-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_alpha_color_map-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_alpha_color_map-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_alpha_color_map-members.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,64 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtAlphaColorMap Member List

+
+
+This is the complete list of members for QwtAlphaColorMap, including all inherited members. + + + + + + + + + + + + + +
color() const QwtAlphaColorMap
QwtColorMap::color(const QwtInterval &, double value) const QwtColorMap [inline]
colorTable(const QwtInterval &) const QwtColorMap [virtual]
Format enum nameQwtColorMap
format() const QwtColorMap [inline]
Indexed enum valueQwtColorMap
QwtAlphaColorMap(const QColor &=QColor(Qt::gray))QwtAlphaColorMap
QwtColorMap(Format=QwtColorMap::RGB)QwtColorMap
RGB enum valueQwtColorMap
rgb(const QwtInterval &, double value) const QwtAlphaColorMap [virtual]
setColor(const QColor &)QwtAlphaColorMap
~QwtAlphaColorMap()QwtAlphaColorMap [virtual]
~QwtColorMap()QwtColorMap [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_analog_clock.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_analog_clock.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_analog_clock.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_analog_clock.html 2011-04-15 10:49:22.000000000 +0000 @@ -0,0 +1,476 @@ + + + + +Qwt User's Guide: QwtAnalogClock Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtAnalogClock Class Reference

+
+
+ +

An analog clock. +More...

+ +

#include <qwt_analog_clock.h>

+
+Inheritance diagram for QwtAnalogClock:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + +

+Public Types

enum  Hand {
+  SecondHand, +
+  MinuteHand, +
+  HourHand, +
+  NHands +
+ }

+Public Slots

void setCurrentTime ()
void setTime (const QTime &=QTime::currentTime())

+Public Member Functions

 QwtAnalogClock (QWidget *parent=NULL)
virtual ~QwtAnalogClock ()
virtual void setHand (Hand, QwtDialNeedle *)
const QwtDialNeedlehand (Hand) const
QwtDialNeedlehand (Hand)

+Protected Member Functions

virtual QwtText scaleLabel (double) const
virtual void drawNeedle (QPainter *, const QPointF &, double radius, double direction, QPalette::ColorGroup) const
virtual void drawHand (QPainter *, Hand, const QPointF &, double radius, double direction, QPalette::ColorGroup) const
+

Detailed Description

+

An analog clock.

+
+analogclock.png +
+
Example
#include <qwt_analog_clock.h>
+
+  QwtAnalogClock *clock = new QwtAnalogClock(...);
+  clock->scaleDraw()->setPenWidth(3);
+  clock->setLineWidth(6);
+  clock->setFrameShadow(QwtDial::Sunken);
+  clock->setTime();
+
+  // update the clock every second
+  QTimer *timer = new QTimer(clock);
+  timer->connect(timer, SIGNAL(timeout()), clock, SLOT(setCurrentTime()));
+  timer->start(1000);
+
+  
+

Qwt is missing a set of good looking hands. Contributions are very welcome.

+
Note:
The examples/dials example shows how to use QwtAnalogClock.
+

Member Enumeration Documentation

+ +
+
+ + + + +
enum QwtAnalogClock::Hand
+
+
+

Hand type

+
See also:
setHand(), hand()
+
Enumerator:
+ + + + +
SecondHand  +

Needle displaying the seconds.

+
MinuteHand  +

Needle displaying the minutes.

+
HourHand  +

Needle displaying the hours.

+
NHands  +

Number of needles.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtAnalogClock::QwtAnalogClock (QWidget * parent = NULL) [explicit]
+
+
+

Constructor

+
Parameters:
+ + +
parentParent widget
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtAnalogClock::~QwtAnalogClock () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtAnalogClock::drawHand (QPainter * painter,
Hand hd,
const QPointF & center,
double radius,
double direction,
QPalette::ColorGroup cg 
) const [protected, virtual]
+
+
+

Draw a clock hand

+
Parameters:
+ + + + + + + +
painterPainter
hdSpecify the type of hand
centerCenter of the clock
radiusMaximum length for the hands
directionDirection of the hand in degrees, counter clockwise
cgColorGroup
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtAnalogClock::drawNeedle (QPainter * painter,
const QPointF & center,
double radius,
double dir,
QPalette::ColorGroup colorGroup 
) const [protected, virtual]
+
+
+ +

Draw the needle.

+

A clock has no single needle but three hands instead. drawNeedle translates value() into directions for the hands and calls drawHand().

+
Parameters:
+ + + + + + +
painterPainter
centerCenter of the clock
radiusMaximum length for the hands
dirDummy, not used.
colorGroupColorGroup
+
+
+
See also:
drawHand()
+ +

Reimplemented from QwtDial.

+ +
+
+ +
+
+ + + + + + + + +
QwtDialNeedle * QwtAnalogClock::hand (Hand hd)
+
+
+
Returns:
Clock hand
+
Parameters:
+ + +
hdSpecifies the type of hand
+
+
+
See also:
setHand()
+ +
+
+ +
+
+ + + + + + + + +
const QwtDialNeedle * QwtAnalogClock::hand (Hand hd) const
+
+
+
Returns:
Clock hand
+
Parameters:
+ + +
hdSpecifies the type of hand
+
+
+
See also:
setHand()
+ +
+
+ +
+
+ + + + + + + + +
QwtText QwtAnalogClock::scaleLabel (double value) const [protected, virtual]
+
+
+

Find the scale label for a given value

+
Parameters:
+ + +
valueValue
+
+
+
Returns:
Label
+ +

Reimplemented from QwtDial.

+ +
+
+ +
+
+ + + + + + + +
void QwtAnalogClock::setCurrentTime () [slot]
+
+
+ +

Set the current time.

+

This is the same as QwtAnalogClock::setTime(), but Qt < 3.0 can't handle default parameters for slots.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtAnalogClock::setHand (Hand hand,
QwtDialNeedleneedle 
) [virtual]
+
+
+

Set a clockhand

+
Parameters:
+ + + +
handSpecifies the type of hand
needleHand
+
+
+
See also:
hand()
+ +
+
+ +
+
+ + + + + + + + +
void QwtAnalogClock::setTime (const QTime & time = QTime::currentTime()) [slot]
+
+
+

Set a time

+
Parameters:
+ + +
timeTime to display
+
+
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_analog_clock__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_analog_clock__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_analog_clock__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_analog_clock__inherit__graph.map 2011-04-15 10:49:05.000000000 +0000 @@ -0,0 +1,5 @@ + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_analog_clock__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_analog_clock__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_analog_clock__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_analog_clock__inherit__graph.md5 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1 @@ +433435753e856bef6c0a3aad62dac268 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_analog_clock__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_analog_clock__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_analog_clock-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_analog_clock-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_analog_clock-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_analog_clock-members.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,169 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtAnalogClock Member List

+
+
+This is the complete list of members for QwtAnalogClock, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
boundingRect() const QwtDial
Clockwise enum valueQwtDial
CounterClockwise enum valueQwtDial
Direction enum nameQwtDial
direction() const QwtDial
drawContents(QPainter *) const QwtDial [protected, virtual]
drawFocusIndicator(QPainter *) const QwtDial [protected, virtual]
drawFrame(QPainter *p)QwtDial [protected, virtual]
drawHand(QPainter *, Hand, const QPointF &, double radius, double direction, QPalette::ColorGroup) const QwtAnalogClock [protected, virtual]
drawNeedle(QPainter *, const QPointF &, double radius, double direction, QPalette::ColorGroup) const QwtAnalogClock [protected, virtual]
drawScale(QPainter *, const QPointF &center, double radius, double origin, double arcMin, double arcMax) const QwtDial [protected, virtual]
drawScaleContents(QPainter *painter, const QPointF &center, double radius) const QwtDial [protected, virtual]
exactPrevValue() const QwtDoubleRange [protected]
exactValue() const QwtDoubleRange [protected]
fitValue(double val)QwtAbstractSlider [virtual, slot]
frameShadow() const QwtDial
getScrollMode(const QPoint &, QwtAbstractSlider::ScrollMode &, int &direction) const QwtDial [protected, virtual]
getValue(const QPoint &)QwtDial [protected, virtual]
hand(Hand) const QwtAnalogClock
hand(Hand)QwtAnalogClock
Hand enum nameQwtAnalogClock
HourHand enum valueQwtAnalogClock
incPages(int)QwtDoubleRange [virtual]
incValue(int steps)QwtAbstractSlider [virtual, slot]
innerRect() const QwtDial
isReadOnly() const QwtAbstractSlider
isValid() const QwtAbstractSlider [inline]
keyPressEvent(QKeyEvent *)QwtDial [protected, virtual]
lineWidth() const QwtDial
mass() const QwtAbstractSlider [virtual]
maxScaleArc() const QwtDial
maxValue() const QwtDoubleRange
minimumSizeHint() const QwtDial [virtual]
minScaleArc() const QwtDial
MinuteHand enum valueQwtAnalogClock
minValue() const QwtDoubleRange
Mode enum nameQwtDial
mode() const QwtDial
mouseMoveEvent(QMouseEvent *e)QwtAbstractSlider [protected, virtual]
mouseOffset() const QwtAbstractSlider [protected]
mousePressEvent(QMouseEvent *e)QwtAbstractSlider [protected, virtual]
mouseReleaseEvent(QMouseEvent *e)QwtAbstractSlider [protected, virtual]
needle() const QwtDial
needle()QwtDial
NHands enum valueQwtAnalogClock
orientation() const QwtAbstractSlider
origin() const QwtDial
pageSize() const QwtDoubleRange
paintEvent(QPaintEvent *)QwtDial [protected, virtual]
periodic() const QwtDoubleRange
Plain enum valueQwtDial
prevValue() const QwtDoubleRange [protected]
QwtAbstractSlider(Qt::Orientation, QWidget *parent=NULL)QwtAbstractSlider [explicit]
QwtAnalogClock(QWidget *parent=NULL)QwtAnalogClock [explicit]
QwtDial(QWidget *parent=NULL)QwtDial [explicit]
QwtDoubleRange()QwtDoubleRange
Raised enum valueQwtDial
rangeChange()QwtDial [protected, virtual]
RotateNeedle enum valueQwtDial
RotateScale enum valueQwtDial
scaleDraw()QwtDial
scaleDraw() const QwtDial
scaleInnerRect() const QwtDial [virtual]
scaleLabel(double) const QwtAnalogClock [protected, virtual]
ScrDirect enum value (defined in QwtAbstractSlider)QwtAbstractSlider
ScrMouse enum valueQwtAbstractSlider
ScrNone enum valueQwtAbstractSlider
scrollMode() const QwtAbstractSlider [protected]
ScrollMode enum nameQwtAbstractSlider
ScrPage enum valueQwtAbstractSlider
ScrTimer enum valueQwtAbstractSlider
SecondHand enum valueQwtAnalogClock
setCurrentTime()QwtAnalogClock [slot]
setDirection(Direction)QwtDial
setFrameShadow(Shadow)QwtDial
setHand(Hand, QwtDialNeedle *)QwtAnalogClock [virtual]
setLineWidth(int)QwtDial
setMass(double val)QwtAbstractSlider [virtual]
setMode(Mode)QwtDial
setMouseOffset(double)QwtAbstractSlider [protected]
setOrientation(Qt::Orientation o)QwtAbstractSlider [virtual]
setOrigin(double)QwtDial [virtual]
setPeriodic(bool tf)QwtDoubleRange
setPosition(const QPoint &)QwtAbstractSlider [protected, virtual]
setRange(double vmin, double vmax, double vstep=0.0, int pagesize=1)QwtDoubleRange
setReadOnly(bool)QwtAbstractSlider [virtual, slot]
setScale(int maxMajIntv, int maxMinIntv, double step=0.0)QwtDial [virtual]
setScaleArc(double min, double max)QwtDial
setScaleComponents(QwtAbstractScaleDraw::ScaleComponents)QwtDial
setScaleDraw(QwtDialScaleDraw *)QwtDial [virtual]
setScaleTicks(int minLen, int medLen, int majLen, int penWidth=1)QwtDial
setStep(double)QwtDoubleRange
setTime(const QTime &=QTime::currentTime())QwtAnalogClock [slot]
setTracking(bool enable)QwtAbstractSlider
setUpdateTime(int t)QwtAbstractSlider
setValid(bool valid)QwtAbstractSlider [inline]
setValue(double val)QwtAbstractSlider [virtual, slot]
setWrapping(bool)QwtDial [virtual]
Shadow enum nameQwtDial
sizeHint() const QwtDial [virtual]
sliderMoved(double value)QwtAbstractSlider [signal]
sliderPressed()QwtAbstractSlider [signal]
sliderReleased()QwtAbstractSlider [signal]
step() const QwtDoubleRange
stepChange()QwtDoubleRange [protected, virtual]
stopMoving()QwtAbstractSlider
Sunken enum valueQwtDial
timerEvent(QTimerEvent *e)QwtAbstractSlider [protected, virtual]
updateScale()QwtDial [protected]
value() const QwtDoubleRange
valueChange()QwtDial [protected, virtual]
valueChanged(double value)QwtAbstractSlider [signal]
wheelEvent(QWheelEvent *e)QwtAbstractSlider [protected, virtual]
wrapping() const QwtDial
~QwtAbstractSlider()QwtAbstractSlider [virtual]
~QwtAnalogClock()QwtAnalogClock [virtual]
~QwtDial()QwtDial [virtual]
~QwtDoubleRange()QwtDoubleRange [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_array_series_data.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_array_series_data.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_array_series_data.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_array_series_data.html 2011-04-15 10:49:22.000000000 +0000 @@ -0,0 +1,247 @@ + + + + +Qwt User's Guide: QwtArraySeriesData< T > Class Template Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtArraySeriesData< T > Class Template Reference

+
+
+ +

Template class for data, that is organized as QVector. +More...

+ +

#include <qwt_series_data.h>

+
+Inheritance diagram for QwtArraySeriesData< T >:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + +

+Public Member Functions

 QwtArraySeriesData ()
 QwtArraySeriesData (const QVector< T > &)
void setSamples (const QVector< T > &)
const QVector< T > samples () const
virtual size_t size () const
virtual T sample (size_t) const

+Protected Attributes

QVector< T > d_samples
+

Detailed Description

+

template<typename T>
+ class QwtArraySeriesData< T >

+ +

Template class for data, that is organized as QVector.

+

QVector uses implicit data sharing and can be passed around as argument efficiently.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename T >
+ + + + + + + +
QwtArraySeriesData< T >::QwtArraySeriesData ()
+
+
+ +

Constructor.

+ +
+
+ +
+
+
+template<typename T>
+ + + + + + + + +
QwtArraySeriesData< T >::QwtArraySeriesData (const QVector< T > & samples)
+
+
+

Constructor

+
Parameters:
+ + +
samplesArray of samples
+
+
+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename T >
+ + + + + + + + +
T QwtArraySeriesData< T >::sample (size_t i) const [virtual]
+
+
+

Return a sample

+
Parameters:
+ + +
iIndex
+
+
+
Returns:
Sample at position i
+ +

Implements QwtSeriesData< T >.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + +
const QVector< T > QwtArraySeriesData< T >::samples () const
+
+
+
Returns:
Array of samples
+ +
+
+ +
+
+
+template<typename T>
+ + + + + + + + +
void QwtArraySeriesData< T >::setSamples (const QVector< T > & samples)
+
+
+

Assign an array of samples

+
Parameters:
+ + +
samplesArray of samples
+
+
+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + +
size_t QwtArraySeriesData< T >::size () const [virtual]
+
+
+
Returns:
Number of samples
+ +

Implements QwtSeriesData< T >.

+ +
+
+

Member Data Documentation

+ +
+
+
+template<typename T>
+ + + + +
QVector<T> QwtArraySeriesData< T >::d_samples [protected]
+
+
+ +

Vector of samples.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_array_series_data__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_array_series_data__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_array_series_data__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_array_series_data__inherit__graph.map 2011-04-15 10:49:05.000000000 +0000 @@ -0,0 +1,11 @@ + + + + + + + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_array_series_data__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_array_series_data__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_array_series_data__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_array_series_data__inherit__graph.md5 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1 @@ +f3695b0ee51d794ecea99f121b887439 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_array_series_data__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_array_series_data__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_array_series_data-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_array_series_data-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_array_series_data-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_array_series_data-members.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,63 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtArraySeriesData< T > Member List

+
+
+This is the complete list of members for QwtArraySeriesData< T >, including all inherited members. + + + + + + + + + + + + +
boundingRect() const =0QwtSeriesData< T > [pure virtual]
d_boundingRectQwtSeriesData< T > [mutable, protected]
d_samplesQwtArraySeriesData< T > [protected]
QwtArraySeriesData()QwtArraySeriesData< T >
QwtArraySeriesData(const QVector< T > &)QwtArraySeriesData< T >
QwtSeriesData()QwtSeriesData< T >
sample(size_t) const QwtArraySeriesData< T > [virtual]
samples() const QwtArraySeriesData< T >
setRectOfInterest(const QRectF &)QwtSeriesData< T > [virtual]
setSamples(const QVector< T > &)QwtArraySeriesData< T >
size() const QwtArraySeriesData< T > [virtual]
~QwtSeriesData()QwtSeriesData< T > [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_arrow_button.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_arrow_button.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_arrow_button.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_arrow_button.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,377 @@ + + + + +Qwt User's Guide: QwtArrowButton Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtArrowButton Class Reference

+
+
+ +

Arrow Button. +More...

+ +

#include <qwt_arrow_button.h>

+ +

List of all members.

+ + + + + + + + + + + + + + + +

+Public Member Functions

 QwtArrowButton (int num, Qt::ArrowType, QWidget *parent=NULL)
virtual ~QwtArrowButton ()
Qt::ArrowType arrowType () const
int num () const
virtual QSize sizeHint () const
virtual QSize minimumSizeHint () const

+Protected Member Functions

virtual void paintEvent (QPaintEvent *event)
virtual void drawButtonLabel (QPainter *p)
virtual void drawArrow (QPainter *, const QRect &, Qt::ArrowType) const
virtual QRect labelRect () const
virtual QSize arrowSize (Qt::ArrowType, const QSize &boundingSize) const
virtual void keyPressEvent (QKeyEvent *)
+

Detailed Description

+

Arrow Button.

+

A push button with one or more filled triangles on its front. An Arrow button can have 1 to 3 arrows in a row, pointing up, down, left or right.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
QwtArrowButton::QwtArrowButton (int num,
Qt::ArrowType arrowType,
QWidget * parent = NULL 
) [explicit]
+
+
+
Parameters:
+ + + + +
numNumber of arrows
arrowTypesee Qt::ArowType in the Qt docs.
parentParent widget
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtArrowButton::~QwtArrowButton () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
QSize QwtArrowButton::arrowSize (Qt::ArrowType arrowType,
const QSize & boundingSize 
) const [protected, virtual]
+
+
+

Calculate the size for a arrow that fits into a rect of a given size

+
Parameters:
+ + + +
arrowTypeArrow type
boundingSizeBounding size
+
+
+
Returns:
Size of the arrow
+ +
+
+ +
+
+ + + + + + + +
Qt::ArrowType QwtArrowButton::arrowType () const
+
+
+ +

The direction of the arrows.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtArrowButton::drawArrow (QPainter * painter,
const QRect & r,
Qt::ArrowType arrowType 
) const [protected, virtual]
+
+
+

Draw an arrow int a bounding rect

+
Parameters:
+ + + + +
painterPainter
rRectangle where to paint the arrow
arrowTypeArrow type
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtArrowButton::drawButtonLabel (QPainter * painter) [protected, virtual]
+
+
+ +

Draw the button label.

+
Parameters:
+ + +
painterPainter
+
+
+
See also:
The Qt Manual on QPushButton
+ +
+
+ +
+
+ + + + + + + + +
void QwtArrowButton::keyPressEvent (QKeyEvent * event) [protected, virtual]
+
+
+ +

autoRepeat for the space keys

+ +
+
+ +
+
+ + + + + + + +
QRect QwtArrowButton::labelRect () const [protected, virtual]
+
+
+
Returns:
the bounding rect for the label
+ +
+
+ +
+
+ + + + + + + +
QSize QwtArrowButton::minimumSizeHint () const [virtual]
+
+
+ +

Return a minimum size hint.

+ +
+
+ +
+
+ + + + + + + +
int QwtArrowButton::num () const
+
+
+ +

The number of arrows.

+ +
+
+ +
+
+ + + + + + + + +
void QwtArrowButton::paintEvent (QPaintEvent * event) [protected, virtual]
+
+
+

Paint event handler

+
Parameters:
+ + +
eventPaint event
+
+
+ +
+
+ +
+
+ + + + + + + +
QSize QwtArrowButton::sizeHint () const [virtual]
+
+
+
Returns:
a size hint
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_arrow_button-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_arrow_button-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_arrow_button-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_arrow_button-members.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,63 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtArrowButton Member List

+
+
+This is the complete list of members for QwtArrowButton, including all inherited members. + + + + + + + + + + + + +
arrowSize(Qt::ArrowType, const QSize &boundingSize) const QwtArrowButton [protected, virtual]
arrowType() const QwtArrowButton
drawArrow(QPainter *, const QRect &, Qt::ArrowType) const QwtArrowButton [protected, virtual]
drawButtonLabel(QPainter *p)QwtArrowButton [protected, virtual]
keyPressEvent(QKeyEvent *)QwtArrowButton [protected, virtual]
labelRect() const QwtArrowButton [protected, virtual]
minimumSizeHint() const QwtArrowButton [virtual]
num() const QwtArrowButton
paintEvent(QPaintEvent *event)QwtArrowButton [protected, virtual]
QwtArrowButton(int num, Qt::ArrowType, QWidget *parent=NULL)QwtArrowButton [explicit]
sizeHint() const QwtArrowButton [virtual]
~QwtArrowButton()QwtArrowButton [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_clipper.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_clipper.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_clipper.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_clipper.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,199 @@ + + + + +Qwt User's Guide: QwtClipper Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtClipper Class Reference

+
+
+ +

Some clipping algos. +More...

+ +

#include <qwt_clipper.h>

+ +

List of all members.

+ + + + + +

+Static Public Member Functions

static QPolygon clipPolygon (const QRect &, const QPolygon &, bool closePolygon=false)
static QPolygonF clipPolygonF (const QRectF &, const QPolygonF &, bool closePolygon=false)
static QVector< QwtIntervalclipCircle (const QRectF &, const QPointF &, double radius)
+

Detailed Description

+

Some clipping algos.

+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
QVector< QwtInterval > QwtClipper::clipCircle (const QRectF & clipRect,
const QPointF & center,
double radius 
) [static]
+
+
+

Circle clipping

+

clipCircle() devides a circle into intervals of angles representing arcs of the circle. When the circle is completely inside the clip rectangle an interval [0.0, 2 * M_PI] is returned.

+
Parameters:
+ + + + +
clipRectClip rectangle
centerCenter of the circle
radiusRadius of the circle
+
+
+
Returns:
Arcs of the circle
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
QPolygon QwtClipper::clipPolygon (const QRect & clipRect,
const QPolygon & polygon,
bool closePolygon = false 
) [static]
+
+
+

Sutherland-Hodgman polygon clipping

+
Parameters:
+ + + + +
clipRectClip rectangle
polygonPolygon
closePolygonTrue, when the polygon is closed
+
+
+
Returns:
Clipped polygon
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
QPolygonF QwtClipper::clipPolygonF (const QRectF & clipRect,
const QPolygonF & polygon,
bool closePolygon = false 
) [static]
+
+
+

Sutherland-Hodgman polygon clipping

+
Parameters:
+ + + + +
clipRectClip rectangle
polygonPolygon
closePolygonTrue, when the polygon is closed
+
+
+
Returns:
Clipped polygon
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_clipper-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_clipper-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_clipper-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_clipper-members.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,54 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtClipper Member List

+
+
+This is the complete list of members for QwtClipper, including all inherited members. + + + +
clipCircle(const QRectF &, const QPointF &, double radius)QwtClipper [static]
clipPolygon(const QRect &, const QPolygon &, bool closePolygon=false)QwtClipper [static]
clipPolygonF(const QRectF &, const QPolygonF &, bool closePolygon=false)QwtClipper [static]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_color_map.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_color_map.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_color_map.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_color_map.html 2011-04-15 10:49:22.000000000 +0000 @@ -0,0 +1,319 @@ + + + + +Qwt User's Guide: QwtColorMap Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtColorMap Class Reference

+
+
+ +

QwtColorMap is used to map values into colors. +More...

+ +

#include <qwt_color_map.h>

+
+Inheritance diagram for QwtColorMap:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + +

+Public Types

enum  Format {
+  RGB, +
+  Indexed +
+ }

+Public Member Functions

 QwtColorMap (Format=QwtColorMap::RGB)
virtual ~QwtColorMap ()
Format format () const
virtual QRgb rgb (const QwtInterval &interval, double value) const =0
virtual unsigned char colorIndex (const QwtInterval &interval, double value) const =0
QColor color (const QwtInterval &, double value) const
virtual QVector< QRgb > colorTable (const QwtInterval &) const
+

Detailed Description

+

QwtColorMap is used to map values into colors.

+

For displaying 3D data on a 2D plane the 3rd dimension is often displayed using colors, like f.e in a spectrogram.

+

Each color map is optimized to return colors for only one of the following image formats:

+
    +
  • QImage::Format_Indexed8
    +
  • +
  • QImage::Format_ARGB32
    +
  • +
+
See also:
QwtPlotSpectrogram, QwtScaleWidget
+

Member Enumeration Documentation

+ +
+
+ + + + +
enum QwtColorMap::Format
+
+
+

Format for color mapping

+
See also:
rgb(), colorIndex(), colorTable()
+
Enumerator:
+ + +
RGB  +

The map is intended to map into QRgb values.

+
Indexed  +

The map is intended to map into 8 bit values, that are indices into the color table.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtColorMap::QwtColorMap (Format format = QwtColorMap::RGB)
+
+
+ +

Constructor.

+ +
+
+ +
+
+ + + + + + + +
QwtColorMap::~QwtColorMap () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
QColor QwtColorMap::color (const QwtIntervalinterval,
double value 
) const [inline]
+
+
+

Map a value into a color

+
Parameters:
+ + + +
intervalValid interval for values
valueValue
+
+
+
Returns:
Color corresponding to value
+
Warning:
This method is slow for Indexed color maps. If it is necessary to map many values, its better to get the color table once and find the color using colorIndex().
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
virtual unsigned char QwtColorMap::colorIndex (const QwtIntervalinterval,
double value 
) const [pure virtual]
+
+
+

Map a value of a given interval into a color index

+
Parameters:
+ + + +
intervalRange for the values
valueValue
+
+
+
Returns:
color index, corresponding to value
+ +

Implemented in QwtLinearColorMap.

+ +
+
+ +
+
+ + + + + + + + +
QwtColorTable QwtColorMap::colorTable (const QwtIntervalinterval) const [virtual]
+
+
+

Build and return a color map of 256 colors

+

The color table is needed for rendering indexed images in combination with using colorIndex().

+
Parameters:
+ + +
intervalRange for the values
+
+
+
Returns:
A color table, that can be used for a QImage
+ +
+
+ +
+
+ + + + + + + +
QwtColorMap::Format QwtColorMap::format () const [inline]
+
+
+
Returns:
Intended format of the color map
+
See also:
Format
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
virtual QRgb QwtColorMap::rgb (const QwtIntervalinterval,
double value 
) const [pure virtual]
+
+
+

Map a value of a given interval into a rgb value.

+
Parameters:
+ + + +
intervalRange for the values
valueValue
+
+
+
Returns:
rgb value, corresponding to value
+ +

Implemented in QwtLinearColorMap, and QwtAlphaColorMap.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_color_map__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_color_map__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_color_map__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_color_map__inherit__graph.map 2011-04-15 10:49:05.000000000 +0000 @@ -0,0 +1,4 @@ + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_color_map__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_color_map__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_color_map__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_color_map__inherit__graph.md5 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1 @@ +b775d48f71d609d87b1973a245a6b57d \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_color_map__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_color_map__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_color_map-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_color_map-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_color_map-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_color_map-members.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,61 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtColorMap Member List

+
+
+This is the complete list of members for QwtColorMap, including all inherited members. + + + + + + + + + + +
color(const QwtInterval &, double value) const QwtColorMap [inline]
colorIndex(const QwtInterval &interval, double value) const =0QwtColorMap [pure virtual]
colorTable(const QwtInterval &) const QwtColorMap [virtual]
Format enum nameQwtColorMap
format() const QwtColorMap [inline]
Indexed enum valueQwtColorMap
QwtColorMap(Format=QwtColorMap::RGB)QwtColorMap
rgb(const QwtInterval &interval, double value) const =0QwtColorMap [pure virtual]
RGB enum valueQwtColorMap
~QwtColorMap()QwtColorMap [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_column_rect.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_column_rect.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_column_rect.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_column_rect.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,219 @@ + + + + +Qwt User's Guide: QwtColumnRect Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtColumnRect Class Reference

+
+
+ +

Directed rectangle representing bounding rectangle und orientation of a column. +More...

+ +

#include <qwt_column_symbol.h>

+ +

List of all members.

+ + + + + + + + + + + +

+Public Types

enum  Direction {
+  LeftToRight, +
+  RightToLeft, +
+  BottomToTop, +
+  TopToBottom +
+ }

+Public Member Functions

 QwtColumnRect ()
QRectF toRect () const
Qt::Orientation orientation () const

+Public Attributes

QwtInterval hInterval
QwtInterval vInterval
Direction direction
+

Detailed Description

+

Directed rectangle representing bounding rectangle und orientation of a column.

+

Member Enumeration Documentation

+ +
+
+ + + + +
enum QwtColumnRect::Direction
+
+
+ +

Direction of the column.

+
Enumerator:
+ + + + +
LeftToRight  +

From left to right.

+
RightToLeft  +

From right to left.

+
BottomToTop  +

From bottom to top.

+
TopToBottom  +

From top to bottom.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtColumnRect::QwtColumnRect () [inline]
+
+
+ +

Build an rectangle with invalid intervals directed BottomToTop.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
Qt::Orientation QwtColumnRect::orientation () const [inline]
+
+
+
Returns:
Orientation
+ +
+
+ +
+
+ + + + + + + +
QRectF QwtColumnRect::toRect () const [inline]
+
+
+
Returns:
A normalized QRect built from the intervals
+ +
+
+

Member Data Documentation

+ +
+ +
+ +

Direction.

+ +
+
+ +
+ +
+ +

Interval for the horizontal coordinates.

+ +
+
+ +
+ +
+ +

Interval for the vertical coordinates.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_column_rect-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_column_rect-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_column_rect-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_column_rect-members.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,62 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtColumnRect Member List

+
+
+This is the complete list of members for QwtColumnRect, including all inherited members. + + + + + + + + + + + +
BottomToTop enum valueQwtColumnRect
directionQwtColumnRect
Direction enum nameQwtColumnRect
hIntervalQwtColumnRect
LeftToRight enum valueQwtColumnRect
orientation() const QwtColumnRect [inline]
QwtColumnRect()QwtColumnRect [inline]
RightToLeft enum valueQwtColumnRect
TopToBottom enum valueQwtColumnRect
toRect() const QwtColumnRect [inline]
vIntervalQwtColumnRect
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_column_symbol.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_column_symbol.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_column_symbol.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_column_symbol.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,445 @@ + + + + +Qwt User's Guide: QwtColumnSymbol Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtColumnSymbol Class Reference

+
+
+ +

A drawing primitive for columns. +More...

+ +

#include <qwt_column_symbol.h>

+ +

List of all members.

+ + + + + + + + + + + + + + + + + + +

+Public Types

enum  Style {
+  NoStyle = -1, +
+  Box, +
+  UserStyle = 1000 +
+ }
enum  FrameStyle {
+  NoFrame, +
+  Plain, +
+  Raised +
+ }

+Public Member Functions

 QwtColumnSymbol (Style=NoStyle)
virtual ~QwtColumnSymbol ()
void setFrameStyle (FrameStyle style)
FrameStyle frameStyle () const
void setLineWidth (int width)
int lineWidth () const
void setPalette (const QPalette &)
const QPalette & palette () const
void setStyle (Style)
Style style () const
virtual void draw (QPainter *, const QwtColumnRect &) const

+Protected Member Functions

void drawBox (QPainter *, const QwtColumnRect &) const
+

Detailed Description

+

A drawing primitive for columns.

+

Member Enumeration Documentation

+ +
+
+ + + + +
enum QwtColumnSymbol::FrameStyle
+
+
+

Frame Style used in Box style().

+
See also:
Style, setFrameStyle(), frameStyle(), setStyle(), setPalette()
+
Enumerator:
+ + + +
NoFrame  +

No frame.

+
Plain  +

A plain frame style.

+
Raised  +

A raised frame style.

+
+
+
+ +
+
+ +
+
+ + + + +
enum QwtColumnSymbol::Style
+
+
+

Style

+
See also:
setStyle(), style()
+
Enumerator:
+ + + +
NoStyle  +

No Style, the symbol draws nothing.

+
Box  +

The column is painted with a frame depending on the frameStyle() and lineWidth() using the palette().

+
UserStyle  +

Styles >= QwtColumnSymbol::UserStyle are reserved for derived classes of QwtColumnSymbol that overload draw() with additional application specific symbol types.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtColumnSymbol::QwtColumnSymbol (Style style = NoStyle)
+
+
+

Constructor

+
Parameters:
+ + +
styleStyle of the symbol
+
+
+
See also:
setStyle(), style(), Style
+ +
+
+ +
+
+ + + + + + + +
QwtColumnSymbol::~QwtColumnSymbol () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtColumnSymbol::draw (QPainter * painter,
const QwtColumnRectrect 
) const [virtual]
+
+
+

Draw the symbol depending on its style.

+
Parameters:
+ + + +
painterPainter
rectDirected rectangle
+
+
+
See also:
drawBox()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtColumnSymbol::drawBox (QPainter * painter,
const QwtColumnRectrect 
) const [protected]
+
+
+

Draw the symbol when it is in Box style.

+
Parameters:
+ + + +
painterPainter
rectDirected rectangle
+
+
+
See also:
draw()
+ +
+
+ +
+
+ + + + + + + +
QwtColumnSymbol::FrameStyle QwtColumnSymbol::frameStyle () const
+
+
+
Returns:
Current frame style, that is used for the Box style.
+
See also:
setFrameStyle(), lineWidth(), setStyle()
+ +
+
+ +
+
+ + + + + + + +
int QwtColumnSymbol::lineWidth () const
+
+
+
Returns:
Line width of the frame, that is used for the Box style.
+
See also:
setLineWidth(), frameStyle(), setStyle()
+ +
+
+ +
+
+ + + + + + + +
const QPalette & QwtColumnSymbol::palette () const
+
+
+
Returns:
Current palette
+
See also:
setPalette()
+ +
+
+ +
+
+ + + + + + + + +
void QwtColumnSymbol::setFrameStyle (FrameStyle frameStyle)
+
+
+

Set the frame, that is used for the Box style.

+
Parameters:
+ + +
frameStyleFrame style
+
+
+
See also:
frameStyle(), setLineWidth(), setStyle()
+ +
+
+ +
+
+ + + + + + + + +
void QwtColumnSymbol::setLineWidth (int width)
+
+
+

Set the line width of the frame, that is used for the Box style.

+
Parameters:
+ + +
widthWidth
+
+
+
See also:
lineWidth(), setFrameStyle()
+ +
+
+ +
+
+ + + + + + + + +
void QwtColumnSymbol::setPalette (const QPalette & palette)
+
+
+

Assign a palette for the symbol

+
Parameters:
+ + +
palettePalette
+
+
+
See also:
palette(), setStyle()
+ +
+
+ +
+
+ + + + + + + + +
void QwtColumnSymbol::setStyle (Style style)
+
+
+

Specify the symbol style

+
Parameters:
+ + +
styleStyle
+
+
+
See also:
style(), setPalette()
+ +
+
+ +
+
+ + + + + + + +
QwtColumnSymbol::Style QwtColumnSymbol::style () const
+
+
+
Returns:
Current symbol style
+
See also:
setStyle()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_column_symbol-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_column_symbol-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_column_symbol-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_column_symbol-members.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,71 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtColumnSymbol Member List

+
+
+This is the complete list of members for QwtColumnSymbol, including all inherited members. + + + + + + + + + + + + + + + + + + + + +
Box enum valueQwtColumnSymbol
draw(QPainter *, const QwtColumnRect &) const QwtColumnSymbol [virtual]
drawBox(QPainter *, const QwtColumnRect &) const QwtColumnSymbol [protected]
FrameStyle enum nameQwtColumnSymbol
frameStyle() const QwtColumnSymbol
lineWidth() const QwtColumnSymbol
NoFrame enum valueQwtColumnSymbol
NoStyle enum valueQwtColumnSymbol
palette() const QwtColumnSymbol
Plain enum valueQwtColumnSymbol
QwtColumnSymbol(Style=NoStyle)QwtColumnSymbol
Raised enum valueQwtColumnSymbol
setFrameStyle(FrameStyle style)QwtColumnSymbol
setLineWidth(int width)QwtColumnSymbol
setPalette(const QPalette &)QwtColumnSymbol
setStyle(Style)QwtColumnSymbol
style() const QwtColumnSymbol
Style enum nameQwtColumnSymbol
UserStyle enum valueQwtColumnSymbol
~QwtColumnSymbol()QwtColumnSymbol [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass.html 2011-04-15 10:49:22.000000000 +0000 @@ -0,0 +1,415 @@ + + + + +Qwt User's Guide: QwtCompass Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtCompass Class Reference

+
+
+ +

A Compass Widget. +More...

+ +

#include <qwt_compass.h>

+
+Inheritance diagram for QwtCompass:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + +

+Public Member Functions

 QwtCompass (QWidget *parent=NULL)
virtual ~QwtCompass ()
void setRose (QwtCompassRose *rose)
const QwtCompassRoserose () const
QwtCompassRoserose ()
const QMap< double, QString > & labelMap () const
QMap< double, QString > & labelMap ()
void setLabelMap (const QMap< double, QString > &map)

+Protected Member Functions

virtual QwtText scaleLabel (double value) const
virtual void drawRose (QPainter *, const QPointF &center, double radius, double north, QPalette::ColorGroup) const
virtual void drawScaleContents (QPainter *, const QPointF &center, double radius) const
virtual void keyPressEvent (QKeyEvent *)
+

Detailed Description

+

A Compass Widget.

+

QwtCompass is a widget to display and enter directions. It consists of a scale, an optional needle and rose.

+
+dials1.png +
+
Note:
The examples/dials example shows how to use QwtCompass.
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtCompass::QwtCompass (QWidget * parent = NULL) [explicit]
+
+
+ +

Constructor.

+
Parameters:
+ + +
parentParent widget
+
+
+

Create a compass widget with a scale, no needle and no rose. The default origin is 270.0 with no valid value. It accepts mouse and keyboard inputs and has no step size. The default mode is QwtDial::RotateNeedle.

+ +
+
+ +
+
+ + + + + + + +
QwtCompass::~QwtCompass () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtCompass::drawRose (QPainter * painter,
const QPointF & center,
double radius,
double north,
QPalette::ColorGroup cg 
) const [protected, virtual]
+
+
+

Draw the compass rose

+
Parameters:
+ + + + + + +
painterPainter
centerCenter of the compass
radiusof the circle, where to paint the rose
northDirection pointing north, in degrees counter clockwise
cgColor group
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtCompass::drawScaleContents (QPainter * painter,
const QPointF & center,
double radius 
) const [protected, virtual]
+
+
+

Draw the contents of the scale

+
Parameters:
+ + + + +
painterPainter
centerCenter of the content circle
radiusRadius of the content circle
+
+
+ +

Reimplemented from QwtDial.

+ +
+
+ +
+
+ + + + + + + + +
void QwtCompass::keyPressEvent (QKeyEvent * kev) [protected, virtual]
+
+
+

Handles key events

+

Beside the keys described in QwtDial::keyPressEvent numbers from 1-9 (without 5) set the direction according to their position on the num pad.

+
See also:
isReadOnly()
+ +

Reimplemented from QwtDial.

+ +
+
+ +
+
+ + + + + + + +
QMap< double, QString > & QwtCompass::labelMap ()
+
+
+
Returns:
map, mapping values to labels
+
See also:
setLabelMap()
+ +
+
+ +
+
+ + + + + + + +
const QMap< double, QString > & QwtCompass::labelMap () const
+
+
+
Returns:
map, mapping values to labels
+
See also:
setLabelMap()
+ +
+
+ +
+
+ + + + + + + +
const QwtCompassRose * QwtCompass::rose () const
+
+
+
Returns:
rose
+
See also:
setRose()
+ +
+
+ +
+
+ + + + + + + +
QwtCompassRose * QwtCompass::rose ()
+
+
+
Returns:
rose
+
See also:
setRose()
+ +
+
+ +
+
+ + + + + + + + +
QwtText QwtCompass::scaleLabel (double value) const [protected, virtual]
+
+
+

Map a value to a corresponding label

+
Parameters:
+ + +
valueValue that will be mapped
+
+
+
Returns:
Label, or QString::null
+

label() looks in a map for a corresponding label for value or return an null text.

+
See also:
labelMap(), setLabelMap()
+ +

Reimplemented from QwtDial.

+ +
+
+ +
+
+ + + + + + + + +
void QwtCompass::setLabelMap (const QMap< double, QString > & map)
+
+
+ +

Set a map, mapping values to labels.

+
Parameters:
+ + +
mapvalue to label map
+
+
+

The values of the major ticks are found by looking into this map. The default map consists of the labels N, NE, E, SE, S, SW, W, NW.

+
Warning:
The map will have no effect for values that are no major tick values. Major ticks can be changed by QwtScaleDraw::setScale
+
See also:
labelMap(), scaleDraw(), setScale()
+ +
+
+ +
+
+ + + + + + + + +
void QwtCompass::setRose (QwtCompassRoserose)
+
+
+

Set a rose for the compass

+
Parameters:
+ + +
roseCompass rose
+
+
+
Warning:
The rose will be deleted, when a different rose is set or in ~QwtCompass
+
See also:
rose()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass__inherit__graph.map 2011-04-15 10:49:05.000000000 +0000 @@ -0,0 +1,5 @@ + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass__inherit__graph.md5 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1 @@ +7e988e9e73df5b2df5b17c7f95c9118e \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_magnet_needle.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_magnet_needle.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_magnet_needle.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_magnet_needle.html 2011-04-15 10:49:22.000000000 +0000 @@ -0,0 +1,204 @@ + + + + +Qwt User's Guide: QwtCompassMagnetNeedle Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtCompassMagnetNeedle Class Reference

+
+
+ +

A magnet needle for compass widgets. +More...

+ +

#include <qwt_dial_needle.h>

+
+Inheritance diagram for QwtCompassMagnetNeedle:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + +

+Public Types

enum  Style {
+  TriangleStyle, +
+  ThinStyle +
+ }

+Public Member Functions

 QwtCompassMagnetNeedle (Style=TriangleStyle, const QColor &light=Qt::white, const QColor &dark=Qt::red)

+Protected Member Functions

virtual void drawNeedle (QPainter *, double length, QPalette::ColorGroup) const
+

Detailed Description

+

A magnet needle for compass widgets.

+

A magnet needle points to two opposite directions indicating north and south.

+

The following colors are used:

+
    +
  • QPalette::Light
    + Used for pointing south
  • +
  • QPalette::Dark
    + Used for pointing north
  • +
  • QPalette::Base
    + Knob (ThinStyle only)
  • +
+
See also:
QwtDial, QwtCompass
+

Member Enumeration Documentation

+ +
+ +
+ +

Style of the needle.

+
Enumerator:
+ + +
TriangleStyle  +

A needle with a triangular shape.

+
ThinStyle  +

A thin needle.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
QwtCompassMagnetNeedle::QwtCompassMagnetNeedle (Style style = TriangleStyle,
const QColor & light = Qt::white,
const QColor & dark = Qt::red 
)
+
+
+ +

Constructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtCompassMagnetNeedle::drawNeedle (QPainter * painter,
double length,
QPalette::ColorGroup colorGroup 
) const [protected, virtual]
+
+
+

Draw the needle

+
Parameters:
+ + + + +
painterPainter
lengthLength of the needle
colorGroupColor group, used for painting
+
+
+ +

Implements QwtDialNeedle.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_magnet_needle__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_magnet_needle__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_magnet_needle__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_magnet_needle__inherit__graph.map 2011-04-15 10:49:05.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_magnet_needle__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_magnet_needle__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_magnet_needle__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_magnet_needle__inherit__graph.md5 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1 @@ +f789a346f93ff693c0091627f4347ed5 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_magnet_needle__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_magnet_needle__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_magnet_needle-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_magnet_needle-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_magnet_needle-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_magnet_needle-members.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,62 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtCompassMagnetNeedle Member List

+
+
+This is the complete list of members for QwtCompassMagnetNeedle, including all inherited members. + + + + + + + + + + + +
draw(QPainter *painter, const QPointF &center, double length, double direction, QPalette::ColorGroup=QPalette::Active) const QwtDialNeedle [virtual]
drawKnob(QPainter *, double width, const QBrush &, bool sunken) const QwtDialNeedle [protected, virtual]
drawNeedle(QPainter *, double length, QPalette::ColorGroup) const QwtCompassMagnetNeedle [protected, virtual]
palette() const QwtDialNeedle
QwtCompassMagnetNeedle(Style=TriangleStyle, const QColor &light=Qt::white, const QColor &dark=Qt::red)QwtCompassMagnetNeedle
QwtDialNeedle()QwtDialNeedle
setPalette(const QPalette &)QwtDialNeedle [virtual]
Style enum nameQwtCompassMagnetNeedle
ThinStyle enum valueQwtCompassMagnetNeedle
TriangleStyle enum valueQwtCompassMagnetNeedle
~QwtDialNeedle()QwtDialNeedle [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass-members.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,166 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtCompass Member List

+
+
+This is the complete list of members for QwtCompass, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
boundingRect() const QwtDial
Clockwise enum valueQwtDial
CounterClockwise enum valueQwtDial
direction() const QwtDial
Direction enum nameQwtDial
drawContents(QPainter *) const QwtDial [protected, virtual]
drawFocusIndicator(QPainter *) const QwtDial [protected, virtual]
drawFrame(QPainter *p)QwtDial [protected, virtual]
drawNeedle(QPainter *, const QPointF &, double radius, double direction, QPalette::ColorGroup) const QwtDial [protected, virtual]
drawRose(QPainter *, const QPointF &center, double radius, double north, QPalette::ColorGroup) const QwtCompass [protected, virtual]
drawScale(QPainter *, const QPointF &center, double radius, double origin, double arcMin, double arcMax) const QwtDial [protected, virtual]
drawScaleContents(QPainter *, const QPointF &center, double radius) const QwtCompass [protected, virtual]
exactPrevValue() const QwtDoubleRange [protected]
exactValue() const QwtDoubleRange [protected]
fitValue(double val)QwtAbstractSlider [virtual, slot]
frameShadow() const QwtDial
getScrollMode(const QPoint &, QwtAbstractSlider::ScrollMode &, int &direction) const QwtDial [protected, virtual]
getValue(const QPoint &)QwtDial [protected, virtual]
incPages(int)QwtDoubleRange [virtual]
incValue(int steps)QwtAbstractSlider [virtual, slot]
innerRect() const QwtDial
isReadOnly() const QwtAbstractSlider
isValid() const QwtAbstractSlider [inline]
keyPressEvent(QKeyEvent *)QwtCompass [protected, virtual]
labelMap() const QwtCompass
labelMap()QwtCompass
lineWidth() const QwtDial
mass() const QwtAbstractSlider [virtual]
maxScaleArc() const QwtDial
maxValue() const QwtDoubleRange
minimumSizeHint() const QwtDial [virtual]
minScaleArc() const QwtDial
minValue() const QwtDoubleRange
mode() const QwtDial
Mode enum nameQwtDial
mouseMoveEvent(QMouseEvent *e)QwtAbstractSlider [protected, virtual]
mouseOffset() const QwtAbstractSlider [protected]
mousePressEvent(QMouseEvent *e)QwtAbstractSlider [protected, virtual]
mouseReleaseEvent(QMouseEvent *e)QwtAbstractSlider [protected, virtual]
needle() const QwtDial
needle()QwtDial
orientation() const QwtAbstractSlider
origin() const QwtDial
pageSize() const QwtDoubleRange
paintEvent(QPaintEvent *)QwtDial [protected, virtual]
periodic() const QwtDoubleRange
Plain enum valueQwtDial
prevValue() const QwtDoubleRange [protected]
QwtAbstractSlider(Qt::Orientation, QWidget *parent=NULL)QwtAbstractSlider [explicit]
QwtCompass(QWidget *parent=NULL)QwtCompass [explicit]
QwtDial(QWidget *parent=NULL)QwtDial [explicit]
QwtDoubleRange()QwtDoubleRange
Raised enum valueQwtDial
rangeChange()QwtDial [protected, virtual]
rose() const QwtCompass
rose()QwtCompass
RotateNeedle enum valueQwtDial
RotateScale enum valueQwtDial
scaleDraw()QwtDial
scaleDraw() const QwtDial
scaleInnerRect() const QwtDial [virtual]
scaleLabel(double value) const QwtCompass [protected, virtual]
ScrDirect enum value (defined in QwtAbstractSlider)QwtAbstractSlider
ScrMouse enum valueQwtAbstractSlider
ScrNone enum valueQwtAbstractSlider
ScrollMode enum nameQwtAbstractSlider
scrollMode() const QwtAbstractSlider [protected]
ScrPage enum valueQwtAbstractSlider
ScrTimer enum valueQwtAbstractSlider
setDirection(Direction)QwtDial
setFrameShadow(Shadow)QwtDial
setLabelMap(const QMap< double, QString > &map)QwtCompass
setLineWidth(int)QwtDial
setMass(double val)QwtAbstractSlider [virtual]
setMode(Mode)QwtDial
setMouseOffset(double)QwtAbstractSlider [protected]
setNeedle(QwtDialNeedle *)QwtDial [virtual]
setOrientation(Qt::Orientation o)QwtAbstractSlider [virtual]
setOrigin(double)QwtDial [virtual]
setPeriodic(bool tf)QwtDoubleRange
setPosition(const QPoint &)QwtAbstractSlider [protected, virtual]
setRange(double vmin, double vmax, double vstep=0.0, int pagesize=1)QwtDoubleRange
setReadOnly(bool)QwtAbstractSlider [virtual, slot]
setRose(QwtCompassRose *rose)QwtCompass
setScale(int maxMajIntv, int maxMinIntv, double step=0.0)QwtDial [virtual]
setScaleArc(double min, double max)QwtDial
setScaleComponents(QwtAbstractScaleDraw::ScaleComponents)QwtDial
setScaleDraw(QwtDialScaleDraw *)QwtDial [virtual]
setScaleTicks(int minLen, int medLen, int majLen, int penWidth=1)QwtDial
setStep(double)QwtDoubleRange
setTracking(bool enable)QwtAbstractSlider
setUpdateTime(int t)QwtAbstractSlider
setValid(bool valid)QwtAbstractSlider [inline]
setValue(double val)QwtAbstractSlider [virtual, slot]
setWrapping(bool)QwtDial [virtual]
Shadow enum nameQwtDial
sizeHint() const QwtDial [virtual]
sliderMoved(double value)QwtAbstractSlider [signal]
sliderPressed()QwtAbstractSlider [signal]
sliderReleased()QwtAbstractSlider [signal]
step() const QwtDoubleRange
stepChange()QwtDoubleRange [protected, virtual]
stopMoving()QwtAbstractSlider
Sunken enum valueQwtDial
timerEvent(QTimerEvent *e)QwtAbstractSlider [protected, virtual]
updateScale()QwtDial [protected]
value() const QwtDoubleRange
valueChange()QwtDial [protected, virtual]
valueChanged(double value)QwtAbstractSlider [signal]
wheelEvent(QWheelEvent *e)QwtAbstractSlider [protected, virtual]
wrapping() const QwtDial
~QwtAbstractSlider()QwtAbstractSlider [virtual]
~QwtCompass()QwtCompass [virtual]
~QwtDial()QwtDial [virtual]
~QwtDoubleRange()QwtDoubleRange [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_rose.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_rose.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_rose.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_rose.html 2011-04-15 10:49:22.000000000 +0000 @@ -0,0 +1,190 @@ + + + + +Qwt User's Guide: QwtCompassRose Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtCompassRose Class Reference

+
+
+ +

Abstract base class for a compass rose. +More...

+ +

#include <qwt_compass_rose.h>

+
+Inheritance diagram for QwtCompassRose:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + +

+Public Member Functions

virtual ~QwtCompassRose ()
virtual void setPalette (const QPalette &p)
const QPalette & palette () const
virtual void draw (QPainter *painter, const QPointF &center, double radius, double north, QPalette::ColorGroup colorGroup=QPalette::Active) const =0
+

Detailed Description

+

Abstract base class for a compass rose.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
virtual QwtCompassRose::~QwtCompassRose () [inline, virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
virtual void QwtCompassRose::draw (QPainter * painter,
const QPointF & center,
double radius,
double north,
QPalette::ColorGroup colorGroup = QPalette::Active 
) const [pure virtual]
+
+
+

Draw the rose

+
Parameters:
+ + + + + + +
painterPainter
centerCenter point
radiusRadius of the rose
northPosition
colorGroupColor group
+
+
+ +

Implemented in QwtSimpleCompassRose.

+ +
+
+ +
+
+ + + + + + + +
const QPalette& QwtCompassRose::palette () const [inline]
+
+
+
Returns:
Current palette
+ +
+
+ +
+
+ + + + + + + + +
virtual void QwtCompassRose::setPalette (const QPalette & p) [inline, virtual]
+
+
+ +

Assign a palette.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_rose__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_rose__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_rose__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_rose__inherit__graph.map 2011-04-15 10:49:06.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_rose__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_rose__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_rose__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_rose__inherit__graph.md5 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1 @@ +488b60d3ce50fe0da79791dc002f2f9c \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_rose__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_rose__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_rose-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_rose-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_rose-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_rose-members.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,55 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtCompassRose Member List

+
+
+This is the complete list of members for QwtCompassRose, including all inherited members. + + + + +
draw(QPainter *painter, const QPointF &center, double radius, double north, QPalette::ColorGroup colorGroup=QPalette::Active) const =0QwtCompassRose [pure virtual]
palette() const QwtCompassRose [inline]
setPalette(const QPalette &p)QwtCompassRose [inline, virtual]
~QwtCompassRose()QwtCompassRose [inline, virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_wind_arrow.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_wind_arrow.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_wind_arrow.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_wind_arrow.html 2011-04-15 10:49:22.000000000 +0000 @@ -0,0 +1,208 @@ + + + + +Qwt User's Guide: QwtCompassWindArrow Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtCompassWindArrow Class Reference

+
+
+ +

An indicator for the wind direction. +More...

+ +

#include <qwt_dial_needle.h>

+
+Inheritance diagram for QwtCompassWindArrow:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + +

+Public Types

enum  Style {
+  Style1, +
+  Style2 +
+ }

+Public Member Functions

 QwtCompassWindArrow (Style, const QColor &light=Qt::white, const QColor &dark=Qt::gray)

+Protected Member Functions

virtual void drawNeedle (QPainter *, double length, QPalette::ColorGroup) const
+

Detailed Description

+

An indicator for the wind direction.

+

QwtCompassWindArrow shows the direction where the wind comes from.

+
    +
  • QPalette::Light
    + Used for Style1, or the light half of Style2
  • +
  • QPalette::Dark
    + Used for the dark half of Style2
  • +
+
See also:
QwtDial, QwtCompass
+

Member Enumeration Documentation

+ +
+
+ + + + +
enum QwtCompassWindArrow::Style
+
+
+ +

Style of the arrow.

+
Enumerator:
+ + +
Style1  +

A needle pointing to the center.

+
Style2  +

A needle pointing to the center.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
QwtCompassWindArrow::QwtCompassWindArrow (Style style,
const QColor & light = Qt::white,
const QColor & dark = Qt::gray 
)
+
+
+

Constructor

+
Parameters:
+ + + + +
styleArrow style
lightLight color
darkDark color
+
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtCompassWindArrow::drawNeedle (QPainter * painter,
double length,
QPalette::ColorGroup colorGroup 
) const [protected, virtual]
+
+
+

Draw the needle

+
Parameters:
+ + + + +
painterPainter
lengthLength of the needle
colorGroupColor group, used for painting
+
+
+ +

Implements QwtDialNeedle.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_wind_arrow__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_wind_arrow__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_wind_arrow__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_wind_arrow__inherit__graph.map 2011-04-15 10:49:06.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_wind_arrow__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_wind_arrow__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_wind_arrow__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_wind_arrow__inherit__graph.md5 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1 @@ +3442050926bc9e91832184a5e1be5b10 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_wind_arrow__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_wind_arrow__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_wind_arrow-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_wind_arrow-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_wind_arrow-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_compass_wind_arrow-members.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,62 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtCompassWindArrow Member List

+
+
+This is the complete list of members for QwtCompassWindArrow, including all inherited members. + + + + + + + + + + + +
draw(QPainter *painter, const QPointF &center, double length, double direction, QPalette::ColorGroup=QPalette::Active) const QwtDialNeedle [virtual]
drawKnob(QPainter *, double width, const QBrush &, bool sunken) const QwtDialNeedle [protected, virtual]
drawNeedle(QPainter *, double length, QPalette::ColorGroup) const QwtCompassWindArrow [protected, virtual]
palette() const QwtDialNeedle
QwtCompassWindArrow(Style, const QColor &light=Qt::white, const QColor &dark=Qt::gray)QwtCompassWindArrow
QwtDialNeedle()QwtDialNeedle
setPalette(const QPalette &)QwtDialNeedle [virtual]
Style enum nameQwtCompassWindArrow
Style1 enum valueQwtCompassWindArrow
Style2 enum valueQwtCompassWindArrow
~QwtDialNeedle()QwtDialNeedle [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_counter.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_counter.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_counter.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_counter.html 2011-04-15 10:49:22.000000000 +0000 @@ -0,0 +1,852 @@ + + + + +Qwt User's Guide: QwtCounter Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtCounter Class Reference

+
+
+ +

The Counter Widget. +More...

+ +

#include <qwt_counter.h>

+
+Inheritance diagram for QwtCounter:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Types

enum  Button {
+  Button1, +
+  Button2, +
+  Button3, +
+  ButtonCnt +
+ }

+Signals

void buttonReleased (double value)
void valueChanged (double value)

+Public Member Functions

 QwtCounter (QWidget *parent=NULL)
virtual ~QwtCounter ()
bool editable () const
void setEditable (bool)
void setNumButtons (int n)
int numButtons () const
void setIncSteps (QwtCounter::Button btn, int nSteps)
int incSteps (QwtCounter::Button btn) const
virtual void setValue (double)
virtual QSize sizeHint () const
double step () const
void setStep (double s)
double minValue () const
void setMinValue (double m)
double maxValue () const
void setMaxValue (double m)
void setStepButton1 (int nSteps)
int stepButton1 () const
void setStepButton2 (int nSteps)
int stepButton2 () const
void setStepButton3 (int nSteps)
int stepButton3 () const
virtual double value () const

+Protected Member Functions

virtual bool event (QEvent *)
virtual void wheelEvent (QWheelEvent *)
virtual void keyPressEvent (QKeyEvent *)
virtual void rangeChange ()
+

Detailed Description

+

The Counter Widget.

+

A Counter consists of a label displaying a number and one ore more (up to three) push buttons on each side of the label which can be used to increment or decrement the counter's value.

+

A Counter has a range from a minimum value to a maximum value and a step size. The range can be specified using QwtDblRange::setRange(). The counter's value is an integer multiple of the step size. The number of steps by which a button increments or decrements the value can be specified using QwtCounter::setIncSteps(). The number of buttons can be changed with QwtCounter::setNumButtons().

+

Holding the space bar down with focus on a button is the fastest method to step through the counter values. When the counter underflows/overflows, the focus is set to the smallest up/down button and counting is disabled. Counting is re-enabled on a button release event (mouse or space bar).

+

Example:

+
#include "../include/qwt_counter.h>
+
+QwtCounter *cnt;
+
+cnt = new QwtCounter(parent, name);
+
+cnt->setRange(0.0, 100.0, 1.0);             // From 0.0 to 100, step 1.0
+cnt->setNumButtons(2);                      // Two buttons each side
+cnt->setIncSteps(QwtCounter::Button1, 1);   // Button 1 increments 1 step
+cnt->setIncSteps(QwtCounter::Button2, 20);  // Button 2 increments 20 steps
+
+connect(cnt, SIGNAL(valueChanged(double)), my_class, SLOT(newValue(double)));
+

Member Enumeration Documentation

+ +
+
+ + + + +
enum QwtCounter::Button
+
+
+ +

Button index.

+
Enumerator:
+ + + + +
Button1  +

Button intended for minor steps.

+
Button2  +

Button intended for medium steps.

+
Button3  +

Button intended for large steps.

+
ButtonCnt  +

Number of buttons.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtCounter::QwtCounter (QWidget * parent = NULL) [explicit]
+
+
+

The default number of buttons is set to 2. The default increments are:

+
    +
  • Button 1: 1 step
  • +
  • Button 2: 10 steps
  • +
  • Button 3: 100 steps
  • +
+
Parameters:
+ + +
parent
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtCounter::~QwtCounter () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + +
void QwtCounter::buttonReleased (double value) [signal]
+
+
+

This signal is emitted when a button has been released

+
Parameters:
+ + +
valueThe new value
+
+
+ +
+
+ +
+
+ + + + + + + +
bool QwtCounter::editable () const
+
+
+ +

returns whether the line edit is edatble. (default is yes)

+ +
+
+ +
+
+ + + + + + + + +
bool QwtCounter::event (QEvent * event) [protected, virtual]
+
+
+

Handle PolishRequest events

+
Parameters:
+ + +
eventEvent
+
+
+ +
+
+ +
+
+ + + + + + + + +
int QwtCounter::incSteps (QwtCounter::Button button) const
+
+
+
Returns:
the number of steps by which a specified button increments the value or 0 if the button is invalid.
+
Parameters:
+ + +
buttonButton index
+
+
+
See also:
setIncSteps()
+ +
+
+ +
+
+ + + + + + + + +
void QwtCounter::keyPressEvent (QKeyEvent * event) [protected, virtual]
+
+
+

Handle key events

+
    +
  • Ctrl + Qt::Key_Home
    + Step to minValue()
  • +
  • Ctrl + Qt::Key_End
    + Step to maxValue()
  • +
  • Qt::Key_Up
    + Increment by incSteps(QwtCounter::Button1)
  • +
  • Qt::Key_Down
    + Decrement by incSteps(QwtCounter::Button1)
  • +
  • Qt::Key_PageUp
    + Increment by incSteps(QwtCounter::Button2)
  • +
  • Qt::Key_PageDown
    + Decrement by incSteps(QwtCounter::Button2)
  • +
  • Shift + Qt::Key_PageUp
    + Increment by incSteps(QwtCounter::Button3)
  • +
  • Shift + Qt::Key_PageDown
    + Decrement by incSteps(QwtCounter::Button3)
  • +
+
Parameters:
+ + +
eventKey event
+
+
+ +
+
+ +
+
+ + + + + + + +
double QwtCounter::maxValue () const
+
+
+ +

returns the maximum value of the range

+ +

Reimplemented from QwtDoubleRange.

+ +
+
+ +
+
+ + + + + + + +
double QwtCounter::minValue () const
+
+
+ +

returns the minimum value of the range

+ +

Reimplemented from QwtDoubleRange.

+ +
+
+ +
+
+ + + + + + + +
int QwtCounter::numButtons () const
+
+
+
Returns:
The number of buttons on each side of the widget.
+ +
+
+ +
+
+ + + + + + + +
void QwtCounter::rangeChange () [protected, virtual]
+
+
+ +

Notify change of range.

+

This function updates the enabled property of all buttons contained in QwtCounter.

+ +

Reimplemented from QwtDoubleRange.

+ +
+
+ +
+
+ + + + + + + + +
void QwtCounter::setEditable (bool editable)
+
+
+ +

Allow/disallow the user to manually edit the value.

+
Parameters:
+ + +
editabletrue enables editing
+
+
+
See also:
editable()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtCounter::setIncSteps (QwtCounter::Button button,
int nSteps 
)
+
+
+

Specify the number of steps by which the value is incremented or decremented when a specified button is pushed.

+
Parameters:
+ + + +
buttonButton index
nStepsNumber of steps
+
+
+
See also:
incSteps()
+ +
+
+ +
+
+ + + + + + + + +
void QwtCounter::setMaxValue (double value)
+
+
+

Set the maximum value of the range

+
Parameters:
+ + +
valueMaximum value
+
+
+
See also:
setMinValue(), maxVal()
+ +
+
+ +
+
+ + + + + + + + +
void QwtCounter::setMinValue (double value)
+
+
+

Set the minimum value of the range

+
Parameters:
+ + +
valueMinimum value
+
+
+
See also:
setMaxValue(), minValue()
+ +
+
+ +
+
+ + + + + + + + +
void QwtCounter::setNumButtons (int numButtons)
+
+
+ +

Specify the number of buttons on each side of the label.

+
Parameters:
+ + +
numButtonsNumber of buttons
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtCounter::setStep (double stepSize)
+
+
+

Set the step size

+
Parameters:
+ + +
stepSizeStep size
+
+
+
See also:
QwtDoubleRange::setStep()
+ +

Reimplemented from QwtDoubleRange.

+ +
+
+ +
+
+ + + + + + + + +
void QwtCounter::setStepButton1 (int nSteps)
+
+
+

Set the number of increment steps for button 1

+
Parameters:
+ + +
nStepsNumber of steps
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtCounter::setStepButton2 (int nSteps)
+
+
+

Set the number of increment steps for button 2

+
Parameters:
+ + +
nStepsNumber of steps
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtCounter::setStepButton3 (int nSteps)
+
+
+

Set the number of increment steps for button 3

+
Parameters:
+ + +
nStepsNumber of steps
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtCounter::setValue (double value) [virtual]
+
+
+ +

Set a new value.

+

Calls QwtDoubleRange::setValue and does all visual updates.

+
Parameters:
+ + +
valueNew value
+
+
+
See also:
QwtDoubleRange::setValue()
+ +

Reimplemented from QwtDoubleRange.

+ +
+
+ +
+
+ + + + + + + +
QSize QwtCounter::sizeHint () const [virtual]
+
+
+ +

A size hint.

+ +
+
+ +
+
+ + + + + + + +
double QwtCounter::step () const
+
+
+ +

returns the step size

+ +

Reimplemented from QwtDoubleRange.

+ +
+
+ +
+
+ + + + + + + +
int QwtCounter::stepButton1 () const
+
+
+ +

returns the number of increment steps for button 1

+ +
+
+ +
+
+ + + + + + + +
int QwtCounter::stepButton2 () const
+
+
+ +

returns the number of increment steps for button 2

+ +
+
+ +
+
+ + + + + + + +
int QwtCounter::stepButton3 () const
+
+
+ +

returns the number of increment steps for button 3

+ +
+
+ +
+
+ + + + + + + +
double QwtCounter::value () const [virtual]
+
+
+
Returns:
Current value
+ +

Reimplemented from QwtDoubleRange.

+ +
+
+ +
+
+ + + + + + + + +
void QwtCounter::valueChanged (double value) [signal]
+
+
+

This signal is emitted when the counter's value has changed

+
Parameters:
+ + +
valueThe new value
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtCounter::wheelEvent (QWheelEvent * event) [protected, virtual]
+
+
+

Handle wheel events

+
Parameters:
+ + +
eventWheel event
+
+
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_counter__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_counter__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_counter__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_counter__inherit__graph.map 2011-04-15 10:49:06.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_counter__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_counter__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_counter__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_counter__inherit__graph.md5 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1 @@ +f0062aa773c9b4647d75315ed1328e8f \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_counter__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_counter__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_counter-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_counter-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_counter-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_counter-members.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,100 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtCounter Member List

+
+
+This is the complete list of members for QwtCounter, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Button enum nameQwtCounter
Button1 enum valueQwtCounter
Button2 enum valueQwtCounter
Button3 enum valueQwtCounter
ButtonCnt enum valueQwtCounter
buttonReleased(double value)QwtCounter [signal]
editable() const QwtCounter
event(QEvent *)QwtCounter [protected, virtual]
exactPrevValue() const QwtDoubleRange [protected]
exactValue() const QwtDoubleRange [protected]
fitValue(double)QwtDoubleRange [virtual]
incPages(int)QwtDoubleRange [virtual]
incSteps(QwtCounter::Button btn) const QwtCounter
incValue(int)QwtDoubleRange [virtual]
isValid() const QwtDoubleRange
keyPressEvent(QKeyEvent *)QwtCounter [protected, virtual]
maxValue() const QwtCounter
minValue() const QwtCounter
numButtons() const QwtCounter
pageSize() const QwtDoubleRange
periodic() const QwtDoubleRange
prevValue() const QwtDoubleRange [protected]
QwtCounter(QWidget *parent=NULL)QwtCounter [explicit]
QwtDoubleRange()QwtDoubleRange
rangeChange()QwtCounter [protected, virtual]
setEditable(bool)QwtCounter
setIncSteps(QwtCounter::Button btn, int nSteps)QwtCounter
setMaxValue(double m)QwtCounter
setMinValue(double m)QwtCounter
setNumButtons(int n)QwtCounter
setPeriodic(bool tf)QwtDoubleRange
setRange(double vmin, double vmax, double vstep=0.0, int pagesize=1)QwtDoubleRange
setStep(double s)QwtCounter
setStepButton1(int nSteps)QwtCounter
setStepButton2(int nSteps)QwtCounter
setStepButton3(int nSteps)QwtCounter
setValid(bool)QwtDoubleRange
setValue(double)QwtCounter [virtual]
sizeHint() const QwtCounter [virtual]
step() const QwtCounter
stepButton1() const QwtCounter
stepButton2() const QwtCounter
stepButton3() const QwtCounter
stepChange()QwtDoubleRange [protected, virtual]
value() const QwtCounter [virtual]
valueChanged(double value)QwtCounter [signal]
wheelEvent(QWheelEvent *)QwtCounter [protected, virtual]
~QwtCounter()QwtCounter [virtual]
~QwtDoubleRange()QwtDoubleRange [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_c_pointer_data.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_c_pointer_data.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_c_pointer_data.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_c_pointer_data.html 2011-04-15 10:49:22.000000000 +0000 @@ -0,0 +1,226 @@ + + + + +Qwt User's Guide: QwtCPointerData Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtCPointerData Class Reference

+
+
+ +

Data class containing two pointers to memory blocks of doubles. +More...

+ +

#include <qwt_series_data.h>

+
+Inheritance diagram for QwtCPointerData:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + +

+Public Member Functions

 QwtCPointerData (const double *x, const double *y, size_t size)
virtual QRectF boundingRect () const
virtual size_t size () const
virtual QPointF sample (size_t i) const
const double * xData () const
const double * yData () const
+

Detailed Description

+

Data class containing two pointers to memory blocks of doubles.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
QwtCPointerData::QwtCPointerData (const double * x,
const double * y,
size_t size 
)
+
+
+

Constructor

+
Parameters:
+ + + + +
xArray of x values
yArray of y values
sizeSize of the x and y arrays
+
+
+
Warning:
The programmer must assure that the memory blocks referenced by the pointers remain valid during the lifetime of the QwtPlotCPointer object.
+
See also:
QwtPlotCurve::setData(), QwtPlotCurve::setRawSamples()
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
QRectF QwtCPointerData::boundingRect () const [virtual]
+
+
+ +

Calculate the bounding rect.

+

The bounding rectangle is calculated once by iterating over all points and is stored for all following requests.

+
Returns:
Bounding rectangle
+ +

Implements QwtSeriesData< QPointF >.

+ +
+
+ +
+
+ + + + + + + + +
QPointF QwtCPointerData::sample (size_t i) const [virtual]
+
+
+

Return the sample at position i

+
Parameters:
+ + +
iIndex
+
+
+
Returns:
Sample at position i
+ +

Implements QwtSeriesData< QPointF >.

+ +
+
+ +
+
+ + + + + + + +
size_t QwtCPointerData::size () const [virtual]
+
+
+
Returns:
Size of the data set
+ +

Implements QwtSeriesData< QPointF >.

+ +
+
+ +
+
+ + + + + + + +
const double * QwtCPointerData::xData () const
+
+
+
Returns:
Array of the x-values
+ +
+
+ +
+
+ + + + + + + +
const double * QwtCPointerData::yData () const
+
+
+
Returns:
Array of the y-values
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_c_pointer_data__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_c_pointer_data__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_c_pointer_data__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_c_pointer_data__inherit__graph.map 2011-04-15 10:49:06.000000000 +0000 @@ -0,0 +1,4 @@ + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_c_pointer_data__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_c_pointer_data__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_c_pointer_data__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_c_pointer_data__inherit__graph.md5 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1 @@ +e5aeb0edf81518d29ad628930011b044 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_c_pointer_data__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_c_pointer_data__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_c_pointer_data-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_c_pointer_data-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_c_pointer_data-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_c_pointer_data-members.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,61 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtCPointerData Member List

+
+
+This is the complete list of members for QwtCPointerData, including all inherited members. + + + + + + + + + + +
boundingRect() const QwtCPointerData [virtual]
d_boundingRectQwtSeriesData< QPointF > [mutable, protected]
QwtCPointerData(const double *x, const double *y, size_t size)QwtCPointerData
QwtSeriesData()QwtSeriesData< QPointF >
sample(size_t i) const QwtCPointerData [virtual]
setRectOfInterest(const QRectF &)QwtSeriesData< QPointF > [virtual]
size() const QwtCPointerData [virtual]
xData() const QwtCPointerData
yData() const QwtCPointerData
~QwtSeriesData()QwtSeriesData< QPointF > [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_curve_fitter.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_curve_fitter.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_curve_fitter.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_curve_fitter.html 2011-04-15 10:49:22.000000000 +0000 @@ -0,0 +1,143 @@ + + + + +Qwt User's Guide: QwtCurveFitter Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtCurveFitter Class Reference

+
+
+ +

Abstract base class for a curve fitter. +More...

+ +

#include <qwt_curve_fitter.h>

+
+Inheritance diagram for QwtCurveFitter:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + +

+Public Member Functions

virtual ~QwtCurveFitter ()
virtual QPolygonF fitCurve (const QPolygonF &polygon) const =0

+Protected Member Functions

 QwtCurveFitter ()
+

Detailed Description

+

Abstract base class for a curve fitter.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtCurveFitter::~QwtCurveFitter () [virtual]
+
+
+ +

Destructor.

+ +
+
+ +
+
+ + + + + + + +
QwtCurveFitter::QwtCurveFitter () [protected]
+
+
+ +

Constructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + +
virtual QPolygonF QwtCurveFitter::fitCurve (const QPolygonF & polygon) const [pure virtual]
+
+
+

Find a curve which has the best fit to a series of data points

+
Parameters:
+ + +
polygonSeries of data points
+
+
+
Returns:
Curve points
+ +

Implemented in QwtSplineCurveFitter, and QwtWeedingCurveFitter.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_curve_fitter__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_curve_fitter__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_curve_fitter__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_curve_fitter__inherit__graph.map 2011-04-15 10:49:06.000000000 +0000 @@ -0,0 +1,4 @@ + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_curve_fitter__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_curve_fitter__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_curve_fitter__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_curve_fitter__inherit__graph.md5 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1 @@ +f548a3281cd5c3aeaf245bf53cc918f6 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_curve_fitter__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_curve_fitter__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_curve_fitter-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_curve_fitter-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_curve_fitter-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_curve_fitter-members.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,54 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtCurveFitter Member List

+
+
+This is the complete list of members for QwtCurveFitter, including all inherited members. + + + +
fitCurve(const QPolygonF &polygon) const =0QwtCurveFitter [pure virtual]
QwtCurveFitter()QwtCurveFitter [protected]
~QwtCurveFitter()QwtCurveFitter [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial.html 2011-04-15 10:49:22.000000000 +0000 @@ -0,0 +1,1424 @@ + + + + +Qwt User's Guide: QwtDial Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+ +
+ +

QwtDial class provides a rounded range control. +More...

+ +

#include <qwt_dial.h>

+
+Inheritance diagram for QwtDial:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Types

enum  Shadow {
+  Plain = QFrame::Plain, +
+  Raised = QFrame::Raised, +
+  Sunken = QFrame::Sunken +
+ }
enum  Mode {
+  RotateNeedle, +
+  RotateScale +
+ }
enum  Direction {
+  Clockwise, +
+  CounterClockwise +
+ }

+Public Member Functions

 QwtDial (QWidget *parent=NULL)
virtual ~QwtDial ()
void setFrameShadow (Shadow)
Shadow frameShadow () const
void setLineWidth (int)
int lineWidth () const
void setMode (Mode)
Mode mode () const
virtual void setWrapping (bool)
bool wrapping () const
virtual void setScale (int maxMajIntv, int maxMinIntv, double step=0.0)
void setScaleArc (double min, double max)
void setScaleComponents (QwtAbstractScaleDraw::ScaleComponents)
void setScaleTicks (int minLen, int medLen, int majLen, int penWidth=1)
double minScaleArc () const
double maxScaleArc () const
virtual void setOrigin (double)
double origin () const
void setDirection (Direction)
Direction direction () const
virtual void setNeedle (QwtDialNeedle *)
const QwtDialNeedleneedle () const
QwtDialNeedleneedle ()
QRectF boundingRect () const
QRectF innerRect () const
virtual QRectF scaleInnerRect () const
virtual QSize sizeHint () const
virtual QSize minimumSizeHint () const
virtual void setScaleDraw (QwtDialScaleDraw *)
QwtDialScaleDrawscaleDraw ()
const QwtDialScaleDrawscaleDraw () const

+Protected Member Functions

virtual void paintEvent (QPaintEvent *)
virtual void keyPressEvent (QKeyEvent *)
virtual void drawFrame (QPainter *p)
virtual void drawContents (QPainter *) const
virtual void drawFocusIndicator (QPainter *) const
virtual void drawScale (QPainter *, const QPointF &center, double radius, double origin, double arcMin, double arcMax) const
virtual void drawScaleContents (QPainter *painter, const QPointF &center, double radius) const
virtual void drawNeedle (QPainter *, const QPointF &, double radius, double direction, QPalette::ColorGroup) const
virtual QwtText scaleLabel (double) const
void updateScale ()
virtual void rangeChange ()
virtual void valueChange ()
virtual double getValue (const QPoint &)
virtual void getScrollMode (const QPoint &, QwtAbstractSlider::ScrollMode &, int &direction) const

+Friends

+class QwtDialScaleDraw
+

Detailed Description

+

QwtDial class provides a rounded range control.

+

QwtDial is intended as base class for dial widgets like speedometers, compass widgets, clocks ...

+
+dials2.png +
+

A dial contains a scale and a needle indicating the current value of the dial. Depending on Mode one of them is fixed and the other is rotating. If not isReadOnly() the dial can be rotated by dragging the mouse or using keyboard inputs (see keyPressEvent()). A dial might be wrapping, what means a rotation below/above one limit continues on the other limit (f.e compass). The scale might cover any arc of the dial, its values are related to the origin() of the dial.

+

Qwt is missing a set of good looking needles (QwtDialNeedle). Contributions are very welcome.

+
See also:
QwtCompass, QwtAnalogClock, QwtDialNeedle
+
Note:
The examples/dials example shows different types of dials.
+

Member Enumeration Documentation

+ +
+
+ + + + +
enum QwtDial::Direction
+
+
+ +

Direction of the dial.

+
Enumerator:
+ + +
Clockwise  +

Clockwise.

+
CounterClockwise  +

Counter clockwise.

+
+
+
+ +
+
+ +
+
+ + + + +
enum QwtDial::Mode
+
+
+ +

Mode controlling wether the needle or the scale is rotating.

+
Enumerator:
+ + +
RotateNeedle  +

The needle is rotating.

+
RotateScale  +

The needle is fixed, the scales are rotating.

+
+
+
+ +
+
+ +
+
+ + + + +
enum QwtDial::Shadow
+
+
+ +

Frame shadow.

+

Unfortunately it is not possible to use QFrame::Shadow as a property of a widget that is not derived from QFrame. The following enum is made for the designer only. It is safe to use QFrame::Shadow instead.

+
Enumerator:
+ + + +
Plain  +

QFrame::Plain.

+
Raised  +

QFrame::Raised.

+
Sunken  +

QFrame::Sunken.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtDial::QwtDial (QWidget * parent = NULL) [explicit]
+
+
+ +

Constructor.

+
Parameters:
+ + +
parentParent widget
+
+
+

Create a dial widget with no scale and no needle. The default origin is 90.0 with no valid value. It accepts mouse and keyboard inputs and has no step size. The default mode is QwtDial::RotateNeedle.

+ +
+
+ +
+
+ + + + + + + +
QwtDial::~QwtDial () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
QRectF QwtDial::boundingRect () const
+
+
+
Returns:
bounding rect of the dial including the frame
+
See also:
setLineWidth(), scaleInnerRect(), innerRect()
+ +
+
+ +
+
+ + + + + + + +
QwtDial::Direction QwtDial::direction () const
+
+
+
Returns:
Direction of the dial
+

The default direction of a dial is QwtDial::Clockwise

+
See also:
setDirection()
+ +
+
+ +
+
+ + + + + + + + +
void QwtDial::drawContents (QPainter * painter) const [protected, virtual]
+
+
+ +

Draw the contents inside the frame.

+

QPalette::Window is the background color outside of the frame. QPalette::Base is the background color inside the frame. QPalette::WindowText is the background color inside the scale.

+
Parameters:
+ + +
painterPainter
+
+
+
See also:
boundingRect(), innerRect(), scaleInnerRect(), QWidget::setPalette()
+ +
+
+ +
+
+ + + + + + + + +
void QwtDial::drawFocusIndicator (QPainter * painter) const [protected, virtual]
+
+
+

Draw a dotted round circle, if !isReadOnly()

+
Parameters:
+ + +
painterPainter
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtDial::drawFrame (QPainter * painter) [protected, virtual]
+
+
+

Draw the frame around the dial

+
Parameters:
+ + +
painterPainter
+
+
+
See also:
lineWidth(), frameShadow()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtDial::drawNeedle (QPainter * painter,
const QPointF & center,
double radius,
double direction,
QPalette::ColorGroup cg 
) const [protected, virtual]
+
+
+

Draw the needle

+
Parameters:
+ + + + + + +
painterPainter
centerCenter of the dial
radiusLength for the needle
directionDirection of the needle in degrees, counter clockwise
cgColorGroup
+
+
+ +

Reimplemented in QwtAnalogClock.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtDial::drawScale (QPainter * painter,
const QPointF & center,
double radius,
double origin,
double minArc,
double maxArc 
) const [protected, virtual]
+
+
+

Draw the scale

+
Parameters:
+ + + + + + + +
painterPainter
centerCenter of the dial
radiusRadius of the scale
originOrigin of the scale
minArcMinimum of the arc
maxArcMinimum of the arc
+
+
+
See also:
QwtRoundScaleDraw::setAngleRange()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtDial::drawScaleContents (QPainter * painter,
const QPointF & center,
double radius 
) const [protected, virtual]
+
+
+

Draw the contents inside the scale

+

Paints nothing.

+
Parameters:
+ + + + +
painterPainter
centerCenter of the contents circle
radiusRadius of the contents circle
+
+
+ +

Reimplemented in QwtCompass.

+ +
+
+ +
+
+ + + + + + + +
QwtDial::Shadow QwtDial::frameShadow () const
+
+
+
Returns:
Frame shadow /sa setFrameShadow(), lineWidth(), QFrame::frameShadow
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtDial::getScrollMode (const QPoint & pos,
QwtAbstractSlider::ScrollModescrollMode,
int & direction 
) const [protected, virtual]
+
+
+

See QwtAbstractSlider::getScrollMode()

+
Parameters:
+ + +
pospoint where the mouse was pressed
+
+
+
Return values:
+ + + +
scrollModeThe scrolling mode
directiondirection: 1, 0, or -1.
+
+
+
See also:
QwtAbstractSlider::getScrollMode()
+ +

Implements QwtAbstractSlider.

+ +
+
+ +
+
+ + + + + + + + +
double QwtDial::getValue (const QPoint & pos) [protected, virtual]
+
+
+

Find the value for a given position

+
Parameters:
+ + +
posPosition
+
+
+
Returns:
Value
+ +

Implements QwtAbstractSlider.

+ +
+
+ +
+
+ + + + + + + +
QRectF QwtDial::innerRect () const
+
+
+
Returns:
bounding rect of the circle inside the frame
+
See also:
setLineWidth(), scaleInnerRect(), boundingRect()
+ +
+
+ +
+
+ + + + + + + + +
void QwtDial::keyPressEvent (QKeyEvent * event) [protected, virtual]
+
+
+

Handles key events

+
    +
  • Key_Down, KeyLeft
    + Decrement by 1
  • +
  • Key_Prior
    + Decrement by pageSize()
  • +
  • Key_Home
    + Set the value to minValue()
  • +
+
    +
  • Key_Up, KeyRight
    + Increment by 1
  • +
  • Key_Next
    + Increment by pageSize()
  • +
  • Key_End
    + Set the value to maxValue()
  • +
+
Parameters:
+ + +
eventKey event
+
+
+
See also:
isReadOnly()
+ +

Reimplemented from QwtAbstractSlider.

+ +

Reimplemented in QwtCompass.

+ +
+
+ +
+
+ + + + + + + +
int QwtDial::lineWidth () const
+
+
+
Returns:
Line width of the frame
+
See also:
setLineWidth(), frameShadow(), lineWidth()
+ +
+
+ +
+
+ + + + + + + +
double QwtDial::maxScaleArc () const
+
+
+
Returns:
Upper limit of the scale arc
+ +
+
+ +
+
+ + + + + + + +
QSize QwtDial::minimumSizeHint () const [virtual]
+
+
+ +

Return a minimum size hint.

+
Warning:
The return value of QwtDial::minimumSizeHint() depends on the font and the scale.
+ +
+
+ +
+
+ + + + + + + +
double QwtDial::minScaleArc () const
+
+
+
Returns:
Lower limit of the scale arc
+ +
+
+ +
+
+ + + + + + + +
QwtDial::Mode QwtDial::mode () const
+
+
+
Returns:
mode of the dial.
+

The value of the dial is indicated by the difference between the origin and the direction of the needle. In case of QwtDial::RotateNeedle the scale arc is fixed to the origin() and the needle is rotating, in case of QwtDial::RotateScale, the needle points to origin() and the scale is rotating.

+

The default mode is QwtDial::RotateNeedle.

+
See also:
setMode(), origin(), setScaleArc(), value()
+ +
+
+ +
+
+ + + + + + + +
QwtDialNeedle * QwtDial::needle ()
+
+
+
Returns:
needle
+
See also:
setNeedle()
+ +
+
+ +
+
+ + + + + + + +
const QwtDialNeedle * QwtDial::needle () const
+
+
+
Returns:
needle
+
See also:
setNeedle()
+ +
+
+ +
+
+ + + + + + + +
double QwtDial::origin () const
+
+
+

The origin is the angle where scale and needle is relative to.

+
Returns:
Origin of the dial
+
See also:
setOrigin()
+ +
+
+ +
+
+ + + + + + + + +
void QwtDial::paintEvent (QPaintEvent * event) [protected, virtual]
+
+
+

Paint the dial

+
Parameters:
+ + +
eventPaint event
+
+
+ +
+
+ +
+
+ + + + + + + +
void QwtDial::rangeChange () [protected, virtual]
+
+
+ +

QwtDoubleRange update hook.

+ +

Reimplemented from QwtDoubleRange.

+ +
+
+ +
+
+ + + + + + + +
QwtDialScaleDraw * QwtDial::scaleDraw ()
+
+
+ +

Return the scale draw.

+ +
+
+ +
+
+ + + + + + + +
const QwtDialScaleDraw * QwtDial::scaleDraw () const
+
+
+ +

Return the scale draw.

+ +
+
+ +
+
+ + + + + + + +
QRectF QwtDial::scaleInnerRect () const [virtual]
+
+
+
Returns:
rect inside the scale
+
See also:
setLineWidth(), boundingRect(), innerRect()
+ +
+
+ +
+
+ + + + + + + + +
QwtText QwtDial::scaleLabel (double value) const [protected, virtual]
+
+
+

Find the label for a value

+
Parameters:
+ + +
valueValue
+
+
+
Returns:
label
+ +

Reimplemented in QwtAnalogClock, and QwtCompass.

+ +
+
+ +
+
+ + + + + + + + +
void QwtDial::setDirection (Direction direction)
+
+
+

Set the direction of the dial (clockwise/counterclockwise)

+
Parameters:
+ + +
directionDirection
+
+
+
See also:
direction()
+ +
+
+ +
+
+ + + + + + + + +
void QwtDial::setFrameShadow (Shadow shadow)
+
+
+

Sets the frame shadow value from the frame style.

+
Parameters:
+ + +
shadowFrame shadow
+
+
+
See also:
setLineWidth(), QFrame::setFrameShadow()
+ +
+
+ +
+
+ + + + + + + + +
void QwtDial::setLineWidth (int lineWidth)
+
+
+

Sets the line width

+
Parameters:
+ + +
lineWidthLine width
+
+
+
See also:
setFrameShadow()
+ +
+
+ +
+
+ + + + + + + + +
void QwtDial::setMode (Mode mode)
+
+
+ +

Change the mode of the meter.

+
Parameters:
+ + +
modeNew mode
+
+
+

The value of the meter is indicated by the difference between north of the scale and the direction of the needle. In case of QwtDial::RotateNeedle north is pointing to the origin() and the needle is rotating, in case of QwtDial::RotateScale, the needle points to origin() and the scale is rotating.

+

The default mode is QwtDial::RotateNeedle.

+
See also:
mode(), setValue(), setOrigin()
+ +
+
+ +
+
+ + + + + + + + +
void QwtDial::setNeedle (QwtDialNeedleneedle) [virtual]
+
+
+

Set a needle for the dial

+

Qwt is missing a set of good looking needles. Contributions are very welcome.

+
Parameters:
+ + +
needleNeedle
+
+
+
Warning:
The needle will be deleted, when a different needle is set or in ~QwtDial()
+ +
+
+ +
+
+ + + + + + + + +
void QwtDial::setOrigin (double origin) [virtual]
+
+
+ +

Change the origin.

+

The origin is the angle where scale and needle is relative to.

+
Parameters:
+ + +
originNew origin
+
+
+
See also:
origin()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtDial::setScale (int maxMajIntv,
int maxMinIntv,
double step = 0.0 
) [virtual]
+
+
+

Change the intervals of the scale

+
Parameters:
+ + + + +
maxMajIntvMaximum for the number of major steps
maxMinIntvMaximum number of minor steps
stepStep size
+
+
+
See also:
QwtScaleEngine::divideScale()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtDial::setScaleArc (double minArc,
double maxArc 
)
+
+
+

Change the arc of the scale

+
Parameters:
+ + + +
minArcLower limit
maxArcUpper limit
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtDial::setScaleComponents (QwtAbstractScaleDraw::ScaleComponents components)
+
+
+

A wrapper method for accessing the scale draw.

+
Parameters:
+ + +
componentsScale components
+
+
+
See also:
QwtAbstractScaleDraw::enableComponent()
+ +
+
+ +
+
+ + + + + + + + +
void QwtDial::setScaleDraw (QwtDialScaleDrawscaleDraw) [virtual]
+
+
+

Set an individual scale draw

+
Parameters:
+ + +
scaleDrawScale draw
+
+
+
Warning:
The previous scale draw is deleted
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtDial::setScaleTicks (int minLen,
int medLen,
int majLen,
int penWidth = 1 
)
+
+
+

Assign length and width of the ticks

+
Parameters:
+ + + + + +
minLenLength of the minor ticks
medLenLength of the medium ticks
majLenLength of the major ticks
penWidthWidth of the pen for all ticks
+
+
+
See also:
QwtAbstractScaleDraw::setTickLength(), QwtDialScaleDraw::setPenWidth()
+ +
+
+ +
+
+ + + + + + + + +
void QwtDial::setWrapping (bool wrapping) [virtual]
+
+
+

Sets whether it is possible to step the value from the highest value to the lowest value and vice versa to on.

+
Parameters:
+ + +
wrappingen/disables wrapping
+
+
+
See also:
wrapping(), QwtDoubleRange::periodic()
+
Note:
The meaning of wrapping is like the wrapping property of QSpinBox, but not like it is used in QDial.
+ +
+
+ +
+
+ + + + + + + +
QSize QwtDial::sizeHint () const [virtual]
+
+
+
Returns:
Size hint
+ +
+
+ +
+
+ + + + + + + +
void QwtDial::updateScale () [protected]
+
+
+

Update the scale with the current attributes

+
See also:
setScale()
+ +
+
+ +
+
+ + + + + + + +
void QwtDial::valueChange () [protected, virtual]
+
+
+ +

QwtDoubleRange update hook.

+ +

Reimplemented from QwtAbstractSlider.

+ +
+
+ +
+
+ + + + + + + +
bool QwtDial::wrapping () const
+
+
+

wrapping() holds whether it is possible to step the value from the highest value to the lowest value and vice versa.

+
See also:
setWrapping(), QwtDoubleRange::setPeriodic()
+
Note:
The meaning of wrapping is like the wrapping property of QSpinBox, but not like it is used in QDial.
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial__inherit__graph.map 2011-04-15 10:49:06.000000000 +0000 @@ -0,0 +1,6 @@ + + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial__inherit__graph.md5 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1 @@ +1626f65f0370fc1b69a6e7c7a1b57054 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial-members.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,158 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtDial Member List

+
+
+This is the complete list of members for QwtDial, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
boundingRect() const QwtDial
Clockwise enum valueQwtDial
CounterClockwise enum valueQwtDial
direction() const QwtDial
Direction enum nameQwtDial
drawContents(QPainter *) const QwtDial [protected, virtual]
drawFocusIndicator(QPainter *) const QwtDial [protected, virtual]
drawFrame(QPainter *p)QwtDial [protected, virtual]
drawNeedle(QPainter *, const QPointF &, double radius, double direction, QPalette::ColorGroup) const QwtDial [protected, virtual]
drawScale(QPainter *, const QPointF &center, double radius, double origin, double arcMin, double arcMax) const QwtDial [protected, virtual]
drawScaleContents(QPainter *painter, const QPointF &center, double radius) const QwtDial [protected, virtual]
exactPrevValue() const QwtDoubleRange [protected]
exactValue() const QwtDoubleRange [protected]
fitValue(double val)QwtAbstractSlider [virtual, slot]
frameShadow() const QwtDial
getScrollMode(const QPoint &, QwtAbstractSlider::ScrollMode &, int &direction) const QwtDial [protected, virtual]
getValue(const QPoint &)QwtDial [protected, virtual]
incPages(int)QwtDoubleRange [virtual]
incValue(int steps)QwtAbstractSlider [virtual, slot]
innerRect() const QwtDial
isReadOnly() const QwtAbstractSlider
isValid() const QwtAbstractSlider [inline]
keyPressEvent(QKeyEvent *)QwtDial [protected, virtual]
lineWidth() const QwtDial
mass() const QwtAbstractSlider [virtual]
maxScaleArc() const QwtDial
maxValue() const QwtDoubleRange
minimumSizeHint() const QwtDial [virtual]
minScaleArc() const QwtDial
minValue() const QwtDoubleRange
mode() const QwtDial
Mode enum nameQwtDial
mouseMoveEvent(QMouseEvent *e)QwtAbstractSlider [protected, virtual]
mouseOffset() const QwtAbstractSlider [protected]
mousePressEvent(QMouseEvent *e)QwtAbstractSlider [protected, virtual]
mouseReleaseEvent(QMouseEvent *e)QwtAbstractSlider [protected, virtual]
needle() const QwtDial
needle()QwtDial
orientation() const QwtAbstractSlider
origin() const QwtDial
pageSize() const QwtDoubleRange
paintEvent(QPaintEvent *)QwtDial [protected, virtual]
periodic() const QwtDoubleRange
Plain enum valueQwtDial
prevValue() const QwtDoubleRange [protected]
QwtAbstractSlider(Qt::Orientation, QWidget *parent=NULL)QwtAbstractSlider [explicit]
QwtDial(QWidget *parent=NULL)QwtDial [explicit]
QwtDialScaleDraw (defined in QwtDial)QwtDial [friend]
QwtDoubleRange()QwtDoubleRange
Raised enum valueQwtDial
rangeChange()QwtDial [protected, virtual]
RotateNeedle enum valueQwtDial
RotateScale enum valueQwtDial
scaleDraw()QwtDial
scaleDraw() const QwtDial
scaleInnerRect() const QwtDial [virtual]
scaleLabel(double) const QwtDial [protected, virtual]
ScrDirect enum value (defined in QwtAbstractSlider)QwtAbstractSlider
ScrMouse enum valueQwtAbstractSlider
ScrNone enum valueQwtAbstractSlider
scrollMode() const QwtAbstractSlider [protected]
ScrollMode enum nameQwtAbstractSlider
ScrPage enum valueQwtAbstractSlider
ScrTimer enum valueQwtAbstractSlider
setDirection(Direction)QwtDial
setFrameShadow(Shadow)QwtDial
setLineWidth(int)QwtDial
setMass(double val)QwtAbstractSlider [virtual]
setMode(Mode)QwtDial
setMouseOffset(double)QwtAbstractSlider [protected]
setNeedle(QwtDialNeedle *)QwtDial [virtual]
setOrientation(Qt::Orientation o)QwtAbstractSlider [virtual]
setOrigin(double)QwtDial [virtual]
setPeriodic(bool tf)QwtDoubleRange
setPosition(const QPoint &)QwtAbstractSlider [protected, virtual]
setRange(double vmin, double vmax, double vstep=0.0, int pagesize=1)QwtDoubleRange
setReadOnly(bool)QwtAbstractSlider [virtual, slot]
setScale(int maxMajIntv, int maxMinIntv, double step=0.0)QwtDial [virtual]
setScaleArc(double min, double max)QwtDial
setScaleComponents(QwtAbstractScaleDraw::ScaleComponents)QwtDial
setScaleDraw(QwtDialScaleDraw *)QwtDial [virtual]
setScaleTicks(int minLen, int medLen, int majLen, int penWidth=1)QwtDial
setStep(double)QwtDoubleRange
setTracking(bool enable)QwtAbstractSlider
setUpdateTime(int t)QwtAbstractSlider
setValid(bool valid)QwtAbstractSlider [inline]
setValue(double val)QwtAbstractSlider [virtual, slot]
setWrapping(bool)QwtDial [virtual]
Shadow enum nameQwtDial
sizeHint() const QwtDial [virtual]
sliderMoved(double value)QwtAbstractSlider [signal]
sliderPressed()QwtAbstractSlider [signal]
sliderReleased()QwtAbstractSlider [signal]
step() const QwtDoubleRange
stepChange()QwtDoubleRange [protected, virtual]
stopMoving()QwtAbstractSlider
Sunken enum valueQwtDial
timerEvent(QTimerEvent *e)QwtAbstractSlider [protected, virtual]
updateScale()QwtDial [protected]
value() const QwtDoubleRange
valueChange()QwtDial [protected, virtual]
valueChanged(double value)QwtAbstractSlider [signal]
wheelEvent(QWheelEvent *e)QwtAbstractSlider [protected, virtual]
wrapping() const QwtDial
~QwtAbstractSlider()QwtAbstractSlider [virtual]
~QwtDial()QwtDial [virtual]
~QwtDoubleRange()QwtDoubleRange [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_needle.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_needle.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_needle.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_needle.html 2011-04-15 10:49:22.000000000 +0000 @@ -0,0 +1,309 @@ + + + + +Qwt User's Guide: QwtDialNeedle Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtDialNeedle Class Reference

+
+
+ +

Base class for needles that can be used in a QwtDial. +More...

+ +

#include <qwt_dial_needle.h>

+
+Inheritance diagram for QwtDialNeedle:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + +

+Public Member Functions

 QwtDialNeedle ()
virtual ~QwtDialNeedle ()
virtual void setPalette (const QPalette &)
const QPalette & palette () const
virtual void draw (QPainter *painter, const QPointF &center, double length, double direction, QPalette::ColorGroup=QPalette::Active) const

+Protected Member Functions

virtual void drawNeedle (QPainter *painter, double length, QPalette::ColorGroup colorGroup) const =0
virtual void drawKnob (QPainter *, double width, const QBrush &, bool sunken) const
+

Detailed Description

+

Base class for needles that can be used in a QwtDial.

+

QwtDialNeedle is a pointer that indicates a value by pointing to a specific direction.

+

Qwt is missing a set of good looking needles. Contributions are very welcome.

+
See also:
QwtDial, QwtCompass
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtDialNeedle::QwtDialNeedle ()
+
+
+ +

Constructor.

+ +
+
+ +
+
+ + + + + + + +
QwtDialNeedle::~QwtDialNeedle () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtDialNeedle::draw (QPainter * painter,
const QPointF & center,
double length,
double direction,
QPalette::ColorGroup colorGroup = QPalette::Active 
) const [virtual]
+
+
+

Draw the needle

+
Parameters:
+ + + + + + +
painterPainter
centerCenter of the dial, start position for the needle
lengthLength of the needle
directionDirection of the needle, in degrees counter clockwise
colorGroupColor group, used for painting
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtDialNeedle::drawKnob (QPainter * painter,
double width,
const QBrush & brush,
bool sunken 
) const [protected, virtual]
+
+
+ +

Draw the knob.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual void QwtDialNeedle::drawNeedle (QPainter * painter,
double length,
QPalette::ColorGroup colorGroup 
) const [protected, pure virtual]
+
+
+ +

Draw the needle.

+

The origin of the needle is at position (0.0, 0.0 ) pointing in direction 0.0 ( = east ).

+

The painter is already initilaized with translation and rotation.

+
Parameters:
+ + + + +
painterPainter
lengthLength of the needle
colorGroupColor group, used for painting
+
+
+
See also:
setPalette(), palette()
+ +

Implemented in QwtDialSimpleNeedle, QwtCompassMagnetNeedle, and QwtCompassWindArrow.

+ +
+
+ +
+
+ + + + + + + +
const QPalette & QwtDialNeedle::palette () const
+
+
+
Returns:
the palette of the needle.
+ +
+
+ +
+
+ + + + + + + + +
void QwtDialNeedle::setPalette (const QPalette & palette) [virtual]
+
+
+

Sets the palette for the needle.

+
Parameters:
+ + +
paletteNew Palette
+
+
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_needle__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_needle__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_needle__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_needle__inherit__graph.map 2011-04-15 10:49:06.000000000 +0000 @@ -0,0 +1,5 @@ + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_needle__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_needle__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_needle__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_needle__inherit__graph.md5 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1 @@ +b5ad1142dd2f8eee93205914b423f3e0 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_needle__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_needle__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_needle-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_needle-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_needle-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_needle-members.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,58 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtDialNeedle Member List

+
+
+This is the complete list of members for QwtDialNeedle, including all inherited members. + + + + + + + +
draw(QPainter *painter, const QPointF &center, double length, double direction, QPalette::ColorGroup=QPalette::Active) const QwtDialNeedle [virtual]
drawKnob(QPainter *, double width, const QBrush &, bool sunken) const QwtDialNeedle [protected, virtual]
drawNeedle(QPainter *painter, double length, QPalette::ColorGroup colorGroup) const =0QwtDialNeedle [protected, pure virtual]
palette() const QwtDialNeedle
QwtDialNeedle()QwtDialNeedle
setPalette(const QPalette &)QwtDialNeedle [virtual]
~QwtDialNeedle()QwtDialNeedle [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_scale_draw.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_scale_draw.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_scale_draw.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_scale_draw.html 2011-04-15 10:49:22.000000000 +0000 @@ -0,0 +1,175 @@ + + + + +Qwt User's Guide: QwtDialScaleDraw Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtDialScaleDraw Class Reference

+
+
+ +

A special scale draw made for QwtDial. +More...

+ +

#include <qwt_dial.h>

+
+Inheritance diagram for QwtDialScaleDraw:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + +

+Public Member Functions

 QwtDialScaleDraw (QwtDial *)
virtual QwtText label (double value) const
void setPenWidth (double)
double penWidth () const
+

Detailed Description

+

A special scale draw made for QwtDial.

+
See also:
QwtDial, QwtCompass
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtDialScaleDraw::QwtDialScaleDraw (QwtDialparent) [explicit]
+
+
+

Constructor

+
Parameters:
+ + +
parentParent dial widget
+
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + +
QwtText QwtDialScaleDraw::label (double value) const [virtual]
+
+
+

Call QwtDial::scaleLabel of the parent dial widget.

+
Parameters:
+ + +
valueValue to display
+
+
+
See also:
QwtDial::scaleLabel()
+ +

Reimplemented from QwtAbstractScaleDraw.

+ +
+
+ +
+
+ + + + + + + +
double QwtDialScaleDraw::penWidth () const
+
+
+
Returns:
Pen width used for painting the scale
+
See also:
setPenWidth, QwtDial::drawScale()
+ +

Reimplemented from QwtAbstractScaleDraw.

+ +
+
+ +
+
+ + + + + + + + +
void QwtDialScaleDraw::setPenWidth (double penWidth)
+
+
+

Set the pen width used for painting the scale

+
Parameters:
+ + +
penWidthPen width
+
+
+
See also:
penWidth(), QwtDial::drawScale()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_scale_draw__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_scale_draw__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_scale_draw__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_scale_draw__inherit__graph.map 2011-04-15 10:49:06.000000000 +0000 @@ -0,0 +1,4 @@ + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_scale_draw__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_scale_draw__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_scale_draw__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_scale_draw__inherit__graph.md5 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1 @@ +3ce4387b6322e8cb4e93692a66d5aa95 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_scale_draw__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_scale_draw__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_scale_draw-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_scale_draw-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_scale_draw-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_scale_draw-members.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,92 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtDialScaleDraw Member List

+
+
+This is the complete list of members for QwtDialScaleDraw, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Backbone enum valueQwtAbstractScaleDraw
center() const QwtRoundScaleDraw
draw(QPainter *, const QPalette &) const QwtAbstractScaleDraw [virtual]
drawBackbone(QPainter *p) const QwtRoundScaleDraw [protected, virtual]
drawLabel(QPainter *p, double val) const QwtRoundScaleDraw [protected, virtual]
drawTick(QPainter *p, double val, double len) const QwtRoundScaleDraw [protected, virtual]
enableComponent(ScaleComponent, bool enable=true)QwtAbstractScaleDraw
extent(const QFont &) const QwtRoundScaleDraw [virtual]
hasComponent(ScaleComponent) const QwtAbstractScaleDraw
invalidateCache()QwtAbstractScaleDraw [protected]
label(double value) const QwtDialScaleDraw [virtual]
Labels enum valueQwtAbstractScaleDraw
maxTickLength() const QwtAbstractScaleDraw
minimumExtent() const QwtAbstractScaleDraw
moveCenter(double x, double y)QwtRoundScaleDraw [inline]
moveCenter(const QPointF &)QwtRoundScaleDraw
penWidth() const QwtDialScaleDraw
QwtAbstractScaleDraw()QwtAbstractScaleDraw
QwtDialScaleDraw(QwtDial *)QwtDialScaleDraw [explicit]
QwtRoundScaleDraw()QwtRoundScaleDraw
radius() const QwtRoundScaleDraw
ScaleComponent enum nameQwtAbstractScaleDraw
ScaleComponents typedefQwtAbstractScaleDraw
scaleDiv() const QwtAbstractScaleDraw
scaleMap() const QwtAbstractScaleDraw
scaleMap()QwtAbstractScaleDraw
setAngleRange(double angle1, double angle2)QwtRoundScaleDraw
setMinimumExtent(double)QwtAbstractScaleDraw
setPenWidth(double)QwtDialScaleDraw
QwtRoundScaleDraw::setPenWidth(int width)QwtAbstractScaleDraw
setRadius(int radius)QwtRoundScaleDraw
setScaleDiv(const QwtScaleDiv &s)QwtAbstractScaleDraw
setSpacing(double margin)QwtAbstractScaleDraw
setTickLength(QwtScaleDiv::TickType, double length)QwtAbstractScaleDraw
setTransformation(QwtScaleTransformation *)QwtAbstractScaleDraw
spacing() const QwtAbstractScaleDraw
tickLabel(const QFont &, double value) const QwtAbstractScaleDraw [protected]
tickLength(QwtScaleDiv::TickType) const QwtAbstractScaleDraw
Ticks enum valueQwtAbstractScaleDraw
~QwtAbstractScaleDraw()QwtAbstractScaleDraw [virtual]
~QwtRoundScaleDraw()QwtRoundScaleDraw [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_simple_needle.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_simple_needle.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_simple_needle.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_simple_needle.html 2011-04-15 10:49:22.000000000 +0000 @@ -0,0 +1,260 @@ + + + + +Qwt User's Guide: QwtDialSimpleNeedle Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtDialSimpleNeedle Class Reference

+
+
+ +

A needle for dial widgets. +More...

+ +

#include <qwt_dial_needle.h>

+
+Inheritance diagram for QwtDialSimpleNeedle:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + +

+Public Types

enum  Style {
+  Arrow, +
+  Ray +
+ }

+Public Member Functions

 QwtDialSimpleNeedle (Style, bool hasKnob=true, const QColor &mid=Qt::gray, const QColor &base=Qt::darkGray)
void setWidth (double width)
double width () const

+Protected Member Functions

virtual void drawNeedle (QPainter *, double length, QPalette::ColorGroup) const
+

Detailed Description

+

A needle for dial widgets.

+

The following colors are used:

+
    +
  • QPalette::Mid
    + Pointer
  • +
  • QPalette::Base
    + Knob
  • +
+
See also:
QwtDial, QwtCompass
+

Member Enumeration Documentation

+ +
+
+ + + + +
enum QwtDialSimpleNeedle::Style
+
+
+ +

Style of the needle.

+
Enumerator:
+ + +
Arrow  +

Arrow.

+
Ray  +

A straight line from the center.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
QwtDialSimpleNeedle::QwtDialSimpleNeedle (Style style,
bool hasKnob = true,
const QColor & mid = Qt::gray,
const QColor & base = Qt::darkGray 
)
+
+
+

Constructor

+
Parameters:
+ + + + + +
styleStyle
hasKnobWith/Without knob
midMiddle color
baseBase color
+
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtDialSimpleNeedle::drawNeedle (QPainter * painter,
double length,
QPalette::ColorGroup colorGroup 
) const [protected, virtual]
+
+
+

Draw the needle

+
Parameters:
+ + + + +
painterPainter
lengthLength of the needle
colorGroupColor group, used for painting
+
+
+ +

Implements QwtDialNeedle.

+ +
+
+ +
+
+ + + + + + + + +
void QwtDialSimpleNeedle::setWidth (double width)
+
+
+

Set the width of the needle

+
Parameters:
+ + +
widthWidth
+
+
+
See also:
width()
+ +
+
+ +
+
+ + + + + + + +
double QwtDialSimpleNeedle::width () const
+
+
+
Returns:
the width of the needle
+
See also:
setWidth()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_simple_needle__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_simple_needle__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_simple_needle__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_simple_needle__inherit__graph.map 2011-04-15 10:49:07.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_simple_needle__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_simple_needle__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_simple_needle__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_simple_needle__inherit__graph.md5 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1 @@ +8aa2a30b402683da077d04c2a1ecf8d8 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_simple_needle__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_simple_needle__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_simple_needle-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_simple_needle-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_simple_needle-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dial_simple_needle-members.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,64 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtDialSimpleNeedle Member List

+
+
+This is the complete list of members for QwtDialSimpleNeedle, including all inherited members. + + + + + + + + + + + + + +
Arrow enum valueQwtDialSimpleNeedle
draw(QPainter *painter, const QPointF &center, double length, double direction, QPalette::ColorGroup=QPalette::Active) const QwtDialNeedle [virtual]
drawKnob(QPainter *, double width, const QBrush &, bool sunken) const QwtDialNeedle [protected, virtual]
drawNeedle(QPainter *, double length, QPalette::ColorGroup) const QwtDialSimpleNeedle [protected, virtual]
palette() const QwtDialNeedle
QwtDialNeedle()QwtDialNeedle
QwtDialSimpleNeedle(Style, bool hasKnob=true, const QColor &mid=Qt::gray, const QColor &base=Qt::darkGray)QwtDialSimpleNeedle
Ray enum valueQwtDialSimpleNeedle
setPalette(const QPalette &)QwtDialNeedle [virtual]
setWidth(double width)QwtDialSimpleNeedle
Style enum nameQwtDialSimpleNeedle
width() const QwtDialSimpleNeedle
~QwtDialNeedle()QwtDialNeedle [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_double_range.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_double_range.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_double_range.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_double_range.html 2011-04-15 10:49:22.000000000 +0000 @@ -0,0 +1,637 @@ + + + + +Qwt User's Guide: QwtDoubleRange Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtDoubleRange Class Reference

+
+
+ +

A class which controls a value within an interval. +More...

+ +

#include <qwt_double_range.h>

+
+Inheritance diagram for QwtDoubleRange:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 QwtDoubleRange ()
virtual ~QwtDoubleRange ()
void setRange (double vmin, double vmax, double vstep=0.0, int pagesize=1)
void setValid (bool)
bool isValid () const
virtual void setValue (double)
double value () const
void setPeriodic (bool tf)
bool periodic () const
void setStep (double)
double step () const
double maxValue () const
double minValue () const
int pageSize () const
virtual void incValue (int)
virtual void incPages (int)
virtual void fitValue (double)

+Protected Member Functions

double exactValue () const
double exactPrevValue () const
double prevValue () const
virtual void valueChange ()
virtual void stepChange ()
virtual void rangeChange ()
+

Detailed Description

+

A class which controls a value within an interval.

+

This class is useful as a base class or a member for sliders. It represents an interval of type double within which a value can be moved. The value can be either an arbitrary point inside the interval (see QwtDoubleRange::setValue), or it can be fitted into a step raster (see QwtDoubleRange::fitValue and QwtDoubleRange::incValue).

+

As a special case, a QwtDoubleRange can be periodic, which means that a value outside the interval will be mapped to a value inside the interval when QwtDoubleRange::setValue(), QwtDoubleRange::fitValue(), QwtDoubleRange::incValue() or QwtDoubleRange::incPages() are called.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtDoubleRange::QwtDoubleRange ()
+
+
+

The range is initialized to [0.0, 100.0], the step size to 1.0, and the value to 0.0.

+ +
+
+ +
+
+ + + + + + + +
QwtDoubleRange::~QwtDoubleRange () [virtual]
+
+
+ +

Destroys the QwtDoubleRange.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
double QwtDoubleRange::exactPrevValue () const [protected]
+
+
+ +

Returns the exact previous value.

+ +
+
+ +
+
+ + + + + + + +
double QwtDoubleRange::exactValue () const [protected]
+
+
+ +

Returns the exact value.

+

The exact value is the value which QwtDoubleRange::value would return if the value were not adjusted to the step raster. It differs from the current value only if fitValue() or incValue() have been used before. This function is intended for internal use in derived classes.

+ +
+
+ +
+
+ + + + + + + + +
void QwtDoubleRange::fitValue (double x) [virtual]
+
+
+ +

Adjust the value to the closest point in the step raster.

+
Parameters:
+ + +
xvalue
+
+
+
Warning:
The value is clipped when it lies outside the range. When the range is QwtDoubleRange::periodic, it will be mapped to a point in the interval such that
new value := x + n * (max. value - min. value)
with an integer number n.
+ +

Reimplemented in QwtAbstractSlider.

+ +
+
+ +
+
+ + + + + + + + +
void QwtDoubleRange::incPages (int nPages) [virtual]
+
+
+ +

Increment the value by a specified number of pages.

+
Parameters:
+ + +
nPagesNumber of pages to increment. A negative number decrements the value.
+
+
+
Warning:
The Page size is specified in the constructor.
+ +
+
+ +
+
+ + + + + + + + +
void QwtDoubleRange::incValue (int nSteps) [virtual]
+
+
+ +

Increment the value by a specified number of steps.

+
Parameters:
+ + +
nStepsNumber of steps to increment
+
+
+
Warning:
As a result of this operation, the new value will always be adjusted to the step raster.
+ +

Reimplemented in QwtAbstractSlider.

+ +
+
+ +
+
+ + + + + + + +
bool QwtDoubleRange::isValid () const
+
+
+ +

Indicates if the value is valid.

+ +

Reimplemented in QwtAbstractSlider.

+ +
+
+ +
+
+ + + + + + + +
double QwtDoubleRange::maxValue () const
+
+
+ +

Returns the value of the second border of the range.

+

maxValue returns the value which has been specified as the second parameter in QwtDoubleRange::setRange.

+
See also:
setRange()
+ +

Reimplemented in QwtCounter.

+ +
+
+ +
+
+ + + + + + + +
double QwtDoubleRange::minValue () const
+
+
+ +

Returns the value at the first border of the range.

+

minValue returns the value which has been specified as the first parameter in setRange().

+
See also:
setRange()
+ +

Reimplemented in QwtCounter.

+ +
+
+ +
+
+ + + + + + + +
int QwtDoubleRange::pageSize () const
+
+
+ +

Returns the page size in steps.

+ +
+
+ +
+
+ + + + + + + +
bool QwtDoubleRange::periodic () const
+
+
+ +

Returns true if the range is periodic.

+
See also:
setPeriodic()
+ +
+
+ +
+
+ + + + + + + +
double QwtDoubleRange::prevValue () const [protected]
+
+
+ +

Returns the previous value.

+ +
+
+ +
+
+ + + + + + + +
void QwtDoubleRange::rangeChange () [protected, virtual]
+
+
+ +

Notify a change of the range.

+

This virtual function is called whenever the range changes. The default implementation does nothing.

+ +

Reimplemented in QwtCounter, QwtDial, and QwtSlider.

+ +
+
+ +
+
+ + + + + + + + +
void QwtDoubleRange::setPeriodic (bool tf)
+
+
+ +

Make the range periodic.

+

When the range is periodic, the value will be set to a point inside the interval such that

+
point = value + n * width 

if the user tries to set a new value which is outside the range. If the range is nonperiodic (the default), values outside the range will be clipped.

+
Parameters:
+ + +
tftrue for a periodic range
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtDoubleRange::setRange (double vmin,
double vmax,
double vstep = 0.0,
int pageSize = 1 
)
+
+
+ +

Specify range and step size.

+
Parameters:
+ + + + + +
vminlower boundary of the interval
vmaxhigher boundary of the interval
vstepstep width
pageSizepage size in steps
+
+
+
Warning:
    +
  • A change of the range changes the value if it lies outside the new range. The current value will *not* be adjusted to the new step raster.
  • +
  • vmax < vmin is allowed.
  • +
  • If the step size is left out or set to zero, it will be set to 1/100 of the interval length.
  • +
  • If the step size has an absurd value, it will be corrected to a better one.
  • +
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtDoubleRange::setStep (double vstep)
+
+
+ +

Change the step raster.

+
Parameters:
+ + +
vstepnew step width
+
+
+
Warning:
The value will not be adjusted to the new step raster.
+ +

Reimplemented in QwtCounter.

+ +
+
+ +
+
+ + + + + + + + +
void QwtDoubleRange::setValid (bool isValid)
+
+
+ +

Set the value to be valid/invalid.

+ +

Reimplemented in QwtAbstractSlider.

+ +
+
+ +
+
+ + + + + + + + +
void QwtDoubleRange::setValue (double x) [virtual]
+
+
+ +

Set a new value without adjusting to the step raster.

+
Parameters:
+ + +
xnew value
+
+
+
Warning:
The value is clipped when it lies outside the range. When the range is QwtDoubleRange::periodic, it will be mapped to a point in the interval such that
new value := x + n * (max. value - min. value)
with an integer number n.
+ +

Reimplemented in QwtAbstractSlider, and QwtCounter.

+ +
+
+ +
+
+ + + + + + + +
double QwtDoubleRange::step () const
+
+
+
Returns:
the step size
+
See also:
setStep(), setRange()
+ +

Reimplemented in QwtCounter.

+ +
+
+ +
+
+ + + + + + + +
void QwtDoubleRange::stepChange () [protected, virtual]
+
+
+ +

Notify a change of the step size.

+

This virtual function is called whenever the step size changes. The default implementation does nothing.

+ +
+
+ +
+
+ + + + + + + +
double QwtDoubleRange::value () const
+
+
+ +

Returns the current value.

+ +

Reimplemented in QwtCounter.

+ +
+
+ +
+
+ + + + + + + +
void QwtDoubleRange::valueChange () [protected, virtual]
+
+
+ +

Notify a change of value.

+

This virtual function is called whenever the value changes. The default implementation does nothing.

+ +

Reimplemented in QwtAbstractSlider, QwtDial, QwtSlider, and QwtWheel.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_double_range__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_double_range__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_double_range__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_double_range__inherit__graph.map 2011-04-15 10:49:07.000000000 +0000 @@ -0,0 +1,10 @@ + + + + + + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_double_range__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_double_range__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_double_range__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_double_range__inherit__graph.md5 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1 @@ +33f70d4286025a971ce5990ef81bd3db \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_double_range__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_double_range__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_double_range-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_double_range-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_double_range-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_double_range-members.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,74 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtDoubleRange Member List

+
+
+This is the complete list of members for QwtDoubleRange, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + +
exactPrevValue() const QwtDoubleRange [protected]
exactValue() const QwtDoubleRange [protected]
fitValue(double)QwtDoubleRange [virtual]
incPages(int)QwtDoubleRange [virtual]
incValue(int)QwtDoubleRange [virtual]
isValid() const QwtDoubleRange
maxValue() const QwtDoubleRange
minValue() const QwtDoubleRange
pageSize() const QwtDoubleRange
periodic() const QwtDoubleRange
prevValue() const QwtDoubleRange [protected]
QwtDoubleRange()QwtDoubleRange
rangeChange()QwtDoubleRange [protected, virtual]
setPeriodic(bool tf)QwtDoubleRange
setRange(double vmin, double vmax, double vstep=0.0, int pagesize=1)QwtDoubleRange
setStep(double)QwtDoubleRange
setValid(bool)QwtDoubleRange
setValue(double)QwtDoubleRange [virtual]
step() const QwtDoubleRange
stepChange()QwtDoubleRange [protected, virtual]
value() const QwtDoubleRange
valueChange()QwtDoubleRange [protected, virtual]
~QwtDoubleRange()QwtDoubleRange [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dyn_grid_layout.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dyn_grid_layout.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dyn_grid_layout.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dyn_grid_layout.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,680 @@ + + + + +Qwt User's Guide: QwtDynGridLayout Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtDynGridLayout Class Reference

+
+
+ +

The QwtDynGridLayout class lays out widgets in a grid, adjusting the number of columns and rows to the current size. +More...

+ +

#include <qwt_dyngrid_layout.h>

+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 QwtDynGridLayout (QWidget *, int margin=0, int space=-1)
 QwtDynGridLayout (int space=-1)
virtual ~QwtDynGridLayout ()
virtual void invalidate ()
void setMaxCols (uint maxCols)
uint maxCols () const
uint numRows () const
uint numCols () const
virtual void addItem (QLayoutItem *)
virtual QLayoutItem * itemAt (int index) const
virtual QLayoutItem * takeAt (int index)
virtual int count () const
void setExpandingDirections (Qt::Orientations)
virtual Qt::Orientations expandingDirections () const
QList< QRect > layoutItems (const QRect &, uint numCols) const
virtual int maxItemWidth () const
virtual void setGeometry (const QRect &rect)
virtual bool hasHeightForWidth () const
virtual int heightForWidth (int) const
virtual QSize sizeHint () const
virtual bool isEmpty () const
uint itemCount () const
virtual uint columnsForWidth (int width) const

+Protected Member Functions

void layoutGrid (uint numCols, QVector< int > &rowHeight, QVector< int > &colWidth) const
void stretchGrid (const QRect &rect, uint numCols, QVector< int > &rowHeight, QVector< int > &colWidth) const
+

Detailed Description

+

The QwtDynGridLayout class lays out widgets in a grid, adjusting the number of columns and rows to the current size.

+

QwtDynGridLayout takes the space it gets, divides it up into rows and columns, and puts each of the widgets it manages into the correct cell(s). It lays out as many number of columns as possible (limited by maxCols()).

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
QwtDynGridLayout::QwtDynGridLayout (QWidget * parent,
int margin = 0,
int spacing = -1 
) [explicit]
+
+
+
Parameters:
+ + + + +
parentParent widget
marginMargin
spacingSpacing
+
+
+ +
+
+ +
+
+ + + + + + + + +
QwtDynGridLayout::QwtDynGridLayout (int spacing = -1) [explicit]
+
+
+
Parameters:
+ + +
spacingSpacing
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtDynGridLayout::~QwtDynGridLayout () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + +
void QwtDynGridLayout::addItem (QLayoutItem * item) [virtual]
+
+
+ +

Adds item to the next free position.

+ +
+
+ +
+
+ + + + + + + + +
uint QwtDynGridLayout::columnsForWidth (int width) const [virtual]
+
+
+

Calculate the number of columns for a given width. It tries to use as many columns as possible (limited by maxCols())

+
Parameters:
+ + +
widthAvailable width for all columns
+
+
+
See also:
maxCols(), setMaxCols()
+ +
+
+ +
+
+ + + + + + + +
int QwtDynGridLayout::count () const [virtual]
+
+
+
Returns:
Number of items in the layout
+ +
+
+ +
+
+ + + + + + + +
Qt::Orientations QwtDynGridLayout::expandingDirections () const [virtual]
+
+
+

Returns whether this layout can make use of more space than sizeHint(). A value of Qt::Vertical or Qt::Horizontal means that it wants to grow in only one dimension, while Qt::Vertical | Qt::Horizontal means that it wants to grow in both dimensions.

+
See also:
setExpandingDirections()
+ +
+
+ +
+
+ + + + + + + +
bool QwtDynGridLayout::hasHeightForWidth () const [virtual]
+
+
+
Returns:
true: QwtDynGridLayout implements heightForWidth.
+
See also:
heightForWidth()
+ +
+
+ +
+
+ + + + + + + + +
int QwtDynGridLayout::heightForWidth (int width) const [virtual]
+
+
+
Returns:
The preferred height for this layout, given the width w.
+
See also:
hasHeightForWidth()
+ +
+
+ +
+
+ + + + + + + +
void QwtDynGridLayout::invalidate () [virtual]
+
+
+ +

Invalidate all internal caches.

+ +
+
+ +
+
+ + + + + + + +
bool QwtDynGridLayout::isEmpty () const [virtual]
+
+
+
Returns:
true if this layout is empty.
+ +
+
+ +
+
+ + + + + + + + +
QLayoutItem * QwtDynGridLayout::itemAt (int index) const [virtual]
+
+
+

Find the item at a spcific index

+
Parameters:
+ + +
indexIndex
+
+
+
See also:
takeAt()
+ +
+
+ +
+
+ + + + + + + +
uint QwtDynGridLayout::itemCount () const
+
+
+
Returns:
number of layout items
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtDynGridLayout::layoutGrid (uint numCols,
QVector< int > & rowHeight,
QVector< int > & colWidth 
) const [protected]
+
+
+

Calculate the dimensions for the columns and rows for a grid of numCols columns.

+
Parameters:
+ + + + +
numColsNumber of columns.
rowHeightArray where to fill in the calculated row heights.
colWidthArray where to fill in the calculated column widths.
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
QList< QRect > QwtDynGridLayout::layoutItems (const QRect & rect,
uint numCols 
) const
+
+
+

Calculate the geometries of the layout items for a layout with numCols columns and a given rect.

+
Parameters:
+ + + +
rectRect where to place the items
numColsNumber of columns
+
+
+
Returns:
item geometries
+ +
+
+ +
+
+ + + + + + + +
uint QwtDynGridLayout::maxCols () const
+
+
+

Return the upper limit for the number of columns. 0 means unlimited, what is the default.

+
See also:
setMaxCols()
+ +
+
+ +
+
+ + + + + + + +
int QwtDynGridLayout::maxItemWidth () const [virtual]
+
+
+
Returns:
the maximum width of all layout items
+ +
+
+ +
+
+ + + + + + + +
uint QwtDynGridLayout::numCols () const
+
+
+
Returns:
Number of columns of the current layout.
+
See also:
numRows()
+
Warning:
The number of columns might change whenever the geometry changes
+ +
+
+ +
+
+ + + + + + + +
uint QwtDynGridLayout::numRows () const
+
+
+
Returns:
Number of rows of the current layout.
+
See also:
numCols()
+
Warning:
The number of rows might change whenever the geometry changes
+ +
+
+ +
+
+ + + + + + + + +
void QwtDynGridLayout::setExpandingDirections (Qt::Orientations expanding)
+
+
+

Set whether this layout can make use of more space than sizeHint(). A value of Qt::Vertical or Qt::Horizontal means that it wants to grow in only one dimension, while Qt::Vertical | Qt::Horizontal means that it wants to grow in both dimensions. The default value is 0.

+
Parameters:
+ + +
expandingOr'd orientations
+
+
+
See also:
expandingDirections()
+ +
+
+ +
+
+ + + + + + + + +
void QwtDynGridLayout::setGeometry (const QRect & rect) [virtual]
+
+
+

Reorganizes columns and rows and resizes managed widgets within the rectangle rect.

+
Parameters:
+ + +
rectLayout geometry
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtDynGridLayout::setMaxCols (uint maxCols)
+
+
+

Limit the number of columns.

+
Parameters:
+ + +
maxColsupper limit, 0 means unlimited
+
+
+
See also:
maxCols()
+ +
+
+ +
+
+ + + + + + + +
QSize QwtDynGridLayout::sizeHint () const [virtual]
+
+
+

Return the size hint. If maxCols() > 0 it is the size for a grid with maxCols() columns, otherwise it is the size for a grid with only one row.

+
See also:
maxCols(), setMaxCols()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtDynGridLayout::stretchGrid (const QRect & rect,
uint numCols,
QVector< int > & rowHeight,
QVector< int > & colWidth 
) const [protected]
+
+
+

Stretch columns in case of expanding() & QSizePolicy::Horizontal and rows in case of expanding() & QSizePolicy::Vertical to fill the entire rect. Rows and columns are stretched with the same factor.

+
See also:
setExpanding(), expanding()
+ +
+
+ +
+
+ + + + + + + + +
QLayoutItem * QwtDynGridLayout::takeAt (int index) [virtual]
+
+
+

Find the item at a spcific index and remove it from the layout

+
Parameters:
+ + +
indexIndex
+
+
+
See also:
itemAt()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dyn_grid_layout-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dyn_grid_layout-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dyn_grid_layout-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_dyn_grid_layout-members.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,76 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtDynGridLayout Member List

+
+
+This is the complete list of members for QwtDynGridLayout, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + +
addItem(QLayoutItem *)QwtDynGridLayout [virtual]
columnsForWidth(int width) const QwtDynGridLayout [virtual]
count() const QwtDynGridLayout [virtual]
expandingDirections() const QwtDynGridLayout [virtual]
hasHeightForWidth() const QwtDynGridLayout [virtual]
heightForWidth(int) const QwtDynGridLayout [virtual]
invalidate()QwtDynGridLayout [virtual]
isEmpty() const QwtDynGridLayout [virtual]
itemAt(int index) const QwtDynGridLayout [virtual]
itemCount() const QwtDynGridLayout
layoutGrid(uint numCols, QVector< int > &rowHeight, QVector< int > &colWidth) const QwtDynGridLayout [protected]
layoutItems(const QRect &, uint numCols) const QwtDynGridLayout
maxCols() const QwtDynGridLayout
maxItemWidth() const QwtDynGridLayout [virtual]
numCols() const QwtDynGridLayout
numRows() const QwtDynGridLayout
QwtDynGridLayout(QWidget *, int margin=0, int space=-1)QwtDynGridLayout [explicit]
QwtDynGridLayout(int space=-1)QwtDynGridLayout [explicit]
setExpandingDirections(Qt::Orientations)QwtDynGridLayout
setGeometry(const QRect &rect)QwtDynGridLayout [virtual]
setMaxCols(uint maxCols)QwtDynGridLayout
sizeHint() const QwtDynGridLayout [virtual]
stretchGrid(const QRect &rect, uint numCols, QVector< int > &rowHeight, QVector< int > &colWidth) const QwtDynGridLayout [protected]
takeAt(int index)QwtDynGridLayout [virtual]
~QwtDynGridLayout()QwtDynGridLayout [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern_1_1_key_pattern.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern_1_1_key_pattern.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern_1_1_key_pattern.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern_1_1_key_pattern.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,138 @@ + + + + +Qwt User's Guide: QwtEventPattern::KeyPattern Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + +
+
+ +
+

QwtEventPattern::KeyPattern Class Reference

+
+
+ +

A pattern for key events. +More...

+ +

#include <qwt_event_pattern.h>

+ +

List of all members.

+ + + + + + +

+Public Member Functions

 KeyPattern (int k=0, int st=Qt::NoButton)

+Public Attributes

int key
int state
+

Detailed Description

+

A pattern for key events.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
QwtEventPattern::KeyPattern::KeyPattern (int k = 0,
int st = Qt::NoButton 
) [inline]
+
+
+ +

Constructor.

+ +
+
+

Member Data Documentation

+ +
+ +
+ +

Key code.

+ +
+
+ +
+ +
+ +

State.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern_1_1_key_pattern-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern_1_1_key_pattern-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern_1_1_key_pattern-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern_1_1_key_pattern-members.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,60 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + +
+
+
+

QwtEventPattern::KeyPattern Member List

+
+
+This is the complete list of members for QwtEventPattern::KeyPattern, including all inherited members. + + + +
keyQwtEventPattern::KeyPattern
KeyPattern(int k=0, int st=Qt::NoButton)QwtEventPattern::KeyPattern [inline]
stateQwtEventPattern::KeyPattern
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern_1_1_mouse_pattern.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern_1_1_mouse_pattern.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern_1_1_mouse_pattern.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern_1_1_mouse_pattern.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,138 @@ + + + + +Qwt User's Guide: QwtEventPattern::MousePattern Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + +
+
+ +
+

QwtEventPattern::MousePattern Class Reference

+
+
+ +

A pattern for mouse events. +More...

+ +

#include <qwt_event_pattern.h>

+ +

List of all members.

+ + + + + + +

+Public Member Functions

 MousePattern (int btn=Qt::NoButton, int st=Qt::NoButton)

+Public Attributes

int button
int state
+

Detailed Description

+

A pattern for mouse events.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
QwtEventPattern::MousePattern::MousePattern (int btn = Qt::NoButton,
int st = Qt::NoButton 
) [inline]
+
+
+ +

Constructor.

+ +
+
+

Member Data Documentation

+ +
+ +
+ +

Button code.

+ +
+
+ +
+ +
+ +

State.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern_1_1_mouse_pattern-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern_1_1_mouse_pattern-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern_1_1_mouse_pattern-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern_1_1_mouse_pattern-members.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,60 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + +
+
+
+

QwtEventPattern::MousePattern Member List

+
+
+This is the complete list of members for QwtEventPattern::MousePattern, including all inherited members. + + + +
buttonQwtEventPattern::MousePattern
MousePattern(int btn=Qt::NoButton, int st=Qt::NoButton)QwtEventPattern::MousePattern [inline]
stateQwtEventPattern::MousePattern
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern.html 2011-04-15 10:49:23.000000000 +0000 @@ -0,0 +1,680 @@ + + + + +Qwt User's Guide: QwtEventPattern Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtEventPattern Class Reference

+
+
+ +

A collection of event patterns. +More...

+ +

#include <qwt_event_pattern.h>

+
+Inheritance diagram for QwtEventPattern:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Classes

class  KeyPattern
 A pattern for key events. More...
class  MousePattern
 A pattern for mouse events. More...

+Public Types

enum  MousePatternCode {
+  MouseSelect1, +
+  MouseSelect2, +
+  MouseSelect3, +
+  MouseSelect4, +
+  MouseSelect5, +
+  MouseSelect6, +
+  MousePatternCount +
+ }
enum  KeyPatternCode {
+  KeySelect1, +
+  KeySelect2, +
+  KeyAbort, +
+  KeyLeft, +
+  KeyRight, +
+  KeyUp, +
+  KeyDown, +
+  KeyRedo, +
+  KeyUndo, +
+  KeyHome, +
+  KeyPatternCount +
+ }

+Public Member Functions

 QwtEventPattern ()
virtual ~QwtEventPattern ()
void initMousePattern (int numButtons)
void initKeyPattern ()
void setMousePattern (uint pattern, int button, int state=Qt::NoButton)
void setKeyPattern (uint pattern, int key, int state=Qt::NoButton)
void setMousePattern (const QVector< MousePattern > &)
void setKeyPattern (const QVector< KeyPattern > &)
const QVector< MousePattern > & mousePattern () const
const QVector< KeyPattern > & keyPattern () const
QVector< MousePattern > & mousePattern ()
QVector< KeyPattern > & keyPattern ()
bool mouseMatch (uint pattern, const QMouseEvent *) const
bool keyMatch (uint pattern, const QKeyEvent *) const

+Protected Member Functions

virtual bool mouseMatch (const MousePattern &, const QMouseEvent *) const
virtual bool keyMatch (const KeyPattern &, const QKeyEvent *) const
+

Detailed Description

+

A collection of event patterns.

+

QwtEventPattern introduces an level of indirection for mouse and keyboard inputs. Those are represented by symbolic names, so the application code can be configured by individual mappings.

+
See also:
QwtPicker, QwtPickerMachine, QwtPlotZoomer
+

Member Enumeration Documentation

+ +
+ +
+ +

Symbolic keyboard input codes.

+

Default initialization:

+
    +
  • KeySelect1
    + Qt::Key_Return
  • +
  • KeySelect2
    + Qt::Key_Space
  • +
  • KeyAbort
    + Qt::Key_Escape
  • +
+
    +
  • KeyLeft
    + Qt::Key_Left
  • +
  • KeyRight
    + Qt::Key_Right
  • +
  • KeyUp
    + Qt::Key_Up
  • +
  • KeyDown
    + Qt::Key_Down
  • +
+
    +
  • KeyUndo
    + Qt::Key_Minus
  • +
  • KeyRedo
    + Qt::Key_Plus
  • +
  • KeyHome
    + Qt::Key_Escape
  • +
+ +
+
+ +
+ +
+ +

Symbolic mouse input codes.

+

The default initialization for 3 button mice is:

+
    +
  • MouseSelect1
    + Qt::LeftButton
  • +
  • MouseSelect2
    + Qt::RightButton
  • +
  • MouseSelect3
    + Qt::MidButton
  • +
  • MouseSelect4
    + Qt::LeftButton + Qt::ShiftButton
  • +
  • MouseSelect5
    + Qt::RightButton + Qt::ShiftButton
  • +
  • MouseSelect6
    + Qt::MidButton + Qt::ShiftButton
  • +
+

The default initialization for 2 button mice is:

+
    +
  • MouseSelect1
    + Qt::LeftButton
  • +
  • MouseSelect2
    + Qt::RightButton
  • +
  • MouseSelect3
    + Qt::LeftButton + Qt::AltButton
  • +
  • MouseSelect4
    + Qt::LeftButton + Qt::ShiftButton
  • +
  • MouseSelect5
    + Qt::RightButton + Qt::ShiftButton
  • +
  • MouseSelect6
    + Qt::LeftButton + Qt::AltButton + Qt::ShiftButton
  • +
+

The default initialization for 1 button mice is:

+
    +
  • MouseSelect1
    + Qt::LeftButton
  • +
  • MouseSelect2
    + Qt::LeftButton + Qt::ControlButton
  • +
  • MouseSelect3
    + Qt::LeftButton + Qt::AltButton
  • +
  • MouseSelect4
    + Qt::LeftButton + Qt::ShiftButton
  • +
  • MouseSelect5
    + Qt::LeftButton + Qt::ControlButton + Qt::ShiftButton
  • +
  • MouseSelect6
    + Qt::LeftButton + Qt::AltButton + Qt::ShiftButton
  • +
+
See also:
initMousePattern()
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtEventPattern::QwtEventPattern ()
+
+
+

Constructor

+
See also:
MousePatternCode, KeyPatternCode
+ +
+
+ +
+
+ + + + + + + +
QwtEventPattern::~QwtEventPattern () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
void QwtEventPattern::initKeyPattern ()
+
+
+

Set default mouse patterns.

+
See also:
KeyPatternCode
+ +
+
+ +
+
+ + + + + + + + +
void QwtEventPattern::initMousePattern (int numButtons)
+
+
+

Set default mouse patterns, depending on the number of mouse buttons

+
Parameters:
+ + +
numButtonsNumber of mouse buttons ( <= 3 )
+
+
+
See also:
MousePatternCode
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
bool QwtEventPattern::keyMatch (uint pattern,
const QKeyEvent * e 
) const
+
+
+ +

Compare a key event with an event pattern.

+

A key event matches the pattern when both have the same key value and in the state value the same key flags (Qt::KeyButtonMask) are set.

+
Parameters:
+ + + +
patternIndex of the event pattern
eKey event
+
+
+
Returns:
true if matches
+
See also:
mouseMatch()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
bool QwtEventPattern::keyMatch (const KeyPatternpattern,
const QKeyEvent * e 
) const [protected, virtual]
+
+
+ +

Compare a key event with an event pattern.

+

A key event matches the pattern when both have the same key value and in the state value the same key flags (Qt::KeyButtonMask) are set.

+
Parameters:
+ + + +
patternKey event pattern
eKey event
+
+
+
Returns:
true if matches
+
See also:
mouseMatch()
+ +
+
+ +
+
+ + + + + + + +
const QVector< QwtEventPattern::KeyPattern > & QwtEventPattern::keyPattern () const
+
+
+ +

Return key patterns.

+ +
+
+ +
+
+ + + + + + + +
QVector< QwtEventPattern::KeyPattern > & QwtEventPattern::keyPattern ()
+
+
+ +

Return Key patterns.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
bool QwtEventPattern::mouseMatch (uint pattern,
const QMouseEvent * e 
) const
+
+
+ +

Compare a mouse event with an event pattern.

+

A mouse event matches the pattern when both have the same button value and in the state value the same key flags(Qt::KeyButtonMask) are set.

+
Parameters:
+ + + +
patternIndex of the event pattern
eMouse event
+
+
+
Returns:
true if matches
+
See also:
keyMatch()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
bool QwtEventPattern::mouseMatch (const MousePatternpattern,
const QMouseEvent * e 
) const [protected, virtual]
+
+
+ +

Compare a mouse event with an event pattern.

+

A mouse event matches the pattern when both have the same button value and in the state value the same key flags(Qt::KeyButtonMask) are set.

+
Parameters:
+ + + +
patternMouse event pattern
eMouse event
+
+
+
Returns:
true if matches
+
See also:
keyMatch()
+ +
+
+ +
+
+ + + + + + + +
QVector< QwtEventPattern::MousePattern > & QwtEventPattern::mousePattern ()
+
+
+ +

Return ,ouse patterns.

+ +
+
+ +
+
+ + + + + + + +
const QVector< QwtEventPattern::MousePattern > & QwtEventPattern::mousePattern () const
+
+
+ +

Return mouse patterns.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtEventPattern::setKeyPattern (uint pattern,
int key,
int state = Qt::NoButton 
)
+
+
+

Change one key pattern

+
Parameters:
+ + + + +
patternIndex of the pattern
keyKey
stateState
+
+
+
See also:
QKeyEvent
+ +
+
+ +
+
+ + + + + + + + +
void QwtEventPattern::setKeyPattern (const QVector< KeyPattern > & pattern)
+
+
+ +

Change the key event patterns.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtEventPattern::setMousePattern (uint pattern,
int button,
int state = Qt::NoButton 
)
+
+
+

Change one mouse pattern

+
Parameters:
+ + + + +
patternIndex of the pattern
buttonButton
stateState
+
+
+
See also:
QMouseEvent
+ +
+
+ +
+
+ + + + + + + + +
void QwtEventPattern::setMousePattern (const QVector< MousePattern > & pattern)
+
+
+ +

Change the mouse event patterns.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern__inherit__graph.map 2011-04-15 10:49:07.000000000 +0000 @@ -0,0 +1,5 @@ + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern__inherit__graph.md5 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1 @@ +481d4adb996889db20b340167cd40763 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_event_pattern-members.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,87 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtEventPattern Member List

+
+
+This is the complete list of members for QwtEventPattern, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
initKeyPattern()QwtEventPattern
initMousePattern(int numButtons)QwtEventPattern
KeyAbort enum value (defined in QwtEventPattern)QwtEventPattern
KeyDown enum value (defined in QwtEventPattern)QwtEventPattern
KeyHome enum value (defined in QwtEventPattern)QwtEventPattern
KeyLeft enum value (defined in QwtEventPattern)QwtEventPattern
keyMatch(uint pattern, const QKeyEvent *) const QwtEventPattern
keyMatch(const KeyPattern &, const QKeyEvent *) const QwtEventPattern [protected, virtual]
keyPattern() const QwtEventPattern
keyPattern()QwtEventPattern
KeyPatternCode enum nameQwtEventPattern
KeyPatternCount enum value (defined in QwtEventPattern)QwtEventPattern
KeyRedo enum value (defined in QwtEventPattern)QwtEventPattern
KeyRight enum value (defined in QwtEventPattern)QwtEventPattern
KeySelect1 enum value (defined in QwtEventPattern)QwtEventPattern
KeySelect2 enum value (defined in QwtEventPattern)QwtEventPattern
KeyUndo enum value (defined in QwtEventPattern)QwtEventPattern
KeyUp enum value (defined in QwtEventPattern)QwtEventPattern
mouseMatch(uint pattern, const QMouseEvent *) const QwtEventPattern
mouseMatch(const MousePattern &, const QMouseEvent *) const QwtEventPattern [protected, virtual]
mousePattern() const QwtEventPattern
mousePattern()QwtEventPattern
MousePatternCode enum nameQwtEventPattern
MousePatternCount enum value (defined in QwtEventPattern)QwtEventPattern
MouseSelect1 enum value (defined in QwtEventPattern)QwtEventPattern
MouseSelect2 enum value (defined in QwtEventPattern)QwtEventPattern
MouseSelect3 enum value (defined in QwtEventPattern)QwtEventPattern
MouseSelect4 enum value (defined in QwtEventPattern)QwtEventPattern
MouseSelect5 enum value (defined in QwtEventPattern)QwtEventPattern
MouseSelect6 enum value (defined in QwtEventPattern)QwtEventPattern
QwtEventPattern()QwtEventPattern
setKeyPattern(uint pattern, int key, int state=Qt::NoButton)QwtEventPattern
setKeyPattern(const QVector< KeyPattern > &)QwtEventPattern
setMousePattern(uint pattern, int button, int state=Qt::NoButton)QwtEventPattern
setMousePattern(const QVector< MousePattern > &)QwtEventPattern
~QwtEventPattern()QwtEventPattern [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,836 @@ + + + + +Qwt User's Guide: QwtInterval Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtInterval Class Reference

+
+
+ +

A class representing an interval. +More...

+ +

#include <qwt_interval.h>

+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Types

enum  BorderFlag {
+  IncludeBorders = 0x00, +
+  ExcludeMinimum = 0x01, +
+  ExcludeMaximum = 0x02, +
+  ExcludeBorders = ExcludeMinimum | ExcludeMaximum +
+ }
typedef QFlags< BorderFlagBorderFlags

+Public Member Functions

 QwtInterval ()
 QwtInterval (double minValue, double maxValue, BorderFlags=IncludeBorders)
void setInterval (double minValue, double maxValue, BorderFlags=IncludeBorders)
QwtInterval normalized () const
QwtInterval inverted () const
QwtInterval limited (double minValue, double maxValue) const
bool operator== (const QwtInterval &) const
bool operator!= (const QwtInterval &) const
void setBorderFlags (BorderFlags)
BorderFlags borderFlags () const
double minValue () const
double maxValue () const
double width () const
void setMinValue (double)
void setMaxValue (double)
bool contains (double value) const
bool intersects (const QwtInterval &) const
QwtInterval intersect (const QwtInterval &) const
QwtInterval unite (const QwtInterval &) const
QwtInterval operator| (const QwtInterval &) const
QwtInterval operator& (const QwtInterval &) const
QwtIntervaloperator|= (const QwtInterval &)
QwtIntervaloperator&= (const QwtInterval &)
QwtInterval extend (double value) const
QwtInterval operator| (double) const
QwtIntervaloperator|= (double)
bool isValid () const
bool isNull () const
void invalidate ()
QwtInterval symmetrize (double value) const
+

Detailed Description

+

A class representing an interval.

+

The interval is represented by 2 doubles, the lower and the upper limit.

+

Member Typedef Documentation

+ +
+
+ + + + +
typedef QFlags<BorderFlag> QwtInterval::BorderFlags
+
+
+ +

Border flags.

+ +
+
+

Member Enumeration Documentation

+ +
+
+ + + + +
enum QwtInterval::BorderFlag
+
+
+

Flag indicating if a border is included or excluded

+
See also:
setBorderFlags(), borderFlags()
+
Enumerator:
+ + + + +
IncludeBorders  +

Min/Max values are inside the interval.

+
ExcludeMinimum  +

Min value is not included in the interval.

+
ExcludeMaximum  +

Max value is not included in the interval.

+
ExcludeBorders  +

Min/Max values are not included in the interval.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtInterval::QwtInterval () [inline]
+
+
+ +

Default Constructor.

+

Creates an invalid interval [0.0, -1.0]

+
See also:
setInterval(), isValid()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
QwtInterval::QwtInterval (double minValue,
double maxValue,
BorderFlags borderFlags = IncludeBorders 
) [inline]
+
+
+

Constructor

+

Build an interval with from min/max values

+
Parameters:
+ + + + +
minValueMinimum value
maxValueMaximum value
borderFlagsInclude/Exclude borders
+
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
QwtInterval::BorderFlags QwtInterval::borderFlags () const [inline]
+
+
+
Returns:
Border flags
+
See also:
setBorderFlags()
+ +
+
+ +
+
+ + + + + + + + +
bool QwtInterval::contains (double value) const
+
+
+

Test if a value is inside an interval

+
Parameters:
+ + +
valueValue
+
+
+
Returns:
true, if value >= minValue() && value <= maxValue()
+ +
+
+ +
+
+ + + + + + + + +
QwtInterval QwtInterval::extend (double value) const
+
+
+

Extend the interval

+

If value is below minValue, value becomes the lower limit. If value is above maxValue, value becomes the upper limit.

+

extend has no effect for invalid intervals

+
Parameters:
+ + +
valueValue
+
+
+
See also:
isValid()
+ +
+
+ +
+
+ + + + + + + + +
QwtInterval QwtInterval::intersect (const QwtIntervalother) const
+
+
+ +

Intersect 2 intervals.

+ +
+
+ +
+
+ + + + + + + + +
bool QwtInterval::intersects (const QwtIntervalother) const
+
+
+

Test if two intervals overlap

+ +
+
+ +
+
+ + + + + + + +
void QwtInterval::invalidate () [inline]
+
+
+

Invalidate the interval

+

The limits are set to interval [0.0, -1.0]

+
See also:
isValid()
+ +
+
+ +
+
+ + + + + + + +
QwtInterval QwtInterval::inverted () const
+
+
+

Invert the limits of the interval

+
Returns:
Inverted interval
+
See also:
normalized()
+ +
+
+ +
+
+ + + + + + + +
bool QwtInterval::isNull () const [inline]
+
+
+
Returns:
true, if isValid() && (minValue() >= maxValue())
+ +
+
+ +
+
+ + + + + + + +
bool QwtInterval::isValid () const [inline]
+
+
+

A interval is valid when minValue() <= maxValue(). In case of QwtInterval::ExcludeBorders it is true when minValue() < maxValue()

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
QwtInterval QwtInterval::limited (double lowerBound,
double upperBound 
) const
+
+
+

Limit the interval, keeping the border modes

+
Parameters:
+ + + +
lowerBoundLower limit
upperBoundUpper limit
+
+
+
Returns:
Limited interval
+ +
+
+ +
+
+ + + + + + + +
double QwtInterval::maxValue () const [inline]
+
+
+
Returns:
Upper limit of the interval
+ +
+
+ +
+
+ + + + + + + +
double QwtInterval::minValue () const [inline]
+
+
+
Returns:
Lower limit of the interval
+ +
+
+ +
+
+ + + + + + + +
QwtInterval QwtInterval::normalized () const
+
+
+ +

Normalize the limits of the interval.

+

If maxValue() < minValue() the limits will be inverted.

+
Returns:
Normalized interval
+
See also:
isValid(), inverted()
+ +
+
+ +
+
+ + + + + + + + +
bool QwtInterval::operator!= (const QwtIntervalother) const [inline]
+
+
+ +

Compare two intervals.

+ +
+
+ +
+
+ + + + + + + + +
QwtInterval QwtInterval::operator& (const QwtIntervalinterval) const [inline]
+
+
+

Intersection of two intervals

+
See also:
intersect()
+ +
+
+ +
+
+ + + + + + + + +
QwtInterval & QwtInterval::operator&= (const QwtIntervalinterval)
+
+
+ +

Intersects this interval with the given interval.

+ +
+
+ +
+
+ + + + + + + + +
bool QwtInterval::operator== (const QwtIntervalother) const [inline]
+
+
+ +

Compare two intervals.

+ +
+
+ +
+
+ + + + + + + + +
QwtInterval QwtInterval::operator| (const QwtIntervalinterval) const [inline]
+
+
+

Union of two intervals

+
See also:
unite()
+ +
+
+ +
+
+ + + + + + + + +
QwtInterval QwtInterval::operator| (double value) const [inline]
+
+
+

Extend an interval

+
Parameters:
+ + +
valueValue
+
+
+
Returns:
Extended interval
+
See also:
extend()
+ +
+
+ +
+
+ + + + + + + + +
QwtInterval & QwtInterval::operator|= (const QwtIntervalinterval)
+
+
+ +

Unites this interval with the given interval.

+ +
+
+ +
+
+ + + + + + + + +
QwtInterval & QwtInterval::operator|= (double value)
+
+
+

Extend an interval

+
Parameters:
+ + +
valueValue
+
+
+
Returns:
Reference of the extended interval
+
See also:
extend()
+ +
+
+ +
+
+ + + + + + + + +
void QwtInterval::setBorderFlags (BorderFlags borderFlags) [inline]
+
+
+

Change the border flags

+
Parameters:
+ + +
borderFlagsOr'd BorderMode flags
+
+
+
See also:
borderFlags()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtInterval::setInterval (double minValue,
double maxValue,
BorderFlags borderFlags = IncludeBorders 
) [inline]
+
+
+

Assign the limits of the interval

+
Parameters:
+ + + + +
minValueMinimum value
maxValueMaximum value
borderFlagsInclude/Exclude borders
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtInterval::setMaxValue (double maxValue) [inline]
+
+
+

Assign the upper limit of the interval

+
Parameters:
+ + +
maxValueMaximum value
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtInterval::setMinValue (double minValue) [inline]
+
+
+

Assign the lower limit of the interval

+
Parameters:
+ + +
minValueMinimum value
+
+
+ +
+
+ +
+
+ + + + + + + + +
QwtInterval QwtInterval::symmetrize (double value) const
+
+
+

Adjust the limit that is closer to value, so that value becomes the center of the interval.

+
Parameters:
+ + +
valueCenter
+
+
+
Returns:
Interval with value as center
+ +
+
+ +
+
+ + + + + + + + +
QwtInterval QwtInterval::unite (const QwtIntervalother) const
+
+
+ +

Unite 2 intervals.

+ +
+
+ +
+
+ + + + + + + +
double QwtInterval::width () const [inline]
+
+
+

Return the width of an interval The width of invalid intervals is 0.0, otherwise the result is maxValue() - minValue().

+
See also:
isValid()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval-members.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,87 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtInterval Member List

+
+
+This is the complete list of members for QwtInterval, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
BorderFlag enum nameQwtInterval
BorderFlags typedefQwtInterval
borderFlags() const QwtInterval [inline]
contains(double value) const QwtInterval
ExcludeBorders enum valueQwtInterval
ExcludeMaximum enum valueQwtInterval
ExcludeMinimum enum valueQwtInterval
extend(double value) const QwtInterval
IncludeBorders enum valueQwtInterval
intersect(const QwtInterval &) const QwtInterval
intersects(const QwtInterval &) const QwtInterval
invalidate()QwtInterval [inline]
inverted() const QwtInterval
isNull() const QwtInterval [inline]
isValid() const QwtInterval [inline]
limited(double minValue, double maxValue) const QwtInterval
maxValue() const QwtInterval [inline]
minValue() const QwtInterval [inline]
normalized() const QwtInterval
operator!=(const QwtInterval &) const QwtInterval [inline]
operator&(const QwtInterval &) const QwtInterval [inline]
operator&=(const QwtInterval &)QwtInterval
operator==(const QwtInterval &) const QwtInterval [inline]
operator|(const QwtInterval &) const QwtInterval [inline]
operator|(double) const QwtInterval [inline]
operator|=(const QwtInterval &)QwtInterval
operator|=(double)QwtInterval
QwtInterval()QwtInterval [inline]
QwtInterval(double minValue, double maxValue, BorderFlags=IncludeBorders)QwtInterval [inline]
setBorderFlags(BorderFlags)QwtInterval [inline]
setInterval(double minValue, double maxValue, BorderFlags=IncludeBorders)QwtInterval [inline]
setMaxValue(double)QwtInterval [inline]
setMinValue(double)QwtInterval [inline]
symmetrize(double value) const QwtInterval
unite(const QwtInterval &) const QwtInterval
width() const QwtInterval [inline]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_sample.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_sample.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_sample.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_sample.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,227 @@ + + + + +Qwt User's Guide: QwtIntervalSample Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtIntervalSample Class Reference

+
+
+ +

A sample of the types (x1-x2, y) or (x, y1-y2) +More...

+ +

#include <qwt_series_data.h>

+ +

List of all members.

+ + + + + + + + + + +

+Public Member Functions

 QwtIntervalSample ()
 QwtIntervalSample (double, const QwtInterval &)
 QwtIntervalSample (double value, double min, double max)
bool operator== (const QwtIntervalSample &) const
bool operator!= (const QwtIntervalSample &) const

+Public Attributes

double value
QwtInterval interval
+

Detailed Description

+

A sample of the types (x1-x2, y) or (x, y1-y2)

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtIntervalSample::QwtIntervalSample () [inline]
+
+
+

Constructor The value is set to 0.0, the interval is invalid

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
QwtIntervalSample::QwtIntervalSample (double v,
const QwtIntervalintv 
) [inline]
+
+
+ +

Constructor.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
QwtIntervalSample::QwtIntervalSample (double value,
double min,
double max 
) [inline]
+
+
+ +

Constructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + +
bool QwtIntervalSample::operator!= (const QwtIntervalSampleother) const [inline]
+
+
+ +

Compare operator.

+ +
+
+ +
+
+ + + + + + + + +
bool QwtIntervalSample::operator== (const QwtIntervalSampleother) const [inline]
+
+
+ +

Compare operator.

+ +
+
+

Member Data Documentation

+ +
+ +
+ +

Interval.

+ +
+
+ +
+
+ + + + +
double QwtIntervalSample::value
+
+
+ +

Value.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_sample-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_sample-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_sample-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_sample-members.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,58 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtIntervalSample Member List

+
+
+This is the complete list of members for QwtIntervalSample, including all inherited members. + + + + + + + +
intervalQwtIntervalSample
operator!=(const QwtIntervalSample &) const QwtIntervalSample [inline]
operator==(const QwtIntervalSample &) const QwtIntervalSample [inline]
QwtIntervalSample()QwtIntervalSample [inline]
QwtIntervalSample(double, const QwtInterval &)QwtIntervalSample [inline]
QwtIntervalSample(double value, double min, double max)QwtIntervalSample [inline]
valueQwtIntervalSample
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_series_data.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_series_data.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_series_data.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_series_data.html 2011-04-15 10:49:23.000000000 +0000 @@ -0,0 +1,122 @@ + + + + +Qwt User's Guide: QwtIntervalSeriesData Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtIntervalSeriesData Class Reference

+
+
+ +

Interface for iterating over an array of intervals. +More...

+ +

#include <qwt_series_data.h>

+
+Inheritance diagram for QwtIntervalSeriesData:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + +

+Public Member Functions

 QwtIntervalSeriesData (const QVector< QwtIntervalSample > &=QVector< QwtIntervalSample >())
virtual QRectF boundingRect () const
+

Detailed Description

+

Interface for iterating over an array of intervals.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtIntervalSeriesData::QwtIntervalSeriesData (const QVector< QwtIntervalSample > & samples = QVector<QwtIntervalSample>())
+
+
+

Constructor

+
Parameters:
+ + +
samplesSamples
+
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
QRectF QwtIntervalSeriesData::boundingRect () const [virtual]
+
+
+ +

Calculate the bounding rect.

+

The bounding rectangle is calculated once by iterating over all points and is stored for all following requests.

+
Returns:
Bounding rectangle
+ +

Implements QwtSeriesData< QwtIntervalSample >.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_series_data__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_series_data__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_series_data__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_series_data__inherit__graph.map 2011-04-15 10:49:07.000000000 +0000 @@ -0,0 +1,6 @@ + + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_series_data__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_series_data__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_series_data__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_series_data__inherit__graph.md5 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1 @@ +febc9927f30fecc26bf2d7d64db970f9 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_series_data__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_series_data__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_series_data-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_series_data-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_series_data-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_series_data-members.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,64 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtIntervalSeriesData Member List

+
+ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_symbol.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_symbol.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_symbol.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_symbol.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,471 @@ + + + + +Qwt User's Guide: QwtIntervalSymbol Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtIntervalSymbol Class Reference

+
+
+ +

A drawing primitive for displaying an interval like an error bar. +More...

+ +

#include <qwt_interval_symbol.h>

+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + +

+Public Types

enum  Style {
+  NoSymbol = -1, +
+  Bar, +
+  Box, +
+  UserSymbol = 1000 +
+ }

+Public Member Functions

 QwtIntervalSymbol (Style=NoSymbol)
 QwtIntervalSymbol (const QwtIntervalSymbol &)
virtual ~QwtIntervalSymbol ()
QwtIntervalSymboloperator= (const QwtIntervalSymbol &)
bool operator== (const QwtIntervalSymbol &) const
bool operator!= (const QwtIntervalSymbol &) const
void setWidth (int)
int width () const
void setBrush (const QBrush &b)
const QBrush & brush () const
void setPen (const QPen &)
const QPen & pen () const
void setStyle (Style)
Style style () const
virtual void draw (QPainter *, Qt::Orientation, const QPointF &from, const QPointF &to) const
+

Detailed Description

+

A drawing primitive for displaying an interval like an error bar.

+
See also:
QwtPlotIntervalCurve
+

Member Enumeration Documentation

+ +
+
+ + + + +
enum QwtIntervalSymbol::Style
+
+
+ +

Symbol style.

+
Enumerator:
+ + + + +
NoSymbol  +

No Style. The symbol cannot be drawn.

+
Bar  +

The symbol displays a line with caps at the beginning/end. The size of the caps depends on the symbol width().

+
Box  +

The symbol displays a plain rectangle using pen() and brush(). The size of the rectangle depends on the translated interval and the width(),

+
UserSymbol  +

Styles >= UserSymbol are reserved for derived classes of QwtIntervalSymbol that overload draw() with additional application specific symbol types.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtIntervalSymbol::QwtIntervalSymbol (Style style = NoSymbol)
+
+
+

Constructor

+
Parameters:
+ + +
styleStyle of the symbol
+
+
+
See also:
setStyle(), style(), Style
+ +
+
+ +
+
+ + + + + + + + +
QwtIntervalSymbol::QwtIntervalSymbol (const QwtIntervalSymbolother)
+
+
+ +

Copy constructor.

+ +
+
+ +
+
+ + + + + + + +
QwtIntervalSymbol::~QwtIntervalSymbol () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
const QBrush & QwtIntervalSymbol::brush () const
+
+
+
Returns:
Brush
+
See also:
setBrush()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtIntervalSymbol::draw (QPainter * painter,
Qt::Orientation orientation,
const QPointF & from,
const QPointF & to 
) const [virtual]
+
+
+

Draw a symbol depending on its style

+
Parameters:
+ + + + + +
painterPainter
orientationOrientation
fromStart point of the interval in target device coordinates
toEnd point of the interval in target device coordinates
+
+
+
See also:
setStyle()
+ +
+
+ +
+
+ + + + + + + + +
bool QwtIntervalSymbol::operator!= (const QwtIntervalSymbolother) const
+
+
+ +

Compare two symbols.

+ +
+
+ +
+
+ + + + + + + + +
QwtIntervalSymbol & QwtIntervalSymbol::operator= (const QwtIntervalSymbolother)
+
+
+ +

Assignment operator.

+ +
+
+ +
+
+ + + + + + + + +
bool QwtIntervalSymbol::operator== (const QwtIntervalSymbolother) const
+
+
+ +

Compare two symbols.

+ +
+
+ +
+
+ + + + + + + +
const QPen & QwtIntervalSymbol::pen () const
+
+
+
Returns:
Pen
+
See also:
setPen(), brush()
+ +
+
+ +
+
+ + + + + + + + +
void QwtIntervalSymbol::setBrush (const QBrush & brush)
+
+
+ +

Assign a brush.

+

The brush is used for the Box style.

+
Parameters:
+ + +
brushBrush
+
+
+
See also:
brush()
+ +
+
+ +
+
+ + + + + + + + +
void QwtIntervalSymbol::setPen (const QPen & pen)
+
+
+

Assign a pen

+
Parameters:
+ + +
penPen
+
+
+
See also:
pen(), setBrush()
+ +
+
+ +
+
+ + + + + + + + +
void QwtIntervalSymbol::setStyle (Style style)
+
+
+

Specify the symbol style

+
Parameters:
+ + +
styleStyle
+
+
+
See also:
style(), Style
+ +
+
+ +
+
+ + + + + + + + +
void QwtIntervalSymbol::setWidth (int width)
+
+
+

Specify the width of the symbol It is used depending on the style.

+
Parameters:
+ + +
widthWidth
+
+
+
See also:
width(), setStyle()
+ +
+
+ +
+
+ + + + + + + +
QwtIntervalSymbol::Style QwtIntervalSymbol::style () const
+
+
+
Returns:
Current symbol style
+
See also:
setStyle()
+ +
+
+ +
+
+ + + + + + + +
int QwtIntervalSymbol::width () const
+
+
+
Returns:
Width of the symbol.
+
See also:
setWidth(), setStyle()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_symbol-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_symbol-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_symbol-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_interval_symbol-members.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,71 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtIntervalSymbol Member List

+
+
+This is the complete list of members for QwtIntervalSymbol, including all inherited members. + + + + + + + + + + + + + + + + + + + + +
Bar enum valueQwtIntervalSymbol
Box enum valueQwtIntervalSymbol
brush() const QwtIntervalSymbol
draw(QPainter *, Qt::Orientation, const QPointF &from, const QPointF &to) const QwtIntervalSymbol [virtual]
NoSymbol enum valueQwtIntervalSymbol
operator!=(const QwtIntervalSymbol &) const QwtIntervalSymbol
operator=(const QwtIntervalSymbol &)QwtIntervalSymbol
operator==(const QwtIntervalSymbol &) const QwtIntervalSymbol
pen() const QwtIntervalSymbol
QwtIntervalSymbol(Style=NoSymbol)QwtIntervalSymbol
QwtIntervalSymbol(const QwtIntervalSymbol &)QwtIntervalSymbol
setBrush(const QBrush &b)QwtIntervalSymbol
setPen(const QPen &)QwtIntervalSymbol
setStyle(Style)QwtIntervalSymbol
setWidth(int)QwtIntervalSymbol
style() const QwtIntervalSymbol
Style enum nameQwtIntervalSymbol
UserSymbol enum valueQwtIntervalSymbol
width() const QwtIntervalSymbol
~QwtIntervalSymbol()QwtIntervalSymbol [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_knob.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_knob.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_knob.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_knob.html 2011-04-15 10:49:23.000000000 +0000 @@ -0,0 +1,814 @@ + + + + +Qwt User's Guide: QwtKnob Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtKnob Class Reference

+
+
+ +

The Knob Widget. +More...

+ +

#include <qwt_knob.h>

+
+Inheritance diagram for QwtKnob:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Types

enum  KnobStyle {
+  NoStyle = -1, +
+  Raised, +
+  Sunken +
+ }
enum  MarkerStyle {
+  NoMarker = -1, +
+  Tick, +
+  Dot, +
+  Nub, +
+  Notch +
+ }

+Public Member Functions

 QwtKnob (QWidget *parent=NULL)
virtual ~QwtKnob ()
void setKnobWidth (int w)
int knobWidth () const
void setTotalAngle (double angle)
double totalAngle () const
void setKnobStyle (KnobStyle)
KnobStyle knobStyle () const
void setBorderWidth (int bw)
int borderWidth () const
void setMarkerStyle (MarkerStyle)
MarkerStyle markerStyle () const
void setMarkerSize (int)
int markerSize () const
virtual QSize sizeHint () const
virtual QSize minimumSizeHint () const
void setScaleDraw (QwtRoundScaleDraw *)
const QwtRoundScaleDrawscaleDraw () const
QwtRoundScaleDrawscaleDraw ()

+Protected Member Functions

virtual void paintEvent (QPaintEvent *)
virtual void resizeEvent (QResizeEvent *)
virtual void changeEvent (QEvent *)
virtual void drawKnob (QPainter *, const QRectF &) const
virtual void drawMarker (QPainter *, const QRectF &, double arc) const
virtual double getValue (const QPoint &p)
virtual void getScrollMode (const QPoint &, QwtAbstractSlider::ScrollMode &, int &direction) const
+

Detailed Description

+

The Knob Widget.

+

The QwtKnob widget imitates look and behaviour of a volume knob on a radio. It contains a scale around the knob which is set up automatically or can be configured manually (see QwtAbstractScale). Automatic scrolling is enabled when the user presses a mouse button on the scale. For a description of signals, slots and other members, see QwtAbstractSlider.

+
+knob.png +
+
See also:
QwtAbstractSlider and QwtAbstractScale for the descriptions of the inherited members.
+

Member Enumeration Documentation

+ +
+
+ + + + +
enum QwtKnob::KnobStyle
+
+
+ +

Style of the knob surface.

+

Depending on the KnobStyle the surface of the knob is filled from the brushes of the widget palette().

+
See also:
setKnobStyle(), knobStyle()
+
Enumerator:
+ + + +
NoStyle  +

Fill the knob with a brush from QPalette::Button.

+
Raised  +

Build a gradient from QPalette::Midlight and QPalette::Button.

+
Sunken  +

Build a gradient from QPalette::Midlight, QPalette::Button and QPalette::Midlight

+
+
+
+ +
+
+ +
+
+ + + + +
enum QwtKnob::MarkerStyle
+
+
+ +

Marker type.

+

The marker indicates the current value on the knob The default setting is a Notch marker.

+
See also:
setMarkerStyle(), setMarkerSize()
+
Enumerator:
+ + + + + +
NoMarker  +

Don't paint any marker.

+
Tick  +

Paint a single tick in QPalette::ButtonText color.

+
Dot  +

Paint a circle in QPalette::ButtonText color.

+
Nub  +

Draw a raised ellipse with a gradient build from QPalette::Light and QPalette::Mid

+
Notch  +

Draw a sunken ellipse with a gradient build from QPalette::Light and QPalette::Mid

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtKnob::QwtKnob (QWidget * parent = NULL) [explicit]
+
+
+

Constructor

+
Parameters:
+ + +
parentParent widget
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtKnob::~QwtKnob () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
int QwtKnob::borderWidth () const
+
+
+ +

Return the border width.

+ +
+
+ +
+
+ + + + + + + + +
void QwtKnob::changeEvent (QEvent * event) [protected, virtual]
+
+
+

Handle QEvent::StyleChange and QEvent::FontChange;

+
Parameters:
+ + +
eventChange event
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtKnob::drawKnob (QPainter * painter,
const QRectF & knobRect 
) const [protected, virtual]
+
+
+ +

Draw the knob.

+
Parameters:
+ + + +
painterpainter
knobRectBounding rectangle of the knob (without scale)
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtKnob::drawMarker (QPainter * painter,
const QRectF & rect,
double angle 
) const [protected, virtual]
+
+
+ +

Draw the marker at the knob's front.

+
Parameters:
+ + + + +
painterPainter
rectBounding rectangle of the knob without scale
angleAngle of the marker in degrees
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtKnob::getScrollMode (const QPoint & pos,
QwtAbstractSlider::ScrollModescrollMode,
int & direction 
) const [protected, virtual]
+
+
+ +

Set the scrolling mode and direction.

+

Called by QwtAbstractSlider

+
Parameters:
+ + + + +
posPoint in question
scrollModeScrolling mode
directionDirection
+
+
+ +

Implements QwtAbstractSlider.

+ +
+
+ +
+
+ + + + + + + + +
double QwtKnob::getValue (const QPoint & pos) [protected, virtual]
+
+
+ +

Determine the value corresponding to a specified position.

+

Called by QwtAbstractSlider

+
Parameters:
+ + +
pospoint
+
+
+ +

Implements QwtAbstractSlider.

+ +
+
+ +
+
+ + + + + + + +
QwtKnob::KnobStyle QwtKnob::knobStyle () const
+
+
+
Returns:
Marker type of the knob
+
See also:
setKnobStyle(), setBorderWidth()
+ +
+
+ +
+
+ + + + + + + +
int QwtKnob::knobWidth () const
+
+
+ +

Return the width of the knob.

+ +
+
+ +
+
+ + + + + + + +
int QwtKnob::markerSize () const
+
+
+ +

Return the marker size.

+ +
+
+ +
+
+ + + + + + + +
QwtKnob::MarkerStyle QwtKnob::markerStyle () const
+
+
+
Returns:
Marker type of the knob
+
See also:
setMarkerStyle(), setMarkerSize()
+ +
+
+ +
+
+ + + + + + + +
QSize QwtKnob::minimumSizeHint () const [virtual]
+
+
+ +

Return a minimum size hint.

+
Warning:
The return value of QwtKnob::minimumSizeHint() depends on the font and the scale.
+ +
+
+ +
+
+ + + + + + + + +
void QwtKnob::paintEvent (QPaintEvent * event) [protected, virtual]
+
+
+

Repaint the knob

+
Parameters:
+ + +
eventPaint event
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtKnob::resizeEvent (QResizeEvent * event) [protected, virtual]
+
+
+

Qt Resize Event

+
Parameters:
+ + +
eventResize event
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtRoundScaleDraw * QwtKnob::scaleDraw ()
+
+
+
Returns:
the scale draw of the knob
+
See also:
setScaleDraw()
+ +
+
+ +
+
+ + + + + + + +
const QwtRoundScaleDraw * QwtKnob::scaleDraw () const
+
+
+
Returns:
the scale draw of the knob
+
See also:
setScaleDraw()
+ +
+
+ +
+
+ + + + + + + + +
void QwtKnob::setBorderWidth (int borderWidth)
+
+
+ +

Set the knob's border width.

+
Parameters:
+ + +
borderWidthnew border width
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtKnob::setKnobStyle (KnobStyle knobStyle)
+
+
+ +

Set the knob type.

+
Parameters:
+ + +
knobStyleKnob type
+
+
+
See also:
knobStyle(), setBorderWidth()
+ +
+
+ +
+
+ + + + + + + + +
void QwtKnob::setKnobWidth (int width)
+
+
+ +

Change the knob's width.

+

The specified width must be >= 5, or it will be clipped.

+
Parameters:
+ + +
widthNew width
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtKnob::setMarkerSize (int size)
+
+
+ +

Set the size of the marker.

+
See also:
markerSize(), markerStyle()
+ +
+
+ +
+
+ + + + + + + + +
void QwtKnob::setMarkerStyle (MarkerStyle markerStyle)
+
+
+ +

Set the marker type of the knob.

+
Parameters:
+ + +
markerStyleMarker type
+
+
+
See also:
markerStyle(), setMarkerSize()
+ +
+
+ +
+
+ + + + + + + + +
void QwtKnob::setScaleDraw (QwtRoundScaleDrawscaleDraw)
+
+
+

Change the scale draw of the knob

+

For changing the labels of the scales, it is necessary to derive from QwtRoundScaleDraw and overload QwtRoundScaleDraw::label().

+
See also:
scaleDraw()
+ +
+
+ +
+
+ + + + + + + + +
void QwtKnob::setTotalAngle (double angle)
+
+
+ +

Set the total angle by which the knob can be turned.

+
Parameters:
+ + +
angleAngle in degrees.
+
+
+

The default angle is 270 degrees. It is possible to specify an angle of more than 360 degrees so that the knob can be turned several times around its axis.

+ +
+
+ +
+
+ + + + + + + +
QSize QwtKnob::sizeHint () const [virtual]
+
+
+
Returns:
minimumSizeHint()
+ +
+
+ +
+
+ + + + + + + +
double QwtKnob::totalAngle () const
+
+
+ +

Return the total angle.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_knob__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_knob__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_knob__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_knob__inherit__graph.map 2011-04-15 10:49:07.000000000 +0000 @@ -0,0 +1,5 @@ + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_knob__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_knob__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_knob__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_knob__inherit__graph.md5 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1 @@ +3e4e7d08b7bbc40277ea97460fdcf165 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_knob__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_knob__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_knob-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_knob-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_knob-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_knob-members.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,158 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtKnob Member List

+
+
+This is the complete list of members for QwtKnob, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
abstractScaleDraw() const QwtAbstractScale [protected]
abstractScaleDraw()QwtAbstractScale [protected]
autoScale() const QwtAbstractScale
borderWidth() const QwtKnob
changeEvent(QEvent *)QwtKnob [protected, virtual]
Dot enum valueQwtKnob
drawKnob(QPainter *, const QRectF &) const QwtKnob [protected, virtual]
drawMarker(QPainter *, const QRectF &, double arc) const QwtKnob [protected, virtual]
exactPrevValue() const QwtDoubleRange [protected]
exactValue() const QwtDoubleRange [protected]
fitValue(double val)QwtAbstractSlider [virtual, slot]
getScrollMode(const QPoint &, QwtAbstractSlider::ScrollMode &, int &direction) const QwtKnob [protected, virtual]
getValue(const QPoint &p)QwtKnob [protected, virtual]
incPages(int)QwtDoubleRange [virtual]
incValue(int steps)QwtAbstractSlider [virtual, slot]
isReadOnly() const QwtAbstractSlider
isValid() const QwtAbstractSlider [inline]
keyPressEvent(QKeyEvent *e)QwtAbstractSlider [protected, virtual]
knobStyle() const QwtKnob
KnobStyle enum nameQwtKnob
knobWidth() const QwtKnob
markerSize() const QwtKnob
MarkerStyle enum nameQwtKnob
markerStyle() const QwtKnob
mass() const QwtAbstractSlider [virtual]
maxValue() const QwtDoubleRange
minimumSizeHint() const QwtKnob [virtual]
minValue() const QwtDoubleRange
mouseMoveEvent(QMouseEvent *e)QwtAbstractSlider [protected, virtual]
mouseOffset() const QwtAbstractSlider [protected]
mousePressEvent(QMouseEvent *e)QwtAbstractSlider [protected, virtual]
mouseReleaseEvent(QMouseEvent *e)QwtAbstractSlider [protected, virtual]
NoMarker enum valueQwtKnob
NoStyle enum valueQwtKnob
Notch enum valueQwtKnob
Nub enum valueQwtKnob
orientation() const QwtAbstractSlider
pageSize() const QwtDoubleRange
paintEvent(QPaintEvent *)QwtKnob [protected, virtual]
periodic() const QwtDoubleRange
prevValue() const QwtDoubleRange [protected]
QwtAbstractScale()QwtAbstractScale
QwtAbstractSlider(Qt::Orientation, QWidget *parent=NULL)QwtAbstractSlider [explicit]
QwtDoubleRange()QwtDoubleRange
QwtKnob(QWidget *parent=NULL)QwtKnob [explicit]
Raised enum valueQwtKnob
rescale(double vmin, double vmax, double step=0.0)QwtAbstractScale [protected]
resizeEvent(QResizeEvent *)QwtKnob [protected, virtual]
scaleDraw() const QwtKnob
scaleDraw()QwtKnob
scaleEngine() const QwtAbstractScale
scaleEngine()QwtAbstractScale
scaleMap() const QwtAbstractScale
scaleMaxMajor() const QwtAbstractScale
scaleMaxMinor() const QwtAbstractScale
ScrDirect enum value (defined in QwtAbstractSlider)QwtAbstractSlider
ScrMouse enum valueQwtAbstractSlider
ScrNone enum valueQwtAbstractSlider
scrollMode() const QwtAbstractSlider [protected]
ScrollMode enum nameQwtAbstractSlider
ScrPage enum valueQwtAbstractSlider
ScrTimer enum valueQwtAbstractSlider
setAbstractScaleDraw(QwtAbstractScaleDraw *)QwtAbstractScale [protected]
setAutoScale()QwtAbstractScale
setBorderWidth(int bw)QwtKnob
setKnobStyle(KnobStyle)QwtKnob
setKnobWidth(int w)QwtKnob
setMarkerSize(int)QwtKnob
setMarkerStyle(MarkerStyle)QwtKnob
setMass(double val)QwtAbstractSlider [virtual]
setMouseOffset(double)QwtAbstractSlider [protected]
setOrientation(Qt::Orientation o)QwtAbstractSlider [virtual]
setPeriodic(bool tf)QwtDoubleRange
setPosition(const QPoint &)QwtAbstractSlider [protected, virtual]
setRange(double vmin, double vmax, double vstep=0.0, int pagesize=1)QwtDoubleRange
setReadOnly(bool)QwtAbstractSlider [virtual, slot]
setScale(double vmin, double vmax, double step=0.0)QwtAbstractScale
setScale(const QwtInterval &, double step=0.0)QwtAbstractScale
setScale(const QwtScaleDiv &)QwtAbstractScale
setScaleDraw(QwtRoundScaleDraw *)QwtKnob
setScaleEngine(QwtScaleEngine *)QwtAbstractScale
setScaleMaxMajor(int ticks)QwtAbstractScale
setScaleMaxMinor(int ticks)QwtAbstractScale
setStep(double)QwtDoubleRange
setTotalAngle(double angle)QwtKnob
setTracking(bool enable)QwtAbstractSlider
setUpdateTime(int t)QwtAbstractSlider
setValid(bool valid)QwtAbstractSlider [inline]
setValue(double val)QwtAbstractSlider [virtual, slot]
sizeHint() const QwtKnob [virtual]
sliderMoved(double value)QwtAbstractSlider [signal]
sliderPressed()QwtAbstractSlider [signal]
sliderReleased()QwtAbstractSlider [signal]
step() const QwtDoubleRange
stepChange()QwtDoubleRange [protected, virtual]
stopMoving()QwtAbstractSlider
Sunken enum valueQwtKnob
Tick enum valueQwtKnob
timerEvent(QTimerEvent *e)QwtAbstractSlider [protected, virtual]
totalAngle() const QwtKnob
value() const QwtDoubleRange
valueChanged(double value)QwtAbstractSlider [signal]
wheelEvent(QWheelEvent *e)QwtAbstractSlider [protected, virtual]
~QwtAbstractScale()QwtAbstractScale [virtual]
~QwtAbstractSlider()QwtAbstractSlider [virtual]
~QwtDoubleRange()QwtDoubleRange [virtual]
~QwtKnob()QwtKnob [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,559 @@ + + + + +Qwt User's Guide: QwtLegend Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtLegend Class Reference

+
+
+ +

The legend widget. +More...

+ +

#include <qwt_legend.h>

+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Types

enum  LegendItemMode {
+  ReadOnlyItem, +
+  ClickableItem, +
+  CheckableItem +
+ }

+Public Member Functions

 QwtLegend (QWidget *parent=NULL)
virtual ~QwtLegend ()
void setItemMode (LegendItemMode)
LegendItemMode itemMode () const
QWidget * contentsWidget ()
const QWidget * contentsWidget () const
void insert (const QwtLegendItemManager *, QWidget *)
void remove (const QwtLegendItemManager *)
QWidget * find (const QwtLegendItemManager *) const
QwtLegendItemManagerfind (const QWidget *) const
virtual QList< QWidget * > legendItems () const
void clear ()
bool isEmpty () const
uint itemCount () const
virtual bool eventFilter (QObject *, QEvent *)
virtual QSize sizeHint () const
virtual int heightForWidth (int w) const
QScrollBar * horizontalScrollBar () const
QScrollBar * verticalScrollBar () const

+Protected Member Functions

virtual void layoutContents ()
+

Detailed Description

+

The legend widget.

+

The QwtLegend widget is a tabular arrangement of legend items. Legend items might be any type of widget, but in general they will be a QwtLegendItem.

+
See also:
QwtLegendItem, QwtLegendItemManager QwtPlot
+

Member Enumeration Documentation

+ +
+
+ + + + +
enum QwtLegend::LegendItemMode
+
+
+ +

Interaction mode for the legend items.

+

The default is QwtLegend::ReadOnlyItem.

+
See also:
setItemMode(), itemMode(), QwtLegendItem::IdentifierMode QwtLegendItem::clicked(), QwtLegendItem::checked(), QwtPlot::legendClicked(), QwtPlot::legendChecked()
+
Enumerator:
+ + + +
ReadOnlyItem  +

The legend item is not interactive, like a label.

+
ClickableItem  +

The legend item is clickable, like a push button.

+
CheckableItem  +

The legend item is checkable, like a checkable button.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtLegend::QwtLegend (QWidget * parent = NULL) [explicit]
+
+
+

Constructor

+
Parameters:
+ + +
parentParent widget
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtLegend::~QwtLegend () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
void QwtLegend::clear ()
+
+
+ +

Remove all items.

+ +
+
+ +
+
+ + + + + + + +
QWidget * QwtLegend::contentsWidget ()
+
+
+

The contents widget is the only child of the viewport of the internal QScrollArea and the parent widget of all legend items.

+
Returns:
Container widget of the legend items
+ +
+
+ +
+
+ + + + + + + +
const QWidget * QwtLegend::contentsWidget () const
+
+
+

The contents widget is the only child of the viewport of the internal QScrollArea and the parent widget of all legend items.

+
Returns:
Container widget of the legend items
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
bool QwtLegend::eventFilter (QObject * object,
QEvent * event 
) [virtual]
+
+
+

Handle QEvent::ChildRemoved andQEvent::LayoutRequest events for the contentsWidget().

+
Parameters:
+ + + +
objectObject to be filtered
eventEvent
+
+
+ +
+
+ +
+
+ + + + + + + + +
QwtLegendItemManager * QwtLegend::find (const QWidget * legendItem) const
+
+
+

Find the widget that represents a plot item

+
Parameters:
+ + +
legendItemLegend item
+
+
+
Returns:
Widget on the legend, or NULL
+ +
+
+ +
+
+ + + + + + + + +
QWidget * QwtLegend::find (const QwtLegendItemManagerplotItem) const
+
+
+

Find the widget that represents a plot item

+
Parameters:
+ + +
plotItemPlot item
+
+
+
Returns:
Widget on the legend, or NULL
+ +
+
+ +
+
+ + + + + + + + +
int QwtLegend::heightForWidth (int width) const [virtual]
+
+
+
Returns:
The preferred height, for the width w.
+
Parameters:
+ + +
widthWidth
+
+
+ +
+
+ +
+
+ + + + + + + +
QScrollBar * QwtLegend::horizontalScrollBar () const
+
+
+
Returns:
Horizontal scrollbar
+
See also:
verticalScrollBar()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtLegend::insert (const QwtLegendItemManagerplotItem,
QWidget * legendItem 
)
+
+
+

Insert a new item for a plot item

+
Parameters:
+ + + +
plotItemPlot item
legendItemNew legend item
+
+
+
Note:
The parent of item will be changed to contentsWidget()
+ +
+
+ +
+
+ + + + + + + +
bool QwtLegend::isEmpty () const
+
+
+ +

Return true, if there are no legend items.

+ +
+
+ +
+
+ + + + + + + +
uint QwtLegend::itemCount () const
+
+
+ +

Return the number of legend items.

+ +
+
+ +
+
+ + + + + + + +
QwtLegend::LegendItemMode QwtLegend::itemMode () const
+
+
+
See also:
LegendItemMode
+ +
+
+ +
+
+ + + + + + + +
void QwtLegend::layoutContents () [protected, virtual]
+
+
+

Adjust contents widget and item layout to the size of the viewport().

+ +
+
+ +
+
+ + + + + + + +
QList< QWidget * > QwtLegend::legendItems () const [virtual]
+
+
+ +

Return a list of all legend items.

+ +
+
+ +
+
+ + + + + + + + +
void QwtLegend::remove (const QwtLegendItemManagerplotItem)
+
+
+

Find the corresponding item for a plotItem and remove it from the item list.

+
Parameters:
+ + +
plotItemPlot item
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtLegend::setItemMode (LegendItemMode mode)
+
+
+
See also:
LegendItemMode
+ +
+
+ +
+
+ + + + + + + +
QSize QwtLegend::sizeHint () const [virtual]
+
+
+ +

Return a size hint.

+ +
+
+ +
+
+ + + + + + + +
QScrollBar * QwtLegend::verticalScrollBar () const
+
+
+
Returns:
Vertical scrollbar
+
See also:
horizontalScrollBar()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item.html 2011-04-15 10:49:23.000000000 +0000 @@ -0,0 +1,618 @@ + + + + +Qwt User's Guide: QwtLegendItem Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtLegendItem Class Reference

+
+
+ +

A widget representing something on a QwtLegend(). +More...

+ +

#include <qwt_legend_item.h>

+
+Inheritance diagram for QwtLegendItem:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Slots

void setChecked (bool on)

+Signals

void clicked ()
void pressed ()
void released ()
void checked (bool)

+Public Member Functions

 QwtLegendItem (QWidget *parent=0)
virtual ~QwtLegendItem ()
void setItemMode (QwtLegend::LegendItemMode)
QwtLegend::LegendItemMode itemMode () const
void setSpacing (int spacing)
int spacing () const
virtual void setText (const QwtText &)
void setIdentifier (const QPixmap &)
QPixmap identifier () const
void setIdentifierSize (const QSize &)
QSize identifierSize () const
virtual QSize sizeHint () const
bool isChecked () const

+Protected Member Functions

void setDown (bool)
bool isDown () const
virtual void paintEvent (QPaintEvent *)
virtual void mousePressEvent (QMouseEvent *)
virtual void mouseReleaseEvent (QMouseEvent *)
virtual void keyPressEvent (QKeyEvent *)
virtual void keyReleaseEvent (QKeyEvent *)
+

Detailed Description

+

A widget representing something on a QwtLegend().

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtLegendItem::QwtLegendItem (QWidget * parent = 0) [explicit]
+
+
+
Parameters:
+ + +
parentParent widget
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtLegendItem::~QwtLegendItem () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + +
void QwtLegendItem::checked (bool ) [signal]
+
+
+ +

Signal, when the legend item has been toggled.

+ +
+
+ +
+
+ + + + + + + +
void QwtLegendItem::clicked () [signal]
+
+
+ +

Signal, when the legend item has been clicked.

+ +
+
+ +
+
+ + + + + + + +
QPixmap QwtLegendItem::identifier () const
+
+
+
Returns:
pixmap representing a plot item
+
See also:
setIdentifier()
+ +
+
+ +
+
+ + + + + + + +
QSize QwtLegendItem::identifierSize () const
+
+
+

Return the width of the identifier

+
See also:
setIdentifierSize()
+ +
+
+ +
+
+ + + + + + + +
bool QwtLegendItem::isChecked () const
+
+
+ +

Return true, if the item is checked.

+ +
+
+ +
+
+ + + + + + + +
bool QwtLegendItem::isDown () const [protected]
+
+
+ +

Return true, if the item is down.

+ +
+
+ +
+
+ + + + + + + +
QwtLegend::LegendItemMode QwtLegendItem::itemMode () const
+
+
+

Return the item mode

+
See also:
setItemMode()
+ +
+
+ +
+
+ + + + + + + + +
void QwtLegendItem::keyPressEvent (QKeyEvent * e) [protected, virtual]
+
+
+ +

Handle key press events.

+ +
+
+ +
+
+ + + + + + + + +
void QwtLegendItem::keyReleaseEvent (QKeyEvent * e) [protected, virtual]
+
+
+ +

Handle key release events.

+ +
+
+ +
+
+ + + + + + + + +
void QwtLegendItem::mousePressEvent (QMouseEvent * e) [protected, virtual]
+
+
+ +

Handle mouse press events.

+ +
+
+ +
+
+ + + + + + + + +
void QwtLegendItem::mouseReleaseEvent (QMouseEvent * e) [protected, virtual]
+
+
+ +

Handle mouse release events.

+ +
+
+ +
+
+ + + + + + + + +
void QwtLegendItem::paintEvent (QPaintEvent * e) [protected, virtual]
+
+
+ +

Paint event.

+ +

Reimplemented from QwtTextLabel.

+ +
+
+ +
+
+ + + + + + + +
void QwtLegendItem::pressed () [signal]
+
+
+ +

Signal, when the legend item has been pressed.

+ +
+
+ +
+
+ + + + + + + +
void QwtLegendItem::released () [signal]
+
+
+ +

Signal, when the legend item has been relased.

+ +
+
+ +
+
+ + + + + + + + +
void QwtLegendItem::setChecked (bool on) [slot]
+
+
+

Check/Uncheck a the item

+
Parameters:
+ + +
oncheck/uncheck
+
+
+
See also:
setItemMode()
+ +
+
+ +
+
+ + + + + + + + +
void QwtLegendItem::setDown (bool down) [protected]
+
+
+ +

Set the item being down.

+ +
+
+ +
+
+ + + + + + + + +
void QwtLegendItem::setIdentifier (const QPixmap & identifier)
+
+
+

Assign the identifier The identifier needs to be created according to the identifierWidth()

+
Parameters:
+ + +
identifierPixmap representing a plot item
+
+
+
See also:
identifier(), identifierWidth()
+ +
+
+ +
+
+ + + + + + + + +
void QwtLegendItem::setIdentifierSize (const QSize & size)
+
+
+

Set the size for the identifier Default is 8x8 pixels

+
Parameters:
+ + +
sizeNew size
+
+
+
See also:
identifierSize()
+ +
+
+ +
+
+ + + + + + + + +
void QwtLegendItem::setItemMode (QwtLegend::LegendItemMode mode)
+
+
+

Set the item mode The default is QwtLegend::ReadOnlyItem

+
Parameters:
+ + +
modeItem mode
+
+
+
See also:
itemMode()
+ +
+
+ +
+
+ + + + + + + + +
void QwtLegendItem::setSpacing (int spacing)
+
+
+

Change the spacing

+
Parameters:
+ + +
spacingSpacing
+
+
+
See also:
spacing(), identifierWidth(), QwtTextLabel::margin()
+ +
+
+ +
+
+ + + + + + + + +
void QwtLegendItem::setText (const QwtTexttext) [virtual]
+
+
+

Set the text to the legend item

+
Parameters:
+ + +
textText label
+
+
+
See also:
QwtTextLabel::text()
+ +

Reimplemented from QwtTextLabel.

+ +
+
+ +
+
+ + + + + + + +
QSize QwtLegendItem::sizeHint () const [virtual]
+
+
+ +

Return a size hint.

+ +

Reimplemented from QwtTextLabel.

+ +
+
+ +
+
+ + + + + + + +
int QwtLegendItem::spacing () const
+
+
+

Return the spacing

+
See also:
setSpacing(), identifierWidth(), QwtTextLabel::margin()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item__inherit__graph.map 2011-04-15 10:49:07.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item__inherit__graph.md5 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1 @@ +126caf91594a5f3fc840fcbedc376ef6 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item_manager.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item_manager.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item_manager.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item_manager.html 2011-04-15 10:49:23.000000000 +0000 @@ -0,0 +1,194 @@ + + + + +Qwt User's Guide: QwtLegendItemManager Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtLegendItemManager Class Reference

+
+
+ +

Abstract API to bind plot items to the legend. +More...

+ +

#include <qwt_legend_itemmanager.h>

+
+Inheritance diagram for QwtLegendItemManager:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + +

+Public Member Functions

 QwtLegendItemManager ()
virtual ~QwtLegendItemManager ()
virtual void updateLegend (QwtLegend *legend) const =0
virtual QWidget * legendItem () const =0
virtual void drawLegendIdentifier (QPainter *, const QRectF &) const
+

Detailed Description

+

Abstract API to bind plot items to the legend.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtLegendItemManager::QwtLegendItemManager () [inline]
+
+
+ +

Constructor.

+ +
+
+ +
+
+ + + + + + + +
virtual QwtLegendItemManager::~QwtLegendItemManager () [inline, virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
virtual void QwtLegendItemManager::drawLegendIdentifier (QPainter * ,
const QRectF &  
) const [inline, virtual]
+
+
+

QwtLegendItem can display an icon-identifier followed by a text. The icon helps to identify a plot item on the plot canvas and depends on the type of information, that is displayed.

+

The default implementation paints nothing.

+ +

Reimplemented in QwtPlotCurve, QwtPlotHistogram, QwtPlotIntervalCurve, and QwtPlotMarker.

+ +
+
+ +
+
+ + + + + + + +
virtual QWidget* QwtLegendItemManager::legendItem () const [pure virtual]
+
+
+

Allocate the widget that represents the item on the legend

+
Returns:
Allocated widget
+
See also:
updateLegend() QwtLegend()
+ +

Implemented in QwtPlotItem.

+ +
+
+ +
+
+ + + + + + + + +
virtual void QwtLegendItemManager::updateLegend (QwtLegendlegend) const [pure virtual]
+
+
+

Update the widget that represents the item on the legend

+
Parameters:
+ + +
legendLegend
+
+
+
See also:
legendItem()
+ +

Implemented in QwtPlotCurve, QwtPlotItem, and QwtPlotMarker.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item_manager__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item_manager__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item_manager__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item_manager__inherit__graph.map 2011-04-15 10:49:08.000000000 +0000 @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item_manager__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item_manager__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item_manager__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item_manager__inherit__graph.md5 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1 @@ +86aa3e3907f00f45a5516c409810edad \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item_manager__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item_manager__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item_manager-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item_manager-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item_manager-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item_manager-members.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,56 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtLegendItemManager Member List

+
+
+This is the complete list of members for QwtLegendItemManager, including all inherited members. + + + + + +
drawLegendIdentifier(QPainter *, const QRectF &) const QwtLegendItemManager [inline, virtual]
legendItem() const =0QwtLegendItemManager [pure virtual]
QwtLegendItemManager()QwtLegendItemManager [inline]
updateLegend(QwtLegend *legend) const =0QwtLegendItemManager [pure virtual]
~QwtLegendItemManager()QwtLegendItemManager [inline, virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend_item-members.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,91 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtLegendItem Member List

+
+
+This is the complete list of members for QwtLegendItem, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
checked(bool)QwtLegendItem [signal]
clear()QwtTextLabel [slot]
clicked()QwtLegendItem [signal]
drawContents(QPainter *)QwtTextLabel [protected, virtual]
drawText(QPainter *, const QRect &)QwtTextLabel [protected, virtual]
heightForWidth(int) const QwtTextLabel [virtual]
identifier() const QwtLegendItem
identifierSize() const QwtLegendItem
indent() const QwtTextLabel
isChecked() const QwtLegendItem
isDown() const QwtLegendItem [protected]
itemMode() const QwtLegendItem
keyPressEvent(QKeyEvent *)QwtLegendItem [protected, virtual]
keyReleaseEvent(QKeyEvent *)QwtLegendItem [protected, virtual]
margin() const QwtTextLabel
minimumSizeHint() const QwtTextLabel [virtual]
mousePressEvent(QMouseEvent *)QwtLegendItem [protected, virtual]
mouseReleaseEvent(QMouseEvent *)QwtLegendItem [protected, virtual]
paintEvent(QPaintEvent *)QwtLegendItem [protected, virtual]
pressed()QwtLegendItem [signal]
QwtLegendItem(QWidget *parent=0)QwtLegendItem [explicit]
QwtTextLabel(QWidget *parent=NULL)QwtTextLabel [explicit]
QwtTextLabel(const QwtText &, QWidget *parent=NULL)QwtTextLabel [explicit]
released()QwtLegendItem [signal]
setChecked(bool on)QwtLegendItem [slot]
setDown(bool)QwtLegendItem [protected]
setIdentifier(const QPixmap &)QwtLegendItem
setIdentifierSize(const QSize &)QwtLegendItem
setIndent(int)QwtTextLabel
setItemMode(QwtLegend::LegendItemMode)QwtLegendItem
setMargin(int)QwtTextLabel
setSpacing(int spacing)QwtLegendItem
setText(const QwtText &)QwtLegendItem [virtual]
QwtTextLabel::setText(const QString &, QwtText::TextFormat textFormat=QwtText::AutoText)QwtTextLabel [slot]
sizeHint() const QwtLegendItem [virtual]
spacing() const QwtLegendItem
text() const QwtTextLabel
textRect() const QwtTextLabel
~QwtLegendItem()QwtLegendItem [virtual]
~QwtTextLabel()QwtTextLabel [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_legend-members.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,75 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtLegend Member List

+
+
+This is the complete list of members for QwtLegend, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + +
CheckableItem enum valueQwtLegend
clear()QwtLegend
ClickableItem enum valueQwtLegend
contentsWidget()QwtLegend
contentsWidget() const QwtLegend
eventFilter(QObject *, QEvent *)QwtLegend [virtual]
find(const QwtLegendItemManager *) const QwtLegend
find(const QWidget *) const QwtLegend
heightForWidth(int w) const QwtLegend [virtual]
horizontalScrollBar() const QwtLegend
insert(const QwtLegendItemManager *, QWidget *)QwtLegend
isEmpty() const QwtLegend
itemCount() const QwtLegend
itemMode() const QwtLegend
layoutContents()QwtLegend [protected, virtual]
LegendItemMode enum nameQwtLegend
legendItems() const QwtLegend [virtual]
QwtLegend(QWidget *parent=NULL)QwtLegend [explicit]
ReadOnlyItem enum valueQwtLegend
remove(const QwtLegendItemManager *)QwtLegend
setItemMode(LegendItemMode)QwtLegend
sizeHint() const QwtLegend [virtual]
verticalScrollBar() const QwtLegend
~QwtLegend()QwtLegend [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_color_map.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_color_map.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_color_map.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_color_map.html 2011-04-15 10:49:23.000000000 +0000 @@ -0,0 +1,445 @@ + + + + +Qwt User's Guide: QwtLinearColorMap Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtLinearColorMap Class Reference

+
+
+ +

QwtLinearColorMap builds a color map from color stops. +More...

+ +

#include <qwt_color_map.h>

+
+Inheritance diagram for QwtLinearColorMap:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + +

+Public Types

enum  Mode {
+  FixedColors, +
+  ScaledColors +
+ }

+Public Member Functions

 QwtLinearColorMap (QwtColorMap::Format=QwtColorMap::RGB)
 QwtLinearColorMap (const QColor &from, const QColor &to, QwtColorMap::Format=QwtColorMap::RGB)
virtual ~QwtLinearColorMap ()
void setMode (Mode)
Mode mode () const
void setColorInterval (const QColor &color1, const QColor &color2)
void addColorStop (double value, const QColor &)
QVector< double > colorStops () const
QColor color1 () const
QColor color2 () const
virtual QRgb rgb (const QwtInterval &, double value) const
virtual unsigned char colorIndex (const QwtInterval &, double value) const
+

Detailed Description

+

QwtLinearColorMap builds a color map from color stops.

+

A color stop is a color at a specific position. The valid range for the positions is [0.0, 1.0]. When mapping a value into a color it is translated into this interval according to mode().

+

Member Enumeration Documentation

+ +
+
+ + + + +
enum QwtLinearColorMap::Mode
+
+
+

Mode of color map

+
See also:
setMode(), mode()
+
Enumerator:
+ + +
FixedColors  +

Return the color from the next lower color stop.

+
ScaledColors  +

Interpolating the colors of the adjacent stops.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtLinearColorMap::QwtLinearColorMap (QwtColorMap::Format format = QwtColorMap::RGB)
+
+
+

Build a color map with two stops at 0.0 and 1.0. The color at 0.0 is Qt::blue, at 1.0 it is Qt::yellow.

+
Parameters:
+ + +
formatPreferred format of the color map
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
QwtLinearColorMap::QwtLinearColorMap (const QColor & color1,
const QColor & color2,
QwtColorMap::Format format = QwtColorMap::RGB 
)
+
+
+

Build a color map with two stops at 0.0 and 1.0.

+
Parameters:
+ + + + +
color1Color used for the minimum value of the value interval
color2Color used for the maximum value of the value interval
formatPreferred format of the coor map
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtLinearColorMap::~QwtLinearColorMap () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtLinearColorMap::addColorStop (double value,
const QColor & color 
)
+
+
+

Add a color stop

+

The value has to be in the range [0.0, 1.0]. F.e. a stop at position 17.0 for a range [10.0,20.0] must be passed as: (17.0 - 10.0) / (20.0 - 10.0)

+
Parameters:
+ + + +
valueValue between [0.0, 1.0]
colorColor stop
+
+
+ +
+
+ +
+
+ + + + + + + +
QColor QwtLinearColorMap::color1 () const
+
+
+
Returns:
the first color of the color range
+
See also:
setColorInterval()
+ +
+
+ +
+
+ + + + + + + +
QColor QwtLinearColorMap::color2 () const
+
+
+
Returns:
the second color of the color range
+
See also:
setColorInterval()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
unsigned char QwtLinearColorMap::colorIndex (const QwtIntervalinterval,
double value 
) const [virtual]
+
+
+

Map a value of a given interval into a color index, between 0 and 255

+
Parameters:
+ + + +
intervalRange for all values
valueValue to map into a color index
+
+
+ +

Implements QwtColorMap.

+ +
+
+ +
+
+ + + + + + + +
QVector< double > QwtLinearColorMap::colorStops () const
+
+
+

Return all positions of color stops in increasing order

+ +
+
+ +
+
+ + + + + + + +
QwtLinearColorMap::Mode QwtLinearColorMap::mode () const
+
+
+
Returns:
Mode of the color map
+
See also:
setMode()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
QRgb QwtLinearColorMap::rgb (const QwtIntervalinterval,
double value 
) const [virtual]
+
+
+

Map a value of a given interval into a rgb value

+
Parameters:
+ + + +
intervalRange for all values
valueValue to map into a rgb value
+
+
+ +

Implements QwtColorMap.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtLinearColorMap::setColorInterval (const QColor & color1,
const QColor & color2 
)
+
+
+

Set the color range

+

Add stops at 0.0 and 1.0.

+
Parameters:
+ + + +
color1Color used for the minimum value of the value interval
color2Color used for the maximum value of the value interval
+
+
+
See also:
color1(), color2()
+ +
+
+ +
+
+ + + + + + + + +
void QwtLinearColorMap::setMode (Mode mode)
+
+
+ +

Set the mode of the color map.

+

FixedColors means the color is calculated from the next lower color stop. ScaledColors means the color is calculated by interpolating the colors of the adjacent stops.

+
See also:
mode()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_color_map__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_color_map__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_color_map__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_color_map__inherit__graph.map 2011-04-15 10:49:08.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_color_map__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_color_map__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_color_map__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_color_map__inherit__graph.md5 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1 @@ +b5199d79d6ba95a302890ef9dce1ba1b \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_color_map__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_color_map__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_color_map-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_color_map-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_color_map-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_color_map-members.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,74 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtLinearColorMap Member List

+
+
+This is the complete list of members for QwtLinearColorMap, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + +
addColorStop(double value, const QColor &)QwtLinearColorMap
color(const QwtInterval &, double value) const QwtColorMap [inline]
color1() const QwtLinearColorMap
color2() const QwtLinearColorMap
colorIndex(const QwtInterval &, double value) const QwtLinearColorMap [virtual]
colorStops() const QwtLinearColorMap
colorTable(const QwtInterval &) const QwtColorMap [virtual]
FixedColors enum valueQwtLinearColorMap
Format enum nameQwtColorMap
format() const QwtColorMap [inline]
Indexed enum valueQwtColorMap
mode() const QwtLinearColorMap
Mode enum nameQwtLinearColorMap
QwtColorMap(Format=QwtColorMap::RGB)QwtColorMap
QwtLinearColorMap(QwtColorMap::Format=QwtColorMap::RGB)QwtLinearColorMap
QwtLinearColorMap(const QColor &from, const QColor &to, QwtColorMap::Format=QwtColorMap::RGB)QwtLinearColorMap
RGB enum valueQwtColorMap
rgb(const QwtInterval &, double value) const QwtLinearColorMap [virtual]
ScaledColors enum valueQwtLinearColorMap
setColorInterval(const QColor &color1, const QColor &color2)QwtLinearColorMap
setMode(Mode)QwtLinearColorMap
~QwtColorMap()QwtColorMap [virtual]
~QwtLinearColorMap()QwtLinearColorMap [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_scale_engine.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_scale_engine.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_scale_engine.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_scale_engine.html 2011-04-15 10:49:23.000000000 +0000 @@ -0,0 +1,398 @@ + + + + +Qwt User's Guide: QwtLinearScaleEngine Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtLinearScaleEngine Class Reference

+
+
+ +

A scale engine for linear scales. +More...

+ +

#include <qwt_scale_engine.h>

+
+Inheritance diagram for QwtLinearScaleEngine:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + +

+Public Member Functions

virtual void autoScale (int maxSteps, double &x1, double &x2, double &stepSize) const
virtual QwtScaleDiv divideScale (double x1, double x2, int numMajorSteps, int numMinorSteps, double stepSize=0.0) const
virtual QwtScaleTransformationtransformation () const

+Protected Member Functions

QwtInterval align (const QwtInterval &, double stepSize) const
void buildTicks (const QwtInterval &, double stepSize, int maxMinSteps, QList< double > ticks[QwtScaleDiv::NTickTypes]) const
QList< double > buildMajorTicks (const QwtInterval &interval, double stepSize) const
void buildMinorTicks (const QList< double > &majorTicks, int maxMinMark, double step, QList< double > &, QList< double > &) const
+

Detailed Description

+

A scale engine for linear scales.

+

The step size will fit into the pattern $\left\{ 1,2,5\right\} \cdot 10^{n}$, where n is an integer.

+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
QwtInterval QwtLinearScaleEngine::align (const QwtIntervalinterval,
double stepSize 
) const [protected]
+
+
+ +

Align an interval to a step size.

+

The limits of an interval are aligned that both are integer multiples of the step size.

+
Parameters:
+ + + +
intervalInterval
stepSizeStep size
+
+
+
Returns:
Aligned interval
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtLinearScaleEngine::autoScale (int maxNumSteps,
double & x1,
double & x2,
double & stepSize 
) const [virtual]
+
+
+

Align and divide an interval

+
Parameters:
+ + + + + +
maxNumStepsMax. number of steps
x1First limit of the interval (In/Out)
x2Second limit of the interval (In/Out)
stepSizeStep size (Out)
+
+
+
See also:
setAttribute()
+ +

Implements QwtScaleEngine.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
QList< double > QwtLinearScaleEngine::buildMajorTicks (const QwtIntervalinterval,
double stepSize 
) const [protected]
+
+
+ +

Calculate major ticks for an interval.

+
Parameters:
+ + + +
intervalInterval
stepSizeStep size
+
+
+
Returns:
Calculated ticks
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtLinearScaleEngine::buildMinorTicks (const QList< double > & majorTicks,
int maxMinSteps,
double stepSize,
QList< double > & minorTicks,
QList< double > & mediumTicks 
) const [protected]
+
+
+ +

Calculate minor/medium ticks for major ticks.

+
Parameters:
+ + + + + + +
majorTicksMajor ticks
maxMinStepsMaximum number of minor steps
stepSizeStep size
minorTicksArray to be filled with the calculated minor ticks
mediumTicksArray to be filled with the calculated medium ticks
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtLinearScaleEngine::buildTicks (const QwtIntervalinterval,
double stepSize,
int maxMinSteps,
QList< double > ticks[QwtScaleDiv::NTickTypes] 
) const [protected]
+
+
+ +

Calculate ticks for an interval.

+
Parameters:
+ + + + + +
intervalInterval
stepSizeStep size
maxMinStepsMaximum number of minor steps
ticksArrays to be filled with the calculated ticks
+
+
+
See also:
buildMajorTicks(), buildMinorTicks
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
QwtScaleDiv QwtLinearScaleEngine::divideScale (double x1,
double x2,
int maxMajSteps,
int maxMinSteps,
double stepSize = 0.0 
) const [virtual]
+
+
+ +

Calculate a scale division.

+
Parameters:
+ + + + + + +
x1First interval limit
x2Second interval limit
maxMajStepsMaximum for the number of major steps
maxMinStepsMaximum number of minor steps
stepSizeStep size. If stepSize == 0, the scaleEngine calculates one.
+
+
+
See also:
QwtScaleEngine::stepSize(), QwtScaleEngine::subDivide()
+ +

Implements QwtScaleEngine.

+ +
+
+ +
+
+ + + + + + + +
QwtScaleTransformation * QwtLinearScaleEngine::transformation () const [virtual]
+
+
+

Return a transformation, for linear scales

+ +

Implements QwtScaleEngine.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_scale_engine__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_scale_engine__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_scale_engine__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_scale_engine__inherit__graph.map 2011-04-15 10:49:08.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_scale_engine__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_scale_engine__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_scale_engine__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_scale_engine__inherit__graph.md5 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1 @@ +0fbf93d7596ec41bc972fb43ec30a364 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_scale_engine__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_scale_engine__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_scale_engine-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_scale_engine-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_scale_engine-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_linear_scale_engine-members.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,80 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtLinearScaleEngine Member List

+
+
+This is the complete list of members for QwtLinearScaleEngine, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
align(const QwtInterval &, double stepSize) const QwtLinearScaleEngine [protected]
Attribute enum nameQwtScaleEngine
Attributes typedefQwtScaleEngine
attributes() const QwtScaleEngine
autoScale(int maxSteps, double &x1, double &x2, double &stepSize) const QwtLinearScaleEngine [virtual]
buildInterval(double v) const QwtScaleEngine [protected]
buildMajorTicks(const QwtInterval &interval, double stepSize) const QwtLinearScaleEngine [protected]
buildMinorTicks(const QList< double > &majorTicks, int maxMinMark, double step, QList< double > &, QList< double > &) const QwtLinearScaleEngine [protected]
buildTicks(const QwtInterval &, double stepSize, int maxMinSteps, QList< double > ticks[QwtScaleDiv::NTickTypes]) const QwtLinearScaleEngine [protected]
contains(const QwtInterval &, double val) const QwtScaleEngine [protected]
divideInterval(double interval, int numSteps) const QwtScaleEngine [protected]
divideScale(double x1, double x2, int numMajorSteps, int numMinorSteps, double stepSize=0.0) const QwtLinearScaleEngine [virtual]
Floating enum valueQwtScaleEngine
IncludeReference enum valueQwtScaleEngine
Inverted enum valueQwtScaleEngine
lowerMargin() const QwtScaleEngine
NoAttribute enum valueQwtScaleEngine
QwtScaleEngine()QwtScaleEngine [explicit]
reference() const QwtScaleEngine
setAttribute(Attribute, bool on=true)QwtScaleEngine
setAttributes(Attributes)QwtScaleEngine
setMargins(double lower, double upper)QwtScaleEngine
setReference(double reference)QwtScaleEngine
strip(const QList< double > &, const QwtInterval &) const QwtScaleEngine [protected]
Symmetric enum valueQwtScaleEngine
testAttribute(Attribute) const QwtScaleEngine
transformation() const QwtLinearScaleEngine [virtual]
upperMargin() const QwtScaleEngine
~QwtScaleEngine()QwtScaleEngine [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_log10_scale_engine.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_log10_scale_engine.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_log10_scale_engine.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_log10_scale_engine.html 2011-04-15 10:49:23.000000000 +0000 @@ -0,0 +1,423 @@ + + + + +Qwt User's Guide: QwtLog10ScaleEngine Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtLog10ScaleEngine Class Reference

+
+
+ +

A scale engine for logarithmic (base 10) scales. +More...

+ +

#include <qwt_scale_engine.h>

+
+Inheritance diagram for QwtLog10ScaleEngine:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + +

+Public Member Functions

virtual void autoScale (int maxSteps, double &x1, double &x2, double &stepSize) const
virtual QwtScaleDiv divideScale (double x1, double x2, int numMajorSteps, int numMinorSteps, double stepSize=0.0) const
virtual QwtScaleTransformationtransformation () const

+Protected Member Functions

QwtInterval log10 (const QwtInterval &) const
QwtInterval pow10 (const QwtInterval &) const
QwtInterval align (const QwtInterval &, double stepSize) const
void buildTicks (const QwtInterval &, double stepSize, int maxMinSteps, QList< double > ticks[QwtScaleDiv::NTickTypes]) const
QList< double > buildMajorTicks (const QwtInterval &interval, double stepSize) const
QList< double > buildMinorTicks (const QList< double > &majorTicks, int maxMinMark, double step) const
+

Detailed Description

+

A scale engine for logarithmic (base 10) scales.

+

The step size is measured in *decades* and the major step size will be adjusted to fit the pattern $\left\{ 1,2,3,5\right\} \cdot 10^{n}$, where n is a natural number including zero.

+
Warning:
the step size as well as the margins are measured in *decades*.
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
QwtInterval QwtLog10ScaleEngine::align (const QwtIntervalinterval,
double stepSize 
) const [protected]
+
+
+ +

Align an interval to a step size.

+

The limits of an interval are aligned that both are integer multiples of the step size.

+
Parameters:
+ + + +
intervalInterval
stepSizeStep size
+
+
+
Returns:
Aligned interval
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtLog10ScaleEngine::autoScale (int maxNumSteps,
double & x1,
double & x2,
double & stepSize 
) const [virtual]
+
+
+

Align and divide an interval

+
Parameters:
+ + + + + +
maxNumStepsMax. number of steps
x1First limit of the interval (In/Out)
x2Second limit of the interval (In/Out)
stepSizeStep size (Out)
+
+
+
See also:
QwtScaleEngine::setAttribute()
+ +

Implements QwtScaleEngine.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
QList< double > QwtLog10ScaleEngine::buildMajorTicks (const QwtIntervalinterval,
double stepSize 
) const [protected]
+
+
+ +

Calculate major ticks for an interval.

+
Parameters:
+ + + +
intervalInterval
stepSizeStep size
+
+
+
Returns:
Calculated ticks
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
QList< double > QwtLog10ScaleEngine::buildMinorTicks (const QList< double > & majorTicks,
int maxMinSteps,
double stepSize 
) const [protected]
+
+
+ +

Calculate minor/medium ticks for major ticks.

+
Parameters:
+ + + + +
majorTicksMajor ticks
maxMinStepsMaximum number of minor steps
stepSizeStep size
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtLog10ScaleEngine::buildTicks (const QwtIntervalinterval,
double stepSize,
int maxMinSteps,
QList< double > ticks[QwtScaleDiv::NTickTypes] 
) const [protected]
+
+
+ +

Calculate ticks for an interval.

+
Parameters:
+ + + + + +
intervalInterval
maxMinStepsMaximum number of minor steps
stepSizeStep size
ticksArrays to be filled with the calculated ticks
+
+
+
See also:
buildMajorTicks(), buildMinorTicks
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
QwtScaleDiv QwtLog10ScaleEngine::divideScale (double x1,
double x2,
int maxMajSteps,
int maxMinSteps,
double stepSize = 0.0 
) const [virtual]
+
+
+ +

Calculate a scale division.

+
Parameters:
+ + + + + + +
x1First interval limit
x2Second interval limit
maxMajStepsMaximum for the number of major steps
maxMinStepsMaximum number of minor steps
stepSizeStep size. If stepSize == 0, the scaleEngine calculates one.
+
+
+
See also:
QwtScaleEngine::stepSize(), QwtLog10ScaleEngine::subDivide()
+ +

Implements QwtScaleEngine.

+ +
+
+ +
+
+ + + + + + + + +
QwtInterval QwtLog10ScaleEngine::log10 (const QwtIntervalinterval) const [protected]
+
+
+

Return the interval [log10(interval.minValue(), log10(interval.maxValue]

+ +
+
+ +
+
+ + + + + + + + +
QwtInterval QwtLog10ScaleEngine::pow10 (const QwtIntervalinterval) const [protected]
+
+
+

Return the interval [pow10(interval.minValue(), pow10(interval.maxValue]

+ +
+
+ +
+
+ + + + + + + +
QwtScaleTransformation * QwtLog10ScaleEngine::transformation () const [virtual]
+
+
+

Return a transformation, for logarithmic (base 10) scales

+ +

Implements QwtScaleEngine.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_log10_scale_engine__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_log10_scale_engine__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_log10_scale_engine__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_log10_scale_engine__inherit__graph.map 2011-04-15 10:49:08.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_log10_scale_engine__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_log10_scale_engine__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_log10_scale_engine__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_log10_scale_engine__inherit__graph.md5 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1 @@ +d3d10416416435b0d26d8af9077c543e \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_log10_scale_engine__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_log10_scale_engine__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_log10_scale_engine-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_log10_scale_engine-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_log10_scale_engine-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_log10_scale_engine-members.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,82 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtLog10ScaleEngine Member List

+
+
+This is the complete list of members for QwtLog10ScaleEngine, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
align(const QwtInterval &, double stepSize) const QwtLog10ScaleEngine [protected]
Attribute enum nameQwtScaleEngine
Attributes typedefQwtScaleEngine
attributes() const QwtScaleEngine
autoScale(int maxSteps, double &x1, double &x2, double &stepSize) const QwtLog10ScaleEngine [virtual]
buildInterval(double v) const QwtScaleEngine [protected]
buildMajorTicks(const QwtInterval &interval, double stepSize) const QwtLog10ScaleEngine [protected]
buildMinorTicks(const QList< double > &majorTicks, int maxMinMark, double step) const QwtLog10ScaleEngine [protected]
buildTicks(const QwtInterval &, double stepSize, int maxMinSteps, QList< double > ticks[QwtScaleDiv::NTickTypes]) const QwtLog10ScaleEngine [protected]
contains(const QwtInterval &, double val) const QwtScaleEngine [protected]
divideInterval(double interval, int numSteps) const QwtScaleEngine [protected]
divideScale(double x1, double x2, int numMajorSteps, int numMinorSteps, double stepSize=0.0) const QwtLog10ScaleEngine [virtual]
Floating enum valueQwtScaleEngine
IncludeReference enum valueQwtScaleEngine
Inverted enum valueQwtScaleEngine
log10(const QwtInterval &) const QwtLog10ScaleEngine [protected]
lowerMargin() const QwtScaleEngine
NoAttribute enum valueQwtScaleEngine
pow10(const QwtInterval &) const QwtLog10ScaleEngine [protected]
QwtScaleEngine()QwtScaleEngine [explicit]
reference() const QwtScaleEngine
setAttribute(Attribute, bool on=true)QwtScaleEngine
setAttributes(Attributes)QwtScaleEngine
setMargins(double lower, double upper)QwtScaleEngine
setReference(double reference)QwtScaleEngine
strip(const QList< double > &, const QwtInterval &) const QwtScaleEngine [protected]
Symmetric enum valueQwtScaleEngine
testAttribute(Attribute) const QwtScaleEngine
transformation() const QwtLog10ScaleEngine [virtual]
upperMargin() const QwtScaleEngine
~QwtScaleEngine()QwtScaleEngine [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_magnifier.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_magnifier.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_magnifier.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_magnifier.html 2011-04-15 10:49:23.000000000 +0000 @@ -0,0 +1,798 @@ + + + + +Qwt User's Guide: QwtMagnifier Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtMagnifier Class Reference

+
+
+ +

QwtMagnifier provides zooming, by magnifying in steps. +More...

+ +

#include <qwt_magnifier.h>

+
+Inheritance diagram for QwtMagnifier:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 QwtMagnifier (QWidget *)
virtual ~QwtMagnifier ()
QWidget * parentWidget ()
const QWidget * parentWidget () const
void setEnabled (bool)
bool isEnabled () const
void setMouseFactor (double)
double mouseFactor () const
void setMouseButton (int button, int buttonState=Qt::NoButton)
void getMouseButton (int &button, int &buttonState) const
void setWheelFactor (double)
double wheelFactor () const
void setWheelButtonState (int buttonState)
int wheelButtonState () const
void setKeyFactor (double)
double keyFactor () const
void setZoomInKey (int key, int modifiers)
void getZoomInKey (int &key, int &modifiers) const
void setZoomOutKey (int key, int modifiers)
void getZoomOutKey (int &key, int &modifiers) const
virtual bool eventFilter (QObject *, QEvent *)

+Protected Member Functions

virtual void rescale (double factor)=0
virtual void widgetMousePressEvent (QMouseEvent *)
virtual void widgetMouseReleaseEvent (QMouseEvent *)
virtual void widgetMouseMoveEvent (QMouseEvent *)
virtual void widgetWheelEvent (QWheelEvent *)
virtual void widgetKeyPressEvent (QKeyEvent *)
virtual void widgetKeyReleaseEvent (QKeyEvent *)
+

Detailed Description

+

QwtMagnifier provides zooming, by magnifying in steps.

+

Using QwtMagnifier a plot can be zoomed in/out in steps using keys, the mouse wheel or moving a mouse button in vertical direction.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtMagnifier::QwtMagnifier (QWidget * parent) [explicit]
+
+
+

Constructor

+
Parameters:
+ + +
parentWidget to be magnified
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtMagnifier::~QwtMagnifier () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
bool QwtMagnifier::eventFilter (QObject * o,
QEvent * e 
) [virtual]
+
+
+ +

Event filter.

+

When isEnabled() the mouse events of the observed widget are filtered.

+
See also:
widgetMousePressEvent(), widgetMouseReleaseEvent(), widgetMouseMoveEvent(), widgetWheelEvent(), widgetKeyPressEvent() widgetKeyReleaseEvent()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtMagnifier::getMouseButton (int & button,
int & buttonState 
) const
+
+
+
See also:
setMouseButton()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtMagnifier::getZoomInKey (int & key,
int & modifiers 
) const
+
+
+
See also:
setZoomInKey()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtMagnifier::getZoomOutKey (int & key,
int & modifiers 
) const
+
+
+
See also:
setZoomOutKey()
+ +
+
+ +
+
+ + + + + + + +
bool QwtMagnifier::isEnabled () const
+
+
+
Returns:
true when enabled, false otherwise
+
See also:
setEnabled(), eventFilter()
+ +
+
+ +
+
+ + + + + + + +
double QwtMagnifier::keyFactor () const
+
+
+
Returns:
Key factor
+
See also:
setKeyFactor()
+ +
+
+ +
+
+ + + + + + + +
double QwtMagnifier::mouseFactor () const
+
+
+
Returns:
Mouse factor
+
See also:
setMouseFactor()
+ +
+
+ +
+
+ + + + + + + +
QWidget * QwtMagnifier::parentWidget ()
+
+
+
Returns:
Parent widget, where the rescaling happens
+ +
+
+ +
+
+ + + + + + + +
const QWidget * QwtMagnifier::parentWidget () const
+
+
+
Returns:
Parent widget, where the rescaling happens
+ +
+
+ +
+
+ + + + + + + + +
virtual void QwtMagnifier::rescale (double factor) [protected, pure virtual]
+
+
+

Rescale the parent widget

+
Parameters:
+ + +
factorScale factor
+
+
+ +

Implemented in QwtPlotMagnifier.

+ +
+
+ +
+
+ + + + + + + + +
void QwtMagnifier::setEnabled (bool on)
+
+
+ +

En/disable the magnifier.

+

When enabled is true an event filter is installed for the observed widget, otherwise the event filter is removed.

+
Parameters:
+ + +
ontrue or false
+
+
+
See also:
isEnabled(), eventFilter()
+ +
+
+ +
+
+ + + + + + + + +
void QwtMagnifier::setKeyFactor (double factor)
+
+
+ +

Change the key factor.

+

The key factor defines the ratio between the current range on the parent widget and the zoomed range for each key press of the zoom in/out keys. The default value is 0.9.

+
Parameters:
+ + +
factorKey factor
+
+
+
See also:
keyFactor(), setZoomInKey(), setZoomOutKey(), setWheelFactor, setMouseFactor()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtMagnifier::setMouseButton (int button,
int buttonState = Qt::NoButton 
)
+
+
+

Assign the mouse button, that is used for zooming in/out. The default value is Qt::RightButton.

+
Parameters:
+ + + +
buttonButton
buttonStateButton state
+
+
+
See also:
getMouseButton()
+ +
+
+ +
+
+ + + + + + + + +
void QwtMagnifier::setMouseFactor (double factor)
+
+
+ +

Change the mouse factor.

+

The mouse factor defines the ratio between the current range on the parent widget and the zoomed range for each vertical mouse movement. The default value is 0.95.

+
Parameters:
+ + +
factorWheel factor
+
+
+
See also:
mouseFactor(), setMouseButton(), setWheelFactor(), setKeyFactor()
+ +
+
+ +
+
+ + + + + + + + +
void QwtMagnifier::setWheelButtonState (int buttonState)
+
+
+

Assign a mandatory button state for zooming in/out using the wheel. The default button state is Qt::NoButton.

+
Parameters:
+ + +
buttonStateButton state
+
+
+
See also:
wheelButtonState()
+ +
+
+ +
+
+ + + + + + + + +
void QwtMagnifier::setWheelFactor (double factor)
+
+
+ +

Change the wheel factor.

+

The wheel factor defines the ratio between the current range on the parent widget and the zoomed range for each step of the wheel. The default value is 0.9.

+
Parameters:
+ + +
factorWheel factor
+
+
+
See also:
wheelFactor(), setWheelButtonState(), setMouseFactor(), setKeyFactor()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtMagnifier::setZoomInKey (int key,
int modifiers 
)
+
+
+

Assign the key, that is used for zooming in. The default combination is Qt::Key_Plus + Qt::NoModifier.

+
Parameters:
+ + + +
key
modifiers
+
+
+
See also:
getZoomInKey(), setZoomOutKey()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtMagnifier::setZoomOutKey (int key,
int modifiers 
)
+
+
+

Assign the key, that is used for zooming out. The default combination is Qt::Key_Minus + Qt::NoModifier.

+
Parameters:
+ + + +
key
modifiers
+
+
+
See also:
getZoomOutKey(), setZoomOutKey()
+ +
+
+ +
+
+ + + + + + + +
int QwtMagnifier::wheelButtonState () const
+
+
+
Returns:
Wheel button state
+
See also:
setWheelButtonState()
+ +
+
+ +
+
+ + + + + + + +
double QwtMagnifier::wheelFactor () const
+
+
+
Returns:
Wheel factor
+
See also:
setWheelFactor()
+ +
+
+ +
+
+ + + + + + + + +
void QwtMagnifier::widgetKeyPressEvent (QKeyEvent * keyEvent) [protected, virtual]
+
+
+

Handle a key press event for the observed widget.

+
Parameters:
+ + +
keyEventKey event
+
+
+
See also:
eventFilter(), widgetKeyReleaseEvent()
+ +
+
+ +
+
+ + + + + + + + +
void QwtMagnifier::widgetKeyReleaseEvent (QKeyEvent * keyEvent) [protected, virtual]
+
+
+

Handle a key release event for the observed widget.

+
Parameters:
+ + +
keyEventKey event
+
+
+
See also:
eventFilter(), widgetKeyReleaseEvent()
+ +
+
+ +
+
+ + + + + + + + +
void QwtMagnifier::widgetMouseMoveEvent (QMouseEvent * me) [protected, virtual]
+
+
+

Handle a mouse move event for the observed widget.

+
Parameters:
+ + +
meMouse event
+
+
+
See also:
eventFilter(), widgetMousePressEvent(), widgetMouseReleaseEvent(),
+ +
+
+ +
+
+ + + + + + + + +
void QwtMagnifier::widgetMousePressEvent (QMouseEvent * me) [protected, virtual]
+
+
+

Handle a mouse press event for the observed widget.

+
Parameters:
+ + +
meMouse event
+
+
+
See also:
eventFilter(), widgetMouseReleaseEvent(), widgetMouseMoveEvent()
+ +
+
+ +
+
+ + + + + + + + +
void QwtMagnifier::widgetMouseReleaseEvent (QMouseEvent * ) [protected, virtual]
+
+
+

Handle a mouse release event for the observed widget.

+
See also:
eventFilter(), widgetMousePressEvent(), widgetMouseMoveEvent(),
+ +
+
+ +
+
+ + + + + + + + +
void QwtMagnifier::widgetWheelEvent (QWheelEvent * wheelEvent) [protected, virtual]
+
+
+

Handle a wheel event for the observed widget.

+
Parameters:
+ + +
wheelEventWheel event
+
+
+
See also:
eventFilter()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_magnifier__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_magnifier__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_magnifier__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_magnifier__inherit__graph.map 2011-04-15 10:49:08.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_magnifier__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_magnifier__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_magnifier__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_magnifier__inherit__graph.md5 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1 @@ +76302d2b83806c97d01cb2eb5d09b5e5 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_magnifier__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_magnifier__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_magnifier-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_magnifier-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_magnifier-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_magnifier-members.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,79 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtMagnifier Member List

+
+
+This is the complete list of members for QwtMagnifier, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
eventFilter(QObject *, QEvent *)QwtMagnifier [virtual]
getMouseButton(int &button, int &buttonState) const QwtMagnifier
getZoomInKey(int &key, int &modifiers) const QwtMagnifier
getZoomOutKey(int &key, int &modifiers) const QwtMagnifier
isEnabled() const QwtMagnifier
keyFactor() const QwtMagnifier
mouseFactor() const QwtMagnifier
parentWidget()QwtMagnifier
parentWidget() const QwtMagnifier
QwtMagnifier(QWidget *)QwtMagnifier [explicit]
rescale(double factor)=0QwtMagnifier [protected, pure virtual]
setEnabled(bool)QwtMagnifier
setKeyFactor(double)QwtMagnifier
setMouseButton(int button, int buttonState=Qt::NoButton)QwtMagnifier
setMouseFactor(double)QwtMagnifier
setWheelButtonState(int buttonState)QwtMagnifier
setWheelFactor(double)QwtMagnifier
setZoomInKey(int key, int modifiers)QwtMagnifier
setZoomOutKey(int key, int modifiers)QwtMagnifier
wheelButtonState() const QwtMagnifier
wheelFactor() const QwtMagnifier
widgetKeyPressEvent(QKeyEvent *)QwtMagnifier [protected, virtual]
widgetKeyReleaseEvent(QKeyEvent *)QwtMagnifier [protected, virtual]
widgetMouseMoveEvent(QMouseEvent *)QwtMagnifier [protected, virtual]
widgetMousePressEvent(QMouseEvent *)QwtMagnifier [protected, virtual]
widgetMouseReleaseEvent(QMouseEvent *)QwtMagnifier [protected, virtual]
widgetWheelEvent(QWheelEvent *)QwtMagnifier [protected, virtual]
~QwtMagnifier()QwtMagnifier [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_math_m_l_document.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_math_m_l_document.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_math_m_l_document.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_math_m_l_document.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,314 @@ + + + + +Qwt User's Guide: QwtMathMLDocument Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtMathMLDocument Class Reference

+
+
+ +

The QwtMathMLDocument class renders mathematical formulas written in MathML 2.0. +More...

+ +

List of all members.

+ + + + + + + + + + + + + + +

+Public Types

enum  MmlFont {
+  NormalFont, +
+  FrakturFont, +
+  SansSerifFont, +
+  ScriptFont, +
+  MonospaceFont, +
+  DoublestruckFont +
+ }

+Public Member Functions

 QwtMathMLDocument ()
 ~QwtMathMLDocument ()
void clear ()
bool setContent (QString text, QString *errorMsg=0, int *errorLine=0, int *errorColumn=0)
void paint (QPainter *p, const QPoint &pos) const
QSize size () const
QString fontName (MmlFont type) const
void setFontName (MmlFont type, const QString &name)
int baseFontPointSize () const
void setBaseFontPointSize (int size)
+

Detailed Description

+

The QwtMathMLDocument class renders mathematical formulas written in MathML 2.0.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtMathMLDocument::QwtMathMLDocument ()
+
+
+

Constructs an empty MML document.

+ +
+
+ +
+
+ + + + + + + +
QwtMathMLDocument::~QwtMathMLDocument ()
+
+
+

Destroys the MML document.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
int QwtMathMLDocument::baseFontPointSize () const
+
+
+

Returns the point size of the font used to render expressions whose scriptlevel is 0.

+
See also:
setBaseFontPointSize() fontName() setFontName()
+ +
+
+ +
+
+ + + + + + + +
void QwtMathMLDocument::clear ()
+
+
+

Clears the contents of this MML document.

+ +
+
+ +
+
+ + + + + + + + +
QString QwtMathMLDocument::fontName (QwtMathMLDocument::MmlFont type) const
+
+
+

Returns the name of the font used to render the font type.

+
See also:
setFontName() setBaseFontPointSize() baseFontPointSize() QwtMathMLDocument::MmlFont
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtMathMLDocument::paint (QPainter * p,
const QPoint & pos 
) const
+
+
+

Renders this MML document with the painter p at position pos.

+ +
+
+ +
+
+ + + + + + + + +
void QwtMathMLDocument::setBaseFontPointSize (int size)
+
+
+

Sets the point size of the font used to render expressions whose scriptlevel is 0.

+
See also:
baseFontPointSize() fontName() setFontName()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool QwtMathMLDocument::setContent (QString text,
QString * errorMsg = 0,
int * errorLine = 0,
int * errorColumn = 0 
)
+
+
+

Sets the MathML expression to be rendered. The expression is given in the string text. If the expression is successfully parsed, this method returns true; otherwise it returns false. If an error occured errorMsg is set to a diagnostic message, while errorLine and errorColumn contain the location of the error. Any of errorMsg, errorLine and errorColumn may be 0, in which case they are not set.

+

text should contain MathML 2.0 presentation markup elements enclosed in a <math> element.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtMathMLDocument::setFontName (QwtMathMLDocument::MmlFont type,
const QString & name 
)
+
+
+

Sets the name of the font used to render the font type to name.

+
See also:
fontName() setBaseFontPointSize() baseFontPointSize() QwtMathMLDocument::MmlFont
+ +
+
+ +
+
+ + + + + + + +
QSize QwtMathMLDocument::size () const
+
+
+

Returns the size of this MML document, as rendered, in pixels.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_math_m_l_document-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_math_m_l_document-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_math_m_l_document-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_math_m_l_document-members.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,68 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtMathMLDocument Member List

+
+
+This is the complete list of members for QwtMathMLDocument, including all inherited members. + + + + + + + + + + + + + + + + + +
baseFontPointSize() const QwtMathMLDocument
clear()QwtMathMLDocument
DoublestruckFont enum value (defined in QwtMathMLDocument)QwtMathMLDocument
fontName(MmlFont type) const QwtMathMLDocument
FrakturFont enum value (defined in QwtMathMLDocument)QwtMathMLDocument
MmlFont enum name (defined in QwtMathMLDocument)QwtMathMLDocument
MonospaceFont enum value (defined in QwtMathMLDocument)QwtMathMLDocument
NormalFont enum value (defined in QwtMathMLDocument)QwtMathMLDocument
paint(QPainter *p, const QPoint &pos) const QwtMathMLDocument
QwtMathMLDocument()QwtMathMLDocument
SansSerifFont enum value (defined in QwtMathMLDocument)QwtMathMLDocument
ScriptFont enum value (defined in QwtMathMLDocument)QwtMathMLDocument
setBaseFontPointSize(int size)QwtMathMLDocument
setContent(QString text, QString *errorMsg=0, int *errorLine=0, int *errorColumn=0)QwtMathMLDocument
setFontName(MmlFont type, const QString &name)QwtMathMLDocument
size() const QwtMathMLDocument
~QwtMathMLDocument()QwtMathMLDocument
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_math_m_l_text_engine.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_math_m_l_text_engine.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_math_m_l_text_engine.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_math_m_l_text_engine.html 2011-04-15 10:49:23.000000000 +0000 @@ -0,0 +1,362 @@ + + + + +Qwt User's Guide: QwtMathMLTextEngine Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtMathMLTextEngine Class Reference

+
+
+ +

Text Engine for the MathML renderer of the Qt solutions package. +More...

+ +

#include <qwt_mathml_text_engine.h>

+
+Inheritance diagram for QwtMathMLTextEngine:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + +

+Public Member Functions

 QwtMathMLTextEngine ()
virtual ~QwtMathMLTextEngine ()
virtual double heightForWidth (const QFont &font, int flags, const QString &text, double width) const
virtual QSizeF textSize (const QFont &font, int flags, const QString &text) const
virtual void draw (QPainter *painter, const QRectF &rect, int flags, const QString &text) const
virtual bool mightRender (const QString &) const
virtual void textMargins (const QFont &, const QString &, double &left, double &right, double &top, double &bottom) const
+

Detailed Description

+

Text Engine for the MathML renderer of the Qt solutions package.

+

To enable MathML support the following code needs to be added to the application:

+
+#include <qwt_mathml_text_engine.h>
+
+QwtText::setTextEngine(QwtText::MathMLText, new QwtMathMLTextEngine());
+  
See also:
QwtTextEngine, QwtText::setTextEngine
+
Warning:
Unfortunately the MathML renderer doesn't support rotating of texts.
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtMathMLTextEngine::QwtMathMLTextEngine ()
+
+
+ +

Constructor.

+ +
+
+ +
+
+ + + + + + + +
QwtMathMLTextEngine::~QwtMathMLTextEngine () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtMathMLTextEngine::draw (QPainter * painter,
const QRectF & rect,
int flags,
const QString & text 
) const [virtual]
+
+
+

Draw the text in a clipping rectangle

+
Parameters:
+ + + + + +
painterPainter
rectClipping rectangle
flagsBitwise OR of the flags like in for QPainter::drawText
textText to be rendered
+
+
+ +

Implements QwtTextEngine.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
double QwtMathMLTextEngine::heightForWidth (const QFont & font,
int flags,
const QString & text,
double width 
) const [virtual]
+
+
+

Find the height for a given width

+
Parameters:
+ + + + + +
fontFont of the text
flagsBitwise OR of the flags used like in QPainter::drawText
textText to be rendered
widthWidth
+
+
+
Returns:
Calculated height
+ +

Implements QwtTextEngine.

+ +
+
+ +
+
+ + + + + + + + +
bool QwtMathMLTextEngine::mightRender (const QString & text) const [virtual]
+
+
+

Test if a string can be rendered by QwtMathMLTextEngine

+
Parameters:
+ + +
textText to be tested
+
+
+
Returns:
true, if text begins with "<math>".
+ +

Implements QwtTextEngine.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtMathMLTextEngine::textMargins (const QFont & ,
const QString & ,
double & left,
double & right,
double & top,
double & bottom 
) const [virtual]
+
+
+

Return margins around the texts

+
Parameters:
+ + + + + +
leftReturn 0
rightReturn 0
topReturn 0
bottomReturn 0
+
+
+ +

Implements QwtTextEngine.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
QSizeF QwtMathMLTextEngine::textSize (const QFont & font,
int flags,
const QString & text 
) const [virtual]
+
+
+

Returns the size, that is needed to render text

+
Parameters:
+ + + + +
fontFont of the text
flagsBitwise OR of the flags used like in QPainter::drawText
textText to be rendered
+
+
+
Returns:
Caluclated size
+ +

Implements QwtTextEngine.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_math_m_l_text_engine__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_math_m_l_text_engine__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_math_m_l_text_engine__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_math_m_l_text_engine__inherit__graph.map 2011-04-15 10:49:08.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_math_m_l_text_engine__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_math_m_l_text_engine__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_math_m_l_text_engine__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_math_m_l_text_engine__inherit__graph.md5 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1 @@ +a4f441da08815d198b7c72ee29bb82a9 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_math_m_l_text_engine__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_math_m_l_text_engine__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_math_m_l_text_engine-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_math_m_l_text_engine-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_math_m_l_text_engine-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_math_m_l_text_engine-members.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,60 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtMathMLTextEngine Member List

+
+
+This is the complete list of members for QwtMathMLTextEngine, including all inherited members. + + + + + + + + + +
draw(QPainter *painter, const QRectF &rect, int flags, const QString &text) const QwtMathMLTextEngine [virtual]
heightForWidth(const QFont &font, int flags, const QString &text, double width) const QwtMathMLTextEngine [virtual]
mightRender(const QString &) const QwtMathMLTextEngine [virtual]
QwtMathMLTextEngine()QwtMathMLTextEngine
QwtTextEngine()QwtTextEngine [protected]
textMargins(const QFont &, const QString &, double &left, double &right, double &top, double &bottom) const QwtMathMLTextEngine [virtual]
textSize(const QFont &font, int flags, const QString &text) const QwtMathMLTextEngine [virtual]
~QwtMathMLTextEngine()QwtMathMLTextEngine [virtual]
~QwtTextEngine()QwtTextEngine [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_matrix_raster_data.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_matrix_raster_data.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_matrix_raster_data.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_matrix_raster_data.html 2011-04-15 10:49:23.000000000 +0000 @@ -0,0 +1,401 @@ + + + + +Qwt User's Guide: QwtMatrixRasterData Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtMatrixRasterData Class Reference

+
+
+ +

A class representing a matrix of values as raster data. +More...

+ +

#include <qwt_matrix_raster_data.h>

+
+Inheritance diagram for QwtMatrixRasterData:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + +

+Public Types

enum  ResampleMode {
+  NearestNeighbour, +
+  BilinearInterpolation +
+ }

+Public Member Functions

 QwtMatrixRasterData ()
virtual ~QwtMatrixRasterData ()
void setResampleMode (ResampleMode mode)
ResampleMode resampleMode () const
virtual void setInterval (Qt::Axis, const QwtInterval &)
void setValueMatrix (const QVector< double > &values, size_t numColumns)
const QVector< double > valueMatrix () const
size_t numColumns () const
size_t numRows () const
virtual QRectF pixelHint (const QRectF &) const
virtual double value (double x, double y) const
+

Detailed Description

+

A class representing a matrix of values as raster data.

+

QwtMatrixRasterData implements an interface for a matrix of equidistant values, that can be used by a QwtPlotRasterItem. It implements a couple of resampling algorithms, to provide values for positions, that or not on the value matrix.

+

Member Enumeration Documentation

+ +
+ +
+ +

Resampling algorithm The default setting is NearestNeighbour;.

+
Enumerator:
+ + +
NearestNeighbour  +

Return the value from the matrix, that is nearest to the the requested position.

+
BilinearInterpolation  +

Interpolate the value from the distances and values of the 4 surrounding values in the matrix,

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtMatrixRasterData::QwtMatrixRasterData ()
+
+
+ +

Constructor.

+ +
+
+ +
+
+ + + + + + + +
QwtMatrixRasterData::~QwtMatrixRasterData () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
size_t QwtMatrixRasterData::numColumns () const
+
+
+
Returns:
Number of columns of the value matrix
+
See also:
valueMatrix(), numRows(), setValueMatrix()
+ +
+
+ +
+
+ + + + + + + +
size_t QwtMatrixRasterData::numRows () const
+
+
+
Returns:
Number of rows of the value matrix
+
See also:
valueMatrix(), numColumns(), setValueMatrix()
+ +
+
+ +
+
+ + + + + + + + +
QRectF QwtMatrixRasterData::pixelHint (const QRectF & ) const [virtual]
+
+
+ +

Pixel hint.

+
    +
  • NearestNeighbour
    + pixelHint() returns the surrounding pixel of the top left value in the matrix.
  • +
+
    +
  • BilinearInterpolation
    + Returns an empty rectangle recommending to render in target device ( f.e. screen ) resolution.
  • +
+
See also:
ResampleMode, setMatrix(), setInterval()
+ +

Reimplemented from QwtRasterData.

+ +
+
+ +
+
+ + + + + + + +
QwtMatrixRasterData::ResampleMode QwtMatrixRasterData::resampleMode () const
+
+
+
Returns:
resampling algorithm
+
See also:
setResampleMode(), value()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtMatrixRasterData::setInterval (Qt::Axis axis,
const QwtIntervalinterval 
) [virtual]
+
+
+ +

Assign the bounding interval for an axis.

+

Setting the bounding intervals for the X/Y axis is mandatory to define the positions for the values of the value matrix. The interval in Z direction defines the possible range for the values in the matrix, what is f.e used by QwtPlotSpectrogram to map values to colors. The Z-interval might be the bounding interval of the values in the matrix, but usually it isn't. ( f.e a interval of 0.0-100.0 for values in percentage )

+
Parameters:
+ + + +
axisX, Y or Z axis
intervalInterval
+
+
+
See also:
QwtRasterData::interval(), setValueMatrix()
+ +

Reimplemented from QwtRasterData.

+ +
+
+ +
+
+ + + + + + + + +
void QwtMatrixRasterData::setResampleMode (ResampleMode mode)
+
+
+ +

Set the resampling algorithm.

+
Parameters:
+ + +
modeResampling mode
+
+
+
See also:
resampleMode(), value()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtMatrixRasterData::setValueMatrix (const QVector< double > & values,
size_t numColumns 
)
+
+
+ +

Assign a value matrix.

+

The positions of the values are calculated by dividing the bounding rectangle of the X/Y intervals into equidistant rectangles ( pixels ). Each value corresponds to the center of a pixel.

+
Parameters:
+ + + +
valuesVector of values
numColumnsNumber of columns
+
+
+
See also:
valueMatrix(), numColumns(), numRows(), setInterval()()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
double QwtMatrixRasterData::value (double x,
double y 
) const [virtual]
+
+
+
Returns:
the value at a raster position
+
Parameters:
+ + + +
xX value in plot coordinates
yY value in plot coordinates
+
+
+
See also:
ResampleMode
+ +

Implements QwtRasterData.

+ +
+
+ +
+
+ + + + + + + +
const QVector< double > QwtMatrixRasterData::valueMatrix () const
+
+
+
Returns:
Value matrix
+
See also:
setValueMatrix(), numColumns(), numRows(), setInterval()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_matrix_raster_data__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_matrix_raster_data__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_matrix_raster_data__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_matrix_raster_data__inherit__graph.map 2011-04-15 10:49:09.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_matrix_raster_data__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_matrix_raster_data__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_matrix_raster_data__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_matrix_raster_data__inherit__graph.md5 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1 @@ +e532dba10b9955645bbb17191f954427 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_matrix_raster_data__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_matrix_raster_data__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_matrix_raster_data-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_matrix_raster_data-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_matrix_raster_data-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_matrix_raster_data-members.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,76 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtMatrixRasterData Member List

+
+
+This is the complete list of members for QwtMatrixRasterData, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + +
BilinearInterpolation enum valueQwtMatrixRasterData
ConrecFlag enum nameQwtRasterData
ConrecFlags typedefQwtRasterData
ContourLines typedefQwtRasterData
contourLines(const QRectF &rect, const QSize &raster, const QList< double > &levels, ConrecFlags) const QwtRasterData [virtual]
discardRaster()QwtRasterData [virtual]
IgnoreAllVerticesOnLevel enum valueQwtRasterData
IgnoreOutOfRange enum valueQwtRasterData
initRaster(const QRectF &, const QSize &raster)QwtRasterData [virtual]
interval(Qt::Axis) const QwtRasterData [inline]
NearestNeighbour enum valueQwtMatrixRasterData
numColumns() const QwtMatrixRasterData
numRows() const QwtMatrixRasterData
pixelHint(const QRectF &) const QwtMatrixRasterData [virtual]
QwtMatrixRasterData()QwtMatrixRasterData
QwtRasterData()QwtRasterData
ResampleMode enum nameQwtMatrixRasterData
resampleMode() const QwtMatrixRasterData
setInterval(Qt::Axis, const QwtInterval &)QwtMatrixRasterData [virtual]
setResampleMode(ResampleMode mode)QwtMatrixRasterData
setValueMatrix(const QVector< double > &values, size_t numColumns)QwtMatrixRasterData
value(double x, double y) const QwtMatrixRasterData [virtual]
valueMatrix() const QwtMatrixRasterData
~QwtMatrixRasterData()QwtMatrixRasterData [virtual]
~QwtRasterData()QwtRasterData [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_null_paint_device.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_null_paint_device.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_null_paint_device.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_null_paint_device.html 2011-04-15 10:49:23.000000000 +0000 @@ -0,0 +1,706 @@ + + + + +Qwt User's Guide: QwtNullPaintDevice Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtNullPaintDevice Class Reference

+
+
+ +

A null paint device doing nothing. +More...

+ +

#include <qwt_null_paintdevice.h>

+
+Inheritance diagram for QwtNullPaintDevice:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 QwtNullPaintDevice (QPaintEngine::PaintEngineFeatures)
 QwtNullPaintDevice (const QSize &size, QPaintEngine::PaintEngineFeatures)
virtual ~QwtNullPaintDevice ()
void setSize (const QSize &)
QSize size () const
virtual QPaintEngine * paintEngine () const
virtual int metric (PaintDeviceMetric metric) const
virtual void drawRects (const QRect *, int)
virtual void drawRects (const QRectF *, int)
virtual void drawLines (const QLine *, int)
virtual void drawLines (const QLineF *, int)
virtual void drawEllipse (const QRectF &)
virtual void drawEllipse (const QRect &)
virtual void drawPath (const QPainterPath &)
virtual void drawPoints (const QPointF *, int)
virtual void drawPoints (const QPoint *, int)
virtual void drawPolygon (const QPointF *, int, QPaintEngine::PolygonDrawMode)
virtual void drawPolygon (const QPoint *, int, QPaintEngine::PolygonDrawMode)
virtual void drawPixmap (const QRectF &, const QPixmap &, const QRectF &)
virtual void drawTextItem (const QPointF &, const QTextItem &)
virtual void drawTiledPixmap (const QRectF &, const QPixmap &, const QPointF &s)
virtual void drawImage (const QRectF &, const QImage &, const QRectF &, Qt::ImageConversionFlags)
virtual void updateState (const QPaintEngineState &state)
+

Detailed Description

+

A null paint device doing nothing.

+

Sometimes important layout/rendering geometries are not available or changable from the public Qt class interface. ( f.e hidden in the style implementation ).

+

QwtNullPaintDevice can be used to manipulate or filter out these informations by analyzing the stream of paint primitives.

+

F.e. QwtNullPaintDevice is used by QwtPlotCanvas to identify styled backgrounds with rounded corners.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtNullPaintDevice::QwtNullPaintDevice (QPaintEngine::PaintEngineFeatures features)
+
+
+ +

Constructor.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
QwtNullPaintDevice::QwtNullPaintDevice (const QSize & size,
QPaintEngine::PaintEngineFeatures features 
)
+
+
+ +

Constructor.

+ +
+
+ +
+
+ + + + + + + +
QwtNullPaintDevice::~QwtNullPaintDevice () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + +
void QwtNullPaintDevice::drawEllipse (const QRectF & rect) [virtual]
+
+
+ +

See QPaintEngine::drawEllipse()

+ +
+
+ +
+
+ + + + + + + + +
void QwtNullPaintDevice::drawEllipse (const QRect & rect) [virtual]
+
+
+ +

See QPaintEngine::drawEllipse()

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtNullPaintDevice::drawImage (const QRectF & rect,
const QImage & image,
const QRectF & subRect,
Qt::ImageConversionFlags flags 
) [virtual]
+
+
+ +

See QPaintEngine::drawImage()

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtNullPaintDevice::drawLines (const QLineF * lines,
int lineCount 
) [virtual]
+
+
+ +

See QPaintEngine::drawLines()

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtNullPaintDevice::drawLines (const QLine * lines,
int lineCount 
) [virtual]
+
+
+ +

See QPaintEngine::drawLines()

+ +
+
+ +
+
+ + + + + + + + +
void QwtNullPaintDevice::drawPath (const QPainterPath & path) [virtual]
+
+
+ +

See QPaintEngine::drawPath()

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtNullPaintDevice::drawPixmap (const QRectF & rect,
const QPixmap & pm,
const QRectF & subRect 
) [virtual]
+
+
+ +

See QPaintEngine::drawPixmap()

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtNullPaintDevice::drawPoints (const QPointF * points,
int pointCount 
) [virtual]
+
+
+ +

See QPaintEngine::drawPoints()

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtNullPaintDevice::drawPoints (const QPoint * points,
int pointCount 
) [virtual]
+
+
+ +

See QPaintEngine::drawPoints()

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtNullPaintDevice::drawPolygon (const QPoint * points,
int pointCount,
QPaintEngine::PolygonDrawMode mode 
) [virtual]
+
+
+ +

See QPaintEngine::drawPolygon()

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtNullPaintDevice::drawPolygon (const QPointF * points,
int pointCount,
QPaintEngine::PolygonDrawMode mode 
) [virtual]
+
+
+ +

See QPaintEngine::drawPolygon()

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtNullPaintDevice::drawRects (const QRectF * rects,
int rectCount 
) [virtual]
+
+
+ +

See QPaintEngine::drawRects()

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtNullPaintDevice::drawRects (const QRect * rects,
int rectCount 
) [virtual]
+
+
+ +

See QPaintEngine::drawRects()

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtNullPaintDevice::drawTextItem (const QPointF & pos,
const QTextItem & textItem 
) [virtual]
+
+
+ +

See QPaintEngine::drawTextItem()

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtNullPaintDevice::drawTiledPixmap (const QRectF & rect,
const QPixmap & pixmap,
const QPointF & s 
) [virtual]
+
+
+ +

See QPaintEngine::drawTiledPixmap()

+ +
+
+ +
+
+ + + + + + + + +
int QwtNullPaintDevice::metric (PaintDeviceMetric metric) const [virtual]
+
+
+

See QPaintDevice::metric()

+
See also:
setSize()
+ +
+
+ +
+
+ + + + + + + +
QPaintEngine * QwtNullPaintDevice::paintEngine () const [virtual]
+
+
+ +

See QPaintDevice::paintEngine()

+ +
+
+ +
+
+ + + + + + + + +
void QwtNullPaintDevice::setSize (const QSize & size)
+
+
+

Set the size of the paint device

+
Parameters:
+ + +
sizeSize
+
+
+
See also:
size()
+ +
+
+ +
+
+ + + + + + + +
QSize QwtNullPaintDevice::size () const
+
+
+
Returns:
Size of the paint device
+
See also:
setSize()
+ +
+
+ +
+
+ + + + + + + + +
void QwtNullPaintDevice::updateState (const QPaintEngineState & state) [virtual]
+
+
+ +

See QPaintEngine::updateState()

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_null_paint_device__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_null_paint_device__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_null_paint_device__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_null_paint_device__inherit__graph.map 2011-04-15 10:49:09.000000000 +0000 @@ -0,0 +1,2 @@ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_null_paint_device__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_null_paint_device__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_null_paint_device__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_null_paint_device__inherit__graph.md5 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1 @@ +93a5bfcab6e3ff5d39ac6cb4f0cdaa9b \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_null_paint_device__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_null_paint_device__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_null_paint_device-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_null_paint_device-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_null_paint_device-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_null_paint_device-members.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,74 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtNullPaintDevice Member List

+
+
+This is the complete list of members for QwtNullPaintDevice, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + +
drawEllipse(const QRectF &)QwtNullPaintDevice [virtual]
drawEllipse(const QRect &)QwtNullPaintDevice [virtual]
drawImage(const QRectF &, const QImage &, const QRectF &, Qt::ImageConversionFlags)QwtNullPaintDevice [virtual]
drawLines(const QLine *, int)QwtNullPaintDevice [virtual]
drawLines(const QLineF *, int)QwtNullPaintDevice [virtual]
drawPath(const QPainterPath &)QwtNullPaintDevice [virtual]
drawPixmap(const QRectF &, const QPixmap &, const QRectF &)QwtNullPaintDevice [virtual]
drawPoints(const QPointF *, int)QwtNullPaintDevice [virtual]
drawPoints(const QPoint *, int)QwtNullPaintDevice [virtual]
drawPolygon(const QPointF *, int, QPaintEngine::PolygonDrawMode)QwtNullPaintDevice [virtual]
drawPolygon(const QPoint *, int, QPaintEngine::PolygonDrawMode)QwtNullPaintDevice [virtual]
drawRects(const QRect *, int)QwtNullPaintDevice [virtual]
drawRects(const QRectF *, int)QwtNullPaintDevice [virtual]
drawTextItem(const QPointF &, const QTextItem &)QwtNullPaintDevice [virtual]
drawTiledPixmap(const QRectF &, const QPixmap &, const QPointF &s)QwtNullPaintDevice [virtual]
metric(PaintDeviceMetric metric) const QwtNullPaintDevice [virtual]
paintEngine() const QwtNullPaintDevice [virtual]
QwtNullPaintDevice(QPaintEngine::PaintEngineFeatures)QwtNullPaintDevice
QwtNullPaintDevice(const QSize &size, QPaintEngine::PaintEngineFeatures)QwtNullPaintDevice
setSize(const QSize &)QwtNullPaintDevice
size() const QwtNullPaintDevice
updateState(const QPaintEngineState &state)QwtNullPaintDevice [virtual]
~QwtNullPaintDevice()QwtNullPaintDevice [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_painter.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_painter.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_painter.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_painter.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,1194 @@ + + + + +Qwt User's Guide: QwtPainter Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPainter Class Reference

+
+
+ +

A collection of QPainter workarounds. +More...

+ +

#include <qwt_painter.h>

+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Static Public Member Functions

static void setPolylineSplitting (bool)
static bool polylineSplitting ()
static void setRoundingAlignment (bool)
static bool roundingAlignment ()
static bool roundingAlignment (QPainter *)
static void drawText (QPainter *, double x, double y, const QString &)
static void drawText (QPainter *, const QPointF &, const QString &)
static void drawText (QPainter *, double x, double y, double w, double h, int flags, const QString &)
static void drawText (QPainter *, const QRectF &, int flags, const QString &)
static void drawSimpleRichText (QPainter *, const QRectF &, int flags, const QTextDocument &)
static void drawRect (QPainter *, double x, double y, double w, double h)
static void drawRect (QPainter *, const QRectF &rect)
static void fillRect (QPainter *, const QRectF &, const QBrush &)
static void drawEllipse (QPainter *, const QRectF &)
static void drawPie (QPainter *, const QRectF &r, int a, int alen)
static void drawLine (QPainter *, double x1, double y1, double x2, double y2)
static void drawLine (QPainter *, const QPointF &p1, const QPointF &p2)
static void drawLine (QPainter *, const QLineF &)
static void drawPolygon (QPainter *, const QPolygonF &pa)
static void drawPolyline (QPainter *, const QPolygonF &pa)
static void drawPolyline (QPainter *, const QPointF *, int pointCount)
static void drawPoint (QPainter *, double x, double y)
static void drawPoint (QPainter *, const QPointF &)
static void drawPath (QPainter *, const QPainterPath &)
static void drawImage (QPainter *, const QRectF &, const QImage &)
static void drawPixmap (QPainter *, const QRectF &, const QPixmap &)
static void drawRoundedFrame (QPainter *, const QRectF &, double xRadius, double yRadius, const QPalette &, int lineWidth, int frameStyle)
static void drawFocusRect (QPainter *, QWidget *)
static void drawFocusRect (QPainter *, QWidget *, const QRect &)
static void drawColorBar (QPainter *painter, const QwtColorMap &, const QwtInterval &, const QwtScaleMap &, Qt::Orientation, const QRectF &)
static bool isAligning (QPainter *painter)
+

Detailed Description

+

A collection of QPainter workarounds.

+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPainter::drawColorBar (QPainter * painter,
const QwtColorMapcolorMap,
const QwtIntervalinterval,
const QwtScaleMapscaleMap,
Qt::Orientation orientation,
const QRectF & rect 
) [static]
+
+
+

Draw a color bar into a rectangle

+
Parameters:
+ + + + + + + +
painterPainter
colorMapColor map
intervalValue range
scaleMapScale map
orientationOrientation
rectTraget rectangle
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPainter::drawEllipse (QPainter * painter,
const QRectF & rect 
) [static]
+
+
+ +

Wrapper for QPainter::drawEllipse()

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPainter::drawFocusRect (QPainter * painter,
QWidget * widget 
) [static]
+
+
+ +

Draw a focus rectangle on a widget using its style.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPainter::drawFocusRect (QPainter * painter,
QWidget * widget,
const QRect & rect 
) [static]
+
+
+ +

Draw a focus rectangle on a widget using its style.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPainter::drawImage (QPainter * painter,
const QRectF & rect,
const QImage & image 
) [static]
+
+
+ +

Wrapper for QPainter::drawImage()

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPainter::drawLine (QPainter * painter,
double x1,
double y1,
double x2,
double y2 
) [inline, static]
+
+
+ +

Wrapper for QPainter::drawLine()

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPainter::drawLine (QPainter * painter,
const QPointF & p1,
const QPointF & p2 
) [static]
+
+
+ +

Wrapper for QPainter::drawLine()

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPainter::drawLine (QPainter * painter,
const QLineF & line 
) [inline, static]
+
+
+ +

Wrapper for QPainter::drawLine()

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPainter::drawPath (QPainter * painter,
const QPainterPath & path 
) [static]
+
+
+ +

Wrapper for QPainter::drawPath()

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPainter::drawPie (QPainter * painter,
const QRectF & r,
int a,
int alen 
) [static]
+
+
+ +

Wrapper for QPainter::drawPie()

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPainter::drawPixmap (QPainter * painter,
const QRectF & rect,
const QPixmap & pixmap 
) [static]
+
+
+ +

Wrapper for QPainter::drawPixmap()

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPainter::drawPoint (QPainter * painter,
double x,
double y 
) [inline, static]
+
+
+ +

Wrapper for QPainter::drawPoint()

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPainter::drawPoint (QPainter * painter,
const QPointF & pos 
) [static]
+
+
+ +

Wrapper for QPainter::drawPoint()

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPainter::drawPolygon (QPainter * painter,
const QPolygonF & pa 
) [static]
+
+
+ +

Wrapper for QPainter::drawPolygon()

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPainter::drawPolyline (QPainter * painter,
const QPointF * points,
int pointCount 
) [static]
+
+
+ +

Wrapper for QPainter::drawPolyline()

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPainter::drawPolyline (QPainter * painter,
const QPolygonF & pa 
) [static]
+
+
+ +

Wrapper for QPainter::drawPolyline()

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPainter::drawRect (QPainter * painter,
double x,
double y,
double w,
double h 
) [static]
+
+
+ +

Wrapper for QPainter::drawRect()

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPainter::drawRect (QPainter * painter,
const QRectF & rect 
) [static]
+
+
+ +

Wrapper for QPainter::drawRect()

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPainter::drawRoundedFrame (QPainter * painter,
const QRectF & rect,
double xRadius,
double yRadius,
const QPalette & palette,
int lineWidth,
int frameStyle 
) [static]
+
+
+

Draw a frame with rounded borders

+
Parameters:
+ + + + + + + + +
painterPainter
rectFrame rectangle
xRadiusx-radius of the ellipses defining the corners
yRadiusy-radius of the ellipses defining the corners
paletteQPalette::WindowText is used for plain borders QPalette::Dark and QPalette::Light for raised or sunken borders
lineWidthLine width
frameStylebitwise OR´ed value of QFrame::Shape and QFrame::Shadow
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPainter::drawSimpleRichText (QPainter * painter,
const QRectF & rect,
int flags,
const QTextDocument & text 
) [static]
+
+
+

Draw a text document into a rectangle

+
Parameters:
+ + + + + +
painterPainter
rectTraget rectangle
flagsAlignments/Text flags, see QPainter::drawText()
textText document
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPainter::drawText (QPainter * painter,
const QRectF & rect,
int flags,
const QString & text 
) [static]
+
+
+ +

Wrapper for QPainter::drawText()

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPainter::drawText (QPainter * painter,
double x,
double y,
const QString & text 
) [static]
+
+
+ +

Wrapper for QPainter::drawText()

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPainter::drawText (QPainter * painter,
const QPointF & pos,
const QString & text 
) [static]
+
+
+ +

Wrapper for QPainter::drawText()

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPainter::drawText (QPainter * painter,
double x,
double y,
double w,
double h,
int flags,
const QString & text 
) [static]
+
+
+ +

Wrapper for QPainter::drawText()

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPainter::fillRect (QPainter * painter,
const QRectF & rect,
const QBrush & brush 
) [static]
+
+
+ +

Wrapper for QPainter::fillRect()

+ +
+
+ +
+
+ + + + + + + + +
bool QwtPainter::isAligning (QPainter * painter) [static]
+
+
+

Check if the painter is using a paint engine, that aligns coordinates to integers. Today these are all paint engines beside QPaintEngine::Pdf and QPaintEngine::SVG.

+
Parameters:
+ + +
painterPainter
+
+
+
Returns:
true, when the paint engine is aligning
+
See also:
setRoundingAlignment()
+ +
+
+ +
+
+ + + + + + + +
bool QwtPainter::polylineSplitting () [inline, static]
+
+
+

Returns whether line splitting for the raster paint engine is enabled.

+
See also:
setPolylineSplitting()
+ +
+
+ +
+
+ + + + + + + +
bool QwtPainter::roundingAlignment () [inline, static]
+
+
+

Returns whether coordinates should be rounded, before they are painted to a paint engine that floors to integer values. For other paint engines this ( Pdf, SVG ), this flag has no effect.

+
See also:
setRoundingAlignment(), isAligning()
+ +
+
+ +
+
+ + + + + + + + +
bool QwtPainter::roundingAlignment (QPainter * painter) [inline, static]
+
+
+
Returns:
roundingAlignment() && isAligning(painter);
+
Parameters:
+ + +
painterPainter
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtPainter::setPolylineSplitting (bool enable) [static]
+
+
+ +

En/Disable line splitting for the raster paint engine.

+

The raster paint engine paints polylines of many points much faster when they are splitted in smaller chunks.

+
See also:
polylineSplitting()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPainter::setRoundingAlignment (bool enable) [static]
+
+
+

Enable whether coordinates should be rounded, before they are painted to a paint engine that floors to integer values. For other paint engines this ( Pdf, SVG ), this flag has no effect. QwtPainter stores this flag only, the rounding itsself is done in the painting code ( f.e the plot items ).

+

The default setting is true.

+
See also:
roundingAlignment(), isAligning()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_painter-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_painter-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_painter-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_painter-members.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,82 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPainter Member List

+
+
+This is the complete list of members for QwtPainter, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
drawColorBar(QPainter *painter, const QwtColorMap &, const QwtInterval &, const QwtScaleMap &, Qt::Orientation, const QRectF &)QwtPainter [static]
drawEllipse(QPainter *, const QRectF &)QwtPainter [static]
drawFocusRect(QPainter *, QWidget *)QwtPainter [static]
drawFocusRect(QPainter *, QWidget *, const QRect &)QwtPainter [static]
drawImage(QPainter *, const QRectF &, const QImage &)QwtPainter [static]
drawLine(QPainter *, double x1, double y1, double x2, double y2)QwtPainter [inline, static]
drawLine(QPainter *, const QPointF &p1, const QPointF &p2)QwtPainter [static]
drawLine(QPainter *, const QLineF &)QwtPainter [inline, static]
drawPath(QPainter *, const QPainterPath &)QwtPainter [static]
drawPie(QPainter *, const QRectF &r, int a, int alen)QwtPainter [static]
drawPixmap(QPainter *, const QRectF &, const QPixmap &)QwtPainter [static]
drawPoint(QPainter *, double x, double y)QwtPainter [inline, static]
drawPoint(QPainter *, const QPointF &)QwtPainter [static]
drawPolygon(QPainter *, const QPolygonF &pa)QwtPainter [static]
drawPolyline(QPainter *, const QPolygonF &pa)QwtPainter [static]
drawPolyline(QPainter *, const QPointF *, int pointCount)QwtPainter [static]
drawRect(QPainter *, double x, double y, double w, double h)QwtPainter [static]
drawRect(QPainter *, const QRectF &rect)QwtPainter [static]
drawRoundedFrame(QPainter *, const QRectF &, double xRadius, double yRadius, const QPalette &, int lineWidth, int frameStyle)QwtPainter [static]
drawSimpleRichText(QPainter *, const QRectF &, int flags, const QTextDocument &)QwtPainter [static]
drawText(QPainter *, double x, double y, const QString &)QwtPainter [static]
drawText(QPainter *, const QPointF &, const QString &)QwtPainter [static]
drawText(QPainter *, double x, double y, double w, double h, int flags, const QString &)QwtPainter [static]
drawText(QPainter *, const QRectF &, int flags, const QString &)QwtPainter [static]
fillRect(QPainter *, const QRectF &, const QBrush &)QwtPainter [static]
isAligning(QPainter *painter)QwtPainter [static]
polylineSplitting()QwtPainter [inline, static]
roundingAlignment()QwtPainter [inline, static]
roundingAlignment(QPainter *)QwtPainter [inline, static]
setPolylineSplitting(bool)QwtPainter [static]
setRoundingAlignment(bool)QwtPainter [static]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_panner.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_panner.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_panner.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_panner.html 2011-04-15 10:49:23.000000000 +0000 @@ -0,0 +1,699 @@ + + + + +Qwt User's Guide: QwtPanner Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPanner Class Reference

+
+
+ +

QwtPanner provides panning of a widget. +More...

+ +

#include <qwt_panner.h>

+
+Inheritance diagram for QwtPanner:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Signals

void panned (int dx, int dy)
void moved (int dx, int dy)

+Public Member Functions

 QwtPanner (QWidget *parent)
virtual ~QwtPanner ()
void setEnabled (bool)
bool isEnabled () const
void setMouseButton (int button, int buttonState=Qt::NoButton)
void getMouseButton (int &button, int &buttonState) const
void setAbortKey (int key, int state=Qt::NoButton)
void getAbortKey (int &key, int &state) const
void setCursor (const QCursor &)
const QCursor cursor () const
void setOrientations (Qt::Orientations)
Qt::Orientations orientations () const
bool isOrientationEnabled (Qt::Orientation) const
virtual bool eventFilter (QObject *, QEvent *)

+Protected Member Functions

virtual void widgetMousePressEvent (QMouseEvent *)
virtual void widgetMouseReleaseEvent (QMouseEvent *)
virtual void widgetMouseMoveEvent (QMouseEvent *)
virtual void widgetKeyPressEvent (QKeyEvent *)
virtual void widgetKeyReleaseEvent (QKeyEvent *)
virtual void paintEvent (QPaintEvent *)
virtual QBitmap contentsMask () const
virtual QPixmap grab () const
+

Detailed Description

+

QwtPanner provides panning of a widget.

+

QwtPanner grabs the contents of a widget, that can be dragged in all directions. The offset between the start and the end position is emitted by the panned signal.

+

QwtPanner grabs the content of the widget into a pixmap and moves the pixmap around, without initiating any repaint events for the widget. Areas, that are not part of content are not painted while panning. This makes panning fast enough for widgets, where repaints are too slow for mouse movements.

+

For widgets, where repaints are very fast it might be better to implement panning manually by mapping mouse events into paint events.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtPanner::QwtPanner (QWidget * parent)
+
+
+

Creates an panner that is enabled for the left mouse button.

+
Parameters:
+ + +
parentParent widget to be panned
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtPanner::~QwtPanner () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
QBitmap QwtPanner::contentsMask () const [protected, virtual]
+
+
+ +

Calculate a mask for the contents of the panned widget.

+

Sometimes only parts of the contents of a widget should be panned. F.e. for a widget with a styled background with rounded borders only the area inside of the border should be panned.

+
Returns:
An empty bitmap, indicating no mask
+ +

Reimplemented in QwtPlotPanner.

+ +
+
+ +
+
+ + + + + + + +
const QCursor QwtPanner::cursor () const
+
+
+
Returns:
Cursor that is active while panning
+
See also:
setCursor()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
bool QwtPanner::eventFilter (QObject * o,
QEvent * e 
) [virtual]
+
+
+ +

Event filter.

+

When isEnabled() the mouse events of the observed widget are filtered.

+
See also:
widgetMousePressEvent(), widgetMouseReleaseEvent(), widgetMouseMoveEvent()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPanner::getAbortKey (int & key,
int & state 
) const
+
+
+ +

Get the abort key.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPanner::getMouseButton (int & button,
int & buttonState 
) const
+
+
+ +

Get the mouse button.

+ +
+
+ +
+
+ + + + + + + +
QPixmap QwtPanner::grab () const [protected, virtual]
+
+
+

Grab the widget into a pixmap.

+ +
+
+ +
+
+ + + + + + + +
bool QwtPanner::isEnabled () const
+
+
+
Returns:
true when enabled, false otherwise
+
See also:
setEnabled, eventFilter()
+ +
+
+ +
+
+ + + + + + + + +
bool QwtPanner::isOrientationEnabled (Qt::Orientation o) const
+
+
+

Return true if a orientatio is enabled

+
See also:
orientations(), setOrientations()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPanner::moved (int dx,
int dy 
) [signal]
+
+
+

Signal emitted, while the widget moved, but panning is not finished.

+
Parameters:
+ + + +
dxOffset in horizontal direction
dyOffset in vertical direction
+
+
+ +
+
+ +
+
+ + + + + + + +
Qt::Orientations QwtPanner::orientations () const
+
+
+ +

Return the orientation, where paning is enabled.

+ +
+
+ +
+
+ + + + + + + + +
void QwtPanner::paintEvent (QPaintEvent * pe) [protected, virtual]
+
+
+ +

Paint event.

+

Repaint the grabbed pixmap on its current position and fill the empty spaces by the background of the parent widget.

+
Parameters:
+ + +
pePaint event
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPanner::panned (int dx,
int dy 
) [signal]
+
+
+

Signal emitted, when panning is done

+
Parameters:
+ + + +
dxOffset in horizontal direction
dyOffset in vertical direction
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPanner::setAbortKey (int key,
int state = Qt::NoButton 
)
+
+
+

Change the abort key The defaults are Qt::Key_Escape and Qt::NoButton

+
Parameters:
+ + + +
keyKey ( See Qt::Keycode )
stateState
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtPanner::setCursor (const QCursor & cursor)
+
+
+

Change the cursor, that is active while panning The default is the cursor of the parent widget.

+
Parameters:
+ + +
cursorNew cursor
+
+
+
See also:
setCursor()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPanner::setEnabled (bool on)
+
+
+ +

En/disable the panner.

+

When enabled is true an event filter is installed for the observed widget, otherwise the event filter is removed.

+
Parameters:
+ + +
ontrue or false
+
+
+
See also:
isEnabled(), eventFilter()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPanner::setMouseButton (int button,
int buttonState = Qt::NoButton 
)
+
+
+

Change the mouse button The defaults are Qt::LeftButton and Qt::NoButton

+ +
+
+ +
+
+ + + + + + + + +
void QwtPanner::setOrientations (Qt::Orientations o)
+
+
+

Set the orientations, where panning is enabled The default value is in both directions: Qt::Horizontal | Qt::Vertical

+

/param o Orientation

+ +
+
+ +
+
+ + + + + + + + +
void QwtPanner::widgetKeyPressEvent (QKeyEvent * ke) [protected, virtual]
+
+
+

Handle a key press event for the observed widget.

+
Parameters:
+ + +
keKey event
+
+
+
See also:
eventFilter(), widgetKeyReleaseEvent()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPanner::widgetKeyReleaseEvent (QKeyEvent * ) [protected, virtual]
+
+
+

Handle a key release event for the observed widget.

+
See also:
eventFilter(), widgetKeyReleaseEvent()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPanner::widgetMouseMoveEvent (QMouseEvent * me) [protected, virtual]
+
+
+

Handle a mouse move event for the observed widget.

+
Parameters:
+ + +
meMouse event
+
+
+
See also:
eventFilter(), widgetMousePressEvent(), widgetMouseReleaseEvent()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPanner::widgetMousePressEvent (QMouseEvent * me) [protected, virtual]
+
+
+

Handle a mouse press event for the observed widget.

+
Parameters:
+ + +
meMouse event
+
+
+
See also:
eventFilter(), widgetMouseReleaseEvent(), widgetMouseMoveEvent(),
+ +
+
+ +
+
+ + + + + + + + +
void QwtPanner::widgetMouseReleaseEvent (QMouseEvent * me) [protected, virtual]
+
+
+

Handle a mouse release event for the observed widget.

+
Parameters:
+ + +
meMouse event
+
+
+
See also:
eventFilter(), widgetMousePressEvent(), widgetMouseMoveEvent(),
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_panner__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_panner__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_panner__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_panner__inherit__graph.map 2011-04-15 10:49:09.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_panner__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_panner__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_panner__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_panner__inherit__graph.md5 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1 @@ +0997f785ecf97a8b795493df6807e211 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_panner__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_panner__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_panner-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_panner-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_panner-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_panner-members.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,75 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPanner Member List

+
+
+This is the complete list of members for QwtPanner, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + +
contentsMask() const QwtPanner [protected, virtual]
cursor() const QwtPanner
eventFilter(QObject *, QEvent *)QwtPanner [virtual]
getAbortKey(int &key, int &state) const QwtPanner
getMouseButton(int &button, int &buttonState) const QwtPanner
grab() const QwtPanner [protected, virtual]
isEnabled() const QwtPanner
isOrientationEnabled(Qt::Orientation) const QwtPanner
moved(int dx, int dy)QwtPanner [signal]
orientations() const QwtPanner
paintEvent(QPaintEvent *)QwtPanner [protected, virtual]
panned(int dx, int dy)QwtPanner [signal]
QwtPanner(QWidget *parent)QwtPanner
setAbortKey(int key, int state=Qt::NoButton)QwtPanner
setCursor(const QCursor &)QwtPanner
setEnabled(bool)QwtPanner
setMouseButton(int button, int buttonState=Qt::NoButton)QwtPanner
setOrientations(Qt::Orientations)QwtPanner
widgetKeyPressEvent(QKeyEvent *)QwtPanner [protected, virtual]
widgetKeyReleaseEvent(QKeyEvent *)QwtPanner [protected, virtual]
widgetMouseMoveEvent(QMouseEvent *)QwtPanner [protected, virtual]
widgetMousePressEvent(QMouseEvent *)QwtPanner [protected, virtual]
widgetMouseReleaseEvent(QMouseEvent *)QwtPanner [protected, virtual]
~QwtPanner()QwtPanner [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_point_machine.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_point_machine.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_point_machine.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_point_machine.html 2011-04-15 10:49:23.000000000 +0000 @@ -0,0 +1,127 @@ + + + + +Qwt User's Guide: QwtPickerClickPointMachine Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPickerClickPointMachine Class Reference

+
+
+ +

A state machine for point selections. +More...

+ +

#include <qwt_picker_machine.h>

+
+Inheritance diagram for QwtPickerClickPointMachine:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + +

+Public Member Functions

 QwtPickerClickPointMachine ()
virtual QList< Commandtransition (const QwtEventPattern &, const QEvent *)
+

Detailed Description

+

A state machine for point selections.

+

Pressing QwtEventPattern::MouseSelect1 or QwtEventPattern::KeySelect1 selects a point.

+
See also:
QwtEventPattern::MousePatternCode, QwtEventPattern::KeyPatternCode
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtPickerClickPointMachine::QwtPickerClickPointMachine ()
+
+
+ +

Constructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
QList< QwtPickerMachine::Command > QwtPickerClickPointMachine::transition (const QwtEventPatterneventPattern,
const QEvent * e 
) [virtual]
+
+
+ +

Transition.

+ +

Implements QwtPickerMachine.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_point_machine__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_point_machine__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_point_machine__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_point_machine__inherit__graph.map 2011-04-15 10:49:09.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_point_machine__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_point_machine__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_point_machine__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_point_machine__inherit__graph.md5 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1 @@ +fafcfffb9d1e2f81274d6db582144694 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_point_machine__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_point_machine__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_point_machine-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_point_machine-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_point_machine-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_point_machine-members.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,70 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPickerClickPointMachine Member List

+
+
+This is the complete list of members for QwtPickerClickPointMachine, including all inherited members. + + + + + + + + + + + + + + + + + + + +
Append enum value (defined in QwtPickerMachine)QwtPickerMachine
Begin enum value (defined in QwtPickerMachine)QwtPickerMachine
Command enum nameQwtPickerMachine
End enum value (defined in QwtPickerMachine)QwtPickerMachine
Move enum value (defined in QwtPickerMachine)QwtPickerMachine
NoSelection enum valueQwtPickerMachine
PointSelection enum valueQwtPickerMachine
PolygonSelection enum valueQwtPickerMachine
QwtPickerClickPointMachine()QwtPickerClickPointMachine
QwtPickerMachine(SelectionType)QwtPickerMachine
RectSelection enum valueQwtPickerMachine
Remove enum value (defined in QwtPickerMachine)QwtPickerMachine
reset()QwtPickerMachine
selectionType() const QwtPickerMachine
SelectionType enum nameQwtPickerMachine
setState(int)QwtPickerMachine
state() const QwtPickerMachine
transition(const QwtEventPattern &, const QEvent *)QwtPickerClickPointMachine [virtual]
~QwtPickerMachine()QwtPickerMachine [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_rect_machine.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_rect_machine.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_rect_machine.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_rect_machine.html 2011-04-15 10:49:23.000000000 +0000 @@ -0,0 +1,127 @@ + + + + +Qwt User's Guide: QwtPickerClickRectMachine Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPickerClickRectMachine Class Reference

+
+
+ +

A state machine for rectangle selections. +More...

+ +

#include <qwt_picker_machine.h>

+
+Inheritance diagram for QwtPickerClickRectMachine:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + +

+Public Member Functions

 QwtPickerClickRectMachine ()
virtual QList< Commandtransition (const QwtEventPattern &, const QEvent *)
+

Detailed Description

+

A state machine for rectangle selections.

+

Pressing QwtEventPattern::MouseSelect1 starts the selection, releasing it selects the first point. Pressing it again selects the second point and terminates the selection. Pressing QwtEventPattern::KeySelect1 also starts the selection, a second press selects the first point. A third one selects the second point and terminates the selection.

+
See also:
QwtEventPattern::MousePatternCode, QwtEventPattern::KeyPatternCode
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtPickerClickRectMachine::QwtPickerClickRectMachine ()
+
+
+ +

Constructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
QList< QwtPickerMachine::Command > QwtPickerClickRectMachine::transition (const QwtEventPatterneventPattern,
const QEvent * e 
) [virtual]
+
+
+ +

Transition.

+ +

Implements QwtPickerMachine.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_rect_machine__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_rect_machine__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_rect_machine__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_rect_machine__inherit__graph.map 2011-04-15 10:49:09.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_rect_machine__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_rect_machine__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_rect_machine__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_rect_machine__inherit__graph.md5 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1 @@ +fe9e0858ef5fc9e206370e03f1563b0d \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_rect_machine__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_rect_machine__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_rect_machine-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_rect_machine-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_rect_machine-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_click_rect_machine-members.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,70 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPickerClickRectMachine Member List

+
+
+This is the complete list of members for QwtPickerClickRectMachine, including all inherited members. + + + + + + + + + + + + + + + + + + + +
Append enum value (defined in QwtPickerMachine)QwtPickerMachine
Begin enum value (defined in QwtPickerMachine)QwtPickerMachine
Command enum nameQwtPickerMachine
End enum value (defined in QwtPickerMachine)QwtPickerMachine
Move enum value (defined in QwtPickerMachine)QwtPickerMachine
NoSelection enum valueQwtPickerMachine
PointSelection enum valueQwtPickerMachine
PolygonSelection enum valueQwtPickerMachine
QwtPickerClickRectMachine()QwtPickerClickRectMachine
QwtPickerMachine(SelectionType)QwtPickerMachine
RectSelection enum valueQwtPickerMachine
Remove enum value (defined in QwtPickerMachine)QwtPickerMachine
reset()QwtPickerMachine
selectionType() const QwtPickerMachine
SelectionType enum nameQwtPickerMachine
setState(int)QwtPickerMachine
state() const QwtPickerMachine
transition(const QwtEventPattern &, const QEvent *)QwtPickerClickRectMachine [virtual]
~QwtPickerMachine()QwtPickerMachine [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_point_machine.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_point_machine.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_point_machine.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_point_machine.html 2011-04-15 10:49:23.000000000 +0000 @@ -0,0 +1,126 @@ + + + + +Qwt User's Guide: QwtPickerDragPointMachine Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPickerDragPointMachine Class Reference

+
+
+ +

A state machine for point selections. +More...

+ +

#include <qwt_picker_machine.h>

+
+Inheritance diagram for QwtPickerDragPointMachine:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + +

+Public Member Functions

 QwtPickerDragPointMachine ()
virtual QList< Commandtransition (const QwtEventPattern &, const QEvent *)
+

Detailed Description

+

A state machine for point selections.

+

Pressing QwtEventPattern::MouseSelect1 or QwtEventPattern::KeySelect1 starts the selection, releasing QwtEventPattern::MouseSelect1 or a second press of QwtEventPattern::KeySelect1 terminates it.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtPickerDragPointMachine::QwtPickerDragPointMachine ()
+
+
+ +

Constructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
QList< QwtPickerMachine::Command > QwtPickerDragPointMachine::transition (const QwtEventPatterneventPattern,
const QEvent * e 
) [virtual]
+
+
+ +

Transition.

+ +

Implements QwtPickerMachine.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_point_machine__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_point_machine__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_point_machine__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_point_machine__inherit__graph.map 2011-04-15 10:49:09.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_point_machine__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_point_machine__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_point_machine__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_point_machine__inherit__graph.md5 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1 @@ +32545b3ff96e0e78cd76ad5c6a0f994f \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_point_machine__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_point_machine__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_point_machine-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_point_machine-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_point_machine-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_point_machine-members.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,70 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPickerDragPointMachine Member List

+
+
+This is the complete list of members for QwtPickerDragPointMachine, including all inherited members. + + + + + + + + + + + + + + + + + + + +
Append enum value (defined in QwtPickerMachine)QwtPickerMachine
Begin enum value (defined in QwtPickerMachine)QwtPickerMachine
Command enum nameQwtPickerMachine
End enum value (defined in QwtPickerMachine)QwtPickerMachine
Move enum value (defined in QwtPickerMachine)QwtPickerMachine
NoSelection enum valueQwtPickerMachine
PointSelection enum valueQwtPickerMachine
PolygonSelection enum valueQwtPickerMachine
QwtPickerDragPointMachine()QwtPickerDragPointMachine
QwtPickerMachine(SelectionType)QwtPickerMachine
RectSelection enum valueQwtPickerMachine
Remove enum value (defined in QwtPickerMachine)QwtPickerMachine
reset()QwtPickerMachine
selectionType() const QwtPickerMachine
SelectionType enum nameQwtPickerMachine
setState(int)QwtPickerMachine
state() const QwtPickerMachine
transition(const QwtEventPattern &, const QEvent *)QwtPickerDragPointMachine [virtual]
~QwtPickerMachine()QwtPickerMachine [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_rect_machine.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_rect_machine.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_rect_machine.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_rect_machine.html 2011-04-15 10:49:23.000000000 +0000 @@ -0,0 +1,127 @@ + + + + +Qwt User's Guide: QwtPickerDragRectMachine Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPickerDragRectMachine Class Reference

+
+
+ +

A state machine for rectangle selections. +More...

+ +

#include <qwt_picker_machine.h>

+
+Inheritance diagram for QwtPickerDragRectMachine:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + +

+Public Member Functions

 QwtPickerDragRectMachine ()
virtual QList< Commandtransition (const QwtEventPattern &, const QEvent *)
+

Detailed Description

+

A state machine for rectangle selections.

+

Pressing QwtEventPattern::MouseSelect1 selects the first point, releasing it the second point. Pressing QwtEventPattern::KeySelect1 also selects the first point, a second press selects the second point and terminates the selection.

+
See also:
QwtEventPattern::MousePatternCode, QwtEventPattern::KeyPatternCode
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtPickerDragRectMachine::QwtPickerDragRectMachine ()
+
+
+ +

Constructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
QList< QwtPickerMachine::Command > QwtPickerDragRectMachine::transition (const QwtEventPatterneventPattern,
const QEvent * e 
) [virtual]
+
+
+ +

Transition.

+ +

Implements QwtPickerMachine.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_rect_machine__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_rect_machine__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_rect_machine__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_rect_machine__inherit__graph.map 2011-04-15 10:49:09.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_rect_machine__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_rect_machine__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_rect_machine__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_rect_machine__inherit__graph.md5 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1 @@ +327557c271a00150d05e699da64d259e \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_rect_machine__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_rect_machine__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_rect_machine-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_rect_machine-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_rect_machine-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_drag_rect_machine-members.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,70 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPickerDragRectMachine Member List

+
+
+This is the complete list of members for QwtPickerDragRectMachine, including all inherited members. + + + + + + + + + + + + + + + + + + + +
Append enum value (defined in QwtPickerMachine)QwtPickerMachine
Begin enum value (defined in QwtPickerMachine)QwtPickerMachine
Command enum nameQwtPickerMachine
End enum value (defined in QwtPickerMachine)QwtPickerMachine
Move enum value (defined in QwtPickerMachine)QwtPickerMachine
NoSelection enum valueQwtPickerMachine
PointSelection enum valueQwtPickerMachine
PolygonSelection enum valueQwtPickerMachine
QwtPickerDragRectMachine()QwtPickerDragRectMachine
QwtPickerMachine(SelectionType)QwtPickerMachine
RectSelection enum valueQwtPickerMachine
Remove enum value (defined in QwtPickerMachine)QwtPickerMachine
reset()QwtPickerMachine
selectionType() const QwtPickerMachine
SelectionType enum nameQwtPickerMachine
setState(int)QwtPickerMachine
state() const QwtPickerMachine
transition(const QwtEventPattern &, const QEvent *)QwtPickerDragRectMachine [virtual]
~QwtPickerMachine()QwtPickerMachine [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker.html 2011-04-15 10:49:23.000000000 +0000 @@ -0,0 +1,1683 @@ + + + + +Qwt User's Guide: QwtPicker Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+ +
+ +

QwtPicker provides selections on a widget. +More...

+ +

#include <qwt_picker.h>

+
+Inheritance diagram for QwtPicker:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Types

enum  RubberBand {
+  NoRubberBand = 0, +
+  HLineRubberBand, +
+  VLineRubberBand, +
+  CrossRubberBand, +
+  RectRubberBand, +
+  EllipseRubberBand, +
+  PolygonRubberBand, +
+  UserRubberBand = 100 +
+ }
enum  DisplayMode {
+  AlwaysOff, +
+  AlwaysOn, +
+  ActiveOnly +
+ }
enum  ResizeMode {
+  Stretch, +
+  KeepSize +
+ }

+Public Slots

void setEnabled (bool)

+Signals

void activated (bool on)
void selected (const QPolygon &polygon)
void appended (const QPoint &pos)
void moved (const QPoint &pos)
void removed (const QPoint &pos)
void changed (const QPolygon &selection)

+Public Member Functions

 QwtPicker (QWidget *parent)
 QwtPicker (RubberBand rubberBand, DisplayMode trackerMode, QWidget *)
virtual ~QwtPicker ()
void setStateMachine (QwtPickerMachine *)
const QwtPickerMachinestateMachine () const
QwtPickerMachinestateMachine ()
void setRubberBand (RubberBand)
RubberBand rubberBand () const
void setTrackerMode (DisplayMode)
DisplayMode trackerMode () const
void setResizeMode (ResizeMode)
ResizeMode resizeMode () const
void setRubberBandPen (const QPen &)
QPen rubberBandPen () const
void setTrackerPen (const QPen &)
QPen trackerPen () const
void setTrackerFont (const QFont &)
QFont trackerFont () const
bool isEnabled () const
bool isActive () const
virtual bool eventFilter (QObject *, QEvent *)
QWidget * parentWidget ()
const QWidget * parentWidget () const
virtual QRect pickRect () const
virtual void drawRubberBand (QPainter *) const
virtual void drawTracker (QPainter *) const
virtual QwtText trackerText (const QPoint &pos) const
QPoint trackerPosition () const
virtual QRect trackerRect (const QFont &) const
QPolygon selection () const

+Protected Member Functions

virtual QPolygon adjustedPoints (const QPolygon &) const
virtual void transition (const QEvent *)
virtual void begin ()
virtual void append (const QPoint &)
virtual void move (const QPoint &)
virtual void remove ()
virtual bool end (bool ok=true)
virtual bool accept (QPolygon &) const
virtual void reset ()
virtual void widgetMousePressEvent (QMouseEvent *)
virtual void widgetMouseReleaseEvent (QMouseEvent *)
virtual void widgetMouseDoubleClickEvent (QMouseEvent *)
virtual void widgetMouseMoveEvent (QMouseEvent *)
virtual void widgetWheelEvent (QWheelEvent *)
virtual void widgetKeyPressEvent (QKeyEvent *)
virtual void widgetKeyReleaseEvent (QKeyEvent *)
virtual void widgetEnterEvent (QEvent *)
virtual void widgetLeaveEvent (QEvent *)
virtual void stretchSelection (const QSize &oldSize, const QSize &newSize)
virtual void updateDisplay ()
const QWidget * rubberBandWidget () const
const QWidget * trackerWidget () const
const QPolygon & pickedPoints () const
+

Detailed Description

+

QwtPicker provides selections on a widget.

+

QwtPicker filters all enter, leave, mouse and keyboard events of a widget and translates them into an array of selected points.

+

The way how the points are collected depends on type of state machine that is connected to the picker. Qwt offers a couple of predefined state machines for selecting:

+ +

While these state machines cover the most common ways to collect points it is also possible to implement individual machines as well.

+

QwtPicker translates the picked points into a selection using the adjustedPoints method. adjustedPoints is intended to be reimplemented to fixup the selection according to application specific requirements. (F.e. when an application accepts rectangles of a fixed aspect ratio only.)

+

Optionally QwtPicker support the process of collecting points by a rubberband and tracker displaying a text for the current mouse position.

+
Example
#include <qwt_picker.h>
+#include <qwt_picker_machine.h>
+
+QwtPicker *picker = new QwtPicker(widget);
+picker->setStateMachine(new QwtPickerDragRectMachine);
+picker->setTrackerMode(QwtPicker::ActiveOnly);
+picker->setRubberBand(QwtPicker::RectRubberBand); 

+
+

The state machine triggers the following commands:

+
    +
  • begin()
    + Activate/Initialize the selection.
  • +
  • append()
    + Add a new point
  • +
  • move()
    + Change the position of the last point.
  • +
  • remove()
    + Remove the last point.
  • +
  • end()
    + Terminate the selection and call accept to validate the picked points.
  • +
+

The picker is active (isActive()), between begin() and end(). In active state the rubberband is displayed, and the tracker is visible in case of trackerMode is ActiveOnly or AlwaysOn.

+

The cursor can be moved using the arrow keys. All selections can be aborted using the abort key. (QwtEventPattern::KeyPatternCode)

+
Warning:
In case of QWidget::NoFocus the focus policy of the observed widget is set to QWidget::WheelFocus and mouse tracking will be manipulated while the picker is active, or if trackerMode() is AlwayOn.
+

Member Enumeration Documentation

+ +
+
+ + + + +
enum QwtPicker::DisplayMode
+
+
+ +

Display mode.

+
See also:
setTrackerMode(), trackerMode(), isActive()
+
Enumerator:
+ + + +
AlwaysOff  +

Display never.

+
AlwaysOn  +

Display always.

+
ActiveOnly  +

Display only when the selection is active.

+
+
+
+ +
+
+ +
+
+ + + + +
enum QwtPicker::ResizeMode
+
+
+

Controls what to do with the selected points of an active selection when the observed widget is resized.

+

The default value is QwtPicker::Stretch.

+
See also:
setResizeMode()
+
Enumerator:
+ + +
Stretch  +

All points are scaled according to the new size,.

+
KeepSize  +

All points remain unchanged.

+
+
+
+ +
+
+ +
+
+ + + + +
enum QwtPicker::RubberBand
+
+
+

Rubberband style

+

The default value is QwtPicker::NoRubberBand.

+
See also:
setRubberBand(), rubberBand()
+
Enumerator:
+ + + + + + + + +
NoRubberBand  +

No rubberband.

+
HLineRubberBand  +

A horizontal line ( only for QwtPicker::PointSelection )

+
VLineRubberBand  +

A vertical line ( only for QwtPicker::PointSelection )

+
CrossRubberBand  +

A crosshair ( only for QwtPicker::PointSelection )

+
RectRubberBand  +

A rectangle ( only for QwtPicker::RectSelection )

+
EllipseRubberBand  +

An ellipse ( only for QwtPicker::RectSelection )

+
PolygonRubberBand  +

A polygon ( only for QwtPicker::&PolygonSelection )

+
UserRubberBand  +

Values >= UserRubberBand can be used to define additional rubber bands.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtPicker::QwtPicker (QWidget * parent) [explicit]
+
+
+

Constructor

+

Creates an picker that is enabled, but without a state machine. rubberband and tracker are disabled.

+
Parameters:
+ + +
parentParent widget, that will be observed
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
QwtPicker::QwtPicker (RubberBand rubberBand,
DisplayMode trackerMode,
QWidget * parent 
) [explicit]
+
+
+

Constructor

+
Parameters:
+ + + + +
rubberBandRubberband style
trackerModeTracker mode
parentParent widget, that will be observed
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtPicker::~QwtPicker () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + +
bool QwtPicker::accept (QPolygon & selection) const [protected, virtual]
+
+
+ +

Validate and fixup the selection.

+

Accepts all selections unmodified

+
Parameters:
+ + +
selectionSelection to validate and fixup
+
+
+
Returns:
true, when accepted, false otherwise
+ +

Reimplemented in QwtPlotZoomer.

+ +
+
+ +
+
+ + + + + + + + +
void QwtPicker::activated (bool on) [signal]
+
+
+

A signal indicating, when the picker has been activated. Together with setEnabled() it can be used to implement selections with more than one picker.

+
Parameters:
+ + +
onTrue, when the picker has been activated
+
+
+ +
+
+ +
+
+ + + + + + + + +
QPolygon QwtPicker::adjustedPoints (const QPolygon & points) const [protected, virtual]
+
+
+ +

Map the pickedPoints() into a selection()

+

adjustedPoints() maps the points, that have been collected on the parentWidget() into a selection(). The default implementation simply returns the points unmodified.

+

The reason, why a selection() differs from the picked points depends on the application requirements. F.e. :

+
    +
  • A rectangular selection might need to have a specific aspect ratio only.
    +
  • +
  • A selection could accept non intersecting polygons only.
    +
  • +
  • ...
    +
  • +
+

The example below is for a rectangular selection, where the first point is the center of the selected rectangle.

+
Example
QPolygon MyPicker::adjustedPoints(const QPolygon &points) const
+{
+    QPolygon adjusted;
+    if ( points.size() == 2 )
+    {
+        const int width = qAbs(points[1].x() - points[0].x());
+        const int height = qAbs(points[1].y() - points[0].y());
+
+        QRect rect(0, 0, 2 * width, 2 * height);
+        rect.moveCenter(points[0]);
+
+        adjusted += rect.topLeft();
+        adjusted += rect.bottomRight();
+    }
+    return adjusted;
+}

+
+ +
+
+ +
+
+ + + + + + + + +
void QwtPicker::append (const QPoint & pos) [protected, virtual]
+
+
+

Append a point to the selection and update rubberband and tracker. The appended() signal is emitted.

+
Parameters:
+ + +
posAdditional point
+
+
+
See also:
isActive(), begin(), end(), move(), appended()
+ +

Reimplemented in QwtPlotPicker.

+ +
+
+ +
+
+ + + + + + + + +
void QwtPicker::appended (const QPoint & pos) [signal]
+
+
+

A signal emitted when a point has been appended to the selection

+
Parameters:
+ + +
posPosition of the appended point.
+
+
+
See also:
append(). moved()
+ +
+
+ +
+
+ + + + + + + +
void QwtPicker::begin () [protected, virtual]
+
+
+

Open a selection setting the state to active

+
See also:
isActive(), end(), append(), move()
+ +

Reimplemented in QwtPlotZoomer.

+ +
+
+ +
+
+ + + + + + + + +
void QwtPicker::changed (const QPolygon & selection) [signal]
+
+
+

A signal emitted when the active selection has been changed. This might happen when the observed widget is resized.

+
Parameters:
+ + +
selectionChanged selection
+
+
+
See also:
stretchSelection()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPicker::drawRubberBand (QPainter * painter) const [virtual]
+
+
+

Draw a rubberband, depending on rubberBand()

+
Parameters:
+ + +
painterPainter, initialized with clip rect
+
+
+
See also:
rubberBand(), RubberBand
+ +
+
+ +
+
+ + + + + + + + +
void QwtPicker::drawTracker (QPainter * painter) const [virtual]
+
+
+

Draw the tracker

+
Parameters:
+ + +
painterPainter
+
+
+
See also:
trackerRect(), trackerText()
+ +
+
+ +
+
+ + + + + + + + +
bool QwtPicker::end (bool ok = true) [protected, virtual]
+
+
+ +

Close a selection setting the state to inactive.

+

The selection is validated and maybe fixed by accept().

+
Parameters:
+ + +
okIf true, complete the selection and emit a selected signal otherwise discard the selection.
+
+
+
Returns:
true if the selection is accepted, false otherwise
+
See also:
isActive(), begin(), append(), move(), selected(), accept()
+ +

Reimplemented in QwtPlotPicker, and QwtPlotZoomer.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
bool QwtPicker::eventFilter (QObject * o,
QEvent * e 
) [virtual]
+
+
+ +

Event filter.

+

When isEnabled() == true all events of the observed widget are filtered. Mouse and keyboard events are translated into widgetMouse- and widgetKey- and widgetWheel-events. Paint and Resize events are handled to keep rubberband and tracker up to date.

+
See also:
event(), widgetEnterEvent(), widgetLeaveEvent(), widgetMousePressEvent(), widgetMouseReleaseEvent(), widgetMouseDoubleClickEvent(), widgetMouseMoveEvent(), widgetWheelEvent(), widgetKeyPressEvent(), widgetKeyReleaseEvent()
+ +
+
+ +
+
+ + + + + + + +
bool QwtPicker::isActive () const
+
+
+

A picker is active between begin() and end().

+
Returns:
true if the selection is active.
+ +
+
+ +
+
+ + + + + + + +
bool QwtPicker::isEnabled () const
+
+
+
Returns:
true when enabled, false otherwise
+
See also:
setEnabled(), eventFilter()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPicker::move (const QPoint & pos) [protected, virtual]
+
+
+

Move the last point of the selection The moved() signal is emitted.

+
Parameters:
+ + +
posNew position
+
+
+
See also:
isActive(), begin(), end(), append()
+ +

Reimplemented in QwtPlotPicker.

+ +
+
+ +
+
+ + + + + + + + +
void QwtPicker::moved (const QPoint & pos) [signal]
+
+
+

A signal emitted whenever the last appended point of the selection has been moved.

+
Parameters:
+ + +
posPosition of the moved last point of the selection.
+
+
+
See also:
move(), appended()
+ +
+
+ +
+
+ + + + + + + +
QWidget * QwtPicker::parentWidget ()
+
+
+ +

Return the parent widget, where the selection happens.

+ +
+
+ +
+
+ + + + + + + +
const QWidget * QwtPicker::parentWidget () const
+
+
+ +

Return the parent widget, where the selection happens.

+ +
+
+ +
+
+ + + + + + + +
const QPolygon & QwtPicker::pickedPoints () const [protected]
+
+
+

Return the points, that have been collected so far. The selection() is calculated from the pickedPoints() in adjustedPoints().

+
Returns:
Picked points
+ +
+
+ +
+
+ + + + + + + +
QRect QwtPicker::pickRect () const [virtual]
+
+
+

Find the area of the observed widget, where selection might happen.

+
Returns:
QFrame::contentsRect() if it is a QFrame, QWidget::rect() otherwise.
+ +
+
+ +
+
+ + + + + + + +
void QwtPicker::remove () [protected, virtual]
+
+
+

Remove the last point of the selection The removed() signal is emitted.

+
See also:
isActive(), begin(), end(), append(), move()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPicker::removed (const QPoint & pos) [signal]
+
+
+

A signal emitted whenever the last appended point of the selection has been removed.

+
See also:
remove(), appended()
+ +
+
+ +
+
+ + + + + + + +
void QwtPicker::reset () [protected, virtual]
+
+
+

Reset the state machine and terminate (end(false)) the selection

+ +
+
+ +
+
+ + + + + + + +
QwtPicker::ResizeMode QwtPicker::resizeMode () const
+
+
+
Returns:
Resize mode
+
See also:
setResizeMode(), ResizeMode
+ +
+
+ +
+
+ + + + + + + +
QwtPicker::RubberBand QwtPicker::rubberBand () const
+
+
+
Returns:
Rubberband style
+
See also:
setRubberBand(), RubberBand, rubberBandPen()
+ +
+
+ +
+
+ + + + + + + +
QPen QwtPicker::rubberBandPen () const
+
+
+
Returns:
Rubberband pen
+
See also:
setRubberBandPen(), rubberBand()
+ +
+
+ +
+
+ + + + + + + +
const QWidget * QwtPicker::rubberBandWidget () const [protected]
+
+
+
Returns:
Widget displaying the rubberband
+ +
+
+ +
+
+ + + + + + + + +
void QwtPicker::selected (const QPolygon & polygon) [signal]
+
+
+

A signal emitting the selected points, at the end of a selection.

+
Parameters:
+ + +
polygonSelected points
+
+
+ +
+
+ +
+
+ + + + + + + +
QPolygon QwtPicker::selection () const
+
+
+
Returns:
Selected points
+
See also:
pickedPoints(), adjustedPoints()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPicker::setEnabled (bool enabled) [slot]
+
+
+ +

En/disable the picker.

+

When enabled is true an event filter is installed for the observed widget, otherwise the event filter is removed.

+
Parameters:
+ + +
enabledtrue or false
+
+
+
See also:
isEnabled(), eventFilter()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPicker::setResizeMode (ResizeMode mode)
+
+
+ +

Set the resize mode.

+

The resize mode controls what to do with the selected points of an active selection when the observed widget is resized.

+

Stretch means the points are scaled according to the new size, KeepSize means the points remain unchanged.

+

The default mode is Stretch.

+
Parameters:
+ + +
modeResize mode
+
+
+
See also:
resizeMode(), ResizeMode
+ +
+
+ +
+
+ + + + + + + + +
void QwtPicker::setRubberBand (RubberBand rubberBand)
+
+
+

Set the rubberband style

+
Parameters:
+ + +
rubberBandRubberband style The default value is NoRubberBand.
+
+
+
See also:
rubberBand(), RubberBand, setRubberBandPen()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPicker::setRubberBandPen (const QPen & pen)
+
+
+

Set the pen for the rubberband

+
Parameters:
+ + +
penRubberband pen
+
+
+
See also:
rubberBandPen(), setRubberBand()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPicker::setStateMachine (QwtPickerMachinestateMachine)
+
+
+

Set a state machine and delete the previous one

+
Parameters:
+ + +
stateMachineState machine
+
+
+
See also:
stateMachine()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPicker::setTrackerFont (const QFont & font)
+
+
+

Set the font for the tracker

+
Parameters:
+ + +
fontTracker font
+
+
+
See also:
trackerFont(), setTrackerMode(), setTrackerPen()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPicker::setTrackerMode (DisplayMode mode)
+
+
+ +

Set the display mode of the tracker.

+

A tracker displays information about current position of the cursor as a string. The display mode controls if the tracker has to be displayed whenever the observed widget has focus and cursor (AlwaysOn), never (AlwaysOff), or only when the selection is active (ActiveOnly).

+
Parameters:
+ + +
modeTracker display mode
+
+
+
Warning:
In case of AlwaysOn, mouseTracking will be enabled for the observed widget.
+
See also:
trackerMode(), DisplayMode
+ +
+
+ +
+
+ + + + + + + + +
void QwtPicker::setTrackerPen (const QPen & pen)
+
+
+

Set the pen for the tracker

+
Parameters:
+ + +
penTracker pen
+
+
+
See also:
trackerPen(), setTrackerMode(), setTrackerFont()
+ +
+
+ +
+
+ + + + + + + +
const QwtPickerMachine * QwtPicker::stateMachine () const
+
+
+
Returns:
Assigned state machine
+
See also:
setStateMachine()
+ +
+
+ +
+
+ + + + + + + +
QwtPickerMachine * QwtPicker::stateMachine ()
+
+
+
Returns:
Assigned state machine
+
See also:
setStateMachine()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPicker::stretchSelection (const QSize & oldSize,
const QSize & newSize 
) [protected, virtual]
+
+
+

Scale the selection by the ratios of oldSize and newSize The changed() signal is emitted.

+
Parameters:
+ + + +
oldSizePrevious size
newSizeCurrent size
+
+
+
See also:
ResizeMode, setResizeMode(), resizeMode()
+ +
+
+ +
+
+ + + + + + + +
QFont QwtPicker::trackerFont () const
+
+
+
Returns:
Tracker font
+
See also:
setTrackerFont(), trackerMode(), trackerPen()
+ +
+
+ +
+
+ + + + + + + +
QwtPicker::DisplayMode QwtPicker::trackerMode () const
+
+
+
Returns:
Tracker display mode
+
See also:
setTrackerMode(), DisplayMode
+ +
+
+ +
+
+ + + + + + + +
QPen QwtPicker::trackerPen () const
+
+
+
Returns:
Tracker pen
+
See also:
setTrackerPen(), trackerMode(), trackerFont()
+ +
+
+ +
+
+ + + + + + + +
QPoint QwtPicker::trackerPosition () const
+
+
+
Returns:
Current position of the tracker
+ +
+
+ +
+
+ + + + + + + + +
QRect QwtPicker::trackerRect (const QFont & font) const [virtual]
+
+
+

Calculate the bounding rectangle for the tracker text from the current position of the tracker

+
Parameters:
+ + +
fontFont of the tracker text
+
+
+
Returns:
Bounding rectangle of the tracker text
+
See also:
trackerPosition()
+ +
+
+ +
+
+ + + + + + + + +
QwtText QwtPicker::trackerText (const QPoint & pos) const [virtual]
+
+
+ +

Return the label for a position.

+

In case of HLineRubberBand the label is the value of the y position, in case of VLineRubberBand the value of the x position. Otherwise the label contains x and y position separated by a ',' .

+

The format for the string conversion is "%d".

+
Parameters:
+ + +
posPosition
+
+
+
Returns:
Converted position as string
+ +

Reimplemented in QwtPlotPicker.

+ +
+
+ +
+
+ + + + + + + +
const QWidget * QwtPicker::trackerWidget () const [protected]
+
+
+
Returns:
Widget displaying the tracker text
+ +
+
+ +
+
+ + + + + + + + +
void QwtPicker::transition (const QEvent * e) [protected, virtual]
+
+
+

Passes an event to the state machine and executes the resulting commands. Append and Move commands use the current position of the cursor (QCursor::pos()).

+
Parameters:
+ + +
eEvent
+
+
+ +
+
+ +
+
+ + + + + + + +
void QwtPicker::updateDisplay () [protected, virtual]
+
+
+ +

Update the state of rubberband and tracker label.

+ +
+
+ +
+
+ + + + + + + + +
void QwtPicker::widgetEnterEvent (QEvent * event) [protected, virtual]
+
+ +
+ +
+
+ + + + + + + + +
void QwtPicker::widgetKeyPressEvent (QKeyEvent * ke) [protected, virtual]
+
+
+

Handle a key press event for the observed widget.

+

Selections can be completely done by the keyboard. The arrow keys move the cursor, the abort key aborts a selection. All other keys are handled by the current state machine.

+
See also:
eventFilter(), widgetMousePressEvent(), widgetMouseReleaseEvent(), widgetMouseDoubleClickEvent(), widgetMouseMoveEvent(), widgetWheelEvent(), widgetKeyReleaseEvent(), stateMachine(), QwtEventPattern::KeyPatternCode
+ +

Reimplemented in QwtPlotZoomer.

+ +
+
+ +
+
+ + + + + + + + +
void QwtPicker::widgetKeyReleaseEvent (QKeyEvent * ke) [protected, virtual]
+
+
+

Handle a key release event for the observed widget.

+

Passes the event to the state machine.

+
See also:
eventFilter(), widgetMousePressEvent(), widgetMouseReleaseEvent(), widgetMouseDoubleClickEvent(), widgetMouseMoveEvent(), widgetWheelEvent(), widgetKeyPressEvent(), stateMachine()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPicker::widgetLeaveEvent (QEvent * event) [protected, virtual]
+
+ +
+ +
+
+ + + + + + + + +
void QwtPicker::widgetMouseDoubleClickEvent (QMouseEvent * me) [protected, virtual]
+
+
+

Handle mouse double click event for the observed widget.

+

Empty implementation, does nothing.

+
See also:
eventFilter(), widgetMousePressEvent(), widgetMouseReleaseEvent(), widgetMouseMoveEvent(), widgetWheelEvent(), widgetKeyPressEvent(), widgetKeyReleaseEvent()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPicker::widgetMouseMoveEvent (QMouseEvent * e) [protected, virtual]
+
+ +
+ +
+
+ + + + + + + + +
void QwtPicker::widgetMousePressEvent (QMouseEvent * e) [protected, virtual]
+
+ +
+ +
+
+ + + + + + + + +
void QwtPicker::widgetMouseReleaseEvent (QMouseEvent * e) [protected, virtual]
+
+ +
+ +
+
+ + + + + + + + +
void QwtPicker::widgetWheelEvent (QWheelEvent * e) [protected, virtual]
+
+
+

Handle a wheel event for the observed widget.

+

Move the last point of the selection in case of isActive() == true

+
See also:
eventFilter(), widgetMousePressEvent(), widgetMouseReleaseEvent(), widgetMouseDoubleClickEvent(), widgetMouseMoveEvent(), widgetKeyPressEvent(), widgetKeyReleaseEvent()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker__inherit__graph.map 2011-04-15 10:49:09.000000000 +0000 @@ -0,0 +1,5 @@ + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker__inherit__graph.md5 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1 @@ +99f1877ed322fa855d77f2b80c9717ec \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_machine.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_machine.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_machine.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_machine.html 2011-04-15 10:49:23.000000000 +0000 @@ -0,0 +1,296 @@ + + + + +Qwt User's Guide: QwtPickerMachine Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPickerMachine Class Reference

+
+
+ +

A state machine for QwtPicker selections. +More...

+ +

#include <qwt_picker_machine.h>

+
+Inheritance diagram for QwtPickerMachine:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + +

+Public Types

enum  SelectionType {
+  NoSelection = -1, +
+  PointSelection, +
+  RectSelection, +
+  PolygonSelection +
+ }
enum  Command {
+  Begin, +
+  Append, +
+  Move, +
+  Remove, +
+  End +
+ }

+Public Member Functions

 QwtPickerMachine (SelectionType)
virtual ~QwtPickerMachine ()
virtual QList< Commandtransition (const QwtEventPattern &, const QEvent *)=0
void reset ()
int state () const
void setState (int)
SelectionType selectionType () const
+

Detailed Description

+

A state machine for QwtPicker selections.

+

QwtPickerMachine accepts key and mouse events and translates them into selection commands.

+
See also:
QwtEventPattern::MousePatternCode, QwtEventPattern::KeyPatternCode
+

Member Enumeration Documentation

+ +
+
+ + + + +
enum QwtPickerMachine::Command
+
+
+ +

Commands - the output of a state machine.

+ +
+
+ +
+ +
+

Type of a selection.

+
See also:
selectionType()
+
Enumerator:
+ + + + +
NoSelection  +

The state machine not usable for any type of selection.

+
PointSelection  +

The state machine is for selecting a single point.

+
RectSelection  +

The state machine is for selecting a rectangle (2 points).

+
PolygonSelection  +

The state machine is for selecting a polygon (many points).

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtPickerMachine::QwtPickerMachine (SelectionType type)
+
+
+ +

Constructor.

+ +
+
+ +
+
+ + + + + + + +
QwtPickerMachine::~QwtPickerMachine () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
void QwtPickerMachine::reset ()
+
+
+ +

Set the current state to 0.

+ +
+
+ +
+
+ + + + + + + +
QwtPickerMachine::SelectionType QwtPickerMachine::selectionType () const
+
+
+ +

Return the selection type.

+ +
+
+ +
+
+ + + + + + + + +
void QwtPickerMachine::setState (int state)
+
+
+ +

Change the current state.

+ +
+
+ +
+
+ + + + + + + +
int QwtPickerMachine::state () const
+
+
+ +

Return the current state.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
virtual QList<Command> QwtPickerMachine::transition (const QwtEventPattern,
const QEvent *  
) [pure virtual]
+
+ +
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_machine__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_machine__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_machine__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_machine__inherit__graph.map 2011-04-15 10:49:10.000000000 +0000 @@ -0,0 +1,8 @@ + + + + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_machine__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_machine__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_machine__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_machine__inherit__graph.md5 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1 @@ +c01c158d0465b830bc15e269b2fd8647 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_machine__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_machine__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_machine-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_machine-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_machine-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_machine-members.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,69 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPickerMachine Member List

+
+
+This is the complete list of members for QwtPickerMachine, including all inherited members. + + + + + + + + + + + + + + + + + + +
Append enum value (defined in QwtPickerMachine)QwtPickerMachine
Begin enum value (defined in QwtPickerMachine)QwtPickerMachine
Command enum nameQwtPickerMachine
End enum value (defined in QwtPickerMachine)QwtPickerMachine
Move enum value (defined in QwtPickerMachine)QwtPickerMachine
NoSelection enum valueQwtPickerMachine
PointSelection enum valueQwtPickerMachine
PolygonSelection enum valueQwtPickerMachine
QwtPickerMachine(SelectionType)QwtPickerMachine
RectSelection enum valueQwtPickerMachine
Remove enum value (defined in QwtPickerMachine)QwtPickerMachine
reset()QwtPickerMachine
SelectionType enum nameQwtPickerMachine
selectionType() const QwtPickerMachine
setState(int)QwtPickerMachine
state() const QwtPickerMachine
transition(const QwtEventPattern &, const QEvent *)=0QwtPickerMachine [pure virtual]
~QwtPickerMachine()QwtPickerMachine [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker-members.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,163 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPicker Member List

+
+
+This is the complete list of members for QwtPicker, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
accept(QPolygon &) const QwtPicker [protected, virtual]
activated(bool on)QwtPicker [signal]
ActiveOnly enum valueQwtPicker
adjustedPoints(const QPolygon &) const QwtPicker [protected, virtual]
AlwaysOff enum valueQwtPicker
AlwaysOn enum valueQwtPicker
append(const QPoint &)QwtPicker [protected, virtual]
appended(const QPoint &pos)QwtPicker [signal]
begin()QwtPicker [protected, virtual]
changed(const QPolygon &selection)QwtPicker [signal]
CrossRubberBand enum valueQwtPicker
DisplayMode enum nameQwtPicker
drawRubberBand(QPainter *) const QwtPicker [virtual]
drawTracker(QPainter *) const QwtPicker [virtual]
EllipseRubberBand enum valueQwtPicker
end(bool ok=true)QwtPicker [protected, virtual]
eventFilter(QObject *, QEvent *)QwtPicker [virtual]
HLineRubberBand enum valueQwtPicker
initKeyPattern()QwtEventPattern
initMousePattern(int numButtons)QwtEventPattern
isActive() const QwtPicker
isEnabled() const QwtPicker
KeepSize enum valueQwtPicker
KeyAbort enum value (defined in QwtEventPattern)QwtEventPattern
KeyDown enum value (defined in QwtEventPattern)QwtEventPattern
KeyHome enum value (defined in QwtEventPattern)QwtEventPattern
KeyLeft enum value (defined in QwtEventPattern)QwtEventPattern
keyMatch(uint pattern, const QKeyEvent *) const QwtEventPattern
keyMatch(const KeyPattern &, const QKeyEvent *) const QwtEventPattern [protected, virtual]
keyPattern() const QwtEventPattern
keyPattern()QwtEventPattern
KeyPatternCode enum nameQwtEventPattern
KeyPatternCount enum value (defined in QwtEventPattern)QwtEventPattern
KeyRedo enum value (defined in QwtEventPattern)QwtEventPattern
KeyRight enum value (defined in QwtEventPattern)QwtEventPattern
KeySelect1 enum value (defined in QwtEventPattern)QwtEventPattern
KeySelect2 enum value (defined in QwtEventPattern)QwtEventPattern
KeyUndo enum value (defined in QwtEventPattern)QwtEventPattern
KeyUp enum value (defined in QwtEventPattern)QwtEventPattern
mouseMatch(uint pattern, const QMouseEvent *) const QwtEventPattern
mouseMatch(const MousePattern &, const QMouseEvent *) const QwtEventPattern [protected, virtual]
mousePattern() const QwtEventPattern
mousePattern()QwtEventPattern
MousePatternCode enum nameQwtEventPattern
MousePatternCount enum value (defined in QwtEventPattern)QwtEventPattern
MouseSelect1 enum value (defined in QwtEventPattern)QwtEventPattern
MouseSelect2 enum value (defined in QwtEventPattern)QwtEventPattern
MouseSelect3 enum value (defined in QwtEventPattern)QwtEventPattern
MouseSelect4 enum value (defined in QwtEventPattern)QwtEventPattern
MouseSelect5 enum value (defined in QwtEventPattern)QwtEventPattern
MouseSelect6 enum value (defined in QwtEventPattern)QwtEventPattern
move(const QPoint &)QwtPicker [protected, virtual]
moved(const QPoint &pos)QwtPicker [signal]
NoRubberBand enum valueQwtPicker
parentWidget()QwtPicker
parentWidget() const QwtPicker
pickedPoints() const QwtPicker [protected]
pickRect() const QwtPicker [virtual]
PolygonRubberBand enum valueQwtPicker
QwtEventPattern()QwtEventPattern
QwtPicker(QWidget *parent)QwtPicker [explicit]
QwtPicker(RubberBand rubberBand, DisplayMode trackerMode, QWidget *)QwtPicker [explicit]
RectRubberBand enum valueQwtPicker
remove()QwtPicker [protected, virtual]
removed(const QPoint &pos)QwtPicker [signal]
reset()QwtPicker [protected, virtual]
ResizeMode enum nameQwtPicker
resizeMode() const QwtPicker
RubberBand enum nameQwtPicker
rubberBand() const QwtPicker
rubberBandPen() const QwtPicker
rubberBandWidget() const QwtPicker [protected]
selected(const QPolygon &polygon)QwtPicker [signal]
selection() const QwtPicker
setEnabled(bool)QwtPicker [slot]
setKeyPattern(uint pattern, int key, int state=Qt::NoButton)QwtEventPattern
setKeyPattern(const QVector< KeyPattern > &)QwtEventPattern
setMousePattern(uint pattern, int button, int state=Qt::NoButton)QwtEventPattern
setMousePattern(const QVector< MousePattern > &)QwtEventPattern
setResizeMode(ResizeMode)QwtPicker
setRubberBand(RubberBand)QwtPicker
setRubberBandPen(const QPen &)QwtPicker
setStateMachine(QwtPickerMachine *)QwtPicker
setTrackerFont(const QFont &)QwtPicker
setTrackerMode(DisplayMode)QwtPicker
setTrackerPen(const QPen &)QwtPicker
stateMachine() const QwtPicker
stateMachine()QwtPicker
Stretch enum valueQwtPicker
stretchSelection(const QSize &oldSize, const QSize &newSize)QwtPicker [protected, virtual]
trackerFont() const QwtPicker
trackerMode() const QwtPicker
trackerPen() const QwtPicker
trackerPosition() const QwtPicker
trackerRect(const QFont &) const QwtPicker [virtual]
trackerText(const QPoint &pos) const QwtPicker [virtual]
trackerWidget() const QwtPicker [protected]
transition(const QEvent *)QwtPicker [protected, virtual]
updateDisplay()QwtPicker [protected, virtual]
UserRubberBand enum valueQwtPicker
VLineRubberBand enum valueQwtPicker
widgetEnterEvent(QEvent *)QwtPicker [protected, virtual]
widgetKeyPressEvent(QKeyEvent *)QwtPicker [protected, virtual]
widgetKeyReleaseEvent(QKeyEvent *)QwtPicker [protected, virtual]
widgetLeaveEvent(QEvent *)QwtPicker [protected, virtual]
widgetMouseDoubleClickEvent(QMouseEvent *)QwtPicker [protected, virtual]
widgetMouseMoveEvent(QMouseEvent *)QwtPicker [protected, virtual]
widgetMousePressEvent(QMouseEvent *)QwtPicker [protected, virtual]
widgetMouseReleaseEvent(QMouseEvent *)QwtPicker [protected, virtual]
widgetWheelEvent(QWheelEvent *)QwtPicker [protected, virtual]
~QwtEventPattern()QwtEventPattern [virtual]
~QwtPicker()QwtPicker [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_polygon_machine.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_polygon_machine.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_polygon_machine.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_polygon_machine.html 2011-04-15 10:49:23.000000000 +0000 @@ -0,0 +1,127 @@ + + + + +Qwt User's Guide: QwtPickerPolygonMachine Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPickerPolygonMachine Class Reference

+
+
+ +

A state machine for polygon selections. +More...

+ +

#include <qwt_picker_machine.h>

+
+Inheritance diagram for QwtPickerPolygonMachine:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + +

+Public Member Functions

 QwtPickerPolygonMachine ()
virtual QList< Commandtransition (const QwtEventPattern &, const QEvent *)
+

Detailed Description

+

A state machine for polygon selections.

+

Pressing QwtEventPattern::MouseSelect1 or QwtEventPattern::KeySelect1 starts the selection and selects the first point, or appends a point. Pressing QwtEventPattern::MouseSelect2 or QwtEventPattern::KeySelect2 appends the last point and terminates the selection.

+
See also:
QwtEventPattern::MousePatternCode, QwtEventPattern::KeyPatternCode
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtPickerPolygonMachine::QwtPickerPolygonMachine ()
+
+
+ +

Constructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
QList< QwtPickerMachine::Command > QwtPickerPolygonMachine::transition (const QwtEventPatterneventPattern,
const QEvent * e 
) [virtual]
+
+
+ +

Transition.

+ +

Implements QwtPickerMachine.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_polygon_machine__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_polygon_machine__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_polygon_machine__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_polygon_machine__inherit__graph.map 2011-04-15 10:49:10.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_polygon_machine__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_polygon_machine__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_polygon_machine__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_polygon_machine__inherit__graph.md5 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1 @@ +d7cd677cb5d6eadb23052a42810651c2 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_polygon_machine__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_polygon_machine__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_polygon_machine-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_polygon_machine-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_polygon_machine-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_polygon_machine-members.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,70 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPickerPolygonMachine Member List

+
+
+This is the complete list of members for QwtPickerPolygonMachine, including all inherited members. + + + + + + + + + + + + + + + + + + + +
Append enum value (defined in QwtPickerMachine)QwtPickerMachine
Begin enum value (defined in QwtPickerMachine)QwtPickerMachine
Command enum nameQwtPickerMachine
End enum value (defined in QwtPickerMachine)QwtPickerMachine
Move enum value (defined in QwtPickerMachine)QwtPickerMachine
NoSelection enum valueQwtPickerMachine
PointSelection enum valueQwtPickerMachine
PolygonSelection enum valueQwtPickerMachine
QwtPickerMachine(SelectionType)QwtPickerMachine
QwtPickerPolygonMachine()QwtPickerPolygonMachine
RectSelection enum valueQwtPickerMachine
Remove enum value (defined in QwtPickerMachine)QwtPickerMachine
reset()QwtPickerMachine
selectionType() const QwtPickerMachine
SelectionType enum nameQwtPickerMachine
setState(int)QwtPickerMachine
state() const QwtPickerMachine
transition(const QwtEventPattern &, const QEvent *)QwtPickerPolygonMachine [virtual]
~QwtPickerMachine()QwtPickerMachine [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_tracker_machine.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_tracker_machine.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_tracker_machine.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_tracker_machine.html 2011-04-15 10:49:23.000000000 +0000 @@ -0,0 +1,126 @@ + + + + +Qwt User's Guide: QwtPickerTrackerMachine Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPickerTrackerMachine Class Reference

+
+
+ +

A state machine for indicating mouse movements. +More...

+ +

#include <qwt_picker_machine.h>

+
+Inheritance diagram for QwtPickerTrackerMachine:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + +

+Public Member Functions

 QwtPickerTrackerMachine ()
virtual QList< Commandtransition (const QwtEventPattern &, const QEvent *)
+

Detailed Description

+

A state machine for indicating mouse movements.

+

QwtPickerTrackerMachine supports displaying information corresponding to mouse movements, but is not intended for selecting anything. Begin/End are related to Enter/Leave events.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtPickerTrackerMachine::QwtPickerTrackerMachine ()
+
+
+ +

Constructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
QList< QwtPickerMachine::Command > QwtPickerTrackerMachine::transition (const QwtEventPattern,
const QEvent * e 
) [virtual]
+
+
+ +

Transition.

+ +

Implements QwtPickerMachine.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_tracker_machine__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_tracker_machine__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_tracker_machine__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_tracker_machine__inherit__graph.map 2011-04-15 10:49:10.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_tracker_machine__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_tracker_machine__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_tracker_machine__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_tracker_machine__inherit__graph.md5 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1 @@ +d2c468c4fb8a8d905342dfdc0fd50556 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_tracker_machine__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_tracker_machine__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_tracker_machine-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_tracker_machine-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_tracker_machine-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_picker_tracker_machine-members.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,70 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPickerTrackerMachine Member List

+
+
+This is the complete list of members for QwtPickerTrackerMachine, including all inherited members. + + + + + + + + + + + + + + + + + + + +
Append enum value (defined in QwtPickerMachine)QwtPickerMachine
Begin enum value (defined in QwtPickerMachine)QwtPickerMachine
Command enum nameQwtPickerMachine
End enum value (defined in QwtPickerMachine)QwtPickerMachine
Move enum value (defined in QwtPickerMachine)QwtPickerMachine
NoSelection enum valueQwtPickerMachine
PointSelection enum valueQwtPickerMachine
PolygonSelection enum valueQwtPickerMachine
QwtPickerMachine(SelectionType)QwtPickerMachine
QwtPickerTrackerMachine()QwtPickerTrackerMachine
RectSelection enum valueQwtPickerMachine
Remove enum value (defined in QwtPickerMachine)QwtPickerMachine
reset()QwtPickerMachine
selectionType() const QwtPickerMachine
SelectionType enum nameQwtPickerMachine
setState(int)QwtPickerMachine
state() const QwtPickerMachine
transition(const QwtEventPattern &, const QEvent *)QwtPickerTrackerMachine [virtual]
~QwtPickerMachine()QwtPickerMachine [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plain_text_engine.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plain_text_engine.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plain_text_engine.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plain_text_engine.html 2011-04-15 10:49:23.000000000 +0000 @@ -0,0 +1,353 @@ + + + + +Qwt User's Guide: QwtPlainTextEngine Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPlainTextEngine Class Reference

+
+
+ +

A text engine for plain texts. +More...

+ +

#include <qwt_text_engine.h>

+
+Inheritance diagram for QwtPlainTextEngine:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + +

+Public Member Functions

 QwtPlainTextEngine ()
virtual ~QwtPlainTextEngine ()
virtual double heightForWidth (const QFont &font, int flags, const QString &text, double width) const
virtual QSizeF textSize (const QFont &font, int flags, const QString &text) const
virtual void draw (QPainter *painter, const QRectF &rect, int flags, const QString &text) const
virtual bool mightRender (const QString &) const
virtual void textMargins (const QFont &, const QString &, double &left, double &right, double &top, double &bottom) const
+

Detailed Description

+

A text engine for plain texts.

+

QwtPlainTextEngine renders texts using the basic Qt classes QPainter and QFontMetrics.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtPlainTextEngine::QwtPlainTextEngine ()
+
+
+ +

Constructor.

+ +
+
+ +
+
+ + + + + + + +
QwtPlainTextEngine::~QwtPlainTextEngine () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlainTextEngine::draw (QPainter * painter,
const QRectF & rect,
int flags,
const QString & text 
) const [virtual]
+
+
+ +

Draw the text in a clipping rectangle.

+

A wrapper for QPainter::drawText.

+
Parameters:
+ + + + + +
painterPainter
rectClipping rectangle
flagsBitwise OR of the flags used like in QPainter::drawText
textText to be rendered
+
+
+ +

Implements QwtTextEngine.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
double QwtPlainTextEngine::heightForWidth (const QFont & font,
int flags,
const QString & text,
double width 
) const [virtual]
+
+
+

Find the height for a given width

+
Parameters:
+ + + + + +
fontFont of the text
flagsBitwise OR of the flags used like in QPainter::drawText
textText to be rendered
widthWidth
+
+
+
Returns:
Calculated height
+ +

Implements QwtTextEngine.

+ +
+
+ +
+
+ + + + + + + + +
bool QwtPlainTextEngine::mightRender (const QString & ) const [virtual]
+
+
+

Test if a string can be rendered by this text engine.

+
Returns:
Always true. All texts can be rendered by QwtPlainTextEngine
+ +

Implements QwtTextEngine.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlainTextEngine::textMargins (const QFont & font,
const QString & ,
double & left,
double & right,
double & top,
double & bottom 
) const [virtual]
+
+
+

Return margins around the texts

+
Parameters:
+ + + + + + +
fontFont of the text
leftReturn 0
rightReturn 0
topReturn value for the top margin
bottomReturn value for the bottom margin
+
+
+ +

Implements QwtTextEngine.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
QSizeF QwtPlainTextEngine::textSize (const QFont & font,
int flags,
const QString & text 
) const [virtual]
+
+
+

Returns the size, that is needed to render text

+
Parameters:
+ + + + +
fontFont of the text
flagsBitwise OR of the flags used like in QPainter::drawText
textText to be rendered
+
+
+
Returns:
Caluclated size
+ +

Implements QwtTextEngine.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plain_text_engine__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plain_text_engine__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plain_text_engine__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plain_text_engine__inherit__graph.map 2011-04-15 10:49:10.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plain_text_engine__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plain_text_engine__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plain_text_engine__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plain_text_engine__inherit__graph.md5 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1 @@ +0168ae7998ec37f6b0f6123b5e310547 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plain_text_engine__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plain_text_engine__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plain_text_engine-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plain_text_engine-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plain_text_engine-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plain_text_engine-members.html 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,60 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPlainTextEngine Member List

+
+
+This is the complete list of members for QwtPlainTextEngine, including all inherited members. + + + + + + + + + +
draw(QPainter *painter, const QRectF &rect, int flags, const QString &text) const QwtPlainTextEngine [virtual]
heightForWidth(const QFont &font, int flags, const QString &text, double width) const QwtPlainTextEngine [virtual]
mightRender(const QString &) const QwtPlainTextEngine [virtual]
QwtPlainTextEngine()QwtPlainTextEngine
QwtTextEngine()QwtTextEngine [protected]
textMargins(const QFont &, const QString &, double &left, double &right, double &top, double &bottom) const QwtPlainTextEngine [virtual]
textSize(const QFont &font, int flags, const QString &text) const QwtPlainTextEngine [virtual]
~QwtPlainTextEngine()QwtPlainTextEngine [virtual]
~QwtTextEngine()QwtTextEngine [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_abstract_series_item.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_abstract_series_item.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_abstract_series_item.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_abstract_series_item.html 2011-04-15 10:49:23.000000000 +0000 @@ -0,0 +1,302 @@ + + + + +Qwt User's Guide: QwtPlotAbstractSeriesItem Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPlotAbstractSeriesItem Class Reference

+
+
+ +

Base class for plot items representing a series of samples. +More...

+ +

#include <qwt_plot_seriesitem.h>

+
+Inheritance diagram for QwtPlotAbstractSeriesItem:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + +

+Public Member Functions

 QwtPlotAbstractSeriesItem (const QString &title=QString::null)
 QwtPlotAbstractSeriesItem (const QwtText &title)
virtual ~QwtPlotAbstractSeriesItem ()
void setOrientation (Qt::Orientation)
Qt::Orientation orientation () const
virtual void draw (QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &) const
virtual void drawSeries (QPainter *painter, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const =0
+

Detailed Description

+

Base class for plot items representing a series of samples.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtPlotAbstractSeriesItem::QwtPlotAbstractSeriesItem (const QString & title = QString::null) [explicit]
+
+
+

Constructor

+
Parameters:
+ + +
titleTitle of the curve
+
+
+ +
+
+ +
+
+ + + + + + + + +
QwtPlotAbstractSeriesItem::QwtPlotAbstractSeriesItem (const QwtTexttitle) [explicit]
+
+
+

Constructor

+
Parameters:
+ + +
titleTitle of the curve
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtPlotAbstractSeriesItem::~QwtPlotAbstractSeriesItem () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotAbstractSeriesItem::draw (QPainter * painter,
const QwtScaleMapxMap,
const QwtScaleMapyMap,
const QRectF & canvasRect 
) const [virtual]
+
+
+ +

Draw the complete series.

+
Parameters:
+ + + + + +
painterPainter
xMapMaps x-values into pixel coordinates.
yMapMaps y-values into pixel coordinates.
canvasRectContents rect of the canvas
+
+
+ +

Implements QwtPlotItem.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
virtual void QwtPlotAbstractSeriesItem::drawSeries (QPainter * painter,
const QwtScaleMapxMap,
const QwtScaleMapyMap,
const QRectF & canvasRect,
int from,
int to 
) const [pure virtual]
+
+
+

Draw a subset of the samples

+
Parameters:
+ + + + + + + +
painterPainter
xMapMaps x-values into pixel coordinates.
yMapMaps y-values into pixel coordinates.
canvasRectContents rect of the canvas
fromIndex of the first point to be painted
toIndex of the last point to be painted. If to < 0 the curve will be painted to its last point.
+
+
+ +

Implemented in QwtPlotCurve, QwtPlotHistogram, QwtPlotIntervalCurve, and QwtPlotSpectroCurve.

+ +
+
+ +
+
+ + + + + + + +
Qt::Orientation QwtPlotAbstractSeriesItem::orientation () const
+
+
+
Returns:
Orientation of the plot item
+
See also:
setOrientation()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotAbstractSeriesItem::setOrientation (Qt::Orientation orientation)
+
+
+

Set the orientation of the item.

+

The orientation() might be used in specific way by a plot item. F.e. a QwtPlotCurve uses it to identify how to display the curve int QwtPlotCurve::Steps or QwtPlotCurve::Sticks style.

+
See also:
orientation()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_abstract_series_item__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_abstract_series_item__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_abstract_series_item__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_abstract_series_item__inherit__graph.map 2011-04-15 10:49:11.000000000 +0000 @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_abstract_series_item__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_abstract_series_item__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_abstract_series_item__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_abstract_series_item__inherit__graph.md5 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1 @@ +6415f2d810ce43f0f62372440b9d6064 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_abstract_series_item__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_abstract_series_item__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_abstract_series_item-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_abstract_series_item-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_abstract_series_item-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_abstract_series_item-members.html 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,111 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPlotAbstractSeriesItem Member List

+
+
+This is the complete list of members for QwtPlotAbstractSeriesItem, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
attach(QwtPlot *plot)QwtPlotItem
AutoScale enum valueQwtPlotItem
boundingRect() const QwtPlotItem [virtual]
detach()QwtPlotItem
draw(QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &) const QwtPlotAbstractSeriesItem [virtual]
drawLegendIdentifier(QPainter *, const QRectF &) const QwtLegendItemManager [inline, virtual]
drawSeries(QPainter *painter, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const =0QwtPlotAbstractSeriesItem [pure virtual]
hide()QwtPlotItem
isVisible() const QwtPlotItem
ItemAttribute enum nameQwtPlotItem
ItemAttributes typedefQwtPlotItem
itemChanged()QwtPlotItem [virtual]
Legend enum valueQwtPlotItem
legendItem() const QwtPlotItem [virtual]
orientation() const QwtPlotAbstractSeriesItem
paintRect(const QwtScaleMap &, const QwtScaleMap &) const QwtPlotItem
plot() const QwtPlotItem
QwtLegendItemManager()QwtLegendItemManager [inline]
QwtPlotAbstractSeriesItem(const QString &title=QString::null)QwtPlotAbstractSeriesItem [explicit]
QwtPlotAbstractSeriesItem(const QwtText &title)QwtPlotAbstractSeriesItem [explicit]
QwtPlotItem(const QwtText &title=QwtText())QwtPlotItem [explicit]
RenderAntialiased enum valueQwtPlotItem
RenderHint enum nameQwtPlotItem
RenderHints typedefQwtPlotItem
rtti() const QwtPlotItem [virtual]
Rtti_PlotCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotGrid enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotHistogram enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotIntervalCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotItem enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotMarker enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotScale enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSpectroCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSpectrogram enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSVG enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotUserItem enum value (defined in QwtPlotItem)QwtPlotItem
RttiValues enum nameQwtPlotItem
scaleRect(const QwtScaleMap &, const QwtScaleMap &) const QwtPlotItem
setAxes(int xAxis, int yAxis)QwtPlotItem
setItemAttribute(ItemAttribute, bool on=true)QwtPlotItem
setOrientation(Qt::Orientation)QwtPlotAbstractSeriesItem
setRenderHint(RenderHint, bool on=true)QwtPlotItem
setTitle(const QString &title)QwtPlotItem
setTitle(const QwtText &title)QwtPlotItem
setVisible(bool)QwtPlotItem [virtual]
setXAxis(int axis)QwtPlotItem
setYAxis(int axis)QwtPlotItem
setZ(double z)QwtPlotItem
show()QwtPlotItem
testItemAttribute(ItemAttribute) const QwtPlotItem
testRenderHint(RenderHint) const QwtPlotItem
title() const QwtPlotItem
updateLegend(QwtLegend *) const QwtPlotItem [virtual]
updateScaleDiv(const QwtScaleDiv &, const QwtScaleDiv &)QwtPlotItem [virtual]
xAxis() const QwtPlotItem
yAxis() const QwtPlotItem
z() const QwtPlotItem
~QwtLegendItemManager()QwtLegendItemManager [inline, virtual]
~QwtPlotAbstractSeriesItem()QwtPlotAbstractSeriesItem [virtual]
~QwtPlotItem()QwtPlotItem [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_canvas.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_canvas.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_canvas.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_canvas.html 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,659 @@ + + + + +Qwt User's Guide: QwtPlotCanvas Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPlotCanvas Class Reference

+
+
+ +

Canvas of a QwtPlot. +More...

+ +

#include <qwt_plot_canvas.h>

+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Types

enum  PaintAttribute {
+  BackingStore = 1, +
+  Opaque = 2, +
+  HackStyledBackground = 4, +
+  ImmediatePaint = 8 +
+ }
enum  FocusIndicator {
+  NoFocusIndicator, +
+  CanvasFocusIndicator, +
+  ItemFocusIndicator +
+ }
typedef QFlags< PaintAttributePaintAttributes

+Public Member Functions

 QwtPlotCanvas (QwtPlot *)
virtual ~QwtPlotCanvas ()
QwtPlotplot ()
const QwtPlotplot () const
void setFocusIndicator (FocusIndicator)
FocusIndicator focusIndicator () const
void setBorderRadius (double)
double borderRadius () const
QPainterPath borderPath (const QRect &rect) const
QBitmap borderMask (const QSize &) const
void setPaintAttribute (PaintAttribute, bool on=true)
bool testPaintAttribute (PaintAttribute) const
const QPixmap * backingStore () const
void invalidateBackingStore ()
void replot ()
virtual bool event (QEvent *)

+Protected Member Functions

virtual void paintEvent (QPaintEvent *)
virtual void resizeEvent (QResizeEvent *)
virtual void drawFocusIndicator (QPainter *)
virtual void drawBorder (QPainter *)
void updateStyleSheetInfo ()
+

Detailed Description

+

Canvas of a QwtPlot.

+
See also:
QwtPlot
+

Member Typedef Documentation

+ +
+
+ + + + +
typedef QFlags<PaintAttribute> QwtPlotCanvas::PaintAttributes
+
+
+ +

Paint attributes.

+ +
+
+

Member Enumeration Documentation

+ +
+ +
+ +

Focus indicator.

+
    +
  • NoFocusIndicator
    + Don't paint a focus indicator
  • +
+
    +
  • CanvasFocusIndicator
    + The focus is related to the complete canvas. Paint the focus indicator using paintFocus()
  • +
+
    +
  • ItemFocusIndicator
    + The focus is related to an item (curve, point, ...) on the canvas. It is up to the application to display a focus indication using f.e. highlighting.
  • +
+
See also:
setFocusIndicator(), focusIndicator(), paintFocus()
+ +
+
+ +
+ +
+ +

Paint attributes.

+

The default setting enables BackingStore and Opaque.

+
See also:
setPaintAttribute(), testPaintAttribute()
+
Enumerator:
+ + + + +
BackingStore  +

Paint double buffered reusing the content of the pixmap buffer when possible.

+

Using a backing store might improve the performance significantly, when workin with widget overlays ( like rubberbands ). Disabling the cache might improve the performance for incremental paints (using QwtPlotDirectPainter ).

+
See also:
backingStore(), invalidateBackingStore()
+
Opaque  +

Try to fill the complete contents rectangle of the plot canvas.

+

When using styled backgrounds Qt assumes, that the canvas doesn't fill its area completely ( f.e because of rounded borders ) and fills the area below the canvas. When this is done with gradients it might result in a serious performance bottleneck - depending on the size.

+

When the Opaque attribute is enabled the canvas tries to identify the gaps with some heuristics and to fill those only.

+
Warning:
Will not work for semitransparent backgrounds
+
HackStyledBackground  +

Try to improve painting of styled backgrounds.

+

QwtPlotCanvas supports the box model attributes for customizing the layout with style sheets. Unfortunately the design of Qt style sheets has no concept how to handle backgrounds with rounded corners - beside of padding.

+

When HackStyledBackground is enabled the plot canvas tries to seperate the background from the background border by reverse engeneering to paint the background before and the border after the plot items. In this order the border gets prefectly antialiased and you can avoid some pixel artifacts in the corners.

+
ImmediatePaint  +

When ImmediatePaint is set replot() calls repaint() instead of update().

+
See also:
replot(), QWidget::repaint(), QWidget::update()
+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtPlotCanvas::QwtPlotCanvas (QwtPlotplot) [explicit]
+
+
+ +

Sets a cross cursor, enables QwtPlotCanvas::BackingStore.

+ +
+
+ +
+
+ + + + + + + +
QwtPlotCanvas::~QwtPlotCanvas () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
const QPixmap * QwtPlotCanvas::backingStore () const
+
+
+ +

Return the backing store, might be null.

+ +
+
+ +
+
+ + + + + + + + +
QBitmap QwtPlotCanvas::borderMask (const QSize & size) const
+
+
+

Calculate a mask, that can be used to clip away the border frame

+
Parameters:
+ + +
sizeSize including the frame
+
+
+ +
+
+ +
+
+ + + + + + + + +
QPainterPath QwtPlotCanvas::borderPath (const QRect & rect) const
+
+
+

Calculate the painter path for a styled or rounded border

+

When the canvas has no styled background or rounded borders the painter path is empty.

+
Parameters:
+ + +
rectBounding rectangle of the canvas
+
+
+
Returns:
Painter path, that can be used for clipping
+ +
+
+ +
+
+ + + + + + + +
double QwtPlotCanvas::borderRadius () const
+
+
+
Returns:
Radius for the corners of the border frame
+
See also:
setBorderRadius()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotCanvas::drawBorder (QPainter * painter) [protected, virtual]
+
+
+

Draw the border of the plot canvas

+
Parameters:
+ + +
painterPainter
+
+
+
See also:
setBorderRadius(), QFrame::drawFrame()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotCanvas::drawFocusIndicator (QPainter * painter) [protected, virtual]
+
+
+

Draw the focus indication

+
Parameters:
+ + +
painterPainter
+
+
+ +
+
+ +
+
+ + + + + + + + +
bool QwtPlotCanvas::event (QEvent * event) [virtual]
+
+
+

Qt event handler for QEvent::PolishRequest and QEvent::StyleChange

+
Parameters:
+ + +
eventQt Event
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtPlotCanvas::FocusIndicator QwtPlotCanvas::focusIndicator () const
+
+
+
Returns:
Focus indicator
+
See also:
FocusIndicator, setFocusIndicator()
+ +
+
+ +
+
+ + + + + + + +
void QwtPlotCanvas::invalidateBackingStore ()
+
+
+ +

Invalidate the internal backing store.

+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotCanvas::paintEvent (QPaintEvent * event) [protected, virtual]
+
+
+

Paint event

+
Parameters:
+ + +
eventPaint event
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtPlot * QwtPlotCanvas::plot ()
+
+
+ +

Return parent plot widget.

+ +
+
+ +
+
+ + + + + + + +
const QwtPlot * QwtPlotCanvas::plot () const
+
+
+ +

Return parent plot widget.

+ +
+
+ +
+
+ + + + + + + +
void QwtPlotCanvas::replot ()
+
+
+

Invalidate the paint cache and repaint the canvas

+
See also:
invalidatePaintCache()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotCanvas::resizeEvent (QResizeEvent * event) [protected, virtual]
+
+
+

Resize event

+
Parameters:
+ + +
eventResize event
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotCanvas::setBorderRadius (double radius)
+
+
+

Set the radius for the corners of the border frame

+
Parameters:
+ + +
radiusRadius of a rounded corner
+
+
+
See also:
borderRadius()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotCanvas::setFocusIndicator (FocusIndicator focusIndicator)
+
+
+

Set the focus indicator

+
See also:
FocusIndicator, focusIndicator()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotCanvas::setPaintAttribute (PaintAttribute attribute,
bool on = true 
)
+
+
+ +

Changing the paint attributes.

+
Parameters:
+ + + +
attributePaint attribute
onOn/Off
+
+
+
See also:
testPaintAttribute(), backingStore()
+ +
+
+ +
+
+ + + + + + + + +
bool QwtPlotCanvas::testPaintAttribute (PaintAttribute attribute) const
+
+
+

Test wether a paint attribute is enabled

+
Parameters:
+ + +
attributePaint attribute
+
+
+
Returns:
true if the attribute is enabled
+
See also:
setPaintAttribute()
+ +
+
+ +
+
+ + + + + + + +
void QwtPlotCanvas::updateStyleSheetInfo () [protected]
+
+
+ +

Update the cached informations about the current style sheet.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_canvas-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_canvas-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_canvas-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_canvas-members.html 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,82 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPlotCanvas Member List

+
+
+This is the complete list of members for QwtPlotCanvas, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
BackingStore enum valueQwtPlotCanvas
backingStore() const QwtPlotCanvas
borderMask(const QSize &) const QwtPlotCanvas
borderPath(const QRect &rect) const QwtPlotCanvas
borderRadius() const QwtPlotCanvas
CanvasFocusIndicator enum value (defined in QwtPlotCanvas)QwtPlotCanvas
drawBorder(QPainter *)QwtPlotCanvas [protected, virtual]
drawFocusIndicator(QPainter *)QwtPlotCanvas [protected, virtual]
event(QEvent *)QwtPlotCanvas [virtual]
focusIndicator() const QwtPlotCanvas
FocusIndicator enum nameQwtPlotCanvas
HackStyledBackground enum valueQwtPlotCanvas
ImmediatePaint enum valueQwtPlotCanvas
invalidateBackingStore()QwtPlotCanvas
ItemFocusIndicator enum value (defined in QwtPlotCanvas)QwtPlotCanvas
NoFocusIndicator enum value (defined in QwtPlotCanvas)QwtPlotCanvas
Opaque enum valueQwtPlotCanvas
PaintAttribute enum nameQwtPlotCanvas
PaintAttributes typedefQwtPlotCanvas
paintEvent(QPaintEvent *)QwtPlotCanvas [protected, virtual]
plot()QwtPlotCanvas
plot() const QwtPlotCanvas
QwtPlotCanvas(QwtPlot *)QwtPlotCanvas [explicit]
replot()QwtPlotCanvas
resizeEvent(QResizeEvent *)QwtPlotCanvas [protected, virtual]
setBorderRadius(double)QwtPlotCanvas
setFocusIndicator(FocusIndicator)QwtPlotCanvas
setPaintAttribute(PaintAttribute, bool on=true)QwtPlotCanvas
testPaintAttribute(PaintAttribute) const QwtPlotCanvas
updateStyleSheetInfo()QwtPlotCanvas [protected]
~QwtPlotCanvas()QwtPlotCanvas [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_curve.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_curve.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_curve.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_curve.html 2011-04-15 10:49:23.000000000 +0000 @@ -0,0 +1,1777 @@ + + + + +Qwt User's Guide: QwtPlotCurve Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPlotCurve Class Reference

+
+
+ +

A plot item, that represents a series of points. +More...

+ +

#include <qwt_plot_curve.h>

+
+Inheritance diagram for QwtPlotCurve:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Types

enum  CurveStyle {
+  NoCurve = -1, +
+  Lines, +
+  Sticks, +
+  Steps, +
+  Dots, +
+  UserCurve = 100 +
+ }
enum  CurveAttribute {
+  Inverted = 0x01, +
+  Fitted = 0x02 +
+ }
enum  LegendAttribute {
+  LegendNoAttribute = 0x00, +
+  LegendShowLine = 0x01, +
+  LegendShowSymbol = 0x02, +
+  LegendShowBrush = 0x04 +
+ }
enum  PaintAttribute {
+  ClipPolygons = 0x01, +
+  CacheSymbols = 0x02 +
+ }
typedef QFlags< CurveAttributeCurveAttributes
typedef QFlags< LegendAttributeLegendAttributes
typedef QFlags< PaintAttributePaintAttributes

+Public Member Functions

 QwtPlotCurve (const QString &title=QString::null)
 QwtPlotCurve (const QwtText &title)
virtual ~QwtPlotCurve ()
virtual int rtti () const
void setPaintAttribute (PaintAttribute, bool on=true)
bool testPaintAttribute (PaintAttribute) const
void setLegendAttribute (LegendAttribute, bool on=true)
bool testLegendAttribute (LegendAttribute) const
void setRawSamples (const double *xData, const double *yData, int size)
void setSamples (const double *xData, const double *yData, int size)
void setSamples (const QVector< double > &xData, const QVector< double > &yData)
void setSamples (const QVector< QPointF > &)
int closestPoint (const QPoint &pos, double *dist=NULL) const
double minXValue () const
double maxXValue () const
double minYValue () const
double maxYValue () const
void setCurveAttribute (CurveAttribute, bool on=true)
bool testCurveAttribute (CurveAttribute) const
void setPen (const QPen &)
const QPen & pen () const
void setBrush (const QBrush &)
const QBrush & brush () const
void setBaseline (double ref)
double baseline () const
void setStyle (CurveStyle style)
CurveStyle style () const
void setSymbol (const QwtSymbol *s)
const QwtSymbolsymbol () const
void setCurveFitter (QwtCurveFitter *)
QwtCurveFittercurveFitter () const
virtual void drawSeries (QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const
virtual void updateLegend (QwtLegend *) const
virtual void drawLegendIdentifier (QPainter *, const QRectF &) const

+Protected Member Functions

void init ()
virtual void drawCurve (QPainter *p, int style, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const
virtual void drawSymbols (QPainter *p, const QwtSymbol &, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const
void drawLines (QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const
void drawSticks (QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const
void drawDots (QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const
void drawSteps (QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const
virtual void fillCurve (QPainter *, const QwtScaleMap &, const QwtScaleMap &, const QRectF &canvasRect, QPolygonF &) const
void closePolyline (QPainter *, const QwtScaleMap &, const QwtScaleMap &, QPolygonF &) const
+

Detailed Description

+

A plot item, that represents a series of points.

+

A curve is the representation of a series of points in the x-y plane. It supports different display styles, interpolation ( f.e. spline ) and symbols.

+
Usage
+
a) Assign curve properties
+
When a curve is created, it is configured to draw black solid lines with in QwtPlotCurve::Lines style and no symbols. You can change this by calling setPen(), setStyle() and setSymbol().
+
b) Connect/Assign data.
+
QwtPlotCurve gets its points using a QwtSeriesData object offering a bridge to the real storage of the points ( like QAbstractItemModel ). There are several convenience classes derived from QwtSeriesData, that also store the points inside ( like QStandardItemModel ). QwtPlotCurve also offers a couple of variations of setSamples(), that build QwtSeriesData objects from arrays internally.
+
c) Attach the curve to a plot
+
See QwtPlotItem::attach()
+
+
+
Example:
see examples/bode
+
See also:
QwtPointSeriesData, QwtSymbol, QwtScaleMap
+

Member Typedef Documentation

+ +
+
+ + + + +
typedef QFlags<CurveAttribute> QwtPlotCurve::CurveAttributes
+
+
+ +

Curve attributes.

+ +
+
+ +
+
+ + + + +
typedef QFlags<LegendAttribute> QwtPlotCurve::LegendAttributes
+
+
+ +

Legend attributes.

+ +
+
+ +
+
+ + + + +
typedef QFlags<PaintAttribute> QwtPlotCurve::PaintAttributes
+
+
+ +

Paint attributes.

+ +
+
+

Member Enumeration Documentation

+ +
+ +
+

Attribute for drawing the curve

+
See also:
setCurveAttribute(), testCurveAttribute(), curveFitter()
+
Enumerator:
+ + +
Inverted  +

For QwtPlotCurve::Steps only. Draws a step function from the right to the left.

+
Fitted  +

Only in combination with QwtPlotCurve::Lines A QwtCurveFitter tries to interpolate/smooth the curve, before it is painted.

+
Note:
Curve fitting requires temorary memory for calculating coefficients and additional points. If painting in QwtPlotCurve::Fitted mode is slow it might be better to fit the points, before they are passed to QwtPlotCurve.
+
+
+
+ +
+
+ +
+
+ + + + +
enum QwtPlotCurve::CurveStyle
+
+
+

Curve styles.

+
See also:
setStyle(), style()
+
Enumerator:
+ + + + + + +
NoCurve  +

Don't draw a curve. Note: This doesn't affect the symbols.

+
Lines  +

Connect the points with straight lines. The lines might be interpolated depending on the 'Fitted' attribute. Curve fitting can be configured using setCurveFitter().

+
Sticks  +

Draw vertical or horizontal sticks ( depending on the orientation() ) from a baseline which is defined by setBaseline().

+
Steps  +

Connect the points with a step function. The step function is drawn from the left to the right or vice versa, depending on the QwtPlotCurve::Inverted attribute.

+
Dots  +

Draw dots at the locations of the data points. Note: This is different from a dotted line (see setPen()), and faster as a curve in QwtPlotCurve::NoStyle style and a symbol painting a point.

+
UserCurve  +

Styles >= QwtPlotCurve::UserCurve are reserved for derived classes of QwtPlotCurve that overload drawCurve() with additional application specific curve types.

+
+
+
+ +
+
+ +
+ +
+

Attributes how to represent the curve on the legend

+
See also:
setLegendAttribute(), testLegendAttribute(), drawLegendIdentifier()
+
Enumerator:
+ + + + +
LegendNoAttribute  +

QwtPlotCurve tries to find a color representing the curve and paints a rectangle with it.

+
LegendShowLine  +

If the style() is not QwtPlotCurve::NoCurve a line is painted with the curve pen().

+
LegendShowSymbol  +

If the curve has a valid symbol it is painted.

+
LegendShowBrush  +

If the curve has a brush a rectangle filled with the curve brush() is painted.

+
+
+
+ +
+
+ +
+ +
+

Attributes to modify the drawing algorithm. The default setting enables ClipPolygons

+
See also:
setPaintAttribute(), testPaintAttribute()
+
Enumerator:
+ + +
ClipPolygons  +

Clip polygons before painting them. In situations, where points are far outside the visible area (f.e when zooming deep) this might be a substantial improvement for the painting performance

+
CacheSymbols  +

Paint the symbol to a QPixmap and paint the pixmap instead rendering the symbol for each point. The flag has no effect, when the curve is not painted to the canvas ( f.e when exporting the plot to a PDF document ).

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtPlotCurve::QwtPlotCurve (const QString & title = QString::null) [explicit]
+
+
+

Constructor

+
Parameters:
+ + +
titleTitle of the curve
+
+
+ +
+
+ +
+
+ + + + + + + + +
QwtPlotCurve::QwtPlotCurve (const QwtTexttitle) [explicit]
+
+
+

Constructor

+
Parameters:
+ + +
titleTitle of the curve
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtPlotCurve::~QwtPlotCurve () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
double QwtPlotCurve::baseline () const
+
+
+
Returns:
Value of the baseline
+
See also:
setBaseline()
+ +
+
+ +
+
+ + + + + + + +
const QBrush & QwtPlotCurve::brush () const
+
+
+
Returns:
Brush used to fill the area between lines and the baseline
+
See also:
setBrush(), setBaseline(), baseline()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotCurve::closePolyline (QPainter * painter,
const QwtScaleMapxMap,
const QwtScaleMapyMap,
QPolygonF & polygon 
) const [protected]
+
+
+ +

Complete a polygon to be a closed polygon including the area between the original polygon and the baseline.

+
Parameters:
+ + + + + +
painterPainter
xMapX map
yMapY map
polygonPolygon to be completed
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int QwtPlotCurve::closestPoint (const QPoint & pos,
double * dist = NULL 
) const
+
+
+

Find the closest curve point for a specific position

+
Parameters:
+ + + +
posPosition, where to look for the closest curve point
distIf dist != NULL, closestPoint() returns the distance between the position and the clostest curve point
+
+
+
Returns:
Index of the closest curve point, or -1 if none can be found ( f.e when the curve has no points )
+
Note:
closestPoint() implements a dumb algorithm, that iterates over all points
+ +
+
+ +
+
+ + + + + + + +
QwtCurveFitter * QwtPlotCurve::curveFitter () const
+
+
+

Get the curve fitter. If curve fitting is disabled NULL is returned.

+
Returns:
Curve fitter
+
See also:
setCurveFitter(), Fitted
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotCurve::drawCurve (QPainter * painter,
int style,
const QwtScaleMapxMap,
const QwtScaleMapyMap,
const QRectF & canvasRect,
int from,
int to 
) const [protected, virtual]
+
+
+ +

Draw the line part (without symbols) of a curve interval.

+
Parameters:
+ + + + + + + + +
painterPainter
stylecurve style, see QwtPlotCurve::CurveStyle
xMapx map
yMapy map
canvasRectContents rect of the canvas
fromindex of the first point to be painted
toindex of the last point to be painted
+
+
+
See also:
draw(), drawDots(), drawLines(), drawSteps(), drawSticks()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotCurve::drawDots (QPainter * painter,
const QwtScaleMapxMap,
const QwtScaleMapyMap,
const QRectF & canvasRect,
int from,
int to 
) const [protected]
+
+
+

Draw dots

+
Parameters:
+ + + + + + + +
painterPainter
xMapx map
yMapy map
canvasRectContents rect of the canvas
fromindex of the first point to be painted
toindex of the last point to be painted
+
+
+
See also:
draw(), drawCurve(), drawSticks(), drawLines(), drawSteps()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotCurve::drawLegendIdentifier (QPainter * painter,
const QRectF & rect 
) const [virtual]
+
+
+ +

Draw the identifier representing the curve on the legend.

+
Parameters:
+ + + +
painterPainter
rectBounding rectangle for the identifier
+
+
+
See also:
setLegendAttribute(), QwtPlotItem::Legend
+ +

Reimplemented from QwtLegendItemManager.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotCurve::drawLines (QPainter * painter,
const QwtScaleMapxMap,
const QwtScaleMapyMap,
const QRectF & canvasRect,
int from,
int to 
) const [protected]
+
+
+ +

Draw lines.

+

If the CurveAttribute Fitted is enabled a QwtCurveFitter tries to interpolate/smooth the curve, before it is painted.

+
Parameters:
+ + + + + + + +
painterPainter
xMapx map
yMapy map
canvasRectContents rect of the canvas
fromindex of the first point to be painted
toindex of the last point to be painted
+
+
+
See also:
setCurveAttribute(), setCurveFitter(), draw(), drawLines(), drawDots(), drawSteps(), drawSticks()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotCurve::drawSeries (QPainter * painter,
const QwtScaleMapxMap,
const QwtScaleMapyMap,
const QRectF & canvasRect,
int from,
int to 
) const [virtual]
+
+
+

Draw an interval of the curve

+
Parameters:
+ + + + + + + +
painterPainter
xMapMaps x-values into pixel coordinates.
yMapMaps y-values into pixel coordinates.
canvasRectContents rect of the canvas
fromIndex of the first point to be painted
toIndex of the last point to be painted. If to < 0 the curve will be painted to its last point.
+
+
+
See also:
drawCurve(), drawSymbols(),
+ +

Implements QwtPlotAbstractSeriesItem.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotCurve::drawSteps (QPainter * painter,
const QwtScaleMapxMap,
const QwtScaleMapyMap,
const QRectF & canvasRect,
int from,
int to 
) const [protected]
+
+
+

Draw step function

+

The direction of the steps depends on Inverted attribute.

+
Parameters:
+ + + + + + + +
painterPainter
xMapx map
yMapy map
canvasRectContents rect of the canvas
fromindex of the first point to be painted
toindex of the last point to be painted
+
+
+
See also:
CurveAttribute, setCurveAttribute(), draw(), drawCurve(), drawDots(), drawLines(), drawSticks()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotCurve::drawSticks (QPainter * painter,
const QwtScaleMapxMap,
const QwtScaleMapyMap,
const QRectF & canvasRect,
int from,
int to 
) const [protected]
+
+
+

Draw sticks

+
Parameters:
+ + + + + + + +
painterPainter
xMapx map
yMapy map
canvasRectContents rect of the canvas
fromindex of the first point to be painted
toindex of the last point to be painted
+
+
+
See also:
draw(), drawCurve(), drawDots(), drawLines(), drawSteps()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotCurve::drawSymbols (QPainter * painter,
const QwtSymbolsymbol,
const QwtScaleMapxMap,
const QwtScaleMapyMap,
const QRectF & canvasRect,
int from,
int to 
) const [protected, virtual]
+
+
+

Draw symbols

+
Parameters:
+ + + + + + + + +
painterPainter
symbolCurve symbol
xMapx map
yMapy map
canvasRectContents rect of the canvas
fromIndex of the first point to be painted
toIndex of the last point to be painted
+
+
+
See also:
setSymbol(), drawSeries(), drawCurve()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotCurve::fillCurve (QPainter * painter,
const QwtScaleMapxMap,
const QwtScaleMapyMap,
const QRectF & canvasRect,
QPolygonF & polygon 
) const [protected, virtual]
+
+
+

Fill the area between the curve and the baseline with the curve brush

+
Parameters:
+ + + + + + +
painterPainter
xMapx map
yMapy map
canvasRectContents rect of the canvas
polygonPolygon - will be modified !
+
+
+
See also:
setBrush(), setBaseline(), setStyle()
+ +
+
+ +
+
+ + + + + + + +
void QwtPlotCurve::init () [protected]
+
+
+ +

Initialize internal members.

+ +
+
+ +
+
+ + + + + + + +
double QwtPlotCurve::maxXValue () const [inline]
+
+
+ +

boundingRect().right()

+ +
+
+ +
+
+ + + + + + + +
double QwtPlotCurve::maxYValue () const [inline]
+
+
+ +

boundingRect().bottom()

+ +
+
+ +
+
+ + + + + + + +
double QwtPlotCurve::minXValue () const [inline]
+
+
+ +

boundingRect().left()

+ +
+
+ +
+
+ + + + + + + +
double QwtPlotCurve::minYValue () const [inline]
+
+
+ +

boundingRect().top()

+ +
+
+ +
+
+ + + + + + + +
const QPen & QwtPlotCurve::pen () const
+
+
+
Returns:
Pen used to draw the lines
+
See also:
setPen(), brush()
+ +
+
+ +
+
+ + + + + + + +
int QwtPlotCurve::rtti () const [virtual]
+
+
+
Returns:
QwtPlotItem::Rtti_PlotCurve
+ +

Reimplemented from QwtPlotItem.

+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotCurve::setBaseline (double value)
+
+
+ +

Set the value of the baseline.

+

The baseline is needed for filling the curve with a brush or the Sticks drawing style. The interpretation of the baseline depends on the CurveType. With QwtPlotCurve::Yfx, the baseline is interpreted as a horizontal line at y = baseline(), with QwtPlotCurve::Yfy, it is interpreted as a vertical line at x = baseline().

+

The default value is 0.0.

+
Parameters:
+ + +
valueValue of the baseline
+
+
+
See also:
baseline(), setBrush(), setStyle(), setStyle()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotCurve::setBrush (const QBrush & brush)
+
+
+ +

Assign a brush.

+

In case of brush.style() != QBrush::NoBrush and style() != QwtPlotCurve::Sticks the area between the curve and the baseline will be filled.

+

In case !brush.color().isValid() the area will be filled by pen.color(). The fill algorithm simply connects the first and the last curve point to the baseline. So the curve data has to be sorted (ascending or descending).

+
Parameters:
+ + +
brushNew brush
+
+
+
See also:
brush(), setBaseline(), baseline()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotCurve::setCurveAttribute (CurveAttribute attribute,
bool on = true 
)
+
+
+

Specify an attribute for drawing the curve

+
Parameters:
+ + + +
attributeCurve attribute
onOn/Off
+
+
+

/sa testCurveAttribute(), setCurveFitter()

+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotCurve::setCurveFitter (QwtCurveFittercurveFitter)
+
+
+

Assign a curve fitter

+

The curve fitter "smooths" the curve points, when the Fitted CurveAttribute is set. setCurveFitter(NULL) also disables curve fitting.

+

The curve fitter operates on the translated points ( = widget coordinates) to be functional for logarithmic scales. Obviously this is less performant for fitting algorithms, that reduce the number of points.

+

For situations, where curve fitting is used to improve the performance of painting huge series of points it might be better to execute the fitter on the curve points once and to cache the result in the QwtSeriesData object.

+
Parameters:
+ + +
curveFitter()Curve fitter
+
+
+
See also:
Fitted
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotCurve::setLegendAttribute (LegendAttribute attribute,
bool on = true 
)
+
+
+

Specify an attribute how to draw the legend identifier

+
Parameters:
+ + + +
attributeAttribute
onOn/Off /sa testLegendAttribute()
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotCurve::setPaintAttribute (PaintAttribute attribute,
bool on = true 
)
+
+
+

Specify an attribute how to draw the curve

+
Parameters:
+ + + +
attributePaint attribute
onOn/Off
+
+
+
See also:
testPaintAttribute()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotCurve::setPen (const QPen & pen)
+
+
+

Assign a pen

+
Parameters:
+ + +
penNew pen
+
+
+
See also:
pen(), brush()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotCurve::setRawSamples (const double * xData,
const double * yData,
int size 
)
+
+
+ +

Initialize the data by pointing to memory blocks which are not managed by QwtPlotCurve.

+

setRawSamples is provided for efficiency. It is important to keep the pointers during the lifetime of the underlying QwtCPointerData class.

+
Parameters:
+ + + + +
xDatapointer to x data
yDatapointer to y data
sizesize of x and y
+
+
+
See also:
QwtCPointerData
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotCurve::setSamples (const QVector< QPointF > & samples)
+
+
+

Initialize data with an array of points (explicitly shared).

+
Parameters:
+ + +
samplesVector of points
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotCurve::setSamples (const QVector< double > & xData,
const QVector< double > & yData 
)
+
+
+ +

Initialize data with x- and y-arrays (explicitly shared)

+
Parameters:
+ + + +
xDatax data
yDatay data
+
+
+
See also:
QwtPointArrayData
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotCurve::setSamples (const double * xData,
const double * yData,
int size 
)
+
+
+

Set data by copying x- and y-values from specified memory blocks. Contrary to setRawSamples(), this function makes a 'deep copy' of the data.

+
Parameters:
+ + + + +
xDatapointer to x values
yDatapointer to y values
sizesize of xData and yData
+
+
+
See also:
QwtPointArrayData
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotCurve::setStyle (CurveStyle style)
+
+
+

Set the curve's drawing style

+
Parameters:
+ + +
styleCurve style
+
+
+
See also:
style()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotCurve::setSymbol (const QwtSymbolsymbol)
+
+
+

Assign a symbol

+
Parameters:
+ + +
symbolSymbol
+
+
+
See also:
symbol()
+ +
+
+ +
+
+ + + + + + + +
QwtPlotCurve::CurveStyle QwtPlotCurve::style () const
+
+
+

Return the current style

+
See also:
setStyle()
+ +
+
+ +
+
+ + + + + + + +
const QwtSymbol * QwtPlotCurve::symbol () const
+
+
+
Returns:
Current symbol or NULL, when no symbol has been assigned
+
See also:
setSymbol()
+ +
+
+ +
+
+ + + + + + + + +
bool QwtPlotCurve::testCurveAttribute (CurveAttribute attribute) const
+
+
+
Returns:
true, if attribute is enabled
+
See also:
setCurveAttribute()
+ +
+
+ +
+
+ + + + + + + + +
bool QwtPlotCurve::testLegendAttribute (LegendAttribute attribute) const
+
+
+ +

Return the current paint attributes.

+
See also:
setLegendAttribute()
+ +
+
+ +
+
+ + + + + + + + +
bool QwtPlotCurve::testPaintAttribute (PaintAttribute attribute) const
+
+
+ +

Return the current paint attributes.

+
See also:
setPaintAttribute()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotCurve::updateLegend (QwtLegendlegend) const [virtual]
+
+
+ +

Update the widget that represents the item on the legend.

+
Parameters:
+ + +
legendLegend
+
+
+
See also:
drawLegendIdentifier(), legendItem(), QwtPlotItem::Legend
+ +

Reimplemented from QwtPlotItem.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_curve__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_curve__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_curve__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_curve__inherit__graph.map 2011-04-15 10:49:11.000000000 +0000 @@ -0,0 +1,7 @@ + + + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_curve__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_curve__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_curve__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_curve__inherit__graph.md5 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1 @@ +d069bd32983d4298a249f83bba030677 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_curve__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_curve__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_curve-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_curve-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_curve-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_curve-members.html 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,180 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPlotCurve Member List

+
+
+This is the complete list of members for QwtPlotCurve, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
attach(QwtPlot *plot)QwtPlotItem
AutoScale enum valueQwtPlotItem
baseline() const QwtPlotCurve
boundingRect() constQwtPlotSeriesItem< QPointF > [virtual]
brush() const QwtPlotCurve
CacheSymbols enum valueQwtPlotCurve
ClipPolygons enum valueQwtPlotCurve
closePolyline(QPainter *, const QwtScaleMap &, const QwtScaleMap &, QPolygonF &) const QwtPlotCurve [protected]
closestPoint(const QPoint &pos, double *dist=NULL) const QwtPlotCurve
CurveAttribute enum nameQwtPlotCurve
CurveAttributes typedefQwtPlotCurve
curveFitter() const QwtPlotCurve
CurveStyle enum nameQwtPlotCurve
d_seriesQwtPlotSeriesItem< QPointF > [protected]
data()QwtPlotSeriesItem< QPointF >
data() constQwtPlotSeriesItem< QPointF >
dataSize() constQwtPlotSeriesItem< QPointF >
detach()QwtPlotItem
Dots enum valueQwtPlotCurve
draw(QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &) const QwtPlotAbstractSeriesItem [virtual]
drawCurve(QPainter *p, int style, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const QwtPlotCurve [protected, virtual]
drawDots(QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const QwtPlotCurve [protected]
drawLegendIdentifier(QPainter *, const QRectF &) const QwtPlotCurve [virtual]
drawLines(QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const QwtPlotCurve [protected]
drawSeries(QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const QwtPlotCurve [virtual]
drawSteps(QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const QwtPlotCurve [protected]
drawSticks(QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const QwtPlotCurve [protected]
drawSymbols(QPainter *p, const QwtSymbol &, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const QwtPlotCurve [protected, virtual]
fillCurve(QPainter *, const QwtScaleMap &, const QwtScaleMap &, const QRectF &canvasRect, QPolygonF &) const QwtPlotCurve [protected, virtual]
Fitted enum valueQwtPlotCurve
hide()QwtPlotItem
init()QwtPlotCurve [protected]
Inverted enum valueQwtPlotCurve
isVisible() const QwtPlotItem
ItemAttribute enum nameQwtPlotItem
ItemAttributes typedefQwtPlotItem
itemChanged()QwtPlotItem [virtual]
Legend enum valueQwtPlotItem
LegendAttribute enum nameQwtPlotCurve
LegendAttributes typedefQwtPlotCurve
legendItem() const QwtPlotItem [virtual]
LegendNoAttribute enum valueQwtPlotCurve
LegendShowBrush enum valueQwtPlotCurve
LegendShowLine enum valueQwtPlotCurve
LegendShowSymbol enum valueQwtPlotCurve
Lines enum valueQwtPlotCurve
maxXValue() const QwtPlotCurve [inline]
maxYValue() const QwtPlotCurve [inline]
minXValue() const QwtPlotCurve [inline]
minYValue() const QwtPlotCurve [inline]
NoCurve enum valueQwtPlotCurve
orientation() const QwtPlotAbstractSeriesItem
PaintAttribute enum nameQwtPlotCurve
PaintAttributes typedefQwtPlotCurve
paintRect(const QwtScaleMap &, const QwtScaleMap &) const QwtPlotItem
pen() const QwtPlotCurve
plot() const QwtPlotItem
QwtLegendItemManager()QwtLegendItemManager [inline]
QwtPlotAbstractSeriesItem(const QString &title=QString::null)QwtPlotAbstractSeriesItem [explicit]
QwtPlotAbstractSeriesItem(const QwtText &title)QwtPlotAbstractSeriesItem [explicit]
QwtPlotCurve(const QString &title=QString::null)QwtPlotCurve [explicit]
QwtPlotCurve(const QwtText &title)QwtPlotCurve [explicit]
QwtPlotItem(const QwtText &title=QwtText())QwtPlotItem [explicit]
QwtPlotSeriesItem(const QString &title=QString::null)QwtPlotSeriesItem< QPointF > [explicit]
QwtPlotSeriesItem(const QwtText &title)QwtPlotSeriesItem< QPointF > [explicit]
RenderAntialiased enum valueQwtPlotItem
RenderHint enum nameQwtPlotItem
RenderHints typedefQwtPlotItem
rtti() const QwtPlotCurve [virtual]
Rtti_PlotCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotGrid enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotHistogram enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotIntervalCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotItem enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotMarker enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotScale enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSpectroCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSpectrogram enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSVG enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotUserItem enum value (defined in QwtPlotItem)QwtPlotItem
RttiValues enum nameQwtPlotItem
sample(int index) constQwtPlotSeriesItem< QPointF >
scaleRect(const QwtScaleMap &, const QwtScaleMap &) const QwtPlotItem
setAxes(int xAxis, int yAxis)QwtPlotItem
setBaseline(double ref)QwtPlotCurve
setBrush(const QBrush &)QwtPlotCurve
setCurveAttribute(CurveAttribute, bool on=true)QwtPlotCurve
setCurveFitter(QwtCurveFitter *)QwtPlotCurve
setData(QwtSeriesData< QPointF > *)QwtPlotSeriesItem< QPointF >
setItemAttribute(ItemAttribute, bool on=true)QwtPlotItem
setLegendAttribute(LegendAttribute, bool on=true)QwtPlotCurve
setOrientation(Qt::Orientation)QwtPlotAbstractSeriesItem
setPaintAttribute(PaintAttribute, bool on=true)QwtPlotCurve
setPen(const QPen &)QwtPlotCurve
setRawSamples(const double *xData, const double *yData, int size)QwtPlotCurve
setRenderHint(RenderHint, bool on=true)QwtPlotItem
setSamples(const double *xData, const double *yData, int size)QwtPlotCurve
setSamples(const QVector< double > &xData, const QVector< double > &yData)QwtPlotCurve
setSamples(const QVector< QPointF > &)QwtPlotCurve
setStyle(CurveStyle style)QwtPlotCurve
setSymbol(const QwtSymbol *s)QwtPlotCurve
setTitle(const QString &title)QwtPlotItem
setTitle(const QwtText &title)QwtPlotItem
setVisible(bool)QwtPlotItem [virtual]
setXAxis(int axis)QwtPlotItem
setYAxis(int axis)QwtPlotItem
setZ(double z)QwtPlotItem
show()QwtPlotItem
Steps enum valueQwtPlotCurve
Sticks enum valueQwtPlotCurve
style() const QwtPlotCurve
symbol() const QwtPlotCurve
testCurveAttribute(CurveAttribute) const QwtPlotCurve
testItemAttribute(ItemAttribute) const QwtPlotItem
testLegendAttribute(LegendAttribute) const QwtPlotCurve
testPaintAttribute(PaintAttribute) const QwtPlotCurve
testRenderHint(RenderHint) const QwtPlotItem
title() const QwtPlotItem
updateLegend(QwtLegend *) const QwtPlotCurve [virtual]
updateScaleDiv(const QwtScaleDiv &, const QwtScaleDiv &)QwtPlotSeriesItem< QPointF > [virtual]
UserCurve enum valueQwtPlotCurve
xAxis() const QwtPlotItem
yAxis() const QwtPlotItem
z() const QwtPlotItem
~QwtLegendItemManager()QwtLegendItemManager [inline, virtual]
~QwtPlotAbstractSeriesItem()QwtPlotAbstractSeriesItem [virtual]
~QwtPlotCurve()QwtPlotCurve [virtual]
~QwtPlotItem()QwtPlotItem [virtual]
~QwtPlotSeriesItem()QwtPlotSeriesItem< QPointF > [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_dict.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_dict.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_dict.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_dict.html 2011-04-15 10:49:24.000000000 +0000 @@ -0,0 +1,238 @@ + + + + +Qwt User's Guide: QwtPlotDict Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPlotDict Class Reference

+
+
+ +

A dictionary for plot items. +More...

+ +

#include <qwt_plot_dict.h>

+
+Inheritance diagram for QwtPlotDict:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + +

+Public Member Functions

 QwtPlotDict ()
virtual ~QwtPlotDict ()
void setAutoDelete (bool)
bool autoDelete () const
const QwtPlotItemList & itemList () const
QwtPlotItemList itemList (int rtti) const
void detachItems (int rtti=QwtPlotItem::Rtti_PlotItem, bool autoDelete=true)

+Friends

+class QwtPlotItem
+

Detailed Description

+

A dictionary for plot items.

+

QwtPlotDict organizes plot items in increasing z-order. If autoDelete() is enabled, all attached items will be deleted in the destructor of the dictionary.

+
See also:
QwtPlotItem::attach(), QwtPlotItem::detach(), QwtPlotItem::z()
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtPlotDict::QwtPlotDict () [explicit]
+
+
+

Constructor

+

Auto deletion is enabled.

+
See also:
setAutoDelete(), attachItem()
+ +
+
+ +
+
+ + + + + + + +
QwtPlotDict::~QwtPlotDict () [virtual]
+
+
+

Destructor

+

If autoDelete is on, all attached items will be deleted

+
See also:
setAutoDelete(), autoDelete(), attachItem()
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
bool QwtPlotDict::autoDelete () const
+
+
+
Returns:
true if auto deletion is enabled
+
See also:
setAutoDelete(), attachItem()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotDict::detachItems (int rtti = QwtPlotItem::Rtti_PlotItem,
bool autoDelete = true 
)
+
+
+

Detach items from the dictionary

+
Parameters:
+ + + +
rttiIn case of QwtPlotItem::Rtti_PlotItem detach all items otherwise only those items of the type rtti.
autoDeleteIf true, delete all detached items
+
+
+ +
+
+ +
+
+ + + + + + + + +
QwtPlotItemList QwtPlotDict::itemList (int rtti) const
+
+
+
Returns:
List of all attached plot items of a specific type.
+
See also:
QwtPlotItem::rtti()
+ +
+
+ +
+
+ + + + + + + +
const QwtPlotItemList & QwtPlotDict::itemList () const
+
+
+ +

A QwtPlotItemList of all attached plot items.

+

Use caution when iterating these lists, as removing/detaching an item will invalidate the iterator. Instead you can place pointers to objects to be removed in a removal list, and traverse that list later.

+
Returns:
List of all attached plot items.
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotDict::setAutoDelete (bool autoDelete)
+
+
+

En/Disable Auto deletion

+

If Auto deletion is on all attached plot items will be deleted in the destructor of QwtPlotDict. The default value is on.

+
See also:
autoDelete(), attachItem()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_dict__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_dict__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_dict__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_dict__inherit__graph.map 2011-04-15 10:49:11.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_dict__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_dict__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_dict__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_dict__inherit__graph.md5 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1 @@ +33bff988adf83de4e1d00373970da9d9 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_dict__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_dict__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_dict-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_dict-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_dict-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_dict-members.html 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,59 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPlotDict Member List

+
+
+This is the complete list of members for QwtPlotDict, including all inherited members. + + + + + + + + +
autoDelete() const QwtPlotDict
detachItems(int rtti=QwtPlotItem::Rtti_PlotItem, bool autoDelete=true)QwtPlotDict
itemList() const QwtPlotDict
itemList(int rtti) const QwtPlotDict
QwtPlotDict()QwtPlotDict [explicit]
QwtPlotItem (defined in QwtPlotDict)QwtPlotDict [friend]
setAutoDelete(bool)QwtPlotDict
~QwtPlotDict()QwtPlotDict [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_direct_painter.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_direct_painter.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_direct_painter.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_direct_painter.html 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,418 @@ + + + + +Qwt User's Guide: QwtPlotDirectPainter Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPlotDirectPainter Class Reference

+
+
+ +

Painter object trying to paint incrementally. +More...

+ +

#include <qwt_plot_directpainter.h>

+ +

List of all members.

+ + + + + + + + + + + + + + + + +

+Public Types

enum  Attribute {
+  AtomicPainter = 0x01, +
+  FullRepaint = 0x02, +
+  CopyBackingStore = 0x04 +
+ }
typedef QFlags< AttributeAttributes

+Public Member Functions

 QwtPlotDirectPainter (QObject *parent=NULL)
virtual ~QwtPlotDirectPainter ()
void setAttribute (Attribute, bool on)
bool testAttribute (Attribute) const
void setClipping (bool)
bool hasClipping () const
void setClipRegion (const QRegion &)
QRegion clipRegion () const
void drawSeries (QwtPlotAbstractSeriesItem *, int from, int to)
void reset ()
virtual bool eventFilter (QObject *, QEvent *)
+

Detailed Description

+

Painter object trying to paint incrementally.

+

Often applications want to display samples while they are collected. When there are too many samples complete replots will be expensive to be processed in a collection cycle.

+

QwtPlotDirectPainter offers an API to paint subsets ( f.e all additions points ) without erasing/repainting the plot canvas.

+

On certain environments it might be important to calculate a proper clip region before painting. F.e. for Qt Embedded only the clipped part of the backing store will be copied to a ( maybe unaccelerated ) frame buffer.

+
Warning:
Incremental painting will only help when no replot is triggered by another operation ( like changing scales ) and nothing needs to be erased.
+

Member Typedef Documentation

+ +
+
+ + + + +
typedef QFlags<Attribute> QwtPlotDirectPainter::Attributes
+
+
+ +

Paint attributes.

+ +
+
+

Member Enumeration Documentation

+ +
+ +
+ +

Paint attributes.

+
See also:
setAttribute(), testAttribute(), drawSeries()
+
Enumerator:
+ + + +
AtomicPainter  +

Initializing a QPainter is an expensive operation. When AtomicPainter is set each call of drawSeries() opens/closes a temporary QPainter. Otherwise QwtPlotDirectPainter tries to use the same QPainter as long as possible.

+
FullRepaint  +

When FullRepaint is set the plot canvas is explicitely repainted after the samples have been rendered.

+
CopyBackingStore  +

When QwtPlotCanvas::BackingStore is enabled the painter has to paint to the backing store and the widget. In certain situations/environments it might be faster to paint to the backing store only and then copy the backingstore to the canvas. This flag can also be useful for settings, where Qt fills the the clip region with the widget background.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtPlotDirectPainter::QwtPlotDirectPainter (QObject * parent = NULL)
+
+
+ +

Constructor.

+ +
+
+ +
+
+ + + + + + + +
QwtPlotDirectPainter::~QwtPlotDirectPainter () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
QRegion QwtPlotDirectPainter::clipRegion () const
+
+
+
Returns:
Currently set clip region.
+
See also:
setClipRegion(), setClipping(), hasClipping()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotDirectPainter::drawSeries (QwtPlotAbstractSeriesItemseriesItem,
int from,
int to 
)
+
+
+ +

Draw a set of points of a seriesItem.

+

When observing an measurement while it is running, new points have to be added to an existing seriesItem. drawSeries can be used to display them avoiding a complete redraw of the canvas.

+

Setting plot()->canvas()->setAttribute(Qt::WA_PaintOutsidePaintEvent, true); will result in faster painting, if the paint engine of the canvas widget supports this feature.

+
Parameters:
+ + + + +
seriesItemItem to be painted
fromIndex of the first point to be painted
toIndex of the last point to be painted. If to < 0 the series will be painted to its last point.
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
bool QwtPlotDirectPainter::eventFilter (QObject * ,
QEvent * event 
) [virtual]
+
+
+ +

Event filter.

+ +
+
+ +
+
+ + + + + + + +
bool QwtPlotDirectPainter::hasClipping () const
+
+
+
Returns:
true, when clipping is enabled
+
See also:
setClipping(), clipRegion(), setClipRegion()
+ +
+
+ +
+
+ + + + + + + +
void QwtPlotDirectPainter::reset ()
+
+
+ +

Close the internal QPainter.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotDirectPainter::setAttribute (Attribute attribute,
bool on 
)
+
+
+

Change an attribute

+
Parameters:
+ + + +
attributeAttribute to change
onOn/Off
+
+
+
See also:
Attribute, testAttribute()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotDirectPainter::setClipping (bool enable)
+
+
+

En/Disables clipping

+
Parameters:
+ + +
enableEnables clipping is true, disable it otherwise
+
+
+
See also:
hasClipping(), clipRegion(), setClipRegion()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotDirectPainter::setClipRegion (const QRegion & region)
+
+
+ +

Assign a clip region and enable clipping.

+

Depending on the environment setting a proper clip region might improve the performance heavily. F.e. on Qt embedded only the clipped part of the backing store will be copied to a ( maybe unaccelerated ) frame buffer device.

+
Parameters:
+ + +
regionClip region
+
+
+
See also:
clipRegion(), hasClipping(), setClipping()
+ +
+
+ +
+
+ + + + + + + + +
bool QwtPlotDirectPainter::testAttribute (Attribute attribute) const
+
+
+

Check if a attribute is set.

+
Parameters:
+ + +
attributeAttribute to be tested
+
+
+
See also:
Attribute, setAttribute()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_direct_painter-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_direct_painter-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_direct_painter-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_direct_painter-members.html 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,67 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPlotDirectPainter Member List

+
+ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_grid.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_grid.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_grid.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_grid.html 2011-04-15 10:49:24.000000000 +0000 @@ -0,0 +1,612 @@ + + + + +Qwt User's Guide: QwtPlotGrid Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPlotGrid Class Reference

+
+
+ +

A class which draws a coordinate grid. +More...

+ +

#include <qwt_plot_grid.h>

+
+Inheritance diagram for QwtPlotGrid:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 QwtPlotGrid ()
virtual ~QwtPlotGrid ()
virtual int rtti () const
void enableX (bool tf)
bool xEnabled () const
void enableY (bool tf)
bool yEnabled () const
void enableXMin (bool tf)
bool xMinEnabled () const
void enableYMin (bool tf)
bool yMinEnabled () const
void setXDiv (const QwtScaleDiv &sx)
const QwtScaleDivxScaleDiv () const
void setYDiv (const QwtScaleDiv &sy)
const QwtScaleDivyScaleDiv () const
void setPen (const QPen &p)
void setMajPen (const QPen &p)
const QPen & majPen () const
void setMinPen (const QPen &p)
const QPen & minPen () const
virtual void draw (QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &rect) const
virtual void updateScaleDiv (const QwtScaleDiv &xMap, const QwtScaleDiv &yMap)
+

Detailed Description

+

A class which draws a coordinate grid.

+

The QwtPlotGrid class can be used to draw a coordinate grid. A coordinate grid consists of major and minor vertical and horizontal gridlines. The locations of the gridlines are determined by the X and Y scale divisions which can be assigned with setXDiv() and setYDiv(). The draw() member draws the grid within a bounding rectangle.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtPlotGrid::QwtPlotGrid () [explicit]
+
+
+ +

Enables major grid, disables minor grid.

+ +
+
+ +
+
+ + + + + + + +
QwtPlotGrid::~QwtPlotGrid () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotGrid::draw (QPainter * painter,
const QwtScaleMapxMap,
const QwtScaleMapyMap,
const QRectF & canvasRect 
) const [virtual]
+
+
+ +

Draw the grid.

+

The grid is drawn into the bounding rectangle such that gridlines begin and end at the rectangle's borders. The X and Y maps are used to map the scale divisions into the drawing region screen.

+
Parameters:
+ + + + + +
painterPainter
xMapX axis map
yMapY axis
canvasRectContents rect of the plot canvas
+
+
+ +

Implements QwtPlotItem.

+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotGrid::enableX (bool tf)
+
+
+ +

Enable or disable vertical gridlines.

+
Parameters:
+ + +
tfEnable (true) or disable
+
+
+
See also:
Minor gridlines can be enabled or disabled with enableXMin()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotGrid::enableXMin (bool tf)
+
+
+ +

Enable or disable minor vertical gridlines.

+
Parameters:
+ + +
tfEnable (true) or disable
+
+
+
See also:
enableX()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotGrid::enableY (bool tf)
+
+
+ +

Enable or disable horizontal gridlines.

+
Parameters:
+ + +
tfEnable (true) or disable
+
+
+
See also:
Minor gridlines can be enabled or disabled with enableYMin()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotGrid::enableYMin (bool tf)
+
+
+ +

Enable or disable minor horizontal gridlines.

+
Parameters:
+ + +
tfEnable (true) or disable
+
+
+
See also:
enableY()
+ +
+
+ +
+
+ + + + + + + +
const QPen & QwtPlotGrid::majPen () const
+
+
+
Returns:
the pen for the major gridlines
+
See also:
setMajPen(), setMinPen(), setPen()
+ +
+
+ +
+
+ + + + + + + +
const QPen & QwtPlotGrid::minPen () const
+
+
+
Returns:
the pen for the minor gridlines
+
See also:
setMinPen(), setMajPen(), setPen()
+ +
+
+ +
+
+ + + + + + + +
int QwtPlotGrid::rtti () const [virtual]
+
+
+
Returns:
QwtPlotItem::Rtti_PlotGrid
+ +

Reimplemented from QwtPlotItem.

+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotGrid::setMajPen (const QPen & pen)
+
+
+

Assign a pen for the major gridlines

+
Parameters:
+ + +
penPen
+
+
+
See also:
majPen(), setMinPen(), setPen()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotGrid::setMinPen (const QPen & pen)
+
+
+

Assign a pen for the minor gridlines

+
Parameters:
+ + +
penPen
+
+
+
See also:
minPen(), setMajPen(), setPen()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotGrid::setPen (const QPen & pen)
+
+
+

Assign a pen for both major and minor gridlines

+
Parameters:
+ + +
penPen
+
+
+
See also:
setMajPen(), setMinPen()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotGrid::setXDiv (const QwtScaleDivscaleDiv)
+
+
+

Assign an x axis scale division

+
Parameters:
+ + +
scaleDivScale division
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotGrid::setYDiv (const QwtScaleDivscaleDiv)
+
+
+

Assign a y axis division

+
Parameters:
+ + +
scaleDivScale division
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotGrid::updateScaleDiv (const QwtScaleDivxScaleDiv,
const QwtScaleDivyScaleDiv 
) [virtual]
+
+
+

Update the grid to changes of the axes scale division

+
Parameters:
+ + + +
xScaleDivScale division of the x-axis
yScaleDivScale division of the y-axis
+
+
+
See also:
QwtPlot::updateAxes()
+ +

Reimplemented from QwtPlotItem.

+ +
+
+ +
+
+ + + + + + + +
bool QwtPlotGrid::xEnabled () const
+
+
+
Returns:
true if vertical gridlines are enabled
+
See also:
enableX()
+ +
+
+ +
+
+ + + + + + + +
bool QwtPlotGrid::xMinEnabled () const
+
+
+
Returns:
true if minor vertical gridlines are enabled
+
See also:
enableXMin()
+ +
+
+ +
+
+ + + + + + + +
const QwtScaleDiv & QwtPlotGrid::xScaleDiv () const
+
+
+
Returns:
the scale division of the x axis
+ +
+
+ +
+
+ + + + + + + +
bool QwtPlotGrid::yEnabled () const
+
+
+
Returns:
true if horizontal gridlines are enabled
+
See also:
enableY()
+ +
+
+ +
+
+ + + + + + + +
bool QwtPlotGrid::yMinEnabled () const
+
+
+
Returns:
true if minor horizontal gridlines are enabled
+
See also:
enableYMin()
+ +
+
+ +
+
+ + + + + + + +
const QwtScaleDiv & QwtPlotGrid::yScaleDiv () const
+
+
+
Returns:
the scale division of the y axis
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_grid__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_grid__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_grid__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_grid__inherit__graph.map 2011-04-15 10:49:11.000000000 +0000 @@ -0,0 +1,4 @@ + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_grid__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_grid__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_grid__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_grid__inherit__graph.md5 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1 @@ +71e2e1d480a4b55ee08fb508d45600f1 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_grid__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_grid__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_grid-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_grid-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_grid-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_grid-members.html 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,124 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPlotGrid Member List

+
+
+This is the complete list of members for QwtPlotGrid, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
attach(QwtPlot *plot)QwtPlotItem
AutoScale enum valueQwtPlotItem
boundingRect() const QwtPlotItem [virtual]
detach()QwtPlotItem
draw(QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &rect) const QwtPlotGrid [virtual]
drawLegendIdentifier(QPainter *, const QRectF &) const QwtLegendItemManager [inline, virtual]
enableX(bool tf)QwtPlotGrid
enableXMin(bool tf)QwtPlotGrid
enableY(bool tf)QwtPlotGrid
enableYMin(bool tf)QwtPlotGrid
hide()QwtPlotItem
isVisible() const QwtPlotItem
ItemAttribute enum nameQwtPlotItem
ItemAttributes typedefQwtPlotItem
itemChanged()QwtPlotItem [virtual]
Legend enum valueQwtPlotItem
legendItem() const QwtPlotItem [virtual]
majPen() const QwtPlotGrid
minPen() const QwtPlotGrid
paintRect(const QwtScaleMap &, const QwtScaleMap &) const QwtPlotItem
plot() const QwtPlotItem
QwtLegendItemManager()QwtLegendItemManager [inline]
QwtPlotGrid()QwtPlotGrid [explicit]
QwtPlotItem(const QwtText &title=QwtText())QwtPlotItem [explicit]
RenderAntialiased enum valueQwtPlotItem
RenderHint enum nameQwtPlotItem
RenderHints typedefQwtPlotItem
rtti() const QwtPlotGrid [virtual]
Rtti_PlotCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotGrid enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotHistogram enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotIntervalCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotItem enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotMarker enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotScale enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSpectroCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSpectrogram enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSVG enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotUserItem enum value (defined in QwtPlotItem)QwtPlotItem
RttiValues enum nameQwtPlotItem
scaleRect(const QwtScaleMap &, const QwtScaleMap &) const QwtPlotItem
setAxes(int xAxis, int yAxis)QwtPlotItem
setItemAttribute(ItemAttribute, bool on=true)QwtPlotItem
setMajPen(const QPen &p)QwtPlotGrid
setMinPen(const QPen &p)QwtPlotGrid
setPen(const QPen &p)QwtPlotGrid
setRenderHint(RenderHint, bool on=true)QwtPlotItem
setTitle(const QString &title)QwtPlotItem
setTitle(const QwtText &title)QwtPlotItem
setVisible(bool)QwtPlotItem [virtual]
setXAxis(int axis)QwtPlotItem
setXDiv(const QwtScaleDiv &sx)QwtPlotGrid
setYAxis(int axis)QwtPlotItem
setYDiv(const QwtScaleDiv &sy)QwtPlotGrid
setZ(double z)QwtPlotItem
show()QwtPlotItem
testItemAttribute(ItemAttribute) const QwtPlotItem
testRenderHint(RenderHint) const QwtPlotItem
title() const QwtPlotItem
updateLegend(QwtLegend *) const QwtPlotItem [virtual]
updateScaleDiv(const QwtScaleDiv &xMap, const QwtScaleDiv &yMap)QwtPlotGrid [virtual]
xAxis() const QwtPlotItem
xEnabled() const QwtPlotGrid
xMinEnabled() const QwtPlotGrid
xScaleDiv() const QwtPlotGrid
yAxis() const QwtPlotItem
yEnabled() const QwtPlotGrid
yMinEnabled() const QwtPlotGrid
yScaleDiv() const QwtPlotGrid
z() const QwtPlotItem
~QwtLegendItemManager()QwtLegendItemManager [inline, virtual]
~QwtPlotGrid()QwtPlotGrid [virtual]
~QwtPlotItem()QwtPlotItem [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_histogram.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_histogram.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_histogram.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_histogram.html 2011-04-15 10:49:24.000000000 +0000 @@ -0,0 +1,852 @@ + + + + +Qwt User's Guide: QwtPlotHistogram Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPlotHistogram Class Reference

+
+
+ +

QwtPlotHistogram represents a series of samples, where an interval is associated with a value ( $y = f([x1,x2])$ ). +More...

+ +

#include <qwt_plot_histogram.h>

+
+Inheritance diagram for QwtPlotHistogram:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Types

enum  HistogramStyle {
+  Outline, +
+  Columns, +
+  Lines, +
+  UserStyle = 100 +
+ }

+Public Member Functions

 QwtPlotHistogram (const QString &title=QString::null)
 QwtPlotHistogram (const QwtText &title)
virtual ~QwtPlotHistogram ()
virtual int rtti () const
void setPen (const QPen &)
const QPen & pen () const
void setBrush (const QBrush &)
const QBrush & brush () const
void setSamples (const QVector< QwtIntervalSample > &)
void setBaseline (double reference)
double baseline () const
void setStyle (HistogramStyle style)
HistogramStyle style () const
void setSymbol (const QwtColumnSymbol *)
const QwtColumnSymbolsymbol () const
virtual void drawSeries (QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const
virtual QRectF boundingRect () const
virtual void drawLegendIdentifier (QPainter *, const QRectF &) const

+Protected Member Functions

virtual QwtColumnRect columnRect (const QwtIntervalSample &, const QwtScaleMap &, const QwtScaleMap &) const
virtual void drawColumn (QPainter *, const QwtColumnRect &, const QwtIntervalSample &) const
void drawColumns (QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, int from, int to) const
void drawOutline (QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, int from, int to) const
void drawLines (QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, int from, int to) const
+

Detailed Description

+

QwtPlotHistogram represents a series of samples, where an interval is associated with a value ( $y = f([x1,x2])$ ).

+

The representation depends on the style() and an optional symbol() that is displayed for each interval.

+
Note:
The term "histogram" is used in a different way in the areas of digital image processing and statistics. Wikipedia introduces the terms "image histogram" and "color histogram" to avoid confusions. While "image histograms" can be displayed by a QwtPlotCurve there is no applicable plot item for a "color histogram" yet.
+

Member Enumeration Documentation

+ +
+ +
+

Histogram styles. The default style is QwtPlotHistogram::Columns.

+
See also:
setStyle(), style(), setSymbol(), symbol(), setBaseline()
+
Enumerator:
+ + + + +
Outline  +

Draw an outline around the area, that is build by all intervals using the pen() and fill it with the brush(). The outline style requires, that the intervals are in increasing order and not overlapping.

+
Columns  +

Draw a column for each interval. When a symbol() has been set the symbol is used otherwise the column is displayed as plain rectangle using pen() and brush().

+
Lines  +

Draw a simple line using the pen() for each interval.

+
UserStyle  +

Styles >= UserStyle are reserved for derived classes that overload drawSeries() with additional application specific ways to display a histogram.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtPlotHistogram::QwtPlotHistogram (const QString & title = QString::null) [explicit]
+
+
+

Constructor

+
Parameters:
+ + +
titleTitle of the histogram.
+
+
+ +
+
+ +
+
+ + + + + + + + +
QwtPlotHistogram::QwtPlotHistogram (const QwtTexttitle) [explicit]
+
+
+

Constructor

+
Parameters:
+ + +
titleTitle of the histogram.
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtPlotHistogram::~QwtPlotHistogram () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
double QwtPlotHistogram::baseline () const
+
+
+
Returns:
Value of the baseline
+
See also:
setBaseline()
+ +
+
+ +
+
+ + + + + + + +
QRectF QwtPlotHistogram::boundingRect () const [virtual]
+
+
+
Returns:
Bounding rectangle of all samples. For an empty series the rectangle is invalid.
+ +

Reimplemented from QwtPlotSeriesItem< QwtIntervalSample >.

+ +
+
+ +
+
+ + + + + + + +
const QBrush & QwtPlotHistogram::brush () const
+
+
+
Returns:
Brush used in a style() depending way.
+
See also:
setPen(), brush()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
QwtColumnRect QwtPlotHistogram::columnRect (const QwtIntervalSamplesample,
const QwtScaleMapxMap,
const QwtScaleMapyMap 
) const [protected, virtual]
+
+
+

Calculate the area that is covered by a sample

+
Parameters:
+ + + + +
sampleSample
xMapMaps x-values into pixel coordinates.
yMapMaps y-values into pixel coordinates.
+
+
+
Returns:
Rectangle, that is covered by a sample
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotHistogram::drawColumn (QPainter * painter,
const QwtColumnRectrect,
const QwtIntervalSamplesample 
) const [protected, virtual]
+
+
+

Draw a column for a sample in Columns style().

+

When a symbol() has been set the symbol is used otherwise the column is displayed as plain rectangle using pen() and brush().

+
Parameters:
+ + + + +
painterPainter
rectRectangle where to paint the column in paint device coordinates
sampleSample to be displayed
+
+
+
Note:
In applications, where different intervals need to be displayed in a different way ( f.e different colors or even using differnt symbols) it is recommended to overload drawColumn().
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotHistogram::drawColumns (QPainter * painter,
const QwtScaleMapxMap,
const QwtScaleMapyMap,
int from,
int to 
) const [protected]
+
+
+

Draw a histogram in Columns style()

+
Parameters:
+ + + + + + +
painterPainter
xMapMaps x-values into pixel coordinates.
yMapMaps y-values into pixel coordinates.
fromIndex of the first sample to be painted
toIndex of the last sample to be painted. If to < 0 the histogram will be painted to its last point.
+
+
+
See also:
setStyle(), style(), setSymbol(), drawColumn()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotHistogram::drawLegendIdentifier (QPainter * painter,
const QRectF & rect 
) const [virtual]
+
+
+

Draw a plain rectangle without pen using the brush() as identifier

+
Parameters:
+ + + +
painterPainter
rectBounding rectangle for the identifier
+
+
+ +

Reimplemented from QwtLegendItemManager.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotHistogram::drawLines (QPainter * painter,
const QwtScaleMapxMap,
const QwtScaleMapyMap,
int from,
int to 
) const [protected]
+
+
+

Draw a histogram in Lines style()

+
Parameters:
+ + + + + + +
painterPainter
xMapMaps x-values into pixel coordinates.
yMapMaps y-values into pixel coordinates.
fromIndex of the first sample to be painted
toIndex of the last sample to be painted. If to < 0 the histogram will be painted to its last point.
+
+
+
See also:
setStyle(), style(), setPen()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotHistogram::drawOutline (QPainter * painter,
const QwtScaleMapxMap,
const QwtScaleMapyMap,
int from,
int to 
) const [protected]
+
+
+

Draw a histogram in Outline style()

+
Parameters:
+ + + + + + +
painterPainter
xMapMaps x-values into pixel coordinates.
yMapMaps y-values into pixel coordinates.
fromIndex of the first sample to be painted
toIndex of the last sample to be painted. If to < 0 the histogram will be painted to its last point.
+
+
+
See also:
setStyle(), style()
+
Warning:
The outline style requires, that the intervals are in increasing order and not overlapping.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotHistogram::drawSeries (QPainter * painter,
const QwtScaleMapxMap,
const QwtScaleMapyMap,
const QRectF & canvasRect,
int from,
int to 
) const [virtual]
+
+
+

Draw a subset of the histogram samples

+
Parameters:
+ + + + + + + +
painterPainter
xMapMaps x-values into pixel coordinates.
yMapMaps y-values into pixel coordinates.
canvasRectContents rect of the canvas
fromIndex of the first sample to be painted
toIndex of the last sample to be painted. If to < 0 the series will be painted to its last sample.
+
+
+
See also:
drawOutline(), drawLines(), drawColumns
+ +

Implements QwtPlotAbstractSeriesItem.

+ +
+
+ +
+
+ + + + + + + +
const QPen & QwtPlotHistogram::pen () const
+
+
+
Returns:
Pen used in a style() depending way.
+
See also:
setPen(), brush()
+ +
+
+ +
+
+ + + + + + + +
int QwtPlotHistogram::rtti () const [virtual]
+
+
+
Returns:
QwtPlotItem::Rtti_PlotHistogram
+ +

Reimplemented from QwtPlotItem.

+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotHistogram::setBaseline (double value)
+
+
+ +

Set the value of the baseline.

+

Each column representing an QwtIntervalSample is defined by its interval and the interval between baseline and the value of the sample.

+

The default value of the baseline is 0.0.

+
Parameters:
+ + +
valueValue of the baseline
+
+
+
See also:
baseline()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotHistogram::setBrush (const QBrush & brush)
+
+
+

Assign a brush, that is used in a style() depending way.

+
Parameters:
+ + +
brushNew brush
+
+
+
See also:
pen(), brush()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotHistogram::setPen (const QPen & pen)
+
+
+

Assign a pen, that is used in a style() depending way.

+
Parameters:
+ + +
penNew pen
+
+
+
See also:
pen(), brush()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotHistogram::setSamples (const QVector< QwtIntervalSample > & samples)
+
+
+

Initialize data with an array of samples.

+
Parameters:
+ + +
samplesVector of points
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotHistogram::setStyle (HistogramStyle style)
+
+
+

Set the histogram's drawing style

+
Parameters:
+ + +
styleHistogram style
+
+
+
See also:
HistogramStyle, style()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotHistogram::setSymbol (const QwtColumnSymbolsymbol)
+
+
+ +

Assign a symbol.

+

In Column style an optional symbol can be assigned, that is responsible for displaying the rectangle that is defined by the interval and the distance between baseline() and value. When no symbol has been defined the area is displayed as plain rectangle using pen() and brush().

+
See also:
style(), symbol(), drawColumn(), pen(), brush()
+
Note:
In applications, where different intervals need to be displayed in a different way ( f.e different colors or even using differnt symbols) it is recommended to overload drawColumn().
+ +
+
+ +
+
+ + + + + + + +
QwtPlotHistogram::HistogramStyle QwtPlotHistogram::style () const
+
+
+

Return the current style

+
See also:
HistogramStyle, setStyle()
+ +
+
+ +
+
+ + + + + + + +
const QwtColumnSymbol * QwtPlotHistogram::symbol () const
+
+
+
Returns:
Current symbol or NULL, when no symbol has been assigned
+
See also:
setSymbol()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_histogram__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_histogram__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_histogram__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_histogram__inherit__graph.map 2011-04-15 10:49:11.000000000 +0000 @@ -0,0 +1,7 @@ + + + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_histogram__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_histogram__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_histogram__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_histogram__inherit__graph.md5 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1 @@ +4ccf1f01fdcecc0e963711fe627b01f7 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_histogram__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_histogram__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_histogram-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_histogram-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_histogram-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_histogram-members.html 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,144 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPlotHistogram Member List

+
+
+This is the complete list of members for QwtPlotHistogram, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
attach(QwtPlot *plot)QwtPlotItem
AutoScale enum valueQwtPlotItem
baseline() const QwtPlotHistogram
boundingRect() const QwtPlotHistogram [virtual]
brush() const QwtPlotHistogram
columnRect(const QwtIntervalSample &, const QwtScaleMap &, const QwtScaleMap &) const QwtPlotHistogram [protected, virtual]
Columns enum valueQwtPlotHistogram
d_seriesQwtPlotSeriesItem< QwtIntervalSample > [protected]
data()QwtPlotSeriesItem< QwtIntervalSample >
data() constQwtPlotSeriesItem< QwtIntervalSample >
dataSize() constQwtPlotSeriesItem< QwtIntervalSample >
detach()QwtPlotItem
draw(QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &) const QwtPlotAbstractSeriesItem [virtual]
drawColumn(QPainter *, const QwtColumnRect &, const QwtIntervalSample &) const QwtPlotHistogram [protected, virtual]
drawColumns(QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, int from, int to) const QwtPlotHistogram [protected]
drawLegendIdentifier(QPainter *, const QRectF &) const QwtPlotHistogram [virtual]
drawLines(QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, int from, int to) const QwtPlotHistogram [protected]
drawOutline(QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, int from, int to) const QwtPlotHistogram [protected]
drawSeries(QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const QwtPlotHistogram [virtual]
hide()QwtPlotItem
HistogramStyle enum nameQwtPlotHistogram
isVisible() const QwtPlotItem
ItemAttribute enum nameQwtPlotItem
ItemAttributes typedefQwtPlotItem
itemChanged()QwtPlotItem [virtual]
Legend enum valueQwtPlotItem
legendItem() const QwtPlotItem [virtual]
Lines enum valueQwtPlotHistogram
orientation() const QwtPlotAbstractSeriesItem
Outline enum valueQwtPlotHistogram
paintRect(const QwtScaleMap &, const QwtScaleMap &) const QwtPlotItem
pen() const QwtPlotHistogram
plot() const QwtPlotItem
QwtLegendItemManager()QwtLegendItemManager [inline]
QwtPlotAbstractSeriesItem(const QString &title=QString::null)QwtPlotAbstractSeriesItem [explicit]
QwtPlotAbstractSeriesItem(const QwtText &title)QwtPlotAbstractSeriesItem [explicit]
QwtPlotHistogram(const QString &title=QString::null)QwtPlotHistogram [explicit]
QwtPlotHistogram(const QwtText &title)QwtPlotHistogram [explicit]
QwtPlotItem(const QwtText &title=QwtText())QwtPlotItem [explicit]
QwtPlotSeriesItem(const QString &title=QString::null)QwtPlotSeriesItem< QwtIntervalSample > [explicit]
QwtPlotSeriesItem(const QwtText &title)QwtPlotSeriesItem< QwtIntervalSample > [explicit]
RenderAntialiased enum valueQwtPlotItem
RenderHint enum nameQwtPlotItem
RenderHints typedefQwtPlotItem
rtti() const QwtPlotHistogram [virtual]
Rtti_PlotCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotGrid enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotHistogram enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotIntervalCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotItem enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotMarker enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotScale enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSpectroCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSpectrogram enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSVG enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotUserItem enum value (defined in QwtPlotItem)QwtPlotItem
RttiValues enum nameQwtPlotItem
sample(int index) constQwtPlotSeriesItem< QwtIntervalSample >
scaleRect(const QwtScaleMap &, const QwtScaleMap &) const QwtPlotItem
setAxes(int xAxis, int yAxis)QwtPlotItem
setBaseline(double reference)QwtPlotHistogram
setBrush(const QBrush &)QwtPlotHistogram
setData(QwtSeriesData< QwtIntervalSample > *)QwtPlotSeriesItem< QwtIntervalSample >
setItemAttribute(ItemAttribute, bool on=true)QwtPlotItem
setOrientation(Qt::Orientation)QwtPlotAbstractSeriesItem
setPen(const QPen &)QwtPlotHistogram
setRenderHint(RenderHint, bool on=true)QwtPlotItem
setSamples(const QVector< QwtIntervalSample > &)QwtPlotHistogram
setStyle(HistogramStyle style)QwtPlotHistogram
setSymbol(const QwtColumnSymbol *)QwtPlotHistogram
setTitle(const QString &title)QwtPlotItem
setTitle(const QwtText &title)QwtPlotItem
setVisible(bool)QwtPlotItem [virtual]
setXAxis(int axis)QwtPlotItem
setYAxis(int axis)QwtPlotItem
setZ(double z)QwtPlotItem
show()QwtPlotItem
style() const QwtPlotHistogram
symbol() const QwtPlotHistogram
testItemAttribute(ItemAttribute) const QwtPlotItem
testRenderHint(RenderHint) const QwtPlotItem
title() const QwtPlotItem
updateLegend(QwtLegend *) const QwtPlotItem [virtual]
updateScaleDiv(const QwtScaleDiv &, const QwtScaleDiv &)QwtPlotSeriesItem< QwtIntervalSample > [virtual]
UserStyle enum valueQwtPlotHistogram
xAxis() const QwtPlotItem
yAxis() const QwtPlotItem
z() const QwtPlotItem
~QwtLegendItemManager()QwtLegendItemManager [inline, virtual]
~QwtPlotAbstractSeriesItem()QwtPlotAbstractSeriesItem [virtual]
~QwtPlotHistogram()QwtPlotHistogram [virtual]
~QwtPlotItem()QwtPlotItem [virtual]
~QwtPlotSeriesItem()QwtPlotSeriesItem< QwtIntervalSample > [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot.html 2011-04-15 10:49:23.000000000 +0000 @@ -0,0 +1,2146 @@ + + + + +Qwt User's Guide: QwtPlot Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+ +
+ +

A 2-D plotting widget. +More...

+ +

#include <qwt_plot.h>

+
+Inheritance diagram for QwtPlot:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Types

enum  Axis {
+  yLeft, +
+  yRight, +
+  xBottom, +
+  xTop, +
+  axisCnt +
+ }
enum  LegendPosition {
+  LeftLegend, +
+  RightLegend, +
+  BottomLegend, +
+  TopLegend, +
+  ExternalLegend +
+ }

+Public Slots

virtual void replot ()
void autoRefresh ()

+Signals

void legendClicked (QwtPlotItem *plotItem)
void legendChecked (QwtPlotItem *plotItem, bool on)

+Public Member Functions

 QwtPlot (QWidget *=NULL)
 QwtPlot (const QwtText &title, QWidget *p=NULL)
virtual ~QwtPlot ()
void applyProperties (const QString &)
QString grabProperties () const
void setAutoReplot (bool tf=true)
bool autoReplot () const
QwtPlotLayoutplotLayout ()
const QwtPlotLayoutplotLayout () const
void setTitle (const QString &)
void setTitle (const QwtText &t)
QwtText title () const
QwtTextLabeltitleLabel ()
const QwtTextLabeltitleLabel () const
QwtPlotCanvascanvas ()
const QwtPlotCanvascanvas () const
void setCanvasBackground (const QBrush &)
QBrush canvasBackground () const
void setCanvasLineWidth (int w)
int canvasLineWidth () const
virtual QwtScaleMap canvasMap (int axisId) const
double invTransform (int axisId, int pos) const
double transform (int axisId, double value) const
QwtScaleEngineaxisScaleEngine (int axisId)
const QwtScaleEngineaxisScaleEngine (int axisId) const
void setAxisScaleEngine (int axisId, QwtScaleEngine *)
void setAxisAutoScale (int axisId, bool on=true)
bool axisAutoScale (int axisId) const
void enableAxis (int axisId, bool tf=true)
bool axisEnabled (int axisId) const
void setAxisFont (int axisId, const QFont &f)
QFont axisFont (int axisId) const
void setAxisScale (int axisId, double min, double max, double step=0)
void setAxisScaleDiv (int axisId, const QwtScaleDiv &)
void setAxisScaleDraw (int axisId, QwtScaleDraw *)
double axisStepSize (int axisId) const
QwtInterval axisInterval (int axisId) const
const QwtScaleDivaxisScaleDiv (int axisId) const
QwtScaleDivaxisScaleDiv (int axisId)
const QwtScaleDrawaxisScaleDraw (int axisId) const
QwtScaleDrawaxisScaleDraw (int axisId)
const QwtScaleWidgetaxisWidget (int axisId) const
QwtScaleWidgetaxisWidget (int axisId)
void setAxisLabelAlignment (int axisId, Qt::Alignment)
void setAxisLabelRotation (int axisId, double rotation)
void setAxisTitle (int axisId, const QString &)
void setAxisTitle (int axisId, const QwtText &)
QwtText axisTitle (int axisId) const
void setAxisMaxMinor (int axisId, int maxMinor)
int axisMaxMinor (int axisId) const
void setAxisMaxMajor (int axisId, int maxMajor)
int axisMaxMajor (int axisId) const
void insertLegend (QwtLegend *, LegendPosition=QwtPlot::RightLegend, double ratio=-1.0)
QwtLegendlegend ()
const QwtLegendlegend () const
virtual QSize sizeHint () const
virtual QSize minimumSizeHint () const
virtual void updateLayout ()
virtual void drawCanvas (QPainter *)
void updateAxes ()
virtual bool event (QEvent *)
virtual void drawItems (QPainter *, const QRectF &, const QwtScaleMap maps[axisCnt]) const

+Protected Slots

virtual void legendItemClicked ()
virtual void legendItemChecked (bool)

+Protected Member Functions

virtual void updateTabOrder ()
virtual void resizeEvent (QResizeEvent *e)

+Static Protected Member Functions

static bool axisValid (int axisId)
+

Detailed Description

+

A 2-D plotting widget.

+

QwtPlot is a widget for plotting two-dimensional graphs. An unlimited number of plot items can be displayed on its canvas. Plot items might be curves (QwtPlotCurve), markers (QwtPlotMarker), the grid (QwtPlotGrid), or anything else derived from QwtPlotItem. A plot can have up to four axes, with each plot item attached to an x- and a y axis. The scales at the axes can be explicitely set (QwtScaleDiv), or are calculated from the plot items, using algorithms (QwtScaleEngine) which can be configured separately for each axis.

+
+plot.png +
+
Example
The following example shows (schematically) the most simple way to use QwtPlot. By default, only the left and bottom axes are visible and their scales are computed automatically.
+#include <qwt_plot.h>
+#include <qwt_plot_curve.h>
+
+QwtPlot *myPlot = new QwtPlot("Two Curves", parent);
+
+// add curves
+QwtPlotCurve *curve1 = new QwtPlotCurve("Curve 1");
+QwtPlotCurve *curve2 = new QwtPlotCurve("Curve 2");
+
+// copy the data into the curves
+curve1->setData(...);
+curve2->setData(...);
+
+curve1->attach(myPlot);
+curve2->attach(myPlot);
+
+// finally, refresh the plot
+myPlot->replot();
+
+

Member Enumeration Documentation

+ +
+
+ + + + +
enum QwtPlot::Axis
+
+
+ +

Axis index.

+
Enumerator:
+ + + + + +
yLeft  +

Y axis left of the canvas.

+
yRight  +

Y axis right of the canvas.

+
xBottom  +

X axis below the canvas.

+
xTop  +

X axis above the canvas.

+
axisCnt  +

Number of axes.

+
+
+
+ +
+
+ +
+
+ + + + +
enum QwtPlot::LegendPosition
+
+
+

Position of the legend, relative to the canvas.

+
See also:
insertLegend()
+
Note:
In case of ExternalLegend, the legend is not handled by QwtPlotRenderer
+
Enumerator:
+ + + + + +
LeftLegend  +

The legend will be left from the QwtPlot::yLeft axis.

+
RightLegend  +

The legend will be right from the QwtPlot::yRight axis.

+
BottomLegend  +

The legend will be below QwtPlot::xBottom axis.

+
TopLegend  +

The legend will be between QwtPlot::xTop axis and the title.

+
ExternalLegend  +

External means that only the content of the legend will be handled by QwtPlot, but not its geometry. This type can be used to have a legend in an external window ( or on the canvas ).

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtPlot::QwtPlot (QWidget * parent = NULL) [explicit]
+
+
+ +

Constructor.

+
Parameters:
+ + +
parentParent widget
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
QwtPlot::QwtPlot (const QwtTexttitle,
QWidget * parent = NULL 
) [explicit]
+
+
+ +

Constructor.

+
Parameters:
+ + + +
titleTitle text
parentParent widget
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtPlot::~QwtPlot () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + +
void QwtPlot::applyProperties (const QString & )
+
+
+

This method is intended for manipulating the plot widget from a specific editor in the Qwt designer plugin.

+
Warning:
The plot editor has never been implemented.
+ +
+
+ +
+
+ + + + + + + +
void QwtPlot::autoRefresh () [slot]
+
+
+ +

Replots the plot if autoReplot() is true.

+ +
+
+ +
+
+ + + + + + + +
bool QwtPlot::autoReplot () const
+
+
+
Returns:
true if the autoReplot option is set.
+
See also:
setAutoReplot()
+ +
+
+ +
+
+ + + + + + + + +
bool QwtPlot::axisAutoScale (int axisId) const
+
+
+
Returns:
true if autoscaling is enabled
+
Parameters:
+ + +
axisIdaxis index
+
+
+ +
+
+ +
+
+ + + + + + + + +
bool QwtPlot::axisEnabled (int axisId) const
+
+
+
Returns:
true if a specified axis is enabled
+
Parameters:
+ + +
axisIdaxis index
+
+
+ +
+
+ +
+
+ + + + + + + + +
QFont QwtPlot::axisFont (int axisId) const
+
+
+
Returns:
the font of the scale labels for a specified axis
+
Parameters:
+ + +
axisIdaxis index
+
+
+ +
+
+ +
+
+ + + + + + + + +
QwtInterval QwtPlot::axisInterval (int axisId) const
+
+
+ +

Return the current interval of the specified axis.

+

This is only a convenience function for axisScaleDiv( axisId )->interval();

+
Parameters:
+ + +
axisIdaxis index
+
+
+
Returns:
Scale interval
+
See also:
QwtScaleDiv, axisScaleDiv()
+ +
+
+ +
+
+ + + + + + + + +
int QwtPlot::axisMaxMajor (int axisId) const
+
+
+
Returns:
the maximum number of major ticks for a specified axis
+
Parameters:
+ + +
axisIdaxis index
+
+
+
See also:
setAxisMaxMajor()
+ +
+
+ +
+
+ + + + + + + + +
int QwtPlot::axisMaxMinor (int axisId) const
+
+
+
Returns:
the maximum number of minor ticks for a specified axis
+
Parameters:
+ + +
axisIdaxis index
+
+
+
See also:
setAxisMaxMinor()
+ +
+
+ +
+
+ + + + + + + + +
const QwtScaleDiv * QwtPlot::axisScaleDiv (int axisId) const
+
+
+ +

Return the scale division of a specified axis.

+

axisScaleDiv(axisId)->lowerBound(), axisScaleDiv(axisId)->upperBound() are the current limits of the axis scale.

+
Parameters:
+ + +
axisIdaxis index
+
+
+
Returns:
Scale division
+
See also:
QwtScaleDiv, setAxisScaleDiv()
+ +
+
+ +
+
+ + + + + + + + +
QwtScaleDiv * QwtPlot::axisScaleDiv (int axisId)
+
+
+ +

Return the scale division of a specified axis.

+

axisScaleDiv(axisId)->lowerBound(), axisScaleDiv(axisId)->upperBound() are the current limits of the axis scale.

+
Parameters:
+ + +
axisIdaxis index
+
+
+
Returns:
Scale division
+
See also:
QwtScaleDiv, setAxisScaleDiv()
+ +
+
+ +
+
+ + + + + + + + +
const QwtScaleDraw * QwtPlot::axisScaleDraw (int axisId) const
+
+
+
Returns:
the scale draw of a specified axis
+
Parameters:
+ + +
axisIdaxis index
+
+
+
Returns:
specified scaleDraw for axis, or NULL if axis is invalid.
+
See also:
QwtScaleDraw
+ +
+
+ +
+
+ + + + + + + + +
QwtScaleDraw * QwtPlot::axisScaleDraw (int axisId)
+
+
+
Returns:
the scale draw of a specified axis
+
Parameters:
+ + +
axisIdaxis index
+
+
+
Returns:
specified scaleDraw for axis, or NULL if axis is invalid.
+
See also:
QwtScaleDraw
+ +
+
+ +
+
+ + + + + + + + +
QwtScaleEngine * QwtPlot::axisScaleEngine (int axisId)
+
+
+
Parameters:
+ + +
axisIdaxis index
+
+
+
Returns:
Scale engine for a specific axis
+ +
+
+ +
+
+ + + + + + + + +
const QwtScaleEngine * QwtPlot::axisScaleEngine (int axisId) const
+
+
+
Parameters:
+ + +
axisIdaxis index
+
+
+
Returns:
Scale engine for a specific axis
+ +
+
+ +
+
+ + + + + + + + +
double QwtPlot::axisStepSize (int axisId) const
+
+
+

Return the step size parameter, that has been set in setAxisScale. This doesn't need to be the step size of the current scale.

+
Parameters:
+ + +
axisIdaxis index
+
+
+
Returns:
step size parameter value
+
See also:
setAxisScale()
+ +
+
+ +
+
+ + + + + + + + +
QwtText QwtPlot::axisTitle (int axisId) const
+
+
+
Returns:
the title of a specified axis
+
Parameters:
+ + +
axisIdaxis index
+
+
+ +
+
+ +
+
+ + + + + + + + +
bool QwtPlot::axisValid (int axisId) [static, protected]
+
+
+
Returns:
true if the specified axis exists, otherwise false
+
Parameters:
+ + +
axisIdaxis index
+
+
+ +
+
+ +
+
+ + + + + + + + +
const QwtScaleWidget * QwtPlot::axisWidget (int axisId) const
+
+
+
Returns:
specified axis, or NULL if axisId is invalid.
+
Parameters:
+ + +
axisIdaxis index
+
+
+ +
+
+ +
+
+ + + + + + + + +
QwtScaleWidget * QwtPlot::axisWidget (int axisId)
+
+
+
Returns:
specified axis, or NULL if axisId is invalid.
+
Parameters:
+ + +
axisIdaxis index
+
+
+ +
+
+ +
+
+ + + + + + + +
const QwtPlotCanvas * QwtPlot::canvas () const
+
+
+
Returns:
the plot's canvas
+ +
+
+ +
+
+ + + + + + + +
QwtPlotCanvas * QwtPlot::canvas ()
+
+
+
Returns:
the plot's canvas
+ +
+
+ +
+
+ + + + + + + +
QBrush QwtPlot::canvasBackground () const
+
+
+

Nothing else than: canvas()->palette().brush( QPalette::Normal, QPalette::Window);

+
Returns:
Background brush of the plotting area.
+
See also:
setCanvasBackground()
+ +
+
+ +
+
+ + + + + + + +
int QwtPlot::canvasLineWidth () const
+
+
+

Nothing else than: canvas()->lineWidth(), left for compatibility only.

+
Returns:
the border width of the plotting area
+ +
+
+ +
+
+ + + + + + + + +
QwtScaleMap QwtPlot::canvasMap (int axisId) const [virtual]
+
+
+
Parameters:
+ + +
axisIdAxis
+
+
+
Returns:
Map for the axis on the canvas. With this map pixel coordinates can translated to plot coordinates and vice versa.
+
See also:
QwtScaleMap, transform(), invTransform()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlot::drawCanvas (QPainter * painter) [virtual]
+
+
+

Redraw the canvas.

+
Parameters:
+ + +
painterPainter used for drawing
+
+
+
Warning:
drawCanvas calls drawItems what is also used for printing. Applications that like to add individual plot items better overload drawItems()
+
See also:
drawItems()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlot::drawItems (QPainter * painter,
const QRectF & canvasRect,
const QwtScaleMap map[axisCnt] 
) const [virtual]
+
+
+

Redraw the canvas items.

+
Parameters:
+ + + + +
painterPainter used for drawing
canvasRectBounding rectangle where to paint
mapQwtPlot::axisCnt maps, mapping between plot and paint device coordinates
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlot::enableAxis (int axisId,
bool tf = true 
)
+
+
+ +

Enable or disable a specified axis.

+

When an axis is disabled, this only means that it is not visible on the screen. Curves, markers and can be attached to disabled axes, and transformation of screen coordinates into values works as normal.

+

Only xBottom and yLeft are enabled by default.

+
Parameters:
+ + + +
axisIdaxis index
tftrue (enabled) or false (disabled)
+
+
+ +
+
+ +
+
+ + + + + + + + +
bool QwtPlot::event (QEvent * event) [virtual]
+
+
+ +

Adds handling of layout requests.

+
Parameters:
+ + +
eventEvent
+
+
+ +
+
+ +
+
+ + + + + + + +
QString QwtPlot::grabProperties () const
+
+
+

This method is intended for manipulating the plot widget from a specific editor in the Qwt designer plugin.

+
Warning:
The plot editor has never been implemented.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlot::insertLegend (QwtLegendlegend,
QwtPlot::LegendPosition pos = QwtPlot::RightLegend,
double ratio = -1.0 
)
+
+
+ +

Insert a legend.

+

If the position legend is QwtPlot::LeftLegend or QwtPlot::RightLegend the legend will be organized in one column from top to down. Otherwise the legend items will be placed in a table with a best fit number of columns from left to right.

+

If pos != QwtPlot::ExternalLegend the plot widget will become parent of the legend. It will be deleted when the plot is deleted, or another legend is set with insertLegend().

+
Parameters:
+ + + + +
legendLegend
posThe legend's position. For top/left position the number of colums will be limited to 1, otherwise it will be set to unlimited.
ratioRatio between legend and the bounding rect of title, canvas and axes. The legend will be shrinked if it would need more space than the given ratio. The ratio is limited to ]0.0 .. 1.0]. In case of <= 0.0 it will be reset to the default ratio. The default vertical/horizontal ratio is 0.33/0.5.
+
+
+
See also:
legend(), QwtPlotLayout::legendPosition(), QwtPlotLayout::setLegendPosition()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
double QwtPlot::invTransform (int axisId,
int pos 
) const
+
+
+

Transform the x or y coordinate of a position in the drawing region into a value.

+
Parameters:
+ + + +
axisIdaxis index
posposition
+
+
+
Warning:
The position can be an x or a y coordinate, depending on the specified axis.
+ +
+
+ +
+
+ + + + + + + +
QwtLegend * QwtPlot::legend ()
+
+
+
Returns:
the plot's legend
+
See also:
insertLegend()
+ +
+
+ +
+
+ + + + + + + +
const QwtLegend * QwtPlot::legend () const
+
+
+
Returns:
the plot's legend
+
See also:
insertLegend()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlot::legendChecked (QwtPlotItemplotItem,
bool on 
) [signal]
+
+
+

A signal which is emitted when the user has clicked on a legend item, which is in QwtLegend::CheckableItem mode

+
Parameters:
+ + + +
plotItemCorresponding plot item of the selected legend item
onTrue when the legen item is checked
+
+
+
Note:
clicks are disabled as default
+
See also:
QwtLegend::setItemMode(), QwtLegend::itemMode()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlot::legendClicked (QwtPlotItemplotItem) [signal]
+
+
+

A signal which is emitted when the user has clicked on a legend item, which is in QwtLegend::ClickableItem mode.

+
Parameters:
+ + +
plotItemCorresponding plot item of the selected legend item
+
+
+
Note:
clicks are disabled as default
+
See also:
QwtLegend::setItemMode(), QwtLegend::itemMode()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlot::legendItemChecked (bool on) [protected, virtual, slot]
+
+
+

Called internally when the legend has been checked Emits a legendClicked() signal.

+ +
+
+ +
+
+ + + + + + + +
void QwtPlot::legendItemClicked () [protected, virtual, slot]
+
+
+

Called internally when the legend has been clicked on. Emits a legendClicked() signal.

+ +
+
+ +
+
+ + + + + + + +
QSize QwtPlot::minimumSizeHint () const [virtual]
+
+
+ +

Return a minimum size hint.

+ +
+
+ +
+
+ + + + + + + +
const QwtPlotLayout * QwtPlot::plotLayout () const
+
+
+
Returns:
the plot's titel label.
+ +
+
+ +
+
+ + + + + + + +
QwtPlotLayout * QwtPlot::plotLayout ()
+
+
+
Returns:
the plot's title
+ +
+
+ +
+
+ + + + + + + +
void QwtPlot::replot () [virtual, slot]
+
+
+ +

Redraw the plot.

+

If the autoReplot option is not set (which is the default) or if any curves are attached to raw data, the plot has to be refreshed explicitly in order to make changes visible.

+
See also:
setAutoReplot()
+
Warning:
Calls canvas()->repaint, take care of infinite recursions
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlot::resizeEvent (QResizeEvent * e) [protected, virtual]
+
+
+

Resize and update internal layout

+
Parameters:
+ + +
eResize event
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlot::setAutoReplot (bool tf = true)
+
+
+ +

Set or reset the autoReplot option.

+

If the autoReplot option is set, the plot will be updated implicitly by manipulating member functions. Since this may be time-consuming, it is recommended to leave this option switched off and call replot() explicitly if necessary.

+

The autoReplot option is set to false by default, which means that the user has to call replot() in order to make changes visible.

+
Parameters:
+ + +
tftrue or false. Defaults to true.
+
+
+
See also:
replot()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlot::setAxisAutoScale (int axisId,
bool on = true 
)
+
+
+ +

Enable autoscaling for a specified axis.

+

This member function is used to switch back to autoscaling mode after a fixed scale has been set. Autoscaling is enabled by default.

+
Parameters:
+ + + +
axisIdaxis index
onOn/Off
+
+
+
See also:
setAxisScale(), setAxisScaleDiv(), updateAxes()
+
Note:
The autoscaling flag has no effect until updateAxes() is executed ( called by replot() ).
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlot::setAxisFont (int axisId,
const QFont & f 
)
+
+
+ +

Change the font of an axis.

+
Parameters:
+ + + +
axisIdaxis index
ffont
+
+
+
Warning:
This function changes the font of the tick labels, not of the axis title.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlot::setAxisLabelAlignment (int axisId,
Qt::Alignment alignment 
)
+
+
+

Change the alignment of the tick labels

+
Parameters:
+ + + +
axisIdaxis index
alignmentOr'd Qt::AlignmentFlags <see qnamespace.h>
+
+
+
See also:
QwtScaleDraw::setLabelAlignment()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlot::setAxisLabelRotation (int axisId,
double rotation 
)
+
+
+

Rotate all tick labels

+
Parameters:
+ + + +
axisIdaxis index
rotationAngle in degrees. When changing the label rotation, the label alignment might be adjusted too.
+
+
+
See also:
QwtScaleDraw::setLabelRotation(), setAxisLabelAlignment()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlot::setAxisMaxMajor (int axisId,
int maxMajor 
)
+
+
+

Set the maximum number of major scale intervals for a specified axis

+
Parameters:
+ + + +
axisIdaxis index
maxMajormaximum number of major steps
+
+
+
See also:
axisMaxMajor()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlot::setAxisMaxMinor (int axisId,
int maxMinor 
)
+
+
+

Set the maximum number of minor scale intervals for a specified axis

+
Parameters:
+ + + +
axisIdaxis index
maxMinormaximum number of minor steps
+
+
+
See also:
axisMaxMinor()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlot::setAxisScale (int axisId,
double min,
double max,
double stepSize = 0 
)
+
+
+ +

Disable autoscaling and specify a fixed scale for a selected axis.

+
Parameters:
+ + + + + +
axisIdaxis index
min
maxminimum and maximum of the scale
stepSizeMajor step size. If step == 0, the step size is calculated automatically using the maxMajor setting.
+
+
+
See also:
setAxisMaxMajor(), setAxisAutoScale(), axisStepSize()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlot::setAxisScaleDiv (int axisId,
const QwtScaleDivscaleDiv 
)
+
+
+ +

Disable autoscaling and specify a fixed scale for a selected axis.

+
Parameters:
+ + + +
axisIdaxis index
scaleDivScale division
+
+
+
See also:
setAxisScale(), setAxisAutoScale()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlot::setAxisScaleDraw (int axisId,
QwtScaleDrawscaleDraw 
)
+
+
+ +

Set a scale draw.

+
Parameters:
+ + + +
axisIdaxis index
scaleDrawobject responsible for drawing scales.
+
+
+

By passing scaleDraw it is possible to extend QwtScaleDraw functionality and let it take place in QwtPlot. Please note that scaleDraw has to be created with new and will be deleted by the corresponding QwtScale member ( like a child object ).

+
See also:
QwtScaleDraw, QwtScaleWidget
+
Warning:
The attributes of scaleDraw will be overwritten by those of the previous QwtScaleDraw.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlot::setAxisScaleEngine (int axisId,
QwtScaleEnginescaleEngine 
)
+
+
+

Change the scale engine for an axis

+
Parameters:
+ + + +
axisIdaxis index
scaleEngineScale engine
+
+
+
See also:
axisScaleEngine()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlot::setAxisTitle (int axisId,
const QwtTexttitle 
)
+
+
+ +

Change the title of a specified axis.

+
Parameters:
+ + + +
axisIdaxis index
titleaxis title
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlot::setAxisTitle (int axisId,
const QString & title 
)
+
+
+ +

Change the title of a specified axis.

+
Parameters:
+ + + +
axisIdaxis index
titleaxis title
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlot::setCanvasBackground (const QBrush & brush)
+
+
+ +

Change the background of the plotting area.

+

Sets brush to QPalette::Window of all colorgroups of the palette of the canvas. Using canvas()->setPalette() is a more powerful way to set these colors.

+
Parameters:
+ + +
brushNew background brush
+
+
+
See also:
canvasBackground()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlot::setCanvasLineWidth (int width)
+
+
+ +

Change the border width of the plotting area.

+

Nothing else than canvas()->setLineWidth(w), left for compatibility only.

+
Parameters:
+ + +
widthNew border width
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlot::setTitle (const QString & title)
+
+
+

Change the plot's title

+
Parameters:
+ + +
titleNew title
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlot::setTitle (const QwtTexttitle)
+
+
+

Change the plot's title

+
Parameters:
+ + +
titleNew title
+
+
+ +
+
+ +
+
+ + + + + + + +
QSize QwtPlot::sizeHint () const [virtual]
+
+
+

Return sizeHint

+
See also:
minimumSizeHint()
+ +
+
+ +
+
+ + + + + + + +
QwtText QwtPlot::title () const
+
+
+
Returns:
the plot's title
+ +
+
+ +
+
+ + + + + + + +
QwtTextLabel * QwtPlot::titleLabel ()
+
+
+
Returns:
the plot's titel label.
+ +
+
+ +
+
+ + + + + + + +
const QwtTextLabel * QwtPlot::titleLabel () const
+
+
+
Returns:
the plot's titel label.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
double QwtPlot::transform (int axisId,
double value 
) const
+
+
+ +

Transform a value into a coordinate in the plotting region.

+
Parameters:
+ + + +
axisIdaxis index
valuevalue
+
+
+
Returns:
X or y coordinate in the plotting region corresponding to the value.
+ +
+
+ +
+
+ + + + + + + +
void QwtPlot::updateAxes ()
+
+
+ +

Rebuild the scales.

+ +
+
+ +
+
+ + + + + + + +
void QwtPlot::updateLayout () [virtual]
+
+
+ +

Adjust plot content to its current size.

+
See also:
resizeEvent()
+ +
+
+ +
+
+ + + + + + + +
void QwtPlot::updateTabOrder () [protected, virtual]
+
+
+

Update the focus tab order

+

The order is changed so that the canvas will be in front of the first legend item, or behind the last legend item - depending on the position of the legend.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot__inherit__graph.map 2011-04-15 10:49:10.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot__inherit__graph.md5 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1 @@ +f2d1ec8d165c5f38d10885a99c10f372 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_interval_curve.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_interval_curve.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_interval_curve.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_interval_curve.html 2011-04-15 10:49:24.000000000 +0000 @@ -0,0 +1,805 @@ + + + + +Qwt User's Guide: QwtPlotIntervalCurve Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPlotIntervalCurve Class Reference

+
+
+ +

QwtPlotIntervalCurve represents a series of samples, where each value is associated with an interval ( $[y1,y2] = f(x)$ ). +More...

+ +

#include <qwt_plot_intervalcurve.h>

+
+Inheritance diagram for QwtPlotIntervalCurve:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Types

enum  CurveStyle {
+  NoCurve, +
+  Tube, +
+  UserCurve = 100 +
+ }
enum  PaintAttribute {
+  ClipPolygons = 0x01, +
+  ClipSymbol = 0x02 +
+ }
typedef QFlags< PaintAttributePaintAttributes

+Public Member Functions

 QwtPlotIntervalCurve (const QString &title=QString::null)
 QwtPlotIntervalCurve (const QwtText &title)
virtual ~QwtPlotIntervalCurve ()
virtual int rtti () const
void setPaintAttribute (PaintAttribute, bool on=true)
bool testPaintAttribute (PaintAttribute) const
void setSamples (const QVector< QwtIntervalSample > &)
void setPen (const QPen &)
const QPen & pen () const
void setBrush (const QBrush &)
const QBrush & brush () const
void setStyle (CurveStyle style)
CurveStyle style () const
void setSymbol (const QwtIntervalSymbol *)
const QwtIntervalSymbolsymbol () const
virtual void drawSeries (QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const
virtual QRectF boundingRect () const
virtual void drawLegendIdentifier (QPainter *, const QRectF &) const

+Protected Member Functions

void init ()
virtual void drawTube (QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const
virtual void drawSymbols (QPainter *, const QwtIntervalSymbol &, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const
+

Detailed Description

+

QwtPlotIntervalCurve represents a series of samples, where each value is associated with an interval ( $[y1,y2] = f(x)$ ).

+

The representation depends on the style() and an optional symbol() that is displayed for each interval. QwtPlotIntervalCurve might be used to disply error bars or the area between 2 curves.

+

Member Typedef Documentation

+ +
+ +
+ +

Paint attributes.

+ +
+
+

Member Enumeration Documentation

+ +
+ +
+ +

Curve styles. The default setting is QwtPlotIntervalCurve::Tube.

+
See also:
setStyle(), style()
+
Enumerator:
+ + + +
NoCurve  +

Don't draw a curve. Note: This doesn't affect the symbols.

+
Tube  +

Build 2 curves from the upper and lower limits of the intervals and draw them with the pen(). The area between the curves is filled with the brush().

+
UserCurve  +

Styles >= QwtPlotIntervalCurve::UserCurve are reserved for derived classes that overload drawSeries() with additional application specific curve types.

+
+
+
+ +
+
+ +
+ +
+

Attributes to modify the drawing algorithm.

+
See also:
setPaintAttribute(), testPaintAttribute()
+
Enumerator:
+ + +
ClipPolygons  +

Clip polygons before painting them. In situations, where points are far outside the visible area (f.e when zooming deep) this might be a substantial improvement for the painting performance.

+
ClipSymbol  +

Check if a symbol is on the plot canvas before painting it.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtPlotIntervalCurve::QwtPlotIntervalCurve (const QString & title = QString::null) [explicit]
+
+
+

Constructor

+
Parameters:
+ + +
titleTitle of the curve
+
+
+ +
+
+ +
+
+ + + + + + + + +
QwtPlotIntervalCurve::QwtPlotIntervalCurve (const QwtTexttitle) [explicit]
+
+
+

Constructor

+
Parameters:
+ + +
titleTitle of the curve
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtPlotIntervalCurve::~QwtPlotIntervalCurve () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
QRectF QwtPlotIntervalCurve::boundingRect () const [virtual]
+
+
+
Returns:
Bounding rectangle of all samples. For an empty series the rectangle is invalid.
+ +

Reimplemented from QwtPlotSeriesItem< QwtIntervalSample >.

+ +
+
+ +
+
+ + + + + + + +
const QBrush & QwtPlotIntervalCurve::brush () const
+
+
+
Returns:
Brush used to fill the area in Tube style()
+
See also:
setBrush(), setStyle(), CurveStyle
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotIntervalCurve::drawLegendIdentifier (QPainter * painter,
const QRectF & rect 
) const [virtual]
+
+
+

In case of Tibe stale() a plain rectangle is painted without a pen filled the brush(). If a symbol is assigned it is painted cebtered into rect.

+
Parameters:
+ + + +
painterPainter
rectBounding rectangle for the identifier
+
+
+ +

Reimplemented from QwtLegendItemManager.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotIntervalCurve::drawSeries (QPainter * painter,
const QwtScaleMapxMap,
const QwtScaleMapyMap,
const QRectF & canvasRect,
int from,
int to 
) const [virtual]
+
+
+

Draw a subset of the samples

+
Parameters:
+ + + + + + + +
painterPainter
xMapMaps x-values into pixel coordinates.
yMapMaps y-values into pixel coordinates.
canvasRectContents rect of the canvas
fromIndex of the first sample to be painted
toIndex of the last sample to be painted. If to < 0 the series will be painted to its last sample.
+
+
+
See also:
drawTube(), drawSymbols()
+ +

Implements QwtPlotAbstractSeriesItem.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotIntervalCurve::drawSymbols (QPainter * painter,
const QwtIntervalSymbolsymbol,
const QwtScaleMapxMap,
const QwtScaleMapyMap,
const QRectF & canvasRect,
int from,
int to 
) const [protected, virtual]
+
+
+

Draw symbols for a subset of the samples

+
Parameters:
+ + + + + + + + +
painterPainter
symbolInterval symbol
xMapx map
yMapy map
canvasRectContents rect of the canvas
fromIndex of the first sample to be painted
toIndex of the last sample to be painted
+
+
+
See also:
setSymbol(), drawSeries(), drawTube()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotIntervalCurve::drawTube (QPainter * painter,
const QwtScaleMapxMap,
const QwtScaleMapyMap,
const QRectF & canvasRect,
int from,
int to 
) const [protected, virtual]
+
+
+

Draw a tube

+

Builds 2 curves from the upper and lower limits of the intervals and draws them with the pen(). The area between the curves is filled with the brush().

+
Parameters:
+ + + + + + + +
painterPainter
xMapMaps x-values into pixel coordinates.
yMapMaps y-values into pixel coordinates.
canvasRectContents rect of the canvas
fromIndex of the first sample to be painted
toIndex of the last sample to be painted. If to < 0 the series will be painted to its last sample.
+
+
+
See also:
drawSeries(), drawSymbols()
+ +
+
+ +
+
+ + + + + + + +
void QwtPlotIntervalCurve::init () [protected]
+
+
+ +

Initialize internal members.

+ +
+
+ +
+
+ + + + + + + +
const QPen & QwtPlotIntervalCurve::pen () const
+
+
+ +

Return the pen used to draw the lines.

+
See also:
setPen(), brush()
+ +
+
+ +
+
+ + + + + + + +
int QwtPlotIntervalCurve::rtti () const [virtual]
+
+
+
Returns:
QwtPlotItem::Rtti_PlotIntervalCurve
+ +

Reimplemented from QwtPlotItem.

+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotIntervalCurve::setBrush (const QBrush & brush)
+
+
+

Assign a brush.

+

The brush is used to fill the area in Tube style().

+
Parameters:
+ + +
brushBrush
+
+
+
See also:
brush(), pen(), setStyle(), CurveStyle
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotIntervalCurve::setPaintAttribute (PaintAttribute attribute,
bool on = true 
)
+
+
+

Specify an attribute how to draw the curve

+
Parameters:
+ + + +
attributePaint attribute
onOn/Off
+
+
+
See also:
testPaintAttribute()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotIntervalCurve::setPen (const QPen & pen)
+
+
+ +

Assign a pen.

+
Parameters:
+ + +
penNew pen
+
+
+
See also:
pen(), brush()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotIntervalCurve::setSamples (const QVector< QwtIntervalSample > & samples)
+
+
+

Initialize data with an array of samples.

+
Parameters:
+ + +
samplesVector of samples
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotIntervalCurve::setStyle (CurveStyle style)
+
+
+

Set the curve's drawing style

+
Parameters:
+ + +
styleCurve style
+
+
+
See also:
CurveStyle, style()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotIntervalCurve::setSymbol (const QwtIntervalSymbolsymbol)
+
+
+

Assign a symbol.

+
Parameters:
+ + +
symbolSymbol
+
+
+
See also:
symbol()
+ +
+
+ +
+
+ + + + + + + +
QwtPlotIntervalCurve::CurveStyle QwtPlotIntervalCurve::style () const
+
+
+ +

Return the current style.

+
See also:
setStyle()
+ +
+
+ +
+
+ + + + + + + +
const QwtIntervalSymbol * QwtPlotIntervalCurve::symbol () const
+
+
+
Returns:
Current symbol or NULL, when no symbol has been assigned
+
See also:
setSymbol()
+ +
+
+ +
+
+ + + + + + + + +
bool QwtPlotIntervalCurve::testPaintAttribute (PaintAttribute attribute) const
+
+
+ +

Return the current paint attributes.

+
See also:
PaintAttribute, setPaintAttribute()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_interval_curve__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_interval_curve__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_interval_curve__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_interval_curve__inherit__graph.map 2011-04-15 10:49:12.000000000 +0000 @@ -0,0 +1,7 @@ + + + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_interval_curve__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_interval_curve__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_interval_curve__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_interval_curve__inherit__graph.md5 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1 @@ +942526d96f05a7ae4a6a9b8f8429f900 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_interval_curve__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_interval_curve__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_interval_curve-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_interval_curve-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_interval_curve-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_interval_curve-members.html 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,145 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPlotIntervalCurve Member List

+
+
+This is the complete list of members for QwtPlotIntervalCurve, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
attach(QwtPlot *plot)QwtPlotItem
AutoScale enum valueQwtPlotItem
boundingRect() const QwtPlotIntervalCurve [virtual]
brush() const QwtPlotIntervalCurve
ClipPolygons enum valueQwtPlotIntervalCurve
ClipSymbol enum valueQwtPlotIntervalCurve
CurveStyle enum nameQwtPlotIntervalCurve
d_seriesQwtPlotSeriesItem< QwtIntervalSample > [protected]
data()QwtPlotSeriesItem< QwtIntervalSample >
data() constQwtPlotSeriesItem< QwtIntervalSample >
dataSize() constQwtPlotSeriesItem< QwtIntervalSample >
detach()QwtPlotItem
draw(QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &) const QwtPlotAbstractSeriesItem [virtual]
drawLegendIdentifier(QPainter *, const QRectF &) const QwtPlotIntervalCurve [virtual]
drawSeries(QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const QwtPlotIntervalCurve [virtual]
drawSymbols(QPainter *, const QwtIntervalSymbol &, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const QwtPlotIntervalCurve [protected, virtual]
drawTube(QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const QwtPlotIntervalCurve [protected, virtual]
hide()QwtPlotItem
init()QwtPlotIntervalCurve [protected]
isVisible() const QwtPlotItem
ItemAttribute enum nameQwtPlotItem
ItemAttributes typedefQwtPlotItem
itemChanged()QwtPlotItem [virtual]
Legend enum valueQwtPlotItem
legendItem() const QwtPlotItem [virtual]
NoCurve enum valueQwtPlotIntervalCurve
orientation() const QwtPlotAbstractSeriesItem
PaintAttribute enum nameQwtPlotIntervalCurve
PaintAttributes typedefQwtPlotIntervalCurve
paintRect(const QwtScaleMap &, const QwtScaleMap &) const QwtPlotItem
pen() const QwtPlotIntervalCurve
plot() const QwtPlotItem
QwtLegendItemManager()QwtLegendItemManager [inline]
QwtPlotAbstractSeriesItem(const QString &title=QString::null)QwtPlotAbstractSeriesItem [explicit]
QwtPlotAbstractSeriesItem(const QwtText &title)QwtPlotAbstractSeriesItem [explicit]
QwtPlotIntervalCurve(const QString &title=QString::null)QwtPlotIntervalCurve [explicit]
QwtPlotIntervalCurve(const QwtText &title)QwtPlotIntervalCurve [explicit]
QwtPlotItem(const QwtText &title=QwtText())QwtPlotItem [explicit]
QwtPlotSeriesItem(const QString &title=QString::null)QwtPlotSeriesItem< QwtIntervalSample > [explicit]
QwtPlotSeriesItem(const QwtText &title)QwtPlotSeriesItem< QwtIntervalSample > [explicit]
RenderAntialiased enum valueQwtPlotItem
RenderHint enum nameQwtPlotItem
RenderHints typedefQwtPlotItem
rtti() const QwtPlotIntervalCurve [virtual]
Rtti_PlotCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotGrid enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotHistogram enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotIntervalCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotItem enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotMarker enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotScale enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSpectroCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSpectrogram enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSVG enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotUserItem enum value (defined in QwtPlotItem)QwtPlotItem
RttiValues enum nameQwtPlotItem
sample(int index) constQwtPlotSeriesItem< QwtIntervalSample >
scaleRect(const QwtScaleMap &, const QwtScaleMap &) const QwtPlotItem
setAxes(int xAxis, int yAxis)QwtPlotItem
setBrush(const QBrush &)QwtPlotIntervalCurve
setData(QwtSeriesData< QwtIntervalSample > *)QwtPlotSeriesItem< QwtIntervalSample >
setItemAttribute(ItemAttribute, bool on=true)QwtPlotItem
setOrientation(Qt::Orientation)QwtPlotAbstractSeriesItem
setPaintAttribute(PaintAttribute, bool on=true)QwtPlotIntervalCurve
setPen(const QPen &)QwtPlotIntervalCurve
setRenderHint(RenderHint, bool on=true)QwtPlotItem
setSamples(const QVector< QwtIntervalSample > &)QwtPlotIntervalCurve
setStyle(CurveStyle style)QwtPlotIntervalCurve
setSymbol(const QwtIntervalSymbol *)QwtPlotIntervalCurve
setTitle(const QString &title)QwtPlotItem
setTitle(const QwtText &title)QwtPlotItem
setVisible(bool)QwtPlotItem [virtual]
setXAxis(int axis)QwtPlotItem
setYAxis(int axis)QwtPlotItem
setZ(double z)QwtPlotItem
show()QwtPlotItem
style() const QwtPlotIntervalCurve
symbol() const QwtPlotIntervalCurve
testItemAttribute(ItemAttribute) const QwtPlotItem
testPaintAttribute(PaintAttribute) const QwtPlotIntervalCurve
testRenderHint(RenderHint) const QwtPlotItem
title() const QwtPlotItem
Tube enum valueQwtPlotIntervalCurve
updateLegend(QwtLegend *) const QwtPlotItem [virtual]
updateScaleDiv(const QwtScaleDiv &, const QwtScaleDiv &)QwtPlotSeriesItem< QwtIntervalSample > [virtual]
UserCurve enum valueQwtPlotIntervalCurve
xAxis() const QwtPlotItem
yAxis() const QwtPlotItem
z() const QwtPlotItem
~QwtLegendItemManager()QwtLegendItemManager [inline, virtual]
~QwtPlotAbstractSeriesItem()QwtPlotAbstractSeriesItem [virtual]
~QwtPlotIntervalCurve()QwtPlotIntervalCurve [virtual]
~QwtPlotItem()QwtPlotItem [virtual]
~QwtPlotSeriesItem()QwtPlotSeriesItem< QwtIntervalSample > [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_item.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_item.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_item.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_item.html 2011-04-15 10:49:24.000000000 +0000 @@ -0,0 +1,1090 @@ + + + + +Qwt User's Guide: QwtPlotItem Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPlotItem Class Reference

+
+
+ +

Base class for items on the plot canvas. +More...

+ +

#include <qwt_plot_item.h>

+
+Inheritance diagram for QwtPlotItem:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Types

enum  RttiValues {
+  Rtti_PlotItem = 0, +
+  Rtti_PlotGrid, +
+  Rtti_PlotScale, +
+  Rtti_PlotMarker, +
+  Rtti_PlotCurve, +
+  Rtti_PlotSpectroCurve, +
+  Rtti_PlotIntervalCurve, +
+  Rtti_PlotHistogram, +
+  Rtti_PlotSpectrogram, +
+  Rtti_PlotSVG, +
+  Rtti_PlotUserItem = 1000 +
+ }
enum  ItemAttribute {
+  Legend = 0x01, +
+  AutoScale = 0x02 +
+ }
enum  RenderHint { RenderAntialiased = 1 + }
typedef QFlags< ItemAttributeItemAttributes
typedef QFlags< RenderHintRenderHints

+Public Member Functions

 QwtPlotItem (const QwtText &title=QwtText())
virtual ~QwtPlotItem ()
void attach (QwtPlot *plot)
void detach ()
QwtPlotplot () const
void setTitle (const QString &title)
void setTitle (const QwtText &title)
const QwtTexttitle () const
virtual int rtti () const
void setItemAttribute (ItemAttribute, bool on=true)
bool testItemAttribute (ItemAttribute) const
void setRenderHint (RenderHint, bool on=true)
bool testRenderHint (RenderHint) const
double z () const
void setZ (double z)
void show ()
void hide ()
virtual void setVisible (bool)
bool isVisible () const
void setAxes (int xAxis, int yAxis)
void setXAxis (int axis)
int xAxis () const
void setYAxis (int axis)
int yAxis () const
virtual void itemChanged ()
virtual void draw (QPainter *painter, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect) const =0
virtual QRectF boundingRect () const
virtual void updateLegend (QwtLegend *) const
virtual void updateScaleDiv (const QwtScaleDiv &, const QwtScaleDiv &)
virtual QWidget * legendItem () const
QRectF scaleRect (const QwtScaleMap &, const QwtScaleMap &) const
QRectF paintRect (const QwtScaleMap &, const QwtScaleMap &) const
+

Detailed Description

+

Base class for items on the plot canvas.

+

A plot item is "something", that can be painted on the plot canvas, or only affects the scales of the plot widget. They can be categorized as:

+
    +
  • Representator
    + A "Representator" is an item that represents some sort of data on the plot canvas. The different representator classes are organized according to the characteristics of the data: +
  • +
+ +

Depending on the QwtPlotItem::ItemAttribute flags, an item is included into autoscaling or has an entry on the legnd.

+

Before misusing the existing item classes it might be better to implement a new type of plot item ( don't implement a watermark as spectrogram ). Deriving a new type of QwtPlotItem primarily means to implement the YourPlotItem::draw() method.

+
See also:
The cpuplot example shows the implementation of additional plot items.
+

Member Typedef Documentation

+ +
+
+ + + + +
typedef QFlags<ItemAttribute> QwtPlotItem::ItemAttributes
+
+
+ +

Plot Item Attributes.

+ +
+
+ +
+
+ + + + +
typedef QFlags<RenderHint> QwtPlotItem::RenderHints
+
+
+ +

Render hints.

+ +
+
+

Member Enumeration Documentation

+ +
+
+ + + + +
enum QwtPlotItem::ItemAttribute
+
+
+

Plot Item Attributes

+
See also:
setItemAttribute(), testItemAttribute()
+
Enumerator:
+ + +
Legend  +

The item is represented on the legend.

+
AutoScale  +

The boundingRect() of the item is included in the autoscaling calculation.

+
+
+
+ +
+
+ +
+
+ + + + +
enum QwtPlotItem::RenderHint
+
+
+ +

Render hints.

+
Enumerator:
+ +
RenderAntialiased  +

Enable antialiasing.

+
+
+
+ +
+
+ +
+
+ + + + +
enum QwtPlotItem::RttiValues
+
+
+ +

Runtime type information.

+

RttiValues is used to cast plot items, without having to enable runtime type information of the compiler.

+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtPlotItem::QwtPlotItem (const QwtTexttitle = QwtText()) [explicit]
+
+
+

Constructor

+
Parameters:
+ + +
titleTitle of the item
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtPlotItem::~QwtPlotItem () [virtual]
+
+
+ +

Destroy the QwtPlotItem.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + +
void QwtPlotItem::attach (QwtPlotplot)
+
+
+ +

Attach the item to a plot.

+

This method will attach a QwtPlotItem to the QwtPlot argument. It will first detach the QwtPlotItem from any plot from a previous call to attach (if necessary). If a NULL argument is passed, it will detach from any QwtPlot it was attached to.

+
Parameters:
+ + +
plotPlot widget
+
+
+
See also:
detach()
+ +
+
+ +
+
+ + + + + + + +
QRectF QwtPlotItem::boundingRect () const [virtual]
+
+ +
+ +
+
+ + + + + + + +
void QwtPlotItem::detach ()
+
+
+ +

This method detaches a QwtPlotItem from any QwtPlot it has been associated with.

+

detach() is equivalent to calling attach( NULL )

+
See also:
attach()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
virtual void QwtPlotItem::draw (QPainter * painter,
const QwtScaleMapxMap,
const QwtScaleMapyMap,
const QRectF & canvasRect 
) const [pure virtual]
+
+
+ +

Draw the item.

+
Parameters:
+ + + + + +
painterPainter
xMapMaps x-values into pixel coordinates.
yMapMaps y-values into pixel coordinates.
canvasRectContents rect of the canvas in painter coordinates
+
+
+ +

Implemented in QwtPlotGrid, QwtPlotMarker, QwtPlotRasterItem, QwtPlotScaleItem, QwtPlotAbstractSeriesItem, QwtPlotSpectrogram, and QwtPlotSvgItem.

+ +
+
+ +
+
+ + + + + + + +
void QwtPlotItem::hide ()
+
+
+ +

Hide the item.

+ +
+
+ +
+
+ + + + + + + +
bool QwtPlotItem::isVisible () const
+
+
+
Returns:
true if visible
+
See also:
setVisible(), show(), hide()
+ +
+
+ +
+
+ + + + + + + +
void QwtPlotItem::itemChanged () [virtual]
+
+
+

Update the legend and call QwtPlot::autoRefresh for the parent plot.

+
See also:
updateLegend()
+ +
+
+ +
+
+ + + + + + + +
QWidget * QwtPlotItem::legendItem () const [virtual]
+
+
+ +

Allocate the widget that represents the item on the legend.

+

The default implementation returns a QwtLegendItem(), but an item could be represented by any type of widget, by overloading legendItem() and updateLegend().

+
Returns:
QwtLegendItem()
+
See also:
updateLegend() QwtLegend()
+ +

Implements QwtLegendItemManager.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
QRectF QwtPlotItem::paintRect (const QwtScaleMapxMap,
const QwtScaleMapyMap 
) const
+
+
+ +

Calculate the bounding paint rect of 2 maps.

+
Parameters:
+ + + +
xMapX map
yMapX map
+
+
+
Returns:
Bounding paint rect of the scale maps, normalized
+ +
+
+ +
+
+ + + + + + + +
QwtPlot * QwtPlotItem::plot () const
+
+
+ +

Return attached plot.

+ +
+
+ +
+
+ + + + + + + +
int QwtPlotItem::rtti () const [virtual]
+
+
+

Return rtti for the specific class represented. QwtPlotItem is simply a virtual interface class, and base classes will implement this method with specific rtti values so a user can differentiate them.

+

The rtti value is useful for environments, where the runtime type information is disabled and it is not possible to do a dynamic_cast<...>.

+
Returns:
rtti value
+
See also:
RttiValues
+ +

Reimplemented in QwtPlotCurve, QwtPlotGrid, QwtPlotHistogram, QwtPlotIntervalCurve, QwtPlotMarker, QwtPlotScaleItem, QwtPlotSpectroCurve, QwtPlotSpectrogram, and QwtPlotSvgItem.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
QRectF QwtPlotItem::scaleRect (const QwtScaleMapxMap,
const QwtScaleMapyMap 
) const
+
+
+ +

Calculate the bounding scale rect of 2 maps.

+
Parameters:
+ + + +
xMapX map
yMapX map
+
+
+
Returns:
Bounding scale rect of the scale maps, normalized
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotItem::setAxes (int xAxis,
int yAxis 
)
+
+
+

Set X and Y axis

+

The item will painted according to the coordinates its Axes.

+
Parameters:
+ + + +
xAxisX Axis
yAxisY Axis
+
+
+
See also:
setXAxis(), setYAxis(), xAxis(), yAxis()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotItem::setItemAttribute (ItemAttribute attribute,
bool on = true 
)
+
+
+

Toggle an item attribute

+
Parameters:
+ + + +
attributeAttribute type
ontrue/false
+
+
+
See also:
testItemAttribute(), ItemAttribute
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotItem::setRenderHint (RenderHint hint,
bool on = true 
)
+
+
+

Toggle an render hint

+
Parameters:
+ + + +
hintRender hint
ontrue/false
+
+
+
See also:
testRenderHint(), RenderHint
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotItem::setTitle (const QString & title)
+
+
+

Set a new title

+
Parameters:
+ + +
titleTitle
+
+
+
See also:
title()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotItem::setTitle (const QwtTexttitle)
+
+
+

Set a new title

+
Parameters:
+ + +
titleTitle
+
+
+
See also:
title()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotItem::setVisible (bool on) [virtual]
+
+
+

Show/Hide the item

+
Parameters:
+ + +
onShow if true, otherwise hide
+
+
+
See also:
isVisible(), show(), hide()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotItem::setXAxis (int axis)
+
+
+

Set the X axis

+

The item will painted according to the coordinates its Axes.

+
Parameters:
+ + +
axisX Axis
+
+
+
See also:
setAxes(), setYAxis(), xAxis()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotItem::setYAxis (int axis)
+
+
+

Set the Y axis

+

The item will painted according to the coordinates its Axes.

+
Parameters:
+ + +
axisY Axis
+
+
+
See also:
setAxes(), setXAxis(), yAxis()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotItem::setZ (double z)
+
+
+ +

Set the z value.

+

Plot items are painted in increasing z-order.

+
Parameters:
+ + +
zZ-value
+
+
+
See also:
z(), QwtPlotDict::itemList()
+ +
+
+ +
+
+ + + + + + + +
void QwtPlotItem::show ()
+
+
+ +

Show the item.

+ +
+
+ +
+
+ + + + + + + + +
bool QwtPlotItem::testItemAttribute (ItemAttribute attribute) const
+
+
+

Test an item attribute

+
Parameters:
+ + +
attributeAttribute type
+
+
+
Returns:
true/false
+
See also:
setItemAttribute(), ItemAttribute
+ +
+
+ +
+
+ + + + + + + + +
bool QwtPlotItem::testRenderHint (RenderHint hint) const
+
+
+

Test a render hint

+
Parameters:
+ + +
hintRender hint
+
+
+
Returns:
true/false
+
See also:
setRenderHint(), RenderHint
+ +
+
+ +
+
+ + + + + + + +
const QwtText & QwtPlotItem::title () const
+
+
+
Returns:
Title of the item
+
See also:
setTitle()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotItem::updateLegend (QwtLegendlegend) const [virtual]
+
+
+ +

Update the widget that represents the item on the legend.

+

updateLegend() is called from itemChanged() to adopt the widget representing the item on the legend to its new configuration.

+

The default implementation updates a QwtLegendItem(), but an item could be represented by any type of widget, by overloading legendItem() and updateLegend().

+
Parameters:
+ + +
legendLegend
+
+
+
See also:
legendItem(), itemChanged(), QwtLegend()
+ +

Implements QwtLegendItemManager.

+ +

Reimplemented in QwtPlotCurve, and QwtPlotMarker.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotItem::updateScaleDiv (const QwtScaleDivxScaleDiv,
const QwtScaleDivyScaleDiv 
) [virtual]
+
+
+ +

Update the item to changes of the axes scale division.

+

Update the item, when the axes of plot have changed. The default implementation does nothing, but items that depend on the scale division (like QwtPlotGrid()) have to reimplement updateScaleDiv()

+
Parameters:
+ + + +
xScaleDivScale division of the x-axis
yScaleDivScale division of the y-axis
+
+
+
See also:
QwtPlot::updateAxes()
+ +

Reimplemented in QwtPlotGrid, QwtPlotScaleItem, QwtPlotSeriesItem< T >, QwtPlotSeriesItem< QwtIntervalSample >, QwtPlotSeriesItem< QPointF >, and QwtPlotSeriesItem< QwtPoint3D >.

+ +
+
+ +
+
+ + + + + + + +
int QwtPlotItem::xAxis () const
+
+
+ +

Return xAxis.

+ +
+
+ +
+
+ + + + + + + +
int QwtPlotItem::yAxis () const
+
+
+ +

Return yAxis.

+ +
+
+ +
+
+ + + + + + + +
double QwtPlotItem::z () const
+
+
+

Plot items are painted in increasing z-order.

+
Returns:
setZ(), QwtPlotDict::itemList()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_item__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_item__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_item__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_item__inherit__graph.map 2011-04-15 10:49:13.000000000 +0000 @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_item__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_item__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_item__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_item__inherit__graph.md5 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1 @@ +a35c41cb989f90a3a4248bcf74f3a4e8 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_item__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_item__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_item-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_item-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_item-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_item-members.html 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,105 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPlotItem Member List

+
+
+This is the complete list of members for QwtPlotItem, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
attach(QwtPlot *plot)QwtPlotItem
AutoScale enum valueQwtPlotItem
boundingRect() const QwtPlotItem [virtual]
detach()QwtPlotItem
draw(QPainter *painter, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect) const =0QwtPlotItem [pure virtual]
drawLegendIdentifier(QPainter *, const QRectF &) const QwtLegendItemManager [inline, virtual]
hide()QwtPlotItem
isVisible() const QwtPlotItem
ItemAttribute enum nameQwtPlotItem
ItemAttributes typedefQwtPlotItem
itemChanged()QwtPlotItem [virtual]
Legend enum valueQwtPlotItem
legendItem() const QwtPlotItem [virtual]
paintRect(const QwtScaleMap &, const QwtScaleMap &) const QwtPlotItem
plot() const QwtPlotItem
QwtLegendItemManager()QwtLegendItemManager [inline]
QwtPlotItem(const QwtText &title=QwtText())QwtPlotItem [explicit]
RenderAntialiased enum valueQwtPlotItem
RenderHint enum nameQwtPlotItem
RenderHints typedefQwtPlotItem
rtti() const QwtPlotItem [virtual]
Rtti_PlotCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotGrid enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotHistogram enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotIntervalCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotItem enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotMarker enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotScale enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSpectroCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSpectrogram enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSVG enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotUserItem enum value (defined in QwtPlotItem)QwtPlotItem
RttiValues enum nameQwtPlotItem
scaleRect(const QwtScaleMap &, const QwtScaleMap &) const QwtPlotItem
setAxes(int xAxis, int yAxis)QwtPlotItem
setItemAttribute(ItemAttribute, bool on=true)QwtPlotItem
setRenderHint(RenderHint, bool on=true)QwtPlotItem
setTitle(const QString &title)QwtPlotItem
setTitle(const QwtText &title)QwtPlotItem
setVisible(bool)QwtPlotItem [virtual]
setXAxis(int axis)QwtPlotItem
setYAxis(int axis)QwtPlotItem
setZ(double z)QwtPlotItem
show()QwtPlotItem
testItemAttribute(ItemAttribute) const QwtPlotItem
testRenderHint(RenderHint) const QwtPlotItem
title() const QwtPlotItem
updateLegend(QwtLegend *) const QwtPlotItem [virtual]
updateScaleDiv(const QwtScaleDiv &, const QwtScaleDiv &)QwtPlotItem [virtual]
xAxis() const QwtPlotItem
yAxis() const QwtPlotItem
z() const QwtPlotItem
~QwtLegendItemManager()QwtLegendItemManager [inline, virtual]
~QwtPlotItem()QwtPlotItem [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_layout.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_layout.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_layout.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_layout.html 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,789 @@ + + + + +Qwt User's Guide: QwtPlotLayout Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPlotLayout Class Reference

+
+
+ +

Layout engine for QwtPlot. +More...

+ +

#include <qwt_plot_layout.h>

+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Types

enum  Option {
+  AlignScales = 0x01, +
+  IgnoreScrollbars = 0x02, +
+  IgnoreFrames = 0x04, +
+  IgnoreLegend = 0x08 +
+ }
typedef QFlags< OptionOptions

+Public Member Functions

 QwtPlotLayout ()
virtual ~QwtPlotLayout ()
void setCanvasMargin (int margin, int axis=-1)
int canvasMargin (int axis) const
void setAlignCanvasToScales (bool)
bool alignCanvasToScales () const
void setSpacing (int)
int spacing () const
void setLegendPosition (QwtPlot::LegendPosition pos, double ratio)
void setLegendPosition (QwtPlot::LegendPosition pos)
QwtPlot::LegendPosition legendPosition () const
void setLegendRatio (double ratio)
double legendRatio () const
virtual QSize minimumSizeHint (const QwtPlot *) const
virtual void activate (const QwtPlot *, const QRectF &rect, Options options=0x00)
virtual void invalidate ()
const QRectF & titleRect () const
const QRectF & legendRect () const
const QRectF & scaleRect (int axis) const
const QRectF & canvasRect () const

+Protected Member Functions

QRectF layoutLegend (Options options, const QRectF &) const
QRectF alignLegend (const QRectF &canvasRect, const QRectF &legendRect) const
void expandLineBreaks (int options, const QRectF &rect, int &dimTitle, int dimAxes[QwtPlot::axisCnt]) const
void alignScales (int options, QRectF &canvasRect, QRectF scaleRect[QwtPlot::axisCnt]) const
+

Detailed Description

+

Layout engine for QwtPlot.

+

It is used by the QwtPlot widget to organize its internal widgets or by QwtPlot::print() to render its content to a QPaintDevice like a QPrinter, QPixmap/QImage or QSvgRenderer.

+

Member Typedef Documentation

+ +
+
+ + + + +
typedef QFlags<Option> QwtPlotLayout::Options
+
+
+ +

Layout options.

+ +
+
+

Member Enumeration Documentation

+ +
+
+ + + + +
enum QwtPlotLayout::Option
+
+
+

Options to configure the plot layout engine

+
See also:
activate(), QwtPlotRenderer
+
Enumerator:
+ + + + +
AlignScales  +

Unused.

+
IgnoreScrollbars  +

Ignore the dimension of the scrollbars. There are no scrollbars, when the plot is not rendered to widgets.

+
IgnoreFrames  +

Ignore all frames.

+
IgnoreLegend  +

Ignore the legend.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtPlotLayout::QwtPlotLayout () [explicit]
+
+
+ +

Constructor.

+ +
+
+ +
+
+ + + + + + + +
QwtPlotLayout::~QwtPlotLayout () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotLayout::activate (const QwtPlotplot,
const QRectF & plotRect,
Options options = 0x00 
) [virtual]
+
+
+ +

Recalculate the geometry of all components.

+
Parameters:
+ + + + +
plotPlot to be layout
plotRectRect where to place the components
optionsLayout options
+
+
+
See also:
invalidate(), titleRect(), legendRect(), scaleRect(), canvasRect()
+ +
+
+ +
+
+ + + + + + + +
bool QwtPlotLayout::alignCanvasToScales () const
+
+
+

Return the align-canvas-to-axis-scales setting. The canvas may:

+
    +
  • extend beyond the axis scale ends to maximize its size
  • +
  • align with the axis scale ends to control its size.
  • +
+
Returns:
align-canvas-to-axis-scales setting
+
See also:
setAlignCanvasToScales, setCanvasMargin()
+
Note:
In this context the term 'scale' means the backbone of a scale.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
QRectF QwtPlotLayout::alignLegend (const QRectF & canvasRect,
const QRectF & legendRect 
) const [protected]
+
+
+

Align the legend to the canvas

+
Parameters:
+ + + +
canvasRectGeometry of the canvas
legendRectMaximum geometry for the legend
+
+
+
Returns:
Geometry for the aligned legend
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotLayout::alignScales (int options,
QRectF & canvasRect,
QRectF scaleRect[QwtPlot::axisCnt] 
) const [protected]
+
+
+

Align the ticks of the axis to the canvas borders using the empty corners.

+
See also:
Options
+ +
+
+ +
+
+ + + + + + + + +
int QwtPlotLayout::canvasMargin (int axis) const
+
+
+
Returns:
Margin around the scale tick borders
+
See also:
setCanvasMargin()
+ +
+
+ +
+
+ + + + + + + +
const QRectF & QwtPlotLayout::canvasRect () const
+
+
+
Returns:
Geometry for the canvas
+
See also:
activate(), invalidate()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotLayout::expandLineBreaks (int options,
const QRectF & rect,
int & dimTitle,
int dimAxis[QwtPlot::axisCnt] 
) const [protected]
+
+
+

Expand all line breaks in text labels, and calculate the height of their widgets in orientation of the text.

+
Parameters:
+ + + + + +
optionsOptions how to layout the legend
rectBounding rect for title, axes and canvas.
dimTitleExpanded height of the title widget
dimAxisExpanded heights of the axis in axis orientation.
+
+
+
See also:
Options
+ +
+
+ +
+
+ + + + + + + +
void QwtPlotLayout::invalidate () [virtual]
+
+
+

Invalidate the geometry of all components.

+
See also:
activate()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
QRectF QwtPlotLayout::layoutLegend (Options options,
const QRectF & rect 
) const [protected]
+
+
+

Find the geometry for the legend

+
Parameters:
+ + + +
optionsOptions how to layout the legend
rectRectangle where to place the legend
+
+
+
Returns:
Geometry for the legend
+
See also:
Options
+ +
+
+ +
+
+ + + + + + + +
QwtPlot::LegendPosition QwtPlotLayout::legendPosition () const
+
+
+
Returns:
Position of the legend
+
See also:
setLegendPosition(), QwtPlot::setLegendPosition(), QwtPlot::legendPosition()
+ +
+
+ +
+
+ + + + + + + +
double QwtPlotLayout::legendRatio () const
+
+
+
Returns:
The relative size of the legend in the plot.
+
See also:
setLegendPosition()
+ +
+
+ +
+
+ + + + + + + +
const QRectF & QwtPlotLayout::legendRect () const
+
+
+
Returns:
Geometry for the legend
+
See also:
activate(), invalidate()
+ +
+
+ +
+
+ + + + + + + + +
QSize QwtPlotLayout::minimumSizeHint (const QwtPlotplot) const [virtual]
+
+
+ +

Return a minimum size hint.

+
See also:
QwtPlot::minimumSizeHint()
+ +
+
+ +
+
+ + + + + + + + +
const QRectF & QwtPlotLayout::scaleRect (int axis) const
+
+
+
Parameters:
+ + +
axisAxis index
+
+
+
Returns:
Geometry for the scale
+
See also:
activate(), invalidate()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotLayout::setAlignCanvasToScales (bool alignCanvasToScales)
+
+
+

Change the align-canvas-to-axis-scales setting. The canvas may:

+
    +
  • extend beyond the axis scale ends to maximize its size,
  • +
  • align with the axis scale ends to control its size.
  • +
+
Parameters:
+ + +
alignCanvasToScalesNew align-canvas-to-axis-scales setting
+
+
+
See also:
setCanvasMargin()
+
Note:
In this context the term 'scale' means the backbone of a scale.
+
Warning:
In case of alignCanvasToScales == true canvasMargin will have no effect
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotLayout::setCanvasMargin (int margin,
int axis = -1 
)
+
+
+

Change a margin of the canvas. The margin is the space above/below the scale ticks. A negative margin will be set to -1, excluding the borders of the scales.

+
Parameters:
+ + + +
marginNew margin
axisOne of QwtPlot::Axis. Specifies where the position of the margin. -1 means margin at all borders.
+
+
+
See also:
canvasMargin()
+
Warning:
The margin will have no effect when alignCanvasToScales is true
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotLayout::setLegendPosition (QwtPlot::LegendPosition pos)
+
+
+ +

Specify the position of the legend.

+
Parameters:
+ + +
posThe legend's position. Valid values are QwtPlot::LeftLegend, QwtPlot::RightLegend, QwtPlot::TopLegend, QwtPlot::BottomLegend.
+
+
+
See also:
QwtPlot::setLegendPosition()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotLayout::setLegendPosition (QwtPlot::LegendPosition pos,
double ratio 
)
+
+
+ +

Specify the position of the legend.

+
Parameters:
+ + + +
posThe legend's position.
ratioRatio between legend and the bounding rect of title, canvas and axes. The legend will be shrinked if it would need more space than the given ratio. The ratio is limited to ]0.0 .. 1.0]. In case of <= 0.0 it will be reset to the default ratio. The default vertical/horizontal ratio is 0.33/0.5.
+
+
+
See also:
QwtPlot::setLegendPosition()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotLayout::setLegendRatio (double ratio)
+
+
+

Specify the relative size of the legend in the plot

+
Parameters:
+ + +
ratioRatio between legend and the bounding rect of title, canvas and axes. The legend will be shrinked if it would need more space than the given ratio. The ratio is limited to ]0.0 .. 1.0]. In case of <= 0.0 it will be reset to the default ratio. The default vertical/horizontal ratio is 0.33/0.5.
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotLayout::setSpacing (int spacing)
+
+
+

Change the spacing of the plot. The spacing is the distance between the plot components.

+
Parameters:
+ + +
spacingnew spacing
+
+
+
See also:
setMargin(), spacing()
+ +
+
+ +
+
+ + + + + + + +
int QwtPlotLayout::spacing () const
+
+
+
Returns:
spacing
+
See also:
margin(), setSpacing()
+ +
+
+ +
+
+ + + + + + + +
const QRectF & QwtPlotLayout::titleRect () const
+
+
+
Returns:
Geometry for the title
+
See also:
activate(), invalidate()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_layout-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_layout-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_layout-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_layout-members.html 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,81 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPlotLayout Member List

+
+
+This is the complete list of members for QwtPlotLayout, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
activate(const QwtPlot *, const QRectF &rect, Options options=0x00)QwtPlotLayout [virtual]
alignCanvasToScales() const QwtPlotLayout
alignLegend(const QRectF &canvasRect, const QRectF &legendRect) const QwtPlotLayout [protected]
AlignScales enum valueQwtPlotLayout
alignScales(int options, QRectF &canvasRect, QRectF scaleRect[QwtPlot::axisCnt]) const QwtPlotLayout [protected]
canvasMargin(int axis) const QwtPlotLayout
canvasRect() const QwtPlotLayout
expandLineBreaks(int options, const QRectF &rect, int &dimTitle, int dimAxes[QwtPlot::axisCnt]) const QwtPlotLayout [protected]
IgnoreFrames enum valueQwtPlotLayout
IgnoreLegend enum valueQwtPlotLayout
IgnoreScrollbars enum valueQwtPlotLayout
invalidate()QwtPlotLayout [virtual]
layoutLegend(Options options, const QRectF &) const QwtPlotLayout [protected]
legendPosition() const QwtPlotLayout
legendRatio() const QwtPlotLayout
legendRect() const QwtPlotLayout
minimumSizeHint(const QwtPlot *) const QwtPlotLayout [virtual]
Option enum nameQwtPlotLayout
Options typedefQwtPlotLayout
QwtPlotLayout()QwtPlotLayout [explicit]
scaleRect(int axis) const QwtPlotLayout
setAlignCanvasToScales(bool)QwtPlotLayout
setCanvasMargin(int margin, int axis=-1)QwtPlotLayout
setLegendPosition(QwtPlot::LegendPosition pos, double ratio)QwtPlotLayout
setLegendPosition(QwtPlot::LegendPosition pos)QwtPlotLayout
setLegendRatio(double ratio)QwtPlotLayout
setSpacing(int)QwtPlotLayout
spacing() const QwtPlotLayout
titleRect() const QwtPlotLayout
~QwtPlotLayout()QwtPlotLayout [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_magnifier.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_magnifier.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_magnifier.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_magnifier.html 2011-04-15 10:49:24.000000000 +0000 @@ -0,0 +1,293 @@ + + + + +Qwt User's Guide: QwtPlotMagnifier Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPlotMagnifier Class Reference

+
+
+ +

QwtPlotMagnifier provides zooming, by magnifying in steps. +More...

+ +

#include <qwt_plot_magnifier.h>

+
+Inheritance diagram for QwtPlotMagnifier:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + +

+Public Member Functions

 QwtPlotMagnifier (QwtPlotCanvas *)
virtual ~QwtPlotMagnifier ()
void setAxisEnabled (int axis, bool on)
bool isAxisEnabled (int axis) const
QwtPlotCanvascanvas ()
const QwtPlotCanvascanvas () const
QwtPlotplot ()
const QwtPlotplot () const

+Protected Member Functions

virtual void rescale (double factor)
+

Detailed Description

+

QwtPlotMagnifier provides zooming, by magnifying in steps.

+

Using QwtPlotMagnifier a plot can be zoomed in/out in steps using keys, the mouse wheel or moving a mouse button in vertical direction.

+

Together with QwtPlotZoomer and QwtPlotPanner it is possible to implement individual and powerful navigation of the plot canvas.

+
See also:
QwtPlotZoomer, QwtPlotPanner, QwtPlot
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtPlotMagnifier::QwtPlotMagnifier (QwtPlotCanvascanvas) [explicit]
+
+
+

Constructor

+
Parameters:
+ + +
canvasPlot canvas to be magnified
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtPlotMagnifier::~QwtPlotMagnifier () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
QwtPlotCanvas * QwtPlotMagnifier::canvas ()
+
+
+ +

Return observed plot canvas.

+ +
+
+ +
+
+ + + + + + + +
const QwtPlotCanvas * QwtPlotMagnifier::canvas () const
+
+
+ +

Return Observed plot canvas.

+ +
+
+ +
+
+ + + + + + + + +
bool QwtPlotMagnifier::isAxisEnabled (int axis) const
+
+
+

Test if an axis is enabled

+
Parameters:
+ + +
axisAxis, see QwtPlot::Axis
+
+
+
Returns:
True, if the axis is enabled
+
See also:
setAxisEnabled()
+ +
+
+ +
+
+ + + + + + + +
QwtPlot * QwtPlotMagnifier::plot ()
+
+
+ +

Return plot widget, containing the observed plot canvas.

+ +
+
+ +
+
+ + + + + + + +
const QwtPlot * QwtPlotMagnifier::plot () const
+
+
+ +

Return plot widget, containing the observed plot canvas.

+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotMagnifier::rescale (double factor) [protected, virtual]
+
+
+

Zoom in/out the axes scales

+
Parameters:
+ + +
factorA value < 1.0 zooms in, a value > 1.0 zooms out.
+
+
+ +

Implements QwtMagnifier.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotMagnifier::setAxisEnabled (int axis,
bool on 
)
+
+
+ +

En/Disable an axis.

+

Only Axes that are enabled will be zoomed. All other axes will remain unchanged.

+
Parameters:
+ + + +
axisAxis, see QwtPlot::Axis
onOn/Off
+
+
+
See also:
isAxisEnabled()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_magnifier__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_magnifier__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_magnifier__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_magnifier__inherit__graph.map 2011-04-15 10:49:12.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_magnifier__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_magnifier__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_magnifier__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_magnifier__inherit__graph.md5 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1 @@ +a7eb460bd2688e393694f7650fd496bd \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_magnifier__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_magnifier__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_magnifier-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_magnifier-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_magnifier-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_magnifier-members.html 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,87 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPlotMagnifier Member List

+
+
+This is the complete list of members for QwtPlotMagnifier, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
canvas()QwtPlotMagnifier
canvas() const QwtPlotMagnifier
eventFilter(QObject *, QEvent *)QwtMagnifier [virtual]
getMouseButton(int &button, int &buttonState) const QwtMagnifier
getZoomInKey(int &key, int &modifiers) const QwtMagnifier
getZoomOutKey(int &key, int &modifiers) const QwtMagnifier
isAxisEnabled(int axis) const QwtPlotMagnifier
isEnabled() const QwtMagnifier
keyFactor() const QwtMagnifier
mouseFactor() const QwtMagnifier
parentWidget()QwtMagnifier
parentWidget() const QwtMagnifier
plot()QwtPlotMagnifier
plot() const QwtPlotMagnifier
QwtMagnifier(QWidget *)QwtMagnifier [explicit]
QwtPlotMagnifier(QwtPlotCanvas *)QwtPlotMagnifier [explicit]
rescale(double factor)QwtPlotMagnifier [protected, virtual]
setAxisEnabled(int axis, bool on)QwtPlotMagnifier
setEnabled(bool)QwtMagnifier
setKeyFactor(double)QwtMagnifier
setMouseButton(int button, int buttonState=Qt::NoButton)QwtMagnifier
setMouseFactor(double)QwtMagnifier
setWheelButtonState(int buttonState)QwtMagnifier
setWheelFactor(double)QwtMagnifier
setZoomInKey(int key, int modifiers)QwtMagnifier
setZoomOutKey(int key, int modifiers)QwtMagnifier
wheelButtonState() const QwtMagnifier
wheelFactor() const QwtMagnifier
widgetKeyPressEvent(QKeyEvent *)QwtMagnifier [protected, virtual]
widgetKeyReleaseEvent(QKeyEvent *)QwtMagnifier [protected, virtual]
widgetMouseMoveEvent(QMouseEvent *)QwtMagnifier [protected, virtual]
widgetMousePressEvent(QMouseEvent *)QwtMagnifier [protected, virtual]
widgetMouseReleaseEvent(QMouseEvent *)QwtMagnifier [protected, virtual]
widgetWheelEvent(QWheelEvent *)QwtMagnifier [protected, virtual]
~QwtMagnifier()QwtMagnifier [virtual]
~QwtPlotMagnifier()QwtPlotMagnifier [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_marker.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_marker.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_marker.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_marker.html 2011-04-15 10:49:24.000000000 +0000 @@ -0,0 +1,885 @@ + + + + +Qwt User's Guide: QwtPlotMarker Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPlotMarker Class Reference

+
+
+ +

A class for drawing markers. +More...

+ +

#include <qwt_plot_marker.h>

+
+Inheritance diagram for QwtPlotMarker:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Types

enum  LineStyle {
+  NoLine, +
+  HLine, +
+  VLine, +
+  Cross +
+ }

+Public Member Functions

 QwtPlotMarker ()
virtual ~QwtPlotMarker ()
virtual int rtti () const
double xValue () const
double yValue () const
QPointF value () const
void setXValue (double)
void setYValue (double)
void setValue (double, double)
void setValue (const QPointF &)
void setLineStyle (LineStyle st)
LineStyle lineStyle () const
void setLinePen (const QPen &p)
const QPen & linePen () const
void setSymbol (const QwtSymbol *)
const QwtSymbolsymbol () const
void setLabel (const QwtText &)
QwtText label () const
void setLabelAlignment (Qt::Alignment)
Qt::Alignment labelAlignment () const
void setLabelOrientation (Qt::Orientation)
Qt::Orientation labelOrientation () const
void setSpacing (int)
int spacing () const
virtual void draw (QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &) const
virtual QRectF boundingRect () const
virtual void updateLegend (QwtLegend *) const
virtual void drawLegendIdentifier (QPainter *, const QRectF &) const

+Protected Member Functions

virtual void drawLines (QPainter *, const QRectF &, const QPointF &) const
virtual void drawLabel (QPainter *, const QRectF &, const QPointF &) const
+

Detailed Description

+

A class for drawing markers.

+

A marker can be a horizontal line, a vertical line, a symbol, a label or any combination of them, which can be drawn around a center point inside a bounding rectangle.

+

The QwtPlotMarker::setSymbol() member assigns a symbol to the marker. The symbol is drawn at the specified point.

+

With setLabel(), a label can be assigned to the marker. The setLabelAlignment() member specifies where the label is drawn. All the Align*-constants in Qt::AlignmentFlags (see Qt documentation) are valid. The interpretation of the alignment depends on the marker's line style. The alignment refers to the center point of the marker, which means, for example, that the label would be printed left above the center point if the alignment was set to Qt::AlignLeft | Qt::AlignTop.

+

Member Enumeration Documentation

+ +
+
+ + + + +
enum QwtPlotMarker::LineStyle
+
+
+

Line styles.

+
See also:
setLineStyle(), lineStyle()
+
Enumerator:
+ + + + +
NoLine  +

No line.

+
HLine  +

A horizontal line.

+
VLine  +

A vertical line.

+
Cross  +

A crosshair.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtPlotMarker::QwtPlotMarker () [explicit]
+
+
+ +

Sets alignment to Qt::AlignCenter, and style to QwtPlotMarker::NoLine.

+ +
+
+ +
+
+ + + + + + + +
QwtPlotMarker::~QwtPlotMarker () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
QRectF QwtPlotMarker::boundingRect () const [virtual]
+
+
+
Returns:
An invalid bounding rect: QRectF(1.0, 1.0, -2.0, -2.0)
+ +

Reimplemented from QwtPlotItem.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotMarker::draw (QPainter * painter,
const QwtScaleMapxMap,
const QwtScaleMapyMap,
const QRectF & canvasRect 
) const [virtual]
+
+
+

Draw the marker

+
Parameters:
+ + + + + +
painterPainter
xMapx Scale Map
yMapy Scale Map
canvasRectContents rect of the canvas in painter coordinates
+
+
+ +

Implements QwtPlotItem.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotMarker::drawLabel (QPainter * painter,
const QRectF & canvasRect,
const QPointF & pos 
) const [protected, virtual]
+
+
+

Align and draw the text label of the marker

+
Parameters:
+ + + + +
painterPainter
canvasRectContents rect of the canvas in painter coordinates
posPosition of the marker, translated into widget coordinates
+
+
+
See also:
drawLabel(), QwtSymbol::drawSymbol()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotMarker::drawLegendIdentifier (QPainter * painter,
const QRectF & rect 
) const [virtual]
+
+
+ +

Draw the identifier representing the marker on the legend.

+
Parameters:
+ + + +
painterPainter
rectBounding rectangle for the identifier
+
+
+
See also:
updateLegend(), QwtPlotItem::Legend
+ +

Reimplemented from QwtLegendItemManager.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotMarker::drawLines (QPainter * painter,
const QRectF & canvasRect,
const QPointF & pos 
) const [protected, virtual]
+
+
+

Draw the lines marker

+
Parameters:
+ + + + +
painterPainter
canvasRectContents rect of the canvas in painter coordinates
posPosition of the marker, translated into widget coordinates
+
+
+
See also:
drawLabel(), QwtSymbol::drawSymbol()
+ +
+
+ +
+
+ + + + + + + +
QwtText QwtPlotMarker::label () const
+
+
+
Returns:
the label
+
See also:
setLabel()
+ +
+
+ +
+
+ + + + + + + +
Qt::Alignment QwtPlotMarker::labelAlignment () const
+
+
+
Returns:
the label alignment
+
See also:
setLabelAlignment(), setLabelOrientation()
+ +
+
+ +
+
+ + + + + + + +
Qt::Orientation QwtPlotMarker::labelOrientation () const
+
+
+
Returns:
the label orientation
+
See also:
setLabelOrientation(), labelAlignment()
+ +
+
+ +
+
+ + + + + + + +
const QPen & QwtPlotMarker::linePen () const
+
+
+
Returns:
the line pen
+
See also:
setLinePen()
+ +
+
+ +
+
+ + + + + + + +
QwtPlotMarker::LineStyle QwtPlotMarker::lineStyle () const
+
+
+
Returns:
the line style
+
See also:
setLineStyle()
+ +
+
+ +
+
+ + + + + + + +
int QwtPlotMarker::rtti () const [virtual]
+
+
+
Returns:
QwtPlotItem::Rtti_PlotMarker
+ +

Reimplemented from QwtPlotItem.

+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotMarker::setLabel (const QwtTextlabel)
+
+
+ +

Set the label.

+
Parameters:
+ + +
labellabel text
+
+
+
See also:
label()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotMarker::setLabelAlignment (Qt::Alignment align)
+
+
+ +

Set the alignment of the label.

+

In case of QwtPlotMarker::HLine the alignment is relative to the y position of the marker, but the horizontal flags correspond to the canvas rectangle. In case of QwtPlotMarker::VLine the alignment is relative to the x position of the marker, but the vertical flags correspond to the canvas rectangle.

+

In all other styles the alignment is relative to the marker's position.

+
Parameters:
+ + +
alignAlignment.
+
+
+
See also:
labelAlignment(), labelOrientation()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotMarker::setLabelOrientation (Qt::Orientation orientation)
+
+
+ +

Set the orientation of the label.

+

When orientation is Qt::Vertical the label is rotated by 90.0 degrees ( from bottom to top ).

+
Parameters:
+ + +
orientationOrientation of the label
+
+
+
See also:
labelOrientation(), setLabelAlignment()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotMarker::setLinePen (const QPen & pen)
+
+
+

Specify a pen for the line.

+
Parameters:
+ + +
penNew pen
+
+
+
See also:
linePen()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotMarker::setLineStyle (LineStyle style)
+
+
+ +

Set the line style.

+
Parameters:
+ + +
styleLine style.
+
+
+
See also:
lineStyle()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotMarker::setSpacing (int spacing)
+
+
+ +

Set the spacing.

+

When the label is not centered on the marker position, the spacing is the distance between the position and the label.

+
Parameters:
+ + +
spacingSpacing
+
+
+
See also:
spacing(), setLabelAlignment()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotMarker::setSymbol (const QwtSymbolsymbol)
+
+
+ +

Assign a symbol.

+
Parameters:
+ + +
symbolNew symbol
+
+
+
See also:
symbol()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotMarker::setValue (const QPointF & pos)
+
+
+ +

Set Value.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotMarker::setValue (double x,
double y 
)
+
+
+ +

Set Value.

+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotMarker::setXValue (double x)
+
+
+ +

Set X Value.

+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotMarker::setYValue (double y)
+
+
+ +

Set Y Value.

+ +
+
+ +
+
+ + + + + + + +
int QwtPlotMarker::spacing () const
+
+
+
Returns:
the spacing
+
See also:
setSpacing()
+ +
+
+ +
+
+ + + + + + + +
const QwtSymbol * QwtPlotMarker::symbol () const
+
+
+
Returns:
the symbol
+
See also:
setSymbol(), QwtSymbol
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotMarker::updateLegend (QwtLegendlegend) const [virtual]
+
+
+ +

Update the widget that represents the item on the legend.

+
Parameters:
+ + +
legendLegend
+
+
+
See also:
drawLegendIdentifier(), legendItem(), itemChanged(), QwtLegend()
+
Note:
In the default setting QwtPlotItem::Legend is disabled
+ +

Reimplemented from QwtPlotItem.

+ +
+
+ +
+
+ + + + + + + +
QPointF QwtPlotMarker::value () const
+
+
+ +

Return Value.

+ +
+
+ +
+
+ + + + + + + +
double QwtPlotMarker::xValue () const
+
+
+ +

Return x Value.

+ +
+
+ +
+
+ + + + + + + +
double QwtPlotMarker::yValue () const
+
+
+ +

Return y Value.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_marker__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_marker__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_marker__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_marker__inherit__graph.map 2011-04-15 10:49:12.000000000 +0000 @@ -0,0 +1,4 @@ + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_marker__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_marker__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_marker__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_marker__inherit__graph.md5 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1 @@ +3299584cff6f2fa8f973bd8b3c8d42f1 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_marker__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_marker__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_marker-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_marker-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_marker-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_marker-members.html 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,135 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPlotMarker Member List

+
+
+This is the complete list of members for QwtPlotMarker, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
attach(QwtPlot *plot)QwtPlotItem
AutoScale enum valueQwtPlotItem
boundingRect() const QwtPlotMarker [virtual]
Cross enum valueQwtPlotMarker
detach()QwtPlotItem
draw(QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &) const QwtPlotMarker [virtual]
drawLabel(QPainter *, const QRectF &, const QPointF &) const QwtPlotMarker [protected, virtual]
drawLegendIdentifier(QPainter *, const QRectF &) const QwtPlotMarker [virtual]
drawLines(QPainter *, const QRectF &, const QPointF &) const QwtPlotMarker [protected, virtual]
hide()QwtPlotItem
HLine enum valueQwtPlotMarker
isVisible() const QwtPlotItem
ItemAttribute enum nameQwtPlotItem
ItemAttributes typedefQwtPlotItem
itemChanged()QwtPlotItem [virtual]
label() const QwtPlotMarker
labelAlignment() const QwtPlotMarker
labelOrientation() const QwtPlotMarker
Legend enum valueQwtPlotItem
legendItem() const QwtPlotItem [virtual]
linePen() const QwtPlotMarker
lineStyle() const QwtPlotMarker
LineStyle enum nameQwtPlotMarker
NoLine enum valueQwtPlotMarker
paintRect(const QwtScaleMap &, const QwtScaleMap &) const QwtPlotItem
plot() const QwtPlotItem
QwtLegendItemManager()QwtLegendItemManager [inline]
QwtPlotItem(const QwtText &title=QwtText())QwtPlotItem [explicit]
QwtPlotMarker()QwtPlotMarker [explicit]
RenderAntialiased enum valueQwtPlotItem
RenderHint enum nameQwtPlotItem
RenderHints typedefQwtPlotItem
rtti() const QwtPlotMarker [virtual]
Rtti_PlotCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotGrid enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotHistogram enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotIntervalCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotItem enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotMarker enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotScale enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSpectroCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSpectrogram enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSVG enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotUserItem enum value (defined in QwtPlotItem)QwtPlotItem
RttiValues enum nameQwtPlotItem
scaleRect(const QwtScaleMap &, const QwtScaleMap &) const QwtPlotItem
setAxes(int xAxis, int yAxis)QwtPlotItem
setItemAttribute(ItemAttribute, bool on=true)QwtPlotItem
setLabel(const QwtText &)QwtPlotMarker
setLabelAlignment(Qt::Alignment)QwtPlotMarker
setLabelOrientation(Qt::Orientation)QwtPlotMarker
setLinePen(const QPen &p)QwtPlotMarker
setLineStyle(LineStyle st)QwtPlotMarker
setRenderHint(RenderHint, bool on=true)QwtPlotItem
setSpacing(int)QwtPlotMarker
setSymbol(const QwtSymbol *)QwtPlotMarker
setTitle(const QString &title)QwtPlotItem
setTitle(const QwtText &title)QwtPlotItem
setValue(double, double)QwtPlotMarker
setValue(const QPointF &)QwtPlotMarker
setVisible(bool)QwtPlotItem [virtual]
setXAxis(int axis)QwtPlotItem
setXValue(double)QwtPlotMarker
setYAxis(int axis)QwtPlotItem
setYValue(double)QwtPlotMarker
setZ(double z)QwtPlotItem
show()QwtPlotItem
spacing() const QwtPlotMarker
symbol() const QwtPlotMarker
testItemAttribute(ItemAttribute) const QwtPlotItem
testRenderHint(RenderHint) const QwtPlotItem
title() const QwtPlotItem
updateLegend(QwtLegend *) const QwtPlotMarker [virtual]
updateScaleDiv(const QwtScaleDiv &, const QwtScaleDiv &)QwtPlotItem [virtual]
value() const QwtPlotMarker
VLine enum valueQwtPlotMarker
xAxis() const QwtPlotItem
xValue() const QwtPlotMarker
yAxis() const QwtPlotItem
yValue() const QwtPlotMarker
z() const QwtPlotItem
~QwtLegendItemManager()QwtLegendItemManager [inline, virtual]
~QwtPlotItem()QwtPlotItem [virtual]
~QwtPlotMarker()QwtPlotMarker [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot-members.html 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,141 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPlot Member List

+
+
+This is the complete list of members for QwtPlot, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
applyProperties(const QString &)QwtPlot
autoDelete() const QwtPlotDict
autoRefresh()QwtPlot [slot]
autoReplot() const QwtPlot
Axis enum nameQwtPlot
axisAutoScale(int axisId) const QwtPlot
axisCnt enum valueQwtPlot
axisEnabled(int axisId) const QwtPlot
axisFont(int axisId) const QwtPlot
axisInterval(int axisId) const QwtPlot
axisMaxMajor(int axisId) const QwtPlot
axisMaxMinor(int axisId) const QwtPlot
axisScaleDiv(int axisId) const QwtPlot
axisScaleDiv(int axisId)QwtPlot
axisScaleDraw(int axisId) const QwtPlot
axisScaleDraw(int axisId)QwtPlot
axisScaleEngine(int axisId)QwtPlot
axisScaleEngine(int axisId) const QwtPlot
axisStepSize(int axisId) const QwtPlot
axisTitle(int axisId) const QwtPlot
axisValid(int axisId)QwtPlot [protected, static]
axisWidget(int axisId) const QwtPlot
axisWidget(int axisId)QwtPlot
BottomLegend enum valueQwtPlot
canvas()QwtPlot
canvas() const QwtPlot
canvasBackground() const QwtPlot
canvasLineWidth() const QwtPlot
canvasMap(int axisId) const QwtPlot [virtual]
detachItems(int rtti=QwtPlotItem::Rtti_PlotItem, bool autoDelete=true)QwtPlotDict
drawCanvas(QPainter *)QwtPlot [virtual]
drawItems(QPainter *, const QRectF &, const QwtScaleMap maps[axisCnt]) const QwtPlot [virtual]
enableAxis(int axisId, bool tf=true)QwtPlot
event(QEvent *)QwtPlot [virtual]
ExternalLegend enum valueQwtPlot
grabProperties() const QwtPlot
insertLegend(QwtLegend *, LegendPosition=QwtPlot::RightLegend, double ratio=-1.0)QwtPlot
invTransform(int axisId, int pos) const QwtPlot
itemList() const QwtPlotDict
itemList(int rtti) const QwtPlotDict
LeftLegend enum valueQwtPlot
legend()QwtPlot
legend() const QwtPlot
legendChecked(QwtPlotItem *plotItem, bool on)QwtPlot [signal]
legendClicked(QwtPlotItem *plotItem)QwtPlot [signal]
legendItemChecked(bool)QwtPlot [protected, virtual, slot]
legendItemClicked()QwtPlot [protected, virtual, slot]
LegendPosition enum nameQwtPlot
minimumSizeHint() const QwtPlot [virtual]
plotLayout()QwtPlot
plotLayout() const QwtPlot
QwtPlot(QWidget *=NULL)QwtPlot [explicit]
QwtPlot(const QwtText &title, QWidget *p=NULL)QwtPlot [explicit]
QwtPlotDict()QwtPlotDict [explicit]
replot()QwtPlot [virtual, slot]
resizeEvent(QResizeEvent *e)QwtPlot [protected, virtual]
RightLegend enum valueQwtPlot
setAutoDelete(bool)QwtPlotDict
setAutoReplot(bool tf=true)QwtPlot
setAxisAutoScale(int axisId, bool on=true)QwtPlot
setAxisFont(int axisId, const QFont &f)QwtPlot
setAxisLabelAlignment(int axisId, Qt::Alignment)QwtPlot
setAxisLabelRotation(int axisId, double rotation)QwtPlot
setAxisMaxMajor(int axisId, int maxMajor)QwtPlot
setAxisMaxMinor(int axisId, int maxMinor)QwtPlot
setAxisScale(int axisId, double min, double max, double step=0)QwtPlot
setAxisScaleDiv(int axisId, const QwtScaleDiv &)QwtPlot
setAxisScaleDraw(int axisId, QwtScaleDraw *)QwtPlot
setAxisScaleEngine(int axisId, QwtScaleEngine *)QwtPlot
setAxisTitle(int axisId, const QString &)QwtPlot
setAxisTitle(int axisId, const QwtText &)QwtPlot
setCanvasBackground(const QBrush &)QwtPlot
setCanvasLineWidth(int w)QwtPlot
setTitle(const QString &)QwtPlot
setTitle(const QwtText &t)QwtPlot
sizeHint() const QwtPlot [virtual]
title() const QwtPlot
titleLabel()QwtPlot
titleLabel() const QwtPlot
TopLegend enum valueQwtPlot
transform(int axisId, double value) const QwtPlot
updateAxes()QwtPlot
updateLayout()QwtPlot [virtual]
updateTabOrder()QwtPlot [protected, virtual]
xBottom enum valueQwtPlot
xTop enum valueQwtPlot
yLeft enum valueQwtPlot
yRight enum valueQwtPlot
~QwtPlot()QwtPlot [virtual]
~QwtPlotDict()QwtPlotDict [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_panner.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_panner.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_panner.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_panner.html 2011-04-15 10:49:24.000000000 +0000 @@ -0,0 +1,331 @@ + + + + +Qwt User's Guide: QwtPlotPanner Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPlotPanner Class Reference

+
+
+ +

QwtPlotPanner provides panning of a plot canvas. +More...

+ +

#include <qwt_plot_panner.h>

+
+Inheritance diagram for QwtPlotPanner:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + +

+Public Member Functions

 QwtPlotPanner (QwtPlotCanvas *)
virtual ~QwtPlotPanner ()
QwtPlotCanvascanvas ()
const QwtPlotCanvascanvas () const
QwtPlotplot ()
const QwtPlotplot () const
void setAxisEnabled (int axis, bool on)
bool isAxisEnabled (int axis) const

+Protected Slots

virtual void moveCanvas (int dx, int dy)

+Protected Member Functions

virtual QBitmap contentsMask () const
+

Detailed Description

+

QwtPlotPanner provides panning of a plot canvas.

+

QwtPlotPanner is a panner for a QwtPlotCanvas, that adjusts the scales of the axes after dropping the canvas on its new position.

+

Together with QwtPlotZoomer and QwtPlotMagnifier powerful ways of navigating on a QwtPlot widget can be implemented easily.

+
Note:
The axes are not updated, while dragging the canvas
+
See also:
QwtPlotZoomer, QwtPlotMagnifier
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtPlotPanner::QwtPlotPanner (QwtPlotCanvascanvas) [explicit]
+
+
+ +

Create a plot panner.

+

The panner is enabled for all axes

+
Parameters:
+ + +
canvasPlot canvas to pan, also the parent object
+
+
+
See also:
setAxisEnabled()
+ +
+
+ +
+
+ + + + + + + +
QwtPlotPanner::~QwtPlotPanner () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
QwtPlotCanvas * QwtPlotPanner::canvas ()
+
+
+ +

Return observed plot canvas.

+ +
+
+ +
+
+ + + + + + + +
const QwtPlotCanvas * QwtPlotPanner::canvas () const
+
+
+ +

Return Observed plot canvas.

+ +
+
+ +
+
+ + + + + + + +
QBitmap QwtPlotPanner::contentsMask () const [protected, virtual]
+
+
+

Calculate a mask from the border mask of the canvas

+
See also:
QwtPlotCanvas::borderMask()
+ +

Reimplemented from QwtPanner.

+ +
+
+ +
+
+ + + + + + + + +
bool QwtPlotPanner::isAxisEnabled (int axis) const
+
+
+

Test if an axis is enabled

+
Parameters:
+ + +
axisAxis, see QwtPlot::Axis
+
+
+
Returns:
True, if the axis is enabled
+
See also:
setAxisEnabled(), moveCanvas()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotPanner::moveCanvas (int dx,
int dy 
) [protected, virtual, slot]
+
+
+

Adjust the enabled axes according to dx/dy

+
Parameters:
+ + + +
dxPixel offset in x direction
dyPixel offset in y direction
+
+
+
See also:
QwtPanner::panned()
+ +
+
+ +
+
+ + + + + + + +
const QwtPlot * QwtPlotPanner::plot () const
+
+
+ +

Return plot widget, containing the observed plot canvas.

+ +
+
+ +
+
+ + + + + + + +
QwtPlot * QwtPlotPanner::plot ()
+
+
+ +

Return plot widget, containing the observed plot canvas.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotPanner::setAxisEnabled (int axis,
bool on 
)
+
+
+ +

En/Disable an axis.

+

Axes that are enabled will be synchronized to the result of panning. All other axes will remain unchanged.

+
Parameters:
+ + + +
axisAxis, see QwtPlot::Axis
onOn/Off
+
+
+
See also:
isAxisEnabled(), moveCanvas()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_panner__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_panner__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_panner__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_panner__inherit__graph.map 2011-04-15 10:49:12.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_panner__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_panner__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_panner__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_panner__inherit__graph.md5 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1 @@ +8ada2141387ad6cf3c4629b3ec164667 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_panner__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_panner__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_panner-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_panner-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_panner-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_panner-members.html 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,84 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPlotPanner Member List

+
+
+This is the complete list of members for QwtPlotPanner, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
canvas()QwtPlotPanner
canvas() const QwtPlotPanner
contentsMask() const QwtPlotPanner [protected, virtual]
cursor() const QwtPanner
eventFilter(QObject *, QEvent *)QwtPanner [virtual]
getAbortKey(int &key, int &state) const QwtPanner
getMouseButton(int &button, int &buttonState) const QwtPanner
grab() const QwtPanner [protected, virtual]
isAxisEnabled(int axis) const QwtPlotPanner
isEnabled() const QwtPanner
isOrientationEnabled(Qt::Orientation) const QwtPanner
moveCanvas(int dx, int dy)QwtPlotPanner [protected, virtual, slot]
moved(int dx, int dy)QwtPanner [signal]
orientations() const QwtPanner
paintEvent(QPaintEvent *)QwtPanner [protected, virtual]
panned(int dx, int dy)QwtPanner [signal]
plot()QwtPlotPanner
plot() const QwtPlotPanner
QwtPanner(QWidget *parent)QwtPanner
QwtPlotPanner(QwtPlotCanvas *)QwtPlotPanner [explicit]
setAbortKey(int key, int state=Qt::NoButton)QwtPanner
setAxisEnabled(int axis, bool on)QwtPlotPanner
setCursor(const QCursor &)QwtPanner
setEnabled(bool)QwtPanner
setMouseButton(int button, int buttonState=Qt::NoButton)QwtPanner
setOrientations(Qt::Orientations)QwtPanner
widgetKeyPressEvent(QKeyEvent *)QwtPanner [protected, virtual]
widgetKeyReleaseEvent(QKeyEvent *)QwtPanner [protected, virtual]
widgetMouseMoveEvent(QMouseEvent *)QwtPanner [protected, virtual]
widgetMousePressEvent(QMouseEvent *)QwtPanner [protected, virtual]
widgetMouseReleaseEvent(QMouseEvent *)QwtPanner [protected, virtual]
~QwtPanner()QwtPanner [virtual]
~QwtPlotPanner()QwtPlotPanner [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_picker.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_picker.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_picker.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_picker.html 2011-04-15 10:49:24.000000000 +0000 @@ -0,0 +1,759 @@ + + + + +Qwt User's Guide: QwtPlotPicker Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPlotPicker Class Reference

+
+
+ +

QwtPlotPicker provides selections on a plot canvas. +More...

+ +

#include <qwt_plot_picker.h>

+
+Inheritance diagram for QwtPlotPicker:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Signals

void selected (const QPointF &pos)
void selected (const QRectF &rect)
void selected (const QVector< QPointF > &pa)
void appended (const QPointF &pos)
void moved (const QPointF &pos)

+Public Member Functions

 QwtPlotPicker (QwtPlotCanvas *)
virtual ~QwtPlotPicker ()
 QwtPlotPicker (int xAxis, int yAxis, QwtPlotCanvas *)
 QwtPlotPicker (int xAxis, int yAxis, RubberBand rubberBand, DisplayMode trackerMode, QwtPlotCanvas *)
virtual void setAxis (int xAxis, int yAxis)
int xAxis () const
int yAxis () const
QwtPlotplot ()
const QwtPlotplot () const
QwtPlotCanvascanvas ()
const QwtPlotCanvascanvas () const

+Protected Member Functions

QRectF scaleRect () const
QRectF invTransform (const QRect &) const
QRect transform (const QRectF &) const
QPointF invTransform (const QPoint &) const
QPoint transform (const QPointF &) const
virtual QwtText trackerText (const QPoint &) const
virtual QwtText trackerTextF (const QPointF &) const
virtual void move (const QPoint &)
virtual void append (const QPoint &)
virtual bool end (bool ok=true)
+

Detailed Description

+

QwtPlotPicker provides selections on a plot canvas.

+

QwtPlotPicker is a QwtPicker tailored for selections on a plot canvas. It is set to a x-Axis and y-Axis and translates all pixel coordinates into this coodinate system.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtPlotPicker::QwtPlotPicker (QwtPlotCanvascanvas) [explicit]
+
+
+ +

Create a plot picker.

+

The picker is set to those x- and y-axis of the plot that are enabled. If both or no x-axis are enabled, the picker is set to QwtPlot::xBottom. If both or no y-axis are enabled, it is set to QwtPlot::yLeft.

+
Parameters:
+ + +
canvasPlot canvas to observe, also the parent object
+
+
+
See also:
QwtPlot::autoReplot(), QwtPlot::replot(), scaleRect()
+ +
+
+ +
+
+ + + + + + + +
QwtPlotPicker::~QwtPlotPicker () [virtual]
+
+
+ +

Destructor.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
QwtPlotPicker::QwtPlotPicker (int xAxis,
int yAxis,
QwtPlotCanvascanvas 
) [explicit]
+
+
+

Create a plot picker

+
Parameters:
+ + + + +
xAxisSet the x axis of the picker
yAxisSet the y axis of the picker
canvasPlot canvas to observe, also the parent object
+
+
+
See also:
QwtPlot::autoReplot(), QwtPlot::replot(), scaleRect()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
QwtPlotPicker::QwtPlotPicker (int xAxis,
int yAxis,
RubberBand rubberBand,
DisplayMode trackerMode,
QwtPlotCanvascanvas 
) [explicit]
+
+
+

Create a plot picker

+
Parameters:
+ + + + + + +
xAxisX axis of the picker
yAxisY axis of the picker
rubberBandRubberband style
trackerModeTracker mode
canvasPlot canvas to observe, also the parent object
+
+
+
See also:
QwtPicker, QwtPicker::setSelectionFlags(), QwtPicker::setRubberBand(), QwtPicker::setTrackerMode
+
+QwtPlot::autoReplot(), QwtPlot::replot(), scaleRect()
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + +
void QwtPlotPicker::append (const QPoint & pos) [protected, virtual]
+
+
+

Append a point to the selection and update rubberband and tracker.

+
Parameters:
+ + +
posAdditional point
+
+
+
See also:
isActive, begin(), end(), move(), appended()
+
Note:
The appended(const QPoint &), appended(const QDoublePoint &) signals are emitted.
+ +

Reimplemented from QwtPicker.

+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotPicker::appended (const QPointF & pos) [signal]
+
+
+

A signal emitted when a point has been appended to the selection

+
Parameters:
+ + +
posPosition of the appended point.
+
+
+
See also:
append(). moved()
+ +
+
+ +
+
+ + + + + + + +
QwtPlotCanvas * QwtPlotPicker::canvas ()
+
+
+ +

Return observed plot canvas.

+ +
+
+ +
+
+ + + + + + + +
const QwtPlotCanvas * QwtPlotPicker::canvas () const
+
+
+ +

Return Observed plot canvas.

+ +
+
+ +
+
+ + + + + + + + +
bool QwtPlotPicker::end (bool ok = true) [protected, virtual]
+
+
+

Close a selection setting the state to inactive.

+
Parameters:
+ + +
okIf true, complete the selection and emit selected signals otherwise discard the selection.
+
+
+
Returns:
true if the selection is accepted, false otherwise
+ +

Reimplemented from QwtPicker.

+ +

Reimplemented in QwtPlotZoomer.

+ +
+
+ +
+
+ + + + + + + + +
QPointF QwtPlotPicker::invTransform (const QPoint & pos) const [protected]
+
+
+

Translate a point from pixel into plot coordinates

+
Returns:
Point in plot coordinates
+
See also:
transform()
+ +
+
+ +
+
+ + + + + + + + +
QRectF QwtPlotPicker::invTransform (const QRect & rect) const [protected]
+
+
+

Translate a rectangle from pixel into plot coordinates

+
Returns:
Rectangle in plot coordinates
+
See also:
transform()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotPicker::move (const QPoint & pos) [protected, virtual]
+
+
+

Move the last point of the selection

+
Parameters:
+ + +
posNew position
+
+
+
See also:
isActive, begin(), end(), append()
+
Note:
The moved(const QPoint &), moved(const QDoublePoint &) signals are emitted.
+ +

Reimplemented from QwtPicker.

+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotPicker::moved (const QPointF & pos) [signal]
+
+
+

A signal emitted whenever the last appended point of the selection has been moved.

+
Parameters:
+ + +
posPosition of the moved last point of the selection.
+
+
+
See also:
move(), appended()
+ +
+
+ +
+
+ + + + + + + +
const QwtPlot * QwtPlotPicker::plot () const
+
+
+ +

Return plot widget, containing the observed plot canvas.

+ +
+
+ +
+
+ + + + + + + +
QwtPlot * QwtPlotPicker::plot ()
+
+
+ +

Return plot widget, containing the observed plot canvas.

+ +
+
+ +
+
+ + + + + + + +
QRectF QwtPlotPicker::scaleRect () const [protected]
+
+
+

Return normalized bounding rect of the axes

+
See also:
QwtPlot::autoReplot(), QwtPlot::replot().
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotPicker::selected (const QPointF & pos) [signal]
+
+
+

A signal emitted in case of selectionFlags() & PointSelection.

+
Parameters:
+ + +
posSelected point
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotPicker::selected (const QRectF & rect) [signal]
+
+
+

A signal emitted in case of selectionFlags() & RectSelection.

+
Parameters:
+ + +
rectSelected rectangle
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotPicker::selected (const QVector< QPointF > & pa) [signal]
+
+
+

A signal emitting the selected points, at the end of a selection.

+
Parameters:
+ + +
paSelected points
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotPicker::setAxis (int xAxis,
int yAxis 
) [virtual]
+
+
+

Set the x and y axes of the picker

+
Parameters:
+ + + +
xAxisX axis
yAxisY axis
+
+
+ +

Reimplemented in QwtPlotZoomer.

+ +
+
+ +
+
+ + + + + + + + +
QwtText QwtPlotPicker::trackerText (const QPoint & pos) const [protected, virtual]
+
+
+

Translate a pixel position into a position string

+
Parameters:
+ + +
posPosition in pixel coordinates
+
+
+
Returns:
Position string
+ +

Reimplemented from QwtPicker.

+ +
+
+ +
+
+ + + + + + + + +
QwtText QwtPlotPicker::trackerTextF (const QPointF & pos) const [protected, virtual]
+
+
+ +

Translate a position into a position string.

+

In case of HLineRubberBand the label is the value of the y position, in case of VLineRubberBand the value of the x position. Otherwise the label contains x and y position separated by a ',' .

+

The format for the double to string conversion is "%.4f".

+
Parameters:
+ + +
posPosition
+
+
+
Returns:
Position string
+ +
+
+ +
+
+ + + + + + + + +
QRect QwtPlotPicker::transform (const QRectF & rect) const [protected]
+
+
+

Translate a rectangle from plot into pixel coordinates

+
Returns:
Rectangle in pixel coordinates
+
See also:
invTransform()
+ +
+
+ +
+
+ + + + + + + + +
QPoint QwtPlotPicker::transform (const QPointF & pos) const [protected]
+
+
+

Translate a point from plot into pixel coordinates

+
Returns:
Point in pixel coordinates
+
See also:
invTransform()
+ +
+
+ +
+
+ + + + + + + +
int QwtPlotPicker::xAxis () const
+
+
+ +

Return x axis.

+ +
+
+ +
+
+ + + + + + + +
int QwtPlotPicker::yAxis () const
+
+
+ +

Return y axis.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_picker__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_picker__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_picker__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_picker__inherit__graph.map 2011-04-15 10:49:12.000000000 +0000 @@ -0,0 +1,5 @@ + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_picker__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_picker__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_picker__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_picker__inherit__graph.md5 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1 @@ +0f914c4ee5dcded69a774582c615be2b \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_picker__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_picker__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_picker-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_picker-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_picker-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_picker-members.html 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,185 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPlotPicker Member List

+
+
+This is the complete list of members for QwtPlotPicker, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
accept(QPolygon &) const QwtPicker [protected, virtual]
activated(bool on)QwtPicker [signal]
ActiveOnly enum valueQwtPicker
adjustedPoints(const QPolygon &) const QwtPicker [protected, virtual]
AlwaysOff enum valueQwtPicker
AlwaysOn enum valueQwtPicker
append(const QPoint &)QwtPlotPicker [protected, virtual]
appended(const QPointF &pos)QwtPlotPicker [signal]
QwtPicker::appended(const QPoint &pos)QwtPicker [signal]
begin()QwtPicker [protected, virtual]
canvas()QwtPlotPicker
canvas() const QwtPlotPicker
changed(const QPolygon &selection)QwtPicker [signal]
CrossRubberBand enum valueQwtPicker
DisplayMode enum nameQwtPicker
drawRubberBand(QPainter *) const QwtPicker [virtual]
drawTracker(QPainter *) const QwtPicker [virtual]
EllipseRubberBand enum valueQwtPicker
end(bool ok=true)QwtPlotPicker [protected, virtual]
eventFilter(QObject *, QEvent *)QwtPicker [virtual]
HLineRubberBand enum valueQwtPicker
initKeyPattern()QwtEventPattern
initMousePattern(int numButtons)QwtEventPattern
invTransform(const QRect &) const QwtPlotPicker [protected]
invTransform(const QPoint &) const QwtPlotPicker [protected]
isActive() const QwtPicker
isEnabled() const QwtPicker
KeepSize enum valueQwtPicker
KeyAbort enum value (defined in QwtEventPattern)QwtEventPattern
KeyDown enum value (defined in QwtEventPattern)QwtEventPattern
KeyHome enum value (defined in QwtEventPattern)QwtEventPattern
KeyLeft enum value (defined in QwtEventPattern)QwtEventPattern
keyMatch(uint pattern, const QKeyEvent *) const QwtEventPattern
keyMatch(const KeyPattern &, const QKeyEvent *) const QwtEventPattern [protected, virtual]
keyPattern() const QwtEventPattern
keyPattern()QwtEventPattern
KeyPatternCode enum nameQwtEventPattern
KeyPatternCount enum value (defined in QwtEventPattern)QwtEventPattern
KeyRedo enum value (defined in QwtEventPattern)QwtEventPattern
KeyRight enum value (defined in QwtEventPattern)QwtEventPattern
KeySelect1 enum value (defined in QwtEventPattern)QwtEventPattern
KeySelect2 enum value (defined in QwtEventPattern)QwtEventPattern
KeyUndo enum value (defined in QwtEventPattern)QwtEventPattern
KeyUp enum value (defined in QwtEventPattern)QwtEventPattern
mouseMatch(uint pattern, const QMouseEvent *) const QwtEventPattern
mouseMatch(const MousePattern &, const QMouseEvent *) const QwtEventPattern [protected, virtual]
mousePattern() const QwtEventPattern
mousePattern()QwtEventPattern
MousePatternCode enum nameQwtEventPattern
MousePatternCount enum value (defined in QwtEventPattern)QwtEventPattern
MouseSelect1 enum value (defined in QwtEventPattern)QwtEventPattern
MouseSelect2 enum value (defined in QwtEventPattern)QwtEventPattern
MouseSelect3 enum value (defined in QwtEventPattern)QwtEventPattern
MouseSelect4 enum value (defined in QwtEventPattern)QwtEventPattern
MouseSelect5 enum value (defined in QwtEventPattern)QwtEventPattern
MouseSelect6 enum value (defined in QwtEventPattern)QwtEventPattern
move(const QPoint &)QwtPlotPicker [protected, virtual]
moved(const QPointF &pos)QwtPlotPicker [signal]
QwtPicker::moved(const QPoint &pos)QwtPicker [signal]
NoRubberBand enum valueQwtPicker
parentWidget()QwtPicker
parentWidget() const QwtPicker
pickedPoints() const QwtPicker [protected]
pickRect() const QwtPicker [virtual]
plot()QwtPlotPicker
plot() const QwtPlotPicker
PolygonRubberBand enum valueQwtPicker
QwtEventPattern()QwtEventPattern
QwtPicker(QWidget *parent)QwtPicker [explicit]
QwtPicker(RubberBand rubberBand, DisplayMode trackerMode, QWidget *)QwtPicker [explicit]
QwtPlotPicker(QwtPlotCanvas *)QwtPlotPicker [explicit]
QwtPlotPicker(int xAxis, int yAxis, QwtPlotCanvas *)QwtPlotPicker [explicit]
QwtPlotPicker(int xAxis, int yAxis, RubberBand rubberBand, DisplayMode trackerMode, QwtPlotCanvas *)QwtPlotPicker [explicit]
RectRubberBand enum valueQwtPicker
remove()QwtPicker [protected, virtual]
removed(const QPoint &pos)QwtPicker [signal]
reset()QwtPicker [protected, virtual]
ResizeMode enum nameQwtPicker
resizeMode() const QwtPicker
RubberBand enum nameQwtPicker
rubberBand() const QwtPicker
rubberBandPen() const QwtPicker
rubberBandWidget() const QwtPicker [protected]
scaleRect() const QwtPlotPicker [protected]
selected(const QPointF &pos)QwtPlotPicker [signal]
selected(const QRectF &rect)QwtPlotPicker [signal]
selected(const QVector< QPointF > &pa)QwtPlotPicker [signal]
QwtPicker::selected(const QPolygon &polygon)QwtPicker [signal]
selection() const QwtPicker
setAxis(int xAxis, int yAxis)QwtPlotPicker [virtual]
setEnabled(bool)QwtPicker [slot]
setKeyPattern(uint pattern, int key, int state=Qt::NoButton)QwtEventPattern
setKeyPattern(const QVector< KeyPattern > &)QwtEventPattern
setMousePattern(uint pattern, int button, int state=Qt::NoButton)QwtEventPattern
setMousePattern(const QVector< MousePattern > &)QwtEventPattern
setResizeMode(ResizeMode)QwtPicker
setRubberBand(RubberBand)QwtPicker
setRubberBandPen(const QPen &)QwtPicker
setStateMachine(QwtPickerMachine *)QwtPicker
setTrackerFont(const QFont &)QwtPicker
setTrackerMode(DisplayMode)QwtPicker
setTrackerPen(const QPen &)QwtPicker
stateMachine() const QwtPicker
stateMachine()QwtPicker
Stretch enum valueQwtPicker
stretchSelection(const QSize &oldSize, const QSize &newSize)QwtPicker [protected, virtual]
trackerFont() const QwtPicker
trackerMode() const QwtPicker
trackerPen() const QwtPicker
trackerPosition() const QwtPicker
trackerRect(const QFont &) const QwtPicker [virtual]
trackerText(const QPoint &) const QwtPlotPicker [protected, virtual]
trackerTextF(const QPointF &) const QwtPlotPicker [protected, virtual]
trackerWidget() const QwtPicker [protected]
transform(const QRectF &) const QwtPlotPicker [protected]
transform(const QPointF &) const QwtPlotPicker [protected]
transition(const QEvent *)QwtPicker [protected, virtual]
updateDisplay()QwtPicker [protected, virtual]
UserRubberBand enum valueQwtPicker
VLineRubberBand enum valueQwtPicker
widgetEnterEvent(QEvent *)QwtPicker [protected, virtual]
widgetKeyPressEvent(QKeyEvent *)QwtPicker [protected, virtual]
widgetKeyReleaseEvent(QKeyEvent *)QwtPicker [protected, virtual]
widgetLeaveEvent(QEvent *)QwtPicker [protected, virtual]
widgetMouseDoubleClickEvent(QMouseEvent *)QwtPicker [protected, virtual]
widgetMouseMoveEvent(QMouseEvent *)QwtPicker [protected, virtual]
widgetMousePressEvent(QMouseEvent *)QwtPicker [protected, virtual]
widgetMouseReleaseEvent(QMouseEvent *)QwtPicker [protected, virtual]
widgetWheelEvent(QWheelEvent *)QwtPicker [protected, virtual]
xAxis() const QwtPlotPicker
yAxis() const QwtPlotPicker
~QwtEventPattern()QwtEventPattern [virtual]
~QwtPicker()QwtPicker [virtual]
~QwtPlotPicker()QwtPlotPicker [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_raster_item.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_raster_item.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_raster_item.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_raster_item.html 2011-04-15 10:49:24.000000000 +0000 @@ -0,0 +1,637 @@ + + + + +Qwt User's Guide: QwtPlotRasterItem Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPlotRasterItem Class Reference

+
+
+ +

A class, which displays raster data. +More...

+ +

#include <qwt_plot_rasteritem.h>

+
+Inheritance diagram for QwtPlotRasterItem:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + +

+Public Types

enum  CachePolicy {
+  NoCache, +
+  PaintCache +
+ }
enum  PaintAttribute { PaintInDeviceResolution = 1 + }
typedef QFlags< PaintAttributePaintAttributes

+Public Member Functions

 QwtPlotRasterItem (const QString &title=QString::null)
 QwtPlotRasterItem (const QwtText &title)
virtual ~QwtPlotRasterItem ()
void setPaintAttribute (PaintAttribute, bool on=true)
bool testPaintAttribute (PaintAttribute) const
void setAlpha (int alpha)
int alpha () const
void setCachePolicy (CachePolicy)
CachePolicy cachePolicy () const
void invalidateCache ()
virtual void draw (QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &rect) const
virtual QRectF pixelHint (const QRectF &) const
virtual QwtInterval interval (Qt::Axis) const
virtual QRectF boundingRect () const

+Protected Member Functions

virtual QImage renderImage (const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &area, const QSize &imageSize) const =0
virtual QwtScaleMap imageMap (Qt::Orientation, const QwtScaleMap &map, const QRectF &area, const QSize &imageSize, double pixelSize) const
+

Detailed Description

+

A class, which displays raster data.

+

Raster data is a grid of pixel values, that can be represented as a QImage. It is used for many types of information like spectrograms, cartograms, geographical maps ...

+

Often a plot has several types of raster data organized in layers. ( f.e a geographical map, with weather statistics ). Using setAlpha() raster items can be stacked easily.

+

QwtPlotRasterItem is only implemented for images of the following formats: QImage::Format_Indexed8, QImage::Format_ARGB32.

+
See also:
QwtPlotSpectrogram
+

Member Typedef Documentation

+ +
+ +
+ +

Paint attributes.

+ +
+
+

Member Enumeration Documentation

+ +
+ +
+
    +
  • NoCache
    + renderImage() is called, whenever the item has to be repainted
  • +
  • PaintCache
    + renderImage() is called, whenever the image cache is not valid, or the scales, or the size of the canvas has changed. This type of cache is only useful for improving the performance of hide/show operations. All other situations are already handled by the plot canvas cache.
  • +
+

The default policy is NoCache

+ +
+
+ +
+ +
+

Attributes to modify the drawing algorithm.

+
See also:
setPaintAttribute(), testPaintAttribute()
+
Enumerator:
+ +
PaintInDeviceResolution  +

When the image is rendered according to the data pixels ( QwtRasterData::pixelHint() ) it can be expanded to paint device resolution before it is passed to QPainter. The expansion algorithm rounds the pixel borders in the same way as the axis ticks, what is usually better than the scaling algorithm implemented in Qt. Disabling this flag might make sense, to reduce the size of a document/file. If this is possible for a document format depends on the implementation of the specific QPaintEngine.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtPlotRasterItem::QwtPlotRasterItem (const QString & title = QString::null) [explicit]
+
+
+ +

Constructor.

+ +
+
+ +
+
+ + + + + + + + +
QwtPlotRasterItem::QwtPlotRasterItem (const QwtTexttitle) [explicit]
+
+
+ +

Constructor.

+ +
+
+ +
+
+ + + + + + + +
QwtPlotRasterItem::~QwtPlotRasterItem () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
int QwtPlotRasterItem::alpha () const
+
+
+
Returns:
Alpha value of the raster item
+
See also:
setAlpha()
+ +
+
+ +
+
+ + + + + + + +
QRectF QwtPlotRasterItem::boundingRect () const [virtual]
+
+
+
Returns:
Bounding rect of the data
+
See also:
QwtPlotRasterItem::interval()
+ +

Reimplemented from QwtPlotItem.

+ +
+
+ +
+
+ + + + + + + +
QwtPlotRasterItem::CachePolicy QwtPlotRasterItem::cachePolicy () const
+
+
+
Returns:
Cache policy
+
See also:
CachePolicy, setCachePolicy()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotRasterItem::draw (QPainter * painter,
const QwtScaleMapxMap,
const QwtScaleMapyMap,
const QRectF & canvasRect 
) const [virtual]
+
+
+ +

Draw the raster data.

+
Parameters:
+ + + + + +
painterPainter
xMapX-Scale Map
yMapY-Scale Map
canvasRectContents rect of the plot canvas
+
+
+ +

Implements QwtPlotItem.

+ +

Reimplemented in QwtPlotSpectrogram.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
QwtScaleMap QwtPlotRasterItem::imageMap (Qt::Orientation orientation,
const QwtScaleMapmap,
const QRectF & area,
const QSize & imageSize,
double pixelSize 
) const [protected, virtual]
+
+
+ +

Calculate a scale map for painting to an image.

+
Parameters:
+ + + + + + +
orientationOrientation, Qt::Horizontal means a X axis
mapScale map for rendering the plot item
areaArea to be painted on the image
imageSizeImage size
pixelSizeWidth/Height of a data pixel
+
+
+ +
+
+ +
+
+ + + + + + + + +
QwtInterval QwtPlotRasterItem::interval (Qt::Axis axis) const [virtual]
+
+
+
Returns:
Bounding interval for an axis
+

This method is intended to be reimplemented by derived classes. The default implementation returns an invalid interval.

+
Parameters:
+ + +
axisX, Y, or Z axis
+
+
+ +

Reimplemented in QwtPlotSpectrogram.

+ +
+
+ +
+
+ + + + + + + +
void QwtPlotRasterItem::invalidateCache ()
+
+
+

Invalidate the paint cache

+
See also:
setCachePolicy()
+ +
+
+ +
+
+ + + + + + + + +
QRectF QwtPlotRasterItem::pixelHint (const QRectF & area) const [virtual]
+
+
+ +

Pixel hint.

+

The geometry of a pixel is used to calculated the resolution and alignment of the rendered image.

+

Width and height of the hint need to be the horizontal and vertical distances between 2 neighboured points. The center of the hint has to be the position of any point ( it doesn't matter which one ).

+

Limiting the resolution of the image might significantly improve the performance and heavily reduce the amount of memory when rendering a QImage from the raster data.

+

The default implementation returns an empty rectangle (QRectF()), meaning, that the image will be rendered in target device ( f.e screen ) resolution.

+
Parameters:
+ + +
areaIn most implementations the resolution of the data doesn't depend on the requested area.
+
+
+
Returns:
Bounding rectangle of a pixel
+
See also:
render(), renderImage()
+ +

Reimplemented in QwtPlotSpectrogram.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
virtual QImage QwtPlotRasterItem::renderImage (const QwtScaleMapxMap,
const QwtScaleMapyMap,
const QRectF & area,
const QSize & imageSize 
) const [protected, pure virtual]
+
+
+ +

Render an image.

+

An implementation of render() might iterate over all pixels of imageRect. Each pixel has to be translated into the corresponding position in scale coordinates using the maps. This position can be used to look up a value in a implementation specific way and to map it into a color.

+
Parameters:
+ + + + + +
xMapX-Scale Map
yMapY-Scale Map
areaRequested area for the image in scale coordinates
imageSizeRequested size of the image
+
+
+ +

Implemented in QwtPlotSpectrogram.

+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotRasterItem::setAlpha (int alpha)
+
+
+ +

Set an alpha value for the raster data.

+

Often a plot has several types of raster data organized in layers. ( f.e a geographical map, with weather statistics ). Using setAlpha() raster items can be stacked easily.

+

The alpha value is a value [0, 255] to control the transparency of the image. 0 represents a fully transparent color, while 255 represents a fully opaque color.

+
Parameters:
+ + +
alphaAlpha value
+
+
+
    +
  • alpha >= 0
    + All alpha values of the pixels returned by renderImage() will be set to alpha, beside those with an alpha value of 0 (invalid pixels).
  • +
  • alpha < 0 The alpha values returned by renderImage() are not changed.
  • +
+

The default alpha value is -1.

+
See also:
alpha()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotRasterItem::setCachePolicy (QwtPlotRasterItem::CachePolicy policy)
+
+
+

Change the cache policy

+

The default policy is NoCache

+
Parameters:
+ + +
policyCache policy
+
+
+
See also:
CachePolicy, cachePolicy()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotRasterItem::setPaintAttribute (PaintAttribute attribute,
bool on = true 
)
+
+
+

Specify an attribute how to draw the raster item

+
Parameters:
+ + + +
attributePaint attribute
onOn/Off /sa PaintAttribute, testPaintAttribute()
+
+
+ +
+
+ +
+
+ + + + + + + + +
bool QwtPlotRasterItem::testPaintAttribute (PaintAttribute attribute) const
+
+
+ +

Return the current paint attributes.

+
See also:
PaintAttribute, setPaintAttribute()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_raster_item__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_raster_item__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_raster_item__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_raster_item__inherit__graph.map 2011-04-15 10:49:13.000000000 +0000 @@ -0,0 +1,5 @@ + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_raster_item__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_raster_item__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_raster_item__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_raster_item__inherit__graph.md5 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1 @@ +519e7229715d52f13dd3afe44da75d04 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_raster_item__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_raster_item__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_raster_item-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_raster_item-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_raster_item-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_raster_item-members.html 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,125 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPlotRasterItem Member List

+
+
+This is the complete list of members for QwtPlotRasterItem, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
alpha() const QwtPlotRasterItem
attach(QwtPlot *plot)QwtPlotItem
AutoScale enum valueQwtPlotItem
boundingRect() const QwtPlotRasterItem [virtual]
CachePolicy enum nameQwtPlotRasterItem
cachePolicy() const QwtPlotRasterItem
detach()QwtPlotItem
draw(QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &rect) const QwtPlotRasterItem [virtual]
drawLegendIdentifier(QPainter *, const QRectF &) const QwtLegendItemManager [inline, virtual]
hide()QwtPlotItem
imageMap(Qt::Orientation, const QwtScaleMap &map, const QRectF &area, const QSize &imageSize, double pixelSize) const QwtPlotRasterItem [protected, virtual]
interval(Qt::Axis) const QwtPlotRasterItem [virtual]
invalidateCache()QwtPlotRasterItem
isVisible() const QwtPlotItem
ItemAttribute enum nameQwtPlotItem
ItemAttributes typedefQwtPlotItem
itemChanged()QwtPlotItem [virtual]
Legend enum valueQwtPlotItem
legendItem() const QwtPlotItem [virtual]
NoCache enum value (defined in QwtPlotRasterItem)QwtPlotRasterItem
PaintAttribute enum nameQwtPlotRasterItem
PaintAttributes typedefQwtPlotRasterItem
PaintCache enum value (defined in QwtPlotRasterItem)QwtPlotRasterItem
PaintInDeviceResolution enum valueQwtPlotRasterItem
paintRect(const QwtScaleMap &, const QwtScaleMap &) const QwtPlotItem
pixelHint(const QRectF &) const QwtPlotRasterItem [virtual]
plot() const QwtPlotItem
QwtLegendItemManager()QwtLegendItemManager [inline]
QwtPlotItem(const QwtText &title=QwtText())QwtPlotItem [explicit]
QwtPlotRasterItem(const QString &title=QString::null)QwtPlotRasterItem [explicit]
QwtPlotRasterItem(const QwtText &title)QwtPlotRasterItem [explicit]
RenderAntialiased enum valueQwtPlotItem
RenderHint enum nameQwtPlotItem
RenderHints typedefQwtPlotItem
renderImage(const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &area, const QSize &imageSize) const =0QwtPlotRasterItem [protected, pure virtual]
rtti() const QwtPlotItem [virtual]
Rtti_PlotCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotGrid enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotHistogram enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotIntervalCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotItem enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotMarker enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotScale enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSpectroCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSpectrogram enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSVG enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotUserItem enum value (defined in QwtPlotItem)QwtPlotItem
RttiValues enum nameQwtPlotItem
scaleRect(const QwtScaleMap &, const QwtScaleMap &) const QwtPlotItem
setAlpha(int alpha)QwtPlotRasterItem
setAxes(int xAxis, int yAxis)QwtPlotItem
setCachePolicy(CachePolicy)QwtPlotRasterItem
setItemAttribute(ItemAttribute, bool on=true)QwtPlotItem
setPaintAttribute(PaintAttribute, bool on=true)QwtPlotRasterItem
setRenderHint(RenderHint, bool on=true)QwtPlotItem
setTitle(const QString &title)QwtPlotItem
setTitle(const QwtText &title)QwtPlotItem
setVisible(bool)QwtPlotItem [virtual]
setXAxis(int axis)QwtPlotItem
setYAxis(int axis)QwtPlotItem
setZ(double z)QwtPlotItem
show()QwtPlotItem
testItemAttribute(ItemAttribute) const QwtPlotItem
testPaintAttribute(PaintAttribute) const QwtPlotRasterItem
testRenderHint(RenderHint) const QwtPlotItem
title() const QwtPlotItem
updateLegend(QwtLegend *) const QwtPlotItem [virtual]
updateScaleDiv(const QwtScaleDiv &, const QwtScaleDiv &)QwtPlotItem [virtual]
xAxis() const QwtPlotItem
yAxis() const QwtPlotItem
z() const QwtPlotItem
~QwtLegendItemManager()QwtLegendItemManager [inline, virtual]
~QwtPlotItem()QwtPlotItem [virtual]
~QwtPlotRasterItem()QwtPlotRasterItem [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_renderer.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_renderer.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_renderer.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_renderer.html 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,995 @@ + + + + +Qwt User's Guide: QwtPlotRenderer Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPlotRenderer Class Reference

+
+
+ +

Renderer for exporting a plot to a document, a printer or anything else, that is supported by QPainter/QPaintDevice. +More...

+ +

#include <qwt_plot_renderer.h>

+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Types

enum  DiscardFlag {
+  DiscardNone = 0x00, +
+  DiscardBackground = 0x01, +
+  DiscardTitle = 0x02, +
+  DiscardLegend = 0x04, +
+  DiscardCanvasBackground = 0x08 +
+ }
enum  LayoutFlag {
+  DefaultLayout = 0x00, +
+  KeepFrames = 0x01, +
+  FrameWithScales = 0x02 +
+ }
typedef QFlags< DiscardFlagDiscardFlags
typedef QFlags< LayoutFlagLayoutFlags

+Public Member Functions

 QwtPlotRenderer (QObject *=NULL)
virtual ~QwtPlotRenderer ()
void setDiscardFlag (DiscardFlag flag, bool on=true)
bool testDiscardFlag (DiscardFlag flag) const
void setDiscardFlags (DiscardFlags flags)
DiscardFlags discardFlags () const
void setLayoutFlag (LayoutFlag flag, bool on=true)
bool testLayoutFlag (LayoutFlag flag) const
void setLayoutFlags (LayoutFlags flags)
LayoutFlags layoutFlags () const
void renderDocument (QwtPlot *, const QString &format, const QSizeF &sizeMM, int resolution=85)
void renderDocument (QwtPlot *, const QString &title, const QString &format, const QSizeF &sizeMM, int resolution=85)
void renderTo (QwtPlot *, QPrinter &) const
void renderTo (QwtPlot *, QPaintDevice &p) const
virtual void render (QwtPlot *, QPainter *, const QRectF &rect) const
virtual void renderLegendItem (const QwtPlot *, QPainter *, const QWidget *, const QRectF &) const
virtual void renderTitle (const QwtPlot *, QPainter *, const QRectF &) const
virtual void renderScale (const QwtPlot *, QPainter *, int axisId, int startDist, int endDist, int baseDist, const QRectF &) const
virtual void renderCanvas (const QwtPlot *, QPainter *, const QRectF &canvasRect, const QwtScaleMap *maps) const
virtual void renderLegend (const QwtPlot *, QPainter *, const QRectF &) const

+Protected Member Functions

void buildCanvasMaps (const QwtPlot *, const QRectF &, QwtScaleMap maps[]) const
+

Detailed Description

+

Renderer for exporting a plot to a document, a printer or anything else, that is supported by QPainter/QPaintDevice.

+

Member Typedef Documentation

+ +
+
+ + + + +
typedef QFlags<DiscardFlag> QwtPlotRenderer::DiscardFlags
+
+
+ +

Disard flags.

+ +
+
+ +
+
+ + + + +
typedef QFlags<LayoutFlag> QwtPlotRenderer::LayoutFlags
+
+
+ +

Layout flags.

+ +
+
+

Member Enumeration Documentation

+ +
+ +
+ +

Disard flags.

+
Enumerator:
+ + + + + +
DiscardNone  +

Render all components of the plot.

+
DiscardBackground  +

Don't render the background of the plot.

+
DiscardTitle  +

Don't render the title of the plot.

+
DiscardLegend  +

Don't render the legend of the plot.

+
DiscardCanvasBackground  +

Don't render the background of the canvas.

+
+
+
+ +
+
+ +
+
+ + + + +
enum QwtPlotRenderer::LayoutFlag
+
+
+ +

Layout flags.

+
See also:
setLayoutFlag(), testLayoutFlag()
+
Enumerator:
+ + + +
DefaultLayout  +

Use the default layout without margins and frames.

+
KeepFrames  +

Render all frames of the plot.

+
FrameWithScales  +

Instead of the scales a box is painted around the plot canvas, where the scale ticks are aligned to.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtPlotRenderer::QwtPlotRenderer (QObject * parent = NULL) [explicit]
+
+
+

Constructor

+
Parameters:
+ + +
parentParent object
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtPlotRenderer::~QwtPlotRenderer () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotRenderer::buildCanvasMaps (const QwtPlotplot,
const QRectF & canvasRect,
QwtScaleMap maps[] 
) const [protected]
+
+
+

Calculated the scale maps for rendering the canvas

+
Parameters:
+ + + + +
plotPlot widget
canvasRectTarget rectangle
mapsScale maps to be calculated
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtPlotRenderer::DiscardFlags QwtPlotRenderer::discardFlags () const
+
+
+
Returns:
Flags, indicating what to discard from rendering
+
See also:
DiscardFlag, setDiscardFlags(), setDiscardFlag(), testDiscardFlag()
+ +
+
+ +
+
+ + + + + + + +
QwtPlotRenderer::LayoutFlags QwtPlotRenderer::layoutFlags () const
+
+
+
Returns:
Layout flags
+
See also:
LayoutFlag, setLayoutFlags(), setLayoutFlag(), testLayoutFlag()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotRenderer::render (QwtPlotplot,
QPainter * painter,
const QRectF & plotRect 
) const [virtual]
+
+
+

Paint the contents of a QwtPlot instance into a given rectangle.

+
Parameters:
+ + + + +
plotPlot to be rendered
painterPainter
plotRectBounding rectangle
+
+
+
See also:
renderDocument(), renderTo(), QwtPainter::setRoundingAlignment()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotRenderer::renderCanvas (const QwtPlotplot,
QPainter * painter,
const QRectF & canvasRect,
const QwtScaleMapmap 
) const [virtual]
+
+
+

Render the canvas into a given rectangle.

+
Parameters:
+ + + + + +
plotPlot widget
painterPainter
mapMaps mapping between plot and paint device coordinates
canvasRectCanvas rectangle
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotRenderer::renderDocument (QwtPlotplot,
const QString & fileName,
const QSizeF & sizeMM,
int resolution = 85 
)
+
+
+

Render a plot to a file

+

The format of the document will be autodetected from the suffix of the filename.

+
Parameters:
+ + + + + +
plotPlot widget
fileNamePath of the file, where the document will be stored
sizeMMSize for the document in millimeters.
resolutionResolution in dots per Inch (dpi)
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotRenderer::renderDocument (QwtPlotplot,
const QString & fileName,
const QString & format,
const QSizeF & sizeMM,
int resolution = 85 
)
+
+
+

Render a plot to a file

+

Supported formats are:

+
    +
  • pdf
    + Portable Document Format PDF
  • +
  • ps
    + Postcript
  • +
  • svg
    + Scalable Vector Graphics SVG
  • +
  • all image formats supported by Qt
    + see QImageWriter::supportedImageFormats()
  • +
+

Scalable vector graphic formats like PDF or SVG are superior to raster graphics formats.

+
Parameters:
+ + + + + + +
plotPlot widget
fileNamePath of the file, where the document will be stored
formatFormat for the document
sizeMMSize for the document in millimeters.
resolutionResolution in dots per Inch (dpi)
+
+
+
See also:
renderTo(), render(), QwtPainter::setRoundingAlignment()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotRenderer::renderLegend (const QwtPlotplot,
QPainter * painter,
const QRectF & rect 
) const [virtual]
+
+
+

Render the legend into a given rectangle.

+
Parameters:
+ + + + +
plotPlot widget
painterPainter
rectBounding rectangle
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotRenderer::renderLegendItem (const QwtPlotplot,
QPainter * painter,
const QWidget * widget,
const QRectF & rect 
) const [virtual]
+
+
+

Render the legend item into a given rectangle.

+
Parameters:
+ + + + + +
plotPlot widget
painterPainter
widgetWidget representing a legend item
rectBounding rectangle
+
+
+
Note:
When widget is not derived from QwtLegendItem renderLegendItem does nothing and needs to be overloaded
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotRenderer::renderScale (const QwtPlotplot,
QPainter * painter,
int axisId,
int startDist,
int endDist,
int baseDist,
const QRectF & rect 
) const [virtual]
+
+
+ +

Paint a scale into a given rectangle. Paint the scale into a given rectangle.

+
Parameters:
+ + + + + + + + +
plotPlot widget
painterPainter
axisIdAxis
startDistStart border distance
endDistEnd border distance
baseDistBase distance
rectBounding rectangle
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotRenderer::renderTitle (const QwtPlotplot,
QPainter * painter,
const QRectF & rect 
) const [virtual]
+
+
+

Render the title into a given rectangle.

+
Parameters:
+ + + + +
plotPlot widget
painterPainter
rectBounding rectangle
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotRenderer::renderTo (QwtPlotplot,
QPrinter & printer 
) const
+
+
+ +

Render the plot to a QPrinter.

+

This function renders the contents of a QwtPlot instance to QPaintDevice object. The size is derived from the printer metrics.

+
Parameters:
+ + + +
plotPlot to be rendered
printerPrinter to paint on
+
+
+
See also:
renderDocument(), render(), QwtPainter::setRoundingAlignment()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotRenderer::renderTo (QwtPlotplot,
QPaintDevice & paintDevice 
) const
+
+
+ +

Render the plot to a QPaintDevice.

+

This function renders the contents of a QwtPlot instance to QPaintDevice object. The target rectangle is derived from its device metrics.

+
Parameters:
+ + + +
plotPlot to be rendered
paintDevicedevice to paint on, f.e a QImage
+
+
+
See also:
renderDocument(), render(), QwtPainter::setRoundingAlignment()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotRenderer::setDiscardFlag (DiscardFlag flag,
bool on = true 
)
+
+
+

Change a flag, indicating what to discard from rendering

+
Parameters:
+ + + +
flagFlag to change
onOn/Off
+
+
+
See also:
DiscardFlag, testDiscardFlag(), setDiscardFlags(), discardFlags()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotRenderer::setDiscardFlags (DiscardFlags flags)
+
+
+

Set the flags, indicating what to discard from rendering

+
Parameters:
+ + +
flagsFlags
+
+
+
See also:
DiscardFlag, setDiscardFlag(), testDiscardFlag(), discardFlags()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotRenderer::setLayoutFlag (LayoutFlag flag,
bool on = true 
)
+
+
+

Change a layout flag

+
Parameters:
+ + + +
flagFlag to change
onOn/Off
+
+
+
See also:
LayoutFlag, testLayoutFlag(), setLayoutFlags(), layoutFlags()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotRenderer::setLayoutFlags (LayoutFlags flags)
+
+
+

Set the layout flags

+
Parameters:
+ + +
flagsFlags
+
+
+
See also:
LayoutFlag, setLayoutFlag(), testLayoutFlag(), layoutFlags()
+ +
+
+ +
+
+ + + + + + + + +
bool QwtPlotRenderer::testDiscardFlag (DiscardFlag flag) const
+
+
+

Check if a flag is set.

+
Parameters:
+ + +
flagFlag to be tested
+
+
+
See also:
DiscardFlag, setDiscardFlag(), setDiscardFlags(), discardFlags()
+ +
+
+ +
+
+ + + + + + + + +
bool QwtPlotRenderer::testLayoutFlag (LayoutFlag flag) const
+
+
+

Check if a flag is set.

+
Parameters:
+ + +
flagFlag to be tested
+
+
+
See also:
LayoutFlag, setLayoutFlag(), setLayoutFlags(), layoutFlags()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_renderer-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_renderer-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_renderer-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_renderer-members.html 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,84 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPlotRenderer Member List

+
+
+This is the complete list of members for QwtPlotRenderer, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
buildCanvasMaps(const QwtPlot *, const QRectF &, QwtScaleMap maps[]) const QwtPlotRenderer [protected]
DefaultLayout enum valueQwtPlotRenderer
DiscardBackground enum valueQwtPlotRenderer
DiscardCanvasBackground enum valueQwtPlotRenderer
DiscardFlag enum nameQwtPlotRenderer
discardFlags() const QwtPlotRenderer
DiscardFlags typedefQwtPlotRenderer
DiscardLegend enum valueQwtPlotRenderer
DiscardNone enum valueQwtPlotRenderer
DiscardTitle enum valueQwtPlotRenderer
FrameWithScales enum valueQwtPlotRenderer
KeepFrames enum valueQwtPlotRenderer
LayoutFlag enum nameQwtPlotRenderer
LayoutFlags typedefQwtPlotRenderer
layoutFlags() const QwtPlotRenderer
QwtPlotRenderer(QObject *=NULL)QwtPlotRenderer [explicit]
render(QwtPlot *, QPainter *, const QRectF &rect) const QwtPlotRenderer [virtual]
renderCanvas(const QwtPlot *, QPainter *, const QRectF &canvasRect, const QwtScaleMap *maps) const QwtPlotRenderer [virtual]
renderDocument(QwtPlot *, const QString &format, const QSizeF &sizeMM, int resolution=85)QwtPlotRenderer
renderDocument(QwtPlot *, const QString &title, const QString &format, const QSizeF &sizeMM, int resolution=85)QwtPlotRenderer
renderLegend(const QwtPlot *, QPainter *, const QRectF &) const QwtPlotRenderer [virtual]
renderLegendItem(const QwtPlot *, QPainter *, const QWidget *, const QRectF &) const QwtPlotRenderer [virtual]
renderScale(const QwtPlot *, QPainter *, int axisId, int startDist, int endDist, int baseDist, const QRectF &) const QwtPlotRenderer [virtual]
renderTitle(const QwtPlot *, QPainter *, const QRectF &) const QwtPlotRenderer [virtual]
renderTo(QwtPlot *, QPrinter &) const QwtPlotRenderer
renderTo(QwtPlot *, QPaintDevice &p) const QwtPlotRenderer
setDiscardFlag(DiscardFlag flag, bool on=true)QwtPlotRenderer
setDiscardFlags(DiscardFlags flags)QwtPlotRenderer
setLayoutFlag(LayoutFlag flag, bool on=true)QwtPlotRenderer
setLayoutFlags(LayoutFlags flags)QwtPlotRenderer
testDiscardFlag(DiscardFlag flag) const QwtPlotRenderer
testLayoutFlag(LayoutFlag flag) const QwtPlotRenderer
~QwtPlotRenderer()QwtPlotRenderer [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_rescaler.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_rescaler.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_rescaler.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_rescaler.html 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,978 @@ + + + + +Qwt User's Guide: QwtPlotRescaler Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPlotRescaler Class Reference

+
+
+ +

QwtPlotRescaler takes care of fixed aspect ratios for plot scales. +More...

+ +

#include <qwt_plot_rescaler.h>

+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Types

enum  RescalePolicy {
+  Fixed, +
+  Expanding, +
+  Fitting +
+ }
enum  ExpandingDirection {
+  ExpandUp, +
+  ExpandDown, +
+  ExpandBoth +
+ }

+Public Member Functions

 QwtPlotRescaler (QwtPlotCanvas *, int referenceAxis=QwtPlot::xBottom, RescalePolicy=Expanding)
virtual ~QwtPlotRescaler ()
void setEnabled (bool)
bool isEnabled () const
void setRescalePolicy (RescalePolicy)
RescalePolicy rescalePolicy () const
void setExpandingDirection (ExpandingDirection)
void setExpandingDirection (int axis, ExpandingDirection)
ExpandingDirection expandingDirection (int axis) const
void setReferenceAxis (int axis)
int referenceAxis () const
void setAspectRatio (double ratio)
void setAspectRatio (int axis, double ratio)
double aspectRatio (int axis) const
void setIntervalHint (int axis, const QwtInterval &)
QwtInterval intervalHint (int axis) const
QwtPlotCanvascanvas ()
const QwtPlotCanvascanvas () const
QwtPlotplot ()
const QwtPlotplot () const
virtual bool eventFilter (QObject *, QEvent *)
void rescale () const

+Protected Member Functions

virtual void canvasResizeEvent (QResizeEvent *)
virtual void rescale (const QSize &oldSize, const QSize &newSize) const
virtual QwtInterval expandScale (int axis, const QSize &oldSize, const QSize &newSize) const
virtual QwtInterval syncScale (int axis, const QwtInterval &reference, const QSize &size) const
virtual void updateScales (QwtInterval intervals[QwtPlot::axisCnt]) const
Qt::Orientation orientation (int axis) const
QwtInterval interval (int axis) const
QwtInterval expandInterval (const QwtInterval &, double width, ExpandingDirection) const
+

Detailed Description

+

QwtPlotRescaler takes care of fixed aspect ratios for plot scales.

+

QwtPlotRescaler autoadjusts the axes of a QwtPlot according to fixed aspect ratios.

+

Member Enumeration Documentation

+ +
+ +
+

When rescalePolicy() is set to Expanding its direction depends on ExpandingDirection

+
Enumerator:
+ + + +
ExpandUp  +

The upper limit of the scale is adjusted.

+
ExpandDown  +

The lower limit of the scale is adjusted.

+
ExpandBoth  +

Both limits of the scale are adjusted.

+
+
+
+ +
+
+ +
+ +
+

The rescale policy defines how to rescale the reference axis and their depending axes.

+
See also:
ExpandingDirection, setIntervalHint()
+
Enumerator:
+ + + +
Fixed  +

The interval of the reference axis remains unchanged, when the geometry of the canvas changes. All other axes will be adjusted according to their aspect ratio.

+
Expanding  +

The interval of the reference axis will be shrinked/expanded, when the geometry of the canvas changes. All other axes will be adjusted according to their aspect ratio.

+

The interval, that is represented by one pixel is fixed.

+
Fitting  +

The intervals of the axes are calculated, so that all axes include their interval hint.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
QwtPlotRescaler::QwtPlotRescaler (QwtPlotCanvascanvas,
int referenceAxis = QwtPlot::xBottom,
RescalePolicy policy = Expanding 
) [explicit]
+
+
+

Constructor

+
Parameters:
+ + + + +
canvasCanvas
referenceAxisReference axis, see RescalePolicy
policyRescale policy
+
+
+
See also:
setRescalePolicy(), setReferenceAxis()
+ +
+
+ +
+
+ + + + + + + +
QwtPlotRescaler::~QwtPlotRescaler () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + +
double QwtPlotRescaler::aspectRatio (int axis) const
+
+
+

Return aspect ratio between an axis and the reference axis.

+
Parameters:
+ + +
axisAxis index ( see QwtPlot::AxisId )
+
+
+
See also:
setAspectRatio()
+ +
+
+ +
+
+ + + + + + + +
const QwtPlotCanvas * QwtPlotRescaler::canvas () const
+
+
+
Returns:
plot canvas
+ +
+
+ +
+
+ + + + + + + +
QwtPlotCanvas * QwtPlotRescaler::canvas ()
+
+
+
Returns:
plot canvas
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotRescaler::canvasResizeEvent (QResizeEvent * event) [protected, virtual]
+
+
+

Event handler for resize events of the plot canvas

+
Parameters:
+ + +
eventResize event
+
+
+
See also:
rescale()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
bool QwtPlotRescaler::eventFilter (QObject * o,
QEvent * e 
) [virtual]
+
+
+ +

Event filter for the plot canvas.

+ +
+
+ +
+
+ + + + + + + + +
QwtPlotRescaler::ExpandingDirection QwtPlotRescaler::expandingDirection (int axis) const
+
+
+

Return direction in which an axis should be expanded

+
Parameters:
+ + +
axisAxis index ( see QwtPlot::AxisId )
+
+
+
See also:
setExpandingDirection()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
QwtInterval QwtPlotRescaler::expandInterval (const QwtIntervalinterval,
double width,
ExpandingDirection direction 
) const [protected]
+
+
+

Expand the interval

+
Parameters:
+ + + + +
intervalInterval to be expanded
widthDistance to be added to the interval
directionDirection of the expand operation
+
+
+
Returns:
Expanded interval
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
QwtInterval QwtPlotRescaler::expandScale (int axis,
const QSize & oldSize,
const QSize & newSize 
) const [protected, virtual]
+
+
+

Calculate the new scale interval of a plot axis

+
Parameters:
+ + + + +
axisAxis index ( see QwtPlot::AxisId )
oldSizePrevious size of the canvas
newSizeNew size of the canvas
+
+
+
Returns:
Calculated new interval for the axis
+ +
+
+ +
+
+ + + + + + + + +
QwtInterval QwtPlotRescaler::interval (int axis) const [protected]
+
+
+

Return interval of an axis

+
Parameters:
+ + +
axisAxis index ( see QwtPlot::AxisId )
+
+
+ +
+
+ +
+
+ + + + + + + + +
QwtInterval QwtPlotRescaler::intervalHint (int axis) const
+
+
+
Parameters:
+ + +
axisAxis, see QwtPlot::Axis
+
+
+
Returns:
Interval hint
+
See also:
setIntervalHint(), RescalePolicy
+ +
+
+ +
+
+ + + + + + + +
bool QwtPlotRescaler::isEnabled () const
+
+
+
Returns:
true when enabled, false otherwise
+
See also:
setEnabled, eventFilter()
+ +
+
+ +
+
+ + + + + + + + +
Qt::Orientation QwtPlotRescaler::orientation (int axis) const [protected]
+
+
+

Return orientation of an axis

+
Parameters:
+ + +
axisAxis index ( see QwtPlot::AxisId )
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtPlot * QwtPlotRescaler::plot ()
+
+
+
Returns:
plot widget
+ +
+
+ +
+
+ + + + + + + +
const QwtPlot * QwtPlotRescaler::plot () const
+
+
+
Returns:
plot widget
+ +
+
+ +
+
+ + + + + + + +
int QwtPlotRescaler::referenceAxis () const
+
+
+
Returns:
Reference axis ( see RescalePolicy )
+
See also:
setReferenceAxis()
+ +
+
+ +
+
+ + + + + + + +
void QwtPlotRescaler::rescale () const
+
+
+ +

Adjust the plot axes scales.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotRescaler::rescale (const QSize & oldSize,
const QSize & newSize 
) const [protected, virtual]
+
+
+

Adjust the plot axes scales

+
Parameters:
+ + + +
oldSizePrevious size of the canvas
newSizeNew size of the canvas
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtPlotRescaler::RescalePolicy QwtPlotRescaler::rescalePolicy () const
+
+
+
Returns:
Rescale policy
+
See also:
setRescalePolicy()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotRescaler::setAspectRatio (int axis,
double ratio 
)
+
+
+

Set the aspect ratio between the scale of the reference axis and another scale. The default ratio is 1.0

+
Parameters:
+ + + +
axisAxis index ( see QwtPlot::AxisId )
ratioAspect ratio
+
+
+
See also:
aspectRatio()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotRescaler::setAspectRatio (double ratio)
+
+
+

Set the aspect ratio between the scale of the reference axis and the other scales. The default ratio is 1.0

+
Parameters:
+ + +
ratioAspect ratio
+
+
+
See also:
aspectRatio()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotRescaler::setEnabled (bool on)
+
+
+ +

En/disable the rescaler.

+

When enabled is true an event filter is installed for the canvas, otherwise the event filter is removed.

+
Parameters:
+ + +
ontrue or false
+
+
+
See also:
isEnabled(), eventFilter()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotRescaler::setExpandingDirection (int axis,
ExpandingDirection direction 
)
+
+
+

Set the direction in which an axis should be expanded

+
Parameters:
+ + + +
axisAxis index ( see QwtPlot::AxisId )
directionDirection
+
+
+
See also:
expandingDirection()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotRescaler::setExpandingDirection (ExpandingDirection direction)
+
+
+

Set the direction in which all axis should be expanded

+
Parameters:
+ + +
directionDirection
+
+
+
See also:
expandingDirection()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotRescaler::setIntervalHint (int axis,
const QwtIntervalinterval 
)
+
+
+

Set an interval hint for an axis

+

In Fitting mode, the hint is used as minimal interval taht always needs to be displayed.

+
Parameters:
+ + + +
axisAxis, see QwtPlot::Axis
intervalAxis
+
+
+
See also:
intervalHint(), RescalePolicy
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotRescaler::setReferenceAxis (int axis)
+
+
+

Set the reference axis ( see RescalePolicy )

+
Parameters:
+ + +
axisAxis index ( QwtPlot::Axis )
+
+
+
See also:
referenceAxis()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotRescaler::setRescalePolicy (RescalePolicy policy)
+
+
+

Change the rescale policy

+
Parameters:
+ + +
policyRescale policy
+
+
+
See also:
rescalePolicy()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
QwtInterval QwtPlotRescaler::syncScale (int axis,
const QwtIntervalreference,
const QSize & size 
) const [protected, virtual]
+
+
+

Synchronize an axis scale according to the scale of the reference axis

+
Parameters:
+ + + + +
axisAxis index ( see QwtPlot::AxisId )
referenceInterval of the reference axis
sizeSize of the canvas
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotRescaler::updateScales (QwtInterval intervals[QwtPlot::axisCnt]) const [protected, virtual]
+
+
+

Update the axes scales

+
Parameters:
+ + +
intervalsScale intervals
+
+
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_rescaler-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_rescaler-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_rescaler-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_rescaler-members.html 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,89 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPlotRescaler Member List

+
+
+This is the complete list of members for QwtPlotRescaler, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
aspectRatio(int axis) const QwtPlotRescaler
canvas()QwtPlotRescaler
canvas() const QwtPlotRescaler
canvasResizeEvent(QResizeEvent *)QwtPlotRescaler [protected, virtual]
eventFilter(QObject *, QEvent *)QwtPlotRescaler [virtual]
ExpandBoth enum valueQwtPlotRescaler
ExpandDown enum valueQwtPlotRescaler
Expanding enum valueQwtPlotRescaler
expandingDirection(int axis) const QwtPlotRescaler
ExpandingDirection enum nameQwtPlotRescaler
expandInterval(const QwtInterval &, double width, ExpandingDirection) const QwtPlotRescaler [protected]
expandScale(int axis, const QSize &oldSize, const QSize &newSize) const QwtPlotRescaler [protected, virtual]
ExpandUp enum valueQwtPlotRescaler
Fitting enum valueQwtPlotRescaler
Fixed enum valueQwtPlotRescaler
interval(int axis) const QwtPlotRescaler [protected]
intervalHint(int axis) const QwtPlotRescaler
isEnabled() const QwtPlotRescaler
orientation(int axis) const QwtPlotRescaler [protected]
plot()QwtPlotRescaler
plot() const QwtPlotRescaler
QwtPlotRescaler(QwtPlotCanvas *, int referenceAxis=QwtPlot::xBottom, RescalePolicy=Expanding)QwtPlotRescaler [explicit]
referenceAxis() const QwtPlotRescaler
rescale() const QwtPlotRescaler
rescale(const QSize &oldSize, const QSize &newSize) const QwtPlotRescaler [protected, virtual]
RescalePolicy enum nameQwtPlotRescaler
rescalePolicy() const QwtPlotRescaler
setAspectRatio(double ratio)QwtPlotRescaler
setAspectRatio(int axis, double ratio)QwtPlotRescaler
setEnabled(bool)QwtPlotRescaler
setExpandingDirection(ExpandingDirection)QwtPlotRescaler
setExpandingDirection(int axis, ExpandingDirection)QwtPlotRescaler
setIntervalHint(int axis, const QwtInterval &)QwtPlotRescaler
setReferenceAxis(int axis)QwtPlotRescaler
setRescalePolicy(RescalePolicy)QwtPlotRescaler
syncScale(int axis, const QwtInterval &reference, const QSize &size) const QwtPlotRescaler [protected, virtual]
updateScales(QwtInterval intervals[QwtPlot::axisCnt]) const QwtPlotRescaler [protected, virtual]
~QwtPlotRescaler()QwtPlotRescaler [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_scale_item.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_scale_item.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_scale_item.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_scale_item.html 2011-04-15 10:49:24.000000000 +0000 @@ -0,0 +1,605 @@ + + + + +Qwt User's Guide: QwtPlotScaleItem Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPlotScaleItem Class Reference

+
+
+ +

A class which draws a scale inside the plot canvas. +More...

+ +

#include <qwt_plot_scaleitem.h>

+
+Inheritance diagram for QwtPlotScaleItem:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 QwtPlotScaleItem (QwtScaleDraw::Alignment=QwtScaleDraw::BottomScale, const double pos=0.0)
virtual ~QwtPlotScaleItem ()
virtual int rtti () const
void setScaleDiv (const QwtScaleDiv &)
const QwtScaleDivscaleDiv () const
void setScaleDivFromAxis (bool on)
bool isScaleDivFromAxis () const
void setPalette (const QPalette &)
QPalette palette () const
void setFont (const QFont &)
QFont font () const
void setScaleDraw (QwtScaleDraw *)
const QwtScaleDrawscaleDraw () const
QwtScaleDrawscaleDraw ()
void setPosition (double pos)
double position () const
void setBorderDistance (int numPixels)
int borderDistance () const
void setAlignment (QwtScaleDraw::Alignment)
virtual void draw (QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &rect) const
virtual void updateScaleDiv (const QwtScaleDiv &, const QwtScaleDiv &)
+

Detailed Description

+

A class which draws a scale inside the plot canvas.

+

QwtPlotScaleItem can be used to draw an axis inside the plot canvas. It might by synchronized to one of the axis of the plot, but can also display its own ticks and labels.

+

It is allowed to synchronize the scale item with a disabled axis. In plots with vertical and horizontal scale items, it might be necessary to remove ticks at the intersections, by overloading updateScaleDiv().

+

The scale might be at a specific position (f.e 0.0) or it might be aligned to a canvas border.

+
Example
The following example shows how to replace the left axis, by a scale item at the x position 0.0.
+QwtPlotScaleItem *scaleItem =
+    new QwtPlotScaleItem(QwtScaleDraw::RightScale, 0.0);
+scaleItem->setFont(plot->axisWidget(QwtPlot::yLeft)->font());
+scaleItem->attach(plot);
+
+plot->enableAxis(QwtPlot::yLeft, false);
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
QwtPlotScaleItem::QwtPlotScaleItem (QwtScaleDraw::Alignment alignment = QwtScaleDraw::BottomScale,
const double pos = 0.0 
) [explicit]
+
+
+ +

Constructor for scale item at the position pos.

+
Parameters:
+ + + +
alignmentIn case of QwtScaleDraw::BottomScale or QwtScaleDraw::TopScale the scale item is corresponding to the xAxis(), otherwise it corresponds to the yAxis().
posx or y position, depending on the corresponding axis.
+
+
+
See also:
setPosition(), setAlignment()
+ +
+
+ +
+
+ + + + + + + +
QwtPlotScaleItem::~QwtPlotScaleItem () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
int QwtPlotScaleItem::borderDistance () const
+
+
+
Returns:
Distance from a canvas border
+
See also:
setBorderDistance(), setPosition()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotScaleItem::draw (QPainter * p,
const QwtScaleMapxMap,
const QwtScaleMapyMap,
const QRectF & rect 
) const [virtual]
+
+
+ +

Draw the scale.

+ +

Implements QwtPlotItem.

+ +
+
+ +
+
+ + + + + + + +
QFont QwtPlotScaleItem::font () const
+
+
+
Returns:
tick label font
+
See also:
setFont()
+ +
+
+ +
+
+ + + + + + + +
bool QwtPlotScaleItem::isScaleDivFromAxis () const
+
+
+
Returns:
True, if the synchronization of the scale division with the corresponding axis is enabled.
+
See also:
setScaleDiv(), setScaleDivFromAxis()
+ +
+
+ +
+
+ + + + + + + +
QPalette QwtPlotScaleItem::palette () const
+
+
+
Returns:
palette
+
See also:
setPalette()
+ +
+
+ +
+
+ + + + + + + +
double QwtPlotScaleItem::position () const
+
+
+
Returns:
Position of the scale
+
See also:
setPosition(), setAlignment()
+ +
+
+ +
+
+ + + + + + + +
int QwtPlotScaleItem::rtti () const [virtual]
+
+
+
Returns:
QwtPlotItem::Rtti_PlotScale
+ +

Reimplemented from QwtPlotItem.

+ +
+
+ +
+
+ + + + + + + +
const QwtScaleDiv & QwtPlotScaleItem::scaleDiv () const
+
+
+
Returns:
Scale division
+ +
+
+ +
+
+ + + + + + + +
const QwtScaleDraw * QwtPlotScaleItem::scaleDraw () const
+
+
+
Returns:
Scale draw
+
See also:
setScaleDraw()
+ +
+
+ +
+
+ + + + + + + +
QwtScaleDraw * QwtPlotScaleItem::scaleDraw ()
+
+
+
Returns:
Scale draw
+
See also:
setScaleDraw()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotScaleItem::setAlignment (QwtScaleDraw::Alignment alignment)
+
+
+

Change the alignment of the scale

+

The alignment sets the orientation of the scale and the position of the ticks:

+ +

For horizontal scales the position corresponds to QwtPlotItem::yAxis(), otherwise to QwtPlotItem::xAxis().

+
See also:
scaleDraw(), QwtScaleDraw::alignment(), setPosition()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotScaleItem::setBorderDistance (int distance)
+
+
+ +

Align the scale to the canvas.

+

If distance is >= 0 the scale will be aligned to a border of the contents rect of the canvas. If alignment() is QwtScaleDraw::LeftScale, the scale will be aligned to the right border, if it is QwtScaleDraw::TopScale it will be aligned to the bottom (and vice versa),

+

If distance is < 0 the scale will be at the position().

+
Parameters:
+ + +
distanceNumber of pixels between the canvas border and the backbone of the scale.
+
+
+
See also:
setPosition(), borderDistance()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotScaleItem::setFont (const QFont & font)
+
+
+

Change the tick label font

+
See also:
font()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotScaleItem::setPalette (const QPalette & palette)
+
+
+

Set the palette

+
See also:
QwtAbstractScaleDraw::draw(), palette()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotScaleItem::setPosition (double pos)
+
+
+

Change the position of the scale

+

The position is interpreted as y value for horizontal axes and as x value for vertical axes.

+

The border distance is set to -1.

+
Parameters:
+ + +
posNew position
+
+
+
See also:
position(), setAlignment()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotScaleItem::setScaleDiv (const QwtScaleDivscaleDiv)
+
+
+ +

Assign a scale division.

+

When assigning a scaleDiv the scale division won't be synchronized with the corresponding axis anymore.

+
Parameters:
+ + +
scaleDivScale division
+
+
+
See also:
scaleDiv(), setScaleDivFromAxis(), isScaleDivFromAxis()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotScaleItem::setScaleDivFromAxis (bool on)
+
+
+

Enable/Disable the synchronization of the scale division with the corresponding axis.

+
Parameters:
+ + +
ontrue/false
+
+
+
See also:
isScaleDivFromAxis()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotScaleItem::setScaleDraw (QwtScaleDrawscaleDraw)
+
+
+ +

Set a scale draw.

+
Parameters:
+ + +
scaleDrawobject responsible for drawing scales.
+
+
+

The main use case for replacing the default QwtScaleDraw is to overload QwtAbstractScaleDraw::label, to replace or swallow tick labels.

+
See also:
scaleDraw()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotScaleItem::updateScaleDiv (const QwtScaleDivxScaleDiv,
const QwtScaleDivyScaleDiv 
) [virtual]
+
+
+ +

Update the item to changes of the axes scale division.

+

In case of isScaleDivFromAxis(), the scale draw is synchronized to the correspond axis.

+
Parameters:
+ + + +
xScaleDivScale division of the x-axis
yScaleDivScale division of the y-axis
+
+
+
See also:
QwtPlot::updateAxes()
+ +

Reimplemented from QwtPlotItem.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_scale_item__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_scale_item__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_scale_item__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_scale_item__inherit__graph.map 2011-04-15 10:49:13.000000000 +0000 @@ -0,0 +1,4 @@ + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_scale_item__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_scale_item__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_scale_item__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_scale_item__inherit__graph.md5 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1 @@ +75664707a52aff0b9b5383b61b3f494e \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_scale_item__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_scale_item__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_scale_item-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_scale_item-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_scale_item-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_scale_item-members.html 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,123 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPlotScaleItem Member List

+
+
+This is the complete list of members for QwtPlotScaleItem, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
attach(QwtPlot *plot)QwtPlotItem
AutoScale enum valueQwtPlotItem
borderDistance() const QwtPlotScaleItem
boundingRect() const QwtPlotItem [virtual]
detach()QwtPlotItem
draw(QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &rect) const QwtPlotScaleItem [virtual]
drawLegendIdentifier(QPainter *, const QRectF &) const QwtLegendItemManager [inline, virtual]
font() const QwtPlotScaleItem
hide()QwtPlotItem
isScaleDivFromAxis() const QwtPlotScaleItem
isVisible() const QwtPlotItem
ItemAttribute enum nameQwtPlotItem
ItemAttributes typedefQwtPlotItem
itemChanged()QwtPlotItem [virtual]
Legend enum valueQwtPlotItem
legendItem() const QwtPlotItem [virtual]
paintRect(const QwtScaleMap &, const QwtScaleMap &) const QwtPlotItem
palette() const QwtPlotScaleItem
plot() const QwtPlotItem
position() const QwtPlotScaleItem
QwtLegendItemManager()QwtLegendItemManager [inline]
QwtPlotItem(const QwtText &title=QwtText())QwtPlotItem [explicit]
QwtPlotScaleItem(QwtScaleDraw::Alignment=QwtScaleDraw::BottomScale, const double pos=0.0)QwtPlotScaleItem [explicit]
RenderAntialiased enum valueQwtPlotItem
RenderHint enum nameQwtPlotItem
RenderHints typedefQwtPlotItem
rtti() const QwtPlotScaleItem [virtual]
Rtti_PlotCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotGrid enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotHistogram enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotIntervalCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotItem enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotMarker enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotScale enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSpectroCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSpectrogram enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSVG enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotUserItem enum value (defined in QwtPlotItem)QwtPlotItem
RttiValues enum nameQwtPlotItem
scaleDiv() const QwtPlotScaleItem
scaleDraw() const QwtPlotScaleItem
scaleDraw()QwtPlotScaleItem
scaleRect(const QwtScaleMap &, const QwtScaleMap &) const QwtPlotItem
setAlignment(QwtScaleDraw::Alignment)QwtPlotScaleItem
setAxes(int xAxis, int yAxis)QwtPlotItem
setBorderDistance(int numPixels)QwtPlotScaleItem
setFont(const QFont &)QwtPlotScaleItem
setItemAttribute(ItemAttribute, bool on=true)QwtPlotItem
setPalette(const QPalette &)QwtPlotScaleItem
setPosition(double pos)QwtPlotScaleItem
setRenderHint(RenderHint, bool on=true)QwtPlotItem
setScaleDiv(const QwtScaleDiv &)QwtPlotScaleItem
setScaleDivFromAxis(bool on)QwtPlotScaleItem
setScaleDraw(QwtScaleDraw *)QwtPlotScaleItem
setTitle(const QString &title)QwtPlotItem
setTitle(const QwtText &title)QwtPlotItem
setVisible(bool)QwtPlotItem [virtual]
setXAxis(int axis)QwtPlotItem
setYAxis(int axis)QwtPlotItem
setZ(double z)QwtPlotItem
show()QwtPlotItem
testItemAttribute(ItemAttribute) const QwtPlotItem
testRenderHint(RenderHint) const QwtPlotItem
title() const QwtPlotItem
updateLegend(QwtLegend *) const QwtPlotItem [virtual]
updateScaleDiv(const QwtScaleDiv &, const QwtScaleDiv &)QwtPlotScaleItem [virtual]
xAxis() const QwtPlotItem
yAxis() const QwtPlotItem
z() const QwtPlotItem
~QwtLegendItemManager()QwtLegendItemManager [inline, virtual]
~QwtPlotItem()QwtPlotItem [virtual]
~QwtPlotScaleItem()QwtPlotScaleItem [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_series_item.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_series_item.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_series_item.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_series_item.html 2011-04-15 10:49:24.000000000 +0000 @@ -0,0 +1,356 @@ + + + + +Qwt User's Guide: QwtPlotSeriesItem< T > Class Template Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPlotSeriesItem< T > Class Template Reference

+
+
+ +

Class template for plot items representing a series of samples. +More...

+ +

#include <qwt_plot_seriesitem.h>

+
+Inheritance diagram for QwtPlotSeriesItem< T >:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + +

+Public Member Functions

 QwtPlotSeriesItem (const QString &title=QString::null)
 QwtPlotSeriesItem (const QwtText &title)
virtual ~QwtPlotSeriesItem ()
void setData (QwtSeriesData< T > *)
QwtSeriesData< T > * data ()
const QwtSeriesData< T > * data () const
size_t dataSize () const
sample (int index) const
virtual QRectF boundingRect () const
virtual void updateScaleDiv (const QwtScaleDiv &, const QwtScaleDiv &)

+Protected Attributes

QwtSeriesData< T > * d_series
+

Detailed Description

+

template<typename T>
+ class QwtPlotSeriesItem< T >

+ +

Class template for plot items representing a series of samples.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename T >
+ + + + + + + + +
QwtPlotSeriesItem< T >::QwtPlotSeriesItem (const QString & title = QString::null) [explicit]
+
+
+

Constructor

+
Parameters:
+ + +
titleTitle of the series item
+
+
+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + +
QwtPlotSeriesItem< T >::QwtPlotSeriesItem (const QwtTexttitle) [explicit]
+
+
+

Constructor

+
Parameters:
+ + +
titleTitle of the series item
+
+
+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + +
QwtPlotSeriesItem< T >::~QwtPlotSeriesItem () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename T >
+ + + + + + + +
QRectF QwtPlotSeriesItem< T >::boundingRect () const [virtual]
+
+
+
Returns:
Bounding rectangle of the data. If there is no bounding rect, like for empty data the rectangle is invalid.
+
See also:
QwtSeriesData<T>::boundingRect(), QRectF::isValid()
+ +

Reimplemented from QwtPlotItem.

+ +

Reimplemented in QwtPlotHistogram, and QwtPlotIntervalCurve.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + +
QwtSeriesData< T > * QwtPlotSeriesItem< T >::data () [inline]
+
+
+
Returns:
the the curve data
+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + +
const QwtSeriesData< T > * QwtPlotSeriesItem< T >::data () const [inline]
+
+
+
Returns:
the the curve data
+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + +
size_t QwtPlotSeriesItem< T >::dataSize () const
+
+
+

Return the size of the data arrays

+
See also:
setData()
+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + +
T QwtPlotSeriesItem< T >::sample (int index) const [inline]
+
+
+
Parameters:
+ + +
indexIndex
+
+
+
Returns:
Sample at position index
+ +
+
+ +
+
+
+template<typename T>
+ + + + + + + + +
void QwtPlotSeriesItem< T >::setData (QwtSeriesData< T > * data)
+
+
+

Assign a series of samples

+
Parameters:
+ + +
dataData
+
+
+
Warning:
The item takes ownership of the data object, deleting it when its not used anymore.
+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + +
void QwtPlotSeriesItem< T >::updateScaleDiv (const QwtScaleDivxScaleDiv,
const QwtScaleDivyScaleDiv 
) [virtual]
+
+
+

Update the rect of interest according to the current scale ranges

+
Parameters:
+ + + +
xScaleDivScale division of the x-axis
yScaleDivScale division of the y-axis
+
+
+
See also:
QwtSeriesData<T>::setRectOfInterest()
+ +

Reimplemented from QwtPlotItem.

+ +
+
+

Member Data Documentation

+ +
+
+
+template<typename T>
+ + + + +
QwtSeriesData<T>* QwtPlotSeriesItem< T >::d_series [protected]
+
+
+ +

Series.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_series_item__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_series_item__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_series_item__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_series_item__inherit__graph.map 2011-04-15 10:49:13.000000000 +0000 @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_series_item__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_series_item__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_series_item__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_series_item__inherit__graph.md5 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1 @@ +08127652bd9dc338180b0b8e30da03ac \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_series_item__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_series_item__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_series_item-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_series_item-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_series_item-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_series_item-members.html 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,120 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPlotSeriesItem< T > Member List

+
+
+This is the complete list of members for QwtPlotSeriesItem< T >, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
attach(QwtPlot *plot)QwtPlotItem
AutoScale enum valueQwtPlotItem
boundingRect() const QwtPlotSeriesItem< T > [virtual]
d_seriesQwtPlotSeriesItem< T > [protected]
data()QwtPlotSeriesItem< T > [inline]
data() const QwtPlotSeriesItem< T > [inline]
dataSize() const QwtPlotSeriesItem< T >
detach()QwtPlotItem
draw(QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &) const QwtPlotAbstractSeriesItem [virtual]
drawLegendIdentifier(QPainter *, const QRectF &) const QwtLegendItemManager [inline, virtual]
drawSeries(QPainter *painter, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const =0QwtPlotAbstractSeriesItem [pure virtual]
hide()QwtPlotItem
isVisible() const QwtPlotItem
ItemAttribute enum nameQwtPlotItem
ItemAttributes typedefQwtPlotItem
itemChanged()QwtPlotItem [virtual]
Legend enum valueQwtPlotItem
legendItem() const QwtPlotItem [virtual]
orientation() const QwtPlotAbstractSeriesItem
paintRect(const QwtScaleMap &, const QwtScaleMap &) const QwtPlotItem
plot() const QwtPlotItem
QwtLegendItemManager()QwtLegendItemManager [inline]
QwtPlotAbstractSeriesItem(const QString &title=QString::null)QwtPlotAbstractSeriesItem [explicit]
QwtPlotAbstractSeriesItem(const QwtText &title)QwtPlotAbstractSeriesItem [explicit]
QwtPlotItem(const QwtText &title=QwtText())QwtPlotItem [explicit]
QwtPlotSeriesItem(const QString &title=QString::null)QwtPlotSeriesItem< T > [explicit]
QwtPlotSeriesItem(const QwtText &title)QwtPlotSeriesItem< T > [explicit]
RenderAntialiased enum valueQwtPlotItem
RenderHint enum nameQwtPlotItem
RenderHints typedefQwtPlotItem
rtti() const QwtPlotItem [virtual]
Rtti_PlotCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotGrid enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotHistogram enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotIntervalCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotItem enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotMarker enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotScale enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSpectroCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSpectrogram enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSVG enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotUserItem enum value (defined in QwtPlotItem)QwtPlotItem
RttiValues enum nameQwtPlotItem
sample(int index) const QwtPlotSeriesItem< T > [inline]
scaleRect(const QwtScaleMap &, const QwtScaleMap &) const QwtPlotItem
setAxes(int xAxis, int yAxis)QwtPlotItem
setData(QwtSeriesData< T > *)QwtPlotSeriesItem< T >
setItemAttribute(ItemAttribute, bool on=true)QwtPlotItem
setOrientation(Qt::Orientation)QwtPlotAbstractSeriesItem
setRenderHint(RenderHint, bool on=true)QwtPlotItem
setTitle(const QString &title)QwtPlotItem
setTitle(const QwtText &title)QwtPlotItem
setVisible(bool)QwtPlotItem [virtual]
setXAxis(int axis)QwtPlotItem
setYAxis(int axis)QwtPlotItem
setZ(double z)QwtPlotItem
show()QwtPlotItem
testItemAttribute(ItemAttribute) const QwtPlotItem
testRenderHint(RenderHint) const QwtPlotItem
title() const QwtPlotItem
updateLegend(QwtLegend *) const QwtPlotItem [virtual]
updateScaleDiv(const QwtScaleDiv &, const QwtScaleDiv &)QwtPlotSeriesItem< T > [virtual]
xAxis() const QwtPlotItem
yAxis() const QwtPlotItem
z() const QwtPlotItem
~QwtLegendItemManager()QwtLegendItemManager [inline, virtual]
~QwtPlotAbstractSeriesItem()QwtPlotAbstractSeriesItem [virtual]
~QwtPlotItem()QwtPlotItem [virtual]
~QwtPlotSeriesItem()QwtPlotSeriesItem< T > [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectro_curve.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectro_curve.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectro_curve.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectro_curve.html 2011-04-15 10:49:24.000000000 +0000 @@ -0,0 +1,561 @@ + + + + +Qwt User's Guide: QwtPlotSpectroCurve Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPlotSpectroCurve Class Reference

+
+
+ +

Curve that displays 3D points as dots, where the z coordinate is mapped to a color. +More...

+ +

#include <qwt_plot_spectrocurve.h>

+
+Inheritance diagram for QwtPlotSpectroCurve:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + +

+Public Types

enum  PaintAttribute { ClipPoints = 1 + }
typedef QFlags< PaintAttributePaintAttributes

+Public Member Functions

 QwtPlotSpectroCurve (const QString &title=QString::null)
 QwtPlotSpectroCurve (const QwtText &title)
virtual ~QwtPlotSpectroCurve ()
virtual int rtti () const
void setPaintAttribute (PaintAttribute, bool on=true)
bool testPaintAttribute (PaintAttribute) const
void setSamples (const QVector< QwtPoint3D > &)
void setColorMap (QwtColorMap *)
const QwtColorMapcolorMap () const
void setColorRange (const QwtInterval &)
QwtIntervalcolorRange () const
virtual void drawSeries (QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const
void setPenWidth (double width)
double penWidth () const

+Protected Member Functions

virtual void drawDots (QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const
+

Detailed Description

+

Curve that displays 3D points as dots, where the z coordinate is mapped to a color.

+

Member Typedef Documentation

+ +
+ +
+ +

Paint attributes.

+ +
+
+

Member Enumeration Documentation

+ +
+ +
+ +

Paint attributes.

+
Enumerator:
+ +
ClipPoints  +

Clip points outside the canvas rectangle.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtPlotSpectroCurve::QwtPlotSpectroCurve (const QString & title = QString::null) [explicit]
+
+
+

Constructor

+
Parameters:
+ + +
titleTitle of the curve
+
+
+ +
+
+ +
+
+ + + + + + + + +
QwtPlotSpectroCurve::QwtPlotSpectroCurve (const QwtTexttitle) [explicit]
+
+
+

Constructor

+
Parameters:
+ + +
titleTitle of the curve
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtPlotSpectroCurve::~QwtPlotSpectroCurve () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
const QwtColorMap * QwtPlotSpectroCurve::colorMap () const
+
+
+
Returns:
Color Map used for mapping the intensity values to colors
+
See also:
setColorMap(), setColorRange(), QwtColorMap::color()
+ +
+
+ +
+
+ + + + + + + +
QwtInterval & QwtPlotSpectroCurve::colorRange () const
+
+
+
Returns:
Value interval, that corresponds to the color map
+
See also:
setColorRange(), setColorMap(), QwtColorMap::color()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotSpectroCurve::drawDots (QPainter * painter,
const QwtScaleMapxMap,
const QwtScaleMapyMap,
const QRectF & canvasRect,
int from,
int to 
) const [protected, virtual]
+
+
+

Draw a subset of the points

+
Parameters:
+ + + + + + + +
painterPainter
xMapMaps x-values into pixel coordinates.
yMapMaps y-values into pixel coordinates.
canvasRectContents rect of the canvas
fromIndex of the first sample to be painted
toIndex of the last sample to be painted. If to < 0 the series will be painted to its last sample.
+
+
+
See also:
drawSeries()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotSpectroCurve::drawSeries (QPainter * painter,
const QwtScaleMapxMap,
const QwtScaleMapyMap,
const QRectF & canvasRect,
int from,
int to 
) const [virtual]
+
+
+

Draw a subset of the points

+
Parameters:
+ + + + + + + +
painterPainter
xMapMaps x-values into pixel coordinates.
yMapMaps y-values into pixel coordinates.
canvasRectContents rect of the canvas
fromIndex of the first sample to be painted
toIndex of the last sample to be painted. If to < 0 the series will be painted to its last sample.
+
+
+
See also:
drawDots()
+ +

Implements QwtPlotAbstractSeriesItem.

+ +
+
+ +
+
+ + + + + + + +
double QwtPlotSpectroCurve::penWidth () const
+
+
+
Returns:
Pen width used to draw a dot
+
See also:
setPenWidth()
+ +
+
+ +
+
+ + + + + + + +
int QwtPlotSpectroCurve::rtti () const [virtual]
+
+
+
Returns:
QwtPlotItem::Rtti_PlotSpectroCurve
+ +

Reimplemented from QwtPlotItem.

+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotSpectroCurve::setColorMap (QwtColorMapcolorMap)
+
+
+

Change the color map

+

Often it is useful to display the mapping between intensities and colors as an additional plot axis, showing a color bar.

+
Parameters:
+ + +
colorMapColor Map
+
+
+
See also:
colorMap(), setColorRange(), QwtColorMap::color(), QwtScaleWidget::setColorBarEnabled(), QwtScaleWidget::setColorMap()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotSpectroCurve::setColorRange (const QwtIntervalinterval)
+
+
+

Set the value interval, that corresponds to the color map

+
Parameters:
+ + +
intervalinterval.minValue() corresponds to 0.0, interval.maxValue() to 1.0 on the color map.
+
+
+
See also:
colorRange(), setColorMap(), QwtColorMap::color()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotSpectroCurve::setPaintAttribute (PaintAttribute attribute,
bool on = true 
)
+
+
+

Specify an attribute how to draw the curve

+
Parameters:
+ + + +
attributePaint attribute
onOn/Off /sa PaintAttribute, testPaintAttribute()
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotSpectroCurve::setPenWidth (double penWidth)
+
+
+

Assign a pen width

+
Parameters:
+ + +
penWidthNew pen width
+
+
+
See also:
penWidth()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotSpectroCurve::setSamples (const QVector< QwtPoint3D > & samples)
+
+
+

Initialize data with an array of samples.

+
Parameters:
+ + +
samplesVector of points
+
+
+ +
+
+ +
+
+ + + + + + + + +
bool QwtPlotSpectroCurve::testPaintAttribute (PaintAttribute attribute) const
+
+
+ +

Return the current paint attributes.

+
See also:
PaintAttribute, setPaintAttribute()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectro_curve__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectro_curve__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectro_curve__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectro_curve__inherit__graph.map 2011-04-15 10:49:13.000000000 +0000 @@ -0,0 +1,7 @@ + + + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectro_curve__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectro_curve__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectro_curve__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectro_curve__inherit__graph.md5 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1 @@ +25a0f9a8f1c78cfef1ae500952f0861b \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectro_curve__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectro_curve__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectro_curve-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectro_curve-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectro_curve-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectro_curve-members.html 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,136 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPlotSpectroCurve Member List

+
+
+This is the complete list of members for QwtPlotSpectroCurve, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
attach(QwtPlot *plot)QwtPlotItem
AutoScale enum valueQwtPlotItem
boundingRect() constQwtPlotSeriesItem< QwtPoint3D > [virtual]
ClipPoints enum valueQwtPlotSpectroCurve
colorMap() const QwtPlotSpectroCurve
colorRange() const QwtPlotSpectroCurve
d_seriesQwtPlotSeriesItem< QwtPoint3D > [protected]
data()QwtPlotSeriesItem< QwtPoint3D >
data() constQwtPlotSeriesItem< QwtPoint3D >
dataSize() constQwtPlotSeriesItem< QwtPoint3D >
detach()QwtPlotItem
draw(QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &) const QwtPlotAbstractSeriesItem [virtual]
drawDots(QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const QwtPlotSpectroCurve [protected, virtual]
drawLegendIdentifier(QPainter *, const QRectF &) const QwtLegendItemManager [inline, virtual]
drawSeries(QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const QwtPlotSpectroCurve [virtual]
hide()QwtPlotItem
isVisible() const QwtPlotItem
ItemAttribute enum nameQwtPlotItem
ItemAttributes typedefQwtPlotItem
itemChanged()QwtPlotItem [virtual]
Legend enum valueQwtPlotItem
legendItem() const QwtPlotItem [virtual]
orientation() const QwtPlotAbstractSeriesItem
PaintAttribute enum nameQwtPlotSpectroCurve
PaintAttributes typedefQwtPlotSpectroCurve
paintRect(const QwtScaleMap &, const QwtScaleMap &) const QwtPlotItem
penWidth() const QwtPlotSpectroCurve
plot() const QwtPlotItem
QwtLegendItemManager()QwtLegendItemManager [inline]
QwtPlotAbstractSeriesItem(const QString &title=QString::null)QwtPlotAbstractSeriesItem [explicit]
QwtPlotAbstractSeriesItem(const QwtText &title)QwtPlotAbstractSeriesItem [explicit]
QwtPlotItem(const QwtText &title=QwtText())QwtPlotItem [explicit]
QwtPlotSeriesItem(const QString &title=QString::null)QwtPlotSeriesItem< QwtPoint3D > [explicit]
QwtPlotSeriesItem(const QwtText &title)QwtPlotSeriesItem< QwtPoint3D > [explicit]
QwtPlotSpectroCurve(const QString &title=QString::null)QwtPlotSpectroCurve [explicit]
QwtPlotSpectroCurve(const QwtText &title)QwtPlotSpectroCurve [explicit]
RenderAntialiased enum valueQwtPlotItem
RenderHint enum nameQwtPlotItem
RenderHints typedefQwtPlotItem
rtti() const QwtPlotSpectroCurve [virtual]
Rtti_PlotCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotGrid enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotHistogram enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotIntervalCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotItem enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotMarker enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotScale enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSpectroCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSpectrogram enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSVG enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotUserItem enum value (defined in QwtPlotItem)QwtPlotItem
RttiValues enum nameQwtPlotItem
sample(int index) constQwtPlotSeriesItem< QwtPoint3D >
scaleRect(const QwtScaleMap &, const QwtScaleMap &) const QwtPlotItem
setAxes(int xAxis, int yAxis)QwtPlotItem
setColorMap(QwtColorMap *)QwtPlotSpectroCurve
setColorRange(const QwtInterval &)QwtPlotSpectroCurve
setData(QwtSeriesData< QwtPoint3D > *)QwtPlotSeriesItem< QwtPoint3D >
setItemAttribute(ItemAttribute, bool on=true)QwtPlotItem
setOrientation(Qt::Orientation)QwtPlotAbstractSeriesItem
setPaintAttribute(PaintAttribute, bool on=true)QwtPlotSpectroCurve
setPenWidth(double width)QwtPlotSpectroCurve
setRenderHint(RenderHint, bool on=true)QwtPlotItem
setSamples(const QVector< QwtPoint3D > &)QwtPlotSpectroCurve
setTitle(const QString &title)QwtPlotItem
setTitle(const QwtText &title)QwtPlotItem
setVisible(bool)QwtPlotItem [virtual]
setXAxis(int axis)QwtPlotItem
setYAxis(int axis)QwtPlotItem
setZ(double z)QwtPlotItem
show()QwtPlotItem
testItemAttribute(ItemAttribute) const QwtPlotItem
testPaintAttribute(PaintAttribute) const QwtPlotSpectroCurve
testRenderHint(RenderHint) const QwtPlotItem
title() const QwtPlotItem
updateLegend(QwtLegend *) const QwtPlotItem [virtual]
updateScaleDiv(const QwtScaleDiv &, const QwtScaleDiv &)QwtPlotSeriesItem< QwtPoint3D > [virtual]
xAxis() const QwtPlotItem
yAxis() const QwtPlotItem
z() const QwtPlotItem
~QwtLegendItemManager()QwtLegendItemManager [inline, virtual]
~QwtPlotAbstractSeriesItem()QwtPlotAbstractSeriesItem [virtual]
~QwtPlotItem()QwtPlotItem [virtual]
~QwtPlotSeriesItem()QwtPlotSeriesItem< QwtPoint3D > [virtual]
~QwtPlotSpectroCurve()QwtPlotSpectroCurve [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectrogram.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectrogram.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectrogram.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectrogram.html 2011-04-15 10:49:24.000000000 +0000 @@ -0,0 +1,963 @@ + + + + +Qwt User's Guide: QwtPlotSpectrogram Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPlotSpectrogram Class Reference

+
+
+ +

A plot item, which displays a spectrogram. +More...

+ +

#include <qwt_plot_spectrogram.h>

+
+Inheritance diagram for QwtPlotSpectrogram:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Types

enum  DisplayMode {
+  ImageMode = 0x01, +
+  ContourMode = 0x02 +
+ }
typedef QFlags< DisplayModeDisplayModes

+Public Member Functions

 QwtPlotSpectrogram (const QString &title=QString::null)
virtual ~QwtPlotSpectrogram ()
void setRenderThreadCount (uint numThreads)
uint renderThreadCount () const
void setDisplayMode (DisplayMode, bool on=true)
bool testDisplayMode (DisplayMode) const
void setData (QwtRasterData *data)
const QwtRasterDatadata () const
QwtRasterDatadata ()
void setColorMap (QwtColorMap *)
const QwtColorMapcolorMap () const
virtual QwtInterval interval (Qt::Axis) const
virtual QRectF pixelHint (const QRectF &) const
void setDefaultContourPen (const QPen &)
QPen defaultContourPen () const
virtual QPen contourPen (double level) const
void setConrecFlag (QwtRasterData::ConrecFlag, bool on)
bool testConrecFlag (QwtRasterData::ConrecFlag) const
void setContourLevels (const QList< double > &)
QList< double > contourLevels () const
virtual int rtti () const
virtual void draw (QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &rect) const

+Protected Member Functions

virtual QImage renderImage (const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &area, const QSize &imageSize) const
virtual QSize contourRasterSize (const QRectF &, const QRect &) const
virtual QwtRasterData::ContourLines renderContourLines (const QRectF &rect, const QSize &raster) const
virtual void drawContourLines (QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QwtRasterData::ContourLines &lines) const
void renderTile (const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRect &imageRect, QImage *image) const
+

Detailed Description

+

A plot item, which displays a spectrogram.

+

A spectrogram displays threedimenional data, where the 3rd dimension ( the intensity ) is displayed using colors. The colors are calculated from the values using a color map.

+

In ContourMode contour lines are painted for the contour levels.

+
+spectrogram3.png +
+
See also:
QwtRasterData, QwtColorMap
+

Member Typedef Documentation

+ +
+
+ + + + +
typedef QFlags<DisplayMode> QwtPlotSpectrogram::DisplayModes
+
+
+ +

Display modes.

+ +
+
+

Member Enumeration Documentation

+ +
+ +
+

The display mode controls how the raster data will be represented.

+
See also:
setDisplayMode(), testDisplayMode()
+
Enumerator:
+ + +
ImageMode  +

The values are mapped to colors using a color map.

+
ContourMode  +

The data is displayed using contour lines.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtPlotSpectrogram::QwtPlotSpectrogram (const QString & title = QString::null) [explicit]
+
+
+

Sets the following item attributes:

+ +

The z value is initialized by 8.0.

+
Parameters:
+ + +
titleTitle
+
+
+
See also:
QwtPlotItem::setItemAttribute(), QwtPlotItem::setZ()
+ +
+
+ +
+
+ + + + + + + +
QwtPlotSpectrogram::~QwtPlotSpectrogram () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
const QwtColorMap * QwtPlotSpectrogram::colorMap () const
+
+
+
Returns:
Color Map used for mapping the intensity values to colors
+
See also:
setColorMap()
+ +
+
+ +
+
+ + + + + + + +
QList< double > QwtPlotSpectrogram::contourLevels () const
+
+
+ +

Return the levels of the contour lines.

+

The levels are sorted in increasing order.

+
See also:
contourLevels(), renderContourLines(), QwtRasterData::contourLines()
+ +
+
+ +
+
+ + + + + + + + +
QPen QwtPlotSpectrogram::contourPen (double level) const [virtual]
+
+
+ +

Calculate the pen for a contour line.

+

The color of the pen is the color for level calculated by the color map

+
Parameters:
+ + +
levelContour level
+
+
+
Returns:
Pen for the contour line
+
Note:
contourPen is only used if defaultContourPen().style() == Qt::NoPen
+
See also:
setDefaultContourPen(), setColorMap(), setContourLevels()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
QSize QwtPlotSpectrogram::contourRasterSize (const QRectF & area,
const QRect & rect 
) const [protected, virtual]
+
+
+ +

Return the raster to be used by the CONREC contour algorithm.

+

A larger size will improve the precisision of the CONREC algorithm, but will slow down the time that is needed to calculate the lines.

+

The default implementation returns rect.size() / 2 bounded to the resolution depending on pixelSize().

+
Parameters:
+ + + +
areaRect, where to calculate the contour lines
rectRect in pixel coordinates, where to paint the contour lines
+
+
+
Returns:
Raster to be used by the CONREC contour algorithm.
+
Note:
The size will be bounded to rect.size().
+
See also:
drawContourLines(), QwtRasterData::contourLines()
+ +
+
+ +
+
+ + + + + + + +
const QwtRasterData * QwtPlotSpectrogram::data () const
+
+
+
Returns:
Spectrogram data
+
See also:
setData()
+ +
+
+ +
+
+ + + + + + + +
QwtRasterData * QwtPlotSpectrogram::data ()
+
+
+
Returns:
Spectrogram data
+
See also:
setData()
+ +
+
+ +
+
+ + + + + + + +
QPen QwtPlotSpectrogram::defaultContourPen () const
+
+
+
Returns:
Default contour pen
+
See also:
setDefaultContourPen()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotSpectrogram::draw (QPainter * painter,
const QwtScaleMapxMap,
const QwtScaleMapyMap,
const QRectF & canvasRect 
) const [virtual]
+
+
+ +

Draw the spectrogram.

+
Parameters:
+ + + + + +
painterPainter
xMapMaps x-values into pixel coordinates.
yMapMaps y-values into pixel coordinates.
canvasRectContents rect of the canvas in painter coordinates
+
+
+
See also:
setDisplayMode(), renderImage(), QwtPlotRasterItem::draw(), drawContourLines()
+ +

Reimplemented from QwtPlotRasterItem.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotSpectrogram::drawContourLines (QPainter * painter,
const QwtScaleMapxMap,
const QwtScaleMapyMap,
const QwtRasterData::ContourLinescontourLines 
) const [protected, virtual]
+
+
+

Paint the contour lines

+
Parameters:
+ + + + + +
painterPainter
xMapMaps x-values into pixel coordinates.
yMapMaps y-values into pixel coordinates.
contourLinesContour lines
+
+
+
See also:
renderContourLines(), defaultContourPen(), contourPen()
+ +
+
+ +
+
+ + + + + + + + +
QwtInterval QwtPlotSpectrogram::interval (Qt::Axis axis) const [virtual]
+
+
+
Returns:
Bounding interval for an axis
+

The default implementation returns the interval of the associated raster data object.

+
Parameters:
+ + +
axisX, Y, or Z axis
+
+
+
See also:
QwtRasterData::interval()
+ +

Reimplemented from QwtPlotRasterItem.

+ +
+
+ +
+
+ + + + + + + + +
QRectF QwtPlotSpectrogram::pixelHint (const QRectF & area) const [virtual]
+
+
+ +

Pixel hint.

+

The geometry of a pixel is used to calculated the resolution and alignment of the rendered image.

+

The default implementation returns data()->pixelHint( rect );

+
Parameters:
+ + +
areaIn most implementations the resolution of the data doesn't depend on the requested area.
+
+
+
Returns:
Bounding rectangle of a pixel
+
See also:
QwtPlotRasterItem::pixelHint(), QwtRasterData::pixelHint(), render(), renderImage()
+ +

Reimplemented from QwtPlotRasterItem.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
QwtRasterData::ContourLines QwtPlotSpectrogram::renderContourLines (const QRectF & rect,
const QSize & raster 
) const [protected, virtual]
+
+
+

Calculate contour lines

+
Parameters:
+ + + +
rectRectangle, where to calculate the contour lines
rasterRaster, used by the CONREC algorithm
+
+
+
See also:
contourLevels(), setConrecFlag(), QwtRasterData::contourLines()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
QImage QwtPlotSpectrogram::renderImage (const QwtScaleMapxMap,
const QwtScaleMapyMap,
const QRectF & area,
const QSize & imageSize 
) const [protected, virtual]
+
+
+ +

Render an image from data and color map.

+

For each pixel of rect the value is mapped into a color.

+
Parameters:
+ + + + + +
xMapX-Scale Map
yMapY-Scale Map
areaRequested area for the image in scale coordinates
imageSizeSize of the requested image
+
+
+
Returns:
A QImage::Format_Indexed8 or QImage::Format_ARGB32 depending on the color map.
+
See also:
QwtRasterData::value(), QwtColorMap::rgb(), QwtColorMap::colorIndex()
+ +

Implements QwtPlotRasterItem.

+ +
+
+ +
+
+ + + + + + + +
uint QwtPlotSpectrogram::renderThreadCount () const
+
+
+
Returns:
Number of threads to be used for rendering. If numThreads is set to 0, the system specific ideal thread count is used.
+
Warning:
Rendering in multiple threads is only supported for Qt >= 4.4
+
See also:
setRenderThreadCount(), renderImage(), renderTile()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotSpectrogram::renderTile (const QwtScaleMapxMap,
const QwtScaleMapyMap,
const QRect & tile,
QImage * image 
) const [protected]
+
+
+ +

Render a tile of an image.

+

Rendering in tiles can be used to composite an image in parallel threads.

+
Parameters:
+ + + + + +
xMapX-Scale Map
yMapY-Scale Map
tileGeometry of the tile in image coordinates
imageImage to be rendered
+
+
+ +
+
+ +
+
+ + + + + + + +
int QwtPlotSpectrogram::rtti () const [virtual]
+
+
+
Returns:
QwtPlotItem::Rtti_PlotSpectrogram
+ +

Reimplemented from QwtPlotItem.

+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotSpectrogram::setColorMap (QwtColorMapcolorMap)
+
+
+

Change the color map

+

Often it is useful to display the mapping between intensities and colors as an additional plot axis, showing a color bar.

+
Parameters:
+ + +
colorMapColor Map
+
+
+
See also:
colorMap(), QwtScaleWidget::setColorBarEnabled(), QwtScaleWidget::setColorMap()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotSpectrogram::setConrecFlag (QwtRasterData::ConrecFlag flag,
bool on 
)
+
+
+

Modify an attribute of the CONREC algorithm, used to calculate the contour lines.

+
Parameters:
+ + + +
flagCONREC flag
onOn/Off
+
+
+
See also:
testConrecFlag(), renderContourLines(), QwtRasterData::contourLines()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotSpectrogram::setContourLevels (const QList< double > & levels)
+
+
+

Set the levels of the contour lines

+
Parameters:
+ + +
levelsValues of the contour levels
+
+
+
See also:
contourLevels(), renderContourLines(), QwtRasterData::contourLines()
+
Note:
contourLevels returns the same levels but sorted.
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotSpectrogram::setData (QwtRasterDatadata)
+
+
+

Set the data to be displayed

+
Parameters:
+ + +
dataSpectrogram Data
+
+
+
See also:
data()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotSpectrogram::setDefaultContourPen (const QPen & pen)
+
+
+ +

Set the default pen for the contour lines.

+

If the spectrogram has a valid default contour pen a contour line is painted using the default contour pen. Otherwise (pen.style() == Qt::NoPen) the pen is calculated for each contour level using contourPen().

+
See also:
defaultContourPen(), contourPen()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotSpectrogram::setDisplayMode (DisplayMode mode,
bool on = true 
)
+
+
+

The display mode controls how the raster data will be represented.

+
Parameters:
+ + + +
modeDisplay mode
onOn/Off
+
+
+

The default setting enables ImageMode.

+
See also:
DisplayMode, displayMode()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotSpectrogram::setRenderThreadCount (uint numThreads)
+
+
+

Rendering an image from the raster data can often be done parallel on a multicore system.

+
Parameters:
+ + +
numThreadsNumber of threads to be used for rendering. If numThreads is set to 0, the system specific ideal thread count is used.
+
+
+

The default thread count is 1 ( = no additional threads )

+
Warning:
Rendering in multiple threads is only supported for Qt >= 4.4
+
See also:
renderThreadCount(), renderImage(), renderTile()
+ +
+
+ +
+
+ + + + + + + + +
bool QwtPlotSpectrogram::testConrecFlag (QwtRasterData::ConrecFlag flag) const
+
+
+

Test an attribute of the CONREC algorithm, used to calculate the contour lines.

+
Parameters:
+ + +
flagCONREC flag
+
+
+
Returns:
true, is enabled
+
See also:
setConrecClag(), renderContourLines(), QwtRasterData::contourLines()
+ +
+
+ +
+
+ + + + + + + + +
bool QwtPlotSpectrogram::testDisplayMode (DisplayMode mode) const
+
+
+

The display mode controls how the raster data will be represented.

+
Parameters:
+ + +
modeDisplay mode
+
+
+
Returns:
true if mode is enabled
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectrogram__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectrogram__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectrogram__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectrogram__inherit__graph.map 2011-04-15 10:49:13.000000000 +0000 @@ -0,0 +1,5 @@ + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectrogram__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectrogram__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectrogram__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectrogram__inherit__graph.md5 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1 @@ +863777425ec6e16314340d723ec81c87 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectrogram__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectrogram__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectrogram-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectrogram-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectrogram-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_spectrogram-members.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,151 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPlotSpectrogram Member List

+
+
+This is the complete list of members for QwtPlotSpectrogram, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
alpha() const QwtPlotRasterItem
attach(QwtPlot *plot)QwtPlotItem
AutoScale enum valueQwtPlotItem
boundingRect() const QwtPlotRasterItem [virtual]
CachePolicy enum nameQwtPlotRasterItem
cachePolicy() const QwtPlotRasterItem
colorMap() const QwtPlotSpectrogram
contourLevels() const QwtPlotSpectrogram
ContourMode enum valueQwtPlotSpectrogram
contourPen(double level) const QwtPlotSpectrogram [virtual]
contourRasterSize(const QRectF &, const QRect &) const QwtPlotSpectrogram [protected, virtual]
data() const QwtPlotSpectrogram
data()QwtPlotSpectrogram
defaultContourPen() const QwtPlotSpectrogram
detach()QwtPlotItem
DisplayMode enum nameQwtPlotSpectrogram
DisplayModes typedefQwtPlotSpectrogram
draw(QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &rect) const QwtPlotSpectrogram [virtual]
drawContourLines(QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QwtRasterData::ContourLines &lines) const QwtPlotSpectrogram [protected, virtual]
drawLegendIdentifier(QPainter *, const QRectF &) const QwtLegendItemManager [inline, virtual]
hide()QwtPlotItem
imageMap(Qt::Orientation, const QwtScaleMap &map, const QRectF &area, const QSize &imageSize, double pixelSize) const QwtPlotRasterItem [protected, virtual]
ImageMode enum valueQwtPlotSpectrogram
interval(Qt::Axis) const QwtPlotSpectrogram [virtual]
invalidateCache()QwtPlotRasterItem
isVisible() const QwtPlotItem
ItemAttribute enum nameQwtPlotItem
ItemAttributes typedefQwtPlotItem
itemChanged()QwtPlotItem [virtual]
Legend enum valueQwtPlotItem
legendItem() const QwtPlotItem [virtual]
NoCache enum value (defined in QwtPlotRasterItem)QwtPlotRasterItem
PaintAttribute enum nameQwtPlotRasterItem
PaintAttributes typedefQwtPlotRasterItem
PaintCache enum value (defined in QwtPlotRasterItem)QwtPlotRasterItem
PaintInDeviceResolution enum valueQwtPlotRasterItem
paintRect(const QwtScaleMap &, const QwtScaleMap &) const QwtPlotItem
pixelHint(const QRectF &) const QwtPlotSpectrogram [virtual]
plot() const QwtPlotItem
QwtLegendItemManager()QwtLegendItemManager [inline]
QwtPlotItem(const QwtText &title=QwtText())QwtPlotItem [explicit]
QwtPlotRasterItem(const QString &title=QString::null)QwtPlotRasterItem [explicit]
QwtPlotRasterItem(const QwtText &title)QwtPlotRasterItem [explicit]
QwtPlotSpectrogram(const QString &title=QString::null)QwtPlotSpectrogram [explicit]
RenderAntialiased enum valueQwtPlotItem
renderContourLines(const QRectF &rect, const QSize &raster) const QwtPlotSpectrogram [protected, virtual]
RenderHint enum nameQwtPlotItem
RenderHints typedefQwtPlotItem
renderImage(const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &area, const QSize &imageSize) const QwtPlotSpectrogram [protected, virtual]
renderThreadCount() const QwtPlotSpectrogram
renderTile(const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRect &imageRect, QImage *image) const QwtPlotSpectrogram [protected]
rtti() const QwtPlotSpectrogram [virtual]
Rtti_PlotCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotGrid enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotHistogram enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotIntervalCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotItem enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotMarker enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotScale enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSpectroCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSpectrogram enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSVG enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotUserItem enum value (defined in QwtPlotItem)QwtPlotItem
RttiValues enum nameQwtPlotItem
scaleRect(const QwtScaleMap &, const QwtScaleMap &) const QwtPlotItem
setAlpha(int alpha)QwtPlotRasterItem
setAxes(int xAxis, int yAxis)QwtPlotItem
setCachePolicy(CachePolicy)QwtPlotRasterItem
setColorMap(QwtColorMap *)QwtPlotSpectrogram
setConrecFlag(QwtRasterData::ConrecFlag, bool on)QwtPlotSpectrogram
setContourLevels(const QList< double > &)QwtPlotSpectrogram
setData(QwtRasterData *data)QwtPlotSpectrogram
setDefaultContourPen(const QPen &)QwtPlotSpectrogram
setDisplayMode(DisplayMode, bool on=true)QwtPlotSpectrogram
setItemAttribute(ItemAttribute, bool on=true)QwtPlotItem
setPaintAttribute(PaintAttribute, bool on=true)QwtPlotRasterItem
setRenderHint(RenderHint, bool on=true)QwtPlotItem
setRenderThreadCount(uint numThreads)QwtPlotSpectrogram
setTitle(const QString &title)QwtPlotItem
setTitle(const QwtText &title)QwtPlotItem
setVisible(bool)QwtPlotItem [virtual]
setXAxis(int axis)QwtPlotItem
setYAxis(int axis)QwtPlotItem
setZ(double z)QwtPlotItem
show()QwtPlotItem
testConrecFlag(QwtRasterData::ConrecFlag) const QwtPlotSpectrogram
testDisplayMode(DisplayMode) const QwtPlotSpectrogram
testItemAttribute(ItemAttribute) const QwtPlotItem
testPaintAttribute(PaintAttribute) const QwtPlotRasterItem
testRenderHint(RenderHint) const QwtPlotItem
title() const QwtPlotItem
updateLegend(QwtLegend *) const QwtPlotItem [virtual]
updateScaleDiv(const QwtScaleDiv &, const QwtScaleDiv &)QwtPlotItem [virtual]
xAxis() const QwtPlotItem
yAxis() const QwtPlotItem
z() const QwtPlotItem
~QwtLegendItemManager()QwtLegendItemManager [inline, virtual]
~QwtPlotItem()QwtPlotItem [virtual]
~QwtPlotRasterItem()QwtPlotRasterItem [virtual]
~QwtPlotSpectrogram()QwtPlotSpectrogram [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_svg_item.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_svg_item.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_svg_item.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_svg_item.html 2011-04-15 10:49:24.000000000 +0000 @@ -0,0 +1,431 @@ + + + + +Qwt User's Guide: QwtPlotSvgItem Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPlotSvgItem Class Reference

+
+
+ +

A plot item, which displays data in Scalable Vector Graphics (SVG) format. +More...

+ +

#include <qwt_plot_svgitem.h>

+
+Inheritance diagram for QwtPlotSvgItem:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + +

+Public Member Functions

 QwtPlotSvgItem (const QString &title=QString::null)
 QwtPlotSvgItem (const QwtText &title)
virtual ~QwtPlotSvgItem ()
bool loadFile (const QRectF &, const QString &fileName)
bool loadData (const QRectF &, const QByteArray &)
virtual QRectF boundingRect () const
virtual void draw (QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &rect) const
virtual int rtti () const

+Protected Member Functions

const QSvgRenderer & renderer () const
QSvgRenderer & renderer ()
void render (QPainter *painter, const QRectF &viewBox, const QRectF &rect) const
QRectF viewBox (const QRectF &area) const
+

Detailed Description

+

A plot item, which displays data in Scalable Vector Graphics (SVG) format.

+

SVG images are often used to display maps

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtPlotSvgItem::QwtPlotSvgItem (const QString & title = QString::null) [explicit]
+
+
+ +

Constructor.

+

Sets the following item attributes:

+ +
Parameters:
+ + +
titleTitle
+
+
+ +
+
+ +
+
+ + + + + + + + +
QwtPlotSvgItem::QwtPlotSvgItem (const QwtTexttitle) [explicit]
+
+
+ +

Constructor.

+

Sets the following item attributes:

+ +
Parameters:
+ + +
titleTitle
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtPlotSvgItem::~QwtPlotSvgItem () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
QRectF QwtPlotSvgItem::boundingRect () const [virtual]
+
+
+ +

Bounding rect of the item.

+ +

Reimplemented from QwtPlotItem.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotSvgItem::draw (QPainter * painter,
const QwtScaleMapxMap,
const QwtScaleMapyMap,
const QRectF & canvasRect 
) const [virtual]
+
+
+

Draw the SVG item

+
Parameters:
+ + + + + +
painterPainter
xMapX-Scale Map
yMapY-Scale Map
canvasRectContents rect of the plot canvas
+
+
+ +

Implements QwtPlotItem.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
bool QwtPlotSvgItem::loadData (const QRectF & rect,
const QByteArray & data 
)
+
+
+

Load SVG data

+
Parameters:
+ + + +
rectBounding rectangle
datain SVG format
+
+
+
Returns:
true, if the SVG data could be loaded
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
bool QwtPlotSvgItem::loadFile (const QRectF & rect,
const QString & fileName 
)
+
+
+

Load a SVG file

+
Parameters:
+ + + +
rectBounding rectangle
fileNameSVG file name
+
+
+
Returns:
true, if the SVG file could be loaded
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtPlotSvgItem::render (QPainter * painter,
const QRectF & viewBox,
const QRectF & rect 
) const [protected]
+
+
+

Render the SVG data

+
Parameters:
+ + + + +
painterPainter
viewBoxView Box, see QSvgRenderer::viewBox
rectTraget rectangle on the paint device
+
+
+ +
+
+ +
+
+ + + + + + + +
QSvgRenderer & QwtPlotSvgItem::renderer () [protected]
+
+
+
Returns:
Renderer used to render the SVG data
+ +
+
+ +
+
+ + + + + + + +
const QSvgRenderer & QwtPlotSvgItem::renderer () const [protected]
+
+
+
Returns:
Renderer used to render the SVG data
+ +
+
+ +
+
+ + + + + + + +
int QwtPlotSvgItem::rtti () const [virtual]
+
+
+
Returns:
QwtPlotItem::Rtti_PlotSVG
+ +

Reimplemented from QwtPlotItem.

+ +
+
+ +
+
+ + + + + + + + +
QRectF QwtPlotSvgItem::viewBox (const QRectF & rect) const [protected]
+
+
+

Calculate the viewBox from an rect and boundingRect().

+
Parameters:
+ + +
rectRectangle in scale coordinates
+
+
+
Returns:
viewBox View Box, see QSvgRenderer::viewBox
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_svg_item__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_svg_item__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_svg_item__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_svg_item__inherit__graph.map 2011-04-15 10:49:14.000000000 +0000 @@ -0,0 +1,4 @@ + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_svg_item__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_svg_item__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_svg_item__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_svg_item__inherit__graph.md5 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1 @@ +cb9d8a4c9cacaa6861ee9edcda4352c2 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_svg_item__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_svg_item__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_svg_item-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_svg_item-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_svg_item-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_svg_item-members.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,114 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPlotSvgItem Member List

+
+
+This is the complete list of members for QwtPlotSvgItem, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
attach(QwtPlot *plot)QwtPlotItem
AutoScale enum valueQwtPlotItem
boundingRect() const QwtPlotSvgItem [virtual]
detach()QwtPlotItem
draw(QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &rect) const QwtPlotSvgItem [virtual]
drawLegendIdentifier(QPainter *, const QRectF &) const QwtLegendItemManager [inline, virtual]
hide()QwtPlotItem
isVisible() const QwtPlotItem
ItemAttribute enum nameQwtPlotItem
ItemAttributes typedefQwtPlotItem
itemChanged()QwtPlotItem [virtual]
Legend enum valueQwtPlotItem
legendItem() const QwtPlotItem [virtual]
loadData(const QRectF &, const QByteArray &)QwtPlotSvgItem
loadFile(const QRectF &, const QString &fileName)QwtPlotSvgItem
paintRect(const QwtScaleMap &, const QwtScaleMap &) const QwtPlotItem
plot() const QwtPlotItem
QwtLegendItemManager()QwtLegendItemManager [inline]
QwtPlotItem(const QwtText &title=QwtText())QwtPlotItem [explicit]
QwtPlotSvgItem(const QString &title=QString::null)QwtPlotSvgItem [explicit]
QwtPlotSvgItem(const QwtText &title)QwtPlotSvgItem [explicit]
render(QPainter *painter, const QRectF &viewBox, const QRectF &rect) const QwtPlotSvgItem [protected]
RenderAntialiased enum valueQwtPlotItem
renderer() const QwtPlotSvgItem [protected]
renderer()QwtPlotSvgItem [protected]
RenderHint enum nameQwtPlotItem
RenderHints typedefQwtPlotItem
rtti() const QwtPlotSvgItem [virtual]
Rtti_PlotCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotGrid enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotHistogram enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotIntervalCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotItem enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotMarker enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotScale enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSpectroCurve enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSpectrogram enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotSVG enum value (defined in QwtPlotItem)QwtPlotItem
Rtti_PlotUserItem enum value (defined in QwtPlotItem)QwtPlotItem
RttiValues enum nameQwtPlotItem
scaleRect(const QwtScaleMap &, const QwtScaleMap &) const QwtPlotItem
setAxes(int xAxis, int yAxis)QwtPlotItem
setItemAttribute(ItemAttribute, bool on=true)QwtPlotItem
setRenderHint(RenderHint, bool on=true)QwtPlotItem
setTitle(const QString &title)QwtPlotItem
setTitle(const QwtText &title)QwtPlotItem
setVisible(bool)QwtPlotItem [virtual]
setXAxis(int axis)QwtPlotItem
setYAxis(int axis)QwtPlotItem
setZ(double z)QwtPlotItem
show()QwtPlotItem
testItemAttribute(ItemAttribute) const QwtPlotItem
testRenderHint(RenderHint) const QwtPlotItem
title() const QwtPlotItem
updateLegend(QwtLegend *) const QwtPlotItem [virtual]
updateScaleDiv(const QwtScaleDiv &, const QwtScaleDiv &)QwtPlotItem [virtual]
viewBox(const QRectF &area) const QwtPlotSvgItem [protected]
xAxis() const QwtPlotItem
yAxis() const QwtPlotItem
z() const QwtPlotItem
~QwtLegendItemManager()QwtLegendItemManager [inline, virtual]
~QwtPlotItem()QwtPlotItem [virtual]
~QwtPlotSvgItem()QwtPlotSvgItem [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_zoomer.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_zoomer.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_zoomer.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_zoomer.html 2011-04-15 10:49:24.000000000 +0000 @@ -0,0 +1,729 @@ + + + + +Qwt User's Guide: QwtPlotZoomer Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPlotZoomer Class Reference

+
+
+ +

QwtPlotZoomer provides stacked zooming for a plot widget. +More...

+ +

#include <qwt_plot_zoomer.h>

+
+Inheritance diagram for QwtPlotZoomer:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Slots

void moveBy (double x, double y)
virtual void moveTo (const QPointF &)
virtual void zoom (const QRectF &)
virtual void zoom (int up)

+Signals

void zoomed (const QRectF &rect)

+Public Member Functions

 QwtPlotZoomer (QwtPlotCanvas *, bool doReplot=true)
 QwtPlotZoomer (int xAxis, int yAxis, QwtPlotCanvas *, bool doReplot=true)
virtual void setZoomBase (bool doReplot=true)
virtual void setZoomBase (const QRectF &)
QRectF zoomBase () const
QRectF zoomRect () const
virtual void setAxis (int xAxis, int yAxis)
void setMaxStackDepth (int)
int maxStackDepth () const
const QStack< QRectF > & zoomStack () const
void setZoomStack (const QStack< QRectF > &, int zoomRectIndex=-1)
uint zoomRectIndex () const

+Protected Member Functions

virtual void rescale ()
virtual QSizeF minZoomSize () const
virtual void widgetMouseReleaseEvent (QMouseEvent *)
virtual void widgetKeyPressEvent (QKeyEvent *)
virtual void begin ()
virtual bool end (bool ok=true)
virtual bool accept (QPolygon &) const
+

Detailed Description

+

QwtPlotZoomer provides stacked zooming for a plot widget.

+

QwtPlotZoomer offers rubberband selections on the plot canvas, translating the selected rectangles into plot coordinates and adjusting the axes to them. Zooming can repeated as often as possible, limited only by maxStackDepth() or minZoomSize(). Each rectangle is pushed on a stack.

+

Zoom rectangles can be selected depending on selectionFlags() using the mouse or keyboard (QwtEventPattern, QwtPickerMachine). QwtEventPattern::MouseSelect3,QwtEventPattern::KeyUndo, or QwtEventPattern::MouseSelect6,QwtEventPattern::KeyRedo walk up and down the zoom stack. QwtEventPattern::MouseSelect2 or QwtEventPattern::KeyHome unzoom to the initial size.

+

QwtPlotZoomer is tailored for plots with one x and y axis, but it is allowed to attach a second QwtPlotZoomer for the other axes.

+
Note:
The realtime example includes an derived zoomer class that adds scrollbars to the plot canvas.
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
QwtPlotZoomer::QwtPlotZoomer (QwtPlotCanvascanvas,
bool doReplot = true 
) [explicit]
+
+
+ +

Create a zoomer for a plot canvas.

+

The zoomer is set to those x- and y-axis of the parent plot of the canvas that are enabled. If both or no x-axis are enabled, the picker is set to QwtPlot::xBottom. If both or no y-axis are enabled, it is set to QwtPlot::yLeft.

+

The zoomer is initialized with a QwtPickerDragRectMachine, the tracker mode is set to QwtPicker::ActiveOnly and the rubberband is set to QwtPicker::RectRubberBand

+
Parameters:
+ + + +
canvasPlot canvas to observe, also the parent object
doReplotCall replot for the attached plot before initializing the zoomer with its scales. This might be necessary, when the plot is in a state with pending scale changes.
+
+
+
See also:
QwtPlot::autoReplot(), QwtPlot::replot(), setZoomBase()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
QwtPlotZoomer::QwtPlotZoomer (int xAxis,
int yAxis,
QwtPlotCanvascanvas,
bool doReplot = true 
) [explicit]
+
+
+ +

Create a zoomer for a plot canvas.

+

The zoomer is initialized with a QwtPickerDragRectMachine, the tracker mode is set to QwtPicker::ActiveOnly and the rubberband is set to QwtPicker;;RectRubberBand

+
Parameters:
+ + + + + +
xAxisX axis of the zoomer
yAxisY axis of the zoomer
canvasPlot canvas to observe, also the parent object
doReplotCall replot for the attached plot before initializing the zoomer with its scales. This might be necessary, when the plot is in a state with pending scale changes.
+
+
+
See also:
QwtPlot::autoReplot(), QwtPlot::replot(), setZoomBase()
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + +
bool QwtPlotZoomer::accept (QPolygon & pa) const [protected, virtual]
+
+
+ +

Check and correct a selected rectangle.

+

Reject rectangles with a hight or width < 2, otherwise expand the selected rectangle to a minimum size of 11x11 and accept it.

+
Returns:
true If rect is accepted, or has been changed to a accepted rectangle.
+ +

Reimplemented from QwtPicker.

+ +
+
+ +
+
+ + + + + + + +
void QwtPlotZoomer::begin () [protected, virtual]
+
+
+

Rejects selections, when the stack depth is too deep, or the zoomed rectangle is minZoomSize().

+
See also:
minZoomSize(), maxStackDepth()
+ +

Reimplemented from QwtPicker.

+ +
+
+ +
+
+ + + + + + + + +
bool QwtPlotZoomer::end (bool ok = true) [protected, virtual]
+
+
+

Expand the selected rectangle to minZoomSize() and zoom in if accepted.

+
See also:
accept(), minZoomSize()
+ +

Reimplemented from QwtPlotPicker.

+ +
+
+ +
+
+ + + + + + + +
int QwtPlotZoomer::maxStackDepth () const
+
+
+
Returns:
Maximal depth of the zoom stack.
+
See also:
setMaxStackDepth()
+ +
+
+ +
+
+ + + + + + + +
QSizeF QwtPlotZoomer::minZoomSize () const [protected, virtual]
+
+
+ +

Limit zooming by a minimum rectangle.

+
Returns:
zoomBase().width() / 10e4, zoomBase().height() / 10e4
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotZoomer::moveBy (double dx,
double dy 
) [slot]
+
+
+

Move the current zoom rectangle.

+
Parameters:
+ + + +
dxX offset
dyY offset
+
+
+
Note:
The changed rectangle is limited by the zoom base
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotZoomer::moveTo (const QPointF & pos) [virtual, slot]
+
+
+

Move the the current zoom rectangle.

+
Parameters:
+ + +
posNew position
+
+
+
See also:
QRectF::moveTo()
+
Note:
The changed rectangle is limited by the zoom base
+ +
+
+ +
+
+ + + + + + + +
void QwtPlotZoomer::rescale () [protected, virtual]
+
+
+

Adjust the observed plot to zoomRect()

+
Note:
Initiates QwtPlot::replot
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotZoomer::setAxis (int xAxis,
int yAxis 
) [virtual]
+
+
+

Reinitialize the axes, and set the zoom base to their scales.

+
Parameters:
+ + + +
xAxisX axis
yAxisY axis
+
+
+ +

Reimplemented from QwtPlotPicker.

+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotZoomer::setMaxStackDepth (int depth)
+
+
+ +

Limit the number of recursive zoom operations to depth.

+

A value of -1 set the depth to unlimited, 0 disables zooming. If the current zoom rectangle is below depth, the plot is unzoomed.

+
Parameters:
+ + +
depthMaximum for the stack depth
+
+
+
See also:
maxStackDepth()
+
Note:
depth doesn't include the zoom base, so zoomStack().count() might be maxStackDepth() + 1.
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotZoomer::setZoomBase (bool doReplot = true) [virtual]
+
+
+

Reinitialized the zoom stack with scaleRect() as base.

+
Parameters:
+ + +
doReplotCall replot for the attached plot before initializing the zoomer with its scales. This might be necessary, when the plot is in a state with pending scale changes.
+
+
+
See also:
zoomBase(), scaleRect() QwtPlot::autoReplot(), QwtPlot::replot().
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotZoomer::setZoomBase (const QRectF & base) [virtual]
+
+
+ +

Set the initial size of the zoomer.

+

base is united with the current scaleRect() and the zoom stack is reinitalized with it as zoom base. plot is zoomed to scaleRect().

+
Parameters:
+ + +
baseZoom base
+
+
+
See also:
zoomBase(), scaleRect()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtPlotZoomer::setZoomStack (const QStack< QRectF > & zoomStack,
int zoomRectIndex = -1 
)
+
+
+ +

Assign a zoom stack.

+

In combination with other types of navigation it might be useful to modify to manipulate the complete zoom stack.

+
Parameters:
+ + + +
zoomStackNew zoom stack
zoomRectIndexIndex of the current position of zoom stack. In case of -1 the current position is at the top of the stack.
+
+
+
Note:
The zoomed signal might be emitted.
+
See also:
zoomStack(), zoomRectIndex()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotZoomer::widgetKeyPressEvent (QKeyEvent * ke) [protected, virtual]
+
+
+

Qt::Key_Plus zooms in, Qt::Key_Minus zooms out one position on the zoom stack, Qt::Key_Escape zooms out to the zoom base.

+

Changes the current position on the stack, but doesn't pop any rectangle.

+
Note:
The keys codes can be changed, using QwtEventPattern::setKeyPattern: 3, 4, 5
+ +

Reimplemented from QwtPicker.

+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotZoomer::widgetMouseReleaseEvent (QMouseEvent * me) [protected, virtual]
+
+
+

Qt::MidButton zooms out one position on the zoom stack, Qt::RightButton to the zoom base.

+

Changes the current position on the stack, but doesn't pop any rectangle.

+
Note:
The mouse events can be changed, using QwtEventPattern::setMousePattern: 2, 1
+ +

Reimplemented from QwtPicker.

+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotZoomer::zoom (const QRectF & rect) [virtual, slot]
+
+
+ +

Zoom in.

+

Clears all rectangles above the current position of the zoom stack and pushs the normalized rect on it.

+
Note:
If the maximal stack depth is reached, zoom is ignored.
+
+The zoomed signal is emitted.
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotZoomer::zoom (int offset) [virtual, slot]
+
+
+ +

Zoom in or out.

+

Activate a rectangle on the zoom stack with an offset relative to the current position. Negative values of offest will zoom out, positive zoom in. A value of 0 zooms out to the zoom base.

+
Parameters:
+ + +
offsetOffset relative to the current position of the zoom stack.
+
+
+
Note:
The zoomed signal is emitted.
+
See also:
zoomRectIndex()
+ +
+
+ +
+
+ + + + + + + +
QRectF QwtPlotZoomer::zoomBase () const
+
+
+
Returns:
Initial rectangle of the zoomer
+
See also:
setZoomBase(), zoomRect()
+ +
+
+ +
+
+ + + + + + + + +
void QwtPlotZoomer::zoomed (const QRectF & rect) [signal]
+
+
+

A signal emitting the zoomRect(), when the plot has been zoomed in or out.

+
Parameters:
+ + +
rectCurrent zoom rectangle.
+
+
+ +
+
+ +
+
+ + + + + + + +
QRectF QwtPlotZoomer::zoomRect () const
+
+
+

Rectangle at the current position on the zoom stack.

+
See also:
zoomRectIndex(), scaleRect().
+ +
+
+ +
+
+ + + + + + + +
uint QwtPlotZoomer::zoomRectIndex () const
+
+
+
Returns:
Index of current position of zoom stack.
+ +
+
+ +
+
+ + + + + + + +
const QStack< QRectF > & QwtPlotZoomer::zoomStack () const
+
+
+

Return the zoom stack. zoomStack()[0] is the zoom base, zoomStack()[1] the first zoomed rectangle.

+
See also:
setZoomStack(), zoomRectIndex()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_zoomer__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_zoomer__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_zoomer__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_zoomer__inherit__graph.map 2011-04-15 10:49:14.000000000 +0000 @@ -0,0 +1,5 @@ + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_zoomer__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_zoomer__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_zoomer__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_zoomer__inherit__graph.md5 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1 @@ +2c97b34014243c462ff10e8ade04d89c \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_zoomer__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_zoomer__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_zoomer-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_zoomer-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_zoomer-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_plot_zoomer-members.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,204 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPlotZoomer Member List

+
+
+This is the complete list of members for QwtPlotZoomer, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
accept(QPolygon &) const QwtPlotZoomer [protected, virtual]
activated(bool on)QwtPicker [signal]
ActiveOnly enum valueQwtPicker
adjustedPoints(const QPolygon &) const QwtPicker [protected, virtual]
AlwaysOff enum valueQwtPicker
AlwaysOn enum valueQwtPicker
append(const QPoint &)QwtPlotPicker [protected, virtual]
appended(const QPointF &pos)QwtPlotPicker [signal]
QwtPicker::appended(const QPoint &pos)QwtPicker [signal]
begin()QwtPlotZoomer [protected, virtual]
canvas()QwtPlotPicker
canvas() const QwtPlotPicker
changed(const QPolygon &selection)QwtPicker [signal]
CrossRubberBand enum valueQwtPicker
DisplayMode enum nameQwtPicker
drawRubberBand(QPainter *) const QwtPicker [virtual]
drawTracker(QPainter *) const QwtPicker [virtual]
EllipseRubberBand enum valueQwtPicker
end(bool ok=true)QwtPlotZoomer [protected, virtual]
eventFilter(QObject *, QEvent *)QwtPicker [virtual]
HLineRubberBand enum valueQwtPicker
initKeyPattern()QwtEventPattern
initMousePattern(int numButtons)QwtEventPattern
invTransform(const QRect &) const QwtPlotPicker [protected]
invTransform(const QPoint &) const QwtPlotPicker [protected]
isActive() const QwtPicker
isEnabled() const QwtPicker
KeepSize enum valueQwtPicker
KeyAbort enum value (defined in QwtEventPattern)QwtEventPattern
KeyDown enum value (defined in QwtEventPattern)QwtEventPattern
KeyHome enum value (defined in QwtEventPattern)QwtEventPattern
KeyLeft enum value (defined in QwtEventPattern)QwtEventPattern
keyMatch(uint pattern, const QKeyEvent *) const QwtEventPattern
keyMatch(const KeyPattern &, const QKeyEvent *) const QwtEventPattern [protected, virtual]
keyPattern() const QwtEventPattern
keyPattern()QwtEventPattern
KeyPatternCode enum nameQwtEventPattern
KeyPatternCount enum value (defined in QwtEventPattern)QwtEventPattern
KeyRedo enum value (defined in QwtEventPattern)QwtEventPattern
KeyRight enum value (defined in QwtEventPattern)QwtEventPattern
KeySelect1 enum value (defined in QwtEventPattern)QwtEventPattern
KeySelect2 enum value (defined in QwtEventPattern)QwtEventPattern
KeyUndo enum value (defined in QwtEventPattern)QwtEventPattern
KeyUp enum value (defined in QwtEventPattern)QwtEventPattern
maxStackDepth() const QwtPlotZoomer
minZoomSize() const QwtPlotZoomer [protected, virtual]
mouseMatch(uint pattern, const QMouseEvent *) const QwtEventPattern
mouseMatch(const MousePattern &, const QMouseEvent *) const QwtEventPattern [protected, virtual]
mousePattern() const QwtEventPattern
mousePattern()QwtEventPattern
MousePatternCode enum nameQwtEventPattern
MousePatternCount enum value (defined in QwtEventPattern)QwtEventPattern
MouseSelect1 enum value (defined in QwtEventPattern)QwtEventPattern
MouseSelect2 enum value (defined in QwtEventPattern)QwtEventPattern
MouseSelect3 enum value (defined in QwtEventPattern)QwtEventPattern
MouseSelect4 enum value (defined in QwtEventPattern)QwtEventPattern
MouseSelect5 enum value (defined in QwtEventPattern)QwtEventPattern
MouseSelect6 enum value (defined in QwtEventPattern)QwtEventPattern
move(const QPoint &)QwtPlotPicker [protected, virtual]
moveBy(double x, double y)QwtPlotZoomer [slot]
moved(const QPointF &pos)QwtPlotPicker [signal]
QwtPicker::moved(const QPoint &pos)QwtPicker [signal]
moveTo(const QPointF &)QwtPlotZoomer [virtual, slot]
NoRubberBand enum valueQwtPicker
parentWidget()QwtPicker
parentWidget() const QwtPicker
pickedPoints() const QwtPicker [protected]
pickRect() const QwtPicker [virtual]
plot()QwtPlotPicker
plot() const QwtPlotPicker
PolygonRubberBand enum valueQwtPicker
QwtEventPattern()QwtEventPattern
QwtPicker(QWidget *parent)QwtPicker [explicit]
QwtPicker(RubberBand rubberBand, DisplayMode trackerMode, QWidget *)QwtPicker [explicit]
QwtPlotPicker(QwtPlotCanvas *)QwtPlotPicker [explicit]
QwtPlotPicker(int xAxis, int yAxis, QwtPlotCanvas *)QwtPlotPicker [explicit]
QwtPlotPicker(int xAxis, int yAxis, RubberBand rubberBand, DisplayMode trackerMode, QwtPlotCanvas *)QwtPlotPicker [explicit]
QwtPlotZoomer(QwtPlotCanvas *, bool doReplot=true)QwtPlotZoomer [explicit]
QwtPlotZoomer(int xAxis, int yAxis, QwtPlotCanvas *, bool doReplot=true)QwtPlotZoomer [explicit]
RectRubberBand enum valueQwtPicker
remove()QwtPicker [protected, virtual]
removed(const QPoint &pos)QwtPicker [signal]
rescale()QwtPlotZoomer [protected, virtual]
reset()QwtPicker [protected, virtual]
resizeMode() const QwtPicker
ResizeMode enum nameQwtPicker
rubberBand() const QwtPicker
RubberBand enum nameQwtPicker
rubberBandPen() const QwtPicker
rubberBandWidget() const QwtPicker [protected]
scaleRect() const QwtPlotPicker [protected]
selected(const QPointF &pos)QwtPlotPicker [signal]
selected(const QRectF &rect)QwtPlotPicker [signal]
selected(const QVector< QPointF > &pa)QwtPlotPicker [signal]
QwtPicker::selected(const QPolygon &polygon)QwtPicker [signal]
selection() const QwtPicker
setAxis(int xAxis, int yAxis)QwtPlotZoomer [virtual]
setEnabled(bool)QwtPicker [slot]
setKeyPattern(uint pattern, int key, int state=Qt::NoButton)QwtEventPattern
setKeyPattern(const QVector< KeyPattern > &)QwtEventPattern
setMaxStackDepth(int)QwtPlotZoomer
setMousePattern(uint pattern, int button, int state=Qt::NoButton)QwtEventPattern
setMousePattern(const QVector< MousePattern > &)QwtEventPattern
setResizeMode(ResizeMode)QwtPicker
setRubberBand(RubberBand)QwtPicker
setRubberBandPen(const QPen &)QwtPicker
setStateMachine(QwtPickerMachine *)QwtPicker
setTrackerFont(const QFont &)QwtPicker
setTrackerMode(DisplayMode)QwtPicker
setTrackerPen(const QPen &)QwtPicker
setZoomBase(bool doReplot=true)QwtPlotZoomer [virtual]
setZoomBase(const QRectF &)QwtPlotZoomer [virtual]
setZoomStack(const QStack< QRectF > &, int zoomRectIndex=-1)QwtPlotZoomer
stateMachine() const QwtPicker
stateMachine()QwtPicker
Stretch enum valueQwtPicker
stretchSelection(const QSize &oldSize, const QSize &newSize)QwtPicker [protected, virtual]
trackerFont() const QwtPicker
trackerMode() const QwtPicker
trackerPen() const QwtPicker
trackerPosition() const QwtPicker
trackerRect(const QFont &) const QwtPicker [virtual]
trackerText(const QPoint &) const QwtPlotPicker [protected, virtual]
trackerTextF(const QPointF &) const QwtPlotPicker [protected, virtual]
trackerWidget() const QwtPicker [protected]
transform(const QRectF &) const QwtPlotPicker [protected]
transform(const QPointF &) const QwtPlotPicker [protected]
transition(const QEvent *)QwtPicker [protected, virtual]
updateDisplay()QwtPicker [protected, virtual]
UserRubberBand enum valueQwtPicker
VLineRubberBand enum valueQwtPicker
widgetEnterEvent(QEvent *)QwtPicker [protected, virtual]
widgetKeyPressEvent(QKeyEvent *)QwtPlotZoomer [protected, virtual]
widgetKeyReleaseEvent(QKeyEvent *)QwtPicker [protected, virtual]
widgetLeaveEvent(QEvent *)QwtPicker [protected, virtual]
widgetMouseDoubleClickEvent(QMouseEvent *)QwtPicker [protected, virtual]
widgetMouseMoveEvent(QMouseEvent *)QwtPicker [protected, virtual]
widgetMousePressEvent(QMouseEvent *)QwtPicker [protected, virtual]
widgetMouseReleaseEvent(QMouseEvent *)QwtPlotZoomer [protected, virtual]
widgetWheelEvent(QWheelEvent *)QwtPicker [protected, virtual]
xAxis() const QwtPlotPicker
yAxis() const QwtPlotPicker
zoom(const QRectF &)QwtPlotZoomer [virtual, slot]
zoom(int up)QwtPlotZoomer [virtual, slot]
zoomBase() const QwtPlotZoomer
zoomed(const QRectF &rect)QwtPlotZoomer [signal]
zoomRect() const QwtPlotZoomer
zoomRectIndex() const QwtPlotZoomer
zoomStack() const QwtPlotZoomer
~QwtEventPattern()QwtEventPattern [virtual]
~QwtPicker()QwtPicker [virtual]
~QwtPlotPicker()QwtPlotPicker [virtual]
~QwtPlotZoomer() (defined in QwtPlotZoomer)QwtPlotZoomer [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point3_d.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point3_d.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point3_d.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point3_d.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,411 @@ + + + + +Qwt User's Guide: QwtPoint3D Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPoint3D Class Reference

+
+
+ +

QwtPoint3D class defines a 3D point in double coordinates. +More...

+ +

#include <qwt_point_3d.h>

+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 QwtPoint3D ()
 QwtPoint3D (double x, double y, double z)
 QwtPoint3D (const QwtPoint3D &)
 QwtPoint3D (const QPointF &)
bool isNull () const
double x () const
double y () const
double z () const
double & rx ()
double & ry ()
double & rz ()
void setX (double x)
void setY (double y)
void setZ (double y)
QPointF toPoint () const
bool operator== (const QwtPoint3D &) const
bool operator!= (const QwtPoint3D &) const
+

Detailed Description

+

QwtPoint3D class defines a 3D point in double coordinates.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtPoint3D::QwtPoint3D () [inline]
+
+
+

Constructs a null point.

+
See also:
isNull()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
QwtPoint3D::QwtPoint3D (double x,
double y,
double z = 0.0 
) [inline]
+
+
+ +

Constructs a point with coordinates specified by x, y and z.

+ +
+
+ +
+
+ + + + + + + + +
QwtPoint3D::QwtPoint3D (const QwtPoint3Dother) [inline]
+
+
+

Copy constructor. Constructs a point using the values of the point specified.

+ +
+
+ +
+
+ + + + + + + + +
QwtPoint3D::QwtPoint3D (const QPointF & other) [inline]
+
+
+

Constructs a point with x and y coordinates from a 2D point, and a z coordinate of 0.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
bool QwtPoint3D::isNull () const [inline]
+
+
+

Returns true if the point is null; otherwise returns false.

+

A point is considered to be null if x, y and z-coordinates are equal to zero.

+ +
+
+ +
+
+ + + + + + + + +
bool QwtPoint3D::operator!= (const QwtPoint3Dother) const [inline]
+
+
+ +

Returns true if this rect and other are different; otherwise returns false.

+ +
+
+ +
+
+ + + + + + + + +
bool QwtPoint3D::operator== (const QwtPoint3Dother) const [inline]
+
+
+ +

Returns true if this point and other are equal; otherwise returns false.

+ +
+
+ +
+
+ + + + + + + +
double & QwtPoint3D::rx () [inline]
+
+
+ +

Returns a reference to the x-coordinate of the point.

+ +
+
+ +
+
+ + + + + + + +
double & QwtPoint3D::ry () [inline]
+
+
+ +

Returns a reference to the y-coordinate of the point.

+ +
+
+ +
+
+ + + + + + + +
double & QwtPoint3D::rz () [inline]
+
+
+ +

Returns a reference to the z-coordinate of the point.

+ +
+
+ +
+
+ + + + + + + + +
void QwtPoint3D::setX (double x) [inline]
+
+
+ +

Sets the x-coordinate of the point to the value specified by x.

+ +
+
+ +
+
+ + + + + + + + +
void QwtPoint3D::setY (double y) [inline]
+
+
+ +

Sets the y-coordinate of the point to the value specified by y.

+ +
+
+ +
+
+ + + + + + + + +
void QwtPoint3D::setZ (double y) [inline]
+
+
+ +

Sets the z-coordinate of the point to the value specified by z.

+ +
+
+ +
+
+ + + + + + + +
QPointF QwtPoint3D::toPoint () const [inline]
+
+
+

Rounds 2D point, where the z coordinate is dropped.

+ +
+
+ +
+
+ + + + + + + +
double QwtPoint3D::x () const [inline]
+
+
+ +

Returns the x-coordinate of the point.

+ +
+
+ +
+
+ + + + + + + +
double QwtPoint3D::y () const [inline]
+
+
+ +

Returns the y-coordinate of the point.

+ +
+
+ +
+
+ + + + + + + +
double QwtPoint3D::z () const [inline]
+
+
+ +

Returns the z-coordinate of the point.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point3_d-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point3_d-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point3_d-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point3_d-members.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,68 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPoint3D Member List

+
+
+This is the complete list of members for QwtPoint3D, including all inherited members. + + + + + + + + + + + + + + + + + +
isNull() const QwtPoint3D [inline]
operator!=(const QwtPoint3D &) const QwtPoint3D [inline]
operator==(const QwtPoint3D &) const QwtPoint3D [inline]
QwtPoint3D()QwtPoint3D [inline]
QwtPoint3D(double x, double y, double z)QwtPoint3D [inline]
QwtPoint3D(const QwtPoint3D &)QwtPoint3D [inline]
QwtPoint3D(const QPointF &)QwtPoint3D [inline]
rx()QwtPoint3D [inline]
ry()QwtPoint3D [inline]
rz()QwtPoint3D [inline]
setX(double x)QwtPoint3D [inline]
setY(double y)QwtPoint3D [inline]
setZ(double y)QwtPoint3D [inline]
toPoint() const QwtPoint3D [inline]
x() const QwtPoint3D [inline]
y() const QwtPoint3D [inline]
z() const QwtPoint3D [inline]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point3_d_series_data.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point3_d_series_data.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point3_d_series_data.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point3_d_series_data.html 2011-04-15 10:49:24.000000000 +0000 @@ -0,0 +1,122 @@ + + + + +Qwt User's Guide: QwtPoint3DSeriesData Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPoint3DSeriesData Class Reference

+
+
+ +

Interface for iterating over an array of 3D points. +More...

+ +

#include <qwt_series_data.h>

+
+Inheritance diagram for QwtPoint3DSeriesData:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + +

+Public Member Functions

 QwtPoint3DSeriesData (const QVector< QwtPoint3D > &=QVector< QwtPoint3D >())
virtual QRectF boundingRect () const
+

Detailed Description

+

Interface for iterating over an array of 3D points.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtPoint3DSeriesData::QwtPoint3DSeriesData (const QVector< QwtPoint3D > & samples = QVector<QwtPoint3D>())
+
+
+

Constructor

+
Parameters:
+ + +
samplesSamples
+
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
QRectF QwtPoint3DSeriesData::boundingRect () const [virtual]
+
+
+ +

Calculate the bounding rect.

+

The bounding rectangle is calculated once by iterating over all points and is stored for all following requests.

+
Returns:
Bounding rectangle
+ +

Implements QwtSeriesData< QwtPoint3D >.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point3_d_series_data__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point3_d_series_data__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point3_d_series_data__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point3_d_series_data__inherit__graph.map 2011-04-15 10:49:14.000000000 +0000 @@ -0,0 +1,6 @@ + + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point3_d_series_data__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point3_d_series_data__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point3_d_series_data__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point3_d_series_data__inherit__graph.md5 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1 @@ +7dc4a5389278259d41a13916f6f6de38 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point3_d_series_data__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point3_d_series_data__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point3_d_series_data-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point3_d_series_data-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point3_d_series_data-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point3_d_series_data-members.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,64 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPoint3DSeriesData Member List

+
+ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_array_data.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_array_data.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_array_data.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_array_data.html 2011-04-15 10:49:24.000000000 +0000 @@ -0,0 +1,262 @@ + + + + +Qwt User's Guide: QwtPointArrayData Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPointArrayData Class Reference

+
+
+ +

Interface for iterating over two QVector<double> objects. +More...

+ +

#include <qwt_series_data.h>

+
+Inheritance diagram for QwtPointArrayData:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + +

+Public Member Functions

 QwtPointArrayData (const QVector< double > &x, const QVector< double > &y)
 QwtPointArrayData (const double *x, const double *y, size_t size)
virtual QRectF boundingRect () const
virtual size_t size () const
virtual QPointF sample (size_t i) const
const QVector< double > & xData () const
const QVector< double > & yData () const
+

Detailed Description

+

Interface for iterating over two QVector<double> objects.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
QwtPointArrayData::QwtPointArrayData (const QVector< double > & x,
const QVector< double > & y 
)
+
+
+

Constructor

+
Parameters:
+ + + +
xArray of x values
yArray of y values
+
+
+
See also:
QwtPlotCurve::setData(), QwtPlotCurve::setSamples()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
QwtPointArrayData::QwtPointArrayData (const double * x,
const double * y,
size_t size 
)
+
+
+

Constructor

+
Parameters:
+ + + + +
xArray of x values
yArray of y values
sizeSize of the x and y arrays
+
+
+
See also:
QwtPlotCurve::setData(), QwtPlotCurve::setSamples()
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
QRectF QwtPointArrayData::boundingRect () const [virtual]
+
+
+ +

Calculate the bounding rect.

+

The bounding rectangle is calculated once by iterating over all points and is stored for all following requests.

+
Returns:
Bounding rectangle
+ +

Implements QwtSeriesData< QPointF >.

+ +
+
+ +
+
+ + + + + + + + +
QPointF QwtPointArrayData::sample (size_t i) const [virtual]
+
+
+

Return the sample at position i

+
Parameters:
+ + +
iIndex
+
+
+
Returns:
Sample at position i
+ +

Implements QwtSeriesData< QPointF >.

+ +
+
+ +
+
+ + + + + + + +
size_t QwtPointArrayData::size () const [virtual]
+
+
+
Returns:
Size of the data set
+ +

Implements QwtSeriesData< QPointF >.

+ +
+
+ +
+
+ + + + + + + +
const QVector< double > & QwtPointArrayData::xData () const
+
+
+
Returns:
Array of the x-values
+ +
+
+ +
+
+ + + + + + + +
const QVector< double > & QwtPointArrayData::yData () const
+
+
+
Returns:
Array of the y-values
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_array_data__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_array_data__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_array_data__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_array_data__inherit__graph.map 2011-04-15 10:49:14.000000000 +0000 @@ -0,0 +1,4 @@ + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_array_data__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_array_data__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_array_data__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_array_data__inherit__graph.md5 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1 @@ +37ab9b496130faede257616bc9142a0f \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_array_data__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_array_data__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_array_data-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_array_data-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_array_data-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_array_data-members.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,62 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPointArrayData Member List

+
+
+This is the complete list of members for QwtPointArrayData, including all inherited members. + + + + + + + + + + + +
boundingRect() const QwtPointArrayData [virtual]
d_boundingRectQwtSeriesData< QPointF > [mutable, protected]
QwtPointArrayData(const QVector< double > &x, const QVector< double > &y)QwtPointArrayData
QwtPointArrayData(const double *x, const double *y, size_t size)QwtPointArrayData
QwtSeriesData()QwtSeriesData< QPointF >
sample(size_t i) const QwtPointArrayData [virtual]
setRectOfInterest(const QRectF &)QwtSeriesData< QPointF > [virtual]
size() const QwtPointArrayData [virtual]
xData() const QwtPointArrayData
yData() const QwtPointArrayData
~QwtSeriesData()QwtSeriesData< QPointF > [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_polar.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_polar.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_polar.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_polar.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,434 @@ + + + + +Qwt User's Guide: QwtPointPolar Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPointPolar Class Reference

+
+
+ +

A point in polar coordinates. +More...

+ +

#include <qwt_point_polar.h>

+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 QwtPointPolar ()
 QwtPointPolar (double azimuth, double radius)
 QwtPointPolar (const QwtPointPolar &)
 QwtPointPolar (const QPointF &)
void setPoint (const QPointF &)
QPointF toPoint () const
bool isValid () const
bool isNull () const
double radius () const
double azimuth () const
double & rRadius ()
double & rAzimuth ()
void setRadius (double)
void setAzimuth (double)
bool operator== (const QwtPointPolar &) const
bool operator!= (const QwtPointPolar &) const
QwtPointPolar normalized () const
+

Detailed Description

+

A point in polar coordinates.

+

In polar coordinates a point is determined by an angle and a distance. See http://en.wikipedia.org/wiki/Polar_coordinate_system

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtPointPolar::QwtPointPolar () [inline]
+
+
+

Constructs a null point, with a radius and azimuth set to 0.0.

+
See also:
QPointF::isNull
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
QwtPointPolar::QwtPointPolar (double azimuth,
double radius 
) [inline]
+
+
+

Constructs a point with coordinates specified by radius and azimuth.

+
Parameters:
+ + + +
azimuthAzimuth
radiusRadius
+
+
+ +
+
+ +
+
+ + + + + + + + +
QwtPointPolar::QwtPointPolar (const QwtPointPolarother) [inline]
+
+
+

Constructs a point using the values of the point specified.

+
Parameters:
+ + +
otherOther point
+
+
+ +
+
+ +
+
+ + + + + + + + +
QwtPointPolar::QwtPointPolar (const QPointF & p)
+
+
+

Convert and assign values from a point in Cartesian coordinates

+
Parameters:
+ + +
pPoint in Cartesian coordinates
+
+
+
See also:
setPoint(), toPoint()
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
double QwtPointPolar::azimuth () const [inline]
+
+
+ +

Returns the azimuth.

+ +
+
+ +
+
+ + + + + + + +
bool QwtPointPolar::isNull () const [inline]
+
+
+ +

Returns true if radius() >= 0.0.

+ +
+
+ +
+
+ + + + + + + +
bool QwtPointPolar::isValid () const [inline]
+
+
+ +

Returns true if radius() >= 0.0.

+ +
+
+ +
+
+ + + + + + + +
QwtPointPolar QwtPointPolar::normalized () const
+
+
+

Normalize radius and azimuth

+

When the radius is < 0.0 it is set to 0.0. The azimuth is a value >= 0.0 and < 2 * M_PI.

+ +
+
+ +
+
+ + + + + + + + +
bool QwtPointPolar::operator!= (const QwtPointPolarother) const
+
+
+

Returns true if point1 is not equal to point2; otherwise returns false.

+

Two points are equal to each other if radius and azimuth-coordinates are the same. Points are not equal, when the azimuth differs, but other.azimuth() == azimuth() % (2 * PI).

+
See also:
normalized()
+ +
+
+ +
+
+ + + + + + + + +
bool QwtPointPolar::operator== (const QwtPointPolarother) const
+
+
+

Returns true if point1 is equal to point2; otherwise returns false.

+

Two points are equal to each other if radius and azimuth-coordinates are the same. Points are not equal, when the azimuth differs, but other.azimuth() == azimuth() % (2 * PI).

+
See also:
normalized()
+ +
+
+ +
+
+ + + + + + + +
double QwtPointPolar::radius () const [inline]
+
+
+ +

Returns the radius.

+ +
+
+ +
+
+ + + + + + + +
double & QwtPointPolar::rAzimuth () [inline]
+
+
+ +

Returns the azimuth.

+ +
+
+ +
+
+ + + + + + + +
double & QwtPointPolar::rRadius () [inline]
+
+
+ +

Returns the radius.

+ +
+
+ +
+
+ + + + + + + + +
void QwtPointPolar::setAzimuth (double azimuth) [inline]
+
+
+ +

Sets the atimuth to atimuth.

+ +
+
+ +
+
+ + + + + + + + +
void QwtPointPolar::setPoint (const QPointF & p)
+
+
+

Convert and assign values from a point in Cartesian coordinates

+
Parameters:
+ + +
pPoint in Cartesian coordinates
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtPointPolar::setRadius (double radius) [inline]
+
+
+ +

Sets the radius to radius.

+ +
+
+ +
+
+ + + + + + + +
QPointF QwtPointPolar::toPoint () const
+
+
+

Convert and return values in Cartesian coordinates

+
Note:
Invalid or null points will be returned as QPointF(0.0, 0.0)
+
See also:
isValid(), isNull()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_polar-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_polar-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_polar-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_polar-members.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,68 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPointPolar Member List

+
+
+This is the complete list of members for QwtPointPolar, including all inherited members. + + + + + + + + + + + + + + + + + +
azimuth() const QwtPointPolar [inline]
isNull() const QwtPointPolar [inline]
isValid() const QwtPointPolar [inline]
normalized() const QwtPointPolar
operator!=(const QwtPointPolar &) const QwtPointPolar
operator==(const QwtPointPolar &) const QwtPointPolar
QwtPointPolar()QwtPointPolar [inline]
QwtPointPolar(double azimuth, double radius)QwtPointPolar [inline]
QwtPointPolar(const QwtPointPolar &)QwtPointPolar [inline]
QwtPointPolar(const QPointF &)QwtPointPolar
radius() const QwtPointPolar [inline]
rAzimuth()QwtPointPolar [inline]
rRadius()QwtPointPolar [inline]
setAzimuth(double)QwtPointPolar [inline]
setPoint(const QPointF &)QwtPointPolar
setRadius(double)QwtPointPolar [inline]
toPoint() const QwtPointPolar
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_series_data.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_series_data.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_series_data.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_series_data.html 2011-04-15 10:49:24.000000000 +0000 @@ -0,0 +1,122 @@ + + + + +Qwt User's Guide: QwtPointSeriesData Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtPointSeriesData Class Reference

+
+
+ +

Interface for iterating over an array of points. +More...

+ +

#include <qwt_series_data.h>

+
+Inheritance diagram for QwtPointSeriesData:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + +

+Public Member Functions

 QwtPointSeriesData (const QVector< QPointF > &=QVector< QPointF >())
virtual QRectF boundingRect () const
+

Detailed Description

+

Interface for iterating over an array of points.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtPointSeriesData::QwtPointSeriesData (const QVector< QPointF > & samples = QVector<QPointF>())
+
+
+

Constructor

+
Parameters:
+ + +
samplesSamples
+
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
QRectF QwtPointSeriesData::boundingRect () const [virtual]
+
+
+ +

Calculate the bounding rect.

+

The bounding rectangle is calculated once by iterating over all points and is stored for all following requests.

+
Returns:
Bounding rectangle
+ +

Implements QwtSeriesData< QPointF >.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_series_data__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_series_data__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_series_data__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_series_data__inherit__graph.map 2011-04-15 10:49:14.000000000 +0000 @@ -0,0 +1,6 @@ + + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_series_data__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_series_data__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_series_data__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_series_data__inherit__graph.md5 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1 @@ +50cfa869502b7f8ed1dbf0d4c3642f5b \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_series_data__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_series_data__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_series_data-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_series_data-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_series_data-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_point_series_data-members.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,64 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtPointSeriesData Member List

+
+
+This is the complete list of members for QwtPointSeriesData, including all inherited members. + + + + + + + + + + + + + +
boundingRect() const QwtPointSeriesData [virtual]
d_boundingRectQwtSeriesData< QPointF > [mutable, protected]
d_samplesQwtArraySeriesData< QPointF > [protected]
QwtArraySeriesData()QwtArraySeriesData< QPointF >
QwtArraySeriesData(const QVector< QPointF > &)QwtArraySeriesData< QPointF >
QwtPointSeriesData(const QVector< QPointF > &=QVector< QPointF >())QwtPointSeriesData
QwtSeriesData()QwtSeriesData< QPointF >
sample(size_t) constQwtArraySeriesData< QPointF > [virtual]
samples() constQwtArraySeriesData< QPointF >
setRectOfInterest(const QRectF &)QwtSeriesData< QPointF > [virtual]
setSamples(const QVector< QPointF > &)QwtArraySeriesData< QPointF >
size() constQwtArraySeriesData< QPointF > [virtual]
~QwtSeriesData()QwtSeriesData< QPointF > [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_raster_data.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_raster_data.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_raster_data.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_raster_data.html 2011-04-15 10:49:24.000000000 +0000 @@ -0,0 +1,417 @@ + + + + +Qwt User's Guide: QwtRasterData Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtRasterData Class Reference

+
+
+ +

QwtRasterData defines an interface to any type of raster data. +More...

+ +

#include <qwt_raster_data.h>

+
+Inheritance diagram for QwtRasterData:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + +

+Public Types

enum  ConrecFlag {
+  IgnoreAllVerticesOnLevel = 0x01, +
+  IgnoreOutOfRange = 0x02 +
+ }
typedef QMap< double, QPolygonF > ContourLines
typedef QFlags< ConrecFlagConrecFlags

+Public Member Functions

 QwtRasterData ()
virtual ~QwtRasterData ()
virtual void setInterval (Qt::Axis, const QwtInterval &)
const QwtIntervalinterval (Qt::Axis) const
virtual QRectF pixelHint (const QRectF &) const
virtual void initRaster (const QRectF &, const QSize &raster)
virtual void discardRaster ()
virtual double value (double x, double y) const =0
virtual ContourLines contourLines (const QRectF &rect, const QSize &raster, const QList< double > &levels, ConrecFlags) const
+

Detailed Description

+

QwtRasterData defines an interface to any type of raster data.

+

QwtRasterData is an abstract interface, that is used by QwtPlotRasterItem to find the values at the pixels of its raster.

+

Often a raster item is used to display values from a matrix. Then the derived raster data class needs to implement some sort of resampling, that maps the raster of the matrix into the requested raster of the raster item ( depending on resolution and scales of the canvas ).

+

Member Typedef Documentation

+ +
+
+ + + + +
typedef QFlags<ConrecFlag> QwtRasterData::ConrecFlags
+
+
+ +

Flags to modify the contour algorithm.

+ +
+
+ +
+
+ + + + +
typedef QMap<double, QPolygonF> QwtRasterData::ContourLines
+
+
+ +

Contour lines.

+ +
+
+

Member Enumeration Documentation

+ +
+
+ + + + +
enum QwtRasterData::ConrecFlag
+
+
+ +

Flags to modify the contour algorithm.

+
Enumerator:
+ + +
IgnoreAllVerticesOnLevel  +

Ignore all verices on the same level.

+
IgnoreOutOfRange  +

Ignore all values, that are out of range.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtRasterData::QwtRasterData ()
+
+
+ +

Constructor.

+ +
+
+ +
+
+ + + + + + + +
QwtRasterData::~QwtRasterData () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
QwtRasterData::ContourLines QwtRasterData::contourLines (const QRectF & rect,
const QSize & raster,
const QList< double > & levels,
ConrecFlags flags 
) const [virtual]
+
+
+

Calculate contour lines

+

An adaption of CONREC, a simple contouring algorithm. http://local.wasp.uwa.edu.au/~pbourke/papers/conrec/

+ +
+
+ +
+
+ + + + + + + +
void QwtRasterData::discardRaster () [virtual]
+
+
+ +

Discard a raster.

+

After the composition of an image QwtPlotSpectrogram calls discardRaster().

+

The default implementation does nothing, but if data has been loaded in initRaster(), it could deleted now.

+
See also:
initRaster(), value()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtRasterData::initRaster (const QRectF & area,
const QSize & raster 
) [virtual]
+
+
+ +

Initialize a raster.

+

Before the composition of an image QwtPlotSpectrogram calls initRaster, announcing the area and its resolution that will be requested.

+

The default implementation does nothing, but for data sets that are stored in files, it might be good idea to reimplement initRaster, where the data is resampled and loaded into memory.

+
Parameters:
+ + + +
areaArea of the raster
rasterNumber of horizontal and vertical pixels
+
+
+
See also:
initRaster(), value()
+ +
+
+ +
+
+ + + + + + + + +
const QwtInterval & QwtRasterData::interval (Qt::Axis axis) const [inline]
+
+
+
Returns:
Bounding interval for a axis
+
See also:
setInterval
+ +
+
+ +
+
+ + + + + + + + +
QRectF QwtRasterData::pixelHint (const QRectF & area) const [virtual]
+
+
+ +

Pixel hint.

+

pixelHint() returns the geometry of a pixel, that can be used to calculate the resolution and alignment of the plot item, that is representing the data.

+

Width and height of the hint need to be the horizontal and vertical distances between 2 neighboured points. The center of the hint has to be the position of any point ( it doesn't matter which one ).

+

An empty hint indicates, that there are values for any detail level.

+

Limiting the resolution of the image might significantly improve the performance and heavily reduce the amount of memory when rendering a QImage from the raster data.

+

The default implementation returns an empty rectangle recommending to render in target device ( f.e. screen ) resolution.

+
Parameters:
+ + +
areaIn most implementations the resolution of the data doesn't depend on the requested area.
+
+
+
Returns:
Bounding rectangle of a pixel
+ +

Reimplemented in QwtMatrixRasterData.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtRasterData::setInterval (Qt::Axis axis,
const QwtIntervalinterval 
) [virtual]
+
+
+

Set the bounding interval for the x, y or z coordinates.

+
Parameters:
+ + + +
axisAxis
intervalBounding interval
+
+
+
See also:
interval()
+ +

Reimplemented in QwtMatrixRasterData.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
virtual double QwtRasterData::value (double x,
double y 
) const [pure virtual]
+
+
+
Returns:
the value at a raster position
+
Parameters:
+ + + +
xX value in plot coordinates
yY value in plot coordinates
+
+
+ +

Implemented in QwtMatrixRasterData.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_raster_data__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_raster_data__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_raster_data__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_raster_data__inherit__graph.map 2011-04-15 10:49:15.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_raster_data__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_raster_data__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_raster_data__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_raster_data__inherit__graph.md5 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1 @@ +da1cd80c423e8e00107c1cb9d961956d \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_raster_data__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_raster_data__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_raster_data-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_raster_data-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_raster_data-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_raster_data-members.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,65 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtRasterData Member List

+
+
+This is the complete list of members for QwtRasterData, including all inherited members. + + + + + + + + + + + + + + +
ConrecFlag enum nameQwtRasterData
ConrecFlags typedefQwtRasterData
ContourLines typedefQwtRasterData
contourLines(const QRectF &rect, const QSize &raster, const QList< double > &levels, ConrecFlags) const QwtRasterData [virtual]
discardRaster()QwtRasterData [virtual]
IgnoreAllVerticesOnLevel enum valueQwtRasterData
IgnoreOutOfRange enum valueQwtRasterData
initRaster(const QRectF &, const QSize &raster)QwtRasterData [virtual]
interval(Qt::Axis) const QwtRasterData [inline]
pixelHint(const QRectF &) const QwtRasterData [virtual]
QwtRasterData()QwtRasterData
setInterval(Qt::Axis, const QwtInterval &)QwtRasterData [virtual]
value(double x, double y) const =0QwtRasterData [pure virtual]
~QwtRasterData()QwtRasterData [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_rich_text_engine.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_rich_text_engine.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_rich_text_engine.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_rich_text_engine.html 2011-04-15 10:49:24.000000000 +0000 @@ -0,0 +1,337 @@ + + + + +Qwt User's Guide: QwtRichTextEngine Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtRichTextEngine Class Reference

+
+
+ +

A text engine for Qt rich texts. +More...

+ +

#include <qwt_text_engine.h>

+
+Inheritance diagram for QwtRichTextEngine:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + +

+Public Member Functions

 QwtRichTextEngine ()
virtual double heightForWidth (const QFont &font, int flags, const QString &text, double width) const
virtual QSizeF textSize (const QFont &font, int flags, const QString &text) const
virtual void draw (QPainter *painter, const QRectF &rect, int flags, const QString &text) const
virtual bool mightRender (const QString &) const
virtual void textMargins (const QFont &, const QString &, double &left, double &right, double &top, double &bottom) const
+

Detailed Description

+

A text engine for Qt rich texts.

+

QwtRichTextEngine renders Qt rich texts using the classes of the Scribe framework of Qt.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtRichTextEngine::QwtRichTextEngine ()
+
+
+ +

Constructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtRichTextEngine::draw (QPainter * painter,
const QRectF & rect,
int flags,
const QString & text 
) const [virtual]
+
+
+

Draw the text in a clipping rectangle

+
Parameters:
+ + + + + +
painterPainter
rectClipping rectangle
flagsBitwise OR of the flags like in for QPainter::drawText
textText to be rendered
+
+
+ +

Implements QwtTextEngine.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
double QwtRichTextEngine::heightForWidth (const QFont & font,
int flags,
const QString & text,
double width 
) const [virtual]
+
+
+

Find the height for a given width

+
Parameters:
+ + + + + +
fontFont of the text
flagsBitwise OR of the flags used like in QPainter::drawText
textText to be rendered
widthWidth
+
+
+
Returns:
Calculated height
+ +

Implements QwtTextEngine.

+ +
+
+ +
+
+ + + + + + + + +
bool QwtRichTextEngine::mightRender (const QString & text) const [virtual]
+
+
+

Test if a string can be rendered by this text engine

+
Parameters:
+ + +
textText to be tested
+
+
+
Returns:
QStyleSheet::mightBeRichText(text);
+ +

Implements QwtTextEngine.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtRichTextEngine::textMargins (const QFont & ,
const QString & ,
double & left,
double & right,
double & top,
double & bottom 
) const [virtual]
+
+
+

Return margins around the texts

+
Parameters:
+ + + + + +
leftReturn 0
rightReturn 0
topReturn 0
bottomReturn 0
+
+
+ +

Implements QwtTextEngine.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
QSizeF QwtRichTextEngine::textSize (const QFont & font,
int flags,
const QString & text 
) const [virtual]
+
+
+

Returns the size, that is needed to render text

+
Parameters:
+ + + + +
fontFont of the text
flagsBitwise OR of the flags used like in QPainter::drawText
textText to be rendered
+
+
+
Returns:
Caluclated size
+ +

Implements QwtTextEngine.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_rich_text_engine__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_rich_text_engine__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_rich_text_engine__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_rich_text_engine__inherit__graph.map 2011-04-15 10:49:15.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_rich_text_engine__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_rich_text_engine__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_rich_text_engine__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_rich_text_engine__inherit__graph.md5 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1 @@ +f086abe66b281d8ab439dfaac1140ea4 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_rich_text_engine__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_rich_text_engine__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_rich_text_engine-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_rich_text_engine-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_rich_text_engine-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_rich_text_engine-members.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,59 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtRichTextEngine Member List

+
+
+This is the complete list of members for QwtRichTextEngine, including all inherited members. + + + + + + + + +
draw(QPainter *painter, const QRectF &rect, int flags, const QString &text) const QwtRichTextEngine [virtual]
heightForWidth(const QFont &font, int flags, const QString &text, double width) const QwtRichTextEngine [virtual]
mightRender(const QString &) const QwtRichTextEngine [virtual]
QwtRichTextEngine()QwtRichTextEngine
QwtTextEngine()QwtTextEngine [protected]
textMargins(const QFont &, const QString &, double &left, double &right, double &top, double &bottom) const QwtRichTextEngine [virtual]
textSize(const QFont &font, int flags, const QString &text) const QwtRichTextEngine [virtual]
~QwtTextEngine()QwtTextEngine [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_round_scale_draw.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_round_scale_draw.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_round_scale_draw.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_round_scale_draw.html 2011-04-15 10:49:24.000000000 +0000 @@ -0,0 +1,430 @@ + + + + +Qwt User's Guide: QwtRoundScaleDraw Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtRoundScaleDraw Class Reference

+
+
+ +

A class for drawing round scales. +More...

+ +

#include <qwt_round_scale_draw.h>

+
+Inheritance diagram for QwtRoundScaleDraw:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + +

+Public Member Functions

 QwtRoundScaleDraw ()
virtual ~QwtRoundScaleDraw ()
void setRadius (int radius)
int radius () const
void moveCenter (double x, double y)
void moveCenter (const QPointF &)
QPointF center () const
void setAngleRange (double angle1, double angle2)
virtual double extent (const QFont &) const

+Protected Member Functions

virtual void drawTick (QPainter *p, double val, double len) const
virtual void drawBackbone (QPainter *p) const
virtual void drawLabel (QPainter *p, double val) const
+

Detailed Description

+

A class for drawing round scales.

+

QwtRoundScaleDraw can be used to draw round scales. The circle segment can be adjusted by QwtRoundScaleDraw::setAngleRange(). The geometry of the scale can be specified with QwtRoundScaleDraw::moveCenter() and QwtRoundScaleDraw::setRadius().

+

After a scale division has been specified as a QwtScaleDiv object using QwtAbstractScaleDraw::setScaleDiv(const QwtScaleDiv &s), the scale can be drawn with the QwtAbstractScaleDraw::draw() member.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtRoundScaleDraw::QwtRoundScaleDraw ()
+
+
+ +

Constructor.

+

The range of the scale is initialized to [0, 100], The center is set to (50, 50) with a radius of 50. The angle range is set to [-135, 135].

+ +
+
+ +
+
+ + + + + + + +
QwtRoundScaleDraw::~QwtRoundScaleDraw () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
QPointF QwtRoundScaleDraw::center () const
+
+
+ +

Get the center of the scale.

+ +
+
+ +
+
+ + + + + + + + +
void QwtRoundScaleDraw::drawBackbone (QPainter * painter) const [protected, virtual]
+
+
+

Draws the baseline of the scale

+
Parameters:
+ + +
painterPainter
+
+
+
See also:
drawTick(), drawLabel()
+ +

Implements QwtAbstractScaleDraw.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtRoundScaleDraw::drawLabel (QPainter * painter,
double value 
) const [protected, virtual]
+
+
+

Draws the label for a major scale tick

+
Parameters:
+ + + +
painterPainter
valueValue
+
+
+
See also:
drawTick(), drawBackbone()
+ +

Implements QwtAbstractScaleDraw.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtRoundScaleDraw::drawTick (QPainter * painter,
double value,
double len 
) const [protected, virtual]
+
+
+

Draw a tick

+
Parameters:
+ + + + +
painterPainter
valueValue of the tick
lenLenght of the tick
+
+
+
See also:
drawBackbone(), drawLabel()
+ +

Implements QwtAbstractScaleDraw.

+ +
+
+ +
+
+ + + + + + + + +
double QwtRoundScaleDraw::extent (const QFont & font) const [virtual]
+
+
+

Calculate the extent of the scale

+

The extent is the distance between the baseline to the outermost pixel of the scale draw. radius() + extent() is an upper limit for the radius of the bounding circle.

+
Parameters:
+ + +
fontFont used for painting the labels
+
+
+
See also:
setMinimumExtent(), minimumExtent()
+
Warning:
The implemented algo is not too smart and calculates only an upper limit, that might be a few pixels too large
+ +

Implements QwtAbstractScaleDraw.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtRoundScaleDraw::moveCenter (double x,
double y 
) [inline]
+
+
+ +

Move the center of the scale draw, leaving the radius unchanged.

+ +
+
+ +
+
+ + + + + + + + +
void QwtRoundScaleDraw::moveCenter (const QPointF & center)
+
+
+

Move the center of the scale draw, leaving the radius unchanged

+
Parameters:
+ + +
centerNew center
+
+
+
See also:
setRadius()
+ +
+
+ +
+
+ + + + + + + +
int QwtRoundScaleDraw::radius () const
+
+
+

Get the radius

+

Radius is the radius of the backbone without ticks and labels.

+
See also:
setRadius(), extent()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtRoundScaleDraw::setAngleRange (double angle1,
double angle2 
)
+
+
+ +

Adjust the baseline circle segment for round scales.

+

The baseline will be drawn from min(angle1,angle2) to max(angle1, angle2). The default setting is [ -135, 135 ]. An angle of 0 degrees corresponds to the 12 o'clock position, and positive angles count in a clockwise direction.

+
Parameters:
+ + + +
angle1
angle2boundaries of the angle interval in degrees.
+
+
+
Warning:
    +
  • +The angle range is limited to [-360, 360] degrees. Angles exceeding this range will be clipped.
  • +
  • +For angles more than 359 degrees above or below min(angle1, angle2), scale marks will not be drawn.
  • +
  • +If you need a counterclockwise scale, use QwtScaleDiv::setRange
  • +
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtRoundScaleDraw::setRadius (int radius)
+
+
+

Change of radius the scale

+

Radius is the radius of the backbone without ticks and labels.

+
Parameters:
+ + +
radiusNew Radius
+
+
+
See also:
moveCenter()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_round_scale_draw__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_round_scale_draw__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_round_scale_draw__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_round_scale_draw__inherit__graph.map 2011-04-15 10:49:15.000000000 +0000 @@ -0,0 +1,4 @@ + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_round_scale_draw__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_round_scale_draw__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_round_scale_draw__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_round_scale_draw__inherit__graph.md5 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1 @@ +828b0110b738ed52a1bd4808202834c5 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_round_scale_draw__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_round_scale_draw__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_round_scale_draw-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_round_scale_draw-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_round_scale_draw-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_round_scale_draw-members.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,90 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtRoundScaleDraw Member List

+
+
+This is the complete list of members for QwtRoundScaleDraw, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Backbone enum valueQwtAbstractScaleDraw
center() const QwtRoundScaleDraw
draw(QPainter *, const QPalette &) const QwtAbstractScaleDraw [virtual]
drawBackbone(QPainter *p) const QwtRoundScaleDraw [protected, virtual]
drawLabel(QPainter *p, double val) const QwtRoundScaleDraw [protected, virtual]
drawTick(QPainter *p, double val, double len) const QwtRoundScaleDraw [protected, virtual]
enableComponent(ScaleComponent, bool enable=true)QwtAbstractScaleDraw
extent(const QFont &) const QwtRoundScaleDraw [virtual]
hasComponent(ScaleComponent) const QwtAbstractScaleDraw
invalidateCache()QwtAbstractScaleDraw [protected]
label(double) const QwtAbstractScaleDraw [virtual]
Labels enum valueQwtAbstractScaleDraw
maxTickLength() const QwtAbstractScaleDraw
minimumExtent() const QwtAbstractScaleDraw
moveCenter(double x, double y)QwtRoundScaleDraw [inline]
moveCenter(const QPointF &)QwtRoundScaleDraw
penWidth() const QwtAbstractScaleDraw
QwtAbstractScaleDraw()QwtAbstractScaleDraw
QwtRoundScaleDraw()QwtRoundScaleDraw
radius() const QwtRoundScaleDraw
ScaleComponent enum nameQwtAbstractScaleDraw
ScaleComponents typedefQwtAbstractScaleDraw
scaleDiv() const QwtAbstractScaleDraw
scaleMap() const QwtAbstractScaleDraw
scaleMap()QwtAbstractScaleDraw
setAngleRange(double angle1, double angle2)QwtRoundScaleDraw
setMinimumExtent(double)QwtAbstractScaleDraw
setPenWidth(int width)QwtAbstractScaleDraw
setRadius(int radius)QwtRoundScaleDraw
setScaleDiv(const QwtScaleDiv &s)QwtAbstractScaleDraw
setSpacing(double margin)QwtAbstractScaleDraw
setTickLength(QwtScaleDiv::TickType, double length)QwtAbstractScaleDraw
setTransformation(QwtScaleTransformation *)QwtAbstractScaleDraw
spacing() const QwtAbstractScaleDraw
tickLabel(const QFont &, double value) const QwtAbstractScaleDraw [protected]
tickLength(QwtScaleDiv::TickType) const QwtAbstractScaleDraw
Ticks enum valueQwtAbstractScaleDraw
~QwtAbstractScaleDraw()QwtAbstractScaleDraw [virtual]
~QwtRoundScaleDraw()QwtRoundScaleDraw [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_sampling_thread.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_sampling_thread.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_sampling_thread.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_sampling_thread.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,242 @@ + + + + +Qwt User's Guide: QwtSamplingThread Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtSamplingThread Class Reference

+
+
+ +

A thread collecting samples at regular intervals. +More...

+ +

#include <qwt_sampling_thread.h>

+ +

List of all members.

+ + + + + + + + + + + + +

+Public Slots

void setInterval (double interval)
void stop ()

+Public Member Functions

virtual ~QwtSamplingThread ()
double interval () const
double elapsed () const

+Protected Member Functions

 QwtSamplingThread (QObject *parent=NULL)
virtual void run ()
virtual void sample (double elapsed)=0
+

Detailed Description

+

A thread collecting samples at regular intervals.

+

Contiounous signals are converted into a discrete signal by collecting samples at regular intervals. A discrete signal can be displayed by a QwtPlotSeriesItem on a QwtPlot widget.

+

QwtSamplingThread starts a thread calling perodically sample(), to collect and store ( or emit ) a single sample.

+
See also:
QwtPlotCurve, QwtPlotSeriesItem
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtSamplingThread::~QwtSamplingThread () [virtual]
+
+
+ +

Destructor.

+ +
+
+ +
+
+ + + + + + + + +
QwtSamplingThread::QwtSamplingThread (QObject * parent = NULL) [explicit, protected]
+
+
+ +

Constructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
double QwtSamplingThread::elapsed () const
+
+
+
Returns:
Time (in ms) since the thread was started
+
See also:
QThread::start(), run()
+ +
+
+ +
+
+ + + + + + + +
double QwtSamplingThread::interval () const
+
+
+
Returns:
Interval (in ms), between 2 calls of sample()
+
See also:
setInterval()
+ +
+
+ +
+
+ + + + + + + +
void QwtSamplingThread::run () [protected, virtual]
+
+
+

Loop collecting samples started from QThread::start()

+
See also:
stop()
+ +
+
+ +
+
+ + + + + + + + +
virtual void QwtSamplingThread::sample (double elapsed) [protected, pure virtual]
+
+
+

Collect a sample

+
Parameters:
+ + +
elapsedTime since the thread was started in miliseconds
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtSamplingThread::setInterval (double interval) [slot]
+
+
+

Change the interval (in ms), when sample() is called. The default interval is 1000.0 ( = 1s )

+
Parameters:
+ + +
intervalInterval
+
+
+
See also:
interval()
+ +
+
+ +
+
+ + + + + + + +
void QwtSamplingThread::stop () [slot]
+
+
+

Terminate the collecting thread

+
See also:
QThread::start(), run()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_sampling_thread-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_sampling_thread-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_sampling_thread-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_sampling_thread-members.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,59 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtSamplingThread Member List

+
+
+This is the complete list of members for QwtSamplingThread, including all inherited members. + + + + + + + + +
elapsed() const QwtSamplingThread
interval() const QwtSamplingThread
QwtSamplingThread(QObject *parent=NULL)QwtSamplingThread [explicit, protected]
run()QwtSamplingThread [protected, virtual]
sample(double elapsed)=0QwtSamplingThread [protected, pure virtual]
setInterval(double interval)QwtSamplingThread [slot]
stop()QwtSamplingThread [slot]
~QwtSamplingThread()QwtSamplingThread [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_arithmetic.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_arithmetic.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_arithmetic.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_arithmetic.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,230 @@ + + + + +Qwt User's Guide: QwtScaleArithmetic Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtScaleArithmetic Class Reference

+
+
+ +

Arithmetic including a tolerance. +More...

+ +

#include <qwt_scale_engine.h>

+ +

List of all members.

+ + + + + + + +

+Static Public Member Functions

static double ceilEps (double value, double intervalSize)
static double floorEps (double value, double intervalSize)
static double divideEps (double interval, double steps)
static double ceil125 (double x)
static double floor125 (double x)
+

Detailed Description

+

Arithmetic including a tolerance.

+

Member Function Documentation

+ +
+
+ + + + + + + + +
double QwtScaleArithmetic::ceil125 (double x) [static]
+
+
+

Find the smallest value out of {1,2,5}*10^n with an integer number n which is greater than or equal to x

+
Parameters:
+ + +
xInput value
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
double QwtScaleArithmetic::ceilEps (double value,
double intervalSize 
) [static]
+
+
+

Ceil a value, relative to an interval

+
Parameters:
+ + + +
valueValue to ceil
intervalSizeInterval size
+
+
+
See also:
floorEps()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
double QwtScaleArithmetic::divideEps (double intervalSize,
double numSteps 
) [static]
+
+
+ +

Divide an interval into steps.

+

$stepSize = (intervalSize - intervalSize * 10e^{-6}) / numSteps$

+
Parameters:
+ + + +
intervalSizeInterval size
numStepsNumber of steps
+
+
+
Returns:
Step size
+ +
+
+ +
+
+ + + + + + + + +
double QwtScaleArithmetic::floor125 (double x) [static]
+
+
+ +

Find the largest value out of {1,2,5}*10^n with an integer number n which is smaller than or equal to x.

+
Parameters:
+ + +
xInput value
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
double QwtScaleArithmetic::floorEps (double value,
double intervalSize 
) [static]
+
+
+

Floor a value, relative to an interval

+
Parameters:
+ + + +
valueValue to floor
intervalSizeInterval size
+
+
+
See also:
floorEps()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_arithmetic-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_arithmetic-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_arithmetic-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_arithmetic-members.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,56 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtScaleArithmetic Member List

+
+
+This is the complete list of members for QwtScaleArithmetic, including all inherited members. + + + + + +
ceil125(double x)QwtScaleArithmetic [static]
ceilEps(double value, double intervalSize)QwtScaleArithmetic [static]
divideEps(double interval, double steps)QwtScaleArithmetic [static]
floor125(double x)QwtScaleArithmetic [static]
floorEps(double value, double intervalSize)QwtScaleArithmetic [static]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_div.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_div.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_div.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_div.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,539 @@ + + + + +Qwt User's Guide: QwtScaleDiv Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtScaleDiv Class Reference

+
+
+ +

A class representing a scale division. +More...

+ +

#include <qwt_scale_div.h>

+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + +

+Public Types

enum  TickType {
+  NoTick = -1, +
+  MinorTick, +
+  MediumTick, +
+  MajorTick, +
+  NTickTypes +
+ }

+Public Member Functions

 QwtScaleDiv ()
 QwtScaleDiv (const QwtInterval &, QList< double >[NTickTypes])
 QwtScaleDiv (double lowerBound, double upperBound, QList< double >[NTickTypes])
bool operator== (const QwtScaleDiv &s) const
bool operator!= (const QwtScaleDiv &s) const
void setInterval (double lowerBound, double upperBound)
void setInterval (const QwtInterval &)
QwtInterval interval () const
double lowerBound () const
double upperBound () const
double range () const
bool contains (double v) const
void setTicks (int type, const QList< double > &)
const QList< double > & ticks (int type) const
void invalidate ()
bool isValid () const
void invert ()
+

Detailed Description

+

A class representing a scale division.

+

A scale division consists of its limits and 3 list of tick values qualified as major, medium and minor ticks.

+

In most cases scale divisions are calculated by a QwtScaleEngine.

+
See also:
subDivideInto(), subDivide()
+

Member Enumeration Documentation

+ +
+
+ + + + +
enum QwtScaleDiv::TickType
+
+
+ +

Scale tick types.

+
Enumerator:
+ + + + + +
NoTick  +

No ticks.

+
MinorTick  +

Minor ticks.

+
MediumTick  +

Medium ticks.

+
MajorTick  +

Major ticks.

+
NTickTypes  +

Number of valid tick types.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtScaleDiv::QwtScaleDiv () [explicit]
+
+
+ +

Construct an invalid QwtScaleDiv instance.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
QwtScaleDiv::QwtScaleDiv (const QwtIntervalinterval,
QList< double > ticks[NTickTypes] 
) [explicit]
+
+
+

Construct QwtScaleDiv instance.

+
Parameters:
+ + + +
intervalInterval
ticksList of major, medium and minor ticks
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
QwtScaleDiv::QwtScaleDiv (double lowerBound,
double upperBound,
QList< double > ticks[NTickTypes] 
) [explicit]
+
+
+

Construct QwtScaleDiv instance.

+
Parameters:
+ + + + +
lowerBoundFirst interval limit
upperBoundSecond interval limit
ticksList of major, medium and minor ticks
+
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + +
bool QwtScaleDiv::contains (double value) const
+
+
+

Return if a value is between lowerBound() and upperBound()

+
Parameters:
+ + +
valueValue
+
+
+
Returns:
true/false
+ +
+
+ +
+
+ + + + + + + +
QwtInterval QwtScaleDiv::interval () const [inline]
+
+
+
Returns:
lowerBound -> upperBound
+ +
+
+ +
+
+ + + + + + + +
void QwtScaleDiv::invalidate ()
+
+
+ +

Invalidate the scale division.

+ +
+
+ +
+
+ + + + + + + +
void QwtScaleDiv::invert ()
+
+
+ +

Invert the scale divison.

+ +
+
+ +
+
+ + + + + + + +
bool QwtScaleDiv::isValid () const
+
+
+ +

Check if the scale division is valid.

+ +
+
+ +
+
+ + + + + + + +
double QwtScaleDiv::lowerBound () const [inline]
+
+
+
Returns:
lower bound
+
See also:
upperBound()
+ +
+
+ +
+
+ + + + + + + + +
bool QwtScaleDiv::operator!= (const QwtScaleDivs) const
+
+
+ +

Inequality.

+
Returns:
true if this instance is not equal to s
+ +
+
+ +
+
+ + + + + + + + +
bool QwtScaleDiv::operator== (const QwtScaleDivother) const
+
+
+ +

Equality operator.

+
Returns:
true if this instance is equal to other
+ +
+
+ +
+
+ + + + + + + +
double QwtScaleDiv::range () const [inline]
+
+
+
Returns:
upperBound() - lowerBound()
+ +
+
+ +
+
+ + + + + + + + +
void QwtScaleDiv::setInterval (const QwtIntervalinterval)
+
+
+

Change the interval

+
Parameters:
+ + +
intervalInterval
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtScaleDiv::setInterval (double lowerBound,
double upperBound 
) [inline]
+
+
+

Change the interval

+
Parameters:
+ + + +
lowerBoundlower bound
upperBoundupper bound
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtScaleDiv::setTicks (int type,
const QList< double > & ticks 
)
+
+
+

Assign ticks

+
Parameters:
+ + + +
typeMinorTick, MediumTick or MajorTick
ticksValues of the tick positions
+
+
+ +
+
+ +
+
+ + + + + + + + +
const QList< double > & QwtScaleDiv::ticks (int type) const
+
+
+

Return a list of ticks

+
Parameters:
+ + +
typeMinorTick, MediumTick or MajorTick
+
+
+ +
+
+ +
+
+ + + + + + + +
double QwtScaleDiv::upperBound () const [inline]
+
+
+
Returns:
upper bound
+
See also:
lowerBound()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_div-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_div-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_div-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_div-members.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,74 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtScaleDiv Member List

+
+
+This is the complete list of members for QwtScaleDiv, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + +
contains(double v) const QwtScaleDiv
interval() const QwtScaleDiv [inline]
invalidate()QwtScaleDiv
invert()QwtScaleDiv
isValid() const QwtScaleDiv
lowerBound() const QwtScaleDiv [inline]
MajorTick enum valueQwtScaleDiv
MediumTick enum valueQwtScaleDiv
MinorTick enum valueQwtScaleDiv
NoTick enum valueQwtScaleDiv
NTickTypes enum valueQwtScaleDiv
operator!=(const QwtScaleDiv &s) const QwtScaleDiv
operator==(const QwtScaleDiv &s) const QwtScaleDiv
QwtScaleDiv()QwtScaleDiv [explicit]
QwtScaleDiv(const QwtInterval &, QList< double >[NTickTypes])QwtScaleDiv [explicit]
QwtScaleDiv(double lowerBound, double upperBound, QList< double >[NTickTypes])QwtScaleDiv [explicit]
range() const QwtScaleDiv [inline]
setInterval(double lowerBound, double upperBound)QwtScaleDiv [inline]
setInterval(const QwtInterval &)QwtScaleDiv
setTicks(int type, const QList< double > &)QwtScaleDiv
ticks(int type) const QwtScaleDiv
TickType enum nameQwtScaleDiv
upperBound() const QwtScaleDiv [inline]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_draw.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_draw.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_draw.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_draw.html 2011-04-15 10:49:24.000000000 +0000 @@ -0,0 +1,913 @@ + + + + +Qwt User's Guide: QwtScaleDraw Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtScaleDraw Class Reference

+
+
+ +

A class for drawing scales. +More...

+ +

#include <qwt_scale_draw.h>

+
+Inheritance diagram for QwtScaleDraw:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Types

enum  Alignment {
+  BottomScale, +
+  TopScale, +
+  LeftScale, +
+  RightScale +
+ }

+Public Member Functions

 QwtScaleDraw ()
virtual ~QwtScaleDraw ()
void getBorderDistHint (const QFont &, int &start, int &end) const
int minLabelDist (const QFont &) const
int minLength (const QFont &) const
virtual double extent (const QFont &) const
void move (double x, double y)
void move (const QPointF &)
void setLength (double length)
Alignment alignment () const
void setAlignment (Alignment)
Qt::Orientation orientation () const
QPointF pos () const
double length () const
void setLabelAlignment (Qt::Alignment)
Qt::Alignment labelAlignment () const
void setLabelRotation (double rotation)
double labelRotation () const
int maxLabelHeight (const QFont &) const
int maxLabelWidth (const QFont &) const
QPointF labelPosition (double val) const
QRectF labelRect (const QFont &, double val) const
QSizeF labelSize (const QFont &, double val) const
QRect boundingLabelRect (const QFont &, double val) const

+Protected Member Functions

QTransform labelTransformation (const QPointF &, const QSizeF &) const
virtual void drawTick (QPainter *, double val, double len) const
virtual void drawBackbone (QPainter *) const
virtual void drawLabel (QPainter *, double val) const
+

Detailed Description

+

A class for drawing scales.

+

QwtScaleDraw can be used to draw linear or logarithmic scales. A scale has a position, an alignment and a length, which can be specified . The labels can be rotated and aligned to the ticks using setLabelRotation() and setLabelAlignment().

+

After a scale division has been specified as a QwtScaleDiv object using QwtAbstractScaleDraw::setScaleDiv(const QwtScaleDiv &s), the scale can be drawn with the QwtAbstractScaleDraw::draw() member.

+

Member Enumeration Documentation

+ +
+
+ + + + +
enum QwtScaleDraw::Alignment
+
+
+

Alignment of the scale draw

+
See also:
setAlignment(), alignment()
+
Enumerator:
+ + + + +
BottomScale  +

The scale is below.

+
TopScale  +

The scale is above.

+
LeftScale  +

The scale is left.

+
RightScale  +

The scale is right.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtScaleDraw::QwtScaleDraw ()
+
+
+ +

Constructor.

+

The range of the scale is initialized to [0, 100], The position is at (0, 0) with a length of 100. The orientation is QwtAbstractScaleDraw::Bottom.

+ +
+
+ +
+
+ + + + + + + +
QwtScaleDraw::~QwtScaleDraw () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
QwtScaleDraw::Alignment QwtScaleDraw::alignment () const
+
+
+

Return alignment of the scale

+
See also:
setAlignment()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
QRect QwtScaleDraw::boundingLabelRect (const QFont & font,
double value 
) const
+
+
+

Find the bounding rect for the label. The coordinates of the rect are absolute coordinates ( calculated from pos() ). in direction of the tick.

+
Parameters:
+ + + +
fontFont used for painting
valueValue
+
+
+
See also:
labelRect()
+ +
+
+ +
+
+ + + + + + + + +
void QwtScaleDraw::drawBackbone (QPainter * painter) const [protected, virtual]
+
+
+

Draws the baseline of the scale

+
Parameters:
+ + +
painterPainter
+
+
+
See also:
drawTick(), drawLabel()
+ +

Implements QwtAbstractScaleDraw.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtScaleDraw::drawLabel (QPainter * painter,
double value 
) const [protected, virtual]
+
+
+

Draws the label for a major scale tick

+
Parameters:
+ + + +
painterPainter
valueValue
+
+
+
See also:
drawTick(), drawBackbone(), boundingLabelRect()
+ +

Implements QwtAbstractScaleDraw.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtScaleDraw::drawTick (QPainter * painter,
double value,
double len 
) const [protected, virtual]
+
+
+

Draw a tick

+
Parameters:
+ + + + +
painterPainter
valueValue of the tick
lenLenght of the tick
+
+
+
See also:
drawBackbone(), drawLabel()
+ +

Implements QwtAbstractScaleDraw.

+ +
+
+ +
+
+ + + + + + + + +
double QwtScaleDraw::extent (const QFont & font) const [virtual]
+
+
+

Calculate the width/height that is needed for a vertical/horizontal scale.

+

The extent is calculated from the pen width of the backbone, the major tick length, the spacing and the maximum width/height of the labels.

+
Parameters:
+ + +
fontFont used for painting the labels
+
+
+
See also:
minLength()
+ +

Implements QwtAbstractScaleDraw.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtScaleDraw::getBorderDistHint (const QFont & font,
int & start,
int & end 
) const
+
+
+ +

Determine the minimum border distance.

+

This member function returns the minimum space needed to draw the mark labels at the scale's endpoints.

+
Parameters:
+ + + + +
fontFont
startStart border distance
endEnd border distance
+
+
+ +
+
+ +
+
+ + + + + + + +
Qt::Alignment QwtScaleDraw::labelAlignment () const
+
+
+
Returns:
the label flags
+
See also:
setLabelAlignment(), labelRotation()
+ +
+
+ +
+
+ + + + + + + + +
QPointF QwtScaleDraw::labelPosition (double value) const
+
+
+

Find the position, where to paint a label

+

The position has a distance of majTickLength() + spacing() + 1 from the backbone. The direction depends on the alignment()

+
Parameters:
+ + +
valueValue
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
QRectF QwtScaleDraw::labelRect (const QFont & font,
double value 
) const
+
+
+

Find the bounding rect for the label. The coordinates of the rect are relative to spacing + ticklength from the backbone in direction of the tick.

+
Parameters:
+ + + +
fontFont used for painting
valueValue
+
+
+ +
+
+ +
+
+ + + + + + + +
double QwtScaleDraw::labelRotation () const
+
+
+
Returns:
the label rotation
+
See also:
setLabelRotation(), labelAlignment()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
QSizeF QwtScaleDraw::labelSize (const QFont & font,
double value 
) const
+
+
+

Calculate the size that is needed to draw a label

+
Parameters:
+ + + +
fontLabel font
valueValue
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
QTransform QwtScaleDraw::labelTransformation (const QPointF & pos,
const QSizeF & size 
) const [protected]
+
+
+

Calculate the transformation that is needed to paint a label depending on its alignment and rotation.

+
Parameters:
+ + + +
posPosition where to paint the label
sizeSize of the label
+
+
+
See also:
setLabelAlignment(), setLabelRotation()
+ +
+
+ +
+
+ + + + + + + +
double QwtScaleDraw::length () const
+
+
+
Returns:
the length of the backbone
+
See also:
setLength(), pos()
+ +
+
+ +
+
+ + + + + + + + +
int QwtScaleDraw::maxLabelHeight (const QFont & font) const
+
+
+
Parameters:
+ + +
fontFont
+
+
+
Returns:
the maximum height of a label
+ +
+
+ +
+
+ + + + + + + + +
int QwtScaleDraw::maxLabelWidth (const QFont & font) const
+
+
+
Parameters:
+ + +
fontFont
+
+
+
Returns:
the maximum width of a label
+ +
+
+ +
+
+ + + + + + + + +
int QwtScaleDraw::minLabelDist (const QFont & font) const
+
+
+

Determine the minimum distance between two labels, that is necessary that the texts don't overlap.

+
Parameters:
+ + +
fontFont
+
+
+
Returns:
The maximum width of a label
+
See also:
getBorderDistHint()
+ +
+
+ +
+
+ + + + + + + + +
int QwtScaleDraw::minLength (const QFont & font) const
+
+
+

Calculate the minimum length that is needed to draw the scale

+
Parameters:
+ + +
fontFont used for painting the labels
+
+
+
See also:
extent()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtScaleDraw::move (double x,
double y 
) [inline]
+
+
+

Move the position of the scale

+
See also:
move(const QPointF &)
+ +
+
+ +
+
+ + + + + + + + +
void QwtScaleDraw::move (const QPointF & pos)
+
+
+ +

Move the position of the scale.

+

The meaning of the parameter pos depends on the alignment:

+
+
QwtScaleDraw::LeftScale
+
The origin is the topmost point of the backbone. The backbone is a vertical line. Scale marks and labels are drawn at the left of the backbone.
+
QwtScaleDraw::RightScale
+
The origin is the topmost point of the backbone. The backbone is a vertical line. Scale marks and labels are drawn at the right of the backbone.
+
QwtScaleDraw::TopScale
+
The origin is the leftmost point of the backbone. The backbone is a horizontal line. Scale marks and labels are drawn above the backbone.
+
QwtScaleDraw::BottomScale
+
The origin is the leftmost point of the backbone. The backbone is a horizontal line Scale marks and labels are drawn below the backbone.
+
+
Parameters:
+ + +
posOrigin of the scale
+
+
+
See also:
pos(), setLength()
+ +
+
+ +
+
+ + + + + + + +
Qt::Orientation QwtScaleDraw::orientation () const
+
+
+

Return the orientation

+

TopScale, BottomScale are horizontal (Qt::Horizontal) scales, LeftScale, RightScale are vertical (Qt::Vertical) scales.

+
See also:
alignment()
+ +
+
+ +
+
+ + + + + + + +
QPointF QwtScaleDraw::pos () const
+
+
+
Returns:
Origin of the scale
+
See also:
move(), length()
+ +
+
+ +
+
+ + + + + + + + +
void QwtScaleDraw::setAlignment (Alignment align)
+
+
+

Set the alignment of the scale

+

The default alignment is QwtScaleDraw::BottomScale

+
See also:
alignment()
+ +
+
+ +
+
+ + + + + + + + +
void QwtScaleDraw::setLabelAlignment (Qt::Alignment alignment)
+
+
+ +

Change the label flags.

+

Labels are aligned to the point ticklength + spacing away from the backbone.

+

The alignment is relative to the orientation of the label text. In case of an flags of 0 the label will be aligned depending on the orientation of the scale:

+

QwtScaleDraw::TopScale: Qt::AlignHCenter | Qt::AlignTop
+ QwtScaleDraw::BottomScale: Qt::AlignHCenter | Qt::AlignBottom
+ QwtScaleDraw::LeftScale: Qt::AlignLeft | Qt::AlignVCenter
+ QwtScaleDraw::RightScale: Qt::AlignRight | Qt::AlignVCenter
+

+

Changing the alignment is often necessary for rotated labels.

+
Parameters:
+ + +
alignmentOr'd Qt::AlignmentFlags <see qnamespace.h>
+
+
+
See also:
setLabelRotation(), labelRotation(), labelAlignment()
+
Warning:
The various alignments might be confusing. The alignment of the label is not the alignment of the scale and is not the alignment of the flags (QwtText::flags()) returned from QwtAbstractScaleDraw::label().
+ +
+
+ +
+
+ + + + + + + + +
void QwtScaleDraw::setLabelRotation (double rotation)
+
+
+

Rotate all labels.

+

When changing the rotation, it might be necessary to adjust the label flags too. Finding a useful combination is often the result of try and error.

+
Parameters:
+ + +
rotationAngle in degrees. When changing the label rotation, the label flags often needs to be adjusted too.
+
+
+
See also:
setLabelAlignment(), labelRotation(), labelAlignment().
+ +
+
+ +
+
+ + + + + + + + +
void QwtScaleDraw::setLength (double length)
+
+
+

Set the length of the backbone.

+

The length doesn't include the space needed for overlapping labels.

+
See also:
move(), minLabelDist()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_draw__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_draw__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_draw__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_draw__inherit__graph.map 2011-04-15 10:49:15.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_draw__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_draw__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_draw__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_draw__inherit__graph.md5 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1 @@ +b6d5bfc302a13c1bc3c51953d021a2d7 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_draw__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_draw__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_draw-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_draw-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_draw-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_draw-members.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,111 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtScaleDraw Member List

+
+
+This is the complete list of members for QwtScaleDraw, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Alignment enum nameQwtScaleDraw
alignment() const QwtScaleDraw
Backbone enum valueQwtAbstractScaleDraw
BottomScale enum valueQwtScaleDraw
boundingLabelRect(const QFont &, double val) const QwtScaleDraw
draw(QPainter *, const QPalette &) const QwtAbstractScaleDraw [virtual]
drawBackbone(QPainter *) const QwtScaleDraw [protected, virtual]
drawLabel(QPainter *, double val) const QwtScaleDraw [protected, virtual]
drawTick(QPainter *, double val, double len) const QwtScaleDraw [protected, virtual]
enableComponent(ScaleComponent, bool enable=true)QwtAbstractScaleDraw
extent(const QFont &) const QwtScaleDraw [virtual]
getBorderDistHint(const QFont &, int &start, int &end) const QwtScaleDraw
hasComponent(ScaleComponent) const QwtAbstractScaleDraw
invalidateCache()QwtAbstractScaleDraw [protected]
label(double) const QwtAbstractScaleDraw [virtual]
labelAlignment() const QwtScaleDraw
labelPosition(double val) const QwtScaleDraw
labelRect(const QFont &, double val) const QwtScaleDraw
labelRotation() const QwtScaleDraw
Labels enum valueQwtAbstractScaleDraw
labelSize(const QFont &, double val) const QwtScaleDraw
labelTransformation(const QPointF &, const QSizeF &) const QwtScaleDraw [protected]
LeftScale enum valueQwtScaleDraw
length() const QwtScaleDraw
maxLabelHeight(const QFont &) const QwtScaleDraw
maxLabelWidth(const QFont &) const QwtScaleDraw
maxTickLength() const QwtAbstractScaleDraw
minimumExtent() const QwtAbstractScaleDraw
minLabelDist(const QFont &) const QwtScaleDraw
minLength(const QFont &) const QwtScaleDraw
move(double x, double y)QwtScaleDraw [inline]
move(const QPointF &)QwtScaleDraw
orientation() const QwtScaleDraw
penWidth() const QwtAbstractScaleDraw
pos() const QwtScaleDraw
QwtAbstractScaleDraw()QwtAbstractScaleDraw
QwtScaleDraw()QwtScaleDraw
RightScale enum valueQwtScaleDraw
ScaleComponent enum nameQwtAbstractScaleDraw
ScaleComponents typedefQwtAbstractScaleDraw
scaleDiv() const QwtAbstractScaleDraw
scaleMap() const QwtAbstractScaleDraw
scaleMap()QwtAbstractScaleDraw
setAlignment(Alignment)QwtScaleDraw
setLabelAlignment(Qt::Alignment)QwtScaleDraw
setLabelRotation(double rotation)QwtScaleDraw
setLength(double length)QwtScaleDraw
setMinimumExtent(double)QwtAbstractScaleDraw
setPenWidth(int width)QwtAbstractScaleDraw
setScaleDiv(const QwtScaleDiv &s)QwtAbstractScaleDraw
setSpacing(double margin)QwtAbstractScaleDraw
setTickLength(QwtScaleDiv::TickType, double length)QwtAbstractScaleDraw
setTransformation(QwtScaleTransformation *)QwtAbstractScaleDraw
spacing() const QwtAbstractScaleDraw
tickLabel(const QFont &, double value) const QwtAbstractScaleDraw [protected]
tickLength(QwtScaleDiv::TickType) const QwtAbstractScaleDraw
Ticks enum valueQwtAbstractScaleDraw
TopScale enum valueQwtScaleDraw
~QwtAbstractScaleDraw()QwtAbstractScaleDraw [virtual]
~QwtScaleDraw()QwtScaleDraw [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_engine.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_engine.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_engine.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_engine.html 2011-04-15 10:49:25.000000000 +0000 @@ -0,0 +1,685 @@ + + + + +Qwt User's Guide: QwtScaleEngine Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtScaleEngine Class Reference

+
+
+ +

Base class for scale engines. +More...

+ +

#include <qwt_scale_engine.h>

+
+Inheritance diagram for QwtScaleEngine:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + +

+Public Types

enum  Attribute {
+  NoAttribute = 0x00, +
+  IncludeReference = 0x01, +
+  Symmetric = 0x02, +
+  Floating = 0x04, +
+  Inverted = 0x08 +
+ }
typedef QFlags< AttributeAttributes

+Public Member Functions

 QwtScaleEngine ()
virtual ~QwtScaleEngine ()
void setAttribute (Attribute, bool on=true)
bool testAttribute (Attribute) const
void setAttributes (Attributes)
Attributes attributes () const
void setReference (double reference)
double reference () const
void setMargins (double lower, double upper)
double lowerMargin () const
double upperMargin () const
virtual void autoScale (int maxNumSteps, double &x1, double &x2, double &stepSize) const =0
virtual QwtScaleDiv divideScale (double x1, double x2, int maxMajSteps, int maxMinSteps, double stepSize=0.0) const =0
virtual QwtScaleTransformationtransformation () const =0

+Protected Member Functions

bool contains (const QwtInterval &, double val) const
QList< double > strip (const QList< double > &, const QwtInterval &) const
double divideInterval (double interval, int numSteps) const
QwtInterval buildInterval (double v) const
+

Detailed Description

+

Base class for scale engines.

+

A scale engine trys to find "reasonable" ranges and step sizes for scales.

+

The layout of the scale can be varied with setAttribute().

+

Qwt offers implementations for logarithmic (log10) and linear scales. Contributions for other types of scale engines (date/time, log2 ... ) are welcome.

+

Member Typedef Documentation

+ +
+
+ + + + +
typedef QFlags<Attribute> QwtScaleEngine::Attributes
+
+
+ +

Layout attributes.

+ +
+
+

Member Enumeration Documentation

+ +
+
+ + + + +
enum QwtScaleEngine::Attribute
+
+
+

Layout attributes

+
See also:
setAttribute(), testAttribute(), reference(), lowerMargin(), upperMargin()
+
Enumerator:
+ + + + + +
NoAttribute  +

No attributes.

+
IncludeReference  +

Build a scale which includes the reference() value.

+
Symmetric  +

Build a scale which is symmetric to the reference() value.

+
Floating  +

The endpoints of the scale are supposed to be equal the outmost included values plus the specified margins (see setMargins()). If this attribute is *not* set, the endpoints of the scale will be integer multiples of the step size.

+
Inverted  +

Turn the scale upside down.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtScaleEngine::QwtScaleEngine () [explicit]
+
+
+ +

Constructor.

+ +
+
+ +
+
+ + + + + + + +
QwtScaleEngine::~QwtScaleEngine () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
QwtScaleEngine::Attributes QwtScaleEngine::attributes () const
+
+
+

Return the scale attributes

+
See also:
Attribute, setAttributes(), testAttribute()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
virtual void QwtScaleEngine::autoScale (int maxNumSteps,
double & x1,
double & x2,
double & stepSize 
) const [pure virtual]
+
+
+

Align and divide an interval

+
Parameters:
+ + + + + +
maxNumStepsMax. number of steps
x1First limit of the interval (In/Out)
x2Second limit of the interval (In/Out)
stepSizeStep size (Return value)
+
+
+ +

Implemented in QwtLinearScaleEngine, and QwtLog10ScaleEngine.

+ +
+
+ +
+
+ + + + + + + + +
QwtInterval QwtScaleEngine::buildInterval (double v) const [protected]
+
+
+ +

Build an interval for a value.

+

In case of v == 0.0 the interval is [-0.5, 0.5], otherwide it is [0.5 * v, 1.5 * v]

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
bool QwtScaleEngine::contains (const QwtIntervalinterval,
double value 
) const [protected]
+
+
+

Check if an interval "contains" a value

+
Parameters:
+ + + +
intervalInterval
valueValue
+
+
+
See also:
QwtScaleArithmetic::compareEps()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
double QwtScaleEngine::divideInterval (double intervalSize,
int numSteps 
) const [protected]
+
+
+

Calculate a step size for an interval size

+
Parameters:
+ + + +
intervalSizeInterval size
numStepsNumber of steps
+
+
+
Returns:
Step size
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
virtual QwtScaleDiv QwtScaleEngine::divideScale (double x1,
double x2,
int maxMajSteps,
int maxMinSteps,
double stepSize = 0.0 
) const [pure virtual]
+
+
+ +

Calculate a scale division.

+
Parameters:
+ + + + + + +
x1First interval limit
x2Second interval limit
maxMajStepsMaximum for the number of major steps
maxMinStepsMaximum number of minor steps
stepSizeStep size. If stepSize == 0.0, the scaleEngine calculates one.
+
+
+ +

Implemented in QwtLinearScaleEngine, and QwtLog10ScaleEngine.

+ +
+
+ +
+
+ + + + + + + +
double QwtScaleEngine::lowerMargin () const
+
+
+
Returns:
the margin at the lower end of the scale The default margin is 0.
+
See also:
setMargins()
+ +
+
+ +
+
+ + + + + + + +
double QwtScaleEngine::reference () const
+
+
+
Returns:
the reference value
+
See also:
setReference(), setAttribute()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtScaleEngine::setAttribute (Attribute attribute,
bool on = true 
)
+
+
+

Change a scale attribute

+
Parameters:
+ + + +
attributeAttribute to change
onOn/Off
+
+
+
See also:
Attribute, testAttribute()
+ +
+
+ +
+
+ + + + + + + + +
void QwtScaleEngine::setAttributes (Attributes attributes)
+
+
+

Change the scale attribute

+
Parameters:
+ + +
attributesSet scale attributes
+
+
+
See also:
Attribute, attributes()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtScaleEngine::setMargins (double lower,
double upper 
)
+
+
+ +

Specify margins at the scale's endpoints.

+
Parameters:
+ + + +
lowerminimum distance between the scale's lower boundary and the smallest enclosed value
upperminimum distance between the scale's upper boundary and the greatest enclosed value
+
+
+

Margins can be used to leave a minimum amount of space between the enclosed intervals and the boundaries of the scale.

+
Warning:
+
+
See also:
upperMargin(), lowerMargin()
+ +
+
+ +
+
+ + + + + + + + +
void QwtScaleEngine::setReference (double r)
+
+
+ +

Specify a reference point.

+
Parameters:
+ + +
rnew reference value
+
+
+

The reference point is needed if options IncludeReference or Symmetric are active. Its default value is 0.0.

+
See also:
Attribute
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
QList< double > QwtScaleEngine::strip (const QList< double > & ticks,
const QwtIntervalinterval 
) const [protected]
+
+
+

Remove ticks from a list, that are not inside an interval

+
Parameters:
+ + + +
ticksTick list
intervalInterval
+
+
+
Returns:
Stripped tick list
+ +
+
+ +
+
+ + + + + + + + +
bool QwtScaleEngine::testAttribute (Attribute attribute) const
+
+
+

Check if a attribute is set.

+
Parameters:
+ + +
attributeAttribute to be tested
+
+
+
See also:
Attribute, setAttribute()
+ +
+
+ +
+
+ + + + + + + +
virtual QwtScaleTransformation* QwtScaleEngine::transformation () const [pure virtual]
+
+
+
Returns:
a transformation
+ +

Implemented in QwtLinearScaleEngine, and QwtLog10ScaleEngine.

+ +
+
+ +
+
+ + + + + + + +
double QwtScaleEngine::upperMargin () const
+
+
+
Returns:
the margin at the upper end of the scale The default margin is 0.
+
See also:
setMargins()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_engine__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_engine__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_engine__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_engine__inherit__graph.map 2011-04-15 10:49:15.000000000 +0000 @@ -0,0 +1,4 @@ + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_engine__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_engine__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_engine__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_engine__inherit__graph.md5 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1 @@ +0f3d96a5ba6c8f347a56262e99c27663 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_engine__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_engine__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_engine-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_engine-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_engine-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_engine-members.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,76 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtScaleEngine Member List

+
+
+This is the complete list of members for QwtScaleEngine, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + +
Attribute enum nameQwtScaleEngine
Attributes typedefQwtScaleEngine
attributes() const QwtScaleEngine
autoScale(int maxNumSteps, double &x1, double &x2, double &stepSize) const =0QwtScaleEngine [pure virtual]
buildInterval(double v) const QwtScaleEngine [protected]
contains(const QwtInterval &, double val) const QwtScaleEngine [protected]
divideInterval(double interval, int numSteps) const QwtScaleEngine [protected]
divideScale(double x1, double x2, int maxMajSteps, int maxMinSteps, double stepSize=0.0) const =0QwtScaleEngine [pure virtual]
Floating enum valueQwtScaleEngine
IncludeReference enum valueQwtScaleEngine
Inverted enum valueQwtScaleEngine
lowerMargin() const QwtScaleEngine
NoAttribute enum valueQwtScaleEngine
QwtScaleEngine()QwtScaleEngine [explicit]
reference() const QwtScaleEngine
setAttribute(Attribute, bool on=true)QwtScaleEngine
setAttributes(Attributes)QwtScaleEngine
setMargins(double lower, double upper)QwtScaleEngine
setReference(double reference)QwtScaleEngine
strip(const QList< double > &, const QwtInterval &) const QwtScaleEngine [protected]
Symmetric enum valueQwtScaleEngine
testAttribute(Attribute) const QwtScaleEngine
transformation() const =0QwtScaleEngine [pure virtual]
upperMargin() const QwtScaleEngine
~QwtScaleEngine()QwtScaleEngine [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_map.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_map.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_map.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_map.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,655 @@ + + + + +Qwt User's Guide: QwtScaleMap Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+ +
+ +

A scale map. +More...

+ +

#include <qwt_scale_map.h>

+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 QwtScaleMap ()
 QwtScaleMap (const QwtScaleMap &)
 ~QwtScaleMap ()
QwtScaleMapoperator= (const QwtScaleMap &)
void setTransformation (QwtScaleTransformation *)
const QwtScaleTransformationtransformation () const
void setPaintInterval (double p1, double p2)
void setScaleInterval (double s1, double s2)
double transform (double s) const
double invTransform (double p) const
double p1 () const
double p2 () const
double s1 () const
double s2 () const
double pDist () const
double sDist () const
bool isInverting () const

+Static Public Member Functions

static QRectF transform (const QwtScaleMap &, const QwtScaleMap &, const QRectF &)
static QRectF invTransform (const QwtScaleMap &, const QwtScaleMap &, const QRectF &)
static QPointF transform (const QwtScaleMap &, const QwtScaleMap &, const QPointF &)
static QPointF invTransform (const QwtScaleMap &, const QwtScaleMap &, const QPointF &)

+Public Attributes

QT_STATIC_CONST double LogMin = 1.0e-150
QT_STATIC_CONST double LogMax = 1.0e150
+

Detailed Description

+

A scale map.

+

QwtScaleMap offers transformations from a scale into a paint interval and vice versa.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtScaleMap::QwtScaleMap ()
+
+
+ +

Constructor.

+

The scale and paint device intervals are both set to [0,1].

+ +
+
+ +
+
+ + + + + + + + +
QwtScaleMap::QwtScaleMap (const QwtScaleMapother)
+
+
+ +

Copy constructor.

+ +
+
+ +
+
+ + + + + + + +
QwtScaleMap::~QwtScaleMap ()
+
+
+

Destructor

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + +
double QwtScaleMap::invTransform (double p) const [inline]
+
+
+

Transform an paint device value into a value in the interval of the scale.

+
Parameters:
+ + +
pValue relative to the coordinates of the paint device
+
+
+
See also:
transform()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
QPointF QwtScaleMap::invTransform (const QwtScaleMapxMap,
const QwtScaleMapyMap,
const QPointF & pos 
) [static]
+
+
+

Transform a rectangle from paint to scale coordinates

+
Parameters:
+ + + + +
xMapX map
yMapY map
posPosition in paint coordinates
+
+
+
Returns:
Position in scale coordinates
+
See also:
transform()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
QRectF QwtScaleMap::invTransform (const QwtScaleMapxMap,
const QwtScaleMapyMap,
const QRectF & rect 
) [static]
+
+
+

Transform a rectangle from paint to scale coordinates

+
Parameters:
+ + + + +
xMapX map
yMapY map
rectRectangle in paint coordinates
+
+
+
Returns:
Rectangle in scale coordinates
+
See also:
transform()
+ +
+
+ +
+
+ + + + + + + +
bool QwtScaleMap::isInverting () const [inline]
+
+
+
Returns:
True, when ( p1() < p2() ) != ( s1() < s2() )
+ +
+
+ +
+
+ + + + + + + + +
QwtScaleMap & QwtScaleMap::operator= (const QwtScaleMapother)
+
+
+ +

Assignment operator.

+ +
+
+ +
+
+ + + + + + + +
double QwtScaleMap::p1 () const [inline]
+
+
+
Returns:
First border of the paint interval
+ +
+
+ +
+
+ + + + + + + +
double QwtScaleMap::p2 () const [inline]
+
+
+
Returns:
Second border of the paint interval
+ +
+
+ +
+
+ + + + + + + +
double QwtScaleMap::pDist () const [inline]
+
+
+
Returns:
qwtAbs(p2() - p1())
+ +
+
+ +
+
+ + + + + + + +
double QwtScaleMap::s1 () const [inline]
+
+
+
Returns:
First border of the scale interval
+ +
+
+ +
+
+ + + + + + + +
double QwtScaleMap::s2 () const [inline]
+
+
+
Returns:
Second border of the scale interval
+ +
+
+ +
+
+ + + + + + + +
double QwtScaleMap::sDist () const [inline]
+
+
+
Returns:
qwtAbs(s2() - s1())
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtScaleMap::setPaintInterval (double p1,
double p2 
)
+
+
+ +

Specify the borders of the paint device interval.

+
Parameters:
+ + + +
p1first border
p2second border
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtScaleMap::setScaleInterval (double s1,
double s2 
)
+
+
+ +

Specify the borders of the scale interval.

+
Parameters:
+ + + +
s1first border
s2second border
+
+
+
Warning:
logarithmic scales might be aligned to [LogMin, LogMax]
+ +
+
+ +
+
+ + + + + + + + +
void QwtScaleMap::setTransformation (QwtScaleTransformationtransformation)
+
+
+

Initialize the map with a transformation

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
QPointF QwtScaleMap::transform (const QwtScaleMapxMap,
const QwtScaleMapyMap,
const QPointF & pos 
) [static]
+
+
+

Transform a point from scale to paint coordinates

+
Parameters:
+ + + + +
xMapX map
yMapY map
posPosition in scale coordinates
+
+
+
Returns:
Position in paint coordinates
+
See also:
invTransform()
+ +
+
+ +
+
+ + + + + + + + +
double QwtScaleMap::transform (double s) const [inline]
+
+
+

Transform a point related to the scale interval into an point related to the interval of the paint device

+
Parameters:
+ + +
sValue relative to the coordinates of the scale
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
QRectF QwtScaleMap::transform (const QwtScaleMapxMap,
const QwtScaleMapyMap,
const QRectF & rect 
) [static]
+
+
+

Transform a rectangle from scale to paint coordinates

+
Parameters:
+ + + + +
xMapX map
yMapY map
rectRectangle in scale coordinates
+
+
+
Returns:
Rectangle in paint coordinates
+
See also:
invTransform()
+ +
+
+ +
+
+ + + + + + + +
const QwtScaleTransformation * QwtScaleMap::transformation () const
+
+
+ +

Get the transformation.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
QT_STATIC_CONST_IMPL double QwtScaleMap::LogMax = 1.0e150
+
+
+ +

Largest allowed value for logarithmic scales: 1.0e150.

+ +
+
+ +
+
+ + + + +
QT_STATIC_CONST_IMPL double QwtScaleMap::LogMin = 1.0e-150
+
+
+ +

Smallest allowed value for logarithmic scales: 1.0e-150.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_map-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_map-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_map-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_map-members.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,74 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtScaleMap Member List

+
+
+This is the complete list of members for QwtScaleMap, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + +
invTransform(double p) const QwtScaleMap [inline]
invTransform(const QwtScaleMap &, const QwtScaleMap &, const QRectF &)QwtScaleMap [static]
invTransform(const QwtScaleMap &, const QwtScaleMap &, const QPointF &)QwtScaleMap [static]
isInverting() const QwtScaleMap [inline]
LogMaxQwtScaleMap
LogMinQwtScaleMap
operator=(const QwtScaleMap &)QwtScaleMap
p1() const QwtScaleMap [inline]
p2() const QwtScaleMap [inline]
pDist() const QwtScaleMap [inline]
QwtScaleMap()QwtScaleMap
QwtScaleMap(const QwtScaleMap &)QwtScaleMap
s1() const QwtScaleMap [inline]
s2() const QwtScaleMap [inline]
sDist() const QwtScaleMap [inline]
setPaintInterval(double p1, double p2)QwtScaleMap
setScaleInterval(double s1, double s2)QwtScaleMap
setTransformation(QwtScaleTransformation *)QwtScaleMap
transform(double s) const QwtScaleMap [inline]
transform(const QwtScaleMap &, const QwtScaleMap &, const QRectF &)QwtScaleMap [static]
transform(const QwtScaleMap &, const QwtScaleMap &, const QPointF &)QwtScaleMap [static]
transformation() const QwtScaleMap
~QwtScaleMap()QwtScaleMap
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_transformation.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_transformation.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_transformation.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_transformation.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,313 @@ + + + + +Qwt User's Guide: QwtScaleTransformation Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtScaleTransformation Class Reference

+
+
+ +

Operations for linear or logarithmic (base 10) transformations. +More...

+ +

#include <qwt_scale_map.h>

+ +

List of all members.

+ + + + + + + + + + +

+Public Types

enum  Type {
+  Linear, +
+  Log10, +
+  Other +
+ }

+Public Member Functions

 QwtScaleTransformation (Type type)
virtual ~QwtScaleTransformation ()
virtual double xForm (double x, double s1, double s2, double p1, double p2) const
virtual double invXForm (double x, double s1, double s2, double p1, double p2) const
Type type () const
virtual QwtScaleTransformationcopy () const
+

Detailed Description

+

Operations for linear or logarithmic (base 10) transformations.

+

Member Enumeration Documentation

+ +
+ +
+ +

Transformation type.

+
Enumerator:
+ + + +
Linear  +

Transformation between 2 linear scales.

+
Log10  +

Transformation between a linear and a logarithmic ( base 10 ) scale.

+
Other  +

Any other type of transformation.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtScaleTransformation::QwtScaleTransformation (Type type)
+
+
+ +

Constructor for a linear transformation.

+ +
+
+ +
+
+ + + + + + + +
QwtScaleTransformation::~QwtScaleTransformation () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
QwtScaleTransformation * QwtScaleTransformation::copy () const [virtual]
+
+
+ +

Create a clone of the transformation.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
double QwtScaleTransformation::invXForm (double p,
double p1,
double p2,
double s1,
double s2 
) const [virtual]
+
+
+ +

Transform a value from a linear to a logarithmic interval.

+
Parameters:
+ + + + + + +
pvalue related to the linear interval [p1, p2]
p1first border of linear interval
p2second border of linear interval
s1first border of logarithmic interval
s2second border of logarithmic interval
+
+
+
Returns:
+
exp((p - p1) / (p2 - p1) * log(s2 / s1)) * s1;
+
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtScaleTransformation::Type QwtScaleTransformation::type () const [inline]
+
+
+
Returns:
Transformation type
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
double QwtScaleTransformation::xForm (double s,
double s1,
double s2,
double p1,
double p2 
) const [virtual]
+
+
+ +

Transform a value between 2 linear intervals.

+
Parameters:
+ + + + + + +
svalue related to the interval [s1, s2]
s1first border of scale interval
s2second border of scale interval
p1first border of target interval
p2second border of target interval
+
+
+
Returns:
+
linear mapping:
+
p1 + (p2 - p1) / (s2 - s1) * (s - s1)
+
+
+
log10 mapping:
+
p1 + (p2 - p1) / log(s2 / s1) * log(s / s1)
+
+
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_transformation-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_transformation-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_transformation-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_transformation-members.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,61 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtScaleTransformation Member List

+
+
+This is the complete list of members for QwtScaleTransformation, including all inherited members. + + + + + + + + + + +
copy() const QwtScaleTransformation [virtual]
invXForm(double x, double s1, double s2, double p1, double p2) const QwtScaleTransformation [virtual]
Linear enum valueQwtScaleTransformation
Log10 enum valueQwtScaleTransformation
Other enum valueQwtScaleTransformation
QwtScaleTransformation(Type type)QwtScaleTransformation
Type enum nameQwtScaleTransformation
type() const QwtScaleTransformation [inline]
xForm(double x, double s1, double s2, double p1, double p2) const QwtScaleTransformation [virtual]
~QwtScaleTransformation()QwtScaleTransformation [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_widget.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_widget.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_widget.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_widget.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,1299 @@ + + + + +Qwt User's Guide: QwtScaleWidget Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtScaleWidget Class Reference

+
+
+ +

A Widget which contains a scale. +More...

+ +

#include <qwt_scale_widget.h>

+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Types

enum  LayoutFlag { TitleInverted = 1 + }
typedef QFlags< LayoutFlagLayoutFlags

+Signals

void scaleDivChanged ()

+Public Member Functions

 QwtScaleWidget (QWidget *parent=NULL)
 QwtScaleWidget (QwtScaleDraw::Alignment, QWidget *parent=NULL)
virtual ~QwtScaleWidget ()
void setTitle (const QString &title)
void setTitle (const QwtText &title)
QwtText title () const
void setLayoutFlag (LayoutFlag, bool on)
bool testLayoutFlag (LayoutFlag) const
void setBorderDist (int start, int end)
int startBorderDist () const
int endBorderDist () const
void getBorderDistHint (int &start, int &end) const
void getMinBorderDist (int &start, int &end) const
void setMinBorderDist (int start, int end)
void setMargin (int)
int margin () const
void setSpacing (int td)
int spacing () const
void setScaleDiv (QwtScaleTransformation *, const QwtScaleDiv &sd)
void setScaleDraw (QwtScaleDraw *)
const QwtScaleDrawscaleDraw () const
QwtScaleDrawscaleDraw ()
void setLabelAlignment (Qt::Alignment)
void setLabelRotation (double rotation)
void setColorBarEnabled (bool)
bool isColorBarEnabled () const
void setColorBarWidth (int)
int colorBarWidth () const
void setColorMap (const QwtInterval &, QwtColorMap *)
QwtInterval colorBarInterval () const
const QwtColorMapcolorMap () const
virtual QSize sizeHint () const
virtual QSize minimumSizeHint () const
int titleHeightForWidth (int width) const
int dimForLength (int length, const QFont &scaleFont) const
void drawColorBar (QPainter *painter, const QRectF &) const
void drawTitle (QPainter *painter, QwtScaleDraw::Alignment, const QRectF &rect) const
void setAlignment (QwtScaleDraw::Alignment)
QwtScaleDraw::Alignment alignment () const
QRectF colorBarRect (const QRectF &) const

+Protected Member Functions

virtual void paintEvent (QPaintEvent *)
virtual void resizeEvent (QResizeEvent *)
void draw (QPainter *p) const
void scaleChange ()
void layoutScale (bool update=true)
+

Detailed Description

+

A Widget which contains a scale.

+

This Widget can be used to decorate composite widgets with a scale.

+

Member Typedef Documentation

+ +
+
+ + + + +
typedef QFlags<LayoutFlag> QwtScaleWidget::LayoutFlags
+
+
+ +

Layout flags of the title.

+ +
+
+

Member Enumeration Documentation

+ +
+
+ + + + +
enum QwtScaleWidget::LayoutFlag
+
+
+ +

Layout flags of the title.

+
Enumerator:
+ +
TitleInverted  +

The title of vertical scales is painted from top to bottom. Otherwise it is painted from bottom to top.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtScaleWidget::QwtScaleWidget (QWidget * parent = NULL) [explicit]
+
+
+ +

Create a scale with the position QwtScaleWidget::Left.

+
Parameters:
+ + +
parentParent widget
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
QwtScaleWidget::QwtScaleWidget (QwtScaleDraw::Alignment align,
QWidget * parent = NULL 
) [explicit]
+
+
+ +

Constructor.

+
Parameters:
+ + + +
alignAlignment.
parentParent widget
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtScaleWidget::~QwtScaleWidget () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
QwtScaleDraw::Alignment QwtScaleWidget::alignment () const
+
+
+
Returns:
position
+
See also:
setPosition()
+ +
+
+ +
+
+ + + + + + + +
QwtInterval QwtScaleWidget::colorBarInterval () const
+
+
+
Returns:
Value interval for the color bar
+
See also:
setColorMap(), colorMap()
+ +
+
+ +
+
+ + + + + + + + +
QRectF QwtScaleWidget::colorBarRect (const QRectF & rect) const
+
+
+

Calculate the the rectangle for the color bar

+
Parameters:
+ + +
rectBounding rectangle for all components of the scale
+
+
+
Returns:
Rectabgle for the color bar
+ +
+
+ +
+
+ + + + + + + +
int QwtScaleWidget::colorBarWidth () const
+
+
+
Returns:
Width of the color bar
+
See also:
setColorBarEnabled(), setColorBarEnabled()
+ +
+
+ +
+
+ + + + + + + +
const QwtColorMap * QwtScaleWidget::colorMap () const
+
+
+
Returns:
Color map
+
See also:
setColorMap(), colorBarInterval()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int QwtScaleWidget::dimForLength (int length,
const QFont & scaleFont 
) const
+
+
+ +

Find the minimum dimension for a given length. dim is the height, length the width seen in direction of the title.

+
Parameters:
+ + + +
lengthwidth for horizontal, height for vertical scales
scaleFontFont of the scale
+
+
+
Returns:
height for horizontal, width for vertical scales
+ +
+
+ +
+
+ + + + + + + + +
void QwtScaleWidget::draw (QPainter * p) const [protected]
+
+
+ +

draw the scale

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtScaleWidget::drawColorBar (QPainter * painter,
const QRectF & rect 
) const
+
+
+

Draw the color bar of the scale widget

+
Parameters:
+ + + +
painterPainter
rectBounding rectangle for the color bar
+
+
+
See also:
setColorBarEnabled()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtScaleWidget::drawTitle (QPainter * painter,
QwtScaleDraw::Alignment align,
const QRectF & rect 
) const
+
+
+

Rotate and paint a title according to its position into a given rectangle.

+
Parameters:
+ + + + +
painterPainter
alignAlignment
rectBounding rectangle
+
+
+ +
+
+ +
+
+ + + + + + + +
int QwtScaleWidget::endBorderDist () const
+
+
+
Returns:
end border distance
+
See also:
setBorderDist()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtScaleWidget::getBorderDistHint (int & start,
int & end 
) const
+
+
+ +

Calculate a hint for the border distances.

+

This member function calculates the distance of the scale's endpoints from the widget borders which is required for the mark labels to fit into the widget. The maximum of this distance an the minimum border distance is returned.

+
Warning:
    +
  • +The minimum border distance depends on the font.
  • +
+
+
See also:
setMinBorderDist(), getMinBorderDist(), setBorderDist()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtScaleWidget::getMinBorderDist (int & start,
int & end 
) const
+
+
+

Get the minimum value for the distances of the scale's endpoints from the widget borders.

+
See also:
setMinBorderDist(), getBorderDistHint()
+ +
+
+ +
+
+ + + + + + + +
bool QwtScaleWidget::isColorBarEnabled () const
+
+
+
Returns:
true, when the color bar is enabled
+
See also:
setColorBarEnabled(), setColorBarWidth()
+ +
+
+ +
+
+ + + + + + + + +
void QwtScaleWidget::layoutScale (bool update_geometry = true) [protected]
+
+
+

Recalculate the scale's geometry and layout based on the current rect and fonts.

+
Parameters:
+ + +
update_geometryNotify the layout system and call update to redraw the scale
+
+
+ +
+
+ +
+
+ + + + + + + +
int QwtScaleWidget::margin () const
+
+
+
Returns:
margin
+
See also:
setMargin()
+ +
+
+ +
+
+ + + + + + + +
QSize QwtScaleWidget::minimumSizeHint () const [virtual]
+
+
+
Returns:
a minimum size hint
+ +
+
+ +
+
+ + + + + + + + +
void QwtScaleWidget::paintEvent (QPaintEvent * event) [protected, virtual]
+
+
+ +

paintEvent

+ +
+
+ +
+
+ + + + + + + + +
void QwtScaleWidget::resizeEvent (QResizeEvent * event) [protected, virtual]
+
+
+

Event handler for resize event

+
Parameters:
+ + +
eventResize event
+
+
+ +
+
+ +
+
+ + + + + + + +
void QwtScaleWidget::scaleChange () [protected]
+
+
+ +

Notify a change of the scale.

+

This virtual function can be overloaded by derived classes. The default implementation updates the geometry and repaints the widget.

+ +
+
+ +
+
+ + + + + + + +
void QwtScaleWidget::scaleDivChanged () [signal]
+
+
+ +

Signal emitted, whenever the scale divison changes.

+ +
+
+ +
+
+ + + + + + + +
const QwtScaleDraw * QwtScaleWidget::scaleDraw () const
+
+
+

scaleDraw of this scale

+
See also:
setScaleDraw(), QwtScaleDraw::setScaleDraw()
+ +
+
+ +
+
+ + + + + + + +
QwtScaleDraw * QwtScaleWidget::scaleDraw ()
+
+
+

scaleDraw of this scale

+
See also:
QwtScaleDraw::setScaleDraw()
+ +
+
+ +
+
+ + + + + + + + +
void QwtScaleWidget::setAlignment (QwtScaleDraw::Alignment alignment)
+
+
+

Change the alignment

+
Parameters:
+ + +
alignmentNew alignment
+
+
+
See also:
alignment()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtScaleWidget::setBorderDist (int dist1,
int dist2 
)
+
+
+

Specify distances of the scale's endpoints from the widget's borders. The actual borders will never be less than minimum border distance.

+
Parameters:
+ + + +
dist1Left or top Distance
dist2Right or bottom distance
+
+
+
See also:
borderDist()
+ +
+
+ +
+
+ + + + + + + + +
void QwtScaleWidget::setColorBarEnabled (bool on)
+
+
+

En/disable a color bar associated to the scale

+
See also:
isColorBarEnabled(), setColorBarWidth()
+ +
+
+ +
+
+ + + + + + + + +
void QwtScaleWidget::setColorBarWidth (int width)
+
+
+

Set the width of the color bar

+
Parameters:
+ + +
widthWidth
+
+
+
See also:
colorBarWidth(), setColorBarEnabled()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtScaleWidget::setColorMap (const QwtIntervalinterval,
QwtColorMapcolorMap 
)
+
+
+

Set the color map and value interval, that are used for displaying the color bar.

+
Parameters:
+ + + +
intervalValue interval
colorMapColor map
+
+
+
See also:
colorMap(), colorBarInterval()
+ +
+
+ +
+
+ + + + + + + + +
void QwtScaleWidget::setLabelAlignment (Qt::Alignment alignment)
+
+
+ +

Change the alignment for the labels.

+
See also:
QwtScaleDraw::setLabelAlignment(), setLabelRotation()
+ +
+
+ +
+
+ + + + + + + + +
void QwtScaleWidget::setLabelRotation (double rotation)
+
+
+ +

Change the rotation for the labels. See QwtScaleDraw::setLabelRotation().

+
Parameters:
+ + +
rotationRotation
+
+
+
See also:
QwtScaleDraw::setLabelRotation(), setLabelFlags()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtScaleWidget::setLayoutFlag (LayoutFlag flag,
bool on 
)
+
+
+

Toggle an layout flag

+
Parameters:
+ + + +
flagLayout flag
ontrue/false
+
+
+
See also:
testLayoutFlag(), LayoutFlag
+ +
+
+ +
+
+ + + + + + + + +
void QwtScaleWidget::setMargin (int margin)
+
+
+ +

Specify the margin to the colorBar/base line.

+
Parameters:
+ + +
marginMargin
+
+
+
See also:
margin()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtScaleWidget::setMinBorderDist (int start,
int end 
)
+
+
+

Set a minimum value for the distances of the scale's endpoints from the widget borders. This is useful to avoid that the scales are "jumping", when the tick labels or their positions change often.

+
Parameters:
+ + + +
startMinimum for the start border
endMinimum for the end border
+
+
+
See also:
getMinBorderDist(), getBorderDistHint()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtScaleWidget::setScaleDiv (QwtScaleTransformationtransformation,
const QwtScaleDivscaleDiv 
)
+
+
+ +

Assign a scale division.

+

The scale division determines where to set the tick marks.

+
Parameters:
+ + + +
transformationTransformation, needed to translate between scale and pixal values
scaleDivScale Division
+
+
+
See also:
For more information about scale divisions, see QwtScaleDiv.
+ +
+
+ +
+
+ + + + + + + + +
void QwtScaleWidget::setScaleDraw (QwtScaleDrawsd)
+
+
+

Set a scale draw sd has to be created with new and will be deleted in ~QwtScaleWidget() or the next call of setScaleDraw().

+
Parameters:
+ + +
sdScaleDraw object
+
+
+
See also:
scaleDraw()
+ +
+
+ +
+
+ + + + + + + + +
void QwtScaleWidget::setSpacing (int spacing)
+
+
+ +

Specify the distance between color bar, scale and title.

+
Parameters:
+ + +
spacingSpacing
+
+
+
See also:
spacing()
+ +
+
+ +
+
+ + + + + + + + +
void QwtScaleWidget::setTitle (const QString & title)
+
+
+

Give title new text contents

+
Parameters:
+ + +
titleNew title
+
+
+
See also:
title(), setTitle(const QwtText &);
+ +
+
+ +
+
+ + + + + + + + +
void QwtScaleWidget::setTitle (const QwtTexttitle)
+
+
+

Give title new text contents

+
Parameters:
+ + +
titleNew title
+
+
+
See also:
title()
+
Warning:
The title flags are interpreted in direction of the label, AlignTop, AlignBottom can't be set as the title will always be aligned to the scale.
+ +
+
+ +
+
+ + + + + + + +
QSize QwtScaleWidget::sizeHint () const [virtual]
+
+
+
Returns:
a size hint
+ +
+
+ +
+
+ + + + + + + +
int QwtScaleWidget::spacing () const
+
+
+
Returns:
distance between scale and title
+
See also:
setMargin()
+ +
+
+ +
+
+ + + + + + + +
int QwtScaleWidget::startBorderDist () const
+
+
+
Returns:
start border distance
+
See also:
setBorderDist()
+ +
+
+ +
+
+ + + + + + + + +
bool QwtScaleWidget::testLayoutFlag (LayoutFlag flag) const
+
+
+

Test a layout flag

+
Parameters:
+ + +
flagLayout flag
+
+
+
Returns:
true/false
+
See also:
setLayoutFlag(), LayoutFlag
+ +
+
+ +
+
+ + + + + + + +
QwtText QwtScaleWidget::title () const
+
+
+
Returns:
title
+
See also:
setTitle()
+ +
+
+ +
+
+ + + + + + + + +
int QwtScaleWidget::titleHeightForWidth (int width) const
+
+
+ +

Find the height of the title for a given width.

+
Parameters:
+ + +
widthWidth
+
+
+
Returns:
height Height
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_widget-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_widget-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_widget-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_scale_widget-members.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,100 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtScaleWidget Member List

+
+
+This is the complete list of members for QwtScaleWidget, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
alignment() const QwtScaleWidget
colorBarInterval() const QwtScaleWidget
colorBarRect(const QRectF &) const QwtScaleWidget
colorBarWidth() const QwtScaleWidget
colorMap() const QwtScaleWidget
dimForLength(int length, const QFont &scaleFont) const QwtScaleWidget
draw(QPainter *p) const QwtScaleWidget [protected]
drawColorBar(QPainter *painter, const QRectF &) const QwtScaleWidget
drawTitle(QPainter *painter, QwtScaleDraw::Alignment, const QRectF &rect) const QwtScaleWidget
endBorderDist() const QwtScaleWidget
getBorderDistHint(int &start, int &end) const QwtScaleWidget
getMinBorderDist(int &start, int &end) const QwtScaleWidget
isColorBarEnabled() const QwtScaleWidget
LayoutFlag enum nameQwtScaleWidget
LayoutFlags typedefQwtScaleWidget
layoutScale(bool update=true)QwtScaleWidget [protected]
margin() const QwtScaleWidget
minimumSizeHint() const QwtScaleWidget [virtual]
paintEvent(QPaintEvent *)QwtScaleWidget [protected, virtual]
QwtScaleWidget(QWidget *parent=NULL)QwtScaleWidget [explicit]
QwtScaleWidget(QwtScaleDraw::Alignment, QWidget *parent=NULL)QwtScaleWidget [explicit]
resizeEvent(QResizeEvent *)QwtScaleWidget [protected, virtual]
scaleChange()QwtScaleWidget [protected]
scaleDivChanged()QwtScaleWidget [signal]
scaleDraw() const QwtScaleWidget
scaleDraw()QwtScaleWidget
setAlignment(QwtScaleDraw::Alignment)QwtScaleWidget
setBorderDist(int start, int end)QwtScaleWidget
setColorBarEnabled(bool)QwtScaleWidget
setColorBarWidth(int)QwtScaleWidget
setColorMap(const QwtInterval &, QwtColorMap *)QwtScaleWidget
setLabelAlignment(Qt::Alignment)QwtScaleWidget
setLabelRotation(double rotation)QwtScaleWidget
setLayoutFlag(LayoutFlag, bool on)QwtScaleWidget
setMargin(int)QwtScaleWidget
setMinBorderDist(int start, int end)QwtScaleWidget
setScaleDiv(QwtScaleTransformation *, const QwtScaleDiv &sd)QwtScaleWidget
setScaleDraw(QwtScaleDraw *)QwtScaleWidget
setSpacing(int td)QwtScaleWidget
setTitle(const QString &title)QwtScaleWidget
setTitle(const QwtText &title)QwtScaleWidget
sizeHint() const QwtScaleWidget [virtual]
spacing() const QwtScaleWidget
startBorderDist() const QwtScaleWidget
testLayoutFlag(LayoutFlag) const QwtScaleWidget
title() const QwtScaleWidget
titleHeightForWidth(int width) const QwtScaleWidget
TitleInverted enum valueQwtScaleWidget
~QwtScaleWidget()QwtScaleWidget [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_series_data.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_series_data.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_series_data.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_series_data.html 2011-04-15 10:49:25.000000000 +0000 @@ -0,0 +1,243 @@ + + + + +Qwt User's Guide: QwtSeriesData< T > Class Template Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtSeriesData< T > Class Template Reference

+
+
+ +

Abstract interface for iterating over samples. +More...

+ +

#include <qwt_series_data.h>

+
+Inheritance diagram for QwtSeriesData< T >:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + +

+Public Member Functions

 QwtSeriesData ()
virtual ~QwtSeriesData ()
virtual size_t size () const =0
virtual T sample (size_t i) const =0
virtual QRectF boundingRect () const =0
virtual void setRectOfInterest (const QRectF &)

+Protected Attributes

QRectF d_boundingRect
+

Detailed Description

+

template<typename T>
+ class QwtSeriesData< T >

+ +

Abstract interface for iterating over samples.

+

Qwt offers several implementations of the QwtSeriesData API, but in situations, where data of an application specific format needs to be displayed, without having to copy it, it is recommended to implement an individual data access.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename T >
+ + + + + + + +
QwtSeriesData< T >::QwtSeriesData ()
+
+
+ +

Constructor.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + +
QwtSeriesData< T >::~QwtSeriesData () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename T>
+ + + + + + + +
virtual QRectF QwtSeriesData< T >::boundingRect () const [pure virtual]
+
+
+

Calculate the bounding rect of all samples

+

The bounding rect is necessary for autoscaling and can be used for a couple of painting optimizations.

+

qwtBoundingRect(...) offers slow implementations iterating over the samples. For large sets it is recommended to implement something faster f.e. by caching the bounding rect.

+ +

Implemented in QwtPointSeriesData, QwtPoint3DSeriesData, QwtIntervalSeriesData, QwtSetSeriesData, QwtPointArrayData, QwtCPointerData, and QwtSyntheticPointData.

+ +
+
+ +
+
+
+template<typename T>
+ + + + + + + + +
virtual T QwtSeriesData< T >::sample (size_t i) const [pure virtual]
+
+ +
+ +
+
+
+template<typename T >
+ + + + + + + + +
void QwtSeriesData< T >::setRectOfInterest (const QRectF & ) [virtual]
+
+
+

Set a the "rect of interest"

+

QwtPlotSeriesItem defines the current area of the plot canvas as "rect of interest" ( QwtPlotSeriesItem::updateScaleDiv() ). It can be used to implement different levels of details.

+

The default implementation does nothing.

+ +

Reimplemented in QwtSyntheticPointData.

+ +
+
+ +
+
+
+template<typename T>
+ + + + + + + +
virtual size_t QwtSeriesData< T >::size () const [pure virtual]
+
+ +
+

Member Data Documentation

+ +
+
+
+template<typename T>
+ + + + +
QRectF QwtSeriesData< T >::d_boundingRect [mutable, protected]
+
+
+ +

Can be used to cache a calculated bounding rectangle.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_series_data__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_series_data__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_series_data__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_series_data__inherit__graph.map 2011-04-15 10:49:16.000000000 +0000 @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_series_data__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_series_data__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_series_data__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_series_data__inherit__graph.md5 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1 @@ +e194d1c5b832620402d574863b8b51b9 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_series_data__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_series_data__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_series_data-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_series_data-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_series_data-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_series_data-members.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,58 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtSeriesData< T > Member List

+
+
+This is the complete list of members for QwtSeriesData< T >, including all inherited members. + + + + + + + +
boundingRect() const =0QwtSeriesData< T > [pure virtual]
d_boundingRectQwtSeriesData< T > [mutable, protected]
QwtSeriesData()QwtSeriesData< T >
sample(size_t i) const =0QwtSeriesData< T > [pure virtual]
setRectOfInterest(const QRectF &)QwtSeriesData< T > [virtual]
size() const =0QwtSeriesData< T > [pure virtual]
~QwtSeriesData()QwtSeriesData< T > [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_set_sample.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_set_sample.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_set_sample.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_set_sample.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,161 @@ + + + + +Qwt User's Guide: QwtSetSample Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtSetSample Class Reference

+
+
+ +

A sample of the types (x1...xn, y) or (x, y1..yn) +More...

+ +

#include <qwt_series_data.h>

+ +

List of all members.

+ + + + + + + + +

+Public Member Functions

 QwtSetSample ()
bool operator== (const QwtSetSample &other) const
bool operator!= (const QwtSetSample &other) const

+Public Attributes

double value
QVector< double > set
+

Detailed Description

+

A sample of the types (x1...xn, y) or (x, y1..yn)

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtSetSample::QwtSetSample () [inline]
+
+
+

Constructor The value is set to 0.0

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + +
bool QwtSetSample::operator!= (const QwtSetSampleother) const [inline]
+
+
+ +

Compare operator.

+ +
+
+ +
+
+ + + + + + + + +
bool QwtSetSample::operator== (const QwtSetSampleother) const [inline]
+
+
+ +

Compare operator.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
QVector<double> QwtSetSample::set
+
+
+ +

Vector of values associated to value.

+ +
+
+ +
+
+ + + + +
double QwtSetSample::value
+
+
+ +

value

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_set_sample-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_set_sample-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_set_sample-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_set_sample-members.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,56 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtSetSample Member List

+
+
+This is the complete list of members for QwtSetSample, including all inherited members. + + + + + +
operator!=(const QwtSetSample &other) const QwtSetSample [inline]
operator==(const QwtSetSample &other) const QwtSetSample [inline]
QwtSetSample()QwtSetSample [inline]
setQwtSetSample
valueQwtSetSample
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_set_series_data.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_set_series_data.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_set_series_data.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_set_series_data.html 2011-04-15 10:49:25.000000000 +0000 @@ -0,0 +1,122 @@ + + + + +Qwt User's Guide: QwtSetSeriesData Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtSetSeriesData Class Reference

+
+
+ +

Interface for iterating over an array of samples. +More...

+ +

#include <qwt_series_data.h>

+
+Inheritance diagram for QwtSetSeriesData:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + +

+Public Member Functions

 QwtSetSeriesData (const QVector< QwtSetSample > &=QVector< QwtSetSample >())
virtual QRectF boundingRect () const
+

Detailed Description

+

Interface for iterating over an array of samples.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtSetSeriesData::QwtSetSeriesData (const QVector< QwtSetSample > & samples = QVector<QwtSetSample>())
+
+
+

Constructor

+
Parameters:
+ + +
samplesSamples
+
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
QRectF QwtSetSeriesData::boundingRect () const [virtual]
+
+
+ +

Calculate the bounding rect.

+

The bounding rectangle is calculated once by iterating over all points and is stored for all following requests.

+
Returns:
Bounding rectangle
+ +

Implements QwtSeriesData< QwtSetSample >.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_set_series_data__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_set_series_data__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_set_series_data__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_set_series_data__inherit__graph.map 2011-04-15 10:49:16.000000000 +0000 @@ -0,0 +1,6 @@ + + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_set_series_data__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_set_series_data__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_set_series_data__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_set_series_data__inherit__graph.md5 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1 @@ +63c6eab0abe2b77f57a80db9437bb96f \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_set_series_data__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_set_series_data__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_set_series_data-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_set_series_data-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_set_series_data-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_set_series_data-members.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,64 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtSetSeriesData Member List

+
+
+This is the complete list of members for QwtSetSeriesData, including all inherited members. + + + + + + + + + + + + + +
boundingRect() const QwtSetSeriesData [virtual]
d_boundingRectQwtSeriesData< QwtSetSample > [mutable, protected]
d_samplesQwtArraySeriesData< QwtSetSample > [protected]
QwtArraySeriesData()QwtArraySeriesData< QwtSetSample >
QwtArraySeriesData(const QVector< QwtSetSample > &)QwtArraySeriesData< QwtSetSample >
QwtSeriesData()QwtSeriesData< QwtSetSample >
QwtSetSeriesData(const QVector< QwtSetSample > &=QVector< QwtSetSample >())QwtSetSeriesData
sample(size_t) constQwtArraySeriesData< QwtSetSample > [virtual]
samples() constQwtArraySeriesData< QwtSetSample >
setRectOfInterest(const QRectF &)QwtSeriesData< QwtSetSample > [virtual]
setSamples(const QVector< QwtSetSample > &)QwtArraySeriesData< QwtSetSample >
size() constQwtArraySeriesData< QwtSetSample > [virtual]
~QwtSeriesData()QwtSeriesData< QwtSetSample > [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_simple_compass_rose.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_simple_compass_rose.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_simple_compass_rose.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_simple_compass_rose.html 2011-04-15 10:49:25.000000000 +0000 @@ -0,0 +1,448 @@ + + + + +Qwt User's Guide: QwtSimpleCompassRose Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtSimpleCompassRose Class Reference

+
+
+ +

A simple rose for QwtCompass. +More...

+ +

#include <qwt_compass_rose.h>

+
+Inheritance diagram for QwtSimpleCompassRose:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + +

+Public Member Functions

 QwtSimpleCompassRose (int numThorns=8, int numThornLevels=-1)
virtual ~QwtSimpleCompassRose ()
void setWidth (double w)
double width () const
void setNumThorns (int count)
int numThorns () const
void setNumThornLevels (int count)
int numThornLevels () const
void setShrinkFactor (double factor)
double shrinkFactor () const
virtual void draw (QPainter *, const QPointF &center, double radius, double north, QPalette::ColorGroup=QPalette::Active) const

+Static Public Member Functions

static void drawRose (QPainter *, const QPalette &, const QPointF &center, double radius, double origin, double width, int numThorns, int numThornLevels, double shrinkFactor)
+

Detailed Description

+

A simple rose for QwtCompass.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
QwtSimpleCompassRose::QwtSimpleCompassRose (int numThorns = 8,
int numThornLevels = -1 
)
+
+
+

Constructor

+
Parameters:
+ + + +
numThornsNumber of thorns
numThornLevelsNumber of thorn levels
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtSimpleCompassRose::~QwtSimpleCompassRose () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtSimpleCompassRose::draw (QPainter * painter,
const QPointF & center,
double radius,
double north,
QPalette::ColorGroup cg = QPalette::Active 
) const [virtual]
+
+
+

Draw the rose

+
Parameters:
+ + + + + + +
painterPainter
centerCenter point
radiusRadius of the rose
northPosition
cgColor group
+
+
+ +

Implements QwtCompassRose.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void QwtSimpleCompassRose::drawRose (QPainter * painter,
const QPalette & palette,
const QPointF & center,
double radius,
double north,
double width,
int numThorns,
int numThornLevels,
double shrinkFactor 
) [static]
+
+
+

Draw the rose

+
Parameters:
+ + + + + + + + + + +
painterPainter
palettePalette
centerCenter of the rose
radiusRadius of the rose
northPosition pointing to north
widthWidth of the rose
numThornsNumber of thorns
numThornLevelsNumber of thorn levels
shrinkFactorFactor to shrink the thorns with each level
+
+
+ +
+
+ +
+
+ + + + + + + +
int QwtSimpleCompassRose::numThornLevels () const
+
+
+
Returns:
Number of thorn levels
+
See also:
setNumThorns(), setNumThornLevels()
+ +
+
+ +
+
+ + + + + + + +
int QwtSimpleCompassRose::numThorns () const
+
+
+
Returns:
Number of thorns
+
See also:
setNumThorns(), setNumThornLevels()
+ +
+
+ +
+
+ + + + + + + + +
void QwtSimpleCompassRose::setNumThornLevels (int numThornLevels)
+
+
+

Set the of thorns levels

+
Parameters:
+ + +
numThornLevelsNumber of thorns levels
+
+
+
See also:
setNumThorns(), numThornLevels()
+ +
+
+ +
+
+ + + + + + + + +
void QwtSimpleCompassRose::setNumThorns (int numThorns)
+
+
+

Set the number of thorns on one level The number is aligned to a multiple of 4, with a minimum of 4

+
Parameters:
+ + +
numThornsNumber of thorns
+
+
+
See also:
numThorns(), setNumThornLevels()
+ +
+
+ +
+
+ + + + + + + + +
void QwtSimpleCompassRose::setShrinkFactor (double factor)
+
+
+

Set the Factor how to shrink the thorns with each level The default value is 0.9.

+
See also:
shrinkFactor()
+ +
+
+ +
+
+ + + + + + + + +
void QwtSimpleCompassRose::setWidth (double width)
+
+
+

Set the width of the rose heads. Lower value make thinner heads. The range is limited from 0.03 to 0.4.

+
Parameters:
+ + +
widthWidth
+
+
+ +
+
+ +
+
+ + + + + + + +
double QwtSimpleCompassRose::shrinkFactor () const
+
+
+
Returns:
Factor how to shrink the thorns with each level
+
See also:
setShrinkFactor()
+ +
+
+ +
+
+ + + + + + + +
double QwtSimpleCompassRose::width () const
+
+
+
See also:
setWidth()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_simple_compass_rose__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_simple_compass_rose__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_simple_compass_rose__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_simple_compass_rose__inherit__graph.map 2011-04-15 10:49:16.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_simple_compass_rose__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_simple_compass_rose__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_simple_compass_rose__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_simple_compass_rose__inherit__graph.md5 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1 @@ +57bc4e732cba88e5126ce2034afab7d2 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_simple_compass_rose__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_simple_compass_rose__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_simple_compass_rose-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_simple_compass_rose-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_simple_compass_rose-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_simple_compass_rose-members.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,66 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtSimpleCompassRose Member List

+
+
+This is the complete list of members for QwtSimpleCompassRose, including all inherited members. + + + + + + + + + + + + + + + +
draw(QPainter *, const QPointF &center, double radius, double north, QPalette::ColorGroup=QPalette::Active) const QwtSimpleCompassRose [virtual]
drawRose(QPainter *, const QPalette &, const QPointF &center, double radius, double origin, double width, int numThorns, int numThornLevels, double shrinkFactor)QwtSimpleCompassRose [static]
numThornLevels() const QwtSimpleCompassRose
numThorns() const QwtSimpleCompassRose
palette() const QwtCompassRose [inline]
QwtSimpleCompassRose(int numThorns=8, int numThornLevels=-1)QwtSimpleCompassRose
setNumThornLevels(int count)QwtSimpleCompassRose
setNumThorns(int count)QwtSimpleCompassRose
setPalette(const QPalette &p)QwtCompassRose [inline, virtual]
setShrinkFactor(double factor)QwtSimpleCompassRose
setWidth(double w)QwtSimpleCompassRose
shrinkFactor() const QwtSimpleCompassRose
width() const QwtSimpleCompassRose
~QwtCompassRose()QwtCompassRose [inline, virtual]
~QwtSimpleCompassRose()QwtSimpleCompassRose [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_slider.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_slider.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_slider.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_slider.html 2011-04-15 10:49:25.000000000 +0000 @@ -0,0 +1,944 @@ + + + + +Qwt User's Guide: QwtSlider Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtSlider Class Reference

+
+
+ +

The Slider Widget. +More...

+ +

#include <qwt_slider.h>

+
+Inheritance diagram for QwtSlider:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Types

enum  ScalePos {
+  NoScale, +
+  LeftScale, +
+  RightScale, +
+  TopScale, +
+  BottomScale +
+ }
enum  BackgroundStyle {
+  Trough = 0x01, +
+  Groove = 0x02 +
+ }
typedef QFlags< BackgroundStyleBackgroundStyles

+Public Member Functions

 QwtSlider (QWidget *parent, Qt::Orientation=Qt::Horizontal, ScalePos=NoScale, BackgroundStyles=Trough)
virtual void setOrientation (Qt::Orientation)
void setBackgroundStyle (BackgroundStyles)
BackgroundStyles backgroundStyle () const
void setScalePosition (ScalePos s)
ScalePos scalePosition () const
void setHandleSize (int width, int height)
void setHandleSize (const QSize &)
QSize handleSize () const
void setBorderWidth (int bw)
int borderWidth () const
void setSpacing (int)
int spacing () const
virtual QSize sizeHint () const
virtual QSize minimumSizeHint () const
void setScaleDraw (QwtScaleDraw *)
const QwtScaleDrawscaleDraw () const

+Protected Member Functions

virtual double getValue (const QPoint &p)
virtual void getScrollMode (const QPoint &p, QwtAbstractSlider::ScrollMode &, int &direction) const
virtual void drawSlider (QPainter *, const QRect &) const
virtual void drawHandle (QPainter *, const QRect &, int pos) const
virtual void resizeEvent (QResizeEvent *)
virtual void paintEvent (QPaintEvent *)
virtual void changeEvent (QEvent *)
virtual void valueChange ()
virtual void rangeChange ()
virtual void scaleChange ()
int transform (double v) const
QwtScaleDrawscaleDraw ()
+

Detailed Description

+

The Slider Widget.

+

QwtSlider is a slider widget which operates on an interval of type double. QwtSlider supports different layouts as well as a scale.

+
+sliders.png +
+
See also:
QwtAbstractSlider and QwtAbstractScale for the descriptions of the inherited members.
+

Member Typedef Documentation

+ +
+
+ + + + +
typedef QFlags<BackgroundStyle> QwtSlider::BackgroundStyles
+
+
+ +

Background styles.

+ +
+
+

Member Enumeration Documentation

+ +
+
+ + + + +
enum QwtSlider::BackgroundStyle
+
+
+

Background style.

+
See also:
QwtSlider()
+
Enumerator:
+ + +
Trough  +

Trough background.

+
Groove  +

Groove.

+
+
+
+ +
+
+ +
+
+ + + + +
enum QwtSlider::ScalePos
+
+
+

Scale position. QwtSlider tries to enforce valid combinations of its orientation and scale position:

+
    +
  • Qt::Horizonal combines with NoScale, TopScale and BottomScale
  • +
  • Qt::Vertical combines with NoScale, LeftScale and RightScale
  • +
+
See also:
QwtSlider()
+
Enumerator:
+ + + + + +
NoScale  +

The slider has no scale.

+
LeftScale  +

The scale is left of the slider.

+
RightScale  +

The scale is right of the slider.

+
TopScale  +

The scale is above of the slider.

+
BottomScale  +

The scale is below of the slider.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
QwtSlider::QwtSlider (QWidget * parent,
Qt::Orientation orientation = Qt::Horizontal,
ScalePos scalePos = NoScale,
BackgroundStyles bgStyle = Trough 
) [explicit]
+
+
+ +

Constructor.

+
Parameters:
+ + + + + +
parentparent widget
orientationOrientation of the slider. Can be Qt::Horizontal or Qt::Vertical. Defaults to Qt::Horizontal.
scalePosPosition of the scale. Defaults to QwtSlider::NoScale.
bgStyleBackground style. QwtSlider::Trough draws the slider button in a trough, QwtSlider::Slot draws a slot underneath the button. An or-combination of both may also be used. The default is QwtSlider::Trough.
+
+
+

QwtSlider enforces valid combinations of its orientation and scale position. If the combination is invalid, the scale position will be set to NoScale. Valid combinations are:

+
    +
  • Qt::Horizonal with NoScale, TopScale, or BottomScale;
  • +
  • Qt::Vertical with NoScale, LeftScale, or RightScale.
  • +
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
QwtSlider::BackgroundStyles QwtSlider::backgroundStyle () const
+
+
+
Returns:
the background style.
+ +
+
+ +
+
+ + + + + + + +
int QwtSlider::borderWidth () const
+
+
+
Returns:
the border width.
+
See also:
setBorderWidth()
+ +
+
+ +
+
+ + + + + + + + +
void QwtSlider::changeEvent (QEvent * event) [protected, virtual]
+
+
+ +

Qt change event handler.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtSlider::drawHandle (QPainter * painter,
const QRect & sliderRect,
int pos 
) const [protected, virtual]
+
+
+

Draw the thumb at a position

+
Parameters:
+ + + + +
painterPainter
sliderRectBounding rectangle of the slider
posPosition of the slider thumb
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtSlider::drawSlider (QPainter * painter,
const QRect & sliderRect 
) const [protected, virtual]
+
+
+

Draw the slider into the specified rectangle.

+
Parameters:
+ + + +
painterPainter
sliderRectBounding rectangle of the slider
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtSlider::getScrollMode (const QPoint & p,
QwtAbstractSlider::ScrollModescrollMode,
int & direction 
) const [protected, virtual]
+
+
+ +

Determine scrolling mode and direction.

+
Parameters:
+ + + + +
ppoint
scrollModeScrolling mode
directionDirection
+
+
+ +

Implements QwtAbstractSlider.

+ +
+
+ +
+
+ + + + + + + + +
double QwtSlider::getValue (const QPoint & pos) [protected, virtual]
+
+
+

Determine the value corresponding to a specified mouse location.

+
Parameters:
+ + +
posMouse position
+
+
+ +

Implements QwtAbstractSlider.

+ +
+
+ +
+
+ + + + + + + +
QSize QwtSlider::handleSize () const
+
+
+
Returns:
Size of the handle.
+
See also:
setHandleSize()
+ +
+
+ +
+
+ + + + + + + +
QSize QwtSlider::minimumSizeHint () const [virtual]
+
+
+ +

Return a minimum size hint.

+
Warning:
The return value of QwtSlider::minimumSizeHint() depends on the font and the scale.
+ +
+
+ +
+
+ + + + + + + + +
void QwtSlider::paintEvent (QPaintEvent * event) [protected, virtual]
+
+
+

Qt paint event

+
Parameters:
+ + +
eventPaint event
+
+
+ +
+
+ +
+
+ + + + + + + +
void QwtSlider::rangeChange () [protected, virtual]
+
+
+ +

Notify change of range.

+ +

Reimplemented from QwtDoubleRange.

+ +
+
+ +
+
+ + + + + + + + +
void QwtSlider::resizeEvent (QResizeEvent * ) [protected, virtual]
+
+
+ +

Qt resize event.

+ +
+
+ +
+
+ + + + + + + +
void QwtSlider::scaleChange () [protected, virtual]
+
+
+ +

Notify changed scale.

+ +

Reimplemented from QwtAbstractScale.

+ +
+
+ +
+
+ + + + + + + +
const QwtScaleDraw * QwtSlider::scaleDraw () const
+
+
+
Returns:
the scale draw of the slider
+
See also:
setScaleDraw()
+ +
+
+ +
+
+ + + + + + + +
QwtScaleDraw * QwtSlider::scaleDraw () [protected]
+
+
+
Returns:
the scale draw of the slider
+
See also:
setScaleDraw()
+ +
+
+ +
+
+ + + + + + + +
QwtSlider::ScalePos QwtSlider::scalePosition () const
+
+
+ +

Return the scale position.

+ +
+
+ +
+
+ + + + + + + + +
void QwtSlider::setBackgroundStyle (BackgroundStyles style)
+
+
+

Set the background style.

+ +
+
+ +
+
+ + + + + + + + +
void QwtSlider::setBorderWidth (int width)
+
+
+ +

Change the slider's border width.

+
Parameters:
+ + +
widthBorder width
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtSlider::setHandleSize (const QSize & size)
+
+
+ +

Set the slider's handle size.

+
Parameters:
+ + +
sizeNew size
+
+
+
See also:
handleSize()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtSlider::setHandleSize (int width,
int height 
)
+
+
+ +

Set the slider's handle size.

+
Parameters:
+ + + +
widthWidth
heightHeight
+
+
+
See also:
handleSize()
+ +
+
+ +
+
+ + + + + + + + +
void QwtSlider::setOrientation (Qt::Orientation o) [virtual]
+
+
+ +

Set the orientation.

+
Parameters:
+ + +
oOrientation. Allowed values are Qt::Horizontal and Qt::Vertical.
+
+
+

If the new orientation and the old scale position are an invalid combination, the scale position will be set to QwtSlider::NoScale.

+
See also:
QwtAbstractSlider::orientation()
+ +

Reimplemented from QwtAbstractSlider.

+ +
+
+ +
+
+ + + + + + + + +
void QwtSlider::setScaleDraw (QwtScaleDrawscaleDraw)
+
+
+ +

Set a scale draw.

+

For changing the labels of the scales, it is necessary to derive from QwtScaleDraw and overload QwtScaleDraw::label().

+
Parameters:
+ + +
scaleDrawScaleDraw object, that has to be created with new and will be deleted in ~QwtSlider or the next call of setScaleDraw().
+
+
+
See also:
scaleDraw()
+ +
+
+ +
+
+ + + + + + + + +
void QwtSlider::setScalePosition (ScalePos scalePos)
+
+
+ +

Change the scale position (and slider orientation).

+
Parameters:
+ + +
scalePosPosition of the scale.
+
+
+

A valid combination of scale position and orientation is enforced:

+
    +
  • if the new scale position is Left or Right, the scale orientation will become Qt::Vertical;
  • +
  • if the new scale position is Bottom or Top the scale orientation will become Qt::Horizontal;
  • +
  • if the new scale position is QwtSlider::NoScale, the scale orientation will not change.
  • +
+ +
+
+ +
+
+ + + + + + + + +
void QwtSlider::setSpacing (int spacing)
+
+
+ +

Change the spacing between pipe and scale.

+

A spacing of 0 means, that the backbone of the scale is below the trough.

+

The default setting is 4 pixels.

+
Parameters:
+ + +
spacingNumber of pixels
+
+
+
See also:
spacing();
+ +
+
+ +
+
+ + + + + + + +
QSize QwtSlider::sizeHint () const [virtual]
+
+ +
+ +
+
+ + + + + + + +
int QwtSlider::spacing () const
+
+
+
Returns:
Number of pixels between slider and scale
+
See also:
setSpacing()
+ +
+
+ +
+
+ + + + + + + + +
int QwtSlider::transform (double value) const [protected]
+
+
+

Map and round a value into widget coordinates

+
Parameters:
+ + +
valueValue
+
+
+ +
+
+ +
+
+ + + + + + + +
void QwtSlider::valueChange () [protected, virtual]
+
+
+ +

Notify change of value.

+ +

Reimplemented from QwtAbstractSlider.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_slider__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_slider__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_slider__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_slider__inherit__graph.map 2011-04-15 10:49:16.000000000 +0000 @@ -0,0 +1,5 @@ + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_slider__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_slider__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_slider__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_slider__inherit__graph.md5 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1 @@ +912178d43e8ee5bafdcd2c7d186402b4 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_slider__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_slider__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_slider-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_slider-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_slider-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_slider-members.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,161 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtSlider Member List

+
+
+This is the complete list of members for QwtSlider, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
abstractScaleDraw() const QwtAbstractScale [protected]
abstractScaleDraw()QwtAbstractScale [protected]
autoScale() const QwtAbstractScale
backgroundStyle() const QwtSlider
BackgroundStyle enum nameQwtSlider
BackgroundStyles typedefQwtSlider
borderWidth() const QwtSlider
BottomScale enum valueQwtSlider
changeEvent(QEvent *)QwtSlider [protected, virtual]
drawHandle(QPainter *, const QRect &, int pos) const QwtSlider [protected, virtual]
drawSlider(QPainter *, const QRect &) const QwtSlider [protected, virtual]
exactPrevValue() const QwtDoubleRange [protected]
exactValue() const QwtDoubleRange [protected]
fitValue(double val)QwtAbstractSlider [virtual, slot]
getScrollMode(const QPoint &p, QwtAbstractSlider::ScrollMode &, int &direction) const QwtSlider [protected, virtual]
getValue(const QPoint &p)QwtSlider [protected, virtual]
Groove enum valueQwtSlider
handleSize() const QwtSlider
incPages(int)QwtDoubleRange [virtual]
incValue(int steps)QwtAbstractSlider [virtual, slot]
isReadOnly() const QwtAbstractSlider
isValid() const QwtAbstractSlider [inline]
keyPressEvent(QKeyEvent *e)QwtAbstractSlider [protected, virtual]
LeftScale enum valueQwtSlider
mass() const QwtAbstractSlider [virtual]
maxValue() const QwtDoubleRange
minimumSizeHint() const QwtSlider [virtual]
minValue() const QwtDoubleRange
mouseMoveEvent(QMouseEvent *e)QwtAbstractSlider [protected, virtual]
mouseOffset() const QwtAbstractSlider [protected]
mousePressEvent(QMouseEvent *e)QwtAbstractSlider [protected, virtual]
mouseReleaseEvent(QMouseEvent *e)QwtAbstractSlider [protected, virtual]
NoScale enum valueQwtSlider
orientation() const QwtAbstractSlider
pageSize() const QwtDoubleRange
paintEvent(QPaintEvent *)QwtSlider [protected, virtual]
periodic() const QwtDoubleRange
prevValue() const QwtDoubleRange [protected]
QwtAbstractScale()QwtAbstractScale
QwtAbstractSlider(Qt::Orientation, QWidget *parent=NULL)QwtAbstractSlider [explicit]
QwtDoubleRange()QwtDoubleRange
QwtSlider(QWidget *parent, Qt::Orientation=Qt::Horizontal, ScalePos=NoScale, BackgroundStyles=Trough)QwtSlider [explicit]
rangeChange()QwtSlider [protected, virtual]
rescale(double vmin, double vmax, double step=0.0)QwtAbstractScale [protected]
resizeEvent(QResizeEvent *)QwtSlider [protected, virtual]
RightScale enum valueQwtSlider
scaleChange()QwtSlider [protected, virtual]
scaleDraw() const QwtSlider
scaleDraw()QwtSlider [protected]
scaleEngine() const QwtAbstractScale
scaleEngine()QwtAbstractScale
scaleMap() const QwtAbstractScale
scaleMaxMajor() const QwtAbstractScale
scaleMaxMinor() const QwtAbstractScale
ScalePos enum nameQwtSlider
scalePosition() const QwtSlider
ScrDirect enum value (defined in QwtAbstractSlider)QwtAbstractSlider
ScrMouse enum valueQwtAbstractSlider
ScrNone enum valueQwtAbstractSlider
scrollMode() const QwtAbstractSlider [protected]
ScrollMode enum nameQwtAbstractSlider
ScrPage enum valueQwtAbstractSlider
ScrTimer enum valueQwtAbstractSlider
setAbstractScaleDraw(QwtAbstractScaleDraw *)QwtAbstractScale [protected]
setAutoScale()QwtAbstractScale
setBackgroundStyle(BackgroundStyles)QwtSlider
setBorderWidth(int bw)QwtSlider
setHandleSize(int width, int height)QwtSlider
setHandleSize(const QSize &)QwtSlider
setMass(double val)QwtAbstractSlider [virtual]
setMouseOffset(double)QwtAbstractSlider [protected]
setOrientation(Qt::Orientation)QwtSlider [virtual]
setPeriodic(bool tf)QwtDoubleRange
setPosition(const QPoint &)QwtAbstractSlider [protected, virtual]
setRange(double vmin, double vmax, double vstep=0.0, int pagesize=1)QwtDoubleRange
setReadOnly(bool)QwtAbstractSlider [virtual, slot]
setScale(double vmin, double vmax, double step=0.0)QwtAbstractScale
setScale(const QwtInterval &, double step=0.0)QwtAbstractScale
setScale(const QwtScaleDiv &)QwtAbstractScale
setScaleDraw(QwtScaleDraw *)QwtSlider
setScaleEngine(QwtScaleEngine *)QwtAbstractScale
setScaleMaxMajor(int ticks)QwtAbstractScale
setScaleMaxMinor(int ticks)QwtAbstractScale
setScalePosition(ScalePos s)QwtSlider
setSpacing(int)QwtSlider
setStep(double)QwtDoubleRange
setTracking(bool enable)QwtAbstractSlider
setUpdateTime(int t)QwtAbstractSlider
setValid(bool valid)QwtAbstractSlider [inline]
setValue(double val)QwtAbstractSlider [virtual, slot]
sizeHint() const QwtSlider [virtual]
sliderMoved(double value)QwtAbstractSlider [signal]
sliderPressed()QwtAbstractSlider [signal]
sliderReleased()QwtAbstractSlider [signal]
spacing() const QwtSlider
step() const QwtDoubleRange
stepChange()QwtDoubleRange [protected, virtual]
stopMoving()QwtAbstractSlider
timerEvent(QTimerEvent *e)QwtAbstractSlider [protected, virtual]
TopScale enum valueQwtSlider
transform(double v) const QwtSlider [protected]
Trough enum valueQwtSlider
value() const QwtDoubleRange
valueChange()QwtSlider [protected, virtual]
valueChanged(double value)QwtAbstractSlider [signal]
wheelEvent(QWheelEvent *e)QwtAbstractSlider [protected, virtual]
~QwtAbstractScale()QwtAbstractScale [virtual]
~QwtAbstractSlider()QwtAbstractSlider [virtual]
~QwtDoubleRange()QwtDoubleRange [virtual]
~QwtSlider() (defined in QwtSlider)QwtSlider [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_spline_curve_fitter.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_spline_curve_fitter.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_spline_curve_fitter.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_spline_curve_fitter.html 2011-04-15 10:49:25.000000000 +0000 @@ -0,0 +1,334 @@ + + + + +Qwt User's Guide: QwtSplineCurveFitter Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtSplineCurveFitter Class Reference

+
+
+ +

A curve fitter using cubic splines. +More...

+ +

#include <qwt_curve_fitter.h>

+
+Inheritance diagram for QwtSplineCurveFitter:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + +

+Public Types

enum  FitMode {
+  Auto, +
+  Spline, +
+  ParametricSpline +
+ }

+Public Member Functions

 QwtSplineCurveFitter ()
virtual ~QwtSplineCurveFitter ()
void setFitMode (FitMode)
FitMode fitMode () const
void setSpline (const QwtSpline &)
const QwtSplinespline () const
QwtSplinespline ()
void setSplineSize (int size)
int splineSize () const
virtual QPolygonF fitCurve (const QPolygonF &) const
+

Detailed Description

+

A curve fitter using cubic splines.

+

Member Enumeration Documentation

+ +
+ +
+

Spline type The default setting is Auto

+
See also:
setFitMode(), FitMode()
+
Enumerator:
+ + + +
Auto  +

Use the default spline algorithm for polygons with increasing x values ( p[i-1] < p[i] ), otherwise use a parametric spline algorithm.

+
Spline  +

Use a default spline algorithm.

+
ParametricSpline  +

Use a parametric spline algorithm.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtSplineCurveFitter::QwtSplineCurveFitter ()
+
+
+ +

Constructor.

+ +
+
+ +
+
+ + + + + + + +
QwtSplineCurveFitter::~QwtSplineCurveFitter () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + +
QPolygonF QwtSplineCurveFitter::fitCurve (const QPolygonF & points) const [virtual]
+
+
+

Find a curve which has the best fit to a series of data points

+
Parameters:
+ + +
pointsSeries of data points
+
+
+
Returns:
Curve points
+ +

Implements QwtCurveFitter.

+ +
+
+ +
+
+ + + + + + + +
QwtSplineCurveFitter::FitMode QwtSplineCurveFitter::fitMode () const
+
+
+
Returns:
Mode representing a spline algorithm
+
See also:
setFitMode()
+ +
+
+ +
+
+ + + + + + + + +
void QwtSplineCurveFitter::setFitMode (FitMode mode)
+
+
+

Select the algorithm used for building the spline

+
Parameters:
+ + +
modeMode representing a spline algorithm
+
+
+
See also:
fitMode()
+ +
+
+ +
+
+ + + + + + + + +
void QwtSplineCurveFitter::setSpline (const QwtSplinespline)
+
+
+

Assign a spline

+
Parameters:
+ + +
splineSpline
+
+
+
See also:
spline()
+ +
+
+ +
+
+ + + + + + + + +
void QwtSplineCurveFitter::setSplineSize (int splineSize)
+
+
+

Assign a spline size ( has to be at least 10 points )

+
Parameters:
+ + +
splineSizeSpline size
+
+
+
See also:
splineSize()
+ +
+
+ +
+
+ + + + + + + +
const QwtSpline & QwtSplineCurveFitter::spline () const
+
+
+
Returns:
Spline
+
See also:
setSpline()
+ +
+
+ +
+
+ + + + + + + +
QwtSpline & QwtSplineCurveFitter::spline ()
+
+
+
Returns:
Spline
+
See also:
setSpline()
+ +
+
+ +
+
+ + + + + + + +
int QwtSplineCurveFitter::splineSize () const
+
+
+
Returns:
Spline size
+
See also:
setSplineSize()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_spline_curve_fitter__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_spline_curve_fitter__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_spline_curve_fitter__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_spline_curve_fitter__inherit__graph.map 2011-04-15 10:49:16.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_spline_curve_fitter__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_spline_curve_fitter__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_spline_curve_fitter__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_spline_curve_fitter__inherit__graph.md5 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1 @@ +818538d7203c277ccac425d71322cbd6 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_spline_curve_fitter__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_spline_curve_fitter__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_spline_curve_fitter-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_spline_curve_fitter-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_spline_curve_fitter-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_spline_curve_fitter-members.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,67 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtSplineCurveFitter Member List

+
+ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_spline.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_spline.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_spline.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_spline.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,467 @@ + + + + +Qwt User's Guide: QwtSpline Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtSpline Class Reference

+
+
+ +

A class for spline interpolation. +More...

+ +

#include <qwt_spline.h>

+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + +

+Public Types

enum  SplineType {
+  Natural, +
+  Periodic +
+ }

+Public Member Functions

 QwtSpline ()
 QwtSpline (const QwtSpline &)
 ~QwtSpline ()
QwtSplineoperator= (const QwtSpline &)
void setSplineType (SplineType)
SplineType splineType () const
bool setPoints (const QPolygonF &points)
QPolygonF points () const
void reset ()
bool isValid () const
double value (double x) const
const QVector< double > & coefficientsA () const
const QVector< double > & coefficientsB () const
const QVector< double > & coefficientsC () const

+Protected Member Functions

bool buildNaturalSpline (const QPolygonF &)
bool buildPeriodicSpline (const QPolygonF &)
+

Detailed Description

+

A class for spline interpolation.

+

The QwtSpline class is used for cubical spline interpolation. Two types of splines, natural and periodic, are supported.

+
Usage:
    +
  1. +First call setPoints() to determine the spline coefficients for a tabulated function y(x).
  2. +
  3. +After the coefficients have been set up, the interpolated function value for an argument x can be determined by calling QwtSpline::value().
  4. +
+
+
Example:
#include <qwt_spline.h>
+
+QPolygonF interpolate(const QPolygonF& points, int numValues)
+{
+    QwtSpline spline;
+    if ( !spline.setPoints(points) )
+        return points;
+
+    QPolygonF interpolatedPoints(numValues);
+
+    const double delta =
+        (points[numPoints - 1].x() - points[0].x()) / (points.size() - 1);
+    for(i = 0; i < points.size(); i++)  / interpolate
+    {
+        const double x = points[0].x() + i * delta;
+        interpolatedPoints[i].setX(x);
+        interpolatedPoints[i].setY(spline.value(x));
+    }
+    return interpolatedPoints;
+}
+
+

Member Enumeration Documentation

+ +
+
+ + + + +
enum QwtSpline::SplineType
+
+
+ +

Spline type.

+
Enumerator:
+ + +
Natural  +

A natural spline.

+
Periodic  +

A periodic spline.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtSpline::QwtSpline ()
+
+
+ +

Constructor.

+ +
+
+ +
+
+ + + + + + + + +
QwtSpline::QwtSpline (const QwtSplineother)
+
+
+

Copy constructor

+
Parameters:
+ + +
otherSpline used for initilization
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtSpline::~QwtSpline ()
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + +
bool QwtSpline::buildNaturalSpline (const QPolygonF & points) [protected]
+
+
+ +

Determines the coefficients for a natural spline.

+
Returns:
true if successful
+ +
+
+ +
+
+ + + + + + + + +
bool QwtSpline::buildPeriodicSpline (const QPolygonF & points) [protected]
+
+
+ +

Determines the coefficients for a periodic spline.

+
Returns:
true if successful
+ +
+
+ +
+
+ + + + + + + +
const QVector< double > & QwtSpline::coefficientsA () const
+
+
+
Returns:
A coefficients
+ +
+
+ +
+
+ + + + + + + +
const QVector< double > & QwtSpline::coefficientsB () const
+
+
+
Returns:
B coefficients
+ +
+
+ +
+
+ + + + + + + +
const QVector< double > & QwtSpline::coefficientsC () const
+
+
+
Returns:
C coefficients
+ +
+
+ +
+
+ + + + + + + +
bool QwtSpline::isValid () const
+
+
+ +

True if valid.

+ +
+
+ +
+
+ + + + + + + + +
QwtSpline & QwtSpline::operator= (const QwtSplineother)
+
+
+

Assignment operator

+
Parameters:
+ + +
otherSpline used for initilization
+
+
+ +
+
+ +
+
+ + + + + + + +
QPolygonF QwtSpline::points () const
+
+
+

Return points passed by setPoints

+ +
+
+ +
+
+ + + + + + + +
void QwtSpline::reset ()
+
+
+ +

Free allocated memory and set size to 0.

+ +
+
+ +
+
+ + + + + + + + +
bool QwtSpline::setPoints (const QPolygonF & points)
+
+
+ +

Calculate the spline coefficients.

+

Depending on the value of periodic, this function will determine the coefficients for a natural or a periodic spline and store them internally.

+
Parameters:
+ + +
pointsPoints
+
+
+
Returns:
true if successful
+
Warning:
The sequence of x (but not y) values has to be strictly monotone increasing, which means points[i].x() < points[i+1].x(). If this is not the case, the function will return false
+ +
+
+ +
+
+ + + + + + + + +
void QwtSpline::setSplineType (SplineType splineType)
+
+
+

Select the algorithm used for calculating the spline

+
Parameters:
+ + +
splineTypeSpline type
+
+
+
See also:
splineType()
+ +
+
+ +
+
+ + + + + + + +
QwtSpline::SplineType QwtSpline::splineType () const
+
+
+
Returns:
the spline type
+
See also:
setSplineType()
+ +
+
+ +
+
+ + + + + + + + +
double QwtSpline::value (double x) const
+
+
+

Calculate the interpolated function value corresponding to a given argument x.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_spline-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_spline-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_spline-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_spline-members.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,70 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtSpline Member List

+
+
+This is the complete list of members for QwtSpline, including all inherited members. + + + + + + + + + + + + + + + + + + + +
buildNaturalSpline(const QPolygonF &)QwtSpline [protected]
buildPeriodicSpline(const QPolygonF &)QwtSpline [protected]
coefficientsA() const QwtSpline
coefficientsB() const QwtSpline
coefficientsC() const QwtSpline
isValid() const QwtSpline
Natural enum valueQwtSpline
operator=(const QwtSpline &)QwtSpline
Periodic enum valueQwtSpline
points() const QwtSpline
QwtSpline()QwtSpline
QwtSpline(const QwtSpline &)QwtSpline
reset()QwtSpline
setPoints(const QPolygonF &points)QwtSpline
setSplineType(SplineType)QwtSpline
splineType() const QwtSpline
SplineType enum nameQwtSpline
value(double x) const QwtSpline
~QwtSpline()QwtSpline
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_symbol.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_symbol.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_symbol.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_symbol.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,749 @@ + + + + +Qwt User's Guide: QwtSymbol Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtSymbol Class Reference

+
+
+ +

A class for drawing symbols. +More...

+ +

#include <qwt_symbol.h>

+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Types

enum  Style {
+  NoSymbol = -1, +
+  Ellipse, +
+  Rect, +
+  Diamond, +
+  Triangle, +
+  DTriangle, +
+  UTriangle, +
+  LTriangle, +
+  RTriangle, +
+  Cross, +
+  XCross, +
+  HLine, +
+  VLine, +
+  Star1, +
+  Star2, +
+  Hexagon, +
+  UserStyle = 1000 +
+ }

+Public Member Functions

 QwtSymbol (Style=NoSymbol)
 QwtSymbol (Style, const QBrush &, const QPen &, const QSize &)
 QwtSymbol (const QwtSymbol &)
virtual ~QwtSymbol ()
QwtSymboloperator= (const QwtSymbol &)
bool operator== (const QwtSymbol &) const
bool operator!= (const QwtSymbol &) const
void setSize (const QSize &)
void setSize (int width, int height=-1)
const QSize & size () const
virtual void setColor (const QColor &)
void setBrush (const QBrush &b)
const QBrush & brush () const
void setPen (const QPen &)
const QPen & pen () const
void setStyle (Style)
Style style () const
void drawSymbol (QPainter *, const QPointF &) const
void drawSymbols (QPainter *, const QPolygonF &) const
virtual QSize boundingSize () const

+Protected Member Functions

virtual void drawSymbols (QPainter *, const QPointF *, int numPoints) const
+

Detailed Description

+

A class for drawing symbols.

+

Member Enumeration Documentation

+ +
+
+ + + + +
enum QwtSymbol::Style
+
+
+

Symbol Style

+
See also:
setStyle(), style()
+
Enumerator:
+ + + + + + + + + + + + + + + + + +
NoSymbol  +

No Style. The symbol cannot be drawn.

+
Ellipse  +

Ellipse or circle.

+
Rect  +

Rectangle.

+
Diamond  +

Diamond.

+
Triangle  +

Triangle pointing upwards.

+
DTriangle  +

Triangle pointing downwards.

+
UTriangle  +

Triangle pointing upwards.

+
LTriangle  +

Triangle pointing left.

+
RTriangle  +

Triangle pointing right.

+
Cross  +

Cross (+)

+
XCross  +

Diagonal cross (X)

+
HLine  +

Horizontal line.

+
VLine  +

Vertical line.

+
Star1  +

X combined with +.

+
Star2  +

Six-pointed star.

+
Hexagon  +

Hexagon.

+
UserStyle  +

Styles >= QwtSymbol::UserSymbol are reserved for derived classes of QwtSymbol that overload drawSymbols() with additional application specific symbol types.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtSymbol::QwtSymbol (Style style = NoSymbol)
+
+
+

Default Constructor

+
Parameters:
+ + +
styleSymbol Style
+
+
+

The symbol is constructed with gray interior, black outline with zero width, no size and style 'NoSymbol'.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
QwtSymbol::QwtSymbol (QwtSymbol::Style style,
const QBrush & brush,
const QPen & pen,
const QSize & size 
)
+
+
+ +

Constructor.

+
Parameters:
+ + + + + +
styleSymbol Style
brushbrush to fill the interior
penoutline pen
sizesize
+
+
+
See also:
setStyle(), setBrush(), setPen(), setSize()
+ +
+
+ +
+
+ + + + + + + + +
QwtSymbol::QwtSymbol (const QwtSymbolother)
+
+
+ +

Copy constructor.

+
Parameters:
+ + +
otherSymbol
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtSymbol::~QwtSymbol () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
QSize QwtSymbol::boundingSize () const [virtual]
+
+
+
Returns:
Size of the bounding rectangle of a symbol
+ +
+
+ +
+
+ + + + + + + +
const QBrush & QwtSymbol::brush () const
+
+
+
Returns:
Brush
+
See also:
setBrush()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtSymbol::drawSymbol (QPainter * painter,
const QPointF & pos 
) const [inline]
+
+
+ +

Draw the symbol at a specified position.

+
Parameters:
+ + + +
painterPainter
posPosition of the symbol in screen coordinates
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtSymbol::drawSymbols (QPainter * painter,
const QPointF * points,
int numPoints 
) const [protected, virtual]
+
+
+

Draw an array of symbols

+

Painting several symbols is more effective than drawing symbols one by one, as a couple of layout calculations and setting of pen/brush can be done once for the complete array.

+
Parameters:
+ + + + +
painterPainter
pointsArray of points
numPointsNumber of points
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtSymbol::drawSymbols (QPainter * painter,
const QPolygonF & points 
) const [inline]
+
+
+ +

Draw symbols at the specified points.

+
Parameters:
+ + + +
painterPainter
pointsPositions of the symbols in screen coordinates
+
+
+ +
+
+ +
+
+ + + + + + + + +
bool QwtSymbol::operator!= (const QwtSymbolother) const
+
+
+ +

Compare two symbols.

+ +
+
+ +
+
+ + + + + + + + +
QwtSymbol & QwtSymbol::operator= (const QwtSymbolother)
+
+
+ +

Assignment operator.

+ +
+
+ +
+
+ + + + + + + + +
bool QwtSymbol::operator== (const QwtSymbolother) const
+
+
+ +

Compare two symbols.

+ +
+
+ +
+
+ + + + + + + +
const QPen & QwtSymbol::pen () const
+
+
+
Returns:
Pen
+
See also:
setPen(), brush()
+ +
+
+ +
+
+ + + + + + + + +
void QwtSymbol::setBrush (const QBrush & brush)
+
+
+ +

Assign a brush.

+

The brush is used to draw the interior of the symbol.

+
Parameters:
+ + +
brushBrush
+
+
+
See also:
brush()
+ +
+
+ +
+
+ + + + + + + + +
void QwtSymbol::setColor (const QColor & color) [virtual]
+
+
+ +

Set the color of the symbol.

+

Change the color of the brush for symbol types with a filled area. For all other symbol types the color will be assigned to the pen.

+
Parameters:
+ + +
colorColor
+
+
+
See also:
setBrush(), setPen(), brush(), pen()
+ +
+
+ +
+
+ + + + + + + + +
void QwtSymbol::setPen (const QPen & pen)
+
+
+

Assign a pen

+

The pen is used to draw the symbol's outline.

+
Parameters:
+ + +
penPen
+
+
+
See also:
pen(), setBrush()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtSymbol::setSize (int width,
int height = -1 
)
+
+
+ +

Specify the symbol's size.

+

If the 'h' parameter is left out or less than 0, and the 'w' parameter is greater than or equal to 0, the symbol size will be set to (w,w).

+
Parameters:
+ + + +
widthWidth
heightHeight (defaults to -1)
+
+
+
See also:
size()
+ +
+
+ +
+
+ + + + + + + + +
void QwtSymbol::setSize (const QSize & size)
+
+
+

Set the symbol's size

+
Parameters:
+ + +
sizeSize
+
+
+
See also:
size()
+ +
+
+ +
+
+ + + + + + + + +
void QwtSymbol::setStyle (QwtSymbol::Style style)
+
+
+

Specify the symbol style

+
Parameters:
+ + +
styleStyle
+
+
+
See also:
style()
+ +
+
+ +
+
+ + + + + + + +
const QSize & QwtSymbol::size () const
+
+
+
Returns:
Size
+
See also:
setSize()
+ +
+
+ +
+
+ + + + + + + +
QwtSymbol::Style QwtSymbol::style () const
+
+
+
Returns:
Current symbol style
+
See also:
setStyle()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_symbol-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_symbol-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_symbol-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_symbol-members.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,90 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtSymbol Member List

+
+
+This is the complete list of members for QwtSymbol, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
boundingSize() const QwtSymbol [virtual]
brush() const QwtSymbol
Cross enum valueQwtSymbol
Diamond enum valueQwtSymbol
drawSymbol(QPainter *, const QPointF &) const QwtSymbol [inline]
drawSymbols(QPainter *, const QPolygonF &) const QwtSymbol [inline]
drawSymbols(QPainter *, const QPointF *, int numPoints) const QwtSymbol [protected, virtual]
DTriangle enum valueQwtSymbol
Ellipse enum valueQwtSymbol
Hexagon enum valueQwtSymbol
HLine enum valueQwtSymbol
LTriangle enum valueQwtSymbol
NoSymbol enum valueQwtSymbol
operator!=(const QwtSymbol &) const QwtSymbol
operator=(const QwtSymbol &)QwtSymbol
operator==(const QwtSymbol &) const QwtSymbol
pen() const QwtSymbol
QwtSymbol(Style=NoSymbol)QwtSymbol
QwtSymbol(Style, const QBrush &, const QPen &, const QSize &)QwtSymbol
QwtSymbol(const QwtSymbol &)QwtSymbol
Rect enum valueQwtSymbol
RTriangle enum valueQwtSymbol
setBrush(const QBrush &b)QwtSymbol
setColor(const QColor &)QwtSymbol [virtual]
setPen(const QPen &)QwtSymbol
setSize(const QSize &)QwtSymbol
setSize(int width, int height=-1)QwtSymbol
setStyle(Style)QwtSymbol
size() const QwtSymbol
Star1 enum valueQwtSymbol
Star2 enum valueQwtSymbol
style() const QwtSymbol
Style enum nameQwtSymbol
Triangle enum valueQwtSymbol
UserStyle enum valueQwtSymbol
UTriangle enum valueQwtSymbol
VLine enum valueQwtSymbol
XCross enum valueQwtSymbol
~QwtSymbol()QwtSymbol [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_synthetic_point_data.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_synthetic_point_data.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_synthetic_point_data.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_synthetic_point_data.html 2011-04-15 10:49:25.000000000 +0000 @@ -0,0 +1,384 @@ + + + + +Qwt User's Guide: QwtSyntheticPointData Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtSyntheticPointData Class Reference

+
+
+ +

Synthetic point data. +More...

+ +

#include <qwt_series_data.h>

+
+Inheritance diagram for QwtSyntheticPointData:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + +

+Public Member Functions

 QwtSyntheticPointData (size_t size, const QwtInterval &=QwtInterval())
void setSize (size_t size)
size_t size () const
void setInterval (const QwtInterval &)
QwtInterval interval () const
virtual QRectF boundingRect () const
virtual QPointF sample (size_t i) const
virtual double y (double x) const =0
virtual double x (uint index) const
virtual void setRectOfInterest (const QRectF &)
QRectF rectOfInterest () const
+

Detailed Description

+

Synthetic point data.

+

QwtSyntheticPointData provides a fixed number of points for an interval. The points are calculated in equidistant steps in x-direction.

+

If the interval is invalid, the points are calculated for the "rect of interest", what normally is the displayed area on the plot canvas. In this mode you get different levels of detail, when zooming in/out.

+
Example
+

The following example shows how to implement a sinus curve.

+
+#include <cmath>
+#include <qwt_series_data.h>
+#include <qwt_plot_curve.h>
+#include <qwt_plot.h>
+#include <qapplication.h>
+
+class SinusData: public QwtSyntheticPointData
+{
+public:
+    SinusData():
+        QwtSyntheticPointData(100)
+    {
+    }
+    virtual double y(double x) const
+    {
+        return qSin(x);
+    }
+};
+
+int main(int argc, char **argv)
+{
+    QApplication a(argc, argv);
+
+    QwtPlot plot;
+    plot.setAxisScale(QwtPlot::xBottom, 0.0, 10.0);
+    plot.setAxisScale(QwtPlot::yLeft, -1.0, 1.0);
+
+    QwtPlotCurve *curve = new QwtPlotCurve("y = sin(x)");
+    curve->setData(SinusData());
+    curve->attach(&plot);
+
+    plot.show();
+    return a.exec();
+}
+   

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
QwtSyntheticPointData::QwtSyntheticPointData (size_t size,
const QwtIntervalinterval = QwtInterval() 
)
+
+
+

Constructor

+
Parameters:
+ + + +
sizeNumber of points
intervalBounding interval for the points
+
+
+
See also:
setInterval(), setSize()
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
QRectF QwtSyntheticPointData::boundingRect () const [virtual]
+
+
+ +

Calculate the bounding rect.

+

This implementation iterates over all points, what could often be implemented much faster using the characteristics of the series. When there are many points it is recommended to overload and reimplement this method using the characteristics of the series ( if possible ).

+
Returns:
Bounding rectangle
+ +

Implements QwtSeriesData< QPointF >.

+ +
+
+ +
+
+ + + + + + + +
QwtInterval QwtSyntheticPointData::interval () const
+
+
+
Returns:
Bounding interval
+
See also:
setInterval(), size()
+ +
+
+ +
+
+ + + + + + + +
QRectF QwtSyntheticPointData::rectOfInterest () const
+
+
+
Returns:
"rect of interest"
+
See also:
setRectOfInterest()
+ +
+
+ +
+
+ + + + + + + + +
QPointF QwtSyntheticPointData::sample (size_t index) const [virtual]
+
+
+

Calculate the point from an index

+
Parameters:
+ + +
indexIndex
+
+
+
Returns:
QPointF(x(index), y(x(index)));
+
Warning:
For invalid indices ( index < 0 || index >= size() ) (0, 0) is returned.
+ +

Implements QwtSeriesData< QPointF >.

+ +
+
+ +
+
+ + + + + + + + +
void QwtSyntheticPointData::setInterval (const QwtIntervalinterval)
+
+
+

Set the bounding interval

+
Parameters:
+ + +
intervalInterval
+
+
+
See also:
interval(), setSize()
+ +
+
+ +
+
+ + + + + + + + +
void QwtSyntheticPointData::setRectOfInterest (const QRectF & rect) [virtual]
+
+
+

Set a the "rect of interest"

+

QwtPlotSeriesItem defines the current area of the plot canvas as "rect of interest" ( QwtPlotSeriesItem::updateScaleDiv() ).

+

If interval().isValid() == false the x values are calculated in the interval rect.left() -> rect.right().

+
See also:
rectOfInterest()
+ +

Reimplemented from QwtSeriesData< QPointF >.

+ +
+
+ +
+
+ + + + + + + + +
void QwtSyntheticPointData::setSize (size_t size)
+
+
+

Change the number of points

+
Parameters:
+ + +
sizeNumber of points
+
+
+
See also:
size(), setInterval()
+ +
+
+ +
+
+ + + + + + + +
size_t QwtSyntheticPointData::size () const [virtual]
+
+
+
Returns:
Number of points
+
See also:
setSize(), interval()
+ +

Implements QwtSeriesData< QPointF >.

+ +
+
+ +
+
+ + + + + + + + +
double QwtSyntheticPointData::x (uint index) const [virtual]
+
+
+

Calculate a x-value from an index

+

x values are calculated by deviding an interval into equidistant steps. If !interval().isValid() the interval is calculated from the "rect of interest".

+
See also:
interval(), rectOfInterest(), y()
+ +
+
+ +
+
+ + + + + + + + +
virtual double QwtSyntheticPointData::y (double x) const [pure virtual]
+
+
+

Calculate a y value for a x value

+
Parameters:
+ + +
xx value
+
+
+
Returns:
Corresponding y value
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_synthetic_point_data__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_synthetic_point_data__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_synthetic_point_data__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_synthetic_point_data__inherit__graph.map 2011-04-15 10:49:16.000000000 +0000 @@ -0,0 +1,4 @@ + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_synthetic_point_data__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_synthetic_point_data__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_synthetic_point_data__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_synthetic_point_data__inherit__graph.md5 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1 @@ +a5339281a1dd34ccfdd1fbb0ce380513 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_synthetic_point_data__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_synthetic_point_data__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_synthetic_point_data-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_synthetic_point_data-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_synthetic_point_data-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_synthetic_point_data-members.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,65 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtSyntheticPointData Member List

+
+
+This is the complete list of members for QwtSyntheticPointData, including all inherited members. + + + + + + + + + + + + + + +
boundingRect() const QwtSyntheticPointData [virtual]
d_boundingRectQwtSeriesData< QPointF > [mutable, protected]
interval() const QwtSyntheticPointData
QwtSeriesData()QwtSeriesData< QPointF >
QwtSyntheticPointData(size_t size, const QwtInterval &=QwtInterval())QwtSyntheticPointData
rectOfInterest() const QwtSyntheticPointData
sample(size_t i) const QwtSyntheticPointData [virtual]
setInterval(const QwtInterval &)QwtSyntheticPointData
setRectOfInterest(const QRectF &)QwtSyntheticPointData [virtual]
setSize(size_t size)QwtSyntheticPointData
size() const QwtSyntheticPointData [virtual]
x(uint index) const QwtSyntheticPointData [virtual]
y(double x) const =0QwtSyntheticPointData [pure virtual]
~QwtSeriesData()QwtSeriesData< QPointF > [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_system_clock.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_system_clock.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_system_clock.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_system_clock.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,201 @@ + + + + +Qwt User's Guide: QwtSystemClock Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtSystemClock Class Reference

+
+
+ +

QwtSystemClock provides high resolution clock time functions. +More...

+ +

#include <qwt_system_clock.h>

+ +

List of all members.

+ + + + + + + + + + +

+Public Member Functions

 QwtSystemClock ()
virtual ~QwtSystemClock ()
bool isNull () const
void start ()
double restart ()
double elapsed () const

+Static Public Member Functions

static double precision ()
+

Detailed Description

+

QwtSystemClock provides high resolution clock time functions.

+

Sometimes the resolution offered by QTime ( millisecond ) is not accurate enough for implementing time measurements ( f.e. sampling ). QwtSystemClock offers a subset of the QTime functionality using higher resolution timers ( if possible ).

+

Precision and time intervals are multiples of milliseconds (ms).

+
Note:
The implementation uses high-resolution performance counter on Windows, mach_absolute_time() on the Mac or POSIX timers on other systems. If none is available it falls back on QTimer.
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtSystemClock::QwtSystemClock ()
+
+
+ +

Constructs a null clock object.

+ +
+
+ +
+
+ + + + + + + +
QwtSystemClock::~QwtSystemClock () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
double QwtSystemClock::elapsed () const
+
+
+
Returns:
Number of milliseconds that have elapsed since the last time start() or restart() was called or 0.0 for null clocks.
+ +
+
+ +
+
+ + + + + + + +
bool QwtSystemClock::isNull () const
+
+
+
Returns:
true if the clock has never been started.
+ +
+
+ +
+
+ + + + + + + +
double QwtSystemClock::precision () [static]
+
+
+
Returns:
Accuracy of the system clock in milliseconds.
+ +
+
+ +
+
+ + + + + + + +
double QwtSystemClock::restart ()
+
+
+

The start time to the current time and return the time, that is elapsed since the previous start time.

+ +
+
+ +
+
+ + + + + + + +
void QwtSystemClock::start ()
+
+
+

Sets the start time to the current time.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_system_clock-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_system_clock-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_system_clock-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_system_clock-members.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,58 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtSystemClock Member List

+
+
+This is the complete list of members for QwtSystemClock, including all inherited members. + + + + + + + +
elapsed() const QwtSystemClock
isNull() const QwtSystemClock
precision()QwtSystemClock [static]
QwtSystemClock()QwtSystemClock
restart()QwtSystemClock
start()QwtSystemClock
~QwtSystemClock()QwtSystemClock [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_engine.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_engine.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_engine.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_engine.html 2011-04-15 10:49:25.000000000 +0000 @@ -0,0 +1,364 @@ + + + + +Qwt User's Guide: QwtTextEngine Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtTextEngine Class Reference

+
+
+ +

Abstract base class for rendering text strings. +More...

+ +

#include <qwt_text_engine.h>

+
+Inheritance diagram for QwtTextEngine:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + +

+Public Member Functions

virtual ~QwtTextEngine ()
virtual double heightForWidth (const QFont &font, int flags, const QString &text, double width) const =0
virtual QSizeF textSize (const QFont &font, int flags, const QString &text) const =0
virtual bool mightRender (const QString &text) const =0
virtual void textMargins (const QFont &font, const QString &text, double &left, double &right, double &top, double &bottom) const =0
virtual void draw (QPainter *painter, const QRectF &rect, int flags, const QString &text) const =0

+Protected Member Functions

 QwtTextEngine ()
+

Detailed Description

+

Abstract base class for rendering text strings.

+

A text engine is responsible for rendering texts for a specific text format. They are used by QwtText to render a text.

+

QwtPlainTextEngine and QwtRichTextEngine are part of the Qwt library. The implementation of QwtMathMLTextEngine uses code from the Qt solution package. Because of license implications it is built into a separate library.

+
See also:
QwtText::setTextEngine()
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
QwtTextEngine::~QwtTextEngine () [virtual]
+
+
+ +

Destructor.

+ +
+
+ +
+
+ + + + + + + +
QwtTextEngine::QwtTextEngine () [protected]
+
+
+ +

Constructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
virtual void QwtTextEngine::draw (QPainter * painter,
const QRectF & rect,
int flags,
const QString & text 
) const [pure virtual]
+
+
+

Draw the text in a clipping rectangle

+
Parameters:
+ + + + + +
painterPainter
rectClipping rectangle
flagsBitwise OR of the flags like in for QPainter::drawText
textText to be rendered
+
+
+ +

Implemented in QwtPlainTextEngine, QwtRichTextEngine, and QwtMathMLTextEngine.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
virtual double QwtTextEngine::heightForWidth (const QFont & font,
int flags,
const QString & text,
double width 
) const [pure virtual]
+
+
+

Find the height for a given width

+
Parameters:
+ + + + + +
fontFont of the text
flagsBitwise OR of the flags used like in QPainter::drawText
textText to be rendered
widthWidth
+
+
+
Returns:
Calculated height
+ +

Implemented in QwtPlainTextEngine, QwtRichTextEngine, and QwtMathMLTextEngine.

+ +
+
+ +
+
+ + + + + + + + +
virtual bool QwtTextEngine::mightRender (const QString & text) const [pure virtual]
+
+
+

Test if a string can be rendered by this text engine

+
Parameters:
+ + +
textText to be tested
+
+
+
Returns:
true, if it can be rendered
+ +

Implemented in QwtPlainTextEngine, QwtRichTextEngine, and QwtMathMLTextEngine.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
virtual void QwtTextEngine::textMargins (const QFont & font,
const QString & text,
double & left,
double & right,
double & top,
double & bottom 
) const [pure virtual]
+
+
+

Return margins around the texts

+

The textSize might include margins around the text, like QFontMetrics::descent. In situations where texts need to be aligend in detail, knowing these margins might improve the layout calculations.

+
Parameters:
+ + + + + + + +
fontFont of the text
textText to be rendered
leftReturn value for the left margin
rightReturn value for the right margin
topReturn value for the top margin
bottomReturn value for the bottom margin
+
+
+ +

Implemented in QwtPlainTextEngine, QwtRichTextEngine, and QwtMathMLTextEngine.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual QSizeF QwtTextEngine::textSize (const QFont & font,
int flags,
const QString & text 
) const [pure virtual]
+
+
+

Returns the size, that is needed to render text

+
Parameters:
+ + + + +
fontFont of the text
flagsBitwise OR of the flags like in for QPainter::drawText
textText to be rendered
+
+
+
Returns:
Caluclated size
+ +

Implemented in QwtPlainTextEngine, QwtRichTextEngine, and QwtMathMLTextEngine.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_engine__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_engine__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_engine__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_engine__inherit__graph.map 2011-04-15 10:49:16.000000000 +0000 @@ -0,0 +1,5 @@ + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_engine__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_engine__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_engine__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_engine__inherit__graph.md5 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1 @@ +2f78d844163ebe01eb7960c80e34222c \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_engine__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_engine__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_engine-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_engine-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_engine-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_engine-members.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,58 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtTextEngine Member List

+
+
+This is the complete list of members for QwtTextEngine, including all inherited members. + + + + + + + +
draw(QPainter *painter, const QRectF &rect, int flags, const QString &text) const =0QwtTextEngine [pure virtual]
heightForWidth(const QFont &font, int flags, const QString &text, double width) const =0QwtTextEngine [pure virtual]
mightRender(const QString &text) const =0QwtTextEngine [pure virtual]
QwtTextEngine()QwtTextEngine [protected]
textMargins(const QFont &font, const QString &text, double &left, double &right, double &top, double &bottom) const =0QwtTextEngine [pure virtual]
textSize(const QFont &font, int flags, const QString &text) const =0QwtTextEngine [pure virtual]
~QwtTextEngine()QwtTextEngine [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,1084 @@ + + + + +Qwt User's Guide: QwtText Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+ +
+ +

A class representing a text. +More...

+ +

#include <qwt_text.h>

+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Types

enum  TextFormat {
+  AutoText = 0, +
+  PlainText, +
+  RichText, +
+  MathMLText, +
+  TeXText, +
+  OtherFormat = 100 +
+ }
enum  PaintAttribute {
+  PaintUsingTextFont = 0x01, +
+  PaintUsingTextColor = 0x02, +
+  PaintBackground = 0x04 +
+ }
enum  LayoutAttribute { MinimumLayout = 0x01 + }
typedef QFlags< PaintAttributePaintAttributes
typedef QFlags< LayoutAttributeLayoutAttributes

+Public Member Functions

 QwtText (const QString &=QString::null, TextFormat textFormat=AutoText)
 QwtText (const QwtText &)
 ~QwtText ()
QwtTextoperator= (const QwtText &)
bool operator== (const QwtText &) const
bool operator!= (const QwtText &) const
void setText (const QString &, QwtText::TextFormat textFormat=AutoText)
QString text () const
bool isNull () const
bool isEmpty () const
void setFont (const QFont &)
QFont font () const
QFont usedFont (const QFont &) const
void setRenderFlags (int flags)
int renderFlags () const
void setColor (const QColor &)
QColor color () const
QColor usedColor (const QColor &) const
void setBackgroundPen (const QPen &)
QPen backgroundPen () const
void setBackgroundBrush (const QBrush &)
QBrush backgroundBrush () const
void setPaintAttribute (PaintAttribute, bool on=true)
bool testPaintAttribute (PaintAttribute) const
void setLayoutAttribute (LayoutAttribute, bool on=true)
bool testLayoutAttribute (LayoutAttribute) const
double heightForWidth (double width, const QFont &=QFont()) const
QSizeF textSize (const QFont &=QFont()) const
void draw (QPainter *painter, const QRectF &rect) const

+Static Public Member Functions

static const QwtTextEnginetextEngine (const QString &text, QwtText::TextFormat=AutoText)
static const QwtTextEnginetextEngine (QwtText::TextFormat)
static void setTextEngine (QwtText::TextFormat, QwtTextEngine *)
+

Detailed Description

+

A class representing a text.

+

A QwtText is a text including a set of attributes how to render it.

+
    +
  • Format
    + A text might include control sequences (f.e tags) describing how to render it. Each format (f.e MathML, TeX, Qt Rich Text) has its own set of control sequences, that can be handles by a QwtTextEngine for this format.
  • +
  • Background
    + A text might have a background, defined by a QPen and QBrush to improve its visibility.
  • +
  • Font
    + A text might have an individual font.
  • +
  • Color
    + A text might have an individual color.
  • +
  • Render Flags
    + Flags from Qt::AlignmentFlag and Qt::TextFlag used like in QPainter::drawText.
  • +
+
See also:
QwtTextEngine, QwtTextLabel
+

Member Typedef Documentation

+ +
+
+ + + + +
typedef QFlags<LayoutAttribute> QwtText::LayoutAttributes
+
+
+ +

Layout attributes.

+ +
+
+ +
+
+ + + + +
typedef QFlags<PaintAttribute> QwtText::PaintAttributes
+
+
+ +

Paint attributes.

+ +
+
+

Member Enumeration Documentation

+ +
+
+ + + + +
enum QwtText::LayoutAttribute
+
+
+ +

Layout Attributes The layout attributes affects some aspects of the layout of the text.

+
Enumerator:
+ +
MinimumLayout  +

Layout the text without its margins. This mode is useful if a text needs to be aligned accurately, like the tick labels of a scale. If QwtTextEngine::textMargins is not implemented for the format of the text, MinimumLayout has no effect.

+
+
+
+ +
+
+ +
+
+ + + + +
enum QwtText::PaintAttribute
+
+
+ +

Paint Attributes.

+

Font and color and background are optional attributes of a QwtText. The paint attributes hold the information, if they are set.

+
Enumerator:
+ + + +
PaintUsingTextFont  +

The text has an individual font.

+
PaintUsingTextColor  +

The text has an individual color.

+
PaintBackground  +

The text has an individual background.

+
+
+
+ +
+
+ +
+
+ + + + +
enum QwtText::TextFormat
+
+
+ +

Text format.

+

The text format defines the QwtTextEngine, that is used to render the text.

+
See also:
QwtTextEngine, setTextEngine()
+
Enumerator:
+ + + + + + +
AutoText  +

The text format is determined using QwtTextEngine::mightRender for all available text engines in increasing order > PlainText. If none of the text engines can render the text is rendered like QwtText::PlainText.

+
PlainText  +

Draw the text as it is, using a QwtPlainTextEngine.

+
RichText  +

Use the Scribe framework (Qt Rich Text) to render the text.

+
MathMLText  +

Use a MathML (http://en.wikipedia.org/wiki/MathML) render engine to display the text. The Qwt MathML extension offers such an engine based on the MathML renderer of the Qt solutions package. To enable MathML support the following code needs to be added to the application:

+
QwtText::setTextEngine(QwtText::MathMLText, new QwtMathMLTextEngine()); 
TeXText  +

Use a TeX (http://en.wikipedia.org/wiki/TeX) render engine to display the text ( not implemented yet ).

+
OtherFormat  +

The number of text formats can be extended using setTextEngine. Formats >= QwtText::OtherFormat are not used by Qwt.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
QwtText::QwtText (const QString & text = QString::null,
QwtText::TextFormat textFormat = AutoText 
)
+
+
+

Constructor

+
Parameters:
+ + + +
textText content
textFormatText format
+
+
+ +
+
+ +
+
+ + + + + + + + +
QwtText::QwtText (const QwtTextother)
+
+
+ +

Copy constructor.

+ +
+
+ +
+
+ + + + + + + +
QwtText::~QwtText ()
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
QBrush QwtText::backgroundBrush () const
+
+
+
Returns:
Background brush
+
See also:
setBackgroundBrush(), backgroundPen()
+ +
+
+ +
+
+ + + + + + + +
QPen QwtText::backgroundPen () const
+
+
+
Returns:
Background pen
+
See also:
setBackgroundPen(), backgroundBrush()
+ +
+
+ +
+
+ + + + + + + +
QColor QwtText::color () const
+
+
+ +

Return the pen color, used for painting the text.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtText::draw (QPainter * painter,
const QRectF & rect 
) const
+
+
+

Draw a text into a rectangle

+
Parameters:
+ + + +
painterPainter
rectRectangle
+
+
+ +
+
+ +
+
+ + + + + + + +
QFont QwtText::font () const
+
+
+ +

Return the font.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
double QwtText::heightForWidth (double width,
const QFont & defaultFont = QFont() 
) const
+
+
+

Find the height for a given width

+
Parameters:
+ + + +
defaultFontFont, used for the calculation if the text has no font
widthWidth
+
+
+
Returns:
Calculated height
+ +
+
+ +
+
+ + + + + + + +
bool QwtText::isEmpty () const [inline]
+
+
+
Returns:
text().isEmpty()
+ +
+
+ +
+
+ + + + + + + +
bool QwtText::isNull () const [inline]
+
+
+
Returns:
text().isNull()
+ +
+
+ +
+
+ + + + + + + + +
bool QwtText::operator!= (const QwtTextother) const
+
+
+ +

Relational operator.

+ +
+
+ +
+
+ + + + + + + + +
QwtText & QwtText::operator= (const QwtTextother)
+
+
+ +

Assignment operator.

+ +
+
+ +
+
+ + + + + + + + +
bool QwtText::operator== (const QwtTextother) const
+
+
+ +

Relational operator.

+ +
+
+ +
+
+ + + + + + + +
int QwtText::renderFlags () const
+
+
+
Returns:
Render flags
+
See also:
setRenderFlags()
+ +
+
+ +
+
+ + + + + + + + +
void QwtText::setBackgroundBrush (const QBrush & brush)
+
+
+

Set the background brush

+
Parameters:
+ + +
brushBackground brush
+
+
+
See also:
backgroundBrush(), setBackgroundPen()
+ +
+
+ +
+
+ + + + + + + + +
void QwtText::setBackgroundPen (const QPen & pen)
+
+
+

Set the background pen

+
Parameters:
+ + +
penBackground pen
+
+
+
See also:
backgroundPen(), setBackgroundBrush()
+ +
+
+ +
+
+ + + + + + + + +
void QwtText::setColor (const QColor & color)
+
+
+

Set the pen color used for painting the text.

+
Parameters:
+ + +
colorColor
+
+
+
Note:
Setting the color might have no effect, when the text contains control sequences for setting colors.
+ +
+
+ +
+
+ + + + + + + + +
void QwtText::setFont (const QFont & font)
+
+
+

Set the font.

+
Parameters:
+ + +
fontFont
+
+
+
Note:
Setting the font might have no effect, when the text contains control sequences for setting fonts.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtText::setLayoutAttribute (LayoutAttribute attribute,
bool on = true 
)
+
+
+

Change a layout attribute

+
Parameters:
+ + + +
attributeLayout attribute
onOn/Off
+
+
+
See also:
testLayoutAttribute()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtText::setPaintAttribute (PaintAttribute attribute,
bool on = true 
)
+
+
+

Change a paint attribute

+
Parameters:
+ + + +
attributePaint attribute
onOn/Off
+
+
+
Note:
Used by setFont(), setColor(), setBackgroundPen() and setBackgroundBrush()
+
See also:
testPaintAttribute()
+ +
+
+ +
+
+ + + + + + + + +
void QwtText::setRenderFlags (int renderFlags)
+
+
+ +

Change the render flags.

+

The default setting is Qt::AlignCenter

+
Parameters:
+ + +
renderFlagsBitwise OR of the flags used like in QPainter::drawText
+
+
+
See also:
renderFlags(), QwtTextEngine::draw()
+
Note:
Some renderFlags might have no effect, depending on the text format.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtText::setText (const QString & text,
QwtText::TextFormat textFormat = AutoText 
)
+
+
+

Assign a new text content

+
Parameters:
+ + + +
textText content
textFormatText format
+
+
+
See also:
text()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtText::setTextEngine (QwtText::TextFormat format,
QwtTextEngineengine 
) [static]
+
+
+

Assign/Replace a text engine for a text format

+

With setTextEngine it is possible to extend Qwt with other types of text formats.

+

For QwtText::PlainText it is not allowed to assign a engine == NULL.

+
Parameters:
+ + + +
formatText format
engineText engine
+
+
+
See also:
QwtMathMLTextEngine
+
Warning:
Using QwtText::AutoText does nothing.
+ +
+
+ +
+
+ + + + + + + + +
bool QwtText::testLayoutAttribute (LayoutAttribute attribute) const
+
+
+

Test a layout attribute

+
Parameters:
+ + +
attributeLayout attribute
+
+
+
Returns:
true, if attribute is enabled
+
See also:
setLayoutAttribute()
+ +
+
+ +
+
+ + + + + + + + +
bool QwtText::testPaintAttribute (PaintAttribute attribute) const
+
+
+

Test a paint attribute

+
Parameters:
+ + +
attributePaint attribute
+
+
+
Returns:
true, if attribute is enabled
+
See also:
setPaintAttribute()
+ +
+
+ +
+
+ + + + + + + +
QString QwtText::text () const
+
+
+

Return the text.

+
See also:
setText()
+ +
+
+ +
+
+ + + + + + + + +
const QwtTextEngine * QwtText::textEngine (QwtText::TextFormat format) [static]
+
+
+ +

Find the text engine for a text format.

+

textEngine can be used to find out if a text format is supported.

+
Parameters:
+ + +
formatText format
+
+
+
Returns:
The text engine, or NULL if no engine is available.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
const QwtTextEngine * QwtText::textEngine (const QString & text,
QwtText::TextFormat format = AutoText 
) [static]
+
+
+

Find the text engine for a text format

+

In case of QwtText::AutoText the first text engine (beside QwtPlainTextEngine) is returned, where QwtTextEngine::mightRender returns true. If there is none QwtPlainTextEngine is returnd.

+

If no text engine is registered for the format QwtPlainTextEngine is returnd.

+
Parameters:
+ + + +
textText, needed in case of AutoText
formatText format
+
+
+ +
+
+ +
+
+ + + + + + + + +
QSizeF QwtText::textSize (const QFont & defaultFont = QFont()) const
+
+
+

Find the height for a given width

+
Parameters:
+ + +
defaultFontFont, used for the calculation if the text has no font
+
+
+
Returns:
Calculated height
+

Returns the size, that is needed to render text

+
Parameters:
+ + +
defaultFontFont of the text
+
+
+
Returns:
Caluclated size
+ +
+
+ +
+
+ + + + + + + + +
QColor QwtText::usedColor (const QColor & defaultColor) const
+
+
+

Return the color of the text, if it has one. Otherwise return defaultColor.

+
Parameters:
+ + +
defaultColorDefault color
+
+
+
See also:
setColor(), color(), PaintAttributes
+ +
+
+ +
+
+ + + + + + + + +
QFont QwtText::usedFont (const QFont & defaultFont) const
+
+
+

Return the font of the text, if it has one. Otherwise return defaultFont.

+
Parameters:
+ + +
defaultFontDefault font
+
+
+
See also:
setFont(), font(), PaintAttributes
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_label.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_label.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_label.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_label.html 2011-04-15 10:49:25.000000000 +0000 @@ -0,0 +1,511 @@ + + + + +Qwt User's Guide: QwtTextLabel Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtTextLabel Class Reference

+
+
+ +

A Widget which displays a QwtText. +More...

+ +

#include <qwt_text_label.h>

+
+Inheritance diagram for QwtTextLabel:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + +

+Public Slots

void setText (const QString &, QwtText::TextFormat textFormat=QwtText::AutoText)
virtual void setText (const QwtText &)
void clear ()

+Public Member Functions

 QwtTextLabel (QWidget *parent=NULL)
 QwtTextLabel (const QwtText &, QWidget *parent=NULL)
virtual ~QwtTextLabel ()
const QwtTexttext () const
int indent () const
void setIndent (int)
int margin () const
void setMargin (int)
virtual QSize sizeHint () const
virtual QSize minimumSizeHint () const
virtual int heightForWidth (int) const
QRect textRect () const

+Protected Member Functions

virtual void paintEvent (QPaintEvent *e)
virtual void drawContents (QPainter *)
virtual void drawText (QPainter *, const QRect &)
+

Detailed Description

+

A Widget which displays a QwtText.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtTextLabel::QwtTextLabel (QWidget * parent = NULL) [explicit]
+
+
+

Constructs an empty label.

+
Parameters:
+ + +
parentParent widget
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
QwtTextLabel::QwtTextLabel (const QwtTexttext,
QWidget * parent = NULL 
) [explicit]
+
+
+

Constructs a label that displays the text, text

+
Parameters:
+ + + +
parentParent widget
textText
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtTextLabel::~QwtTextLabel () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
void QwtTextLabel::clear () [slot]
+
+
+ +

Clear the text and all QwtText attributes.

+ +
+
+ +
+
+ + + + + + + + +
void QwtTextLabel::drawContents (QPainter * painter) [protected, virtual]
+
+
+ +

Redraw the text and focus indicator.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtTextLabel::drawText (QPainter * painter,
const QRect & textRect 
) [protected, virtual]
+
+
+ +

Redraw the text.

+ +
+
+ +
+
+ + + + + + + + +
int QwtTextLabel::heightForWidth (int width) const [virtual]
+
+
+

Returns the preferred height for this widget, given the width.

+
Parameters:
+ + +
widthWidth
+
+
+ +
+
+ +
+
+ + + + + + + +
int QwtTextLabel::indent () const
+
+
+ +

Return label's text indent in pixels.

+ +
+
+ +
+
+ + + + + + + +
int QwtTextLabel::margin () const
+
+
+ +

Return label's text indent in pixels.

+ +
+
+ +
+
+ + + + + + + +
QSize QwtTextLabel::minimumSizeHint () const [virtual]
+
+
+ +

Return a minimum size hint.

+ +
+
+ +
+
+ + + + + + + + +
void QwtTextLabel::paintEvent (QPaintEvent * event) [protected, virtual]
+
+
+

Qt paint event

+
Parameters:
+ + +
eventPaint event
+
+
+ +

Reimplemented in QwtLegendItem.

+ +
+
+ +
+
+ + + + + + + + +
void QwtTextLabel::setIndent (int indent)
+
+
+

Set label's text indent in pixels

+
Parameters:
+ + +
indentIndentation in pixels
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtTextLabel::setMargin (int margin)
+
+
+

Set label's margin in pixels

+
Parameters:
+ + +
marginMargin in pixels
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtTextLabel::setText (const QwtTexttext) [virtual, slot]
+
+
+

Change the label's text

+
Parameters:
+ + +
textNew text
+
+
+ +

Reimplemented in QwtLegendItem.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtTextLabel::setText (const QString & text,
QwtText::TextFormat textFormat = QwtText::AutoText 
) [slot]
+
+
+

Change the label's text, keeping all other QwtText attributes

+
Parameters:
+ + + +
textNew text
textFormatFormat of text
+
+
+
See also:
QwtText
+ +
+
+ +
+
+ + + + + + + +
QSize QwtTextLabel::sizeHint () const [virtual]
+
+
+ +

Return label's margin in pixels.

+ +

Reimplemented in QwtLegendItem.

+ +
+
+ +
+
+ + + + + + + +
const QwtText & QwtTextLabel::text () const
+
+
+ +

Return the text.

+ +
+
+ +
+
+ + + + + + + +
QRect QwtTextLabel::textRect () const
+
+
+

Calculate the rect for the text in widget coordinates

+
Returns:
Text rect
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_label__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_label__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_label__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_label__inherit__graph.map 2011-04-15 10:49:17.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_label__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_label__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_label__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_label__inherit__graph.md5 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1 @@ +41c8632fabe6e31759ab231ca52f5c62 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_label__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_label__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_label-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_label-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_label-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text_label-members.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,69 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtTextLabel Member List

+
+
+This is the complete list of members for QwtTextLabel, including all inherited members. + + + + + + + + + + + + + + + + + + +
clear()QwtTextLabel [slot]
drawContents(QPainter *)QwtTextLabel [protected, virtual]
drawText(QPainter *, const QRect &)QwtTextLabel [protected, virtual]
heightForWidth(int) const QwtTextLabel [virtual]
indent() const QwtTextLabel
margin() const QwtTextLabel
minimumSizeHint() const QwtTextLabel [virtual]
paintEvent(QPaintEvent *e)QwtTextLabel [protected, virtual]
QwtTextLabel(QWidget *parent=NULL)QwtTextLabel [explicit]
QwtTextLabel(const QwtText &, QWidget *parent=NULL)QwtTextLabel [explicit]
setIndent(int)QwtTextLabel
setMargin(int)QwtTextLabel
setText(const QString &, QwtText::TextFormat textFormat=QwtText::AutoText)QwtTextLabel [slot]
setText(const QwtText &)QwtTextLabel [virtual, slot]
sizeHint() const QwtTextLabel [virtual]
text() const QwtTextLabel
textRect() const QwtTextLabel
~QwtTextLabel()QwtTextLabel [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_text-members.html 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,98 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtText Member List

+
+
+This is the complete list of members for QwtText, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
AutoText enum valueQwtText
backgroundBrush() const QwtText
backgroundPen() const QwtText
color() const QwtText
draw(QPainter *painter, const QRectF &rect) const QwtText
font() const QwtText
heightForWidth(double width, const QFont &=QFont()) const QwtText
isEmpty() const QwtText [inline]
isNull() const QwtText [inline]
LayoutAttribute enum nameQwtText
LayoutAttributes typedefQwtText
MathMLText enum valueQwtText
MinimumLayout enum valueQwtText
operator!=(const QwtText &) const QwtText
operator=(const QwtText &)QwtText
operator==(const QwtText &) const QwtText
OtherFormat enum valueQwtText
PaintAttribute enum nameQwtText
PaintAttributes typedefQwtText
PaintBackground enum valueQwtText
PaintUsingTextColor enum valueQwtText
PaintUsingTextFont enum valueQwtText
PlainText enum valueQwtText
QwtText(const QString &=QString::null, TextFormat textFormat=AutoText)QwtText
QwtText(const QwtText &)QwtText
renderFlags() const QwtText
RichText enum valueQwtText
setBackgroundBrush(const QBrush &)QwtText
setBackgroundPen(const QPen &)QwtText
setColor(const QColor &)QwtText
setFont(const QFont &)QwtText
setLayoutAttribute(LayoutAttribute, bool on=true)QwtText
setPaintAttribute(PaintAttribute, bool on=true)QwtText
setRenderFlags(int flags)QwtText
setText(const QString &, QwtText::TextFormat textFormat=AutoText)QwtText
setTextEngine(QwtText::TextFormat, QwtTextEngine *)QwtText [static]
testLayoutAttribute(LayoutAttribute) const QwtText
testPaintAttribute(PaintAttribute) const QwtText
text() const QwtText
textEngine(const QString &text, QwtText::TextFormat=AutoText)QwtText [static]
textEngine(QwtText::TextFormat)QwtText [static]
TeXText enum valueQwtText
TextFormat enum nameQwtText
textSize(const QFont &=QFont()) const QwtText
usedColor(const QColor &) const QwtText
usedFont(const QFont &) const QwtText
~QwtText()QwtText
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_thermo.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_thermo.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_thermo.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_thermo.html 2011-04-15 10:49:25.000000000 +0000 @@ -0,0 +1,1194 @@ + + + + +Qwt User's Guide: QwtThermo Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+ +
+ +

The Thermometer Widget. +More...

+ +

#include <qwt_thermo.h>

+
+Inheritance diagram for QwtThermo:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Types

enum  ScalePos {
+  NoScale, +
+  LeftScale, +
+  RightScale, +
+  TopScale, +
+  BottomScale +
+ }

+Public Slots

virtual void setValue (double val)

+Public Member Functions

 QwtThermo (QWidget *parent=NULL)
virtual ~QwtThermo ()
void setOrientation (Qt::Orientation, ScalePos)
void setScalePosition (ScalePos s)
ScalePos scalePosition () const
void setSpacing (int)
int spacing () const
void setBorderWidth (int w)
int borderWidth () const
void setFillBrush (const QBrush &b)
const QBrush & fillBrush () const
void setAlarmBrush (const QBrush &b)
const QBrush & alarmBrush () const
void setAlarmLevel (double v)
double alarmLevel () const
void setAlarmEnabled (bool tf)
bool alarmEnabled () const
void setColorMap (QwtColorMap *)
QwtColorMapcolorMap ()
const QwtColorMapcolorMap () const
void setPipeWidth (int w)
int pipeWidth () const
void setRangeFlags (QwtInterval::BorderFlags)
QwtInterval::BorderFlags rangeFlags () const
void setMaxValue (double v)
double maxValue () const
void setMinValue (double v)
double minValue () const
double value () const
void setRange (double vmin, double vmax, bool lg=false)
virtual QSize sizeHint () const
virtual QSize minimumSizeHint () const
void setScaleDraw (QwtScaleDraw *)
const QwtScaleDrawscaleDraw () const

+Protected Member Functions

virtual void drawLiquid (QPainter *, const QRect &) const
virtual void scaleChange ()
virtual void paintEvent (QPaintEvent *)
virtual void resizeEvent (QResizeEvent *)
virtual void changeEvent (QEvent *)
QwtScaleDrawscaleDraw ()
QRect pipeRect () const
+

Detailed Description

+

The Thermometer Widget.

+

QwtThermo is a widget which displays a value in an interval. It supports:

+
    +
  • a horizontal or vertical layout;
  • +
  • a range;
  • +
  • a scale;
  • +
  • an alarm level.
  • +
+
+sysinfo.png +
+

The fill colors might be calculated from an optional color map If no color map has been assigned QwtThermo uses the following colors/brushes from the widget palette:

+
    +
  • QPalette::Base Background of the pipe
  • +
  • QPalette::ButtonText Fill brush below the alarm level
  • +
  • QPalette::Highlight Fill brush for the values above the alarm level
  • +
  • QPalette::WindowText For the axis of the scale
  • +
  • QPalette::Text For the labels of the scale
  • +
+

By default, the scale and range run over the same interval of values. QwtAbstractScale::setScale() changes the interval of the scale and allows easy conversion between physical units.

+

The example shows how to make the scale indicate in degrees Fahrenheit and to set the value in degrees Kelvin:

+
#include <qapplication.h>
+#include <qwt_thermo.h>
+
+double Kelvin2Fahrenheit(double kelvin)
+{
+    // see http://en.wikipedia.org/wiki/Kelvin
+    return 1.8*kelvin - 459.67;
+}
+
+int main(int argc, char **argv)
+{
+    const double minKelvin = 0.0;
+    const double maxKelvin = 500.0;
+
+    QApplication a(argc, argv);
+    QwtThermo t;
+    t.setRange(minKelvin, maxKelvin);
+    t.setScale(Kelvin2Fahrenheit(minKelvin), Kelvin2Fahrenheit(maxKelvin));
+    // set the value in Kelvin but the scale displays in Fahrenheit
+    // 273.15 Kelvin = 0 Celsius = 32 Fahrenheit
+    t.setValue(273.15);
+    a.setMainWidget(&t);
+    t.show();
+    return a.exec();
+}
+

Member Enumeration Documentation

+ +
+
+ + + + +
enum QwtThermo::ScalePos
+
+
+

Scale position. QwtThermo tries to enforce valid combinations of its orientation and scale position:

+
    +
  • Qt::Horizonal combines with NoScale, TopScale and BottomScale
  • +
  • Qt::Vertical combines with NoScale, LeftScale and RightScale
  • +
+
See also:
setOrientation(), setScalePosition()
+
Enumerator:
+ + + + + +
NoScale  +

No scale.

+
LeftScale  +

The scale is left of the pipe.

+
RightScale  +

The scale is right of the pipe.

+
TopScale  +

The scale is above the pipe.

+
BottomScale  +

The scale is below the pipe.

+
+
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtThermo::QwtThermo (QWidget * parent = NULL) [explicit]
+
+
+

Constructor

+
Parameters:
+ + +
parentParent widget
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtThermo::~QwtThermo () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
const QBrush & QwtThermo::alarmBrush () const
+
+
+

Return the liquid brush ( QPalette::Highlight ) above the alarm threshold.

+
See also:
setAlarmBrush(), QWidget::palette()
+
Warning:
The alarm threshold has no effect, when a color map has been assigned
+ +
+
+ +
+
+ + + + + + + +
bool QwtThermo::alarmEnabled () const
+
+
+
Returns:
True, when the alarm threshold is enabled.
+
Warning:
The alarm threshold has no effect, when a color map has been assigned
+ +
+
+ +
+
+ + + + + + + +
double QwtThermo::alarmLevel () const
+
+
+

Return the alarm threshold.

+
See also:
setAlarmLevel()
+
Warning:
The alarm threshold has no effect, when a color map has been assigned
+ +
+
+ +
+
+ + + + + + + +
int QwtThermo::borderWidth () const
+
+
+

Return the border width of the thermometer pipe.

+
See also:
setBorderWidth()
+ +
+
+ +
+
+ + + + + + + + +
void QwtThermo::changeEvent (QEvent * event) [protected, virtual]
+
+
+

Qt change event handler

+
Parameters:
+ + +
eventEvent
+
+
+ +
+
+ +
+
+ + + + + + + +
QwtColorMap * QwtThermo::colorMap ()
+
+
+
Returns:
Color map for the fill color
+
Warning:
The alarm threshold has no effect, when a color map has been assigned
+ +
+
+ +
+
+ + + + + + + +
const QwtColorMap * QwtThermo::colorMap () const
+
+
+
Returns:
Color map for the fill color
+
Warning:
The alarm threshold has no effect, when a color map has been assigned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtThermo::drawLiquid (QPainter * painter,
const QRect & pipeRect 
) const [protected, virtual]
+
+
+

Redraw the liquid in thermometer pipe.

+
Parameters:
+ + + +
painterPainter
pipeRectBounding rectangle of the pipe without borders
+
+
+ +
+
+ +
+
+ + + + + + + +
const QBrush & QwtThermo::fillBrush () const
+
+
+

Return the liquid ( QPalette::ButtonText ) brush.

+
See also:
setFillBrush(), QWidget::palette()
+ +
+
+ +
+
+ + + + + + + +
double QwtThermo::maxValue () const
+
+
+ +

Return the maximum value.

+ +
+
+ +
+
+ + + + + + + +
QSize QwtThermo::minimumSizeHint () const [virtual]
+
+
+ +

Return a minimum size hint.

+
Warning:
The return value depends on the font and the scale.
+
See also:
sizeHint()
+ +
+
+ +
+
+ + + + + + + +
double QwtThermo::minValue () const
+
+
+ +

Return the minimum value.

+ +
+
+ +
+
+ + + + + + + + +
void QwtThermo::paintEvent (QPaintEvent * event) [protected, virtual]
+
+
+

Qt paint event.

+
Parameters:
+ + +
eventPaint event
+
+
+ +
+
+ +
+
+ + + + + + + +
QRect QwtThermo::pipeRect () const [protected]
+
+
+
Returns:
Bounding rectangle of the pipe ( without borders ) in widget coordinates
+ +
+
+ +
+
+ + + + + + + +
int QwtThermo::pipeWidth () const
+
+
+

Return the width of the pipe.

+
See also:
setPipeWidth()
+ +
+
+ +
+
+ + + + + + + +
QwtInterval::BorderFlags QwtThermo::rangeFlags () const
+
+
+
Returns:
Range flags
+
See also:
setRangeFlags()
+ +
+
+ +
+
+ + + + + + + + +
void QwtThermo::resizeEvent (QResizeEvent * event) [protected, virtual]
+
+
+

Qt resize event handler

+
Parameters:
+ + +
eventResize event
+
+
+ +
+
+ +
+
+ + + + + + + +
void QwtThermo::scaleChange () [protected, virtual]
+
+
+ +

Notify a scale change.

+ +

Reimplemented from QwtAbstractScale.

+ +
+
+ +
+
+ + + + + + + +
const QwtScaleDraw * QwtThermo::scaleDraw () const
+
+
+
Returns:
the scale draw of the thermo
+
See also:
setScaleDraw()
+ +
+
+ +
+
+ + + + + + + +
QwtScaleDraw * QwtThermo::scaleDraw () [protected]
+
+
+
Returns:
the scale draw of the thermo
+
See also:
setScaleDraw()
+ +
+
+ +
+
+ + + + + + + +
QwtThermo::ScalePos QwtThermo::scalePosition () const
+
+
+

Return the scale position.

+
See also:
setScalePosition()
+ +
+
+ +
+
+ + + + + + + + +
void QwtThermo::setAlarmBrush (const QBrush & brush)
+
+
+ +

Specify the liquid brush above the alarm threshold.

+

Changes the QPalette::Highlight brush of the palette.

+
Parameters:
+ + +
brushNew brush.
+
+
+
See also:
alarmBrush(), QWidget::setPalette()
+
Warning:
The alarm threshold has no effect, when a color map has been assigned
+ +
+
+ +
+
+ + + + + + + + +
void QwtThermo::setAlarmEnabled (bool tf)
+
+
+ +

Enable or disable the alarm threshold.

+
Parameters:
+ + +
tftrue (disabled) or false (enabled)
+
+
+
Warning:
The alarm threshold has no effect, when a color map has been assigned
+ +
+
+ +
+
+ + + + + + + + +
void QwtThermo::setAlarmLevel (double level)
+
+
+

Specify the alarm threshold.

+
Parameters:
+ + +
levelAlarm threshold
+
+
+
See also:
alarmLevel()
+
Warning:
The alarm threshold has no effect, when a color map has been assigned
+ +
+
+ +
+
+ + + + + + + + +
void QwtThermo::setBorderWidth (int width)
+
+
+

Set the border width of the pipe.

+
Parameters:
+ + +
widthBorder width
+
+
+
See also:
borderWidth()
+ +
+
+ +
+
+ + + + + + + + +
void QwtThermo::setColorMap (QwtColorMapcolorMap)
+
+
+ +

Assign a color map for the fill color.

+
Parameters:
+ + +
colorMapColor map
+
+
+
Warning:
The alarm threshold has no effect, when a color map has been assigned
+ +
+
+ +
+
+ + + + + + + + +
void QwtThermo::setFillBrush (const QBrush & brush)
+
+
+ +

Change the brush of the liquid.

+

Changes the QPalette::ButtonText brush of the palette.

+
Parameters:
+ + +
brushNew brush.
+
+
+
See also:
fillBrush(), QWidget::setPalette()
+ +
+
+ +
+
+ + + + + + + + +
void QwtThermo::setMaxValue (double maxValue)
+
+
+

Set the maximum value.

+
Parameters:
+ + +
maxValueMaximum value
+
+
+
See also:
maxValue(), setMinValue(), setRange()
+ +
+
+ +
+
+ + + + + + + + +
void QwtThermo::setMinValue (double minValue)
+
+
+

Set the minimum value.

+
Parameters:
+ + +
minValueMinimum value
+
+
+
See also:
minValue(), setMaxValue(), setRange()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtThermo::setOrientation (Qt::Orientation o,
ScalePos s 
)
+
+
+ +

Set the thermometer orientation and the scale position.

+

The scale position NoScale disables the scale.

+
Parameters:
+ + + +
oorientation. Possible values are Qt::Horizontal and Qt::Vertical. The default value is Qt::Vertical.
sPosition of the scale. The default value is NoScale.
+
+
+

A valid combination of scale position and orientation is enforced:

+
    +
  • a horizontal thermometer can have the scale positions TopScale, BottomScale or NoScale;
  • +
  • a vertical thermometer can have the scale positions LeftScale, RightScale or NoScale;
  • +
  • an invalid scale position will default to NoScale.
  • +
+
See also:
setScalePosition()
+ +
+
+ +
+
+ + + + + + + + +
void QwtThermo::setPipeWidth (int width)
+
+
+

Change the width of the pipe.

+
Parameters:
+ + +
widthWidth of the pipe
+
+
+
See also:
pipeWidth()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtThermo::setRange (double minValue,
double maxValue,
bool logarithmic = false 
)
+
+
+ +

Set the range.

+
Parameters:
+ + + + +
minValuevalue corresponding lower or left end of the thermometer
maxValuevalue corresponding to the upper or right end of the thermometer
logarithmiclogarithmic mapping, true or false
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtThermo::setRangeFlags (QwtInterval::BorderFlags flags)
+
+
+ +

Exclude/Include min/max values.

+

According to the flags minValue() and maxValue() are included/excluded from the pipe. In case of an excluded value the corresponding tick is painted 1 pixel off of the pipeRect().

+

F.e. when a minimum of 0.0 has to be displayed as an empty pipe the minValue() needs to be excluded.

+
Parameters:
+ + +
flagsRange flags
+
+
+
See also:
rangeFlags()
+ +
+
+ +
+
+ + + + + + + + +
void QwtThermo::setScaleDraw (QwtScaleDrawscaleDraw)
+
+
+ +

Set a scale draw.

+

For changing the labels of the scales, it is necessary to derive from QwtScaleDraw and overload QwtScaleDraw::label().

+
Parameters:
+ + +
scaleDrawScaleDraw object, that has to be created with new and will be deleted in ~QwtThermo or the next call of setScaleDraw().
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtThermo::setScalePosition (ScalePos scalePos)
+
+
+ +

Change the scale position (and thermometer orientation).

+
Parameters:
+ + +
scalePosPosition of the scale.
+
+
+

A valid combination of scale position and orientation is enforced:

+
    +
  • if the new scale position is LeftScale or RightScale, the scale orientation will become Qt::Vertical;
  • +
  • if the new scale position is BottomScale or TopScale, the scale orientation will become Qt::Horizontal;
  • +
  • if the new scale position is NoScale, the scale orientation will not change.
  • +
+
See also:
setOrientation(), scalePosition()
+ +
+
+ +
+
+ + + + + + + + +
void QwtThermo::setSpacing (int spacing)
+
+
+ +

Change the spacing between pipe and scale.

+

A spacing of 0 means, that the backbone of the scale is below the pipe.

+

The default setting is 3 pixels.

+
Parameters:
+ + +
spacingNumber of pixels
+
+
+
See also:
spacing();
+ +
+
+ +
+
+ + + + + + + + +
void QwtThermo::setValue (double value) [virtual, slot]
+
+
+

Set the current value.

+
Parameters:
+ + +
valueNew Value
+
+
+
See also:
value()
+ +
+
+ +
+
+ + + + + + + +
QSize QwtThermo::sizeHint () const [virtual]
+
+
+
Returns:
the minimum size hint
+
See also:
minimumSizeHint()
+ +
+
+ +
+
+ + + + + + + +
int QwtThermo::spacing () const
+
+
+
Returns:
Number of pixels between pipe and scale
+
See also:
setSpacing()
+ +
+
+ +
+
+ + + + + + + +
double QwtThermo::value () const
+
+
+ +

Return the value.

+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_thermo__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_thermo__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_thermo__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_thermo__inherit__graph.map 2011-04-15 10:49:17.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_thermo__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_thermo__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_thermo__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_thermo__inherit__graph.md5 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1 @@ +075d39011ae1b2e2120eec8d5179e21c \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_thermo__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_thermo__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_thermo-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_thermo-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_thermo-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_thermo-members.html 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1,118 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtThermo Member List

+
+
+This is the complete list of members for QwtThermo, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
abstractScaleDraw() const QwtAbstractScale [protected]
abstractScaleDraw()QwtAbstractScale [protected]
alarmBrush() const QwtThermo
alarmEnabled() const QwtThermo
alarmLevel() const QwtThermo
autoScale() const QwtAbstractScale
borderWidth() const QwtThermo
BottomScale enum valueQwtThermo
changeEvent(QEvent *)QwtThermo [protected, virtual]
colorMap()QwtThermo
colorMap() const QwtThermo
drawLiquid(QPainter *, const QRect &) const QwtThermo [protected, virtual]
fillBrush() const QwtThermo
LeftScale enum valueQwtThermo
maxValue() const QwtThermo
minimumSizeHint() const QwtThermo [virtual]
minValue() const QwtThermo
NoScale enum valueQwtThermo
paintEvent(QPaintEvent *)QwtThermo [protected, virtual]
pipeRect() const QwtThermo [protected]
pipeWidth() const QwtThermo
QwtAbstractScale()QwtAbstractScale
QwtThermo(QWidget *parent=NULL)QwtThermo [explicit]
rangeFlags() const QwtThermo
rescale(double vmin, double vmax, double step=0.0)QwtAbstractScale [protected]
resizeEvent(QResizeEvent *)QwtThermo [protected, virtual]
RightScale enum valueQwtThermo
scaleChange()QwtThermo [protected, virtual]
scaleDraw() const QwtThermo
scaleDraw()QwtThermo [protected]
scaleEngine() const QwtAbstractScale
scaleEngine()QwtAbstractScale
scaleMap() const QwtAbstractScale
scaleMaxMajor() const QwtAbstractScale
scaleMaxMinor() const QwtAbstractScale
ScalePos enum nameQwtThermo
scalePosition() const QwtThermo
setAbstractScaleDraw(QwtAbstractScaleDraw *)QwtAbstractScale [protected]
setAlarmBrush(const QBrush &b)QwtThermo
setAlarmEnabled(bool tf)QwtThermo
setAlarmLevel(double v)QwtThermo
setAutoScale()QwtAbstractScale
setBorderWidth(int w)QwtThermo
setColorMap(QwtColorMap *)QwtThermo
setFillBrush(const QBrush &b)QwtThermo
setMaxValue(double v)QwtThermo
setMinValue(double v)QwtThermo
setOrientation(Qt::Orientation, ScalePos)QwtThermo
setPipeWidth(int w)QwtThermo
setRange(double vmin, double vmax, bool lg=false)QwtThermo
setRangeFlags(QwtInterval::BorderFlags)QwtThermo
setScale(double vmin, double vmax, double step=0.0)QwtAbstractScale
setScale(const QwtInterval &, double step=0.0)QwtAbstractScale
setScale(const QwtScaleDiv &)QwtAbstractScale
setScaleDraw(QwtScaleDraw *)QwtThermo
setScaleEngine(QwtScaleEngine *)QwtAbstractScale
setScaleMaxMajor(int ticks)QwtAbstractScale
setScaleMaxMinor(int ticks)QwtAbstractScale
setScalePosition(ScalePos s)QwtThermo
setSpacing(int)QwtThermo
setValue(double val)QwtThermo [virtual, slot]
sizeHint() const QwtThermo [virtual]
spacing() const QwtThermo
TopScale enum valueQwtThermo
value() const QwtThermo
~QwtAbstractScale()QwtAbstractScale [virtual]
~QwtThermo()QwtThermo [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_weeding_curve_fitter.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_weeding_curve_fitter.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_weeding_curve_fitter.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_weeding_curve_fitter.html 2011-04-15 10:49:25.000000000 +0000 @@ -0,0 +1,196 @@ + + + + +Qwt User's Guide: QwtWeedingCurveFitter Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtWeedingCurveFitter Class Reference

+
+
+ +

A curve fitter implementing Douglas and Peucker algorithm. +More...

+ +

#include <qwt_curve_fitter.h>

+
+Inheritance diagram for QwtWeedingCurveFitter:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + +

+Public Member Functions

 QwtWeedingCurveFitter (double tolerance=1.0)
virtual ~QwtWeedingCurveFitter ()
void setTolerance (double)
double tolerance () const
virtual QPolygonF fitCurve (const QPolygonF &) const
+

Detailed Description

+

A curve fitter implementing Douglas and Peucker algorithm.

+

The purpose of the Douglas and Peucker algorithm is that given a 'curve' composed of line segments to find a curve not too dissimilar but that has fewer points. The algorithm defines 'too dissimilar' based on the maximum distance (tolerance) between the original curve and the smoothed curve.

+

The smoothed curve consists of a subset of the points that defined the original curve.

+

In opposite to QwtSplineCurveFitter the Douglas and Peucker algorithm reduces the number of points. By adjusting the tolerance parameter according to the axis scales QwtSplineCurveFitter can be used to implement different level of details to speed up painting of curves of many points.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtWeedingCurveFitter::QwtWeedingCurveFitter (double tolerance = 1.0)
+
+
+

Constructor

+
Parameters:
+ + +
toleranceTolerance
+
+
+
See also:
setTolerance(), tolerance()
+ +
+
+ +
+
+ + + + + + + +
QwtWeedingCurveFitter::~QwtWeedingCurveFitter () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + +
QPolygonF QwtWeedingCurveFitter::fitCurve (const QPolygonF & points) const [virtual]
+
+
+
Parameters:
+ + +
pointsSeries of data points
+
+
+
Returns:
Curve points
+ +

Implements QwtCurveFitter.

+ +
+
+ +
+
+ + + + + + + + +
void QwtWeedingCurveFitter::setTolerance (double tolerance)
+
+
+

Assign the tolerance

+

The tolerance is the maximum distance, that is accaptable between the original curve and the smoothed curve.

+

Increasing the tolerance will reduce the number of the resulting points.

+
Parameters:
+ + +
toleranceTolerance
+
+
+
See also:
tolerance()
+ +
+
+ +
+
+ + + + + + + +
double QwtWeedingCurveFitter::tolerance () const
+
+
+
Returns:
Tolerance
+
See also:
setTolerance()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_weeding_curve_fitter__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_weeding_curve_fitter__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_weeding_curve_fitter__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_weeding_curve_fitter__inherit__graph.map 2011-04-15 10:49:17.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_weeding_curve_fitter__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_weeding_curve_fitter__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_weeding_curve_fitter__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_weeding_curve_fitter__inherit__graph.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +91826db10aff9466d999a915abc30055 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_weeding_curve_fitter__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_weeding_curve_fitter__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_weeding_curve_fitter-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_weeding_curve_fitter-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_weeding_curve_fitter-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_weeding_curve_fitter-members.html 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1,58 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtWeedingCurveFitter Member List

+
+
+This is the complete list of members for QwtWeedingCurveFitter, including all inherited members. + + + + + + + +
fitCurve(const QPolygonF &) const QwtWeedingCurveFitter [virtual]
QwtCurveFitter()QwtCurveFitter [protected]
QwtWeedingCurveFitter(double tolerance=1.0)QwtWeedingCurveFitter
setTolerance(double)QwtWeedingCurveFitter
tolerance() const QwtWeedingCurveFitter
~QwtCurveFitter()QwtCurveFitter [virtual]
~QwtWeedingCurveFitter()QwtWeedingCurveFitter [virtual]
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_wheel.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_wheel.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_wheel.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_wheel.html 2011-04-15 10:49:25.000000000 +0000 @@ -0,0 +1,752 @@ + + + + +Qwt User's Guide: QwtWheel Class Reference + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+ +
+

QwtWheel Class Reference

+
+
+ +

The Wheel Widget. +More...

+ +

#include <qwt_wheel.h>

+
+Inheritance diagram for QwtWheel:
+
+
Inheritance graph
+ + +
[legend]
+ +

List of all members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Slots

void setTotalAngle (double)
void setViewAngle (double)

+Public Member Functions

 QwtWheel (QWidget *parent=NULL)
virtual ~QwtWheel ()
virtual void setOrientation (Qt::Orientation)
double totalAngle () const
double viewAngle () const
void setTickCnt (int)
int tickCnt () const
void setMass (double)
double mass () const
void setWheelWidth (int)
int wheelWidth () const
void setWheelBorderWidth (int)
int wheelBorderWidth () const
void setBorderWidth (int)
int borderWidth () const
QRect wheelRect () const
virtual QSize sizeHint () const
virtual QSize minimumSizeHint () const

+Protected Member Functions

virtual void paintEvent (QPaintEvent *)
virtual void resizeEvent (QResizeEvent *)
virtual void drawTicks (QPainter *, const QRectF &)
virtual void drawWheelBackground (QPainter *, const QRectF &)
virtual void valueChange ()
virtual double getValue (const QPoint &)
virtual void getScrollMode (const QPoint &, QwtAbstractSlider::ScrollMode &, int &direction) const
+

Detailed Description

+

The Wheel Widget.

+

The wheel widget can be used to change values over a very large range in very small steps. Using the setMass member, it can be configured as a flywheel.

+
See also:
The radio example.
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
QwtWheel::QwtWheel (QWidget * parent = NULL) [explicit]
+
+
+ +

Constructor.

+ +
+
+ +
+
+ + + + + + + +
QwtWheel::~QwtWheel () [virtual]
+
+
+ +

Destructor.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
int QwtWheel::borderWidth () const
+
+
+
Returns:
Border width
+
See also:
setBorderWidth()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtWheel::drawTicks (QPainter * painter,
const QRectF & rect 
) [protected, virtual]
+
+
+

Draw the Wheel's ticks

+
Parameters:
+ + + +
painterPainter
rectRectangle for the wheel
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void QwtWheel::drawWheelBackground (QPainter * painter,
const QRectF & rect 
) [protected, virtual]
+
+
+

Draw the Wheel's background gradient

+
Parameters:
+ + + +
painterPainter
rectRectangle for the wheel
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void QwtWheel::getScrollMode (const QPoint & p,
QwtAbstractSlider::ScrollModescrollMode,
int & direction 
) const [protected, virtual]
+
+
+ +

Determine the scrolling mode and direction corresponding to a specified point.

+
Parameters:
+ + + + +
ppoint
scrollModescrolling mode
directiondirection
+
+
+ +

Implements QwtAbstractSlider.

+ +
+
+ +
+
+ + + + + + + + +
double QwtWheel::getValue (const QPoint & p) [protected, virtual]
+
+
+ +

Determine the value corresponding to a specified point.

+ +

Implements QwtAbstractSlider.

+ +
+
+ +
+
+ + + + + + + +
double QwtWheel::mass () const [virtual]
+
+
+
Returns:
mass
+ +

Reimplemented from QwtAbstractSlider.

+ +
+
+ +
+
+ + + + + + + +
QSize QwtWheel::minimumSizeHint () const [virtual]
+
+
+ +

Return a minimum size hint.

+
Warning:
The return value is based on the wheel width.
+ +
+
+ +
+
+ + + + + + + + +
void QwtWheel::paintEvent (QPaintEvent * event) [protected, virtual]
+
+
+ +

Qt Paint Event.

+
Parameters:
+ + +
eventPaint event
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtWheel::resizeEvent (QResizeEvent * event) [protected, virtual]
+
+
+ +

Qt Resize Event.

+
Parameters:
+ + +
eventResize event
+
+
+ +
+
+ +
+
+ + + + + + + + +
void QwtWheel::setBorderWidth (int width)
+
+
+ +

Set the border width.

+

The border defaults to 2.

+
Parameters:
+ + +
widthBorder width
+
+
+
See also:
borderWidth()
+ +
+
+ +
+
+ + + + + + + + +
void QwtWheel::setMass (double mass) [virtual]
+
+
+ +

Set the mass of the wheel.

+

Assigning a mass turns the wheel into a flywheel.

+
Parameters:
+ + +
massThe wheel's mass
+
+
+ +

Reimplemented from QwtAbstractSlider.

+ +
+
+ +
+
+ + + + + + + + +
void QwtWheel::setOrientation (Qt::Orientation o) [virtual]
+
+
+ +

Set the wheel's orientation.

+
Parameters:
+ + +
oOrientation. Allowed values are Qt::Horizontal and Qt::Vertical. Defaults to Qt::Horizontal.
+
+
+
See also:
QwtAbstractSlider::orientation()
+ +

Reimplemented from QwtAbstractSlider.

+ +
+
+ +
+
+ + + + + + + + +
void QwtWheel::setTickCnt (int cnt)
+
+
+ +

Adjust the number of grooves in the wheel's surface.

+

The number of grooves is limited to 6 <= cnt <= 50. Values outside this range will be clipped. The default value is 10.

+
Parameters:
+ + +
cntNumber of grooves per 360 degrees
+
+
+
See also:
tickCnt()
+ +
+
+ +
+
+ + + + + + + + +
void QwtWheel::setTotalAngle (double angle) [slot]
+
+
+ +

Set the total angle which the wheel can be turned.

+

One full turn of the wheel corresponds to an angle of 360 degrees. A total angle of n*360 degrees means that the wheel has to be turned n times around its axis to get from the minimum value to the maximum value.

+

The default setting of the total angle is 360 degrees.

+
Parameters:
+ + +
angletotal angle in degrees
+
+
+
See also:
totalAngle()
+ +
+
+ +
+
+ + + + + + + + +
void QwtWheel::setViewAngle (double angle) [slot]
+
+
+ +

Specify the visible portion of the wheel.

+

You may use this function for fine-tuning the appearance of the wheel. The default value is 175 degrees. The value is limited from 10 to 175 degrees.

+
Parameters:
+ + +
angleVisible angle in degrees
+
+
+
See also:
viewAngle(), setTotalAngle()
+ +
+
+ +
+
+ + + + + + + + +
void QwtWheel::setWheelBorderWidth (int borderWidth)
+
+
+ +

Set the wheel border width of the wheel.

+

The wheel border must not be smaller than 1 and is limited in dependence on the wheel's size. Values outside the allowed range will be clipped.

+

The wheel border defaults to 2.

+
Parameters:
+ + +
borderWidthBorder width
+
+
+
See also:
internalBorder()
+ +
+
+ +
+
+ + + + + + + + +
void QwtWheel::setWheelWidth (int width)
+
+
+ +

Set the width of the wheel.

+

Corresponds to the wheel height for horizontal orientation, and the wheel width for vertical orientation.

+
Parameters:
+ + +
widththe wheel's width
+
+
+
See also:
wheelWidth()
+ +
+
+ +
+
+ + + + + + + +
QSize QwtWheel::sizeHint () const [virtual]
+
+
+
Returns:
a size hint
+ +
+
+ +
+
+ + + + + + + +
int QwtWheel::tickCnt () const
+
+
+
Returns:
Number of grooves in the wheel's surface.
+
See also:
setTickCnt()
+ +
+
+ +
+
+ + + + + + + +
double QwtWheel::totalAngle () const
+
+
+
Returns:
Total angle which the wheel can be turned.
+
See also:
setTotalAngle()
+ +
+
+ +
+
+ + + + + + + +
void QwtWheel::valueChange () [protected, virtual]
+
+
+ +

Notify value change.

+ +

Reimplemented from QwtAbstractSlider.

+ +
+
+ +
+
+ + + + + + + +
double QwtWheel::viewAngle () const
+
+
+
Returns:
Visible portion of the wheel
+
See also:
setViewAngle(), totalAngle()
+ +
+
+ +
+
+ + + + + + + +
int QwtWheel::wheelBorderWidth () const
+
+
+
Returns:
Wheel border width
+
See also:
setWheelBorderWidth()
+ +
+
+ +
+
+ + + + + + + +
QRect QwtWheel::wheelRect () const
+
+
+
Returns:
Rectangle of the wheel without the outer border
+ +
+
+ +
+
+ + + + + + + +
int QwtWheel::wheelWidth () const
+
+
+
Returns:
Width of the wheel
+
See also:
setWheelWidth()
+ +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_wheel__inherit__graph.map phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_wheel__inherit__graph.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_wheel__inherit__graph.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_wheel__inherit__graph.map 2011-04-15 10:49:17.000000000 +0000 @@ -0,0 +1,4 @@ + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_wheel__inherit__graph.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_wheel__inherit__graph.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_wheel__inherit__graph.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_wheel__inherit__graph.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +38b64e99f5d995d24be342f85a7715ad \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_wheel__inherit__graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_wheel__inherit__graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_wheel-members.html phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_wheel-members.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_wheel-members.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/class_qwt_wheel-members.html 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1,128 @@ + + + + +Qwt User's Guide: Member List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

QwtWheel Member List

+
+
+This is the complete list of members for QwtWheel, including all inherited members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
borderWidth() const QwtWheel
drawTicks(QPainter *, const QRectF &)QwtWheel [protected, virtual]
drawWheelBackground(QPainter *, const QRectF &)QwtWheel [protected, virtual]
exactPrevValue() const QwtDoubleRange [protected]
exactValue() const QwtDoubleRange [protected]
fitValue(double val)QwtAbstractSlider [virtual, slot]
getScrollMode(const QPoint &, QwtAbstractSlider::ScrollMode &, int &direction) const QwtWheel [protected, virtual]
getValue(const QPoint &)QwtWheel [protected, virtual]
incPages(int)QwtDoubleRange [virtual]
incValue(int steps)QwtAbstractSlider [virtual, slot]
isReadOnly() const QwtAbstractSlider
isValid() const QwtAbstractSlider [inline]
keyPressEvent(QKeyEvent *e)QwtAbstractSlider [protected, virtual]
mass() const QwtWheel [virtual]
maxValue() const QwtDoubleRange
minimumSizeHint() const QwtWheel [virtual]
minValue() const QwtDoubleRange
mouseMoveEvent(QMouseEvent *e)QwtAbstractSlider [protected, virtual]
mouseOffset() const QwtAbstractSlider [protected]
mousePressEvent(QMouseEvent *e)QwtAbstractSlider [protected, virtual]
mouseReleaseEvent(QMouseEvent *e)QwtAbstractSlider [protected, virtual]
orientation() const QwtAbstractSlider
pageSize() const QwtDoubleRange
paintEvent(QPaintEvent *)QwtWheel [protected, virtual]
periodic() const QwtDoubleRange
prevValue() const QwtDoubleRange [protected]
QwtAbstractSlider(Qt::Orientation, QWidget *parent=NULL)QwtAbstractSlider [explicit]
QwtDoubleRange()QwtDoubleRange
QwtWheel(QWidget *parent=NULL)QwtWheel [explicit]
rangeChange()QwtDoubleRange [protected, virtual]
resizeEvent(QResizeEvent *)QwtWheel [protected, virtual]
ScrDirect enum value (defined in QwtAbstractSlider)QwtAbstractSlider
ScrMouse enum valueQwtAbstractSlider
ScrNone enum valueQwtAbstractSlider
ScrollMode enum nameQwtAbstractSlider
scrollMode() const QwtAbstractSlider [protected]
ScrPage enum valueQwtAbstractSlider
ScrTimer enum valueQwtAbstractSlider
setBorderWidth(int)QwtWheel
setMass(double)QwtWheel [virtual]
setMouseOffset(double)QwtAbstractSlider [protected]
setOrientation(Qt::Orientation)QwtWheel [virtual]
setPeriodic(bool tf)QwtDoubleRange
setPosition(const QPoint &)QwtAbstractSlider [protected, virtual]
setRange(double vmin, double vmax, double vstep=0.0, int pagesize=1)QwtDoubleRange
setReadOnly(bool)QwtAbstractSlider [virtual, slot]
setStep(double)QwtDoubleRange
setTickCnt(int)QwtWheel
setTotalAngle(double)QwtWheel [slot]
setTracking(bool enable)QwtAbstractSlider
setUpdateTime(int t)QwtAbstractSlider
setValid(bool valid)QwtAbstractSlider [inline]
setValue(double val)QwtAbstractSlider [virtual, slot]
setViewAngle(double)QwtWheel [slot]
setWheelBorderWidth(int)QwtWheel
setWheelWidth(int)QwtWheel
sizeHint() const QwtWheel [virtual]
sliderMoved(double value)QwtAbstractSlider [signal]
sliderPressed()QwtAbstractSlider [signal]
sliderReleased()QwtAbstractSlider [signal]
step() const QwtDoubleRange
stepChange()QwtDoubleRange [protected, virtual]
stopMoving()QwtAbstractSlider
tickCnt() const QwtWheel
timerEvent(QTimerEvent *e)QwtAbstractSlider [protected, virtual]
totalAngle() const QwtWheel
value() const QwtDoubleRange
valueChange()QwtWheel [protected, virtual]
valueChanged(double value)QwtAbstractSlider [signal]
viewAngle() const QwtWheel
wheelBorderWidth() const QwtWheel
wheelEvent(QWheelEvent *e)QwtAbstractSlider [protected, virtual]
wheelRect() const QwtWheel
wheelWidth() const QwtWheel
~QwtAbstractSlider()QwtAbstractSlider [virtual]
~QwtDoubleRange()QwtDoubleRange [virtual]
~QwtWheel()QwtWheel [virtual]
+ + + Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/closed.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/closed.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/controlscreenshots.html phyxcalc-3rev200/qwt-6.0.0/doc/html/controlscreenshots.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/controlscreenshots.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/controlscreenshots.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,57 @@ + + + + +Qwt User's Guide: Dials, Compasses, Knobs, Wheels, Sliders, Thermos + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ +
+
+
+

Dials, Compasses, Knobs, Wheels, Sliders, Thermos

+
+
+
+radio.png +
+
+sliders.png +
+
+dials1.png +
+
+dials2.png +
+
+sysinfo.png +
+
+ + + Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/cpuplot.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/cpuplot.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/curvescreenshots.html phyxcalc-3rev200/qwt-6.0.0/doc/html/curvescreenshots.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/curvescreenshots.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/curvescreenshots.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,57 @@ + + + + +Qwt User's Guide: Curve Plots + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ +
+
+
+

Curve Plots

+
+
+
+plot.png +
+
+sinus.png +
+
+cpuplot.png +
+
+graph.png +
+
+curves.png +
+
+ + + Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/curves.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/curves.png differ Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/dials1.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/dials1.png differ Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/dials2.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/dials2.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/doxygen.css phyxcalc-3rev200/qwt-6.0.0/doc/html/doxygen.css --- phyxcalc-3rev200/qwt-6.0.0/doc/html/doxygen.css 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/doxygen.css 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,800 @@ +/* The standard CSS for doxygen */ + +body, table, div, p, dl { + font-family: Lucida Grande, Verdana, Geneva, Arial, sans-serif; + font-size: 12px; +} + +/* @group Heading Levels */ + +h1 { + font-size: 150%; +} + +h2 { + font-size: 120%; +} + +h3 { + font-size: 100%; +} + +dt { + font-weight: bold; +} + +div.multicol { + -moz-column-gap: 1em; + -webkit-column-gap: 1em; + -moz-column-count: 3; + -webkit-column-count: 3; +} + +p.startli, p.startdd, p.starttd { + margin-top: 2px; +} + +p.endli { + margin-bottom: 0px; +} + +p.enddd { + margin-bottom: 4px; +} + +p.endtd { + margin-bottom: 2px; +} + +/* @end */ + +caption { + font-weight: bold; +} + +span.legend { + font-size: 70%; + text-align: center; +} + +h3.version { + font-size: 90%; + text-align: center; +} + +div.qindex, div.navtab{ + background-color: #EBEFF6; + border: 1px solid #A3B4D7; + text-align: center; + margin: 2px; + padding: 2px; +} + +div.qindex, div.navpath { + width: 100%; + line-height: 140%; +} + +div.navtab { + margin-right: 15px; +} + +/* @group Link Styling */ + +a { + color: #3D578C; + font-weight: normal; + text-decoration: none; +} + +.contents a:visited { + color: #4665A2; +} + +a:hover { + text-decoration: underline; +} + +a.qindex { + font-weight: bold; +} + +a.qindexHL { + font-weight: bold; + background-color: #9CAFD4; + color: #ffffff; + border: 1px double #869DCA; +} + +.contents a.qindexHL:visited { + color: #ffffff; +} + +a.el { + font-weight: bold; +} + +a.elRef { +} + +a.code { + color: #4665A2; +} + +a.codeRef { + color: #4665A2; +} + +/* @end */ + +dl.el { + margin-left: -1cm; +} + +.fragment { + font-family: monospace, fixed; + font-size: 105%; +} + +pre.fragment { + border: 1px solid #C4CFE5; + background-color: #FBFCFD; + padding: 4px 6px; + margin: 4px 8px 4px 2px; + overflow: auto; + word-wrap: break-word; + font-size: 9pt; + line-height: 125%; +} + +div.ah { + background-color: black; + font-weight: bold; + color: #ffffff; + margin-bottom: 3px; + margin-top: 3px; + padding: 0.2em; + border: solid thin #333; + border-radius: 0.5em; + -webkit-border-radius: .5em; + -moz-border-radius: .5em; + box-shadow: 2px 2px 3px #999; + -webkit-box-shadow: 2px 2px 3px #999; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); + background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000); +} + +div.groupHeader { + margin-left: 16px; + margin-top: 12px; + font-weight: bold; +} + +div.groupText { + margin-left: 16px; + font-style: italic; +} + +body { + background: white; + color: black; + margin: 0; +} + +div.contents { + margin-top: 10px; + margin-left: 10px; + margin-right: 10px; +} + +td.indexkey { + background-color: #EBEFF6; + font-weight: bold; + border: 1px solid #C4CFE5; + margin: 2px 0px 2px 0; + padding: 2px 10px; +} + +td.indexvalue { + background-color: #EBEFF6; + border: 1px solid #C4CFE5; + padding: 2px 10px; + margin: 2px 0px; +} + +tr.memlist { + background-color: #EEF1F7; +} + +p.formulaDsp { + text-align: center; +} + +img.formulaDsp { + +} + +img.formulaInl { + vertical-align: middle; +} + +div.center { + text-align: center; + margin-top: 0px; + margin-bottom: 0px; + padding: 0px; +} + +div.center img { + border: 0px; +} + +address.footer { + text-align: right; + padding-right: 12px; +} + +img.footer { + border: 0px; + vertical-align: middle; +} + +/* @group Code Colorization */ + +span.keyword { + color: #008000 +} + +span.keywordtype { + color: #604020 +} + +span.keywordflow { + color: #e08000 +} + +span.comment { + color: #800000 +} + +span.preprocessor { + color: #806020 +} + +span.stringliteral { + color: #002080 +} + +span.charliteral { + color: #008080 +} + +span.vhdldigit { + color: #ff00ff +} + +span.vhdlchar { + color: #000000 +} + +span.vhdlkeyword { + color: #700070 +} + +span.vhdllogic { + color: #ff0000 +} + +/* @end */ + +/* +.search { + color: #003399; + font-weight: bold; +} + +form.search { + margin-bottom: 0px; + margin-top: 0px; +} + +input.search { + font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #e8eef2; +} +*/ + +td.tiny { + font-size: 75%; +} + +.dirtab { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A3B4D7; +} + +th.dirtab { + background: #EBEFF6; + font-weight: bold; +} + +hr { + height: 0px; + border: none; + border-top: 1px solid #4A6AAA; +} + +hr.footer { + height: 1px; +} + +/* @group Member Descriptions */ + +table.memberdecls { + border-spacing: 0px; + padding: 0px; +} + +.mdescLeft, .mdescRight, +.memItemLeft, .memItemRight, +.memTemplItemLeft, .memTemplItemRight, .memTemplParams { + background-color: #F9FAFC; + border: none; + margin: 4px; + padding: 1px 0 0 8px; +} + +.mdescLeft, .mdescRight { + padding: 0px 8px 4px 8px; + color: #555; +} + +.memItemLeft, .memItemRight, .memTemplParams { + border-top: 1px solid #C4CFE5; +} + +.memItemLeft, .memTemplItemLeft { + white-space: nowrap; +} + +.memTemplParams { + color: #4665A2; + white-space: nowrap; +} + +/* @end */ + +/* @group Member Details */ + +/* Styles for detailed member documentation */ + +.memtemplate { + font-size: 80%; + color: #4665A2; + font-weight: normal; + margin-left: 9px; +} + +.memnav { + background-color: #EBEFF6; + border: 1px solid #A3B4D7; + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} + +.memitem { + padding: 0; + margin-bottom: 10px; +} + +.memname { + white-space: nowrap; + font-weight: bold; + margin-left: 6px; +} + +.memproto { + border-top: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 6px 0px 6px 0px; + color: #253555; + font-weight: bold; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + /* opera specific markup */ + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + border-top-right-radius: 8px; + border-top-left-radius: 8px; + /* firefox specific markup */ + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + -moz-border-radius-topright: 8px; + -moz-border-radius-topleft: 8px; + /* webkit specific markup */ + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + -webkit-border-top-right-radius: 8px; + -webkit-border-top-left-radius: 8px; + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E8F2; + +} + +.memdoc { + border-bottom: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 2px 5px; + background-color: #FBFCFD; + border-top-width: 0; + /* opera specific markup */ + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + /* firefox specific markup */ + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + background-image: -moz-linear-gradient(center top, #FFFFFF 0%, #FFFFFF 60%, #F7F8FB 95%, #EEF1F7); + /* webkit specific markup */ + -webkit-border-bottom-left-radius: 8px; + -webkit-border-bottom-right-radius: 8px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + background-image: -webkit-gradient(linear,center top,center bottom,from(#FFFFFF), color-stop(0.6,#FFFFFF), color-stop(0.60,#FFFFFF), color-stop(0.95,#F7F8FB), to(#EEF1F7)); +} + +.paramkey { + text-align: right; +} + +.paramtype { + white-space: nowrap; +} + +.paramname { + color: #602020; + white-space: nowrap; +} +.paramname em { + font-style: normal; +} + +.params, .retval, .exception, .tparams { + border-spacing: 6px 2px; +} + +.params .paramname, .retval .paramname { + font-weight: bold; + vertical-align: top; +} + +.params .paramtype { + font-style: italic; + vertical-align: top; +} + +.params .paramdir { + font-family: "courier new",courier,monospace; + vertical-align: top; +} + + + + +/* @end */ + +/* @group Directory (tree) */ + +/* for the tree view */ + +.ftvtree { + font-family: sans-serif; + margin: 0px; +} + +/* these are for tree view when used as main index */ + +.directory { + font-size: 9pt; + font-weight: bold; + margin: 5px; +} + +.directory h3 { + margin: 0px; + margin-top: 1em; + font-size: 11pt; +} + +/* +The following two styles can be used to replace the root node title +with an image of your choice. Simply uncomment the next two styles, +specify the name of your image and be sure to set 'height' to the +proper pixel height of your image. +*/ + +/* +.directory h3.swap { + height: 61px; + background-repeat: no-repeat; + background-image: url("yourimage.gif"); +} +.directory h3.swap span { + display: none; +} +*/ + +.directory > h3 { + margin-top: 0; +} + +.directory p { + margin: 0px; + white-space: nowrap; +} + +.directory div { + display: none; + margin: 0px; +} + +.directory img { + vertical-align: -30%; +} + +/* these are for tree view when not used as main index */ + +.directory-alt { + font-size: 100%; + font-weight: bold; +} + +.directory-alt h3 { + margin: 0px; + margin-top: 1em; + font-size: 11pt; +} + +.directory-alt > h3 { + margin-top: 0; +} + +.directory-alt p { + margin: 0px; + white-space: nowrap; +} + +.directory-alt div { + display: none; + margin: 0px; +} + +.directory-alt img { + vertical-align: -30%; +} + +/* @end */ + +div.dynheader { + margin-top: 8px; +} + +address { + font-style: normal; + color: #2A3D61; +} + +table.doxtable { + border-collapse:collapse; +} + +table.doxtable td, table.doxtable th { + border: 1px solid #2D4068; + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: #374F7F; + color: #FFFFFF; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; +} + +.tabsearch { + top: 0px; + left: 10px; + height: 36px; + background-image: url('tab_b.png'); + z-index: 101; + overflow: hidden; + font-size: 13px; +} + +.navpath ul +{ + font-size: 11px; + background-image:url('tab_b.png'); + background-repeat:repeat-x; + height:30px; + line-height:30px; + color:#8AA0CC; + border:solid 1px #C2CDE4; + overflow:hidden; + margin:0px; + padding:0px; +} + +.navpath li +{ + list-style-type:none; + float:left; + padding-left:10px; + padding-right:15px; + background-image:url('bc_s.png'); + background-repeat:no-repeat; + background-position:right; + color:#364D7C; +} + +.navpath li.navelem a +{ + height:32px; + display:block; + text-decoration: none; + outline: none; +} + +.navpath li.navelem a:hover +{ + color:#6884BD; +} + +.navpath li.footer +{ + list-style-type:none; + float:right; + padding-left:10px; + padding-right:15px; + background-image:none; + background-repeat:no-repeat; + background-position:right; + color:#364D7C; + font-size: 8pt; +} + + +div.summary +{ + float: right; + font-size: 8pt; + padding-right: 5px; + width: 50%; + text-align: right; +} + +div.summary a +{ + white-space: nowrap; +} + +div.ingroups +{ + font-size: 8pt; + padding-left: 5px; + width: 50%; + text-align: left; +} + +div.ingroups a +{ + white-space: nowrap; +} + +div.header +{ + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + margin: 0px; + border-bottom: 1px solid #C4CFE5; +} + +div.headertitle +{ + padding: 5px 5px 5px 10px; +} + +dl +{ + padding: 0 0 0 10px; +} + +dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug +{ + border-left:4px solid; + padding: 0 0 0 6px; +} + +dl.note +{ + border-color: #D0D000; +} + +dl.warning, dl.attention +{ + border-color: #FF0000; +} + +dl.pre, dl.post, dl.invariant +{ + border-color: #00D000; +} + +dl.deprecated +{ + border-color: #505050; +} + +dl.todo +{ + border-color: #00C0E0; +} + +dl.test +{ + border-color: #3030E0; +} + +dl.bug +{ + border-color: #C08050; +} + +#projectlogo +{ + text-align: center; + vertical-align: bottom; + border-collapse: separate; +} + +#projectlogo img +{ + border: 0px none; +} + +#projectname +{ + font: 300% arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#projectbrief +{ + font: 120% arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#projectnumber +{ + font: 50% arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#titlearea +{ + padding: 0px; + margin: 0px; + width: 100%; + border-bottom: 1px solid #5373B4; +} + Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/doxygen.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/doxygen.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/files.html phyxcalc-3rev200/qwt-6.0.0/doc/html/files.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/files.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/files.html 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1,127 @@ + + + + +Qwt User's Guide: File List + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

File List

+
+
+
Here is a list of all documented files with brief descriptions:
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
qwt_abstract_scale.h [code]
qwt_abstract_scale_draw.h [code]
qwt_abstract_slider.h [code]
qwt_analog_clock.h [code]
qwt_arrow_button.h [code]
qwt_clipper.h [code]
qwt_color_map.h [code]
qwt_column_symbol.h [code]
qwt_compass.h [code]
qwt_compass_rose.h [code]
qwt_compat.h [code]
qwt_counter.h [code]
qwt_curve_fitter.h [code]
qwt_dial.h [code]
qwt_dial_needle.h [code]
qwt_double_range.h [code]
qwt_dyngrid_layout.h [code]
qwt_event_pattern.h [code]
qwt_global.h [code]
qwt_interval.h [code]
qwt_interval_symbol.h [code]
qwt_knob.h [code]
qwt_legend.h [code]
qwt_legend_item.h [code]
qwt_legend_itemmanager.h [code]
qwt_magnifier.h [code]
qwt_math.h [code]
qwt_mathml_text_engine.h [code]
qwt_matrix_raster_data.h [code]
qwt_mml_document.h [code]
qwt_null_paintdevice.h [code]
qwt_painter.h [code]
qwt_panner.h [code]
qwt_picker.h [code]
qwt_picker_machine.h [code]
qwt_plot.h [code]
qwt_plot_canvas.h [code]
qwt_plot_curve.h [code]
qwt_plot_dict.h [code]
qwt_plot_directpainter.h [code]
qwt_plot_grid.h [code]
qwt_plot_histogram.h [code]
qwt_plot_intervalcurve.h [code]
qwt_plot_item.h [code]
qwt_plot_layout.h [code]
qwt_plot_magnifier.h [code]
qwt_plot_marker.h [code]
qwt_plot_panner.h [code]
qwt_plot_picker.h [code]
qwt_plot_rasteritem.h [code]
qwt_plot_renderer.h [code]
qwt_plot_rescaler.h [code]
qwt_plot_scaleitem.h [code]
qwt_plot_seriesitem.h [code]
qwt_plot_spectrocurve.h [code]
qwt_plot_spectrogram.h [code]
qwt_plot_svgitem.h [code]
qwt_plot_zoomer.h [code]
qwt_point_3d.h [code]
qwt_point_polar.h [code]
qwt_raster_data.h [code]
qwt_round_scale_draw.h [code]
qwt_sampling_thread.h [code]
qwt_scale_div.h [code]
qwt_scale_draw.h [code]
qwt_scale_engine.h [code]
qwt_scale_map.h [code]
qwt_scale_widget.h [code]
qwt_series_data.h [code]
qwt_slider.h [code]
qwt_spline.h [code]
qwt_symbol.h [code]
qwt_system_clock.h [code]
qwt_text.h [code]
qwt_text_engine.h [code]
qwt_text_label.h [code]
qwt_thermo.h [code]
qwt_wheel.h [code]
+
+ + + Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/form_0.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/form_0.png differ Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/form_1.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/form_1.png differ Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/form_2.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/form_2.png differ Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/form_3.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/form_3.png differ Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/form_4.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/form_4.png differ Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/form_5.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/form_5.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/formula.repository phyxcalc-3rev200/qwt-6.0.0/doc/html/formula.repository --- phyxcalc-3rev200/qwt-6.0.0/doc/html/formula.repository 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/formula.repository 2011-04-15 10:49:04.000000000 +0000 @@ -0,0 +1,6 @@ +\form#0:$\cdot value2 - value1 <= abs(intervalSize * 10e^{-6})$ +\form#1:$y = f([x1,x2])$ +\form#2:$[y1,y2] = f(x)$ +\form#3:$stepSize = (intervalSize - intervalSize * 10e^{-6}) / numSteps$ +\form#4:$\left\{ 1,2,5\right\} \cdot 10^{n}$ +\form#5:$\left\{ 1,2,3,5\right\} \cdot 10^{n}$ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x62.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x62.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x62.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x62.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,248 @@ + + + + +Qwt User's Guide: Class Members + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- b -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x63.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x63.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x63.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x63.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,348 @@ + + + + +Qwt User's Guide: Class Members + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- c -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x64.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x64.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x64.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x64.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,447 @@ + + + + +Qwt User's Guide: Class Members + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- d -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x65.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x65.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x65.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x65.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,200 @@ + + + + +Qwt User's Guide: Class Members + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- e -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x66.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x66.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x66.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x66.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,171 @@ + + + + +Qwt User's Guide: Class Members + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- f -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x67.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x67.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x67.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x67.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,132 @@ + + + + +Qwt User's Guide: Class Members + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- g -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x68.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x68.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x68.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x68.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,145 @@ + + + + +Qwt User's Guide: Class Members + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- h -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x69.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x69.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x69.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x69.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,309 @@ + + + + +Qwt User's Guide: Class Members + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- i -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x6b.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x6b.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x6b.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x6b.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,136 @@ + + + + +Qwt User's Guide: Class Members + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- k -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x6c.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x6c.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x6c.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x6c.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,289 @@ + + + + +Qwt User's Guide: Class Members + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- l -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x6d.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x6d.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x6d.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x6d.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,282 @@ + + + + +Qwt User's Guide: Class Members + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- m -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x6e.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x6e.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x6e.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x6e.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,176 @@ + + + + +Qwt User's Guide: Class Members + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- n -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x6f.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x6f.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x6f.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x6f.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,161 @@ + + + + +Qwt User's Guide: Class Members + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- o -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x70.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x70.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x70.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x70.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,372 @@ + + + + +Qwt User's Guide: Class Members + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- p -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x72.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x72.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x72.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x72.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,335 @@ + + + + +Qwt User's Guide: Class Members + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- r -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x73.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x73.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x73.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x73.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,1250 @@ + + + + +Qwt User's Guide: Class Members + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- s -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x74.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x74.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x74.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x74.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,307 @@ + + + + +Qwt User's Guide: Class Members + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- t -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x75.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x75.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x75.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x75.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,158 @@ + + + + +Qwt User's Guide: Class Members + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- u -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x76.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x76.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x76.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x76.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,133 @@ + + + + +Qwt User's Guide: Class Members + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- v -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x77.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x77.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x77.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x77.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,163 @@ + + + + +Qwt User's Guide: Class Members + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- w -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x78.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x78.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x78.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x78.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,125 @@ + + + + +Qwt User's Guide: Class Members + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- x -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x79.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x79.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x79.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x79.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,119 @@ + + + + +Qwt User's Guide: Class Members + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- y -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x7a.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x7a.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x7a.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x7a.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,111 @@ + + + + +Qwt User's Guide: Class Members + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- z -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x7e.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x7e.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x7e.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_0x7e.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,314 @@ + + + + +Qwt User's Guide: Class Members + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- ~ -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_enum.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_enum.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_enum.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_enum.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,310 @@ + + + + +Qwt User's Guide: Class Members - Enumerations + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- a -

+ + +

- b -

+ + +

- c -

+ + +

- d -

+ + +

- e -

+ + +

- f -

+ + +

- h -

+ + +

- i -

+ + +

- k -

+ + +

- l -

+ + +

- m -

+ + +

- o -

+ + +

- p -

+ + +

- r -

+ + +

- s -

+ + +

- t -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x62.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x62.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x62.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x62.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,125 @@ + + + + +Qwt User's Guide: Class Members - Enumerator + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- b -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x63.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x63.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x63.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x63.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,127 @@ + + + + +Qwt User's Guide: Class Members - Enumerator + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- c -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x64.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x64.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x64.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x64.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,116 @@ + + + + +Qwt User's Guide: Class Members - Enumerator + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- d -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x65.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x65.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x65.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x65.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,116 @@ + + + + +Qwt User's Guide: Class Members - Enumerator + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- e -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x66.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x66.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x66.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x66.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,107 @@ + + + + +Qwt User's Guide: Class Members - Enumerator + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- f -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x67.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x67.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x67.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x67.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,89 @@ + + + + +Qwt User's Guide: Class Members - Enumerator + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- g -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x68.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x68.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x68.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x68.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,102 @@ + + + + +Qwt User's Guide: Class Members - Enumerator + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- h -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x69.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x69.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x69.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x69.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,120 @@ + + + + +Qwt User's Guide: Class Members - Enumerator + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- i -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x6b.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x6b.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x6b.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x6b.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,92 @@ + + + + +Qwt User's Guide: Class Members - Enumerator + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- k -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x6c.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x6c.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x6c.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x6c.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,128 @@ + + + + +Qwt User's Guide: Class Members - Enumerator + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- l -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x6d.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x6d.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x6d.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x6d.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,104 @@ + + + + +Qwt User's Guide: Class Members - Enumerator + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- m -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x6e.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x6e.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x6e.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x6e.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,141 @@ + + + + +Qwt User's Guide: Class Members - Enumerator + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- n -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x6f.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x6f.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x6f.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x6f.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,98 @@ + + + + +Qwt User's Guide: Class Members - Enumerator + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- o -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x70.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x70.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x70.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x70.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,120 @@ + + + + +Qwt User's Guide: Class Members - Enumerator + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- p -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x72.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x72.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x72.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x72.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,135 @@ + + + + +Qwt User's Guide: Class Members - Enumerator + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- r -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x73.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x73.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x73.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x73.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,135 @@ + + + + +Qwt User's Guide: Class Members - Enumerator + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- s -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x74.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x74.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x74.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x74.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,124 @@ + + + + +Qwt User's Guide: Class Members - Enumerator + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- t -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x75.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x75.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x75.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x75.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,104 @@ + + + + +Qwt User's Guide: Class Members - Enumerator + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- u -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x76.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x76.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x76.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x76.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,93 @@ + + + + +Qwt User's Guide: Class Members - Enumerator + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- v -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x78.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x78.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x78.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x78.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,95 @@ + + + + +Qwt User's Guide: Class Members - Enumerator + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- x -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x79.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x79.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x79.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval_0x79.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,92 @@ + + + + +Qwt User's Guide: Class Members - Enumerator + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- y -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_eval.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,116 @@ + + + + +Qwt User's Guide: Class Members - Enumerator + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- a -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x62.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x62.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x62.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x62.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,191 @@ + + + + +Qwt User's Guide: Class Members - Functions + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- b -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x63.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x63.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x63.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x63.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,282 @@ + + + + +Qwt User's Guide: Class Members - Functions + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- c -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x64.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x64.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x64.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x64.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,388 @@ + + + + +Qwt User's Guide: Class Members - Functions + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- d -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x65.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x65.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x65.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x65.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,167 @@ + + + + +Qwt User's Guide: Class Members - Functions + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- e -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x66.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x66.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x66.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x66.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,138 @@ + + + + +Qwt User's Guide: Class Members - Functions + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- f -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x67.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x67.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x67.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x67.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,129 @@ + + + + +Qwt User's Guide: Class Members - Functions + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- g -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x68.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x68.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x68.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x68.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,120 @@ + + + + +Qwt User's Guide: Class Members - Functions + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- h -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x69.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x69.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x69.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x69.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,267 @@ + + + + +Qwt User's Guide: Class Members - Functions + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- i -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x6b.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x6b.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x6b.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x6b.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,121 @@ + + + + +Qwt User's Guide: Class Members - Functions + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- k -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x6c.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x6c.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x6c.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x6c.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,212 @@ + + + + +Qwt User's Guide: Class Members - Functions + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- l -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x6d.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x6d.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x6d.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x6d.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,255 @@ + + + + +Qwt User's Guide: Class Members - Functions + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- m -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x6e.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x6e.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x6e.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x6e.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,121 @@ + + + + +Qwt User's Guide: Class Members - Functions + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- n -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x6f.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x6f.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x6f.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x6f.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,143 @@ + + + + +Qwt User's Guide: Class Members - Functions + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- o -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x70.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x70.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x70.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x70.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,322 @@ + + + + +Qwt User's Guide: Class Members - Functions + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- p -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x72.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x72.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x72.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x72.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,265 @@ + + + + +Qwt User's Guide: Class Members - Functions + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- r -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x73.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x73.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x73.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x73.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,1148 @@ + + + + +Qwt User's Guide: Class Members - Functions + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- s -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x74.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x74.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x74.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x74.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,263 @@ + + + + +Qwt User's Guide: Class Members - Functions + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- t -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x75.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x75.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x75.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x75.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,140 @@ + + + + +Qwt User's Guide: Class Members - Functions + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- u -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x76.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x76.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x76.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x76.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,121 @@ + + + + +Qwt User's Guide: Class Members - Functions + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- v -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x77.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x77.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x77.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x77.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,163 @@ + + + + +Qwt User's Guide: Class Members - Functions + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- w -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x78.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x78.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x78.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x78.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,116 @@ + + + + +Qwt User's Guide: Class Members - Functions + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- x -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x79.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x79.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x79.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x79.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,113 @@ + + + + +Qwt User's Guide: Class Members - Functions + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- y -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x7a.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x7a.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x7a.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x7a.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,111 @@ + + + + +Qwt User's Guide: Class Members - Functions + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- z -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x7e.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x7e.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x7e.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func_0x7e.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,314 @@ + + + + +Qwt User's Guide: Class Members - Functions + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- ~ -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_func.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,244 @@ + + + + +Qwt User's Guide: Class Members - Functions + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+  + +

- a -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,288 @@ + + + + +Qwt User's Guide: Class Members + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + + +
+
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- a -

+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_type.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_type.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_type.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_type.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,113 @@ + + + + +Qwt User's Guide: Class Members - Typedefs + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_vars.html phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_vars.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_vars.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/functions_vars.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,102 @@ + + + + +Qwt User's Guide: Class Members - Variables + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + + +
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/graph_legend.html phyxcalc-3rev200/qwt-6.0.0/doc/html/graph_legend.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/graph_legend.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/graph_legend.html 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1,106 @@ + + + + +Qwt User's Guide: Graph Legend + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ +
+
+
+

Graph Legend

+
+
+

This page explains how to interpret the graphs that are generated by doxygen.

+

Consider the following example:

+
/*! Invisible class because of truncation */
+class Invisible { };
+
+/*! Truncated class, inheritance relation is hidden */
+class Truncated : public Invisible { };
+
+/* Class not documented with doxygen comments */
+class Undocumented { };
+
+/*! Class that is inherited using public inheritance */
+class PublicBase : public Truncated { };
+
+/*! A template class */
+template<class T> class Templ { };
+
+/*! Class that is inherited using protected inheritance */
+class ProtectedBase { };
+
+/*! Class that is inherited using private inheritance */
+class PrivateBase { };
+
+/*! Class that is used by the Inherited class */
+class Used { };
+
+/*! Super class that inherits a number of other classes */
+class Inherited : public PublicBase,
+                  protected ProtectedBase,
+                  private PrivateBase,
+                  public Undocumented,
+                  public Templ<int>
+{
+  private:
+    Used *m_usedClass;
+};
+

This will result in the following graph:

+
+graph_legend.png +
+

The boxes in the above graph have the following meaning:

+
    +
  • +A filled gray box represents the struct or class for which the graph is generated.
  • +
  • +A box with a black border denotes a documented struct or class.
  • +
  • +A box with a grey border denotes an undocumented struct or class.
  • +
  • +A box with a red border denotes a documented struct or class forwhich not all inheritance/containment relations are shown. A graph is truncated if it does not fit within the specified boundaries.
  • +
+

The arrows have the following meaning:

+
    +
  • +A dark blue arrow is used to visualize a public inheritance relation between two classes.
  • +
  • +A dark green arrow is used for protected inheritance.
  • +
  • +A dark red arrow is used for private inheritance.
  • +
  • +A purple dashed arrow is used if a class is contained or used by another class. The arrow is labeled with the variable(s) through which the pointed class or struct is accessible.
  • +
  • +A yellow dashed arrow denotes a relation between a template instance and the template class it was instantiated from. The arrow is labeled with the template parameters of the instance.
  • +
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/graph_legend.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/graph_legend.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/graph_legend.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/graph_legend.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +7395bc13d00693863bfcee11e815dba4 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/graph_legend.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/graph_legend.png differ Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/graph.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/graph.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/hierarchy.html phyxcalc-3rev200/qwt-6.0.0/doc/html/hierarchy.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/hierarchy.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/hierarchy.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,251 @@ + + + + +Qwt User's Guide: Class Hierarchy + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

Class Hierarchy

+
+
+
+

Go to the graphical class hierarchy

+This inheritance list is sorted roughly, but not completely, alphabetically:
+
+ + + Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/histogram.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/histogram.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/histogramscreenshots.html phyxcalc-3rev200/qwt-6.0.0/doc/html/histogramscreenshots.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/histogramscreenshots.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/histogramscreenshots.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,45 @@ + + + + +Qwt User's Guide: Histogram + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ +
+
+
+

Histogram

+
+
+
+histogram.png +
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/index.html phyxcalc-3rev200/qwt-6.0.0/doc/html/index.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/index.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/index.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,109 @@ + + + + +Qwt User's Guide: Qwt - Qt Widgets for Technical Applications + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ +
+
+
+

Qwt - Qt Widgets for Technical Applications

+
+
+

The Qwt library contains GUI Components and utility classes which are primarily useful for programs with a technical background. Beside a 2D plot widget it provides scales, sliders, dials, compasses, thermometers, wheels and knobs to control or display values, arrays, or ranges of type double.

+
+plot.png +
+

+License

+

Qwt is distributed under the terms of the Qwt License, Version 1.0.

+

+Platforms

+

Qwt 6.x might be usable in all environments where you find Qt. It is compatible with Qt >= 4.4.

+

+Screenshots

+ +

+Downloads

+

Stable releases, prereleases and snapshots are available at the Qwt project page.

+

For getting a snapshot with all bugfixes for the latest 6.0 release:

+
 svn co https://qwt.svn.sourceforge.net/svnroot/qwt/branches/qwt-6.0 
+

For getting a development snapshot from the SVN repository:

+
 svn co https://qwt.svn.sourceforge.net/svnroot/qwt/trunk/qwt 
+

Qwt doesn't distribute binary packages, but today all major Linux distributors offer one. Note, that these packages often don't include the examples.

+

+Installation

+

Have a look at the qwt.pro project file. It is prepared for building dynamic libraries in Win32 and Unix/X11 environments. If you don't know what to do with it, read the file INSTALL and/or Trolltechs qmake documentation. Once you have build the library you have to install all files from the lib, include and doc directories.

+

+Support

+
    +
  • Mailing list
    + For all kind of Qwt related questions use the Qwt mailing list.
    + If you prefer newsgroups use the mail to news gateway of Gmane.
  • +
+
    +
  • Forum
    + Qt Centre is a great resource for Qt related questions. It has a sub forum, that is dedicated to Qwt related questions.
  • +
+
    +
  • Individual support
    + If you are looking for individual support, or need someone who implements your Qwt component/application contact qwt-support@tigertal.de. But sending requests to this address without a good reason for not using public support channels might be silently ignored.
  • +
+

+Related Projects

+

QwtPolar, a polar plot widget.
+ QwtPlot3D, an OpenGL 3D plot widget.
+ QtiPlot, data analysis and scientific plotting tool, using QwtPlot.

+

+Language Bindings

+

PyQwt, a set of Qwt Python bindings.
+ Korundum/QtRuby, including a set of Qwt Ruby bindings.
+

+

+Donations

+

Sourceforge offers a Donation System via PayPal. You can use it, if you like to support the development of Qwt.

+

+Credits:

+
Authors:
Uwe Rathmann, Josef Wilgen ( <= Qwt 0.2 )
+
Project admin:
Uwe Rathmann <rathmann@users.sourceforge.net>
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/index.qhp phyxcalc-3rev200/qwt-6.0.0/doc/html/index.qhp --- phyxcalc-3rev200/qwt-6.0.0/doc/html/index.qhp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/index.qhp 2011-04-15 10:49:04.000000000 +0000 @@ -0,0 +1,3094 @@ + + net.sourceforge.qwt-6.0.0 + qwt-6.0.0 + + doxygen + +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + tabs.css + tab_a.png + tab_b.png + tab_h.png + tab_s.png + nav_h.png + nav_f.png + bc_s.png + doxygen.png + closed.png + open.png + doxygen.css + index.html + plot.png + plot.png + pages.html + qwt__abstract__scale_8h_source.html + qwt__abstract__scale__draw_8h_source.html + qwt__abstract__slider_8h_source.html + qwt__analog__clock_8h_source.html + qwt__arrow__button_8h_source.html + qwt__clipper_8h_source.html + qwt__color__map_8h_source.html + qwt__column__symbol_8h_source.html + qwt__compass_8h_source.html + qwt__compass__rose_8h_source.html + qwt__compat_8h_source.html + qwt__counter_8h_source.html + qwt__curve__fitter_8h_source.html + qwt__dial_8h_source.html + qwt__dial__needle_8h_source.html + qwt__double__range_8h_source.html + qwt__dyngrid__layout_8h_source.html + qwt__event__pattern_8h_source.html + qwt__global_8h_source.html + qwt__interval_8h_source.html + qwt__interval__symbol_8h_source.html + qwt__knob_8h_source.html + qwt__legend_8h_source.html + qwt__legend__item_8h_source.html + qwt__legend__itemmanager_8h_source.html + qwt__magnifier_8h_source.html + qwt__math_8h_source.html + qwt__mathml__text__engine_8h_source.html + qwt__matrix__raster__data_8h_source.html + qwt__mml__document_8h_source.html + qwt__null__paintdevice_8h_source.html + qwt__painter_8h_source.html + qwt__panner_8h_source.html + qwt__picker_8h_source.html + qwt__picker__machine_8h_source.html + qwt__plot_8h_source.html + qwt__plot__canvas_8h_source.html + qwt__plot__curve_8h_source.html + qwt__plot__dict_8h_source.html + qwt__plot__directpainter_8h_source.html + qwt__plot__grid_8h_source.html + qwt__plot__histogram_8h_source.html + qwt__plot__intervalcurve_8h_source.html + qwt__plot__item_8h_source.html + qwt__plot__layout_8h_source.html + qwt__plot__magnifier_8h_source.html + qwt__plot__marker_8h_source.html + qwt__plot__panner_8h_source.html + qwt__plot__picker_8h_source.html + qwt__plot__rasteritem_8h_source.html + qwt__plot__renderer_8h_source.html + qwt__plot__rescaler_8h_source.html + qwt__plot__scaleitem_8h_source.html + qwt__plot__seriesitem_8h_source.html + qwt__plot__spectrocurve_8h_source.html + qwt__plot__spectrogram_8h_source.html + qwt__plot__svgitem_8h_source.html + qwt__plot__zoomer_8h_source.html + qwt__point__3d_8h_source.html + qwt__point__polar_8h_source.html + qwt__raster__data_8h_source.html + qwt__round__scale__draw_8h_source.html + qwt__sampling__thread_8h_source.html + qwt__scale__div_8h_source.html + qwt__scale__draw_8h_source.html + qwt__scale__engine_8h_source.html + qwt__scale__map_8h_source.html + qwt__scale__widget_8h_source.html + qwt__series__data_8h_source.html + qwt__slider_8h_source.html + qwt__spline_8h_source.html + qwt__symbol_8h_source.html + qwt__system__clock_8h_source.html + qwt__text_8h_source.html + qwt__text__engine_8h_source.html + qwt__text__label_8h_source.html + qwt__thermo_8h_source.html + qwt__wheel_8h_source.html + qwtlicense.html + qwtinstall.html + curvescreenshots.html + plot.png + sinus.png + cpuplot.png + graph.png + curves.png + scatterscreenshots.html + scatterplot.png + spectrogramscreenshots.html + spectrogram1.png + spectrogram2.png + spectrogram3.png + histogramscreenshots.html + histogram.png + controlscreenshots.html + radio.png + sliders.png + dials1.png + dials2.png + sysinfo.png + annotated.html + classes.html + hierarchy.html + functions.html + functions_0x62.html + functions_0x63.html + functions_0x64.html + functions_0x65.html + functions_0x66.html + functions_0x67.html + functions_0x68.html + functions_0x69.html + functions_0x6b.html + functions_0x6c.html + functions_0x6d.html + functions_0x6e.html + functions_0x6f.html + functions_0x70.html + functions_0x72.html + functions_0x73.html + functions_0x74.html + functions_0x75.html + functions_0x76.html + functions_0x77.html + functions_0x78.html + functions_0x79.html + functions_0x7a.html + functions_0x7e.html + functions_func.html + functions_func_0x62.html + functions_func_0x63.html + functions_func_0x64.html + functions_func_0x65.html + functions_func_0x66.html + functions_func_0x67.html + functions_func_0x68.html + functions_func_0x69.html + functions_func_0x6b.html + functions_func_0x6c.html + functions_func_0x6d.html + functions_func_0x6e.html + functions_func_0x6f.html + functions_func_0x70.html + functions_func_0x72.html + functions_func_0x73.html + functions_func_0x74.html + functions_func_0x75.html + functions_func_0x76.html + functions_func_0x77.html + functions_func_0x78.html + functions_func_0x79.html + functions_func_0x7a.html + functions_func_0x7e.html + functions_vars.html + functions_type.html + functions_enum.html + functions_eval.html + functions_eval_0x62.html + functions_eval_0x63.html + functions_eval_0x64.html + functions_eval_0x65.html + functions_eval_0x66.html + functions_eval_0x67.html + functions_eval_0x68.html + functions_eval_0x69.html + functions_eval_0x6b.html + functions_eval_0x6c.html + functions_eval_0x6d.html + functions_eval_0x6e.html + functions_eval_0x6f.html + functions_eval_0x70.html + functions_eval_0x72.html + functions_eval_0x73.html + functions_eval_0x74.html + functions_eval_0x75.html + functions_eval_0x76.html + functions_eval_0x78.html + functions_eval_0x79.html + class_qwt_abstract_scale.html + class_qwt_abstract_scale__inherit__graph.png + class_qwt_abstract_scale__inherit__graph.png + class_qwt_abstract_scale-members.html + class_qwt_abstract_scale_draw.html + class_qwt_abstract_scale_draw__inherit__graph.png + class_qwt_abstract_scale_draw__inherit__graph.png + class_qwt_abstract_scale_draw-members.html + class_qwt_abstract_slider.html + class_qwt_abstract_slider__inherit__graph.png + class_qwt_abstract_slider__inherit__graph.png + class_qwt_abstract_slider-members.html + class_qwt_alpha_color_map.html + class_qwt_alpha_color_map__inherit__graph.png + class_qwt_alpha_color_map__inherit__graph.png + class_qwt_alpha_color_map-members.html + class_qwt_analog_clock.html + class_qwt_analog_clock__inherit__graph.png + class_qwt_analog_clock__inherit__graph.png + analogclock.png + class_qwt_analog_clock-members.html + class_qwt_array_series_data.html + class_qwt_array_series_data__inherit__graph.png + class_qwt_array_series_data__inherit__graph.png + class_qwt_array_series_data-members.html + class_qwt_arrow_button.html + class_qwt_arrow_button-members.html + class_qwt_clipper.html + class_qwt_clipper-members.html + class_qwt_color_map.html + class_qwt_color_map__inherit__graph.png + class_qwt_color_map__inherit__graph.png + class_qwt_color_map-members.html + class_qwt_column_rect.html + class_qwt_column_rect-members.html + class_qwt_column_symbol.html + class_qwt_column_symbol-members.html + class_qwt_compass.html + class_qwt_compass__inherit__graph.png + class_qwt_compass__inherit__graph.png + dials1.png + class_qwt_compass-members.html + class_qwt_compass_magnet_needle.html + class_qwt_compass_magnet_needle__inherit__graph.png + class_qwt_compass_magnet_needle__inherit__graph.png + class_qwt_compass_magnet_needle-members.html + class_qwt_compass_rose.html + class_qwt_compass_rose__inherit__graph.png + class_qwt_compass_rose__inherit__graph.png + class_qwt_compass_rose-members.html + class_qwt_compass_wind_arrow.html + class_qwt_compass_wind_arrow__inherit__graph.png + class_qwt_compass_wind_arrow__inherit__graph.png + class_qwt_compass_wind_arrow-members.html + class_qwt_counter.html + class_qwt_counter__inherit__graph.png + class_qwt_counter__inherit__graph.png + class_qwt_counter-members.html + class_qwt_c_pointer_data.html + class_qwt_c_pointer_data__inherit__graph.png + class_qwt_c_pointer_data__inherit__graph.png + class_qwt_c_pointer_data-members.html + class_qwt_curve_fitter.html + class_qwt_curve_fitter__inherit__graph.png + class_qwt_curve_fitter__inherit__graph.png + class_qwt_curve_fitter-members.html + class_qwt_dial.html + class_qwt_dial__inherit__graph.png + class_qwt_dial__inherit__graph.png + dials2.png + class_qwt_dial-members.html + class_qwt_dial_needle.html + class_qwt_dial_needle__inherit__graph.png + class_qwt_dial_needle__inherit__graph.png + class_qwt_dial_needle-members.html + class_qwt_dial_scale_draw.html + class_qwt_dial_scale_draw__inherit__graph.png + class_qwt_dial_scale_draw__inherit__graph.png + class_qwt_dial_scale_draw-members.html + class_qwt_dial_simple_needle.html + class_qwt_dial_simple_needle__inherit__graph.png + class_qwt_dial_simple_needle__inherit__graph.png + class_qwt_dial_simple_needle-members.html + class_qwt_double_range.html + class_qwt_double_range__inherit__graph.png + class_qwt_double_range__inherit__graph.png + class_qwt_double_range-members.html + class_qwt_dyn_grid_layout.html + class_qwt_dyn_grid_layout-members.html + class_qwt_event_pattern.html + class_qwt_event_pattern__inherit__graph.png + class_qwt_event_pattern__inherit__graph.png + class_qwt_event_pattern-members.html + class_qwt_event_pattern_1_1_key_pattern.html + class_qwt_event_pattern_1_1_key_pattern-members.html + class_qwt_event_pattern_1_1_mouse_pattern.html + class_qwt_event_pattern_1_1_mouse_pattern-members.html + class_qwt_interval.html + class_qwt_interval-members.html + class_qwt_interval_sample.html + class_qwt_interval_sample-members.html + class_qwt_interval_series_data.html + class_qwt_interval_series_data__inherit__graph.png + class_qwt_interval_series_data__inherit__graph.png + class_qwt_interval_series_data-members.html + class_qwt_interval_symbol.html + class_qwt_interval_symbol-members.html + class_qwt_knob.html + class_qwt_knob__inherit__graph.png + class_qwt_knob__inherit__graph.png + knob.png + class_qwt_knob-members.html + class_qwt_legend.html + class_qwt_legend-members.html + class_qwt_legend_item.html + class_qwt_legend_item__inherit__graph.png + class_qwt_legend_item__inherit__graph.png + class_qwt_legend_item-members.html + class_qwt_legend_item_manager.html + class_qwt_legend_item_manager__inherit__graph.png + class_qwt_legend_item_manager__inherit__graph.png + class_qwt_legend_item_manager-members.html + class_qwt_linear_color_map.html + class_qwt_linear_color_map__inherit__graph.png + class_qwt_linear_color_map__inherit__graph.png + class_qwt_linear_color_map-members.html + class_qwt_linear_scale_engine.html + class_qwt_linear_scale_engine__inherit__graph.png + class_qwt_linear_scale_engine__inherit__graph.png + class_qwt_linear_scale_engine-members.html + class_qwt_log10_scale_engine.html + class_qwt_log10_scale_engine__inherit__graph.png + class_qwt_log10_scale_engine__inherit__graph.png + class_qwt_log10_scale_engine-members.html + class_qwt_magnifier.html + class_qwt_magnifier__inherit__graph.png + class_qwt_magnifier__inherit__graph.png + class_qwt_magnifier-members.html + class_qwt_math_m_l_document.html + class_qwt_math_m_l_document-members.html + class_qwt_math_m_l_text_engine.html + class_qwt_math_m_l_text_engine__inherit__graph.png + class_qwt_math_m_l_text_engine__inherit__graph.png + class_qwt_math_m_l_text_engine-members.html + class_qwt_matrix_raster_data.html + class_qwt_matrix_raster_data__inherit__graph.png + class_qwt_matrix_raster_data__inherit__graph.png + class_qwt_matrix_raster_data-members.html + class_qwt_null_paint_device.html + class_qwt_null_paint_device__inherit__graph.png + class_qwt_null_paint_device__inherit__graph.png + class_qwt_null_paint_device-members.html + class_qwt_painter.html + class_qwt_painter-members.html + class_qwt_panner.html + class_qwt_panner__inherit__graph.png + class_qwt_panner__inherit__graph.png + class_qwt_panner-members.html + class_qwt_picker.html + class_qwt_picker__inherit__graph.png + class_qwt_picker__inherit__graph.png + class_qwt_picker-members.html + class_qwt_picker_click_point_machine.html + class_qwt_picker_click_point_machine__inherit__graph.png + class_qwt_picker_click_point_machine__inherit__graph.png + class_qwt_picker_click_point_machine-members.html + class_qwt_picker_click_rect_machine.html + class_qwt_picker_click_rect_machine__inherit__graph.png + class_qwt_picker_click_rect_machine__inherit__graph.png + class_qwt_picker_click_rect_machine-members.html + class_qwt_picker_drag_point_machine.html + class_qwt_picker_drag_point_machine__inherit__graph.png + class_qwt_picker_drag_point_machine__inherit__graph.png + class_qwt_picker_drag_point_machine-members.html + class_qwt_picker_drag_rect_machine.html + class_qwt_picker_drag_rect_machine__inherit__graph.png + class_qwt_picker_drag_rect_machine__inherit__graph.png + class_qwt_picker_drag_rect_machine-members.html + class_qwt_picker_machine.html + class_qwt_picker_machine__inherit__graph.png + class_qwt_picker_machine__inherit__graph.png + class_qwt_picker_machine-members.html + class_qwt_picker_polygon_machine.html + class_qwt_picker_polygon_machine__inherit__graph.png + class_qwt_picker_polygon_machine__inherit__graph.png + class_qwt_picker_polygon_machine-members.html + class_qwt_picker_tracker_machine.html + class_qwt_picker_tracker_machine__inherit__graph.png + class_qwt_picker_tracker_machine__inherit__graph.png + class_qwt_picker_tracker_machine-members.html + class_qwt_plain_text_engine.html + class_qwt_plain_text_engine__inherit__graph.png + class_qwt_plain_text_engine__inherit__graph.png + class_qwt_plain_text_engine-members.html + class_qwt_plot.html + class_qwt_plot__inherit__graph.png + class_qwt_plot__inherit__graph.png + plot.png + class_qwt_plot-members.html + class_qwt_plot_abstract_series_item.html + class_qwt_plot_abstract_series_item__inherit__graph.png + class_qwt_plot_abstract_series_item__inherit__graph.png + class_qwt_plot_abstract_series_item-members.html + class_qwt_plot_canvas.html + class_qwt_plot_canvas-members.html + class_qwt_plot_curve.html + class_qwt_plot_curve__inherit__graph.png + class_qwt_plot_curve__inherit__graph.png + class_qwt_plot_curve-members.html + class_qwt_plot_dict.html + class_qwt_plot_dict__inherit__graph.png + class_qwt_plot_dict__inherit__graph.png + class_qwt_plot_dict-members.html + class_qwt_plot_direct_painter.html + class_qwt_plot_direct_painter-members.html + class_qwt_plot_grid.html + class_qwt_plot_grid__inherit__graph.png + class_qwt_plot_grid__inherit__graph.png + class_qwt_plot_grid-members.html + class_qwt_plot_histogram.html + class_qwt_plot_histogram__inherit__graph.png + class_qwt_plot_histogram__inherit__graph.png + class_qwt_plot_histogram-members.html + class_qwt_plot_interval_curve.html + class_qwt_plot_interval_curve__inherit__graph.png + class_qwt_plot_interval_curve__inherit__graph.png + class_qwt_plot_interval_curve-members.html + class_qwt_plot_item.html + class_qwt_plot_item__inherit__graph.png + class_qwt_plot_item__inherit__graph.png + class_qwt_plot_item-members.html + class_qwt_plot_layout.html + class_qwt_plot_layout-members.html + class_qwt_plot_magnifier.html + class_qwt_plot_magnifier__inherit__graph.png + class_qwt_plot_magnifier__inherit__graph.png + class_qwt_plot_magnifier-members.html + class_qwt_plot_marker.html + class_qwt_plot_marker__inherit__graph.png + class_qwt_plot_marker__inherit__graph.png + class_qwt_plot_marker-members.html + class_qwt_plot_panner.html + class_qwt_plot_panner__inherit__graph.png + class_qwt_plot_panner__inherit__graph.png + class_qwt_plot_panner-members.html + class_qwt_plot_picker.html + class_qwt_plot_picker__inherit__graph.png + class_qwt_plot_picker__inherit__graph.png + class_qwt_plot_picker-members.html + class_qwt_plot_raster_item.html + class_qwt_plot_raster_item__inherit__graph.png + class_qwt_plot_raster_item__inherit__graph.png + class_qwt_plot_raster_item-members.html + class_qwt_plot_renderer.html + class_qwt_plot_renderer-members.html + class_qwt_plot_rescaler.html + class_qwt_plot_rescaler-members.html + class_qwt_plot_scale_item.html + class_qwt_plot_scale_item__inherit__graph.png + class_qwt_plot_scale_item__inherit__graph.png + class_qwt_plot_scale_item-members.html + class_qwt_plot_series_item.html + class_qwt_plot_series_item__inherit__graph.png + class_qwt_plot_series_item__inherit__graph.png + class_qwt_plot_series_item-members.html + class_qwt_plot_spectro_curve.html + class_qwt_plot_spectro_curve__inherit__graph.png + class_qwt_plot_spectro_curve__inherit__graph.png + class_qwt_plot_spectro_curve-members.html + class_qwt_plot_spectrogram.html + class_qwt_plot_spectrogram__inherit__graph.png + class_qwt_plot_spectrogram__inherit__graph.png + spectrogram3.png + class_qwt_plot_spectrogram-members.html + class_qwt_plot_svg_item.html + class_qwt_plot_svg_item__inherit__graph.png + class_qwt_plot_svg_item__inherit__graph.png + class_qwt_plot_svg_item-members.html + class_qwt_plot_zoomer.html + class_qwt_plot_zoomer__inherit__graph.png + class_qwt_plot_zoomer__inherit__graph.png + class_qwt_plot_zoomer-members.html + class_qwt_point3_d.html + class_qwt_point3_d-members.html + class_qwt_point3_d_series_data.html + class_qwt_point3_d_series_data__inherit__graph.png + class_qwt_point3_d_series_data__inherit__graph.png + class_qwt_point3_d_series_data-members.html + class_qwt_point_array_data.html + class_qwt_point_array_data__inherit__graph.png + class_qwt_point_array_data__inherit__graph.png + class_qwt_point_array_data-members.html + class_qwt_point_polar.html + class_qwt_point_polar-members.html + class_qwt_point_series_data.html + class_qwt_point_series_data__inherit__graph.png + class_qwt_point_series_data__inherit__graph.png + class_qwt_point_series_data-members.html + class_qwt_raster_data.html + class_qwt_raster_data__inherit__graph.png + class_qwt_raster_data__inherit__graph.png + class_qwt_raster_data-members.html + class_qwt_rich_text_engine.html + class_qwt_rich_text_engine__inherit__graph.png + class_qwt_rich_text_engine__inherit__graph.png + class_qwt_rich_text_engine-members.html + class_qwt_round_scale_draw.html + class_qwt_round_scale_draw__inherit__graph.png + class_qwt_round_scale_draw__inherit__graph.png + class_qwt_round_scale_draw-members.html + class_qwt_sampling_thread.html + class_qwt_sampling_thread-members.html + class_qwt_scale_arithmetic.html + class_qwt_scale_arithmetic-members.html + class_qwt_scale_div.html + class_qwt_scale_div-members.html + class_qwt_scale_draw.html + class_qwt_scale_draw__inherit__graph.png + class_qwt_scale_draw__inherit__graph.png + class_qwt_scale_draw-members.html + class_qwt_scale_engine.html + class_qwt_scale_engine__inherit__graph.png + class_qwt_scale_engine__inherit__graph.png + class_qwt_scale_engine-members.html + class_qwt_scale_map.html + class_qwt_scale_map-members.html + class_qwt_scale_transformation.html + class_qwt_scale_transformation-members.html + class_qwt_scale_widget.html + class_qwt_scale_widget-members.html + class_qwt_series_data.html + class_qwt_series_data__inherit__graph.png + class_qwt_series_data__inherit__graph.png + class_qwt_series_data-members.html + class_qwt_set_sample.html + class_qwt_set_sample-members.html + class_qwt_set_series_data.html + class_qwt_set_series_data__inherit__graph.png + class_qwt_set_series_data__inherit__graph.png + class_qwt_set_series_data-members.html + class_qwt_simple_compass_rose.html + class_qwt_simple_compass_rose__inherit__graph.png + class_qwt_simple_compass_rose__inherit__graph.png + class_qwt_simple_compass_rose-members.html + class_qwt_slider.html + class_qwt_slider__inherit__graph.png + class_qwt_slider__inherit__graph.png + sliders.png + class_qwt_slider-members.html + class_qwt_spline.html + class_qwt_spline-members.html + class_qwt_spline_curve_fitter.html + class_qwt_spline_curve_fitter__inherit__graph.png + class_qwt_spline_curve_fitter__inherit__graph.png + class_qwt_spline_curve_fitter-members.html + class_qwt_symbol.html + class_qwt_symbol-members.html + class_qwt_synthetic_point_data.html + class_qwt_synthetic_point_data__inherit__graph.png + class_qwt_synthetic_point_data__inherit__graph.png + class_qwt_synthetic_point_data-members.html + class_qwt_system_clock.html + class_qwt_system_clock-members.html + class_qwt_text.html + class_qwt_text-members.html + class_qwt_text_engine.html + class_qwt_text_engine__inherit__graph.png + class_qwt_text_engine__inherit__graph.png + class_qwt_text_engine-members.html + class_qwt_text_label.html + class_qwt_text_label__inherit__graph.png + class_qwt_text_label__inherit__graph.png + class_qwt_text_label-members.html + class_qwt_thermo.html + class_qwt_thermo__inherit__graph.png + class_qwt_thermo__inherit__graph.png + sysinfo.png + class_qwt_thermo-members.html + class_qwt_weeding_curve_fitter.html + class_qwt_weeding_curve_fitter__inherit__graph.png + class_qwt_weeding_curve_fitter__inherit__graph.png + class_qwt_weeding_curve_fitter-members.html + class_qwt_wheel.html + class_qwt_wheel__inherit__graph.png + class_qwt_wheel__inherit__graph.png + class_qwt_wheel-members.html + inherits.html + inherit_graph_0.png + inherit_graph_1.png + inherit_graph_2.png + inherit_graph_3.png + inherit_graph_4.png + inherit_graph_5.png + inherit_graph_6.png + inherit_graph_7.png + inherit_graph_8.png + inherit_graph_9.png + inherit_graph_10.png + inherit_graph_11.png + inherit_graph_12.png + inherit_graph_13.png + inherit_graph_14.png + inherit_graph_15.png + inherit_graph_16.png + inherit_graph_17.png + inherit_graph_18.png + inherit_graph_19.png + inherit_graph_20.png + inherit_graph_21.png + inherit_graph_22.png + inherit_graph_23.png + inherit_graph_24.png + inherit_graph_25.png + inherit_graph_26.png + inherit_graph_27.png + inherit_graph_28.png + inherit_graph_29.png + inherit_graph_30.png + inherit_graph_31.png + inherit_graph_32.png + inherit_graph_33.png + inherit_graph_34.png + inherit_graph_35.png + inherit_graph_36.png + inherit_graph_37.png + inherit_graph_38.png + inherit_graph_39.png + inherit_graph_40.png + inherit_graph_41.png + inherit_graph_42.png + inherit_graph_43.png + inherit_graph_44.png + inherit_graph_45.png + inherit_graph_46.png + inherit_graph_47.png + inherit_graph_48.png + inherit_graph_49.png + inherit_graph_50.png + inherit_graph_51.png + inherit_graph_52.png + graph_legend.png + graph_legend.html + files.html + form_0.png + form_1.png + form_2.png + form_3.png + form_4.png + form_5.png + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_0.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_0.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_0.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_0.map 2011-04-15 10:49:17.000000000 +0000 @@ -0,0 +1,6 @@ + + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_0.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_0.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_0.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_0.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +5151c55f02f9c0b8bbf7c5617b3cecc8 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_0.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_0.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_10.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_10.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_10.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_10.map 2011-04-15 10:49:18.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_10.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_10.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_10.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_10.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +7632e2559adad04abca2520b7c4c3954 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_10.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_10.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_11.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_11.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_11.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_11.map 2011-04-15 10:49:18.000000000 +0000 @@ -0,0 +1,6 @@ + + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_11.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_11.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_11.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_11.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +c0d8d0be8e031242efe7fff140146d27 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_11.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_11.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_12.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_12.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_12.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_12.map 2011-04-15 10:49:18.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_12.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_12.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_12.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_12.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +f246cf2b6f977a09d81f5ca03edf068d \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_12.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_12.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_13.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_13.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_13.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_13.map 2011-04-15 10:49:18.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_13.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_13.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_13.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_13.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +61274924066ea7429954c0ff1c7d9f4c \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_13.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_13.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_14.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_14.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_14.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_14.map 2011-04-15 10:49:18.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_14.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_14.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_14.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_14.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +578aa10cadc9e6994a65454b72160d33 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_14.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_14.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_15.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_15.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_15.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_15.map 2011-04-15 10:49:18.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_15.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_15.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_15.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_15.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +6c13383d4c7e4687f340bb9a3e52a63e \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_15.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_15.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_16.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_16.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_16.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_16.map 2011-04-15 10:49:18.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_16.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_16.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_16.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_16.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +d3d763fa68f256c550ad6790d2dc6e6f \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_16.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_16.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_17.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_17.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_17.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_17.map 2011-04-15 10:49:19.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_17.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_17.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_17.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_17.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +d4c70d43c835151e810285ab3e7a5493 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_17.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_17.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_18.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_18.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_18.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_18.map 2011-04-15 10:49:19.000000000 +0000 @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_18.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_18.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_18.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_18.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +04731e50f5042992d28fe47616f84e82 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_18.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_18.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_19.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_19.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_19.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_19.map 2011-04-15 10:49:19.000000000 +0000 @@ -0,0 +1,4 @@ + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_19.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_19.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_19.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_19.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +cd6ca27f27213397899db0db8186d686 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_19.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_19.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_1.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_1.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_1.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_1.map 2011-04-15 10:49:17.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_1.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_1.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_1.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_1.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +fcdf3b5c8e7971b8f399498727d1c3e4 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_1.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_1.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_20.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_20.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_20.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_20.map 2011-04-15 10:49:19.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_20.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_20.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_20.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_20.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +9a0b8701ba8d00feb6bc9174019df6a4 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_20.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_20.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_21.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_21.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_21.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_21.map 2011-04-15 10:49:19.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_21.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_21.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_21.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_21.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +fad485981b52c881ef9c8a4324883ee6 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_21.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_21.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_22.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_22.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_22.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_22.map 2011-04-15 10:49:19.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_22.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_22.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_22.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_22.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +14abf799e4e95aa1643e64fca0b82dfa \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_22.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_22.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_23.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_23.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_23.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_23.map 2011-04-15 10:49:19.000000000 +0000 @@ -0,0 +1,4 @@ + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_23.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_23.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_23.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_23.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +b2b66e9495d8c49ae8ce231f67a8cbc3 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_23.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_23.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_24.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_24.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_24.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_24.map 2011-04-15 10:49:19.000000000 +0000 @@ -0,0 +1,9 @@ + + + + + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_24.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_24.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_24.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_24.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +9ad198187cc6bf3dc60e498a35e679ce \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_24.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_24.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_25.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_25.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_25.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_25.map 2011-04-15 10:49:19.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_25.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_25.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_25.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_25.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +0c2d7fb829295bf825d3f3b4b4bc1011 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_25.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_25.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_26.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_26.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_26.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_26.map 2011-04-15 10:49:19.000000000 +0000 @@ -0,0 +1,4 @@ + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_26.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_26.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_26.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_26.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +5b0d1e71fd319a849a4f1edb06b486af \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_26.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_26.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_27.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_27.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_27.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_27.map 2011-04-15 10:49:19.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_27.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_27.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_27.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_27.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +9dde8c4b3314b7c63a999d2c25f1f6dd \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_27.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_27.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_28.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_28.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_28.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_28.map 2011-04-15 10:49:20.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_28.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_28.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_28.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_28.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +260e943555e8d3451c6c5c304a18cf32 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_28.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_28.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_29.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_29.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_29.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_29.map 2011-04-15 10:49:20.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_29.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_29.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_29.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_29.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +06ec84a446645b2e0c85ec56f692bf5d \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_29.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_29.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_2.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_2.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_2.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_2.map 2011-04-15 10:49:17.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_2.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_2.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_2.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_2.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +b848a98eb30ad315387365db701c3fde \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_2.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_2.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_30.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_30.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_30.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_30.map 2011-04-15 10:49:20.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_30.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_30.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_30.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_30.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +68af6b37c190961a4c134f1f337a69d6 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_30.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_30.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_31.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_31.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_31.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_31.map 2011-04-15 10:49:20.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_31.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_31.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_31.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_31.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +2eaa73fbb10ce0c2c016da529c3baf6c \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_31.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_31.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_32.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_32.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_32.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_32.map 2011-04-15 10:49:20.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_32.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_32.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_32.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_32.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +d78e80d02e8180ba7a0353506c7d1197 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_32.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_32.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_33.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_33.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_33.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_33.map 2011-04-15 10:49:20.000000000 +0000 @@ -0,0 +1,4 @@ + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_33.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_33.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_33.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_33.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +23e0ded9900c05a6d3f1f30dd0a731c2 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_33.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_33.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_34.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_34.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_34.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_34.map 2011-04-15 10:49:20.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_34.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_34.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_34.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_34.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +dfd2c7d0d6573e740bf1b0afbf05589d \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_34.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_34.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_35.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_35.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_35.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_35.map 2011-04-15 10:49:20.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_35.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_35.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_35.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_35.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +b89f86dcf069fc3f9f0d354cc539f06f \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_35.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_35.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_36.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_36.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_36.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_36.map 2011-04-15 10:49:20.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_36.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_36.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_36.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_36.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +9f1770e9137af650b8c34aa74d202840 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_36.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_36.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_37.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_37.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_37.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_37.map 2011-04-15 10:49:20.000000000 +0000 @@ -0,0 +1,5 @@ + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_37.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_37.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_37.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_37.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +78983691cdcc3e3acae71ed48508044b \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_37.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_37.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_38.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_38.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_38.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_38.map 2011-04-15 10:49:20.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_38.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_38.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_38.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_38.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +170181127bc09bf65a959470f3153f8a \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_38.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_38.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_39.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_39.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_39.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_39.map 2011-04-15 10:49:21.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_39.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_39.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_39.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_39.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +85ce596818cdbbf7adc542d3cbce983b \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_39.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_39.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_3.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_3.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_3.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_3.map 2011-04-15 10:49:17.000000000 +0000 @@ -0,0 +1,5 @@ + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_3.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_3.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_3.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_3.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +2332ad64714df084e38347d3ea3f1790 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_3.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_3.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_40.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_40.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_40.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_40.map 2011-04-15 10:49:21.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_40.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_40.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_40.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_40.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +fd1d5fe82db30160cf68326e65cf6456 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_40.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_40.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_41.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_41.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_41.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_41.map 2011-04-15 10:49:21.000000000 +0000 @@ -0,0 +1,8 @@ + + + + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_41.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_41.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_41.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_41.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +3c1d7106a60908a9c65830cc9ae278cb \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_41.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_41.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_42.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_42.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_42.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_42.map 2011-04-15 10:49:21.000000000 +0000 @@ -0,0 +1,5 @@ + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_42.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_42.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_42.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_42.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +b7f9319197b722b32a53a83e6f4c610a \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_42.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_42.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_43.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_43.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_43.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_43.map 2011-04-15 10:49:21.000000000 +0000 @@ -0,0 +1,5 @@ + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_43.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_43.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_43.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_43.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +1e874ccb54d31e88f86774aad5bbfd9c \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_43.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_43.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_44.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_44.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_44.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_44.map 2011-04-15 10:49:21.000000000 +0000 @@ -0,0 +1,5 @@ + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_44.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_44.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_44.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_44.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +78be5e5bc3863de74d387ea179f0adde \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_44.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_44.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_45.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_45.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_45.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_45.map 2011-04-15 10:49:21.000000000 +0000 @@ -0,0 +1,4 @@ + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_45.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_45.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_45.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_45.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +f0c29a5f62b4e8d17c94090af5b7a265 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_45.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_45.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_46.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_46.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_46.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_46.map 2011-04-15 10:49:21.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_46.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_46.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_46.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_46.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +8e9c8b9ff1b8e47f8d1475b9c29d1d31 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_46.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_46.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_47.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_47.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_47.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_47.map 2011-04-15 10:49:22.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_47.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_47.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_47.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_47.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +0473998b5bbdef1f42db6bb36f3ccb48 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_47.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_47.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_48.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_48.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_48.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_48.map 2011-04-15 10:49:21.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_48.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_48.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_48.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_48.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +b50553bc861146032958ccb3b69bb9dd \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_48.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_48.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_49.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_49.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_49.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_49.map 2011-04-15 10:49:22.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_49.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_49.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_49.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_49.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +afec55d0d04ebf1e7f2fa2413b008ad6 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_49.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_49.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_4.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_4.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_4.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_4.map 2011-04-15 10:49:17.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_4.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_4.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_4.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_4.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +a34405fedfc614ec7d559924c54c054a \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_4.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_4.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_50.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_50.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_50.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_50.map 2011-04-15 10:49:22.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_50.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_50.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_50.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_50.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +cbf4a4b3755b49462068aefdce36b28a \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_50.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_50.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_51.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_51.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_51.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_51.map 2011-04-15 10:49:22.000000000 +0000 @@ -0,0 +1,6 @@ + + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_51.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_51.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_51.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_51.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +2a5fca77fadbc9831fb9265536b18b0c \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_51.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_51.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_52.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_52.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_52.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_52.map 2011-04-15 10:49:22.000000000 +0000 @@ -0,0 +1,4 @@ + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_52.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_52.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_52.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_52.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +552a3e671b7817e00f4b4baba846ac90 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_52.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_52.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_5.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_5.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_5.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_5.map 2011-04-15 10:49:18.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_5.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_5.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_5.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_5.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +d0aa8d7b50a202786a921762aab8299c \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_5.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_5.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_6.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_6.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_6.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_6.map 2011-04-15 10:49:17.000000000 +0000 @@ -0,0 +1,4 @@ + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_6.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_6.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_6.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_6.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +3ec6d04dd68add6866651969da02a009 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_6.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_6.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_7.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_7.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_7.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_7.map 2011-04-15 10:49:18.000000000 +0000 @@ -0,0 +1,5 @@ + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_7.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_7.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_7.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_7.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +1cca995c5e1a25f5b05b27c5e3b1eca4 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_7.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_7.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_8.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_8.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_8.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_8.map 2011-04-15 10:49:18.000000000 +0000 @@ -0,0 +1,6 @@ + + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_8.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_8.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_8.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_8.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +dbbeff16f3ae021ec5f2042cc7de7af6 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_8.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_8.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_9.map phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_9.map --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_9.map 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_9.map 2011-04-15 10:49:18.000000000 +0000 @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_9.md5 phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_9.md5 --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_9.md5 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_9.md5 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1 @@ +0a2e741b0971d28d79b1a4174dee5a97 \ No newline at end of file Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_9.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/inherit_graph_9.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/inherits.html phyxcalc-3rev200/qwt-6.0.0/doc/html/inherits.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/inherits.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/inherits.html 2011-04-15 10:49:25.000000000 +0000 @@ -0,0 +1,266 @@ + + + + +Qwt User's Guide: Class Hierarchy + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+
+

Class Hierarchy

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+
+ + + Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/knob.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/knob.png differ Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/nav_f.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/nav_f.png differ Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/nav_h.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/nav_h.png differ Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/open.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/open.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/pages.html phyxcalc-3rev200/qwt-6.0.0/doc/html/pages.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/pages.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/pages.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,58 @@ + + + + +Qwt User's Guide: Related Pages + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ +
+
+
+

Related Pages

+
+ + + + Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/plot.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/plot.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__abstract__scale_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__abstract__scale_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__abstract__scale_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__abstract__scale_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,109 @@ + + + + +Qwt User's Guide: qwt_abstract_scale.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_abstract_scale.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_ABSTRACT_SCALE_H
+00011 #define QWT_ABSTRACT_SCALE_H
+00012 
+00013 #include "qwt_global.h"
+00014 
+00015 class QwtScaleEngine;
+00016 class QwtAbstractScaleDraw;
+00017 class QwtScaleDiv;
+00018 class QwtScaleMap;
+00019 class QwtInterval;
+00020 
+00029 class QWT_EXPORT QwtAbstractScale
+00030 {
+00031 public:
+00032     QwtAbstractScale();
+00033     virtual ~QwtAbstractScale();
+00034 
+00035     void setScale( double vmin, double vmax, double step = 0.0 );
+00036     void setScale( const QwtInterval &, double step = 0.0 );
+00037     void setScale( const QwtScaleDiv & );
+00038 
+00039     void setAutoScale();
+00040     bool autoScale() const;
+00041 
+00042     void setScaleMaxMajor( int ticks );
+00043     int scaleMaxMinor() const;
+00044 
+00045     void setScaleMaxMinor( int ticks );
+00046     int scaleMaxMajor() const;
+00047 
+00048     void setScaleEngine( QwtScaleEngine * );
+00049     const QwtScaleEngine *scaleEngine() const;
+00050     QwtScaleEngine *scaleEngine();
+00051 
+00052     const QwtScaleMap &scaleMap() const;
+00053 
+00054 protected:
+00055     void rescale( double vmin, double vmax, double step = 0.0 );
+00056 
+00057     void setAbstractScaleDraw( QwtAbstractScaleDraw * );
+00058     const QwtAbstractScaleDraw *abstractScaleDraw() const;
+00059     QwtAbstractScaleDraw *abstractScaleDraw();
+00060 
+00061     virtual void scaleChange();
+00062 
+00063 private:
+00064     void updateScaleDraw();
+00065 
+00066     class PrivateData;
+00067     PrivateData *d_data;
+00068 };
+00069 
+00070 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__abstract__scale__draw_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__abstract__scale__draw_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__abstract__scale__draw_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__abstract__scale__draw_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,137 @@ + + + + +Qwt User's Guide: qwt_abstract_scale_draw.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_abstract_scale_draw.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_ABSTRACT_SCALE_DRAW_H
+00011 #define QWT_ABSTRACT_SCALE_DRAW_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_scale_div.h"
+00015 #include "qwt_text.h"
+00016 
+00017 class QPalette;
+00018 class QPainter;
+00019 class QFont;
+00020 class QwtScaleTransformation;
+00021 class QwtScaleMap;
+00022 
+00032 class QWT_EXPORT QwtAbstractScaleDraw
+00033 {
+00034 public:
+00035 
+00040     enum ScaleComponent
+00041     {
+00043         Backbone = 0x01,
+00044 
+00046         Ticks = 0x02,
+00047 
+00049         Labels = 0x04
+00050     };
+00051 
+00053     typedef QFlags<ScaleComponent> ScaleComponents;
+00054 
+00055     QwtAbstractScaleDraw();
+00056     virtual ~QwtAbstractScaleDraw();
+00057 
+00058     void setScaleDiv( const QwtScaleDiv &s );
+00059     const QwtScaleDiv& scaleDiv() const;
+00060 
+00061     void setTransformation( QwtScaleTransformation * );
+00062     const QwtScaleMap &scaleMap() const;
+00063     QwtScaleMap &scaleMap();
+00064 
+00065     void enableComponent( ScaleComponent, bool enable = true );
+00066     bool hasComponent( ScaleComponent ) const;
+00067 
+00068     void setTickLength( QwtScaleDiv::TickType, double length );
+00069     double tickLength( QwtScaleDiv::TickType ) const;
+00070     double maxTickLength() const;
+00071 
+00072     void setSpacing( double margin );
+00073     double spacing() const;
+00074 
+00075     void setPenWidth( int width );
+00076     int penWidth() const;
+00077 
+00078     virtual void draw( QPainter *, const QPalette & ) const;
+00079 
+00080     virtual QwtText label( double ) const;
+00081 
+00091     virtual double extent( const QFont & ) const = 0;
+00092 
+00093     void setMinimumExtent( double );
+00094     double minimumExtent() const;
+00095 
+00096 protected:
+00106     virtual void drawTick( QPainter *painter, double value, double len ) const = 0;
+00107 
+00114     virtual void drawBackbone( QPainter *painter ) const = 0;
+00115 
+00124     virtual void drawLabel( QPainter *painter, double value ) const = 0;
+00125 
+00126     void invalidateCache();
+00127     const QwtText &tickLabel( const QFont &, double value ) const;
+00128 
+00129 private:
+00130     QwtAbstractScaleDraw( const QwtAbstractScaleDraw & );
+00131     QwtAbstractScaleDraw &operator=( const QwtAbstractScaleDraw & );
+00132 
+00133     class PrivateData;
+00134     PrivateData *d_data;
+00135 };
+00136 
+00137 Q_DECLARE_OPERATORS_FOR_FLAGS( QwtAbstractScaleDraw::ScaleComponents );
+00138 
+00139 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__abstract__slider_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__abstract__slider_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__abstract__slider_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__abstract__slider_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,161 @@ + + + + +Qwt User's Guide: qwt_abstract_slider.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_abstract_slider.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_ABSTRACT_SLIDER_H
+00011 #define QWT_ABSTRACT_SLIDER_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_double_range.h"
+00015 #include <qwidget.h>
+00016 
+00028 class QWT_EXPORT QwtAbstractSlider : public QWidget, public QwtDoubleRange
+00029 {
+00030     Q_OBJECT
+00031     Q_PROPERTY( bool readOnly READ isReadOnly WRITE setReadOnly )
+00032     Q_PROPERTY( bool valid READ isValid WRITE setValid )
+00033     Q_PROPERTY( double mass READ mass WRITE setMass )
+00034     Q_PROPERTY( Qt::Orientation orientation
+00035                 READ orientation WRITE setOrientation )
+00036 
+00037 public:
+00042     enum ScrollMode
+00043     {
+00045         ScrNone,
+00046 
+00051         ScrMouse,
+00052 
+00057         ScrTimer,
+00058 
+00059         ScrDirect,
+00060 
+00062         ScrPage
+00063     };
+00064 
+00065     explicit QwtAbstractSlider( Qt::Orientation, QWidget *parent = NULL );
+00066     virtual ~QwtAbstractSlider();
+00067 
+00068     void setUpdateTime( int t );
+00069     void stopMoving();
+00070     void setTracking( bool enable );
+00071 
+00072     virtual void setMass( double val );
+00073     virtual double mass() const;
+00074 
+00075     virtual void setOrientation( Qt::Orientation o );
+00076     Qt::Orientation orientation() const;
+00077 
+00078     bool isReadOnly() const;
+00079 
+00080     /*
+00081         Wrappers for QwtDblRange::isValid/QwtDblRange::setValid made
+00082         to be available as Q_PROPERTY in the designer.
+00083     */
+00084 
+00088     bool isValid() const
+00089     {
+00090         return QwtDoubleRange::isValid();
+00091     }
+00092 
+00097     void setValid( bool valid )
+00098     {
+00099         QwtDoubleRange::setValid( valid );
+00100     }
+00101 
+00102 public Q_SLOTS:
+00103     virtual void setValue( double val );
+00104     virtual void fitValue( double val );
+00105     virtual void incValue( int steps );
+00106 
+00107     virtual void setReadOnly( bool );
+00108 
+00109 Q_SIGNALS:
+00110 
+00119     void valueChanged( double value );
+00120 
+00125     void sliderPressed();
+00126 
+00132     void sliderReleased();
+00138     void sliderMoved( double value );
+00139 
+00140 protected:
+00141     virtual void setPosition( const QPoint & );
+00142     virtual void valueChange();
+00143 
+00144     virtual void timerEvent( QTimerEvent *e );
+00145     virtual void mousePressEvent( QMouseEvent *e );
+00146     virtual void mouseReleaseEvent( QMouseEvent *e );
+00147     virtual void mouseMoveEvent( QMouseEvent *e );
+00148     virtual void keyPressEvent( QKeyEvent *e );
+00149     virtual void wheelEvent( QWheelEvent *e );
+00150 
+00159     virtual double getValue( const QPoint & p ) = 0;
+00160 
+00173     virtual void getScrollMode( const QPoint &pos,
+00174         ScrollMode &scrollMode, int &direction ) const = 0;
+00175 
+00176     void setMouseOffset( double );
+00177     double mouseOffset() const;
+00178 
+00179     int scrollMode() const;
+00180 
+00181 private:
+00182     void buttonReleased();
+00183 
+00184     class PrivateData;
+00185     PrivateData *d_data;
+00186 };
+00187 
+00188 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__analog__clock_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__analog__clock_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__analog__clock_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__analog__clock_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,108 @@ + + + + +Qwt User's Guide: qwt_analog_clock.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_analog_clock.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_ANALOG_CLOCK_H
+00011 #define QWT_ANALOG_CLOCK_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_dial.h"
+00015 #include "qwt_dial_needle.h"
+00016 #include <qdatetime.h>
+00017 
+00045 class QWT_EXPORT QwtAnalogClock: public QwtDial
+00046 {
+00047     Q_OBJECT
+00048 
+00049 public:
+00054     enum Hand
+00055     {
+00057         SecondHand,
+00058 
+00060         MinuteHand,
+00061 
+00063         HourHand,
+00064 
+00066         NHands
+00067     };
+00068 
+00069     explicit QwtAnalogClock( QWidget* parent = NULL );
+00070     virtual ~QwtAnalogClock();
+00071 
+00072     virtual void setHand( Hand, QwtDialNeedle * );
+00073     const QwtDialNeedle *hand( Hand ) const;
+00074     QwtDialNeedle *hand( Hand );
+00075 
+00076 public Q_SLOTS:
+00077     void setCurrentTime();
+00078     void setTime( const QTime & = QTime::currentTime() );
+00079 
+00080 protected:
+00081     virtual QwtText scaleLabel( double ) const;
+00082 
+00083     virtual void drawNeedle( QPainter *, const QPointF &,
+00084         double radius, double direction, QPalette::ColorGroup ) const;
+00085 
+00086     virtual void drawHand( QPainter *, Hand, const QPointF &,
+00087         double radius, double direction, QPalette::ColorGroup ) const;
+00088 
+00089 private:
+00090     virtual void setNeedle( QwtDialNeedle * );
+00091     void initClock();
+00092 
+00093     QwtDialNeedle *d_hand[NHands];
+00094 };
+00095 
+00096 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__arrow__button_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__arrow__button_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__arrow__button_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__arrow__button_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,92 @@ + + + + +Qwt User's Guide: qwt_arrow_button.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_arrow_button.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_ARROW_BUTTON_H
+00011 #define QWT_ARROW_BUTTON_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include <qpushbutton.h>
+00015 
+00023 class QWT_EXPORT QwtArrowButton : public QPushButton
+00024 {
+00025 public:
+00026     explicit QwtArrowButton ( int num, Qt::ArrowType, QWidget *parent = NULL );
+00027     virtual ~QwtArrowButton();
+00028 
+00029     Qt::ArrowType arrowType() const;
+00030     int num() const;
+00031 
+00032     virtual QSize sizeHint() const;
+00033     virtual QSize minimumSizeHint() const;
+00034 
+00035 protected:
+00036     virtual void paintEvent( QPaintEvent *event );
+00037 
+00038     virtual void drawButtonLabel( QPainter *p );
+00039     virtual void drawArrow( QPainter *,
+00040         const QRect &, Qt::ArrowType ) const;
+00041     virtual QRect labelRect() const;
+00042     virtual QSize arrowSize( Qt::ArrowType,
+00043         const QSize &boundingSize ) const;
+00044 
+00045     virtual void keyPressEvent( QKeyEvent * );
+00046 
+00047 private:
+00048     class PrivateData;
+00049     PrivateData *d_data;
+00050 };
+00051 
+00052 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__clipper_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__clipper_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__clipper_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__clipper_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,80 @@ + + + + +Qwt User's Guide: qwt_clipper.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_clipper.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_CLIPPER_H
+00011 #define QWT_CLIPPER_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_interval.h"
+00015 #include <qpolygon.h>
+00016 #include <qvector.h>
+00017 
+00018 class QRect;
+00019 class QRectF;
+00020 
+00025 class QWT_EXPORT QwtClipper
+00026 {
+00027 public:
+00028     static QPolygon clipPolygon( const QRect &, 
+00029         const QPolygon &, bool closePolygon = false );
+00030     static QPolygonF clipPolygonF( const QRectF &, 
+00031         const QPolygonF &, bool closePolygon = false );
+00032 
+00033     static QVector<QwtInterval> clipCircle(
+00034         const QRectF &, const QPointF &, double radius );
+00035 };
+00036 
+00037 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__color__map_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__color__map_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__color__map_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__color__map_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,176 @@ + + + + +Qwt User's Guide: qwt_color_map.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_color_map.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_COLOR_MAP_H
+00011 #define QWT_COLOR_MAP_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_interval.h"
+00015 #include <qcolor.h>
+00016 #include <qvector.h>
+00017 
+00033 class QWT_EXPORT QwtColorMap
+00034 {
+00035 public:
+00041     enum Format
+00042     {
+00044         RGB,
+00045 
+00050         Indexed
+00051     };
+00052 
+00053     QwtColorMap( Format = QwtColorMap::RGB );
+00054     virtual ~QwtColorMap();
+00055 
+00056     Format format() const;
+00057 
+00064     virtual QRgb rgb( const QwtInterval &interval,
+00065         double value ) const = 0;
+00066 
+00073     virtual unsigned char colorIndex(
+00074         const QwtInterval &interval, double value ) const = 0;
+00075 
+00076     QColor color( const QwtInterval &, double value ) const;
+00077     virtual QVector<QRgb> colorTable( const QwtInterval & ) const;
+00078 
+00079 private:
+00080     Format d_format;
+00081 };
+00082 
+00090 class QWT_EXPORT QwtLinearColorMap: public QwtColorMap
+00091 {
+00092 public:
+00097     enum Mode
+00098     {
+00100         FixedColors,
+00101 
+00103         ScaledColors
+00104     };
+00105 
+00106     QwtLinearColorMap( QwtColorMap::Format = QwtColorMap::RGB );
+00107     QwtLinearColorMap( const QColor &from, const QColor &to,
+00108         QwtColorMap::Format = QwtColorMap::RGB );
+00109 
+00110     virtual ~QwtLinearColorMap();
+00111 
+00112     void setMode( Mode );
+00113     Mode mode() const;
+00114 
+00115     void setColorInterval( const QColor &color1, const QColor &color2 );
+00116     void addColorStop( double value, const QColor& );
+00117     QVector<double> colorStops() const;
+00118 
+00119     QColor color1() const;
+00120     QColor color2() const;
+00121 
+00122     virtual QRgb rgb( const QwtInterval &, double value ) const;
+00123     virtual unsigned char colorIndex(
+00124         const QwtInterval &, double value ) const;
+00125 
+00126     class ColorStops;
+00127 
+00128 private:
+00129     // Disabled copy constructor and operator=
+00130     QwtLinearColorMap( const QwtLinearColorMap & );
+00131     QwtLinearColorMap &operator=( const QwtLinearColorMap & );
+00132 
+00133     class PrivateData;
+00134     PrivateData *d_data;
+00135 };
+00136 
+00140 class QWT_EXPORT QwtAlphaColorMap: public QwtColorMap
+00141 {
+00142 public:
+00143     QwtAlphaColorMap( const QColor & = QColor( Qt::gray ) );
+00144     virtual ~QwtAlphaColorMap();
+00145 
+00146     void setColor( const QColor & );
+00147     QColor color() const;
+00148 
+00149     virtual QRgb rgb( const QwtInterval &, double value ) const;
+00150 
+00151 private:
+00152     QwtAlphaColorMap( const QwtAlphaColorMap & );
+00153     QwtAlphaColorMap &operator=( const QwtAlphaColorMap & );
+00154 
+00155     virtual unsigned char colorIndex(
+00156         const QwtInterval &, double value ) const;
+00157 
+00158     class PrivateData;
+00159     PrivateData *d_data;
+00160 };
+00161 
+00162 
+00175 inline QColor QwtColorMap::color(
+00176     const QwtInterval &interval, double value ) const
+00177 {
+00178     if ( d_format == RGB )
+00179     {
+00180         return QColor( rgb( interval, value ) );
+00181     }
+00182     else
+00183     {
+00184         const unsigned int index = colorIndex( interval, value );
+00185         return colorTable( interval )[index]; // slow
+00186     }
+00187 }
+00188 
+00193 inline QwtColorMap::Format QwtColorMap::format() const
+00194 {
+00195     return d_format;
+00196 }
+00197 
+00198 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__column__symbol_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__column__symbol_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__column__symbol_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__column__symbol_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,171 @@ + + + + +Qwt User's Guide: qwt_column_symbol.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_column_symbol.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_COLUMN_SYMBOL_H
+00011 #define QWT_COLUMN_SYMBOL_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_interval.h"
+00015 #include <qpen.h>
+00016 #include <qsize.h>
+00017 #include <qrect.h>
+00018 
+00019 class QPainter;
+00020 class QPalette;
+00021 class QRect;
+00022 class QwtText;
+00023 
+00028 class QWT_EXPORT QwtColumnRect
+00029 {
+00030 public:
+00032     enum Direction
+00033     {
+00035         LeftToRight,
+00036 
+00038         RightToLeft,
+00039 
+00041         BottomToTop,
+00042 
+00044         TopToBottom
+00045     };
+00046 
+00048     QwtColumnRect():
+00049         direction( BottomToTop )
+00050     {
+00051     }
+00052 
+00054     QRectF toRect() const
+00055     {
+00056         QRectF r( hInterval.minValue(), vInterval.minValue(),
+00057             hInterval.maxValue() - hInterval.minValue(),
+00058             vInterval.maxValue() - vInterval.minValue() );
+00059         r = r.normalized();
+00060 
+00061         if ( hInterval.borderFlags() & QwtInterval::ExcludeMinimum )
+00062             r.adjust( 1, 0, 0, 0 );
+00063         if ( hInterval.borderFlags() & QwtInterval::ExcludeMaximum )
+00064             r.adjust( 0, 0, -1, 0 );
+00065         if ( vInterval.borderFlags() & QwtInterval::ExcludeMinimum )
+00066             r.adjust( 0, 1, 0, 0 );
+00067         if ( vInterval.borderFlags() & QwtInterval::ExcludeMaximum )
+00068             r.adjust( 0, 0, 0, -1 );
+00069 
+00070         return r;
+00071     }
+00072 
+00074     Qt::Orientation orientation() const
+00075     {
+00076         if ( direction == LeftToRight || direction == RightToLeft )
+00077             return Qt::Horizontal;
+00078 
+00079         return Qt::Vertical;
+00080     }
+00081 
+00083     QwtInterval hInterval;
+00084 
+00086     QwtInterval vInterval;
+00087 
+00089     Direction direction;
+00090 };
+00091 
+00093 class QWT_EXPORT QwtColumnSymbol
+00094 {
+00095 public:
+00100     enum Style
+00101     {
+00103         NoStyle = -1,
+00104 
+00109         Box,
+00110 
+00116         UserStyle = 1000
+00117     };
+00118 
+00123     enum FrameStyle
+00124     {
+00126         NoFrame,
+00127 
+00129         Plain,
+00130 
+00132         Raised
+00133     };
+00134 
+00135 public:
+00136     QwtColumnSymbol( Style = NoStyle );
+00137     virtual ~QwtColumnSymbol();
+00138 
+00139     void setFrameStyle( FrameStyle style );
+00140     FrameStyle frameStyle() const;
+00141 
+00142     void setLineWidth( int width );
+00143     int lineWidth() const;
+00144 
+00145     void setPalette( const QPalette & );
+00146     const QPalette &palette() const;
+00147 
+00148     void setStyle( Style );
+00149     Style style() const;
+00150 
+00151     virtual void draw( QPainter *, const QwtColumnRect & ) const;
+00152 
+00153 protected:
+00154     void drawBox( QPainter *, const QwtColumnRect & ) const;
+00155 
+00156 private:
+00157     class PrivateData;
+00158     PrivateData* d_data;
+00159 };
+00160 
+00161 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__compass_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__compass_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__compass_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__compass_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,101 @@ + + + + +Qwt User's Guide: qwt_compass.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_compass.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_COMPASS_H
+00011 #define QWT_COMPASS_H 1
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_dial.h"
+00015 #include <qstring.h>
+00016 #include <qmap.h>
+00017 
+00018 class QwtCompassRose;
+00019 
+00031 class QWT_EXPORT QwtCompass: public QwtDial
+00032 {
+00033     Q_OBJECT
+00034 
+00035 public:
+00036     explicit QwtCompass( QWidget* parent = NULL );
+00037     virtual ~QwtCompass();
+00038 
+00039     void setRose( QwtCompassRose *rose );
+00040     const QwtCompassRose *rose() const;
+00041     QwtCompassRose *rose();
+00042 
+00043     const QMap<double, QString> &labelMap() const;
+00044     QMap<double, QString> &labelMap();
+00045     void setLabelMap( const QMap<double, QString> &map );
+00046 
+00047 protected:
+00048     virtual QwtText scaleLabel( double value ) const;
+00049 
+00050     virtual void drawRose( QPainter *, const QPointF &center,
+00051         double radius, double north, QPalette::ColorGroup ) const;
+00052 
+00053     virtual void drawScaleContents( QPainter *,
+00054         const QPointF &center, double radius ) const;
+00055 
+00056     virtual void keyPressEvent( QKeyEvent * );
+00057 
+00058 private:
+00059     void initCompass();
+00060 
+00061     class PrivateData;
+00062     PrivateData *d_data;
+00063 };
+00064 
+00065 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__compass__rose_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__compass__rose_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__compass__rose_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__compass__rose_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,118 @@ + + + + +Qwt User's Guide: qwt_compass_rose.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_compass_rose.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_COMPASS_ROSE_H
+00011 #define QWT_COMPASS_ROSE_H 1
+00012 
+00013 #include "qwt_global.h"
+00014 #include <qpalette.h>
+00015 
+00016 class QPainter;
+00017 
+00021 class QWT_EXPORT QwtCompassRose
+00022 {
+00023 public:
+00025     virtual ~QwtCompassRose() {};
+00026 
+00028     virtual void setPalette( const QPalette &p )
+00029     {
+00030         d_palette = p;
+00031     }
+00032 
+00034     const QPalette &palette() const
+00035     {
+00036         return d_palette;
+00037     }
+00038 
+00048     virtual void draw( QPainter *painter, 
+00049         const QPointF &center, double radius, double north,
+00050         QPalette::ColorGroup colorGroup = QPalette::Active ) const = 0;
+00051 
+00052 private:
+00053     QPalette d_palette;
+00054 };
+00055 
+00059 class QWT_EXPORT QwtSimpleCompassRose: public QwtCompassRose
+00060 {
+00061 public:
+00062     QwtSimpleCompassRose( int numThorns = 8, int numThornLevels = -1 );
+00063     virtual ~QwtSimpleCompassRose();
+00064 
+00065     void setWidth( double w );
+00066     double width() const;
+00067 
+00068     void setNumThorns( int count );
+00069     int numThorns() const;
+00070 
+00071     void setNumThornLevels( int count );
+00072     int numThornLevels() const;
+00073 
+00074     void setShrinkFactor( double factor );
+00075     double shrinkFactor() const;
+00076 
+00077     virtual void draw( QPainter *, const QPointF &center, double radius,
+00078         double north, QPalette::ColorGroup = QPalette::Active ) const;
+00079 
+00080     static void drawRose( QPainter *, const QPalette &,
+00081         const QPointF &center, double radius, double origin, double width,
+00082         int numThorns, int numThornLevels, double shrinkFactor );
+00083 
+00084 private:
+00085     class PrivateData;
+00086     PrivateData *d_data;
+00087 };
+00088 
+00089 #endif 
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__compat_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__compat_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__compat_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__compat_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,87 @@ + + + + +Qwt User's Guide: qwt_compat.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_compat.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef _QWT_COMPAT_H_
+00011 #define _QWT_COMPAT_H_
+00012 
+00013 #include "qwt_global.h"
+00014 #include <qlist.h>
+00015 #include <qvector.h>
+00016 #include <qpoint.h>
+00017 #include <qsize.h>
+00018 #include <qrect.h>
+00019 #include <qpolygon.h>
+00020 
+00021 // A couple of definition for Qwt5 compatibility
+00022 
+00023 #define qwtMax qMax
+00024 #define qwtMin qMin
+00025 #define qwtAbs qAbs
+00026 #define qwtRound qRound
+00027 
+00028 #define QwtArray QVector
+00029 
+00030 typedef QList<double> QwtValueList;
+00031 typedef QPointF QwtDoublePoint;
+00032 typedef QSizeF QwtDoubleSize;
+00033 typedef QRectF QwtDoubleRect;
+00034 
+00035 typedef QPolygon QwtPolygon;
+00036 typedef QPolygonF QwtPolygonF;
+00037 typedef QwtInterval QwtDoubleInterval;
+00038 typedef QwtPoint3D QwtDoublePoint3D;
+00039 
+00040 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__counter_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__counter_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__counter_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__counter_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,153 @@ + + + + +Qwt User's Guide: qwt_counter.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_counter.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_COUNTER_H
+00011 #define QWT_COUNTER_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_double_range.h"
+00015 #include <qwidget.h>
+00016 
+00058 class QWT_EXPORT QwtCounter : public QWidget, public QwtDoubleRange
+00059 {
+00060     Q_OBJECT
+00061 
+00062     Q_PROPERTY( int numButtons READ numButtons WRITE setNumButtons )
+00063     Q_PROPERTY( double basicstep READ step WRITE setStep )
+00064     Q_PROPERTY( double minValue READ minValue WRITE setMinValue )
+00065     Q_PROPERTY( double maxValue READ maxValue WRITE setMaxValue )
+00066     Q_PROPERTY( int stepButton1 READ stepButton1 WRITE setStepButton1 )
+00067     Q_PROPERTY( int stepButton2 READ stepButton2 WRITE setStepButton2 )
+00068     Q_PROPERTY( int stepButton3 READ stepButton3 WRITE setStepButton3 )
+00069     Q_PROPERTY( double value READ value WRITE setValue )
+00070     Q_PROPERTY( bool editable READ editable WRITE setEditable )
+00071 
+00072 public:
+00074     enum Button
+00075     {
+00077         Button1,
+00078 
+00080         Button2,
+00081 
+00083         Button3,
+00084 
+00086         ButtonCnt
+00087     };
+00088 
+00089     explicit QwtCounter( QWidget *parent = NULL );
+00090     virtual ~QwtCounter();
+00091 
+00092     bool editable() const;
+00093     void setEditable( bool );
+00094 
+00095     void setNumButtons( int n );
+00096     int numButtons() const;
+00097 
+00098     void setIncSteps( QwtCounter::Button btn, int nSteps );
+00099     int incSteps( QwtCounter::Button btn ) const;
+00100 
+00101     virtual void setValue( double );
+00102     virtual QSize sizeHint() const;
+00103 
+00104     // a set of dummies to help the designer
+00105 
+00106     double step() const;
+00107     void setStep( double s );
+00108 
+00109     double minValue() const;
+00110     void setMinValue( double m );
+00111 
+00112     double maxValue() const;
+00113     void setMaxValue( double m );
+00114 
+00115     void setStepButton1( int nSteps );
+00116     int stepButton1() const;
+00117 
+00118     void setStepButton2( int nSteps );
+00119     int stepButton2() const;
+00120 
+00121     void setStepButton3( int nSteps );
+00122     int stepButton3() const;
+00123 
+00124     virtual double value() const;
+00125 
+00126 Q_SIGNALS:
+00131     void buttonReleased ( double value );
+00132 
+00137     void valueChanged ( double value );
+00138 
+00139 protected:
+00140     virtual bool event( QEvent * );
+00141     virtual void wheelEvent( QWheelEvent * );
+00142     virtual void keyPressEvent( QKeyEvent * );
+00143     virtual void rangeChange();
+00144 
+00145 private Q_SLOTS:
+00146     void btnReleased();
+00147     void btnClicked();
+00148     void textChanged();
+00149 
+00150 private:
+00151     void initCounter();
+00152     void updateButtons();
+00153     void showNum( double );
+00154     virtual void valueChange();
+00155 
+00156     class PrivateData;
+00157     PrivateData *d_data;
+00158 };
+00159 
+00160 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__curve__fitter_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__curve__fitter_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__curve__fitter_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__curve__fitter_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,134 @@ + + + + +Qwt User's Guide: qwt_curve_fitter.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_curve_fitter.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_CURVE_FITTER_H
+00011 #define QWT_CURVE_FITTER_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include <qpolygon.h>
+00015 #include <qrect.h>
+00016 
+00017 class QwtSpline;
+00018 
+00022 class QWT_EXPORT QwtCurveFitter
+00023 {
+00024 public:
+00025     virtual ~QwtCurveFitter();
+00026 
+00033     virtual QPolygonF fitCurve( const QPolygonF &polygon ) const = 0;
+00034 
+00035 protected:
+00036     QwtCurveFitter();
+00037 
+00038 private:
+00039     QwtCurveFitter( const QwtCurveFitter & );
+00040     QwtCurveFitter &operator=( const QwtCurveFitter & );
+00041 };
+00042 
+00046 class QWT_EXPORT QwtSplineCurveFitter: public QwtCurveFitter
+00047 {
+00048 public:
+00054     enum FitMode
+00055     {
+00061         Auto,
+00062 
+00064         Spline,
+00065 
+00067         ParametricSpline
+00068     };
+00069 
+00070     QwtSplineCurveFitter();
+00071     virtual ~QwtSplineCurveFitter();
+00072 
+00073     void setFitMode( FitMode );
+00074     FitMode fitMode() const;
+00075 
+00076     void setSpline( const QwtSpline& );
+00077     const QwtSpline &spline() const;
+00078     QwtSpline &spline();
+00079 
+00080     void setSplineSize( int size );
+00081     int splineSize() const;
+00082 
+00083     virtual QPolygonF fitCurve( const QPolygonF & ) const;
+00084 
+00085 private:
+00086     QPolygonF fitSpline( const QPolygonF & ) const;
+00087     QPolygonF fitParametric( const QPolygonF & ) const;
+00088 
+00089     class PrivateData;
+00090     PrivateData *d_data;
+00091 };
+00092 
+00110 class QWT_EXPORT QwtWeedingCurveFitter: public QwtCurveFitter
+00111 {
+00112 public:
+00113     QwtWeedingCurveFitter( double tolerance = 1.0 );
+00114     virtual ~QwtWeedingCurveFitter();
+00115 
+00116     void setTolerance( double );
+00117     double tolerance() const;
+00118 
+00119     virtual QPolygonF fitCurve( const QPolygonF & ) const;
+00120 
+00121 private:
+00122     class Line;
+00123 
+00124     class PrivateData;
+00125     PrivateData *d_data;
+00126 };
+00127 
+00128 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__dial_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__dial_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__dial_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__dial_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,207 @@ + + + + +Qwt User's Guide: qwt_dial.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_dial.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_DIAL_H
+00011 #define QWT_DIAL_H 1
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_abstract_slider.h"
+00015 #include "qwt_round_scale_draw.h"
+00016 #include <qframe.h>
+00017 #include <qpalette.h>
+00018 
+00019 class QwtDialNeedle;
+00020 class QwtDial;
+00021 
+00027 class QWT_EXPORT QwtDialScaleDraw: public QwtRoundScaleDraw
+00028 {
+00029 public:
+00030     explicit QwtDialScaleDraw( QwtDial * );
+00031 
+00032     virtual QwtText label( double value ) const;
+00033 
+00034     void setPenWidth( double );
+00035     double penWidth() const;
+00036 
+00037 private:
+00038     QwtDial *d_parent;
+00039     double d_penWidth;
+00040 };
+00041 
+00066 class QWT_EXPORT QwtDial: public QwtAbstractSlider
+00067 {
+00068     Q_OBJECT
+00069 
+00070     Q_ENUMS( Shadow )
+00071     Q_ENUMS( Mode )
+00072     Q_ENUMS( Direction )
+00073 
+00074     Q_PROPERTY( int lineWidth READ lineWidth WRITE setLineWidth )
+00075     Q_PROPERTY( Shadow frameShadow READ frameShadow WRITE setFrameShadow )
+00076     Q_PROPERTY( Mode mode READ mode WRITE setMode )
+00077     Q_PROPERTY( double origin READ origin WRITE setOrigin )
+00078     Q_PROPERTY( bool wrapping READ wrapping WRITE setWrapping )
+00079     Q_PROPERTY( Direction direction READ direction WRITE setDirection )
+00080 
+00081     friend class QwtDialScaleDraw;
+00082 public:
+00083 
+00092     enum Shadow
+00093     {
+00095         Plain = QFrame::Plain,
+00096 
+00098         Raised = QFrame::Raised,
+00099 
+00101         Sunken = QFrame::Sunken
+00102     };
+00103 
+00105     enum Mode
+00106     {
+00108         RotateNeedle,
+00109 
+00111         RotateScale
+00112     };
+00113 
+00115     enum Direction
+00116     {
+00118         Clockwise,
+00119 
+00121         CounterClockwise
+00122     };
+00123 
+00124     explicit QwtDial( QWidget *parent = NULL );
+00125     virtual ~QwtDial();
+00126 
+00127     void setFrameShadow( Shadow );
+00128     Shadow frameShadow() const;
+00129 
+00130     void setLineWidth( int );
+00131     int lineWidth() const;
+00132 
+00133     void setMode( Mode );
+00134     Mode mode() const;
+00135 
+00136     virtual void setWrapping( bool );
+00137     bool wrapping() const;
+00138 
+00139     virtual void setScale( int maxMajIntv, int maxMinIntv, double step = 0.0 );
+00140 
+00141     void setScaleArc( double min, double max );
+00142     void setScaleComponents( QwtAbstractScaleDraw::ScaleComponents );
+00143     void setScaleTicks( int minLen, int medLen, int majLen, int penWidth = 1 );
+00144 
+00145     double minScaleArc() const;
+00146     double maxScaleArc() const;
+00147 
+00148     virtual void setOrigin( double );
+00149     double origin() const;
+00150 
+00151     void setDirection( Direction );
+00152     Direction direction() const;
+00153 
+00154     virtual void setNeedle( QwtDialNeedle * );
+00155     const QwtDialNeedle *needle() const;
+00156     QwtDialNeedle *needle();
+00157 
+00158     QRectF boundingRect() const;
+00159     QRectF innerRect() const;
+00160     virtual QRectF scaleInnerRect() const;
+00161 
+00162     virtual QSize sizeHint() const;
+00163     virtual QSize minimumSizeHint() const;
+00164 
+00165     virtual void setScaleDraw( QwtDialScaleDraw * );
+00166 
+00167     QwtDialScaleDraw *scaleDraw();
+00168     const QwtDialScaleDraw *scaleDraw() const;
+00169 
+00170 protected:
+00171     virtual void paintEvent( QPaintEvent * );
+00172     virtual void keyPressEvent( QKeyEvent * );
+00173 
+00174     virtual void drawFrame( QPainter *p );
+00175     virtual void drawContents( QPainter * ) const;
+00176     virtual void drawFocusIndicator( QPainter * ) const;
+00177 
+00178     virtual void drawScale( 
+00179         QPainter *, const QPointF &center,
+00180         double radius, double origin, 
+00181         double arcMin, double arcMax ) const;
+00182 
+00192     virtual void drawScaleContents( QPainter *painter, 
+00193         const QPointF &center, double radius ) const;
+00194 
+00195     virtual void drawNeedle( QPainter *, const QPointF &,
+00196         double radius, double direction, QPalette::ColorGroup ) const;
+00197 
+00198     virtual QwtText scaleLabel( double ) const;
+00199     void updateScale();
+00200 
+00201     virtual void rangeChange();
+00202     virtual void valueChange();
+00203 
+00204     virtual double getValue( const QPoint & );
+00205     virtual void getScrollMode( const QPoint &,
+00206         QwtAbstractSlider::ScrollMode &, int &direction ) const;
+00207 
+00208 private:
+00209     void initDial();
+00210 
+00211     class PrivateData;
+00212     PrivateData *d_data;
+00213 };
+00214 
+00215 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__dial__needle_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__dial__needle_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__dial__needle_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__dial__needle_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,158 @@ + + + + +Qwt User's Guide: qwt_dial_needle.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_dial_needle.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_DIAL_NEEDLE_H
+00011 #define QWT_DIAL_NEEDLE_H 1
+00012 
+00013 #include "qwt_global.h"
+00014 #include <qpalette.h>
+00015 
+00016 class QPainter;
+00017 class QPoint;
+00018 
+00031 class QWT_EXPORT QwtDialNeedle
+00032 {
+00033 public:
+00034     QwtDialNeedle();
+00035     virtual ~QwtDialNeedle();
+00036 
+00037     virtual void setPalette( const QPalette & );
+00038     const QPalette &palette() const;
+00039 
+00040     virtual void draw( QPainter *painter, const QPointF &center,
+00041         double length, double direction, 
+00042         QPalette::ColorGroup = QPalette::Active ) const;
+00043 
+00044 protected:
+00060     virtual void drawNeedle( QPainter *painter, 
+00061         double length, QPalette::ColorGroup colorGroup ) const = 0;
+00062 
+00063     virtual void drawKnob( QPainter *, double width, 
+00064         const QBrush &, bool sunken ) const;
+00065 
+00066 private:
+00067     QPalette d_palette;
+00068 };
+00069 
+00083 class QWT_EXPORT QwtDialSimpleNeedle: public QwtDialNeedle
+00084 {
+00085 public:
+00087     enum Style
+00088     {
+00090         Arrow,
+00091 
+00093         Ray
+00094     };
+00095 
+00096     QwtDialSimpleNeedle( Style, bool hasKnob = true,
+00097         const QColor &mid = Qt::gray, const QColor &base = Qt::darkGray );
+00098 
+00099     void setWidth( double width );
+00100     double width() const;
+00101 
+00102 protected:
+00103     virtual void drawNeedle( QPainter *, double length,
+00104         QPalette::ColorGroup ) const;
+00105 
+00106 private:
+00107     Style d_style;
+00108     bool d_hasKnob;
+00109     double d_width;
+00110 };
+00111 
+00129 class QWT_EXPORT QwtCompassMagnetNeedle: public QwtDialNeedle
+00130 {
+00131 public:
+00133     enum Style
+00134     {
+00136         TriangleStyle,
+00137 
+00139         ThinStyle
+00140     };
+00141 
+00142     QwtCompassMagnetNeedle( Style = TriangleStyle,
+00143         const QColor &light = Qt::white, const QColor &dark = Qt::red );
+00144 
+00145 protected:
+00146     virtual void drawNeedle( QPainter *, 
+00147         double length, QPalette::ColorGroup ) const;
+00148 
+00149 private:
+00150     Style d_style;
+00151 };
+00152 
+00166 class QWT_EXPORT QwtCompassWindArrow: public QwtDialNeedle
+00167 {
+00168 public:
+00170     enum Style
+00171     {
+00173         Style1,
+00174 
+00176         Style2
+00177     };
+00178 
+00179     QwtCompassWindArrow( Style, const QColor &light = Qt::white,
+00180         const QColor &dark = Qt::gray );
+00181 
+00182 protected:
+00183     virtual void drawNeedle( QPainter *, 
+00184         double length, QPalette::ColorGroup ) const;
+00185 
+00186 private:
+00187     Style d_style;
+00188 };
+00189 
+00190 #endif 
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__double__range_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__double__range_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__double__range_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__double__range_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,109 @@ + + + + +Qwt User's Guide: qwt_double_range.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_double_range.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_DOUBLE_RANGE_H
+00011 #define QWT_DOUBLE_RANGE_H
+00012 
+00013 #include "qwt_global.h"
+00014 
+00031 class QWT_EXPORT QwtDoubleRange
+00032 {
+00033 public:
+00034     QwtDoubleRange();
+00035     virtual ~QwtDoubleRange();
+00036 
+00037     void setRange( double vmin, double vmax, 
+00038         double vstep = 0.0, int pagesize = 1 );
+00039 
+00040     void setValid( bool );
+00041     bool isValid() const;
+00042 
+00043     virtual void setValue( double );
+00044     double value() const;
+00045 
+00046     void setPeriodic( bool tf );
+00047     bool periodic() const;
+00048 
+00049     void setStep( double );
+00050     double step() const;
+00051 
+00052     double maxValue() const;
+00053     double minValue() const;
+00054 
+00055     int pageSize() const;
+00056 
+00057     virtual void incValue( int );
+00058     virtual void incPages( int );
+00059     virtual void fitValue( double );
+00060 
+00061 protected:
+00062 
+00063     double exactValue() const;
+00064     double exactPrevValue() const;
+00065     double prevValue() const;
+00066 
+00067     virtual void valueChange();
+00068     virtual void stepChange();
+00069     virtual void rangeChange();
+00070 
+00071 private:
+00072     void setNewValue( double value, bool align = false );
+00073 
+00074     class PrivateData;
+00075     PrivateData *d_data;
+00076 };
+00077 
+00078 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__dyngrid__layout_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__dyngrid__layout_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__dyngrid__layout_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__dyngrid__layout_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,121 @@ + + + + +Qwt User's Guide: qwt_dyngrid_layout.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_dyngrid_layout.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_DYNGRID_LAYOUT_H
+00011 #define QWT_DYNGRID_LAYOUT_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include <qlayout.h>
+00015 #include <qsize.h>
+00016 #include <qlist.h>
+00017 
+00027 class QWT_EXPORT QwtDynGridLayout : public QLayout
+00028 {
+00029     Q_OBJECT
+00030 public:
+00031     explicit QwtDynGridLayout( QWidget *, int margin = 0, int space = -1 );
+00032     explicit QwtDynGridLayout( int space = -1 );
+00033 
+00034     virtual ~QwtDynGridLayout();
+00035 
+00036     virtual void invalidate();
+00037 
+00038     void setMaxCols( uint maxCols );
+00039     uint maxCols() const;
+00040 
+00041     uint numRows () const;
+00042     uint numCols () const;
+00043 
+00044     virtual void addItem( QLayoutItem * );
+00045 
+00046     virtual QLayoutItem *itemAt( int index ) const;
+00047     virtual QLayoutItem *takeAt( int index );
+00048     virtual int count() const;
+00049 
+00050     void setExpandingDirections( Qt::Orientations );
+00051     virtual Qt::Orientations expandingDirections() const;
+00052     QList<QRect> layoutItems( const QRect &, uint numCols ) const;
+00053 
+00054     virtual int maxItemWidth() const;
+00055 
+00056     virtual void setGeometry( const QRect &rect );
+00057 
+00058     virtual bool hasHeightForWidth() const;
+00059     virtual int heightForWidth( int ) const;
+00060 
+00061     virtual QSize sizeHint() const;
+00062 
+00063     virtual bool isEmpty() const;
+00064     uint itemCount() const;
+00065 
+00066     virtual uint columnsForWidth( int width ) const;
+00067 
+00068 protected:
+00069 
+00070     void layoutGrid( uint numCols,
+00071         QVector<int>& rowHeight, QVector<int>& colWidth ) const;
+00072     void stretchGrid( const QRect &rect, uint numCols,
+00073         QVector<int>& rowHeight, QVector<int>& colWidth ) const;
+00074 
+00075 private:
+00076     void init();
+00077     int maxRowWidth( int numCols ) const;
+00078 
+00079     class PrivateData;
+00080     PrivateData *d_data;
+00081 };
+00082 
+00083 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__event__pattern_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__event__pattern_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__event__pattern_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__event__pattern_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,178 @@ + + + + +Qwt User's Guide: qwt_event_pattern.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_event_pattern.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_EVENT_PATTERN
+00011 #define QWT_EVENT_PATTERN 1
+00012 
+00013 #include "qwt_global.h"
+00014 #include <qnamespace.h>
+00015 #include <qvector.h>
+00016 
+00017 class QMouseEvent;
+00018 class QKeyEvent;
+00019 
+00029 class QWT_EXPORT QwtEventPattern
+00030 {
+00031 public:
+00080     enum MousePatternCode
+00081     {
+00082         MouseSelect1,
+00083         MouseSelect2,
+00084         MouseSelect3,
+00085         MouseSelect4,
+00086         MouseSelect5,
+00087         MouseSelect6,
+00088 
+00089         MousePatternCount
+00090     };
+00091 
+00119     enum KeyPatternCode
+00120     {
+00121         KeySelect1,
+00122         KeySelect2,
+00123         KeyAbort,
+00124 
+00125         KeyLeft,
+00126         KeyRight,
+00127         KeyUp,
+00128         KeyDown,
+00129 
+00130         KeyRedo,
+00131         KeyUndo,
+00132         KeyHome,
+00133 
+00134         KeyPatternCount
+00135     };
+00136 
+00138     class MousePattern
+00139     {
+00140     public:
+00142         MousePattern( int btn = Qt::NoButton, int st = Qt::NoButton )
+00143         {
+00144             button = btn;
+00145             state = st;
+00146         }
+00147 
+00149         int button;
+00150 
+00152         int state;
+00153     };
+00154 
+00156     class KeyPattern
+00157     {
+00158     public:
+00160         KeyPattern( int k = 0, int st = Qt::NoButton )
+00161         {
+00162             key = k;
+00163             state = st;
+00164         }
+00165 
+00167         int key;
+00168 
+00170         int state;
+00171     };
+00172 
+00173     QwtEventPattern();
+00174     virtual ~QwtEventPattern();
+00175 
+00176     void initMousePattern( int numButtons );
+00177     void initKeyPattern();
+00178 
+00179     void setMousePattern( uint pattern, int button, int state = Qt::NoButton );
+00180     void setKeyPattern( uint pattern, int key, int state = Qt::NoButton );
+00181 
+00182     void setMousePattern( const QVector<MousePattern> & );
+00183     void setKeyPattern( const QVector<KeyPattern> & );
+00184 
+00185     const QVector<MousePattern> &mousePattern() const;
+00186     const QVector<KeyPattern> &keyPattern() const;
+00187 
+00188     QVector<MousePattern> &mousePattern();
+00189     QVector<KeyPattern> &keyPattern();
+00190 
+00191     bool mouseMatch( uint pattern, const QMouseEvent * ) const;
+00192     bool keyMatch( uint pattern, const QKeyEvent * ) const;
+00193 
+00194 protected:
+00195     virtual bool mouseMatch( const MousePattern &, const QMouseEvent * ) const;
+00196     virtual bool keyMatch( const KeyPattern &, const QKeyEvent * ) const;
+00197 
+00198 private:
+00199 
+00200 #if defined(_MSC_VER)
+00201 #pragma warning(push)
+00202 #pragma warning(disable: 4251)
+00203 #endif
+00204     QVector<MousePattern> d_mousePattern;
+00205     QVector<KeyPattern> d_keyPattern;
+00206 #if defined(_MSC_VER)
+00207 #pragma warning(pop)
+00208 #endif
+00209 };
+00210 
+00212 inline bool operator==( QwtEventPattern::MousePattern b1,
+00213     QwtEventPattern::MousePattern  b2 )
+00214 {
+00215     return b1.button == b2.button && b1.state == b2.state;
+00216 }
+00217 
+00219 inline bool operator==( QwtEventPattern::KeyPattern b1,
+00220    QwtEventPattern::KeyPattern  b2 )
+00221 {
+00222     return b1.key == b2.key && b1.state == b2.state;
+00223 }
+00224 
+00225 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__global_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__global_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__global_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__global_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,93 @@ + + + + +Qwt User's Guide: qwt_global.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_global.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_GLOBAL_H
+00011 #define QWT_GLOBAL_H
+00012 
+00013 #include <qglobal.h>
+00014 
+00015 // QWT_VERSION is (major << 16) + (minor << 8) + patch.
+00016 
+00017 #define QWT_VERSION       0x060000
+00018 #define QWT_VERSION_STR   "6.0.0-svn"
+00019 
+00020 #if defined(Q_WS_WIN) || defined(Q_WS_S60)
+00021 
+00022 #if defined(_MSC_VER) /* MSVC Compiler */
+00023 /* template-class specialization 'identifier' is already instantiated */
+00024 #pragma warning(disable: 4660)
+00025 #endif // _MSC_VER
+00026 
+00027 #ifdef QWT_DLL
+00028 
+00029 #if defined(QWT_MAKEDLL)     // create a Qwt DLL library 
+00030 #define QWT_EXPORT  __declspec(dllexport)
+00031 #define QWT_TEMPLATEDLL
+00032 #else                        // use a Qwt DLL library
+00033 #define QWT_EXPORT  __declspec(dllimport)
+00034 #endif
+00035 
+00036 #endif // QWT_DLL
+00037 
+00038 #endif // Q_WS_WIN || Q_WS_S60
+00039 
+00040 #ifndef QWT_EXPORT
+00041 #define QWT_EXPORT
+00042 #endif
+00043 
+00044 // #define QWT_NO_COMPAT 1 // disable withdrawn functionality
+00045 
+00046 #endif 
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwtinstall.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwtinstall.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwtinstall.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwtinstall.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,206 @@ + + + + +Qwt User's Guide: INSTALL + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ +
+
+
+

INSTALL

+
+
+
Introduction
+============
+
+Qwt uses qmake to build all its components and examples. 
+qmake is part of a Qt distribution. 
+
+qmake reads project files, that contain the options and rules how to 
+build a certain project. A project file ends with the suffix "*.pro". 
+Files that end with the suffix "*.pri" are included by the project 
+files and contain definitions, that are common for several project files.
+
+qwtconfig.pri and qwtbuild.pri are read by all project files of the Qwt 
+package. qwtconfig.pri is also read by qwt.prf, when building your
+application. So the first step is to edit the *.pri files to adjust 
+them to your needs.
+
+The subdirs template of qmake is known to be buggy when using spaces 
+in path names. So better don't build Qwt below a path name with spaces. 
+( Otherwise you might have to run qmake in all subdirs manually ).
+
+Documentation
+==========================
+
+Qwt includes a class documentation, that is available in various formats:
+
+- Html files
+- PDF document 
+- Qt Compressed Help (*.qch ) for the Qt assistant or creator. 
+  You can load it "Edit Preferences" -> "Documentation" -> "Add..."
+- Man pages ( UNIX only )
+
+Building Qwt
+==========================
+
+The easiest way to build Qwt is from the command line - but you insist on 
+using an IDE don't forget the "make install" step.
+
+A) Unix 
+--------
+
+qmake
+make
+make install
+
+If you have installed a shared library it's path has to be known to 
+the run-time linker of your operating system. On Linux systems read
+"man ldconfig" ( or google for it ). Another option is to use
+the LD_LIBRARY_PATH (on some systems LIBPATH is used instead, on MacOSX
+it is called DYLD_LIBRARY_PATH) environment variable.
+
+If you only want to check the Qwt examples without installing something,
+you can set the LD_LIBRARY_PATH to the lib directory 
+of your local build. 
+
+If you didn't enable autobuilding of the examples in qwtconfig.pri
+you have to build the examples this way:
+
+cd examples
+qmake 
+make
+
+
+B) Win32/MSVC 
+--------
+
+Check that your Qt version has been built with MSVC - not with MinGW !
+
+Please read the qmake documentation how to convert 
+your *.pro files into your development environment.
+
+F.e MSVC with nmake:
+qmake qwt.pro
+nmake
+nmake install
+
+If you didn't enable autobuilding of the examples in qwtconfig.pri
+you have to build the examples this way:
+
+cd examples
+qmake examples.pro
+nmake
+
+Windows doesn't like mixing of debug and release binaries. Most
+of the problems with using the Qwt designer plugin are because
+of trying to load a Qwt debug library into a designer release 
+executable.
+
+It's not possible to load a plugin, that has been built with MinGW
+into a Qt Designer/Creator, that has been built with MSVC ( and v.v ).
+This is a common reason for problems, when working with prebuild
+binaries of the Qt Creator.
+
+C) Win32/MinGW 
+--------
+
+Check that your Qt version has been built with MinGW - not with MSVC !
+
+Start a Shell, where Qt4 is initialized. ( F.e. with
+"Programs->Qt by Trolltech ...->Qt 4.x.x Command Prompt" ).
+Check if you can execute "make" or something like "mingw32-make".
+
+qmake qwt.pro
+make
+make install
+
+If you didn't enable autobuilding of the examples in qwtconfig.pri
+you have to build the examples this way:
+
+cd examples
+qmake examples.pro
+make
+
+Windows doesn't like mixing of debug and release binaries. Most
+of the problems with using the Qwt designer plugin are because
+of trying to load a Qwt debug library into a designer release 
+executable.
+
+Don't forget to tell qmake where to find qwt.prf:
+qmake -set QMAKEFEATURES ...
+
+D) MacOSX
+--------
+
+Well, the Mac is only another Unix system. So read the instructions in A).
+
+In the recent Qt4 releases the default target of qmake is to generate
+XCode project files instead of makefiles. So you might need to do the
+following:
+
+qmake -spec macx-g++
+...
+
+D) Qt Embedded
+--------
+
+I only tested Qwt with Qt Embedded in qvfb (Virtual Framebuffer Devivce)
+Emulator on my Linux box. To build Qwt for the emulator was as simple as 
+for a regular Unix build.
+
+F) Symbian
+--------
+
+I never tried this platform myself.
+
+Using Qwt
+===========
+
+For building a Qwt application with qmake use the Qwt configuration features
+file, that has been installed by "make install". When qmake is able to find 
+it ( http://doc.qt.nokia.com/4.7/qmake-advanced-usage.html#adding-new-configuration-features )
+you can simply add "CONFIG += qwt" to your application project file.
+
+If you don't use qmake you have to add the include path to find the Qwt 
+headers to your compiler flags and the Qwt library to your linker list.
+Don't forget to add QWT_DLL to the compiler flags, when you work with a 
+Qwt-DLLs on Windows.
+
+For using the designer plugin you have to configure the Qt designer/creator 
+where to look for plugins. This can be done by setting the QT_PLUGIN_PATH or
+using a qt.conf file ( see http://doc.qt.nokia.com/4.7/deployment-plugins.html ).
+Beside the plugin the Qwt library itsself also needs to be known to the Designer/Creator
+( see LD_LIBRARY_PATH, PATH ... above ).
+
+Good luck !
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__interval_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__interval_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__interval_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__interval_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,248 @@ + + + + +Qwt User's Guide: qwt_interval.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_interval.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_INTERVAL_H
+00011 #define QWT_INTERVAL_H
+00012 
+00013 #include "qwt_global.h"
+00014 #ifndef QT_NO_DEBUG_STREAM
+00015 #include <qdebug.h>
+00016 #endif
+00017 
+00024 class QWT_EXPORT QwtInterval
+00025 {
+00026 public:
+00031     enum BorderFlag
+00032     {
+00034         IncludeBorders = 0x00,
+00035 
+00037         ExcludeMinimum = 0x01,
+00038 
+00040         ExcludeMaximum = 0x02,
+00041 
+00043         ExcludeBorders = ExcludeMinimum | ExcludeMaximum
+00044     };
+00045 
+00047     typedef QFlags<BorderFlag> BorderFlags;
+00048 
+00049     QwtInterval();
+00050     QwtInterval( double minValue, double maxValue,
+00051         BorderFlags = IncludeBorders );
+00052 
+00053     void setInterval( double minValue, double maxValue,
+00054         BorderFlags = IncludeBorders );
+00055 
+00056     QwtInterval normalized() const;
+00057     QwtInterval inverted() const;
+00058     QwtInterval limited( double minValue, double maxValue ) const;
+00059 
+00060     bool operator==( const QwtInterval & ) const;
+00061     bool operator!=( const QwtInterval & ) const;
+00062 
+00063     void setBorderFlags( BorderFlags );
+00064     BorderFlags borderFlags() const;
+00065 
+00066     double minValue() const;
+00067     double maxValue() const;
+00068 
+00069     double width() const;
+00070 
+00071     void setMinValue( double );
+00072     void setMaxValue( double );
+00073 
+00074     bool contains( double value ) const;
+00075 
+00076     bool intersects( const QwtInterval & ) const;
+00077     QwtInterval intersect( const QwtInterval & ) const;
+00078     QwtInterval unite( const QwtInterval & ) const;
+00079 
+00080     QwtInterval operator|( const QwtInterval & ) const;
+00081     QwtInterval operator&( const QwtInterval & ) const;
+00082 
+00083     QwtInterval &operator|=( const QwtInterval & );
+00084     QwtInterval &operator&=( const QwtInterval & );
+00085 
+00086     QwtInterval extend( double value ) const;
+00087     QwtInterval operator|( double ) const;
+00088     QwtInterval &operator|=( double );
+00089 
+00090     bool isValid() const;
+00091     bool isNull() const;
+00092     void invalidate();
+00093 
+00094     QwtInterval symmetrize( double value ) const;
+00095 
+00096 private:
+00097     double d_minValue;
+00098     double d_maxValue;
+00099     BorderFlags d_borderFlags;
+00100 };
+00101 
+00102 Q_DECLARE_TYPEINFO(QwtInterval, Q_MOVABLE_TYPE);
+00103 
+00110 inline QwtInterval::QwtInterval():
+00111     d_minValue( 0.0 ),
+00112     d_maxValue( -1.0 ),
+00113     d_borderFlags( IncludeBorders )
+00114 {
+00115 }
+00116 
+00126 inline QwtInterval::QwtInterval(
+00127         double minValue, double maxValue, BorderFlags borderFlags ):
+00128     d_minValue( minValue ),
+00129     d_maxValue( maxValue ),
+00130     d_borderFlags( borderFlags )
+00131 {
+00132 }
+00133 
+00141 inline void QwtInterval::setInterval(
+00142     double minValue, double maxValue, BorderFlags borderFlags )
+00143 {
+00144     d_minValue = minValue;
+00145     d_maxValue = maxValue;
+00146     d_borderFlags = borderFlags;
+00147 }
+00148 
+00155 inline void QwtInterval::setBorderFlags( BorderFlags borderFlags )
+00156 {
+00157     d_borderFlags = borderFlags;
+00158 }
+00159 
+00164 inline QwtInterval::BorderFlags QwtInterval::borderFlags() const
+00165 {
+00166     return d_borderFlags;
+00167 }
+00168 
+00174 inline void QwtInterval::setMinValue( double minValue )
+00175 {
+00176     d_minValue = minValue;
+00177 }
+00178 
+00184 inline void QwtInterval::setMaxValue( double maxValue )
+00185 {
+00186     d_maxValue = maxValue;
+00187 }
+00188 
+00190 inline double QwtInterval::minValue() const
+00191 {
+00192     return d_minValue;
+00193 }
+00194 
+00196 inline double QwtInterval::maxValue() const
+00197 {
+00198     return d_maxValue;
+00199 }
+00200 
+00208 inline double QwtInterval::width() const
+00209 {
+00210     return isValid() ? ( d_maxValue - d_minValue ) : 0.0;
+00211 }
+00212 
+00217 inline QwtInterval QwtInterval::operator&(
+00218     const QwtInterval &interval ) const
+00219 {
+00220     return intersect( interval );
+00221 }
+00222 
+00227 inline QwtInterval QwtInterval::operator|(
+00228     const QwtInterval &interval ) const
+00229 {
+00230     return unite( interval );
+00231 }
+00232 
+00234 inline bool QwtInterval::operator==( const QwtInterval &other ) const
+00235 {
+00236     return ( d_minValue == other.d_minValue ) &&
+00237            ( d_maxValue == other.d_maxValue ) &&
+00238            ( d_borderFlags == other.d_borderFlags );
+00239 }
+00240 
+00242 inline bool QwtInterval::operator!=( const QwtInterval &other ) const
+00243 {
+00244     return ( !( *this == other ) );
+00245 }
+00246 
+00254 inline QwtInterval QwtInterval::operator|( double value ) const
+00255 {
+00256     return extend( value );
+00257 }
+00258 
+00260 inline bool QwtInterval::isNull() const
+00261 {
+00262     return isValid() && d_minValue >= d_maxValue;
+00263 }
+00264 
+00270 inline bool QwtInterval::isValid() const
+00271 {
+00272     if ( ( d_borderFlags & ExcludeBorders ) == 0 )
+00273         return d_minValue <= d_maxValue;
+00274     else
+00275         return d_minValue < d_maxValue;
+00276 }
+00277 
+00284 inline void QwtInterval::invalidate()
+00285 {
+00286     d_minValue = 0.0;
+00287     d_maxValue = -1.0;
+00288 }
+00289 
+00290 Q_DECLARE_OPERATORS_FOR_FLAGS( QwtInterval::BorderFlags );
+00291 
+00292 #ifndef QT_NO_DEBUG_STREAM
+00293 QWT_EXPORT QDebug operator<<( QDebug, const QwtInterval & );
+00294 #endif
+00295 
+00296 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__interval__symbol_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__interval__symbol_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__interval__symbol_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__interval__symbol_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,112 @@ + + + + +Qwt User's Guide: qwt_interval_symbol.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_interval_symbol.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_INTERVAL_SYMBOL_H
+00011 #define QWT_INTERVAL_SYMBOL_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include <qpen.h>
+00015 #include <qsize.h>
+00016 
+00017 class QPainter;
+00018 class QRect;
+00019 class QPointF;
+00020 
+00026 class QWT_EXPORT QwtIntervalSymbol
+00027 {
+00028 public:
+00030     enum Style
+00031     {
+00033         NoSymbol = -1,
+00034 
+00039         Bar,
+00040 
+00046         Box,
+00047 
+00053         UserSymbol = 1000
+00054     };
+00055 
+00056 public:
+00057     QwtIntervalSymbol( Style = NoSymbol );
+00058     QwtIntervalSymbol( const QwtIntervalSymbol & );
+00059     virtual ~QwtIntervalSymbol();
+00060 
+00061     QwtIntervalSymbol &operator=( const QwtIntervalSymbol & );
+00062     bool operator==( const QwtIntervalSymbol & ) const;
+00063     bool operator!=( const QwtIntervalSymbol & ) const;
+00064 
+00065     void setWidth( int );
+00066     int width() const;
+00067 
+00068     void setBrush( const QBrush& b );
+00069     const QBrush& brush() const;
+00070 
+00071     void setPen( const QPen & );
+00072     const QPen& pen() const;
+00073 
+00074     void setStyle( Style );
+00075     Style style() const;
+00076 
+00077     virtual void draw( QPainter *, Qt::Orientation,
+00078         const QPointF& from, const QPointF& to ) const;
+00079 
+00080 private:
+00081 
+00082     class PrivateData;
+00083     PrivateData* d_data;
+00084 };
+00085 
+00086 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__knob_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__knob_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__knob_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__knob_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,158 @@ + + + + +Qwt User's Guide: qwt_knob.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_knob.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_KNOB_H
+00011 #define QWT_KNOB_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_abstract_slider.h"
+00015 #include "qwt_abstract_scale.h"
+00016 
+00017 class QwtRoundScaleDraw;
+00018 
+00034 class QWT_EXPORT QwtKnob : public QwtAbstractSlider, public QwtAbstractScale
+00035 {
+00036     Q_OBJECT
+00037 
+00038     Q_ENUMS ( KnobStyle )
+00039     Q_ENUMS ( MarkerStyle )
+00040 
+00041     Q_PROPERTY( KnobStyle knobStyle READ knobStyle WRITE setKnobStyle )
+00042     Q_PROPERTY( MarkerStyle markerStyle READ markerStyle WRITE setMarkerStyle )
+00043     Q_PROPERTY( int knobWidth READ knobWidth WRITE setKnobWidth )
+00044     Q_PROPERTY( int borderWidth READ borderWidth WRITE setBorderWidth )
+00045     Q_PROPERTY( double totalAngle READ totalAngle WRITE setTotalAngle )
+00046     Q_PROPERTY( int markerSize READ markerSize WRITE setMarkerSize )
+00047     Q_PROPERTY( int borderWidth READ borderWidth WRITE setBorderWidth )
+00048 
+00049 public:
+00058     enum KnobStyle
+00059     {
+00061         NoStyle = -1,
+00062 
+00064         Raised,
+00065 
+00070         Sunken
+00071     };
+00072 
+00081     enum MarkerStyle 
+00082     { 
+00084         NoMarker = -1,
+00085 
+00087         Tick, 
+00088 
+00090         Dot, 
+00091 
+00096         Nub, 
+00097 
+00102         Notch 
+00103     };
+00104 
+00105     explicit QwtKnob( QWidget* parent = NULL );
+00106     virtual ~QwtKnob();
+00107 
+00108     void setKnobWidth( int w );
+00109     int knobWidth() const;
+00110 
+00111     void setTotalAngle ( double angle );
+00112     double totalAngle() const;
+00113 
+00114     void setKnobStyle( KnobStyle );
+00115     KnobStyle knobStyle() const;
+00116 
+00117     void setBorderWidth( int bw );
+00118     int borderWidth() const;
+00119 
+00120     void setMarkerStyle( MarkerStyle );
+00121     MarkerStyle markerStyle() const;
+00122 
+00123     void setMarkerSize( int );
+00124     int markerSize() const;
+00125 
+00126     virtual QSize sizeHint() const;
+00127     virtual QSize minimumSizeHint() const;
+00128 
+00129     void setScaleDraw( QwtRoundScaleDraw * );
+00130     const QwtRoundScaleDraw *scaleDraw() const;
+00131     QwtRoundScaleDraw *scaleDraw();
+00132 
+00133 protected:
+00134     virtual void paintEvent( QPaintEvent * );
+00135     virtual void resizeEvent( QResizeEvent * );
+00136     virtual void changeEvent( QEvent * );
+00137 
+00138     virtual void drawKnob( QPainter *, const QRectF & ) const;
+00139     virtual void drawMarker( QPainter *, 
+00140         const QRectF &, double arc ) const;
+00141 
+00142     virtual double getValue( const QPoint &p );
+00143     virtual void getScrollMode( const QPoint &, 
+00144         QwtAbstractSlider::ScrollMode &, int &direction ) const;
+00145 
+00146 private:
+00147     void initKnob();
+00148     void layoutKnob( bool update );
+00149     void recalcAngle();
+00150 
+00151     virtual void valueChange();
+00152     virtual void rangeChange();
+00153     virtual void scaleChange();
+00154 
+00155     class PrivateData;
+00156     PrivateData *d_data;
+00157 };
+00158 
+00159 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__legend_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__legend_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__legend_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__legend_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,119 @@ + + + + +Qwt User's Guide: qwt_legend.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_legend.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_LEGEND_H
+00011 #define QWT_LEGEND_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include <qframe.h>
+00015 #include <qlist.h>
+00016 
+00017 class QScrollBar;
+00018 class QwtLegendItemManager;
+00019 
+00030 class QWT_EXPORT QwtLegend : public QFrame
+00031 {
+00032     Q_OBJECT
+00033 
+00034 public:
+00045     enum LegendItemMode
+00046     {
+00048         ReadOnlyItem,
+00049 
+00051         ClickableItem,
+00052 
+00054         CheckableItem
+00055     };
+00056 
+00057     explicit QwtLegend( QWidget *parent = NULL );
+00058     virtual ~QwtLegend();
+00059 
+00060     void setItemMode( LegendItemMode );
+00061     LegendItemMode itemMode() const;
+00062 
+00063     QWidget *contentsWidget();
+00064     const QWidget *contentsWidget() const;
+00065 
+00066     void insert( const QwtLegendItemManager *, QWidget * );
+00067     void remove( const QwtLegendItemManager * );
+00068 
+00069     QWidget *find( const QwtLegendItemManager * ) const;
+00070     QwtLegendItemManager *find( const QWidget * ) const;
+00071 
+00072     virtual QList<QWidget *> legendItems() const;
+00073 
+00074     void clear();
+00075 
+00076     bool isEmpty() const;
+00077     uint itemCount() const;
+00078 
+00079     virtual bool eventFilter( QObject *, QEvent * );
+00080 
+00081     virtual QSize sizeHint() const;
+00082     virtual int heightForWidth( int w ) const;
+00083 
+00084     QScrollBar *horizontalScrollBar() const;
+00085     QScrollBar *verticalScrollBar() const;
+00086 
+00087 protected:
+00088     virtual void layoutContents();
+00089 
+00090 private:
+00091     class PrivateData;
+00092     PrivateData *d_data;
+00093 };
+00094 
+00095 #endif 
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__legend__item_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__legend__item_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__legend__item_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__legend__item_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,118 @@ + + + + +Qwt User's Guide: qwt_legend_item.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_legend_item.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_LEGEND_ITEM_H
+00011 #define QWT_LEGEND_ITEM_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_legend.h"
+00015 #include "qwt_text.h"
+00016 #include "qwt_text_label.h"
+00017 #include <qpixmap.h>
+00018 
+00022 class QWT_EXPORT QwtLegendItem: public QwtTextLabel
+00023 {
+00024     Q_OBJECT
+00025 public:
+00026     explicit QwtLegendItem( QWidget *parent = 0 );
+00027     virtual ~QwtLegendItem();
+00028 
+00029     void setItemMode( QwtLegend::LegendItemMode );
+00030     QwtLegend::LegendItemMode itemMode() const;
+00031 
+00032     void setSpacing( int spacing );
+00033     int spacing() const;
+00034 
+00035     virtual void setText( const QwtText & );
+00036 
+00037     void setIdentifier( const QPixmap & );
+00038     QPixmap identifier() const;
+00039 
+00040     void setIdentifierSize( const QSize & );
+00041     QSize identifierSize() const;
+00042 
+00043     virtual QSize sizeHint() const;
+00044 
+00045     bool isChecked() const;
+00046 
+00047 public Q_SLOTS:
+00048     void setChecked( bool on );
+00049 
+00050 Q_SIGNALS:
+00052     void clicked();
+00053 
+00055     void pressed();
+00056 
+00058     void released();
+00059 
+00061     void checked( bool );
+00062 
+00063 protected:
+00064     void setDown( bool );
+00065     bool isDown() const;
+00066 
+00067     virtual void paintEvent( QPaintEvent * );
+00068     virtual void mousePressEvent( QMouseEvent * );
+00069     virtual void mouseReleaseEvent( QMouseEvent * );
+00070     virtual void keyPressEvent( QKeyEvent * );
+00071     virtual void keyReleaseEvent( QKeyEvent * );
+00072 
+00073 private:
+00074     class PrivateData;
+00075     PrivateData *d_data;
+00076 };
+00077 
+00078 #endif 
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__legend__itemmanager_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__legend__itemmanager_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__legend__itemmanager_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__legend__itemmanager_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,88 @@ + + + + +Qwt User's Guide: qwt_legend_itemmanager.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_legend_itemmanager.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_LEGEND_ITEM_MANAGER_H
+00011 #define QWT_LEGEND_ITEM_MANAGER_H
+00012 
+00013 #include "qwt_global.h"
+00014 
+00015 class QwtLegend;
+00016 class QWidget;
+00017 class QRectF;
+00018 class QPainter;
+00019 
+00024 class QWT_EXPORT QwtLegendItemManager
+00025 {
+00026 public:
+00028     QwtLegendItemManager()
+00029     {
+00030     }
+00031 
+00033     virtual ~QwtLegendItemManager()
+00034     {
+00035     }
+00036 
+00042     virtual void updateLegend( QwtLegend *legend ) const = 0;
+00043 
+00050     virtual QWidget *legendItem() const = 0;
+00051 
+00060     virtual void drawLegendIdentifier( QPainter *, const QRectF & ) const
+00061     {
+00062     }
+00063 };
+00064 
+00065 #endif
+00066 
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwtlicense.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwtlicense.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwtlicense.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwtlicense.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,585 @@ + + + + +Qwt User's Guide: Qwt License, Version 1.0 + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ +
+
+
+

Qwt License, Version 1.0

+
+
+
                             Qwt License
+                           Version 1.0, January 1, 2003
+
+The Qwt library and included programs are provided under the terms
+of the GNU LESSER GENERAL PUBLIC LICENSE (LGPL) with the following
+exceptions:
+
+    1. Widgets that are subclassed from Qwt widgets do not
+       constitute a derivative work.
+
+    2. Static linking of applications and widgets to the
+       Qwt library does not constitute a derivative work
+       and does not require the author to provide source
+       code for the application or widget, use the shared
+       Qwt libraries, or link their applications or
+       widgets against a user-supplied version of Qwt.
+
+       If you link the application or widget to a modified
+       version of Qwt, then the changes to Qwt must be 
+       provided under the terms of the LGPL in sections
+       1, 2, and 4.
+
+    3. You do not have to provide a copy of the Qwt license
+       with programs that are linked to the Qwt library, nor
+       do you have to identify the Qwt license in your
+       program or documentation as required by section 6
+       of the LGPL.
+
+
+       However, programs must still identify their use of Qwt.
+       The following example statement can be included in user
+       documentation to satisfy this requirement:
+
+           [program/widget] is based in part on the work of
+           the Qwt project (http://qwt.sf.net).
+
+----------------------------------------------------------------------
+
+
+          GNU LESSER GENERAL PUBLIC LICENSE
+               Version 2.1, February 1999
+
+ Copyright (C) 1991, 1999 Free Software Foundation, Inc.
+     59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+[This is the first released version of the Lesser GPL.  It also counts
+ as the successor of the GNU Library Public License, version 2, hence
+ the version number 2.1.]
+
+                Preamble
+
+  The licenses for most software are designed to take away your
+freedom to share and change it.  By contrast, the GNU General Public
+Licenses are intended to guarantee your freedom to share and change
+free software--to make sure the software is free for all its users.
+
+  This license, the Lesser General Public License, applies to some
+specially designated software packages--typically libraries--of the
+Free Software Foundation and other authors who decide to use it.  You
+can use it too, but we suggest you first think carefully about whether
+this license or the ordinary General Public License is the better
+strategy to use in any particular case, based on the explanations below.
+
+  When we speak of free software, we are referring to freedom of use,
+not price.  Our General Public Licenses are designed to make sure that
+you have the freedom to distribute copies of free software (and charge
+for this service if you wish); that you receive source code or can get
+it if you want it; that you can change the software and use pieces of
+it in new free programs; and that you are informed that you can do
+these things.
+
+  To protect your rights, we need to make restrictions that forbid
+distributors to deny you these rights or to ask you to surrender these
+rights.  These restrictions translate to certain responsibilities for
+you if you distribute copies of the library or if you modify it.
+
+  For example, if you distribute copies of the library, whether gratis
+or for a fee, you must give the recipients all the rights that we gave
+you.  You must make sure that they, too, receive or can get the source
+code.  If you link other code with the library, you must provide
+complete object files to the recipients, so that they can relink them
+with the library after making changes to the library and recompiling
+it.  And you must show them these terms so they know their rights.
+
+  We protect your rights with a two-step method: (1) we copyright the
+library, and (2) we offer you this license, which gives you legal
+permission to copy, distribute and/or modify the library.
+
+  To protect each distributor, we want to make it very clear that
+there is no warranty for the free library.  Also, if the library is
+modified by someone else and passed on, the recipients should know
+that what they have is not the original version, so that the original
+author's reputation will not be affected by problems that might be
+introduced by others.
+
+  Finally, software patents pose a constant threat to the existence of
+any free program.  We wish to make sure that a company cannot
+effectively restrict the users of a free program by obtaining a
+restrictive license from a patent holder.  Therefore, we insist that
+any patent license obtained for a version of the library must be
+consistent with the full freedom of use specified in this license.
+
+  Most GNU software, including some libraries, is covered by the
+ordinary GNU General Public License.  This license, the GNU Lesser
+General Public License, applies to certain designated libraries, and
+is quite different from the ordinary General Public License.  We use
+this license for certain libraries in order to permit linking those
+libraries into non-free programs.
+
+  When a program is linked with a library, whether statically or using
+a shared library, the combination of the two is legally speaking a
+combined work, a derivative of the original library.  The ordinary
+General Public License therefore permits such linking only if the
+entire combination fits its criteria of freedom.  The Lesser General
+Public License permits more lax criteria for linking other code with
+the library.
+
+  We call this license the "Lesser" General Public License because it
+does Less to protect the user's freedom than the ordinary General
+Public License.  It also provides other free software developers Less
+of an advantage over competing non-free programs.  These disadvantages
+are the reason we use the ordinary General Public License for many
+libraries.  However, the Lesser license provides advantages in certain
+special circumstances.
+
+  For example, on rare occasions, there may be a special need to
+encourage the widest possible use of a certain library, so that it becomes
+a de-facto standard.  To achieve this, non-free programs must be
+allowed to use the library.  A more frequent case is that a free
+library does the same job as widely used non-free libraries.  In this
+case, there is little to gain by limiting the free library to free
+software only, so we use the Lesser General Public License.
+
+  In other cases, permission to use a particular library in non-free
+programs enables a greater number of people to use a large body of
+free software.  For example, permission to use the GNU C Library in
+non-free programs enables many more people to use the whole GNU
+operating system, as well as its variant, the GNU/Linux operating
+system.
+
+  Although the Lesser General Public License is Less protective of the
+users' freedom, it does ensure that the user of a program that is
+linked with the Library has the freedom and the wherewithal to run
+that program using a modified version of the Library.
+
+  The precise terms and conditions for copying, distribution and
+modification follow.  Pay close attention to the difference between a
+"work based on the library" and a "work that uses the library".  The
+former contains code derived from the library, whereas the latter must
+be combined with the library in order to run.
+
+          GNU LESSER GENERAL PUBLIC LICENSE
+   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+  0. This License Agreement applies to any software library or other
+program which contains a notice placed by the copyright holder or
+other authorized party saying it may be distributed under the terms of
+this Lesser General Public License (also called "this License").
+Each licensee is addressed as "you".
+
+  A "library" means a collection of software functions and/or data
+prepared so as to be conveniently linked with application programs
+(which use some of those functions and data) to form executables.
+
+  The "Library", below, refers to any such software library or work
+which has been distributed under these terms.  A "work based on the
+Library" means either the Library or any derivative work under
+copyright law: that is to say, a work containing the Library or a
+portion of it, either verbatim or with modifications and/or translated
+straightforwardly into another language.  (Hereinafter, translation is
+included without limitation in the term "modification".)
+
+  "Source code" for a work means the preferred form of the work for
+making modifications to it.  For a library, complete source code means
+all the source code for all modules it contains, plus any associated
+interface definition files, plus the scripts used to control compilation
+and installation of the library.
+
+  Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope.  The act of
+running a program using the Library is not restricted, and output from
+such a program is covered only if its contents constitute a work based
+on the Library (independent of the use of the Library in a tool for
+writing it).  Whether that is true depends on what the Library does
+and what the program that uses the Library does.
+
+  1. You may copy and distribute verbatim copies of the Library's
+complete source code as you receive it, in any medium, provided that
+you conspicuously and appropriately publish on each copy an
+appropriate copyright notice and disclaimer of warranty; keep intact
+all the notices that refer to this License and to the absence of any
+warranty; and distribute a copy of this License along with the
+Library.
+
+  You may charge a fee for the physical act of transferring a copy,
+and you may at your option offer warranty protection in exchange for a
+fee.
+
+  2. You may modify your copy or copies of the Library or any portion
+of it, thus forming a work based on the Library, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+    a) The modified work must itself be a software library.
+
+    b) You must cause the files modified to carry prominent notices
+    stating that you changed the files and the date of any change.
+
+    c) You must cause the whole of the work to be licensed at no
+    charge to all third parties under the terms of this License.
+
+    d) If a facility in the modified Library refers to a function or a
+    table of data to be supplied by an application program that uses
+    the facility, other than as an argument passed when the facility
+    is invoked, then you must make a good faith effort to ensure that,
+    in the event an application does not supply such function or
+    table, the facility still operates, and performs whatever part of
+    its purpose remains meaningful.
+
+    (For example, a function in a library to compute square roots has
+    a purpose that is entirely well-defined independent of the
+    application.  Therefore, Subsection 2d requires that any
+    application-supplied function or table used by this function must
+    be optional: if the application does not supply it, the square
+    root function must still compute square roots.)
+
+These requirements apply to the modified work as a whole.  If
+identifiable sections of that work are not derived from the Library,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works.  But when you
+distribute the same sections as part of a whole which is a work based
+on the Library, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote
+it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Library.
+
+In addition, mere aggregation of another work not based on the Library
+with the Library (or with a work based on the Library) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+  3. You may opt to apply the terms of the ordinary GNU General Public
+License instead of this License to a given copy of the Library.  To do
+this, you must alter all the notices that refer to this License, so
+that they refer to the ordinary GNU General Public License, version 2,
+instead of to this License.  (If a newer version than version 2 of the
+ordinary GNU General Public License has appeared, then you can specify
+that version instead if you wish.)  Do not make any other change in
+these notices.
+
+  Once this change is made in a given copy, it is irreversible for
+that copy, so the ordinary GNU General Public License applies to all
+subsequent copies and derivative works made from that copy.
+
+  This option is useful when you wish to copy part of the code of
+the Library into a program that is not a library.
+
+  4. You may copy and distribute the Library (or a portion or
+derivative of it, under Section 2) in object code or executable form
+under the terms of Sections 1 and 2 above provided that you accompany
+it with the complete corresponding machine-readable source code, which
+must be distributed under the terms of Sections 1 and 2 above on a
+medium customarily used for software interchange.
+
+  If distribution of object code is made by offering access to copy
+from a designated place, then offering equivalent access to copy the
+source code from the same place satisfies the requirement to
+distribute the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+  5. A program that contains no derivative of any portion of the
+Library, but is designed to work with the Library by being compiled or
+linked with it, is called a "work that uses the Library".  Such a
+work, in isolation, is not a derivative work of the Library, and
+therefore falls outside the scope of this License.
+
+  However, linking a "work that uses the Library" with the Library
+creates an executable that is a derivative of the Library (because it
+contains portions of the Library), rather than a "work that uses the
+library".  The executable is therefore covered by this License.
+Section 6 states terms for distribution of such executables.
+
+  When a "work that uses the Library" uses material from a header file
+that is part of the Library, the object code for the work may be a
+derivative work of the Library even though the source code is not.
+Whether this is true is especially significant if the work can be
+linked without the Library, or if the work is itself a library.  The
+threshold for this to be true is not precisely defined by law.
+
+  If such an object file uses only numerical parameters, data
+structure layouts and accessors, and small macros and small inline
+functions (ten lines or less in length), then the use of the object
+file is unrestricted, regardless of whether it is legally a derivative
+work.  (Executables containing this object code plus portions of the
+Library will still fall under Section 6.)
+
+  Otherwise, if the work is a derivative of the Library, you may
+distribute the object code for the work under the terms of Section 6.
+Any executables containing that work also fall under Section 6,
+whether or not they are linked directly with the Library itself.
+
+  6. As an exception to the Sections above, you may also combine or
+link a "work that uses the Library" with the Library to produce a
+work containing portions of the Library, and distribute that work
+under terms of your choice, provided that the terms permit
+modification of the work for the customer's own use and reverse
+engineering for debugging such modifications.
+
+  You must give prominent notice with each copy of the work that the
+Library is used in it and that the Library and its use are covered by
+this License.  You must supply a copy of this License.  If the work
+during execution displays copyright notices, you must include the
+copyright notice for the Library among them, as well as a reference
+directing the user to the copy of this License.  Also, you must do one
+of these things:
+
+    a) Accompany the work with the complete corresponding
+    machine-readable source code for the Library including whatever
+    changes were used in the work (which must be distributed under
+    Sections 1 and 2 above); and, if the work is an executable linked
+    with the Library, with the complete machine-readable "work that
+    uses the Library", as object code and/or source code, so that the
+    user can modify the Library and then relink to produce a modified
+    executable containing the modified Library.  (It is understood
+    that the user who changes the contents of definitions files in the
+    Library will not necessarily be able to recompile the application
+    to use the modified definitions.)
+
+    b) Use a suitable shared library mechanism for linking with the
+    Library.  A suitable mechanism is one that (1) uses at run time a
+    copy of the library already present on the user's computer system,
+    rather than copying library functions into the executable, and (2)
+    will operate properly with a modified version of the library, if
+    the user installs one, as long as the modified version is
+    interface-compatible with the version that the work was made with.
+
+    c) Accompany the work with a written offer, valid for at
+    least three years, to give the same user the materials
+    specified in Subsection 6a, above, for a charge no more
+    than the cost of performing this distribution.
+
+    d) If distribution of the work is made by offering access to copy
+    from a designated place, offer equivalent access to copy the above
+    specified materials from the same place.
+
+    e) Verify that the user has already received a copy of these
+    materials or that you have already sent this user a copy.
+
+  For an executable, the required form of the "work that uses the
+Library" must include any data and utility programs needed for
+reproducing the executable from it.  However, as a special exception,
+the materials to be distributed need not include anything that is
+normally distributed (in either source or binary form) with the major
+components (compiler, kernel, and so on) of the operating system on
+which the executable runs, unless that component itself accompanies
+the executable.
+
+  It may happen that this requirement contradicts the license
+restrictions of other proprietary libraries that do not normally
+accompany the operating system.  Such a contradiction means you cannot
+use both them and the Library together in an executable that you
+distribute.
+
+  7. You may place library facilities that are a work based on the
+Library side-by-side in a single library together with other library
+facilities not covered by this License, and distribute such a combined
+library, provided that the separate distribution of the work based on
+the Library and of the other library facilities is otherwise
+permitted, and provided that you do these two things:
+
+    a) Accompany the combined library with a copy of the same work
+    based on the Library, uncombined with any other library
+    facilities.  This must be distributed under the terms of the
+    Sections above.
+
+    b) Give prominent notice with the combined library of the fact
+    that part of it is a work based on the Library, and explaining
+    where to find the accompanying uncombined form of the same work.
+
+  8. You may not copy, modify, sublicense, link with, or distribute
+the Library except as expressly provided under this License.  Any
+attempt otherwise to copy, modify, sublicense, link with, or
+distribute the Library is void, and will automatically terminate your
+rights under this License.  However, parties who have received copies,
+or rights, from you under this License will not have their licenses
+terminated so long as such parties remain in full compliance.
+
+  9. You are not required to accept this License, since you have not
+signed it.  However, nothing else grants you permission to modify or
+distribute the Library or its derivative works.  These actions are
+prohibited by law if you do not accept this License.  Therefore, by
+modifying or distributing the Library (or any work based on the
+Library), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Library or works based on it.
+
+  10. Each time you redistribute the Library (or any work based on the
+Library), the recipient automatically receives a license from the
+original licensor to copy, distribute, link with or modify the Library
+subject to these terms and conditions.  You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties with
+this License.
+
+  11. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License.  If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Library at all.  For example, if a patent
+license would not permit royalty-free redistribution of the Library by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Library.
+
+If any portion of this section is held invalid or unenforceable under any
+particular circumstance, the balance of the section is intended to apply,
+and the section as a whole is intended to apply in other circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system which is
+implemented by public license practices.  Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+  12. If the distribution and/or use of the Library is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Library under this License may add
+an explicit geographical distribution limitation excluding those countries,
+so that distribution is permitted only in or among countries not thus
+excluded.  In such case, this License incorporates the limitation as if
+written in the body of this License.
+
+  13. The Free Software Foundation may publish revised and/or new
+versions of the Lesser General Public License from time to time.
+Such new versions will be similar in spirit to the present version,
+but may differ in detail to address new problems or concerns.
+
+Each version is given a distinguishing version number.  If the Library
+specifies a version number of this License which applies to it and
+"any later version", you have the option of following the terms and
+conditions either of that version or of any later version published by
+the Free Software Foundation.  If the Library does not specify a
+license version number, you may choose any version ever published by
+the Free Software Foundation.
+
+  14. If you wish to incorporate parts of the Library into other free
+programs whose distribution conditions are incompatible with these,
+write to the author to ask for permission.  For software which is
+copyrighted by the Free Software Foundation, write to the Free
+Software Foundation; we sometimes make exceptions for this.  Our
+decision will be guided by the two goals of preserving the free status
+of all derivatives of our free software and of promoting the sharing
+and reuse of software generally.
+
+                NO WARRANTY
+
+  15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
+WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
+EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
+OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
+KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
+LIBRARY IS WITH YOU.  SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
+THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+  16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
+WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
+AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
+FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
+CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
+LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
+RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
+FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
+SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+DAMAGES.
+
+             END OF TERMS AND CONDITIONS
+
+           How to Apply These Terms to Your New Libraries
+
+  If you develop a new library, and you want it to be of the greatest
+possible use to the public, we recommend making it free software that
+everyone can redistribute and change.  You can do so by permitting
+redistribution under these terms (or, alternatively, under the terms of the
+ordinary General Public License).
+
+  To apply these terms, attach the following notices to the library.  It is
+safest to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least the
+"copyright" line and a pointer to where the full notice is found.
+
+    <one line to give the library's name and a brief idea of what it does.>
+    Copyright (C) <year>  <name of author>
+
+    This library is free software; you can redistribute it and/or
+    modify it under the terms of the GNU Lesser General Public
+    License as published by the Free Software Foundation; either
+    version 2.1 of the License, or (at your option) any later version.
+
+    This library is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+    Lesser General Public License for more details.
+
+    You should have received a copy of the GNU Lesser General Public
+    License along with this library; if not, write to the Free Software
+    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+
+Also add information on how to contact you by electronic and paper mail.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the library, if
+necessary.  Here is a sample; alter the names:
+
+  Yoyodyne, Inc., hereby disclaims all copyright interest in the
+  library `Frob' (a library for tweaking knobs) written by James Random Hacker.
+
+  <signature of Ty Coon>, 1 April 1990
+  Ty Coon, President of Vice
+
+That's all there is to it!
+
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__magnifier_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__magnifier_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__magnifier_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__magnifier_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,123 @@ + + + + +Qwt User's Guide: qwt_magnifier.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_magnifier.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_MAGNIFIER_H
+00011 #define QWT_MAGNIFIER_H 1
+00012 
+00013 #include "qwt_global.h"
+00014 #include <qobject.h>
+00015 
+00016 class QWidget;
+00017 class QMouseEvent;
+00018 class QWheelEvent;
+00019 class QKeyEvent;
+00020 
+00027 class QWT_EXPORT QwtMagnifier: public QObject
+00028 {
+00029     Q_OBJECT
+00030 
+00031 public:
+00032     explicit QwtMagnifier( QWidget * );
+00033     virtual ~QwtMagnifier();
+00034 
+00035     QWidget *parentWidget();
+00036     const QWidget *parentWidget() const;
+00037 
+00038     void setEnabled( bool );
+00039     bool isEnabled() const;
+00040 
+00041     // mouse
+00042     void setMouseFactor( double );
+00043     double mouseFactor() const;
+00044 
+00045     void setMouseButton( int button, int buttonState = Qt::NoButton );
+00046     void getMouseButton( int &button, int &buttonState ) const;
+00047 
+00048     // mouse wheel
+00049     void setWheelFactor( double );
+00050     double wheelFactor() const;
+00051 
+00052     void setWheelButtonState( int buttonState );
+00053     int wheelButtonState() const;
+00054 
+00055     // keyboard
+00056     void setKeyFactor( double );
+00057     double keyFactor() const;
+00058 
+00059     void setZoomInKey( int key, int modifiers );
+00060     void getZoomInKey( int &key, int &modifiers ) const;
+00061 
+00062     void setZoomOutKey( int key, int modifiers );
+00063     void getZoomOutKey( int &key, int &modifiers ) const;
+00064 
+00065     virtual bool eventFilter( QObject *, QEvent * );
+00066 
+00067 protected:
+00072     virtual void rescale( double factor ) = 0;
+00073 
+00074     virtual void widgetMousePressEvent( QMouseEvent * );
+00075     virtual void widgetMouseReleaseEvent( QMouseEvent * );
+00076     virtual void widgetMouseMoveEvent( QMouseEvent * );
+00077     virtual void widgetWheelEvent( QWheelEvent * );
+00078     virtual void widgetKeyPressEvent( QKeyEvent * );
+00079     virtual void widgetKeyReleaseEvent( QKeyEvent * );
+00080 
+00081 private:
+00082     class PrivateData;
+00083     PrivateData *d_data;
+00084 };
+00085 
+00086 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__math_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__math_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__math_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__math_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,212 @@ + + + + +Qwt User's Guide: qwt_math.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_math.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_MATH_H
+00011 #define QWT_MATH_H
+00012 
+00013 #include "qwt_global.h"
+00014 
+00015 #if defined(_MSC_VER)
+00016 /*
+00017   Microsoft says:
+00018 
+00019   Define _USE_MATH_DEFINES before including math.h to expose these macro
+00020   definitions for common math constants.  These are placed under an #ifdef
+00021   since these commonly-defined names are not part of the C/C++ standards.
+00022 */
+00023 #define _USE_MATH_DEFINES 1
+00024 #endif
+00025 
+00026 #include <qpoint.h>
+00027 #include <qmath.h>
+00028 #include "qwt_global.h"
+00029 
+00030 #ifndef LOG10_2
+00031 #define LOG10_2     0.30102999566398119802  /* log10(2) */
+00032 #endif
+00033 
+00034 #ifndef LOG10_3
+00035 #define LOG10_3     0.47712125471966243540  /* log10(3) */
+00036 #endif
+00037 
+00038 #ifndef LOG10_5
+00039 #define LOG10_5     0.69897000433601885749  /* log10(5) */
+00040 #endif
+00041 
+00042 #ifndef M_2PI
+00043 #define M_2PI       6.28318530717958623200  /* 2 pi */
+00044 #endif
+00045 
+00046 #ifndef LOG_MIN
+00047 
+00048 #define LOG_MIN 1.0e-100
+00049 #endif
+00050 
+00051 #ifndef LOG_MAX
+00052 
+00053 #define LOG_MAX 1.0e100
+00054 #endif
+00055 
+00056 #ifndef M_E
+00057 #define M_E            2.7182818284590452354   /* e */
+00058 #endif
+00059 
+00060 #ifndef M_LOG2E
+00061 #define M_LOG2E 1.4426950408889634074   /* log_2 e */
+00062 #endif
+00063 
+00064 #ifndef M_LOG10E
+00065 #define M_LOG10E    0.43429448190325182765  /* log_10 e */
+00066 #endif
+00067 
+00068 #ifndef M_LN2
+00069 #define M_LN2       0.69314718055994530942  /* log_e 2 */
+00070 #endif
+00071 
+00072 #ifndef M_LN10
+00073 #define M_LN10         2.30258509299404568402  /* log_e 10 */
+00074 #endif
+00075 
+00076 #ifndef M_PI
+00077 #define M_PI        3.14159265358979323846  /* pi */
+00078 #endif
+00079 
+00080 #ifndef M_PI_2
+00081 #define M_PI_2      1.57079632679489661923  /* pi/2 */
+00082 #endif
+00083 
+00084 #ifndef M_PI_4
+00085 #define M_PI_4      0.78539816339744830962  /* pi/4 */
+00086 #endif
+00087 
+00088 #ifndef M_1_PI
+00089 #define M_1_PI      0.31830988618379067154  /* 1/pi */
+00090 #endif
+00091 
+00092 #ifndef M_2_PI
+00093 #define M_2_PI      0.63661977236758134308  /* 2/pi */
+00094 #endif
+00095 
+00096 #ifndef M_2_SQRTPI
+00097 #define M_2_SQRTPI  1.12837916709551257390  /* 2/sqrt(pi) */
+00098 #endif
+00099 
+00100 #ifndef M_SQRT2
+00101 #define M_SQRT2 1.41421356237309504880  /* sqrt(2) */
+00102 #endif
+00103 
+00104 #ifndef M_SQRT1_2
+00105 #define M_SQRT1_2   0.70710678118654752440  /* 1/sqrt(2) */
+00106 #endif
+00107 
+00108 QWT_EXPORT double qwtGetMin( const double *array, int size );
+00109 QWT_EXPORT double qwtGetMax( const double *array, int size );
+00110 
+00123 inline int qwtFuzzyCompare( double value1, double value2, double intervalSize )
+00124 {
+00125     const double eps = qAbs( 1.0e-6 * intervalSize );
+00126 
+00127     if ( value2 - value1 > eps )
+00128         return -1;
+00129 
+00130     if ( value1 - value2 > eps )
+00131         return 1;
+00132 
+00133     return 0;
+00134 }
+00135 
+00136 
+00137 inline bool qwtFuzzyGreaterOrEqual( double d1, double d2 )
+00138 {
+00139     return ( d1 >= d2 ) || qFuzzyCompare( d1, d2 );
+00140 }
+00141 
+00142 inline bool qwtFuzzyLessOrEqual( double d1, double d2 )
+00143 {
+00144     return ( d1 <= d2 ) || qFuzzyCompare( d1, d2 );
+00145 }
+00146 
+00148 inline int qwtSign( double x )
+00149 {
+00150     if ( x > 0.0 )
+00151         return 1;
+00152     else if ( x < 0.0 )
+00153         return ( -1 );
+00154     else
+00155         return 0;
+00156 }
+00157 
+00159 inline double qwtSqr( double x )
+00160 {
+00161     return x * x;
+00162 }
+00163 
+00165 inline double qwtRoundF(double d)
+00166 { 
+00167     return ::floor( d + 0.5 );
+00168 }
+00169 
+00171 inline double qwtFloorF(double d)
+00172 { 
+00173     return ::floor( d );
+00174 }
+00175 
+00177 inline double qwtCeilF(double d)
+00178 { 
+00179     return ::ceil( d );
+00180 }
+00181 
+00182 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__mathml__text__engine_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__mathml__text__engine_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__mathml__text__engine_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__mathml__text__engine_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,85 @@ + + + + +Qwt User's Guide: qwt_mathml_text_engine.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_mathml_text_engine.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2003   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 // vim: expandtab
+00011 
+00012 #ifndef QWT_MATHML_TEXT_ENGINE_H
+00013 #define QWT_MATHML_TEXT_ENGINE_H 1
+00014 
+00015 #include "qwt_text_engine.h"
+00016 
+00032 class QWT_EXPORT QwtMathMLTextEngine: public QwtTextEngine
+00033 {
+00034 public:
+00035     QwtMathMLTextEngine();
+00036     virtual ~QwtMathMLTextEngine();
+00037 
+00038     virtual double heightForWidth(const QFont &font, int flags, 
+00039         const QString &text, double width) const;
+00040 
+00041     virtual QSizeF textSize(const QFont &font, int flags,
+00042         const QString &text) const;
+00043 
+00044     virtual void draw(QPainter *painter, const QRectF &rect,
+00045         int flags, const QString &text) const;
+00046 
+00047     virtual bool mightRender(const QString &) const;
+00048 
+00049     virtual void textMargins(const QFont &, const QString &,
+00050         double &left, double &right, double &top, double &bottom) const;
+00051 };
+00052 
+00053 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__matrix__raster__data_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__matrix__raster__data_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__matrix__raster__data_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__matrix__raster__data_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,98 @@ + + + + +Qwt User's Guide: qwt_matrix_raster_data.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_matrix_raster_data.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_MATRIX_RASTER_DATA_H
+00011 #define QWT_MATRIX_RASTER_DATA_H 1
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_raster_data.h"
+00015 #include <qvector.h>
+00016 
+00025 class QWT_EXPORT QwtMatrixRasterData: public QwtRasterData
+00026 {
+00027 public:
+00032     enum ResampleMode
+00033     {
+00038         NearestNeighbour,
+00039 
+00044         BilinearInterpolation
+00045     };
+00046 
+00047     QwtMatrixRasterData();
+00048     virtual ~QwtMatrixRasterData();
+00049 
+00050     void setResampleMode(ResampleMode mode);
+00051     ResampleMode resampleMode() const;
+00052 
+00053     virtual void setInterval( Qt::Axis, const QwtInterval & );
+00054     void setValueMatrix( const QVector<double> &values, size_t numColumns );
+00055     
+00056     const QVector<double> valueMatrix() const;
+00057     size_t numColumns() const;
+00058     size_t numRows() const;
+00059 
+00060     virtual QRectF pixelHint( const QRectF & ) const;
+00061 
+00062     virtual double value( double x, double y ) const;
+00063 
+00064 private:
+00065     void update();
+00066 
+00067     class PrivateData;
+00068     PrivateData *d_data;
+00069 };
+00070 
+00071 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__mml__document_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__mml__document_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__mml__document_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__mml__document_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,92 @@ + + + + +Qwt User's Guide: qwt_mml_document.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_mml_document.h

+
+
+
00001 #ifndef _QWT_MML_DOCUMENT_H_
+00002 #define _QWT_MML_DOCUMENT_H_ 1
+00003 
+00004 #include <qwt_global.h>
+00005 #include <QString>
+00006 
+00007 class QPainter;
+00008 class QPoint;
+00009 
+00010 class QwtMmlDocument;
+00011 
+00012 class QWT_EXPORT QwtMathMLDocument
+00013 {
+00014 public:
+00015     enum MmlFont
+00016     {
+00017         NormalFont,
+00018         FrakturFont,
+00019         SansSerifFont,
+00020         ScriptFont,
+00021         MonospaceFont,
+00022         DoublestruckFont
+00023     };
+00024 
+00025     QwtMathMLDocument();
+00026     ~QwtMathMLDocument();
+00027 
+00028     void clear();
+00029 
+00030     bool setContent( QString text, QString *errorMsg = 0,
+00031                      int *errorLine = 0, int *errorColumn = 0 );
+00032     void paint( QPainter *p, const QPoint &pos ) const;
+00033     QSize size() const;
+00034 
+00035     QString fontName( MmlFont type ) const;
+00036     void setFontName( MmlFont type, const QString &name );
+00037 
+00038     int baseFontPointSize() const;
+00039     void setBaseFontPointSize( int size );
+00040 
+00041 private:
+00042     QwtMmlDocument *m_doc;
+00043 };
+00044 
+00045 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__null__paintdevice_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__null__paintdevice_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__null__paintdevice_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__null__paintdevice_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,122 @@ + + + + +Qwt User's Guide: qwt_null_paintdevice.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_null_paintdevice.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_NULL_PAINT_DEVICE_H
+00011 #define QWT_NULL_PAINT_DEVICE_H 1
+00012 
+00013 #include "qwt_global.h"
+00014 #include <qpaintdevice.h>
+00015 #include <qpaintengine.h>
+00016 
+00031 class QWT_EXPORT QwtNullPaintDevice: public QPaintDevice
+00032 {
+00033 public:
+00034     QwtNullPaintDevice( QPaintEngine::PaintEngineFeatures );
+00035     QwtNullPaintDevice( const QSize &size,
+00036         QPaintEngine::PaintEngineFeatures );
+00037 
+00038     virtual ~QwtNullPaintDevice();
+00039 
+00040     void setSize( const QSize &);
+00041     QSize size() const;
+00042 
+00043     virtual QPaintEngine *paintEngine() const;
+00044     virtual int metric( PaintDeviceMetric metric ) const;
+00045 
+00046     virtual void drawRects(const QRect *, int );
+00047     virtual void drawRects(const QRectF *, int );
+00048 
+00049     virtual void drawLines(const QLine *, int );
+00050     virtual void drawLines(const QLineF *, int );
+00051 
+00052     virtual void drawEllipse(const QRectF &);
+00053     virtual void drawEllipse(const QRect &);
+00054 
+00055     virtual void drawPath(const QPainterPath &);
+00056 
+00057     virtual void drawPoints(const QPointF *, int );
+00058     virtual void drawPoints(const QPoint *, int );
+00059 
+00060     virtual void drawPolygon(
+00061         const QPointF *, int , QPaintEngine::PolygonDrawMode );
+00062 
+00063     virtual void drawPolygon(
+00064         const QPoint *, int , QPaintEngine::PolygonDrawMode );
+00065 
+00066     virtual void drawPixmap(const QRectF &,
+00067         const QPixmap &, const QRectF &);
+00068 
+00069     virtual void drawTextItem(const QPointF &, const QTextItem &);
+00070 
+00071     virtual void drawTiledPixmap(const QRectF &,
+00072         const QPixmap &, const QPointF &s);
+00073 
+00074     virtual void drawImage(const QRectF &,
+00075         const QImage &, const QRectF &, Qt::ImageConversionFlags );
+00076 
+00077     virtual void updateState( const QPaintEngineState &state );
+00078 
+00079 private:
+00080     void init( QPaintEngine::PaintEngineFeatures );
+00081 
+00082     class PaintEngine;
+00083     PaintEngine *d_engine;
+00084 
+00085     class PrivateData;
+00086     PrivateData *d_data;
+00087 };
+00088 
+00089 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__painter_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__painter_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__painter_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__painter_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,175 @@ + + + + +Qwt User's Guide: qwt_painter.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_painter.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_PAINTER_H
+00011 #define QWT_PAINTER_H
+00012 
+00013 #include "qwt_global.h"
+00014 
+00015 #include <qpoint.h>
+00016 #include <qrect.h>
+00017 #include <qpen.h>
+00018 #include <qline.h>
+00019 
+00020 class QPainter;
+00021 class QBrush;
+00022 class QColor;
+00023 class QWidget;
+00024 class QPolygonF;
+00025 class QRectF;
+00026 class QImage;
+00027 class QPixmap;
+00028 class QwtScaleMap;
+00029 class QwtColorMap;
+00030 class QwtInterval;
+00031 
+00032 class QPalette;
+00033 class QTextDocument;
+00034 class QPainterPath;
+00035 
+00039 class QWT_EXPORT QwtPainter
+00040 {
+00041 public:
+00042     static void setPolylineSplitting( bool );
+00043     static bool polylineSplitting();
+00044 
+00045     static void setRoundingAlignment( bool );
+00046     static bool roundingAlignment();
+00047     static bool roundingAlignment(QPainter *);
+00048 
+00049     static void drawText( QPainter *, double x, double y, const QString & );
+00050     static void drawText( QPainter *, const QPointF &, const QString & );
+00051     static void drawText( QPainter *, double x, double y, double w, double h,
+00052         int flags, const QString & );
+00053     static void drawText( QPainter *, const QRectF &, 
+00054         int flags, const QString & );
+00055 
+00056 #ifndef QT_NO_RICHTEXT
+00057     static void drawSimpleRichText( QPainter *, const QRectF &,
+00058         int flags, const QTextDocument & );
+00059 #endif
+00060 
+00061     static void drawRect( QPainter *, double x, double y, double w, double h );
+00062     static void drawRect( QPainter *, const QRectF &rect );
+00063     static void fillRect( QPainter *, const QRectF &, const QBrush & );
+00064 
+00065     static void drawEllipse( QPainter *, const QRectF & );
+00066     static void drawPie( QPainter *, const QRectF & r, int a, int alen );
+00067 
+00068     static void drawLine( QPainter *, double x1, double y1, double x2, double y2 );
+00069     static void drawLine( QPainter *, const QPointF &p1, const QPointF &p2 );
+00070     static void drawLine( QPainter *, const QLineF & );
+00071 
+00072     static void drawPolygon( QPainter *, const QPolygonF &pa );
+00073     static void drawPolyline( QPainter *, const QPolygonF &pa );
+00074     static void drawPolyline( QPainter *, const QPointF *, int pointCount );
+00075 
+00076     static void drawPoint( QPainter *, double x, double y );
+00077     static void drawPoint( QPainter *, const QPointF & );
+00078 
+00079     static void drawPath( QPainter *, const QPainterPath & );
+00080     static void drawImage( QPainter *, const QRectF &, const QImage & );
+00081     static void drawPixmap( QPainter *, const QRectF &, const QPixmap & );
+00082 
+00083     static void drawRoundedFrame( QPainter *, 
+00084         const QRectF &, double xRadius, double yRadius,
+00085         const QPalette &, int lineWidth, int frameStyle );
+00086 
+00087     static void drawFocusRect( QPainter *, QWidget * );
+00088     static void drawFocusRect( QPainter *, QWidget *, const QRect & );
+00089 
+00090     static void drawColorBar( QPainter *painter,
+00091         const QwtColorMap &, const QwtInterval &,
+00092         const QwtScaleMap &, Qt::Orientation, const QRectF & );
+00093 
+00094     static bool isAligning( QPainter *painter );
+00095 
+00096 private:
+00097     static bool d_polylineSplitting;
+00098     static bool d_roundingAlignment;
+00099 };
+00100 
+00102 inline void QwtPainter::drawPoint( QPainter *painter, double x, double y )
+00103 {
+00104     QwtPainter::drawPoint( painter, QPointF( x, y ) );
+00105 }
+00106 
+00108 inline void QwtPainter::drawLine( QPainter *painter,
+00109     double x1, double y1, double x2, double y2 )
+00110 {
+00111     QwtPainter::drawLine( painter, QPointF( x1, y1 ), QPointF( x2, y2 ) );
+00112 }
+00113 
+00115 inline void QwtPainter::drawLine( QPainter *painter, const QLineF &line )
+00116 {
+00117     QwtPainter::drawLine( painter, line.p1(), line.p2() );
+00118 }
+00119 
+00124 inline bool QwtPainter::polylineSplitting()
+00125 {
+00126     return d_polylineSplitting;
+00127 }
+00128 
+00136 inline bool QwtPainter::roundingAlignment()
+00137 {
+00138     return d_roundingAlignment;
+00139 }
+00140 
+00145 inline bool QwtPainter::roundingAlignment(QPainter *painter)
+00146 {
+00147     return d_roundingAlignment && isAligning(painter);
+00148 }
+00149 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__panner_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__panner_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__panner_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__panner_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,118 @@ + + + + +Qwt User's Guide: qwt_panner.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_panner.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_PANNER_H
+00011 #define QWT_PANNER_H 1
+00012 
+00013 #include "qwt_global.h"
+00014 #include <qwidget.h>
+00015 #include <qpixmap.h>
+00016 
+00017 class QCursor;
+00018 
+00035 class QWT_EXPORT QwtPanner: public QWidget
+00036 {
+00037     Q_OBJECT
+00038 
+00039 public:
+00040     QwtPanner( QWidget* parent );
+00041     virtual ~QwtPanner();
+00042 
+00043     void setEnabled( bool );
+00044     bool isEnabled() const;
+00045 
+00046     void setMouseButton( int button, int buttonState = Qt::NoButton );
+00047     void getMouseButton( int &button, int &buttonState ) const;
+00048     void setAbortKey( int key, int state = Qt::NoButton );
+00049     void getAbortKey( int &key, int &state ) const;
+00050 
+00051     void setCursor( const QCursor & );
+00052     const QCursor cursor() const;
+00053 
+00054     void setOrientations( Qt::Orientations );
+00055     Qt::Orientations orientations() const;
+00056 
+00057     bool isOrientationEnabled( Qt::Orientation ) const;
+00058 
+00059     virtual bool eventFilter( QObject *, QEvent * );
+00060 
+00061 Q_SIGNALS:
+00068     void panned( int dx, int dy );
+00069 
+00077     void moved( int dx, int dy );
+00078 
+00079 protected:
+00080     virtual void widgetMousePressEvent( QMouseEvent * );
+00081     virtual void widgetMouseReleaseEvent( QMouseEvent * );
+00082     virtual void widgetMouseMoveEvent( QMouseEvent * );
+00083     virtual void widgetKeyPressEvent( QKeyEvent * );
+00084     virtual void widgetKeyReleaseEvent( QKeyEvent * );
+00085 
+00086     virtual void paintEvent( QPaintEvent * );
+00087 
+00088     virtual QBitmap contentsMask() const;
+00089     virtual QPixmap grab() const;
+00090 
+00091 private:
+00092 #ifndef QT_NO_CURSOR
+00093     void showCursor( bool );
+00094 #endif
+00095 
+00096     class PrivateData;
+00097     PrivateData *d_data;
+00098 };
+00099 
+00100 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__picker_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__picker_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__picker_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__picker_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,234 @@ + + + + +Qwt User's Guide: qwt_picker.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_picker.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_PICKER
+00011 #define QWT_PICKER 1
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_text.h"
+00015 #include "qwt_event_pattern.h"
+00016 #include <qobject.h>
+00017 #include <qpen.h>
+00018 #include <qfont.h>
+00019 #include <qrect.h>
+00020 
+00021 class QWidget;
+00022 class QMouseEvent;
+00023 class QWheelEvent;
+00024 class QKeyEvent;
+00025 class QwtPickerMachine;
+00026 
+00093 class QWT_EXPORT QwtPicker: public QObject, public QwtEventPattern
+00094 {
+00095     Q_OBJECT
+00096 
+00097     Q_ENUMS( RubberBand )
+00098     Q_ENUMS( DisplayMode )
+00099     Q_ENUMS( ResizeMode )
+00100 
+00101     Q_PROPERTY( bool isEnabled READ isEnabled WRITE setEnabled )
+00102     Q_PROPERTY( ResizeMode resizeMode READ resizeMode WRITE setResizeMode )
+00103 
+00104     Q_PROPERTY( DisplayMode trackerMode READ trackerMode WRITE setTrackerMode )
+00105     Q_PROPERTY( QPen trackerPen READ trackerPen WRITE setTrackerPen )
+00106     Q_PROPERTY( QFont trackerFont READ trackerFont WRITE setTrackerFont )
+00107 
+00108     Q_PROPERTY( RubberBand rubberBand READ rubberBand WRITE setRubberBand )
+00109     Q_PROPERTY( QPen rubberBandPen READ rubberBandPen WRITE setRubberBandPen )
+00110 
+00111 public:
+00119     enum RubberBand
+00120     {
+00122         NoRubberBand = 0,
+00123 
+00125         HLineRubberBand,
+00126 
+00128         VLineRubberBand,
+00129 
+00131         CrossRubberBand,
+00132 
+00134         RectRubberBand,
+00135 
+00137         EllipseRubberBand,
+00138 
+00140         PolygonRubberBand,
+00141 
+00146         UserRubberBand = 100
+00147     };
+00148 
+00153     enum DisplayMode
+00154     {
+00156         AlwaysOff,
+00157 
+00159         AlwaysOn,
+00160 
+00162         ActiveOnly
+00163     };
+00164 
+00173     enum ResizeMode
+00174     {
+00176         Stretch,
+00177 
+00179         KeepSize
+00180     };
+00181 
+00182     explicit QwtPicker( QWidget *parent );
+00183     explicit QwtPicker( RubberBand rubberBand,
+00184                         DisplayMode trackerMode, QWidget * );
+00185 
+00186     virtual ~QwtPicker();
+00187 
+00188     void setStateMachine( QwtPickerMachine * );
+00189     const QwtPickerMachine *stateMachine() const;
+00190     QwtPickerMachine *stateMachine();
+00191 
+00192     void setRubberBand( RubberBand );
+00193     RubberBand rubberBand() const;
+00194 
+00195     void setTrackerMode( DisplayMode );
+00196     DisplayMode trackerMode() const;
+00197 
+00198     void setResizeMode( ResizeMode );
+00199     ResizeMode resizeMode() const;
+00200 
+00201     void setRubberBandPen( const QPen & );
+00202     QPen rubberBandPen() const;
+00203 
+00204     void setTrackerPen( const QPen & );
+00205     QPen trackerPen() const;
+00206 
+00207     void setTrackerFont( const QFont & );
+00208     QFont trackerFont() const;
+00209 
+00210     bool isEnabled() const;
+00211     bool isActive() const;
+00212 
+00213     virtual bool eventFilter( QObject *, QEvent * );
+00214 
+00215     QWidget *parentWidget();
+00216     const QWidget *parentWidget() const;
+00217 
+00218     virtual QRect pickRect() const;
+00219 
+00220     virtual void drawRubberBand( QPainter * ) const;
+00221     virtual void drawTracker( QPainter * ) const;
+00222 
+00223     virtual QwtText trackerText( const QPoint &pos ) const;
+00224     QPoint trackerPosition() const;
+00225     virtual QRect trackerRect( const QFont & ) const;
+00226 
+00227     QPolygon selection() const;
+00228 
+00229 public Q_SLOTS:
+00230     void setEnabled( bool );
+00231 
+00232 Q_SIGNALS:
+00240     void activated( bool on );
+00241 
+00248     void selected( const QPolygon &polygon );
+00249 
+00256     void appended( const QPoint &pos );
+00257 
+00265     void moved( const QPoint &pos );
+00266 
+00273     void removed( const QPoint &pos );
+00281     void changed( const QPolygon &selection );
+00282 
+00283 protected:
+00284     virtual QPolygon adjustedPoints( const QPolygon & ) const;
+00285 
+00286     virtual void transition( const QEvent * );
+00287 
+00288     virtual void begin();
+00289     virtual void append( const QPoint & );
+00290     virtual void move( const QPoint & );
+00291     virtual void remove();
+00292     virtual bool end( bool ok = true );
+00293 
+00294     virtual bool accept( QPolygon & ) const;
+00295     virtual void reset();
+00296 
+00297     virtual void widgetMousePressEvent( QMouseEvent * );
+00298     virtual void widgetMouseReleaseEvent( QMouseEvent * );
+00299     virtual void widgetMouseDoubleClickEvent( QMouseEvent * );
+00300     virtual void widgetMouseMoveEvent( QMouseEvent * );
+00301     virtual void widgetWheelEvent( QWheelEvent * );
+00302     virtual void widgetKeyPressEvent( QKeyEvent * );
+00303     virtual void widgetKeyReleaseEvent( QKeyEvent * );
+00304     virtual void widgetEnterEvent( QEvent * );
+00305     virtual void widgetLeaveEvent( QEvent * );
+00306 
+00307     virtual void stretchSelection( const QSize &oldSize,
+00308                                    const QSize &newSize );
+00309 
+00310     virtual void updateDisplay();
+00311 
+00312     const QWidget *rubberBandWidget() const;
+00313     const QWidget *trackerWidget() const;
+00314 
+00315     const QPolygon &pickedPoints() const;
+00316 
+00317 private:
+00318     void init( QWidget *, RubberBand rubberBand, DisplayMode trackerMode );
+00319 
+00320     void setMouseTracking( bool );
+00321 
+00322     class PickerWidget;
+00323     class PrivateData;
+00324     PrivateData *d_data;
+00325 };
+00326 
+00327 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__picker__machine_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__picker__machine_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__picker__machine_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__picker__machine_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,160 @@ + + + + +Qwt User's Guide: qwt_picker_machine.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_picker_machine.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_PICKER_MACHINE
+00011 #define QWT_PICKER_MACHINE 1
+00012 
+00013 #include "qwt_global.h"
+00014 #include <qlist.h>
+00015 
+00016 class QEvent;
+00017 class QwtEventPattern;
+00018 
+00028 class QWT_EXPORT QwtPickerMachine
+00029 {
+00030 public:
+00035     enum SelectionType
+00036     {
+00038         NoSelection = -1,
+00039 
+00041         PointSelection,
+00042 
+00044         RectSelection,
+00045 
+00047         PolygonSelection
+00048     };
+00049 
+00051     enum Command
+00052     {
+00053         Begin,
+00054         Append,
+00055         Move,
+00056         Remove,
+00057         End
+00058     };
+00059 
+00060     QwtPickerMachine( SelectionType );
+00061     virtual ~QwtPickerMachine();
+00062 
+00064     virtual QList<Command> transition(
+00065         const QwtEventPattern &, const QEvent * ) = 0;
+00066     void reset();
+00067 
+00068     int state() const;
+00069     void setState( int );
+00070 
+00071     SelectionType selectionType() const;
+00072 
+00073 private:
+00074     const SelectionType d_selectionType;
+00075     int d_state;
+00076 };
+00077 
+00085 class QWT_EXPORT QwtPickerTrackerMachine: public QwtPickerMachine
+00086 {
+00087 public:
+00088     QwtPickerTrackerMachine();
+00089 
+00090     virtual QList<Command> transition(
+00091         const QwtEventPattern &, const QEvent * );
+00092 };
+00093 
+00102 class QWT_EXPORT QwtPickerClickPointMachine: public QwtPickerMachine
+00103 {
+00104 public:
+00105     QwtPickerClickPointMachine();
+00106 
+00107     virtual QList<Command> transition(
+00108         const QwtEventPattern &, const QEvent * );
+00109 };
+00110 
+00118 class QWT_EXPORT QwtPickerDragPointMachine: public QwtPickerMachine
+00119 {
+00120 public:
+00121     QwtPickerDragPointMachine();
+00122 
+00123     virtual QList<Command> transition(
+00124         const QwtEventPattern &, const QEvent * );
+00125 };
+00126 
+00140 class QWT_EXPORT QwtPickerClickRectMachine: public QwtPickerMachine
+00141 {
+00142 public:
+00143     QwtPickerClickRectMachine();
+00144 
+00145     virtual QList<Command> transition(
+00146         const QwtEventPattern &, const QEvent * );
+00147 };
+00148 
+00161 class QWT_EXPORT QwtPickerDragRectMachine: public QwtPickerMachine
+00162 {
+00163 public:
+00164     QwtPickerDragRectMachine();
+00165 
+00166     virtual QList<Command> transition(
+00167         const QwtEventPattern &, const QEvent * );
+00168 };
+00169 
+00181 class QWT_EXPORT QwtPickerPolygonMachine: public QwtPickerMachine
+00182 {
+00183 public:
+00184     QwtPickerPolygonMachine();
+00185 
+00186     virtual QList<Command> transition(
+00187         const QwtEventPattern &, const QEvent * );
+00188 };
+00189 
+00190 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot_8h_source.html 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,251 @@ + + + + +Qwt User's Guide: qwt_plot.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_plot.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_PLOT_H
+00011 #define QWT_PLOT_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_text.h"
+00015 #include "qwt_plot_dict.h"
+00016 #include "qwt_scale_map.h"
+00017 #include "qwt_interval.h"
+00018 #include <qframe.h>
+00019 
+00020 class QwtPlotLayout;
+00021 class QwtLegend;
+00022 class QwtScaleWidget;
+00023 class QwtScaleEngine;
+00024 class QwtScaleDiv;
+00025 class QwtScaleDraw;
+00026 class QwtTextLabel;
+00027 class QwtPlotCanvas;
+00028 
+00070 class QWT_EXPORT QwtPlot: public QFrame, public QwtPlotDict
+00071 {
+00072     Q_OBJECT
+00073     Q_PROPERTY( QString propertiesDocument
+00074         READ grabProperties WRITE applyProperties )
+00075 
+00076 public:
+00078     enum Axis
+00079     {
+00081         yLeft,
+00082 
+00084         yRight,
+00085 
+00087         xBottom,
+00088 
+00090         xTop,
+00091 
+00093         axisCnt
+00094     };
+00095 
+00103     enum LegendPosition
+00104     {
+00106         LeftLegend,
+00107 
+00109         RightLegend,
+00110 
+00112         BottomLegend,
+00113 
+00115         TopLegend,
+00116 
+00123         ExternalLegend
+00124     };
+00125 
+00126     explicit QwtPlot( QWidget * = NULL );
+00127     explicit QwtPlot( const QwtText &title, QWidget *p = NULL );
+00128 
+00129     virtual ~QwtPlot();
+00130 
+00131     void applyProperties( const QString & );
+00132     QString grabProperties() const;
+00133 
+00134     void setAutoReplot( bool tf = true );
+00135     bool autoReplot() const;
+00136 
+00137     // Layout
+00138 
+00139     QwtPlotLayout *plotLayout();
+00140     const QwtPlotLayout *plotLayout() const;
+00141 
+00142     // Title
+00143 
+00144     void setTitle( const QString & );
+00145     void setTitle( const QwtText &t );
+00146     QwtText title() const;
+00147 
+00148     QwtTextLabel *titleLabel();
+00149     const QwtTextLabel *titleLabel() const;
+00150 
+00151     // Canvas
+00152 
+00153     QwtPlotCanvas *canvas();
+00154     const QwtPlotCanvas *canvas() const;
+00155 
+00156     void setCanvasBackground( const QBrush & );
+00157     QBrush canvasBackground() const;
+00158 
+00159     void setCanvasLineWidth( int w );
+00160     int canvasLineWidth() const;
+00161 
+00162     virtual QwtScaleMap canvasMap( int axisId ) const;
+00163 
+00164     double invTransform( int axisId, int pos ) const;
+00165     double transform( int axisId, double value ) const;
+00166 
+00167     // Axes
+00168 
+00169     QwtScaleEngine *axisScaleEngine( int axisId );
+00170     const QwtScaleEngine *axisScaleEngine( int axisId ) const;
+00171     void setAxisScaleEngine( int axisId, QwtScaleEngine * );
+00172 
+00173     void setAxisAutoScale( int axisId, bool on = true );
+00174     bool axisAutoScale( int axisId ) const;
+00175 
+00176     void enableAxis( int axisId, bool tf = true );
+00177     bool axisEnabled( int axisId ) const;
+00178 
+00179     void setAxisFont( int axisId, const QFont &f );
+00180     QFont axisFont( int axisId ) const;
+00181 
+00182     void setAxisScale( int axisId, double min, double max, double step = 0 );
+00183     void setAxisScaleDiv( int axisId, const QwtScaleDiv & );
+00184     void setAxisScaleDraw( int axisId, QwtScaleDraw * );
+00185 
+00186     double axisStepSize( int axisId ) const;
+00187     QwtInterval axisInterval( int axisId ) const;
+00188 
+00189     const QwtScaleDiv *axisScaleDiv( int axisId ) const;
+00190     QwtScaleDiv *axisScaleDiv( int axisId );
+00191 
+00192     const QwtScaleDraw *axisScaleDraw( int axisId ) const;
+00193     QwtScaleDraw *axisScaleDraw( int axisId );
+00194 
+00195     const QwtScaleWidget *axisWidget( int axisId ) const;
+00196     QwtScaleWidget *axisWidget( int axisId );
+00197 
+00198     void setAxisLabelAlignment( int axisId, Qt::Alignment );
+00199     void setAxisLabelRotation( int axisId, double rotation );
+00200 
+00201     void setAxisTitle( int axisId, const QString & );
+00202     void setAxisTitle( int axisId, const QwtText & );
+00203     QwtText axisTitle( int axisId ) const;
+00204 
+00205     void setAxisMaxMinor( int axisId, int maxMinor );
+00206     int axisMaxMinor( int axisId ) const;
+00207 
+00208     void setAxisMaxMajor( int axisId, int maxMajor );
+00209     int axisMaxMajor( int axisId ) const;
+00210 
+00211     // Legend
+00212 
+00213     void insertLegend( QwtLegend *, LegendPosition = QwtPlot::RightLegend,
+00214         double ratio = -1.0 );
+00215 
+00216     QwtLegend *legend();
+00217     const QwtLegend *legend() const;
+00218 
+00219     // Misc
+00220 
+00221     virtual QSize sizeHint() const;
+00222     virtual QSize minimumSizeHint() const;
+00223 
+00224     virtual void updateLayout();
+00225     virtual void drawCanvas( QPainter * );
+00226 
+00227     void updateAxes();
+00228 
+00229     virtual bool event( QEvent * );
+00230 
+00231     virtual void drawItems( QPainter *, const QRectF &,
+00232         const QwtScaleMap maps[axisCnt] ) const;
+00233 
+00234 Q_SIGNALS:
+00245     void legendClicked( QwtPlotItem *plotItem );
+00246 
+00259     void legendChecked( QwtPlotItem *plotItem, bool on );
+00260 
+00261 public Q_SLOTS:
+00262     virtual void replot();
+00263     void autoRefresh();
+00264 
+00265 protected Q_SLOTS:
+00266     virtual void legendItemClicked();
+00267     virtual void legendItemChecked( bool );
+00268 
+00269 protected:
+00270     static bool axisValid( int axisId );
+00271 
+00272     virtual void updateTabOrder();
+00273 
+00274     virtual void resizeEvent( QResizeEvent *e );
+00275 
+00276 private:
+00277     void initAxesData();
+00278     void deleteAxesData();
+00279     void updateScaleDiv();
+00280 
+00281     void initPlot( const QwtText &title );
+00282 
+00283     class AxisData;
+00284     AxisData *d_axisData[axisCnt];
+00285 
+00286     class PrivateData;
+00287     PrivateData *d_data;
+00288 };
+00289 
+00290 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__canvas_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__canvas_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__canvas_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__canvas_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,138 @@ + + + + +Qwt User's Guide: qwt_plot_canvas.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_plot_canvas.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_PLOT_CANVAS_H
+00011 #define QWT_PLOT_CANVAS_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include <qframe.h>
+00015 #include <qpen.h>
+00016 #include <qpainterpath.h>
+00017 #include <qbitmap.h>
+00018 
+00019 class QwtPlot;
+00020 class QPixmap;
+00021 
+00026 class QWT_EXPORT QwtPlotCanvas : public QFrame
+00027 {
+00028     Q_OBJECT
+00029 
+00030 public:
+00031 
+00039     enum PaintAttribute
+00040     {
+00052         BackingStore = 1,
+00053 
+00069         Opaque       = 2,
+00070 
+00086         HackStyledBackground = 4,
+00087 
+00094         ImmediatePaint = 8
+00095     };
+00096 
+00098     typedef QFlags<PaintAttribute> PaintAttributes;
+00099 
+00118     enum FocusIndicator
+00119     {
+00120         NoFocusIndicator,
+00121         CanvasFocusIndicator,
+00122         ItemFocusIndicator
+00123     };
+00124 
+00125     explicit QwtPlotCanvas( QwtPlot * );
+00126     virtual ~QwtPlotCanvas();
+00127 
+00128     QwtPlot *plot();
+00129     const QwtPlot *plot() const;
+00130 
+00131     void setFocusIndicator( FocusIndicator );
+00132     FocusIndicator focusIndicator() const;
+00133 
+00134     void setBorderRadius( double );
+00135     double borderRadius() const;
+00136 
+00137     QPainterPath borderPath( const QRect &rect ) const;
+00138     QBitmap borderMask( const QSize & ) const;
+00139 
+00140     void setPaintAttribute( PaintAttribute, bool on = true );
+00141     bool testPaintAttribute( PaintAttribute ) const;
+00142 
+00143     const QPixmap *backingStore() const;
+00144     void invalidateBackingStore();
+00145 
+00146     void replot();
+00147 
+00148     virtual bool event( QEvent * );
+00149 
+00150 protected:
+00151     virtual void paintEvent( QPaintEvent * );
+00152     virtual void resizeEvent( QResizeEvent * );
+00153 
+00154     virtual void drawFocusIndicator( QPainter * );
+00155     virtual void drawBorder( QPainter * );
+00156 
+00157     void updateStyleSheetInfo();
+00158 
+00159 private:
+00160     void drawCanvas( QPainter *, bool withBackground );
+00161 
+00162     class PrivateData;
+00163     PrivateData *d_data;
+00164 };
+00165 
+00166 Q_DECLARE_OPERATORS_FOR_FLAGS( QwtPlotCanvas::PaintAttributes );
+00167 
+00168 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__curve_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__curve_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__curve_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__curve_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,241 @@ + + + + +Qwt User's Guide: qwt_plot_curve.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_plot_curve.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_PLOT_CURVE_H
+00011 #define QWT_PLOT_CURVE_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_plot_seriesitem.h"
+00015 #include "qwt_series_data.h"
+00016 #include "qwt_text.h"
+00017 #include <qpen.h>
+00018 #include <qstring.h>
+00019 
+00020 class QPainter;
+00021 class QPolygonF;
+00022 class QwtScaleMap;
+00023 class QwtSymbol;
+00024 class QwtCurveFitter;
+00025 
+00055 class QWT_EXPORT QwtPlotCurve: public QwtPlotSeriesItem<QPointF>
+00056 {
+00057 public:
+00062     enum CurveStyle
+00063     {
+00067         NoCurve = -1,
+00068 
+00074         Lines,
+00075 
+00080         Sticks,
+00081 
+00087         Steps,
+00088 
+00095         Dots,
+00096 
+00102         UserCurve = 100
+00103     };
+00104 
+00109     enum CurveAttribute
+00110     {
+00115         Inverted = 0x01,
+00116 
+00127         Fitted = 0x02
+00128     };
+00129 
+00131     typedef QFlags<CurveAttribute> CurveAttributes;
+00132 
+00140     enum LegendAttribute
+00141     {
+00146         LegendNoAttribute = 0x00,
+00147 
+00152         LegendShowLine = 0x01,
+00153 
+00157         LegendShowSymbol = 0x02,
+00158 
+00163         LegendShowBrush = 0x04
+00164     };
+00165 
+00167     typedef QFlags<LegendAttribute> LegendAttributes;
+00168 
+00175     enum PaintAttribute
+00176     {
+00182         ClipPolygons = 0x01,
+00183 
+00190         CacheSymbols = 0x02
+00191     };
+00192 
+00194     typedef QFlags<PaintAttribute> PaintAttributes;
+00195 
+00196     explicit QwtPlotCurve( const QString &title = QString::null );
+00197     explicit QwtPlotCurve( const QwtText &title );
+00198 
+00199     virtual ~QwtPlotCurve();
+00200 
+00201     virtual int rtti() const;
+00202 
+00203     void setPaintAttribute( PaintAttribute, bool on = true );
+00204     bool testPaintAttribute( PaintAttribute ) const;
+00205 
+00206     void setLegendAttribute( LegendAttribute, bool on = true );
+00207     bool testLegendAttribute( LegendAttribute ) const;
+00208 
+00209 #ifndef QWT_NO_COMPAT
+00210     void setRawSamples( const double *xData, const double *yData, int size );
+00211     void setSamples( const double *xData, const double *yData, int size );
+00212     void setSamples( const QVector<double> &xData, const QVector<double> &yData );
+00213 #endif
+00214     void setSamples( const QVector<QPointF> & );
+00215 
+00216     int closestPoint( const QPoint &pos, double *dist = NULL ) const;
+00217 
+00218     double minXValue() const;
+00219     double maxXValue() const;
+00220     double minYValue() const;
+00221     double maxYValue() const;
+00222 
+00223     void setCurveAttribute( CurveAttribute, bool on = true );
+00224     bool testCurveAttribute( CurveAttribute ) const;
+00225 
+00226     void setPen( const QPen & );
+00227     const QPen &pen() const;
+00228 
+00229     void setBrush( const QBrush & );
+00230     const QBrush &brush() const;
+00231 
+00232     void setBaseline( double ref );
+00233     double baseline() const;
+00234 
+00235     void setStyle( CurveStyle style );
+00236     CurveStyle style() const;
+00237 
+00238     void setSymbol( const QwtSymbol *s );
+00239     const QwtSymbol *symbol() const;
+00240 
+00241     void setCurveFitter( QwtCurveFitter * );
+00242     QwtCurveFitter *curveFitter() const;
+00243 
+00244     virtual void drawSeries( QPainter *,
+00245         const QwtScaleMap &xMap, const QwtScaleMap &yMap,
+00246         const QRectF &canvasRect, int from, int to ) const;
+00247 
+00248     virtual void updateLegend( QwtLegend * ) const;
+00249     virtual void drawLegendIdentifier( QPainter *, const QRectF & ) const;
+00250 
+00251 protected:
+00252 
+00253     void init();
+00254 
+00255     virtual void drawCurve( QPainter *p, int style,
+00256         const QwtScaleMap &xMap, const QwtScaleMap &yMap,
+00257         const QRectF &canvasRect, int from, int to ) const;
+00258 
+00259     virtual void drawSymbols( QPainter *p, const QwtSymbol &,
+00260         const QwtScaleMap &xMap, const QwtScaleMap &yMap,
+00261         const QRectF &canvasRect, int from, int to ) const;
+00262 
+00263     void drawLines( QPainter *p,
+00264         const QwtScaleMap &xMap, const QwtScaleMap &yMap,
+00265         const QRectF &canvasRect, int from, int to ) const;
+00266 
+00267     void drawSticks( QPainter *p,
+00268         const QwtScaleMap &xMap, const QwtScaleMap &yMap,
+00269         const QRectF &canvasRect, int from, int to ) const;
+00270 
+00271     void drawDots( QPainter *p,
+00272         const QwtScaleMap &xMap, const QwtScaleMap &yMap,
+00273         const QRectF &canvasRect, int from, int to ) const;
+00274 
+00275     void drawSteps( QPainter *p,
+00276         const QwtScaleMap &xMap, const QwtScaleMap &yMap,
+00277         const QRectF &canvasRect, int from, int to ) const;
+00278 
+00279     virtual void fillCurve( QPainter *,
+00280         const QwtScaleMap &, const QwtScaleMap &, 
+00281         const QRectF &canvasRect, QPolygonF & ) const;
+00282 
+00283     void closePolyline( QPainter *,
+00284         const QwtScaleMap &, const QwtScaleMap &, QPolygonF & ) const;
+00285 
+00286 private:
+00287     class PrivateData;
+00288     PrivateData *d_data;
+00289 };
+00290 
+00292 inline double QwtPlotCurve::minXValue() const
+00293 {
+00294     return boundingRect().left();
+00295 }
+00296 
+00298 inline double QwtPlotCurve::maxXValue() const
+00299 {
+00300     return boundingRect().right();
+00301 }
+00302 
+00304 inline double QwtPlotCurve::minYValue() const
+00305 {
+00306     return boundingRect().top();
+00307 }
+00308 
+00310 inline double QwtPlotCurve::maxYValue() const
+00311 {
+00312     return boundingRect().bottom();
+00313 }
+00314 
+00315 Q_DECLARE_OPERATORS_FOR_FLAGS( QwtPlotCurve::PaintAttributes );
+00316 Q_DECLARE_OPERATORS_FOR_FLAGS( QwtPlotCurve::LegendAttributes );
+00317 Q_DECLARE_OPERATORS_FOR_FLAGS( QwtPlotCurve::CurveAttributes );
+00318 
+00319 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__dict_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__dict_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__dict_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__dict_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,91 @@ + + + + +Qwt User's Guide: qwt_plot_dict.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_plot_dict.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00011 #ifndef QWT_PLOT_DICT
+00012 #define QWT_PLOT_DICT
+00013 
+00014 #include "qwt_global.h"
+00015 #include "qwt_plot_item.h"
+00016 #include <qlist.h>
+00017 
+00020 typedef QList<QwtPlotItem *> QwtPlotItemList;
+00021 typedef QList<QwtPlotItem *>::ConstIterator QwtPlotItemIterator;
+00022 
+00032 class QWT_EXPORT QwtPlotDict
+00033 {
+00034 public:
+00035     explicit QwtPlotDict();
+00036     virtual ~QwtPlotDict();
+00037 
+00038     void setAutoDelete( bool );
+00039     bool autoDelete() const;
+00040 
+00041     const QwtPlotItemList& itemList() const;
+00042     QwtPlotItemList itemList( int rtti ) const;
+00043 
+00044     void detachItems( int rtti = QwtPlotItem::Rtti_PlotItem,
+00045         bool autoDelete = true );
+00046 
+00047 private:
+00048     friend class QwtPlotItem;
+00049 
+00050     void attachItem( QwtPlotItem *, bool );
+00051 
+00052     class PrivateData;
+00053     PrivateData *d_data;
+00054 };
+00055 
+00056 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__directpainter_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__directpainter_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__directpainter_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__directpainter_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,104 @@ + + + + +Qwt User's Guide: qwt_plot_directpainter.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_plot_directpainter.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_PLOT_DIRECT_PAINTER_H
+00011 #define QWT_PLOT_DIRECT_PAINTER_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include <qobject.h>
+00015 
+00016 class QRegion;
+00017 class QwtPlotAbstractSeriesItem;
+00018 
+00039 class QWT_EXPORT QwtPlotDirectPainter: public QObject
+00040 {
+00041 public:
+00046     enum Attribute
+00047     {
+00054         AtomicPainter = 0x01,
+00055 
+00060         FullRepaint = 0x02,
+00061 
+00070         CopyBackingStore = 0x04
+00071     };
+00072 
+00074     typedef QFlags<Attribute> Attributes;
+00075 
+00076     QwtPlotDirectPainter( QObject *parent = NULL );
+00077     virtual ~QwtPlotDirectPainter();
+00078 
+00079     void setAttribute( Attribute, bool on );
+00080     bool testAttribute( Attribute ) const;
+00081 
+00082     void setClipping( bool );
+00083     bool hasClipping() const;
+00084 
+00085     void setClipRegion( const QRegion & );
+00086     QRegion clipRegion() const;
+00087 
+00088     void drawSeries( QwtPlotAbstractSeriesItem *, int from, int to );
+00089     void reset();
+00090 
+00091     virtual bool eventFilter( QObject *, QEvent * );
+00092 
+00093 private:
+00094     class PrivateData;
+00095     PrivateData *d_data;
+00096 };
+00097 
+00098 Q_DECLARE_OPERATORS_FOR_FLAGS( QwtPlotDirectPainter::Attributes );
+00099 
+00100 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__grid_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__grid_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__grid_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__grid_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,119 @@ + + + + +Qwt User's Guide: qwt_plot_grid.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_plot_grid.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_PLOT_GRID_H
+00011 #define QWT_PLOT_GRID_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_plot_item.h"
+00015 #include "qwt_scale_div.h"
+00016 
+00017 class QPainter;
+00018 class QPen;
+00019 class QwtScaleMap;
+00020 class QwtScaleDiv;
+00021 
+00034 class QWT_EXPORT QwtPlotGrid: public QwtPlotItem
+00035 {
+00036 public:
+00037     explicit QwtPlotGrid();
+00038     virtual ~QwtPlotGrid();
+00039 
+00040     virtual int rtti() const;
+00041 
+00042     void enableX( bool tf );
+00043     bool xEnabled() const;
+00044 
+00045     void enableY( bool tf );
+00046     bool yEnabled() const;
+00047 
+00048     void enableXMin( bool tf );
+00049     bool xMinEnabled() const;
+00050 
+00051     void enableYMin( bool tf );
+00052     bool yMinEnabled() const;
+00053 
+00054     void setXDiv( const QwtScaleDiv &sx );
+00055     const QwtScaleDiv &xScaleDiv() const;
+00056 
+00057     void setYDiv( const QwtScaleDiv &sy );
+00058     const QwtScaleDiv &yScaleDiv() const;
+00059 
+00060     void setPen( const QPen &p );
+00061 
+00062     void setMajPen( const QPen &p );
+00063     const QPen& majPen() const;
+00064 
+00065     void setMinPen( const QPen &p );
+00066     const QPen& minPen() const;
+00067 
+00068     virtual void draw( QPainter *p,
+00069         const QwtScaleMap &xMap, const QwtScaleMap &yMap,
+00070         const QRectF &rect ) const;
+00071 
+00072     virtual void updateScaleDiv( 
+00073         const QwtScaleDiv &xMap, const QwtScaleDiv &yMap );
+00074 
+00075 private:
+00076     void drawLines( QPainter *painter, const QRectF &,
+00077         Qt::Orientation orientation, const QwtScaleMap &,
+00078         const QList<double> & ) const;
+00079 
+00080     class PrivateData;
+00081     PrivateData *d_data;
+00082 };
+00083 
+00084 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__histogram_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__histogram_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__histogram_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__histogram_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,142 @@ + + + + +Qwt User's Guide: qwt_plot_histogram.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_plot_histogram.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_PLOT_HISTOGRAM_H
+00011 #define QWT_PLOT_HISTOGRAM_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_plot_seriesitem.h"
+00015 #include "qwt_column_symbol.h"
+00016 #include <qcolor.h>
+00017 #include <qvector.h>
+00018 
+00019 class QwtIntervalData;
+00020 class QString;
+00021 class QPolygonF;
+00022 
+00037 class QWT_EXPORT QwtPlotHistogram: public QwtPlotSeriesItem<QwtIntervalSample>
+00038 {
+00039 public:
+00046     enum HistogramStyle
+00047     {
+00054         Outline,
+00055 
+00061         Columns,
+00062 
+00066         Lines,
+00067 
+00073         UserStyle = 100
+00074     };
+00075 
+00076     explicit QwtPlotHistogram( const QString &title = QString::null );
+00077     explicit QwtPlotHistogram( const QwtText &title );
+00078     virtual ~QwtPlotHistogram();
+00079 
+00080     virtual int rtti() const;
+00081 
+00082     void setPen( const QPen & );
+00083     const QPen &pen() const;
+00084 
+00085     void setBrush( const QBrush & );
+00086     const QBrush &brush() const;
+00087 
+00088     void setSamples( const QVector<QwtIntervalSample> & );
+00089 
+00090     void setBaseline( double reference );
+00091     double baseline() const;
+00092 
+00093     void setStyle( HistogramStyle style );
+00094     HistogramStyle style() const;
+00095 
+00096     void setSymbol( const QwtColumnSymbol * );
+00097     const QwtColumnSymbol *symbol() const;
+00098 
+00099     virtual void drawSeries( QPainter *p,
+00100         const QwtScaleMap &xMap, const QwtScaleMap &yMap,
+00101         const QRectF &canvasRect, int from, int to ) const;
+00102 
+00103     virtual QRectF boundingRect() const;
+00104 
+00105     virtual void drawLegendIdentifier( QPainter *, const QRectF & ) const;
+00106 
+00107 protected:
+00108     virtual QwtColumnRect columnRect( const QwtIntervalSample &,
+00109         const QwtScaleMap &, const QwtScaleMap & ) const;
+00110 
+00111     virtual void drawColumn( QPainter *, const QwtColumnRect &,
+00112         const QwtIntervalSample & ) const;
+00113 
+00114     void drawColumns( QPainter *,
+00115         const QwtScaleMap &xMap, const QwtScaleMap &yMap,
+00116         int from, int to ) const;
+00117 
+00118     void drawOutline( QPainter *,
+00119         const QwtScaleMap &xMap, const QwtScaleMap &yMap,
+00120         int from, int to ) const;
+00121 
+00122     void drawLines( QPainter *,
+00123          const QwtScaleMap &xMap, const QwtScaleMap &yMap,
+00124          int from, int to ) const;
+00125 
+00126 private:
+00127     void init();
+00128     void flushPolygon( QPainter *, double baseLine, QPolygonF & ) const;
+00129 
+00130     class PrivateData;
+00131     PrivateData *d_data;
+00132 };
+00133 
+00134 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__intervalcurve_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__intervalcurve_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__intervalcurve_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__intervalcurve_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,137 @@ + + + + +Qwt User's Guide: qwt_plot_intervalcurve.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_plot_intervalcurve.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_PLOT_INTERVAL_CURVE_H
+00011 #define QWT_PLOT_INTERVAL_CURVE_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_plot_seriesitem.h"
+00015 #include "qwt_series_data.h"
+00016 
+00017 class QwtIntervalSymbol;
+00018 
+00028 class QWT_EXPORT QwtPlotIntervalCurve: public QwtPlotSeriesItem<QwtIntervalSample>
+00029 {
+00030 public:
+00038     enum CurveStyle
+00039     {
+00043         NoCurve,
+00044 
+00050         Tube,
+00051 
+00057         UserCurve = 100
+00058     };
+00059 
+00064     enum PaintAttribute
+00065     {
+00071         ClipPolygons = 0x01,
+00072 
+00074         ClipSymbol   = 0x02
+00075     };
+00076 
+00078     typedef QFlags<PaintAttribute> PaintAttributes;
+00079 
+00080     explicit QwtPlotIntervalCurve( const QString &title = QString::null );
+00081     explicit QwtPlotIntervalCurve( const QwtText &title );
+00082 
+00083     virtual ~QwtPlotIntervalCurve();
+00084 
+00085     virtual int rtti() const;
+00086 
+00087     void setPaintAttribute( PaintAttribute, bool on = true );
+00088     bool testPaintAttribute( PaintAttribute ) const;
+00089 
+00090     void setSamples( const QVector<QwtIntervalSample> & );
+00091 
+00092     void setPen( const QPen & );
+00093     const QPen &pen() const;
+00094 
+00095     void setBrush( const QBrush & );
+00096     const QBrush &brush() const;
+00097 
+00098     void setStyle( CurveStyle style );
+00099     CurveStyle style() const;
+00100 
+00101     void setSymbol( const QwtIntervalSymbol * );
+00102     const QwtIntervalSymbol *symbol() const;
+00103 
+00104     virtual void drawSeries( QPainter *p,
+00105         const QwtScaleMap &xMap, const QwtScaleMap &yMap,
+00106         const QRectF &canvasRect, int from, int to ) const;
+00107 
+00108     virtual QRectF boundingRect() const;
+00109     virtual void drawLegendIdentifier( QPainter *, const QRectF & ) const;
+00110 
+00111 protected:
+00112 
+00113     void init();
+00114 
+00115     virtual void drawTube( QPainter *,
+00116         const QwtScaleMap &xMap, const QwtScaleMap &yMap,
+00117         const QRectF &canvasRect, int from, int to ) const;
+00118 
+00119     virtual void drawSymbols( QPainter *, const QwtIntervalSymbol &,
+00120         const QwtScaleMap &xMap, const QwtScaleMap &yMap,
+00121         const QRectF &canvasRect, int from, int to ) const;
+00122 
+00123 private:
+00124     class PrivateData;
+00125     PrivateData *d_data;
+00126 };
+00127 
+00128 Q_DECLARE_OPERATORS_FOR_FLAGS( QwtPlotIntervalCurve::PaintAttributes );
+00129 
+00130 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__item_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__item_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__item_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__item_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,174 @@ + + + + +Qwt User's Guide: qwt_plot_item.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_plot_item.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_PLOT_ITEM_H
+00011 #define QWT_PLOT_ITEM_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_legend_itemmanager.h"
+00015 #include "qwt_text.h"
+00016 #include <qrect.h>
+00017 
+00018 class QString;
+00019 class QPainter;
+00020 class QWidget;
+00021 class QwtPlot;
+00022 class QwtLegend;
+00023 class QwtScaleMap;
+00024 class QwtScaleDiv;
+00025 
+00064 class QWT_EXPORT QwtPlotItem: public QwtLegendItemManager
+00065 {
+00066 public:
+00073     enum RttiValues
+00074     {
+00075         Rtti_PlotItem = 0,
+00076 
+00077         Rtti_PlotGrid,
+00078         Rtti_PlotScale,
+00079         Rtti_PlotMarker,
+00080         Rtti_PlotCurve,
+00081         Rtti_PlotSpectroCurve,
+00082         Rtti_PlotIntervalCurve,
+00083         Rtti_PlotHistogram,
+00084         Rtti_PlotSpectrogram,
+00085         Rtti_PlotSVG,
+00086 
+00087         Rtti_PlotUserItem = 1000
+00088     };
+00089 
+00094     enum ItemAttribute
+00095     {
+00097         Legend = 0x01,
+00098 
+00103         AutoScale = 0x02
+00104     };
+00105 
+00107     typedef QFlags<ItemAttribute> ItemAttributes;
+00108 
+00110     enum RenderHint
+00111     {
+00113         RenderAntialiased = 1
+00114     };
+00115 
+00117     typedef QFlags<RenderHint> RenderHints;
+00118 
+00119     explicit QwtPlotItem( const QwtText &title = QwtText() );
+00120     virtual ~QwtPlotItem();
+00121 
+00122     void attach( QwtPlot *plot );
+00123     void detach();
+00124 
+00125     QwtPlot *plot() const;
+00126 
+00127     void setTitle( const QString &title );
+00128     void setTitle( const QwtText &title );
+00129     const QwtText &title() const;
+00130 
+00131     virtual int rtti() const;
+00132 
+00133     void setItemAttribute( ItemAttribute, bool on = true );
+00134     bool testItemAttribute( ItemAttribute ) const;
+00135 
+00136     void setRenderHint( RenderHint, bool on = true );
+00137     bool testRenderHint( RenderHint ) const;
+00138 
+00139     double z() const;
+00140     void setZ( double z );
+00141 
+00142     void show();
+00143     void hide();
+00144     virtual void setVisible( bool );
+00145     bool isVisible () const;
+00146 
+00147     void setAxes( int xAxis, int yAxis );
+00148 
+00149     void setXAxis( int axis );
+00150     int xAxis() const;
+00151 
+00152     void setYAxis( int axis );
+00153     int yAxis() const;
+00154 
+00155     virtual void itemChanged();
+00156 
+00165     virtual void draw( QPainter *painter,
+00166         const QwtScaleMap &xMap, const QwtScaleMap &yMap,
+00167         const QRectF &canvasRect ) const = 0;
+00168 
+00169     virtual QRectF boundingRect() const;
+00170 
+00171     virtual void updateLegend( QwtLegend * ) const;
+00172     virtual void updateScaleDiv( 
+00173         const QwtScaleDiv&, const QwtScaleDiv& );
+00174 
+00175     virtual QWidget *legendItem() const;
+00176 
+00177     QRectF scaleRect( const QwtScaleMap &, const QwtScaleMap & ) const;
+00178     QRectF paintRect( const QwtScaleMap &, const QwtScaleMap & ) const;
+00179 
+00180 private:
+00181     // Disabled copy constructor and operator=
+00182     QwtPlotItem( const QwtPlotItem & );
+00183     QwtPlotItem &operator=( const QwtPlotItem & );
+00184 
+00185     class PrivateData;
+00186     PrivateData *d_data;
+00187 };
+00188 
+00189 Q_DECLARE_OPERATORS_FOR_FLAGS( QwtPlotItem::ItemAttributes );
+00190 Q_DECLARE_OPERATORS_FOR_FLAGS( QwtPlotItem::RenderHints );
+00191 
+00192 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__layout_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__layout_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__layout_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__layout_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,132 @@ + + + + +Qwt User's Guide: qwt_plot_layout.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_plot_layout.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_PLOT_LAYOUT_H
+00011 #define QWT_PLOT_LAYOUT_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_plot.h"
+00015 
+00024 class QWT_EXPORT QwtPlotLayout
+00025 {
+00026 public:
+00031     enum Option
+00032     {
+00034         AlignScales = 0x01,
+00035 
+00040         IgnoreScrollbars = 0x02,
+00041 
+00043         IgnoreFrames = 0x04,
+00044 
+00046         IgnoreLegend = 0x08
+00047     };
+00048 
+00050     typedef QFlags<Option> Options;
+00051 
+00052     explicit QwtPlotLayout();
+00053     virtual ~QwtPlotLayout();
+00054 
+00055     void setCanvasMargin( int margin, int axis = -1 );
+00056     int canvasMargin( int axis ) const;
+00057 
+00058     void setAlignCanvasToScales( bool );
+00059     bool alignCanvasToScales() const;
+00060 
+00061     void setSpacing( int );
+00062     int spacing() const;
+00063 
+00064     void setLegendPosition( QwtPlot::LegendPosition pos, double ratio );
+00065     void setLegendPosition( QwtPlot::LegendPosition pos );
+00066     QwtPlot::LegendPosition legendPosition() const;
+00067 
+00068     void setLegendRatio( double ratio );
+00069     double legendRatio() const;
+00070 
+00071     virtual QSize minimumSizeHint( const QwtPlot * ) const;
+00072 
+00073     virtual void activate( const QwtPlot *,
+00074         const QRectF &rect, Options options = 0x00 );
+00075 
+00076     virtual void invalidate();
+00077 
+00078     const QRectF &titleRect() const;
+00079     const QRectF &legendRect() const;
+00080     const QRectF &scaleRect( int axis ) const;
+00081     const QRectF &canvasRect() const;
+00082 
+00083     class LayoutData;
+00084 
+00085 protected:
+00086 
+00087     QRectF layoutLegend( Options options, const QRectF & ) const;
+00088     QRectF alignLegend( const QRectF &canvasRect,
+00089         const QRectF &legendRect ) const;
+00090 
+00091     void expandLineBreaks( int options, const QRectF &rect,
+00092         int &dimTitle, int dimAxes[QwtPlot::axisCnt] ) const;
+00093 
+00094     void alignScales( int options, QRectF &canvasRect,
+00095         QRectF scaleRect[QwtPlot::axisCnt] ) const;
+00096 
+00097 private:
+00098     class PrivateData;
+00099 
+00100     PrivateData *d_data;
+00101 };
+00102 
+00103 Q_DECLARE_OPERATORS_FOR_FLAGS( QwtPlotLayout::Options );
+00104 
+00105 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__magnifier_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__magnifier_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__magnifier_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__magnifier_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,91 @@ + + + + +Qwt User's Guide: qwt_plot_magnifier.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_plot_magnifier.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_PLOT_MAGNIFIER_H
+00011 #define QWT_PLOT_MAGNIFIER_H 1
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_magnifier.h"
+00015 
+00016 class QwtPlotCanvas;
+00017 class QwtPlot;
+00018 
+00030 class QWT_EXPORT QwtPlotMagnifier: public QwtMagnifier
+00031 {
+00032     Q_OBJECT
+00033 
+00034 public:
+00035     explicit QwtPlotMagnifier( QwtPlotCanvas * );
+00036     virtual ~QwtPlotMagnifier();
+00037 
+00038     void setAxisEnabled( int axis, bool on );
+00039     bool isAxisEnabled( int axis ) const;
+00040 
+00041     QwtPlotCanvas *canvas();
+00042     const QwtPlotCanvas *canvas() const;
+00043 
+00044     QwtPlot *plot();
+00045     const QwtPlot *plot() const;
+00046 
+00047 protected:
+00048     virtual void rescale( double factor );
+00049 
+00050 private:
+00051     class PrivateData;
+00052     PrivateData *d_data;
+00053 };
+00054 
+00055 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__marker_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__marker_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__marker_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__marker_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,143 @@ + + + + +Qwt User's Guide: qwt_plot_marker.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_plot_marker.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_PLOT_MARKER_H
+00011 #define QWT_PLOT_MARKER_H
+00012 
+00013 #include <qpen.h>
+00014 #include <qfont.h>
+00015 #include <qstring.h>
+00016 #include <qbrush.h>
+00017 #include "qwt_global.h"
+00018 #include "qwt_plot_item.h"
+00019 
+00020 class QRectF;
+00021 class QwtText;
+00022 class QwtSymbol;
+00023 
+00044 class QWT_EXPORT QwtPlotMarker: public QwtPlotItem
+00045 {
+00046 public:
+00047 
+00052     enum LineStyle
+00053     {
+00055         NoLine,
+00056 
+00058         HLine,
+00059 
+00061         VLine,
+00062 
+00064         Cross
+00065     };
+00066 
+00067     explicit QwtPlotMarker();
+00068     virtual ~QwtPlotMarker();
+00069 
+00070     virtual int rtti() const;
+00071 
+00072     double xValue() const;
+00073     double yValue() const;
+00074     QPointF value() const;
+00075 
+00076     void setXValue( double );
+00077     void setYValue( double );
+00078     void setValue( double, double );
+00079     void setValue( const QPointF & );
+00080 
+00081     void setLineStyle( LineStyle st );
+00082     LineStyle lineStyle() const;
+00083 
+00084     void setLinePen( const QPen &p );
+00085     const QPen &linePen() const;
+00086 
+00087     void setSymbol( const QwtSymbol * );
+00088     const QwtSymbol *symbol() const;
+00089 
+00090     void setLabel( const QwtText& );
+00091     QwtText label() const;
+00092 
+00093     void setLabelAlignment( Qt::Alignment );
+00094     Qt::Alignment labelAlignment() const;
+00095 
+00096     void setLabelOrientation( Qt::Orientation );
+00097     Qt::Orientation labelOrientation() const;
+00098 
+00099     void setSpacing( int );
+00100     int spacing() const;
+00101 
+00102     virtual void draw( QPainter *p,
+00103         const QwtScaleMap &xMap, const QwtScaleMap &yMap,
+00104         const QRectF & ) const;
+00105 
+00106     virtual QRectF boundingRect() const;
+00107 
+00108     virtual void updateLegend( QwtLegend * ) const;
+00109     virtual void drawLegendIdentifier( QPainter *, const QRectF & ) const;
+00110 
+00111 protected:
+00112     virtual void drawLines( QPainter *, 
+00113         const QRectF &, const QPointF & ) const;
+00114 
+00115     virtual void drawLabel( QPainter *, 
+00116         const QRectF &, const QPointF & ) const;
+00117 
+00118 private:
+00119 
+00120     class PrivateData;
+00121     PrivateData *d_data;
+00122 };
+00123 
+00124 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__panner_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__panner_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__panner_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__panner_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,94 @@ + + + + +Qwt User's Guide: qwt_plot_panner.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_plot_panner.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_PLOT_PANNER_H
+00011 #define QWT_PLOT_PANNER_H 1
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_panner.h"
+00015 
+00016 class QwtPlotCanvas;
+00017 class QwtPlot;
+00018 
+00032 class QWT_EXPORT QwtPlotPanner: public QwtPanner
+00033 {
+00034     Q_OBJECT
+00035 
+00036 public:
+00037     explicit QwtPlotPanner( QwtPlotCanvas * );
+00038     virtual ~QwtPlotPanner();
+00039 
+00040     QwtPlotCanvas *canvas();
+00041     const QwtPlotCanvas *canvas() const;
+00042 
+00043     QwtPlot *plot();
+00044     const QwtPlot *plot() const;
+00045 
+00046     void setAxisEnabled( int axis, bool on );
+00047     bool isAxisEnabled( int axis ) const;
+00048 
+00049 protected Q_SLOTS:
+00050     virtual void moveCanvas( int dx, int dy );
+00051 
+00052 protected:
+00053     virtual QBitmap contentsMask() const;
+00054 
+00055 private:
+00056     class PrivateData;
+00057     PrivateData *d_data;
+00058 };
+00059 
+00060 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__picker_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__picker_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__picker_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__picker_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,125 @@ + + + + +Qwt User's Guide: qwt_plot_picker.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_plot_picker.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_PLOT_PICKER_H
+00011 #define QWT_PLOT_PICKER_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_plot_canvas.h"
+00015 #include "qwt_picker.h"
+00016 #include <qvector.h>
+00017 
+00018 class QwtPlot;
+00019 
+00028 class QWT_EXPORT QwtPlotPicker: public QwtPicker
+00029 {
+00030     Q_OBJECT
+00031 
+00032 public:
+00033     explicit QwtPlotPicker( QwtPlotCanvas * );
+00034     virtual ~QwtPlotPicker();
+00035 
+00036     explicit QwtPlotPicker( int xAxis, int yAxis, QwtPlotCanvas * );
+00037 
+00038     explicit QwtPlotPicker( int xAxis, int yAxis,
+00039         RubberBand rubberBand, DisplayMode trackerMode,
+00040         QwtPlotCanvas * );
+00041 
+00042     virtual void setAxis( int xAxis, int yAxis );
+00043 
+00044     int xAxis() const;
+00045     int yAxis() const;
+00046 
+00047     QwtPlot *plot();
+00048     const QwtPlot *plot() const;
+00049 
+00050     QwtPlotCanvas *canvas();
+00051     const QwtPlotCanvas *canvas() const;
+00052 
+00053 Q_SIGNALS:
+00054 
+00059     void selected( const QPointF &pos );
+00060 
+00065     void selected( const QRectF &rect );
+00066 
+00073     void selected( const QVector<QPointF> &pa );
+00074 
+00081     void appended( const QPointF &pos );
+00082 
+00090     void moved( const QPointF &pos );
+00091 
+00092 protected:
+00093     QRectF scaleRect() const;
+00094 
+00095     QRectF invTransform( const QRect & ) const;
+00096     QRect transform( const QRectF & ) const;
+00097 
+00098     QPointF invTransform( const QPoint & ) const;
+00099     QPoint transform( const QPointF & ) const;
+00100 
+00101     virtual QwtText trackerText( const QPoint & ) const;
+00102     virtual QwtText trackerTextF( const QPointF & ) const;
+00103 
+00104     virtual void move( const QPoint & );
+00105     virtual void append( const QPoint & );
+00106     virtual bool end( bool ok = true );
+00107 
+00108 private:
+00109     int d_xAxis;
+00110     int d_yAxis;
+00111 };
+00112 
+00113 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__rasteritem_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__rasteritem_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__rasteritem_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__rasteritem_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,133 @@ + + + + +Qwt User's Guide: qwt_plot_rasteritem.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_plot_rasteritem.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_PLOT_RASTERITEM_H
+00011 #define QWT_PLOT_RASTERITEM_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_plot_item.h"
+00015 #include "qwt_interval.h"
+00016 #include <qglobal.h>
+00017 #include <qstring.h>
+00018 #include <qimage.h>
+00019 
+00037 class QWT_EXPORT QwtPlotRasterItem: public QwtPlotItem
+00038 {
+00039 public:
+00052     enum CachePolicy
+00053     {
+00054         NoCache,
+00055         PaintCache
+00056     };
+00057 
+00062     enum PaintAttribute
+00063     {
+00076         PaintInDeviceResolution = 1
+00077     };
+00078 
+00080     typedef QFlags<PaintAttribute> PaintAttributes;
+00081 
+00082     explicit QwtPlotRasterItem( const QString& title = QString::null );
+00083     explicit QwtPlotRasterItem( const QwtText& title );
+00084     virtual ~QwtPlotRasterItem();
+00085 
+00086     void setPaintAttribute( PaintAttribute, bool on = true );
+00087     bool testPaintAttribute( PaintAttribute ) const;
+00088 
+00089     void setAlpha( int alpha );
+00090     int alpha() const;
+00091 
+00092     void setCachePolicy( CachePolicy );
+00093     CachePolicy cachePolicy() const;
+00094 
+00095     void invalidateCache();
+00096 
+00097     virtual void draw( QPainter *p,
+00098         const QwtScaleMap &xMap, const QwtScaleMap &yMap,
+00099         const QRectF &rect ) const;
+00100 
+00101     virtual QRectF pixelHint( const QRectF & ) const;
+00102 
+00103     virtual QwtInterval interval(Qt::Axis) const;
+00104     virtual QRectF boundingRect() const;
+00105 
+00106 protected:
+00121     virtual QImage renderImage( const QwtScaleMap &xMap,
+00122         const QwtScaleMap &yMap, const QRectF &area,
+00123         const QSize &imageSize ) const = 0;
+00124 
+00125     virtual QwtScaleMap imageMap( Qt::Orientation,
+00126         const QwtScaleMap &map, const QRectF &area,
+00127         const QSize &imageSize, double pixelSize) const;
+00128 
+00129 private:
+00130     QwtPlotRasterItem( const QwtPlotRasterItem & );
+00131     QwtPlotRasterItem &operator=( const QwtPlotRasterItem & );
+00132 
+00133     void init();
+00134 
+00135     QImage compose( const QwtScaleMap &, const QwtScaleMap &,
+00136         const QRectF &imageArea, const QRectF &paintRect,
+00137         const QSize &imageSize, bool doCache) const;
+00138 
+00139 
+00140     class PrivateData;
+00141     PrivateData *d_data;
+00142 };
+00143 
+00144 Q_DECLARE_OPERATORS_FOR_FLAGS( QwtPlotRasterItem::PaintAttributes );
+00145 
+00146 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__renderer_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__renderer_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__renderer_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__renderer_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,179 @@ + + + + +Qwt User's Guide: qwt_plot_renderer.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_plot_renderer.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_PLOT_RENDERER_H
+00011 #define QWT_PLOT_RENDERER_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include <qobject.h>
+00015 
+00016 class QwtPlot;
+00017 class QwtScaleMap;
+00018 class QSizeF;
+00019 class QRectF;
+00020 class QPainter;
+00021 class QPaintDevice;
+00022 
+00023 #ifndef QT_NO_PRINTER
+00024 class QPrinter;
+00025 #endif
+00026 
+00027 #ifndef QWT_NO_SVG
+00028 #ifdef QT_SVG_LIB
+00029 class QSvgGenerator;
+00030 #endif
+00031 #endif
+00032 
+00037 class QWT_EXPORT QwtPlotRenderer: public QObject
+00038 {
+00039     Q_OBJECT
+00040 
+00041 public:
+00043     enum DiscardFlag
+00044     {
+00046         DiscardNone             = 0x00,
+00047 
+00049         DiscardBackground       = 0x01,
+00050 
+00052         DiscardTitle            = 0x02,
+00053 
+00055         DiscardLegend           = 0x04,
+00056 
+00058         DiscardCanvasBackground = 0x08
+00059     };
+00060 
+00062     typedef QFlags<DiscardFlag> DiscardFlags;
+00063 
+00068     enum LayoutFlag
+00069     {
+00071         DefaultLayout   = 0x00,
+00072 
+00074         KeepFrames      = 0x01,
+00075 
+00080         FrameWithScales = 0x02
+00081     };
+00082 
+00084     typedef QFlags<LayoutFlag> LayoutFlags;
+00085 
+00086     explicit QwtPlotRenderer( QObject * = NULL );
+00087     virtual ~QwtPlotRenderer();
+00088 
+00089     void setDiscardFlag( DiscardFlag flag, bool on = true );
+00090     bool testDiscardFlag( DiscardFlag flag ) const;
+00091 
+00092     void setDiscardFlags( DiscardFlags flags );
+00093     DiscardFlags discardFlags() const;
+00094 
+00095     void setLayoutFlag( LayoutFlag flag, bool on = true );
+00096     bool testLayoutFlag( LayoutFlag flag ) const;
+00097 
+00098     void setLayoutFlags( LayoutFlags flags );
+00099     LayoutFlags layoutFlags() const;
+00100 
+00101     void renderDocument( QwtPlot *, const QString &format,
+00102         const QSizeF &sizeMM, int resolution = 85 );
+00103 
+00104     void renderDocument( QwtPlot *,
+00105         const QString &title, const QString &format,
+00106         const QSizeF &sizeMM, int resolution = 85 );
+00107 
+00108 #ifndef QWT_NO_SVG
+00109 #ifdef QT_SVG_LIB
+00110 #if QT_VERSION >= 0x040500
+00111     void renderTo( QwtPlot *, QSvgGenerator & ) const;
+00112 #endif
+00113 #endif
+00114 #endif
+00115 
+00116 #ifndef QT_NO_PRINTER
+00117     void renderTo( QwtPlot *, QPrinter & ) const;
+00118 #endif
+00119 
+00120     void renderTo( QwtPlot *, QPaintDevice &p ) const;
+00121 
+00122     virtual void render( QwtPlot *,
+00123         QPainter *, const QRectF &rect ) const;
+00124 
+00125     virtual void renderLegendItem( const QwtPlot *, 
+00126         QPainter *, const QWidget *, const QRectF & ) const;
+00127 
+00128     virtual void renderTitle( const QwtPlot *,
+00129         QPainter *, const QRectF & ) const;
+00130 
+00131     virtual void renderScale( const QwtPlot *, QPainter *,
+00132         int axisId, int startDist, int endDist,
+00133         int baseDist, const QRectF & ) const;
+00134 
+00135     virtual void renderCanvas( const QwtPlot *,
+00136         QPainter *, const QRectF &canvasRect,
+00137         const QwtScaleMap* maps ) const;
+00138 
+00139     virtual void renderLegend( 
+00140         const QwtPlot *, QPainter *, const QRectF & ) const;
+00141 
+00142 protected:
+00143     void buildCanvasMaps( const QwtPlot *,
+00144         const QRectF &, QwtScaleMap maps[] ) const;
+00145 
+00146 private:
+00147     class PrivateData;
+00148     PrivateData *d_data;
+00149 };
+00150 
+00151 Q_DECLARE_OPERATORS_FOR_FLAGS( QwtPlotRenderer::DiscardFlags );
+00152 Q_DECLARE_OPERATORS_FOR_FLAGS( QwtPlotRenderer::LayoutFlags );
+00153 
+00154 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__rescaler_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__rescaler_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__rescaler_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__rescaler_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,153 @@ + + + + +Qwt User's Guide: qwt_plot_rescaler.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_plot_rescaler.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_PLOT_RESCALER_H
+00011 #define QWT_PLOT_RESCALER_H 1
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_interval.h"
+00015 #include "qwt_plot.h"
+00016 #include <qobject.h>
+00017 
+00018 class QwtPlotCanvas;
+00019 class QwtPlot;
+00020 class QResizeEvent;
+00021 
+00029 class QWT_EXPORT QwtPlotRescaler: public QObject
+00030 {
+00031 public:
+00038     enum RescalePolicy
+00039     {
+00045         Fixed,
+00046 
+00055         Expanding,
+00056 
+00061         Fitting
+00062     };
+00063 
+00068     enum ExpandingDirection
+00069     {
+00071         ExpandUp,
+00072 
+00074         ExpandDown,
+00075 
+00077         ExpandBoth
+00078     };
+00079 
+00080     explicit QwtPlotRescaler( QwtPlotCanvas *,
+00081         int referenceAxis = QwtPlot::xBottom,
+00082         RescalePolicy = Expanding );
+00083 
+00084     virtual ~QwtPlotRescaler();
+00085 
+00086     void setEnabled( bool );
+00087     bool isEnabled() const;
+00088 
+00089     void setRescalePolicy( RescalePolicy );
+00090     RescalePolicy rescalePolicy() const;
+00091 
+00092     void setExpandingDirection( ExpandingDirection );
+00093     void setExpandingDirection( int axis, ExpandingDirection );
+00094     ExpandingDirection expandingDirection( int axis ) const;
+00095 
+00096     void setReferenceAxis( int axis );
+00097     int referenceAxis() const;
+00098 
+00099     void setAspectRatio( double ratio );
+00100     void setAspectRatio( int axis, double ratio );
+00101     double aspectRatio( int axis ) const;
+00102 
+00103     void setIntervalHint( int axis, const QwtInterval& );
+00104     QwtInterval intervalHint( int axis ) const;
+00105 
+00106     QwtPlotCanvas *canvas();
+00107     const QwtPlotCanvas *canvas() const;
+00108 
+00109     QwtPlot *plot();
+00110     const QwtPlot *plot() const;
+00111 
+00112     virtual bool eventFilter( QObject *, QEvent * );
+00113 
+00114     void rescale() const;
+00115 
+00116 protected:
+00117     virtual void canvasResizeEvent( QResizeEvent * );
+00118 
+00119     virtual void rescale( const QSize &oldSize, const QSize &newSize ) const;
+00120     virtual QwtInterval expandScale( 
+00121         int axis, const QSize &oldSize, const QSize &newSize ) const;
+00122 
+00123     virtual QwtInterval syncScale(
+00124         int axis, const QwtInterval& reference,
+00125         const QSize &size ) const;
+00126 
+00127     virtual void updateScales(
+00128         QwtInterval intervals[QwtPlot::axisCnt] ) const;
+00129 
+00130     Qt::Orientation orientation( int axis ) const;
+00131     QwtInterval interval( int axis ) const;
+00132     QwtInterval expandInterval( const QwtInterval &,
+00133         double width, ExpandingDirection ) const;
+00134 
+00135 private:
+00136     double pixelDist( int axis, const QSize & ) const;
+00137 
+00138     class AxisData;
+00139     class PrivateData;
+00140     PrivateData *d_data;
+00141 };
+00142 
+00143 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__scaleitem_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__scaleitem_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__scaleitem_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__scaleitem_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,113 @@ + + + + +Qwt User's Guide: qwt_plot_scaleitem.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_plot_scaleitem.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_PLOT_SCALE_ITEM_H
+00011 #define QWT_PLOT_SCALE_ITEM_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_plot_item.h"
+00015 #include "qwt_scale_draw.h"
+00016 
+00017 class QPalette;
+00018 
+00047 class QWT_EXPORT QwtPlotScaleItem: public QwtPlotItem
+00048 {
+00049 public:
+00050     explicit QwtPlotScaleItem(
+00051         QwtScaleDraw::Alignment = QwtScaleDraw::BottomScale,
+00052         const double pos = 0.0 );
+00053 
+00054     virtual ~QwtPlotScaleItem();
+00055 
+00056     virtual int rtti() const;
+00057 
+00058     void setScaleDiv( const QwtScaleDiv& );
+00059     const QwtScaleDiv& scaleDiv() const;
+00060 
+00061     void setScaleDivFromAxis( bool on );
+00062     bool isScaleDivFromAxis() const;
+00063 
+00064     void setPalette( const QPalette & );
+00065     QPalette palette() const;
+00066 
+00067     void setFont( const QFont& );
+00068     QFont font() const;
+00069 
+00070     void setScaleDraw( QwtScaleDraw * );
+00071 
+00072     const QwtScaleDraw *scaleDraw() const;
+00073     QwtScaleDraw *scaleDraw();
+00074 
+00075     void setPosition( double pos );
+00076     double position() const;
+00077 
+00078     void setBorderDistance( int numPixels );
+00079     int borderDistance() const;
+00080 
+00081     void setAlignment( QwtScaleDraw::Alignment );
+00082 
+00083     virtual void draw( QPainter *p,
+00084         const QwtScaleMap &xMap, const QwtScaleMap &yMap,
+00085         const QRectF &rect ) const;
+00086 
+00087     virtual void updateScaleDiv( const QwtScaleDiv &, const QwtScaleDiv & );
+00088 
+00089 private:
+00090     class PrivateData;
+00091     PrivateData *d_data;
+00092 };
+00093 
+00094 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__seriesitem_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__seriesitem_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__seriesitem_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__seriesitem_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,192 @@ + + + + +Qwt User's Guide: qwt_plot_seriesitem.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_plot_seriesitem.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_PLOT_SERIES_ITEM_H
+00011 #define QWT_PLOT_SERIES_ITEM_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_plot_item.h"
+00015 #include "qwt_scale_div.h"
+00016 #include "qwt_series_data.h"
+00017 
+00021 class QWT_EXPORT QwtPlotAbstractSeriesItem: public QwtPlotItem
+00022 {
+00023 public:
+00024     explicit QwtPlotAbstractSeriesItem( const QString &title = QString::null );
+00025     explicit QwtPlotAbstractSeriesItem( const QwtText &title );
+00026 
+00027     virtual ~QwtPlotAbstractSeriesItem();
+00028 
+00029     void setOrientation( Qt::Orientation );
+00030     Qt::Orientation orientation() const;
+00031 
+00032     virtual void draw( QPainter *p,
+00033         const QwtScaleMap &xMap, const QwtScaleMap &yMap,
+00034         const QRectF & ) const;
+00035 
+00047     virtual void drawSeries( QPainter *painter,
+00048         const QwtScaleMap &xMap, const QwtScaleMap &yMap,
+00049         const QRectF &canvasRect, int from, int to ) const = 0;
+00050 
+00051 private:
+00052     class PrivateData;
+00053     PrivateData *d_data;
+00054 };
+00055 
+00059 template <typename T>
+00060 class QwtPlotSeriesItem: public QwtPlotAbstractSeriesItem
+00061 {
+00062 public:
+00063     explicit QwtPlotSeriesItem<T>( const QString &title = QString::null );
+00064     explicit QwtPlotSeriesItem<T>( const QwtText &title );
+00065 
+00066     virtual ~QwtPlotSeriesItem<T>();
+00067 
+00068     void setData( QwtSeriesData<T> * );
+00069 
+00070     QwtSeriesData<T> *data();
+00071     const QwtSeriesData<T> *data() const;
+00072 
+00073     size_t dataSize() const;
+00074     T sample( int index ) const;
+00075 
+00076     virtual QRectF boundingRect() const;
+00077     virtual void updateScaleDiv( const QwtScaleDiv &,
+00078                                  const QwtScaleDiv & );
+00079 
+00080 protected:
+00082     QwtSeriesData<T> *d_series;
+00083 };
+00084 
+00089 template <typename T>
+00090 QwtPlotSeriesItem<T>::QwtPlotSeriesItem( const QString &title ):
+00091     QwtPlotAbstractSeriesItem( QwtText( title ) ),
+00092     d_series( NULL )
+00093 {
+00094 }
+00095 
+00100 template <typename T>
+00101 QwtPlotSeriesItem<T>::QwtPlotSeriesItem( const QwtText &title ):
+00102     QwtPlotAbstractSeriesItem( title ),
+00103     d_series( NULL )
+00104 {
+00105 }
+00106 
+00108 template <typename T>
+00109 QwtPlotSeriesItem<T>::~QwtPlotSeriesItem()
+00110 {
+00111     delete d_series;
+00112 }
+00113 
+00115 template <typename T>
+00116 inline QwtSeriesData<T> *QwtPlotSeriesItem<T>::data()
+00117 {
+00118     return d_series;
+00119 }
+00120 
+00122 template <typename T>
+00123 inline const QwtSeriesData<T> *QwtPlotSeriesItem<T>::data() const
+00124 {
+00125     return d_series;
+00126 }
+00127 
+00132 template <typename T>
+00133 inline T QwtPlotSeriesItem<T>::sample( int index ) const
+00134 {
+00135     return d_series ? d_series->sample( index ) : T();
+00136 }
+00137 
+00145 template <typename T>
+00146 void QwtPlotSeriesItem<T>::setData( QwtSeriesData<T> *data )
+00147 {
+00148     if ( d_series != data )
+00149     {
+00150         delete d_series;
+00151         d_series = data;
+00152         itemChanged();
+00153     }
+00154 }
+00155 
+00160 template <typename T>
+00161 size_t QwtPlotSeriesItem<T>::dataSize() const
+00162 {
+00163     if ( d_series == NULL )
+00164         return 0;
+00165 
+00166     return d_series->size();
+00167 }
+00168 
+00175 template <typename T>
+00176 QRectF QwtPlotSeriesItem<T>::boundingRect() const
+00177 {
+00178     if ( d_series == NULL )
+00179         return QRectF( 1.0, 1.0, -2.0, -2.0 ); // invalid
+00180 
+00181     return d_series->boundingRect();
+00182 }
+00183 
+00192 template <typename T>
+00193 void QwtPlotSeriesItem<T>::updateScaleDiv( 
+00194     const QwtScaleDiv &xScaleDiv, const QwtScaleDiv &yScaleDiv )
+00195 {
+00196     const QRectF rect = QRectF(
+00197         xScaleDiv.lowerBound(), yScaleDiv.lowerBound(),
+00198         xScaleDiv.range(), yScaleDiv.range() );
+00199 
+00200     d_series->setRectOfInterest( rect );
+00201 }
+00202 
+00203 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__spectrocurve_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__spectrocurve_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__spectrocurve_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__spectrocurve_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,116 @@ + + + + +Qwt User's Guide: qwt_plot_spectrocurve.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_plot_spectrocurve.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_PLOT_CURVE_3D_H
+00011 #define QWT_PLOT_CURVE_3D_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_plot_seriesitem.h"
+00015 #include "qwt_series_data.h"
+00016 
+00017 class QwtSymbol;
+00018 class QwtColorMap;
+00019 
+00024 class QWT_EXPORT QwtPlotSpectroCurve: public QwtPlotSeriesItem<QwtPoint3D>
+00025 {
+00026 public:
+00028     enum PaintAttribute
+00029     {
+00031         ClipPoints = 1
+00032     };
+00033 
+00035     typedef QFlags<PaintAttribute> PaintAttributes;
+00036 
+00037     explicit QwtPlotSpectroCurve( const QString &title = QString::null );
+00038     explicit QwtPlotSpectroCurve( const QwtText &title );
+00039 
+00040     virtual ~QwtPlotSpectroCurve();
+00041 
+00042     virtual int rtti() const;
+00043 
+00044     void setPaintAttribute( PaintAttribute, bool on = true );
+00045     bool testPaintAttribute( PaintAttribute ) const;
+00046 
+00047     void setSamples( const QVector<QwtPoint3D> & );
+00048 
+00049     void setColorMap( QwtColorMap * );
+00050     const QwtColorMap *colorMap() const;
+00051 
+00052     void setColorRange( const QwtInterval & );
+00053     QwtInterval & colorRange() const;
+00054 
+00055     virtual void drawSeries( QPainter *,
+00056         const QwtScaleMap &xMap, const QwtScaleMap &yMap,
+00057         const QRectF &canvasRect, int from, int to ) const;
+00058 
+00059     void setPenWidth(double width);
+00060     double penWidth() const;
+00061 
+00062 protected:
+00063     virtual void drawDots( QPainter *,
+00064         const QwtScaleMap &xMap, const QwtScaleMap &yMap,
+00065         const QRectF &canvasRect, int from, int to ) const;
+00066 
+00067 private:
+00068     void init();
+00069 
+00070     class PrivateData;
+00071     PrivateData *d_data;
+00072 };
+00073 
+00074 Q_DECLARE_OPERATORS_FOR_FLAGS( QwtPlotSpectroCurve::PaintAttributes );
+00075 
+00076 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__spectrogram_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__spectrogram_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__spectrogram_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__spectrogram_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,140 @@ + + + + +Qwt User's Guide: qwt_plot_spectrogram.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_plot_spectrogram.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_PLOT_SPECTROGRAM_H
+00011 #define QWT_PLOT_SPECTROGRAM_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_raster_data.h"
+00015 #include "qwt_plot_rasteritem.h"
+00016 #include <qlist.h>
+00017 
+00018 class QwtColorMap;
+00019 
+00034 class QWT_EXPORT QwtPlotSpectrogram: public QwtPlotRasterItem
+00035 {
+00036 public:
+00042     enum DisplayMode
+00043     {
+00045         ImageMode = 0x01,
+00046 
+00048         ContourMode = 0x02
+00049     };
+00050 
+00052     typedef QFlags<DisplayMode> DisplayModes;
+00053 
+00054     explicit QwtPlotSpectrogram( const QString &title = QString::null );
+00055     virtual ~QwtPlotSpectrogram();
+00056 
+00057     void setRenderThreadCount( uint numThreads );
+00058     uint renderThreadCount() const;
+00059 
+00060     void setDisplayMode( DisplayMode, bool on = true );
+00061     bool testDisplayMode( DisplayMode ) const;
+00062 
+00063     void setData( QwtRasterData *data );
+00064     const QwtRasterData *data() const;
+00065     QwtRasterData *data();
+00066 
+00067     void setColorMap( QwtColorMap * );
+00068     const QwtColorMap *colorMap() const;
+00069 
+00070     virtual QwtInterval interval(Qt::Axis) const;
+00071     virtual QRectF pixelHint( const QRectF & ) const;
+00072 
+00073     void setDefaultContourPen( const QPen & );
+00074     QPen defaultContourPen() const;
+00075 
+00076     virtual QPen contourPen( double level ) const;
+00077 
+00078     void setConrecFlag( QwtRasterData::ConrecFlag, bool on );
+00079     bool testConrecFlag( QwtRasterData::ConrecFlag ) const;
+00080 
+00081     void setContourLevels( const QList<double> & );
+00082     QList<double> contourLevels() const;
+00083 
+00084     virtual int rtti() const;
+00085 
+00086     virtual void draw( QPainter *p,
+00087         const QwtScaleMap &xMap, const QwtScaleMap &yMap,
+00088         const QRectF &rect ) const;
+00089 
+00090 protected:
+00091     virtual QImage renderImage(
+00092         const QwtScaleMap &xMap, const QwtScaleMap &yMap,
+00093         const QRectF &area, const QSize &imageSize ) const;
+00094 
+00095     virtual QSize contourRasterSize(
+00096         const QRectF &, const QRect & ) const;
+00097 
+00098     virtual QwtRasterData::ContourLines renderContourLines(
+00099         const QRectF &rect, const QSize &raster ) const;
+00100 
+00101     virtual void drawContourLines( QPainter *p,
+00102         const QwtScaleMap &xMap, const QwtScaleMap &yMap,
+00103         const QwtRasterData::ContourLines& lines ) const;
+00104 
+00105     void renderTile( const QwtScaleMap &xMap, const QwtScaleMap &yMap,
+00106         const QRect &imageRect, QImage *image ) const;
+00107 
+00108 private:
+00109     class PrivateData;
+00110     PrivateData *d_data;
+00111 };
+00112 
+00113 Q_DECLARE_OPERATORS_FOR_FLAGS( QwtPlotSpectrogram::DisplayModes );
+00114 
+00115 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__svgitem_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__svgitem_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__svgitem_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__svgitem_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,101 @@ + + + + +Qwt User's Guide: qwt_plot_svgitem.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_plot_svgitem.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_PLOT_SVGITEM_H
+00011 #define QWT_PLOT_SVGITEM_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_plot_item.h"
+00015 #include <qstring.h>
+00016 
+00017 class QSvgRenderer;
+00018 class QByteArray;
+00019 
+00027 class QWT_EXPORT QwtPlotSvgItem: public QwtPlotItem
+00028 {
+00029 public:
+00030     explicit QwtPlotSvgItem( const QString& title = QString::null );
+00031     explicit QwtPlotSvgItem( const QwtText& title );
+00032     virtual ~QwtPlotSvgItem();
+00033 
+00034     bool loadFile( const QRectF&, const QString &fileName );
+00035     bool loadData( const QRectF&, const QByteArray & );
+00036 
+00037     virtual QRectF boundingRect() const;
+00038 
+00039     virtual void draw( QPainter *p,
+00040         const QwtScaleMap &xMap, const QwtScaleMap &yMap,
+00041         const QRectF &rect ) const;
+00042 
+00043     virtual int rtti() const;
+00044 
+00045 protected:
+00046     const QSvgRenderer &renderer() const;
+00047     QSvgRenderer &renderer();
+00048 
+00049     void render( QPainter *painter,
+00050         const QRectF &viewBox, const QRectF &rect ) const;
+00051 
+00052     QRectF viewBox( const QRectF &area ) const;
+00053 
+00054 private:
+00055     void init();
+00056 
+00057     class PrivateData;
+00058     PrivateData *d_data;
+00059 };
+00060 
+00061 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__zoomer_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__zoomer_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__zoomer_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__plot__zoomer_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,120 @@ + + + + +Qwt User's Guide: qwt_plot_zoomer.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_plot_zoomer.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_PLOT_ZOOMER_H
+00011 #define QWT_PLOT_ZOOMER_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_plot_picker.h"
+00015 #include <qstack.h>
+00016 
+00041 class QWT_EXPORT QwtPlotZoomer: public QwtPlotPicker
+00042 {
+00043     Q_OBJECT
+00044 public:
+00045     explicit QwtPlotZoomer( QwtPlotCanvas *, bool doReplot = true );
+00046     explicit QwtPlotZoomer( int xAxis, int yAxis,
+00047                             QwtPlotCanvas *, bool doReplot = true );
+00048 
+00049     virtual ~QwtPlotZoomer();
+00050 
+00051     virtual void setZoomBase( bool doReplot = true );
+00052     virtual void setZoomBase( const QRectF & );
+00053 
+00054     QRectF zoomBase() const;
+00055     QRectF zoomRect() const;
+00056 
+00057     virtual void setAxis( int xAxis, int yAxis );
+00058 
+00059     void setMaxStackDepth( int );
+00060     int maxStackDepth() const;
+00061 
+00062     const QStack<QRectF> &zoomStack() const;
+00063     void setZoomStack( const QStack<QRectF> &,
+00064         int zoomRectIndex = -1 );
+00065 
+00066     uint zoomRectIndex() const;
+00067 
+00068 public Q_SLOTS:
+00069     void moveBy( double x, double y );
+00070     virtual void moveTo( const QPointF & );
+00071 
+00072     virtual void zoom( const QRectF & );
+00073     virtual void zoom( int up );
+00074 
+00075 Q_SIGNALS:
+00083     void zoomed( const QRectF &rect );
+00084 
+00085 protected:
+00086     virtual void rescale();
+00087 
+00088     virtual QSizeF minZoomSize() const;
+00089 
+00090     virtual void widgetMouseReleaseEvent( QMouseEvent * );
+00091     virtual void widgetKeyPressEvent( QKeyEvent * );
+00092 
+00093     virtual void begin();
+00094     virtual bool end( bool ok = true );
+00095     virtual bool accept( QPolygon & ) const;
+00096 
+00097 private:
+00098     void init( bool doReplot );
+00099 
+00100     class PrivateData;
+00101     PrivateData *d_data;
+00102 };
+00103 
+00104 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__point__3d_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__point__3d_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__point__3d_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__point__3d_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,198 @@ + + + + +Qwt User's Guide: qwt_point_3d.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_point_3d.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00011 #ifndef QWT_POINT_3D_H
+00012 #define QWT_POINT_3D_H 1
+00013 
+00014 #include "qwt_global.h"
+00015 #include <qpoint.h>
+00016 #ifndef QT_NO_DEBUG_STREAM
+00017 #include <qdebug.h>
+00018 #endif
+00019 
+00024 class QWT_EXPORT QwtPoint3D
+00025 {
+00026 public:
+00027     QwtPoint3D();
+00028     QwtPoint3D( double x, double y, double z );
+00029     QwtPoint3D( const QwtPoint3D & );
+00030     QwtPoint3D( const QPointF & );
+00031 
+00032     bool isNull()    const;
+00033 
+00034     double x() const;
+00035     double y() const;
+00036     double z() const;
+00037 
+00038     double &rx();
+00039     double &ry();
+00040     double &rz();
+00041 
+00042     void setX( double x );
+00043     void setY( double y );
+00044     void setZ( double y );
+00045 
+00046     QPointF toPoint() const;
+00047 
+00048     bool operator==( const QwtPoint3D & ) const;
+00049     bool operator!=( const QwtPoint3D & ) const;
+00050 
+00051 private:
+00052     double d_x;
+00053     double d_y;
+00054     double d_z;
+00055 };
+00056 
+00057 Q_DECLARE_TYPEINFO(QwtPoint3D, Q_MOVABLE_TYPE);
+00058 
+00059 #ifndef QT_NO_DEBUG_STREAM
+00060 QWT_EXPORT QDebug operator<<( QDebug, const QwtPoint3D & );
+00061 #endif
+00062 
+00067 inline QwtPoint3D::QwtPoint3D():
+00068     d_x( 0.0 ),
+00069     d_y( 0.0 ),
+00070     d_z( 0.0 )
+00071 {
+00072 }
+00073 
+00075 inline QwtPoint3D::QwtPoint3D( double x, double y, double z = 0.0 ):
+00076     d_x( x ),
+00077     d_y( y ),
+00078     d_z( z )
+00079 {
+00080 }
+00081 
+00086 inline QwtPoint3D::QwtPoint3D( const QwtPoint3D &other ):
+00087     d_x( other.d_x ),
+00088     d_y( other.d_y ),
+00089     d_z( other.d_z )
+00090 {
+00091 }
+00092 
+00097 inline QwtPoint3D::QwtPoint3D( const QPointF &other ):
+00098     d_x( other.x() ),
+00099     d_y( other.y() ),
+00100     d_z( 0.0 )
+00101 {
+00102 }
+00103 
+00110 inline bool QwtPoint3D::isNull() const
+00111 {
+00112     return d_x == 0.0 && d_y == 0.0 && d_z == 0;
+00113 }
+00114 
+00116 inline double QwtPoint3D::x() const
+00117 {
+00118     return d_x;
+00119 }
+00120 
+00122 inline double QwtPoint3D::y() const
+00123 {
+00124     return d_y;
+00125 }
+00126 
+00128 inline double QwtPoint3D::z() const
+00129 {
+00130     return d_z;
+00131 }
+00132 
+00134 inline double &QwtPoint3D::rx()
+00135 {
+00136     return d_x;
+00137 }
+00138 
+00140 inline double &QwtPoint3D::ry()
+00141 {
+00142     return d_y;
+00143 }
+00144 
+00146 inline double &QwtPoint3D::rz()
+00147 {
+00148     return d_z;
+00149 }
+00150 
+00152 inline void QwtPoint3D::setX( double x )
+00153 {
+00154     d_x = x;
+00155 }
+00156 
+00158 inline void QwtPoint3D::setY( double y )
+00159 {
+00160     d_y = y;
+00161 }
+00162 
+00164 inline void QwtPoint3D::setZ( double z )
+00165 {
+00166     d_z = z;
+00167 }
+00168 
+00172 inline QPointF QwtPoint3D::toPoint() const
+00173 {
+00174     return QPointF( d_x, d_y );
+00175 }
+00176 
+00178 inline bool QwtPoint3D::operator==( const QwtPoint3D &other ) const
+00179 {
+00180     return ( d_x == other.d_x ) && ( d_y == other.d_y ) && ( d_z == other.d_z );
+00181 }
+00182 
+00184 inline bool QwtPoint3D::operator!=( const QwtPoint3D &other ) const
+00185 {
+00186     return !operator==( other );
+00187 }
+00188 
+00189 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__point__polar_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__point__polar_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__point__polar_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__point__polar_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,207 @@ + + + + +Qwt User's Guide: qwt_point_polar.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_point_polar.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00011 #ifndef _QWT_POINT_POLAR_H_
+00012 #define _QWT_POINT_POLAR_H_ 1
+00013 
+00014 #include "qwt_global.h"
+00015 #include "qwt_math.h"
+00016 #include <qpoint.h>
+00017 #ifndef QT_NO_DEBUG_STREAM
+00018 #include <qdebug.h>
+00019 #endif
+00020 
+00028 class QWT_EXPORT QwtPointPolar
+00029 {
+00030 public:
+00031     QwtPointPolar();
+00032     QwtPointPolar( double azimuth, double radius );
+00033     QwtPointPolar( const QwtPointPolar & );
+00034     QwtPointPolar( const QPointF & );
+00035 
+00036     void setPoint( const QPointF & );
+00037     QPointF toPoint() const;
+00038 
+00039     bool isValid() const;
+00040     bool isNull() const;
+00041 
+00042     double radius() const;
+00043     double azimuth() const;
+00044 
+00045     double &rRadius();
+00046     double &rAzimuth();
+00047 
+00048     void setRadius( double );
+00049     void setAzimuth( double );
+00050 
+00051     bool operator==( const QwtPointPolar & ) const;
+00052     bool operator!=( const QwtPointPolar & ) const;
+00053 
+00054     QwtPointPolar normalized() const;
+00055 
+00056 private:
+00057     double d_azimuth;
+00058     double d_radius;
+00059 };
+00060 
+00065 inline QwtPointPolar::QwtPointPolar():
+00066     d_azimuth( 0.0 ),
+00067     d_radius( 0.0 )
+00068 {
+00069 }
+00070 
+00077 inline QwtPointPolar::QwtPointPolar( double azimuth, double radius ):
+00078     d_azimuth( azimuth ),
+00079     d_radius( radius )
+00080 {
+00081 }
+00082 
+00087 inline QwtPointPolar::QwtPointPolar( const QwtPointPolar &other ):
+00088     d_azimuth( other.d_azimuth ),
+00089     d_radius( other.d_radius )
+00090 {
+00091 }
+00092 
+00094 inline bool QwtPointPolar::isValid() const
+00095 {
+00096     return d_radius >= 0.0;
+00097 }
+00098 
+00100 inline bool QwtPointPolar::isNull() const
+00101 {
+00102     return d_radius == 0.0;
+00103 }
+00104 
+00106 inline double QwtPointPolar::radius() const
+00107 {
+00108     return d_radius;
+00109 }
+00110 
+00112 inline double QwtPointPolar::azimuth() const
+00113 {
+00114     return d_azimuth;
+00115 }
+00116 
+00118 inline double &QwtPointPolar::rRadius()
+00119 {
+00120     return d_radius;
+00121 }
+00122 
+00124 inline double &QwtPointPolar::rAzimuth()
+00125 {
+00126     return d_azimuth;
+00127 }
+00128 
+00130 inline void QwtPointPolar::setRadius( double radius )
+00131 {
+00132     d_radius = radius;
+00133 }
+00134 
+00136 inline void QwtPointPolar::setAzimuth( double azimuth )
+00137 {
+00138     d_azimuth = azimuth;
+00139 }
+00140 
+00141 #ifndef QT_NO_DEBUG_STREAM
+00142 QWT_EXPORT QDebug operator<<( QDebug, const QwtPointPolar & );
+00143 #endif
+00144 
+00145 inline QPoint qwtPolar2Pos( const QPoint &pole,
+00146     double radius, double angle )
+00147 {
+00148     const double x = pole.x() + radius * qCos( angle );
+00149     const double y = pole.y() - radius * qSin( angle );
+00150 
+00151     return QPoint( qRound( x ), qRound( y ) );
+00152 }
+00153 
+00154 inline QPoint qwtDegree2Pos( const QPoint &pole,
+00155     double radius, double angle )
+00156 {
+00157     return qwtPolar2Pos( pole, radius, angle / 180.0 * M_PI );
+00158 }
+00159 
+00160 inline QPointF qwtPolar2Pos( const QPointF &pole,
+00161     double radius, double angle )
+00162 {
+00163     const double x = pole.x() + radius * qCos( angle );
+00164     const double y = pole.y() - radius * qSin( angle );
+00165 
+00166     return QPointF( x, y);
+00167 }
+00168 
+00169 inline QPointF qwtDegree2Pos( const QPointF &pole,
+00170     double radius, double angle )
+00171 {
+00172     return qwtPolar2Pos( pole, radius, angle / 180.0 * M_PI );
+00173 }
+00174 
+00175 inline QPointF qwtFastPolar2Pos( const QPointF &pole,
+00176     double radius, double angle )
+00177 {
+00178     const double x = pole.x() + radius * qFastCos( angle );
+00179     const double y = pole.y() - radius * qFastSin( angle );
+00180 
+00181     return QPointF( x, y);
+00182 }
+00183 
+00184 inline QPointF qwtFastDegree2Pos( const QPointF &pole,
+00185     double radius, double angle )
+00186 {   
+00187     return qwtFastPolar2Pos( pole, radius, angle / 180.0 * M_PI );
+00188 } 
+00189 
+00190 #endif 
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__raster__data_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__raster__data_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__raster__data_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__raster__data_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,117 @@ + + + + +Qwt User's Guide: qwt_raster_data.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_raster_data.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_RASTER_DATA_H
+00011 #define QWT_RASTER_DATA_H 1
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_interval.h"
+00015 #include <qmap.h>
+00016 #include <qlist.h>
+00017 #include <qpolygon.h>
+00018 
+00019 class QwtScaleMap;
+00020 
+00032 class QWT_EXPORT QwtRasterData
+00033 {
+00034 public:
+00036     typedef QMap<double, QPolygonF> ContourLines;
+00037 
+00039     enum ConrecFlag
+00040     {
+00042         IgnoreAllVerticesOnLevel = 0x01,
+00043 
+00045         IgnoreOutOfRange = 0x02
+00046     };
+00047 
+00049     typedef QFlags<ConrecFlag> ConrecFlags;
+00050 
+00051     QwtRasterData();
+00052     virtual ~QwtRasterData();
+00053 
+00054     virtual void setInterval( Qt::Axis, const QwtInterval & );
+00055     const QwtInterval &interval(Qt::Axis) const;
+00056 
+00057     virtual QRectF pixelHint( const QRectF & ) const;
+00058 
+00059     virtual void initRaster( const QRectF &, const QSize& raster );
+00060     virtual void discardRaster();
+00061 
+00067     virtual double value( double x, double y ) const = 0;
+00068 
+00069     virtual ContourLines contourLines( const QRectF &rect,
+00070         const QSize &raster, const QList<double> &levels,
+00071         ConrecFlags ) const;
+00072 
+00073     class Contour3DPoint;
+00074     class ContourPlane;
+00075 
+00076 private:
+00077     // Disabled copy constructor and operator=
+00078     QwtRasterData( const QwtRasterData & );
+00079     QwtRasterData &operator=( const QwtRasterData & );
+00080 
+00081     QwtInterval d_intervals[3];
+00082 };
+00083 
+00088 inline const QwtInterval &QwtRasterData::interval( Qt::Axis axis) const
+00089 {
+00090     return d_intervals[axis];
+00091 }
+00092 
+00093 Q_DECLARE_OPERATORS_FOR_FLAGS( QwtRasterData::ConrecFlags );
+00094 
+00095 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__round__scale__draw_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__round__scale__draw_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__round__scale__draw_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__round__scale__draw_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,101 @@ + + + + +Qwt User's Guide: qwt_round_scale_draw.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_round_scale_draw.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_ROUND_SCALE_DRAW_H
+00011 #define QWT_ROUND_SCALE_DRAW_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_abstract_scale_draw.h"
+00015 #include <qpoint.h>
+00016 
+00017 class QPen;
+00018 
+00032 class QWT_EXPORT QwtRoundScaleDraw: public QwtAbstractScaleDraw
+00033 {
+00034 public:
+00035     QwtRoundScaleDraw();
+00036     virtual ~QwtRoundScaleDraw();
+00037 
+00038     void setRadius( int radius );
+00039     int radius() const;
+00040 
+00041     void moveCenter( double x, double y );
+00042     void moveCenter( const QPointF & );
+00043     QPointF center() const;
+00044 
+00045     void setAngleRange( double angle1, double angle2 );
+00046 
+00047     virtual double extent( const QFont & ) const;
+00048 
+00049 protected:
+00050     virtual void drawTick( QPainter *p, double val, double len ) const;
+00051     virtual void drawBackbone( QPainter *p ) const;
+00052     virtual void drawLabel( QPainter *p, double val ) const;
+00053 
+00054 private:
+00055     QwtRoundScaleDraw( const QwtRoundScaleDraw & );
+00056     QwtRoundScaleDraw &operator=( const QwtRoundScaleDraw &other );
+00057 
+00058     class PrivateData;
+00059     PrivateData *d_data;
+00060 };
+00061 
+00063 inline void QwtRoundScaleDraw::moveCenter( double x, double y )
+00064 {
+00065     moveCenter( QPointF( x, y ) );
+00066 }
+00067 
+00068 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__sampling__thread_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__sampling__thread_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__sampling__thread_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__sampling__thread_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,80 @@ + + + + +Qwt User's Guide: qwt_sampling_thread.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_sampling_thread.h

+
+
+
00001 #ifndef _QWT_SAMPLING_THREAD_H_
+00002 #define _QWT_SAMPLING_THREAD_H_
+00003 
+00004 #include "qwt_global.h"
+00005 #include <qthread.h>
+00006 
+00019 class QWT_EXPORT QwtSamplingThread: public QThread
+00020 {
+00021     Q_OBJECT
+00022 
+00023 public:
+00024     virtual ~QwtSamplingThread();
+00025 
+00026     double interval() const;
+00027     double elapsed() const;
+00028 
+00029 public Q_SLOTS:
+00030     void setInterval( double interval );
+00031     void stop();
+00032 
+00033 protected:
+00034     explicit QwtSamplingThread( QObject *parent = NULL );
+00035 
+00036     virtual void run();
+00037 
+00043     virtual void sample( double elapsed ) = 0;
+00044 
+00045 private:
+00046     class PrivateData;
+00047     PrivateData *d_data;
+00048 };
+00049 
+00050 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__scale__div_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__scale__div_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__scale__div_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__scale__div_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,143 @@ + + + + +Qwt User's Guide: qwt_scale_div.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_scale_div.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_SCALE_DIV_H
+00011 #define QWT_SCALE_DIV_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_interval.h"
+00015 #include <qlist.h>
+00016 
+00017 class QwtInterval;
+00018 
+00030 class QWT_EXPORT QwtScaleDiv
+00031 {
+00032 public:
+00034     enum TickType
+00035     {
+00037         NoTick = -1,
+00038 
+00040         MinorTick,
+00041 
+00043         MediumTick,
+00044 
+00046         MajorTick,
+00047 
+00049         NTickTypes
+00050     };
+00051 
+00052     explicit QwtScaleDiv();
+00053     explicit QwtScaleDiv( const QwtInterval &, QList<double>[NTickTypes] );
+00054     explicit QwtScaleDiv( 
+00055         double lowerBound, double upperBound, QList<double>[NTickTypes] );
+00056 
+00057     bool operator==( const QwtScaleDiv &s ) const;
+00058     bool operator!=( const QwtScaleDiv &s ) const;
+00059 
+00060     void setInterval( double lowerBound, double upperBound );
+00061     void setInterval( const QwtInterval & );
+00062     QwtInterval interval() const;
+00063 
+00064     double lowerBound() const;
+00065     double upperBound() const;
+00066     double range() const;
+00067 
+00068     bool contains( double v ) const;
+00069 
+00070     void setTicks( int type, const QList<double> & );
+00071     const QList<double> &ticks( int type ) const;
+00072 
+00073     void invalidate();
+00074     bool isValid() const;
+00075 
+00076     void invert();
+00077 
+00078 private:
+00079     double d_lowerBound;
+00080     double d_upperBound;
+00081     QList<double> d_ticks[NTickTypes];
+00082 
+00083     bool d_isValid;
+00084 };
+00085 
+00086 Q_DECLARE_TYPEINFO(QwtScaleDiv, Q_MOVABLE_TYPE);
+00087 
+00093 inline void QwtScaleDiv::setInterval( double lowerBound, double upperBound )
+00094 {
+00095     d_lowerBound = lowerBound;
+00096     d_upperBound = upperBound;
+00097 }
+00098 
+00102 inline QwtInterval QwtScaleDiv::interval() const
+00103 {
+00104     return QwtInterval( d_lowerBound, d_upperBound );
+00105 }
+00106 
+00111 inline double QwtScaleDiv::lowerBound() const
+00112 {
+00113     return d_lowerBound;
+00114 }
+00115 
+00120 inline double QwtScaleDiv::upperBound() const
+00121 {
+00122     return d_upperBound;
+00123 }
+00124 
+00128 inline double QwtScaleDiv::range() const
+00129 {
+00130     return d_upperBound - d_lowerBound;
+00131 }
+00132 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__scale__draw_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__scale__draw_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__scale__draw_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__scale__draw_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,139 @@ + + + + +Qwt User's Guide: qwt_scale_draw.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_scale_draw.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_SCALE_DRAW_H
+00011 #define QWT_SCALE_DRAW_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_abstract_scale_draw.h"
+00015 #include <qpoint.h>
+00016 #include <qrect.h>
+00017 #include <qtransform.h>
+00018 
+00032 class QWT_EXPORT QwtScaleDraw: public QwtAbstractScaleDraw
+00033 {
+00034 public:
+00039     enum Alignment 
+00040     { 
+00042         BottomScale, 
+00043 
+00045         TopScale, 
+00046 
+00048         LeftScale, 
+00049 
+00051         RightScale 
+00052     };
+00053 
+00054     QwtScaleDraw();
+00055     virtual ~QwtScaleDraw();
+00056 
+00057     void getBorderDistHint( const QFont &, int &start, int &end ) const;
+00058     int minLabelDist( const QFont & ) const;
+00059 
+00060     int minLength( const QFont & ) const;
+00061     virtual double extent( const QFont & ) const;
+00062 
+00063     void move( double x, double y );
+00064     void move( const QPointF & );
+00065     void setLength( double length );
+00066 
+00067     Alignment alignment() const;
+00068     void setAlignment( Alignment );
+00069 
+00070     Qt::Orientation orientation() const;
+00071 
+00072     QPointF pos() const;
+00073     double length() const;
+00074 
+00075     void setLabelAlignment( Qt::Alignment );
+00076     Qt::Alignment labelAlignment() const;
+00077 
+00078     void setLabelRotation( double rotation );
+00079     double labelRotation() const;
+00080 
+00081     int maxLabelHeight( const QFont & ) const;
+00082     int maxLabelWidth( const QFont & ) const;
+00083 
+00084     QPointF labelPosition( double val ) const;
+00085 
+00086     QRectF labelRect( const QFont &, double val ) const;
+00087     QSizeF labelSize( const QFont &, double val ) const;
+00088 
+00089     QRect boundingLabelRect( const QFont &, double val ) const;
+00090 
+00091 protected:
+00092     QTransform labelTransformation( const QPointF &, const QSizeF & ) const;
+00093 
+00094     virtual void drawTick( QPainter *, double val, double len ) const;
+00095     virtual void drawBackbone( QPainter * ) const;
+00096     virtual void drawLabel( QPainter *, double val ) const;
+00097 
+00098 private:
+00099     QwtScaleDraw( const QwtScaleDraw & );
+00100     QwtScaleDraw &operator=( const QwtScaleDraw &other );
+00101 
+00102     void updateMap();
+00103 
+00104     class PrivateData;
+00105     PrivateData *d_data;
+00106 };
+00107 
+00112 inline void QwtScaleDraw::move( double x, double y )
+00113 {
+00114     move( QPointF( x, y ) );
+00115 }
+00116 
+00117 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__scale__engine_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__scale__engine_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__scale__engine_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__scale__engine_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,193 @@ + + + + +Qwt User's Guide: qwt_scale_engine.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_scale_engine.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_SCALE_ENGINE_H
+00011 #define QWT_SCALE_ENGINE_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_scale_div.h"
+00015 #include "qwt_interval.h"
+00016 
+00017 class QwtScaleTransformation;
+00018 
+00022 class QWT_EXPORT QwtScaleArithmetic
+00023 {
+00024 public:
+00025     static double ceilEps( double value, double intervalSize );
+00026     static double floorEps( double value, double intervalSize );
+00027 
+00028     static double divideEps( double interval, double steps );
+00029 
+00030     static double ceil125( double x );
+00031     static double floor125( double x );
+00032 };
+00033 
+00047 class QWT_EXPORT QwtScaleEngine
+00048 {
+00049 public:
+00056     enum Attribute
+00057     {
+00059         NoAttribute = 0x00,
+00060 
+00062         IncludeReference = 0x01,
+00063 
+00065         Symmetric = 0x02,
+00066 
+00074         Floating = 0x04,
+00075 
+00077         Inverted = 0x08
+00078     };
+00079 
+00081     typedef QFlags<Attribute> Attributes;
+00082 
+00083     explicit QwtScaleEngine();
+00084     virtual ~QwtScaleEngine();
+00085 
+00086     void setAttribute( Attribute, bool on = true );
+00087     bool testAttribute( Attribute ) const;
+00088 
+00089     void setAttributes( Attributes );
+00090     Attributes attributes() const;
+00091 
+00092     void setReference( double reference );
+00093     double reference() const;
+00094 
+00095     void setMargins( double lower, double upper );
+00096     double lowerMargin() const;
+00097     double upperMargin() const;
+00098 
+00107     virtual void autoScale( int maxNumSteps,
+00108         double &x1, double &x2, double &stepSize ) const = 0;
+00109 
+00120     virtual QwtScaleDiv divideScale( double x1, double x2,
+00121         int maxMajSteps, int maxMinSteps,
+00122         double stepSize = 0.0 ) const = 0;
+00123 
+00125     virtual QwtScaleTransformation *transformation() const = 0;
+00126 
+00127 protected:
+00128     bool contains( const QwtInterval &, double val ) const;
+00129     QList<double> strip( const QList<double>&, const QwtInterval & ) const;
+00130     double divideInterval( double interval, int numSteps ) const;
+00131 
+00132     QwtInterval buildInterval( double v ) const;
+00133 
+00134 private:
+00135     class PrivateData;
+00136     PrivateData *d_data;
+00137 };
+00138 
+00146 class QWT_EXPORT QwtLinearScaleEngine: public QwtScaleEngine
+00147 {
+00148 public:
+00149     virtual void autoScale( int maxSteps,
+00150         double &x1, double &x2, double &stepSize ) const;
+00151 
+00152     virtual QwtScaleDiv divideScale( double x1, double x2,
+00153         int numMajorSteps, int numMinorSteps,
+00154                                      double stepSize = 0.0 ) const;
+00155 
+00156     virtual QwtScaleTransformation *transformation() const;
+00157 
+00158 protected:
+00159     QwtInterval align( const QwtInterval&, double stepSize ) const;
+00160 
+00161     void buildTicks(
+00162         const QwtInterval &, double stepSize, int maxMinSteps,
+00163         QList<double> ticks[QwtScaleDiv::NTickTypes] ) const;
+00164 
+00165     QList<double> buildMajorTicks(
+00166         const QwtInterval &interval, double stepSize ) const;
+00167 
+00168     void buildMinorTicks(
+00169         const QList<double>& majorTicks,
+00170         int maxMinMark, double step,
+00171         QList<double> &, QList<double> & ) const;
+00172 };
+00173 
+00185 class QWT_EXPORT QwtLog10ScaleEngine: public QwtScaleEngine
+00186 {
+00187 public:
+00188     virtual void autoScale( int maxSteps,
+00189         double &x1, double &x2, double &stepSize ) const;
+00190 
+00191     virtual QwtScaleDiv divideScale( double x1, double x2,
+00192         int numMajorSteps, int numMinorSteps,
+00193         double stepSize = 0.0 ) const;
+00194 
+00195     virtual QwtScaleTransformation *transformation() const;
+00196 
+00197 protected:
+00198     QwtInterval log10( const QwtInterval& ) const;
+00199     QwtInterval pow10( const QwtInterval& ) const;
+00200 
+00201     QwtInterval align( const QwtInterval&, double stepSize ) const;
+00202 
+00203     void buildTicks(
+00204         const QwtInterval &, double stepSize, int maxMinSteps,
+00205         QList<double> ticks[QwtScaleDiv::NTickTypes] ) const;
+00206 
+00207     QList<double> buildMajorTicks(
+00208         const QwtInterval &interval, double stepSize ) const;
+00209 
+00210     QList<double> buildMinorTicks(
+00211         const QList<double>& majorTicks,
+00212         int maxMinMark, double step ) const;
+00213 };
+00214 
+00215 Q_DECLARE_OPERATORS_FOR_FLAGS( QwtScaleEngine::Attributes );
+00216 
+00217 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__scale__map_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__scale__map_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__scale__map_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__scale__map_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,215 @@ + + + + +Qwt User's Guide: qwt_scale_map.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_scale_map.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_SCALE_MAP_H
+00011 #define QWT_SCALE_MAP_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_math.h"
+00015 #ifndef QT_NO_DEBUG_STREAM
+00016 #include <qdebug.h>
+00017 #endif
+00018 
+00019 class QRectF;
+00020 
+00024 class QWT_EXPORT QwtScaleTransformation
+00025 {
+00026 public:
+00028     enum Type
+00029     {
+00031         Linear,
+00032 
+00034         Log10,
+00035 
+00037         Other
+00038     };
+00039 
+00040     QwtScaleTransformation( Type type );
+00041     virtual ~QwtScaleTransformation();
+00042 
+00043     virtual double xForm( double x, double s1, double s2,
+00044         double p1, double p2 ) const;
+00045     virtual double invXForm( double x, double s1, double s2,
+00046         double p1, double p2 ) const;
+00047 
+00048     Type type() const;
+00049 
+00050     virtual QwtScaleTransformation *copy() const;
+00051 
+00052 private:
+00053     QwtScaleTransformation();
+00054     QwtScaleTransformation &operator=( const QwtScaleTransformation );
+00055 
+00056     const Type d_type;
+00057 };
+00058 
+00060 inline QwtScaleTransformation::Type QwtScaleTransformation::type() const
+00061 {
+00062     return d_type;
+00063 }
+00064 
+00071 class QWT_EXPORT QwtScaleMap
+00072 {
+00073 public:
+00074     QwtScaleMap();
+00075     QwtScaleMap( const QwtScaleMap& );
+00076 
+00077     ~QwtScaleMap();
+00078 
+00079     QwtScaleMap &operator=( const QwtScaleMap & );
+00080 
+00081     void setTransformation( QwtScaleTransformation * );
+00082     const QwtScaleTransformation *transformation() const;
+00083 
+00084     void setPaintInterval( double p1, double p2 );
+00085     void setScaleInterval( double s1, double s2 );
+00086 
+00087     double transform( double s ) const;
+00088     double invTransform( double p ) const;
+00089 
+00090     double p1() const;
+00091     double p2() const;
+00092 
+00093     double s1() const;
+00094     double s2() const;
+00095 
+00096     double pDist() const;
+00097     double sDist() const;
+00098 
+00099     QT_STATIC_CONST double LogMin;
+00100     QT_STATIC_CONST double LogMax;
+00101 
+00102     static QRectF transform( const QwtScaleMap &,
+00103         const QwtScaleMap &, const QRectF & );
+00104     static QRectF invTransform( const QwtScaleMap &,
+00105         const QwtScaleMap &, const QRectF & );
+00106 
+00107     static QPointF transform( const QwtScaleMap &,
+00108         const QwtScaleMap &, const QPointF & );
+00109     static QPointF invTransform( const QwtScaleMap &,
+00110         const QwtScaleMap &, const QPointF & );
+00111 
+00112     bool isInverting() const;
+00113 
+00114 private:
+00115     void newFactor();
+00116 
+00117     double d_s1, d_s2;     // scale interval boundaries
+00118     double d_p1, d_p2;     // paint device interval boundaries
+00119 
+00120     double d_cnv;       // conversion factor
+00121 
+00122     QwtScaleTransformation *d_transformation;
+00123 };
+00124 
+00128 inline double QwtScaleMap::s1() const
+00129 {
+00130     return d_s1;
+00131 }
+00132 
+00136 inline double QwtScaleMap::s2() const
+00137 {
+00138     return d_s2;
+00139 }
+00140 
+00144 inline double QwtScaleMap::p1() const
+00145 {
+00146     return d_p1;
+00147 }
+00148 
+00152 inline double QwtScaleMap::p2() const
+00153 {
+00154     return d_p2;
+00155 }
+00156 
+00160 inline double QwtScaleMap::pDist() const
+00161 {
+00162     return qAbs( d_p2 - d_p1 );
+00163 }
+00164 
+00168 inline double QwtScaleMap::sDist() const
+00169 {
+00170     return qAbs( d_s2 - d_s1 );
+00171 }
+00172 
+00179 inline double QwtScaleMap::transform( double s ) const
+00180 {
+00181     // try to inline code from QwtScaleTransformation
+00182 
+00183     if ( d_transformation->type() == QwtScaleTransformation::Linear )
+00184         return d_p1 + ( s - d_s1 ) * d_cnv;
+00185 
+00186     if ( d_transformation->type() == QwtScaleTransformation::Log10 )
+00187         return d_p1 + log( s / d_s1 ) * d_cnv;
+00188 
+00189     return d_transformation->xForm( s, d_s1, d_s2, d_p1, d_p2 );
+00190 }
+00191 
+00199 inline double QwtScaleMap::invTransform( double p ) const
+00200 {
+00201     return d_transformation->invXForm( p, d_p1, d_p2, d_s1, d_s2 );
+00202 }
+00203 
+00205 inline bool QwtScaleMap::isInverting() const
+00206 {
+00207     return ( ( d_p1 < d_p2 ) != ( d_s1 < d_s2 ) );
+00208 }
+00209 
+00210 #ifndef QT_NO_DEBUG_STREAM
+00211 QWT_EXPORT QDebug operator<<( QDebug, const QwtScaleMap & );
+00212 #endif
+00213 
+00214 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__scale__widget_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__scale__widget_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__scale__widget_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__scale__widget_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,168 @@ + + + + +Qwt User's Guide: qwt_scale_widget.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_scale_widget.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_SCALE_WIDGET_H
+00011 #define QWT_SCALE_WIDGET_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_text.h"
+00015 #include "qwt_scale_draw.h"
+00016 #include <qwidget.h>
+00017 #include <qfont.h>
+00018 #include <qcolor.h>
+00019 #include <qstring.h>
+00020 
+00021 class QPainter;
+00022 class QwtScaleTransformation;
+00023 class QwtScaleDiv;
+00024 class QwtColorMap;
+00025 
+00033 class QWT_EXPORT QwtScaleWidget : public QWidget
+00034 {
+00035     Q_OBJECT
+00036 
+00037 public:
+00039     enum LayoutFlag
+00040     {
+00045         TitleInverted = 1
+00046     };
+00047 
+00049     typedef QFlags<LayoutFlag> LayoutFlags;
+00050 
+00051     explicit QwtScaleWidget( QWidget *parent = NULL );
+00052     explicit QwtScaleWidget( QwtScaleDraw::Alignment, QWidget *parent = NULL );
+00053     virtual ~QwtScaleWidget();
+00054 
+00055 Q_SIGNALS:
+00057     void scaleDivChanged();
+00058 
+00059 public:
+00060     void setTitle( const QString &title );
+00061     void setTitle( const QwtText &title );
+00062     QwtText title() const;
+00063 
+00064     void setLayoutFlag( LayoutFlag, bool on );
+00065     bool testLayoutFlag( LayoutFlag ) const;
+00066 
+00067     void setBorderDist( int start, int end );
+00068     int startBorderDist() const;
+00069     int endBorderDist() const;
+00070 
+00071     void getBorderDistHint( int &start, int &end ) const;
+00072 
+00073     void getMinBorderDist( int &start, int &end ) const;
+00074     void setMinBorderDist( int start, int end );
+00075 
+00076     void setMargin( int );
+00077     int margin() const;
+00078 
+00079     void setSpacing( int td );
+00080     int spacing() const;
+00081 
+00082     void setScaleDiv( QwtScaleTransformation *, const QwtScaleDiv &sd );
+00083 
+00084     void setScaleDraw( QwtScaleDraw * );
+00085     const QwtScaleDraw *scaleDraw() const;
+00086     QwtScaleDraw *scaleDraw();
+00087 
+00088     void setLabelAlignment( Qt::Alignment );
+00089     void setLabelRotation( double rotation );
+00090 
+00091     void setColorBarEnabled( bool );
+00092     bool isColorBarEnabled() const;
+00093 
+00094     void setColorBarWidth( int );
+00095     int colorBarWidth() const;
+00096 
+00097     void setColorMap( const QwtInterval &, QwtColorMap * );
+00098 
+00099     QwtInterval colorBarInterval() const;
+00100     const QwtColorMap *colorMap() const;
+00101 
+00102     virtual QSize sizeHint() const;
+00103     virtual QSize minimumSizeHint() const;
+00104 
+00105     int titleHeightForWidth( int width ) const;
+00106     int dimForLength( int length, const QFont &scaleFont ) const;
+00107 
+00108     void drawColorBar( QPainter *painter, const QRectF & ) const;
+00109     void drawTitle( QPainter *painter, QwtScaleDraw::Alignment,
+00110         const QRectF &rect ) const;
+00111 
+00112     void setAlignment( QwtScaleDraw::Alignment );
+00113     QwtScaleDraw::Alignment alignment() const;
+00114 
+00115     QRectF colorBarRect( const QRectF& ) const;
+00116 
+00117 protected:
+00118     virtual void paintEvent( QPaintEvent * );
+00119     virtual void resizeEvent( QResizeEvent * );
+00120 
+00121     void draw( QPainter *p ) const;
+00122 
+00123     void scaleChange();
+00124     void layoutScale( bool update = true );
+00125 
+00126 private:
+00127     void initScale( QwtScaleDraw::Alignment );
+00128 
+00129     class PrivateData;
+00130     PrivateData *d_data;
+00131 };
+00132 
+00133 Q_DECLARE_OPERATORS_FOR_FLAGS( QwtScaleWidget::LayoutFlags );
+00134 
+00135 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__series__data_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__series__data_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__series__data_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__series__data_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,342 @@ + + + + +Qwt User's Guide: qwt_series_data.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_series_data.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_SERIES_DATA_H
+00011 #define QWT_SERIES_DATA_H 1
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_interval.h"
+00015 #include "qwt_point_3d.h"
+00016 #include "qwt_point_polar.h"
+00017 #include <qvector.h>
+00018 #include <qrect.h>
+00019 
+00021 class QWT_EXPORT QwtIntervalSample
+00022 {
+00023 public:
+00024     QwtIntervalSample();
+00025     QwtIntervalSample( double, const QwtInterval & );
+00026     QwtIntervalSample( double value, double min, double max );
+00027 
+00028     bool operator==( const QwtIntervalSample & ) const;
+00029     bool operator!=( const QwtIntervalSample & ) const;
+00030 
+00032     double value;
+00033 
+00035     QwtInterval interval;
+00036 };
+00037 
+00042 inline QwtIntervalSample::QwtIntervalSample():
+00043     value( 0.0 )
+00044 {
+00045 }
+00046 
+00048 inline QwtIntervalSample::QwtIntervalSample(
+00049         double v, const QwtInterval &intv ):
+00050     value( v ),
+00051     interval( intv )
+00052 {
+00053 }
+00054 
+00056 inline QwtIntervalSample::QwtIntervalSample(
+00057         double v, double min, double max ):
+00058     value( v ),
+00059     interval( min, max )
+00060 {
+00061 }
+00062 
+00064 inline bool QwtIntervalSample::operator==( 
+00065     const QwtIntervalSample &other ) const
+00066 {
+00067     return value == other.value && interval == other.interval;
+00068 }
+00069 
+00071 inline bool QwtIntervalSample::operator!=( 
+00072     const QwtIntervalSample &other ) const
+00073 {
+00074     return !( *this == other );
+00075 }
+00076 
+00078 class QWT_EXPORT QwtSetSample
+00079 {
+00080 public:
+00081     QwtSetSample();
+00082     bool operator==( const QwtSetSample &other ) const;
+00083     bool operator!=( const QwtSetSample &other ) const;
+00084 
+00086     double value;
+00087 
+00089     QVector<double> set;
+00090 };
+00091 
+00096 inline QwtSetSample::QwtSetSample():
+00097     value( 0.0 )
+00098 {
+00099 }
+00100 
+00102 inline bool QwtSetSample::operator==( const QwtSetSample &other ) const
+00103 {
+00104     return value == other.value && set == other.set;
+00105 }
+00106 
+00108 inline bool QwtSetSample::operator!=( const QwtSetSample &other ) const
+00109 {
+00110     return !( *this == other );
+00111 }
+00112 
+00121 template <typename T>
+00122 class QwtSeriesData
+00123 {
+00124 public:
+00125     QwtSeriesData();
+00126     virtual ~QwtSeriesData();
+00127 
+00129     virtual size_t size() const = 0;
+00130 
+00136     virtual T sample( size_t i ) const = 0;
+00137 
+00148     virtual QRectF boundingRect() const = 0;
+00149 
+00150     virtual void setRectOfInterest( const QRectF & );
+00151 
+00152 protected:
+00154     mutable QRectF d_boundingRect;
+00155 
+00156 private:
+00157     QwtSeriesData<T> &operator=( const QwtSeriesData<T> & );
+00158 };
+00159 
+00161 template <typename T>
+00162 QwtSeriesData<T>::QwtSeriesData():
+00163     d_boundingRect( 0.0, 0.0, -1.0, -1.0 )
+00164 {
+00165 }
+00166 
+00168 template <typename T>
+00169 QwtSeriesData<T>::~QwtSeriesData()
+00170 {
+00171 }
+00172 
+00182 template <typename T>
+00183 void QwtSeriesData<T>::setRectOfInterest( const QRectF & )
+00184 {
+00185 }
+00186 
+00193 template <typename T>
+00194 class QwtArraySeriesData: public QwtSeriesData<T>
+00195 {
+00196 public:
+00197     QwtArraySeriesData();
+00198     QwtArraySeriesData( const QVector<T> & );
+00199 
+00200     void setSamples( const QVector<T> & );
+00201     const QVector<T> samples() const;
+00202 
+00203     virtual size_t size() const;
+00204     virtual T sample( size_t ) const;
+00205 
+00206 protected:
+00208     QVector<T> d_samples;
+00209 };
+00210 
+00212 template <typename T>
+00213 QwtArraySeriesData<T>::QwtArraySeriesData()
+00214 {
+00215 }
+00216 
+00221 template <typename T>
+00222 QwtArraySeriesData<T>::QwtArraySeriesData( const QVector<T> &samples ):
+00223     d_samples( samples )
+00224 {
+00225 }
+00226 
+00231 template <typename T>
+00232 void QwtArraySeriesData<T>::setSamples( const QVector<T> &samples )
+00233 {
+00234     QwtSeriesData<T>::d_boundingRect = QRectF( 0.0, 0.0, -1.0, -1.0 );
+00235     d_samples = samples;
+00236 }
+00237 
+00239 template <typename T>
+00240 const QVector<T> QwtArraySeriesData<T>::samples() const
+00241 {
+00242     return d_samples;
+00243 }
+00244 
+00246 template <typename T>
+00247 size_t QwtArraySeriesData<T>::size() const
+00248 {
+00249     return d_samples.size();
+00250 }
+00251 
+00257 template <typename T>
+00258 T QwtArraySeriesData<T>::sample( size_t i ) const
+00259 {
+00260     return d_samples[i];
+00261 }
+00262 
+00264 class QWT_EXPORT QwtPointSeriesData: public QwtArraySeriesData<QPointF>
+00265 {
+00266 public:
+00267     QwtPointSeriesData(
+00268         const QVector<QPointF> & = QVector<QPointF>() );
+00269 
+00270     virtual QRectF boundingRect() const;
+00271 };
+00272 
+00274 class QWT_EXPORT QwtPoint3DSeriesData: public QwtArraySeriesData<QwtPoint3D>
+00275 {
+00276 public:
+00277     QwtPoint3DSeriesData(
+00278         const QVector<QwtPoint3D> & = QVector<QwtPoint3D>() );
+00279     virtual QRectF boundingRect() const;
+00280 };
+00281 
+00283 class QWT_EXPORT QwtIntervalSeriesData: public QwtArraySeriesData<QwtIntervalSample>
+00284 {
+00285 public:
+00286     QwtIntervalSeriesData(
+00287         const QVector<QwtIntervalSample> & = QVector<QwtIntervalSample>() );
+00288 
+00289     virtual QRectF boundingRect() const;
+00290 };
+00291 
+00293 class QWT_EXPORT QwtSetSeriesData: public QwtArraySeriesData<QwtSetSample>
+00294 {
+00295 public:
+00296     QwtSetSeriesData(
+00297         const QVector<QwtSetSample> & = QVector<QwtSetSample>() );
+00298 
+00299     virtual QRectF boundingRect() const;
+00300 };
+00301 
+00305 class QWT_EXPORT QwtPointArrayData: public QwtSeriesData<QPointF>
+00306 {
+00307 public:
+00308     QwtPointArrayData( const QVector<double> &x, const QVector<double> &y );
+00309     QwtPointArrayData( const double *x, const double *y, size_t size );
+00310 
+00311     virtual QRectF boundingRect() const;
+00312 
+00313     virtual size_t size() const;
+00314     virtual QPointF sample( size_t i ) const;
+00315 
+00316     const QVector<double> &xData() const;
+00317     const QVector<double> &yData() const;
+00318 
+00319 private:
+00320     QVector<double> d_x;
+00321     QVector<double> d_y;
+00322 };
+00323 
+00327 class QWT_EXPORT QwtCPointerData: public QwtSeriesData<QPointF>
+00328 {
+00329 public:
+00330     QwtCPointerData( const double *x, const double *y, size_t size );
+00331 
+00332     virtual QRectF boundingRect() const;
+00333     virtual size_t size() const;
+00334     virtual QPointF sample( size_t i ) const;
+00335 
+00336     const double *xData() const;
+00337     const double *yData() const;
+00338 
+00339 private:
+00340     const double *d_x;
+00341     const double *d_y;
+00342     size_t d_size;
+00343 };
+00344 
+00397 class QWT_EXPORT QwtSyntheticPointData: public QwtSeriesData<QPointF>
+00398 {
+00399 public:
+00400     QwtSyntheticPointData( size_t size,
+00401         const QwtInterval & = QwtInterval() );
+00402 
+00403     void setSize( size_t size );
+00404     size_t size() const;
+00405 
+00406     void setInterval( const QwtInterval& );
+00407     QwtInterval interval() const;
+00408 
+00409     virtual QRectF boundingRect() const;
+00410     virtual QPointF sample( size_t i ) const;
+00411 
+00418     virtual double y( double x ) const = 0;
+00419     virtual double x( uint index ) const;
+00420 
+00421     virtual void setRectOfInterest( const QRectF & );
+00422     QRectF rectOfInterest() const;
+00423 
+00424 private:
+00425     size_t d_size;
+00426     QwtInterval d_interval;
+00427     QRectF d_rectOfInterest;
+00428     QwtInterval d_intervalOfInterest;
+00429 };
+00430 
+00431 QWT_EXPORT QRectF qwtBoundingRect(
+00432     const QwtSeriesData<QPointF> &, int from = 0, int to = -1 );
+00433 QWT_EXPORT QRectF qwtBoundingRect(
+00434     const QwtSeriesData<QwtPoint3D> &, int from = 0, int to = -1 );
+00435 QWT_EXPORT QRectF qwtBoundingRect(
+00436     const QwtSeriesData<QwtPointPolar> &, int from = 0, int to = -1 );
+00437 QWT_EXPORT QRectF qwtBoundingRect(
+00438     const QwtSeriesData<QwtIntervalSample> &, int from = 0, int to = -1 );
+00439 QWT_EXPORT QRectF qwtBoundingRect(
+00440     const QwtSeriesData<QwtSetSample> &, int from = 0, int to = -1 );
+00441 
+00442 #endif 
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__slider_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__slider_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__slider_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__slider_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,163 @@ + + + + +Qwt User's Guide: qwt_slider.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_slider.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_SLIDER_H
+00011 #define QWT_SLIDER_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_abstract_scale.h"
+00015 #include "qwt_abstract_slider.h"
+00016 
+00017 class QwtScaleDraw;
+00018 
+00032 class QWT_EXPORT QwtSlider : public QwtAbstractSlider, public QwtAbstractScale
+00033 {
+00034     Q_OBJECT
+00035     Q_ENUMS( ScalePos )
+00036     Q_ENUMS( BackgroundStyle )
+00037     Q_PROPERTY( ScalePos scalePosition READ scalePosition
+00038         WRITE setScalePosition )
+00039     Q_PROPERTY( BackgroundStyles backgroundStyle 
+00040         READ backgroundStyle WRITE setBackgroundStyle )
+00041     Q_PROPERTY( QSize handleSize READ handleSize WRITE setHandleSize )
+00042     Q_PROPERTY( int borderWidth READ borderWidth WRITE setBorderWidth )
+00043     Q_PROPERTY( int spacing READ spacing WRITE setSpacing )
+00044 
+00045 public:
+00046 
+00056     enum ScalePos
+00057     {
+00059         NoScale,
+00060 
+00062         LeftScale,
+00063 
+00065         RightScale,
+00066 
+00068         TopScale,
+00069 
+00071         BottomScale
+00072     };
+00073 
+00078     enum BackgroundStyle
+00079     {
+00081         Trough = 0x01,
+00082 
+00084         Groove = 0x02,
+00085     };
+00086 
+00088     typedef QFlags<BackgroundStyle> BackgroundStyles;
+00089 
+00090     explicit QwtSlider( QWidget *parent,
+00091         Qt::Orientation = Qt::Horizontal,
+00092         ScalePos = NoScale, BackgroundStyles = Trough );
+00093 
+00094     virtual ~QwtSlider();
+00095 
+00096     virtual void setOrientation( Qt::Orientation );
+00097 
+00098     void setBackgroundStyle( BackgroundStyles );
+00099     BackgroundStyles backgroundStyle() const;
+00100 
+00101     void setScalePosition( ScalePos s );
+00102     ScalePos scalePosition() const;
+00103 
+00104     void setHandleSize( int width, int height );
+00105     void setHandleSize( const QSize & );
+00106     QSize handleSize() const;
+00107 
+00108     void setBorderWidth( int bw );
+00109     int borderWidth() const;
+00110 
+00111     void setSpacing( int );
+00112     int spacing() const;
+00113 
+00114     virtual QSize sizeHint() const;
+00115     virtual QSize minimumSizeHint() const;
+00116 
+00117     void setScaleDraw( QwtScaleDraw * );
+00118     const QwtScaleDraw *scaleDraw() const;
+00119 
+00120 protected:
+00121     virtual double getValue( const QPoint &p );
+00122     virtual void getScrollMode( const QPoint &p,
+00123         QwtAbstractSlider::ScrollMode &, int &direction ) const;
+00124 
+00125     virtual void drawSlider ( QPainter *, const QRect & ) const;
+00126     virtual void drawHandle( QPainter *, const QRect &, int pos ) const;
+00127 
+00128     virtual void resizeEvent( QResizeEvent * );
+00129     virtual void paintEvent ( QPaintEvent * );
+00130     virtual void changeEvent( QEvent * );
+00131 
+00132     virtual void valueChange();
+00133     virtual void rangeChange();
+00134     virtual void scaleChange();
+00135 
+00136     int transform( double v ) const;
+00137 
+00138     QwtScaleDraw *scaleDraw();
+00139 
+00140 private:
+00141     void layoutSlider( bool );
+00142     void initSlider( Qt::Orientation, ScalePos, BackgroundStyles );
+00143 
+00144     class PrivateData;
+00145     PrivateData *d_data;
+00146 };
+00147 
+00148 Q_DECLARE_OPERATORS_FOR_FLAGS( QwtSlider::BackgroundStyles );
+00149 
+00150 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__spline_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__spline_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__spline_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__spline_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,105 @@ + + + + +Qwt User's Guide: qwt_spline.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_spline.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_SPLINE_H
+00011 #define QWT_SPLINE_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include <qpolygon.h>
+00015 #include <qvector.h>
+00016 
+00057 class QWT_EXPORT QwtSpline
+00058 {
+00059 public:
+00061     enum SplineType
+00062     {
+00064         Natural,
+00065 
+00067         Periodic
+00068     };
+00069 
+00070     QwtSpline();
+00071     QwtSpline( const QwtSpline & );
+00072 
+00073     ~QwtSpline();
+00074 
+00075     QwtSpline &operator=( const QwtSpline & );
+00076 
+00077     void setSplineType( SplineType );
+00078     SplineType splineType() const;
+00079 
+00080     bool setPoints( const QPolygonF& points );
+00081     QPolygonF points() const;
+00082 
+00083     void reset();
+00084 
+00085     bool isValid() const;
+00086     double value( double x ) const;
+00087 
+00088     const QVector<double> &coefficientsA() const;
+00089     const QVector<double> &coefficientsB() const;
+00090     const QVector<double> &coefficientsC() const;
+00091 
+00092 protected:
+00093     bool buildNaturalSpline( const QPolygonF & );
+00094     bool buildPeriodicSpline( const QPolygonF & );
+00095 
+00096 private:
+00097     class PrivateData;
+00098     PrivateData *d_data;
+00099 };
+00100 
+00101 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__symbol_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__symbol_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__symbol_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__symbol_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,162 @@ + + + + +Qwt User's Guide: qwt_symbol.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_symbol.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_SYMBOL_H
+00011 #define QWT_SYMBOL_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include <QPolygonF>
+00015 
+00016 class QPainter;
+00017 class QRect;
+00018 class QSize;
+00019 class QBrush;
+00020 class QPen;
+00021 class QColor;
+00022 class QPointF;
+00023 
+00025 class QWT_EXPORT QwtSymbol
+00026 {
+00027 public:
+00032     enum Style
+00033     {
+00035         NoSymbol = -1,
+00036 
+00038         Ellipse,
+00039 
+00041         Rect,
+00042 
+00044         Diamond,
+00045 
+00047         Triangle,
+00048 
+00050         DTriangle,
+00051 
+00053         UTriangle,
+00054 
+00056         LTriangle,
+00057 
+00059         RTriangle,
+00060 
+00062         Cross,
+00063 
+00065         XCross,
+00066 
+00068         HLine,
+00069 
+00071         VLine,
+00072 
+00074         Star1,
+00075 
+00077         Star2,
+00078 
+00080         Hexagon,
+00081 
+00087         UserStyle = 1000
+00088     };
+00089 
+00090 public:
+00091     QwtSymbol( Style = NoSymbol );
+00092     QwtSymbol( Style, const QBrush &, const QPen &, const QSize & );
+00093     QwtSymbol( const QwtSymbol & );
+00094     virtual ~QwtSymbol();
+00095 
+00096     QwtSymbol &operator=( const QwtSymbol & );
+00097     bool operator==( const QwtSymbol & ) const;
+00098     bool operator!=( const QwtSymbol & ) const;
+00099 
+00100     void setSize( const QSize & );
+00101     void setSize( int width, int height = -1 );
+00102     const QSize& size() const;
+00103 
+00104     virtual void setColor( const QColor & );
+00105 
+00106     void setBrush( const QBrush& b );
+00107     const QBrush& brush() const;
+00108 
+00109     void setPen( const QPen & );
+00110     const QPen& pen() const;
+00111 
+00112     void setStyle( Style );
+00113     Style style() const;
+00114 
+00115     void drawSymbol( QPainter *, const QPointF & ) const;
+00116     void drawSymbols( QPainter *, const QPolygonF & ) const;
+00117 
+00118     virtual QSize boundingSize() const;
+00119 
+00120 protected:
+00121     virtual void drawSymbols( QPainter *,
+00122         const QPointF *, int numPoints ) const;
+00123 
+00124 private:
+00125     class PrivateData;
+00126     PrivateData *d_data;
+00127 };
+00128 
+00135 inline void QwtSymbol::drawSymbol(
+00136     QPainter *painter, const QPointF &pos ) const
+00137 {
+00138     drawSymbols( painter, &pos, 1 );
+00139 }
+00140 
+00148 inline void QwtSymbol::drawSymbols(
+00149     QPainter *painter, const QPolygonF &points ) const
+00150 {
+00151     drawSymbols( painter, points.data(), points.size() );
+00152 }
+00153 
+00154 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__system__clock_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__system__clock_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__system__clock_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__system__clock_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,81 @@ + + + + +Qwt User's Guide: qwt_system_clock.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_system_clock.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_SYSTEM_CLOCK_H
+00011 #define QWT_SYSTEM_CLOCK_H
+00012 
+00013 #include "qwt_global.h"
+00014 
+00030 class QWT_EXPORT QwtSystemClock
+00031 {
+00032 public:
+00033     QwtSystemClock();
+00034     virtual ~QwtSystemClock();
+00035 
+00036     bool isNull() const;
+00037 
+00038     void start();
+00039     double restart();
+00040     double elapsed() const;
+00041 
+00042     static double precision();
+00043 
+00044 private:
+00045     class PrivateData;
+00046     PrivateData *d_data;
+00047 };
+00048 
+00049 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__text_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__text_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__text_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__text_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,183 @@ + + + + +Qwt User's Guide: qwt_text.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_text.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2003   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_TEXT_H
+00011 #define QWT_TEXT_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include <qstring.h>
+00015 #include <qsize.h>
+00016 #include <qfont.h>
+00017 
+00018 class QColor;
+00019 class QPen;
+00020 class QBrush;
+00021 class QRectF;
+00022 class QPainter;
+00023 class QwtTextEngine;
+00024 
+00049 class QWT_EXPORT QwtText
+00050 {
+00051 public:
+00052 
+00062     enum TextFormat
+00063     {
+00070         AutoText = 0,
+00071 
+00073         PlainText,
+00074 
+00076         RichText,
+00077 
+00086         MathMLText,
+00087 
+00092         TeXText,
+00093 
+00098         OtherFormat = 100
+00099     };
+00100 
+00107     enum PaintAttribute
+00108     {
+00110         PaintUsingTextFont = 0x01,
+00111 
+00113         PaintUsingTextColor = 0x02,
+00114 
+00116         PaintBackground = 0x04
+00117     };
+00118 
+00120     typedef QFlags<PaintAttribute> PaintAttributes;
+00121 
+00126     enum LayoutAttribute
+00127     {
+00134         MinimumLayout = 0x01
+00135     };
+00136 
+00138     typedef QFlags<LayoutAttribute> LayoutAttributes;
+00139 
+00140     QwtText( const QString & = QString::null,
+00141              TextFormat textFormat = AutoText );
+00142     QwtText( const QwtText & );
+00143     ~QwtText();
+00144 
+00145     QwtText &operator=( const QwtText & );
+00146 
+00147     bool operator==( const QwtText & ) const;
+00148     bool operator!=( const QwtText & ) const;
+00149 
+00150     void setText( const QString &,
+00151         QwtText::TextFormat textFormat = AutoText );
+00152     QString text() const;
+00153 
+00154     bool isNull() const;
+00155     bool isEmpty() const;
+00156 
+00157     void setFont( const QFont & );
+00158     QFont font() const;
+00159 
+00160     QFont usedFont( const QFont & ) const;
+00161 
+00162     void setRenderFlags( int flags );
+00163     int renderFlags() const;
+00164 
+00165     void setColor( const QColor & );
+00166     QColor color() const;
+00167 
+00168     QColor usedColor( const QColor & ) const;
+00169 
+00170     void setBackgroundPen( const QPen & );
+00171     QPen backgroundPen() const;
+00172 
+00173     void setBackgroundBrush( const QBrush & );
+00174     QBrush backgroundBrush() const;
+00175 
+00176     void setPaintAttribute( PaintAttribute, bool on = true );
+00177     bool testPaintAttribute( PaintAttribute ) const;
+00178 
+00179     void setLayoutAttribute( LayoutAttribute, bool on = true );
+00180     bool testLayoutAttribute( LayoutAttribute ) const;
+00181 
+00182     double heightForWidth( double width, const QFont & = QFont() ) const;
+00183     QSizeF textSize( const QFont & = QFont() ) const;
+00184 
+00185     void draw( QPainter *painter, const QRectF &rect ) const;
+00186 
+00187     static const QwtTextEngine *textEngine( 
+00188         const QString &text, QwtText::TextFormat = AutoText );
+00189 
+00190     static const QwtTextEngine *textEngine( QwtText::TextFormat );
+00191     static void setTextEngine( QwtText::TextFormat, QwtTextEngine * );
+00192 
+00193 private:
+00194     class PrivateData;
+00195     PrivateData *d_data;
+00196 
+00197     class LayoutCache;
+00198     LayoutCache *d_layoutCache;
+00199 };
+00200 
+00202 inline bool QwtText::isNull() const
+00203 {
+00204     return text().isNull();
+00205 }
+00206 
+00208 inline bool QwtText::isEmpty() const
+00209 {
+00210     return text().isEmpty();
+00211 }
+00212 
+00213 Q_DECLARE_OPERATORS_FOR_FLAGS( QwtText::PaintAttributes );
+00214 Q_DECLARE_OPERATORS_FOR_FLAGS( QwtText::LayoutAttributes );
+00215 
+00216 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__text__engine_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__text__engine_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__text__engine_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__text__engine_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,145 @@ + + + + +Qwt User's Guide: qwt_text_engine.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_text_engine.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2003   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_TEXT_ENGINE_H
+00011 #define QWT_TEXT_ENGINE_H 1
+00012 
+00013 #include "qwt_global.h"
+00014 #include <qsize.h>
+00015 
+00016 class QFont;
+00017 class QRectF;
+00018 class QString;
+00019 class QPainter;
+00020 
+00035 class QWT_EXPORT QwtTextEngine
+00036 {
+00037 public:
+00038     virtual ~QwtTextEngine();
+00039 
+00050     virtual double heightForWidth( const QFont &font, int flags,
+00051         const QString &text, double width ) const = 0;
+00052 
+00062     virtual QSizeF textSize( const QFont &font, int flags,
+00063         const QString &text ) const = 0;
+00064 
+00071     virtual bool mightRender( const QString &text ) const = 0;
+00072 
+00088     virtual void textMargins( const QFont &font, const QString &text,
+00089         double &left, double &right, double &top, double &bottom ) const = 0;
+00090 
+00099     virtual void draw( QPainter *painter, const QRectF &rect,
+00100         int flags, const QString &text ) const = 0;
+00101 
+00102 protected:
+00103     QwtTextEngine();
+00104 };
+00105 
+00106 
+00113 class QWT_EXPORT QwtPlainTextEngine: public QwtTextEngine
+00114 {
+00115 public:
+00116     QwtPlainTextEngine();
+00117     virtual ~QwtPlainTextEngine();
+00118 
+00119     virtual double heightForWidth( const QFont &font, int flags,
+00120         const QString &text, double width ) const;
+00121 
+00122     virtual QSizeF textSize( const QFont &font, int flags,
+00123         const QString &text ) const;
+00124 
+00125     virtual void draw( QPainter *painter, const QRectF &rect,
+00126         int flags, const QString &text ) const;
+00127 
+00128     virtual bool mightRender( const QString & ) const;
+00129 
+00130     virtual void textMargins( const QFont &, const QString &,
+00131         double &left, double &right, double &top, double &bottom ) const;
+00132 
+00133 private:
+00134     class PrivateData;
+00135     PrivateData *d_data;
+00136 };
+00137 
+00138 
+00139 #ifndef QT_NO_RICHTEXT
+00140 
+00147 class QWT_EXPORT QwtRichTextEngine: public QwtTextEngine
+00148 {
+00149 public:
+00150     QwtRichTextEngine();
+00151 
+00152     virtual double heightForWidth( const QFont &font, int flags,
+00153         const QString &text, double width ) const;
+00154 
+00155     virtual QSizeF textSize( const QFont &font, int flags,
+00156         const QString &text ) const;
+00157 
+00158     virtual void draw( QPainter *painter, const QRectF &rect,
+00159         int flags, const QString &text ) const;
+00160 
+00161     virtual bool mightRender( const QString & ) const;
+00162 
+00163     virtual void textMargins( const QFont &, const QString &,
+00164         double &left, double &right, double &top, double &bottom ) const;
+00165 
+00166 private:
+00167     QString taggedText( const QString &, int flags ) const;
+00168 };
+00169 
+00170 #endif // !QT_NO_RICHTEXT
+00171 
+00172 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__text__label_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__text__label_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__text__label_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__text__label_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,115 @@ + + + + +Qwt User's Guide: qwt_text_label.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_text_label.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_TEXT_LABEL_H
+00011 #define QWT_TEXT_LABEL_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_text.h"
+00015 #include <qframe.h>
+00016 
+00017 class QString;
+00018 class QPaintEvent;
+00019 class QPainter;
+00020 
+00025 class QWT_EXPORT QwtTextLabel : public QFrame
+00026 {
+00027     Q_OBJECT
+00028 
+00029     Q_PROPERTY( int indent READ indent WRITE setIndent )
+00030     Q_PROPERTY( int margin READ margin WRITE setMargin )
+00031 
+00032 public:
+00033     explicit QwtTextLabel( QWidget *parent = NULL );
+00034     explicit QwtTextLabel( const QwtText &, QWidget *parent = NULL );
+00035     virtual ~QwtTextLabel();
+00036 
+00037 public Q_SLOTS:
+00038     void setText( const QString &,
+00039         QwtText::TextFormat textFormat = QwtText::AutoText );
+00040     virtual void setText( const QwtText & );
+00041 
+00042     void clear();
+00043 
+00044 public:
+00045     const QwtText &text() const;
+00046 
+00047     int indent() const;
+00048     void setIndent( int );
+00049 
+00050     int margin() const;
+00051     void setMargin( int );
+00052 
+00053     virtual QSize sizeHint() const;
+00054     virtual QSize minimumSizeHint() const;
+00055     virtual int heightForWidth( int ) const;
+00056 
+00057     QRect textRect() const;
+00058 
+00059 protected:
+00060     virtual void paintEvent( QPaintEvent *e );
+00061     virtual void drawContents( QPainter * );
+00062     virtual void drawText( QPainter *, const QRect & );
+00063 
+00064 private:
+00065     void init();
+00066     int defaultIndent() const;
+00067 
+00068     class PrivateData;
+00069     PrivateData *d_data;
+00070 };
+00071 
+00072 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__thermo_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__thermo_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__thermo_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__thermo_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,173 @@ + + + + +Qwt User's Guide: qwt_thermo.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_thermo.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_THERMO_H
+00011 #define QWT_THERMO_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_abstract_scale.h"
+00015 #include "qwt_interval.h"
+00016 #include <qwidget.h>
+00017 
+00018 class QwtScaleDraw;
+00019 class QwtColorMap;
+00020 
+00083 class QWT_EXPORT QwtThermo: public QWidget, public QwtAbstractScale
+00084 {
+00085     Q_OBJECT
+00086 
+00087     Q_ENUMS( ScalePos )
+00088 
+00089     Q_PROPERTY( bool alarmEnabled READ alarmEnabled WRITE setAlarmEnabled )
+00090     Q_PROPERTY( double alarmLevel READ alarmLevel WRITE setAlarmLevel )
+00091     Q_PROPERTY( ScalePos scalePosition READ scalePosition
+00092         WRITE setScalePosition )
+00093     Q_PROPERTY( int spacing READ spacing WRITE setSpacing )
+00094     Q_PROPERTY( int borderWidth READ borderWidth WRITE setBorderWidth )
+00095     Q_PROPERTY( double maxValue READ maxValue WRITE setMaxValue )
+00096     Q_PROPERTY( double minValue READ minValue WRITE setMinValue )
+00097     Q_PROPERTY( int pipeWidth READ pipeWidth WRITE setPipeWidth )
+00098     Q_PROPERTY( double value READ value WRITE setValue )
+00099 
+00100 public:
+00110     enum ScalePos
+00111     {
+00113         NoScale,
+00114 
+00116         LeftScale,
+00117 
+00119         RightScale,
+00120 
+00122         TopScale,
+00123 
+00125         BottomScale
+00126     };
+00127 
+00128     explicit QwtThermo( QWidget *parent = NULL );
+00129     virtual ~QwtThermo();
+00130 
+00131     void setOrientation( Qt::Orientation, ScalePos );
+00132 
+00133     void setScalePosition( ScalePos s );
+00134     ScalePos scalePosition() const;
+00135 
+00136     void setSpacing( int );
+00137     int spacing() const;
+00138 
+00139     void setBorderWidth( int w );
+00140     int borderWidth() const;
+00141 
+00142     void setFillBrush( const QBrush &b );
+00143     const QBrush &fillBrush() const;
+00144 
+00145     void setAlarmBrush( const QBrush &b );
+00146     const QBrush &alarmBrush() const;
+00147 
+00148     void setAlarmLevel( double v );
+00149     double alarmLevel() const;
+00150 
+00151     void setAlarmEnabled( bool tf );
+00152     bool alarmEnabled() const;
+00153 
+00154     void setColorMap( QwtColorMap * );
+00155     QwtColorMap *colorMap();
+00156     const QwtColorMap *colorMap() const;
+00157 
+00158     void setPipeWidth( int w );
+00159     int pipeWidth() const;
+00160 
+00161     void setRangeFlags( QwtInterval::BorderFlags );
+00162     QwtInterval::BorderFlags rangeFlags() const;
+00163 
+00164     void setMaxValue( double v );
+00165     double maxValue() const;
+00166 
+00167     void setMinValue( double v );
+00168     double minValue() const;
+00169 
+00170     double value() const;
+00171 
+00172     void setRange( double vmin, double vmax, bool lg = false );
+00173 
+00174     virtual QSize sizeHint() const;
+00175     virtual QSize minimumSizeHint() const;
+00176 
+00177     void setScaleDraw( QwtScaleDraw * );
+00178     const QwtScaleDraw *scaleDraw() const;
+00179 
+00180 public Q_SLOTS:
+00181     virtual void setValue( double val );
+00182 
+00183 protected:
+00184     virtual void drawLiquid( QPainter *, const QRect & ) const;
+00185     virtual void scaleChange();
+00186 
+00187     virtual void paintEvent( QPaintEvent * );
+00188     virtual void resizeEvent( QResizeEvent * );
+00189     virtual void changeEvent( QEvent * );
+00190 
+00191     QwtScaleDraw *scaleDraw();
+00192 
+00193     QRect pipeRect() const;
+00194 
+00195 private:
+00196     void layoutThermo( bool );
+00197 
+00198     class PrivateData;
+00199     PrivateData *d_data;
+00200 };
+00201 
+00202 #endif
+
+
+ + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__wheel_8h_source.html phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__wheel_8h_source.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__wheel_8h_source.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/qwt__wheel_8h_source.html 2011-04-15 10:48:56.000000000 +0000 @@ -0,0 +1,127 @@ + + + + +Qwt User's Guide: qwt_wheel.h Source File + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ + +
+
+

qwt_wheel.h

+
+
+
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+00002  * Qwt Widget Library
+00003  * Copyright (C) 1997   Josef Wilgen
+00004  * Copyright (C) 2002   Uwe Rathmann
+00005  *
+00006  * This library is free software; you can redistribute it and/or
+00007  * modify it under the terms of the Qwt License, Version 1.0
+00008  *****************************************************************************/
+00009 
+00010 #ifndef QWT_WHEEL_H
+00011 #define QWT_WHEEL_H
+00012 
+00013 #include "qwt_global.h"
+00014 #include "qwt_abstract_slider.h"
+00015 
+00025 class QWT_EXPORT QwtWheel : public QwtAbstractSlider
+00026 {
+00027     Q_OBJECT
+00028 
+00029     Q_PROPERTY( double totalAngle READ totalAngle WRITE setTotalAngle )
+00030     Q_PROPERTY( double viewAngle READ viewAngle WRITE setViewAngle )
+00031     Q_PROPERTY( int tickCnt READ tickCnt WRITE setTickCnt )
+00032     Q_PROPERTY( int wheelWidth READ wheelWidth WRITE setWheelWidth )
+00033     Q_PROPERTY( int borderWidth READ borderWidth WRITE setBorderWidth )
+00034     Q_PROPERTY( int wheelBorderWidth READ wheelBorderWidth WRITE setWheelBorderWidth )
+00035     Q_PROPERTY( double mass READ mass WRITE setMass )
+00036 
+00037 public:
+00038     explicit QwtWheel( QWidget *parent = NULL );
+00039     virtual ~QwtWheel();
+00040 
+00041 public Q_SLOTS:
+00042     void setTotalAngle ( double );
+00043     void setViewAngle( double );
+00044 
+00045 public:
+00046     virtual void setOrientation( Qt::Orientation );
+00047 
+00048     double totalAngle() const;
+00049     double viewAngle() const;
+00050 
+00051     void setTickCnt( int );
+00052     int tickCnt() const;
+00053 
+00054     void setMass( double );
+00055     double mass() const;
+00056 
+00057     void setWheelWidth( int );
+00058     int wheelWidth() const;
+00059 
+00060     void setWheelBorderWidth( int );
+00061     int wheelBorderWidth() const;
+00062 
+00063     void setBorderWidth( int );
+00064     int borderWidth() const;
+00065 
+00066     QRect wheelRect() const;
+00067 
+00068     virtual QSize sizeHint() const;
+00069     virtual QSize minimumSizeHint() const;
+00070 
+00071 protected:
+00072     virtual void paintEvent( QPaintEvent * );
+00073     virtual void resizeEvent( QResizeEvent * );
+00074 
+00075     virtual void drawTicks( QPainter *, const QRectF & );
+00076     virtual void drawWheelBackground( QPainter *, const QRectF & );
+00077 
+00078     virtual void valueChange();
+00079 
+00080     virtual double getValue( const QPoint & );
+00081     virtual void getScrollMode( const QPoint &,
+00082         QwtAbstractSlider::ScrollMode &, int &direction ) const;
+00083 
+00084 private:
+00085     class PrivateData;
+00086     PrivateData *d_data;
+00087 };
+00088 
+00089 #endif
+
+
+ + + Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/radio.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/radio.png differ Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/scatterplot.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/scatterplot.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/scatterscreenshots.html phyxcalc-3rev200/qwt-6.0.0/doc/html/scatterscreenshots.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/scatterscreenshots.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/scatterscreenshots.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,45 @@ + + + + +Qwt User's Guide: Scatter Plot + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ +
+
+
+

Scatter Plot

+
+
+
+scatterplot.png +
+
+ + + Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/sinus.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/sinus.png differ Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/sliders.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/sliders.png differ Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/spectrogram1.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/spectrogram1.png differ Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/spectrogram2.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/spectrogram2.png differ Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/spectrogram3.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/spectrogram3.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/spectrogramscreenshots.html phyxcalc-3rev200/qwt-6.0.0/doc/html/spectrogramscreenshots.html --- phyxcalc-3rev200/qwt-6.0.0/doc/html/spectrogramscreenshots.html 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/spectrogramscreenshots.html 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,52 @@ + + + + +Qwt User's Guide: Spectrogram, Contour Plot + + + + + +
+
+ + + + + + +
+
Qwt User's Guide 6.0.0
+
+
+ +
+
+
+

Spectrogram, Contour Plot

+
+
+
+spectrogram1.png +
+
+spectrogram2.png +
+
+spectrogram3.png +
+

/*!

+
+ + + Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/sysinfo.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/sysinfo.png differ Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/tab_a.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/tab_a.png differ Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/tab_b.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/tab_b.png differ Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/tab_h.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/tab_h.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/html/tabs.css phyxcalc-3rev200/qwt-6.0.0/doc/html/tabs.css --- phyxcalc-3rev200/qwt-6.0.0/doc/html/tabs.css 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/html/tabs.css 2011-04-15 10:48:55.000000000 +0000 @@ -0,0 +1,59 @@ +.tabs, .tabs2, .tabs3 { + background-image: url('tab_b.png'); + width: 100%; + z-index: 101; + font-size: 13px; +} + +.tabs2 { + font-size: 10px; +} +.tabs3 { + font-size: 9px; +} + +.tablist { + margin: 0; + padding: 0; + display: table; +} + +.tablist li { + float: left; + display: table-cell; + background-image: url('tab_b.png'); + line-height: 36px; + list-style: none; +} + +.tablist a { + display: block; + padding: 0 20px; + font-weight: bold; + background-image:url('tab_s.png'); + background-repeat:no-repeat; + background-position:right; + color: #283A5D; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + text-decoration: none; + outline: none; +} + +.tabs3 .tablist a { + padding: 0 10px; +} + +.tablist a:hover { + background-image: url('tab_h.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); + text-decoration: none; +} + +.tablist li.current a { + background-image: url('tab_a.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); +} Binary files /tmp/tmpw5V9Pc/XKVs8KOfte/phyxcalc-3rev200/qwt-6.0.0/doc/html/tab_s.png and /tmp/tmpw5V9Pc/r8XNG8IcSv/phyxcalc-3rev200/qwt-6.0.0/doc/html/tab_s.png differ diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/controlscreenshots.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/controlscreenshots.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/controlscreenshots.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/controlscreenshots.3 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,13 @@ +.TH "controlscreenshots" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +controlscreenshots \- .TH "controlscreenshots" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +controlscreenshots \- .PP +.PP +.PP +.PP + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/curvescreenshots.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/curvescreenshots.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/curvescreenshots.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/curvescreenshots.3 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,13 @@ +.TH "curvescreenshots" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +curvescreenshots \- .TH "curvescreenshots" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +curvescreenshots \- .PP +.PP +.PP +.PP + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/histogramscreenshots.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/histogramscreenshots.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/histogramscreenshots.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/histogramscreenshots.3 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,9 @@ +.TH "histogramscreenshots" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +histogramscreenshots \- .TH "histogramscreenshots" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +histogramscreenshots \- diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtAbstractScale.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtAbstractScale.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtAbstractScale.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtAbstractScale.3 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,291 @@ +.TH "QwtAbstractScale" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtAbstractScale \- +.PP +An abstract base class for classes containing a scale. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherited by \fBQwtKnob\fP, \fBQwtSlider\fP, and \fBQwtThermo\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtAbstractScale\fP ()" +.br +.ti -1c +.RI "virtual \fB~QwtAbstractScale\fP ()" +.br +.ti -1c +.RI "void \fBsetScale\fP (double vmin, double vmax, double step=0.0)" +.br +.ti -1c +.RI "void \fBsetScale\fP (const \fBQwtInterval\fP &, double step=0.0)" +.br +.ti -1c +.RI "void \fBsetScale\fP (const \fBQwtScaleDiv\fP &)" +.br +.ti -1c +.RI "void \fBsetAutoScale\fP ()" +.br +.ti -1c +.RI "bool \fBautoScale\fP () const " +.br +.ti -1c +.RI "void \fBsetScaleMaxMajor\fP (int ticks)" +.br +.ti -1c +.RI "int \fBscaleMaxMinor\fP () const " +.br +.ti -1c +.RI "void \fBsetScaleMaxMinor\fP (int ticks)" +.br +.ti -1c +.RI "int \fBscaleMaxMajor\fP () const " +.br +.ti -1c +.RI "void \fBsetScaleEngine\fP (\fBQwtScaleEngine\fP *)" +.br +.ti -1c +.RI "const \fBQwtScaleEngine\fP * \fBscaleEngine\fP () const " +.br +.ti -1c +.RI "\fBQwtScaleEngine\fP * \fBscaleEngine\fP ()" +.br +.ti -1c +.RI "const \fBQwtScaleMap\fP & \fBscaleMap\fP () const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "void \fBrescale\fP (double vmin, double vmax, double step=0.0)" +.br +.ti -1c +.RI "void \fBsetAbstractScaleDraw\fP (\fBQwtAbstractScaleDraw\fP *)" +.br +.ti -1c +.RI "const \fBQwtAbstractScaleDraw\fP * \fBabstractScaleDraw\fP () const " +.br +.ti -1c +.RI "\fBQwtAbstractScaleDraw\fP * \fBabstractScaleDraw\fP ()" +.br +.ti -1c +.RI "virtual void \fBscaleChange\fP ()" +.br +.in -1c +.SH "Detailed Description" +.PP +An abstract base class for classes containing a scale. + +\fBQwtAbstractScale\fP is used to provide classes with a \fBQwtScaleDraw\fP, and a \fBQwtScaleDiv\fP. The \fBQwtScaleDiv\fP might be set explicitely or calculated by a \fBQwtScaleEngine\fP. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtAbstractScale::QwtAbstractScale ()"Constructor +.PP +Creates a default \fBQwtScaleDraw\fP and a \fBQwtLinearScaleEngine\fP. Autoscaling is enabled, and the stepSize is initialized by 0.0. +.SS "QwtAbstractScale::~QwtAbstractScale ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "const \fBQwtAbstractScaleDraw\fP * QwtAbstractScale::abstractScaleDraw () const\fC [protected]\fP"\fBReturns:\fP +.RS 4 +Scale draw +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetAbstractScaleDraw()\fP +.RE +.PP + +.SS "\fBQwtAbstractScaleDraw\fP * QwtAbstractScale::abstractScaleDraw ()\fC [protected]\fP"\fBReturns:\fP +.RS 4 +Scale draw +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetAbstractScaleDraw()\fP +.RE +.PP + +.SS "bool QwtAbstractScale::autoScale () const"\fBReturns:\fP +.RS 4 +\fCtrue\fP if autoscaling is enabled +.RE +.PP + +.SS "void QwtAbstractScale::rescale (doublevmin, doublevmax, doublestepSize = \fC0.0\fP)\fC [protected]\fP"Recalculate the scale division and update the scale draw. +.PP +\fBParameters:\fP +.RS 4 +\fIvmin\fP Lower limit of the scale interval +.br +\fIvmax\fP Upper limit of the scale interval +.br +\fIstepSize\fP Major step size +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBscaleChange()\fP +.RE +.PP + +.SS "void QwtAbstractScale::scaleChange ()\fC [protected, virtual]\fP" +.PP +Notify changed scale. Dummy empty implementation, intended to be overloaded by derived classes +.PP +Reimplemented in \fBQwtSlider\fP, and \fBQwtThermo\fP. +.SS "const \fBQwtScaleEngine\fP * QwtAbstractScale::scaleEngine () const"\fBReturns:\fP +.RS 4 +Scale engine +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetScaleEngine()\fP +.RE +.PP + +.SS "\fBQwtScaleEngine\fP * QwtAbstractScale::scaleEngine ()"\fBReturns:\fP +.RS 4 +Scale engine +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetScaleEngine()\fP +.RE +.PP + +.SS "const \fBQwtScaleMap\fP & QwtAbstractScale::scaleMap () const"\fBReturns:\fP +.RS 4 +\fBabstractScaleDraw()\fP->\fBscaleMap()\fP +.RE +.PP + +.SS "int QwtAbstractScale::scaleMaxMajor () const"\fBReturns:\fP +.RS 4 +Max. number of major tick intervals The default value is 5. +.RE +.PP + +.SS "int QwtAbstractScale::scaleMaxMinor () const"\fBReturns:\fP +.RS 4 +Max. number of minor tick intervals The default value is 3. +.RE +.PP + +.SS "void QwtAbstractScale::setAbstractScaleDraw (\fBQwtAbstractScaleDraw\fP *scaleDraw)\fC [protected]\fP" +.PP +Set a scale draw. scaleDraw has to be created with new and will be deleted in ~QwtAbstractScale or the next call of setAbstractScaleDraw. +.SS "void QwtAbstractScale::setAutoScale ()" +.PP +Advise the widget to control the scale range internally. Autoscaling is on by default. +.PP +\fBSee also:\fP +.RS 4 +\fBsetScale()\fP, \fBautoScale()\fP +.RE +.PP + +.SS "void QwtAbstractScale::setScale (doublevmin, doublevmax, doublestepSize = \fC0.0\fP)" +.PP +Specify a scale. Disable autoscaling and define a scale by an interval and a step size +.PP +\fBParameters:\fP +.RS 4 +\fIvmin\fP lower limit of the scale interval +.br +\fIvmax\fP upper limit of the scale interval +.br +\fIstepSize\fP major step size +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetAutoScale()\fP +.RE +.PP + +.SS "void QwtAbstractScale::setScale (const \fBQwtScaleDiv\fP &scaleDiv)" +.PP +Specify a scale. Disable autoscaling and define a scale by a scale division +.PP +\fBParameters:\fP +.RS 4 +\fIscaleDiv\fP Scale division +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetAutoScale()\fP +.RE +.PP + +.SS "void QwtAbstractScale::setScale (const \fBQwtInterval\fP &interval, doublestepSize = \fC0.0\fP)" +.PP +Specify a scale. Disable autoscaling and define a scale by an interval and a step size +.PP +\fBParameters:\fP +.RS 4 +\fIinterval\fP Interval +.br +\fIstepSize\fP major step size +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetAutoScale()\fP +.RE +.PP + +.SS "void QwtAbstractScale::setScaleEngine (\fBQwtScaleEngine\fP *scaleEngine)" +.PP +Set a scale engine. The scale engine is responsible for calculating the scale division, and in case of auto scaling how to align the scale. +.PP +scaleEngine has to be created with new and will be deleted in ~QwtAbstractScale or the next call of setScaleEngine. +.SS "void QwtAbstractScale::setScaleMaxMajor (intticks)" +.PP +Set the maximum number of major tick intervals. The scale's major ticks are calculated automatically such that the number of major intervals does not exceed ticks. The default value is 5. +.PP +\fBParameters:\fP +.RS 4 +\fIticks\fP maximal number of major ticks. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtAbstractScaleDraw\fP +.RE +.PP + +.SS "void QwtAbstractScale::setScaleMaxMinor (intticks)" +.PP +Set the maximum number of minor tick intervals. The scale's minor ticks are calculated automatically such that the number of minor intervals does not exceed ticks. The default value is 3. +.PP +\fBParameters:\fP +.RS 4 +\fIticks\fP +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtAbstractScaleDraw\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtAbstractScaleDraw.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtAbstractScaleDraw.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtAbstractScaleDraw.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtAbstractScaleDraw.3 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,436 @@ +.TH "QwtAbstractScaleDraw" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtAbstractScaleDraw \- +.PP +A abstract base class for drawing scales. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherited by \fBQwtRoundScaleDraw\fP, and \fBQwtScaleDraw\fP. +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBScaleComponent\fP { \fBBackbone\fP = 0x01, \fBTicks\fP = 0x02, \fBLabels\fP = 0x04 }" +.br +.ti -1c +.RI "typedef QFlags< \fBScaleComponent\fP > \fBScaleComponents\fP" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtAbstractScaleDraw\fP ()" +.br +.ti -1c +.RI "virtual \fB~QwtAbstractScaleDraw\fP ()" +.br +.ti -1c +.RI "void \fBsetScaleDiv\fP (const \fBQwtScaleDiv\fP &s)" +.br +.ti -1c +.RI "const \fBQwtScaleDiv\fP & \fBscaleDiv\fP () const " +.br +.ti -1c +.RI "void \fBsetTransformation\fP (\fBQwtScaleTransformation\fP *)" +.br +.ti -1c +.RI "const \fBQwtScaleMap\fP & \fBscaleMap\fP () const " +.br +.ti -1c +.RI "\fBQwtScaleMap\fP & \fBscaleMap\fP ()" +.br +.ti -1c +.RI "void \fBenableComponent\fP (\fBScaleComponent\fP, bool enable=true)" +.br +.ti -1c +.RI "bool \fBhasComponent\fP (\fBScaleComponent\fP) const " +.br +.ti -1c +.RI "void \fBsetTickLength\fP (\fBQwtScaleDiv::TickType\fP, double length)" +.br +.ti -1c +.RI "double \fBtickLength\fP (\fBQwtScaleDiv::TickType\fP) const " +.br +.ti -1c +.RI "double \fBmaxTickLength\fP () const " +.br +.ti -1c +.RI "void \fBsetSpacing\fP (double margin)" +.br +.ti -1c +.RI "double \fBspacing\fP () const " +.br +.ti -1c +.RI "void \fBsetPenWidth\fP (int width)" +.br +.ti -1c +.RI "int \fBpenWidth\fP () const " +.br +.ti -1c +.RI "virtual void \fBdraw\fP (QPainter *, const QPalette &) const " +.br +.ti -1c +.RI "virtual \fBQwtText\fP \fBlabel\fP (double) const " +.br +.ti -1c +.RI "virtual double \fBextent\fP (const QFont &) const =0" +.br +.ti -1c +.RI "void \fBsetMinimumExtent\fP (double)" +.br +.ti -1c +.RI "double \fBminimumExtent\fP () const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual void \fBdrawTick\fP (QPainter *painter, double value, double len) const =0" +.br +.ti -1c +.RI "virtual void \fBdrawBackbone\fP (QPainter *painter) const =0" +.br +.ti -1c +.RI "virtual void \fBdrawLabel\fP (QPainter *painter, double value) const =0" +.br +.ti -1c +.RI "void \fBinvalidateCache\fP ()" +.br +.ti -1c +.RI "const \fBQwtText\fP & \fBtickLabel\fP (const QFont &, double value) const " +.br +.in -1c +.SH "Detailed Description" +.PP +A abstract base class for drawing scales. + +\fBQwtAbstractScaleDraw\fP can be used to draw linear or logarithmic scales. +.PP +After a scale division has been specified as a \fBQwtScaleDiv\fP object using \fBQwtAbstractScaleDraw::setScaleDiv(const QwtScaleDiv &s)\fP, the scale can be drawn with the \fBQwtAbstractScaleDraw::draw()\fP member. +.SH "Member Typedef Documentation" +.PP +.SS "typedef QFlags<\fBScaleComponent\fP> \fBQwtAbstractScaleDraw::ScaleComponents\fP" +.PP +Scale components. +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtAbstractScaleDraw::ScaleComponent\fP"Components of a scale +.PP +\fBSee also:\fP +.RS 4 +\fBenableComponent()\fP, \fBhasComponent\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIBackbone \fP\fP +Backbone = the line where the ticks are located. +.TP +\fB\fITicks \fP\fP +Ticks. +.TP +\fB\fILabels \fP\fP +Labels. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtAbstractScaleDraw::QwtAbstractScaleDraw ()" +.PP +Constructor. The range of the scale is initialized to [0, 100], The spacing (distance between ticks and labels) is set to 4, the tick lengths are set to 4,6 and 8 pixels +.SS "QwtAbstractScaleDraw::~QwtAbstractScaleDraw ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "void QwtAbstractScaleDraw::draw (QPainter *painter, const QPalette &palette) const\fC [virtual]\fP" +.PP +Draw the scale. \fBParameters:\fP +.RS 4 +\fIpainter\fP The painter +.br +\fIpalette\fP Palette, text color is used for the labels, foreground color for ticks and backbone +.RE +.PP + +.SS "virtual void QwtAbstractScaleDraw::drawBackbone (QPainter *painter) const\fC [protected, pure virtual]\fP"Draws the baseline of the scale +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBdrawTick()\fP, \fBdrawLabel()\fP +.RE +.PP + +.PP +Implemented in \fBQwtRoundScaleDraw\fP, and \fBQwtScaleDraw\fP. +.SS "virtual void QwtAbstractScaleDraw::drawLabel (QPainter *painter, doublevalue) const\fC [protected, pure virtual]\fP"Draws the label for a major scale tick +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIvalue\fP Value +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBdrawTick()\fP, \fBdrawBackbone()\fP +.RE +.PP + +.PP +Implemented in \fBQwtRoundScaleDraw\fP, and \fBQwtScaleDraw\fP. +.SS "virtual void QwtAbstractScaleDraw::drawTick (QPainter *painter, doublevalue, doublelen) const\fC [protected, pure virtual]\fP"Draw a tick +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIvalue\fP Value of the tick +.br +\fIlen\fP Lenght of the tick +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBdrawBackbone()\fP, \fBdrawLabel()\fP +.RE +.PP + +.PP +Implemented in \fBQwtRoundScaleDraw\fP, and \fBQwtScaleDraw\fP. +.SS "void QwtAbstractScaleDraw::enableComponent (\fBScaleComponent\fPcomponent, boolenable = \fCtrue\fP)"En/Disable a component of the scale +.PP +\fBParameters:\fP +.RS 4 +\fIcomponent\fP Scale component +.br +\fIenable\fP On/Off +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBhasComponent()\fP +.RE +.PP + +.SS "virtual double QwtAbstractScaleDraw::extent (const QFont &) const\fC [pure virtual]\fP"Calculate the extent +.PP +The extent is the distcance from the baseline to the outermost pixel of the scale draw in opposite to its orientation. It is at least \fBminimumExtent()\fP pixels. +.PP +\fBSee also:\fP +.RS 4 +\fBsetMinimumExtent()\fP, \fBminimumExtent()\fP +.RE +.PP + +.PP +Implemented in \fBQwtRoundScaleDraw\fP, and \fBQwtScaleDraw\fP. +.SS "bool QwtAbstractScaleDraw::hasComponent (\fBScaleComponent\fPcomponent) const"Check if a component is enabled +.PP +\fBSee also:\fP +.RS 4 +\fBenableComponent()\fP +.RE +.PP + +.SS "void QwtAbstractScaleDraw::invalidateCache ()\fC [protected]\fP"Invalidate the cache used by \fBQwtAbstractScaleDraw::tickLabel\fP +.PP +The cache is invalidated, when a new \fBQwtScaleDiv\fP is set. If the labels need to be changed. while the same \fBQwtScaleDiv\fP is set, \fBinvalidateCache()\fP needs to be called manually. +.SS "\fBQwtText\fP QwtAbstractScaleDraw::label (doublevalue) const\fC [virtual]\fP" +.PP +Convert a value into its representing label. The value is converted to a plain text using QLocale::system().toString(value). This method is often overloaded by applications to have individual labels. +.PP +\fBParameters:\fP +.RS 4 +\fIvalue\fP Value +.RE +.PP +\fBReturns:\fP +.RS 4 +Label string. +.RE +.PP + +.PP +Reimplemented in \fBQwtDialScaleDraw\fP. +.SS "double QwtAbstractScaleDraw::maxTickLength () const"\fBReturns:\fP +.RS 4 +Length of the longest tick +.RE +.PP +Useful for layout calculations +.PP +\fBSee also:\fP +.RS 4 +\fBtickLength()\fP, \fBsetTickLength()\fP +.RE +.PP + +.SS "double QwtAbstractScaleDraw::minimumExtent () const"Get the minimum extent +.PP +\fBSee also:\fP +.RS 4 +\fBextent()\fP, \fBsetMinimumExtent()\fP +.RE +.PP + +.SS "int QwtAbstractScaleDraw::penWidth () const"\fBReturns:\fP +.RS 4 +Scale pen width +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetPenWidth()\fP +.RE +.PP + +.PP +Reimplemented in \fBQwtDialScaleDraw\fP. +.SS "const \fBQwtScaleDiv\fP & QwtAbstractScaleDraw::scaleDiv () const"\fBReturns:\fP +.RS 4 +scale division +.RE +.PP + +.SS "const \fBQwtScaleMap\fP & QwtAbstractScaleDraw::scaleMap () const"\fBReturns:\fP +.RS 4 +Map how to translate between scale and pixel values +.RE +.PP + +.SS "\fBQwtScaleMap\fP & QwtAbstractScaleDraw::scaleMap ()"\fBReturns:\fP +.RS 4 +Map how to translate between scale and pixel values +.RE +.PP + +.SS "void QwtAbstractScaleDraw::setMinimumExtent (doubleminExtent)" +.PP +Set a minimum for the extent. The extent is calculated from the coomponents of the scale draw. In situations, where the labels are changing and the layout depends on the extent (f.e scrolling a scale), setting an upper limit as minimum extent will avoid jumps of the layout. +.PP +\fBParameters:\fP +.RS 4 +\fIminExtent\fP Minimum extent +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBextent()\fP, \fBminimumExtent()\fP +.RE +.PP + +.SS "void QwtAbstractScaleDraw::setPenWidth (intwidth)" +.PP +Specify the width of the scale pen. \fBParameters:\fP +.RS 4 +\fIwidth\fP Pen width +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBpenWidth()\fP +.RE +.PP + +.SS "void QwtAbstractScaleDraw::setScaleDiv (const \fBQwtScaleDiv\fP &sd)"Change the scale division +.PP +\fBParameters:\fP +.RS 4 +\fIsd\fP New scale division +.RE +.PP + +.SS "void QwtAbstractScaleDraw::setSpacing (doublespacing)" +.PP +Set the spacing between tick and labels. The spacing is the distance between ticks and labels. The default spacing is 4 pixels. +.PP +\fBParameters:\fP +.RS 4 +\fIspacing\fP Spacing +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBspacing()\fP +.RE +.PP + +.SS "void QwtAbstractScaleDraw::setTickLength (\fBQwtScaleDiv::TickType\fPtickType, doublelength)"Set the length of the ticks +.PP +\fBParameters:\fP +.RS 4 +\fItickType\fP Tick type +.br +\fIlength\fP New length +.RE +.PP +\fBWarning:\fP +.RS 4 +the length is limited to [0..1000] +.RE +.PP + +.SS "void QwtAbstractScaleDraw::setTransformation (\fBQwtScaleTransformation\fP *transformation)"Change the transformation of the scale +.PP +\fBParameters:\fP +.RS 4 +\fItransformation\fP New scale transformation +.RE +.PP + +.SS "double QwtAbstractScaleDraw::spacing () const" +.PP +Get the spacing. The spacing is the distance between ticks and labels. The default spacing is 4 pixels. +.PP +\fBSee also:\fP +.RS 4 +\fBsetSpacing()\fP +.RE +.PP + +.SS "const \fBQwtText\fP & QwtAbstractScaleDraw::tickLabel (const QFont &font, doublevalue) const\fC [protected]\fP" +.PP +Convert a value into its representing label and cache it. The conversion between value and label is called very often in the layout and painting code. Unfortunately the calculation of the label sizes might be slow (really slow for rich text in Qt4), so it's necessary to cache the labels. +.PP +\fBParameters:\fP +.RS 4 +\fIfont\fP Font +.br +\fIvalue\fP Value +.RE +.PP +\fBReturns:\fP +.RS 4 +Tick label +.RE +.PP + +.SS "double QwtAbstractScaleDraw::tickLength (\fBQwtScaleDiv::TickType\fPtickType) const"Return the length of the ticks +.PP +\fBSee also:\fP +.RS 4 +\fBsetTickLength()\fP, \fBmaxTickLength()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtAbstractSlider.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtAbstractSlider.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtAbstractSlider.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtAbstractSlider.3 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,512 @@ +.TH "QwtAbstractSlider" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtAbstractSlider \- +.PP +An abstract base class for slider widgets. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtDoubleRange\fP. +.PP +Inherited by \fBQwtDial\fP, \fBQwtKnob\fP, \fBQwtSlider\fP, and \fBQwtWheel\fP. +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBScrollMode\fP { \fBScrNone\fP, \fBScrMouse\fP, \fBScrTimer\fP, \fBScrDirect\fP, \fBScrPage\fP }" +.br +.in -1c +.SS "Public Slots" + +.in +1c +.ti -1c +.RI "virtual void \fBsetValue\fP (double val)" +.br +.ti -1c +.RI "virtual void \fBfitValue\fP (double val)" +.br +.ti -1c +.RI "virtual void \fBincValue\fP (int steps)" +.br +.ti -1c +.RI "virtual void \fBsetReadOnly\fP (bool)" +.br +.in -1c +.SS "Signals" + +.in +1c +.ti -1c +.RI "void \fBvalueChanged\fP (double value)" +.br +.ti -1c +.RI "void \fBsliderPressed\fP ()" +.br +.ti -1c +.RI "void \fBsliderReleased\fP ()" +.br +.ti -1c +.RI "void \fBsliderMoved\fP (double value)" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtAbstractSlider\fP (Qt::Orientation, QWidget *parent=NULL)" +.br +.ti -1c +.RI "virtual \fB~QwtAbstractSlider\fP ()" +.br +.ti -1c +.RI "void \fBsetUpdateTime\fP (int t)" +.br +.ti -1c +.RI "void \fBstopMoving\fP ()" +.br +.ti -1c +.RI "void \fBsetTracking\fP (bool enable)" +.br +.ti -1c +.RI "virtual void \fBsetMass\fP (double val)" +.br +.ti -1c +.RI "virtual double \fBmass\fP () const " +.br +.ti -1c +.RI "virtual void \fBsetOrientation\fP (Qt::Orientation o)" +.br +.ti -1c +.RI "Qt::Orientation \fBorientation\fP () const " +.br +.ti -1c +.RI "bool \fBisReadOnly\fP () const " +.br +.ti -1c +.RI "bool \fBisValid\fP () const " +.br +.ti -1c +.RI "void \fBsetValid\fP (bool valid)" +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual void \fBsetPosition\fP (const QPoint &)" +.br +.ti -1c +.RI "virtual void \fBvalueChange\fP ()" +.br +.ti -1c +.RI "virtual void \fBtimerEvent\fP (QTimerEvent *e)" +.br +.ti -1c +.RI "virtual void \fBmousePressEvent\fP (QMouseEvent *e)" +.br +.ti -1c +.RI "virtual void \fBmouseReleaseEvent\fP (QMouseEvent *e)" +.br +.ti -1c +.RI "virtual void \fBmouseMoveEvent\fP (QMouseEvent *e)" +.br +.ti -1c +.RI "virtual void \fBkeyPressEvent\fP (QKeyEvent *e)" +.br +.ti -1c +.RI "virtual void \fBwheelEvent\fP (QWheelEvent *e)" +.br +.ti -1c +.RI "virtual double \fBgetValue\fP (const QPoint &p)=0" +.br +.ti -1c +.RI "virtual void \fBgetScrollMode\fP (const QPoint &pos, \fBScrollMode\fP &scrollMode, int &direction) const =0" +.br +.ti -1c +.RI "void \fBsetMouseOffset\fP (double)" +.br +.ti -1c +.RI "double \fBmouseOffset\fP () const " +.br +.ti -1c +.RI "int \fBscrollMode\fP () const " +.br +.in -1c +.SH "Detailed Description" +.PP +An abstract base class for slider widgets. + +\fBQwtAbstractSlider\fP is a base class for slider widgets. It handles mouse events and updates the slider's value accordingly. Derived classes only have to implement the \fBgetValue()\fP and \fBgetScrollMode()\fP members, and should react to a \fBvalueChange()\fP, which normally requires repainting. +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtAbstractSlider::ScrollMode\fP"Scroll mode +.PP +\fBSee also:\fP +.RS 4 +\fBgetScrollMode()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIScrNone \fP\fP +Scrolling switched off. Don't change the value. +.TP +\fB\fIScrMouse \fP\fP +Change the value while the user keeps the button pressed and moves the mouse. +.TP +\fB\fIScrTimer \fP\fP +Automatic scrolling. Increment the value in the specified direction as long as the user keeps the button pressed. +.TP +\fB\fIScrPage \fP\fP +Automatic scrolling. Same as ScrTimer, but increment by page size. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtAbstractSlider::QwtAbstractSlider (Qt::Orientationorientation, QWidget *parent = \fCNULL\fP)\fC [explicit]\fP" +.PP +Constructor. \fBParameters:\fP +.RS 4 +\fIorientation\fP Orientation +.br +\fIparent\fP Parent widget +.RE +.PP + +.SS "QwtAbstractSlider::~QwtAbstractSlider ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "void QwtAbstractSlider::fitValue (doublevalue)\fC [virtual, slot]\fP" +.PP +Set the slider's value to the nearest integer multiple of the step size. \fBParameters:\fP +.RS 4 +\fIvalue\fP Value +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetValue()\fP, \fBincValue()\fP +.RE +.PP + +.PP +Reimplemented from \fBQwtDoubleRange\fP. +.SS "virtual void QwtAbstractSlider::getScrollMode (const QPoint &pos, \fBScrollMode\fP &scrollMode, int &direction) const\fC [protected, pure virtual]\fP" +.PP +Determine what to do when the user presses a mouse button. This function is abstract and has to be implemented by derived classes. It is called on a mousePress event. The derived class can determine what should happen next in dependence of the position where the mouse was pressed by returning scrolling mode and direction. +.PP +\fBParameters:\fP +.RS 4 +\fIpos\fP point where the mouse was pressed +.RE +.PP +\fBReturn values:\fP +.RS 4 +\fIscrollMode\fP The scrolling mode +.br +\fIdirection\fP direction: 1, 0, or -1. +.RE +.PP + +.PP +Implemented in \fBQwtDial\fP, \fBQwtKnob\fP, \fBQwtSlider\fP, and \fBQwtWheel\fP. +.SS "virtual double QwtAbstractSlider::getValue (const QPoint &p)\fC [protected, pure virtual]\fP" +.PP +Determine the value corresponding to a specified poind. This is an abstract virtual function which is called when the user presses or releases a mouse button or moves the mouse. It has to be implemented by the derived class. +.PP +\fBParameters:\fP +.RS 4 +\fIp\fP point +.RE +.PP + +.PP +Implemented in \fBQwtDial\fP, \fBQwtKnob\fP, \fBQwtSlider\fP, and \fBQwtWheel\fP. +.SS "void QwtAbstractSlider::incValue (intsteps)\fC [virtual, slot]\fP" +.PP +Increment the value by a specified number of steps. \fBParameters:\fP +.RS 4 +\fIsteps\fP number of steps +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetValue()\fP +.RE +.PP + +.PP +Reimplemented from \fBQwtDoubleRange\fP. +.SS "bool QwtAbstractSlider::isReadOnly () const"In read only mode the slider can't be controlled by mouse or keyboard. +.PP +\fBReturns:\fP +.RS 4 +true if read only +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetReadOnly()\fP +.RE +.PP + +.SS "bool QwtAbstractSlider::isValid () const\fC [inline]\fP"\fBSee also:\fP +.RS 4 +QwtDblRange::isValid() +.RE +.PP + +.PP +Reimplemented from \fBQwtDoubleRange\fP. +.SS "void QwtAbstractSlider::keyPressEvent (QKeyEvent *e)\fC [protected, virtual]\fP"Handles key events +.PP +.IP "\(bu" 2 +Key_Down, KeyLeft +.br + Decrement by 1 +.IP "\(bu" 2 +Key_Up, Key_Right +.br + Increment by 1 +.PP +.PP +\fBParameters:\fP +.RS 4 +\fIe\fP Key event +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBisReadOnly()\fP +.RE +.PP + +.PP +Reimplemented in \fBQwtCompass\fP, and \fBQwtDial\fP. +.SS "double QwtAbstractSlider::mass () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +mass +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetMass()\fP +.RE +.PP + +.PP +Reimplemented in \fBQwtWheel\fP. +.SS "void QwtAbstractSlider::mouseMoveEvent (QMouseEvent *e)\fC [protected, virtual]\fP"Mouse Move Event handler +.PP +\fBParameters:\fP +.RS 4 +\fIe\fP Mouse event +.RE +.PP + +.SS "double QwtAbstractSlider::mouseOffset () const\fC [protected]\fP"\fBSee also:\fP +.RS 4 +\fBsetMouseOffset()\fP +.RE +.PP + +.SS "void QwtAbstractSlider::mousePressEvent (QMouseEvent *e)\fC [protected, virtual]\fP"Mouse press event handler +.PP +\fBParameters:\fP +.RS 4 +\fIe\fP Mouse event +.RE +.PP + +.SS "void QwtAbstractSlider::mouseReleaseEvent (QMouseEvent *e)\fC [protected, virtual]\fP"Mouse Release Event handler +.PP +\fBParameters:\fP +.RS 4 +\fIe\fP Mouse event +.RE +.PP + +.SS "Qt::Orientation QwtAbstractSlider::orientation () const"\fBReturns:\fP +.RS 4 +Orientation +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetOrientation()\fP +.RE +.PP + +.SS "int QwtAbstractSlider::scrollMode () const\fC [protected]\fP" +.PP +sa ScrollMode +.SS "void QwtAbstractSlider::setMass (doubleval)\fC [virtual]\fP" +.PP +Set the slider's mass for flywheel effect. If the slider's mass is greater then 0, it will continue to move after the mouse button has been released. Its speed decreases with time at a rate depending on the slider's mass. A large mass means that it will continue to move for a long time. +.PP +Derived widgets may overload this function to make it public. +.PP +\fBParameters:\fP +.RS 4 +\fIval\fP New mass in kg +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBmass()\fP +.RE +.PP + +.PP +Reimplemented in \fBQwtWheel\fP. +.SS "void QwtAbstractSlider::setMouseOffset (doubleoffset)\fC [protected]\fP"\fBSee also:\fP +.RS 4 +\fBmouseOffset()\fP +.RE +.PP + +.SS "void QwtAbstractSlider::setOrientation (Qt::Orientationo)\fC [virtual]\fP" +.PP +Set the orientation. \fBParameters:\fP +.RS 4 +\fIo\fP Orientation. Allowed values are Qt::Horizontal and Qt::Vertical. +.RE +.PP + +.PP +Reimplemented in \fBQwtSlider\fP, and \fBQwtWheel\fP. +.SS "void QwtAbstractSlider::setPosition (const QPoint &p)\fC [protected, virtual]\fP"Move the slider to a specified point, adjust the value and emit signals if necessary. +.SS "void QwtAbstractSlider::setReadOnly (boolreadOnly)\fC [virtual, slot]\fP"En/Disable read only mode +.PP +In read only mode the slider can't be controlled by mouse or keyboard. +.PP +\fBParameters:\fP +.RS 4 +\fIreadOnly\fP Enables in case of true +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBisReadOnly()\fP +.RE +.PP + +.SS "void QwtAbstractSlider::setTracking (boolenable)" +.PP +Enables or disables tracking. If tracking is enabled, the slider emits a \fBvalueChanged()\fP signal whenever its value changes (the default behaviour). If tracking is disabled, the value changed() signal will only be emitted if: +.PD 0 + +.IP "\(bu" 2 +the user releases the mouse button and the value has changed or +.IP "\(bu" 2 +at the end of automatic scrolling. +.PP +Tracking is enabled by default. +.PP +\fBParameters:\fP +.RS 4 +\fIenable\fP \fCtrue\fP (enable) or \fCfalse\fP (disable) tracking. +.RE +.PP + +.SS "void QwtAbstractSlider::setUpdateTime (intt)" +.PP +Specify the update interval for automatic scrolling. \fBParameters:\fP +.RS 4 +\fIt\fP update interval in milliseconds +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBgetScrollMode()\fP +.RE +.PP + +.SS "void QwtAbstractSlider::setValid (boolvalid)\fC [inline]\fP"\fBParameters:\fP +.RS 4 +\fIvalid\fP true/false +.RE +.PP +\fBSee also:\fP +.RS 4 +QwtDblRange::isValid() +.RE +.PP + +.PP +Reimplemented from \fBQwtDoubleRange\fP. +.SS "void QwtAbstractSlider::setValue (doubleval)\fC [virtual, slot]\fP" +.PP +Move the slider to a specified value. This function can be used to move the slider to a value which is not an integer multiple of the step size. +.PP +\fBParameters:\fP +.RS 4 +\fIval\fP new value +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBfitValue()\fP +.RE +.PP + +.PP +Reimplemented from \fBQwtDoubleRange\fP. +.SS "void QwtAbstractSlider::sliderMoved (doublevalue)\fC [signal]\fP"This signal is emitted when the user moves the slider with the mouse. +.PP +\fBParameters:\fP +.RS 4 +\fIvalue\fP new value +.RE +.PP + +.SS "void QwtAbstractSlider::sliderPressed ()\fC [signal]\fP"This signal is emitted when the user presses the movable part of the slider (start ScrMouse Mode). +.SS "void QwtAbstractSlider::sliderReleased ()\fC [signal]\fP"This signal is emitted when the user releases the movable part of the slider. +.SS "void QwtAbstractSlider::stopMoving ()" +.PP +Stop updating if automatic scrolling is active. +.SS "void QwtAbstractSlider::timerEvent (QTimerEvent *e)\fC [protected, virtual]\fP"Qt timer event +.PP +\fBParameters:\fP +.RS 4 +\fIe\fP Timer event +.RE +.PP + +.SS "void QwtAbstractSlider::valueChange ()\fC [protected, virtual]\fP"Notify change of value +.PP +This function can be reimplemented by derived classes in order to keep track of changes, i.e. repaint the widget. The default implementation emits a \fBvalueChanged()\fP signal if tracking is enabled. +.PP +Reimplemented from \fBQwtDoubleRange\fP. +.PP +Reimplemented in \fBQwtDial\fP, \fBQwtSlider\fP, and \fBQwtWheel\fP. +.SS "void QwtAbstractSlider::valueChanged (doublevalue)\fC [signal]\fP" +.PP +Notify a change of value. In the default setting (tracking enabled), this signal will be emitted every time the value changes ( see \fBsetTracking()\fP ). +.PP +\fBParameters:\fP +.RS 4 +\fIvalue\fP new value +.RE +.PP + +.SS "void QwtAbstractSlider::wheelEvent (QWheelEvent *e)\fC [protected, virtual]\fP"Wheel Event handler +.PP +\fBParameters:\fP +.RS 4 +\fIe\fP Whell event +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtAlphaColorMap.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtAlphaColorMap.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtAlphaColorMap.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtAlphaColorMap.3 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,99 @@ +.TH "QwtAlphaColorMap" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtAlphaColorMap \- +.PP +\fBQwtAlphaColorMap\fP variies the alpha value of a color. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtColorMap\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtAlphaColorMap\fP (const QColor &=QColor(Qt::gray))" +.br +.ti -1c +.RI "virtual \fB~QwtAlphaColorMap\fP ()" +.br +.ti -1c +.RI "void \fBsetColor\fP (const QColor &)" +.br +.ti -1c +.RI "QColor \fBcolor\fP () const " +.br +.ti -1c +.RI "virtual QRgb \fBrgb\fP (const \fBQwtInterval\fP &, double value) const " +.br +.in -1c +.SH "Detailed Description" +.PP +\fBQwtAlphaColorMap\fP variies the alpha value of a color. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtAlphaColorMap::QwtAlphaColorMap (const QColor &color = \fCQColor( Qt::gray )\fP)"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fIcolor\fP Color of the map +.RE +.PP + +.SS "QwtAlphaColorMap::~QwtAlphaColorMap ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "QColor QwtAlphaColorMap::color () const"\fBReturns:\fP +.RS 4 +the color +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetColor()\fP +.RE +.PP + +.SS "QRgb QwtAlphaColorMap::rgb (const \fBQwtInterval\fP &interval, doublevalue) const\fC [virtual]\fP" +.PP +Map a value of a given interval into a alpha value. alpha := (value - interval.minValue()) / interval.width(); +.PP +\fBParameters:\fP +.RS 4 +\fIinterval\fP Range for all values +.br +\fIvalue\fP Value to map into a rgb value +.RE +.PP +\fBReturns:\fP +.RS 4 +rgb value, with an alpha value +.RE +.PP + +.PP +Implements \fBQwtColorMap\fP. +.SS "void QwtAlphaColorMap::setColor (const QColor &color)"Set the color +.PP +\fBParameters:\fP +.RS 4 +\fIcolor\fP Color +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBcolor()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtAnalogClock.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtAnalogClock.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtAnalogClock.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtAnalogClock.3 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,260 @@ +.TH "QwtAnalogClock" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtAnalogClock \- +.PP +An analog clock. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtDial\fP. +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBHand\fP { \fBSecondHand\fP, \fBMinuteHand\fP, \fBHourHand\fP, \fBNHands\fP }" +.br +.in -1c +.SS "Public Slots" + +.in +1c +.ti -1c +.RI "void \fBsetCurrentTime\fP ()" +.br +.ti -1c +.RI "void \fBsetTime\fP (const QTime &=QTime::currentTime())" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtAnalogClock\fP (QWidget *parent=NULL)" +.br +.ti -1c +.RI "virtual \fB~QwtAnalogClock\fP ()" +.br +.ti -1c +.RI "virtual void \fBsetHand\fP (\fBHand\fP, \fBQwtDialNeedle\fP *)" +.br +.ti -1c +.RI "const \fBQwtDialNeedle\fP * \fBhand\fP (\fBHand\fP) const " +.br +.ti -1c +.RI "\fBQwtDialNeedle\fP * \fBhand\fP (\fBHand\fP)" +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual \fBQwtText\fP \fBscaleLabel\fP (double) const " +.br +.ti -1c +.RI "virtual void \fBdrawNeedle\fP (QPainter *, const QPointF &, double radius, double direction, QPalette::ColorGroup) const " +.br +.ti -1c +.RI "virtual void \fBdrawHand\fP (QPainter *, \fBHand\fP, const QPointF &, double radius, double direction, QPalette::ColorGroup) const " +.br +.in -1c +.SH "Detailed Description" +.PP +An analog clock. + +.PP +\fBExample\fP +.RS 4 + +.PP +.nf +#include + + QwtAnalogClock *clock = new QwtAnalogClock(...); + clock->scaleDraw()->setPenWidth(3); + clock->setLineWidth(6); + clock->setFrameShadow(QwtDial::Sunken); + clock->setTime(); + + // update the clock every second + QTimer *timer = new QTimer(clock); + timer->connect(timer, SIGNAL(timeout()), clock, SLOT(setCurrentTime())); + timer->start(1000); + + +.fi +.PP +.RE +.PP +Qwt is missing a set of good looking hands. Contributions are very welcome. +.PP +\fBNote:\fP +.RS 4 +The examples/dials example shows how to use \fBQwtAnalogClock\fP. +.RE +.PP + +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtAnalogClock::Hand\fP"Hand type +.PP +\fBSee also:\fP +.RS 4 +\fBsetHand()\fP, \fBhand()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fISecondHand \fP\fP +Needle displaying the seconds. +.TP +\fB\fIMinuteHand \fP\fP +Needle displaying the minutes. +.TP +\fB\fIHourHand \fP\fP +Needle displaying the hours. +.TP +\fB\fINHands \fP\fP +Number of needles. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtAnalogClock::QwtAnalogClock (QWidget *parent = \fCNULL\fP)\fC [explicit]\fP"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fIparent\fP Parent widget +.RE +.PP + +.SS "QwtAnalogClock::~QwtAnalogClock ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "void QwtAnalogClock::drawHand (QPainter *painter, \fBHand\fPhd, const QPointF ¢er, doubleradius, doubledirection, QPalette::ColorGroupcg) const\fC [protected, virtual]\fP"Draw a clock hand +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIhd\fP Specify the type of hand +.br +\fIcenter\fP Center of the clock +.br +\fIradius\fP Maximum length for the hands +.br +\fIdirection\fP Direction of the hand in degrees, counter clockwise +.br +\fIcg\fP ColorGroup +.RE +.PP + +.SS "void QwtAnalogClock::drawNeedle (QPainter *painter, const QPointF ¢er, doubleradius, doubledir, QPalette::ColorGroupcolorGroup) const\fC [protected, virtual]\fP" +.PP +Draw the needle. A clock has no single needle but three hands instead. drawNeedle translates \fBvalue()\fP into directions for the hands and calls \fBdrawHand()\fP. +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIcenter\fP Center of the clock +.br +\fIradius\fP Maximum length for the hands +.br +\fIdir\fP Dummy, not used. +.br +\fIcolorGroup\fP ColorGroup +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBdrawHand()\fP +.RE +.PP + +.PP +Reimplemented from \fBQwtDial\fP. +.SS "\fBQwtDialNeedle\fP * QwtAnalogClock::hand (\fBHand\fPhd)"\fBReturns:\fP +.RS 4 +Clock hand +.RE +.PP +\fBParameters:\fP +.RS 4 +\fIhd\fP Specifies the type of hand +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetHand()\fP +.RE +.PP + +.SS "const \fBQwtDialNeedle\fP * QwtAnalogClock::hand (\fBHand\fPhd) const"\fBReturns:\fP +.RS 4 +Clock hand +.RE +.PP +\fBParameters:\fP +.RS 4 +\fIhd\fP Specifies the type of hand +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetHand()\fP +.RE +.PP + +.SS "\fBQwtText\fP QwtAnalogClock::scaleLabel (doublevalue) const\fC [protected, virtual]\fP"Find the scale label for a given value +.PP +\fBParameters:\fP +.RS 4 +\fIvalue\fP Value +.RE +.PP +\fBReturns:\fP +.RS 4 +Label +.RE +.PP + +.PP +Reimplemented from \fBQwtDial\fP. +.SS "void QwtAnalogClock::setCurrentTime ()\fC [slot]\fP" +.PP +Set the current time. This is the same as \fBQwtAnalogClock::setTime()\fP, but Qt < 3.0 can't handle default parameters for slots. +.SS "void QwtAnalogClock::setHand (\fBHand\fPhand, \fBQwtDialNeedle\fP *needle)\fC [virtual]\fP"Set a clockhand +.PP +\fBParameters:\fP +.RS 4 +\fIhand\fP Specifies the type of hand +.br +\fIneedle\fP Hand +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBhand()\fP +.RE +.PP + +.SS "void QwtAnalogClock::setTime (const QTime &time = \fCQTime::currentTime()\fP)\fC [slot]\fP"Set a time +.PP +\fBParameters:\fP +.RS 4 +\fItime\fP Time to display +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtArraySeriesData.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtArraySeriesData.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtArraySeriesData.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtArraySeriesData.3 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,112 @@ +.TH "QwtArraySeriesData" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtArraySeriesData \- +.PP +Template class for data, that is organized as QVector. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtSeriesData< T >\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtArraySeriesData\fP ()" +.br +.ti -1c +.RI "\fBQwtArraySeriesData\fP (const QVector< T > &)" +.br +.ti -1c +.RI "void \fBsetSamples\fP (const QVector< T > &)" +.br +.ti -1c +.RI "const QVector< T > \fBsamples\fP () const " +.br +.ti -1c +.RI "virtual size_t \fBsize\fP () const " +.br +.ti -1c +.RI "virtual T \fBsample\fP (size_t) const " +.br +.in -1c +.SS "Protected Attributes" + +.in +1c +.ti -1c +.RI "QVector< T > \fBd_samples\fP" +.br +.in -1c +.SH "Detailed Description" +.PP + +.SS "template class QwtArraySeriesData< T >" +Template class for data, that is organized as QVector. + +QVector uses implicit data sharing and can be passed around as argument efficiently. +.SH "Constructor & Destructor Documentation" +.PP +.SS "template \fBQwtArraySeriesData\fP< T >::\fBQwtArraySeriesData\fP ()" +.PP +Constructor. +.SS "template \fBQwtArraySeriesData\fP< T >::\fBQwtArraySeriesData\fP (const QVector< T > &samples)"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fIsamples\fP Array of samples +.RE +.PP + +.SH "Member Function Documentation" +.PP +.SS "template T \fBQwtArraySeriesData\fP< T >::sample (size_ti) const\fC [virtual]\fP"Return a sample +.PP +\fBParameters:\fP +.RS 4 +\fIi\fP Index +.RE +.PP +\fBReturns:\fP +.RS 4 +Sample at position i +.RE +.PP + +.PP +Implements \fBQwtSeriesData< T >\fP. +.SS "template const QVector< T > \fBQwtArraySeriesData\fP< T >::samples () const"\fBReturns:\fP +.RS 4 +Array of samples +.RE +.PP + +.SS "template void \fBQwtArraySeriesData\fP< T >::setSamples (const QVector< T > &samples)"Assign an array of samples +.PP +\fBParameters:\fP +.RS 4 +\fIsamples\fP Array of samples +.RE +.PP + +.SS "template size_t \fBQwtArraySeriesData\fP< T >::size () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +Number of samples +.RE +.PP + +.PP +Implements \fBQwtSeriesData< T >\fP. +.SH "Member Data Documentation" +.PP +.SS "template QVector \fBQwtArraySeriesData\fP< T >::\fBd_samples\fP\fC [protected]\fP" +.PP +Vector of samples. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtArrowButton.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtArrowButton.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtArrowButton.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtArrowButton.3 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,155 @@ +.TH "QwtArrowButton" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtArrowButton \- +.PP +Arrow Button. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtArrowButton\fP (int num, Qt::ArrowType, QWidget *parent=NULL)" +.br +.ti -1c +.RI "virtual \fB~QwtArrowButton\fP ()" +.br +.ti -1c +.RI "Qt::ArrowType \fBarrowType\fP () const " +.br +.ti -1c +.RI "int \fBnum\fP () const " +.br +.ti -1c +.RI "virtual QSize \fBsizeHint\fP () const " +.br +.ti -1c +.RI "virtual QSize \fBminimumSizeHint\fP () const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual void \fBpaintEvent\fP (QPaintEvent *event)" +.br +.ti -1c +.RI "virtual void \fBdrawButtonLabel\fP (QPainter *p)" +.br +.ti -1c +.RI "virtual void \fBdrawArrow\fP (QPainter *, const QRect &, Qt::ArrowType) const " +.br +.ti -1c +.RI "virtual QRect \fBlabelRect\fP () const " +.br +.ti -1c +.RI "virtual QSize \fBarrowSize\fP (Qt::ArrowType, const QSize &boundingSize) const " +.br +.ti -1c +.RI "virtual void \fBkeyPressEvent\fP (QKeyEvent *)" +.br +.in -1c +.SH "Detailed Description" +.PP +Arrow Button. + +A push button with one or more filled triangles on its front. An Arrow button can have 1 to 3 arrows in a row, pointing up, down, left or right. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtArrowButton::QwtArrowButton (intnum, Qt::ArrowTypearrowType, QWidget *parent = \fCNULL\fP)\fC [explicit]\fP"\fBParameters:\fP +.RS 4 +\fInum\fP Number of arrows +.br +\fIarrowType\fP see Qt::ArowType in the Qt docs. +.br +\fIparent\fP Parent widget +.RE +.PP + +.SS "QwtArrowButton::~QwtArrowButton ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "QSize QwtArrowButton::arrowSize (Qt::ArrowTypearrowType, const QSize &boundingSize) const\fC [protected, virtual]\fP"Calculate the size for a arrow that fits into a rect of a given size +.PP +\fBParameters:\fP +.RS 4 +\fIarrowType\fP Arrow type +.br +\fIboundingSize\fP Bounding size +.RE +.PP +\fBReturns:\fP +.RS 4 +Size of the arrow +.RE +.PP + +.SS "Qt::ArrowType QwtArrowButton::arrowType () const" +.PP +The direction of the arrows. +.SS "void QwtArrowButton::drawArrow (QPainter *painter, const QRect &r, Qt::ArrowTypearrowType) const\fC [protected, virtual]\fP"Draw an arrow int a bounding rect +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIr\fP Rectangle where to paint the arrow +.br +\fIarrowType\fP Arrow type +.RE +.PP + +.SS "void QwtArrowButton::drawButtonLabel (QPainter *painter)\fC [protected, virtual]\fP" +.PP +Draw the button label. \fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.RE +.PP +\fBSee also:\fP +.RS 4 +The Qt Manual on QPushButton +.RE +.PP + +.SS "void QwtArrowButton::keyPressEvent (QKeyEvent *event)\fC [protected, virtual]\fP" +.PP +autoRepeat for the space keys +.SS "QRect QwtArrowButton::labelRect () const\fC [protected, virtual]\fP"\fBReturns:\fP +.RS 4 +the bounding rect for the label +.RE +.PP + +.SS "QSize QwtArrowButton::minimumSizeHint () const\fC [virtual]\fP" +.PP +Return a minimum size hint. +.SS "int QwtArrowButton::num () const" +.PP +The number of arrows. +.SS "void QwtArrowButton::paintEvent (QPaintEvent *event)\fC [protected, virtual]\fP"Paint event handler +.PP +\fBParameters:\fP +.RS 4 +\fIevent\fP Paint event +.RE +.PP + +.SS "QSize QwtArrowButton::sizeHint () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +a size hint +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtClipper.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtClipper.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtClipper.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtClipper.3 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,88 @@ +.TH "QwtClipper" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtClipper \- +.PP +Some clipping algos. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.SS "Static Public Member Functions" + +.in +1c +.ti -1c +.RI "static QPolygon \fBclipPolygon\fP (const QRect &, const QPolygon &, bool closePolygon=false)" +.br +.ti -1c +.RI "static QPolygonF \fBclipPolygonF\fP (const QRectF &, const QPolygonF &, bool closePolygon=false)" +.br +.ti -1c +.RI "static QVector< \fBQwtInterval\fP > \fBclipCircle\fP (const QRectF &, const QPointF &, double radius)" +.br +.in -1c +.SH "Detailed Description" +.PP +Some clipping algos. +.SH "Member Function Documentation" +.PP +.SS "QVector< \fBQwtInterval\fP > QwtClipper::clipCircle (const QRectF &clipRect, const QPointF ¢er, doubleradius)\fC [static]\fP"Circle clipping +.PP +\fBclipCircle()\fP devides a circle into intervals of angles representing arcs of the circle. When the circle is completely inside the clip rectangle an interval [0.0, 2 * M_PI] is returned. +.PP +\fBParameters:\fP +.RS 4 +\fIclipRect\fP Clip rectangle +.br +\fIcenter\fP Center of the circle +.br +\fIradius\fP Radius of the circle +.RE +.PP +\fBReturns:\fP +.RS 4 +Arcs of the circle +.RE +.PP + +.SS "QPolygon QwtClipper::clipPolygon (const QRect &clipRect, const QPolygon &polygon, boolclosePolygon = \fCfalse\fP)\fC [static]\fP"Sutherland-Hodgman polygon clipping +.PP +\fBParameters:\fP +.RS 4 +\fIclipRect\fP Clip rectangle +.br +\fIpolygon\fP Polygon +.br +\fIclosePolygon\fP True, when the polygon is closed +.RE +.PP +\fBReturns:\fP +.RS 4 +Clipped polygon +.RE +.PP + +.SS "QPolygonF QwtClipper::clipPolygonF (const QRectF &clipRect, const QPolygonF &polygon, boolclosePolygon = \fCfalse\fP)\fC [static]\fP"Sutherland-Hodgman polygon clipping +.PP +\fBParameters:\fP +.RS 4 +\fIclipRect\fP Clip rectangle +.br +\fIpolygon\fP Polygon +.br +\fIclosePolygon\fP True, when the polygon is closed +.RE +.PP +\fBReturns:\fP +.RS 4 +Clipped polygon +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtColorMap.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtColorMap.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtColorMap.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtColorMap.3 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,184 @@ +.TH "QwtColorMap" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtColorMap \- +.PP +\fBQwtColorMap\fP is used to map values into colors. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherited by \fBQwtAlphaColorMap\fP, and \fBQwtLinearColorMap\fP. +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBFormat\fP { \fBRGB\fP, \fBIndexed\fP }" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtColorMap\fP (\fBFormat\fP=QwtColorMap::RGB)" +.br +.ti -1c +.RI "virtual \fB~QwtColorMap\fP ()" +.br +.ti -1c +.RI "\fBFormat\fP \fBformat\fP () const " +.br +.ti -1c +.RI "virtual QRgb \fBrgb\fP (const \fBQwtInterval\fP &interval, double value) const =0" +.br +.ti -1c +.RI "virtual unsigned char \fBcolorIndex\fP (const \fBQwtInterval\fP &interval, double value) const =0" +.br +.ti -1c +.RI "QColor \fBcolor\fP (const \fBQwtInterval\fP &, double value) const " +.br +.ti -1c +.RI "virtual QVector< QRgb > \fBcolorTable\fP (const \fBQwtInterval\fP &) const " +.br +.in -1c +.SH "Detailed Description" +.PP +\fBQwtColorMap\fP is used to map values into colors. + +For displaying 3D data on a 2D plane the 3rd dimension is often displayed using colors, like f.e in a spectrogram. +.PP +Each color map is optimized to return colors for only one of the following image formats: +.PP +.IP "\(bu" 2 +QImage::Format_Indexed8 +.br + +.IP "\(bu" 2 +QImage::Format_ARGB32 +.br + +.PP +.PP +\fBSee also:\fP +.RS 4 +\fBQwtPlotSpectrogram\fP, \fBQwtScaleWidget\fP +.RE +.PP + +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtColorMap::Format\fP"Format for color mapping +.PP +\fBSee also:\fP +.RS 4 +\fBrgb()\fP, \fBcolorIndex()\fP, \fBcolorTable()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIRGB \fP\fP +The map is intended to map into QRgb values. +.TP +\fB\fIIndexed \fP\fP +The map is intended to map into 8 bit values, that are indices into the color table. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtColorMap::QwtColorMap (\fBFormat\fPformat = \fCQwtColorMap::RGB\fP)" +.PP +Constructor. +.SS "QwtColorMap::~QwtColorMap ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "QColor QwtColorMap::color (const \fBQwtInterval\fP &interval, doublevalue) const\fC [inline]\fP"Map a value into a color +.PP +\fBParameters:\fP +.RS 4 +\fIinterval\fP Valid interval for values +.br +\fIvalue\fP Value +.RE +.PP +\fBReturns:\fP +.RS 4 +Color corresponding to value +.RE +.PP +\fBWarning:\fP +.RS 4 +This method is slow for Indexed color maps. If it is necessary to map many values, its better to get the color table once and find the color using \fBcolorIndex()\fP. +.RE +.PP + +.SS "virtual unsigned char QwtColorMap::colorIndex (const \fBQwtInterval\fP &interval, doublevalue) const\fC [pure virtual]\fP"Map a value of a given interval into a color index +.PP +\fBParameters:\fP +.RS 4 +\fIinterval\fP Range for the values +.br +\fIvalue\fP Value +.RE +.PP +\fBReturns:\fP +.RS 4 +color index, corresponding to value +.RE +.PP + +.PP +Implemented in \fBQwtLinearColorMap\fP. +.SS "QwtColorTable QwtColorMap::colorTable (const \fBQwtInterval\fP &interval) const\fC [virtual]\fP"Build and return a color map of 256 colors +.PP +The color table is needed for rendering indexed images in combination with using \fBcolorIndex()\fP. +.PP +\fBParameters:\fP +.RS 4 +\fIinterval\fP Range for the values +.RE +.PP +\fBReturns:\fP +.RS 4 +A color table, that can be used for a QImage +.RE +.PP + +.SS "\fBQwtColorMap::Format\fP QwtColorMap::format () const\fC [inline]\fP"\fBReturns:\fP +.RS 4 +Intended format of the color map +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBFormat\fP +.RE +.PP + +.SS "virtual QRgb QwtColorMap::rgb (const \fBQwtInterval\fP &interval, doublevalue) const\fC [pure virtual]\fP"Map a value of a given interval into a rgb value. +.PP +\fBParameters:\fP +.RS 4 +\fIinterval\fP Range for the values +.br +\fIvalue\fP Value +.RE +.PP +\fBReturns:\fP +.RS 4 +rgb value, corresponding to value +.RE +.PP + +.PP +Implemented in \fBQwtLinearColorMap\fP, and \fBQwtAlphaColorMap\fP. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtColumnRect.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtColumnRect.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtColumnRect.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtColumnRect.3 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,103 @@ +.TH "QwtColumnRect" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtColumnRect \- +.PP +Directed rectangle representing bounding rectangle und orientation of a column. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBDirection\fP { \fBLeftToRight\fP, \fBRightToLeft\fP, \fBBottomToTop\fP, \fBTopToBottom\fP }" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtColumnRect\fP ()" +.br +.ti -1c +.RI "QRectF \fBtoRect\fP () const " +.br +.ti -1c +.RI "Qt::Orientation \fBorientation\fP () const " +.br +.in -1c +.SS "Public Attributes" + +.in +1c +.ti -1c +.RI "\fBQwtInterval\fP \fBhInterval\fP" +.br +.ti -1c +.RI "\fBQwtInterval\fP \fBvInterval\fP" +.br +.ti -1c +.RI "\fBDirection\fP \fBdirection\fP" +.br +.in -1c +.SH "Detailed Description" +.PP +Directed rectangle representing bounding rectangle und orientation of a column. +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtColumnRect::Direction\fP" +.PP +Direction of the column. +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fILeftToRight \fP\fP +From left to right. +.TP +\fB\fIRightToLeft \fP\fP +From right to left. +.TP +\fB\fIBottomToTop \fP\fP +From bottom to top. +.TP +\fB\fITopToBottom \fP\fP +From top to bottom. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtColumnRect::QwtColumnRect ()\fC [inline]\fP" +.PP +Build an rectangle with invalid intervals directed BottomToTop. +.SH "Member Function Documentation" +.PP +.SS "Qt::Orientation QwtColumnRect::orientation () const\fC [inline]\fP"\fBReturns:\fP +.RS 4 +Orientation +.RE +.PP + +.SS "QRectF QwtColumnRect::toRect () const\fC [inline]\fP"\fBReturns:\fP +.RS 4 +A normalized QRect built from the intervals +.RE +.PP + +.SH "Member Data Documentation" +.PP +.SS "\fBDirection\fP \fBQwtColumnRect::direction\fP" +.PP +Direction. +.SS "\fBQwtInterval\fP \fBQwtColumnRect::hInterval\fP" +.PP +Interval for the horizontal coordinates. +.SS "\fBQwtInterval\fP \fBQwtColumnRect::vInterval\fP" +.PP +Interval for the vertical coordinates. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtColumnSymbol.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtColumnSymbol.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtColumnSymbol.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtColumnSymbol.3 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,262 @@ +.TH "QwtColumnSymbol" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtColumnSymbol \- +.PP +A drawing primitive for columns. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBStyle\fP { \fBNoStyle\fP = -1, \fBBox\fP, \fBUserStyle\fP = 1000 }" +.br +.ti -1c +.RI "enum \fBFrameStyle\fP { \fBNoFrame\fP, \fBPlain\fP, \fBRaised\fP }" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtColumnSymbol\fP (\fBStyle\fP=NoStyle)" +.br +.ti -1c +.RI "virtual \fB~QwtColumnSymbol\fP ()" +.br +.ti -1c +.RI "void \fBsetFrameStyle\fP (\fBFrameStyle\fP style)" +.br +.ti -1c +.RI "\fBFrameStyle\fP \fBframeStyle\fP () const " +.br +.ti -1c +.RI "void \fBsetLineWidth\fP (int width)" +.br +.ti -1c +.RI "int \fBlineWidth\fP () const " +.br +.ti -1c +.RI "void \fBsetPalette\fP (const QPalette &)" +.br +.ti -1c +.RI "const QPalette & \fBpalette\fP () const " +.br +.ti -1c +.RI "void \fBsetStyle\fP (\fBStyle\fP)" +.br +.ti -1c +.RI "\fBStyle\fP \fBstyle\fP () const " +.br +.ti -1c +.RI "virtual void \fBdraw\fP (QPainter *, const \fBQwtColumnRect\fP &) const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "void \fBdrawBox\fP (QPainter *, const \fBQwtColumnRect\fP &) const " +.br +.in -1c +.SH "Detailed Description" +.PP +A drawing primitive for columns. +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtColumnSymbol::FrameStyle\fP"Frame Style used in Box \fBstyle()\fP. +.PP +\fBSee also:\fP +.RS 4 +\fBStyle\fP, \fBsetFrameStyle()\fP, \fBframeStyle()\fP, \fBsetStyle()\fP, \fBsetPalette()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fINoFrame \fP\fP +No frame. +.TP +\fB\fIPlain \fP\fP +A plain frame style. +.TP +\fB\fIRaised \fP\fP +A raised frame style. +.SS "enum \fBQwtColumnSymbol::Style\fP"Style +.PP +\fBSee also:\fP +.RS 4 +\fBsetStyle()\fP, \fBstyle()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fINoStyle \fP\fP +No Style, the symbol draws nothing. +.TP +\fB\fIBox \fP\fP +The column is painted with a frame depending on the \fBframeStyle()\fP and \fBlineWidth()\fP using the \fBpalette()\fP. +.TP +\fB\fIUserStyle \fP\fP +Styles >= \fBQwtColumnSymbol::UserStyle\fP are reserved for derived classes of \fBQwtColumnSymbol\fP that overload \fBdraw()\fP with additional application specific symbol types. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtColumnSymbol::QwtColumnSymbol (\fBStyle\fPstyle = \fCNoStyle\fP)"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fIstyle\fP Style of the symbol +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetStyle()\fP, \fBstyle()\fP, \fBStyle\fP +.RE +.PP + +.SS "QwtColumnSymbol::~QwtColumnSymbol ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "void QwtColumnSymbol::draw (QPainter *painter, const \fBQwtColumnRect\fP &rect) const\fC [virtual]\fP"Draw the symbol depending on its style. +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIrect\fP Directed rectangle +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBdrawBox()\fP +.RE +.PP + +.SS "void QwtColumnSymbol::drawBox (QPainter *painter, const \fBQwtColumnRect\fP &rect) const\fC [protected]\fP"Draw the symbol when it is in Box style. +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIrect\fP Directed rectangle +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBdraw()\fP +.RE +.PP + +.SS "\fBQwtColumnSymbol::FrameStyle\fP QwtColumnSymbol::frameStyle () const"\fBReturns:\fP +.RS 4 +Current frame style, that is used for the Box style. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetFrameStyle()\fP, \fBlineWidth()\fP, \fBsetStyle()\fP +.RE +.PP + +.SS "int QwtColumnSymbol::lineWidth () const"\fBReturns:\fP +.RS 4 +Line width of the frame, that is used for the Box style. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetLineWidth()\fP, \fBframeStyle()\fP, \fBsetStyle()\fP +.RE +.PP + +.SS "const QPalette & QwtColumnSymbol::palette () const"\fBReturns:\fP +.RS 4 +Current palette +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetPalette()\fP +.RE +.PP + +.SS "void QwtColumnSymbol::setFrameStyle (\fBFrameStyle\fPframeStyle)"Set the frame, that is used for the Box style. +.PP +\fBParameters:\fP +.RS 4 +\fIframeStyle\fP Frame style +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBframeStyle()\fP, \fBsetLineWidth()\fP, \fBsetStyle()\fP +.RE +.PP + +.SS "void QwtColumnSymbol::setLineWidth (intwidth)"Set the line width of the frame, that is used for the Box style. +.PP +\fBParameters:\fP +.RS 4 +\fIwidth\fP Width +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBlineWidth()\fP, \fBsetFrameStyle()\fP +.RE +.PP + +.SS "void QwtColumnSymbol::setPalette (const QPalette &palette)"Assign a palette for the symbol +.PP +\fBParameters:\fP +.RS 4 +\fIpalette\fP Palette +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBpalette()\fP, \fBsetStyle()\fP +.RE +.PP + +.SS "void QwtColumnSymbol::setStyle (\fBStyle\fPstyle)"Specify the symbol style +.PP +\fBParameters:\fP +.RS 4 +\fIstyle\fP Style +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBstyle()\fP, \fBsetPalette()\fP +.RE +.PP + +.SS "\fBQwtColumnSymbol::Style\fP QwtColumnSymbol::style () const"\fBReturns:\fP +.RS 4 +Current symbol style +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetStyle()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtCompass.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtCompass.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtCompass.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtCompass.3 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,237 @@ +.TH "QwtCompass" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtCompass \- +.PP +A Compass Widget. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtDial\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtCompass\fP (QWidget *parent=NULL)" +.br +.ti -1c +.RI "virtual \fB~QwtCompass\fP ()" +.br +.ti -1c +.RI "void \fBsetRose\fP (\fBQwtCompassRose\fP *rose)" +.br +.ti -1c +.RI "const \fBQwtCompassRose\fP * \fBrose\fP () const " +.br +.ti -1c +.RI "\fBQwtCompassRose\fP * \fBrose\fP ()" +.br +.ti -1c +.RI "const QMap< double, QString > & \fBlabelMap\fP () const " +.br +.ti -1c +.RI "QMap< double, QString > & \fBlabelMap\fP ()" +.br +.ti -1c +.RI "void \fBsetLabelMap\fP (const QMap< double, QString > &map)" +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual \fBQwtText\fP \fBscaleLabel\fP (double value) const " +.br +.ti -1c +.RI "virtual void \fBdrawRose\fP (QPainter *, const QPointF ¢er, double radius, double north, QPalette::ColorGroup) const " +.br +.ti -1c +.RI "virtual void \fBdrawScaleContents\fP (QPainter *, const QPointF ¢er, double radius) const " +.br +.ti -1c +.RI "virtual void \fBkeyPressEvent\fP (QKeyEvent *)" +.br +.in -1c +.SH "Detailed Description" +.PP +A Compass Widget. + +\fBQwtCompass\fP is a widget to display and enter directions. It consists of a scale, an optional needle and rose. +.PP +.PP +\fBNote:\fP +.RS 4 +The examples/dials example shows how to use \fBQwtCompass\fP. +.RE +.PP + +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtCompass::QwtCompass (QWidget *parent = \fCNULL\fP)\fC [explicit]\fP" +.PP +Constructor. \fBParameters:\fP +.RS 4 +\fIparent\fP Parent widget +.RE +.PP +Create a compass widget with a scale, no needle and no rose. The default origin is 270.0 with no valid value. It accepts mouse and keyboard inputs and has no step size. The default mode is \fBQwtDial::RotateNeedle\fP. +.SS "QwtCompass::~QwtCompass ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "void QwtCompass::drawRose (QPainter *painter, const QPointF ¢er, doubleradius, doublenorth, QPalette::ColorGroupcg) const\fC [protected, virtual]\fP"Draw the compass rose +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIcenter\fP Center of the compass +.br +\fIradius\fP of the circle, where to paint the rose +.br +\fInorth\fP Direction pointing north, in degrees counter clockwise +.br +\fIcg\fP Color group +.RE +.PP + +.SS "void QwtCompass::drawScaleContents (QPainter *painter, const QPointF ¢er, doubleradius) const\fC [protected, virtual]\fP"Draw the contents of the scale +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIcenter\fP Center of the content circle +.br +\fIradius\fP Radius of the content circle +.RE +.PP + +.PP +Reimplemented from \fBQwtDial\fP. +.SS "void QwtCompass::keyPressEvent (QKeyEvent *kev)\fC [protected, virtual]\fP"Handles key events +.PP +Beside the keys described in \fBQwtDial::keyPressEvent\fP numbers from 1-9 (without 5) set the direction according to their position on the num pad. +.PP +\fBSee also:\fP +.RS 4 +\fBisReadOnly()\fP +.RE +.PP + +.PP +Reimplemented from \fBQwtDial\fP. +.SS "QMap< double, QString > & QwtCompass::labelMap ()"\fBReturns:\fP +.RS 4 +map, mapping values to labels +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetLabelMap()\fP +.RE +.PP + +.SS "const QMap< double, QString > & QwtCompass::labelMap () const"\fBReturns:\fP +.RS 4 +map, mapping values to labels +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetLabelMap()\fP +.RE +.PP + +.SS "const \fBQwtCompassRose\fP * QwtCompass::rose () const"\fBReturns:\fP +.RS 4 +rose +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetRose()\fP +.RE +.PP + +.SS "\fBQwtCompassRose\fP * QwtCompass::rose ()"\fBReturns:\fP +.RS 4 +rose +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetRose()\fP +.RE +.PP + +.SS "\fBQwtText\fP QwtCompass::scaleLabel (doublevalue) const\fC [protected, virtual]\fP"Map a value to a corresponding label +.PP +\fBParameters:\fP +.RS 4 +\fIvalue\fP Value that will be mapped +.RE +.PP +\fBReturns:\fP +.RS 4 +Label, or QString::null +.RE +.PP +label() looks in a map for a corresponding label for value or return an null text. +.PP +\fBSee also:\fP +.RS 4 +\fBlabelMap()\fP, \fBsetLabelMap()\fP +.RE +.PP + +.PP +Reimplemented from \fBQwtDial\fP. +.SS "void QwtCompass::setLabelMap (const QMap< double, QString > &map)" +.PP +Set a map, mapping values to labels. \fBParameters:\fP +.RS 4 +\fImap\fP value to label map +.RE +.PP +The values of the major ticks are found by looking into this map. The default map consists of the labels N, NE, E, SE, S, SW, W, NW. +.PP +\fBWarning:\fP +.RS 4 +The map will have no effect for values that are no major tick values. Major ticks can be changed by QwtScaleDraw::setScale +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBlabelMap()\fP, \fBscaleDraw()\fP, \fBsetScale()\fP +.RE +.PP + +.SS "void QwtCompass::setRose (\fBQwtCompassRose\fP *rose)"Set a rose for the compass +.PP +\fBParameters:\fP +.RS 4 +\fIrose\fP Compass rose +.RE +.PP +\fBWarning:\fP +.RS 4 +The rose will be deleted, when a different rose is set or in ~QwtCompass +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBrose()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtCompassMagnetNeedle.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtCompassMagnetNeedle.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtCompassMagnetNeedle.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtCompassMagnetNeedle.3 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,102 @@ +.TH "QwtCompassMagnetNeedle" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtCompassMagnetNeedle \- +.PP +A magnet needle for compass widgets. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtDialNeedle\fP. +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBStyle\fP { \fBTriangleStyle\fP, \fBThinStyle\fP }" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtCompassMagnetNeedle\fP (\fBStyle\fP=TriangleStyle, const QColor &light=Qt::white, const QColor &dark=Qt::red)" +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual void \fBdrawNeedle\fP (QPainter *, double length, QPalette::ColorGroup) const " +.br +.in -1c +.SH "Detailed Description" +.PP +A magnet needle for compass widgets. + +A magnet needle points to two opposite directions indicating north and south. +.PP +The following colors are used: +.IP "\(bu" 2 +QPalette::Light +.br + Used for pointing south +.IP "\(bu" 2 +QPalette::Dark +.br + Used for pointing north +.IP "\(bu" 2 +QPalette::Base +.br + Knob (ThinStyle only) +.PP +.PP +\fBSee also:\fP +.RS 4 +\fBQwtDial\fP, \fBQwtCompass\fP +.RE +.PP + +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtCompassMagnetNeedle::Style\fP" +.PP +Style of the needle. +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fITriangleStyle \fP\fP +A needle with a triangular shape. +.TP +\fB\fIThinStyle \fP\fP +A thin needle. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtCompassMagnetNeedle::QwtCompassMagnetNeedle (\fBStyle\fPstyle = \fCTriangleStyle\fP, const QColor &light = \fCQt::white\fP, const QColor &dark = \fCQt::red\fP)" +.PP +Constructor. +.SH "Member Function Documentation" +.PP +.SS "void QwtCompassMagnetNeedle::drawNeedle (QPainter *painter, doublelength, QPalette::ColorGroupcolorGroup) const\fC [protected, virtual]\fP"Draw the needle +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIlength\fP Length of the needle +.br +\fIcolorGroup\fP Color group, used for painting +.RE +.PP + +.PP +Implements \fBQwtDialNeedle\fP. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtCompassRose.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtCompassRose.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtCompassRose.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtCompassRose.3 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,72 @@ +.TH "QwtCompassRose" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtCompassRose \- +.PP +Abstract base class for a compass rose. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherited by \fBQwtSimpleCompassRose\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "virtual \fB~QwtCompassRose\fP ()" +.br +.ti -1c +.RI "virtual void \fBsetPalette\fP (const QPalette &p)" +.br +.ti -1c +.RI "const QPalette & \fBpalette\fP () const " +.br +.ti -1c +.RI "virtual void \fBdraw\fP (QPainter *painter, const QPointF ¢er, double radius, double north, QPalette::ColorGroup colorGroup=QPalette::Active) const =0" +.br +.in -1c +.SH "Detailed Description" +.PP +Abstract base class for a compass rose. +.SH "Constructor & Destructor Documentation" +.PP +.SS "virtual QwtCompassRose::~QwtCompassRose ()\fC [inline, virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "virtual void QwtCompassRose::draw (QPainter *painter, const QPointF ¢er, doubleradius, doublenorth, QPalette::ColorGroupcolorGroup = \fCQPalette::Active\fP) const\fC [pure virtual]\fP"Draw the rose +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIcenter\fP Center point +.br +\fIradius\fP Radius of the rose +.br +\fInorth\fP Position +.br +\fIcolorGroup\fP Color group +.RE +.PP + +.PP +Implemented in \fBQwtSimpleCompassRose\fP. +.SS "const QPalette& QwtCompassRose::palette () const\fC [inline]\fP"\fBReturns:\fP +.RS 4 +Current palette +.RE +.PP + +.SS "virtual void QwtCompassRose::setPalette (const QPalette &p)\fC [inline, virtual]\fP" +.PP +Assign a palette. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtCompassWindArrow.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtCompassWindArrow.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtCompassWindArrow.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtCompassWindArrow.3 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,106 @@ +.TH "QwtCompassWindArrow" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtCompassWindArrow \- +.PP +An indicator for the wind direction. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtDialNeedle\fP. +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBStyle\fP { \fBStyle1\fP, \fBStyle2\fP }" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtCompassWindArrow\fP (\fBStyle\fP, const QColor &light=Qt::white, const QColor &dark=Qt::gray)" +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual void \fBdrawNeedle\fP (QPainter *, double length, QPalette::ColorGroup) const " +.br +.in -1c +.SH "Detailed Description" +.PP +An indicator for the wind direction. + +\fBQwtCompassWindArrow\fP shows the direction where the wind comes from. +.PP +.IP "\(bu" 2 +QPalette::Light +.br + Used for Style1, or the light half of Style2 +.IP "\(bu" 2 +QPalette::Dark +.br + Used for the dark half of Style2 +.PP +.PP +\fBSee also:\fP +.RS 4 +\fBQwtDial\fP, \fBQwtCompass\fP +.RE +.PP + +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtCompassWindArrow::Style\fP" +.PP +Style of the arrow. +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIStyle1 \fP\fP +A needle pointing to the center. +.TP +\fB\fIStyle2 \fP\fP +A needle pointing to the center. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtCompassWindArrow::QwtCompassWindArrow (\fBStyle\fPstyle, const QColor &light = \fCQt::white\fP, const QColor &dark = \fCQt::gray\fP)"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fIstyle\fP Arrow style +.br +\fIlight\fP Light color +.br +\fIdark\fP Dark color +.RE +.PP + +.SH "Member Function Documentation" +.PP +.SS "void QwtCompassWindArrow::drawNeedle (QPainter *painter, doublelength, QPalette::ColorGroupcolorGroup) const\fC [protected, virtual]\fP"Draw the needle +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIlength\fP Length of the needle +.br +\fIcolorGroup\fP Color group, used for painting +.RE +.PP + +.PP +Implements \fBQwtDialNeedle\fP. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtCounter.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtCounter.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtCounter.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtCounter.3 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,454 @@ +.TH "QwtCounter" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtCounter \- +.PP +The Counter Widget. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtDoubleRange\fP. +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBButton\fP { \fBButton1\fP, \fBButton2\fP, \fBButton3\fP, \fBButtonCnt\fP }" +.br +.in -1c +.SS "Signals" + +.in +1c +.ti -1c +.RI "void \fBbuttonReleased\fP (double value)" +.br +.ti -1c +.RI "void \fBvalueChanged\fP (double value)" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtCounter\fP (QWidget *parent=NULL)" +.br +.ti -1c +.RI "virtual \fB~QwtCounter\fP ()" +.br +.ti -1c +.RI "bool \fBeditable\fP () const " +.br +.ti -1c +.RI "void \fBsetEditable\fP (bool)" +.br +.ti -1c +.RI "void \fBsetNumButtons\fP (int n)" +.br +.ti -1c +.RI "int \fBnumButtons\fP () const " +.br +.ti -1c +.RI "void \fBsetIncSteps\fP (\fBQwtCounter::Button\fP btn, int nSteps)" +.br +.ti -1c +.RI "int \fBincSteps\fP (\fBQwtCounter::Button\fP btn) const " +.br +.ti -1c +.RI "virtual void \fBsetValue\fP (double)" +.br +.ti -1c +.RI "virtual QSize \fBsizeHint\fP () const " +.br +.ti -1c +.RI "double \fBstep\fP () const " +.br +.ti -1c +.RI "void \fBsetStep\fP (double s)" +.br +.ti -1c +.RI "double \fBminValue\fP () const " +.br +.ti -1c +.RI "void \fBsetMinValue\fP (double m)" +.br +.ti -1c +.RI "double \fBmaxValue\fP () const " +.br +.ti -1c +.RI "void \fBsetMaxValue\fP (double m)" +.br +.ti -1c +.RI "void \fBsetStepButton1\fP (int nSteps)" +.br +.ti -1c +.RI "int \fBstepButton1\fP () const " +.br +.ti -1c +.RI "void \fBsetStepButton2\fP (int nSteps)" +.br +.ti -1c +.RI "int \fBstepButton2\fP () const " +.br +.ti -1c +.RI "void \fBsetStepButton3\fP (int nSteps)" +.br +.ti -1c +.RI "int \fBstepButton3\fP () const " +.br +.ti -1c +.RI "virtual double \fBvalue\fP () const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual bool \fBevent\fP (QEvent *)" +.br +.ti -1c +.RI "virtual void \fBwheelEvent\fP (QWheelEvent *)" +.br +.ti -1c +.RI "virtual void \fBkeyPressEvent\fP (QKeyEvent *)" +.br +.ti -1c +.RI "virtual void \fBrangeChange\fP ()" +.br +.in -1c +.SH "Detailed Description" +.PP +The Counter Widget. + +A Counter consists of a label displaying a number and one ore more (up to three) push buttons on each side of the label which can be used to increment or decrement the counter's value. +.PP +A Counter has a range from a minimum value to a maximum value and a step size. The range can be specified using QwtDblRange::setRange(). The counter's value is an integer multiple of the step size. The number of steps by which a button increments or decrements the value can be specified using \fBQwtCounter::setIncSteps()\fP. The number of buttons can be changed with \fBQwtCounter::setNumButtons()\fP. +.PP +Holding the space bar down with focus on a button is the fastest method to step through the counter values. When the counter underflows/overflows, the focus is set to the smallest up/down button and counting is disabled. Counting is re-enabled on a button release event (mouse or space bar). +.PP +Example: +.PP +.nf +#include '../include/qwt_counter.h> + +QwtCounter *cnt; + +cnt = new QwtCounter(parent, name); + +cnt->setRange(0.0, 100.0, 1.0); // From 0.0 to 100, step 1.0 +cnt->setNumButtons(2); // Two buttons each side +cnt->setIncSteps(QwtCounter::Button1, 1); // Button 1 increments 1 step +cnt->setIncSteps(QwtCounter::Button2, 20); // Button 2 increments 20 steps + +connect(cnt, SIGNAL(valueChanged(double)), my_class, SLOT(newValue(double))); + +.fi +.PP + +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtCounter::Button\fP" +.PP +Button index. +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIButton1 \fP\fP +Button intended for minor steps. +.TP +\fB\fIButton2 \fP\fP +Button intended for medium steps. +.TP +\fB\fIButton3 \fP\fP +Button intended for large steps. +.TP +\fB\fIButtonCnt \fP\fP +Number of buttons. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtCounter::QwtCounter (QWidget *parent = \fCNULL\fP)\fC [explicit]\fP"The default number of buttons is set to 2. The default increments are: +.PD 0 + +.IP "\(bu" 2 +Button 1: 1 step +.IP "\(bu" 2 +Button 2: 10 steps +.IP "\(bu" 2 +Button 3: 100 steps +.PP +\fBParameters:\fP +.RS 4 +\fIparent\fP +.RE +.PP + +.SS "QwtCounter::~QwtCounter ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "void QwtCounter::buttonReleased (doublevalue)\fC [signal]\fP"This signal is emitted when a button has been released +.PP +\fBParameters:\fP +.RS 4 +\fIvalue\fP The new value +.RE +.PP + +.SS "bool QwtCounter::editable () const" +.PP +returns whether the line edit is edatble. (default is yes) +.SS "bool QwtCounter::event (QEvent *event)\fC [protected, virtual]\fP"Handle PolishRequest events +.PP +\fBParameters:\fP +.RS 4 +\fIevent\fP Event +.RE +.PP + +.SS "int QwtCounter::incSteps (\fBQwtCounter::Button\fPbutton) const"\fBReturns:\fP +.RS 4 +the number of steps by which a specified button increments the value or 0 if the button is invalid. +.RE +.PP +\fBParameters:\fP +.RS 4 +\fIbutton\fP Button index +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetIncSteps()\fP +.RE +.PP + +.SS "void QwtCounter::keyPressEvent (QKeyEvent *event)\fC [protected, virtual]\fP"Handle key events +.PP +.IP "\(bu" 2 +Ctrl + Qt::Key_Home +.br + Step to \fBminValue()\fP +.IP "\(bu" 2 +Ctrl + Qt::Key_End +.br + Step to \fBmaxValue()\fP +.IP "\(bu" 2 +Qt::Key_Up +.br + Increment by incSteps(QwtCounter::Button1) +.IP "\(bu" 2 +Qt::Key_Down +.br + Decrement by incSteps(QwtCounter::Button1) +.IP "\(bu" 2 +Qt::Key_PageUp +.br + Increment by incSteps(QwtCounter::Button2) +.IP "\(bu" 2 +Qt::Key_PageDown +.br + Decrement by incSteps(QwtCounter::Button2) +.IP "\(bu" 2 +Shift + Qt::Key_PageUp +.br + Increment by incSteps(QwtCounter::Button3) +.IP "\(bu" 2 +Shift + Qt::Key_PageDown +.br + Decrement by incSteps(QwtCounter::Button3) +.PP +.PP +\fBParameters:\fP +.RS 4 +\fIevent\fP Key event +.RE +.PP + +.SS "double QwtCounter::maxValue () const" +.PP +returns the maximum value of the range +.PP +Reimplemented from \fBQwtDoubleRange\fP. +.SS "double QwtCounter::minValue () const" +.PP +returns the minimum value of the range +.PP +Reimplemented from \fBQwtDoubleRange\fP. +.SS "int QwtCounter::numButtons () const"\fBReturns:\fP +.RS 4 +The number of buttons on each side of the widget. +.RE +.PP + +.SS "void QwtCounter::rangeChange ()\fC [protected, virtual]\fP" +.PP +Notify change of range. This function updates the enabled property of all buttons contained in \fBQwtCounter\fP. +.PP +Reimplemented from \fBQwtDoubleRange\fP. +.SS "void QwtCounter::setEditable (booleditable)" +.PP +Allow/disallow the user to manually edit the value. \fBParameters:\fP +.RS 4 +\fIeditable\fP true enables editing +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBeditable()\fP +.RE +.PP + +.SS "void QwtCounter::setIncSteps (\fBQwtCounter::Button\fPbutton, intnSteps)"Specify the number of steps by which the value is incremented or decremented when a specified button is pushed. +.PP +\fBParameters:\fP +.RS 4 +\fIbutton\fP Button index +.br +\fInSteps\fP Number of steps +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBincSteps()\fP +.RE +.PP + +.SS "void QwtCounter::setMaxValue (doublevalue)"Set the maximum value of the range +.PP +\fBParameters:\fP +.RS 4 +\fIvalue\fP Maximum value +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetMinValue()\fP, maxVal() +.RE +.PP + +.SS "void QwtCounter::setMinValue (doublevalue)"Set the minimum value of the range +.PP +\fBParameters:\fP +.RS 4 +\fIvalue\fP Minimum value +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetMaxValue()\fP, \fBminValue()\fP +.RE +.PP + +.SS "void QwtCounter::setNumButtons (intnumButtons)" +.PP +Specify the number of buttons on each side of the label. \fBParameters:\fP +.RS 4 +\fInumButtons\fP Number of buttons +.RE +.PP + +.SS "void QwtCounter::setStep (doublestepSize)"Set the step size +.PP +\fBParameters:\fP +.RS 4 +\fIstepSize\fP Step size +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtDoubleRange::setStep()\fP +.RE +.PP + +.PP +Reimplemented from \fBQwtDoubleRange\fP. +.SS "void QwtCounter::setStepButton1 (intnSteps)"Set the number of increment steps for button 1 +.PP +\fBParameters:\fP +.RS 4 +\fInSteps\fP Number of steps +.RE +.PP + +.SS "void QwtCounter::setStepButton2 (intnSteps)"Set the number of increment steps for button 2 +.PP +\fBParameters:\fP +.RS 4 +\fInSteps\fP Number of steps +.RE +.PP + +.SS "void QwtCounter::setStepButton3 (intnSteps)"Set the number of increment steps for button 3 +.PP +\fBParameters:\fP +.RS 4 +\fInSteps\fP Number of steps +.RE +.PP + +.SS "void QwtCounter::setValue (doublevalue)\fC [virtual]\fP" +.PP +Set a new value. Calls \fBQwtDoubleRange::setValue\fP and does all visual updates. +.PP +\fBParameters:\fP +.RS 4 +\fIvalue\fP New value +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtDoubleRange::setValue()\fP +.RE +.PP + +.PP +Reimplemented from \fBQwtDoubleRange\fP. +.SS "QSize QwtCounter::sizeHint () const\fC [virtual]\fP" +.PP +A size hint. +.SS "double QwtCounter::step () const" +.PP +returns the step size +.PP +Reimplemented from \fBQwtDoubleRange\fP. +.SS "int QwtCounter::stepButton1 () const" +.PP +returns the number of increment steps for button 1 +.SS "int QwtCounter::stepButton2 () const" +.PP +returns the number of increment steps for button 2 +.SS "int QwtCounter::stepButton3 () const" +.PP +returns the number of increment steps for button 3 +.SS "double QwtCounter::value () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +Current value +.RE +.PP + +.PP +Reimplemented from \fBQwtDoubleRange\fP. +.SS "void QwtCounter::valueChanged (doublevalue)\fC [signal]\fP"This signal is emitted when the counter's value has changed +.PP +\fBParameters:\fP +.RS 4 +\fIvalue\fP The new value +.RE +.PP + +.SS "void QwtCounter::wheelEvent (QWheelEvent *event)\fC [protected, virtual]\fP"Handle wheel events +.PP +\fBParameters:\fP +.RS 4 +\fIevent\fP Wheel event +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtCPointerData.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtCPointerData.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtCPointerData.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtCPointerData.3 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,117 @@ +.TH "QwtCPointerData" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtCPointerData \- +.PP +Data class containing two pointers to memory blocks of doubles. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtSeriesData< QPointF >\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtCPointerData\fP (const double *x, const double *y, size_t size)" +.br +.ti -1c +.RI "virtual QRectF \fBboundingRect\fP () const " +.br +.ti -1c +.RI "virtual size_t \fBsize\fP () const " +.br +.ti -1c +.RI "virtual QPointF \fBsample\fP (size_t i) const " +.br +.ti -1c +.RI "const double * \fBxData\fP () const " +.br +.ti -1c +.RI "const double * \fByData\fP () const " +.br +.in -1c +.SH "Detailed Description" +.PP +Data class containing two pointers to memory blocks of doubles. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtCPointerData::QwtCPointerData (const double *x, const double *y, size_tsize)"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fIx\fP Array of x values +.br +\fIy\fP Array of y values +.br +\fIsize\fP Size of the x and y arrays +.RE +.PP +\fBWarning:\fP +.RS 4 +The programmer must assure that the memory blocks referenced by the pointers remain valid during the lifetime of the QwtPlotCPointer object. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtPlotCurve::setData()\fP, \fBQwtPlotCurve::setRawSamples()\fP +.RE +.PP + +.SH "Member Function Documentation" +.PP +.SS "QRectF QwtCPointerData::boundingRect () const\fC [virtual]\fP" +.PP +Calculate the bounding rect. The bounding rectangle is calculated once by iterating over all points and is stored for all following requests. +.PP +\fBReturns:\fP +.RS 4 +Bounding rectangle +.RE +.PP + +.PP +Implements \fBQwtSeriesData< QPointF >\fP. +.SS "QPointF QwtCPointerData::sample (size_ti) const\fC [virtual]\fP"Return the sample at position i +.PP +\fBParameters:\fP +.RS 4 +\fIi\fP Index +.RE +.PP +\fBReturns:\fP +.RS 4 +Sample at position i +.RE +.PP + +.PP +Implements \fBQwtSeriesData< QPointF >\fP. +.SS "size_t QwtCPointerData::size () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +Size of the data set +.RE +.PP + +.PP +Implements \fBQwtSeriesData< QPointF >\fP. +.SS "const double * QwtCPointerData::xData () const"\fBReturns:\fP +.RS 4 +Array of the x-values +.RE +.PP + +.SS "const double * QwtCPointerData::yData () const"\fBReturns:\fP +.RS 4 +Array of the y-values +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtCurveFitter.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtCurveFitter.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtCurveFitter.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtCurveFitter.3 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,64 @@ +.TH "QwtCurveFitter" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtCurveFitter \- +.PP +Abstract base class for a curve fitter. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherited by \fBQwtSplineCurveFitter\fP, and \fBQwtWeedingCurveFitter\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "virtual \fB~QwtCurveFitter\fP ()" +.br +.ti -1c +.RI "virtual QPolygonF \fBfitCurve\fP (const QPolygonF &polygon) const =0" +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtCurveFitter\fP ()" +.br +.in -1c +.SH "Detailed Description" +.PP +Abstract base class for a curve fitter. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtCurveFitter::~QwtCurveFitter ()\fC [virtual]\fP" +.PP +Destructor. +.SS "QwtCurveFitter::QwtCurveFitter ()\fC [protected]\fP" +.PP +Constructor. +.SH "Member Function Documentation" +.PP +.SS "virtual QPolygonF QwtCurveFitter::fitCurve (const QPolygonF &polygon) const\fC [pure virtual]\fP"Find a curve which has the best fit to a series of data points +.PP +\fBParameters:\fP +.RS 4 +\fIpolygon\fP Series of data points +.RE +.PP +\fBReturns:\fP +.RS 4 +Curve points +.RE +.PP + +.PP +Implemented in \fBQwtSplineCurveFitter\fP, and \fBQwtWeedingCurveFitter\fP. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtDial.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtDial.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtDial.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtDial.3 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,812 @@ +.TH "QwtDial" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtDial \- +.PP +\fBQwtDial\fP class provides a rounded range control. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtAbstractSlider\fP. +.PP +Inherited by \fBQwtAnalogClock\fP, and \fBQwtCompass\fP. +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBShadow\fP { \fBPlain\fP = QFrame::Plain, \fBRaised\fP = QFrame::Raised, \fBSunken\fP = QFrame::Sunken }" +.br +.ti -1c +.RI "enum \fBMode\fP { \fBRotateNeedle\fP, \fBRotateScale\fP }" +.br +.ti -1c +.RI "enum \fBDirection\fP { \fBClockwise\fP, \fBCounterClockwise\fP }" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtDial\fP (QWidget *parent=NULL)" +.br +.ti -1c +.RI "virtual \fB~QwtDial\fP ()" +.br +.ti -1c +.RI "void \fBsetFrameShadow\fP (\fBShadow\fP)" +.br +.ti -1c +.RI "\fBShadow\fP \fBframeShadow\fP () const " +.br +.ti -1c +.RI "void \fBsetLineWidth\fP (int)" +.br +.ti -1c +.RI "int \fBlineWidth\fP () const " +.br +.ti -1c +.RI "void \fBsetMode\fP (\fBMode\fP)" +.br +.ti -1c +.RI "\fBMode\fP \fBmode\fP () const " +.br +.ti -1c +.RI "virtual void \fBsetWrapping\fP (bool)" +.br +.ti -1c +.RI "bool \fBwrapping\fP () const " +.br +.ti -1c +.RI "virtual void \fBsetScale\fP (int maxMajIntv, int maxMinIntv, double step=0.0)" +.br +.ti -1c +.RI "void \fBsetScaleArc\fP (double min, double max)" +.br +.ti -1c +.RI "void \fBsetScaleComponents\fP (\fBQwtAbstractScaleDraw::ScaleComponents\fP)" +.br +.ti -1c +.RI "void \fBsetScaleTicks\fP (int minLen, int medLen, int majLen, int penWidth=1)" +.br +.ti -1c +.RI "double \fBminScaleArc\fP () const " +.br +.ti -1c +.RI "double \fBmaxScaleArc\fP () const " +.br +.ti -1c +.RI "virtual void \fBsetOrigin\fP (double)" +.br +.ti -1c +.RI "double \fBorigin\fP () const " +.br +.ti -1c +.RI "void \fBsetDirection\fP (\fBDirection\fP)" +.br +.ti -1c +.RI "\fBDirection\fP \fBdirection\fP () const " +.br +.ti -1c +.RI "virtual void \fBsetNeedle\fP (\fBQwtDialNeedle\fP *)" +.br +.ti -1c +.RI "const \fBQwtDialNeedle\fP * \fBneedle\fP () const " +.br +.ti -1c +.RI "\fBQwtDialNeedle\fP * \fBneedle\fP ()" +.br +.ti -1c +.RI "QRectF \fBboundingRect\fP () const " +.br +.ti -1c +.RI "QRectF \fBinnerRect\fP () const " +.br +.ti -1c +.RI "virtual QRectF \fBscaleInnerRect\fP () const " +.br +.ti -1c +.RI "virtual QSize \fBsizeHint\fP () const " +.br +.ti -1c +.RI "virtual QSize \fBminimumSizeHint\fP () const " +.br +.ti -1c +.RI "virtual void \fBsetScaleDraw\fP (\fBQwtDialScaleDraw\fP *)" +.br +.ti -1c +.RI "\fBQwtDialScaleDraw\fP * \fBscaleDraw\fP ()" +.br +.ti -1c +.RI "const \fBQwtDialScaleDraw\fP * \fBscaleDraw\fP () const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual void \fBpaintEvent\fP (QPaintEvent *)" +.br +.ti -1c +.RI "virtual void \fBkeyPressEvent\fP (QKeyEvent *)" +.br +.ti -1c +.RI "virtual void \fBdrawFrame\fP (QPainter *p)" +.br +.ti -1c +.RI "virtual void \fBdrawContents\fP (QPainter *) const " +.br +.ti -1c +.RI "virtual void \fBdrawFocusIndicator\fP (QPainter *) const " +.br +.ti -1c +.RI "virtual void \fBdrawScale\fP (QPainter *, const QPointF ¢er, double radius, double origin, double arcMin, double arcMax) const " +.br +.ti -1c +.RI "virtual void \fBdrawScaleContents\fP (QPainter *painter, const QPointF ¢er, double radius) const " +.br +.ti -1c +.RI "virtual void \fBdrawNeedle\fP (QPainter *, const QPointF &, double radius, double direction, QPalette::ColorGroup) const " +.br +.ti -1c +.RI "virtual \fBQwtText\fP \fBscaleLabel\fP (double) const " +.br +.ti -1c +.RI "void \fBupdateScale\fP ()" +.br +.ti -1c +.RI "virtual void \fBrangeChange\fP ()" +.br +.ti -1c +.RI "virtual void \fBvalueChange\fP ()" +.br +.ti -1c +.RI "virtual double \fBgetValue\fP (const QPoint &)" +.br +.ti -1c +.RI "virtual void \fBgetScrollMode\fP (const QPoint &, \fBQwtAbstractSlider::ScrollMode\fP &, int &direction) const " +.br +.in -1c +.SS "Friends" + +.in +1c +.ti -1c +.RI "class \fBQwtDialScaleDraw\fP" +.br +.in -1c +.SH "Detailed Description" +.PP +\fBQwtDial\fP class provides a rounded range control. + +\fBQwtDial\fP is intended as base class for dial widgets like speedometers, compass widgets, clocks ... +.PP +.PP +A dial contains a scale and a needle indicating the current value of the dial. Depending on Mode one of them is fixed and the other is rotating. If not \fBisReadOnly()\fP the dial can be rotated by dragging the mouse or using keyboard inputs (see \fBkeyPressEvent()\fP). A dial might be wrapping, what means a rotation below/above one limit continues on the other limit (f.e compass). The scale might cover any arc of the dial, its values are related to the \fBorigin()\fP of the dial. +.PP +Qwt is missing a set of good looking needles (\fBQwtDialNeedle\fP). Contributions are very welcome. +.PP +\fBSee also:\fP +.RS 4 +\fBQwtCompass\fP, \fBQwtAnalogClock\fP, \fBQwtDialNeedle\fP +.RE +.PP +\fBNote:\fP +.RS 4 +The examples/dials example shows different types of dials. +.RE +.PP + +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtDial::Direction\fP" +.PP +Direction of the dial. +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIClockwise \fP\fP +Clockwise. +.TP +\fB\fICounterClockwise \fP\fP +Counter clockwise. +.SS "enum \fBQwtDial::Mode\fP" +.PP +Mode controlling wether the needle or the scale is rotating. +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIRotateNeedle \fP\fP +The needle is rotating. +.TP +\fB\fIRotateScale \fP\fP +The needle is fixed, the scales are rotating. +.SS "enum \fBQwtDial::Shadow\fP" +.PP +Frame shadow. Unfortunately it is not possible to use QFrame::Shadow as a property of a widget that is not derived from QFrame. The following enum is made for the designer only. It is safe to use QFrame::Shadow instead. +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIPlain \fP\fP +QFrame::Plain. +.TP +\fB\fIRaised \fP\fP +QFrame::Raised. +.TP +\fB\fISunken \fP\fP +QFrame::Sunken. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtDial::QwtDial (QWidget *parent = \fCNULL\fP)\fC [explicit]\fP" +.PP +Constructor. \fBParameters:\fP +.RS 4 +\fIparent\fP Parent widget +.RE +.PP +Create a dial widget with no scale and no needle. The default origin is 90.0 with no valid value. It accepts mouse and keyboard inputs and has no step size. The default mode is \fBQwtDial::RotateNeedle\fP. +.SS "QwtDial::~QwtDial ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "QRectF QwtDial::boundingRect () const"\fBReturns:\fP +.RS 4 +bounding rect of the dial including the frame +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetLineWidth()\fP, \fBscaleInnerRect()\fP, \fBinnerRect()\fP +.RE +.PP + +.SS "\fBQwtDial::Direction\fP QwtDial::direction () const"\fBReturns:\fP +.RS 4 +Direction of the dial +.RE +.PP +The default direction of a dial is \fBQwtDial::Clockwise\fP +.PP +\fBSee also:\fP +.RS 4 +\fBsetDirection()\fP +.RE +.PP + +.SS "void QwtDial::drawContents (QPainter *painter) const\fC [protected, virtual]\fP" +.PP +Draw the contents inside the frame. QPalette::Window is the background color outside of the frame. QPalette::Base is the background color inside the frame. QPalette::WindowText is the background color inside the scale. +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBboundingRect()\fP, \fBinnerRect()\fP, \fBscaleInnerRect()\fP, QWidget::setPalette() +.RE +.PP + +.SS "void QwtDial::drawFocusIndicator (QPainter *painter) const\fC [protected, virtual]\fP"Draw a dotted round circle, if !isReadOnly() +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.RE +.PP + +.SS "void QwtDial::drawFrame (QPainter *painter)\fC [protected, virtual]\fP"Draw the frame around the dial +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBlineWidth()\fP, \fBframeShadow()\fP +.RE +.PP + +.SS "void QwtDial::drawNeedle (QPainter *painter, const QPointF ¢er, doubleradius, doubledirection, QPalette::ColorGroupcg) const\fC [protected, virtual]\fP"Draw the needle +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIcenter\fP Center of the dial +.br +\fIradius\fP Length for the needle +.br +\fIdirection\fP Direction of the needle in degrees, counter clockwise +.br +\fIcg\fP ColorGroup +.RE +.PP + +.PP +Reimplemented in \fBQwtAnalogClock\fP. +.SS "void QwtDial::drawScale (QPainter *painter, const QPointF ¢er, doubleradius, doubleorigin, doubleminArc, doublemaxArc) const\fC [protected, virtual]\fP"Draw the scale +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIcenter\fP Center of the dial +.br +\fIradius\fP Radius of the scale +.br +\fIorigin\fP Origin of the scale +.br +\fIminArc\fP Minimum of the arc +.br +\fImaxArc\fP Minimum of the arc +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtRoundScaleDraw::setAngleRange()\fP +.RE +.PP + +.SS "void QwtDial::drawScaleContents (QPainter *painter, const QPointF ¢er, doubleradius) const\fC [protected, virtual]\fP"Draw the contents inside the scale +.PP +Paints nothing. +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIcenter\fP Center of the contents circle +.br +\fIradius\fP Radius of the contents circle +.RE +.PP + +.PP +Reimplemented in \fBQwtCompass\fP. +.SS "\fBQwtDial::Shadow\fP QwtDial::frameShadow () const"\fBReturns:\fP +.RS 4 +Frame shadow /sa \fBsetFrameShadow()\fP, \fBlineWidth()\fP, QFrame::frameShadow +.RE +.PP + +.SS "void QwtDial::getScrollMode (const QPoint &pos, \fBQwtAbstractSlider::ScrollMode\fP &scrollMode, int &direction) const\fC [protected, virtual]\fP"See \fBQwtAbstractSlider::getScrollMode()\fP +.PP +\fBParameters:\fP +.RS 4 +\fIpos\fP point where the mouse was pressed +.RE +.PP +\fBReturn values:\fP +.RS 4 +\fIscrollMode\fP The scrolling mode +.br +\fIdirection\fP direction: 1, 0, or -1. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtAbstractSlider::getScrollMode()\fP +.RE +.PP + +.PP +Implements \fBQwtAbstractSlider\fP. +.SS "double QwtDial::getValue (const QPoint &pos)\fC [protected, virtual]\fP"Find the value for a given position +.PP +\fBParameters:\fP +.RS 4 +\fIpos\fP Position +.RE +.PP +\fBReturns:\fP +.RS 4 +Value +.RE +.PP + +.PP +Implements \fBQwtAbstractSlider\fP. +.SS "QRectF QwtDial::innerRect () const"\fBReturns:\fP +.RS 4 +bounding rect of the circle inside the frame +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetLineWidth()\fP, \fBscaleInnerRect()\fP, \fBboundingRect()\fP +.RE +.PP + +.SS "void QwtDial::keyPressEvent (QKeyEvent *event)\fC [protected, virtual]\fP"Handles key events +.PP +.IP "\(bu" 2 +Key_Down, KeyLeft +.br + Decrement by 1 +.IP "\(bu" 2 +Key_Prior +.br + Decrement by \fBpageSize()\fP +.IP "\(bu" 2 +Key_Home +.br + Set the value to \fBminValue()\fP +.PP +.PP +.IP "\(bu" 2 +Key_Up, KeyRight +.br + Increment by 1 +.IP "\(bu" 2 +Key_Next +.br + Increment by \fBpageSize()\fP +.IP "\(bu" 2 +Key_End +.br + Set the value to \fBmaxValue()\fP +.PP +.PP +\fBParameters:\fP +.RS 4 +\fIevent\fP Key event +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBisReadOnly()\fP +.RE +.PP + +.PP +Reimplemented from \fBQwtAbstractSlider\fP. +.PP +Reimplemented in \fBQwtCompass\fP. +.SS "int QwtDial::lineWidth () const"\fBReturns:\fP +.RS 4 +Line width of the frame +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetLineWidth()\fP, \fBframeShadow()\fP, \fBlineWidth()\fP +.RE +.PP + +.SS "double QwtDial::maxScaleArc () const"\fBReturns:\fP +.RS 4 +Upper limit of the scale arc +.RE +.PP + +.SS "QSize QwtDial::minimumSizeHint () const\fC [virtual]\fP" +.PP +Return a minimum size hint. \fBWarning:\fP +.RS 4 +The return value of \fBQwtDial::minimumSizeHint()\fP depends on the font and the scale. +.RE +.PP + +.SS "double QwtDial::minScaleArc () const"\fBReturns:\fP +.RS 4 +Lower limit of the scale arc +.RE +.PP + +.SS "\fBQwtDial::Mode\fP QwtDial::mode () const"\fBReturns:\fP +.RS 4 +mode of the dial. +.RE +.PP +The value of the dial is indicated by the difference between the origin and the direction of the needle. In case of \fBQwtDial::RotateNeedle\fP the scale arc is fixed to the \fBorigin()\fP and the needle is rotating, in case of \fBQwtDial::RotateScale\fP, the needle points to \fBorigin()\fP and the scale is rotating. +.PP +The default mode is \fBQwtDial::RotateNeedle\fP. +.PP +\fBSee also:\fP +.RS 4 +\fBsetMode()\fP, \fBorigin()\fP, \fBsetScaleArc()\fP, \fBvalue()\fP +.RE +.PP + +.SS "\fBQwtDialNeedle\fP * QwtDial::needle ()"\fBReturns:\fP +.RS 4 +needle +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetNeedle()\fP +.RE +.PP + +.SS "const \fBQwtDialNeedle\fP * QwtDial::needle () const"\fBReturns:\fP +.RS 4 +needle +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetNeedle()\fP +.RE +.PP + +.SS "double QwtDial::origin () const"The origin is the angle where scale and needle is relative to. +.PP +\fBReturns:\fP +.RS 4 +Origin of the dial +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetOrigin()\fP +.RE +.PP + +.SS "void QwtDial::paintEvent (QPaintEvent *event)\fC [protected, virtual]\fP"Paint the dial +.PP +\fBParameters:\fP +.RS 4 +\fIevent\fP Paint event +.RE +.PP + +.SS "void QwtDial::rangeChange ()\fC [protected, virtual]\fP" +.PP +\fBQwtDoubleRange\fP update hook. +.PP +Reimplemented from \fBQwtDoubleRange\fP. +.SS "\fBQwtDialScaleDraw\fP * QwtDial::scaleDraw ()" +.PP +Return the scale draw. +.SS "const \fBQwtDialScaleDraw\fP * QwtDial::scaleDraw () const" +.PP +Return the scale draw. +.SS "QRectF QwtDial::scaleInnerRect () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +rect inside the scale +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetLineWidth()\fP, \fBboundingRect()\fP, \fBinnerRect()\fP +.RE +.PP + +.SS "\fBQwtText\fP QwtDial::scaleLabel (doublevalue) const\fC [protected, virtual]\fP"Find the label for a value +.PP +\fBParameters:\fP +.RS 4 +\fIvalue\fP Value +.RE +.PP +\fBReturns:\fP +.RS 4 +label +.RE +.PP + +.PP +Reimplemented in \fBQwtAnalogClock\fP, and \fBQwtCompass\fP. +.SS "void QwtDial::setDirection (\fBDirection\fPdirection)"Set the direction of the dial (clockwise/counterclockwise) +.PP +\fBParameters:\fP +.RS 4 +\fIdirection\fP Direction +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBdirection()\fP +.RE +.PP + +.SS "void QwtDial::setFrameShadow (\fBShadow\fPshadow)"Sets the frame shadow value from the frame style. +.PP +\fBParameters:\fP +.RS 4 +\fIshadow\fP Frame shadow +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetLineWidth()\fP, QFrame::setFrameShadow() +.RE +.PP + +.SS "void QwtDial::setLineWidth (intlineWidth)"Sets the line width +.PP +\fBParameters:\fP +.RS 4 +\fIlineWidth\fP Line width +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetFrameShadow()\fP +.RE +.PP + +.SS "void QwtDial::setMode (\fBMode\fPmode)" +.PP +Change the mode of the meter. \fBParameters:\fP +.RS 4 +\fImode\fP New mode +.RE +.PP +The value of the meter is indicated by the difference between north of the scale and the direction of the needle. In case of \fBQwtDial::RotateNeedle\fP north is pointing to the \fBorigin()\fP and the needle is rotating, in case of \fBQwtDial::RotateScale\fP, the needle points to \fBorigin()\fP and the scale is rotating. +.PP +The default mode is \fBQwtDial::RotateNeedle\fP. +.PP +\fBSee also:\fP +.RS 4 +\fBmode()\fP, \fBsetValue()\fP, \fBsetOrigin()\fP +.RE +.PP + +.SS "void QwtDial::setNeedle (\fBQwtDialNeedle\fP *needle)\fC [virtual]\fP"Set a needle for the dial +.PP +Qwt is missing a set of good looking needles. Contributions are very welcome. +.PP +\fBParameters:\fP +.RS 4 +\fIneedle\fP Needle +.RE +.PP +\fBWarning:\fP +.RS 4 +The needle will be deleted, when a different needle is set or in \fB~QwtDial()\fP +.RE +.PP + +.SS "void QwtDial::setOrigin (doubleorigin)\fC [virtual]\fP" +.PP +Change the origin. The origin is the angle where scale and needle is relative to. +.PP +\fBParameters:\fP +.RS 4 +\fIorigin\fP New origin +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBorigin()\fP +.RE +.PP + +.SS "void QwtDial::setScale (intmaxMajIntv, intmaxMinIntv, doublestep = \fC0.0\fP)\fC [virtual]\fP"Change the intervals of the scale +.PP +\fBParameters:\fP +.RS 4 +\fImaxMajIntv\fP Maximum for the number of major steps +.br +\fImaxMinIntv\fP Maximum number of minor steps +.br +\fIstep\fP Step size +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtScaleEngine::divideScale()\fP +.RE +.PP + +.SS "void QwtDial::setScaleArc (doubleminArc, doublemaxArc)"Change the arc of the scale +.PP +\fBParameters:\fP +.RS 4 +\fIminArc\fP Lower limit +.br +\fImaxArc\fP Upper limit +.RE +.PP + +.SS "void QwtDial::setScaleComponents (\fBQwtAbstractScaleDraw::ScaleComponents\fPcomponents)"A wrapper method for accessing the scale draw. +.PP +\fBParameters:\fP +.RS 4 +\fIcomponents\fP Scale components +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtAbstractScaleDraw::enableComponent()\fP +.RE +.PP + +.SS "void QwtDial::setScaleDraw (\fBQwtDialScaleDraw\fP *scaleDraw)\fC [virtual]\fP"Set an individual scale draw +.PP +\fBParameters:\fP +.RS 4 +\fIscaleDraw\fP Scale draw +.RE +.PP +\fBWarning:\fP +.RS 4 +The previous scale draw is deleted +.RE +.PP + +.SS "void QwtDial::setScaleTicks (intminLen, intmedLen, intmajLen, intpenWidth = \fC1\fP)"Assign length and width of the ticks +.PP +\fBParameters:\fP +.RS 4 +\fIminLen\fP Length of the minor ticks +.br +\fImedLen\fP Length of the medium ticks +.br +\fImajLen\fP Length of the major ticks +.br +\fIpenWidth\fP Width of the pen for all ticks +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtAbstractScaleDraw::setTickLength()\fP, \fBQwtDialScaleDraw::setPenWidth()\fP +.RE +.PP + +.SS "void QwtDial::setWrapping (boolwrapping)\fC [virtual]\fP"Sets whether it is possible to step the value from the highest value to the lowest value and vice versa to on. +.PP +\fBParameters:\fP +.RS 4 +\fIwrapping\fP en/disables wrapping +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBwrapping()\fP, \fBQwtDoubleRange::periodic()\fP +.RE +.PP +\fBNote:\fP +.RS 4 +The meaning of wrapping is like the wrapping property of QSpinBox, but not like it is used in QDial. +.RE +.PP + +.SS "QSize QwtDial::sizeHint () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +Size hint +.RE +.PP + +.SS "void QwtDial::updateScale ()\fC [protected]\fP"Update the scale with the current attributes +.PP +\fBSee also:\fP +.RS 4 +\fBsetScale()\fP +.RE +.PP + +.SS "void QwtDial::valueChange ()\fC [protected, virtual]\fP" +.PP +\fBQwtDoubleRange\fP update hook. +.PP +Reimplemented from \fBQwtAbstractSlider\fP. +.SS "bool QwtDial::wrapping () const"\fBwrapping()\fP holds whether it is possible to step the value from the highest value to the lowest value and vice versa. +.PP +\fBSee also:\fP +.RS 4 +\fBsetWrapping()\fP, \fBQwtDoubleRange::setPeriodic()\fP +.RE +.PP +\fBNote:\fP +.RS 4 +The meaning of wrapping is like the wrapping property of QSpinBox, but not like it is used in QDial. +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtDialNeedle.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtDialNeedle.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtDialNeedle.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtDialNeedle.3 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,128 @@ +.TH "QwtDialNeedle" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtDialNeedle \- +.PP +Base class for needles that can be used in a \fBQwtDial\fP. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherited by \fBQwtCompassMagnetNeedle\fP, \fBQwtCompassWindArrow\fP, and \fBQwtDialSimpleNeedle\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtDialNeedle\fP ()" +.br +.ti -1c +.RI "virtual \fB~QwtDialNeedle\fP ()" +.br +.ti -1c +.RI "virtual void \fBsetPalette\fP (const QPalette &)" +.br +.ti -1c +.RI "const QPalette & \fBpalette\fP () const " +.br +.ti -1c +.RI "virtual void \fBdraw\fP (QPainter *painter, const QPointF ¢er, double length, double direction, QPalette::ColorGroup=QPalette::Active) const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual void \fBdrawNeedle\fP (QPainter *painter, double length, QPalette::ColorGroup colorGroup) const =0" +.br +.ti -1c +.RI "virtual void \fBdrawKnob\fP (QPainter *, double width, const QBrush &, bool sunken) const " +.br +.in -1c +.SH "Detailed Description" +.PP +Base class for needles that can be used in a \fBQwtDial\fP. + +\fBQwtDialNeedle\fP is a pointer that indicates a value by pointing to a specific direction. +.PP +Qwt is missing a set of good looking needles. Contributions are very welcome. +.PP +\fBSee also:\fP +.RS 4 +\fBQwtDial\fP, \fBQwtCompass\fP +.RE +.PP + +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtDialNeedle::QwtDialNeedle ()" +.PP +Constructor. +.SS "QwtDialNeedle::~QwtDialNeedle ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "void QwtDialNeedle::draw (QPainter *painter, const QPointF ¢er, doublelength, doubledirection, QPalette::ColorGroupcolorGroup = \fCQPalette::Active\fP) const\fC [virtual]\fP"Draw the needle +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIcenter\fP Center of the dial, start position for the needle +.br +\fIlength\fP Length of the needle +.br +\fIdirection\fP Direction of the needle, in degrees counter clockwise +.br +\fIcolorGroup\fP Color group, used for painting +.RE +.PP + +.SS "void QwtDialNeedle::drawKnob (QPainter *painter, doublewidth, const QBrush &brush, boolsunken) const\fC [protected, virtual]\fP" +.PP +Draw the knob. +.SS "virtual void QwtDialNeedle::drawNeedle (QPainter *painter, doublelength, QPalette::ColorGroupcolorGroup) const\fC [protected, pure virtual]\fP" +.PP +Draw the needle. The origin of the needle is at position (0.0, 0.0 ) pointing in direction 0.0 ( = east ). +.PP +The painter is already initilaized with translation and rotation. +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIlength\fP Length of the needle +.br +\fIcolorGroup\fP Color group, used for painting +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetPalette()\fP, \fBpalette()\fP +.RE +.PP + +.PP +Implemented in \fBQwtDialSimpleNeedle\fP, \fBQwtCompassMagnetNeedle\fP, and \fBQwtCompassWindArrow\fP. +.SS "const QPalette & QwtDialNeedle::palette () const"\fBReturns:\fP +.RS 4 +the palette of the needle. +.RE +.PP + +.SS "void QwtDialNeedle::setPalette (const QPalette &palette)\fC [virtual]\fP"Sets the palette for the needle. +.PP +\fBParameters:\fP +.RS 4 +\fIpalette\fP New Palette +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtDialScaleDraw.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtDialScaleDraw.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtDialScaleDraw.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtDialScaleDraw.3 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,98 @@ +.TH "QwtDialScaleDraw" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtDialScaleDraw \- +.PP +A special scale draw made for \fBQwtDial\fP. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtRoundScaleDraw\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtDialScaleDraw\fP (\fBQwtDial\fP *)" +.br +.ti -1c +.RI "virtual \fBQwtText\fP \fBlabel\fP (double value) const " +.br +.ti -1c +.RI "void \fBsetPenWidth\fP (double)" +.br +.ti -1c +.RI "double \fBpenWidth\fP () const " +.br +.in -1c +.SH "Detailed Description" +.PP +A special scale draw made for \fBQwtDial\fP. + +\fBSee also:\fP +.RS 4 +\fBQwtDial\fP, \fBQwtCompass\fP +.RE +.PP + +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtDialScaleDraw::QwtDialScaleDraw (\fBQwtDial\fP *parent)\fC [explicit]\fP"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fIparent\fP Parent dial widget +.RE +.PP + +.SH "Member Function Documentation" +.PP +.SS "\fBQwtText\fP QwtDialScaleDraw::label (doublevalue) const\fC [virtual]\fP"Call \fBQwtDial::scaleLabel\fP of the parent dial widget. +.PP +\fBParameters:\fP +.RS 4 +\fIvalue\fP Value to display +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtDial::scaleLabel()\fP +.RE +.PP + +.PP +Reimplemented from \fBQwtAbstractScaleDraw\fP. +.SS "double QwtDialScaleDraw::penWidth () const"\fBReturns:\fP +.RS 4 +Pen width used for painting the scale +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetPenWidth\fP, \fBQwtDial::drawScale()\fP +.RE +.PP + +.PP +Reimplemented from \fBQwtAbstractScaleDraw\fP. +.SS "void QwtDialScaleDraw::setPenWidth (doublepenWidth)"Set the pen width used for painting the scale +.PP +\fBParameters:\fP +.RS 4 +\fIpenWidth\fP Pen width +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBpenWidth()\fP, \fBQwtDial::drawScale()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtDialSimpleNeedle.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtDialSimpleNeedle.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtDialSimpleNeedle.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtDialSimpleNeedle.3 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,138 @@ +.TH "QwtDialSimpleNeedle" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtDialSimpleNeedle \- +.PP +A needle for dial widgets. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtDialNeedle\fP. +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBStyle\fP { \fBArrow\fP, \fBRay\fP }" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtDialSimpleNeedle\fP (\fBStyle\fP, bool hasKnob=true, const QColor &mid=Qt::gray, const QColor &base=Qt::darkGray)" +.br +.ti -1c +.RI "void \fBsetWidth\fP (double width)" +.br +.ti -1c +.RI "double \fBwidth\fP () const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual void \fBdrawNeedle\fP (QPainter *, double length, QPalette::ColorGroup) const " +.br +.in -1c +.SH "Detailed Description" +.PP +A needle for dial widgets. + +The following colors are used: +.PP +.IP "\(bu" 2 +QPalette::Mid +.br + Pointer +.IP "\(bu" 2 +QPalette::Base +.br + Knob +.PP +.PP +\fBSee also:\fP +.RS 4 +\fBQwtDial\fP, \fBQwtCompass\fP +.RE +.PP + +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtDialSimpleNeedle::Style\fP" +.PP +Style of the needle. +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIArrow \fP\fP +Arrow. +.TP +\fB\fIRay \fP\fP +A straight line from the center. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtDialSimpleNeedle::QwtDialSimpleNeedle (\fBStyle\fPstyle, boolhasKnob = \fCtrue\fP, const QColor &mid = \fCQt::gray\fP, const QColor &base = \fCQt::darkGray\fP)"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fIstyle\fP Style +.br +\fIhasKnob\fP With/Without knob +.br +\fImid\fP Middle color +.br +\fIbase\fP Base color +.RE +.PP + +.SH "Member Function Documentation" +.PP +.SS "void QwtDialSimpleNeedle::drawNeedle (QPainter *painter, doublelength, QPalette::ColorGroupcolorGroup) const\fC [protected, virtual]\fP"Draw the needle +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIlength\fP Length of the needle +.br +\fIcolorGroup\fP Color group, used for painting +.RE +.PP + +.PP +Implements \fBQwtDialNeedle\fP. +.SS "void QwtDialSimpleNeedle::setWidth (doublewidth)"Set the width of the needle +.PP +\fBParameters:\fP +.RS 4 +\fIwidth\fP Width +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBwidth()\fP +.RE +.PP + +.SS "double QwtDialSimpleNeedle::width () const"\fBReturns:\fP +.RS 4 +the width of the needle +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetWidth()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtDoubleRange.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtDoubleRange.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtDoubleRange.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtDoubleRange.3 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,326 @@ +.TH "QwtDoubleRange" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtDoubleRange \- +.PP +A class which controls a value within an interval. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherited by \fBQwtAbstractSlider\fP, and \fBQwtCounter\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtDoubleRange\fP ()" +.br +.ti -1c +.RI "virtual \fB~QwtDoubleRange\fP ()" +.br +.ti -1c +.RI "void \fBsetRange\fP (double vmin, double vmax, double vstep=0.0, int pagesize=1)" +.br +.ti -1c +.RI "void \fBsetValid\fP (bool)" +.br +.ti -1c +.RI "bool \fBisValid\fP () const " +.br +.ti -1c +.RI "virtual void \fBsetValue\fP (double)" +.br +.ti -1c +.RI "double \fBvalue\fP () const " +.br +.ti -1c +.RI "void \fBsetPeriodic\fP (bool tf)" +.br +.ti -1c +.RI "bool \fBperiodic\fP () const " +.br +.ti -1c +.RI "void \fBsetStep\fP (double)" +.br +.ti -1c +.RI "double \fBstep\fP () const " +.br +.ti -1c +.RI "double \fBmaxValue\fP () const " +.br +.ti -1c +.RI "double \fBminValue\fP () const " +.br +.ti -1c +.RI "int \fBpageSize\fP () const " +.br +.ti -1c +.RI "virtual void \fBincValue\fP (int)" +.br +.ti -1c +.RI "virtual void \fBincPages\fP (int)" +.br +.ti -1c +.RI "virtual void \fBfitValue\fP (double)" +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "double \fBexactValue\fP () const " +.br +.ti -1c +.RI "double \fBexactPrevValue\fP () const " +.br +.ti -1c +.RI "double \fBprevValue\fP () const " +.br +.ti -1c +.RI "virtual void \fBvalueChange\fP ()" +.br +.ti -1c +.RI "virtual void \fBstepChange\fP ()" +.br +.ti -1c +.RI "virtual void \fBrangeChange\fP ()" +.br +.in -1c +.SH "Detailed Description" +.PP +A class which controls a value within an interval. + +This class is useful as a base class or a member for sliders. It represents an interval of type double within which a value can be moved. The value can be either an arbitrary point inside the interval (see \fBQwtDoubleRange::setValue\fP), or it can be fitted into a step raster (see \fBQwtDoubleRange::fitValue\fP and \fBQwtDoubleRange::incValue\fP). +.PP +As a special case, a \fBQwtDoubleRange\fP can be periodic, which means that a value outside the interval will be mapped to a value inside the interval when \fBQwtDoubleRange::setValue()\fP, \fBQwtDoubleRange::fitValue()\fP, \fBQwtDoubleRange::incValue()\fP or \fBQwtDoubleRange::incPages()\fP are called. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtDoubleRange::QwtDoubleRange ()"The range is initialized to [0.0, 100.0], the step size to 1.0, and the value to 0.0. +.SS "QwtDoubleRange::~QwtDoubleRange ()\fC [virtual]\fP" +.PP +Destroys the \fBQwtDoubleRange\fP. +.SH "Member Function Documentation" +.PP +.SS "double QwtDoubleRange::exactPrevValue () const\fC [protected]\fP" +.PP +Returns the exact previous value. +.SS "double QwtDoubleRange::exactValue () const\fC [protected]\fP" +.PP +Returns the exact value. The exact value is the value which \fBQwtDoubleRange::value\fP would return if the value were not adjusted to the step raster. It differs from the current value only if \fBfitValue()\fP or \fBincValue()\fP have been used before. This function is intended for internal use in derived classes. +.SS "void QwtDoubleRange::fitValue (doublex)\fC [virtual]\fP" +.PP +Adjust the value to the closest point in the step raster. \fBParameters:\fP +.RS 4 +\fIx\fP value +.RE +.PP +\fBWarning:\fP +.RS 4 +The value is clipped when it lies outside the range. When the range is \fBQwtDoubleRange::periodic\fP, it will be mapped to a point in the interval such that +.PP +.nf +new value := x + n * (max. value - min. value) +.fi +.PP + with an integer number n. +.RE +.PP + +.PP +Reimplemented in \fBQwtAbstractSlider\fP. +.SS "void QwtDoubleRange::incPages (intnPages)\fC [virtual]\fP" +.PP +Increment the value by a specified number of pages. \fBParameters:\fP +.RS 4 +\fInPages\fP Number of pages to increment. A negative number decrements the value. +.RE +.PP +\fBWarning:\fP +.RS 4 +The Page size is specified in the constructor. +.RE +.PP + +.SS "void QwtDoubleRange::incValue (intnSteps)\fC [virtual]\fP" +.PP +Increment the value by a specified number of steps. \fBParameters:\fP +.RS 4 +\fInSteps\fP Number of steps to increment +.RE +.PP +\fBWarning:\fP +.RS 4 +As a result of this operation, the new value will always be adjusted to the step raster. +.RE +.PP + +.PP +Reimplemented in \fBQwtAbstractSlider\fP. +.SS "bool QwtDoubleRange::isValid () const" +.PP +Indicates if the value is valid. +.PP +Reimplemented in \fBQwtAbstractSlider\fP. +.SS "double QwtDoubleRange::maxValue () const" +.PP +Returns the value of the second border of the range. maxValue returns the value which has been specified as the second parameter in \fBQwtDoubleRange::setRange\fP. +.PP +\fBSee also:\fP +.RS 4 +\fBsetRange()\fP +.RE +.PP + +.PP +Reimplemented in \fBQwtCounter\fP. +.SS "double QwtDoubleRange::minValue () const" +.PP +Returns the value at the first border of the range. minValue returns the value which has been specified as the first parameter in \fBsetRange()\fP. +.PP +\fBSee also:\fP +.RS 4 +\fBsetRange()\fP +.RE +.PP + +.PP +Reimplemented in \fBQwtCounter\fP. +.SS "int QwtDoubleRange::pageSize () const" +.PP +Returns the page size in steps. +.SS "bool QwtDoubleRange::periodic () const" +.PP +Returns true if the range is periodic. \fBSee also:\fP +.RS 4 +\fBsetPeriodic()\fP +.RE +.PP + +.SS "double QwtDoubleRange::prevValue () const\fC [protected]\fP" +.PP +Returns the previous value. +.SS "void QwtDoubleRange::rangeChange ()\fC [protected, virtual]\fP" +.PP +Notify a change of the range. This virtual function is called whenever the range changes. The default implementation does nothing. +.PP +Reimplemented in \fBQwtCounter\fP, \fBQwtDial\fP, and \fBQwtSlider\fP. +.SS "void QwtDoubleRange::setPeriodic (booltf)" +.PP +Make the range periodic. When the range is periodic, the value will be set to a point inside the interval such that +.PP +.PP +.nf +point = value + n * width .fi +.PP +.PP +if the user tries to set a new value which is outside the range. If the range is nonperiodic (the default), values outside the range will be clipped. +.PP +\fBParameters:\fP +.RS 4 +\fItf\fP true for a periodic range +.RE +.PP + +.SS "void QwtDoubleRange::setRange (doublevmin, doublevmax, doublevstep = \fC0.0\fP, intpageSize = \fC1\fP)" +.PP +Specify range and step size. \fBParameters:\fP +.RS 4 +\fIvmin\fP lower boundary of the interval +.br +\fIvmax\fP higher boundary of the interval +.br +\fIvstep\fP step width +.br +\fIpageSize\fP page size in steps +.RE +.PP +\fBWarning:\fP +.RS 4 +.PD 0 +.IP "\(bu" 2 +A change of the range changes the value if it lies outside the new range. The current value will *not* be adjusted to the new step raster. +.IP "\(bu" 2 +vmax < vmin is allowed. +.IP "\(bu" 2 +If the step size is left out or set to zero, it will be set to 1/100 of the interval length. +.IP "\(bu" 2 +If the step size has an absurd value, it will be corrected to a better one. +.PP +.RE +.PP + +.SS "void QwtDoubleRange::setStep (doublevstep)" +.PP +Change the step raster. \fBParameters:\fP +.RS 4 +\fIvstep\fP new step width +.RE +.PP +\fBWarning:\fP +.RS 4 +The value will \fInot\fP be adjusted to the new step raster. +.RE +.PP + +.PP +Reimplemented in \fBQwtCounter\fP. +.SS "void QwtDoubleRange::setValid (boolisValid)" +.PP +Set the value to be valid/invalid. +.PP +Reimplemented in \fBQwtAbstractSlider\fP. +.SS "void QwtDoubleRange::setValue (doublex)\fC [virtual]\fP" +.PP +Set a new value without adjusting to the step raster. \fBParameters:\fP +.RS 4 +\fIx\fP new value +.RE +.PP +\fBWarning:\fP +.RS 4 +The value is clipped when it lies outside the range. When the range is \fBQwtDoubleRange::periodic\fP, it will be mapped to a point in the interval such that +.PP +.nf +new value := x + n * (max. value - min. value) +.fi +.PP + with an integer number n. +.RE +.PP + +.PP +Reimplemented in \fBQwtAbstractSlider\fP, and \fBQwtCounter\fP. +.SS "double QwtDoubleRange::step () const"\fBReturns:\fP +.RS 4 +the step size +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetStep()\fP, \fBsetRange()\fP +.RE +.PP + +.PP +Reimplemented in \fBQwtCounter\fP. +.SS "void QwtDoubleRange::stepChange ()\fC [protected, virtual]\fP" +.PP +Notify a change of the step size. This virtual function is called whenever the step size changes. The default implementation does nothing. +.SS "double QwtDoubleRange::value () const" +.PP +Returns the current value. +.PP +Reimplemented in \fBQwtCounter\fP. +.SS "void QwtDoubleRange::valueChange ()\fC [protected, virtual]\fP" +.PP +Notify a change of value. This virtual function is called whenever the value changes. The default implementation does nothing. +.PP +Reimplemented in \fBQwtAbstractSlider\fP, \fBQwtDial\fP, \fBQwtSlider\fP, and \fBQwtWheel\fP. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtDynGridLayout.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtDynGridLayout.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtDynGridLayout.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtDynGridLayout.3 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,344 @@ +.TH "QwtDynGridLayout" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtDynGridLayout \- +.PP +The \fBQwtDynGridLayout\fP class lays out widgets in a grid, adjusting the number of columns and rows to the current size. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtDynGridLayout\fP (QWidget *, int margin=0, int space=-1)" +.br +.ti -1c +.RI "\fBQwtDynGridLayout\fP (int space=-1)" +.br +.ti -1c +.RI "virtual \fB~QwtDynGridLayout\fP ()" +.br +.ti -1c +.RI "virtual void \fBinvalidate\fP ()" +.br +.ti -1c +.RI "void \fBsetMaxCols\fP (uint maxCols)" +.br +.ti -1c +.RI "uint \fBmaxCols\fP () const " +.br +.ti -1c +.RI "uint \fBnumRows\fP () const " +.br +.ti -1c +.RI "uint \fBnumCols\fP () const " +.br +.ti -1c +.RI "virtual void \fBaddItem\fP (QLayoutItem *)" +.br +.ti -1c +.RI "virtual QLayoutItem * \fBitemAt\fP (int index) const " +.br +.ti -1c +.RI "virtual QLayoutItem * \fBtakeAt\fP (int index)" +.br +.ti -1c +.RI "virtual int \fBcount\fP () const " +.br +.ti -1c +.RI "void \fBsetExpandingDirections\fP (Qt::Orientations)" +.br +.ti -1c +.RI "virtual Qt::Orientations \fBexpandingDirections\fP () const " +.br +.ti -1c +.RI "QList< QRect > \fBlayoutItems\fP (const QRect &, uint numCols) const " +.br +.ti -1c +.RI "virtual int \fBmaxItemWidth\fP () const " +.br +.ti -1c +.RI "virtual void \fBsetGeometry\fP (const QRect &rect)" +.br +.ti -1c +.RI "virtual bool \fBhasHeightForWidth\fP () const " +.br +.ti -1c +.RI "virtual int \fBheightForWidth\fP (int) const " +.br +.ti -1c +.RI "virtual QSize \fBsizeHint\fP () const " +.br +.ti -1c +.RI "virtual bool \fBisEmpty\fP () const " +.br +.ti -1c +.RI "uint \fBitemCount\fP () const " +.br +.ti -1c +.RI "virtual uint \fBcolumnsForWidth\fP (int width) const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "void \fBlayoutGrid\fP (uint numCols, QVector< int > &rowHeight, QVector< int > &colWidth) const " +.br +.ti -1c +.RI "void \fBstretchGrid\fP (const QRect &rect, uint numCols, QVector< int > &rowHeight, QVector< int > &colWidth) const " +.br +.in -1c +.SH "Detailed Description" +.PP +The \fBQwtDynGridLayout\fP class lays out widgets in a grid, adjusting the number of columns and rows to the current size. + +\fBQwtDynGridLayout\fP takes the space it gets, divides it up into rows and columns, and puts each of the widgets it manages into the correct cell(s). It lays out as many number of columns as possible (limited by \fBmaxCols()\fP). +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtDynGridLayout::QwtDynGridLayout (QWidget *parent, intmargin = \fC0\fP, intspacing = \fC-1\fP)\fC [explicit]\fP"\fBParameters:\fP +.RS 4 +\fIparent\fP Parent widget +.br +\fImargin\fP Margin +.br +\fIspacing\fP Spacing +.RE +.PP + +.SS "QwtDynGridLayout::QwtDynGridLayout (intspacing = \fC-1\fP)\fC [explicit]\fP"\fBParameters:\fP +.RS 4 +\fIspacing\fP Spacing +.RE +.PP + +.SS "QwtDynGridLayout::~QwtDynGridLayout ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "void QwtDynGridLayout::addItem (QLayoutItem *item)\fC [virtual]\fP" +.PP +Adds item to the next free position. +.SS "uint QwtDynGridLayout::columnsForWidth (intwidth) const\fC [virtual]\fP"Calculate the number of columns for a given width. It tries to use as many columns as possible (limited by \fBmaxCols()\fP) +.PP +\fBParameters:\fP +.RS 4 +\fIwidth\fP Available width for all columns +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBmaxCols()\fP, \fBsetMaxCols()\fP +.RE +.PP + +.SS "int QwtDynGridLayout::count () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +Number of items in the layout +.RE +.PP + +.SS "Qt::Orientations QwtDynGridLayout::expandingDirections () const\fC [virtual]\fP"Returns whether this layout can make use of more space than \fBsizeHint()\fP. A value of Qt::Vertical or Qt::Horizontal means that it wants to grow in only one dimension, while Qt::Vertical | Qt::Horizontal means that it wants to grow in both dimensions. +.PP +\fBSee also:\fP +.RS 4 +\fBsetExpandingDirections()\fP +.RE +.PP + +.SS "bool QwtDynGridLayout::hasHeightForWidth () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +true: \fBQwtDynGridLayout\fP implements heightForWidth. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBheightForWidth()\fP +.RE +.PP + +.SS "int QwtDynGridLayout::heightForWidth (intwidth) const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +The preferred height for this layout, given the width w. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBhasHeightForWidth()\fP +.RE +.PP + +.SS "void QwtDynGridLayout::invalidate ()\fC [virtual]\fP" +.PP +Invalidate all internal caches. +.SS "bool QwtDynGridLayout::isEmpty () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +true if this layout is empty. +.RE +.PP + +.SS "QLayoutItem * QwtDynGridLayout::itemAt (intindex) const\fC [virtual]\fP"Find the item at a spcific index +.PP +\fBParameters:\fP +.RS 4 +\fIindex\fP Index +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBtakeAt()\fP +.RE +.PP + +.SS "uint QwtDynGridLayout::itemCount () const"\fBReturns:\fP +.RS 4 +number of layout items +.RE +.PP + +.SS "void QwtDynGridLayout::layoutGrid (uintnumCols, QVector< int > &rowHeight, QVector< int > &colWidth) const\fC [protected]\fP"Calculate the dimensions for the columns and rows for a grid of numCols columns. +.PP +\fBParameters:\fP +.RS 4 +\fInumCols\fP Number of columns. +.br +\fIrowHeight\fP Array where to fill in the calculated row heights. +.br +\fIcolWidth\fP Array where to fill in the calculated column widths. +.RE +.PP + +.SS "QList< QRect > QwtDynGridLayout::layoutItems (const QRect &rect, uintnumCols) const"Calculate the geometries of the layout items for a layout with numCols columns and a given rect. +.PP +\fBParameters:\fP +.RS 4 +\fIrect\fP Rect where to place the items +.br +\fInumCols\fP Number of columns +.RE +.PP +\fBReturns:\fP +.RS 4 +item geometries +.RE +.PP + +.SS "uint QwtDynGridLayout::maxCols () const"Return the upper limit for the number of columns. 0 means unlimited, what is the default. +.PP +\fBSee also:\fP +.RS 4 +\fBsetMaxCols()\fP +.RE +.PP + +.SS "int QwtDynGridLayout::maxItemWidth () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +the maximum width of all layout items +.RE +.PP + +.SS "uint QwtDynGridLayout::numCols () const"\fBReturns:\fP +.RS 4 +Number of columns of the current layout. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBnumRows()\fP +.RE +.PP +\fBWarning:\fP +.RS 4 +The number of columns might change whenever the geometry changes +.RE +.PP + +.SS "uint QwtDynGridLayout::numRows () const"\fBReturns:\fP +.RS 4 +Number of rows of the current layout. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBnumCols()\fP +.RE +.PP +\fBWarning:\fP +.RS 4 +The number of rows might change whenever the geometry changes +.RE +.PP + +.SS "void QwtDynGridLayout::setExpandingDirections (Qt::Orientationsexpanding)"Set whether this layout can make use of more space than \fBsizeHint()\fP. A value of Qt::Vertical or Qt::Horizontal means that it wants to grow in only one dimension, while Qt::Vertical | Qt::Horizontal means that it wants to grow in both dimensions. The default value is 0. +.PP +\fBParameters:\fP +.RS 4 +\fIexpanding\fP Or'd orientations +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBexpandingDirections()\fP +.RE +.PP + +.SS "void QwtDynGridLayout::setGeometry (const QRect &rect)\fC [virtual]\fP"Reorganizes columns and rows and resizes managed widgets within the rectangle rect. +.PP +\fBParameters:\fP +.RS 4 +\fIrect\fP Layout geometry +.RE +.PP + +.SS "void QwtDynGridLayout::setMaxCols (uintmaxCols)"Limit the number of columns. +.PP +\fBParameters:\fP +.RS 4 +\fImaxCols\fP upper limit, 0 means unlimited +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBmaxCols()\fP +.RE +.PP + +.SS "QSize QwtDynGridLayout::sizeHint () const\fC [virtual]\fP"Return the size hint. If \fBmaxCols()\fP > 0 it is the size for a grid with \fBmaxCols()\fP columns, otherwise it is the size for a grid with only one row. +.PP +\fBSee also:\fP +.RS 4 +\fBmaxCols()\fP, \fBsetMaxCols()\fP +.RE +.PP + +.SS "void QwtDynGridLayout::stretchGrid (const QRect &rect, uintnumCols, QVector< int > &rowHeight, QVector< int > &colWidth) const\fC [protected]\fP"Stretch columns in case of expanding() & QSizePolicy::Horizontal and rows in case of expanding() & QSizePolicy::Vertical to fill the entire rect. Rows and columns are stretched with the same factor. +.PP +\fBSee also:\fP +.RS 4 +setExpanding(), expanding() +.RE +.PP + +.SS "QLayoutItem * QwtDynGridLayout::takeAt (intindex)\fC [virtual]\fP"Find the item at a spcific index and remove it from the layout +.PP +\fBParameters:\fP +.RS 4 +\fIindex\fP Index +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBitemAt()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtEventPattern.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtEventPattern.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtEventPattern.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtEventPattern.3 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,425 @@ +.TH "QwtEventPattern" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtEventPattern \- +.PP +A collection of event patterns. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherited by \fBQwtPicker\fP. +.SS "Classes" + +.in +1c +.ti -1c +.RI "class \fBKeyPattern\fP" +.br +.RI "\fIA pattern for key events. \fP" +.ti -1c +.RI "class \fBMousePattern\fP" +.br +.RI "\fIA pattern for mouse events. \fP" +.in -1c +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBMousePatternCode\fP { \fBMouseSelect1\fP, \fBMouseSelect2\fP, \fBMouseSelect3\fP, \fBMouseSelect4\fP, \fBMouseSelect5\fP, \fBMouseSelect6\fP, \fBMousePatternCount\fP }" +.br +.ti -1c +.RI "enum \fBKeyPatternCode\fP { \fBKeySelect1\fP, \fBKeySelect2\fP, \fBKeyAbort\fP, \fBKeyLeft\fP, \fBKeyRight\fP, \fBKeyUp\fP, \fBKeyDown\fP, \fBKeyRedo\fP, \fBKeyUndo\fP, \fBKeyHome\fP, \fBKeyPatternCount\fP }" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtEventPattern\fP ()" +.br +.ti -1c +.RI "virtual \fB~QwtEventPattern\fP ()" +.br +.ti -1c +.RI "void \fBinitMousePattern\fP (int numButtons)" +.br +.ti -1c +.RI "void \fBinitKeyPattern\fP ()" +.br +.ti -1c +.RI "void \fBsetMousePattern\fP (uint pattern, int button, int state=Qt::NoButton)" +.br +.ti -1c +.RI "void \fBsetKeyPattern\fP (uint pattern, int key, int state=Qt::NoButton)" +.br +.ti -1c +.RI "void \fBsetMousePattern\fP (const QVector< \fBMousePattern\fP > &)" +.br +.ti -1c +.RI "void \fBsetKeyPattern\fP (const QVector< \fBKeyPattern\fP > &)" +.br +.ti -1c +.RI "const QVector< \fBMousePattern\fP > & \fBmousePattern\fP () const " +.br +.ti -1c +.RI "const QVector< \fBKeyPattern\fP > & \fBkeyPattern\fP () const " +.br +.ti -1c +.RI "QVector< \fBMousePattern\fP > & \fBmousePattern\fP ()" +.br +.ti -1c +.RI "QVector< \fBKeyPattern\fP > & \fBkeyPattern\fP ()" +.br +.ti -1c +.RI "bool \fBmouseMatch\fP (uint pattern, const QMouseEvent *) const " +.br +.ti -1c +.RI "bool \fBkeyMatch\fP (uint pattern, const QKeyEvent *) const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual bool \fBmouseMatch\fP (const \fBMousePattern\fP &, const QMouseEvent *) const " +.br +.ti -1c +.RI "virtual bool \fBkeyMatch\fP (const \fBKeyPattern\fP &, const QKeyEvent *) const " +.br +.in -1c +.SH "Detailed Description" +.PP +A collection of event patterns. + +\fBQwtEventPattern\fP introduces an level of indirection for mouse and keyboard inputs. Those are represented by symbolic names, so the application code can be configured by individual mappings. +.PP +\fBSee also:\fP +.RS 4 +\fBQwtPicker\fP, \fBQwtPickerMachine\fP, \fBQwtPlotZoomer\fP +.RE +.PP + +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtEventPattern::KeyPatternCode\fP" +.PP +Symbolic keyboard input codes. Default initialization: +.IP "\(bu" 2 +KeySelect1 +.br + Qt::Key_Return +.IP "\(bu" 2 +KeySelect2 +.br + Qt::Key_Space +.IP "\(bu" 2 +KeyAbort +.br + Qt::Key_Escape +.PP +.PP +.IP "\(bu" 2 +KeyLeft +.br + Qt::Key_Left +.IP "\(bu" 2 +KeyRight +.br + Qt::Key_Right +.IP "\(bu" 2 +KeyUp +.br + Qt::Key_Up +.IP "\(bu" 2 +KeyDown +.br + Qt::Key_Down +.PP +.PP +.IP "\(bu" 2 +KeyUndo +.br + Qt::Key_Minus +.IP "\(bu" 2 +KeyRedo +.br + Qt::Key_Plus +.IP "\(bu" 2 +KeyHome +.br + Qt::Key_Escape +.PP + +.SS "enum \fBQwtEventPattern::MousePatternCode\fP" +.PP +Symbolic mouse input codes. The default initialization for 3 button mice is: +.IP "\(bu" 2 +MouseSelect1 +.br + Qt::LeftButton +.IP "\(bu" 2 +MouseSelect2 +.br + Qt::RightButton +.IP "\(bu" 2 +MouseSelect3 +.br + Qt::MidButton +.IP "\(bu" 2 +MouseSelect4 +.br + Qt::LeftButton + Qt::ShiftButton +.IP "\(bu" 2 +MouseSelect5 +.br + Qt::RightButton + Qt::ShiftButton +.IP "\(bu" 2 +MouseSelect6 +.br + Qt::MidButton + Qt::ShiftButton +.PP +.PP +The default initialization for 2 button mice is: +.IP "\(bu" 2 +MouseSelect1 +.br + Qt::LeftButton +.IP "\(bu" 2 +MouseSelect2 +.br + Qt::RightButton +.IP "\(bu" 2 +MouseSelect3 +.br + Qt::LeftButton + Qt::AltButton +.IP "\(bu" 2 +MouseSelect4 +.br + Qt::LeftButton + Qt::ShiftButton +.IP "\(bu" 2 +MouseSelect5 +.br + Qt::RightButton + Qt::ShiftButton +.IP "\(bu" 2 +MouseSelect6 +.br + Qt::LeftButton + Qt::AltButton + Qt::ShiftButton +.PP +.PP +The default initialization for 1 button mice is: +.IP "\(bu" 2 +MouseSelect1 +.br + Qt::LeftButton +.IP "\(bu" 2 +MouseSelect2 +.br + Qt::LeftButton + Qt::ControlButton +.IP "\(bu" 2 +MouseSelect3 +.br + Qt::LeftButton + Qt::AltButton +.IP "\(bu" 2 +MouseSelect4 +.br + Qt::LeftButton + Qt::ShiftButton +.IP "\(bu" 2 +MouseSelect5 +.br + Qt::LeftButton + Qt::ControlButton + Qt::ShiftButton +.IP "\(bu" 2 +MouseSelect6 +.br + Qt::LeftButton + Qt::AltButton + Qt::ShiftButton +.PP +.PP +\fBSee also:\fP +.RS 4 +\fBinitMousePattern()\fP +.RE +.PP + +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtEventPattern::QwtEventPattern ()"Constructor +.PP +\fBSee also:\fP +.RS 4 +\fBMousePatternCode\fP, \fBKeyPatternCode\fP +.RE +.PP + +.SS "QwtEventPattern::~QwtEventPattern ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "void QwtEventPattern::initKeyPattern ()"Set default mouse patterns. +.PP +\fBSee also:\fP +.RS 4 +\fBKeyPatternCode\fP +.RE +.PP + +.SS "void QwtEventPattern::initMousePattern (intnumButtons)"Set default mouse patterns, depending on the number of mouse buttons +.PP +\fBParameters:\fP +.RS 4 +\fInumButtons\fP Number of mouse buttons ( <= 3 ) +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBMousePatternCode\fP +.RE +.PP + +.SS "bool QwtEventPattern::keyMatch (uintpattern, const QKeyEvent *e) const" +.PP +Compare a key event with an event pattern. A key event matches the pattern when both have the same key value and in the state value the same key flags (Qt::KeyButtonMask) are set. +.PP +\fBParameters:\fP +.RS 4 +\fIpattern\fP Index of the event pattern +.br +\fIe\fP Key event +.RE +.PP +\fBReturns:\fP +.RS 4 +true if matches +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBmouseMatch()\fP +.RE +.PP + +.SS "bool QwtEventPattern::keyMatch (const \fBKeyPattern\fP &pattern, const QKeyEvent *e) const\fC [protected, virtual]\fP" +.PP +Compare a key event with an event pattern. A key event matches the pattern when both have the same key value and in the state value the same key flags (Qt::KeyButtonMask) are set. +.PP +\fBParameters:\fP +.RS 4 +\fIpattern\fP Key event pattern +.br +\fIe\fP Key event +.RE +.PP +\fBReturns:\fP +.RS 4 +true if matches +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBmouseMatch()\fP +.RE +.PP + +.SS "const QVector< \fBQwtEventPattern::KeyPattern\fP > & QwtEventPattern::keyPattern () const" +.PP +Return key patterns. +.SS "QVector< \fBQwtEventPattern::KeyPattern\fP > & QwtEventPattern::keyPattern ()" +.PP +Return Key patterns. +.SS "bool QwtEventPattern::mouseMatch (uintpattern, const QMouseEvent *e) const" +.PP +Compare a mouse event with an event pattern. A mouse event matches the pattern when both have the same button value and in the state value the same key flags(Qt::KeyButtonMask) are set. +.PP +\fBParameters:\fP +.RS 4 +\fIpattern\fP Index of the event pattern +.br +\fIe\fP Mouse event +.RE +.PP +\fBReturns:\fP +.RS 4 +true if matches +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBkeyMatch()\fP +.RE +.PP + +.SS "bool QwtEventPattern::mouseMatch (const \fBMousePattern\fP &pattern, const QMouseEvent *e) const\fC [protected, virtual]\fP" +.PP +Compare a mouse event with an event pattern. A mouse event matches the pattern when both have the same button value and in the state value the same key flags(Qt::KeyButtonMask) are set. +.PP +\fBParameters:\fP +.RS 4 +\fIpattern\fP Mouse event pattern +.br +\fIe\fP Mouse event +.RE +.PP +\fBReturns:\fP +.RS 4 +true if matches +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBkeyMatch()\fP +.RE +.PP + +.SS "QVector< \fBQwtEventPattern::MousePattern\fP > & QwtEventPattern::mousePattern ()" +.PP +Return ,ouse patterns. +.SS "const QVector< \fBQwtEventPattern::MousePattern\fP > & QwtEventPattern::mousePattern () const" +.PP +Return mouse patterns. +.SS "void QwtEventPattern::setKeyPattern (uintpattern, intkey, intstate = \fCQt::NoButton\fP)"Change one key pattern +.PP +\fBParameters:\fP +.RS 4 +\fIpattern\fP Index of the pattern +.br +\fIkey\fP Key +.br +\fIstate\fP State +.RE +.PP +\fBSee also:\fP +.RS 4 +QKeyEvent +.RE +.PP + +.SS "void QwtEventPattern::setKeyPattern (const QVector< \fBKeyPattern\fP > &pattern)" +.PP +Change the key event patterns. +.SS "void QwtEventPattern::setMousePattern (uintpattern, intbutton, intstate = \fCQt::NoButton\fP)"Change one mouse pattern +.PP +\fBParameters:\fP +.RS 4 +\fIpattern\fP Index of the pattern +.br +\fIbutton\fP Button +.br +\fIstate\fP State +.RE +.PP +\fBSee also:\fP +.RS 4 +QMouseEvent +.RE +.PP + +.SS "void QwtEventPattern::setMousePattern (const QVector< \fBMousePattern\fP > &pattern)" +.PP +Change the mouse event patterns. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtEventPattern_KeyPattern.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtEventPattern_KeyPattern.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtEventPattern_KeyPattern.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtEventPattern_KeyPattern.3 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,50 @@ +.TH "QwtEventPattern::KeyPattern" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtEventPattern::KeyPattern \- +.PP +A pattern for key events. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBKeyPattern\fP (int k=0, int st=Qt::NoButton)" +.br +.in -1c +.SS "Public Attributes" + +.in +1c +.ti -1c +.RI "int \fBkey\fP" +.br +.ti -1c +.RI "int \fBstate\fP" +.br +.in -1c +.SH "Detailed Description" +.PP +A pattern for key events. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtEventPattern::KeyPattern::KeyPattern (intk = \fC0\fP, intst = \fCQt::NoButton\fP)\fC [inline]\fP" +.PP +Constructor. +.SH "Member Data Documentation" +.PP +.SS "int \fBQwtEventPattern::KeyPattern::key\fP" +.PP +Key code. +.SS "int \fBQwtEventPattern::KeyPattern::state\fP" +.PP +State. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtEventPattern_MousePattern.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtEventPattern_MousePattern.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtEventPattern_MousePattern.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtEventPattern_MousePattern.3 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,50 @@ +.TH "QwtEventPattern::MousePattern" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtEventPattern::MousePattern \- +.PP +A pattern for mouse events. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBMousePattern\fP (int btn=Qt::NoButton, int st=Qt::NoButton)" +.br +.in -1c +.SS "Public Attributes" + +.in +1c +.ti -1c +.RI "int \fBbutton\fP" +.br +.ti -1c +.RI "int \fBstate\fP" +.br +.in -1c +.SH "Detailed Description" +.PP +A pattern for mouse events. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtEventPattern::MousePattern::MousePattern (intbtn = \fCQt::NoButton\fP, intst = \fCQt::NoButton\fP)\fC [inline]\fP" +.PP +Constructor. +.SH "Member Data Documentation" +.PP +.SS "int \fBQwtEventPattern::MousePattern::button\fP" +.PP +Button code. +.SS "int \fBQwtEventPattern::MousePattern::state\fP" +.PP +State. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/qwtinstall.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/qwtinstall.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/qwtinstall.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/qwtinstall.3 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,177 @@ +.TH "qwtinstall" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +qwtinstall \- .TH "qwtinstall" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +qwtinstall \- .PP +.nf +Introduction +============ + +Qwt uses qmake to build all its components and examples. +qmake is part of a Qt distribution. + +qmake reads project files, that contain the options and rules how to +build a certain project. A project file ends with the suffix '*.pro'. +Files that end with the suffix '*.pri' are included by the project +files and contain definitions, that are common for several project files. + +qwtconfig.pri and qwtbuild.pri are read by all project files of the Qwt +package. qwtconfig.pri is also read by qwt.prf, when building your +application. So the first step is to edit the *.pri files to adjust +them to your needs. + +The subdirs template of qmake is known to be buggy when using spaces +in path names. So better don't build Qwt below a path name with spaces. +( Otherwise you might have to run qmake in all subdirs manually ). + +Documentation +========================== + +Qwt includes a class documentation, that is available in various formats: + +- Html files +- PDF document +- Qt Compressed Help (*.qch ) for the Qt assistant or creator. + You can load it 'Edit Preferences' -> 'Documentation' -> 'Add...' +- Man pages ( UNIX only ) + +Building Qwt +========================== + +The easiest way to build Qwt is from the command line - but you insist on +using an IDE don't forget the 'make install' step. + +A) Unix +-------- + +qmake +make +make install + +If you have installed a shared library it's path has to be known to +the run-time linker of your operating system. On Linux systems read +'man ldconfig' ( or google for it ). Another option is to use +the LD_LIBRARY_PATH (on some systems LIBPATH is used instead, on MacOSX +it is called DYLD_LIBRARY_PATH) environment variable. + +If you only want to check the Qwt examples without installing something, +you can set the LD_LIBRARY_PATH to the lib directory +of your local build. + +If you didn't enable autobuilding of the examples in qwtconfig.pri +you have to build the examples this way: + +cd examples +qmake +make + + +B) Win32/MSVC +-------- + +Check that your Qt version has been built with MSVC - not with MinGW ! + +Please read the qmake documentation how to convert +your *.pro files into your development environment. + +F.e MSVC with nmake: +qmake qwt.pro +nmake +nmake install + +If you didn't enable autobuilding of the examples in qwtconfig.pri +you have to build the examples this way: + +cd examples +qmake examples.pro +nmake + +Windows doesn't like mixing of debug and release binaries. Most +of the problems with using the Qwt designer plugin are because +of trying to load a Qwt debug library into a designer release +executable. + +It's not possible to load a plugin, that has been built with MinGW +into a Qt Designer/Creator, that has been built with MSVC ( and v.v ). +This is a common reason for problems, when working with prebuild +binaries of the Qt Creator. + +C) Win32/MinGW +-------- + +Check that your Qt version has been built with MinGW - not with MSVC ! + +Start a Shell, where Qt4 is initialized. ( F.e. with +'Programs->Qt by Trolltech ...->Qt 4.x.x Command Prompt' ). +Check if you can execute 'make' or something like 'mingw32-make'. + +qmake qwt.pro +make +make install + +If you didn't enable autobuilding of the examples in qwtconfig.pri +you have to build the examples this way: + +cd examples +qmake examples.pro +make + +Windows doesn't like mixing of debug and release binaries. Most +of the problems with using the Qwt designer plugin are because +of trying to load a Qwt debug library into a designer release +executable. + +Don't forget to tell qmake where to find qwt.prf: +qmake -set QMAKEFEATURES ... + +D) MacOSX +-------- + +Well, the Mac is only another Unix system. So read the instructions in A). + +In the recent Qt4 releases the default target of qmake is to generate +XCode project files instead of makefiles. So you might need to do the +following: + +qmake -spec macx-g++ +... + +D) Qt Embedded +-------- + +I only tested Qwt with Qt Embedded in qvfb (Virtual Framebuffer Devivce) +Emulator on my Linux box. To build Qwt for the emulator was as simple as +for a regular Unix build. + +F) Symbian +-------- + +I never tried this platform myself. + +Using Qwt +=========== + +For building a Qwt application with qmake use the Qwt configuration features +file, that has been installed by 'make install'. When qmake is able to find +it ( http://doc.qt.nokia.com/4.7/qmake-advanced-usage.html#adding-new-configuration-features ) +you can simply add 'CONFIG += qwt' to your application project file. + +If you don't use qmake you have to add the include path to find the Qwt +headers to your compiler flags and the Qwt library to your linker list. +Don't forget to add QWT_DLL to the compiler flags, when you work with a +Qwt-DLLs on Windows. + +For using the designer plugin you have to configure the Qt designer/creator +where to look for plugins. This can be done by setting the QT_PLUGIN_PATH or +using a qt.conf file ( see http://doc.qt.nokia.com/4.7/deployment-plugins.html ). +Beside the plugin the Qwt library itsself also needs to be known to the Designer/Creator +( see LD_LIBRARY_PATH, PATH ... above ). + +Good luck ! +.fi +.PP + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtInterval.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtInterval.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtInterval.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtInterval.3 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,430 @@ +.TH "QwtInterval" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtInterval \- +.PP +A class representing an interval. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBBorderFlag\fP { \fBIncludeBorders\fP = 0x00, \fBExcludeMinimum\fP = 0x01, \fBExcludeMaximum\fP = 0x02, \fBExcludeBorders\fP = ExcludeMinimum | ExcludeMaximum }" +.br +.ti -1c +.RI "typedef QFlags< \fBBorderFlag\fP > \fBBorderFlags\fP" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtInterval\fP ()" +.br +.ti -1c +.RI "\fBQwtInterval\fP (double minValue, double maxValue, \fBBorderFlags\fP=IncludeBorders)" +.br +.ti -1c +.RI "void \fBsetInterval\fP (double minValue, double maxValue, \fBBorderFlags\fP=IncludeBorders)" +.br +.ti -1c +.RI "\fBQwtInterval\fP \fBnormalized\fP () const " +.br +.ti -1c +.RI "\fBQwtInterval\fP \fBinverted\fP () const " +.br +.ti -1c +.RI "\fBQwtInterval\fP \fBlimited\fP (double minValue, double maxValue) const " +.br +.ti -1c +.RI "bool \fBoperator==\fP (const \fBQwtInterval\fP &) const " +.br +.ti -1c +.RI "bool \fBoperator!=\fP (const \fBQwtInterval\fP &) const " +.br +.ti -1c +.RI "void \fBsetBorderFlags\fP (\fBBorderFlags\fP)" +.br +.ti -1c +.RI "\fBBorderFlags\fP \fBborderFlags\fP () const " +.br +.ti -1c +.RI "double \fBminValue\fP () const " +.br +.ti -1c +.RI "double \fBmaxValue\fP () const " +.br +.ti -1c +.RI "double \fBwidth\fP () const " +.br +.ti -1c +.RI "void \fBsetMinValue\fP (double)" +.br +.ti -1c +.RI "void \fBsetMaxValue\fP (double)" +.br +.ti -1c +.RI "bool \fBcontains\fP (double value) const " +.br +.ti -1c +.RI "bool \fBintersects\fP (const \fBQwtInterval\fP &) const " +.br +.ti -1c +.RI "\fBQwtInterval\fP \fBintersect\fP (const \fBQwtInterval\fP &) const " +.br +.ti -1c +.RI "\fBQwtInterval\fP \fBunite\fP (const \fBQwtInterval\fP &) const " +.br +.ti -1c +.RI "\fBQwtInterval\fP \fBoperator|\fP (const \fBQwtInterval\fP &) const " +.br +.ti -1c +.RI "\fBQwtInterval\fP \fBoperator&\fP (const \fBQwtInterval\fP &) const " +.br +.ti -1c +.RI "\fBQwtInterval\fP & \fBoperator|=\fP (const \fBQwtInterval\fP &)" +.br +.ti -1c +.RI "\fBQwtInterval\fP & \fBoperator&=\fP (const \fBQwtInterval\fP &)" +.br +.ti -1c +.RI "\fBQwtInterval\fP \fBextend\fP (double value) const " +.br +.ti -1c +.RI "\fBQwtInterval\fP \fBoperator|\fP (double) const " +.br +.ti -1c +.RI "\fBQwtInterval\fP & \fBoperator|=\fP (double)" +.br +.ti -1c +.RI "bool \fBisValid\fP () const " +.br +.ti -1c +.RI "bool \fBisNull\fP () const " +.br +.ti -1c +.RI "void \fBinvalidate\fP ()" +.br +.ti -1c +.RI "\fBQwtInterval\fP \fBsymmetrize\fP (double value) const " +.br +.in -1c +.SH "Detailed Description" +.PP +A class representing an interval. + +The interval is represented by 2 doubles, the lower and the upper limit. +.SH "Member Typedef Documentation" +.PP +.SS "typedef QFlags<\fBBorderFlag\fP> \fBQwtInterval::BorderFlags\fP" +.PP +Border flags. +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtInterval::BorderFlag\fP"Flag indicating if a border is included or excluded +.PP +\fBSee also:\fP +.RS 4 +\fBsetBorderFlags()\fP, \fBborderFlags()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIIncludeBorders \fP\fP +Min/Max values are inside the interval. +.TP +\fB\fIExcludeMinimum \fP\fP +Min value is not included in the interval. +.TP +\fB\fIExcludeMaximum \fP\fP +Max value is not included in the interval. +.TP +\fB\fIExcludeBorders \fP\fP +Min/Max values are not included in the interval. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtInterval::QwtInterval ()\fC [inline]\fP" +.PP +Default Constructor. Creates an invalid interval [0.0, -1.0] +.PP +\fBSee also:\fP +.RS 4 +\fBsetInterval()\fP, \fBisValid()\fP +.RE +.PP + +.SS "QwtInterval::QwtInterval (doubleminValue, doublemaxValue, \fBBorderFlags\fPborderFlags = \fCIncludeBorders\fP)\fC [inline]\fP"Constructor +.PP +Build an interval with from min/max values +.PP +\fBParameters:\fP +.RS 4 +\fIminValue\fP Minimum value +.br +\fImaxValue\fP Maximum value +.br +\fIborderFlags\fP Include/Exclude borders +.RE +.PP + +.SH "Member Function Documentation" +.PP +.SS "\fBQwtInterval::BorderFlags\fP QwtInterval::borderFlags () const\fC [inline]\fP"\fBReturns:\fP +.RS 4 +Border flags +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetBorderFlags()\fP +.RE +.PP + +.SS "bool QwtInterval::contains (doublevalue) const"Test if a value is inside an interval +.PP +\fBParameters:\fP +.RS 4 +\fIvalue\fP Value +.RE +.PP +\fBReturns:\fP +.RS 4 +true, if value >= \fBminValue()\fP && value <= \fBmaxValue()\fP +.RE +.PP + +.SS "\fBQwtInterval\fP QwtInterval::extend (doublevalue) const"Extend the interval +.PP +If value is below minValue, value becomes the lower limit. If value is above maxValue, value becomes the upper limit. +.PP +extend has no effect for invalid intervals +.PP +\fBParameters:\fP +.RS 4 +\fIvalue\fP Value +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBisValid()\fP +.RE +.PP + +.SS "\fBQwtInterval\fP QwtInterval::intersect (const \fBQwtInterval\fP &other) const" +.PP +Intersect 2 intervals. +.SS "bool QwtInterval::intersects (const \fBQwtInterval\fP &other) const"Test if two intervals overlap +.SS "void QwtInterval::invalidate ()\fC [inline]\fP"Invalidate the interval +.PP +The limits are set to interval [0.0, -1.0] +.PP +\fBSee also:\fP +.RS 4 +\fBisValid()\fP +.RE +.PP + +.SS "\fBQwtInterval\fP QwtInterval::inverted () const"Invert the limits of the interval +.PP +\fBReturns:\fP +.RS 4 +Inverted interval +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBnormalized()\fP +.RE +.PP + +.SS "bool QwtInterval::isNull () const\fC [inline]\fP"\fBReturns:\fP +.RS 4 +true, if \fBisValid()\fP && (\fBminValue()\fP >= \fBmaxValue()\fP) +.RE +.PP + +.SS "bool QwtInterval::isValid () const\fC [inline]\fP"A interval is valid when \fBminValue()\fP <= \fBmaxValue()\fP. In case of \fBQwtInterval::ExcludeBorders\fP it is true when \fBminValue()\fP < \fBmaxValue()\fP +.SS "\fBQwtInterval\fP QwtInterval::limited (doublelowerBound, doubleupperBound) const"Limit the interval, keeping the border modes +.PP +\fBParameters:\fP +.RS 4 +\fIlowerBound\fP Lower limit +.br +\fIupperBound\fP Upper limit +.RE +.PP +\fBReturns:\fP +.RS 4 +Limited interval +.RE +.PP + +.SS "double QwtInterval::maxValue () const\fC [inline]\fP"\fBReturns:\fP +.RS 4 +Upper limit of the interval +.RE +.PP + +.SS "double QwtInterval::minValue () const\fC [inline]\fP"\fBReturns:\fP +.RS 4 +Lower limit of the interval +.RE +.PP + +.SS "\fBQwtInterval\fP QwtInterval::normalized () const" +.PP +Normalize the limits of the interval. If \fBmaxValue()\fP < \fBminValue()\fP the limits will be inverted. +.PP +\fBReturns:\fP +.RS 4 +Normalized interval +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBisValid()\fP, \fBinverted()\fP +.RE +.PP + +.SS "bool QwtInterval::operator!= (const \fBQwtInterval\fP &other) const\fC [inline]\fP" +.PP +Compare two intervals. +.SS "\fBQwtInterval\fP QwtInterval::operator& (const \fBQwtInterval\fP &interval) const\fC [inline]\fP"Intersection of two intervals +.PP +\fBSee also:\fP +.RS 4 +\fBintersect()\fP +.RE +.PP + +.SS "\fBQwtInterval\fP & QwtInterval::operator&= (const \fBQwtInterval\fP &interval)" +.PP +Intersects this interval with the given interval. +.SS "bool QwtInterval::operator== (const \fBQwtInterval\fP &other) const\fC [inline]\fP" +.PP +Compare two intervals. +.SS "\fBQwtInterval\fP QwtInterval::operator| (const \fBQwtInterval\fP &interval) const\fC [inline]\fP"Union of two intervals +.PP +\fBSee also:\fP +.RS 4 +\fBunite()\fP +.RE +.PP + +.SS "\fBQwtInterval\fP QwtInterval::operator| (doublevalue) const\fC [inline]\fP"Extend an interval +.PP +\fBParameters:\fP +.RS 4 +\fIvalue\fP Value +.RE +.PP +\fBReturns:\fP +.RS 4 +Extended interval +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBextend()\fP +.RE +.PP + +.SS "\fBQwtInterval\fP & QwtInterval::operator|= (const \fBQwtInterval\fP &interval)" +.PP +Unites this interval with the given interval. +.SS "\fBQwtInterval\fP & QwtInterval::operator|= (doublevalue)"Extend an interval +.PP +\fBParameters:\fP +.RS 4 +\fIvalue\fP Value +.RE +.PP +\fBReturns:\fP +.RS 4 +Reference of the extended interval +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBextend()\fP +.RE +.PP + +.SS "void QwtInterval::setBorderFlags (\fBBorderFlags\fPborderFlags)\fC [inline]\fP"Change the border flags +.PP +\fBParameters:\fP +.RS 4 +\fIborderFlags\fP Or'd BorderMode flags +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBborderFlags()\fP +.RE +.PP + +.SS "void QwtInterval::setInterval (doubleminValue, doublemaxValue, \fBBorderFlags\fPborderFlags = \fCIncludeBorders\fP)\fC [inline]\fP"Assign the limits of the interval +.PP +\fBParameters:\fP +.RS 4 +\fIminValue\fP Minimum value +.br +\fImaxValue\fP Maximum value +.br +\fIborderFlags\fP Include/Exclude borders +.RE +.PP + +.SS "void QwtInterval::setMaxValue (doublemaxValue)\fC [inline]\fP"Assign the upper limit of the interval +.PP +\fBParameters:\fP +.RS 4 +\fImaxValue\fP Maximum value +.RE +.PP + +.SS "void QwtInterval::setMinValue (doubleminValue)\fC [inline]\fP"Assign the lower limit of the interval +.PP +\fBParameters:\fP +.RS 4 +\fIminValue\fP Minimum value +.RE +.PP + +.SS "\fBQwtInterval\fP QwtInterval::symmetrize (doublevalue) const"Adjust the limit that is closer to value, so that value becomes the center of the interval. +.PP +\fBParameters:\fP +.RS 4 +\fIvalue\fP Center +.RE +.PP +\fBReturns:\fP +.RS 4 +Interval with value as center +.RE +.PP + +.SS "\fBQwtInterval\fP QwtInterval::unite (const \fBQwtInterval\fP &other) const" +.PP +Unite 2 intervals. +.SS "double QwtInterval::width () const\fC [inline]\fP"Return the width of an interval The width of invalid intervals is 0.0, otherwise the result is \fBmaxValue()\fP - \fBminValue()\fP. +.PP +\fBSee also:\fP +.RS 4 +\fBisValid()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtIntervalSample.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtIntervalSample.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtIntervalSample.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtIntervalSample.3 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,74 @@ +.TH "QwtIntervalSample" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtIntervalSample \- +.PP +A sample of the types (x1-x2, y) or (x, y1-y2) + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtIntervalSample\fP ()" +.br +.ti -1c +.RI "\fBQwtIntervalSample\fP (double, const \fBQwtInterval\fP &)" +.br +.ti -1c +.RI "\fBQwtIntervalSample\fP (double \fBvalue\fP, double min, double max)" +.br +.ti -1c +.RI "bool \fBoperator==\fP (const \fBQwtIntervalSample\fP &) const " +.br +.ti -1c +.RI "bool \fBoperator!=\fP (const \fBQwtIntervalSample\fP &) const " +.br +.in -1c +.SS "Public Attributes" + +.in +1c +.ti -1c +.RI "double \fBvalue\fP" +.br +.ti -1c +.RI "\fBQwtInterval\fP \fBinterval\fP" +.br +.in -1c +.SH "Detailed Description" +.PP +A sample of the types (x1-x2, y) or (x, y1-y2) +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtIntervalSample::QwtIntervalSample ()\fC [inline]\fP"Constructor The value is set to 0.0, the interval is invalid +.SS "QwtIntervalSample::QwtIntervalSample (doublev, const \fBQwtInterval\fP &intv)\fC [inline]\fP" +.PP +Constructor. +.SS "QwtIntervalSample::QwtIntervalSample (doublevalue, doublemin, doublemax)\fC [inline]\fP" +.PP +Constructor. +.SH "Member Function Documentation" +.PP +.SS "bool QwtIntervalSample::operator!= (const \fBQwtIntervalSample\fP &other) const\fC [inline]\fP" +.PP +Compare operator. +.SS "bool QwtIntervalSample::operator== (const \fBQwtIntervalSample\fP &other) const\fC [inline]\fP" +.PP +Compare operator. +.SH "Member Data Documentation" +.PP +.SS "\fBQwtInterval\fP \fBQwtIntervalSample::interval\fP" +.PP +Interval. +.SS "double \fBQwtIntervalSample::value\fP" +.PP +Value. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtIntervalSeriesData.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtIntervalSeriesData.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtIntervalSeriesData.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtIntervalSeriesData.3 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,56 @@ +.TH "QwtIntervalSeriesData" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtIntervalSeriesData \- +.PP +Interface for iterating over an array of intervals. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtArraySeriesData< QwtIntervalSample >\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtIntervalSeriesData\fP (const QVector< \fBQwtIntervalSample\fP > &=QVector< \fBQwtIntervalSample\fP >())" +.br +.ti -1c +.RI "virtual QRectF \fBboundingRect\fP () const " +.br +.in -1c +.SH "Detailed Description" +.PP +Interface for iterating over an array of intervals. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtIntervalSeriesData::QwtIntervalSeriesData (const QVector< \fBQwtIntervalSample\fP > &samples = \fCQVector<\fBQwtIntervalSample\fP>()\fP)"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fIsamples\fP Samples +.RE +.PP + +.SH "Member Function Documentation" +.PP +.SS "QRectF QwtIntervalSeriesData::boundingRect () const\fC [virtual]\fP" +.PP +Calculate the bounding rect. The bounding rectangle is calculated once by iterating over all points and is stored for all following requests. +.PP +\fBReturns:\fP +.RS 4 +Bounding rectangle +.RE +.PP + +.PP +Implements \fBQwtSeriesData< QwtIntervalSample >\fP. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtIntervalSymbol.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtIntervalSymbol.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtIntervalSymbol.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtIntervalSymbol.3 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,252 @@ +.TH "QwtIntervalSymbol" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtIntervalSymbol \- +.PP +A drawing primitive for displaying an interval like an error bar. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBStyle\fP { \fBNoSymbol\fP = -1, \fBBar\fP, \fBBox\fP, \fBUserSymbol\fP = 1000 }" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtIntervalSymbol\fP (\fBStyle\fP=NoSymbol)" +.br +.ti -1c +.RI "\fBQwtIntervalSymbol\fP (const \fBQwtIntervalSymbol\fP &)" +.br +.ti -1c +.RI "virtual \fB~QwtIntervalSymbol\fP ()" +.br +.ti -1c +.RI "\fBQwtIntervalSymbol\fP & \fBoperator=\fP (const \fBQwtIntervalSymbol\fP &)" +.br +.ti -1c +.RI "bool \fBoperator==\fP (const \fBQwtIntervalSymbol\fP &) const " +.br +.ti -1c +.RI "bool \fBoperator!=\fP (const \fBQwtIntervalSymbol\fP &) const " +.br +.ti -1c +.RI "void \fBsetWidth\fP (int)" +.br +.ti -1c +.RI "int \fBwidth\fP () const " +.br +.ti -1c +.RI "void \fBsetBrush\fP (const QBrush &b)" +.br +.ti -1c +.RI "const QBrush & \fBbrush\fP () const " +.br +.ti -1c +.RI "void \fBsetPen\fP (const QPen &)" +.br +.ti -1c +.RI "const QPen & \fBpen\fP () const " +.br +.ti -1c +.RI "void \fBsetStyle\fP (\fBStyle\fP)" +.br +.ti -1c +.RI "\fBStyle\fP \fBstyle\fP () const " +.br +.ti -1c +.RI "virtual void \fBdraw\fP (QPainter *, Qt::Orientation, const QPointF &from, const QPointF &to) const " +.br +.in -1c +.SH "Detailed Description" +.PP +A drawing primitive for displaying an interval like an error bar. + +\fBSee also:\fP +.RS 4 +\fBQwtPlotIntervalCurve\fP +.RE +.PP + +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtIntervalSymbol::Style\fP" +.PP +Symbol style. +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fINoSymbol \fP\fP +No Style. The symbol cannot be drawn. +.TP +\fB\fIBar \fP\fP +The symbol displays a line with caps at the beginning/end. The size of the caps depends on the symbol \fBwidth()\fP. +.TP +\fB\fIBox \fP\fP +The symbol displays a plain rectangle using \fBpen()\fP and \fBbrush()\fP. The size of the rectangle depends on the translated interval and the \fBwidth()\fP, +.TP +\fB\fIUserSymbol \fP\fP +Styles >= UserSymbol are reserved for derived classes of \fBQwtIntervalSymbol\fP that overload \fBdraw()\fP with additional application specific symbol types. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtIntervalSymbol::QwtIntervalSymbol (\fBStyle\fPstyle = \fCNoSymbol\fP)"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fIstyle\fP Style of the symbol +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetStyle()\fP, \fBstyle()\fP, \fBStyle\fP +.RE +.PP + +.SS "QwtIntervalSymbol::QwtIntervalSymbol (const \fBQwtIntervalSymbol\fP &other)" +.PP +Copy constructor. +.SS "QwtIntervalSymbol::~QwtIntervalSymbol ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "const QBrush & QwtIntervalSymbol::brush () const"\fBReturns:\fP +.RS 4 +Brush +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetBrush()\fP +.RE +.PP + +.SS "void QwtIntervalSymbol::draw (QPainter *painter, Qt::Orientationorientation, const QPointF &from, const QPointF &to) const\fC [virtual]\fP"Draw a symbol depending on its style +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIorientation\fP Orientation +.br +\fIfrom\fP Start point of the interval in target device coordinates +.br +\fIto\fP End point of the interval in target device coordinates +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetStyle()\fP +.RE +.PP + +.SS "bool QwtIntervalSymbol::operator!= (const \fBQwtIntervalSymbol\fP &other) const" +.PP +Compare two symbols. +.SS "\fBQwtIntervalSymbol\fP & QwtIntervalSymbol::operator= (const \fBQwtIntervalSymbol\fP &other)" +.PP +Assignment operator. +.SS "bool QwtIntervalSymbol::operator== (const \fBQwtIntervalSymbol\fP &other) const" +.PP +Compare two symbols. +.SS "const QPen & QwtIntervalSymbol::pen () const"\fBReturns:\fP +.RS 4 +Pen +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetPen()\fP, \fBbrush()\fP +.RE +.PP + +.SS "void QwtIntervalSymbol::setBrush (const QBrush &brush)" +.PP +Assign a brush. The brush is used for the Box style. +.PP +\fBParameters:\fP +.RS 4 +\fIbrush\fP Brush +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBbrush()\fP +.RE +.PP + +.SS "void QwtIntervalSymbol::setPen (const QPen &pen)"Assign a pen +.PP +\fBParameters:\fP +.RS 4 +\fIpen\fP Pen +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBpen()\fP, \fBsetBrush()\fP +.RE +.PP + +.SS "void QwtIntervalSymbol::setStyle (\fBStyle\fPstyle)"Specify the symbol style +.PP +\fBParameters:\fP +.RS 4 +\fIstyle\fP Style +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBstyle()\fP, \fBStyle\fP +.RE +.PP + +.SS "void QwtIntervalSymbol::setWidth (intwidth)"Specify the width of the symbol It is used depending on the style. +.PP +\fBParameters:\fP +.RS 4 +\fIwidth\fP Width +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBwidth()\fP, \fBsetStyle()\fP +.RE +.PP + +.SS "\fBQwtIntervalSymbol::Style\fP QwtIntervalSymbol::style () const"\fBReturns:\fP +.RS 4 +Current symbol style +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetStyle()\fP +.RE +.PP + +.SS "int QwtIntervalSymbol::width () const"\fBReturns:\fP +.RS 4 +Width of the symbol. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetWidth()\fP, \fBsetStyle()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtKnob.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtKnob.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtKnob.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtKnob.3 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,410 @@ +.TH "QwtKnob" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtKnob \- +.PP +The Knob Widget. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtAbstractSlider\fP, and \fBQwtAbstractScale\fP. +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBKnobStyle\fP { \fBNoStyle\fP = -1, \fBRaised\fP, \fBSunken\fP }" +.br +.ti -1c +.RI "enum \fBMarkerStyle\fP { \fBNoMarker\fP = -1, \fBTick\fP, \fBDot\fP, \fBNub\fP, \fBNotch\fP }" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtKnob\fP (QWidget *parent=NULL)" +.br +.ti -1c +.RI "virtual \fB~QwtKnob\fP ()" +.br +.ti -1c +.RI "void \fBsetKnobWidth\fP (int w)" +.br +.ti -1c +.RI "int \fBknobWidth\fP () const " +.br +.ti -1c +.RI "void \fBsetTotalAngle\fP (double angle)" +.br +.ti -1c +.RI "double \fBtotalAngle\fP () const " +.br +.ti -1c +.RI "void \fBsetKnobStyle\fP (\fBKnobStyle\fP)" +.br +.ti -1c +.RI "\fBKnobStyle\fP \fBknobStyle\fP () const " +.br +.ti -1c +.RI "void \fBsetBorderWidth\fP (int bw)" +.br +.ti -1c +.RI "int \fBborderWidth\fP () const " +.br +.ti -1c +.RI "void \fBsetMarkerStyle\fP (\fBMarkerStyle\fP)" +.br +.ti -1c +.RI "\fBMarkerStyle\fP \fBmarkerStyle\fP () const " +.br +.ti -1c +.RI "void \fBsetMarkerSize\fP (int)" +.br +.ti -1c +.RI "int \fBmarkerSize\fP () const " +.br +.ti -1c +.RI "virtual QSize \fBsizeHint\fP () const " +.br +.ti -1c +.RI "virtual QSize \fBminimumSizeHint\fP () const " +.br +.ti -1c +.RI "void \fBsetScaleDraw\fP (\fBQwtRoundScaleDraw\fP *)" +.br +.ti -1c +.RI "const \fBQwtRoundScaleDraw\fP * \fBscaleDraw\fP () const " +.br +.ti -1c +.RI "\fBQwtRoundScaleDraw\fP * \fBscaleDraw\fP ()" +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual void \fBpaintEvent\fP (QPaintEvent *)" +.br +.ti -1c +.RI "virtual void \fBresizeEvent\fP (QResizeEvent *)" +.br +.ti -1c +.RI "virtual void \fBchangeEvent\fP (QEvent *)" +.br +.ti -1c +.RI "virtual void \fBdrawKnob\fP (QPainter *, const QRectF &) const " +.br +.ti -1c +.RI "virtual void \fBdrawMarker\fP (QPainter *, const QRectF &, double arc) const " +.br +.ti -1c +.RI "virtual double \fBgetValue\fP (const QPoint &p)" +.br +.ti -1c +.RI "virtual void \fBgetScrollMode\fP (const QPoint &, \fBQwtAbstractSlider::ScrollMode\fP &, int &direction) const " +.br +.in -1c +.SH "Detailed Description" +.PP +The Knob Widget. + +The \fBQwtKnob\fP widget imitates look and behaviour of a volume knob on a radio. It contains a scale around the knob which is set up automatically or can be configured manually (see \fBQwtAbstractScale\fP). Automatic scrolling is enabled when the user presses a mouse button on the scale. For a description of signals, slots and other members, see \fBQwtAbstractSlider\fP. +.PP + +.PP +\fBSee also:\fP +.RS 4 +\fBQwtAbstractSlider\fP and \fBQwtAbstractScale\fP for the descriptions of the inherited members. +.RE +.PP + +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtKnob::KnobStyle\fP" +.PP +Style of the knob surface. Depending on the KnobStyle the surface of the knob is filled from the brushes of the widget palette(). +.PP +\fBSee also:\fP +.RS 4 +\fBsetKnobStyle()\fP, \fBknobStyle()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fINoStyle \fP\fP +Fill the knob with a brush from QPalette::Button. +.TP +\fB\fIRaised \fP\fP +Build a gradient from QPalette::Midlight and QPalette::Button. +.TP +\fB\fISunken \fP\fP +Build a gradient from QPalette::Midlight, QPalette::Button and QPalette::Midlight +.SS "enum \fBQwtKnob::MarkerStyle\fP" +.PP +Marker type. The marker indicates the current value on the knob The default setting is a Notch marker. +.PP +\fBSee also:\fP +.RS 4 +\fBsetMarkerStyle()\fP, \fBsetMarkerSize()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fINoMarker \fP\fP +Don't paint any marker. +.TP +\fB\fITick \fP\fP +Paint a single tick in QPalette::ButtonText color. +.TP +\fB\fIDot \fP\fP +Paint a circle in QPalette::ButtonText color. +.TP +\fB\fINub \fP\fP +Draw a raised ellipse with a gradient build from QPalette::Light and QPalette::Mid +.TP +\fB\fINotch \fP\fP +Draw a sunken ellipse with a gradient build from QPalette::Light and QPalette::Mid +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtKnob::QwtKnob (QWidget *parent = \fCNULL\fP)\fC [explicit]\fP"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fIparent\fP Parent widget +.RE +.PP + +.SS "QwtKnob::~QwtKnob ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "int QwtKnob::borderWidth () const" +.PP +Return the border width. +.SS "void QwtKnob::changeEvent (QEvent *event)\fC [protected, virtual]\fP"Handle QEvent::StyleChange and QEvent::FontChange; +.PP +\fBParameters:\fP +.RS 4 +\fIevent\fP Change event +.RE +.PP + +.SS "void QwtKnob::drawKnob (QPainter *painter, const QRectF &knobRect) const\fC [protected, virtual]\fP" +.PP +Draw the knob. \fBParameters:\fP +.RS 4 +\fIpainter\fP painter +.br +\fIknobRect\fP Bounding rectangle of the knob (without scale) +.RE +.PP + +.SS "void QwtKnob::drawMarker (QPainter *painter, const QRectF &rect, doubleangle) const\fC [protected, virtual]\fP" +.PP +Draw the marker at the knob's front. \fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIrect\fP Bounding rectangle of the knob without scale +.br +\fIangle\fP Angle of the marker in degrees +.RE +.PP + +.SS "void QwtKnob::getScrollMode (const QPoint &pos, \fBQwtAbstractSlider::ScrollMode\fP &scrollMode, int &direction) const\fC [protected, virtual]\fP" +.PP +Set the scrolling mode and direction. Called by \fBQwtAbstractSlider\fP +.PP +\fBParameters:\fP +.RS 4 +\fIpos\fP Point in question +.br +\fIscrollMode\fP Scrolling mode +.br +\fIdirection\fP Direction +.RE +.PP + +.PP +Implements \fBQwtAbstractSlider\fP. +.SS "double QwtKnob::getValue (const QPoint &pos)\fC [protected, virtual]\fP" +.PP +Determine the value corresponding to a specified position. Called by \fBQwtAbstractSlider\fP +.PP +\fBParameters:\fP +.RS 4 +\fIpos\fP point +.RE +.PP + +.PP +Implements \fBQwtAbstractSlider\fP. +.SS "\fBQwtKnob::KnobStyle\fP QwtKnob::knobStyle () const"\fBReturns:\fP +.RS 4 +Marker type of the knob +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetKnobStyle()\fP, \fBsetBorderWidth()\fP +.RE +.PP + +.SS "int QwtKnob::knobWidth () const" +.PP +Return the width of the knob. +.SS "int QwtKnob::markerSize () const" +.PP +Return the marker size. +.SS "\fBQwtKnob::MarkerStyle\fP QwtKnob::markerStyle () const"\fBReturns:\fP +.RS 4 +Marker type of the knob +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetMarkerStyle()\fP, \fBsetMarkerSize()\fP +.RE +.PP + +.SS "QSize QwtKnob::minimumSizeHint () const\fC [virtual]\fP" +.PP +Return a minimum size hint. \fBWarning:\fP +.RS 4 +The return value of \fBQwtKnob::minimumSizeHint()\fP depends on the font and the scale. +.RE +.PP + +.SS "void QwtKnob::paintEvent (QPaintEvent *event)\fC [protected, virtual]\fP"Repaint the knob +.PP +\fBParameters:\fP +.RS 4 +\fIevent\fP Paint event +.RE +.PP + +.SS "void QwtKnob::resizeEvent (QResizeEvent *event)\fC [protected, virtual]\fP"Qt Resize Event +.PP +\fBParameters:\fP +.RS 4 +\fIevent\fP Resize event +.RE +.PP + +.SS "\fBQwtRoundScaleDraw\fP * QwtKnob::scaleDraw ()"\fBReturns:\fP +.RS 4 +the scale draw of the knob +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetScaleDraw()\fP +.RE +.PP + +.SS "const \fBQwtRoundScaleDraw\fP * QwtKnob::scaleDraw () const"\fBReturns:\fP +.RS 4 +the scale draw of the knob +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetScaleDraw()\fP +.RE +.PP + +.SS "void QwtKnob::setBorderWidth (intborderWidth)" +.PP +Set the knob's border width. \fBParameters:\fP +.RS 4 +\fIborderWidth\fP new border width +.RE +.PP + +.SS "void QwtKnob::setKnobStyle (\fBKnobStyle\fPknobStyle)" +.PP +Set the knob type. \fBParameters:\fP +.RS 4 +\fIknobStyle\fP Knob type +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBknobStyle()\fP, \fBsetBorderWidth()\fP +.RE +.PP + +.SS "void QwtKnob::setKnobWidth (intwidth)" +.PP +Change the knob's width. The specified width must be >= 5, or it will be clipped. +.PP +\fBParameters:\fP +.RS 4 +\fIwidth\fP New width +.RE +.PP + +.SS "void QwtKnob::setMarkerSize (intsize)" +.PP +Set the size of the marker. \fBSee also:\fP +.RS 4 +\fBmarkerSize()\fP, \fBmarkerStyle()\fP +.RE +.PP + +.SS "void QwtKnob::setMarkerStyle (\fBMarkerStyle\fPmarkerStyle)" +.PP +Set the marker type of the knob. \fBParameters:\fP +.RS 4 +\fImarkerStyle\fP Marker type +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBmarkerStyle()\fP, \fBsetMarkerSize()\fP +.RE +.PP + +.SS "void QwtKnob::setScaleDraw (\fBQwtRoundScaleDraw\fP *scaleDraw)"Change the scale draw of the knob +.PP +For changing the labels of the scales, it is necessary to derive from \fBQwtRoundScaleDraw\fP and overload \fBQwtRoundScaleDraw::label()\fP. +.PP +\fBSee also:\fP +.RS 4 +\fBscaleDraw()\fP +.RE +.PP + +.SS "void QwtKnob::setTotalAngle (doubleangle)" +.PP +Set the total angle by which the knob can be turned. \fBParameters:\fP +.RS 4 +\fIangle\fP Angle in degrees. +.RE +.PP +The default angle is 270 degrees. It is possible to specify an angle of more than 360 degrees so that the knob can be turned several times around its axis. +.SS "QSize QwtKnob::sizeHint () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +\fBminimumSizeHint()\fP +.RE +.PP + +.SS "double QwtKnob::totalAngle () const" +.PP +Return the total angle. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtLegend.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtLegend.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtLegend.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtLegend.3 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,279 @@ +.TH "QwtLegend" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtLegend \- +.PP +The legend widget. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBLegendItemMode\fP { \fBReadOnlyItem\fP, \fBClickableItem\fP, \fBCheckableItem\fP }" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtLegend\fP (QWidget *parent=NULL)" +.br +.ti -1c +.RI "virtual \fB~QwtLegend\fP ()" +.br +.ti -1c +.RI "void \fBsetItemMode\fP (\fBLegendItemMode\fP)" +.br +.ti -1c +.RI "\fBLegendItemMode\fP \fBitemMode\fP () const " +.br +.ti -1c +.RI "QWidget * \fBcontentsWidget\fP ()" +.br +.ti -1c +.RI "const QWidget * \fBcontentsWidget\fP () const " +.br +.ti -1c +.RI "void \fBinsert\fP (const \fBQwtLegendItemManager\fP *, QWidget *)" +.br +.ti -1c +.RI "void \fBremove\fP (const \fBQwtLegendItemManager\fP *)" +.br +.ti -1c +.RI "QWidget * \fBfind\fP (const \fBQwtLegendItemManager\fP *) const " +.br +.ti -1c +.RI "\fBQwtLegendItemManager\fP * \fBfind\fP (const QWidget *) const " +.br +.ti -1c +.RI "virtual QList< QWidget * > \fBlegendItems\fP () const " +.br +.ti -1c +.RI "void \fBclear\fP ()" +.br +.ti -1c +.RI "bool \fBisEmpty\fP () const " +.br +.ti -1c +.RI "uint \fBitemCount\fP () const " +.br +.ti -1c +.RI "virtual bool \fBeventFilter\fP (QObject *, QEvent *)" +.br +.ti -1c +.RI "virtual QSize \fBsizeHint\fP () const " +.br +.ti -1c +.RI "virtual int \fBheightForWidth\fP (int w) const " +.br +.ti -1c +.RI "QScrollBar * \fBhorizontalScrollBar\fP () const " +.br +.ti -1c +.RI "QScrollBar * \fBverticalScrollBar\fP () const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual void \fBlayoutContents\fP ()" +.br +.in -1c +.SH "Detailed Description" +.PP +The legend widget. + +The \fBQwtLegend\fP widget is a tabular arrangement of legend items. Legend items might be any type of widget, but in general they will be a \fBQwtLegendItem\fP. +.PP +\fBSee also:\fP +.RS 4 +\fBQwtLegendItem\fP, \fBQwtLegendItemManager\fP \fBQwtPlot\fP +.RE +.PP + +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtLegend::LegendItemMode\fP" +.PP +Interaction mode for the legend items. The default is \fBQwtLegend::ReadOnlyItem\fP. +.PP +\fBSee also:\fP +.RS 4 +\fBsetItemMode()\fP, \fBitemMode()\fP, QwtLegendItem::IdentifierMode \fBQwtLegendItem::clicked()\fP, \fBQwtLegendItem::checked()\fP, \fBQwtPlot::legendClicked()\fP, \fBQwtPlot::legendChecked()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIReadOnlyItem \fP\fP +The legend item is not interactive, like a label. +.TP +\fB\fIClickableItem \fP\fP +The legend item is clickable, like a push button. +.TP +\fB\fICheckableItem \fP\fP +The legend item is checkable, like a checkable button. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtLegend::QwtLegend (QWidget *parent = \fCNULL\fP)\fC [explicit]\fP"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fIparent\fP Parent widget +.RE +.PP + +.SS "QwtLegend::~QwtLegend ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "void QwtLegend::clear ()" +.PP +Remove all items. +.SS "QWidget * QwtLegend::contentsWidget ()"The contents widget is the only child of the viewport of the internal QScrollArea and the parent widget of all legend items. +.PP +\fBReturns:\fP +.RS 4 +Container widget of the legend items +.RE +.PP + +.SS "const QWidget * QwtLegend::contentsWidget () const"The contents widget is the only child of the viewport of the internal QScrollArea and the parent widget of all legend items. +.PP +\fBReturns:\fP +.RS 4 +Container widget of the legend items +.RE +.PP + +.SS "bool QwtLegend::eventFilter (QObject *object, QEvent *event)\fC [virtual]\fP"Handle QEvent::ChildRemoved andQEvent::LayoutRequest events for the \fBcontentsWidget()\fP. +.PP +\fBParameters:\fP +.RS 4 +\fIobject\fP Object to be filtered +.br +\fIevent\fP Event +.RE +.PP + +.SS "\fBQwtLegendItemManager\fP * QwtLegend::find (const QWidget *legendItem) const"Find the widget that represents a plot item +.PP +\fBParameters:\fP +.RS 4 +\fIlegendItem\fP Legend item +.RE +.PP +\fBReturns:\fP +.RS 4 +Widget on the legend, or NULL +.RE +.PP + +.SS "QWidget * QwtLegend::find (const \fBQwtLegendItemManager\fP *plotItem) const"Find the widget that represents a plot item +.PP +\fBParameters:\fP +.RS 4 +\fIplotItem\fP Plot item +.RE +.PP +\fBReturns:\fP +.RS 4 +Widget on the legend, or NULL +.RE +.PP + +.SS "int QwtLegend::heightForWidth (intwidth) const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +The preferred height, for the width w. +.RE +.PP +\fBParameters:\fP +.RS 4 +\fIwidth\fP Width +.RE +.PP + +.SS "QScrollBar * QwtLegend::horizontalScrollBar () const"\fBReturns:\fP +.RS 4 +Horizontal scrollbar +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBverticalScrollBar()\fP +.RE +.PP + +.SS "void QwtLegend::insert (const \fBQwtLegendItemManager\fP *plotItem, QWidget *legendItem)"Insert a new item for a plot item +.PP +\fBParameters:\fP +.RS 4 +\fIplotItem\fP Plot item +.br +\fIlegendItem\fP New legend item +.RE +.PP +\fBNote:\fP +.RS 4 +The parent of item will be changed to \fBcontentsWidget()\fP +.RE +.PP + +.SS "bool QwtLegend::isEmpty () const" +.PP +Return true, if there are no legend items. +.SS "uint QwtLegend::itemCount () const" +.PP +Return the number of legend items. +.SS "\fBQwtLegend::LegendItemMode\fP QwtLegend::itemMode () const"\fBSee also:\fP +.RS 4 +\fBLegendItemMode\fP +.RE +.PP + +.SS "void QwtLegend::layoutContents ()\fC [protected, virtual]\fP"Adjust contents widget and item layout to the size of the viewport(). +.SS "QList< QWidget * > QwtLegend::legendItems () const\fC [virtual]\fP" +.PP +Return a list of all legend items. +.SS "void QwtLegend::remove (const \fBQwtLegendItemManager\fP *plotItem)"Find the corresponding item for a plotItem and remove it from the item list. +.PP +\fBParameters:\fP +.RS 4 +\fIplotItem\fP Plot item +.RE +.PP + +.SS "void QwtLegend::setItemMode (\fBLegendItemMode\fPmode)"\fBSee also:\fP +.RS 4 +\fBLegendItemMode\fP +.RE +.PP + +.SS "QSize QwtLegend::sizeHint () const\fC [virtual]\fP" +.PP +Return a size hint. +.SS "QScrollBar * QwtLegend::verticalScrollBar () const"\fBReturns:\fP +.RS 4 +Vertical scrollbar +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBhorizontalScrollBar()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtLegendItem.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtLegendItem.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtLegendItem.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtLegendItem.3 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,284 @@ +.TH "QwtLegendItem" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtLegendItem \- +.PP +A widget representing something on a QwtLegend(). + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtTextLabel\fP. +.SS "Public Slots" + +.in +1c +.ti -1c +.RI "void \fBsetChecked\fP (bool on)" +.br +.in -1c +.SS "Signals" + +.in +1c +.ti -1c +.RI "void \fBclicked\fP ()" +.br +.ti -1c +.RI "void \fBpressed\fP ()" +.br +.ti -1c +.RI "void \fBreleased\fP ()" +.br +.ti -1c +.RI "void \fBchecked\fP (bool)" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtLegendItem\fP (QWidget *parent=0)" +.br +.ti -1c +.RI "virtual \fB~QwtLegendItem\fP ()" +.br +.ti -1c +.RI "void \fBsetItemMode\fP (\fBQwtLegend::LegendItemMode\fP)" +.br +.ti -1c +.RI "\fBQwtLegend::LegendItemMode\fP \fBitemMode\fP () const " +.br +.ti -1c +.RI "void \fBsetSpacing\fP (int spacing)" +.br +.ti -1c +.RI "int \fBspacing\fP () const " +.br +.ti -1c +.RI "virtual void \fBsetText\fP (const \fBQwtText\fP &)" +.br +.ti -1c +.RI "void \fBsetIdentifier\fP (const QPixmap &)" +.br +.ti -1c +.RI "QPixmap \fBidentifier\fP () const " +.br +.ti -1c +.RI "void \fBsetIdentifierSize\fP (const QSize &)" +.br +.ti -1c +.RI "QSize \fBidentifierSize\fP () const " +.br +.ti -1c +.RI "virtual QSize \fBsizeHint\fP () const " +.br +.ti -1c +.RI "bool \fBisChecked\fP () const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "void \fBsetDown\fP (bool)" +.br +.ti -1c +.RI "bool \fBisDown\fP () const " +.br +.ti -1c +.RI "virtual void \fBpaintEvent\fP (QPaintEvent *)" +.br +.ti -1c +.RI "virtual void \fBmousePressEvent\fP (QMouseEvent *)" +.br +.ti -1c +.RI "virtual void \fBmouseReleaseEvent\fP (QMouseEvent *)" +.br +.ti -1c +.RI "virtual void \fBkeyPressEvent\fP (QKeyEvent *)" +.br +.ti -1c +.RI "virtual void \fBkeyReleaseEvent\fP (QKeyEvent *)" +.br +.in -1c +.SH "Detailed Description" +.PP +A widget representing something on a QwtLegend(). +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtLegendItem::QwtLegendItem (QWidget *parent = \fC0\fP)\fC [explicit]\fP"\fBParameters:\fP +.RS 4 +\fIparent\fP Parent widget +.RE +.PP + +.SS "QwtLegendItem::~QwtLegendItem ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "void QwtLegendItem::checked (bool)\fC [signal]\fP" +.PP +Signal, when the legend item has been toggled. +.SS "void QwtLegendItem::clicked ()\fC [signal]\fP" +.PP +Signal, when the legend item has been clicked. +.SS "QPixmap QwtLegendItem::identifier () const"\fBReturns:\fP +.RS 4 +pixmap representing a plot item +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetIdentifier()\fP +.RE +.PP + +.SS "QSize QwtLegendItem::identifierSize () const"Return the width of the identifier +.PP +\fBSee also:\fP +.RS 4 +\fBsetIdentifierSize()\fP +.RE +.PP + +.SS "bool QwtLegendItem::isChecked () const" +.PP +Return true, if the item is checked. +.SS "bool QwtLegendItem::isDown () const\fC [protected]\fP" +.PP +Return true, if the item is down. +.SS "\fBQwtLegend::LegendItemMode\fP QwtLegendItem::itemMode () const"Return the item mode +.PP +\fBSee also:\fP +.RS 4 +\fBsetItemMode()\fP +.RE +.PP + +.SS "void QwtLegendItem::keyPressEvent (QKeyEvent *e)\fC [protected, virtual]\fP" +.PP +Handle key press events. +.SS "void QwtLegendItem::keyReleaseEvent (QKeyEvent *e)\fC [protected, virtual]\fP" +.PP +Handle key release events. +.SS "void QwtLegendItem::mousePressEvent (QMouseEvent *e)\fC [protected, virtual]\fP" +.PP +Handle mouse press events. +.SS "void QwtLegendItem::mouseReleaseEvent (QMouseEvent *e)\fC [protected, virtual]\fP" +.PP +Handle mouse release events. +.SS "void QwtLegendItem::paintEvent (QPaintEvent *e)\fC [protected, virtual]\fP" +.PP +Paint event. +.PP +Reimplemented from \fBQwtTextLabel\fP. +.SS "void QwtLegendItem::pressed ()\fC [signal]\fP" +.PP +Signal, when the legend item has been pressed. +.SS "void QwtLegendItem::released ()\fC [signal]\fP" +.PP +Signal, when the legend item has been relased. +.SS "void QwtLegendItem::setChecked (boolon)\fC [slot]\fP"Check/Uncheck a the item +.PP +\fBParameters:\fP +.RS 4 +\fIon\fP check/uncheck +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetItemMode()\fP +.RE +.PP + +.SS "void QwtLegendItem::setDown (booldown)\fC [protected]\fP" +.PP +Set the item being down. +.SS "void QwtLegendItem::setIdentifier (const QPixmap &identifier)"Assign the identifier The identifier needs to be created according to the identifierWidth() +.PP +\fBParameters:\fP +.RS 4 +\fIidentifier\fP Pixmap representing a plot item +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBidentifier()\fP, identifierWidth() +.RE +.PP + +.SS "void QwtLegendItem::setIdentifierSize (const QSize &size)"Set the size for the identifier Default is 8x8 pixels +.PP +\fBParameters:\fP +.RS 4 +\fIsize\fP New size +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBidentifierSize()\fP +.RE +.PP + +.SS "void QwtLegendItem::setItemMode (\fBQwtLegend::LegendItemMode\fPmode)"Set the item mode The default is \fBQwtLegend::ReadOnlyItem\fP +.PP +\fBParameters:\fP +.RS 4 +\fImode\fP Item mode +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBitemMode()\fP +.RE +.PP + +.SS "void QwtLegendItem::setSpacing (intspacing)"Change the spacing +.PP +\fBParameters:\fP +.RS 4 +\fIspacing\fP Spacing +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBspacing()\fP, identifierWidth(), \fBQwtTextLabel::margin()\fP +.RE +.PP + +.SS "void QwtLegendItem::setText (const \fBQwtText\fP &text)\fC [virtual]\fP"Set the text to the legend item +.PP +\fBParameters:\fP +.RS 4 +\fItext\fP Text label +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtTextLabel::text()\fP +.RE +.PP + +.PP +Reimplemented from \fBQwtTextLabel\fP. +.SS "QSize QwtLegendItem::sizeHint () const\fC [virtual]\fP" +.PP +Return a size hint. +.PP +Reimplemented from \fBQwtTextLabel\fP. +.SS "int QwtLegendItem::spacing () const"Return the spacing +.PP +\fBSee also:\fP +.RS 4 +\fBsetSpacing()\fP, identifierWidth(), \fBQwtTextLabel::margin()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtLegendItemManager.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtLegendItemManager.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtLegendItemManager.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtLegendItemManager.3 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,86 @@ +.TH "QwtLegendItemManager" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtLegendItemManager \- +.PP +Abstract API to bind plot items to the legend. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherited by \fBQwtPlotItem\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtLegendItemManager\fP ()" +.br +.ti -1c +.RI "virtual \fB~QwtLegendItemManager\fP ()" +.br +.ti -1c +.RI "virtual void \fBupdateLegend\fP (\fBQwtLegend\fP *legend) const =0" +.br +.ti -1c +.RI "virtual QWidget * \fBlegendItem\fP () const =0" +.br +.ti -1c +.RI "virtual void \fBdrawLegendIdentifier\fP (QPainter *, const QRectF &) const " +.br +.in -1c +.SH "Detailed Description" +.PP +Abstract API to bind plot items to the legend. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtLegendItemManager::QwtLegendItemManager ()\fC [inline]\fP" +.PP +Constructor. +.SS "virtual QwtLegendItemManager::~QwtLegendItemManager ()\fC [inline, virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "virtual void QwtLegendItemManager::drawLegendIdentifier (QPainter *, const QRectF &) const\fC [inline, virtual]\fP"\fBQwtLegendItem\fP can display an icon-identifier followed by a text. The icon helps to identify a plot item on the plot canvas and depends on the type of information, that is displayed. +.PP +The default implementation paints nothing. +.PP +Reimplemented in \fBQwtPlotCurve\fP, \fBQwtPlotHistogram\fP, \fBQwtPlotIntervalCurve\fP, and \fBQwtPlotMarker\fP. +.SS "virtual QWidget* QwtLegendItemManager::legendItem () const\fC [pure virtual]\fP"Allocate the widget that represents the item on the legend +.PP +\fBReturns:\fP +.RS 4 +Allocated widget +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBupdateLegend()\fP QwtLegend() +.RE +.PP + +.PP +Implemented in \fBQwtPlotItem\fP. +.SS "virtual void QwtLegendItemManager::updateLegend (\fBQwtLegend\fP *legend) const\fC [pure virtual]\fP"Update the widget that represents the item on the legend +.PP +\fBParameters:\fP +.RS 4 +\fIlegend\fP Legend +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBlegendItem()\fP +.RE +.PP + +.PP +Implemented in \fBQwtPlotCurve\fP, \fBQwtPlotItem\fP, and \fBQwtPlotMarker\fP. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/qwtlicense.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/qwtlicense.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/qwtlicense.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/qwtlicense.3 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,556 @@ +.TH "qwtlicense" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +qwtlicense \- .TH "qwtlicense" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +qwtlicense \- .PP +.nf + Qwt License + Version 1.0, January 1, 2003 + +The Qwt library and included programs are provided under the terms +of the GNU LESSER GENERAL PUBLIC LICENSE (LGPL) with the following +exceptions: + + 1. Widgets that are subclassed from Qwt widgets do not + constitute a derivative work. + + 2. Static linking of applications and widgets to the + Qwt library does not constitute a derivative work + and does not require the author to provide source + code for the application or widget, use the shared + Qwt libraries, or link their applications or + widgets against a user-supplied version of Qwt. + + If you link the application or widget to a modified + version of Qwt, then the changes to Qwt must be + provided under the terms of the LGPL in sections + 1, 2, and 4. + + 3. You do not have to provide a copy of the Qwt license + with programs that are linked to the Qwt library, nor + do you have to identify the Qwt license in your + program or documentation as required by section 6 + of the LGPL. + + + However, programs must still identify their use of Qwt. + The following example statement can be included in user + documentation to satisfy this requirement: + + [program/widget] is based in part on the work of + the Qwt project (http://qwt.sf.net). + +---------------------------------------------------------------------- + + + GNU LESSER GENERAL PUBLIC LICENSE + Version 2.1, February 1999 + + Copyright (C) 1991, 1999 Free Software Foundation, Inc. + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + +[This is the first released version of the Lesser GPL. It also counts + as the successor of the GNU Library Public License, version 2, hence + the version number 2.1.] + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +Licenses are intended to guarantee your freedom to share and change +free software--to make sure the software is free for all its users. + + This license, the Lesser General Public License, applies to some +specially designated software packages--typically libraries--of the +Free Software Foundation and other authors who decide to use it. You +can use it too, but we suggest you first think carefully about whether +this license or the ordinary General Public License is the better +strategy to use in any particular case, based on the explanations below. + + When we speak of free software, we are referring to freedom of use, +not price. Our General Public Licenses are designed to make sure that +you have the freedom to distribute copies of free software (and charge +for this service if you wish); that you receive source code or can get +it if you want it; that you can change the software and use pieces of +it in new free programs; and that you are informed that you can do +these things. + + To protect your rights, we need to make restrictions that forbid +distributors to deny you these rights or to ask you to surrender these +rights. These restrictions translate to certain responsibilities for +you if you distribute copies of the library or if you modify it. + + For example, if you distribute copies of the library, whether gratis +or for a fee, you must give the recipients all the rights that we gave +you. You must make sure that they, too, receive or can get the source +code. If you link other code with the library, you must provide +complete object files to the recipients, so that they can relink them +with the library after making changes to the library and recompiling +it. And you must show them these terms so they know their rights. + + We protect your rights with a two-step method: (1) we copyright the +library, and (2) we offer you this license, which gives you legal +permission to copy, distribute and/or modify the library. + + To protect each distributor, we want to make it very clear that +there is no warranty for the free library. Also, if the library is +modified by someone else and passed on, the recipients should know +that what they have is not the original version, so that the original +author's reputation will not be affected by problems that might be +introduced by others. + + Finally, software patents pose a constant threat to the existence of +any free program. We wish to make sure that a company cannot +effectively restrict the users of a free program by obtaining a +restrictive license from a patent holder. Therefore, we insist that +any patent license obtained for a version of the library must be +consistent with the full freedom of use specified in this license. + + Most GNU software, including some libraries, is covered by the +ordinary GNU General Public License. This license, the GNU Lesser +General Public License, applies to certain designated libraries, and +is quite different from the ordinary General Public License. We use +this license for certain libraries in order to permit linking those +libraries into non-free programs. + + When a program is linked with a library, whether statically or using +a shared library, the combination of the two is legally speaking a +combined work, a derivative of the original library. The ordinary +General Public License therefore permits such linking only if the +entire combination fits its criteria of freedom. The Lesser General +Public License permits more lax criteria for linking other code with +the library. + + We call this license the 'Lesser' General Public License because it +does Less to protect the user's freedom than the ordinary General +Public License. It also provides other free software developers Less +of an advantage over competing non-free programs. These disadvantages +are the reason we use the ordinary General Public License for many +libraries. However, the Lesser license provides advantages in certain +special circumstances. + + For example, on rare occasions, there may be a special need to +encourage the widest possible use of a certain library, so that it becomes +a de-facto standard. To achieve this, non-free programs must be +allowed to use the library. A more frequent case is that a free +library does the same job as widely used non-free libraries. In this +case, there is little to gain by limiting the free library to free +software only, so we use the Lesser General Public License. + + In other cases, permission to use a particular library in non-free +programs enables a greater number of people to use a large body of +free software. For example, permission to use the GNU C Library in +non-free programs enables many more people to use the whole GNU +operating system, as well as its variant, the GNU/Linux operating +system. + + Although the Lesser General Public License is Less protective of the +users' freedom, it does ensure that the user of a program that is +linked with the Library has the freedom and the wherewithal to run +that program using a modified version of the Library. + + The precise terms and conditions for copying, distribution and +modification follow. Pay close attention to the difference between a +'work based on the library' and a 'work that uses the library'. The +former contains code derived from the library, whereas the latter must +be combined with the library in order to run. + + GNU LESSER GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License Agreement applies to any software library or other +program which contains a notice placed by the copyright holder or +other authorized party saying it may be distributed under the terms of +this Lesser General Public License (also called 'this License'). +Each licensee is addressed as 'you'. + + A 'library' means a collection of software functions and/or data +prepared so as to be conveniently linked with application programs +(which use some of those functions and data) to form executables. + + The 'Library', below, refers to any such software library or work +which has been distributed under these terms. A 'work based on the +Library' means either the Library or any derivative work under +copyright law: that is to say, a work containing the Library or a +portion of it, either verbatim or with modifications and/or translated +straightforwardly into another language. (Hereinafter, translation is +included without limitation in the term 'modification'.) + + 'Source code' for a work means the preferred form of the work for +making modifications to it. For a library, complete source code means +all the source code for all modules it contains, plus any associated +interface definition files, plus the scripts used to control compilation +and installation of the library. + + Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running a program using the Library is not restricted, and output from +such a program is covered only if its contents constitute a work based +on the Library (independent of the use of the Library in a tool for +writing it). Whether that is true depends on what the Library does +and what the program that uses the Library does. + + 1. You may copy and distribute verbatim copies of the Library's +complete source code as you receive it, in any medium, provided that +you conspicuously and appropriately publish on each copy an +appropriate copyright notice and disclaimer of warranty; keep intact +all the notices that refer to this License and to the absence of any +warranty; and distribute a copy of this License along with the +Library. + + You may charge a fee for the physical act of transferring a copy, +and you may at your option offer warranty protection in exchange for a +fee. + + 2. You may modify your copy or copies of the Library or any portion +of it, thus forming a work based on the Library, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) The modified work must itself be a software library. + + b) You must cause the files modified to carry prominent notices + stating that you changed the files and the date of any change. + + c) You must cause the whole of the work to be licensed at no + charge to all third parties under the terms of this License. + + d) If a facility in the modified Library refers to a function or a + table of data to be supplied by an application program that uses + the facility, other than as an argument passed when the facility + is invoked, then you must make a good faith effort to ensure that, + in the event an application does not supply such function or + table, the facility still operates, and performs whatever part of + its purpose remains meaningful. + + (For example, a function in a library to compute square roots has + a purpose that is entirely well-defined independent of the + application. Therefore, Subsection 2d requires that any + application-supplied function or table used by this function must + be optional: if the application does not supply it, the square + root function must still compute square roots.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Library, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Library, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote +it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Library. + +In addition, mere aggregation of another work not based on the Library +with the Library (or with a work based on the Library) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may opt to apply the terms of the ordinary GNU General Public +License instead of this License to a given copy of the Library. To do +this, you must alter all the notices that refer to this License, so +that they refer to the ordinary GNU General Public License, version 2, +instead of to this License. (If a newer version than version 2 of the +ordinary GNU General Public License has appeared, then you can specify +that version instead if you wish.) Do not make any other change in +these notices. + + Once this change is made in a given copy, it is irreversible for +that copy, so the ordinary GNU General Public License applies to all +subsequent copies and derivative works made from that copy. + + This option is useful when you wish to copy part of the code of +the Library into a program that is not a library. + + 4. You may copy and distribute the Library (or a portion or +derivative of it, under Section 2) in object code or executable form +under the terms of Sections 1 and 2 above provided that you accompany +it with the complete corresponding machine-readable source code, which +must be distributed under the terms of Sections 1 and 2 above on a +medium customarily used for software interchange. + + If distribution of object code is made by offering access to copy +from a designated place, then offering equivalent access to copy the +source code from the same place satisfies the requirement to +distribute the source code, even though third parties are not +compelled to copy the source along with the object code. + + 5. A program that contains no derivative of any portion of the +Library, but is designed to work with the Library by being compiled or +linked with it, is called a 'work that uses the Library'. Such a +work, in isolation, is not a derivative work of the Library, and +therefore falls outside the scope of this License. + + However, linking a 'work that uses the Library' with the Library +creates an executable that is a derivative of the Library (because it +contains portions of the Library), rather than a 'work that uses the +library'. The executable is therefore covered by this License. +Section 6 states terms for distribution of such executables. + + When a 'work that uses the Library' uses material from a header file +that is part of the Library, the object code for the work may be a +derivative work of the Library even though the source code is not. +Whether this is true is especially significant if the work can be +linked without the Library, or if the work is itself a library. The +threshold for this to be true is not precisely defined by law. + + If such an object file uses only numerical parameters, data +structure layouts and accessors, and small macros and small inline +functions (ten lines or less in length), then the use of the object +file is unrestricted, regardless of whether it is legally a derivative +work. (Executables containing this object code plus portions of the +Library will still fall under Section 6.) + + Otherwise, if the work is a derivative of the Library, you may +distribute the object code for the work under the terms of Section 6. +Any executables containing that work also fall under Section 6, +whether or not they are linked directly with the Library itself. + + 6. As an exception to the Sections above, you may also combine or +link a 'work that uses the Library' with the Library to produce a +work containing portions of the Library, and distribute that work +under terms of your choice, provided that the terms permit +modification of the work for the customer's own use and reverse +engineering for debugging such modifications. + + You must give prominent notice with each copy of the work that the +Library is used in it and that the Library and its use are covered by +this License. You must supply a copy of this License. If the work +during execution displays copyright notices, you must include the +copyright notice for the Library among them, as well as a reference +directing the user to the copy of this License. Also, you must do one +of these things: + + a) Accompany the work with the complete corresponding + machine-readable source code for the Library including whatever + changes were used in the work (which must be distributed under + Sections 1 and 2 above); and, if the work is an executable linked + with the Library, with the complete machine-readable 'work that + uses the Library', as object code and/or source code, so that the + user can modify the Library and then relink to produce a modified + executable containing the modified Library. (It is understood + that the user who changes the contents of definitions files in the + Library will not necessarily be able to recompile the application + to use the modified definitions.) + + b) Use a suitable shared library mechanism for linking with the + Library. A suitable mechanism is one that (1) uses at run time a + copy of the library already present on the user's computer system, + rather than copying library functions into the executable, and (2) + will operate properly with a modified version of the library, if + the user installs one, as long as the modified version is + interface-compatible with the version that the work was made with. + + c) Accompany the work with a written offer, valid for at + least three years, to give the same user the materials + specified in Subsection 6a, above, for a charge no more + than the cost of performing this distribution. + + d) If distribution of the work is made by offering access to copy + from a designated place, offer equivalent access to copy the above + specified materials from the same place. + + e) Verify that the user has already received a copy of these + materials or that you have already sent this user a copy. + + For an executable, the required form of the 'work that uses the +Library' must include any data and utility programs needed for +reproducing the executable from it. However, as a special exception, +the materials to be distributed need not include anything that is +normally distributed (in either source or binary form) with the major +components (compiler, kernel, and so on) of the operating system on +which the executable runs, unless that component itself accompanies +the executable. + + It may happen that this requirement contradicts the license +restrictions of other proprietary libraries that do not normally +accompany the operating system. Such a contradiction means you cannot +use both them and the Library together in an executable that you +distribute. + + 7. You may place library facilities that are a work based on the +Library side-by-side in a single library together with other library +facilities not covered by this License, and distribute such a combined +library, provided that the separate distribution of the work based on +the Library and of the other library facilities is otherwise +permitted, and provided that you do these two things: + + a) Accompany the combined library with a copy of the same work + based on the Library, uncombined with any other library + facilities. This must be distributed under the terms of the + Sections above. + + b) Give prominent notice with the combined library of the fact + that part of it is a work based on the Library, and explaining + where to find the accompanying uncombined form of the same work. + + 8. You may not copy, modify, sublicense, link with, or distribute +the Library except as expressly provided under this License. Any +attempt otherwise to copy, modify, sublicense, link with, or +distribute the Library is void, and will automatically terminate your +rights under this License. However, parties who have received copies, +or rights, from you under this License will not have their licenses +terminated so long as such parties remain in full compliance. + + 9. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Library or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Library (or any work based on the +Library), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Library or works based on it. + + 10. Each time you redistribute the Library (or any work based on the +Library), the recipient automatically receives a license from the +original licensor to copy, distribute, link with or modify the Library +subject to these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties with +this License. + + 11. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Library at all. For example, if a patent +license would not permit royalty-free redistribution of the Library by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Library. + +If any portion of this section is held invalid or unenforceable under any +particular circumstance, the balance of the section is intended to apply, +and the section as a whole is intended to apply in other circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 12. If the distribution and/or use of the Library is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Library under this License may add +an explicit geographical distribution limitation excluding those countries, +so that distribution is permitted only in or among countries not thus +excluded. In such case, this License incorporates the limitation as if +written in the body of this License. + + 13. The Free Software Foundation may publish revised and/or new +versions of the Lesser General Public License from time to time. +Such new versions will be similar in spirit to the present version, +but may differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Library +specifies a version number of this License which applies to it and +'any later version', you have the option of following the terms and +conditions either of that version or of any later version published by +the Free Software Foundation. If the Library does not specify a +license version number, you may choose any version ever published by +the Free Software Foundation. + + 14. If you wish to incorporate parts of the Library into other free +programs whose distribution conditions are incompatible with these, +write to the author to ask for permission. For software which is +copyrighted by the Free Software Foundation, write to the Free +Software Foundation; we sometimes make exceptions for this. Our +decision will be guided by the two goals of preserving the free status +of all derivatives of our free software and of promoting the sharing +and reuse of software generally. + + NO WARRANTY + + 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO +WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. +EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR +OTHER PARTIES PROVIDE THE LIBRARY 'AS IS' WITHOUT WARRANTY OF ANY +KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE +LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME +THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN +WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY +AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU +FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR +CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE +LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING +RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A +FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF +SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Libraries + + If you develop a new library, and you want it to be of the greatest +possible use to the public, we recommend making it free software that +everyone can redistribute and change. You can do so by permitting +redistribution under these terms (or, alternatively, under the terms of the +ordinary General Public License). + + To apply these terms, attach the following notices to the library. It is +safest to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least the +'copyright' line and a pointer to where the full notice is found. + + + Copyright (C) + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + +Also add information on how to contact you by electronic and paper mail. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a 'copyright disclaimer' for the library, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the + library `Frob' (a library for tweaking knobs) written by James Random Hacker. + + , 1 April 1990 + Ty Coon, President of Vice + +That's all there is to it! + + +.fi +.PP + diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtLinearColorMap.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtLinearColorMap.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtLinearColorMap.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtLinearColorMap.3 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,214 @@ +.TH "QwtLinearColorMap" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtLinearColorMap \- +.PP +\fBQwtLinearColorMap\fP builds a color map from color stops. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtColorMap\fP. +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBMode\fP { \fBFixedColors\fP, \fBScaledColors\fP }" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtLinearColorMap\fP (\fBQwtColorMap::Format\fP=QwtColorMap::RGB)" +.br +.ti -1c +.RI "\fBQwtLinearColorMap\fP (const QColor &from, const QColor &to, \fBQwtColorMap::Format\fP=QwtColorMap::RGB)" +.br +.ti -1c +.RI "virtual \fB~QwtLinearColorMap\fP ()" +.br +.ti -1c +.RI "void \fBsetMode\fP (\fBMode\fP)" +.br +.ti -1c +.RI "\fBMode\fP \fBmode\fP () const " +.br +.ti -1c +.RI "void \fBsetColorInterval\fP (const QColor &color1, const QColor &color2)" +.br +.ti -1c +.RI "void \fBaddColorStop\fP (double value, const QColor &)" +.br +.ti -1c +.RI "QVector< double > \fBcolorStops\fP () const " +.br +.ti -1c +.RI "QColor \fBcolor1\fP () const " +.br +.ti -1c +.RI "QColor \fBcolor2\fP () const " +.br +.ti -1c +.RI "virtual QRgb \fBrgb\fP (const \fBQwtInterval\fP &, double value) const " +.br +.ti -1c +.RI "virtual unsigned char \fBcolorIndex\fP (const \fBQwtInterval\fP &, double value) const " +.br +.in -1c +.SH "Detailed Description" +.PP +\fBQwtLinearColorMap\fP builds a color map from color stops. + +A color stop is a color at a specific position. The valid range for the positions is [0.0, 1.0]. When mapping a value into a color it is translated into this interval according to \fBmode()\fP. +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtLinearColorMap::Mode\fP"Mode of color map +.PP +\fBSee also:\fP +.RS 4 +\fBsetMode()\fP, \fBmode()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIFixedColors \fP\fP +Return the color from the next lower color stop. +.TP +\fB\fIScaledColors \fP\fP +Interpolating the colors of the adjacent stops. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtLinearColorMap::QwtLinearColorMap (\fBQwtColorMap::Format\fPformat = \fCQwtColorMap::RGB\fP)"Build a color map with two stops at 0.0 and 1.0. The color at 0.0 is Qt::blue, at 1.0 it is Qt::yellow. +.PP +\fBParameters:\fP +.RS 4 +\fIformat\fP Preferred format of the color map +.RE +.PP + +.SS "QwtLinearColorMap::QwtLinearColorMap (const QColor &color1, const QColor &color2, \fBQwtColorMap::Format\fPformat = \fCQwtColorMap::RGB\fP)"Build a color map with two stops at 0.0 and 1.0. +.PP +\fBParameters:\fP +.RS 4 +\fIcolor1\fP Color used for the minimum value of the value interval +.br +\fIcolor2\fP Color used for the maximum value of the value interval +.br +\fIformat\fP Preferred format of the coor map +.RE +.PP + +.SS "QwtLinearColorMap::~QwtLinearColorMap ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "void QwtLinearColorMap::addColorStop (doublevalue, const QColor &color)"Add a color stop +.PP +The value has to be in the range [0.0, 1.0]. F.e. a stop at position 17.0 for a range [10.0,20.0] must be passed as: (17.0 - 10.0) / (20.0 - 10.0) +.PP +\fBParameters:\fP +.RS 4 +\fIvalue\fP Value between [0.0, 1.0] +.br +\fIcolor\fP Color stop +.RE +.PP + +.SS "QColor QwtLinearColorMap::color1 () const"\fBReturns:\fP +.RS 4 +the first color of the color range +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetColorInterval()\fP +.RE +.PP + +.SS "QColor QwtLinearColorMap::color2 () const"\fBReturns:\fP +.RS 4 +the second color of the color range +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetColorInterval()\fP +.RE +.PP + +.SS "unsigned char QwtLinearColorMap::colorIndex (const \fBQwtInterval\fP &interval, doublevalue) const\fC [virtual]\fP"Map a value of a given interval into a color index, between 0 and 255 +.PP +\fBParameters:\fP +.RS 4 +\fIinterval\fP Range for all values +.br +\fIvalue\fP Value to map into a color index +.RE +.PP + +.PP +Implements \fBQwtColorMap\fP. +.SS "QVector< double > QwtLinearColorMap::colorStops () const"Return all positions of color stops in increasing order +.SS "\fBQwtLinearColorMap::Mode\fP QwtLinearColorMap::mode () const"\fBReturns:\fP +.RS 4 +Mode of the color map +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetMode()\fP +.RE +.PP + +.SS "QRgb QwtLinearColorMap::rgb (const \fBQwtInterval\fP &interval, doublevalue) const\fC [virtual]\fP"Map a value of a given interval into a rgb value +.PP +\fBParameters:\fP +.RS 4 +\fIinterval\fP Range for all values +.br +\fIvalue\fP Value to map into a rgb value +.RE +.PP + +.PP +Implements \fBQwtColorMap\fP. +.SS "void QwtLinearColorMap::setColorInterval (const QColor &color1, const QColor &color2)"Set the color range +.PP +Add stops at 0.0 and 1.0. +.PP +\fBParameters:\fP +.RS 4 +\fIcolor1\fP Color used for the minimum value of the value interval +.br +\fIcolor2\fP Color used for the maximum value of the value interval +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBcolor1()\fP, \fBcolor2()\fP +.RE +.PP + +.SS "void QwtLinearColorMap::setMode (\fBMode\fPmode)" +.PP +Set the mode of the color map. FixedColors means the color is calculated from the next lower color stop. ScaledColors means the color is calculated by interpolating the colors of the adjacent stops. +.PP +\fBSee also:\fP +.RS 4 +\fBmode()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtLinearScaleEngine.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtLinearScaleEngine.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtLinearScaleEngine.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtLinearScaleEngine.3 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,169 @@ +.TH "QwtLinearScaleEngine" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtLinearScaleEngine \- +.PP +A scale engine for linear scales. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtScaleEngine\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "virtual void \fBautoScale\fP (int maxSteps, double &x1, double &x2, double &stepSize) const " +.br +.ti -1c +.RI "virtual \fBQwtScaleDiv\fP \fBdivideScale\fP (double x1, double x2, int numMajorSteps, int numMinorSteps, double stepSize=0.0) const " +.br +.ti -1c +.RI "virtual \fBQwtScaleTransformation\fP * \fBtransformation\fP () const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtInterval\fP \fBalign\fP (const \fBQwtInterval\fP &, double stepSize) const " +.br +.ti -1c +.RI "void \fBbuildTicks\fP (const \fBQwtInterval\fP &, double stepSize, int maxMinSteps, QList< double > ticks[QwtScaleDiv::NTickTypes]) const " +.br +.ti -1c +.RI "QList< double > \fBbuildMajorTicks\fP (const \fBQwtInterval\fP &interval, double stepSize) const " +.br +.ti -1c +.RI "void \fBbuildMinorTicks\fP (const QList< double > &majorTicks, int maxMinMark, double step, QList< double > &, QList< double > &) const " +.br +.in -1c +.SH "Detailed Description" +.PP +A scale engine for linear scales. + +The step size will fit into the pattern $\left\{ 1,2,5\right\} \cdot 10^{n}$, where n is an integer. +.SH "Member Function Documentation" +.PP +.SS "\fBQwtInterval\fP QwtLinearScaleEngine::align (const \fBQwtInterval\fP &interval, doublestepSize) const\fC [protected]\fP" +.PP +Align an interval to a step size. The limits of an interval are aligned that both are integer multiples of the step size. +.PP +\fBParameters:\fP +.RS 4 +\fIinterval\fP Interval +.br +\fIstepSize\fP Step size +.RE +.PP +\fBReturns:\fP +.RS 4 +Aligned interval +.RE +.PP + +.SS "void QwtLinearScaleEngine::autoScale (intmaxNumSteps, double &x1, double &x2, double &stepSize) const\fC [virtual]\fP"Align and divide an interval +.PP +\fBParameters:\fP +.RS 4 +\fImaxNumSteps\fP Max. number of steps +.br +\fIx1\fP First limit of the interval (In/Out) +.br +\fIx2\fP Second limit of the interval (In/Out) +.br +\fIstepSize\fP Step size (Out) +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetAttribute()\fP +.RE +.PP + +.PP +Implements \fBQwtScaleEngine\fP. +.SS "QList< double > QwtLinearScaleEngine::buildMajorTicks (const \fBQwtInterval\fP &interval, doublestepSize) const\fC [protected]\fP" +.PP +Calculate major ticks for an interval. \fBParameters:\fP +.RS 4 +\fIinterval\fP Interval +.br +\fIstepSize\fP Step size +.RE +.PP +\fBReturns:\fP +.RS 4 +Calculated ticks +.RE +.PP + +.SS "void QwtLinearScaleEngine::buildMinorTicks (const QList< double > &majorTicks, intmaxMinSteps, doublestepSize, QList< double > &minorTicks, QList< double > &mediumTicks) const\fC [protected]\fP" +.PP +Calculate minor/medium ticks for major ticks. \fBParameters:\fP +.RS 4 +\fImajorTicks\fP Major ticks +.br +\fImaxMinSteps\fP Maximum number of minor steps +.br +\fIstepSize\fP Step size +.br +\fIminorTicks\fP Array to be filled with the calculated minor ticks +.br +\fImediumTicks\fP Array to be filled with the calculated medium ticks +.RE +.PP + +.SS "void QwtLinearScaleEngine::buildTicks (const \fBQwtInterval\fP &interval, doublestepSize, intmaxMinSteps, QList< double >ticks[QwtScaleDiv::NTickTypes]) const\fC [protected]\fP" +.PP +Calculate ticks for an interval. \fBParameters:\fP +.RS 4 +\fIinterval\fP Interval +.br +\fIstepSize\fP Step size +.br +\fImaxMinSteps\fP Maximum number of minor steps +.br +\fIticks\fP Arrays to be filled with the calculated ticks +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBbuildMajorTicks()\fP, \fBbuildMinorTicks\fP +.RE +.PP + +.SS "\fBQwtScaleDiv\fP QwtLinearScaleEngine::divideScale (doublex1, doublex2, intmaxMajSteps, intmaxMinSteps, doublestepSize = \fC0.0\fP) const\fC [virtual]\fP" +.PP +Calculate a scale division. \fBParameters:\fP +.RS 4 +\fIx1\fP First interval limit +.br +\fIx2\fP Second interval limit +.br +\fImaxMajSteps\fP Maximum for the number of major steps +.br +\fImaxMinSteps\fP Maximum number of minor steps +.br +\fIstepSize\fP Step size. If stepSize == 0, the scaleEngine calculates one. +.RE +.PP +\fBSee also:\fP +.RS 4 +QwtScaleEngine::stepSize(), QwtScaleEngine::subDivide() +.RE +.PP + +.PP +Implements \fBQwtScaleEngine\fP. +.SS "\fBQwtScaleTransformation\fP * QwtLinearScaleEngine::transformation () const\fC [virtual]\fP"Return a transformation, for linear scales +.PP +Implements \fBQwtScaleEngine\fP. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtLog10ScaleEngine.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtLog10ScaleEngine.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtLog10ScaleEngine.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtLog10ScaleEngine.3 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,180 @@ +.TH "QwtLog10ScaleEngine" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtLog10ScaleEngine \- +.PP +A scale engine for logarithmic (base 10) scales. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtScaleEngine\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "virtual void \fBautoScale\fP (int maxSteps, double &x1, double &x2, double &stepSize) const " +.br +.ti -1c +.RI "virtual \fBQwtScaleDiv\fP \fBdivideScale\fP (double x1, double x2, int numMajorSteps, int numMinorSteps, double stepSize=0.0) const " +.br +.ti -1c +.RI "virtual \fBQwtScaleTransformation\fP * \fBtransformation\fP () const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtInterval\fP \fBlog10\fP (const \fBQwtInterval\fP &) const " +.br +.ti -1c +.RI "\fBQwtInterval\fP \fBpow10\fP (const \fBQwtInterval\fP &) const " +.br +.ti -1c +.RI "\fBQwtInterval\fP \fBalign\fP (const \fBQwtInterval\fP &, double stepSize) const " +.br +.ti -1c +.RI "void \fBbuildTicks\fP (const \fBQwtInterval\fP &, double stepSize, int maxMinSteps, QList< double > ticks[QwtScaleDiv::NTickTypes]) const " +.br +.ti -1c +.RI "QList< double > \fBbuildMajorTicks\fP (const \fBQwtInterval\fP &interval, double stepSize) const " +.br +.ti -1c +.RI "QList< double > \fBbuildMinorTicks\fP (const QList< double > &majorTicks, int maxMinMark, double step) const " +.br +.in -1c +.SH "Detailed Description" +.PP +A scale engine for logarithmic (base 10) scales. + +The step size is measured in *decades* and the major step size will be adjusted to fit the pattern $\left\{ 1,2,3,5\right\} \cdot 10^{n}$, where n is a natural number including zero. +.PP +\fBWarning:\fP +.RS 4 +the step size as well as the margins are measured in *decades*. +.RE +.PP + +.SH "Member Function Documentation" +.PP +.SS "\fBQwtInterval\fP QwtLog10ScaleEngine::align (const \fBQwtInterval\fP &interval, doublestepSize) const\fC [protected]\fP" +.PP +Align an interval to a step size. The limits of an interval are aligned that both are integer multiples of the step size. +.PP +\fBParameters:\fP +.RS 4 +\fIinterval\fP Interval +.br +\fIstepSize\fP Step size +.RE +.PP +\fBReturns:\fP +.RS 4 +Aligned interval +.RE +.PP + +.SS "void QwtLog10ScaleEngine::autoScale (intmaxNumSteps, double &x1, double &x2, double &stepSize) const\fC [virtual]\fP"Align and divide an interval +.PP +\fBParameters:\fP +.RS 4 +\fImaxNumSteps\fP Max. number of steps +.br +\fIx1\fP First limit of the interval (In/Out) +.br +\fIx2\fP Second limit of the interval (In/Out) +.br +\fIstepSize\fP Step size (Out) +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtScaleEngine::setAttribute()\fP +.RE +.PP + +.PP +Implements \fBQwtScaleEngine\fP. +.SS "QList< double > QwtLog10ScaleEngine::buildMajorTicks (const \fBQwtInterval\fP &interval, doublestepSize) const\fC [protected]\fP" +.PP +Calculate major ticks for an interval. \fBParameters:\fP +.RS 4 +\fIinterval\fP Interval +.br +\fIstepSize\fP Step size +.RE +.PP +\fBReturns:\fP +.RS 4 +Calculated ticks +.RE +.PP + +.SS "QList< double > QwtLog10ScaleEngine::buildMinorTicks (const QList< double > &majorTicks, intmaxMinSteps, doublestepSize) const\fC [protected]\fP" +.PP +Calculate minor/medium ticks for major ticks. \fBParameters:\fP +.RS 4 +\fImajorTicks\fP Major ticks +.br +\fImaxMinSteps\fP Maximum number of minor steps +.br +\fIstepSize\fP Step size +.RE +.PP + +.SS "void QwtLog10ScaleEngine::buildTicks (const \fBQwtInterval\fP &interval, doublestepSize, intmaxMinSteps, QList< double >ticks[QwtScaleDiv::NTickTypes]) const\fC [protected]\fP" +.PP +Calculate ticks for an interval. \fBParameters:\fP +.RS 4 +\fIinterval\fP Interval +.br +\fImaxMinSteps\fP Maximum number of minor steps +.br +\fIstepSize\fP Step size +.br +\fIticks\fP Arrays to be filled with the calculated ticks +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBbuildMajorTicks()\fP, \fBbuildMinorTicks\fP +.RE +.PP + +.SS "\fBQwtScaleDiv\fP QwtLog10ScaleEngine::divideScale (doublex1, doublex2, intmaxMajSteps, intmaxMinSteps, doublestepSize = \fC0.0\fP) const\fC [virtual]\fP" +.PP +Calculate a scale division. \fBParameters:\fP +.RS 4 +\fIx1\fP First interval limit +.br +\fIx2\fP Second interval limit +.br +\fImaxMajSteps\fP Maximum for the number of major steps +.br +\fImaxMinSteps\fP Maximum number of minor steps +.br +\fIstepSize\fP Step size. If stepSize == 0, the scaleEngine calculates one. +.RE +.PP +\fBSee also:\fP +.RS 4 +QwtScaleEngine::stepSize(), QwtLog10ScaleEngine::subDivide() +.RE +.PP + +.PP +Implements \fBQwtScaleEngine\fP. +.SS "\fBQwtInterval\fP QwtLog10ScaleEngine::log10 (const \fBQwtInterval\fP &interval) const\fC [protected]\fP"Return the interval [log10(interval.minValue(), log10(interval.maxValue] +.SS "\fBQwtInterval\fP QwtLog10ScaleEngine::pow10 (const \fBQwtInterval\fP &interval) const\fC [protected]\fP"Return the interval [pow10(interval.minValue(), pow10(interval.maxValue] +.SS "\fBQwtScaleTransformation\fP * QwtLog10ScaleEngine::transformation () const\fC [virtual]\fP"Return a transformation, for logarithmic (base 10) scales +.PP +Implements \fBQwtScaleEngine\fP. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtMagnifier.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtMagnifier.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtMagnifier.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtMagnifier.3 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,427 @@ +.TH "QwtMagnifier" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtMagnifier \- +.PP +\fBQwtMagnifier\fP provides zooming, by magnifying in steps. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherited by \fBQwtPlotMagnifier\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtMagnifier\fP (QWidget *)" +.br +.ti -1c +.RI "virtual \fB~QwtMagnifier\fP ()" +.br +.ti -1c +.RI "QWidget * \fBparentWidget\fP ()" +.br +.ti -1c +.RI "const QWidget * \fBparentWidget\fP () const " +.br +.ti -1c +.RI "void \fBsetEnabled\fP (bool)" +.br +.ti -1c +.RI "bool \fBisEnabled\fP () const " +.br +.ti -1c +.RI "void \fBsetMouseFactor\fP (double)" +.br +.ti -1c +.RI "double \fBmouseFactor\fP () const " +.br +.ti -1c +.RI "void \fBsetMouseButton\fP (int button, int buttonState=Qt::NoButton)" +.br +.ti -1c +.RI "void \fBgetMouseButton\fP (int &button, int &buttonState) const " +.br +.ti -1c +.RI "void \fBsetWheelFactor\fP (double)" +.br +.ti -1c +.RI "double \fBwheelFactor\fP () const " +.br +.ti -1c +.RI "void \fBsetWheelButtonState\fP (int buttonState)" +.br +.ti -1c +.RI "int \fBwheelButtonState\fP () const " +.br +.ti -1c +.RI "void \fBsetKeyFactor\fP (double)" +.br +.ti -1c +.RI "double \fBkeyFactor\fP () const " +.br +.ti -1c +.RI "void \fBsetZoomInKey\fP (int key, int modifiers)" +.br +.ti -1c +.RI "void \fBgetZoomInKey\fP (int &key, int &modifiers) const " +.br +.ti -1c +.RI "void \fBsetZoomOutKey\fP (int key, int modifiers)" +.br +.ti -1c +.RI "void \fBgetZoomOutKey\fP (int &key, int &modifiers) const " +.br +.ti -1c +.RI "virtual bool \fBeventFilter\fP (QObject *, QEvent *)" +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual void \fBrescale\fP (double factor)=0" +.br +.ti -1c +.RI "virtual void \fBwidgetMousePressEvent\fP (QMouseEvent *)" +.br +.ti -1c +.RI "virtual void \fBwidgetMouseReleaseEvent\fP (QMouseEvent *)" +.br +.ti -1c +.RI "virtual void \fBwidgetMouseMoveEvent\fP (QMouseEvent *)" +.br +.ti -1c +.RI "virtual void \fBwidgetWheelEvent\fP (QWheelEvent *)" +.br +.ti -1c +.RI "virtual void \fBwidgetKeyPressEvent\fP (QKeyEvent *)" +.br +.ti -1c +.RI "virtual void \fBwidgetKeyReleaseEvent\fP (QKeyEvent *)" +.br +.in -1c +.SH "Detailed Description" +.PP +\fBQwtMagnifier\fP provides zooming, by magnifying in steps. + +Using \fBQwtMagnifier\fP a plot can be zoomed in/out in steps using keys, the mouse wheel or moving a mouse button in vertical direction. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtMagnifier::QwtMagnifier (QWidget *parent)\fC [explicit]\fP"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fIparent\fP Widget to be magnified +.RE +.PP + +.SS "QwtMagnifier::~QwtMagnifier ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "bool QwtMagnifier::eventFilter (QObject *o, QEvent *e)\fC [virtual]\fP" +.PP +Event filter. When \fBisEnabled()\fP the mouse events of the observed widget are filtered. +.PP +\fBSee also:\fP +.RS 4 +\fBwidgetMousePressEvent()\fP, \fBwidgetMouseReleaseEvent()\fP, \fBwidgetMouseMoveEvent()\fP, \fBwidgetWheelEvent()\fP, \fBwidgetKeyPressEvent()\fP \fBwidgetKeyReleaseEvent()\fP +.RE +.PP + +.SS "void QwtMagnifier::getMouseButton (int &button, int &buttonState) const"\fBSee also:\fP +.RS 4 +\fBsetMouseButton()\fP +.RE +.PP + +.SS "void QwtMagnifier::getZoomInKey (int &key, int &modifiers) const"\fBSee also:\fP +.RS 4 +\fBsetZoomInKey()\fP +.RE +.PP + +.SS "void QwtMagnifier::getZoomOutKey (int &key, int &modifiers) const"\fBSee also:\fP +.RS 4 +\fBsetZoomOutKey()\fP +.RE +.PP + +.SS "bool QwtMagnifier::isEnabled () const"\fBReturns:\fP +.RS 4 +true when enabled, false otherwise +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetEnabled()\fP, \fBeventFilter()\fP +.RE +.PP + +.SS "double QwtMagnifier::keyFactor () const"\fBReturns:\fP +.RS 4 +Key factor +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetKeyFactor()\fP +.RE +.PP + +.SS "double QwtMagnifier::mouseFactor () const"\fBReturns:\fP +.RS 4 +Mouse factor +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetMouseFactor()\fP +.RE +.PP + +.SS "QWidget * QwtMagnifier::parentWidget ()"\fBReturns:\fP +.RS 4 +Parent widget, where the rescaling happens +.RE +.PP + +.SS "const QWidget * QwtMagnifier::parentWidget () const"\fBReturns:\fP +.RS 4 +Parent widget, where the rescaling happens +.RE +.PP + +.SS "virtual void QwtMagnifier::rescale (doublefactor)\fC [protected, pure virtual]\fP"Rescale the parent widget +.PP +\fBParameters:\fP +.RS 4 +\fIfactor\fP Scale factor +.RE +.PP + +.PP +Implemented in \fBQwtPlotMagnifier\fP. +.SS "void QwtMagnifier::setEnabled (boolon)" +.PP +En/disable the magnifier. When enabled is true an event filter is installed for the observed widget, otherwise the event filter is removed. +.PP +\fBParameters:\fP +.RS 4 +\fIon\fP true or false +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBisEnabled()\fP, \fBeventFilter()\fP +.RE +.PP + +.SS "void QwtMagnifier::setKeyFactor (doublefactor)" +.PP +Change the key factor. The key factor defines the ratio between the current range on the parent widget and the zoomed range for each key press of the zoom in/out keys. The default value is 0.9. +.PP +\fBParameters:\fP +.RS 4 +\fIfactor\fP Key factor +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBkeyFactor()\fP, \fBsetZoomInKey()\fP, \fBsetZoomOutKey()\fP, \fBsetWheelFactor\fP, \fBsetMouseFactor()\fP +.RE +.PP + +.SS "void QwtMagnifier::setMouseButton (intbutton, intbuttonState = \fCQt::NoButton\fP)"Assign the mouse button, that is used for zooming in/out. The default value is Qt::RightButton. +.PP +\fBParameters:\fP +.RS 4 +\fIbutton\fP Button +.br +\fIbuttonState\fP Button state +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBgetMouseButton()\fP +.RE +.PP + +.SS "void QwtMagnifier::setMouseFactor (doublefactor)" +.PP +Change the mouse factor. The mouse factor defines the ratio between the current range on the parent widget and the zoomed range for each vertical mouse movement. The default value is 0.95. +.PP +\fBParameters:\fP +.RS 4 +\fIfactor\fP Wheel factor +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBmouseFactor()\fP, \fBsetMouseButton()\fP, \fBsetWheelFactor()\fP, \fBsetKeyFactor()\fP +.RE +.PP + +.SS "void QwtMagnifier::setWheelButtonState (intbuttonState)"Assign a mandatory button state for zooming in/out using the wheel. The default button state is Qt::NoButton. +.PP +\fBParameters:\fP +.RS 4 +\fIbuttonState\fP Button state +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBwheelButtonState()\fP +.RE +.PP + +.SS "void QwtMagnifier::setWheelFactor (doublefactor)" +.PP +Change the wheel factor. The wheel factor defines the ratio between the current range on the parent widget and the zoomed range for each step of the wheel. The default value is 0.9. +.PP +\fBParameters:\fP +.RS 4 +\fIfactor\fP Wheel factor +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBwheelFactor()\fP, \fBsetWheelButtonState()\fP, \fBsetMouseFactor()\fP, \fBsetKeyFactor()\fP +.RE +.PP + +.SS "void QwtMagnifier::setZoomInKey (intkey, intmodifiers)"Assign the key, that is used for zooming in. The default combination is Qt::Key_Plus + Qt::NoModifier. +.PP +\fBParameters:\fP +.RS 4 +\fIkey\fP +.br +\fImodifiers\fP +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBgetZoomInKey()\fP, \fBsetZoomOutKey()\fP +.RE +.PP + +.SS "void QwtMagnifier::setZoomOutKey (intkey, intmodifiers)"Assign the key, that is used for zooming out. The default combination is Qt::Key_Minus + Qt::NoModifier. +.PP +\fBParameters:\fP +.RS 4 +\fIkey\fP +.br +\fImodifiers\fP +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBgetZoomOutKey()\fP, \fBsetZoomOutKey()\fP +.RE +.PP + +.SS "int QwtMagnifier::wheelButtonState () const"\fBReturns:\fP +.RS 4 +Wheel button state +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetWheelButtonState()\fP +.RE +.PP + +.SS "double QwtMagnifier::wheelFactor () const"\fBReturns:\fP +.RS 4 +Wheel factor +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetWheelFactor()\fP +.RE +.PP + +.SS "void QwtMagnifier::widgetKeyPressEvent (QKeyEvent *keyEvent)\fC [protected, virtual]\fP"Handle a key press event for the observed widget. +.PP +\fBParameters:\fP +.RS 4 +\fIkeyEvent\fP Key event +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBeventFilter()\fP, \fBwidgetKeyReleaseEvent()\fP +.RE +.PP + +.SS "void QwtMagnifier::widgetKeyReleaseEvent (QKeyEvent *keyEvent)\fC [protected, virtual]\fP"Handle a key release event for the observed widget. +.PP +\fBParameters:\fP +.RS 4 +\fIkeyEvent\fP Key event +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBeventFilter()\fP, \fBwidgetKeyReleaseEvent()\fP +.RE +.PP + +.SS "void QwtMagnifier::widgetMouseMoveEvent (QMouseEvent *me)\fC [protected, virtual]\fP"Handle a mouse move event for the observed widget. +.PP +\fBParameters:\fP +.RS 4 +\fIme\fP Mouse event +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBeventFilter()\fP, \fBwidgetMousePressEvent()\fP, \fBwidgetMouseReleaseEvent()\fP, +.RE +.PP + +.SS "void QwtMagnifier::widgetMousePressEvent (QMouseEvent *me)\fC [protected, virtual]\fP"Handle a mouse press event for the observed widget. +.PP +\fBParameters:\fP +.RS 4 +\fIme\fP Mouse event +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBeventFilter()\fP, \fBwidgetMouseReleaseEvent()\fP, \fBwidgetMouseMoveEvent()\fP +.RE +.PP + +.SS "void QwtMagnifier::widgetMouseReleaseEvent (QMouseEvent *)\fC [protected, virtual]\fP"Handle a mouse release event for the observed widget. +.PP +\fBSee also:\fP +.RS 4 +\fBeventFilter()\fP, \fBwidgetMousePressEvent()\fP, \fBwidgetMouseMoveEvent()\fP, +.RE +.PP + +.SS "void QwtMagnifier::widgetWheelEvent (QWheelEvent *wheelEvent)\fC [protected, virtual]\fP"Handle a wheel event for the observed widget. +.PP +\fBParameters:\fP +.RS 4 +\fIwheelEvent\fP Wheel event +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBeventFilter()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtMathMLDocument.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtMathMLDocument.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtMathMLDocument.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtMathMLDocument.3 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,103 @@ +.TH "QwtMathMLDocument" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtMathMLDocument \- +.PP +The \fBQwtMathMLDocument\fP class renders mathematical formulas written in MathML 2.0. + +.SH SYNOPSIS +.br +.PP +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBMmlFont\fP { \fBNormalFont\fP, \fBFrakturFont\fP, \fBSansSerifFont\fP, \fBScriptFont\fP, \fBMonospaceFont\fP, \fBDoublestruckFont\fP }" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtMathMLDocument\fP ()" +.br +.ti -1c +.RI "\fB~QwtMathMLDocument\fP ()" +.br +.ti -1c +.RI "void \fBclear\fP ()" +.br +.ti -1c +.RI "bool \fBsetContent\fP (QString text, QString *errorMsg=0, int *errorLine=0, int *errorColumn=0)" +.br +.ti -1c +.RI "void \fBpaint\fP (QPainter *p, const QPoint &pos) const " +.br +.ti -1c +.RI "QSize \fBsize\fP () const " +.br +.ti -1c +.RI "QString \fBfontName\fP (MmlFont type) const " +.br +.ti -1c +.RI "void \fBsetFontName\fP (MmlFont type, const QString &name)" +.br +.ti -1c +.RI "int \fBbaseFontPointSize\fP () const " +.br +.ti -1c +.RI "void \fBsetBaseFontPointSize\fP (int size)" +.br +.in -1c +.SH "Detailed Description" +.PP +The \fBQwtMathMLDocument\fP class renders mathematical formulas written in MathML 2.0. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtMathMLDocument::QwtMathMLDocument ()"Constructs an empty MML document. +.SS "QwtMathMLDocument::~QwtMathMLDocument ()"Destroys the MML document. +.SH "Member Function Documentation" +.PP +.SS "int QwtMathMLDocument::baseFontPointSize () const"Returns the point size of the font used to render expressions whose scriptlevel is 0. +.PP +\fBSee also:\fP +.RS 4 +\fBsetBaseFontPointSize()\fP \fBfontName()\fP \fBsetFontName()\fP +.RE +.PP + +.SS "void QwtMathMLDocument::clear ()"Clears the contents of this MML document. +.SS "QString QwtMathMLDocument::fontName (QwtMathMLDocument::MmlFonttype) const"Returns the name of the font used to render the font \fItype\fP. +.PP +\fBSee also:\fP +.RS 4 +\fBsetFontName()\fP \fBsetBaseFontPointSize()\fP \fBbaseFontPointSize()\fP QwtMathMLDocument::MmlFont +.RE +.PP + +.SS "void QwtMathMLDocument::paint (QPainter *p, const QPoint &pos) const"Renders this MML document with the painter \fIp\fP at position \fIpos\fP. +.SS "void QwtMathMLDocument::setBaseFontPointSize (intsize)"Sets the point \fIsize\fP of the font used to render expressions whose scriptlevel is 0. +.PP +\fBSee also:\fP +.RS 4 +\fBbaseFontPointSize()\fP \fBfontName()\fP \fBsetFontName()\fP +.RE +.PP + +.SS "bool QwtMathMLDocument::setContent (QStringtext, QString *errorMsg = \fC0\fP, int *errorLine = \fC0\fP, int *errorColumn = \fC0\fP)"Sets the MathML expression to be rendered. The expression is given in the string \fItext\fP. If the expression is successfully parsed, this method returns true; otherwise it returns false. If an error occured \fIerrorMsg\fP is set to a diagnostic message, while \fIerrorLine\fP and \fIerrorColumn\fP contain the location of the error. Any of \fIerrorMsg\fP, \fIerrorLine\fP and \fIerrorColumn\fP may be 0, in which case they are not set. +.PP +\fItext\fP should contain MathML 2.0 presentation markup elements enclosed in a element. +.SS "void QwtMathMLDocument::setFontName (QwtMathMLDocument::MmlFonttype, const QString &name)"Sets the name of the font used to render the font \fItype\fP to \fIname\fP. +.PP +\fBSee also:\fP +.RS 4 +\fBfontName()\fP \fBsetBaseFontPointSize()\fP \fBbaseFontPointSize()\fP QwtMathMLDocument::MmlFont +.RE +.PP + +.SS "QSize QwtMathMLDocument::size () const"Returns the size of this MML document, as rendered, in pixels. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtMathMLTextEngine.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtMathMLTextEngine.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtMathMLTextEngine.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtMathMLTextEngine.3 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,167 @@ +.TH "QwtMathMLTextEngine" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtMathMLTextEngine \- +.PP +Text Engine for the MathML renderer of the Qt solutions package. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtTextEngine\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtMathMLTextEngine\fP ()" +.br +.ti -1c +.RI "virtual \fB~QwtMathMLTextEngine\fP ()" +.br +.ti -1c +.RI "virtual double \fBheightForWidth\fP (const QFont &font, int flags, const QString &text, double width) const " +.br +.ti -1c +.RI "virtual QSizeF \fBtextSize\fP (const QFont &font, int flags, const QString &text) const " +.br +.ti -1c +.RI "virtual void \fBdraw\fP (QPainter *painter, const QRectF &rect, int flags, const QString &text) const " +.br +.ti -1c +.RI "virtual bool \fBmightRender\fP (const QString &) const " +.br +.ti -1c +.RI "virtual void \fBtextMargins\fP (const QFont &, const QString &, double &left, double &right, double &top, double &bottom) const " +.br +.in -1c +.SH "Detailed Description" +.PP +Text Engine for the MathML renderer of the Qt solutions package. + +To enable MathML support the following code needs to be added to the application: +.PP +.nf + +#include + +QwtText::setTextEngine(QwtText::MathMLText, new QwtMathMLTextEngine()); + +.fi +.PP +.PP +\fBSee also:\fP +.RS 4 +\fBQwtTextEngine\fP, \fBQwtText::setTextEngine\fP +.RE +.PP +\fBWarning:\fP +.RS 4 +Unfortunately the MathML renderer doesn't support rotating of texts. +.RE +.PP + +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtMathMLTextEngine::QwtMathMLTextEngine ()" +.PP +Constructor. +.SS "QwtMathMLTextEngine::~QwtMathMLTextEngine ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "void QwtMathMLTextEngine::draw (QPainter *painter, const QRectF &rect, intflags, const QString &text) const\fC [virtual]\fP"Draw the text in a clipping rectangle +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIrect\fP Clipping rectangle +.br +\fIflags\fP Bitwise OR of the flags like in for QPainter::drawText +.br +\fItext\fP Text to be rendered +.RE +.PP + +.PP +Implements \fBQwtTextEngine\fP. +.SS "double QwtMathMLTextEngine::heightForWidth (const QFont &font, intflags, const QString &text, doublewidth) const\fC [virtual]\fP"Find the height for a given width +.PP +\fBParameters:\fP +.RS 4 +\fIfont\fP Font of the text +.br +\fIflags\fP Bitwise OR of the flags used like in QPainter::drawText +.br +\fItext\fP Text to be rendered +.br +\fIwidth\fP Width +.RE +.PP +\fBReturns:\fP +.RS 4 +Calculated height +.RE +.PP + +.PP +Implements \fBQwtTextEngine\fP. +.SS "bool QwtMathMLTextEngine::mightRender (const QString &text) const\fC [virtual]\fP"Test if a string can be rendered by \fBQwtMathMLTextEngine\fP +.PP +\fBParameters:\fP +.RS 4 +\fItext\fP Text to be tested +.RE +.PP +\fBReturns:\fP +.RS 4 +true, if text begins with ''. +.RE +.PP + +.PP +Implements \fBQwtTextEngine\fP. +.SS "void QwtMathMLTextEngine::textMargins (const QFont &, const QString &, double &left, double &right, double &top, double &bottom) const\fC [virtual]\fP"Return margins around the texts +.PP +\fBParameters:\fP +.RS 4 +\fIleft\fP Return 0 +.br +\fIright\fP Return 0 +.br +\fItop\fP Return 0 +.br +\fIbottom\fP Return 0 +.RE +.PP + +.PP +Implements \fBQwtTextEngine\fP. +.SS "QSizeF QwtMathMLTextEngine::textSize (const QFont &font, intflags, const QString &text) const\fC [virtual]\fP"Returns the size, that is needed to render text +.PP +\fBParameters:\fP +.RS 4 +\fIfont\fP Font of the text +.br +\fIflags\fP Bitwise OR of the flags used like in QPainter::drawText +.br +\fItext\fP Text to be rendered +.RE +.PP +\fBReturns:\fP +.RS 4 +Caluclated size +.RE +.PP + +.PP +Implements \fBQwtTextEngine\fP. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtMatrixRasterData.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtMatrixRasterData.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtMatrixRasterData.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtMatrixRasterData.3 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,227 @@ +.TH "QwtMatrixRasterData" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtMatrixRasterData \- +.PP +A class representing a matrix of values as raster data. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtRasterData\fP. +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBResampleMode\fP { \fBNearestNeighbour\fP, \fBBilinearInterpolation\fP }" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtMatrixRasterData\fP ()" +.br +.ti -1c +.RI "virtual \fB~QwtMatrixRasterData\fP ()" +.br +.ti -1c +.RI "void \fBsetResampleMode\fP (\fBResampleMode\fP mode)" +.br +.ti -1c +.RI "\fBResampleMode\fP \fBresampleMode\fP () const " +.br +.ti -1c +.RI "virtual void \fBsetInterval\fP (Qt::Axis, const \fBQwtInterval\fP &)" +.br +.ti -1c +.RI "void \fBsetValueMatrix\fP (const QVector< double > &values, size_t numColumns)" +.br +.ti -1c +.RI "const QVector< double > \fBvalueMatrix\fP () const " +.br +.ti -1c +.RI "size_t \fBnumColumns\fP () const " +.br +.ti -1c +.RI "size_t \fBnumRows\fP () const " +.br +.ti -1c +.RI "virtual QRectF \fBpixelHint\fP (const QRectF &) const " +.br +.ti -1c +.RI "virtual double \fBvalue\fP (double x, double y) const " +.br +.in -1c +.SH "Detailed Description" +.PP +A class representing a matrix of values as raster data. + +\fBQwtMatrixRasterData\fP implements an interface for a matrix of equidistant values, that can be used by a \fBQwtPlotRasterItem\fP. It implements a couple of resampling algorithms, to provide values for positions, that or not on the value matrix. +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtMatrixRasterData::ResampleMode\fP" +.PP +Resampling algorithm The default setting is NearestNeighbour;. +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fINearestNeighbour \fP\fP +Return the value from the matrix, that is nearest to the the requested position. +.TP +\fB\fIBilinearInterpolation \fP\fP +Interpolate the value from the distances and values of the 4 surrounding values in the matrix, +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtMatrixRasterData::QwtMatrixRasterData ()" +.PP +Constructor. +.SS "QwtMatrixRasterData::~QwtMatrixRasterData ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "size_t QwtMatrixRasterData::numColumns () const"\fBReturns:\fP +.RS 4 +Number of columns of the value matrix +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBvalueMatrix()\fP, \fBnumRows()\fP, \fBsetValueMatrix()\fP +.RE +.PP + +.SS "size_t QwtMatrixRasterData::numRows () const"\fBReturns:\fP +.RS 4 +Number of rows of the value matrix +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBvalueMatrix()\fP, \fBnumColumns()\fP, \fBsetValueMatrix()\fP +.RE +.PP + +.SS "QRectF QwtMatrixRasterData::pixelHint (const QRectF &) const\fC [virtual]\fP" +.PP +Pixel hint. .IP "\(bu" 2 +NearestNeighbour +.br + \fBpixelHint()\fP returns the surrounding pixel of the top left value in the matrix. +.PP +.PP +.IP "\(bu" 2 +BilinearInterpolation +.br + Returns an empty rectangle recommending to render in target device ( f.e. screen ) resolution. +.PP +.PP +\fBSee also:\fP +.RS 4 +\fBResampleMode\fP, setMatrix(), \fBsetInterval()\fP +.RE +.PP + +.PP +Reimplemented from \fBQwtRasterData\fP. +.SS "\fBQwtMatrixRasterData::ResampleMode\fP QwtMatrixRasterData::resampleMode () const"\fBReturns:\fP +.RS 4 +resampling algorithm +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetResampleMode()\fP, \fBvalue()\fP +.RE +.PP + +.SS "void QwtMatrixRasterData::setInterval (Qt::Axisaxis, const \fBQwtInterval\fP &interval)\fC [virtual]\fP" +.PP +Assign the bounding interval for an axis. Setting the bounding intervals for the X/Y axis is mandatory to define the positions for the values of the value matrix. The interval in Z direction defines the possible range for the values in the matrix, what is f.e used by \fBQwtPlotSpectrogram\fP to map values to colors. The Z-interval might be the bounding interval of the values in the matrix, but usually it isn't. ( f.e a interval of 0.0-100.0 for values in percentage ) +.PP +\fBParameters:\fP +.RS 4 +\fIaxis\fP X, Y or Z axis +.br +\fIinterval\fP Interval +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtRasterData::interval()\fP, \fBsetValueMatrix()\fP +.RE +.PP + +.PP +Reimplemented from \fBQwtRasterData\fP. +.SS "void QwtMatrixRasterData::setResampleMode (\fBResampleMode\fPmode)" +.PP +Set the resampling algorithm. \fBParameters:\fP +.RS 4 +\fImode\fP Resampling mode +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBresampleMode()\fP, \fBvalue()\fP +.RE +.PP + +.SS "void QwtMatrixRasterData::setValueMatrix (const QVector< double > &values, size_tnumColumns)" +.PP +Assign a value matrix. The positions of the values are calculated by dividing the bounding rectangle of the X/Y intervals into equidistant rectangles ( pixels ). Each value corresponds to the center of a pixel. +.PP +\fBParameters:\fP +.RS 4 +\fIvalues\fP Vector of values +.br +\fInumColumns\fP Number of columns +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBvalueMatrix()\fP, \fBnumColumns()\fP, \fBnumRows()\fP, \fBsetInterval()\fP() +.RE +.PP + +.SS "double QwtMatrixRasterData::value (doublex, doubley) const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +the value at a raster position +.RE +.PP +\fBParameters:\fP +.RS 4 +\fIx\fP X value in plot coordinates +.br +\fIy\fP Y value in plot coordinates +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBResampleMode\fP +.RE +.PP + +.PP +Implements \fBQwtRasterData\fP. +.SS "const QVector< double > QwtMatrixRasterData::valueMatrix () const"\fBReturns:\fP +.RS 4 +Value matrix +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetValueMatrix()\fP, \fBnumColumns()\fP, \fBnumRows()\fP, \fBsetInterval()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtNullPaintDevice.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtNullPaintDevice.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtNullPaintDevice.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtNullPaintDevice.3 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,197 @@ +.TH "QwtNullPaintDevice" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtNullPaintDevice \- +.PP +A null paint device doing nothing. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherited by QwtStyleSheetRecorder. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtNullPaintDevice\fP (QPaintEngine::PaintEngineFeatures)" +.br +.ti -1c +.RI "\fBQwtNullPaintDevice\fP (const QSize &size, QPaintEngine::PaintEngineFeatures)" +.br +.ti -1c +.RI "virtual \fB~QwtNullPaintDevice\fP ()" +.br +.ti -1c +.RI "void \fBsetSize\fP (const QSize &)" +.br +.ti -1c +.RI "QSize \fBsize\fP () const " +.br +.ti -1c +.RI "virtual QPaintEngine * \fBpaintEngine\fP () const " +.br +.ti -1c +.RI "virtual int \fBmetric\fP (PaintDeviceMetric metric) const " +.br +.ti -1c +.RI "virtual void \fBdrawRects\fP (const QRect *, int)" +.br +.ti -1c +.RI "virtual void \fBdrawRects\fP (const QRectF *, int)" +.br +.ti -1c +.RI "virtual void \fBdrawLines\fP (const QLine *, int)" +.br +.ti -1c +.RI "virtual void \fBdrawLines\fP (const QLineF *, int)" +.br +.ti -1c +.RI "virtual void \fBdrawEllipse\fP (const QRectF &)" +.br +.ti -1c +.RI "virtual void \fBdrawEllipse\fP (const QRect &)" +.br +.ti -1c +.RI "virtual void \fBdrawPath\fP (const QPainterPath &)" +.br +.ti -1c +.RI "virtual void \fBdrawPoints\fP (const QPointF *, int)" +.br +.ti -1c +.RI "virtual void \fBdrawPoints\fP (const QPoint *, int)" +.br +.ti -1c +.RI "virtual void \fBdrawPolygon\fP (const QPointF *, int, QPaintEngine::PolygonDrawMode)" +.br +.ti -1c +.RI "virtual void \fBdrawPolygon\fP (const QPoint *, int, QPaintEngine::PolygonDrawMode)" +.br +.ti -1c +.RI "virtual void \fBdrawPixmap\fP (const QRectF &, const QPixmap &, const QRectF &)" +.br +.ti -1c +.RI "virtual void \fBdrawTextItem\fP (const QPointF &, const QTextItem &)" +.br +.ti -1c +.RI "virtual void \fBdrawTiledPixmap\fP (const QRectF &, const QPixmap &, const QPointF &s)" +.br +.ti -1c +.RI "virtual void \fBdrawImage\fP (const QRectF &, const QImage &, const QRectF &, Qt::ImageConversionFlags)" +.br +.ti -1c +.RI "virtual void \fBupdateState\fP (const QPaintEngineState &state)" +.br +.in -1c +.SH "Detailed Description" +.PP +A null paint device doing nothing. + +Sometimes important layout/rendering geometries are not available or changable from the public Qt class interface. ( f.e hidden in the style implementation ). +.PP +\fBQwtNullPaintDevice\fP can be used to manipulate or filter out these informations by analyzing the stream of paint primitives. +.PP +F.e. \fBQwtNullPaintDevice\fP is used by \fBQwtPlotCanvas\fP to identify styled backgrounds with rounded corners. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtNullPaintDevice::QwtNullPaintDevice (QPaintEngine::PaintEngineFeaturesfeatures)" +.PP +Constructor. +.SS "QwtNullPaintDevice::QwtNullPaintDevice (const QSize &size, QPaintEngine::PaintEngineFeaturesfeatures)" +.PP +Constructor. +.SS "QwtNullPaintDevice::~QwtNullPaintDevice ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "void QwtNullPaintDevice::drawEllipse (const QRectF &rect)\fC [virtual]\fP" +.PP +See QPaintEngine::drawEllipse() +.SS "void QwtNullPaintDevice::drawEllipse (const QRect &rect)\fC [virtual]\fP" +.PP +See QPaintEngine::drawEllipse() +.SS "void QwtNullPaintDevice::drawImage (const QRectF &rect, const QImage &image, const QRectF &subRect, Qt::ImageConversionFlagsflags)\fC [virtual]\fP" +.PP +See QPaintEngine::drawImage() +.SS "void QwtNullPaintDevice::drawLines (const QLineF *lines, intlineCount)\fC [virtual]\fP" +.PP +See QPaintEngine::drawLines() +.SS "void QwtNullPaintDevice::drawLines (const QLine *lines, intlineCount)\fC [virtual]\fP" +.PP +See QPaintEngine::drawLines() +.SS "void QwtNullPaintDevice::drawPath (const QPainterPath &path)\fC [virtual]\fP" +.PP +See QPaintEngine::drawPath() +.SS "void QwtNullPaintDevice::drawPixmap (const QRectF &rect, const QPixmap &pm, const QRectF &subRect)\fC [virtual]\fP" +.PP +See QPaintEngine::drawPixmap() +.SS "void QwtNullPaintDevice::drawPoints (const QPointF *points, intpointCount)\fC [virtual]\fP" +.PP +See QPaintEngine::drawPoints() +.SS "void QwtNullPaintDevice::drawPoints (const QPoint *points, intpointCount)\fC [virtual]\fP" +.PP +See QPaintEngine::drawPoints() +.SS "void QwtNullPaintDevice::drawPolygon (const QPoint *points, intpointCount, QPaintEngine::PolygonDrawModemode)\fC [virtual]\fP" +.PP +See QPaintEngine::drawPolygon() +.SS "void QwtNullPaintDevice::drawPolygon (const QPointF *points, intpointCount, QPaintEngine::PolygonDrawModemode)\fC [virtual]\fP" +.PP +See QPaintEngine::drawPolygon() +.SS "void QwtNullPaintDevice::drawRects (const QRectF *rects, intrectCount)\fC [virtual]\fP" +.PP +See QPaintEngine::drawRects() +.SS "void QwtNullPaintDevice::drawRects (const QRect *rects, intrectCount)\fC [virtual]\fP" +.PP +See QPaintEngine::drawRects() +.SS "void QwtNullPaintDevice::drawTextItem (const QPointF &pos, const QTextItem &textItem)\fC [virtual]\fP" +.PP +See QPaintEngine::drawTextItem() +.SS "void QwtNullPaintDevice::drawTiledPixmap (const QRectF &rect, const QPixmap &pixmap, const QPointF &s)\fC [virtual]\fP" +.PP +See QPaintEngine::drawTiledPixmap() +.SS "int QwtNullPaintDevice::metric (PaintDeviceMetricmetric) const\fC [virtual]\fP"See QPaintDevice::metric() +.PP +\fBSee also:\fP +.RS 4 +\fBsetSize()\fP +.RE +.PP + +.SS "QPaintEngine * QwtNullPaintDevice::paintEngine () const\fC [virtual]\fP" +.PP +See QPaintDevice::paintEngine() +.SS "void QwtNullPaintDevice::setSize (const QSize &size)"Set the size of the paint device +.PP +\fBParameters:\fP +.RS 4 +\fIsize\fP Size +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsize()\fP +.RE +.PP + +.SS "QSize QwtNullPaintDevice::size () const"\fBReturns:\fP +.RS 4 +Size of the paint device +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetSize()\fP +.RE +.PP + +.SS "void QwtNullPaintDevice::updateState (const QPaintEngineState &state)\fC [virtual]\fP" +.PP +See QPaintEngine::updateState() + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPainter.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPainter.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPainter.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPainter.3 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,302 @@ +.TH "QwtPainter" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPainter \- +.PP +A collection of QPainter workarounds. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.SS "Static Public Member Functions" + +.in +1c +.ti -1c +.RI "static void \fBsetPolylineSplitting\fP (bool)" +.br +.ti -1c +.RI "static bool \fBpolylineSplitting\fP ()" +.br +.ti -1c +.RI "static void \fBsetRoundingAlignment\fP (bool)" +.br +.ti -1c +.RI "static bool \fBroundingAlignment\fP ()" +.br +.ti -1c +.RI "static bool \fBroundingAlignment\fP (QPainter *)" +.br +.ti -1c +.RI "static void \fBdrawText\fP (QPainter *, double x, double y, const QString &)" +.br +.ti -1c +.RI "static void \fBdrawText\fP (QPainter *, const QPointF &, const QString &)" +.br +.ti -1c +.RI "static void \fBdrawText\fP (QPainter *, double x, double y, double w, double h, int flags, const QString &)" +.br +.ti -1c +.RI "static void \fBdrawText\fP (QPainter *, const QRectF &, int flags, const QString &)" +.br +.ti -1c +.RI "static void \fBdrawSimpleRichText\fP (QPainter *, const QRectF &, int flags, const QTextDocument &)" +.br +.ti -1c +.RI "static void \fBdrawRect\fP (QPainter *, double x, double y, double w, double h)" +.br +.ti -1c +.RI "static void \fBdrawRect\fP (QPainter *, const QRectF &rect)" +.br +.ti -1c +.RI "static void \fBfillRect\fP (QPainter *, const QRectF &, const QBrush &)" +.br +.ti -1c +.RI "static void \fBdrawEllipse\fP (QPainter *, const QRectF &)" +.br +.ti -1c +.RI "static void \fBdrawPie\fP (QPainter *, const QRectF &r, int a, int alen)" +.br +.ti -1c +.RI "static void \fBdrawLine\fP (QPainter *, double x1, double y1, double x2, double y2)" +.br +.ti -1c +.RI "static void \fBdrawLine\fP (QPainter *, const QPointF &p1, const QPointF &p2)" +.br +.ti -1c +.RI "static void \fBdrawLine\fP (QPainter *, const QLineF &)" +.br +.ti -1c +.RI "static void \fBdrawPolygon\fP (QPainter *, const QPolygonF &pa)" +.br +.ti -1c +.RI "static void \fBdrawPolyline\fP (QPainter *, const QPolygonF &pa)" +.br +.ti -1c +.RI "static void \fBdrawPolyline\fP (QPainter *, const QPointF *, int pointCount)" +.br +.ti -1c +.RI "static void \fBdrawPoint\fP (QPainter *, double x, double y)" +.br +.ti -1c +.RI "static void \fBdrawPoint\fP (QPainter *, const QPointF &)" +.br +.ti -1c +.RI "static void \fBdrawPath\fP (QPainter *, const QPainterPath &)" +.br +.ti -1c +.RI "static void \fBdrawImage\fP (QPainter *, const QRectF &, const QImage &)" +.br +.ti -1c +.RI "static void \fBdrawPixmap\fP (QPainter *, const QRectF &, const QPixmap &)" +.br +.ti -1c +.RI "static void \fBdrawRoundedFrame\fP (QPainter *, const QRectF &, double xRadius, double yRadius, const QPalette &, int lineWidth, int frameStyle)" +.br +.ti -1c +.RI "static void \fBdrawFocusRect\fP (QPainter *, QWidget *)" +.br +.ti -1c +.RI "static void \fBdrawFocusRect\fP (QPainter *, QWidget *, const QRect &)" +.br +.ti -1c +.RI "static void \fBdrawColorBar\fP (QPainter *painter, const \fBQwtColorMap\fP &, const \fBQwtInterval\fP &, const \fBQwtScaleMap\fP &, Qt::Orientation, const QRectF &)" +.br +.ti -1c +.RI "static bool \fBisAligning\fP (QPainter *painter)" +.br +.in -1c +.SH "Detailed Description" +.PP +A collection of QPainter workarounds. +.SH "Member Function Documentation" +.PP +.SS "void QwtPainter::drawColorBar (QPainter *painter, const \fBQwtColorMap\fP &colorMap, const \fBQwtInterval\fP &interval, const \fBQwtScaleMap\fP &scaleMap, Qt::Orientationorientation, const QRectF &rect)\fC [static]\fP"Draw a color bar into a rectangle +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIcolorMap\fP Color map +.br +\fIinterval\fP Value range +.br +\fIscaleMap\fP Scale map +.br +\fIorientation\fP Orientation +.br +\fIrect\fP Traget rectangle +.RE +.PP + +.SS "void QwtPainter::drawEllipse (QPainter *painter, const QRectF &rect)\fC [static]\fP" +.PP +Wrapper for QPainter::drawEllipse() +.SS "void QwtPainter::drawFocusRect (QPainter *painter, QWidget *widget)\fC [static]\fP" +.PP +Draw a focus rectangle on a widget using its style. +.SS "void QwtPainter::drawFocusRect (QPainter *painter, QWidget *widget, const QRect &rect)\fC [static]\fP" +.PP +Draw a focus rectangle on a widget using its style. +.SS "void QwtPainter::drawImage (QPainter *painter, const QRectF &rect, const QImage &image)\fC [static]\fP" +.PP +Wrapper for QPainter::drawImage() +.SS "void QwtPainter::drawLine (QPainter *painter, doublex1, doubley1, doublex2, doubley2)\fC [inline, static]\fP" +.PP +Wrapper for QPainter::drawLine() +.SS "void QwtPainter::drawLine (QPainter *painter, const QPointF &p1, const QPointF &p2)\fC [static]\fP" +.PP +Wrapper for QPainter::drawLine() +.SS "void QwtPainter::drawLine (QPainter *painter, const QLineF &line)\fC [inline, static]\fP" +.PP +Wrapper for QPainter::drawLine() +.SS "void QwtPainter::drawPath (QPainter *painter, const QPainterPath &path)\fC [static]\fP" +.PP +Wrapper for QPainter::drawPath() +.SS "void QwtPainter::drawPie (QPainter *painter, const QRectF &r, inta, intalen)\fC [static]\fP" +.PP +Wrapper for QPainter::drawPie() +.SS "void QwtPainter::drawPixmap (QPainter *painter, const QRectF &rect, const QPixmap &pixmap)\fC [static]\fP" +.PP +Wrapper for QPainter::drawPixmap() +.SS "void QwtPainter::drawPoint (QPainter *painter, doublex, doubley)\fC [inline, static]\fP" +.PP +Wrapper for QPainter::drawPoint() +.SS "void QwtPainter::drawPoint (QPainter *painter, const QPointF &pos)\fC [static]\fP" +.PP +Wrapper for QPainter::drawPoint() +.SS "void QwtPainter::drawPolygon (QPainter *painter, const QPolygonF &pa)\fC [static]\fP" +.PP +Wrapper for QPainter::drawPolygon() +.SS "void QwtPainter::drawPolyline (QPainter *painter, const QPointF *points, intpointCount)\fC [static]\fP" +.PP +Wrapper for QPainter::drawPolyline() +.SS "void QwtPainter::drawPolyline (QPainter *painter, const QPolygonF &pa)\fC [static]\fP" +.PP +Wrapper for QPainter::drawPolyline() +.SS "void QwtPainter::drawRect (QPainter *painter, doublex, doubley, doublew, doubleh)\fC [static]\fP" +.PP +Wrapper for QPainter::drawRect() +.SS "void QwtPainter::drawRect (QPainter *painter, const QRectF &rect)\fC [static]\fP" +.PP +Wrapper for QPainter::drawRect() +.SS "void QwtPainter::drawRoundedFrame (QPainter *painter, const QRectF &rect, doublexRadius, doubleyRadius, const QPalette &palette, intlineWidth, intframeStyle)\fC [static]\fP"Draw a frame with rounded borders +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIrect\fP Frame rectangle +.br +\fIxRadius\fP x-radius of the ellipses defining the corners +.br +\fIyRadius\fP y-radius of the ellipses defining the corners +.br +\fIpalette\fP QPalette::WindowText is used for plain borders QPalette::Dark and QPalette::Light for raised or sunken borders +.br +\fIlineWidth\fP Line width +.br +\fIframeStyle\fP bitwise OR´ed value of QFrame::Shape and QFrame::Shadow +.RE +.PP + +.SS "void QwtPainter::drawSimpleRichText (QPainter *painter, const QRectF &rect, intflags, const QTextDocument &text)\fC [static]\fP"Draw a text document into a rectangle +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIrect\fP Traget rectangle +.br +\fIflags\fP Alignments/Text flags, see QPainter::drawText() +.br +\fItext\fP Text document +.RE +.PP + +.SS "void QwtPainter::drawText (QPainter *painter, const QRectF &rect, intflags, const QString &text)\fC [static]\fP" +.PP +Wrapper for QPainter::drawText() +.SS "void QwtPainter::drawText (QPainter *painter, doublex, doubley, const QString &text)\fC [static]\fP" +.PP +Wrapper for QPainter::drawText() +.SS "void QwtPainter::drawText (QPainter *painter, const QPointF &pos, const QString &text)\fC [static]\fP" +.PP +Wrapper for QPainter::drawText() +.SS "void QwtPainter::drawText (QPainter *painter, doublex, doubley, doublew, doubleh, intflags, const QString &text)\fC [static]\fP" +.PP +Wrapper for QPainter::drawText() +.SS "void QwtPainter::fillRect (QPainter *painter, const QRectF &rect, const QBrush &brush)\fC [static]\fP" +.PP +Wrapper for QPainter::fillRect() +.SS "bool QwtPainter::isAligning (QPainter *painter)\fC [static]\fP"Check if the painter is using a paint engine, that aligns coordinates to integers. Today these are all paint engines beside QPaintEngine::Pdf and QPaintEngine::SVG. +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.RE +.PP +\fBReturns:\fP +.RS 4 +true, when the paint engine is aligning +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetRoundingAlignment()\fP +.RE +.PP + +.SS "bool QwtPainter::polylineSplitting ()\fC [inline, static]\fP"Returns whether line splitting for the raster paint engine is enabled. +.PP +\fBSee also:\fP +.RS 4 +\fBsetPolylineSplitting()\fP +.RE +.PP + +.SS "bool QwtPainter::roundingAlignment ()\fC [inline, static]\fP"Returns whether coordinates should be rounded, before they are painted to a paint engine that floors to integer values. For other paint engines this ( Pdf, SVG ), this flag has no effect. +.PP +\fBSee also:\fP +.RS 4 +\fBsetRoundingAlignment()\fP, \fBisAligning()\fP +.RE +.PP + +.SS "bool QwtPainter::roundingAlignment (QPainter *painter)\fC [inline, static]\fP"\fBReturns:\fP +.RS 4 +\fBroundingAlignment()\fP && isAligning(painter); +.RE +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.RE +.PP + +.SS "void QwtPainter::setPolylineSplitting (boolenable)\fC [static]\fP" +.PP +En/Disable line splitting for the raster paint engine. The raster paint engine paints polylines of many points much faster when they are splitted in smaller chunks. +.PP +\fBSee also:\fP +.RS 4 +\fBpolylineSplitting()\fP +.RE +.PP + +.SS "void QwtPainter::setRoundingAlignment (boolenable)\fC [static]\fP"Enable whether coordinates should be rounded, before they are painted to a paint engine that floors to integer values. For other paint engines this ( Pdf, SVG ), this flag has no effect. \fBQwtPainter\fP stores this flag only, the rounding itsself is done in the painting code ( f.e the plot items ). +.PP +The default setting is true. +.PP +\fBSee also:\fP +.RS 4 +\fBroundingAlignment()\fP, \fBisAligning()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPanner.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPanner.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPanner.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPanner.3 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,321 @@ +.TH "QwtPanner" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPanner \- +.PP +\fBQwtPanner\fP provides panning of a widget. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherited by \fBQwtPlotPanner\fP. +.SS "Signals" + +.in +1c +.ti -1c +.RI "void \fBpanned\fP (int dx, int dy)" +.br +.ti -1c +.RI "void \fBmoved\fP (int dx, int dy)" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPanner\fP (QWidget *parent)" +.br +.ti -1c +.RI "virtual \fB~QwtPanner\fP ()" +.br +.ti -1c +.RI "void \fBsetEnabled\fP (bool)" +.br +.ti -1c +.RI "bool \fBisEnabled\fP () const " +.br +.ti -1c +.RI "void \fBsetMouseButton\fP (int button, int buttonState=Qt::NoButton)" +.br +.ti -1c +.RI "void \fBgetMouseButton\fP (int &button, int &buttonState) const " +.br +.ti -1c +.RI "void \fBsetAbortKey\fP (int key, int state=Qt::NoButton)" +.br +.ti -1c +.RI "void \fBgetAbortKey\fP (int &key, int &state) const " +.br +.ti -1c +.RI "void \fBsetCursor\fP (const QCursor &)" +.br +.ti -1c +.RI "const QCursor \fBcursor\fP () const " +.br +.ti -1c +.RI "void \fBsetOrientations\fP (Qt::Orientations)" +.br +.ti -1c +.RI "Qt::Orientations \fBorientations\fP () const " +.br +.ti -1c +.RI "bool \fBisOrientationEnabled\fP (Qt::Orientation) const " +.br +.ti -1c +.RI "virtual bool \fBeventFilter\fP (QObject *, QEvent *)" +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual void \fBwidgetMousePressEvent\fP (QMouseEvent *)" +.br +.ti -1c +.RI "virtual void \fBwidgetMouseReleaseEvent\fP (QMouseEvent *)" +.br +.ti -1c +.RI "virtual void \fBwidgetMouseMoveEvent\fP (QMouseEvent *)" +.br +.ti -1c +.RI "virtual void \fBwidgetKeyPressEvent\fP (QKeyEvent *)" +.br +.ti -1c +.RI "virtual void \fBwidgetKeyReleaseEvent\fP (QKeyEvent *)" +.br +.ti -1c +.RI "virtual void \fBpaintEvent\fP (QPaintEvent *)" +.br +.ti -1c +.RI "virtual QBitmap \fBcontentsMask\fP () const " +.br +.ti -1c +.RI "virtual QPixmap \fBgrab\fP () const " +.br +.in -1c +.SH "Detailed Description" +.PP +\fBQwtPanner\fP provides panning of a widget. + +\fBQwtPanner\fP grabs the contents of a widget, that can be dragged in all directions. The offset between the start and the end position is emitted by the panned signal. +.PP +\fBQwtPanner\fP grabs the content of the widget into a pixmap and moves the pixmap around, without initiating any repaint events for the widget. Areas, that are not part of content are not painted while panning. This makes panning fast enough for widgets, where repaints are too slow for mouse movements. +.PP +For widgets, where repaints are very fast it might be better to implement panning manually by mapping mouse events into paint events. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPanner::QwtPanner (QWidget *parent)"Creates an panner that is enabled for the left mouse button. +.PP +\fBParameters:\fP +.RS 4 +\fIparent\fP Parent widget to be panned +.RE +.PP + +.SS "QwtPanner::~QwtPanner ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "QBitmap QwtPanner::contentsMask () const\fC [protected, virtual]\fP" +.PP +Calculate a mask for the contents of the panned widget. Sometimes only parts of the contents of a widget should be panned. F.e. for a widget with a styled background with rounded borders only the area inside of the border should be panned. +.PP +\fBReturns:\fP +.RS 4 +An empty bitmap, indicating no mask +.RE +.PP + +.PP +Reimplemented in \fBQwtPlotPanner\fP. +.SS "const QCursor QwtPanner::cursor () const"\fBReturns:\fP +.RS 4 +Cursor that is active while panning +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetCursor()\fP +.RE +.PP + +.SS "bool QwtPanner::eventFilter (QObject *o, QEvent *e)\fC [virtual]\fP" +.PP +Event filter. When \fBisEnabled()\fP the mouse events of the observed widget are filtered. +.PP +\fBSee also:\fP +.RS 4 +\fBwidgetMousePressEvent()\fP, \fBwidgetMouseReleaseEvent()\fP, \fBwidgetMouseMoveEvent()\fP +.RE +.PP + +.SS "void QwtPanner::getAbortKey (int &key, int &state) const" +.PP +Get the abort key. +.SS "void QwtPanner::getMouseButton (int &button, int &buttonState) const" +.PP +Get the mouse button. +.SS "QPixmap QwtPanner::grab () const\fC [protected, virtual]\fP"Grab the widget into a pixmap. +.SS "bool QwtPanner::isEnabled () const"\fBReturns:\fP +.RS 4 +true when enabled, false otherwise +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetEnabled\fP, \fBeventFilter()\fP +.RE +.PP + +.SS "bool QwtPanner::isOrientationEnabled (Qt::Orientationo) const"Return true if a orientatio is enabled +.PP +\fBSee also:\fP +.RS 4 +\fBorientations()\fP, \fBsetOrientations()\fP +.RE +.PP + +.SS "void QwtPanner::moved (intdx, intdy)\fC [signal]\fP"Signal emitted, while the widget moved, but panning is not finished. +.PP +\fBParameters:\fP +.RS 4 +\fIdx\fP Offset in horizontal direction +.br +\fIdy\fP Offset in vertical direction +.RE +.PP + +.SS "Qt::Orientations QwtPanner::orientations () const" +.PP +Return the orientation, where paning is enabled. +.SS "void QwtPanner::paintEvent (QPaintEvent *pe)\fC [protected, virtual]\fP" +.PP +Paint event. Repaint the grabbed pixmap on its current position and fill the empty spaces by the background of the parent widget. +.PP +\fBParameters:\fP +.RS 4 +\fIpe\fP Paint event +.RE +.PP + +.SS "void QwtPanner::panned (intdx, intdy)\fC [signal]\fP"Signal emitted, when panning is done +.PP +\fBParameters:\fP +.RS 4 +\fIdx\fP Offset in horizontal direction +.br +\fIdy\fP Offset in vertical direction +.RE +.PP + +.SS "void QwtPanner::setAbortKey (intkey, intstate = \fCQt::NoButton\fP)"Change the abort key The defaults are Qt::Key_Escape and Qt::NoButton +.PP +\fBParameters:\fP +.RS 4 +\fIkey\fP Key ( See Qt::Keycode ) +.br +\fIstate\fP State +.RE +.PP + +.SS "void QwtPanner::setCursor (const QCursor &cursor)"Change the cursor, that is active while panning The default is the cursor of the parent widget. +.PP +\fBParameters:\fP +.RS 4 +\fIcursor\fP New cursor +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetCursor()\fP +.RE +.PP + +.SS "void QwtPanner::setEnabled (boolon)" +.PP +En/disable the panner. When enabled is true an event filter is installed for the observed widget, otherwise the event filter is removed. +.PP +\fBParameters:\fP +.RS 4 +\fIon\fP true or false +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBisEnabled()\fP, \fBeventFilter()\fP +.RE +.PP + +.SS "void QwtPanner::setMouseButton (intbutton, intbuttonState = \fCQt::NoButton\fP)"Change the mouse button The defaults are Qt::LeftButton and Qt::NoButton +.SS "void QwtPanner::setOrientations (Qt::Orientationso)"Set the orientations, where panning is enabled The default value is in both directions: Qt::Horizontal | Qt::Vertical +.PP +/param o Orientation +.SS "void QwtPanner::widgetKeyPressEvent (QKeyEvent *ke)\fC [protected, virtual]\fP"Handle a key press event for the observed widget. +.PP +\fBParameters:\fP +.RS 4 +\fIke\fP Key event +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBeventFilter()\fP, \fBwidgetKeyReleaseEvent()\fP +.RE +.PP + +.SS "void QwtPanner::widgetKeyReleaseEvent (QKeyEvent *)\fC [protected, virtual]\fP"Handle a key release event for the observed widget. +.PP +\fBSee also:\fP +.RS 4 +\fBeventFilter()\fP, \fBwidgetKeyReleaseEvent()\fP +.RE +.PP + +.SS "void QwtPanner::widgetMouseMoveEvent (QMouseEvent *me)\fC [protected, virtual]\fP"Handle a mouse move event for the observed widget. +.PP +\fBParameters:\fP +.RS 4 +\fIme\fP Mouse event +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBeventFilter()\fP, \fBwidgetMousePressEvent()\fP, \fBwidgetMouseReleaseEvent()\fP +.RE +.PP + +.SS "void QwtPanner::widgetMousePressEvent (QMouseEvent *me)\fC [protected, virtual]\fP"Handle a mouse press event for the observed widget. +.PP +\fBParameters:\fP +.RS 4 +\fIme\fP Mouse event +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBeventFilter()\fP, \fBwidgetMouseReleaseEvent()\fP, \fBwidgetMouseMoveEvent()\fP, +.RE +.PP + +.SS "void QwtPanner::widgetMouseReleaseEvent (QMouseEvent *me)\fC [protected, virtual]\fP"Handle a mouse release event for the observed widget. +.PP +\fBParameters:\fP +.RS 4 +\fIme\fP Mouse event +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBeventFilter()\fP, \fBwidgetMousePressEvent()\fP, \fBwidgetMouseMoveEvent()\fP, +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPicker.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPicker.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPicker.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPicker.3 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,1083 @@ +.TH "QwtPicker" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPicker \- +.PP +\fBQwtPicker\fP provides selections on a widget. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtEventPattern\fP. +.PP +Inherited by \fBQwtPlotPicker\fP. +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBRubberBand\fP { \fBNoRubberBand\fP = 0, \fBHLineRubberBand\fP, \fBVLineRubberBand\fP, \fBCrossRubberBand\fP, \fBRectRubberBand\fP, \fBEllipseRubberBand\fP, \fBPolygonRubberBand\fP, \fBUserRubberBand\fP = 100 }" +.br +.ti -1c +.RI "enum \fBDisplayMode\fP { \fBAlwaysOff\fP, \fBAlwaysOn\fP, \fBActiveOnly\fP }" +.br +.ti -1c +.RI "enum \fBResizeMode\fP { \fBStretch\fP, \fBKeepSize\fP }" +.br +.in -1c +.SS "Public Slots" + +.in +1c +.ti -1c +.RI "void \fBsetEnabled\fP (bool)" +.br +.in -1c +.SS "Signals" + +.in +1c +.ti -1c +.RI "void \fBactivated\fP (bool on)" +.br +.ti -1c +.RI "void \fBselected\fP (const QPolygon &polygon)" +.br +.ti -1c +.RI "void \fBappended\fP (const QPoint &pos)" +.br +.ti -1c +.RI "void \fBmoved\fP (const QPoint &pos)" +.br +.ti -1c +.RI "void \fBremoved\fP (const QPoint &pos)" +.br +.ti -1c +.RI "void \fBchanged\fP (const QPolygon &selection)" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPicker\fP (QWidget *parent)" +.br +.ti -1c +.RI "\fBQwtPicker\fP (\fBRubberBand\fP rubberBand, \fBDisplayMode\fP trackerMode, QWidget *)" +.br +.ti -1c +.RI "virtual \fB~QwtPicker\fP ()" +.br +.ti -1c +.RI "void \fBsetStateMachine\fP (\fBQwtPickerMachine\fP *)" +.br +.ti -1c +.RI "const \fBQwtPickerMachine\fP * \fBstateMachine\fP () const " +.br +.ti -1c +.RI "\fBQwtPickerMachine\fP * \fBstateMachine\fP ()" +.br +.ti -1c +.RI "void \fBsetRubberBand\fP (\fBRubberBand\fP)" +.br +.ti -1c +.RI "\fBRubberBand\fP \fBrubberBand\fP () const " +.br +.ti -1c +.RI "void \fBsetTrackerMode\fP (\fBDisplayMode\fP)" +.br +.ti -1c +.RI "\fBDisplayMode\fP \fBtrackerMode\fP () const " +.br +.ti -1c +.RI "void \fBsetResizeMode\fP (\fBResizeMode\fP)" +.br +.ti -1c +.RI "\fBResizeMode\fP \fBresizeMode\fP () const " +.br +.ti -1c +.RI "void \fBsetRubberBandPen\fP (const QPen &)" +.br +.ti -1c +.RI "QPen \fBrubberBandPen\fP () const " +.br +.ti -1c +.RI "void \fBsetTrackerPen\fP (const QPen &)" +.br +.ti -1c +.RI "QPen \fBtrackerPen\fP () const " +.br +.ti -1c +.RI "void \fBsetTrackerFont\fP (const QFont &)" +.br +.ti -1c +.RI "QFont \fBtrackerFont\fP () const " +.br +.ti -1c +.RI "bool \fBisEnabled\fP () const " +.br +.ti -1c +.RI "bool \fBisActive\fP () const " +.br +.ti -1c +.RI "virtual bool \fBeventFilter\fP (QObject *, QEvent *)" +.br +.ti -1c +.RI "QWidget * \fBparentWidget\fP ()" +.br +.ti -1c +.RI "const QWidget * \fBparentWidget\fP () const " +.br +.ti -1c +.RI "virtual QRect \fBpickRect\fP () const " +.br +.ti -1c +.RI "virtual void \fBdrawRubberBand\fP (QPainter *) const " +.br +.ti -1c +.RI "virtual void \fBdrawTracker\fP (QPainter *) const " +.br +.ti -1c +.RI "virtual \fBQwtText\fP \fBtrackerText\fP (const QPoint &pos) const " +.br +.ti -1c +.RI "QPoint \fBtrackerPosition\fP () const " +.br +.ti -1c +.RI "virtual QRect \fBtrackerRect\fP (const QFont &) const " +.br +.ti -1c +.RI "QPolygon \fBselection\fP () const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual QPolygon \fBadjustedPoints\fP (const QPolygon &) const " +.br +.ti -1c +.RI "virtual void \fBtransition\fP (const QEvent *)" +.br +.ti -1c +.RI "virtual void \fBbegin\fP ()" +.br +.ti -1c +.RI "virtual void \fBappend\fP (const QPoint &)" +.br +.ti -1c +.RI "virtual void \fBmove\fP (const QPoint &)" +.br +.ti -1c +.RI "virtual void \fBremove\fP ()" +.br +.ti -1c +.RI "virtual bool \fBend\fP (bool ok=true)" +.br +.ti -1c +.RI "virtual bool \fBaccept\fP (QPolygon &) const " +.br +.ti -1c +.RI "virtual void \fBreset\fP ()" +.br +.ti -1c +.RI "virtual void \fBwidgetMousePressEvent\fP (QMouseEvent *)" +.br +.ti -1c +.RI "virtual void \fBwidgetMouseReleaseEvent\fP (QMouseEvent *)" +.br +.ti -1c +.RI "virtual void \fBwidgetMouseDoubleClickEvent\fP (QMouseEvent *)" +.br +.ti -1c +.RI "virtual void \fBwidgetMouseMoveEvent\fP (QMouseEvent *)" +.br +.ti -1c +.RI "virtual void \fBwidgetWheelEvent\fP (QWheelEvent *)" +.br +.ti -1c +.RI "virtual void \fBwidgetKeyPressEvent\fP (QKeyEvent *)" +.br +.ti -1c +.RI "virtual void \fBwidgetKeyReleaseEvent\fP (QKeyEvent *)" +.br +.ti -1c +.RI "virtual void \fBwidgetEnterEvent\fP (QEvent *)" +.br +.ti -1c +.RI "virtual void \fBwidgetLeaveEvent\fP (QEvent *)" +.br +.ti -1c +.RI "virtual void \fBstretchSelection\fP (const QSize &oldSize, const QSize &newSize)" +.br +.ti -1c +.RI "virtual void \fBupdateDisplay\fP ()" +.br +.ti -1c +.RI "const QWidget * \fBrubberBandWidget\fP () const " +.br +.ti -1c +.RI "const QWidget * \fBtrackerWidget\fP () const " +.br +.ti -1c +.RI "const QPolygon & \fBpickedPoints\fP () const " +.br +.in -1c +.SH "Detailed Description" +.PP +\fBQwtPicker\fP provides selections on a widget. + +\fBQwtPicker\fP filters all enter, leave, mouse and keyboard events of a widget and translates them into an array of selected points. +.PP +The way how the points are collected depends on type of state machine that is connected to the picker. Qwt offers a couple of predefined state machines for selecting: +.PP +.IP "\(bu" 2 +Nothing +.br + \fBQwtPickerTrackerMachine\fP +.IP "\(bu" 2 +Single points +.br + \fBQwtPickerClickPointMachine\fP, \fBQwtPickerDragPointMachine\fP +.IP "\(bu" 2 +Rectangles +.br + \fBQwtPickerClickRectMachine\fP, \fBQwtPickerDragRectMachine\fP +.IP "\(bu" 2 +Polygons +.br + \fBQwtPickerPolygonMachine\fP +.PP +.PP +While these state machines cover the most common ways to collect points it is also possible to implement individual machines as well. +.PP +\fBQwtPicker\fP translates the picked points into a selection using the adjustedPoints method. adjustedPoints is intended to be reimplemented to fixup the selection according to application specific requirements. (F.e. when an application accepts rectangles of a fixed aspect ratio only.) +.PP +Optionally \fBQwtPicker\fP support the process of collecting points by a rubberband and tracker displaying a text for the current mouse position. +.PP +\fBExample\fP +.RS 4 + +.PP +.nf +#include +#include + +QwtPicker *picker = new QwtPicker(widget); +picker->setStateMachine(new QwtPickerDragRectMachine); +picker->setTrackerMode(QwtPicker::ActiveOnly); +picker->setRubberBand(QwtPicker::RectRubberBand); +.fi +.PP + +.br +.RE +.PP +The state machine triggers the following commands: +.PP +.IP "\(bu" 2 +\fBbegin()\fP +.br + Activate/Initialize the selection. +.IP "\(bu" 2 +\fBappend()\fP +.br + Add a new point +.IP "\(bu" 2 +\fBmove()\fP +.br + Change the position of the last point. +.IP "\(bu" 2 +\fBremove()\fP +.br + Remove the last point. +.IP "\(bu" 2 +\fBend()\fP +.br + Terminate the selection and call accept to validate the picked points. +.PP +.PP +The picker is active (\fBisActive()\fP), between \fBbegin()\fP and \fBend()\fP. In active state the rubberband is displayed, and the tracker is visible in case of trackerMode is ActiveOnly or AlwaysOn. +.PP +The cursor can be moved using the arrow keys. All selections can be aborted using the abort key. (\fBQwtEventPattern::KeyPatternCode\fP) +.PP +\fBWarning:\fP +.RS 4 +In case of QWidget::NoFocus the focus policy of the observed widget is set to QWidget::WheelFocus and mouse tracking will be manipulated while the picker is active, or if \fBtrackerMode()\fP is AlwayOn. +.RE +.PP + +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtPicker::DisplayMode\fP" +.PP +Display mode. \fBSee also:\fP +.RS 4 +\fBsetTrackerMode()\fP, \fBtrackerMode()\fP, \fBisActive()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIAlwaysOff \fP\fP +Display never. +.TP +\fB\fIAlwaysOn \fP\fP +Display always. +.TP +\fB\fIActiveOnly \fP\fP +Display only when the selection is active. +.SS "enum \fBQwtPicker::ResizeMode\fP"Controls what to do with the selected points of an active selection when the observed widget is resized. +.PP +The default value is \fBQwtPicker::Stretch\fP. +.PP +\fBSee also:\fP +.RS 4 +\fBsetResizeMode()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIStretch \fP\fP +All points are scaled according to the new size,. +.TP +\fB\fIKeepSize \fP\fP +All points remain unchanged. +.SS "enum \fBQwtPicker::RubberBand\fP"Rubberband style +.PP +The default value is \fBQwtPicker::NoRubberBand\fP. +.PP +\fBSee also:\fP +.RS 4 +\fBsetRubberBand()\fP, \fBrubberBand()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fINoRubberBand \fP\fP +No rubberband. +.TP +\fB\fIHLineRubberBand \fP\fP +A horizontal line ( only for QwtPicker::PointSelection ) +.TP +\fB\fIVLineRubberBand \fP\fP +A vertical line ( only for QwtPicker::PointSelection ) +.TP +\fB\fICrossRubberBand \fP\fP +A crosshair ( only for QwtPicker::PointSelection ) +.TP +\fB\fIRectRubberBand \fP\fP +A rectangle ( only for QwtPicker::RectSelection ) +.TP +\fB\fIEllipseRubberBand \fP\fP +An ellipse ( only for QwtPicker::RectSelection ) +.TP +\fB\fIPolygonRubberBand \fP\fP +A polygon ( only for \fBQwtPicker\fP::&PolygonSelection ) +.TP +\fB\fIUserRubberBand \fP\fP +Values >= UserRubberBand can be used to define additional rubber bands. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPicker::QwtPicker (QWidget *parent)\fC [explicit]\fP"Constructor +.PP +Creates an picker that is enabled, but without a state machine. rubberband and tracker are disabled. +.PP +\fBParameters:\fP +.RS 4 +\fIparent\fP Parent widget, that will be observed +.RE +.PP + +.SS "QwtPicker::QwtPicker (\fBRubberBand\fPrubberBand, \fBDisplayMode\fPtrackerMode, QWidget *parent)\fC [explicit]\fP"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fIrubberBand\fP Rubberband style +.br +\fItrackerMode\fP Tracker mode +.br +\fIparent\fP Parent widget, that will be observed +.RE +.PP + +.SS "QwtPicker::~QwtPicker ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "bool QwtPicker::accept (QPolygon &selection) const\fC [protected, virtual]\fP" +.PP +Validate and fixup the selection. Accepts all selections unmodified +.PP +\fBParameters:\fP +.RS 4 +\fIselection\fP Selection to validate and fixup +.RE +.PP +\fBReturns:\fP +.RS 4 +true, when accepted, false otherwise +.RE +.PP + +.PP +Reimplemented in \fBQwtPlotZoomer\fP. +.SS "void QwtPicker::activated (boolon)\fC [signal]\fP"A signal indicating, when the picker has been activated. Together with \fBsetEnabled()\fP it can be used to implement selections with more than one picker. +.PP +\fBParameters:\fP +.RS 4 +\fIon\fP True, when the picker has been activated +.RE +.PP + +.SS "QPolygon QwtPicker::adjustedPoints (const QPolygon &points) const\fC [protected, virtual]\fP" +.PP +Map the \fBpickedPoints()\fP into a \fBselection()\fP \fBadjustedPoints()\fP maps the points, that have been collected on the \fBparentWidget()\fP into a \fBselection()\fP. The default implementation simply returns the points unmodified. +.PP +The reason, why a \fBselection()\fP differs from the picked points depends on the application requirements. F.e. : +.PP +.IP "\(bu" 2 +A rectangular selection might need to have a specific aspect ratio only. +.br + +.IP "\(bu" 2 +A selection could accept non intersecting polygons only. +.br + +.IP "\(bu" 2 +... +.br + +.PP +.PP +The example below is for a rectangular selection, where the first point is the center of the selected rectangle. +.PP +\fBExample\fP +.RS 4 + +.PP +.nf +QPolygon MyPicker::adjustedPoints(const QPolygon &points) const +{ + QPolygon adjusted; + if ( points.size() == 2 ) + { + const int width = qAbs(points[1].x() - points[0].x()); + const int height = qAbs(points[1].y() - points[0].y()); + + QRect rect(0, 0, 2 * width, 2 * height); + rect.moveCenter(points[0]); + + adjusted += rect.topLeft(); + adjusted += rect.bottomRight(); + } + return adjusted; +} +.fi +.PP + +.br + +.RE +.PP + +.SS "void QwtPicker::append (const QPoint &pos)\fC [protected, virtual]\fP"Append a point to the selection and update rubberband and tracker. The \fBappended()\fP signal is emitted. +.PP +\fBParameters:\fP +.RS 4 +\fIpos\fP Additional point +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBisActive()\fP, \fBbegin()\fP, \fBend()\fP, \fBmove()\fP, \fBappended()\fP +.RE +.PP + +.PP +Reimplemented in \fBQwtPlotPicker\fP. +.SS "void QwtPicker::appended (const QPoint &pos)\fC [signal]\fP"A signal emitted when a point has been appended to the selection +.PP +\fBParameters:\fP +.RS 4 +\fIpos\fP Position of the appended point. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBappend()\fP. \fBmoved()\fP +.RE +.PP + +.SS "void QwtPicker::begin ()\fC [protected, virtual]\fP"Open a selection setting the state to active +.PP +\fBSee also:\fP +.RS 4 +\fBisActive()\fP, \fBend()\fP, \fBappend()\fP, \fBmove()\fP +.RE +.PP + +.PP +Reimplemented in \fBQwtPlotZoomer\fP. +.SS "void QwtPicker::changed (const QPolygon &selection)\fC [signal]\fP"A signal emitted when the active selection has been changed. This might happen when the observed widget is resized. +.PP +\fBParameters:\fP +.RS 4 +\fIselection\fP Changed selection +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBstretchSelection()\fP +.RE +.PP + +.SS "void QwtPicker::drawRubberBand (QPainter *painter) const\fC [virtual]\fP"Draw a rubberband, depending on \fBrubberBand()\fP +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter, initialized with clip rect +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBrubberBand()\fP, \fBRubberBand\fP +.RE +.PP + +.SS "void QwtPicker::drawTracker (QPainter *painter) const\fC [virtual]\fP"Draw the tracker +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBtrackerRect()\fP, \fBtrackerText()\fP +.RE +.PP + +.SS "bool QwtPicker::end (boolok = \fCtrue\fP)\fC [protected, virtual]\fP" +.PP +Close a selection setting the state to inactive. The selection is validated and maybe fixed by \fBaccept()\fP. +.PP +\fBParameters:\fP +.RS 4 +\fIok\fP If true, complete the selection and emit a selected signal otherwise discard the selection. +.RE +.PP +\fBReturns:\fP +.RS 4 +true if the selection is accepted, false otherwise +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBisActive()\fP, \fBbegin()\fP, \fBappend()\fP, \fBmove()\fP, \fBselected()\fP, \fBaccept()\fP +.RE +.PP + +.PP +Reimplemented in \fBQwtPlotPicker\fP, and \fBQwtPlotZoomer\fP. +.SS "bool QwtPicker::eventFilter (QObject *o, QEvent *e)\fC [virtual]\fP" +.PP +Event filter. When \fBisEnabled()\fP == true all events of the observed widget are filtered. Mouse and keyboard events are translated into widgetMouse- and widgetKey- and widgetWheel-events. Paint and Resize events are handled to keep rubberband and tracker up to date. +.PP +\fBSee also:\fP +.RS 4 +event(), \fBwidgetEnterEvent()\fP, \fBwidgetLeaveEvent()\fP, \fBwidgetMousePressEvent()\fP, \fBwidgetMouseReleaseEvent()\fP, \fBwidgetMouseDoubleClickEvent()\fP, \fBwidgetMouseMoveEvent()\fP, \fBwidgetWheelEvent()\fP, \fBwidgetKeyPressEvent()\fP, \fBwidgetKeyReleaseEvent()\fP +.RE +.PP + +.SS "bool QwtPicker::isActive () const"A picker is active between \fBbegin()\fP and \fBend()\fP. +.PP +\fBReturns:\fP +.RS 4 +true if the selection is active. +.RE +.PP + +.SS "bool QwtPicker::isEnabled () const"\fBReturns:\fP +.RS 4 +true when enabled, false otherwise +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetEnabled()\fP, \fBeventFilter()\fP +.RE +.PP + +.SS "void QwtPicker::move (const QPoint &pos)\fC [protected, virtual]\fP"Move the last point of the selection The \fBmoved()\fP signal is emitted. +.PP +\fBParameters:\fP +.RS 4 +\fIpos\fP New position +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBisActive()\fP, \fBbegin()\fP, \fBend()\fP, \fBappend()\fP +.RE +.PP + +.PP +Reimplemented in \fBQwtPlotPicker\fP. +.SS "void QwtPicker::moved (const QPoint &pos)\fC [signal]\fP"A signal emitted whenever the last appended point of the selection has been moved. +.PP +\fBParameters:\fP +.RS 4 +\fIpos\fP Position of the moved last point of the selection. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBmove()\fP, \fBappended()\fP +.RE +.PP + +.SS "QWidget * QwtPicker::parentWidget ()" +.PP +Return the parent widget, where the selection happens. +.SS "const QWidget * QwtPicker::parentWidget () const" +.PP +Return the parent widget, where the selection happens. +.SS "const QPolygon & QwtPicker::pickedPoints () const\fC [protected]\fP"Return the points, that have been collected so far. The \fBselection()\fP is calculated from the \fBpickedPoints()\fP in \fBadjustedPoints()\fP. +.PP +\fBReturns:\fP +.RS 4 +Picked points +.RE +.PP + +.SS "QRect QwtPicker::pickRect () const\fC [virtual]\fP"Find the area of the observed widget, where selection might happen. +.PP +\fBReturns:\fP +.RS 4 +QFrame::contentsRect() if it is a QFrame, QWidget::rect() otherwise. +.RE +.PP + +.SS "void QwtPicker::remove ()\fC [protected, virtual]\fP"Remove the last point of the selection The \fBremoved()\fP signal is emitted. +.PP +\fBSee also:\fP +.RS 4 +\fBisActive()\fP, \fBbegin()\fP, \fBend()\fP, \fBappend()\fP, \fBmove()\fP +.RE +.PP + +.SS "void QwtPicker::removed (const QPoint &pos)\fC [signal]\fP"A signal emitted whenever the last appended point of the selection has been removed. +.PP +\fBSee also:\fP +.RS 4 +\fBremove()\fP, \fBappended()\fP +.RE +.PP + +.SS "void QwtPicker::reset ()\fC [protected, virtual]\fP"Reset the state machine and terminate (end(false)) the selection +.SS "\fBQwtPicker::ResizeMode\fP QwtPicker::resizeMode () const"\fBReturns:\fP +.RS 4 +Resize mode +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetResizeMode()\fP, \fBResizeMode\fP +.RE +.PP + +.SS "\fBQwtPicker::RubberBand\fP QwtPicker::rubberBand () const"\fBReturns:\fP +.RS 4 +Rubberband style +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetRubberBand()\fP, \fBRubberBand\fP, \fBrubberBandPen()\fP +.RE +.PP + +.SS "QPen QwtPicker::rubberBandPen () const"\fBReturns:\fP +.RS 4 +Rubberband pen +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetRubberBandPen()\fP, \fBrubberBand()\fP +.RE +.PP + +.SS "const QWidget * QwtPicker::rubberBandWidget () const\fC [protected]\fP"\fBReturns:\fP +.RS 4 +Widget displaying the rubberband +.RE +.PP + +.SS "void QwtPicker::selected (const QPolygon &polygon)\fC [signal]\fP"A signal emitting the selected points, at the end of a selection. +.PP +\fBParameters:\fP +.RS 4 +\fIpolygon\fP Selected points +.RE +.PP + +.SS "QPolygon QwtPicker::selection () const"\fBReturns:\fP +.RS 4 +Selected points +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBpickedPoints()\fP, \fBadjustedPoints()\fP +.RE +.PP + +.SS "void QwtPicker::setEnabled (boolenabled)\fC [slot]\fP" +.PP +En/disable the picker. When enabled is true an event filter is installed for the observed widget, otherwise the event filter is removed. +.PP +\fBParameters:\fP +.RS 4 +\fIenabled\fP true or false +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBisEnabled()\fP, \fBeventFilter()\fP +.RE +.PP + +.SS "void QwtPicker::setResizeMode (\fBResizeMode\fPmode)" +.PP +Set the resize mode. The resize mode controls what to do with the selected points of an active selection when the observed widget is resized. +.PP +Stretch means the points are scaled according to the new size, KeepSize means the points remain unchanged. +.PP +The default mode is Stretch. +.PP +\fBParameters:\fP +.RS 4 +\fImode\fP Resize mode +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBresizeMode()\fP, \fBResizeMode\fP +.RE +.PP + +.SS "void QwtPicker::setRubberBand (\fBRubberBand\fPrubberBand)"Set the rubberband style +.PP +\fBParameters:\fP +.RS 4 +\fIrubberBand\fP Rubberband style The default value is NoRubberBand. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBrubberBand()\fP, \fBRubberBand\fP, \fBsetRubberBandPen()\fP +.RE +.PP + +.SS "void QwtPicker::setRubberBandPen (const QPen &pen)"Set the pen for the rubberband +.PP +\fBParameters:\fP +.RS 4 +\fIpen\fP Rubberband pen +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBrubberBandPen()\fP, \fBsetRubberBand()\fP +.RE +.PP + +.SS "void QwtPicker::setStateMachine (\fBQwtPickerMachine\fP *stateMachine)"Set a state machine and delete the previous one +.PP +\fBParameters:\fP +.RS 4 +\fIstateMachine\fP State machine +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBstateMachine()\fP +.RE +.PP + +.SS "void QwtPicker::setTrackerFont (const QFont &font)"Set the font for the tracker +.PP +\fBParameters:\fP +.RS 4 +\fIfont\fP Tracker font +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBtrackerFont()\fP, \fBsetTrackerMode()\fP, \fBsetTrackerPen()\fP +.RE +.PP + +.SS "void QwtPicker::setTrackerMode (\fBDisplayMode\fPmode)" +.PP +Set the display mode of the tracker. A tracker displays information about current position of the cursor as a string. The display mode controls if the tracker has to be displayed whenever the observed widget has focus and cursor (AlwaysOn), never (AlwaysOff), or only when the selection is active (ActiveOnly). +.PP +\fBParameters:\fP +.RS 4 +\fImode\fP Tracker display mode +.RE +.PP +\fBWarning:\fP +.RS 4 +In case of AlwaysOn, mouseTracking will be enabled for the observed widget. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBtrackerMode()\fP, \fBDisplayMode\fP +.RE +.PP + +.SS "void QwtPicker::setTrackerPen (const QPen &pen)"Set the pen for the tracker +.PP +\fBParameters:\fP +.RS 4 +\fIpen\fP Tracker pen +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBtrackerPen()\fP, \fBsetTrackerMode()\fP, \fBsetTrackerFont()\fP +.RE +.PP + +.SS "const \fBQwtPickerMachine\fP * QwtPicker::stateMachine () const"\fBReturns:\fP +.RS 4 +Assigned state machine +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetStateMachine()\fP +.RE +.PP + +.SS "\fBQwtPickerMachine\fP * QwtPicker::stateMachine ()"\fBReturns:\fP +.RS 4 +Assigned state machine +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetStateMachine()\fP +.RE +.PP + +.SS "void QwtPicker::stretchSelection (const QSize &oldSize, const QSize &newSize)\fC [protected, virtual]\fP"Scale the selection by the ratios of oldSize and newSize The \fBchanged()\fP signal is emitted. +.PP +\fBParameters:\fP +.RS 4 +\fIoldSize\fP Previous size +.br +\fInewSize\fP Current size +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBResizeMode\fP, \fBsetResizeMode()\fP, \fBresizeMode()\fP +.RE +.PP + +.SS "QFont QwtPicker::trackerFont () const"\fBReturns:\fP +.RS 4 +Tracker font +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetTrackerFont()\fP, \fBtrackerMode()\fP, \fBtrackerPen()\fP +.RE +.PP + +.SS "\fBQwtPicker::DisplayMode\fP QwtPicker::trackerMode () const"\fBReturns:\fP +.RS 4 +Tracker display mode +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetTrackerMode()\fP, \fBDisplayMode\fP +.RE +.PP + +.SS "QPen QwtPicker::trackerPen () const"\fBReturns:\fP +.RS 4 +Tracker pen +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetTrackerPen()\fP, \fBtrackerMode()\fP, \fBtrackerFont()\fP +.RE +.PP + +.SS "QPoint QwtPicker::trackerPosition () const"\fBReturns:\fP +.RS 4 +Current position of the tracker +.RE +.PP + +.SS "QRect QwtPicker::trackerRect (const QFont &font) const\fC [virtual]\fP"Calculate the bounding rectangle for the tracker text from the current position of the tracker +.PP +\fBParameters:\fP +.RS 4 +\fIfont\fP Font of the tracker text +.RE +.PP +\fBReturns:\fP +.RS 4 +Bounding rectangle of the tracker text +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBtrackerPosition()\fP +.RE +.PP + +.SS "\fBQwtText\fP QwtPicker::trackerText (const QPoint &pos) const\fC [virtual]\fP" +.PP +Return the label for a position. In case of HLineRubberBand the label is the value of the y position, in case of VLineRubberBand the value of the x position. Otherwise the label contains x and y position separated by a ',' . +.PP +The format for the string conversion is '%d'. +.PP +\fBParameters:\fP +.RS 4 +\fIpos\fP Position +.RE +.PP +\fBReturns:\fP +.RS 4 +Converted position as string +.RE +.PP + +.PP +Reimplemented in \fBQwtPlotPicker\fP. +.SS "const QWidget * QwtPicker::trackerWidget () const\fC [protected]\fP"\fBReturns:\fP +.RS 4 +Widget displaying the tracker text +.RE +.PP + +.SS "void QwtPicker::transition (const QEvent *e)\fC [protected, virtual]\fP"Passes an event to the state machine and executes the resulting commands. Append and Move commands use the current position of the cursor (QCursor::pos()). +.PP +\fBParameters:\fP +.RS 4 +\fIe\fP Event +.RE +.PP + +.SS "void QwtPicker::updateDisplay ()\fC [protected, virtual]\fP" +.PP +Update the state of rubberband and tracker label. +.SS "void QwtPicker::widgetEnterEvent (QEvent *event)\fC [protected, virtual]\fP"Handle a enter event for the observed widget. +.PP +\fBSee also:\fP +.RS 4 +\fBeventFilter()\fP, \fBwidgetMousePressEvent()\fP, \fBwidgetMouseReleaseEvent()\fP, \fBwidgetMouseDoubleClickEvent()\fP, \fBwidgetWheelEvent()\fP, \fBwidgetKeyPressEvent()\fP, \fBwidgetKeyReleaseEvent()\fP +.RE +.PP + +.SS "void QwtPicker::widgetKeyPressEvent (QKeyEvent *ke)\fC [protected, virtual]\fP"Handle a key press event for the observed widget. +.PP +Selections can be completely done by the keyboard. The arrow keys move the cursor, the abort key aborts a selection. All other keys are handled by the current state machine. +.PP +\fBSee also:\fP +.RS 4 +\fBeventFilter()\fP, \fBwidgetMousePressEvent()\fP, \fBwidgetMouseReleaseEvent()\fP, \fBwidgetMouseDoubleClickEvent()\fP, \fBwidgetMouseMoveEvent()\fP, \fBwidgetWheelEvent()\fP, \fBwidgetKeyReleaseEvent()\fP, \fBstateMachine()\fP, \fBQwtEventPattern::KeyPatternCode\fP +.RE +.PP + +.PP +Reimplemented in \fBQwtPlotZoomer\fP. +.SS "void QwtPicker::widgetKeyReleaseEvent (QKeyEvent *ke)\fC [protected, virtual]\fP"Handle a key release event for the observed widget. +.PP +Passes the event to the state machine. +.PP +\fBSee also:\fP +.RS 4 +\fBeventFilter()\fP, \fBwidgetMousePressEvent()\fP, \fBwidgetMouseReleaseEvent()\fP, \fBwidgetMouseDoubleClickEvent()\fP, \fBwidgetMouseMoveEvent()\fP, \fBwidgetWheelEvent()\fP, \fBwidgetKeyPressEvent()\fP, \fBstateMachine()\fP +.RE +.PP + +.SS "void QwtPicker::widgetLeaveEvent (QEvent *event)\fC [protected, virtual]\fP"Handle a leave event for the observed widget. +.PP +\fBSee also:\fP +.RS 4 +\fBeventFilter()\fP, \fBwidgetMousePressEvent()\fP, \fBwidgetMouseReleaseEvent()\fP, \fBwidgetMouseDoubleClickEvent()\fP, \fBwidgetWheelEvent()\fP, \fBwidgetKeyPressEvent()\fP, \fBwidgetKeyReleaseEvent()\fP +.RE +.PP + +.SS "void QwtPicker::widgetMouseDoubleClickEvent (QMouseEvent *me)\fC [protected, virtual]\fP"Handle mouse double click event for the observed widget. +.PP +Empty implementation, does nothing. +.PP +\fBSee also:\fP +.RS 4 +\fBeventFilter()\fP, \fBwidgetMousePressEvent()\fP, \fBwidgetMouseReleaseEvent()\fP, \fBwidgetMouseMoveEvent()\fP, \fBwidgetWheelEvent()\fP, \fBwidgetKeyPressEvent()\fP, \fBwidgetKeyReleaseEvent()\fP +.RE +.PP + +.SS "void QwtPicker::widgetMouseMoveEvent (QMouseEvent *e)\fC [protected, virtual]\fP"Handle a mouse move event for the observed widget. +.PP +\fBSee also:\fP +.RS 4 +\fBeventFilter()\fP, \fBwidgetMousePressEvent()\fP, \fBwidgetMouseReleaseEvent()\fP, \fBwidgetMouseDoubleClickEvent()\fP, \fBwidgetWheelEvent()\fP, \fBwidgetKeyPressEvent()\fP, \fBwidgetKeyReleaseEvent()\fP +.RE +.PP + +.SS "void QwtPicker::widgetMousePressEvent (QMouseEvent *e)\fC [protected, virtual]\fP"Handle a mouse press event for the observed widget. +.PP +\fBSee also:\fP +.RS 4 +\fBeventFilter()\fP, \fBwidgetMouseReleaseEvent()\fP, \fBwidgetMouseDoubleClickEvent()\fP, \fBwidgetMouseMoveEvent()\fP, \fBwidgetWheelEvent()\fP, \fBwidgetKeyPressEvent()\fP, \fBwidgetKeyReleaseEvent()\fP +.RE +.PP + +.SS "void QwtPicker::widgetMouseReleaseEvent (QMouseEvent *e)\fC [protected, virtual]\fP"Handle a mouse relase event for the observed widget. +.PP +\fBSee also:\fP +.RS 4 +\fBeventFilter()\fP, \fBwidgetMousePressEvent()\fP, \fBwidgetMouseDoubleClickEvent()\fP, \fBwidgetMouseMoveEvent()\fP, \fBwidgetWheelEvent()\fP, \fBwidgetKeyPressEvent()\fP, \fBwidgetKeyReleaseEvent()\fP +.RE +.PP + +.PP +Reimplemented in \fBQwtPlotZoomer\fP. +.SS "void QwtPicker::widgetWheelEvent (QWheelEvent *e)\fC [protected, virtual]\fP"Handle a wheel event for the observed widget. +.PP +Move the last point of the selection in case of \fBisActive()\fP == true +.PP +\fBSee also:\fP +.RS 4 +\fBeventFilter()\fP, \fBwidgetMousePressEvent()\fP, \fBwidgetMouseReleaseEvent()\fP, \fBwidgetMouseDoubleClickEvent()\fP, \fBwidgetMouseMoveEvent()\fP, \fBwidgetKeyPressEvent()\fP, \fBwidgetKeyReleaseEvent()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPickerClickPointMachine.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPickerClickPointMachine.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPickerClickPointMachine.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPickerClickPointMachine.3 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,53 @@ +.TH "QwtPickerClickPointMachine" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPickerClickPointMachine \- +.PP +A state machine for point selections. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtPickerMachine\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPickerClickPointMachine\fP ()" +.br +.ti -1c +.RI "virtual QList< \fBCommand\fP > \fBtransition\fP (const \fBQwtEventPattern\fP &, const QEvent *)" +.br +.in -1c +.SH "Detailed Description" +.PP +A state machine for point selections. + +Pressing QwtEventPattern::MouseSelect1 or QwtEventPattern::KeySelect1 selects a point. +.PP +\fBSee also:\fP +.RS 4 +\fBQwtEventPattern::MousePatternCode\fP, \fBQwtEventPattern::KeyPatternCode\fP +.RE +.PP + +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPickerClickPointMachine::QwtPickerClickPointMachine ()" +.PP +Constructor. +.SH "Member Function Documentation" +.PP +.SS "QList< \fBQwtPickerMachine::Command\fP > QwtPickerClickPointMachine::transition (const \fBQwtEventPattern\fP &eventPattern, const QEvent *e)\fC [virtual]\fP" +.PP +Transition. +.PP +Implements \fBQwtPickerMachine\fP. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPickerClickRectMachine.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPickerClickRectMachine.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPickerClickRectMachine.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPickerClickRectMachine.3 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,53 @@ +.TH "QwtPickerClickRectMachine" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPickerClickRectMachine \- +.PP +A state machine for rectangle selections. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtPickerMachine\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPickerClickRectMachine\fP ()" +.br +.ti -1c +.RI "virtual QList< \fBCommand\fP > \fBtransition\fP (const \fBQwtEventPattern\fP &, const QEvent *)" +.br +.in -1c +.SH "Detailed Description" +.PP +A state machine for rectangle selections. + +Pressing QwtEventPattern::MouseSelect1 starts the selection, releasing it selects the first point. Pressing it again selects the second point and terminates the selection. Pressing QwtEventPattern::KeySelect1 also starts the selection, a second press selects the first point. A third one selects the second point and terminates the selection. +.PP +\fBSee also:\fP +.RS 4 +\fBQwtEventPattern::MousePatternCode\fP, \fBQwtEventPattern::KeyPatternCode\fP +.RE +.PP + +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPickerClickRectMachine::QwtPickerClickRectMachine ()" +.PP +Constructor. +.SH "Member Function Documentation" +.PP +.SS "QList< \fBQwtPickerMachine::Command\fP > QwtPickerClickRectMachine::transition (const \fBQwtEventPattern\fP &eventPattern, const QEvent *e)\fC [virtual]\fP" +.PP +Transition. +.PP +Implements \fBQwtPickerMachine\fP. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPickerDragPointMachine.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPickerDragPointMachine.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPickerDragPointMachine.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPickerDragPointMachine.3 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,46 @@ +.TH "QwtPickerDragPointMachine" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPickerDragPointMachine \- +.PP +A state machine for point selections. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtPickerMachine\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPickerDragPointMachine\fP ()" +.br +.ti -1c +.RI "virtual QList< \fBCommand\fP > \fBtransition\fP (const \fBQwtEventPattern\fP &, const QEvent *)" +.br +.in -1c +.SH "Detailed Description" +.PP +A state machine for point selections. + +Pressing QwtEventPattern::MouseSelect1 or QwtEventPattern::KeySelect1 starts the selection, releasing QwtEventPattern::MouseSelect1 or a second press of QwtEventPattern::KeySelect1 terminates it. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPickerDragPointMachine::QwtPickerDragPointMachine ()" +.PP +Constructor. +.SH "Member Function Documentation" +.PP +.SS "QList< \fBQwtPickerMachine::Command\fP > QwtPickerDragPointMachine::transition (const \fBQwtEventPattern\fP &eventPattern, const QEvent *e)\fC [virtual]\fP" +.PP +Transition. +.PP +Implements \fBQwtPickerMachine\fP. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPickerDragRectMachine.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPickerDragRectMachine.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPickerDragRectMachine.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPickerDragRectMachine.3 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,53 @@ +.TH "QwtPickerDragRectMachine" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPickerDragRectMachine \- +.PP +A state machine for rectangle selections. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtPickerMachine\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPickerDragRectMachine\fP ()" +.br +.ti -1c +.RI "virtual QList< \fBCommand\fP > \fBtransition\fP (const \fBQwtEventPattern\fP &, const QEvent *)" +.br +.in -1c +.SH "Detailed Description" +.PP +A state machine for rectangle selections. + +Pressing QwtEventPattern::MouseSelect1 selects the first point, releasing it the second point. Pressing QwtEventPattern::KeySelect1 also selects the first point, a second press selects the second point and terminates the selection. +.PP +\fBSee also:\fP +.RS 4 +\fBQwtEventPattern::MousePatternCode\fP, \fBQwtEventPattern::KeyPatternCode\fP +.RE +.PP + +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPickerDragRectMachine::QwtPickerDragRectMachine ()" +.PP +Constructor. +.SH "Member Function Documentation" +.PP +.SS "QList< \fBQwtPickerMachine::Command\fP > QwtPickerDragRectMachine::transition (const \fBQwtEventPattern\fP &eventPattern, const QEvent *e)\fC [virtual]\fP" +.PP +Transition. +.PP +Implements \fBQwtPickerMachine\fP. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPickerMachine.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPickerMachine.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPickerMachine.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPickerMachine.3 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,121 @@ +.TH "QwtPickerMachine" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPickerMachine \- +.PP +A state machine for \fBQwtPicker\fP selections. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherited by \fBQwtPickerClickPointMachine\fP, \fBQwtPickerClickRectMachine\fP, \fBQwtPickerDragPointMachine\fP, \fBQwtPickerDragRectMachine\fP, \fBQwtPickerPolygonMachine\fP, and \fBQwtPickerTrackerMachine\fP. +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBSelectionType\fP { \fBNoSelection\fP = -1, \fBPointSelection\fP, \fBRectSelection\fP, \fBPolygonSelection\fP }" +.br +.ti -1c +.RI "enum \fBCommand\fP { \fBBegin\fP, \fBAppend\fP, \fBMove\fP, \fBRemove\fP, \fBEnd\fP }" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPickerMachine\fP (\fBSelectionType\fP)" +.br +.ti -1c +.RI "virtual \fB~QwtPickerMachine\fP ()" +.br +.ti -1c +.RI "virtual QList< \fBCommand\fP > \fBtransition\fP (const \fBQwtEventPattern\fP &, const QEvent *)=0" +.br +.ti -1c +.RI "void \fBreset\fP ()" +.br +.ti -1c +.RI "int \fBstate\fP () const " +.br +.ti -1c +.RI "void \fBsetState\fP (int)" +.br +.ti -1c +.RI "\fBSelectionType\fP \fBselectionType\fP () const " +.br +.in -1c +.SH "Detailed Description" +.PP +A state machine for \fBQwtPicker\fP selections. + +\fBQwtPickerMachine\fP accepts key and mouse events and translates them into selection commands. +.PP +\fBSee also:\fP +.RS 4 +\fBQwtEventPattern::MousePatternCode\fP, \fBQwtEventPattern::KeyPatternCode\fP +.RE +.PP + +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtPickerMachine::Command\fP" +.PP +Commands - the output of a state machine. +.SS "enum \fBQwtPickerMachine::SelectionType\fP"Type of a selection. +.PP +\fBSee also:\fP +.RS 4 +\fBselectionType()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fINoSelection \fP\fP +The state machine not usable for any type of selection. +.TP +\fB\fIPointSelection \fP\fP +The state machine is for selecting a single point. +.TP +\fB\fIRectSelection \fP\fP +The state machine is for selecting a rectangle (2 points). +.TP +\fB\fIPolygonSelection \fP\fP +The state machine is for selecting a polygon (many points). +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPickerMachine::QwtPickerMachine (\fBSelectionType\fPtype)" +.PP +Constructor. +.SS "QwtPickerMachine::~QwtPickerMachine ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "void QwtPickerMachine::reset ()" +.PP +Set the current state to 0. +.SS "\fBQwtPickerMachine::SelectionType\fP QwtPickerMachine::selectionType () const" +.PP +Return the selection type. +.SS "void QwtPickerMachine::setState (intstate)" +.PP +Change the current state. +.SS "int QwtPickerMachine::state () const" +.PP +Return the current state. +.SS "virtual QList<\fBCommand\fP> QwtPickerMachine::transition (const \fBQwtEventPattern\fP &, const QEvent *)\fC [pure virtual]\fP" +.PP +Transition. +.PP +Implemented in \fBQwtPickerTrackerMachine\fP, \fBQwtPickerClickPointMachine\fP, \fBQwtPickerDragPointMachine\fP, \fBQwtPickerClickRectMachine\fP, \fBQwtPickerDragRectMachine\fP, and \fBQwtPickerPolygonMachine\fP. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPickerPolygonMachine.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPickerPolygonMachine.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPickerPolygonMachine.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPickerPolygonMachine.3 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,53 @@ +.TH "QwtPickerPolygonMachine" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPickerPolygonMachine \- +.PP +A state machine for polygon selections. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtPickerMachine\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPickerPolygonMachine\fP ()" +.br +.ti -1c +.RI "virtual QList< \fBCommand\fP > \fBtransition\fP (const \fBQwtEventPattern\fP &, const QEvent *)" +.br +.in -1c +.SH "Detailed Description" +.PP +A state machine for polygon selections. + +Pressing QwtEventPattern::MouseSelect1 or QwtEventPattern::KeySelect1 starts the selection and selects the first point, or appends a point. Pressing QwtEventPattern::MouseSelect2 or QwtEventPattern::KeySelect2 appends the last point and terminates the selection. +.PP +\fBSee also:\fP +.RS 4 +\fBQwtEventPattern::MousePatternCode\fP, \fBQwtEventPattern::KeyPatternCode\fP +.RE +.PP + +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPickerPolygonMachine::QwtPickerPolygonMachine ()" +.PP +Constructor. +.SH "Member Function Documentation" +.PP +.SS "QList< \fBQwtPickerMachine::Command\fP > QwtPickerPolygonMachine::transition (const \fBQwtEventPattern\fP &eventPattern, const QEvent *e)\fC [virtual]\fP" +.PP +Transition. +.PP +Implements \fBQwtPickerMachine\fP. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPickerTrackerMachine.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPickerTrackerMachine.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPickerTrackerMachine.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPickerTrackerMachine.3 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,46 @@ +.TH "QwtPickerTrackerMachine" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPickerTrackerMachine \- +.PP +A state machine for indicating mouse movements. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtPickerMachine\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPickerTrackerMachine\fP ()" +.br +.ti -1c +.RI "virtual QList< \fBCommand\fP > \fBtransition\fP (const \fBQwtEventPattern\fP &, const QEvent *)" +.br +.in -1c +.SH "Detailed Description" +.PP +A state machine for indicating mouse movements. + +\fBQwtPickerTrackerMachine\fP supports displaying information corresponding to mouse movements, but is not intended for selecting anything. Begin/End are related to Enter/Leave events. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPickerTrackerMachine::QwtPickerTrackerMachine ()" +.PP +Constructor. +.SH "Member Function Documentation" +.PP +.SS "QList< \fBQwtPickerMachine::Command\fP > QwtPickerTrackerMachine::transition (const \fBQwtEventPattern\fP &, const QEvent *e)\fC [virtual]\fP" +.PP +Transition. +.PP +Implements \fBQwtPickerMachine\fP. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlainTextEngine.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlainTextEngine.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlainTextEngine.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlainTextEngine.3 2011-04-15 10:48:58.000000000 +0000 @@ -0,0 +1,145 @@ +.TH "QwtPlainTextEngine" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPlainTextEngine \- +.PP +A text engine for plain texts. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtTextEngine\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPlainTextEngine\fP ()" +.br +.ti -1c +.RI "virtual \fB~QwtPlainTextEngine\fP ()" +.br +.ti -1c +.RI "virtual double \fBheightForWidth\fP (const QFont &font, int flags, const QString &text, double width) const " +.br +.ti -1c +.RI "virtual QSizeF \fBtextSize\fP (const QFont &font, int flags, const QString &text) const " +.br +.ti -1c +.RI "virtual void \fBdraw\fP (QPainter *painter, const QRectF &rect, int flags, const QString &text) const " +.br +.ti -1c +.RI "virtual bool \fBmightRender\fP (const QString &) const " +.br +.ti -1c +.RI "virtual void \fBtextMargins\fP (const QFont &, const QString &, double &left, double &right, double &top, double &bottom) const " +.br +.in -1c +.SH "Detailed Description" +.PP +A text engine for plain texts. + +\fBQwtPlainTextEngine\fP renders texts using the basic Qt classes QPainter and QFontMetrics. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPlainTextEngine::QwtPlainTextEngine ()" +.PP +Constructor. +.SS "QwtPlainTextEngine::~QwtPlainTextEngine ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "void QwtPlainTextEngine::draw (QPainter *painter, const QRectF &rect, intflags, const QString &text) const\fC [virtual]\fP" +.PP +Draw the text in a clipping rectangle. A wrapper for QPainter::drawText. +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIrect\fP Clipping rectangle +.br +\fIflags\fP Bitwise OR of the flags used like in QPainter::drawText +.br +\fItext\fP Text to be rendered +.RE +.PP + +.PP +Implements \fBQwtTextEngine\fP. +.SS "double QwtPlainTextEngine::heightForWidth (const QFont &font, intflags, const QString &text, doublewidth) const\fC [virtual]\fP"Find the height for a given width +.PP +\fBParameters:\fP +.RS 4 +\fIfont\fP Font of the text +.br +\fIflags\fP Bitwise OR of the flags used like in QPainter::drawText +.br +\fItext\fP Text to be rendered +.br +\fIwidth\fP Width +.RE +.PP +\fBReturns:\fP +.RS 4 +Calculated height +.RE +.PP + +.PP +Implements \fBQwtTextEngine\fP. +.SS "bool QwtPlainTextEngine::mightRender (const QString &) const\fC [virtual]\fP"Test if a string can be rendered by this text engine. +.PP +\fBReturns:\fP +.RS 4 +Always true. All texts can be rendered by \fBQwtPlainTextEngine\fP +.RE +.PP + +.PP +Implements \fBQwtTextEngine\fP. +.SS "void QwtPlainTextEngine::textMargins (const QFont &font, const QString &, double &left, double &right, double &top, double &bottom) const\fC [virtual]\fP"Return margins around the texts +.PP +\fBParameters:\fP +.RS 4 +\fIfont\fP Font of the text +.br +\fIleft\fP Return 0 +.br +\fIright\fP Return 0 +.br +\fItop\fP Return value for the top margin +.br +\fIbottom\fP Return value for the bottom margin +.RE +.PP + +.PP +Implements \fBQwtTextEngine\fP. +.SS "QSizeF QwtPlainTextEngine::textSize (const QFont &font, intflags, const QString &text) const\fC [virtual]\fP"Returns the size, that is needed to render text +.PP +\fBParameters:\fP +.RS 4 +\fIfont\fP Font of the text +.br +\fIflags\fP Bitwise OR of the flags used like in QPainter::drawText +.br +\fItext\fP Text to be rendered +.RE +.PP +\fBReturns:\fP +.RS 4 +Caluclated size +.RE +.PP + +.PP +Implements \fBQwtTextEngine\fP. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlot.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlot.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlot.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlot.3 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,1202 @@ +.TH "QwtPlot" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPlot \- +.PP +A 2-D plotting widget. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtPlotDict\fP. +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBAxis\fP { \fByLeft\fP, \fByRight\fP, \fBxBottom\fP, \fBxTop\fP, \fBaxisCnt\fP }" +.br +.ti -1c +.RI "enum \fBLegendPosition\fP { \fBLeftLegend\fP, \fBRightLegend\fP, \fBBottomLegend\fP, \fBTopLegend\fP, \fBExternalLegend\fP }" +.br +.in -1c +.SS "Public Slots" + +.in +1c +.ti -1c +.RI "virtual void \fBreplot\fP ()" +.br +.ti -1c +.RI "void \fBautoRefresh\fP ()" +.br +.in -1c +.SS "Signals" + +.in +1c +.ti -1c +.RI "void \fBlegendClicked\fP (\fBQwtPlotItem\fP *plotItem)" +.br +.ti -1c +.RI "void \fBlegendChecked\fP (\fBQwtPlotItem\fP *plotItem, bool on)" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPlot\fP (QWidget *=NULL)" +.br +.ti -1c +.RI "\fBQwtPlot\fP (const \fBQwtText\fP &title, QWidget *p=NULL)" +.br +.ti -1c +.RI "virtual \fB~QwtPlot\fP ()" +.br +.ti -1c +.RI "void \fBapplyProperties\fP (const QString &)" +.br +.ti -1c +.RI "QString \fBgrabProperties\fP () const " +.br +.ti -1c +.RI "void \fBsetAutoReplot\fP (bool tf=true)" +.br +.ti -1c +.RI "bool \fBautoReplot\fP () const " +.br +.ti -1c +.RI "\fBQwtPlotLayout\fP * \fBplotLayout\fP ()" +.br +.ti -1c +.RI "const \fBQwtPlotLayout\fP * \fBplotLayout\fP () const " +.br +.ti -1c +.RI "void \fBsetTitle\fP (const QString &)" +.br +.ti -1c +.RI "void \fBsetTitle\fP (const \fBQwtText\fP &t)" +.br +.ti -1c +.RI "\fBQwtText\fP \fBtitle\fP () const " +.br +.ti -1c +.RI "\fBQwtTextLabel\fP * \fBtitleLabel\fP ()" +.br +.ti -1c +.RI "const \fBQwtTextLabel\fP * \fBtitleLabel\fP () const " +.br +.ti -1c +.RI "\fBQwtPlotCanvas\fP * \fBcanvas\fP ()" +.br +.ti -1c +.RI "const \fBQwtPlotCanvas\fP * \fBcanvas\fP () const " +.br +.ti -1c +.RI "void \fBsetCanvasBackground\fP (const QBrush &)" +.br +.ti -1c +.RI "QBrush \fBcanvasBackground\fP () const " +.br +.ti -1c +.RI "void \fBsetCanvasLineWidth\fP (int w)" +.br +.ti -1c +.RI "int \fBcanvasLineWidth\fP () const " +.br +.ti -1c +.RI "virtual \fBQwtScaleMap\fP \fBcanvasMap\fP (int axisId) const " +.br +.ti -1c +.RI "double \fBinvTransform\fP (int axisId, int pos) const " +.br +.ti -1c +.RI "double \fBtransform\fP (int axisId, double value) const " +.br +.ti -1c +.RI "\fBQwtScaleEngine\fP * \fBaxisScaleEngine\fP (int axisId)" +.br +.ti -1c +.RI "const \fBQwtScaleEngine\fP * \fBaxisScaleEngine\fP (int axisId) const " +.br +.ti -1c +.RI "void \fBsetAxisScaleEngine\fP (int axisId, \fBQwtScaleEngine\fP *)" +.br +.ti -1c +.RI "void \fBsetAxisAutoScale\fP (int axisId, bool on=true)" +.br +.ti -1c +.RI "bool \fBaxisAutoScale\fP (int axisId) const " +.br +.ti -1c +.RI "void \fBenableAxis\fP (int axisId, bool tf=true)" +.br +.ti -1c +.RI "bool \fBaxisEnabled\fP (int axisId) const " +.br +.ti -1c +.RI "void \fBsetAxisFont\fP (int axisId, const QFont &f)" +.br +.ti -1c +.RI "QFont \fBaxisFont\fP (int axisId) const " +.br +.ti -1c +.RI "void \fBsetAxisScale\fP (int axisId, double min, double max, double step=0)" +.br +.ti -1c +.RI "void \fBsetAxisScaleDiv\fP (int axisId, const \fBQwtScaleDiv\fP &)" +.br +.ti -1c +.RI "void \fBsetAxisScaleDraw\fP (int axisId, \fBQwtScaleDraw\fP *)" +.br +.ti -1c +.RI "double \fBaxisStepSize\fP (int axisId) const " +.br +.ti -1c +.RI "\fBQwtInterval\fP \fBaxisInterval\fP (int axisId) const " +.br +.ti -1c +.RI "const \fBQwtScaleDiv\fP * \fBaxisScaleDiv\fP (int axisId) const " +.br +.ti -1c +.RI "\fBQwtScaleDiv\fP * \fBaxisScaleDiv\fP (int axisId)" +.br +.ti -1c +.RI "const \fBQwtScaleDraw\fP * \fBaxisScaleDraw\fP (int axisId) const " +.br +.ti -1c +.RI "\fBQwtScaleDraw\fP * \fBaxisScaleDraw\fP (int axisId)" +.br +.ti -1c +.RI "const \fBQwtScaleWidget\fP * \fBaxisWidget\fP (int axisId) const " +.br +.ti -1c +.RI "\fBQwtScaleWidget\fP * \fBaxisWidget\fP (int axisId)" +.br +.ti -1c +.RI "void \fBsetAxisLabelAlignment\fP (int axisId, Qt::Alignment)" +.br +.ti -1c +.RI "void \fBsetAxisLabelRotation\fP (int axisId, double rotation)" +.br +.ti -1c +.RI "void \fBsetAxisTitle\fP (int axisId, const QString &)" +.br +.ti -1c +.RI "void \fBsetAxisTitle\fP (int axisId, const \fBQwtText\fP &)" +.br +.ti -1c +.RI "\fBQwtText\fP \fBaxisTitle\fP (int axisId) const " +.br +.ti -1c +.RI "void \fBsetAxisMaxMinor\fP (int axisId, int maxMinor)" +.br +.ti -1c +.RI "int \fBaxisMaxMinor\fP (int axisId) const " +.br +.ti -1c +.RI "void \fBsetAxisMaxMajor\fP (int axisId, int maxMajor)" +.br +.ti -1c +.RI "int \fBaxisMaxMajor\fP (int axisId) const " +.br +.ti -1c +.RI "void \fBinsertLegend\fP (\fBQwtLegend\fP *, \fBLegendPosition\fP=QwtPlot::RightLegend, double ratio=-1.0)" +.br +.ti -1c +.RI "\fBQwtLegend\fP * \fBlegend\fP ()" +.br +.ti -1c +.RI "const \fBQwtLegend\fP * \fBlegend\fP () const " +.br +.ti -1c +.RI "virtual QSize \fBsizeHint\fP () const " +.br +.ti -1c +.RI "virtual QSize \fBminimumSizeHint\fP () const " +.br +.ti -1c +.RI "virtual void \fBupdateLayout\fP ()" +.br +.ti -1c +.RI "virtual void \fBdrawCanvas\fP (QPainter *)" +.br +.ti -1c +.RI "void \fBupdateAxes\fP ()" +.br +.ti -1c +.RI "virtual bool \fBevent\fP (QEvent *)" +.br +.ti -1c +.RI "virtual void \fBdrawItems\fP (QPainter *, const QRectF &, const \fBQwtScaleMap\fP maps[axisCnt]) const " +.br +.in -1c +.SS "Protected Slots" + +.in +1c +.ti -1c +.RI "virtual void \fBlegendItemClicked\fP ()" +.br +.ti -1c +.RI "virtual void \fBlegendItemChecked\fP (bool)" +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual void \fBupdateTabOrder\fP ()" +.br +.ti -1c +.RI "virtual void \fBresizeEvent\fP (QResizeEvent *e)" +.br +.in -1c +.SS "Static Protected Member Functions" + +.in +1c +.ti -1c +.RI "static bool \fBaxisValid\fP (int axisId)" +.br +.in -1c +.SH "Detailed Description" +.PP +A 2-D plotting widget. + +\fBQwtPlot\fP is a widget for plotting two-dimensional graphs. An unlimited number of plot items can be displayed on its canvas. Plot items might be curves (\fBQwtPlotCurve\fP), markers (\fBQwtPlotMarker\fP), the grid (\fBQwtPlotGrid\fP), or anything else derived from \fBQwtPlotItem\fP. A plot can have up to four axes, with each plot item attached to an x- and a y axis. The scales at the axes can be explicitely set (\fBQwtScaleDiv\fP), or are calculated from the plot items, using algorithms (\fBQwtScaleEngine\fP) which can be configured separately for each axis. +.PP +.PP +\fBExample\fP +.RS 4 +The following example shows (schematically) the most simple way to use \fBQwtPlot\fP. By default, only the left and bottom axes are visible and their scales are computed automatically. +.PP +.nf + +#include +#include + +QwtPlot *myPlot = new QwtPlot("Two Curves", parent); + +// add curves +QwtPlotCurve *curve1 = new QwtPlotCurve("Curve 1"); +QwtPlotCurve *curve2 = new QwtPlotCurve("Curve 2"); + +// copy the data into the curves +curve1->setData(...); +curve2->setData(...); + +curve1->attach(myPlot); +curve2->attach(myPlot); + +// finally, refresh the plot +myPlot->replot(); + +.fi +.PP + +.RE +.PP + +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtPlot::Axis\fP" +.PP +Axis index. +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIyLeft \fP\fP +Y axis left of the canvas. +.TP +\fB\fIyRight \fP\fP +Y axis right of the canvas. +.TP +\fB\fIxBottom \fP\fP +X axis below the canvas. +.TP +\fB\fIxTop \fP\fP +X axis above the canvas. +.TP +\fB\fIaxisCnt \fP\fP +Number of axes. +.SS "enum \fBQwtPlot::LegendPosition\fP"Position of the legend, relative to the canvas. +.PP +\fBSee also:\fP +.RS 4 +\fBinsertLegend()\fP +.RE +.PP +\fBNote:\fP +.RS 4 +In case of ExternalLegend, the legend is not handled by \fBQwtPlotRenderer\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fILeftLegend \fP\fP +The legend will be left from the \fBQwtPlot::yLeft\fP axis. +.TP +\fB\fIRightLegend \fP\fP +The legend will be right from the \fBQwtPlot::yRight\fP axis. +.TP +\fB\fIBottomLegend \fP\fP +The legend will be below \fBQwtPlot::xBottom\fP axis. +.TP +\fB\fITopLegend \fP\fP +The legend will be between \fBQwtPlot::xTop\fP axis and the title. +.TP +\fB\fIExternalLegend \fP\fP +External means that only the content of the legend will be handled by \fBQwtPlot\fP, but not its geometry. This type can be used to have a legend in an external window ( or on the canvas ). +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPlot::QwtPlot (QWidget *parent = \fCNULL\fP)\fC [explicit]\fP" +.PP +Constructor. \fBParameters:\fP +.RS 4 +\fIparent\fP Parent widget +.RE +.PP + +.SS "QwtPlot::QwtPlot (const \fBQwtText\fP &title, QWidget *parent = \fCNULL\fP)\fC [explicit]\fP" +.PP +Constructor. \fBParameters:\fP +.RS 4 +\fItitle\fP Title text +.br +\fIparent\fP Parent widget +.RE +.PP + +.SS "QwtPlot::~QwtPlot ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "void QwtPlot::applyProperties (const QString &)"This method is intended for manipulating the plot widget from a specific editor in the Qwt designer plugin. +.PP +\fBWarning:\fP +.RS 4 +The plot editor has never been implemented. +.RE +.PP + +.SS "void QwtPlot::autoRefresh ()\fC [slot]\fP" +.PP +Replots the plot if \fBautoReplot()\fP is \fCtrue\fP. +.SS "bool QwtPlot::autoReplot () const"\fBReturns:\fP +.RS 4 +true if the autoReplot option is set. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetAutoReplot()\fP +.RE +.PP + +.SS "bool QwtPlot::axisAutoScale (intaxisId) const"\fBReturns:\fP +.RS 4 +\fCtrue\fP if autoscaling is enabled +.RE +.PP +\fBParameters:\fP +.RS 4 +\fIaxisId\fP axis index +.RE +.PP + +.SS "bool QwtPlot::axisEnabled (intaxisId) const"\fBReturns:\fP +.RS 4 +\fCtrue\fP if a specified axis is enabled +.RE +.PP +\fBParameters:\fP +.RS 4 +\fIaxisId\fP axis index +.RE +.PP + +.SS "QFont QwtPlot::axisFont (intaxisId) const"\fBReturns:\fP +.RS 4 +the font of the scale labels for a specified axis +.RE +.PP +\fBParameters:\fP +.RS 4 +\fIaxisId\fP axis index +.RE +.PP + +.SS "\fBQwtInterval\fP QwtPlot::axisInterval (intaxisId) const" +.PP +Return the current interval of the specified axis. This is only a convenience function for axisScaleDiv( axisId )->interval(); +.PP +\fBParameters:\fP +.RS 4 +\fIaxisId\fP axis index +.RE +.PP +\fBReturns:\fP +.RS 4 +Scale interval +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtScaleDiv\fP, \fBaxisScaleDiv()\fP +.RE +.PP + +.SS "int QwtPlot::axisMaxMajor (intaxisId) const"\fBReturns:\fP +.RS 4 +the maximum number of major ticks for a specified axis +.RE +.PP +\fBParameters:\fP +.RS 4 +\fIaxisId\fP axis index +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetAxisMaxMajor()\fP +.RE +.PP + +.SS "int QwtPlot::axisMaxMinor (intaxisId) const"\fBReturns:\fP +.RS 4 +the maximum number of minor ticks for a specified axis +.RE +.PP +\fBParameters:\fP +.RS 4 +\fIaxisId\fP axis index +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetAxisMaxMinor()\fP +.RE +.PP + +.SS "const \fBQwtScaleDiv\fP * QwtPlot::axisScaleDiv (intaxisId) const" +.PP +Return the scale division of a specified axis. axisScaleDiv(axisId)->lowerBound(), axisScaleDiv(axisId)->upperBound() are the current limits of the axis scale. +.PP +\fBParameters:\fP +.RS 4 +\fIaxisId\fP axis index +.RE +.PP +\fBReturns:\fP +.RS 4 +Scale division +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtScaleDiv\fP, \fBsetAxisScaleDiv()\fP +.RE +.PP + +.SS "\fBQwtScaleDiv\fP * QwtPlot::axisScaleDiv (intaxisId)" +.PP +Return the scale division of a specified axis. axisScaleDiv(axisId)->lowerBound(), axisScaleDiv(axisId)->upperBound() are the current limits of the axis scale. +.PP +\fBParameters:\fP +.RS 4 +\fIaxisId\fP axis index +.RE +.PP +\fBReturns:\fP +.RS 4 +Scale division +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtScaleDiv\fP, \fBsetAxisScaleDiv()\fP +.RE +.PP + +.SS "const \fBQwtScaleDraw\fP * QwtPlot::axisScaleDraw (intaxisId) const"\fBReturns:\fP +.RS 4 +the scale draw of a specified axis +.RE +.PP +\fBParameters:\fP +.RS 4 +\fIaxisId\fP axis index +.RE +.PP +\fBReturns:\fP +.RS 4 +specified scaleDraw for axis, or NULL if axis is invalid. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtScaleDraw\fP +.RE +.PP + +.SS "\fBQwtScaleDraw\fP * QwtPlot::axisScaleDraw (intaxisId)"\fBReturns:\fP +.RS 4 +the scale draw of a specified axis +.RE +.PP +\fBParameters:\fP +.RS 4 +\fIaxisId\fP axis index +.RE +.PP +\fBReturns:\fP +.RS 4 +specified scaleDraw for axis, or NULL if axis is invalid. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtScaleDraw\fP +.RE +.PP + +.SS "\fBQwtScaleEngine\fP * QwtPlot::axisScaleEngine (intaxisId)"\fBParameters:\fP +.RS 4 +\fIaxisId\fP axis index +.RE +.PP +\fBReturns:\fP +.RS 4 +Scale engine for a specific axis +.RE +.PP + +.SS "const \fBQwtScaleEngine\fP * QwtPlot::axisScaleEngine (intaxisId) const"\fBParameters:\fP +.RS 4 +\fIaxisId\fP axis index +.RE +.PP +\fBReturns:\fP +.RS 4 +Scale engine for a specific axis +.RE +.PP + +.SS "double QwtPlot::axisStepSize (intaxisId) const"Return the step size parameter, that has been set in setAxisScale. This doesn't need to be the step size of the current scale. +.PP +\fBParameters:\fP +.RS 4 +\fIaxisId\fP axis index +.RE +.PP +\fBReturns:\fP +.RS 4 +step size parameter value +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetAxisScale()\fP +.RE +.PP + +.SS "\fBQwtText\fP QwtPlot::axisTitle (intaxisId) const"\fBReturns:\fP +.RS 4 +the title of a specified axis +.RE +.PP +\fBParameters:\fP +.RS 4 +\fIaxisId\fP axis index +.RE +.PP + +.SS "bool QwtPlot::axisValid (intaxisId)\fC [static, protected]\fP"\fBReturns:\fP +.RS 4 +\fCtrue\fP if the specified axis exists, otherwise \fCfalse\fP +.RE +.PP +\fBParameters:\fP +.RS 4 +\fIaxisId\fP axis index +.RE +.PP + +.SS "const \fBQwtScaleWidget\fP * QwtPlot::axisWidget (intaxisId) const"\fBReturns:\fP +.RS 4 +specified axis, or NULL if axisId is invalid. +.RE +.PP +\fBParameters:\fP +.RS 4 +\fIaxisId\fP axis index +.RE +.PP + +.SS "\fBQwtScaleWidget\fP * QwtPlot::axisWidget (intaxisId)"\fBReturns:\fP +.RS 4 +specified axis, or NULL if axisId is invalid. +.RE +.PP +\fBParameters:\fP +.RS 4 +\fIaxisId\fP axis index +.RE +.PP + +.SS "const \fBQwtPlotCanvas\fP * QwtPlot::canvas () const"\fBReturns:\fP +.RS 4 +the plot's canvas +.RE +.PP + +.SS "\fBQwtPlotCanvas\fP * QwtPlot::canvas ()"\fBReturns:\fP +.RS 4 +the plot's canvas +.RE +.PP + +.SS "QBrush QwtPlot::canvasBackground () const"Nothing else than: \fBcanvas()\fP->palette().brush( QPalette::Normal, QPalette::Window); +.PP +\fBReturns:\fP +.RS 4 +Background brush of the plotting area. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetCanvasBackground()\fP +.RE +.PP + +.SS "int QwtPlot::canvasLineWidth () const"Nothing else than: \fBcanvas()\fP->lineWidth(), left for compatibility only. +.PP +\fBReturns:\fP +.RS 4 +the border width of the plotting area +.RE +.PP + +.SS "\fBQwtScaleMap\fP QwtPlot::canvasMap (intaxisId) const\fC [virtual]\fP"\fBParameters:\fP +.RS 4 +\fIaxisId\fP Axis +.RE +.PP +\fBReturns:\fP +.RS 4 +Map for the axis on the canvas. With this map pixel coordinates can translated to plot coordinates and vice versa. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtScaleMap\fP, \fBtransform()\fP, \fBinvTransform()\fP +.RE +.PP + +.SS "void QwtPlot::drawCanvas (QPainter *painter)\fC [virtual]\fP"Redraw the canvas. +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter used for drawing +.RE +.PP +\fBWarning:\fP +.RS 4 +drawCanvas calls drawItems what is also used for printing. Applications that like to add individual plot items better overload \fBdrawItems()\fP +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBdrawItems()\fP +.RE +.PP + +.SS "void QwtPlot::drawItems (QPainter *painter, const QRectF &canvasRect, const \fBQwtScaleMap\fPmap[axisCnt]) const\fC [virtual]\fP"Redraw the canvas items. +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter used for drawing +.br +\fIcanvasRect\fP Bounding rectangle where to paint +.br +\fImap\fP \fBQwtPlot::axisCnt\fP maps, mapping between plot and paint device coordinates +.RE +.PP + +.SS "void QwtPlot::enableAxis (intaxisId, booltf = \fCtrue\fP)" +.PP +Enable or disable a specified axis. When an axis is disabled, this only means that it is not visible on the screen. Curves, markers and can be attached to disabled axes, and transformation of screen coordinates into values works as normal. +.PP +Only xBottom and yLeft are enabled by default. +.PP +\fBParameters:\fP +.RS 4 +\fIaxisId\fP axis index +.br +\fItf\fP \fCtrue\fP (enabled) or \fCfalse\fP (disabled) +.RE +.PP + +.SS "bool QwtPlot::event (QEvent *event)\fC [virtual]\fP" +.PP +Adds handling of layout requests. \fBParameters:\fP +.RS 4 +\fIevent\fP Event +.RE +.PP + +.SS "QString QwtPlot::grabProperties () const"This method is intended for manipulating the plot widget from a specific editor in the Qwt designer plugin. +.PP +\fBWarning:\fP +.RS 4 +The plot editor has never been implemented. +.RE +.PP + +.SS "void QwtPlot::insertLegend (\fBQwtLegend\fP *legend, \fBQwtPlot::LegendPosition\fPpos = \fCQwtPlot::RightLegend\fP, doubleratio = \fC-1.0\fP)" +.PP +Insert a legend. If the position legend is \fC\fBQwtPlot::LeftLegend\fP\fP or \fC\fBQwtPlot::RightLegend\fP\fP the legend will be organized in one column from top to down. Otherwise the legend items will be placed in a table with a best fit number of columns from left to right. +.PP +If pos != \fBQwtPlot::ExternalLegend\fP the plot widget will become parent of the legend. It will be deleted when the plot is deleted, or another legend is set with \fBinsertLegend()\fP. +.PP +\fBParameters:\fP +.RS 4 +\fIlegend\fP Legend +.br +\fIpos\fP The legend's position. For top/left position the number of colums will be limited to 1, otherwise it will be set to unlimited. +.br +\fIratio\fP Ratio between legend and the bounding rect of title, canvas and axes. The legend will be shrinked if it would need more space than the given ratio. The ratio is limited to ]0.0 .. 1.0]. In case of <= 0.0 it will be reset to the default ratio. The default vertical/horizontal ratio is 0.33/0.5. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBlegend()\fP, \fBQwtPlotLayout::legendPosition()\fP, \fBQwtPlotLayout::setLegendPosition()\fP +.RE +.PP + +.SS "double QwtPlot::invTransform (intaxisId, intpos) const"Transform the x or y coordinate of a position in the drawing region into a value. +.PP +\fBParameters:\fP +.RS 4 +\fIaxisId\fP axis index +.br +\fIpos\fP position +.RE +.PP +\fBWarning:\fP +.RS 4 +The position can be an x or a y coordinate, depending on the specified axis. +.RE +.PP + +.SS "\fBQwtLegend\fP * QwtPlot::legend ()"\fBReturns:\fP +.RS 4 +the plot's legend +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBinsertLegend()\fP +.RE +.PP + +.SS "const \fBQwtLegend\fP * QwtPlot::legend () const"\fBReturns:\fP +.RS 4 +the plot's legend +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBinsertLegend()\fP +.RE +.PP + +.SS "void QwtPlot::legendChecked (\fBQwtPlotItem\fP *plotItem, boolon)\fC [signal]\fP"A signal which is emitted when the user has clicked on a legend item, which is in \fBQwtLegend::CheckableItem\fP mode +.PP +\fBParameters:\fP +.RS 4 +\fIplotItem\fP Corresponding plot item of the selected legend item +.br +\fIon\fP True when the legen item is checked +.RE +.PP +\fBNote:\fP +.RS 4 +clicks are disabled as default +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtLegend::setItemMode()\fP, \fBQwtLegend::itemMode()\fP +.RE +.PP + +.SS "void QwtPlot::legendClicked (\fBQwtPlotItem\fP *plotItem)\fC [signal]\fP"A signal which is emitted when the user has clicked on a legend item, which is in \fBQwtLegend::ClickableItem\fP mode. +.PP +\fBParameters:\fP +.RS 4 +\fIplotItem\fP Corresponding plot item of the selected legend item +.RE +.PP +\fBNote:\fP +.RS 4 +clicks are disabled as default +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtLegend::setItemMode()\fP, \fBQwtLegend::itemMode()\fP +.RE +.PP + +.SS "void QwtPlot::legendItemChecked (boolon)\fC [protected, virtual, slot]\fP"Called internally when the legend has been checked Emits a \fBlegendClicked()\fP signal. +.SS "void QwtPlot::legendItemClicked ()\fC [protected, virtual, slot]\fP"Called internally when the legend has been clicked on. Emits a \fBlegendClicked()\fP signal. +.SS "QSize QwtPlot::minimumSizeHint () const\fC [virtual]\fP" +.PP +Return a minimum size hint. +.SS "const \fBQwtPlotLayout\fP * QwtPlot::plotLayout () const"\fBReturns:\fP +.RS 4 +the plot's titel label. +.RE +.PP + +.SS "\fBQwtPlotLayout\fP * QwtPlot::plotLayout ()"\fBReturns:\fP +.RS 4 +the plot's title +.RE +.PP + +.SS "void QwtPlot::replot ()\fC [virtual, slot]\fP" +.PP +Redraw the plot. If the autoReplot option is not set (which is the default) or if any curves are attached to raw data, the plot has to be refreshed explicitly in order to make changes visible. +.PP +\fBSee also:\fP +.RS 4 +\fBsetAutoReplot()\fP +.RE +.PP +\fBWarning:\fP +.RS 4 +Calls \fBcanvas()\fP->repaint, take care of infinite recursions +.RE +.PP + +.SS "void QwtPlot::resizeEvent (QResizeEvent *e)\fC [protected, virtual]\fP"Resize and update internal layout +.PP +\fBParameters:\fP +.RS 4 +\fIe\fP Resize event +.RE +.PP + +.SS "void QwtPlot::setAutoReplot (booltf = \fCtrue\fP)" +.PP +Set or reset the autoReplot option. If the autoReplot option is set, the plot will be updated implicitly by manipulating member functions. Since this may be time-consuming, it is recommended to leave this option switched off and call \fBreplot()\fP explicitly if necessary. +.PP +The autoReplot option is set to false by default, which means that the user has to call \fBreplot()\fP in order to make changes visible. +.PP +\fBParameters:\fP +.RS 4 +\fItf\fP \fCtrue\fP or \fCfalse\fP. Defaults to \fCtrue\fP. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBreplot()\fP +.RE +.PP + +.SS "void QwtPlot::setAxisAutoScale (intaxisId, boolon = \fCtrue\fP)" +.PP +Enable autoscaling for a specified axis. This member function is used to switch back to autoscaling mode after a fixed scale has been set. Autoscaling is enabled by default. +.PP +\fBParameters:\fP +.RS 4 +\fIaxisId\fP axis index +.br +\fIon\fP On/Off +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetAxisScale()\fP, \fBsetAxisScaleDiv()\fP, \fBupdateAxes()\fP +.RE +.PP +\fBNote:\fP +.RS 4 +The autoscaling flag has no effect until \fBupdateAxes()\fP is executed ( called by \fBreplot()\fP ). +.RE +.PP + +.SS "void QwtPlot::setAxisFont (intaxisId, const QFont &f)" +.PP +Change the font of an axis. \fBParameters:\fP +.RS 4 +\fIaxisId\fP axis index +.br +\fIf\fP font +.RE +.PP +\fBWarning:\fP +.RS 4 +This function changes the font of the tick labels, not of the axis title. +.RE +.PP + +.SS "void QwtPlot::setAxisLabelAlignment (intaxisId, Qt::Alignmentalignment)"Change the alignment of the tick labels +.PP +\fBParameters:\fP +.RS 4 +\fIaxisId\fP axis index +.br +\fIalignment\fP Or'd Qt::AlignmentFlags +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtScaleDraw::setLabelAlignment()\fP +.RE +.PP + +.SS "void QwtPlot::setAxisLabelRotation (intaxisId, doublerotation)"Rotate all tick labels +.PP +\fBParameters:\fP +.RS 4 +\fIaxisId\fP axis index +.br +\fIrotation\fP Angle in degrees. When changing the label rotation, the label alignment might be adjusted too. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtScaleDraw::setLabelRotation()\fP, \fBsetAxisLabelAlignment()\fP +.RE +.PP + +.SS "void QwtPlot::setAxisMaxMajor (intaxisId, intmaxMajor)"Set the maximum number of major scale intervals for a specified axis +.PP +\fBParameters:\fP +.RS 4 +\fIaxisId\fP axis index +.br +\fImaxMajor\fP maximum number of major steps +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBaxisMaxMajor()\fP +.RE +.PP + +.SS "void QwtPlot::setAxisMaxMinor (intaxisId, intmaxMinor)"Set the maximum number of minor scale intervals for a specified axis +.PP +\fBParameters:\fP +.RS 4 +\fIaxisId\fP axis index +.br +\fImaxMinor\fP maximum number of minor steps +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBaxisMaxMinor()\fP +.RE +.PP + +.SS "void QwtPlot::setAxisScale (intaxisId, doublemin, doublemax, doublestepSize = \fC0\fP)" +.PP +Disable autoscaling and specify a fixed scale for a selected axis. \fBParameters:\fP +.RS 4 +\fIaxisId\fP axis index +.br +\fImin\fP +.br +\fImax\fP minimum and maximum of the scale +.br +\fIstepSize\fP Major step size. If \fCstep == 0\fP, the step size is calculated automatically using the maxMajor setting. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetAxisMaxMajor()\fP, \fBsetAxisAutoScale()\fP, \fBaxisStepSize()\fP +.RE +.PP + +.SS "void QwtPlot::setAxisScaleDiv (intaxisId, const \fBQwtScaleDiv\fP &scaleDiv)" +.PP +Disable autoscaling and specify a fixed scale for a selected axis. \fBParameters:\fP +.RS 4 +\fIaxisId\fP axis index +.br +\fIscaleDiv\fP Scale division +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetAxisScale()\fP, \fBsetAxisAutoScale()\fP +.RE +.PP + +.SS "void QwtPlot::setAxisScaleDraw (intaxisId, \fBQwtScaleDraw\fP *scaleDraw)" +.PP +Set a scale draw. \fBParameters:\fP +.RS 4 +\fIaxisId\fP axis index +.br +\fIscaleDraw\fP object responsible for drawing scales. +.RE +.PP +By passing scaleDraw it is possible to extend \fBQwtScaleDraw\fP functionality and let it take place in \fBQwtPlot\fP. Please note that scaleDraw has to be created with new and will be deleted by the corresponding QwtScale member ( like a child object ). +.PP +\fBSee also:\fP +.RS 4 +\fBQwtScaleDraw\fP, \fBQwtScaleWidget\fP +.RE +.PP +\fBWarning:\fP +.RS 4 +The attributes of scaleDraw will be overwritten by those of the previous \fBQwtScaleDraw\fP. +.RE +.PP + +.SS "void QwtPlot::setAxisScaleEngine (intaxisId, \fBQwtScaleEngine\fP *scaleEngine)"Change the scale engine for an axis +.PP +\fBParameters:\fP +.RS 4 +\fIaxisId\fP axis index +.br +\fIscaleEngine\fP Scale engine +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBaxisScaleEngine()\fP +.RE +.PP + +.SS "void QwtPlot::setAxisTitle (intaxisId, const \fBQwtText\fP &title)" +.PP +Change the title of a specified axis. \fBParameters:\fP +.RS 4 +\fIaxisId\fP axis index +.br +\fItitle\fP axis title +.RE +.PP + +.SS "void QwtPlot::setAxisTitle (intaxisId, const QString &title)" +.PP +Change the title of a specified axis. \fBParameters:\fP +.RS 4 +\fIaxisId\fP axis index +.br +\fItitle\fP axis title +.RE +.PP + +.SS "void QwtPlot::setCanvasBackground (const QBrush &brush)" +.PP +Change the background of the plotting area. Sets brush to QPalette::Window of all colorgroups of the palette of the canvas. Using \fBcanvas()\fP->setPalette() is a more powerful way to set these colors. +.PP +\fBParameters:\fP +.RS 4 +\fIbrush\fP New background brush +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBcanvasBackground()\fP +.RE +.PP + +.SS "void QwtPlot::setCanvasLineWidth (intwidth)" +.PP +Change the border width of the plotting area. Nothing else than \fBcanvas()\fP->setLineWidth(w), left for compatibility only. +.PP +\fBParameters:\fP +.RS 4 +\fIwidth\fP New border width +.RE +.PP + +.SS "void QwtPlot::setTitle (const QString &title)"Change the plot's title +.PP +\fBParameters:\fP +.RS 4 +\fItitle\fP New title +.RE +.PP + +.SS "void QwtPlot::setTitle (const \fBQwtText\fP &title)"Change the plot's title +.PP +\fBParameters:\fP +.RS 4 +\fItitle\fP New title +.RE +.PP + +.SS "QSize QwtPlot::sizeHint () const\fC [virtual]\fP"Return sizeHint +.PP +\fBSee also:\fP +.RS 4 +\fBminimumSizeHint()\fP +.RE +.PP + +.SS "\fBQwtText\fP QwtPlot::title () const"\fBReturns:\fP +.RS 4 +the plot's title +.RE +.PP + +.SS "\fBQwtTextLabel\fP * QwtPlot::titleLabel ()"\fBReturns:\fP +.RS 4 +the plot's titel label. +.RE +.PP + +.SS "const \fBQwtTextLabel\fP * QwtPlot::titleLabel () const"\fBReturns:\fP +.RS 4 +the plot's titel label. +.RE +.PP + +.SS "double QwtPlot::transform (intaxisId, doublevalue) const" +.PP +Transform a value into a coordinate in the plotting region. \fBParameters:\fP +.RS 4 +\fIaxisId\fP axis index +.br +\fIvalue\fP value +.RE +.PP +\fBReturns:\fP +.RS 4 +X or y coordinate in the plotting region corresponding to the value. +.RE +.PP + +.SS "void QwtPlot::updateAxes ()" +.PP +Rebuild the scales. +.SS "void QwtPlot::updateLayout ()\fC [virtual]\fP" +.PP +Adjust plot content to its current size. \fBSee also:\fP +.RS 4 +\fBresizeEvent()\fP +.RE +.PP + +.SS "void QwtPlot::updateTabOrder ()\fC [protected, virtual]\fP"Update the focus tab order +.PP +The order is changed so that the canvas will be in front of the first legend item, or behind the last legend item - depending on the position of the legend. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotAbstractSeriesItem.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotAbstractSeriesItem.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotAbstractSeriesItem.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotAbstractSeriesItem.3 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,129 @@ +.TH "QwtPlotAbstractSeriesItem" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPlotAbstractSeriesItem \- +.PP +Base class for plot items representing a series of samples. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtPlotItem\fP. +.PP +Inherited by \fBQwtPlotSeriesItem< T >\fP, \fBQwtPlotSeriesItem< QPointF >\fP, \fBQwtPlotSeriesItem< QwtIntervalSample >\fP, and \fBQwtPlotSeriesItem< QwtPoint3D >\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPlotAbstractSeriesItem\fP (const QString &title=QString::null)" +.br +.ti -1c +.RI "\fBQwtPlotAbstractSeriesItem\fP (const \fBQwtText\fP &title)" +.br +.ti -1c +.RI "virtual \fB~QwtPlotAbstractSeriesItem\fP ()" +.br +.ti -1c +.RI "void \fBsetOrientation\fP (Qt::Orientation)" +.br +.ti -1c +.RI "Qt::Orientation \fBorientation\fP () const " +.br +.ti -1c +.RI "virtual void \fBdraw\fP (QPainter *p, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &) const " +.br +.ti -1c +.RI "virtual void \fBdrawSeries\fP (QPainter *painter, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect, int from, int to) const =0" +.br +.in -1c +.SH "Detailed Description" +.PP +Base class for plot items representing a series of samples. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPlotAbstractSeriesItem::QwtPlotAbstractSeriesItem (const QString &title = \fCQString::null\fP)\fC [explicit]\fP"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fItitle\fP Title of the curve +.RE +.PP + +.SS "QwtPlotAbstractSeriesItem::QwtPlotAbstractSeriesItem (const \fBQwtText\fP &title)\fC [explicit]\fP"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fItitle\fP Title of the curve +.RE +.PP + +.SS "QwtPlotAbstractSeriesItem::~QwtPlotAbstractSeriesItem ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "void QwtPlotAbstractSeriesItem::draw (QPainter *painter, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect) const\fC [virtual]\fP" +.PP +Draw the complete series. \fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIxMap\fP Maps x-values into pixel coordinates. +.br +\fIyMap\fP Maps y-values into pixel coordinates. +.br +\fIcanvasRect\fP Contents rect of the canvas +.RE +.PP + +.PP +Implements \fBQwtPlotItem\fP. +.SS "virtual void QwtPlotAbstractSeriesItem::drawSeries (QPainter *painter, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect, intfrom, intto) const\fC [pure virtual]\fP"Draw a subset of the samples +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIxMap\fP Maps x-values into pixel coordinates. +.br +\fIyMap\fP Maps y-values into pixel coordinates. +.br +\fIcanvasRect\fP Contents rect of the canvas +.br +\fIfrom\fP Index of the first point to be painted +.br +\fIto\fP Index of the last point to be painted. If to < 0 the curve will be painted to its last point. +.RE +.PP + +.PP +Implemented in \fBQwtPlotCurve\fP, \fBQwtPlotHistogram\fP, \fBQwtPlotIntervalCurve\fP, and \fBQwtPlotSpectroCurve\fP. +.SS "Qt::Orientation QwtPlotAbstractSeriesItem::orientation () const"\fBReturns:\fP +.RS 4 +Orientation of the plot item +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetOrientation()\fP +.RE +.PP + +.SS "void QwtPlotAbstractSeriesItem::setOrientation (Qt::Orientationorientation)"Set the orientation of the item. +.PP +The \fBorientation()\fP might be used in specific way by a plot item. F.e. a \fBQwtPlotCurve\fP uses it to identify how to display the curve int \fBQwtPlotCurve::Steps\fP or \fBQwtPlotCurve::Sticks\fP style. +.PP +\fBSee also:\fP +.RS 4 +\fBorientation()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotCanvas.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotCanvas.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotCanvas.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotCanvas.3 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,371 @@ +.TH "QwtPlotCanvas" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPlotCanvas \- +.PP +Canvas of a \fBQwtPlot\fP. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBPaintAttribute\fP { \fBBackingStore\fP = 1, \fBOpaque\fP = 2, \fBHackStyledBackground\fP = 4, \fBImmediatePaint\fP = 8 }" +.br +.ti -1c +.RI "enum \fBFocusIndicator\fP { \fBNoFocusIndicator\fP, \fBCanvasFocusIndicator\fP, \fBItemFocusIndicator\fP }" +.br +.ti -1c +.RI "typedef QFlags< \fBPaintAttribute\fP > \fBPaintAttributes\fP" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPlotCanvas\fP (\fBQwtPlot\fP *)" +.br +.ti -1c +.RI "virtual \fB~QwtPlotCanvas\fP ()" +.br +.ti -1c +.RI "\fBQwtPlot\fP * \fBplot\fP ()" +.br +.ti -1c +.RI "const \fBQwtPlot\fP * \fBplot\fP () const " +.br +.ti -1c +.RI "void \fBsetFocusIndicator\fP (\fBFocusIndicator\fP)" +.br +.ti -1c +.RI "\fBFocusIndicator\fP \fBfocusIndicator\fP () const " +.br +.ti -1c +.RI "void \fBsetBorderRadius\fP (double)" +.br +.ti -1c +.RI "double \fBborderRadius\fP () const " +.br +.ti -1c +.RI "QPainterPath \fBborderPath\fP (const QRect &rect) const " +.br +.ti -1c +.RI "QBitmap \fBborderMask\fP (const QSize &) const " +.br +.ti -1c +.RI "void \fBsetPaintAttribute\fP (\fBPaintAttribute\fP, bool on=true)" +.br +.ti -1c +.RI "bool \fBtestPaintAttribute\fP (\fBPaintAttribute\fP) const " +.br +.ti -1c +.RI "const QPixmap * \fBbackingStore\fP () const " +.br +.ti -1c +.RI "void \fBinvalidateBackingStore\fP ()" +.br +.ti -1c +.RI "void \fBreplot\fP ()" +.br +.ti -1c +.RI "virtual bool \fBevent\fP (QEvent *)" +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual void \fBpaintEvent\fP (QPaintEvent *)" +.br +.ti -1c +.RI "virtual void \fBresizeEvent\fP (QResizeEvent *)" +.br +.ti -1c +.RI "virtual void \fBdrawFocusIndicator\fP (QPainter *)" +.br +.ti -1c +.RI "virtual void \fBdrawBorder\fP (QPainter *)" +.br +.ti -1c +.RI "void \fBupdateStyleSheetInfo\fP ()" +.br +.in -1c +.SH "Detailed Description" +.PP +Canvas of a \fBQwtPlot\fP. + +\fBSee also:\fP +.RS 4 +\fBQwtPlot\fP +.RE +.PP + +.SH "Member Typedef Documentation" +.PP +.SS "typedef QFlags<\fBPaintAttribute\fP> \fBQwtPlotCanvas::PaintAttributes\fP" +.PP +Paint attributes. +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtPlotCanvas::FocusIndicator\fP" +.PP +Focus indicator. .IP "\(bu" 2 +NoFocusIndicator +.br + Don't paint a focus indicator +.PP +.PP +.IP "\(bu" 2 +CanvasFocusIndicator +.br + The focus is related to the complete canvas. Paint the focus indicator using paintFocus() +.PP +.PP +.IP "\(bu" 2 +ItemFocusIndicator +.br + The focus is related to an item (curve, point, ...) on the canvas. It is up to the application to display a focus indication using f.e. highlighting. +.PP +.PP +\fBSee also:\fP +.RS 4 +\fBsetFocusIndicator()\fP, \fBfocusIndicator()\fP, paintFocus() +.RE +.PP + +.SS "enum \fBQwtPlotCanvas::PaintAttribute\fP" +.PP +Paint attributes. The default setting enables BackingStore and Opaque. +.PP +\fBSee also:\fP +.RS 4 +\fBsetPaintAttribute()\fP, \fBtestPaintAttribute()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIBackingStore \fP\fP +Paint double buffered reusing the content of the pixmap buffer when possible. Using a backing store might improve the performance significantly, when workin with widget overlays ( like rubberbands ). Disabling the cache might improve the performance for incremental paints (using \fBQwtPlotDirectPainter\fP ). +.PP +\fBSee also:\fP +.RS 4 +\fBbackingStore()\fP, \fBinvalidateBackingStore()\fP +.RE +.PP + +.TP +\fB\fIOpaque \fP\fP +Try to fill the complete contents rectangle of the plot canvas. When using styled backgrounds Qt assumes, that the canvas doesn't fill its area completely ( f.e because of rounded borders ) and fills the area below the canvas. When this is done with gradients it might result in a serious performance bottleneck - depending on the size. +.PP +When the Opaque attribute is enabled the canvas tries to identify the gaps with some heuristics and to fill those only. +.PP +\fBWarning:\fP +.RS 4 +Will not work for semitransparent backgrounds +.RE +.PP + +.TP +\fB\fIHackStyledBackground \fP\fP +Try to improve painting of styled backgrounds. \fBQwtPlotCanvas\fP supports the box model attributes for customizing the layout with style sheets. Unfortunately the design of Qt style sheets has no concept how to handle backgrounds with rounded corners - beside of padding. +.PP +When HackStyledBackground is enabled the plot canvas tries to seperate the background from the background border by reverse engeneering to paint the background before and the border after the plot items. In this order the border gets prefectly antialiased and you can avoid some pixel artifacts in the corners. +.TP +\fB\fIImmediatePaint \fP\fP +When ImmediatePaint is set \fBreplot()\fP calls repaint() instead of update(). +.PP +\fBSee also:\fP +.RS 4 +\fBreplot()\fP, QWidget::repaint(), QWidget::update() +.RE +.PP + +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPlotCanvas::QwtPlotCanvas (\fBQwtPlot\fP *plot)\fC [explicit]\fP" +.PP +Sets a cross cursor, enables \fBQwtPlotCanvas::BackingStore\fP. +.SS "QwtPlotCanvas::~QwtPlotCanvas ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "const QPixmap * QwtPlotCanvas::backingStore () const" +.PP +Return the backing store, might be null. +.SS "QBitmap QwtPlotCanvas::borderMask (const QSize &size) const"Calculate a mask, that can be used to clip away the border frame +.PP +\fBParameters:\fP +.RS 4 +\fIsize\fP Size including the frame +.RE +.PP + +.SS "QPainterPath QwtPlotCanvas::borderPath (const QRect &rect) const"Calculate the painter path for a styled or rounded border +.PP +When the canvas has no styled background or rounded borders the painter path is empty. +.PP +\fBParameters:\fP +.RS 4 +\fIrect\fP Bounding rectangle of the canvas +.RE +.PP +\fBReturns:\fP +.RS 4 +Painter path, that can be used for clipping +.RE +.PP + +.SS "double QwtPlotCanvas::borderRadius () const"\fBReturns:\fP +.RS 4 +Radius for the corners of the border frame +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetBorderRadius()\fP +.RE +.PP + +.SS "void QwtPlotCanvas::drawBorder (QPainter *painter)\fC [protected, virtual]\fP"Draw the border of the plot canvas +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetBorderRadius()\fP, QFrame::drawFrame() +.RE +.PP + +.SS "void QwtPlotCanvas::drawFocusIndicator (QPainter *painter)\fC [protected, virtual]\fP"Draw the focus indication +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.RE +.PP + +.SS "bool QwtPlotCanvas::event (QEvent *event)\fC [virtual]\fP"Qt event handler for QEvent::PolishRequest and QEvent::StyleChange +.PP +\fBParameters:\fP +.RS 4 +\fIevent\fP Qt Event +.RE +.PP + +.SS "\fBQwtPlotCanvas::FocusIndicator\fP QwtPlotCanvas::focusIndicator () const"\fBReturns:\fP +.RS 4 +Focus indicator +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBFocusIndicator\fP, \fBsetFocusIndicator()\fP +.RE +.PP + +.SS "void QwtPlotCanvas::invalidateBackingStore ()" +.PP +Invalidate the internal backing store. +.SS "void QwtPlotCanvas::paintEvent (QPaintEvent *event)\fC [protected, virtual]\fP"Paint event +.PP +\fBParameters:\fP +.RS 4 +\fIevent\fP Paint event +.RE +.PP + +.SS "\fBQwtPlot\fP * QwtPlotCanvas::plot ()" +.PP +Return parent plot widget. +.SS "const \fBQwtPlot\fP * QwtPlotCanvas::plot () const" +.PP +Return parent plot widget. +.SS "void QwtPlotCanvas::replot ()"Invalidate the paint cache and repaint the canvas +.PP +\fBSee also:\fP +.RS 4 +invalidatePaintCache() +.RE +.PP + +.SS "void QwtPlotCanvas::resizeEvent (QResizeEvent *event)\fC [protected, virtual]\fP"Resize event +.PP +\fBParameters:\fP +.RS 4 +\fIevent\fP Resize event +.RE +.PP + +.SS "void QwtPlotCanvas::setBorderRadius (doubleradius)"Set the radius for the corners of the border frame +.PP +\fBParameters:\fP +.RS 4 +\fIradius\fP Radius of a rounded corner +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBborderRadius()\fP +.RE +.PP + +.SS "void QwtPlotCanvas::setFocusIndicator (\fBFocusIndicator\fPfocusIndicator)"Set the focus indicator +.PP +\fBSee also:\fP +.RS 4 +\fBFocusIndicator\fP, \fBfocusIndicator()\fP +.RE +.PP + +.SS "void QwtPlotCanvas::setPaintAttribute (\fBPaintAttribute\fPattribute, boolon = \fCtrue\fP)" +.PP +Changing the paint attributes. \fBParameters:\fP +.RS 4 +\fIattribute\fP Paint attribute +.br +\fIon\fP On/Off +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBtestPaintAttribute()\fP, \fBbackingStore()\fP +.RE +.PP + +.SS "bool QwtPlotCanvas::testPaintAttribute (\fBPaintAttribute\fPattribute) const"Test wether a paint attribute is enabled +.PP +\fBParameters:\fP +.RS 4 +\fIattribute\fP Paint attribute +.RE +.PP +\fBReturns:\fP +.RS 4 +true if the attribute is enabled +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetPaintAttribute()\fP +.RE +.PP + +.SS "void QwtPlotCanvas::updateStyleSheetInfo ()\fC [protected]\fP" +.PP +Update the cached informations about the current style sheet. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotCurve.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotCurve.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotCurve.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotCurve.3 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,898 @@ +.TH "QwtPlotCurve" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPlotCurve \- +.PP +A plot item, that represents a series of points. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtPlotSeriesItem< QPointF >\fP. +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBCurveStyle\fP { \fBNoCurve\fP = -1, \fBLines\fP, \fBSticks\fP, \fBSteps\fP, \fBDots\fP, \fBUserCurve\fP = 100 }" +.br +.ti -1c +.RI "enum \fBCurveAttribute\fP { \fBInverted\fP = 0x01, \fBFitted\fP = 0x02 }" +.br +.ti -1c +.RI "enum \fBLegendAttribute\fP { \fBLegendNoAttribute\fP = 0x00, \fBLegendShowLine\fP = 0x01, \fBLegendShowSymbol\fP = 0x02, \fBLegendShowBrush\fP = 0x04 }" +.br +.ti -1c +.RI "enum \fBPaintAttribute\fP { \fBClipPolygons\fP = 0x01, \fBCacheSymbols\fP = 0x02 }" +.br +.ti -1c +.RI "typedef QFlags< \fBCurveAttribute\fP > \fBCurveAttributes\fP" +.br +.ti -1c +.RI "typedef QFlags< \fBLegendAttribute\fP > \fBLegendAttributes\fP" +.br +.ti -1c +.RI "typedef QFlags< \fBPaintAttribute\fP > \fBPaintAttributes\fP" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPlotCurve\fP (const QString &title=QString::null)" +.br +.ti -1c +.RI "\fBQwtPlotCurve\fP (const \fBQwtText\fP &title)" +.br +.ti -1c +.RI "virtual \fB~QwtPlotCurve\fP ()" +.br +.ti -1c +.RI "virtual int \fBrtti\fP () const " +.br +.ti -1c +.RI "void \fBsetPaintAttribute\fP (\fBPaintAttribute\fP, bool on=true)" +.br +.ti -1c +.RI "bool \fBtestPaintAttribute\fP (\fBPaintAttribute\fP) const " +.br +.ti -1c +.RI "void \fBsetLegendAttribute\fP (\fBLegendAttribute\fP, bool on=true)" +.br +.ti -1c +.RI "bool \fBtestLegendAttribute\fP (\fBLegendAttribute\fP) const " +.br +.ti -1c +.RI "void \fBsetRawSamples\fP (const double *xData, const double *yData, int size)" +.br +.ti -1c +.RI "void \fBsetSamples\fP (const double *xData, const double *yData, int size)" +.br +.ti -1c +.RI "void \fBsetSamples\fP (const QVector< double > &xData, const QVector< double > &yData)" +.br +.ti -1c +.RI "void \fBsetSamples\fP (const QVector< QPointF > &)" +.br +.ti -1c +.RI "int \fBclosestPoint\fP (const QPoint &pos, double *dist=NULL) const " +.br +.ti -1c +.RI "double \fBminXValue\fP () const " +.br +.ti -1c +.RI "double \fBmaxXValue\fP () const " +.br +.ti -1c +.RI "double \fBminYValue\fP () const " +.br +.ti -1c +.RI "double \fBmaxYValue\fP () const " +.br +.ti -1c +.RI "void \fBsetCurveAttribute\fP (\fBCurveAttribute\fP, bool on=true)" +.br +.ti -1c +.RI "bool \fBtestCurveAttribute\fP (\fBCurveAttribute\fP) const " +.br +.ti -1c +.RI "void \fBsetPen\fP (const QPen &)" +.br +.ti -1c +.RI "const QPen & \fBpen\fP () const " +.br +.ti -1c +.RI "void \fBsetBrush\fP (const QBrush &)" +.br +.ti -1c +.RI "const QBrush & \fBbrush\fP () const " +.br +.ti -1c +.RI "void \fBsetBaseline\fP (double ref)" +.br +.ti -1c +.RI "double \fBbaseline\fP () const " +.br +.ti -1c +.RI "void \fBsetStyle\fP (\fBCurveStyle\fP style)" +.br +.ti -1c +.RI "\fBCurveStyle\fP \fBstyle\fP () const " +.br +.ti -1c +.RI "void \fBsetSymbol\fP (const \fBQwtSymbol\fP *s)" +.br +.ti -1c +.RI "const \fBQwtSymbol\fP * \fBsymbol\fP () const " +.br +.ti -1c +.RI "void \fBsetCurveFitter\fP (\fBQwtCurveFitter\fP *)" +.br +.ti -1c +.RI "\fBQwtCurveFitter\fP * \fBcurveFitter\fP () const " +.br +.ti -1c +.RI "virtual void \fBdrawSeries\fP (QPainter *, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect, int from, int to) const " +.br +.ti -1c +.RI "virtual void \fBupdateLegend\fP (\fBQwtLegend\fP *) const " +.br +.ti -1c +.RI "virtual void \fBdrawLegendIdentifier\fP (QPainter *, const QRectF &) const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "void \fBinit\fP ()" +.br +.ti -1c +.RI "virtual void \fBdrawCurve\fP (QPainter *p, int style, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect, int from, int to) const " +.br +.ti -1c +.RI "virtual void \fBdrawSymbols\fP (QPainter *p, const \fBQwtSymbol\fP &, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect, int from, int to) const " +.br +.ti -1c +.RI "void \fBdrawLines\fP (QPainter *p, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect, int from, int to) const " +.br +.ti -1c +.RI "void \fBdrawSticks\fP (QPainter *p, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect, int from, int to) const " +.br +.ti -1c +.RI "void \fBdrawDots\fP (QPainter *p, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect, int from, int to) const " +.br +.ti -1c +.RI "void \fBdrawSteps\fP (QPainter *p, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect, int from, int to) const " +.br +.ti -1c +.RI "virtual void \fBfillCurve\fP (QPainter *, const \fBQwtScaleMap\fP &, const \fBQwtScaleMap\fP &, const QRectF &canvasRect, QPolygonF &) const " +.br +.ti -1c +.RI "void \fBclosePolyline\fP (QPainter *, const \fBQwtScaleMap\fP &, const \fBQwtScaleMap\fP &, QPolygonF &) const " +.br +.in -1c +.SH "Detailed Description" +.PP +A plot item, that represents a series of points. + +A curve is the representation of a series of points in the x-y plane. It supports different display styles, interpolation ( f.e. spline ) and symbols. +.PP +\fBUsage\fP +.RS 4 + +.IP "\fBa) Assign curve properties \fP" 1c +When a curve is created, it is configured to draw black solid lines with in \fBQwtPlotCurve::Lines\fP style and no symbols. You can change this by calling \fBsetPen()\fP, \fBsetStyle()\fP and \fBsetSymbol()\fP. +.IP "\fBb) Connect/Assign data. \fP" 1c +\fBQwtPlotCurve\fP gets its points using a \fBQwtSeriesData\fP object offering a bridge to the real storage of the points ( like QAbstractItemModel ). There are several convenience classes derived from \fBQwtSeriesData\fP, that also store the points inside ( like QStandardItemModel ). \fBQwtPlotCurve\fP also offers a couple of variations of \fBsetSamples()\fP, that build \fBQwtSeriesData\fP objects from arrays internally. +.IP "\fBc) Attach the curve to a plot \fP" 1c +See \fBQwtPlotItem::attach()\fP +.PP +.RE +.PP +\fBExample:\fP +.RS 4 +see examples/bode +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtPointSeriesData\fP, \fBQwtSymbol\fP, \fBQwtScaleMap\fP +.RE +.PP + +.SH "Member Typedef Documentation" +.PP +.SS "typedef QFlags<\fBCurveAttribute\fP> \fBQwtPlotCurve::CurveAttributes\fP" +.PP +Curve attributes. +.SS "typedef QFlags<\fBLegendAttribute\fP> \fBQwtPlotCurve::LegendAttributes\fP" +.PP +Legend attributes. +.SS "typedef QFlags<\fBPaintAttribute\fP> \fBQwtPlotCurve::PaintAttributes\fP" +.PP +Paint attributes. +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtPlotCurve::CurveAttribute\fP"Attribute for drawing the curve +.PP +\fBSee also:\fP +.RS 4 +\fBsetCurveAttribute()\fP, \fBtestCurveAttribute()\fP, \fBcurveFitter()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIInverted \fP\fP +For \fBQwtPlotCurve::Steps\fP only. Draws a step function from the right to the left. +.TP +\fB\fIFitted \fP\fP +Only in combination with \fBQwtPlotCurve::Lines\fP A \fBQwtCurveFitter\fP tries to interpolate/smooth the curve, before it is painted. +.PP +\fBNote:\fP +.RS 4 +Curve fitting requires temorary memory for calculating coefficients and additional points. If painting in \fBQwtPlotCurve::Fitted\fP mode is slow it might be better to fit the points, before they are passed to \fBQwtPlotCurve\fP. +.RE +.PP + +.SS "enum \fBQwtPlotCurve::CurveStyle\fP"Curve styles. +.PP +\fBSee also:\fP +.RS 4 +\fBsetStyle()\fP, \fBstyle()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fINoCurve \fP\fP +Don't draw a curve. Note: This doesn't affect the symbols. +.TP +\fB\fILines \fP\fP +Connect the points with straight lines. The lines might be interpolated depending on the 'Fitted' attribute. Curve fitting can be configured using \fBsetCurveFitter()\fP. +.TP +\fB\fISticks \fP\fP +Draw vertical or horizontal sticks ( depending on the \fBorientation()\fP ) from a baseline which is defined by \fBsetBaseline()\fP. +.TP +\fB\fISteps \fP\fP +Connect the points with a step function. The step function is drawn from the left to the right or vice versa, depending on the \fBQwtPlotCurve::Inverted\fP attribute. +.TP +\fB\fIDots \fP\fP +Draw dots at the locations of the data points. Note: This is different from a dotted line (see \fBsetPen()\fP), and faster as a curve in QwtPlotCurve::NoStyle style and a symbol painting a point. +.TP +\fB\fIUserCurve \fP\fP +Styles >= \fBQwtPlotCurve::UserCurve\fP are reserved for derived classes of \fBQwtPlotCurve\fP that overload \fBdrawCurve()\fP with additional application specific curve types. +.SS "enum \fBQwtPlotCurve::LegendAttribute\fP"Attributes how to represent the curve on the legend +.PP +\fBSee also:\fP +.RS 4 +\fBsetLegendAttribute()\fP, \fBtestLegendAttribute()\fP, \fBdrawLegendIdentifier()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fILegendNoAttribute \fP\fP +\fBQwtPlotCurve\fP tries to find a color representing the curve and paints a rectangle with it. +.TP +\fB\fILegendShowLine \fP\fP +If the \fBstyle()\fP is not \fBQwtPlotCurve::NoCurve\fP a line is painted with the curve \fBpen()\fP. +.TP +\fB\fILegendShowSymbol \fP\fP +If the curve has a valid symbol it is painted. +.TP +\fB\fILegendShowBrush \fP\fP +If the curve has a brush a rectangle filled with the curve \fBbrush()\fP is painted. +.SS "enum \fBQwtPlotCurve::PaintAttribute\fP"Attributes to modify the drawing algorithm. The default setting enables ClipPolygons +.PP +\fBSee also:\fP +.RS 4 +\fBsetPaintAttribute()\fP, \fBtestPaintAttribute()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIClipPolygons \fP\fP +Clip polygons before painting them. In situations, where points are far outside the visible area (f.e when zooming deep) this might be a substantial improvement for the painting performance +.TP +\fB\fICacheSymbols \fP\fP +Paint the symbol to a QPixmap and paint the pixmap instead rendering the symbol for each point. The flag has no effect, when the curve is not painted to the canvas ( f.e when exporting the plot to a PDF document ). +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPlotCurve::QwtPlotCurve (const QString &title = \fCQString::null\fP)\fC [explicit]\fP"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fItitle\fP Title of the curve +.RE +.PP + +.SS "QwtPlotCurve::QwtPlotCurve (const \fBQwtText\fP &title)\fC [explicit]\fP"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fItitle\fP Title of the curve +.RE +.PP + +.SS "QwtPlotCurve::~QwtPlotCurve ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "double QwtPlotCurve::baseline () const"\fBReturns:\fP +.RS 4 +Value of the baseline +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetBaseline()\fP +.RE +.PP + +.SS "const QBrush & QwtPlotCurve::brush () const"\fBReturns:\fP +.RS 4 +Brush used to fill the area between lines and the baseline +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetBrush()\fP, \fBsetBaseline()\fP, \fBbaseline()\fP +.RE +.PP + +.SS "void QwtPlotCurve::closePolyline (QPainter *painter, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, QPolygonF &polygon) const\fC [protected]\fP" +.PP +Complete a polygon to be a closed polygon including the area between the original polygon and the baseline. \fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIxMap\fP X map +.br +\fIyMap\fP Y map +.br +\fIpolygon\fP Polygon to be completed +.RE +.PP + +.SS "int QwtPlotCurve::closestPoint (const QPoint &pos, double *dist = \fCNULL\fP) const"Find the closest curve point for a specific position +.PP +\fBParameters:\fP +.RS 4 +\fIpos\fP Position, where to look for the closest curve point +.br +\fIdist\fP If dist != NULL, \fBclosestPoint()\fP returns the distance between the position and the clostest curve point +.RE +.PP +\fBReturns:\fP +.RS 4 +Index of the closest curve point, or -1 if none can be found ( f.e when the curve has no points ) +.RE +.PP +\fBNote:\fP +.RS 4 +\fBclosestPoint()\fP implements a dumb algorithm, that iterates over all points +.RE +.PP + +.SS "\fBQwtCurveFitter\fP * QwtPlotCurve::curveFitter () const"Get the curve fitter. If curve fitting is disabled NULL is returned. +.PP +\fBReturns:\fP +.RS 4 +Curve fitter +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetCurveFitter()\fP, \fBFitted\fP +.RE +.PP + +.SS "void QwtPlotCurve::drawCurve (QPainter *painter, intstyle, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect, intfrom, intto) const\fC [protected, virtual]\fP" +.PP +Draw the line part (without symbols) of a curve interval. \fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIstyle\fP curve style, see \fBQwtPlotCurve::CurveStyle\fP +.br +\fIxMap\fP x map +.br +\fIyMap\fP y map +.br +\fIcanvasRect\fP Contents rect of the canvas +.br +\fIfrom\fP index of the first point to be painted +.br +\fIto\fP index of the last point to be painted +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBdraw()\fP, \fBdrawDots()\fP, \fBdrawLines()\fP, \fBdrawSteps()\fP, \fBdrawSticks()\fP +.RE +.PP + +.SS "void QwtPlotCurve::drawDots (QPainter *painter, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect, intfrom, intto) const\fC [protected]\fP"Draw dots +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIxMap\fP x map +.br +\fIyMap\fP y map +.br +\fIcanvasRect\fP Contents rect of the canvas +.br +\fIfrom\fP index of the first point to be painted +.br +\fIto\fP index of the last point to be painted +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBdraw()\fP, \fBdrawCurve()\fP, \fBdrawSticks()\fP, \fBdrawLines()\fP, \fBdrawSteps()\fP +.RE +.PP + +.SS "void QwtPlotCurve::drawLegendIdentifier (QPainter *painter, const QRectF &rect) const\fC [virtual]\fP" +.PP +Draw the identifier representing the curve on the legend. \fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIrect\fP Bounding rectangle for the identifier +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetLegendAttribute()\fP, \fBQwtPlotItem::Legend\fP +.RE +.PP + +.PP +Reimplemented from \fBQwtLegendItemManager\fP. +.SS "void QwtPlotCurve::drawLines (QPainter *painter, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect, intfrom, intto) const\fC [protected]\fP" +.PP +Draw lines. If the CurveAttribute Fitted is enabled a \fBQwtCurveFitter\fP tries to interpolate/smooth the curve, before it is painted. +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIxMap\fP x map +.br +\fIyMap\fP y map +.br +\fIcanvasRect\fP Contents rect of the canvas +.br +\fIfrom\fP index of the first point to be painted +.br +\fIto\fP index of the last point to be painted +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetCurveAttribute()\fP, \fBsetCurveFitter()\fP, \fBdraw()\fP, \fBdrawLines()\fP, \fBdrawDots()\fP, \fBdrawSteps()\fP, \fBdrawSticks()\fP +.RE +.PP + +.SS "void QwtPlotCurve::drawSeries (QPainter *painter, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect, intfrom, intto) const\fC [virtual]\fP"Draw an interval of the curve +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIxMap\fP Maps x-values into pixel coordinates. +.br +\fIyMap\fP Maps y-values into pixel coordinates. +.br +\fIcanvasRect\fP Contents rect of the canvas +.br +\fIfrom\fP Index of the first point to be painted +.br +\fIto\fP Index of the last point to be painted. If to < 0 the curve will be painted to its last point. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBdrawCurve()\fP, \fBdrawSymbols()\fP, +.RE +.PP + +.PP +Implements \fBQwtPlotAbstractSeriesItem\fP. +.SS "void QwtPlotCurve::drawSteps (QPainter *painter, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect, intfrom, intto) const\fC [protected]\fP"Draw step function +.PP +The direction of the steps depends on Inverted attribute. +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIxMap\fP x map +.br +\fIyMap\fP y map +.br +\fIcanvasRect\fP Contents rect of the canvas +.br +\fIfrom\fP index of the first point to be painted +.br +\fIto\fP index of the last point to be painted +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBCurveAttribute\fP, \fBsetCurveAttribute()\fP, \fBdraw()\fP, \fBdrawCurve()\fP, \fBdrawDots()\fP, \fBdrawLines()\fP, \fBdrawSticks()\fP +.RE +.PP + +.SS "void QwtPlotCurve::drawSticks (QPainter *painter, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect, intfrom, intto) const\fC [protected]\fP"Draw sticks +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIxMap\fP x map +.br +\fIyMap\fP y map +.br +\fIcanvasRect\fP Contents rect of the canvas +.br +\fIfrom\fP index of the first point to be painted +.br +\fIto\fP index of the last point to be painted +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBdraw()\fP, \fBdrawCurve()\fP, \fBdrawDots()\fP, \fBdrawLines()\fP, \fBdrawSteps()\fP +.RE +.PP + +.SS "void QwtPlotCurve::drawSymbols (QPainter *painter, const \fBQwtSymbol\fP &symbol, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect, intfrom, intto) const\fC [protected, virtual]\fP"Draw symbols +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIsymbol\fP Curve symbol +.br +\fIxMap\fP x map +.br +\fIyMap\fP y map +.br +\fIcanvasRect\fP Contents rect of the canvas +.br +\fIfrom\fP Index of the first point to be painted +.br +\fIto\fP Index of the last point to be painted +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetSymbol()\fP, \fBdrawSeries()\fP, \fBdrawCurve()\fP +.RE +.PP + +.SS "void QwtPlotCurve::fillCurve (QPainter *painter, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect, QPolygonF &polygon) const\fC [protected, virtual]\fP"Fill the area between the curve and the baseline with the curve brush +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIxMap\fP x map +.br +\fIyMap\fP y map +.br +\fIcanvasRect\fP Contents rect of the canvas +.br +\fIpolygon\fP Polygon - will be modified ! +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetBrush()\fP, \fBsetBaseline()\fP, \fBsetStyle()\fP +.RE +.PP + +.SS "void QwtPlotCurve::init ()\fC [protected]\fP" +.PP +Initialize internal members. +.SS "double QwtPlotCurve::maxXValue () const\fC [inline]\fP" +.PP +\fBboundingRect()\fP.right() +.SS "double QwtPlotCurve::maxYValue () const\fC [inline]\fP" +.PP +\fBboundingRect()\fP.bottom() +.SS "double QwtPlotCurve::minXValue () const\fC [inline]\fP" +.PP +\fBboundingRect()\fP.left() +.SS "double QwtPlotCurve::minYValue () const\fC [inline]\fP" +.PP +\fBboundingRect()\fP.top() +.SS "const QPen & QwtPlotCurve::pen () const"\fBReturns:\fP +.RS 4 +Pen used to draw the lines +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetPen()\fP, \fBbrush()\fP +.RE +.PP + +.SS "int QwtPlotCurve::rtti () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +QwtPlotItem::Rtti_PlotCurve +.RE +.PP + +.PP +Reimplemented from \fBQwtPlotItem\fP. +.SS "void QwtPlotCurve::setBaseline (doublevalue)" +.PP +Set the value of the baseline. The baseline is needed for filling the curve with a brush or the Sticks drawing style. The interpretation of the baseline depends on the CurveType. With QwtPlotCurve::Yfx, the baseline is interpreted as a horizontal line at y = \fBbaseline()\fP, with QwtPlotCurve::Yfy, it is interpreted as a vertical line at x = \fBbaseline()\fP. +.PP +The default value is 0.0. +.PP +\fBParameters:\fP +.RS 4 +\fIvalue\fP Value of the baseline +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBbaseline()\fP, \fBsetBrush()\fP, \fBsetStyle()\fP, \fBsetStyle()\fP +.RE +.PP + +.SS "void QwtPlotCurve::setBrush (const QBrush &brush)" +.PP +Assign a brush. In case of brush.style() != QBrush::NoBrush and \fBstyle()\fP != \fBQwtPlotCurve::Sticks\fP the area between the curve and the baseline will be filled. +.PP +In case !brush.color().isValid() the area will be filled by pen.color(). The fill algorithm simply connects the first and the last curve point to the baseline. So the curve data has to be sorted (ascending or descending). +.PP +\fBParameters:\fP +.RS 4 +\fIbrush\fP New brush +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBbrush()\fP, \fBsetBaseline()\fP, \fBbaseline()\fP +.RE +.PP + +.SS "void QwtPlotCurve::setCurveAttribute (\fBCurveAttribute\fPattribute, boolon = \fCtrue\fP)"Specify an attribute for drawing the curve +.PP +\fBParameters:\fP +.RS 4 +\fIattribute\fP Curve attribute +.br +\fIon\fP On/Off +.RE +.PP +/sa \fBtestCurveAttribute()\fP, \fBsetCurveFitter()\fP +.SS "void QwtPlotCurve::setCurveFitter (\fBQwtCurveFitter\fP *curveFitter)"Assign a curve fitter +.PP +The curve fitter 'smooths' the curve points, when the Fitted CurveAttribute is set. setCurveFitter(NULL) also disables curve fitting. +.PP +The curve fitter operates on the translated points ( = widget coordinates) to be functional for logarithmic scales. Obviously this is less performant for fitting algorithms, that reduce the number of points. +.PP +For situations, where curve fitting is used to improve the performance of painting huge series of points it might be better to execute the fitter on the curve points once and to cache the result in the \fBQwtSeriesData\fP object. +.PP +\fBParameters:\fP +.RS 4 +\fI\fBcurveFitter()\fP\fP Curve fitter +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBFitted\fP +.RE +.PP + +.SS "void QwtPlotCurve::setLegendAttribute (\fBLegendAttribute\fPattribute, boolon = \fCtrue\fP)"Specify an attribute how to draw the legend identifier +.PP +\fBParameters:\fP +.RS 4 +\fIattribute\fP Attribute +.br +\fIon\fP On/Off /sa \fBtestLegendAttribute()\fP +.RE +.PP + +.SS "void QwtPlotCurve::setPaintAttribute (\fBPaintAttribute\fPattribute, boolon = \fCtrue\fP)"Specify an attribute how to draw the curve +.PP +\fBParameters:\fP +.RS 4 +\fIattribute\fP Paint attribute +.br +\fIon\fP On/Off +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBtestPaintAttribute()\fP +.RE +.PP + +.SS "void QwtPlotCurve::setPen (const QPen &pen)"Assign a pen +.PP +\fBParameters:\fP +.RS 4 +\fIpen\fP New pen +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBpen()\fP, \fBbrush()\fP +.RE +.PP + +.SS "void QwtPlotCurve::setRawSamples (const double *xData, const double *yData, intsize)" +.PP +Initialize the data by pointing to memory blocks which are not managed by \fBQwtPlotCurve\fP. setRawSamples is provided for efficiency. It is important to keep the pointers during the lifetime of the underlying \fBQwtCPointerData\fP class. +.PP +\fBParameters:\fP +.RS 4 +\fIxData\fP pointer to x data +.br +\fIyData\fP pointer to y data +.br +\fIsize\fP size of x and y +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtCPointerData\fP +.RE +.PP + +.SS "void QwtPlotCurve::setSamples (const QVector< QPointF > &samples)"Initialize data with an array of points (explicitly shared). +.PP +\fBParameters:\fP +.RS 4 +\fIsamples\fP Vector of points +.RE +.PP + +.SS "void QwtPlotCurve::setSamples (const QVector< double > &xData, const QVector< double > &yData)" +.PP +Initialize data with x- and y-arrays (explicitly shared) \fBParameters:\fP +.RS 4 +\fIxData\fP x data +.br +\fIyData\fP y data +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtPointArrayData\fP +.RE +.PP + +.SS "void QwtPlotCurve::setSamples (const double *xData, const double *yData, intsize)"Set data by copying x- and y-values from specified memory blocks. Contrary to \fBsetRawSamples()\fP, this function makes a 'deep copy' of the data. +.PP +\fBParameters:\fP +.RS 4 +\fIxData\fP pointer to x values +.br +\fIyData\fP pointer to y values +.br +\fIsize\fP size of xData and yData +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtPointArrayData\fP +.RE +.PP + +.SS "void QwtPlotCurve::setStyle (\fBCurveStyle\fPstyle)"Set the curve's drawing style +.PP +\fBParameters:\fP +.RS 4 +\fIstyle\fP Curve style +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBstyle()\fP +.RE +.PP + +.SS "void QwtPlotCurve::setSymbol (const \fBQwtSymbol\fP *symbol)"Assign a symbol +.PP +\fBParameters:\fP +.RS 4 +\fIsymbol\fP Symbol +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsymbol()\fP +.RE +.PP + +.SS "\fBQwtPlotCurve::CurveStyle\fP QwtPlotCurve::style () const"Return the current style +.PP +\fBSee also:\fP +.RS 4 +\fBsetStyle()\fP +.RE +.PP + +.SS "const \fBQwtSymbol\fP * QwtPlotCurve::symbol () const"\fBReturns:\fP +.RS 4 +Current symbol or NULL, when no symbol has been assigned +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetSymbol()\fP +.RE +.PP + +.SS "bool QwtPlotCurve::testCurveAttribute (\fBCurveAttribute\fPattribute) const"\fBReturns:\fP +.RS 4 +true, if attribute is enabled +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetCurveAttribute()\fP +.RE +.PP + +.SS "bool QwtPlotCurve::testLegendAttribute (\fBLegendAttribute\fPattribute) const" +.PP +Return the current paint attributes. \fBSee also:\fP +.RS 4 +\fBsetLegendAttribute()\fP +.RE +.PP + +.SS "bool QwtPlotCurve::testPaintAttribute (\fBPaintAttribute\fPattribute) const" +.PP +Return the current paint attributes. \fBSee also:\fP +.RS 4 +\fBsetPaintAttribute()\fP +.RE +.PP + +.SS "void QwtPlotCurve::updateLegend (\fBQwtLegend\fP *legend) const\fC [virtual]\fP" +.PP +Update the widget that represents the item on the legend. \fBParameters:\fP +.RS 4 +\fIlegend\fP Legend +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBdrawLegendIdentifier()\fP, \fBlegendItem()\fP, \fBQwtPlotItem::Legend\fP +.RE +.PP + +.PP +Reimplemented from \fBQwtPlotItem\fP. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotDict.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotDict.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotDict.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotDict.3 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,139 @@ +.TH "QwtPlotDict" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPlotDict \- +.PP +A dictionary for plot items. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherited by \fBQwtPlot\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPlotDict\fP ()" +.br +.ti -1c +.RI "virtual \fB~QwtPlotDict\fP ()" +.br +.ti -1c +.RI "void \fBsetAutoDelete\fP (bool)" +.br +.ti -1c +.RI "bool \fBautoDelete\fP () const " +.br +.ti -1c +.RI "const QwtPlotItemList & \fBitemList\fP () const " +.br +.ti -1c +.RI "QwtPlotItemList \fBitemList\fP (int rtti) const " +.br +.ti -1c +.RI "void \fBdetachItems\fP (int rtti=QwtPlotItem::Rtti_PlotItem, bool autoDelete=true)" +.br +.in -1c +.SS "Friends" + +.in +1c +.ti -1c +.RI "class \fBQwtPlotItem\fP" +.br +.in -1c +.SH "Detailed Description" +.PP +A dictionary for plot items. + +\fBQwtPlotDict\fP organizes plot items in increasing z-order. If \fBautoDelete()\fP is enabled, all attached items will be deleted in the destructor of the dictionary. +.PP +\fBSee also:\fP +.RS 4 +\fBQwtPlotItem::attach()\fP, \fBQwtPlotItem::detach()\fP, \fBQwtPlotItem::z()\fP +.RE +.PP + +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPlotDict::QwtPlotDict ()\fC [explicit]\fP"Constructor +.PP +Auto deletion is enabled. +.PP +\fBSee also:\fP +.RS 4 +\fBsetAutoDelete()\fP, attachItem() +.RE +.PP + +.SS "QwtPlotDict::~QwtPlotDict ()\fC [virtual]\fP"Destructor +.PP +If autoDelete is on, all attached items will be deleted +.PP +\fBSee also:\fP +.RS 4 +\fBsetAutoDelete()\fP, \fBautoDelete()\fP, attachItem() +.RE +.PP + +.SH "Member Function Documentation" +.PP +.SS "bool QwtPlotDict::autoDelete () const"\fBReturns:\fP +.RS 4 +true if auto deletion is enabled +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetAutoDelete()\fP, attachItem() +.RE +.PP + +.SS "void QwtPlotDict::detachItems (intrtti = \fCQwtPlotItem::Rtti_PlotItem\fP, boolautoDelete = \fCtrue\fP)"Detach items from the dictionary +.PP +\fBParameters:\fP +.RS 4 +\fIrtti\fP In case of QwtPlotItem::Rtti_PlotItem detach all items otherwise only those items of the type rtti. +.br +\fIautoDelete\fP If true, delete all detached items +.RE +.PP + +.SS "QwtPlotItemList QwtPlotDict::itemList (intrtti) const"\fBReturns:\fP +.RS 4 +List of all attached plot items of a specific type. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtPlotItem::rtti()\fP +.RE +.PP + +.SS "const QwtPlotItemList & QwtPlotDict::itemList () const" +.PP +A QwtPlotItemList of all attached plot items. Use caution when iterating these lists, as removing/detaching an item will invalidate the iterator. Instead you can place pointers to objects to be removed in a removal list, and traverse that list later. +.PP +\fBReturns:\fP +.RS 4 +List of all attached plot items. +.RE +.PP + +.SS "void QwtPlotDict::setAutoDelete (boolautoDelete)"En/Disable Auto deletion +.PP +If Auto deletion is on all attached plot items will be deleted in the destructor of \fBQwtPlotDict\fP. The default value is on. +.PP +\fBSee also:\fP +.RS 4 +\fBautoDelete()\fP, attachItem() +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotDirectPainter.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotDirectPainter.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotDirectPainter.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotDirectPainter.3 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,217 @@ +.TH "QwtPlotDirectPainter" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPlotDirectPainter \- +.PP +Painter object trying to paint incrementally. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBAttribute\fP { \fBAtomicPainter\fP = 0x01, \fBFullRepaint\fP = 0x02, \fBCopyBackingStore\fP = 0x04 }" +.br +.ti -1c +.RI "typedef QFlags< \fBAttribute\fP > \fBAttributes\fP" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPlotDirectPainter\fP (QObject *parent=NULL)" +.br +.ti -1c +.RI "virtual \fB~QwtPlotDirectPainter\fP ()" +.br +.ti -1c +.RI "void \fBsetAttribute\fP (\fBAttribute\fP, bool on)" +.br +.ti -1c +.RI "bool \fBtestAttribute\fP (\fBAttribute\fP) const " +.br +.ti -1c +.RI "void \fBsetClipping\fP (bool)" +.br +.ti -1c +.RI "bool \fBhasClipping\fP () const " +.br +.ti -1c +.RI "void \fBsetClipRegion\fP (const QRegion &)" +.br +.ti -1c +.RI "QRegion \fBclipRegion\fP () const " +.br +.ti -1c +.RI "void \fBdrawSeries\fP (\fBQwtPlotAbstractSeriesItem\fP *, int from, int to)" +.br +.ti -1c +.RI "void \fBreset\fP ()" +.br +.ti -1c +.RI "virtual bool \fBeventFilter\fP (QObject *, QEvent *)" +.br +.in -1c +.SH "Detailed Description" +.PP +Painter object trying to paint incrementally. + +Often applications want to display samples while they are collected. When there are too many samples complete replots will be expensive to be processed in a collection cycle. +.PP +\fBQwtPlotDirectPainter\fP offers an API to paint subsets ( f.e all additions points ) without erasing/repainting the plot canvas. +.PP +On certain environments it might be important to calculate a proper clip region before painting. F.e. for Qt Embedded only the clipped part of the backing store will be copied to a ( maybe unaccelerated ) frame buffer. +.PP +\fBWarning:\fP +.RS 4 +Incremental painting will only help when no replot is triggered by another operation ( like changing scales ) and nothing needs to be erased. +.RE +.PP + +.SH "Member Typedef Documentation" +.PP +.SS "typedef QFlags<\fBAttribute\fP> \fBQwtPlotDirectPainter::Attributes\fP" +.PP +Paint attributes. +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtPlotDirectPainter::Attribute\fP" +.PP +Paint attributes. \fBSee also:\fP +.RS 4 +\fBsetAttribute()\fP, \fBtestAttribute()\fP, \fBdrawSeries()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIAtomicPainter \fP\fP +Initializing a QPainter is an expensive operation. When AtomicPainter is set each call of \fBdrawSeries()\fP opens/closes a temporary QPainter. Otherwise \fBQwtPlotDirectPainter\fP tries to use the same QPainter as long as possible. +.TP +\fB\fIFullRepaint \fP\fP +When FullRepaint is set the plot canvas is explicitely repainted after the samples have been rendered. +.TP +\fB\fICopyBackingStore \fP\fP +When \fBQwtPlotCanvas::BackingStore\fP is enabled the painter has to paint to the backing store and the widget. In certain situations/environments it might be faster to paint to the backing store only and then copy the backingstore to the canvas. This flag can also be useful for settings, where Qt fills the the clip region with the widget background. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPlotDirectPainter::QwtPlotDirectPainter (QObject *parent = \fCNULL\fP)" +.PP +Constructor. +.SS "QwtPlotDirectPainter::~QwtPlotDirectPainter ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "QRegion QwtPlotDirectPainter::clipRegion () const"\fBReturns:\fP +.RS 4 +Currently set clip region. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetClipRegion()\fP, \fBsetClipping()\fP, \fBhasClipping()\fP +.RE +.PP + +.SS "void QwtPlotDirectPainter::drawSeries (\fBQwtPlotAbstractSeriesItem\fP *seriesItem, intfrom, intto)" +.PP +Draw a set of points of a seriesItem. When observing an measurement while it is running, new points have to be added to an existing seriesItem. drawSeries can be used to display them avoiding a complete redraw of the canvas. +.PP +Setting plot()->canvas()->setAttribute(Qt::WA_PaintOutsidePaintEvent, true); will result in faster painting, if the paint engine of the canvas widget supports this feature. +.PP +\fBParameters:\fP +.RS 4 +\fIseriesItem\fP Item to be painted +.br +\fIfrom\fP Index of the first point to be painted +.br +\fIto\fP Index of the last point to be painted. If to < 0 the series will be painted to its last point. +.RE +.PP + +.SS "bool QwtPlotDirectPainter::eventFilter (QObject *, QEvent *event)\fC [virtual]\fP" +.PP +Event filter. +.SS "bool QwtPlotDirectPainter::hasClipping () const"\fBReturns:\fP +.RS 4 +true, when clipping is enabled +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetClipping()\fP, \fBclipRegion()\fP, \fBsetClipRegion()\fP +.RE +.PP + +.SS "void QwtPlotDirectPainter::reset ()" +.PP +Close the internal QPainter. +.SS "void QwtPlotDirectPainter::setAttribute (\fBAttribute\fPattribute, boolon)"Change an attribute +.PP +\fBParameters:\fP +.RS 4 +\fIattribute\fP Attribute to change +.br +\fIon\fP On/Off +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBAttribute\fP, \fBtestAttribute()\fP +.RE +.PP + +.SS "void QwtPlotDirectPainter::setClipping (boolenable)"En/Disables clipping +.PP +\fBParameters:\fP +.RS 4 +\fIenable\fP Enables clipping is true, disable it otherwise +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBhasClipping()\fP, \fBclipRegion()\fP, \fBsetClipRegion()\fP +.RE +.PP + +.SS "void QwtPlotDirectPainter::setClipRegion (const QRegion ®ion)" +.PP +Assign a clip region and enable clipping. Depending on the environment setting a proper clip region might improve the performance heavily. F.e. on Qt embedded only the clipped part of the backing store will be copied to a ( maybe unaccelerated ) frame buffer device. +.PP +\fBParameters:\fP +.RS 4 +\fIregion\fP Clip region +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBclipRegion()\fP, \fBhasClipping()\fP, \fBsetClipping()\fP +.RE +.PP + +.SS "bool QwtPlotDirectPainter::testAttribute (\fBAttribute\fPattribute) const"Check if a attribute is set. +.PP +\fBParameters:\fP +.RS 4 +\fIattribute\fP Attribute to be tested +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBAttribute\fP, \fBsetAttribute()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotGrid.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotGrid.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotGrid.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotGrid.3 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,332 @@ +.TH "QwtPlotGrid" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPlotGrid \- +.PP +A class which draws a coordinate grid. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtPlotItem\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPlotGrid\fP ()" +.br +.ti -1c +.RI "virtual \fB~QwtPlotGrid\fP ()" +.br +.ti -1c +.RI "virtual int \fBrtti\fP () const " +.br +.ti -1c +.RI "void \fBenableX\fP (bool tf)" +.br +.ti -1c +.RI "bool \fBxEnabled\fP () const " +.br +.ti -1c +.RI "void \fBenableY\fP (bool tf)" +.br +.ti -1c +.RI "bool \fByEnabled\fP () const " +.br +.ti -1c +.RI "void \fBenableXMin\fP (bool tf)" +.br +.ti -1c +.RI "bool \fBxMinEnabled\fP () const " +.br +.ti -1c +.RI "void \fBenableYMin\fP (bool tf)" +.br +.ti -1c +.RI "bool \fByMinEnabled\fP () const " +.br +.ti -1c +.RI "void \fBsetXDiv\fP (const \fBQwtScaleDiv\fP &sx)" +.br +.ti -1c +.RI "const \fBQwtScaleDiv\fP & \fBxScaleDiv\fP () const " +.br +.ti -1c +.RI "void \fBsetYDiv\fP (const \fBQwtScaleDiv\fP &sy)" +.br +.ti -1c +.RI "const \fBQwtScaleDiv\fP & \fByScaleDiv\fP () const " +.br +.ti -1c +.RI "void \fBsetPen\fP (const QPen &p)" +.br +.ti -1c +.RI "void \fBsetMajPen\fP (const QPen &p)" +.br +.ti -1c +.RI "const QPen & \fBmajPen\fP () const " +.br +.ti -1c +.RI "void \fBsetMinPen\fP (const QPen &p)" +.br +.ti -1c +.RI "const QPen & \fBminPen\fP () const " +.br +.ti -1c +.RI "virtual void \fBdraw\fP (QPainter *p, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &rect) const " +.br +.ti -1c +.RI "virtual void \fBupdateScaleDiv\fP (const \fBQwtScaleDiv\fP &xMap, const \fBQwtScaleDiv\fP &yMap)" +.br +.in -1c +.SH "Detailed Description" +.PP +A class which draws a coordinate grid. + +The \fBQwtPlotGrid\fP class can be used to draw a coordinate grid. A coordinate grid consists of major and minor vertical and horizontal gridlines. The locations of the gridlines are determined by the X and Y scale divisions which can be assigned with \fBsetXDiv()\fP and \fBsetYDiv()\fP. The \fBdraw()\fP member draws the grid within a bounding rectangle. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPlotGrid::QwtPlotGrid ()\fC [explicit]\fP" +.PP +Enables major grid, disables minor grid. +.SS "QwtPlotGrid::~QwtPlotGrid ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "void QwtPlotGrid::draw (QPainter *painter, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect) const\fC [virtual]\fP" +.PP +Draw the grid. The grid is drawn into the bounding rectangle such that gridlines begin and end at the rectangle's borders. The X and Y maps are used to map the scale divisions into the drawing region screen. +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIxMap\fP X axis map +.br +\fIyMap\fP Y axis +.br +\fIcanvasRect\fP Contents rect of the plot canvas +.RE +.PP + +.PP +Implements \fBQwtPlotItem\fP. +.SS "void QwtPlotGrid::enableX (booltf)" +.PP +Enable or disable vertical gridlines. \fBParameters:\fP +.RS 4 +\fItf\fP Enable (true) or disable +.RE +.PP +\fBSee also:\fP +.RS 4 +Minor gridlines can be enabled or disabled with \fBenableXMin()\fP +.RE +.PP + +.SS "void QwtPlotGrid::enableXMin (booltf)" +.PP +Enable or disable minor vertical gridlines. \fBParameters:\fP +.RS 4 +\fItf\fP Enable (true) or disable +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBenableX()\fP +.RE +.PP + +.SS "void QwtPlotGrid::enableY (booltf)" +.PP +Enable or disable horizontal gridlines. \fBParameters:\fP +.RS 4 +\fItf\fP Enable (true) or disable +.RE +.PP +\fBSee also:\fP +.RS 4 +Minor gridlines can be enabled or disabled with \fBenableYMin()\fP +.RE +.PP + +.SS "void QwtPlotGrid::enableYMin (booltf)" +.PP +Enable or disable minor horizontal gridlines. \fBParameters:\fP +.RS 4 +\fItf\fP Enable (true) or disable +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBenableY()\fP +.RE +.PP + +.SS "const QPen & QwtPlotGrid::majPen () const"\fBReturns:\fP +.RS 4 +the pen for the major gridlines +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetMajPen()\fP, \fBsetMinPen()\fP, \fBsetPen()\fP +.RE +.PP + +.SS "const QPen & QwtPlotGrid::minPen () const"\fBReturns:\fP +.RS 4 +the pen for the minor gridlines +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetMinPen()\fP, \fBsetMajPen()\fP, \fBsetPen()\fP +.RE +.PP + +.SS "int QwtPlotGrid::rtti () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +QwtPlotItem::Rtti_PlotGrid +.RE +.PP + +.PP +Reimplemented from \fBQwtPlotItem\fP. +.SS "void QwtPlotGrid::setMajPen (const QPen &pen)"Assign a pen for the major gridlines +.PP +\fBParameters:\fP +.RS 4 +\fIpen\fP Pen +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBmajPen()\fP, \fBsetMinPen()\fP, \fBsetPen()\fP +.RE +.PP + +.SS "void QwtPlotGrid::setMinPen (const QPen &pen)"Assign a pen for the minor gridlines +.PP +\fBParameters:\fP +.RS 4 +\fIpen\fP Pen +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBminPen()\fP, \fBsetMajPen()\fP, \fBsetPen()\fP +.RE +.PP + +.SS "void QwtPlotGrid::setPen (const QPen &pen)"Assign a pen for both major and minor gridlines +.PP +\fBParameters:\fP +.RS 4 +\fIpen\fP Pen +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetMajPen()\fP, \fBsetMinPen()\fP +.RE +.PP + +.SS "void QwtPlotGrid::setXDiv (const \fBQwtScaleDiv\fP &scaleDiv)"Assign an x axis scale division +.PP +\fBParameters:\fP +.RS 4 +\fIscaleDiv\fP Scale division +.RE +.PP + +.SS "void QwtPlotGrid::setYDiv (const \fBQwtScaleDiv\fP &scaleDiv)"Assign a y axis division +.PP +\fBParameters:\fP +.RS 4 +\fIscaleDiv\fP Scale division +.RE +.PP + +.SS "void QwtPlotGrid::updateScaleDiv (const \fBQwtScaleDiv\fP &xScaleDiv, const \fBQwtScaleDiv\fP &yScaleDiv)\fC [virtual]\fP"Update the grid to changes of the axes scale division +.PP +\fBParameters:\fP +.RS 4 +\fIxScaleDiv\fP Scale division of the x-axis +.br +\fIyScaleDiv\fP Scale division of the y-axis +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtPlot::updateAxes()\fP +.RE +.PP + +.PP +Reimplemented from \fBQwtPlotItem\fP. +.SS "bool QwtPlotGrid::xEnabled () const"\fBReturns:\fP +.RS 4 +true if vertical gridlines are enabled +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBenableX()\fP +.RE +.PP + +.SS "bool QwtPlotGrid::xMinEnabled () const"\fBReturns:\fP +.RS 4 +true if minor vertical gridlines are enabled +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBenableXMin()\fP +.RE +.PP + +.SS "const \fBQwtScaleDiv\fP & QwtPlotGrid::xScaleDiv () const"\fBReturns:\fP +.RS 4 +the scale division of the x axis +.RE +.PP + +.SS "bool QwtPlotGrid::yEnabled () const"\fBReturns:\fP +.RS 4 +true if horizontal gridlines are enabled +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBenableY()\fP +.RE +.PP + +.SS "bool QwtPlotGrid::yMinEnabled () const"\fBReturns:\fP +.RS 4 +true if minor horizontal gridlines are enabled +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBenableYMin()\fP +.RE +.PP + +.SS "const \fBQwtScaleDiv\fP & QwtPlotGrid::yScaleDiv () const"\fBReturns:\fP +.RS 4 +the scale division of the y axis +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotHistogram.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotHistogram.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotHistogram.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotHistogram.3 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,451 @@ +.TH "QwtPlotHistogram" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPlotHistogram \- +.PP +\fBQwtPlotHistogram\fP represents a series of samples, where an interval is associated with a value ( $y = f([x1,x2])$ ). + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtPlotSeriesItem< QwtIntervalSample >\fP. +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBHistogramStyle\fP { \fBOutline\fP, \fBColumns\fP, \fBLines\fP, \fBUserStyle\fP = 100 }" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPlotHistogram\fP (const QString &title=QString::null)" +.br +.ti -1c +.RI "\fBQwtPlotHistogram\fP (const \fBQwtText\fP &title)" +.br +.ti -1c +.RI "virtual \fB~QwtPlotHistogram\fP ()" +.br +.ti -1c +.RI "virtual int \fBrtti\fP () const " +.br +.ti -1c +.RI "void \fBsetPen\fP (const QPen &)" +.br +.ti -1c +.RI "const QPen & \fBpen\fP () const " +.br +.ti -1c +.RI "void \fBsetBrush\fP (const QBrush &)" +.br +.ti -1c +.RI "const QBrush & \fBbrush\fP () const " +.br +.ti -1c +.RI "void \fBsetSamples\fP (const QVector< \fBQwtIntervalSample\fP > &)" +.br +.ti -1c +.RI "void \fBsetBaseline\fP (double reference)" +.br +.ti -1c +.RI "double \fBbaseline\fP () const " +.br +.ti -1c +.RI "void \fBsetStyle\fP (\fBHistogramStyle\fP style)" +.br +.ti -1c +.RI "\fBHistogramStyle\fP \fBstyle\fP () const " +.br +.ti -1c +.RI "void \fBsetSymbol\fP (const \fBQwtColumnSymbol\fP *)" +.br +.ti -1c +.RI "const \fBQwtColumnSymbol\fP * \fBsymbol\fP () const " +.br +.ti -1c +.RI "virtual void \fBdrawSeries\fP (QPainter *p, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect, int from, int to) const " +.br +.ti -1c +.RI "virtual QRectF \fBboundingRect\fP () const " +.br +.ti -1c +.RI "virtual void \fBdrawLegendIdentifier\fP (QPainter *, const QRectF &) const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual \fBQwtColumnRect\fP \fBcolumnRect\fP (const \fBQwtIntervalSample\fP &, const \fBQwtScaleMap\fP &, const \fBQwtScaleMap\fP &) const " +.br +.ti -1c +.RI "virtual void \fBdrawColumn\fP (QPainter *, const \fBQwtColumnRect\fP &, const \fBQwtIntervalSample\fP &) const " +.br +.ti -1c +.RI "void \fBdrawColumns\fP (QPainter *, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, int from, int to) const " +.br +.ti -1c +.RI "void \fBdrawOutline\fP (QPainter *, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, int from, int to) const " +.br +.ti -1c +.RI "void \fBdrawLines\fP (QPainter *, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, int from, int to) const " +.br +.in -1c +.SH "Detailed Description" +.PP +\fBQwtPlotHistogram\fP represents a series of samples, where an interval is associated with a value ( $y = f([x1,x2])$ ). + +The representation depends on the \fBstyle()\fP and an optional \fBsymbol()\fP that is displayed for each interval. +.PP +\fBNote:\fP +.RS 4 +The term 'histogram' is used in a different way in the areas of digital image processing and statistics. Wikipedia introduces the terms 'image histogram' and 'color histogram' to avoid confusions. While 'image histograms' can be displayed by a \fBQwtPlotCurve\fP there is no applicable plot item for a 'color histogram' yet. +.RE +.PP + +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtPlotHistogram::HistogramStyle\fP"Histogram styles. The default style is \fBQwtPlotHistogram::Columns\fP. +.PP +\fBSee also:\fP +.RS 4 +\fBsetStyle()\fP, \fBstyle()\fP, \fBsetSymbol()\fP, \fBsymbol()\fP, \fBsetBaseline()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIOutline \fP\fP +Draw an outline around the area, that is build by all intervals using the \fBpen()\fP and fill it with the \fBbrush()\fP. The outline style requires, that the intervals are in increasing order and not overlapping. +.TP +\fB\fIColumns \fP\fP +Draw a column for each interval. When a \fBsymbol()\fP has been set the symbol is used otherwise the column is displayed as plain rectangle using \fBpen()\fP and \fBbrush()\fP. +.TP +\fB\fILines \fP\fP +Draw a simple line using the \fBpen()\fP for each interval. +.TP +\fB\fIUserStyle \fP\fP +Styles >= UserStyle are reserved for derived classes that overload \fBdrawSeries()\fP with additional application specific ways to display a histogram. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPlotHistogram::QwtPlotHistogram (const QString &title = \fCQString::null\fP)\fC [explicit]\fP"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fItitle\fP Title of the histogram. +.RE +.PP + +.SS "QwtPlotHistogram::QwtPlotHistogram (const \fBQwtText\fP &title)\fC [explicit]\fP"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fItitle\fP Title of the histogram. +.RE +.PP + +.SS "QwtPlotHistogram::~QwtPlotHistogram ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "double QwtPlotHistogram::baseline () const"\fBReturns:\fP +.RS 4 +Value of the baseline +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetBaseline()\fP +.RE +.PP + +.SS "QRectF QwtPlotHistogram::boundingRect () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +Bounding rectangle of all samples. For an empty series the rectangle is invalid. +.RE +.PP + +.PP +Reimplemented from \fBQwtPlotSeriesItem< QwtIntervalSample >\fP. +.SS "const QBrush & QwtPlotHistogram::brush () const"\fBReturns:\fP +.RS 4 +Brush used in a \fBstyle()\fP depending way. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetPen()\fP, \fBbrush()\fP +.RE +.PP + +.SS "\fBQwtColumnRect\fP QwtPlotHistogram::columnRect (const \fBQwtIntervalSample\fP &sample, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap) const\fC [protected, virtual]\fP"Calculate the area that is covered by a sample +.PP +\fBParameters:\fP +.RS 4 +\fIsample\fP Sample +.br +\fIxMap\fP Maps x-values into pixel coordinates. +.br +\fIyMap\fP Maps y-values into pixel coordinates. +.RE +.PP +\fBReturns:\fP +.RS 4 +Rectangle, that is covered by a sample +.RE +.PP + +.SS "void QwtPlotHistogram::drawColumn (QPainter *painter, const \fBQwtColumnRect\fP &rect, const \fBQwtIntervalSample\fP &sample) const\fC [protected, virtual]\fP"Draw a column for a sample in Columns \fBstyle()\fP. +.PP +When a \fBsymbol()\fP has been set the symbol is used otherwise the column is displayed as plain rectangle using \fBpen()\fP and \fBbrush()\fP. +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIrect\fP Rectangle where to paint the column in paint device coordinates +.br +\fIsample\fP Sample to be displayed +.RE +.PP +\fBNote:\fP +.RS 4 +In applications, where different intervals need to be displayed in a different way ( f.e different colors or even using differnt symbols) it is recommended to overload \fBdrawColumn()\fP. +.RE +.PP + +.SS "void QwtPlotHistogram::drawColumns (QPainter *painter, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, intfrom, intto) const\fC [protected]\fP"Draw a histogram in Columns \fBstyle()\fP +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIxMap\fP Maps x-values into pixel coordinates. +.br +\fIyMap\fP Maps y-values into pixel coordinates. +.br +\fIfrom\fP Index of the first sample to be painted +.br +\fIto\fP Index of the last sample to be painted. If to < 0 the histogram will be painted to its last point. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetStyle()\fP, \fBstyle()\fP, \fBsetSymbol()\fP, \fBdrawColumn()\fP +.RE +.PP + +.SS "void QwtPlotHistogram::drawLegendIdentifier (QPainter *painter, const QRectF &rect) const\fC [virtual]\fP"Draw a plain rectangle without pen using the \fBbrush()\fP as identifier +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIrect\fP Bounding rectangle for the identifier +.RE +.PP + +.PP +Reimplemented from \fBQwtLegendItemManager\fP. +.SS "void QwtPlotHistogram::drawLines (QPainter *painter, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, intfrom, intto) const\fC [protected]\fP"Draw a histogram in Lines \fBstyle()\fP +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIxMap\fP Maps x-values into pixel coordinates. +.br +\fIyMap\fP Maps y-values into pixel coordinates. +.br +\fIfrom\fP Index of the first sample to be painted +.br +\fIto\fP Index of the last sample to be painted. If to < 0 the histogram will be painted to its last point. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetStyle()\fP, \fBstyle()\fP, \fBsetPen()\fP +.RE +.PP + +.SS "void QwtPlotHistogram::drawOutline (QPainter *painter, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, intfrom, intto) const\fC [protected]\fP"Draw a histogram in Outline \fBstyle()\fP +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIxMap\fP Maps x-values into pixel coordinates. +.br +\fIyMap\fP Maps y-values into pixel coordinates. +.br +\fIfrom\fP Index of the first sample to be painted +.br +\fIto\fP Index of the last sample to be painted. If to < 0 the histogram will be painted to its last point. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetStyle()\fP, \fBstyle()\fP +.RE +.PP +\fBWarning:\fP +.RS 4 +The outline style requires, that the intervals are in increasing order and not overlapping. +.RE +.PP + +.SS "void QwtPlotHistogram::drawSeries (QPainter *painter, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect, intfrom, intto) const\fC [virtual]\fP"Draw a subset of the histogram samples +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIxMap\fP Maps x-values into pixel coordinates. +.br +\fIyMap\fP Maps y-values into pixel coordinates. +.br +\fIcanvasRect\fP Contents rect of the canvas +.br +\fIfrom\fP Index of the first sample to be painted +.br +\fIto\fP Index of the last sample to be painted. If to < 0 the series will be painted to its last sample. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBdrawOutline()\fP, \fBdrawLines()\fP, \fBdrawColumns\fP +.RE +.PP + +.PP +Implements \fBQwtPlotAbstractSeriesItem\fP. +.SS "const QPen & QwtPlotHistogram::pen () const"\fBReturns:\fP +.RS 4 +Pen used in a \fBstyle()\fP depending way. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetPen()\fP, \fBbrush()\fP +.RE +.PP + +.SS "int QwtPlotHistogram::rtti () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +QwtPlotItem::Rtti_PlotHistogram +.RE +.PP + +.PP +Reimplemented from \fBQwtPlotItem\fP. +.SS "void QwtPlotHistogram::setBaseline (doublevalue)" +.PP +Set the value of the baseline. Each column representing an \fBQwtIntervalSample\fP is defined by its interval and the interval between baseline and the value of the sample. +.PP +The default value of the baseline is 0.0. +.PP +\fBParameters:\fP +.RS 4 +\fIvalue\fP Value of the baseline +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBbaseline()\fP +.RE +.PP + +.SS "void QwtPlotHistogram::setBrush (const QBrush &brush)"Assign a brush, that is used in a \fBstyle()\fP depending way. +.PP +\fBParameters:\fP +.RS 4 +\fIbrush\fP New brush +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBpen()\fP, \fBbrush()\fP +.RE +.PP + +.SS "void QwtPlotHistogram::setPen (const QPen &pen)"Assign a pen, that is used in a \fBstyle()\fP depending way. +.PP +\fBParameters:\fP +.RS 4 +\fIpen\fP New pen +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBpen()\fP, \fBbrush()\fP +.RE +.PP + +.SS "void QwtPlotHistogram::setSamples (const QVector< \fBQwtIntervalSample\fP > &samples)"Initialize data with an array of samples. +.PP +\fBParameters:\fP +.RS 4 +\fIsamples\fP Vector of points +.RE +.PP + +.SS "void QwtPlotHistogram::setStyle (\fBHistogramStyle\fPstyle)"Set the histogram's drawing style +.PP +\fBParameters:\fP +.RS 4 +\fIstyle\fP Histogram style +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBHistogramStyle\fP, \fBstyle()\fP +.RE +.PP + +.SS "void QwtPlotHistogram::setSymbol (const \fBQwtColumnSymbol\fP *symbol)" +.PP +Assign a symbol. In Column style an optional symbol can be assigned, that is responsible for displaying the rectangle that is defined by the interval and the distance between \fBbaseline()\fP and value. When no symbol has been defined the area is displayed as plain rectangle using \fBpen()\fP and \fBbrush()\fP. +.PP +\fBSee also:\fP +.RS 4 +\fBstyle()\fP, \fBsymbol()\fP, \fBdrawColumn()\fP, \fBpen()\fP, \fBbrush()\fP +.RE +.PP +\fBNote:\fP +.RS 4 +In applications, where different intervals need to be displayed in a different way ( f.e different colors or even using differnt symbols) it is recommended to overload \fBdrawColumn()\fP. +.RE +.PP + +.SS "\fBQwtPlotHistogram::HistogramStyle\fP QwtPlotHistogram::style () const"Return the current style +.PP +\fBSee also:\fP +.RS 4 +\fBHistogramStyle\fP, \fBsetStyle()\fP +.RE +.PP + +.SS "const \fBQwtColumnSymbol\fP * QwtPlotHistogram::symbol () const"\fBReturns:\fP +.RS 4 +Current symbol or NULL, when no symbol has been assigned +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetSymbol()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotIntervalCurve.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotIntervalCurve.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotIntervalCurve.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotIntervalCurve.3 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,404 @@ +.TH "QwtPlotIntervalCurve" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPlotIntervalCurve \- +.PP +\fBQwtPlotIntervalCurve\fP represents a series of samples, where each value is associated with an interval ( $[y1,y2] = f(x)$ ). + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtPlotSeriesItem< QwtIntervalSample >\fP. +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBCurveStyle\fP { \fBNoCurve\fP, \fBTube\fP, \fBUserCurve\fP = 100 }" +.br +.ti -1c +.RI "enum \fBPaintAttribute\fP { \fBClipPolygons\fP = 0x01, \fBClipSymbol\fP = 0x02 }" +.br +.ti -1c +.RI "typedef QFlags< \fBPaintAttribute\fP > \fBPaintAttributes\fP" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPlotIntervalCurve\fP (const QString &title=QString::null)" +.br +.ti -1c +.RI "\fBQwtPlotIntervalCurve\fP (const \fBQwtText\fP &title)" +.br +.ti -1c +.RI "virtual \fB~QwtPlotIntervalCurve\fP ()" +.br +.ti -1c +.RI "virtual int \fBrtti\fP () const " +.br +.ti -1c +.RI "void \fBsetPaintAttribute\fP (\fBPaintAttribute\fP, bool on=true)" +.br +.ti -1c +.RI "bool \fBtestPaintAttribute\fP (\fBPaintAttribute\fP) const " +.br +.ti -1c +.RI "void \fBsetSamples\fP (const QVector< \fBQwtIntervalSample\fP > &)" +.br +.ti -1c +.RI "void \fBsetPen\fP (const QPen &)" +.br +.ti -1c +.RI "const QPen & \fBpen\fP () const " +.br +.ti -1c +.RI "void \fBsetBrush\fP (const QBrush &)" +.br +.ti -1c +.RI "const QBrush & \fBbrush\fP () const " +.br +.ti -1c +.RI "void \fBsetStyle\fP (\fBCurveStyle\fP style)" +.br +.ti -1c +.RI "\fBCurveStyle\fP \fBstyle\fP () const " +.br +.ti -1c +.RI "void \fBsetSymbol\fP (const \fBQwtIntervalSymbol\fP *)" +.br +.ti -1c +.RI "const \fBQwtIntervalSymbol\fP * \fBsymbol\fP () const " +.br +.ti -1c +.RI "virtual void \fBdrawSeries\fP (QPainter *p, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect, int from, int to) const " +.br +.ti -1c +.RI "virtual QRectF \fBboundingRect\fP () const " +.br +.ti -1c +.RI "virtual void \fBdrawLegendIdentifier\fP (QPainter *, const QRectF &) const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "void \fBinit\fP ()" +.br +.ti -1c +.RI "virtual void \fBdrawTube\fP (QPainter *, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect, int from, int to) const " +.br +.ti -1c +.RI "virtual void \fBdrawSymbols\fP (QPainter *, const \fBQwtIntervalSymbol\fP &, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect, int from, int to) const " +.br +.in -1c +.SH "Detailed Description" +.PP +\fBQwtPlotIntervalCurve\fP represents a series of samples, where each value is associated with an interval ( $[y1,y2] = f(x)$ ). + +The representation depends on the \fBstyle()\fP and an optional \fBsymbol()\fP that is displayed for each interval. \fBQwtPlotIntervalCurve\fP might be used to disply error bars or the area between 2 curves. +.SH "Member Typedef Documentation" +.PP +.SS "typedef QFlags<\fBPaintAttribute\fP> \fBQwtPlotIntervalCurve::PaintAttributes\fP" +.PP +Paint attributes. +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtPlotIntervalCurve::CurveStyle\fP" +.PP +Curve styles. The default setting is \fBQwtPlotIntervalCurve::Tube\fP. \fBSee also:\fP +.RS 4 +\fBsetStyle()\fP, \fBstyle()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fINoCurve \fP\fP +Don't draw a curve. Note: This doesn't affect the symbols. +.TP +\fB\fITube \fP\fP +Build 2 curves from the upper and lower limits of the intervals and draw them with the \fBpen()\fP. The area between the curves is filled with the \fBbrush()\fP. +.TP +\fB\fIUserCurve \fP\fP +Styles >= \fBQwtPlotIntervalCurve::UserCurve\fP are reserved for derived classes that overload \fBdrawSeries()\fP with additional application specific curve types. +.SS "enum \fBQwtPlotIntervalCurve::PaintAttribute\fP"Attributes to modify the drawing algorithm. +.PP +\fBSee also:\fP +.RS 4 +\fBsetPaintAttribute()\fP, \fBtestPaintAttribute()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIClipPolygons \fP\fP +Clip polygons before painting them. In situations, where points are far outside the visible area (f.e when zooming deep) this might be a substantial improvement for the painting performance. +.TP +\fB\fIClipSymbol \fP\fP +Check if a symbol is on the plot canvas before painting it. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPlotIntervalCurve::QwtPlotIntervalCurve (const QString &title = \fCQString::null\fP)\fC [explicit]\fP"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fItitle\fP Title of the curve +.RE +.PP + +.SS "QwtPlotIntervalCurve::QwtPlotIntervalCurve (const \fBQwtText\fP &title)\fC [explicit]\fP"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fItitle\fP Title of the curve +.RE +.PP + +.SS "QwtPlotIntervalCurve::~QwtPlotIntervalCurve ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "QRectF QwtPlotIntervalCurve::boundingRect () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +Bounding rectangle of all samples. For an empty series the rectangle is invalid. +.RE +.PP + +.PP +Reimplemented from \fBQwtPlotSeriesItem< QwtIntervalSample >\fP. +.SS "const QBrush & QwtPlotIntervalCurve::brush () const"\fBReturns:\fP +.RS 4 +Brush used to fill the area in Tube \fBstyle()\fP +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetBrush()\fP, \fBsetStyle()\fP, \fBCurveStyle\fP +.RE +.PP + +.SS "void QwtPlotIntervalCurve::drawLegendIdentifier (QPainter *painter, const QRectF &rect) const\fC [virtual]\fP"In case of Tibe stale() a plain rectangle is painted without a pen filled the \fBbrush()\fP. If a symbol is assigned it is painted cebtered into rect. +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIrect\fP Bounding rectangle for the identifier +.RE +.PP + +.PP +Reimplemented from \fBQwtLegendItemManager\fP. +.SS "void QwtPlotIntervalCurve::drawSeries (QPainter *painter, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect, intfrom, intto) const\fC [virtual]\fP"Draw a subset of the samples +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIxMap\fP Maps x-values into pixel coordinates. +.br +\fIyMap\fP Maps y-values into pixel coordinates. +.br +\fIcanvasRect\fP Contents rect of the canvas +.br +\fIfrom\fP Index of the first sample to be painted +.br +\fIto\fP Index of the last sample to be painted. If to < 0 the series will be painted to its last sample. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBdrawTube()\fP, \fBdrawSymbols()\fP +.RE +.PP + +.PP +Implements \fBQwtPlotAbstractSeriesItem\fP. +.SS "void QwtPlotIntervalCurve::drawSymbols (QPainter *painter, const \fBQwtIntervalSymbol\fP &symbol, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect, intfrom, intto) const\fC [protected, virtual]\fP"Draw symbols for a subset of the samples +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIsymbol\fP Interval symbol +.br +\fIxMap\fP x map +.br +\fIyMap\fP y map +.br +\fIcanvasRect\fP Contents rect of the canvas +.br +\fIfrom\fP Index of the first sample to be painted +.br +\fIto\fP Index of the last sample to be painted +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetSymbol()\fP, \fBdrawSeries()\fP, \fBdrawTube()\fP +.RE +.PP + +.SS "void QwtPlotIntervalCurve::drawTube (QPainter *painter, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect, intfrom, intto) const\fC [protected, virtual]\fP"Draw a tube +.PP +Builds 2 curves from the upper and lower limits of the intervals and draws them with the \fBpen()\fP. The area between the curves is filled with the \fBbrush()\fP. +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIxMap\fP Maps x-values into pixel coordinates. +.br +\fIyMap\fP Maps y-values into pixel coordinates. +.br +\fIcanvasRect\fP Contents rect of the canvas +.br +\fIfrom\fP Index of the first sample to be painted +.br +\fIto\fP Index of the last sample to be painted. If to < 0 the series will be painted to its last sample. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBdrawSeries()\fP, \fBdrawSymbols()\fP +.RE +.PP + +.SS "void QwtPlotIntervalCurve::init ()\fC [protected]\fP" +.PP +Initialize internal members. +.SS "const QPen & QwtPlotIntervalCurve::pen () const" +.PP +Return the pen used to draw the lines. \fBSee also:\fP +.RS 4 +\fBsetPen()\fP, \fBbrush()\fP +.RE +.PP + +.SS "int QwtPlotIntervalCurve::rtti () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +QwtPlotItem::Rtti_PlotIntervalCurve +.RE +.PP + +.PP +Reimplemented from \fBQwtPlotItem\fP. +.SS "void QwtPlotIntervalCurve::setBrush (const QBrush &brush)"Assign a brush. +.PP +The brush is used to fill the area in Tube \fBstyle()\fP. +.PP +\fBParameters:\fP +.RS 4 +\fIbrush\fP Brush +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBbrush()\fP, \fBpen()\fP, \fBsetStyle()\fP, \fBCurveStyle\fP +.RE +.PP + +.SS "void QwtPlotIntervalCurve::setPaintAttribute (\fBPaintAttribute\fPattribute, boolon = \fCtrue\fP)"Specify an attribute how to draw the curve +.PP +\fBParameters:\fP +.RS 4 +\fIattribute\fP Paint attribute +.br +\fIon\fP On/Off +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBtestPaintAttribute()\fP +.RE +.PP + +.SS "void QwtPlotIntervalCurve::setPen (const QPen &pen)" +.PP +Assign a pen. \fBParameters:\fP +.RS 4 +\fIpen\fP New pen +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBpen()\fP, \fBbrush()\fP +.RE +.PP + +.SS "void QwtPlotIntervalCurve::setSamples (const QVector< \fBQwtIntervalSample\fP > &samples)"Initialize data with an array of samples. +.PP +\fBParameters:\fP +.RS 4 +\fIsamples\fP Vector of samples +.RE +.PP + +.SS "void QwtPlotIntervalCurve::setStyle (\fBCurveStyle\fPstyle)"Set the curve's drawing style +.PP +\fBParameters:\fP +.RS 4 +\fIstyle\fP Curve style +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBCurveStyle\fP, \fBstyle()\fP +.RE +.PP + +.SS "void QwtPlotIntervalCurve::setSymbol (const \fBQwtIntervalSymbol\fP *symbol)"Assign a symbol. +.PP +\fBParameters:\fP +.RS 4 +\fIsymbol\fP Symbol +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsymbol()\fP +.RE +.PP + +.SS "\fBQwtPlotIntervalCurve::CurveStyle\fP QwtPlotIntervalCurve::style () const" +.PP +Return the current style. \fBSee also:\fP +.RS 4 +\fBsetStyle()\fP +.RE +.PP + +.SS "const \fBQwtIntervalSymbol\fP * QwtPlotIntervalCurve::symbol () const"\fBReturns:\fP +.RS 4 +Current symbol or NULL, when no symbol has been assigned +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetSymbol()\fP +.RE +.PP + +.SS "bool QwtPlotIntervalCurve::testPaintAttribute (\fBPaintAttribute\fPattribute) const" +.PP +Return the current paint attributes. \fBSee also:\fP +.RS 4 +\fBPaintAttribute\fP, \fBsetPaintAttribute()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotItem.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotItem.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotItem.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotItem.3 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,615 @@ +.TH "QwtPlotItem" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPlotItem \- +.PP +Base class for items on the plot canvas. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtLegendItemManager\fP. +.PP +Inherited by \fBQwtPlotAbstractSeriesItem\fP, \fBQwtPlotGrid\fP, \fBQwtPlotMarker\fP, \fBQwtPlotRasterItem\fP, \fBQwtPlotScaleItem\fP, and \fBQwtPlotSvgItem\fP. +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBRttiValues\fP { \fBRtti_PlotItem\fP = 0, \fBRtti_PlotGrid\fP, \fBRtti_PlotScale\fP, \fBRtti_PlotMarker\fP, \fBRtti_PlotCurve\fP, \fBRtti_PlotSpectroCurve\fP, \fBRtti_PlotIntervalCurve\fP, \fBRtti_PlotHistogram\fP, \fBRtti_PlotSpectrogram\fP, \fBRtti_PlotSVG\fP, \fBRtti_PlotUserItem\fP = 1000 }" +.br +.ti -1c +.RI "enum \fBItemAttribute\fP { \fBLegend\fP = 0x01, \fBAutoScale\fP = 0x02 }" +.br +.ti -1c +.RI "enum \fBRenderHint\fP { \fBRenderAntialiased\fP = 1 }" +.br +.ti -1c +.RI "typedef QFlags< \fBItemAttribute\fP > \fBItemAttributes\fP" +.br +.ti -1c +.RI "typedef QFlags< \fBRenderHint\fP > \fBRenderHints\fP" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPlotItem\fP (const \fBQwtText\fP &title=\fBQwtText\fP())" +.br +.ti -1c +.RI "virtual \fB~QwtPlotItem\fP ()" +.br +.ti -1c +.RI "void \fBattach\fP (\fBQwtPlot\fP *plot)" +.br +.ti -1c +.RI "void \fBdetach\fP ()" +.br +.ti -1c +.RI "\fBQwtPlot\fP * \fBplot\fP () const " +.br +.ti -1c +.RI "void \fBsetTitle\fP (const QString &title)" +.br +.ti -1c +.RI "void \fBsetTitle\fP (const \fBQwtText\fP &title)" +.br +.ti -1c +.RI "const \fBQwtText\fP & \fBtitle\fP () const " +.br +.ti -1c +.RI "virtual int \fBrtti\fP () const " +.br +.ti -1c +.RI "void \fBsetItemAttribute\fP (\fBItemAttribute\fP, bool on=true)" +.br +.ti -1c +.RI "bool \fBtestItemAttribute\fP (\fBItemAttribute\fP) const " +.br +.ti -1c +.RI "void \fBsetRenderHint\fP (\fBRenderHint\fP, bool on=true)" +.br +.ti -1c +.RI "bool \fBtestRenderHint\fP (\fBRenderHint\fP) const " +.br +.ti -1c +.RI "double \fBz\fP () const " +.br +.ti -1c +.RI "void \fBsetZ\fP (double z)" +.br +.ti -1c +.RI "void \fBshow\fP ()" +.br +.ti -1c +.RI "void \fBhide\fP ()" +.br +.ti -1c +.RI "virtual void \fBsetVisible\fP (bool)" +.br +.ti -1c +.RI "bool \fBisVisible\fP () const " +.br +.ti -1c +.RI "void \fBsetAxes\fP (int xAxis, int yAxis)" +.br +.ti -1c +.RI "void \fBsetXAxis\fP (int axis)" +.br +.ti -1c +.RI "int \fBxAxis\fP () const " +.br +.ti -1c +.RI "void \fBsetYAxis\fP (int axis)" +.br +.ti -1c +.RI "int \fByAxis\fP () const " +.br +.ti -1c +.RI "virtual void \fBitemChanged\fP ()" +.br +.ti -1c +.RI "virtual void \fBdraw\fP (QPainter *painter, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect) const =0" +.br +.ti -1c +.RI "virtual QRectF \fBboundingRect\fP () const " +.br +.ti -1c +.RI "virtual void \fBupdateLegend\fP (\fBQwtLegend\fP *) const " +.br +.ti -1c +.RI "virtual void \fBupdateScaleDiv\fP (const \fBQwtScaleDiv\fP &, const \fBQwtScaleDiv\fP &)" +.br +.ti -1c +.RI "virtual QWidget * \fBlegendItem\fP () const " +.br +.ti -1c +.RI "QRectF \fBscaleRect\fP (const \fBQwtScaleMap\fP &, const \fBQwtScaleMap\fP &) const " +.br +.ti -1c +.RI "QRectF \fBpaintRect\fP (const \fBQwtScaleMap\fP &, const \fBQwtScaleMap\fP &) const " +.br +.in -1c +.SH "Detailed Description" +.PP +Base class for items on the plot canvas. + +A plot item is 'something', that can be painted on the plot canvas, or only affects the scales of the plot widget. They can be categorized as: +.PP +.IP "\(bu" 2 +Representator +.br + A 'Representator' is an item that represents some sort of data on the plot canvas. The different representator classes are organized according to the characteristics of the data: +.IP " \(bu" 4 +\fBQwtPlotMarker\fP Represents a point or a horizontal/vertical coordinate +.IP " \(bu" 4 +\fBQwtPlotCurve\fP Represents a series of points +.IP " \(bu" 4 +\fBQwtPlotSpectrogram\fP ( \fBQwtPlotRasterItem\fP ) Represents raster data +.IP " \(bu" 4 +... +.PP + +.PP +.PP +.IP "\(bu" 2 +Decorators +.br + A 'Decorator' is an item, that displays additional information, that is not related to any data: +.IP " \(bu" 4 +\fBQwtPlotGrid\fP +.IP " \(bu" 4 +\fBQwtPlotScaleItem\fP +.IP " \(bu" 4 +\fBQwtPlotSvgItem\fP +.IP " \(bu" 4 +... +.PP + +.PP +.PP +Depending on the \fBQwtPlotItem::ItemAttribute\fP flags, an item is included into autoscaling or has an entry on the legnd. +.PP +Before misusing the existing item classes it might be better to implement a new type of plot item ( don't implement a watermark as spectrogram ). Deriving a new type of \fBQwtPlotItem\fP primarily means to implement the YourPlotItem::draw() method. +.PP +\fBSee also:\fP +.RS 4 +The cpuplot example shows the implementation of additional \fBplot\fP items. +.RE +.PP + +.SH "Member Typedef Documentation" +.PP +.SS "typedef QFlags<\fBItemAttribute\fP> \fBQwtPlotItem::ItemAttributes\fP" +.PP +Plot Item Attributes. +.SS "typedef QFlags<\fBRenderHint\fP> \fBQwtPlotItem::RenderHints\fP" +.PP +Render hints. +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtPlotItem::ItemAttribute\fP"Plot Item Attributes +.PP +\fBSee also:\fP +.RS 4 +\fBsetItemAttribute()\fP, \fBtestItemAttribute()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fILegend \fP\fP +The item is represented on the legend. +.TP +\fB\fIAutoScale \fP\fP +The \fBboundingRect()\fP of the item is included in the autoscaling calculation. +.SS "enum \fBQwtPlotItem::RenderHint\fP" +.PP +Render hints. +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIRenderAntialiased \fP\fP +Enable antialiasing. +.SS "enum \fBQwtPlotItem::RttiValues\fP" +.PP +Runtime type information. RttiValues is used to cast plot items, without having to enable runtime type information of the compiler. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPlotItem::QwtPlotItem (const \fBQwtText\fP &title = \fC\fBQwtText\fP()\fP)\fC [explicit]\fP"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fItitle\fP Title of the item +.RE +.PP + +.SS "QwtPlotItem::~QwtPlotItem ()\fC [virtual]\fP" +.PP +Destroy the \fBQwtPlotItem\fP. +.SH "Member Function Documentation" +.PP +.SS "void QwtPlotItem::attach (\fBQwtPlot\fP *plot)" +.PP +Attach the item to a plot. This method will attach a \fBQwtPlotItem\fP to the \fBQwtPlot\fP argument. It will first detach the \fBQwtPlotItem\fP from any plot from a previous call to attach (if necessary). If a NULL argument is passed, it will detach from any \fBQwtPlot\fP it was attached to. +.PP +\fBParameters:\fP +.RS 4 +\fIplot\fP Plot widget +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBdetach()\fP +.RE +.PP + +.SS "QRectF QwtPlotItem::boundingRect () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +An invalid bounding rect: QRectF(1.0, 1.0, -2.0, -2.0) +.RE +.PP + +.PP +Reimplemented in \fBQwtPlotHistogram\fP, \fBQwtPlotIntervalCurve\fP, \fBQwtPlotMarker\fP, \fBQwtPlotRasterItem\fP, \fBQwtPlotSeriesItem< T >\fP, \fBQwtPlotSvgItem\fP, \fBQwtPlotSeriesItem< QwtIntervalSample >\fP, \fBQwtPlotSeriesItem< QPointF >\fP, and \fBQwtPlotSeriesItem< QwtPoint3D >\fP. +.SS "void QwtPlotItem::detach ()" +.PP +This method detaches a \fBQwtPlotItem\fP from any \fBQwtPlot\fP it has been associated with. \fBdetach()\fP is equivalent to calling attach( NULL ) +.PP +\fBSee also:\fP +.RS 4 +\fBattach()\fP +.RE +.PP + +.SS "virtual void QwtPlotItem::draw (QPainter *painter, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect) const\fC [pure virtual]\fP" +.PP +Draw the item. \fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIxMap\fP Maps x-values into pixel coordinates. +.br +\fIyMap\fP Maps y-values into pixel coordinates. +.br +\fIcanvasRect\fP Contents rect of the canvas in painter coordinates +.RE +.PP + +.PP +Implemented in \fBQwtPlotGrid\fP, \fBQwtPlotMarker\fP, \fBQwtPlotRasterItem\fP, \fBQwtPlotScaleItem\fP, \fBQwtPlotAbstractSeriesItem\fP, \fBQwtPlotSpectrogram\fP, and \fBQwtPlotSvgItem\fP. +.SS "void QwtPlotItem::hide ()" +.PP +Hide the item. +.SS "bool QwtPlotItem::isVisible () const"\fBReturns:\fP +.RS 4 +true if visible +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetVisible()\fP, \fBshow()\fP, \fBhide()\fP +.RE +.PP + +.SS "void QwtPlotItem::itemChanged ()\fC [virtual]\fP"Update the legend and call \fBQwtPlot::autoRefresh\fP for the parent plot. +.PP +\fBSee also:\fP +.RS 4 +\fBupdateLegend()\fP +.RE +.PP + +.SS "QWidget * QwtPlotItem::legendItem () const\fC [virtual]\fP" +.PP +Allocate the widget that represents the item on the legend. The default implementation returns a QwtLegendItem(), but an item could be represented by any type of widget, by overloading \fBlegendItem()\fP and \fBupdateLegend()\fP. +.PP +\fBReturns:\fP +.RS 4 +QwtLegendItem() +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBupdateLegend()\fP QwtLegend() +.RE +.PP + +.PP +Implements \fBQwtLegendItemManager\fP. +.SS "QRectF QwtPlotItem::paintRect (const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap) const" +.PP +Calculate the bounding paint rect of 2 maps. \fBParameters:\fP +.RS 4 +\fIxMap\fP X map +.br +\fIyMap\fP X map +.RE +.PP +\fBReturns:\fP +.RS 4 +Bounding paint rect of the scale maps, normalized +.RE +.PP + +.SS "\fBQwtPlot\fP * QwtPlotItem::plot () const" +.PP +Return attached plot. +.SS "int QwtPlotItem::rtti () const\fC [virtual]\fP"Return rtti for the specific class represented. \fBQwtPlotItem\fP is simply a virtual interface class, and base classes will implement this method with specific rtti values so a user can differentiate them. +.PP +The rtti value is useful for environments, where the runtime type information is disabled and it is not possible to do a dynamic_cast<...>. +.PP +\fBReturns:\fP +.RS 4 +rtti value +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBRttiValues\fP +.RE +.PP + +.PP +Reimplemented in \fBQwtPlotCurve\fP, \fBQwtPlotGrid\fP, \fBQwtPlotHistogram\fP, \fBQwtPlotIntervalCurve\fP, \fBQwtPlotMarker\fP, \fBQwtPlotScaleItem\fP, \fBQwtPlotSpectroCurve\fP, \fBQwtPlotSpectrogram\fP, and \fBQwtPlotSvgItem\fP. +.SS "QRectF QwtPlotItem::scaleRect (const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap) const" +.PP +Calculate the bounding scale rect of 2 maps. \fBParameters:\fP +.RS 4 +\fIxMap\fP X map +.br +\fIyMap\fP X map +.RE +.PP +\fBReturns:\fP +.RS 4 +Bounding scale rect of the scale maps, normalized +.RE +.PP + +.SS "void QwtPlotItem::setAxes (intxAxis, intyAxis)"Set X and Y axis +.PP +The item will painted according to the coordinates its Axes. +.PP +\fBParameters:\fP +.RS 4 +\fIxAxis\fP X Axis +.br +\fIyAxis\fP Y Axis +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetXAxis()\fP, \fBsetYAxis()\fP, \fBxAxis()\fP, \fByAxis()\fP +.RE +.PP + +.SS "void QwtPlotItem::setItemAttribute (\fBItemAttribute\fPattribute, boolon = \fCtrue\fP)"Toggle an item attribute +.PP +\fBParameters:\fP +.RS 4 +\fIattribute\fP Attribute type +.br +\fIon\fP true/false +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBtestItemAttribute()\fP, \fBItemAttribute\fP +.RE +.PP + +.SS "void QwtPlotItem::setRenderHint (\fBRenderHint\fPhint, boolon = \fCtrue\fP)"Toggle an render hint +.PP +\fBParameters:\fP +.RS 4 +\fIhint\fP Render hint +.br +\fIon\fP true/false +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBtestRenderHint()\fP, \fBRenderHint\fP +.RE +.PP + +.SS "void QwtPlotItem::setTitle (const QString &title)"Set a new title +.PP +\fBParameters:\fP +.RS 4 +\fItitle\fP Title +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBtitle()\fP +.RE +.PP + +.SS "void QwtPlotItem::setTitle (const \fBQwtText\fP &title)"Set a new title +.PP +\fBParameters:\fP +.RS 4 +\fItitle\fP Title +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBtitle()\fP +.RE +.PP + +.SS "void QwtPlotItem::setVisible (boolon)\fC [virtual]\fP"Show/Hide the item +.PP +\fBParameters:\fP +.RS 4 +\fIon\fP Show if true, otherwise hide +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBisVisible()\fP, \fBshow()\fP, \fBhide()\fP +.RE +.PP + +.SS "void QwtPlotItem::setXAxis (intaxis)"Set the X axis +.PP +The item will painted according to the coordinates its Axes. +.PP +\fBParameters:\fP +.RS 4 +\fIaxis\fP X Axis +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetAxes()\fP, \fBsetYAxis()\fP, \fBxAxis()\fP +.RE +.PP + +.SS "void QwtPlotItem::setYAxis (intaxis)"Set the Y axis +.PP +The item will painted according to the coordinates its Axes. +.PP +\fBParameters:\fP +.RS 4 +\fIaxis\fP Y Axis +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetAxes()\fP, \fBsetXAxis()\fP, \fByAxis()\fP +.RE +.PP + +.SS "void QwtPlotItem::setZ (doublez)" +.PP +Set the z value. Plot items are painted in increasing z-order. +.PP +\fBParameters:\fP +.RS 4 +\fIz\fP Z-value +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBz()\fP, \fBQwtPlotDict::itemList()\fP +.RE +.PP + +.SS "void QwtPlotItem::show ()" +.PP +Show the item. +.SS "bool QwtPlotItem::testItemAttribute (\fBItemAttribute\fPattribute) const"Test an item attribute +.PP +\fBParameters:\fP +.RS 4 +\fIattribute\fP Attribute type +.RE +.PP +\fBReturns:\fP +.RS 4 +true/false +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetItemAttribute()\fP, \fBItemAttribute\fP +.RE +.PP + +.SS "bool QwtPlotItem::testRenderHint (\fBRenderHint\fPhint) const"Test a render hint +.PP +\fBParameters:\fP +.RS 4 +\fIhint\fP Render hint +.RE +.PP +\fBReturns:\fP +.RS 4 +true/false +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetRenderHint()\fP, \fBRenderHint\fP +.RE +.PP + +.SS "const \fBQwtText\fP & QwtPlotItem::title () const"\fBReturns:\fP +.RS 4 +Title of the item +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetTitle()\fP +.RE +.PP + +.SS "void QwtPlotItem::updateLegend (\fBQwtLegend\fP *legend) const\fC [virtual]\fP" +.PP +Update the widget that represents the item on the legend. \fBupdateLegend()\fP is called from \fBitemChanged()\fP to adopt the widget representing the item on the legend to its new configuration. +.PP +The default implementation updates a QwtLegendItem(), but an item could be represented by any type of widget, by overloading \fBlegendItem()\fP and \fBupdateLegend()\fP. +.PP +\fBParameters:\fP +.RS 4 +\fIlegend\fP Legend +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBlegendItem()\fP, \fBitemChanged()\fP, QwtLegend() +.RE +.PP + +.PP +Implements \fBQwtLegendItemManager\fP. +.PP +Reimplemented in \fBQwtPlotCurve\fP, and \fBQwtPlotMarker\fP. +.SS "void QwtPlotItem::updateScaleDiv (const \fBQwtScaleDiv\fP &xScaleDiv, const \fBQwtScaleDiv\fP &yScaleDiv)\fC [virtual]\fP" +.PP +Update the item to changes of the axes scale division. Update the item, when the axes of plot have changed. The default implementation does nothing, but items that depend on the scale division (like QwtPlotGrid()) have to reimplement \fBupdateScaleDiv()\fP +.PP +\fBParameters:\fP +.RS 4 +\fIxScaleDiv\fP Scale division of the x-axis +.br +\fIyScaleDiv\fP Scale division of the y-axis +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtPlot::updateAxes()\fP +.RE +.PP + +.PP +Reimplemented in \fBQwtPlotGrid\fP, \fBQwtPlotScaleItem\fP, \fBQwtPlotSeriesItem< T >\fP, \fBQwtPlotSeriesItem< QwtIntervalSample >\fP, \fBQwtPlotSeriesItem< QPointF >\fP, and \fBQwtPlotSeriesItem< QwtPoint3D >\fP. +.SS "int QwtPlotItem::xAxis () const" +.PP +Return xAxis. +.SS "int QwtPlotItem::yAxis () const" +.PP +Return yAxis. +.SS "double QwtPlotItem::z () const"Plot items are painted in increasing z-order. +.PP +\fBReturns:\fP +.RS 4 +\fBsetZ()\fP, \fBQwtPlotDict::itemList()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotLayout.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotLayout.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotLayout.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotLayout.3 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,460 @@ +.TH "QwtPlotLayout" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPlotLayout \- +.PP +Layout engine for \fBQwtPlot\fP. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBOption\fP { \fBAlignScales\fP = 0x01, \fBIgnoreScrollbars\fP = 0x02, \fBIgnoreFrames\fP = 0x04, \fBIgnoreLegend\fP = 0x08 }" +.br +.ti -1c +.RI "typedef QFlags< \fBOption\fP > \fBOptions\fP" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPlotLayout\fP ()" +.br +.ti -1c +.RI "virtual \fB~QwtPlotLayout\fP ()" +.br +.ti -1c +.RI "void \fBsetCanvasMargin\fP (int margin, int axis=-1)" +.br +.ti -1c +.RI "int \fBcanvasMargin\fP (int axis) const " +.br +.ti -1c +.RI "void \fBsetAlignCanvasToScales\fP (bool)" +.br +.ti -1c +.RI "bool \fBalignCanvasToScales\fP () const " +.br +.ti -1c +.RI "void \fBsetSpacing\fP (int)" +.br +.ti -1c +.RI "int \fBspacing\fP () const " +.br +.ti -1c +.RI "void \fBsetLegendPosition\fP (\fBQwtPlot::LegendPosition\fP pos, double ratio)" +.br +.ti -1c +.RI "void \fBsetLegendPosition\fP (\fBQwtPlot::LegendPosition\fP pos)" +.br +.ti -1c +.RI "\fBQwtPlot::LegendPosition\fP \fBlegendPosition\fP () const " +.br +.ti -1c +.RI "void \fBsetLegendRatio\fP (double ratio)" +.br +.ti -1c +.RI "double \fBlegendRatio\fP () const " +.br +.ti -1c +.RI "virtual QSize \fBminimumSizeHint\fP (const \fBQwtPlot\fP *) const " +.br +.ti -1c +.RI "virtual void \fBactivate\fP (const \fBQwtPlot\fP *, const QRectF &rect, \fBOptions\fP options=0x00)" +.br +.ti -1c +.RI "virtual void \fBinvalidate\fP ()" +.br +.ti -1c +.RI "const QRectF & \fBtitleRect\fP () const " +.br +.ti -1c +.RI "const QRectF & \fBlegendRect\fP () const " +.br +.ti -1c +.RI "const QRectF & \fBscaleRect\fP (int axis) const " +.br +.ti -1c +.RI "const QRectF & \fBcanvasRect\fP () const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "QRectF \fBlayoutLegend\fP (\fBOptions\fP options, const QRectF &) const " +.br +.ti -1c +.RI "QRectF \fBalignLegend\fP (const QRectF &canvasRect, const QRectF &legendRect) const " +.br +.ti -1c +.RI "void \fBexpandLineBreaks\fP (int options, const QRectF &rect, int &dimTitle, int dimAxes[QwtPlot::axisCnt]) const " +.br +.ti -1c +.RI "void \fBalignScales\fP (int options, QRectF &canvasRect, QRectF scaleRect[QwtPlot::axisCnt]) const " +.br +.in -1c +.SH "Detailed Description" +.PP +Layout engine for \fBQwtPlot\fP. + +It is used by the \fBQwtPlot\fP widget to organize its internal widgets or by QwtPlot::print() to render its content to a QPaintDevice like a QPrinter, QPixmap/QImage or QSvgRenderer. +.SH "Member Typedef Documentation" +.PP +.SS "typedef QFlags<\fBOption\fP> \fBQwtPlotLayout::Options\fP" +.PP +Layout options. +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtPlotLayout::Option\fP"Options to configure the plot layout engine +.PP +\fBSee also:\fP +.RS 4 +\fBactivate()\fP, \fBQwtPlotRenderer\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIAlignScales \fP\fP +Unused. +.TP +\fB\fIIgnoreScrollbars \fP\fP +Ignore the dimension of the scrollbars. There are no scrollbars, when the plot is not rendered to widgets. +.TP +\fB\fIIgnoreFrames \fP\fP +Ignore all frames. +.TP +\fB\fIIgnoreLegend \fP\fP +Ignore the legend. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPlotLayout::QwtPlotLayout ()\fC [explicit]\fP" +.PP +Constructor. +.SS "QwtPlotLayout::~QwtPlotLayout ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "void QwtPlotLayout::activate (const \fBQwtPlot\fP *plot, const QRectF &plotRect, \fBOptions\fPoptions = \fC0x00\fP)\fC [virtual]\fP" +.PP +Recalculate the geometry of all components. \fBParameters:\fP +.RS 4 +\fIplot\fP Plot to be layout +.br +\fIplotRect\fP Rect where to place the components +.br +\fIoptions\fP Layout options +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBinvalidate()\fP, \fBtitleRect()\fP, \fBlegendRect()\fP, \fBscaleRect()\fP, \fBcanvasRect()\fP +.RE +.PP + +.SS "bool QwtPlotLayout::alignCanvasToScales () const"Return the align-canvas-to-axis-scales setting. The canvas may: +.IP "\(bu" 2 +extend beyond the axis scale ends to maximize its size +.IP "\(bu" 2 +align with the axis scale ends to control its size. +.PP +.PP +\fBReturns:\fP +.RS 4 +align-canvas-to-axis-scales setting +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetAlignCanvasToScales\fP, \fBsetCanvasMargin()\fP +.RE +.PP +\fBNote:\fP +.RS 4 +In this context the term 'scale' means the backbone of a scale. +.RE +.PP + +.SS "QRectF QwtPlotLayout::alignLegend (const QRectF &canvasRect, const QRectF &legendRect) const\fC [protected]\fP"Align the legend to the canvas +.PP +\fBParameters:\fP +.RS 4 +\fIcanvasRect\fP Geometry of the canvas +.br +\fIlegendRect\fP Maximum geometry for the legend +.RE +.PP +\fBReturns:\fP +.RS 4 +Geometry for the aligned legend +.RE +.PP + +.SS "void QwtPlotLayout::alignScales (intoptions, QRectF &canvasRect, QRectFscaleRect[QwtPlot::axisCnt]) const\fC [protected]\fP"Align the ticks of the axis to the canvas borders using the empty corners. +.PP +\fBSee also:\fP +.RS 4 +\fBOptions\fP +.RE +.PP + +.SS "int QwtPlotLayout::canvasMargin (intaxis) const"\fBReturns:\fP +.RS 4 +Margin around the scale tick borders +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetCanvasMargin()\fP +.RE +.PP + +.SS "const QRectF & QwtPlotLayout::canvasRect () const"\fBReturns:\fP +.RS 4 +Geometry for the canvas +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBactivate()\fP, \fBinvalidate()\fP +.RE +.PP + +.SS "void QwtPlotLayout::expandLineBreaks (intoptions, const QRectF &rect, int &dimTitle, intdimAxis[QwtPlot::axisCnt]) const\fC [protected]\fP"Expand all line breaks in text labels, and calculate the height of their widgets in orientation of the text. +.PP +\fBParameters:\fP +.RS 4 +\fIoptions\fP Options how to layout the legend +.br +\fIrect\fP Bounding rect for title, axes and canvas. +.br +\fIdimTitle\fP Expanded height of the title widget +.br +\fIdimAxis\fP Expanded heights of the axis in axis orientation. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBOptions\fP +.RE +.PP + +.SS "void QwtPlotLayout::invalidate ()\fC [virtual]\fP"Invalidate the geometry of all components. +.PP +\fBSee also:\fP +.RS 4 +\fBactivate()\fP +.RE +.PP + +.SS "QRectF QwtPlotLayout::layoutLegend (\fBOptions\fPoptions, const QRectF &rect) const\fC [protected]\fP"Find the geometry for the legend +.PP +\fBParameters:\fP +.RS 4 +\fIoptions\fP Options how to layout the legend +.br +\fIrect\fP Rectangle where to place the legend +.RE +.PP +\fBReturns:\fP +.RS 4 +Geometry for the legend +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBOptions\fP +.RE +.PP + +.SS "\fBQwtPlot::LegendPosition\fP QwtPlotLayout::legendPosition () const"\fBReturns:\fP +.RS 4 +Position of the legend +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetLegendPosition()\fP, QwtPlot::setLegendPosition(), QwtPlot::legendPosition() +.RE +.PP + +.SS "double QwtPlotLayout::legendRatio () const"\fBReturns:\fP +.RS 4 +The relative size of the legend in the plot. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetLegendPosition()\fP +.RE +.PP + +.SS "const QRectF & QwtPlotLayout::legendRect () const"\fBReturns:\fP +.RS 4 +Geometry for the legend +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBactivate()\fP, \fBinvalidate()\fP +.RE +.PP + +.SS "QSize QwtPlotLayout::minimumSizeHint (const \fBQwtPlot\fP *plot) const\fC [virtual]\fP" +.PP +Return a minimum size hint. \fBSee also:\fP +.RS 4 +\fBQwtPlot::minimumSizeHint()\fP +.RE +.PP + +.SS "const QRectF & QwtPlotLayout::scaleRect (intaxis) const"\fBParameters:\fP +.RS 4 +\fIaxis\fP Axis index +.RE +.PP +\fBReturns:\fP +.RS 4 +Geometry for the scale +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBactivate()\fP, \fBinvalidate()\fP +.RE +.PP + +.SS "void QwtPlotLayout::setAlignCanvasToScales (boolalignCanvasToScales)"Change the align-canvas-to-axis-scales setting. The canvas may: +.IP "\(bu" 2 +extend beyond the axis scale ends to maximize its size, +.IP "\(bu" 2 +align with the axis scale ends to control its size. +.PP +.PP +\fBParameters:\fP +.RS 4 +\fIalignCanvasToScales\fP New align-canvas-to-axis-scales setting +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetCanvasMargin()\fP +.RE +.PP +\fBNote:\fP +.RS 4 +In this context the term 'scale' means the backbone of a scale. +.RE +.PP +\fBWarning:\fP +.RS 4 +In case of alignCanvasToScales == true canvasMargin will have no effect +.RE +.PP + +.SS "void QwtPlotLayout::setCanvasMargin (intmargin, intaxis = \fC-1\fP)"Change a margin of the canvas. The margin is the space above/below the scale ticks. A negative margin will be set to -1, excluding the borders of the scales. +.PP +\fBParameters:\fP +.RS 4 +\fImargin\fP New margin +.br +\fIaxis\fP One of \fBQwtPlot::Axis\fP. Specifies where the position of the margin. -1 means margin at all borders. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBcanvasMargin()\fP +.RE +.PP +\fBWarning:\fP +.RS 4 +The margin will have no effect when alignCanvasToScales is true +.RE +.PP + +.SS "void QwtPlotLayout::setLegendPosition (\fBQwtPlot::LegendPosition\fPpos)" +.PP +Specify the position of the legend. \fBParameters:\fP +.RS 4 +\fIpos\fP The legend's position. Valid values are \fC\fBQwtPlot::LeftLegend\fP\fP, \fC\fBQwtPlot::RightLegend\fP\fP, \fC\fBQwtPlot::TopLegend\fP\fP, \fC\fBQwtPlot::BottomLegend\fP\fP. +.RE +.PP +\fBSee also:\fP +.RS 4 +QwtPlot::setLegendPosition() +.RE +.PP + +.SS "void QwtPlotLayout::setLegendPosition (\fBQwtPlot::LegendPosition\fPpos, doubleratio)" +.PP +Specify the position of the legend. \fBParameters:\fP +.RS 4 +\fIpos\fP The legend's position. +.br +\fIratio\fP Ratio between legend and the bounding rect of title, canvas and axes. The legend will be shrinked if it would need more space than the given ratio. The ratio is limited to ]0.0 .. 1.0]. In case of <= 0.0 it will be reset to the default ratio. The default vertical/horizontal ratio is 0.33/0.5. +.RE +.PP +\fBSee also:\fP +.RS 4 +QwtPlot::setLegendPosition() +.RE +.PP + +.SS "void QwtPlotLayout::setLegendRatio (doubleratio)"Specify the relative size of the legend in the plot +.PP +\fBParameters:\fP +.RS 4 +\fIratio\fP Ratio between legend and the bounding rect of title, canvas and axes. The legend will be shrinked if it would need more space than the given ratio. The ratio is limited to ]0.0 .. 1.0]. In case of <= 0.0 it will be reset to the default ratio. The default vertical/horizontal ratio is 0.33/0.5. +.RE +.PP + +.SS "void QwtPlotLayout::setSpacing (intspacing)"Change the spacing of the plot. The spacing is the distance between the plot components. +.PP +\fBParameters:\fP +.RS 4 +\fIspacing\fP new spacing +.RE +.PP +\fBSee also:\fP +.RS 4 +setMargin(), \fBspacing()\fP +.RE +.PP + +.SS "int QwtPlotLayout::spacing () const"\fBReturns:\fP +.RS 4 +spacing +.RE +.PP +\fBSee also:\fP +.RS 4 +margin(), \fBsetSpacing()\fP +.RE +.PP + +.SS "const QRectF & QwtPlotLayout::titleRect () const"\fBReturns:\fP +.RS 4 +Geometry for the title +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBactivate()\fP, \fBinvalidate()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotMagnifier.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotMagnifier.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotMagnifier.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotMagnifier.3 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,140 @@ +.TH "QwtPlotMagnifier" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPlotMagnifier \- +.PP +\fBQwtPlotMagnifier\fP provides zooming, by magnifying in steps. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtMagnifier\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPlotMagnifier\fP (\fBQwtPlotCanvas\fP *)" +.br +.ti -1c +.RI "virtual \fB~QwtPlotMagnifier\fP ()" +.br +.ti -1c +.RI "void \fBsetAxisEnabled\fP (int axis, bool on)" +.br +.ti -1c +.RI "bool \fBisAxisEnabled\fP (int axis) const " +.br +.ti -1c +.RI "\fBQwtPlotCanvas\fP * \fBcanvas\fP ()" +.br +.ti -1c +.RI "const \fBQwtPlotCanvas\fP * \fBcanvas\fP () const " +.br +.ti -1c +.RI "\fBQwtPlot\fP * \fBplot\fP ()" +.br +.ti -1c +.RI "const \fBQwtPlot\fP * \fBplot\fP () const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual void \fBrescale\fP (double factor)" +.br +.in -1c +.SH "Detailed Description" +.PP +\fBQwtPlotMagnifier\fP provides zooming, by magnifying in steps. + +Using \fBQwtPlotMagnifier\fP a plot can be zoomed in/out in steps using keys, the mouse wheel or moving a mouse button in vertical direction. +.PP +Together with \fBQwtPlotZoomer\fP and \fBQwtPlotPanner\fP it is possible to implement individual and powerful navigation of the plot canvas. +.PP +\fBSee also:\fP +.RS 4 +\fBQwtPlotZoomer\fP, \fBQwtPlotPanner\fP, \fBQwtPlot\fP +.RE +.PP + +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPlotMagnifier::QwtPlotMagnifier (\fBQwtPlotCanvas\fP *canvas)\fC [explicit]\fP"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fIcanvas\fP Plot canvas to be magnified +.RE +.PP + +.SS "QwtPlotMagnifier::~QwtPlotMagnifier ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "\fBQwtPlotCanvas\fP * QwtPlotMagnifier::canvas ()" +.PP +Return observed plot canvas. +.SS "const \fBQwtPlotCanvas\fP * QwtPlotMagnifier::canvas () const" +.PP +Return Observed plot canvas. +.SS "bool QwtPlotMagnifier::isAxisEnabled (intaxis) const"Test if an axis is enabled +.PP +\fBParameters:\fP +.RS 4 +\fIaxis\fP Axis, see \fBQwtPlot::Axis\fP +.RE +.PP +\fBReturns:\fP +.RS 4 +True, if the axis is enabled +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetAxisEnabled()\fP +.RE +.PP + +.SS "\fBQwtPlot\fP * QwtPlotMagnifier::plot ()" +.PP +Return plot widget, containing the observed plot canvas. +.SS "const \fBQwtPlot\fP * QwtPlotMagnifier::plot () const" +.PP +Return plot widget, containing the observed plot canvas. +.SS "void QwtPlotMagnifier::rescale (doublefactor)\fC [protected, virtual]\fP"Zoom in/out the axes scales +.PP +\fBParameters:\fP +.RS 4 +\fIfactor\fP A value < 1.0 zooms in, a value > 1.0 zooms out. +.RE +.PP + +.PP +Implements \fBQwtMagnifier\fP. +.SS "void QwtPlotMagnifier::setAxisEnabled (intaxis, boolon)" +.PP +En/Disable an axis. Only Axes that are enabled will be zoomed. All other axes will remain unchanged. +.PP +\fBParameters:\fP +.RS 4 +\fIaxis\fP Axis, see \fBQwtPlot::Axis\fP +.br +\fIon\fP On/Off +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBisAxisEnabled()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotMarker.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotMarker.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotMarker.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotMarker.3 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,468 @@ +.TH "QwtPlotMarker" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPlotMarker \- +.PP +A class for drawing markers. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtPlotItem\fP. +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBLineStyle\fP { \fBNoLine\fP, \fBHLine\fP, \fBVLine\fP, \fBCross\fP }" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPlotMarker\fP ()" +.br +.ti -1c +.RI "virtual \fB~QwtPlotMarker\fP ()" +.br +.ti -1c +.RI "virtual int \fBrtti\fP () const " +.br +.ti -1c +.RI "double \fBxValue\fP () const " +.br +.ti -1c +.RI "double \fByValue\fP () const " +.br +.ti -1c +.RI "QPointF \fBvalue\fP () const " +.br +.ti -1c +.RI "void \fBsetXValue\fP (double)" +.br +.ti -1c +.RI "void \fBsetYValue\fP (double)" +.br +.ti -1c +.RI "void \fBsetValue\fP (double, double)" +.br +.ti -1c +.RI "void \fBsetValue\fP (const QPointF &)" +.br +.ti -1c +.RI "void \fBsetLineStyle\fP (\fBLineStyle\fP st)" +.br +.ti -1c +.RI "\fBLineStyle\fP \fBlineStyle\fP () const " +.br +.ti -1c +.RI "void \fBsetLinePen\fP (const QPen &p)" +.br +.ti -1c +.RI "const QPen & \fBlinePen\fP () const " +.br +.ti -1c +.RI "void \fBsetSymbol\fP (const \fBQwtSymbol\fP *)" +.br +.ti -1c +.RI "const \fBQwtSymbol\fP * \fBsymbol\fP () const " +.br +.ti -1c +.RI "void \fBsetLabel\fP (const \fBQwtText\fP &)" +.br +.ti -1c +.RI "\fBQwtText\fP \fBlabel\fP () const " +.br +.ti -1c +.RI "void \fBsetLabelAlignment\fP (Qt::Alignment)" +.br +.ti -1c +.RI "Qt::Alignment \fBlabelAlignment\fP () const " +.br +.ti -1c +.RI "void \fBsetLabelOrientation\fP (Qt::Orientation)" +.br +.ti -1c +.RI "Qt::Orientation \fBlabelOrientation\fP () const " +.br +.ti -1c +.RI "void \fBsetSpacing\fP (int)" +.br +.ti -1c +.RI "int \fBspacing\fP () const " +.br +.ti -1c +.RI "virtual void \fBdraw\fP (QPainter *p, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &) const " +.br +.ti -1c +.RI "virtual QRectF \fBboundingRect\fP () const " +.br +.ti -1c +.RI "virtual void \fBupdateLegend\fP (\fBQwtLegend\fP *) const " +.br +.ti -1c +.RI "virtual void \fBdrawLegendIdentifier\fP (QPainter *, const QRectF &) const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual void \fBdrawLines\fP (QPainter *, const QRectF &, const QPointF &) const " +.br +.ti -1c +.RI "virtual void \fBdrawLabel\fP (QPainter *, const QRectF &, const QPointF &) const " +.br +.in -1c +.SH "Detailed Description" +.PP +A class for drawing markers. + +A marker can be a horizontal line, a vertical line, a symbol, a label or any combination of them, which can be drawn around a center point inside a bounding rectangle. +.PP +The \fBQwtPlotMarker::setSymbol()\fP member assigns a symbol to the marker. The symbol is drawn at the specified point. +.PP +With \fBsetLabel()\fP, a label can be assigned to the marker. The \fBsetLabelAlignment()\fP member specifies where the label is drawn. All the Align*-constants in Qt::AlignmentFlags (see Qt documentation) are valid. The interpretation of the alignment depends on the marker's line style. The alignment refers to the center point of the marker, which means, for example, that the label would be printed left above the center point if the alignment was set to Qt::AlignLeft | Qt::AlignTop. +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtPlotMarker::LineStyle\fP"Line styles. +.PP +\fBSee also:\fP +.RS 4 +\fBsetLineStyle()\fP, \fBlineStyle()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fINoLine \fP\fP +No line. +.TP +\fB\fIHLine \fP\fP +A horizontal line. +.TP +\fB\fIVLine \fP\fP +A vertical line. +.TP +\fB\fICross \fP\fP +A crosshair. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPlotMarker::QwtPlotMarker ()\fC [explicit]\fP" +.PP +Sets alignment to Qt::AlignCenter, and style to \fBQwtPlotMarker::NoLine\fP. +.SS "QwtPlotMarker::~QwtPlotMarker ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "QRectF QwtPlotMarker::boundingRect () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +An invalid bounding rect: QRectF(1.0, 1.0, -2.0, -2.0) +.RE +.PP + +.PP +Reimplemented from \fBQwtPlotItem\fP. +.SS "void QwtPlotMarker::draw (QPainter *painter, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect) const\fC [virtual]\fP"Draw the marker +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIxMap\fP x Scale Map +.br +\fIyMap\fP y Scale Map +.br +\fIcanvasRect\fP Contents rect of the canvas in painter coordinates +.RE +.PP + +.PP +Implements \fBQwtPlotItem\fP. +.SS "void QwtPlotMarker::drawLabel (QPainter *painter, const QRectF &canvasRect, const QPointF &pos) const\fC [protected, virtual]\fP"Align and draw the text label of the marker +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIcanvasRect\fP Contents rect of the canvas in painter coordinates +.br +\fIpos\fP Position of the marker, translated into widget coordinates +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBdrawLabel()\fP, \fBQwtSymbol::drawSymbol()\fP +.RE +.PP + +.SS "void QwtPlotMarker::drawLegendIdentifier (QPainter *painter, const QRectF &rect) const\fC [virtual]\fP" +.PP +Draw the identifier representing the marker on the legend. \fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIrect\fP Bounding rectangle for the identifier +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBupdateLegend()\fP, \fBQwtPlotItem::Legend\fP +.RE +.PP + +.PP +Reimplemented from \fBQwtLegendItemManager\fP. +.SS "void QwtPlotMarker::drawLines (QPainter *painter, const QRectF &canvasRect, const QPointF &pos) const\fC [protected, virtual]\fP"Draw the lines marker +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIcanvasRect\fP Contents rect of the canvas in painter coordinates +.br +\fIpos\fP Position of the marker, translated into widget coordinates +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBdrawLabel()\fP, \fBQwtSymbol::drawSymbol()\fP +.RE +.PP + +.SS "\fBQwtText\fP QwtPlotMarker::label () const"\fBReturns:\fP +.RS 4 +the label +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetLabel()\fP +.RE +.PP + +.SS "Qt::Alignment QwtPlotMarker::labelAlignment () const"\fBReturns:\fP +.RS 4 +the label alignment +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetLabelAlignment()\fP, \fBsetLabelOrientation()\fP +.RE +.PP + +.SS "Qt::Orientation QwtPlotMarker::labelOrientation () const"\fBReturns:\fP +.RS 4 +the label orientation +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetLabelOrientation()\fP, \fBlabelAlignment()\fP +.RE +.PP + +.SS "const QPen & QwtPlotMarker::linePen () const"\fBReturns:\fP +.RS 4 +the line pen +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetLinePen()\fP +.RE +.PP + +.SS "\fBQwtPlotMarker::LineStyle\fP QwtPlotMarker::lineStyle () const"\fBReturns:\fP +.RS 4 +the line style +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetLineStyle()\fP +.RE +.PP + +.SS "int QwtPlotMarker::rtti () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +QwtPlotItem::Rtti_PlotMarker +.RE +.PP + +.PP +Reimplemented from \fBQwtPlotItem\fP. +.SS "void QwtPlotMarker::setLabel (const \fBQwtText\fP &label)" +.PP +Set the label. \fBParameters:\fP +.RS 4 +\fIlabel\fP label text +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBlabel()\fP +.RE +.PP + +.SS "void QwtPlotMarker::setLabelAlignment (Qt::Alignmentalign)" +.PP +Set the alignment of the label. In case of \fBQwtPlotMarker::HLine\fP the alignment is relative to the y position of the marker, but the horizontal flags correspond to the canvas rectangle. In case of \fBQwtPlotMarker::VLine\fP the alignment is relative to the x position of the marker, but the vertical flags correspond to the canvas rectangle. +.PP +In all other styles the alignment is relative to the marker's position. +.PP +\fBParameters:\fP +.RS 4 +\fIalign\fP Alignment. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBlabelAlignment()\fP, \fBlabelOrientation()\fP +.RE +.PP + +.SS "void QwtPlotMarker::setLabelOrientation (Qt::Orientationorientation)" +.PP +Set the orientation of the label. When orientation is Qt::Vertical the label is rotated by 90.0 degrees ( from bottom to top ). +.PP +\fBParameters:\fP +.RS 4 +\fIorientation\fP Orientation of the label +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBlabelOrientation()\fP, \fBsetLabelAlignment()\fP +.RE +.PP + +.SS "void QwtPlotMarker::setLinePen (const QPen &pen)"Specify a pen for the line. +.PP +\fBParameters:\fP +.RS 4 +\fIpen\fP New pen +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBlinePen()\fP +.RE +.PP + +.SS "void QwtPlotMarker::setLineStyle (\fBLineStyle\fPstyle)" +.PP +Set the line style. \fBParameters:\fP +.RS 4 +\fIstyle\fP Line style. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBlineStyle()\fP +.RE +.PP + +.SS "void QwtPlotMarker::setSpacing (intspacing)" +.PP +Set the spacing. When the label is not centered on the marker position, the spacing is the distance between the position and the label. +.PP +\fBParameters:\fP +.RS 4 +\fIspacing\fP Spacing +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBspacing()\fP, \fBsetLabelAlignment()\fP +.RE +.PP + +.SS "void QwtPlotMarker::setSymbol (const \fBQwtSymbol\fP *symbol)" +.PP +Assign a symbol. \fBParameters:\fP +.RS 4 +\fIsymbol\fP New symbol +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsymbol()\fP +.RE +.PP + +.SS "void QwtPlotMarker::setValue (const QPointF &pos)" +.PP +Set Value. +.SS "void QwtPlotMarker::setValue (doublex, doubley)" +.PP +Set Value. +.SS "void QwtPlotMarker::setXValue (doublex)" +.PP +Set X Value. +.SS "void QwtPlotMarker::setYValue (doubley)" +.PP +Set Y Value. +.SS "int QwtPlotMarker::spacing () const"\fBReturns:\fP +.RS 4 +the spacing +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetSpacing()\fP +.RE +.PP + +.SS "const \fBQwtSymbol\fP * QwtPlotMarker::symbol () const"\fBReturns:\fP +.RS 4 +the symbol +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetSymbol()\fP, \fBQwtSymbol\fP +.RE +.PP + +.SS "void QwtPlotMarker::updateLegend (\fBQwtLegend\fP *legend) const\fC [virtual]\fP" +.PP +Update the widget that represents the item on the legend. \fBParameters:\fP +.RS 4 +\fIlegend\fP Legend +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBdrawLegendIdentifier()\fP, \fBlegendItem()\fP, \fBitemChanged()\fP, QwtLegend() +.RE +.PP +\fBNote:\fP +.RS 4 +In the default setting \fBQwtPlotItem::Legend\fP is disabled +.RE +.PP + +.PP +Reimplemented from \fBQwtPlotItem\fP. +.SS "QPointF QwtPlotMarker::value () const" +.PP +Return Value. +.SS "double QwtPlotMarker::xValue () const" +.PP +Return x Value. +.SS "double QwtPlotMarker::yValue () const" +.PP +Return y Value. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotPanner.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotPanner.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotPanner.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotPanner.3 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,174 @@ +.TH "QwtPlotPanner" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPlotPanner \- +.PP +\fBQwtPlotPanner\fP provides panning of a plot canvas. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtPanner\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPlotPanner\fP (\fBQwtPlotCanvas\fP *)" +.br +.ti -1c +.RI "virtual \fB~QwtPlotPanner\fP ()" +.br +.ti -1c +.RI "\fBQwtPlotCanvas\fP * \fBcanvas\fP ()" +.br +.ti -1c +.RI "const \fBQwtPlotCanvas\fP * \fBcanvas\fP () const " +.br +.ti -1c +.RI "\fBQwtPlot\fP * \fBplot\fP ()" +.br +.ti -1c +.RI "const \fBQwtPlot\fP * \fBplot\fP () const " +.br +.ti -1c +.RI "void \fBsetAxisEnabled\fP (int axis, bool on)" +.br +.ti -1c +.RI "bool \fBisAxisEnabled\fP (int axis) const " +.br +.in -1c +.SS "Protected Slots" + +.in +1c +.ti -1c +.RI "virtual void \fBmoveCanvas\fP (int dx, int dy)" +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual QBitmap \fBcontentsMask\fP () const " +.br +.in -1c +.SH "Detailed Description" +.PP +\fBQwtPlotPanner\fP provides panning of a plot canvas. + +\fBQwtPlotPanner\fP is a panner for a \fBQwtPlotCanvas\fP, that adjusts the scales of the axes after dropping the canvas on its new position. +.PP +Together with \fBQwtPlotZoomer\fP and \fBQwtPlotMagnifier\fP powerful ways of navigating on a \fBQwtPlot\fP widget can be implemented easily. +.PP +\fBNote:\fP +.RS 4 +The axes are not updated, while dragging the canvas +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtPlotZoomer\fP, \fBQwtPlotMagnifier\fP +.RE +.PP + +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPlotPanner::QwtPlotPanner (\fBQwtPlotCanvas\fP *canvas)\fC [explicit]\fP" +.PP +Create a plot panner. The panner is enabled for all axes +.PP +\fBParameters:\fP +.RS 4 +\fIcanvas\fP Plot canvas to pan, also the parent object +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetAxisEnabled()\fP +.RE +.PP + +.SS "QwtPlotPanner::~QwtPlotPanner ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "\fBQwtPlotCanvas\fP * QwtPlotPanner::canvas ()" +.PP +Return observed plot canvas. +.SS "const \fBQwtPlotCanvas\fP * QwtPlotPanner::canvas () const" +.PP +Return Observed plot canvas. +.SS "QBitmap QwtPlotPanner::contentsMask () const\fC [protected, virtual]\fP"Calculate a mask from the border mask of the canvas +.PP +\fBSee also:\fP +.RS 4 +\fBQwtPlotCanvas::borderMask()\fP +.RE +.PP + +.PP +Reimplemented from \fBQwtPanner\fP. +.SS "bool QwtPlotPanner::isAxisEnabled (intaxis) const"Test if an axis is enabled +.PP +\fBParameters:\fP +.RS 4 +\fIaxis\fP Axis, see \fBQwtPlot::Axis\fP +.RE +.PP +\fBReturns:\fP +.RS 4 +True, if the axis is enabled +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetAxisEnabled()\fP, \fBmoveCanvas()\fP +.RE +.PP + +.SS "void QwtPlotPanner::moveCanvas (intdx, intdy)\fC [protected, virtual, slot]\fP"Adjust the enabled axes according to dx/dy +.PP +\fBParameters:\fP +.RS 4 +\fIdx\fP Pixel offset in x direction +.br +\fIdy\fP Pixel offset in y direction +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtPanner::panned()\fP +.RE +.PP + +.SS "const \fBQwtPlot\fP * QwtPlotPanner::plot () const" +.PP +Return plot widget, containing the observed plot canvas. +.SS "\fBQwtPlot\fP * QwtPlotPanner::plot ()" +.PP +Return plot widget, containing the observed plot canvas. +.SS "void QwtPlotPanner::setAxisEnabled (intaxis, boolon)" +.PP +En/Disable an axis. Axes that are enabled will be synchronized to the result of panning. All other axes will remain unchanged. +.PP +\fBParameters:\fP +.RS 4 +\fIaxis\fP Axis, see \fBQwtPlot::Axis\fP +.br +\fIon\fP On/Off +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBisAxisEnabled()\fP, \fBmoveCanvas()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotPicker.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotPicker.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotPicker.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotPicker.3 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,407 @@ +.TH "QwtPlotPicker" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPlotPicker \- +.PP +\fBQwtPlotPicker\fP provides selections on a plot canvas. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtPicker\fP. +.PP +Inherited by \fBQwtPlotZoomer\fP. +.SS "Signals" + +.in +1c +.ti -1c +.RI "void \fBselected\fP (const QPointF &pos)" +.br +.ti -1c +.RI "void \fBselected\fP (const QRectF &rect)" +.br +.ti -1c +.RI "void \fBselected\fP (const QVector< QPointF > &pa)" +.br +.ti -1c +.RI "void \fBappended\fP (const QPointF &pos)" +.br +.ti -1c +.RI "void \fBmoved\fP (const QPointF &pos)" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPlotPicker\fP (\fBQwtPlotCanvas\fP *)" +.br +.ti -1c +.RI "virtual \fB~QwtPlotPicker\fP ()" +.br +.ti -1c +.RI "\fBQwtPlotPicker\fP (int xAxis, int yAxis, \fBQwtPlotCanvas\fP *)" +.br +.ti -1c +.RI "\fBQwtPlotPicker\fP (int xAxis, int yAxis, \fBRubberBand\fP rubberBand, \fBDisplayMode\fP trackerMode, \fBQwtPlotCanvas\fP *)" +.br +.ti -1c +.RI "virtual void \fBsetAxis\fP (int xAxis, int yAxis)" +.br +.ti -1c +.RI "int \fBxAxis\fP () const " +.br +.ti -1c +.RI "int \fByAxis\fP () const " +.br +.ti -1c +.RI "\fBQwtPlot\fP * \fBplot\fP ()" +.br +.ti -1c +.RI "const \fBQwtPlot\fP * \fBplot\fP () const " +.br +.ti -1c +.RI "\fBQwtPlotCanvas\fP * \fBcanvas\fP ()" +.br +.ti -1c +.RI "const \fBQwtPlotCanvas\fP * \fBcanvas\fP () const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "QRectF \fBscaleRect\fP () const " +.br +.ti -1c +.RI "QRectF \fBinvTransform\fP (const QRect &) const " +.br +.ti -1c +.RI "QRect \fBtransform\fP (const QRectF &) const " +.br +.ti -1c +.RI "QPointF \fBinvTransform\fP (const QPoint &) const " +.br +.ti -1c +.RI "QPoint \fBtransform\fP (const QPointF &) const " +.br +.ti -1c +.RI "virtual \fBQwtText\fP \fBtrackerText\fP (const QPoint &) const " +.br +.ti -1c +.RI "virtual \fBQwtText\fP \fBtrackerTextF\fP (const QPointF &) const " +.br +.ti -1c +.RI "virtual void \fBmove\fP (const QPoint &)" +.br +.ti -1c +.RI "virtual void \fBappend\fP (const QPoint &)" +.br +.ti -1c +.RI "virtual bool \fBend\fP (bool ok=true)" +.br +.in -1c +.SH "Detailed Description" +.PP +\fBQwtPlotPicker\fP provides selections on a plot canvas. + +\fBQwtPlotPicker\fP is a \fBQwtPicker\fP tailored for selections on a plot canvas. It is set to a x-Axis and y-Axis and translates all pixel coordinates into this coodinate system. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPlotPicker::QwtPlotPicker (\fBQwtPlotCanvas\fP *canvas)\fC [explicit]\fP" +.PP +Create a plot picker. The picker is set to those x- and y-axis of the plot that are enabled. If both or no x-axis are enabled, the picker is set to \fBQwtPlot::xBottom\fP. If both or no y-axis are enabled, it is set to \fBQwtPlot::yLeft\fP. +.PP +\fBParameters:\fP +.RS 4 +\fIcanvas\fP Plot canvas to observe, also the parent object +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtPlot::autoReplot()\fP, \fBQwtPlot::replot()\fP, \fBscaleRect()\fP +.RE +.PP + +.SS "QwtPlotPicker::~QwtPlotPicker ()\fC [virtual]\fP" +.PP +Destructor. +.SS "QwtPlotPicker::QwtPlotPicker (intxAxis, intyAxis, \fBQwtPlotCanvas\fP *canvas)\fC [explicit]\fP"Create a plot picker +.PP +\fBParameters:\fP +.RS 4 +\fIxAxis\fP Set the x axis of the picker +.br +\fIyAxis\fP Set the y axis of the picker +.br +\fIcanvas\fP Plot canvas to observe, also the parent object +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtPlot::autoReplot()\fP, \fBQwtPlot::replot()\fP, \fBscaleRect()\fP +.RE +.PP + +.SS "QwtPlotPicker::QwtPlotPicker (intxAxis, intyAxis, \fBRubberBand\fPrubberBand, \fBDisplayMode\fPtrackerMode, \fBQwtPlotCanvas\fP *canvas)\fC [explicit]\fP"Create a plot picker +.PP +\fBParameters:\fP +.RS 4 +\fIxAxis\fP X axis of the picker +.br +\fIyAxis\fP Y axis of the picker +.br +\fIrubberBand\fP Rubberband style +.br +\fItrackerMode\fP Tracker mode +.br +\fIcanvas\fP Plot canvas to observe, also the parent object +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtPicker\fP, QwtPicker::setSelectionFlags(), \fBQwtPicker::setRubberBand()\fP, \fBQwtPicker::setTrackerMode\fP +.PP +\fBQwtPlot::autoReplot()\fP, \fBQwtPlot::replot()\fP, \fBscaleRect()\fP +.RE +.PP + +.SH "Member Function Documentation" +.PP +.SS "void QwtPlotPicker::append (const QPoint &pos)\fC [protected, virtual]\fP"Append a point to the selection and update rubberband and tracker. +.PP +\fBParameters:\fP +.RS 4 +\fIpos\fP Additional point +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBisActive\fP, \fBbegin()\fP, \fBend()\fP, \fBmove()\fP, \fBappended()\fP +.RE +.PP +\fBNote:\fP +.RS 4 +The \fBappended(const QPoint &)\fP, appended(const QDoublePoint &) signals are emitted. +.RE +.PP + +.PP +Reimplemented from \fBQwtPicker\fP. +.SS "void QwtPlotPicker::appended (const QPointF &pos)\fC [signal]\fP"A signal emitted when a point has been appended to the selection +.PP +\fBParameters:\fP +.RS 4 +\fIpos\fP Position of the appended point. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBappend()\fP. \fBmoved()\fP +.RE +.PP + +.SS "\fBQwtPlotCanvas\fP * QwtPlotPicker::canvas ()" +.PP +Return observed plot canvas. +.SS "const \fBQwtPlotCanvas\fP * QwtPlotPicker::canvas () const" +.PP +Return Observed plot canvas. +.SS "bool QwtPlotPicker::end (boolok = \fCtrue\fP)\fC [protected, virtual]\fP"Close a selection setting the state to inactive. +.PP +\fBParameters:\fP +.RS 4 +\fIok\fP If true, complete the selection and emit selected signals otherwise discard the selection. +.RE +.PP +\fBReturns:\fP +.RS 4 +true if the selection is accepted, false otherwise +.RE +.PP + +.PP +Reimplemented from \fBQwtPicker\fP. +.PP +Reimplemented in \fBQwtPlotZoomer\fP. +.SS "QPointF QwtPlotPicker::invTransform (const QPoint &pos) const\fC [protected]\fP"Translate a point from pixel into plot coordinates +.PP +\fBReturns:\fP +.RS 4 +Point in plot coordinates +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBtransform()\fP +.RE +.PP + +.SS "QRectF QwtPlotPicker::invTransform (const QRect &rect) const\fC [protected]\fP"Translate a rectangle from pixel into plot coordinates +.PP +\fBReturns:\fP +.RS 4 +Rectangle in plot coordinates +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBtransform()\fP +.RE +.PP + +.SS "void QwtPlotPicker::move (const QPoint &pos)\fC [protected, virtual]\fP"Move the last point of the selection +.PP +\fBParameters:\fP +.RS 4 +\fIpos\fP New position +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBisActive\fP, \fBbegin()\fP, \fBend()\fP, \fBappend()\fP +.RE +.PP +\fBNote:\fP +.RS 4 +The \fBmoved(const QPoint &)\fP, moved(const QDoublePoint &) signals are emitted. +.RE +.PP + +.PP +Reimplemented from \fBQwtPicker\fP. +.SS "void QwtPlotPicker::moved (const QPointF &pos)\fC [signal]\fP"A signal emitted whenever the last appended point of the selection has been moved. +.PP +\fBParameters:\fP +.RS 4 +\fIpos\fP Position of the moved last point of the selection. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBmove()\fP, \fBappended()\fP +.RE +.PP + +.SS "const \fBQwtPlot\fP * QwtPlotPicker::plot () const" +.PP +Return plot widget, containing the observed plot canvas. +.SS "\fBQwtPlot\fP * QwtPlotPicker::plot ()" +.PP +Return plot widget, containing the observed plot canvas. +.SS "QRectF QwtPlotPicker::scaleRect () const\fC [protected]\fP"Return normalized bounding rect of the axes +.PP +\fBSee also:\fP +.RS 4 +\fBQwtPlot::autoReplot()\fP, \fBQwtPlot::replot()\fP. +.RE +.PP + +.SS "void QwtPlotPicker::selected (const QPointF &pos)\fC [signal]\fP"A signal emitted in case of selectionFlags() & PointSelection. +.PP +\fBParameters:\fP +.RS 4 +\fIpos\fP Selected point +.RE +.PP + +.SS "void QwtPlotPicker::selected (const QRectF &rect)\fC [signal]\fP"A signal emitted in case of selectionFlags() & RectSelection. +.PP +\fBParameters:\fP +.RS 4 +\fIrect\fP Selected rectangle +.RE +.PP + +.SS "void QwtPlotPicker::selected (const QVector< QPointF > &pa)\fC [signal]\fP"A signal emitting the selected points, at the end of a selection. +.PP +\fBParameters:\fP +.RS 4 +\fIpa\fP Selected points +.RE +.PP + +.SS "void QwtPlotPicker::setAxis (intxAxis, intyAxis)\fC [virtual]\fP"Set the x and y axes of the picker +.PP +\fBParameters:\fP +.RS 4 +\fIxAxis\fP X axis +.br +\fIyAxis\fP Y axis +.RE +.PP + +.PP +Reimplemented in \fBQwtPlotZoomer\fP. +.SS "\fBQwtText\fP QwtPlotPicker::trackerText (const QPoint &pos) const\fC [protected, virtual]\fP"Translate a pixel position into a position string +.PP +\fBParameters:\fP +.RS 4 +\fIpos\fP Position in pixel coordinates +.RE +.PP +\fBReturns:\fP +.RS 4 +Position string +.RE +.PP + +.PP +Reimplemented from \fBQwtPicker\fP. +.SS "\fBQwtText\fP QwtPlotPicker::trackerTextF (const QPointF &pos) const\fC [protected, virtual]\fP" +.PP +Translate a position into a position string. In case of HLineRubberBand the label is the value of the y position, in case of VLineRubberBand the value of the x position. Otherwise the label contains x and y position separated by a ',' . +.PP +The format for the double to string conversion is '%.4f'. +.PP +\fBParameters:\fP +.RS 4 +\fIpos\fP Position +.RE +.PP +\fBReturns:\fP +.RS 4 +Position string +.RE +.PP + +.SS "QRect QwtPlotPicker::transform (const QRectF &rect) const\fC [protected]\fP"Translate a rectangle from plot into pixel coordinates +.PP +\fBReturns:\fP +.RS 4 +Rectangle in pixel coordinates +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBinvTransform()\fP +.RE +.PP + +.SS "QPoint QwtPlotPicker::transform (const QPointF &pos) const\fC [protected]\fP"Translate a point from plot into pixel coordinates +.PP +\fBReturns:\fP +.RS 4 +Point in pixel coordinates +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBinvTransform()\fP +.RE +.PP + +.SS "int QwtPlotPicker::xAxis () const" +.PP +Return x axis. +.SS "int QwtPlotPicker::yAxis () const" +.PP +Return y axis. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotRasterItem.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotRasterItem.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotRasterItem.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotRasterItem.3 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,349 @@ +.TH "QwtPlotRasterItem" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPlotRasterItem \- +.PP +A class, which displays raster data. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtPlotItem\fP. +.PP +Inherited by \fBQwtPlotSpectrogram\fP. +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBCachePolicy\fP { \fBNoCache\fP, \fBPaintCache\fP }" +.br +.ti -1c +.RI "enum \fBPaintAttribute\fP { \fBPaintInDeviceResolution\fP = 1 }" +.br +.ti -1c +.RI "typedef QFlags< \fBPaintAttribute\fP > \fBPaintAttributes\fP" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPlotRasterItem\fP (const QString &title=QString::null)" +.br +.ti -1c +.RI "\fBQwtPlotRasterItem\fP (const \fBQwtText\fP &title)" +.br +.ti -1c +.RI "virtual \fB~QwtPlotRasterItem\fP ()" +.br +.ti -1c +.RI "void \fBsetPaintAttribute\fP (\fBPaintAttribute\fP, bool on=true)" +.br +.ti -1c +.RI "bool \fBtestPaintAttribute\fP (\fBPaintAttribute\fP) const " +.br +.ti -1c +.RI "void \fBsetAlpha\fP (int alpha)" +.br +.ti -1c +.RI "int \fBalpha\fP () const " +.br +.ti -1c +.RI "void \fBsetCachePolicy\fP (\fBCachePolicy\fP)" +.br +.ti -1c +.RI "\fBCachePolicy\fP \fBcachePolicy\fP () const " +.br +.ti -1c +.RI "void \fBinvalidateCache\fP ()" +.br +.ti -1c +.RI "virtual void \fBdraw\fP (QPainter *p, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &rect) const " +.br +.ti -1c +.RI "virtual QRectF \fBpixelHint\fP (const QRectF &) const " +.br +.ti -1c +.RI "virtual \fBQwtInterval\fP \fBinterval\fP (Qt::Axis) const " +.br +.ti -1c +.RI "virtual QRectF \fBboundingRect\fP () const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual QImage \fBrenderImage\fP (const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &area, const QSize &imageSize) const =0" +.br +.ti -1c +.RI "virtual \fBQwtScaleMap\fP \fBimageMap\fP (Qt::Orientation, const \fBQwtScaleMap\fP &map, const QRectF &area, const QSize &imageSize, double pixelSize) const " +.br +.in -1c +.SH "Detailed Description" +.PP +A class, which displays raster data. + +Raster data is a grid of pixel values, that can be represented as a QImage. It is used for many types of information like spectrograms, cartograms, geographical maps ... +.PP +Often a plot has several types of raster data organized in layers. ( f.e a geographical map, with weather statistics ). Using \fBsetAlpha()\fP raster items can be stacked easily. +.PP +\fBQwtPlotRasterItem\fP is only implemented for images of the following formats: QImage::Format_Indexed8, QImage::Format_ARGB32. +.PP +\fBSee also:\fP +.RS 4 +\fBQwtPlotSpectrogram\fP +.RE +.PP + +.SH "Member Typedef Documentation" +.PP +.SS "typedef QFlags<\fBPaintAttribute\fP> \fBQwtPlotRasterItem::PaintAttributes\fP" +.PP +Paint attributes. +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtPlotRasterItem::CachePolicy\fP".IP "\(bu" 2 +NoCache +.br + \fBrenderImage()\fP is called, whenever the item has to be repainted +.IP "\(bu" 2 +PaintCache +.br + \fBrenderImage()\fP is called, whenever the image cache is not valid, or the scales, or the size of the canvas has changed. This type of cache is only useful for improving the performance of hide/show operations. All other situations are already handled by the plot canvas cache. +.PP +.PP +The default policy is NoCache +.SS "enum \fBQwtPlotRasterItem::PaintAttribute\fP"Attributes to modify the drawing algorithm. +.PP +\fBSee also:\fP +.RS 4 +\fBsetPaintAttribute()\fP, \fBtestPaintAttribute()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIPaintInDeviceResolution \fP\fP +When the image is rendered according to the data pixels ( \fBQwtRasterData::pixelHint()\fP ) it can be expanded to paint device resolution before it is passed to QPainter. The expansion algorithm rounds the pixel borders in the same way as the axis ticks, what is usually better than the scaling algorithm implemented in Qt. Disabling this flag might make sense, to reduce the size of a document/file. If this is possible for a document format depends on the implementation of the specific QPaintEngine. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPlotRasterItem::QwtPlotRasterItem (const QString &title = \fCQString::null\fP)\fC [explicit]\fP" +.PP +Constructor. +.SS "QwtPlotRasterItem::QwtPlotRasterItem (const \fBQwtText\fP &title)\fC [explicit]\fP" +.PP +Constructor. +.SS "QwtPlotRasterItem::~QwtPlotRasterItem ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "int QwtPlotRasterItem::alpha () const"\fBReturns:\fP +.RS 4 +Alpha value of the raster item +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetAlpha()\fP +.RE +.PP + +.SS "QRectF QwtPlotRasterItem::boundingRect () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +Bounding rect of the data +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtPlotRasterItem::interval()\fP +.RE +.PP + +.PP +Reimplemented from \fBQwtPlotItem\fP. +.SS "\fBQwtPlotRasterItem::CachePolicy\fP QwtPlotRasterItem::cachePolicy () const"\fBReturns:\fP +.RS 4 +Cache policy +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBCachePolicy\fP, \fBsetCachePolicy()\fP +.RE +.PP + +.SS "void QwtPlotRasterItem::draw (QPainter *painter, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect) const\fC [virtual]\fP" +.PP +Draw the raster data. \fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIxMap\fP X-Scale Map +.br +\fIyMap\fP Y-Scale Map +.br +\fIcanvasRect\fP Contents rect of the plot canvas +.RE +.PP + +.PP +Implements \fBQwtPlotItem\fP. +.PP +Reimplemented in \fBQwtPlotSpectrogram\fP. +.SS "\fBQwtScaleMap\fP QwtPlotRasterItem::imageMap (Qt::Orientationorientation, const \fBQwtScaleMap\fP &map, const QRectF &area, const QSize &imageSize, doublepixelSize) const\fC [protected, virtual]\fP" +.PP +Calculate a scale map for painting to an image. \fBParameters:\fP +.RS 4 +\fIorientation\fP Orientation, Qt::Horizontal means a X axis +.br +\fImap\fP Scale map for rendering the plot item +.br +\fIarea\fP Area to be painted on the image +.br +\fIimageSize\fP Image size +.br +\fIpixelSize\fP Width/Height of a data pixel +.RE +.PP + +.SS "\fBQwtInterval\fP QwtPlotRasterItem::interval (Qt::Axisaxis) const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +Bounding interval for an axis +.RE +.PP +This method is intended to be reimplemented by derived classes. The default implementation returns an invalid interval. +.PP +\fBParameters:\fP +.RS 4 +\fIaxis\fP X, Y, or Z axis +.RE +.PP + +.PP +Reimplemented in \fBQwtPlotSpectrogram\fP. +.SS "void QwtPlotRasterItem::invalidateCache ()"Invalidate the paint cache +.PP +\fBSee also:\fP +.RS 4 +\fBsetCachePolicy()\fP +.RE +.PP + +.SS "QRectF QwtPlotRasterItem::pixelHint (const QRectF &area) const\fC [virtual]\fP" +.PP +Pixel hint. The geometry of a pixel is used to calculated the resolution and alignment of the rendered image. +.PP +Width and height of the hint need to be the horizontal and vertical distances between 2 neighboured points. The center of the hint has to be the position of any point ( it doesn't matter which one ). +.PP +Limiting the resolution of the image might significantly improve the performance and heavily reduce the amount of memory when rendering a QImage from the raster data. +.PP +The default implementation returns an empty rectangle (QRectF()), meaning, that the image will be rendered in target device ( f.e screen ) resolution. +.PP +\fBParameters:\fP +.RS 4 +\fIarea\fP In most implementations the resolution of the data doesn't depend on the requested area. +.RE +.PP +\fBReturns:\fP +.RS 4 +Bounding rectangle of a pixel +.RE +.PP +\fBSee also:\fP +.RS 4 +render(), \fBrenderImage()\fP +.RE +.PP + +.PP +Reimplemented in \fBQwtPlotSpectrogram\fP. +.SS "virtual QImage QwtPlotRasterItem::renderImage (const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &area, const QSize &imageSize) const\fC [protected, pure virtual]\fP" +.PP +Render an image. An implementation of render() might iterate over all pixels of imageRect. Each pixel has to be translated into the corresponding position in scale coordinates using the maps. This position can be used to look up a value in a implementation specific way and to map it into a color. +.PP +\fBParameters:\fP +.RS 4 +\fIxMap\fP X-Scale Map +.br +\fIyMap\fP Y-Scale Map +.br +\fIarea\fP Requested area for the image in scale coordinates +.br +\fIimageSize\fP Requested size of the image +.RE +.PP + +.PP +Implemented in \fBQwtPlotSpectrogram\fP. +.SS "void QwtPlotRasterItem::setAlpha (intalpha)" +.PP +Set an alpha value for the raster data. Often a plot has several types of raster data organized in layers. ( f.e a geographical map, with weather statistics ). Using \fBsetAlpha()\fP raster items can be stacked easily. +.PP +The alpha value is a value [0, 255] to control the transparency of the image. 0 represents a fully transparent color, while 255 represents a fully opaque color. +.PP +\fBParameters:\fP +.RS 4 +\fIalpha\fP Alpha value +.RE +.PP +.IP "\(bu" 2 +alpha >= 0 +.br + All alpha values of the pixels returned by \fBrenderImage()\fP will be set to alpha, beside those with an alpha value of 0 (invalid pixels). +.IP "\(bu" 2 +alpha < 0 The alpha values returned by \fBrenderImage()\fP are not changed. +.PP +.PP +The default alpha value is -1. +.PP +\fBSee also:\fP +.RS 4 +\fBalpha()\fP +.RE +.PP + +.SS "void QwtPlotRasterItem::setCachePolicy (\fBQwtPlotRasterItem::CachePolicy\fPpolicy)"Change the cache policy +.PP +The default policy is NoCache +.PP +\fBParameters:\fP +.RS 4 +\fIpolicy\fP Cache policy +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBCachePolicy\fP, \fBcachePolicy()\fP +.RE +.PP + +.SS "void QwtPlotRasterItem::setPaintAttribute (\fBPaintAttribute\fPattribute, boolon = \fCtrue\fP)"Specify an attribute how to draw the raster item +.PP +\fBParameters:\fP +.RS 4 +\fIattribute\fP Paint attribute +.br +\fIon\fP On/Off /sa PaintAttribute, \fBtestPaintAttribute()\fP +.RE +.PP + +.SS "bool QwtPlotRasterItem::testPaintAttribute (\fBPaintAttribute\fPattribute) const" +.PP +Return the current paint attributes. \fBSee also:\fP +.RS 4 +\fBPaintAttribute\fP, \fBsetPaintAttribute()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotRenderer.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotRenderer.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotRenderer.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotRenderer.3 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,476 @@ +.TH "QwtPlotRenderer" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPlotRenderer \- +.PP +Renderer for exporting a plot to a document, a printer or anything else, that is supported by QPainter/QPaintDevice. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBDiscardFlag\fP { \fBDiscardNone\fP = 0x00, \fBDiscardBackground\fP = 0x01, \fBDiscardTitle\fP = 0x02, \fBDiscardLegend\fP = 0x04, \fBDiscardCanvasBackground\fP = 0x08 }" +.br +.ti -1c +.RI "enum \fBLayoutFlag\fP { \fBDefaultLayout\fP = 0x00, \fBKeepFrames\fP = 0x01, \fBFrameWithScales\fP = 0x02 }" +.br +.ti -1c +.RI "typedef QFlags< \fBDiscardFlag\fP > \fBDiscardFlags\fP" +.br +.ti -1c +.RI "typedef QFlags< \fBLayoutFlag\fP > \fBLayoutFlags\fP" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPlotRenderer\fP (QObject *=NULL)" +.br +.ti -1c +.RI "virtual \fB~QwtPlotRenderer\fP ()" +.br +.ti -1c +.RI "void \fBsetDiscardFlag\fP (\fBDiscardFlag\fP flag, bool on=true)" +.br +.ti -1c +.RI "bool \fBtestDiscardFlag\fP (\fBDiscardFlag\fP flag) const " +.br +.ti -1c +.RI "void \fBsetDiscardFlags\fP (\fBDiscardFlags\fP flags)" +.br +.ti -1c +.RI "\fBDiscardFlags\fP \fBdiscardFlags\fP () const " +.br +.ti -1c +.RI "void \fBsetLayoutFlag\fP (\fBLayoutFlag\fP flag, bool on=true)" +.br +.ti -1c +.RI "bool \fBtestLayoutFlag\fP (\fBLayoutFlag\fP flag) const " +.br +.ti -1c +.RI "void \fBsetLayoutFlags\fP (\fBLayoutFlags\fP flags)" +.br +.ti -1c +.RI "\fBLayoutFlags\fP \fBlayoutFlags\fP () const " +.br +.ti -1c +.RI "void \fBrenderDocument\fP (\fBQwtPlot\fP *, const QString &format, const QSizeF &sizeMM, int resolution=85)" +.br +.ti -1c +.RI "void \fBrenderDocument\fP (\fBQwtPlot\fP *, const QString &title, const QString &format, const QSizeF &sizeMM, int resolution=85)" +.br +.ti -1c +.RI "void \fBrenderTo\fP (\fBQwtPlot\fP *, QPrinter &) const " +.br +.ti -1c +.RI "void \fBrenderTo\fP (\fBQwtPlot\fP *, QPaintDevice &p) const " +.br +.ti -1c +.RI "virtual void \fBrender\fP (\fBQwtPlot\fP *, QPainter *, const QRectF &rect) const " +.br +.ti -1c +.RI "virtual void \fBrenderLegendItem\fP (const \fBQwtPlot\fP *, QPainter *, const QWidget *, const QRectF &) const " +.br +.ti -1c +.RI "virtual void \fBrenderTitle\fP (const \fBQwtPlot\fP *, QPainter *, const QRectF &) const " +.br +.ti -1c +.RI "virtual void \fBrenderScale\fP (const \fBQwtPlot\fP *, QPainter *, int axisId, int startDist, int endDist, int baseDist, const QRectF &) const " +.br +.ti -1c +.RI "virtual void \fBrenderCanvas\fP (const \fBQwtPlot\fP *, QPainter *, const QRectF &canvasRect, const \fBQwtScaleMap\fP *maps) const " +.br +.ti -1c +.RI "virtual void \fBrenderLegend\fP (const \fBQwtPlot\fP *, QPainter *, const QRectF &) const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "void \fBbuildCanvasMaps\fP (const \fBQwtPlot\fP *, const QRectF &, \fBQwtScaleMap\fP maps[]) const " +.br +.in -1c +.SH "Detailed Description" +.PP +Renderer for exporting a plot to a document, a printer or anything else, that is supported by QPainter/QPaintDevice. +.SH "Member Typedef Documentation" +.PP +.SS "typedef QFlags<\fBDiscardFlag\fP> \fBQwtPlotRenderer::DiscardFlags\fP" +.PP +Disard flags. +.SS "typedef QFlags<\fBLayoutFlag\fP> \fBQwtPlotRenderer::LayoutFlags\fP" +.PP +Layout flags. +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtPlotRenderer::DiscardFlag\fP" +.PP +Disard flags. +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIDiscardNone \fP\fP +Render all components of the plot. +.TP +\fB\fIDiscardBackground \fP\fP +Don't render the background of the plot. +.TP +\fB\fIDiscardTitle \fP\fP +Don't render the title of the plot. +.TP +\fB\fIDiscardLegend \fP\fP +Don't render the legend of the plot. +.TP +\fB\fIDiscardCanvasBackground \fP\fP +Don't render the background of the canvas. +.SS "enum \fBQwtPlotRenderer::LayoutFlag\fP" +.PP +Layout flags. \fBSee also:\fP +.RS 4 +\fBsetLayoutFlag()\fP, \fBtestLayoutFlag()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIDefaultLayout \fP\fP +Use the default layout without margins and frames. +.TP +\fB\fIKeepFrames \fP\fP +Render all frames of the plot. +.TP +\fB\fIFrameWithScales \fP\fP +Instead of the scales a box is painted around the plot canvas, where the scale ticks are aligned to. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPlotRenderer::QwtPlotRenderer (QObject *parent = \fCNULL\fP)\fC [explicit]\fP"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fIparent\fP Parent object +.RE +.PP + +.SS "QwtPlotRenderer::~QwtPlotRenderer ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "void QwtPlotRenderer::buildCanvasMaps (const \fBQwtPlot\fP *plot, const QRectF &canvasRect, \fBQwtScaleMap\fPmaps[]) const\fC [protected]\fP"Calculated the scale maps for rendering the canvas +.PP +\fBParameters:\fP +.RS 4 +\fIplot\fP Plot widget +.br +\fIcanvasRect\fP Target rectangle +.br +\fImaps\fP Scale maps to be calculated +.RE +.PP + +.SS "\fBQwtPlotRenderer::DiscardFlags\fP QwtPlotRenderer::discardFlags () const"\fBReturns:\fP +.RS 4 +Flags, indicating what to discard from rendering +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBDiscardFlag\fP, \fBsetDiscardFlags()\fP, \fBsetDiscardFlag()\fP, \fBtestDiscardFlag()\fP +.RE +.PP + +.SS "\fBQwtPlotRenderer::LayoutFlags\fP QwtPlotRenderer::layoutFlags () const"\fBReturns:\fP +.RS 4 +Layout flags +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBLayoutFlag\fP, \fBsetLayoutFlags()\fP, \fBsetLayoutFlag()\fP, \fBtestLayoutFlag()\fP +.RE +.PP + +.SS "void QwtPlotRenderer::render (\fBQwtPlot\fP *plot, QPainter *painter, const QRectF &plotRect) const\fC [virtual]\fP"Paint the contents of a \fBQwtPlot\fP instance into a given rectangle. +.PP +\fBParameters:\fP +.RS 4 +\fIplot\fP Plot to be rendered +.br +\fIpainter\fP Painter +.br +\fIplotRect\fP Bounding rectangle +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBrenderDocument()\fP, \fBrenderTo()\fP, \fBQwtPainter::setRoundingAlignment()\fP +.RE +.PP + +.SS "void QwtPlotRenderer::renderCanvas (const \fBQwtPlot\fP *plot, QPainter *painter, const QRectF &canvasRect, const \fBQwtScaleMap\fP *map) const\fC [virtual]\fP"Render the canvas into a given rectangle. +.PP +\fBParameters:\fP +.RS 4 +\fIplot\fP Plot widget +.br +\fIpainter\fP Painter +.br +\fImap\fP Maps mapping between plot and paint device coordinates +.br +\fIcanvasRect\fP Canvas rectangle +.RE +.PP + +.SS "void QwtPlotRenderer::renderDocument (\fBQwtPlot\fP *plot, const QString &fileName, const QSizeF &sizeMM, intresolution = \fC85\fP)"Render a plot to a file +.PP +The format of the document will be autodetected from the suffix of the filename. +.PP +\fBParameters:\fP +.RS 4 +\fIplot\fP Plot widget +.br +\fIfileName\fP Path of the file, where the document will be stored +.br +\fIsizeMM\fP Size for the document in millimeters. +.br +\fIresolution\fP Resolution in dots per Inch (dpi) +.RE +.PP + +.SS "void QwtPlotRenderer::renderDocument (\fBQwtPlot\fP *plot, const QString &fileName, const QString &format, const QSizeF &sizeMM, intresolution = \fC85\fP)"Render a plot to a file +.PP +Supported formats are: +.PP +.IP "\(bu" 2 +pdf +.br + Portable Document Format PDF +.IP "\(bu" 2 +ps +.br + Postcript +.IP "\(bu" 2 +svg +.br + Scalable Vector Graphics SVG +.IP "\(bu" 2 +all image formats supported by Qt +.br + see QImageWriter::supportedImageFormats() +.PP +.PP +Scalable vector graphic formats like PDF or SVG are superior to raster graphics formats. +.PP +\fBParameters:\fP +.RS 4 +\fIplot\fP Plot widget +.br +\fIfileName\fP Path of the file, where the document will be stored +.br +\fIformat\fP Format for the document +.br +\fIsizeMM\fP Size for the document in millimeters. +.br +\fIresolution\fP Resolution in dots per Inch (dpi) +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBrenderTo()\fP, \fBrender()\fP, \fBQwtPainter::setRoundingAlignment()\fP +.RE +.PP + +.SS "void QwtPlotRenderer::renderLegend (const \fBQwtPlot\fP *plot, QPainter *painter, const QRectF &rect) const\fC [virtual]\fP"Render the legend into a given rectangle. +.PP +\fBParameters:\fP +.RS 4 +\fIplot\fP Plot widget +.br +\fIpainter\fP Painter +.br +\fIrect\fP Bounding rectangle +.RE +.PP + +.SS "void QwtPlotRenderer::renderLegendItem (const \fBQwtPlot\fP *plot, QPainter *painter, const QWidget *widget, const QRectF &rect) const\fC [virtual]\fP"Render the legend item into a given rectangle. +.PP +\fBParameters:\fP +.RS 4 +\fIplot\fP Plot widget +.br +\fIpainter\fP Painter +.br +\fIwidget\fP Widget representing a legend item +.br +\fIrect\fP Bounding rectangle +.RE +.PP +\fBNote:\fP +.RS 4 +When widget is not derived from \fBQwtLegendItem\fP renderLegendItem does nothing and needs to be overloaded +.RE +.PP + +.SS "void QwtPlotRenderer::renderScale (const \fBQwtPlot\fP *plot, QPainter *painter, intaxisId, intstartDist, intendDist, intbaseDist, const QRectF &rect) const\fC [virtual]\fP" +.PP +Paint a scale into a given rectangle. Paint the scale into a given rectangle. \fBParameters:\fP +.RS 4 +\fIplot\fP Plot widget +.br +\fIpainter\fP Painter +.br +\fIaxisId\fP Axis +.br +\fIstartDist\fP Start border distance +.br +\fIendDist\fP End border distance +.br +\fIbaseDist\fP Base distance +.br +\fIrect\fP Bounding rectangle +.RE +.PP + +.SS "void QwtPlotRenderer::renderTitle (const \fBQwtPlot\fP *plot, QPainter *painter, const QRectF &rect) const\fC [virtual]\fP"Render the title into a given rectangle. +.PP +\fBParameters:\fP +.RS 4 +\fIplot\fP Plot widget +.br +\fIpainter\fP Painter +.br +\fIrect\fP Bounding rectangle +.RE +.PP + +.SS "void QwtPlotRenderer::renderTo (\fBQwtPlot\fP *plot, QPrinter &printer) const" +.PP +Render the plot to a QPrinter. This function renders the contents of a \fBQwtPlot\fP instance to \fCQPaintDevice\fP object. The size is derived from the printer metrics. +.PP +\fBParameters:\fP +.RS 4 +\fIplot\fP Plot to be rendered +.br +\fIprinter\fP Printer to paint on +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBrenderDocument()\fP, \fBrender()\fP, \fBQwtPainter::setRoundingAlignment()\fP +.RE +.PP + +.SS "void QwtPlotRenderer::renderTo (\fBQwtPlot\fP *plot, QPaintDevice &paintDevice) const" +.PP +Render the plot to a \fCQPaintDevice\fP. This function renders the contents of a \fBQwtPlot\fP instance to \fCQPaintDevice\fP object. The target rectangle is derived from its device metrics. +.PP +\fBParameters:\fP +.RS 4 +\fIplot\fP Plot to be rendered +.br +\fIpaintDevice\fP device to paint on, f.e a QImage +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBrenderDocument()\fP, \fBrender()\fP, \fBQwtPainter::setRoundingAlignment()\fP +.RE +.PP + +.SS "void QwtPlotRenderer::setDiscardFlag (\fBDiscardFlag\fPflag, boolon = \fCtrue\fP)"Change a flag, indicating what to discard from rendering +.PP +\fBParameters:\fP +.RS 4 +\fIflag\fP Flag to change +.br +\fIon\fP On/Off +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBDiscardFlag\fP, \fBtestDiscardFlag()\fP, \fBsetDiscardFlags()\fP, \fBdiscardFlags()\fP +.RE +.PP + +.SS "void QwtPlotRenderer::setDiscardFlags (\fBDiscardFlags\fPflags)"Set the flags, indicating what to discard from rendering +.PP +\fBParameters:\fP +.RS 4 +\fIflags\fP Flags +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBDiscardFlag\fP, \fBsetDiscardFlag()\fP, \fBtestDiscardFlag()\fP, \fBdiscardFlags()\fP +.RE +.PP + +.SS "void QwtPlotRenderer::setLayoutFlag (\fBLayoutFlag\fPflag, boolon = \fCtrue\fP)"Change a layout flag +.PP +\fBParameters:\fP +.RS 4 +\fIflag\fP Flag to change +.br +\fIon\fP On/Off +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBLayoutFlag\fP, \fBtestLayoutFlag()\fP, \fBsetLayoutFlags()\fP, \fBlayoutFlags()\fP +.RE +.PP + +.SS "void QwtPlotRenderer::setLayoutFlags (\fBLayoutFlags\fPflags)"Set the layout flags +.PP +\fBParameters:\fP +.RS 4 +\fIflags\fP Flags +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBLayoutFlag\fP, \fBsetLayoutFlag()\fP, \fBtestLayoutFlag()\fP, \fBlayoutFlags()\fP +.RE +.PP + +.SS "bool QwtPlotRenderer::testDiscardFlag (\fBDiscardFlag\fPflag) const"Check if a flag is set. +.PP +\fBParameters:\fP +.RS 4 +\fIflag\fP Flag to be tested +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBDiscardFlag\fP, \fBsetDiscardFlag()\fP, \fBsetDiscardFlags()\fP, \fBdiscardFlags()\fP +.RE +.PP + +.SS "bool QwtPlotRenderer::testLayoutFlag (\fBLayoutFlag\fPflag) const"Check if a flag is set. +.PP +\fBParameters:\fP +.RS 4 +\fIflag\fP Flag to be tested +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBLayoutFlag\fP, \fBsetLayoutFlag()\fP, \fBsetLayoutFlags()\fP, \fBlayoutFlags()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotRescaler.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotRescaler.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotRescaler.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotRescaler.3 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,503 @@ +.TH "QwtPlotRescaler" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPlotRescaler \- +.PP +\fBQwtPlotRescaler\fP takes care of fixed aspect ratios for plot scales. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBRescalePolicy\fP { \fBFixed\fP, \fBExpanding\fP, \fBFitting\fP }" +.br +.ti -1c +.RI "enum \fBExpandingDirection\fP { \fBExpandUp\fP, \fBExpandDown\fP, \fBExpandBoth\fP }" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPlotRescaler\fP (\fBQwtPlotCanvas\fP *, int referenceAxis=QwtPlot::xBottom, \fBRescalePolicy\fP=Expanding)" +.br +.ti -1c +.RI "virtual \fB~QwtPlotRescaler\fP ()" +.br +.ti -1c +.RI "void \fBsetEnabled\fP (bool)" +.br +.ti -1c +.RI "bool \fBisEnabled\fP () const " +.br +.ti -1c +.RI "void \fBsetRescalePolicy\fP (\fBRescalePolicy\fP)" +.br +.ti -1c +.RI "\fBRescalePolicy\fP \fBrescalePolicy\fP () const " +.br +.ti -1c +.RI "void \fBsetExpandingDirection\fP (\fBExpandingDirection\fP)" +.br +.ti -1c +.RI "void \fBsetExpandingDirection\fP (int axis, \fBExpandingDirection\fP)" +.br +.ti -1c +.RI "\fBExpandingDirection\fP \fBexpandingDirection\fP (int axis) const " +.br +.ti -1c +.RI "void \fBsetReferenceAxis\fP (int axis)" +.br +.ti -1c +.RI "int \fBreferenceAxis\fP () const " +.br +.ti -1c +.RI "void \fBsetAspectRatio\fP (double ratio)" +.br +.ti -1c +.RI "void \fBsetAspectRatio\fP (int axis, double ratio)" +.br +.ti -1c +.RI "double \fBaspectRatio\fP (int axis) const " +.br +.ti -1c +.RI "void \fBsetIntervalHint\fP (int axis, const \fBQwtInterval\fP &)" +.br +.ti -1c +.RI "\fBQwtInterval\fP \fBintervalHint\fP (int axis) const " +.br +.ti -1c +.RI "\fBQwtPlotCanvas\fP * \fBcanvas\fP ()" +.br +.ti -1c +.RI "const \fBQwtPlotCanvas\fP * \fBcanvas\fP () const " +.br +.ti -1c +.RI "\fBQwtPlot\fP * \fBplot\fP ()" +.br +.ti -1c +.RI "const \fBQwtPlot\fP * \fBplot\fP () const " +.br +.ti -1c +.RI "virtual bool \fBeventFilter\fP (QObject *, QEvent *)" +.br +.ti -1c +.RI "void \fBrescale\fP () const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual void \fBcanvasResizeEvent\fP (QResizeEvent *)" +.br +.ti -1c +.RI "virtual void \fBrescale\fP (const QSize &oldSize, const QSize &newSize) const " +.br +.ti -1c +.RI "virtual \fBQwtInterval\fP \fBexpandScale\fP (int axis, const QSize &oldSize, const QSize &newSize) const " +.br +.ti -1c +.RI "virtual \fBQwtInterval\fP \fBsyncScale\fP (int axis, const \fBQwtInterval\fP &reference, const QSize &size) const " +.br +.ti -1c +.RI "virtual void \fBupdateScales\fP (\fBQwtInterval\fP intervals[QwtPlot::axisCnt]) const " +.br +.ti -1c +.RI "Qt::Orientation \fBorientation\fP (int axis) const " +.br +.ti -1c +.RI "\fBQwtInterval\fP \fBinterval\fP (int axis) const " +.br +.ti -1c +.RI "\fBQwtInterval\fP \fBexpandInterval\fP (const \fBQwtInterval\fP &, double width, \fBExpandingDirection\fP) const " +.br +.in -1c +.SH "Detailed Description" +.PP +\fBQwtPlotRescaler\fP takes care of fixed aspect ratios for plot scales. + +\fBQwtPlotRescaler\fP autoadjusts the axes of a \fBQwtPlot\fP according to fixed aspect ratios. +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtPlotRescaler::ExpandingDirection\fP"When \fBrescalePolicy()\fP is set to Expanding its direction depends on ExpandingDirection +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIExpandUp \fP\fP +The upper limit of the scale is adjusted. +.TP +\fB\fIExpandDown \fP\fP +The lower limit of the scale is adjusted. +.TP +\fB\fIExpandBoth \fP\fP +Both limits of the scale are adjusted. +.SS "enum \fBQwtPlotRescaler::RescalePolicy\fP"The rescale policy defines how to rescale the reference axis and their depending axes. +.PP +\fBSee also:\fP +.RS 4 +\fBExpandingDirection\fP, \fBsetIntervalHint()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIFixed \fP\fP +The interval of the reference axis remains unchanged, when the geometry of the canvas changes. All other axes will be adjusted according to their aspect ratio. +.TP +\fB\fIExpanding \fP\fP +The interval of the reference axis will be shrinked/expanded, when the geometry of the canvas changes. All other axes will be adjusted according to their aspect ratio. +.PP +The interval, that is represented by one pixel is fixed. +.TP +\fB\fIFitting \fP\fP +The intervals of the axes are calculated, so that all axes include their interval hint. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPlotRescaler::QwtPlotRescaler (\fBQwtPlotCanvas\fP *canvas, intreferenceAxis = \fCQwtPlot::xBottom\fP, \fBRescalePolicy\fPpolicy = \fCExpanding\fP)\fC [explicit]\fP"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fIcanvas\fP Canvas +.br +\fIreferenceAxis\fP Reference axis, see RescalePolicy +.br +\fIpolicy\fP Rescale policy +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetRescalePolicy()\fP, \fBsetReferenceAxis()\fP +.RE +.PP + +.SS "QwtPlotRescaler::~QwtPlotRescaler ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "double QwtPlotRescaler::aspectRatio (intaxis) const"Return aspect ratio between an axis and the reference axis. +.PP +\fBParameters:\fP +.RS 4 +\fIaxis\fP Axis index ( see QwtPlot::AxisId ) +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetAspectRatio()\fP +.RE +.PP + +.SS "const \fBQwtPlotCanvas\fP * QwtPlotRescaler::canvas () const"\fBReturns:\fP +.RS 4 +plot canvas +.RE +.PP + +.SS "\fBQwtPlotCanvas\fP * QwtPlotRescaler::canvas ()"\fBReturns:\fP +.RS 4 +plot canvas +.RE +.PP + +.SS "void QwtPlotRescaler::canvasResizeEvent (QResizeEvent *event)\fC [protected, virtual]\fP"Event handler for resize events of the plot canvas +.PP +\fBParameters:\fP +.RS 4 +\fIevent\fP Resize event +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBrescale()\fP +.RE +.PP + +.SS "bool QwtPlotRescaler::eventFilter (QObject *o, QEvent *e)\fC [virtual]\fP" +.PP +Event filter for the plot canvas. +.SS "\fBQwtPlotRescaler::ExpandingDirection\fP QwtPlotRescaler::expandingDirection (intaxis) const"Return direction in which an axis should be expanded +.PP +\fBParameters:\fP +.RS 4 +\fIaxis\fP Axis index ( see QwtPlot::AxisId ) +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetExpandingDirection()\fP +.RE +.PP + +.SS "\fBQwtInterval\fP QwtPlotRescaler::expandInterval (const \fBQwtInterval\fP &interval, doublewidth, \fBExpandingDirection\fPdirection) const\fC [protected]\fP"Expand the interval +.PP +\fBParameters:\fP +.RS 4 +\fIinterval\fP Interval to be expanded +.br +\fIwidth\fP Distance to be added to the interval +.br +\fIdirection\fP Direction of the expand operation +.RE +.PP +\fBReturns:\fP +.RS 4 +Expanded interval +.RE +.PP + +.SS "\fBQwtInterval\fP QwtPlotRescaler::expandScale (intaxis, const QSize &oldSize, const QSize &newSize) const\fC [protected, virtual]\fP"Calculate the new scale interval of a plot axis +.PP +\fBParameters:\fP +.RS 4 +\fIaxis\fP Axis index ( see QwtPlot::AxisId ) +.br +\fIoldSize\fP Previous size of the canvas +.br +\fInewSize\fP New size of the canvas +.RE +.PP +\fBReturns:\fP +.RS 4 +Calculated new interval for the axis +.RE +.PP + +.SS "\fBQwtInterval\fP QwtPlotRescaler::interval (intaxis) const\fC [protected]\fP"Return interval of an axis +.PP +\fBParameters:\fP +.RS 4 +\fIaxis\fP Axis index ( see QwtPlot::AxisId ) +.RE +.PP + +.SS "\fBQwtInterval\fP QwtPlotRescaler::intervalHint (intaxis) const"\fBParameters:\fP +.RS 4 +\fIaxis\fP Axis, see \fBQwtPlot::Axis\fP +.RE +.PP +\fBReturns:\fP +.RS 4 +Interval hint +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetIntervalHint()\fP, \fBRescalePolicy\fP +.RE +.PP + +.SS "bool QwtPlotRescaler::isEnabled () const"\fBReturns:\fP +.RS 4 +true when enabled, false otherwise +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetEnabled\fP, \fBeventFilter()\fP +.RE +.PP + +.SS "Qt::Orientation QwtPlotRescaler::orientation (intaxis) const\fC [protected]\fP"Return orientation of an axis +.PP +\fBParameters:\fP +.RS 4 +\fIaxis\fP Axis index ( see QwtPlot::AxisId ) +.RE +.PP + +.SS "\fBQwtPlot\fP * QwtPlotRescaler::plot ()"\fBReturns:\fP +.RS 4 +plot widget +.RE +.PP + +.SS "const \fBQwtPlot\fP * QwtPlotRescaler::plot () const"\fBReturns:\fP +.RS 4 +plot widget +.RE +.PP + +.SS "int QwtPlotRescaler::referenceAxis () const"\fBReturns:\fP +.RS 4 +Reference axis ( see RescalePolicy ) +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetReferenceAxis()\fP +.RE +.PP + +.SS "void QwtPlotRescaler::rescale () const" +.PP +Adjust the plot axes scales. +.SS "void QwtPlotRescaler::rescale (const QSize &oldSize, const QSize &newSize) const\fC [protected, virtual]\fP"Adjust the plot axes scales +.PP +\fBParameters:\fP +.RS 4 +\fIoldSize\fP Previous size of the canvas +.br +\fInewSize\fP New size of the canvas +.RE +.PP + +.SS "\fBQwtPlotRescaler::RescalePolicy\fP QwtPlotRescaler::rescalePolicy () const"\fBReturns:\fP +.RS 4 +Rescale policy +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetRescalePolicy()\fP +.RE +.PP + +.SS "void QwtPlotRescaler::setAspectRatio (intaxis, doubleratio)"Set the aspect ratio between the scale of the reference axis and another scale. The default ratio is 1.0 +.PP +\fBParameters:\fP +.RS 4 +\fIaxis\fP Axis index ( see QwtPlot::AxisId ) +.br +\fIratio\fP Aspect ratio +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBaspectRatio()\fP +.RE +.PP + +.SS "void QwtPlotRescaler::setAspectRatio (doubleratio)"Set the aspect ratio between the scale of the reference axis and the other scales. The default ratio is 1.0 +.PP +\fBParameters:\fP +.RS 4 +\fIratio\fP Aspect ratio +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBaspectRatio()\fP +.RE +.PP + +.SS "void QwtPlotRescaler::setEnabled (boolon)" +.PP +En/disable the rescaler. When enabled is true an event filter is installed for the canvas, otherwise the event filter is removed. +.PP +\fBParameters:\fP +.RS 4 +\fIon\fP true or false +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBisEnabled()\fP, \fBeventFilter()\fP +.RE +.PP + +.SS "void QwtPlotRescaler::setExpandingDirection (intaxis, \fBExpandingDirection\fPdirection)"Set the direction in which an axis should be expanded +.PP +\fBParameters:\fP +.RS 4 +\fIaxis\fP Axis index ( see QwtPlot::AxisId ) +.br +\fIdirection\fP Direction +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBexpandingDirection()\fP +.RE +.PP + +.SS "void QwtPlotRescaler::setExpandingDirection (\fBExpandingDirection\fPdirection)"Set the direction in which all axis should be expanded +.PP +\fBParameters:\fP +.RS 4 +\fIdirection\fP Direction +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBexpandingDirection()\fP +.RE +.PP + +.SS "void QwtPlotRescaler::setIntervalHint (intaxis, const \fBQwtInterval\fP &interval)"Set an interval hint for an axis +.PP +In Fitting mode, the hint is used as minimal interval taht always needs to be displayed. +.PP +\fBParameters:\fP +.RS 4 +\fIaxis\fP Axis, see \fBQwtPlot::Axis\fP +.br +\fIinterval\fP Axis +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBintervalHint()\fP, \fBRescalePolicy\fP +.RE +.PP + +.SS "void QwtPlotRescaler::setReferenceAxis (intaxis)"Set the reference axis ( see RescalePolicy ) +.PP +\fBParameters:\fP +.RS 4 +\fIaxis\fP Axis index ( \fBQwtPlot::Axis\fP ) +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBreferenceAxis()\fP +.RE +.PP + +.SS "void QwtPlotRescaler::setRescalePolicy (\fBRescalePolicy\fPpolicy)"Change the rescale policy +.PP +\fBParameters:\fP +.RS 4 +\fIpolicy\fP Rescale policy +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBrescalePolicy()\fP +.RE +.PP + +.SS "\fBQwtInterval\fP QwtPlotRescaler::syncScale (intaxis, const \fBQwtInterval\fP &reference, const QSize &size) const\fC [protected, virtual]\fP"Synchronize an axis scale according to the scale of the reference axis +.PP +\fBParameters:\fP +.RS 4 +\fIaxis\fP Axis index ( see QwtPlot::AxisId ) +.br +\fIreference\fP Interval of the reference axis +.br +\fIsize\fP Size of the canvas +.RE +.PP + +.SS "void QwtPlotRescaler::updateScales (\fBQwtInterval\fPintervals[QwtPlot::axisCnt]) const\fC [protected, virtual]\fP"Update the axes scales +.PP +\fBParameters:\fP +.RS 4 +\fIintervals\fP Scale intervals +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotScaleItem.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotScaleItem.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotScaleItem.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotScaleItem.3 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,367 @@ +.TH "QwtPlotScaleItem" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPlotScaleItem \- +.PP +A class which draws a scale inside the plot canvas. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtPlotItem\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPlotScaleItem\fP (\fBQwtScaleDraw::Alignment\fP=QwtScaleDraw::BottomScale, const double pos=0.0)" +.br +.ti -1c +.RI "virtual \fB~QwtPlotScaleItem\fP ()" +.br +.ti -1c +.RI "virtual int \fBrtti\fP () const " +.br +.ti -1c +.RI "void \fBsetScaleDiv\fP (const \fBQwtScaleDiv\fP &)" +.br +.ti -1c +.RI "const \fBQwtScaleDiv\fP & \fBscaleDiv\fP () const " +.br +.ti -1c +.RI "void \fBsetScaleDivFromAxis\fP (bool on)" +.br +.ti -1c +.RI "bool \fBisScaleDivFromAxis\fP () const " +.br +.ti -1c +.RI "void \fBsetPalette\fP (const QPalette &)" +.br +.ti -1c +.RI "QPalette \fBpalette\fP () const " +.br +.ti -1c +.RI "void \fBsetFont\fP (const QFont &)" +.br +.ti -1c +.RI "QFont \fBfont\fP () const " +.br +.ti -1c +.RI "void \fBsetScaleDraw\fP (\fBQwtScaleDraw\fP *)" +.br +.ti -1c +.RI "const \fBQwtScaleDraw\fP * \fBscaleDraw\fP () const " +.br +.ti -1c +.RI "\fBQwtScaleDraw\fP * \fBscaleDraw\fP ()" +.br +.ti -1c +.RI "void \fBsetPosition\fP (double pos)" +.br +.ti -1c +.RI "double \fBposition\fP () const " +.br +.ti -1c +.RI "void \fBsetBorderDistance\fP (int numPixels)" +.br +.ti -1c +.RI "int \fBborderDistance\fP () const " +.br +.ti -1c +.RI "void \fBsetAlignment\fP (\fBQwtScaleDraw::Alignment\fP)" +.br +.ti -1c +.RI "virtual void \fBdraw\fP (QPainter *p, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &rect) const " +.br +.ti -1c +.RI "virtual void \fBupdateScaleDiv\fP (const \fBQwtScaleDiv\fP &, const \fBQwtScaleDiv\fP &)" +.br +.in -1c +.SH "Detailed Description" +.PP +A class which draws a scale inside the plot canvas. + +\fBQwtPlotScaleItem\fP can be used to draw an axis inside the plot canvas. It might by synchronized to one of the axis of the plot, but can also display its own ticks and labels. +.PP +It is allowed to synchronize the scale item with a disabled axis. In plots with vertical and horizontal scale items, it might be necessary to remove ticks at the intersections, by overloading \fBupdateScaleDiv()\fP. +.PP +The scale might be at a specific position (f.e 0.0) or it might be aligned to a canvas border. +.PP +\fBExample\fP +.RS 4 +The following example shows how to replace the left axis, by a scale item at the x position 0.0. +.PP +.nf + +QwtPlotScaleItem *scaleItem = + new QwtPlotScaleItem(QwtScaleDraw::RightScale, 0.0); +scaleItem->setFont(plot->axisWidget(QwtPlot::yLeft)->font()); +scaleItem->attach(plot); + +plot->enableAxis(QwtPlot::yLeft, false); + +.fi +.PP + +.RE +.PP + +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPlotScaleItem::QwtPlotScaleItem (\fBQwtScaleDraw::Alignment\fPalignment = \fCQwtScaleDraw::BottomScale\fP, const doublepos = \fC0.0\fP)\fC [explicit]\fP" +.PP +Constructor for scale item at the position pos. \fBParameters:\fP +.RS 4 +\fIalignment\fP In case of \fBQwtScaleDraw::BottomScale\fP or \fBQwtScaleDraw::TopScale\fP the scale item is corresponding to the \fBxAxis()\fP, otherwise it corresponds to the \fByAxis()\fP. +.br +\fIpos\fP x or y position, depending on the corresponding axis. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetPosition()\fP, \fBsetAlignment()\fP +.RE +.PP + +.SS "QwtPlotScaleItem::~QwtPlotScaleItem ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "int QwtPlotScaleItem::borderDistance () const"\fBReturns:\fP +.RS 4 +Distance from a canvas border +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetBorderDistance()\fP, \fBsetPosition()\fP +.RE +.PP + +.SS "void QwtPlotScaleItem::draw (QPainter *p, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &rect) const\fC [virtual]\fP" +.PP +Draw the scale. +.PP +Implements \fBQwtPlotItem\fP. +.SS "QFont QwtPlotScaleItem::font () const"\fBReturns:\fP +.RS 4 +tick label font +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetFont()\fP +.RE +.PP + +.SS "bool QwtPlotScaleItem::isScaleDivFromAxis () const"\fBReturns:\fP +.RS 4 +True, if the synchronization of the scale division with the corresponding axis is enabled. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetScaleDiv()\fP, \fBsetScaleDivFromAxis()\fP +.RE +.PP + +.SS "QPalette QwtPlotScaleItem::palette () const"\fBReturns:\fP +.RS 4 +palette +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetPalette()\fP +.RE +.PP + +.SS "double QwtPlotScaleItem::position () const"\fBReturns:\fP +.RS 4 +Position of the scale +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetPosition()\fP, \fBsetAlignment()\fP +.RE +.PP + +.SS "int QwtPlotScaleItem::rtti () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +QwtPlotItem::Rtti_PlotScale +.RE +.PP + +.PP +Reimplemented from \fBQwtPlotItem\fP. +.SS "const \fBQwtScaleDiv\fP & QwtPlotScaleItem::scaleDiv () const"\fBReturns:\fP +.RS 4 +Scale division +.RE +.PP + +.SS "const \fBQwtScaleDraw\fP * QwtPlotScaleItem::scaleDraw () const"\fBReturns:\fP +.RS 4 +Scale draw +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetScaleDraw()\fP +.RE +.PP + +.SS "\fBQwtScaleDraw\fP * QwtPlotScaleItem::scaleDraw ()"\fBReturns:\fP +.RS 4 +Scale draw +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetScaleDraw()\fP +.RE +.PP + +.SS "void QwtPlotScaleItem::setAlignment (\fBQwtScaleDraw::Alignment\fPalignment)"Change the alignment of the scale +.PP +The alignment sets the orientation of the scale and the position of the ticks: +.PP +.IP "\(bu" 2 +\fBQwtScaleDraw::BottomScale\fP: horizontal, ticks below +.IP "\(bu" 2 +\fBQwtScaleDraw::TopScale\fP: horizontal, ticks above +.IP "\(bu" 2 +\fBQwtScaleDraw::LeftScale\fP: vertical, ticks left +.IP "\(bu" 2 +\fBQwtScaleDraw::RightScale\fP: vertical, ticks right +.PP +.PP +For horizontal scales the position corresponds to \fBQwtPlotItem::yAxis()\fP, otherwise to \fBQwtPlotItem::xAxis()\fP. +.PP +\fBSee also:\fP +.RS 4 +\fBscaleDraw()\fP, \fBQwtScaleDraw::alignment()\fP, \fBsetPosition()\fP +.RE +.PP + +.SS "void QwtPlotScaleItem::setBorderDistance (intdistance)" +.PP +Align the scale to the canvas. If distance is >= 0 the scale will be aligned to a border of the contents rect of the canvas. If alignment() is \fBQwtScaleDraw::LeftScale\fP, the scale will be aligned to the right border, if it is \fBQwtScaleDraw::TopScale\fP it will be aligned to the bottom (and vice versa), +.PP +If distance is < 0 the scale will be at the \fBposition()\fP. +.PP +\fBParameters:\fP +.RS 4 +\fIdistance\fP Number of pixels between the canvas border and the backbone of the scale. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetPosition()\fP, \fBborderDistance()\fP +.RE +.PP + +.SS "void QwtPlotScaleItem::setFont (const QFont &font)"Change the tick label font +.PP +\fBSee also:\fP +.RS 4 +\fBfont()\fP +.RE +.PP + +.SS "void QwtPlotScaleItem::setPalette (const QPalette &palette)"Set the palette +.PP +\fBSee also:\fP +.RS 4 +\fBQwtAbstractScaleDraw::draw()\fP, \fBpalette()\fP +.RE +.PP + +.SS "void QwtPlotScaleItem::setPosition (doublepos)"Change the position of the scale +.PP +The position is interpreted as y value for horizontal axes and as x value for vertical axes. +.PP +The border distance is set to -1. +.PP +\fBParameters:\fP +.RS 4 +\fIpos\fP New position +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBposition()\fP, \fBsetAlignment()\fP +.RE +.PP + +.SS "void QwtPlotScaleItem::setScaleDiv (const \fBQwtScaleDiv\fP &scaleDiv)" +.PP +Assign a scale division. When assigning a scaleDiv the scale division won't be synchronized with the corresponding axis anymore. +.PP +\fBParameters:\fP +.RS 4 +\fIscaleDiv\fP Scale division +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBscaleDiv()\fP, \fBsetScaleDivFromAxis()\fP, \fBisScaleDivFromAxis()\fP +.RE +.PP + +.SS "void QwtPlotScaleItem::setScaleDivFromAxis (boolon)"Enable/Disable the synchronization of the scale division with the corresponding axis. +.PP +\fBParameters:\fP +.RS 4 +\fIon\fP true/false +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBisScaleDivFromAxis()\fP +.RE +.PP + +.SS "void QwtPlotScaleItem::setScaleDraw (\fBQwtScaleDraw\fP *scaleDraw)" +.PP +Set a scale draw. \fBParameters:\fP +.RS 4 +\fIscaleDraw\fP object responsible for drawing scales. +.RE +.PP +The main use case for replacing the default \fBQwtScaleDraw\fP is to overload \fBQwtAbstractScaleDraw::label\fP, to replace or swallow tick labels. +.PP +\fBSee also:\fP +.RS 4 +\fBscaleDraw()\fP +.RE +.PP + +.SS "void QwtPlotScaleItem::updateScaleDiv (const \fBQwtScaleDiv\fP &xScaleDiv, const \fBQwtScaleDiv\fP &yScaleDiv)\fC [virtual]\fP" +.PP +Update the item to changes of the axes scale division. In case of \fBisScaleDivFromAxis()\fP, the scale draw is synchronized to the correspond axis. +.PP +\fBParameters:\fP +.RS 4 +\fIxScaleDiv\fP Scale division of the x-axis +.br +\fIyScaleDiv\fP Scale division of the y-axis +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtPlot::updateAxes()\fP +.RE +.PP + +.PP +Reimplemented from \fBQwtPlotItem\fP. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotSeriesItem.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotSeriesItem.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotSeriesItem.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotSeriesItem.3 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,169 @@ +.TH "QwtPlotSeriesItem" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPlotSeriesItem \- +.PP +Class template for plot items representing a series of samples. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtPlotAbstractSeriesItem\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPlotSeriesItem\fP (const QString &title=QString::null)" +.br +.ti -1c +.RI "\fBQwtPlotSeriesItem\fP (const \fBQwtText\fP &title)" +.br +.ti -1c +.RI "virtual \fB~QwtPlotSeriesItem\fP ()" +.br +.ti -1c +.RI "void \fBsetData\fP (\fBQwtSeriesData\fP< T > *)" +.br +.ti -1c +.RI "\fBQwtSeriesData\fP< T > * \fBdata\fP ()" +.br +.ti -1c +.RI "const \fBQwtSeriesData\fP< T > * \fBdata\fP () const " +.br +.ti -1c +.RI "size_t \fBdataSize\fP () const " +.br +.ti -1c +.RI "T \fBsample\fP (int index) const " +.br +.ti -1c +.RI "virtual QRectF \fBboundingRect\fP () const " +.br +.ti -1c +.RI "virtual void \fBupdateScaleDiv\fP (const \fBQwtScaleDiv\fP &, const \fBQwtScaleDiv\fP &)" +.br +.in -1c +.SS "Protected Attributes" + +.in +1c +.ti -1c +.RI "\fBQwtSeriesData\fP< T > * \fBd_series\fP" +.br +.in -1c +.SH "Detailed Description" +.PP + +.SS "template class QwtPlotSeriesItem< T >" +Class template for plot items representing a series of samples. +.SH "Constructor & Destructor Documentation" +.PP +.SS "template \fBQwtPlotSeriesItem\fP< T >::\fBQwtPlotSeriesItem\fP (const QString &title = \fCQString::null\fP)\fC [explicit]\fP"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fItitle\fP Title of the series item +.RE +.PP + +.SS "template \fBQwtPlotSeriesItem\fP< T >::\fBQwtPlotSeriesItem\fP (const \fBQwtText\fP &title)\fC [explicit]\fP"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fItitle\fP Title of the series item +.RE +.PP + +.SS "template \fBQwtPlotSeriesItem\fP< T >::~\fBQwtPlotSeriesItem\fP ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "template QRectF \fBQwtPlotSeriesItem\fP< T >::boundingRect () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +Bounding rectangle of the data. If there is no bounding rect, like for empty data the rectangle is invalid. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtSeriesData::boundingRect()\fP, QRectF::isValid() +.RE +.PP + +.PP +Reimplemented from \fBQwtPlotItem\fP. +.PP +Reimplemented in \fBQwtPlotHistogram\fP, and \fBQwtPlotIntervalCurve\fP. +.SS "template \fBQwtSeriesData\fP< T > * \fBQwtPlotSeriesItem\fP< T >::data ()\fC [inline]\fP"\fBReturns:\fP +.RS 4 +the the curve data +.RE +.PP + +.SS "template const \fBQwtSeriesData\fP< T > * \fBQwtPlotSeriesItem\fP< T >::data () const\fC [inline]\fP"\fBReturns:\fP +.RS 4 +the the curve data +.RE +.PP + +.SS "template size_t \fBQwtPlotSeriesItem\fP< T >::dataSize () const"Return the size of the data arrays +.PP +\fBSee also:\fP +.RS 4 +\fBsetData()\fP +.RE +.PP + +.SS "template T \fBQwtPlotSeriesItem\fP< T >::sample (intindex) const\fC [inline]\fP"\fBParameters:\fP +.RS 4 +\fIindex\fP Index +.RE +.PP +\fBReturns:\fP +.RS 4 +Sample at position index +.RE +.PP + +.SS "template void \fBQwtPlotSeriesItem\fP< T >::setData (\fBQwtSeriesData\fP< T > *data)"Assign a series of samples +.PP +\fBParameters:\fP +.RS 4 +\fIdata\fP Data +.RE +.PP +\fBWarning:\fP +.RS 4 +The item takes ownership of the data object, deleting it when its not used anymore. +.RE +.PP + +.SS "template void \fBQwtPlotSeriesItem\fP< T >::updateScaleDiv (const \fBQwtScaleDiv\fP &xScaleDiv, const \fBQwtScaleDiv\fP &yScaleDiv)\fC [virtual]\fP"Update the rect of interest according to the current scale ranges +.PP +\fBParameters:\fP +.RS 4 +\fIxScaleDiv\fP Scale division of the x-axis +.br +\fIyScaleDiv\fP Scale division of the y-axis +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtSeriesData::setRectOfInterest()\fP +.RE +.PP + +.PP +Reimplemented from \fBQwtPlotItem\fP. +.SH "Member Data Documentation" +.PP +.SS "template \fBQwtSeriesData\fP* \fBQwtPlotSeriesItem\fP< T >::\fBd_series\fP\fC [protected]\fP" +.PP +Series. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotSpectroCurve.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotSpectroCurve.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotSpectroCurve.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotSpectroCurve.3 2011-04-15 10:48:59.000000000 +0000 @@ -0,0 +1,280 @@ +.TH "QwtPlotSpectroCurve" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPlotSpectroCurve \- +.PP +Curve that displays 3D points as dots, where the z coordinate is mapped to a color. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtPlotSeriesItem< QwtPoint3D >\fP. +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBPaintAttribute\fP { \fBClipPoints\fP = 1 }" +.br +.ti -1c +.RI "typedef QFlags< \fBPaintAttribute\fP > \fBPaintAttributes\fP" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPlotSpectroCurve\fP (const QString &title=QString::null)" +.br +.ti -1c +.RI "\fBQwtPlotSpectroCurve\fP (const \fBQwtText\fP &title)" +.br +.ti -1c +.RI "virtual \fB~QwtPlotSpectroCurve\fP ()" +.br +.ti -1c +.RI "virtual int \fBrtti\fP () const " +.br +.ti -1c +.RI "void \fBsetPaintAttribute\fP (\fBPaintAttribute\fP, bool on=true)" +.br +.ti -1c +.RI "bool \fBtestPaintAttribute\fP (\fBPaintAttribute\fP) const " +.br +.ti -1c +.RI "void \fBsetSamples\fP (const QVector< \fBQwtPoint3D\fP > &)" +.br +.ti -1c +.RI "void \fBsetColorMap\fP (\fBQwtColorMap\fP *)" +.br +.ti -1c +.RI "const \fBQwtColorMap\fP * \fBcolorMap\fP () const " +.br +.ti -1c +.RI "void \fBsetColorRange\fP (const \fBQwtInterval\fP &)" +.br +.ti -1c +.RI "\fBQwtInterval\fP & \fBcolorRange\fP () const " +.br +.ti -1c +.RI "virtual void \fBdrawSeries\fP (QPainter *, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect, int from, int to) const " +.br +.ti -1c +.RI "void \fBsetPenWidth\fP (double width)" +.br +.ti -1c +.RI "double \fBpenWidth\fP () const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual void \fBdrawDots\fP (QPainter *, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect, int from, int to) const " +.br +.in -1c +.SH "Detailed Description" +.PP +Curve that displays 3D points as dots, where the z coordinate is mapped to a color. +.SH "Member Typedef Documentation" +.PP +.SS "typedef QFlags<\fBPaintAttribute\fP> \fBQwtPlotSpectroCurve::PaintAttributes\fP" +.PP +Paint attributes. +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtPlotSpectroCurve::PaintAttribute\fP" +.PP +Paint attributes. +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIClipPoints \fP\fP +Clip points outside the canvas rectangle. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPlotSpectroCurve::QwtPlotSpectroCurve (const QString &title = \fCQString::null\fP)\fC [explicit]\fP"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fItitle\fP Title of the curve +.RE +.PP + +.SS "QwtPlotSpectroCurve::QwtPlotSpectroCurve (const \fBQwtText\fP &title)\fC [explicit]\fP"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fItitle\fP Title of the curve +.RE +.PP + +.SS "QwtPlotSpectroCurve::~QwtPlotSpectroCurve ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "const \fBQwtColorMap\fP * QwtPlotSpectroCurve::colorMap () const"\fBReturns:\fP +.RS 4 +Color Map used for mapping the intensity values to colors +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetColorMap()\fP, \fBsetColorRange()\fP, \fBQwtColorMap::color()\fP +.RE +.PP + +.SS "\fBQwtInterval\fP & QwtPlotSpectroCurve::colorRange () const"\fBReturns:\fP +.RS 4 +Value interval, that corresponds to the color map +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetColorRange()\fP, \fBsetColorMap()\fP, \fBQwtColorMap::color()\fP +.RE +.PP + +.SS "void QwtPlotSpectroCurve::drawDots (QPainter *painter, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect, intfrom, intto) const\fC [protected, virtual]\fP"Draw a subset of the points +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIxMap\fP Maps x-values into pixel coordinates. +.br +\fIyMap\fP Maps y-values into pixel coordinates. +.br +\fIcanvasRect\fP Contents rect of the canvas +.br +\fIfrom\fP Index of the first sample to be painted +.br +\fIto\fP Index of the last sample to be painted. If to < 0 the series will be painted to its last sample. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBdrawSeries()\fP +.RE +.PP + +.SS "void QwtPlotSpectroCurve::drawSeries (QPainter *painter, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect, intfrom, intto) const\fC [virtual]\fP"Draw a subset of the points +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIxMap\fP Maps x-values into pixel coordinates. +.br +\fIyMap\fP Maps y-values into pixel coordinates. +.br +\fIcanvasRect\fP Contents rect of the canvas +.br +\fIfrom\fP Index of the first sample to be painted +.br +\fIto\fP Index of the last sample to be painted. If to < 0 the series will be painted to its last sample. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBdrawDots()\fP +.RE +.PP + +.PP +Implements \fBQwtPlotAbstractSeriesItem\fP. +.SS "double QwtPlotSpectroCurve::penWidth () const"\fBReturns:\fP +.RS 4 +Pen width used to draw a dot +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetPenWidth()\fP +.RE +.PP + +.SS "int QwtPlotSpectroCurve::rtti () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +QwtPlotItem::Rtti_PlotSpectroCurve +.RE +.PP + +.PP +Reimplemented from \fBQwtPlotItem\fP. +.SS "void QwtPlotSpectroCurve::setColorMap (\fBQwtColorMap\fP *colorMap)"Change the color map +.PP +Often it is useful to display the mapping between intensities and colors as an additional plot axis, showing a color bar. +.PP +\fBParameters:\fP +.RS 4 +\fIcolorMap\fP Color Map +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBcolorMap()\fP, \fBsetColorRange()\fP, \fBQwtColorMap::color()\fP, \fBQwtScaleWidget::setColorBarEnabled()\fP, \fBQwtScaleWidget::setColorMap()\fP +.RE +.PP + +.SS "void QwtPlotSpectroCurve::setColorRange (const \fBQwtInterval\fP &interval)"Set the value interval, that corresponds to the color map +.PP +\fBParameters:\fP +.RS 4 +\fIinterval\fP interval.minValue() corresponds to 0.0, interval.maxValue() to 1.0 on the color map. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBcolorRange()\fP, \fBsetColorMap()\fP, \fBQwtColorMap::color()\fP +.RE +.PP + +.SS "void QwtPlotSpectroCurve::setPaintAttribute (\fBPaintAttribute\fPattribute, boolon = \fCtrue\fP)"Specify an attribute how to draw the curve +.PP +\fBParameters:\fP +.RS 4 +\fIattribute\fP Paint attribute +.br +\fIon\fP On/Off /sa PaintAttribute, \fBtestPaintAttribute()\fP +.RE +.PP + +.SS "void QwtPlotSpectroCurve::setPenWidth (doublepenWidth)"Assign a pen width +.PP +\fBParameters:\fP +.RS 4 +\fIpenWidth\fP New pen width +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBpenWidth()\fP +.RE +.PP + +.SS "void QwtPlotSpectroCurve::setSamples (const QVector< \fBQwtPoint3D\fP > &samples)"Initialize data with an array of samples. +.PP +\fBParameters:\fP +.RS 4 +\fIsamples\fP Vector of points +.RE +.PP + +.SS "bool QwtPlotSpectroCurve::testPaintAttribute (\fBPaintAttribute\fPattribute) const" +.PP +Return the current paint attributes. \fBSee also:\fP +.RS 4 +\fBPaintAttribute\fP, \fBsetPaintAttribute()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotSpectrogram.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotSpectrogram.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotSpectrogram.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotSpectrogram.3 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,598 @@ +.TH "QwtPlotSpectrogram" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPlotSpectrogram \- +.PP +A plot item, which displays a spectrogram. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtPlotRasterItem\fP. +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBDisplayMode\fP { \fBImageMode\fP = 0x01, \fBContourMode\fP = 0x02 }" +.br +.ti -1c +.RI "typedef QFlags< \fBDisplayMode\fP > \fBDisplayModes\fP" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPlotSpectrogram\fP (const QString &title=QString::null)" +.br +.ti -1c +.RI "virtual \fB~QwtPlotSpectrogram\fP ()" +.br +.ti -1c +.RI "void \fBsetRenderThreadCount\fP (uint numThreads)" +.br +.ti -1c +.RI "uint \fBrenderThreadCount\fP () const " +.br +.ti -1c +.RI "void \fBsetDisplayMode\fP (\fBDisplayMode\fP, bool on=true)" +.br +.ti -1c +.RI "bool \fBtestDisplayMode\fP (\fBDisplayMode\fP) const " +.br +.ti -1c +.RI "void \fBsetData\fP (\fBQwtRasterData\fP *data)" +.br +.ti -1c +.RI "const \fBQwtRasterData\fP * \fBdata\fP () const " +.br +.ti -1c +.RI "\fBQwtRasterData\fP * \fBdata\fP ()" +.br +.ti -1c +.RI "void \fBsetColorMap\fP (\fBQwtColorMap\fP *)" +.br +.ti -1c +.RI "const \fBQwtColorMap\fP * \fBcolorMap\fP () const " +.br +.ti -1c +.RI "virtual \fBQwtInterval\fP \fBinterval\fP (Qt::Axis) const " +.br +.ti -1c +.RI "virtual QRectF \fBpixelHint\fP (const QRectF &) const " +.br +.ti -1c +.RI "void \fBsetDefaultContourPen\fP (const QPen &)" +.br +.ti -1c +.RI "QPen \fBdefaultContourPen\fP () const " +.br +.ti -1c +.RI "virtual QPen \fBcontourPen\fP (double level) const " +.br +.ti -1c +.RI "void \fBsetConrecFlag\fP (\fBQwtRasterData::ConrecFlag\fP, bool on)" +.br +.ti -1c +.RI "bool \fBtestConrecFlag\fP (\fBQwtRasterData::ConrecFlag\fP) const " +.br +.ti -1c +.RI "void \fBsetContourLevels\fP (const QList< double > &)" +.br +.ti -1c +.RI "QList< double > \fBcontourLevels\fP () const " +.br +.ti -1c +.RI "virtual int \fBrtti\fP () const " +.br +.ti -1c +.RI "virtual void \fBdraw\fP (QPainter *p, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &rect) const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual QImage \fBrenderImage\fP (const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &area, const QSize &imageSize) const " +.br +.ti -1c +.RI "virtual QSize \fBcontourRasterSize\fP (const QRectF &, const QRect &) const " +.br +.ti -1c +.RI "virtual \fBQwtRasterData::ContourLines\fP \fBrenderContourLines\fP (const QRectF &rect, const QSize &raster) const " +.br +.ti -1c +.RI "virtual void \fBdrawContourLines\fP (QPainter *p, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const \fBQwtRasterData::ContourLines\fP &lines) const " +.br +.ti -1c +.RI "void \fBrenderTile\fP (const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRect &imageRect, QImage *image) const " +.br +.in -1c +.SH "Detailed Description" +.PP +A plot item, which displays a spectrogram. + +A spectrogram displays threedimenional data, where the 3rd dimension ( the intensity ) is displayed using colors. The colors are calculated from the values using a color map. +.PP +In ContourMode contour lines are painted for the contour levels. +.PP +.PP +\fBSee also:\fP +.RS 4 +\fBQwtRasterData\fP, \fBQwtColorMap\fP +.RE +.PP + +.SH "Member Typedef Documentation" +.PP +.SS "typedef QFlags<\fBDisplayMode\fP> \fBQwtPlotSpectrogram::DisplayModes\fP" +.PP +Display modes. +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtPlotSpectrogram::DisplayMode\fP"The display mode controls how the raster data will be represented. +.PP +\fBSee also:\fP +.RS 4 +\fBsetDisplayMode()\fP, \fBtestDisplayMode()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIImageMode \fP\fP +The values are mapped to colors using a color map. +.TP +\fB\fIContourMode \fP\fP +The data is displayed using contour lines. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPlotSpectrogram::QwtPlotSpectrogram (const QString &title = \fCQString::null\fP)\fC [explicit]\fP"Sets the following item attributes: +.IP "\(bu" 2 +\fBQwtPlotItem::AutoScale\fP: true +.IP "\(bu" 2 +\fBQwtPlotItem::Legend\fP: false +.PP +.PP +The z value is initialized by 8.0. +.PP +\fBParameters:\fP +.RS 4 +\fItitle\fP Title +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtPlotItem::setItemAttribute()\fP, \fBQwtPlotItem::setZ()\fP +.RE +.PP + +.SS "QwtPlotSpectrogram::~QwtPlotSpectrogram ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "const \fBQwtColorMap\fP * QwtPlotSpectrogram::colorMap () const"\fBReturns:\fP +.RS 4 +Color Map used for mapping the intensity values to colors +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetColorMap()\fP +.RE +.PP + +.SS "QList< double > QwtPlotSpectrogram::contourLevels () const" +.PP +Return the levels of the contour lines. The levels are sorted in increasing order. +.PP +\fBSee also:\fP +.RS 4 +\fBcontourLevels()\fP, \fBrenderContourLines()\fP, \fBQwtRasterData::contourLines()\fP +.RE +.PP + +.SS "QPen QwtPlotSpectrogram::contourPen (doublelevel) const\fC [virtual]\fP" +.PP +Calculate the pen for a contour line. The color of the pen is the color for level calculated by the color map +.PP +\fBParameters:\fP +.RS 4 +\fIlevel\fP Contour level +.RE +.PP +\fBReturns:\fP +.RS 4 +Pen for the contour line +.RE +.PP +\fBNote:\fP +.RS 4 +contourPen is only used if \fBdefaultContourPen()\fP.style() == Qt::NoPen +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetDefaultContourPen()\fP, \fBsetColorMap()\fP, \fBsetContourLevels()\fP +.RE +.PP + +.SS "QSize QwtPlotSpectrogram::contourRasterSize (const QRectF &area, const QRect &rect) const\fC [protected, virtual]\fP" +.PP +Return the raster to be used by the CONREC contour algorithm. A larger size will improve the precisision of the CONREC algorithm, but will slow down the time that is needed to calculate the lines. +.PP +The default implementation returns rect.size() / 2 bounded to the resolution depending on pixelSize(). +.PP +\fBParameters:\fP +.RS 4 +\fIarea\fP Rect, where to calculate the contour lines +.br +\fIrect\fP Rect in pixel coordinates, where to paint the contour lines +.RE +.PP +\fBReturns:\fP +.RS 4 +Raster to be used by the CONREC contour algorithm. +.RE +.PP +\fBNote:\fP +.RS 4 +The size will be bounded to rect.size(). +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBdrawContourLines()\fP, \fBQwtRasterData::contourLines()\fP +.RE +.PP + +.SS "const \fBQwtRasterData\fP * QwtPlotSpectrogram::data () const"\fBReturns:\fP +.RS 4 +Spectrogram data +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetData()\fP +.RE +.PP + +.SS "\fBQwtRasterData\fP * QwtPlotSpectrogram::data ()"\fBReturns:\fP +.RS 4 +Spectrogram data +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetData()\fP +.RE +.PP + +.SS "QPen QwtPlotSpectrogram::defaultContourPen () const"\fBReturns:\fP +.RS 4 +Default contour pen +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetDefaultContourPen()\fP +.RE +.PP + +.SS "void QwtPlotSpectrogram::draw (QPainter *painter, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect) const\fC [virtual]\fP" +.PP +Draw the spectrogram. \fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIxMap\fP Maps x-values into pixel coordinates. +.br +\fIyMap\fP Maps y-values into pixel coordinates. +.br +\fIcanvasRect\fP Contents rect of the canvas in painter coordinates +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetDisplayMode()\fP, \fBrenderImage()\fP, \fBQwtPlotRasterItem::draw()\fP, \fBdrawContourLines()\fP +.RE +.PP + +.PP +Reimplemented from \fBQwtPlotRasterItem\fP. +.SS "void QwtPlotSpectrogram::drawContourLines (QPainter *painter, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const \fBQwtRasterData::ContourLines\fP &contourLines) const\fC [protected, virtual]\fP"Paint the contour lines +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIxMap\fP Maps x-values into pixel coordinates. +.br +\fIyMap\fP Maps y-values into pixel coordinates. +.br +\fIcontourLines\fP Contour lines +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBrenderContourLines()\fP, \fBdefaultContourPen()\fP, \fBcontourPen()\fP +.RE +.PP + +.SS "\fBQwtInterval\fP QwtPlotSpectrogram::interval (Qt::Axisaxis) const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +Bounding interval for an axis +.RE +.PP +The default implementation returns the interval of the associated raster data object. +.PP +\fBParameters:\fP +.RS 4 +\fIaxis\fP X, Y, or Z axis +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtRasterData::interval()\fP +.RE +.PP + +.PP +Reimplemented from \fBQwtPlotRasterItem\fP. +.SS "QRectF QwtPlotSpectrogram::pixelHint (const QRectF &area) const\fC [virtual]\fP" +.PP +Pixel hint. The geometry of a pixel is used to calculated the resolution and alignment of the rendered image. +.PP +The default implementation returns \fBdata()\fP->pixelHint( rect ); +.PP +\fBParameters:\fP +.RS 4 +\fIarea\fP In most implementations the resolution of the data doesn't depend on the requested area. +.RE +.PP +\fBReturns:\fP +.RS 4 +Bounding rectangle of a pixel +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtPlotRasterItem::pixelHint()\fP, \fBQwtRasterData::pixelHint()\fP, render(), \fBrenderImage()\fP +.RE +.PP + +.PP +Reimplemented from \fBQwtPlotRasterItem\fP. +.SS "\fBQwtRasterData::ContourLines\fP QwtPlotSpectrogram::renderContourLines (const QRectF &rect, const QSize &raster) const\fC [protected, virtual]\fP"Calculate contour lines +.PP +\fBParameters:\fP +.RS 4 +\fIrect\fP Rectangle, where to calculate the contour lines +.br +\fIraster\fP Raster, used by the CONREC algorithm +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBcontourLevels()\fP, \fBsetConrecFlag()\fP, \fBQwtRasterData::contourLines()\fP +.RE +.PP + +.SS "QImage QwtPlotSpectrogram::renderImage (const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &area, const QSize &imageSize) const\fC [protected, virtual]\fP" +.PP +Render an image from data and color map. For each pixel of rect the value is mapped into a color. +.PP +\fBParameters:\fP +.RS 4 +\fIxMap\fP X-Scale Map +.br +\fIyMap\fP Y-Scale Map +.br +\fIarea\fP Requested area for the image in scale coordinates +.br +\fIimageSize\fP Size of the requested image +.RE +.PP +\fBReturns:\fP +.RS 4 +A QImage::Format_Indexed8 or QImage::Format_ARGB32 depending on the color map. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtRasterData::value()\fP, \fBQwtColorMap::rgb()\fP, \fBQwtColorMap::colorIndex()\fP +.RE +.PP + +.PP +Implements \fBQwtPlotRasterItem\fP. +.SS "uint QwtPlotSpectrogram::renderThreadCount () const"\fBReturns:\fP +.RS 4 +Number of threads to be used for rendering. If numThreads is set to 0, the system specific ideal thread count is used. +.RE +.PP +\fBWarning:\fP +.RS 4 +Rendering in multiple threads is only supported for Qt >= 4.4 +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetRenderThreadCount()\fP, \fBrenderImage()\fP, \fBrenderTile()\fP +.RE +.PP + +.SS "void QwtPlotSpectrogram::renderTile (const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRect &tile, QImage *image) const\fC [protected]\fP" +.PP +Render a tile of an image. Rendering in tiles can be used to composite an image in parallel threads. +.PP +\fBParameters:\fP +.RS 4 +\fIxMap\fP X-Scale Map +.br +\fIyMap\fP Y-Scale Map +.br +\fItile\fP Geometry of the tile in image coordinates +.br +\fIimage\fP Image to be rendered +.RE +.PP + +.SS "int QwtPlotSpectrogram::rtti () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +QwtPlotItem::Rtti_PlotSpectrogram +.RE +.PP + +.PP +Reimplemented from \fBQwtPlotItem\fP. +.SS "void QwtPlotSpectrogram::setColorMap (\fBQwtColorMap\fP *colorMap)"Change the color map +.PP +Often it is useful to display the mapping between intensities and colors as an additional plot axis, showing a color bar. +.PP +\fBParameters:\fP +.RS 4 +\fIcolorMap\fP Color Map +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBcolorMap()\fP, \fBQwtScaleWidget::setColorBarEnabled()\fP, \fBQwtScaleWidget::setColorMap()\fP +.RE +.PP + +.SS "void QwtPlotSpectrogram::setConrecFlag (\fBQwtRasterData::ConrecFlag\fPflag, boolon)"Modify an attribute of the CONREC algorithm, used to calculate the contour lines. +.PP +\fBParameters:\fP +.RS 4 +\fIflag\fP CONREC flag +.br +\fIon\fP On/Off +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBtestConrecFlag()\fP, \fBrenderContourLines()\fP, \fBQwtRasterData::contourLines()\fP +.RE +.PP + +.SS "void QwtPlotSpectrogram::setContourLevels (const QList< double > &levels)"Set the levels of the contour lines +.PP +\fBParameters:\fP +.RS 4 +\fIlevels\fP Values of the contour levels +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBcontourLevels()\fP, \fBrenderContourLines()\fP, \fBQwtRasterData::contourLines()\fP +.RE +.PP +\fBNote:\fP +.RS 4 +contourLevels returns the same levels but sorted. +.RE +.PP + +.SS "void QwtPlotSpectrogram::setData (\fBQwtRasterData\fP *data)"Set the data to be displayed +.PP +\fBParameters:\fP +.RS 4 +\fIdata\fP Spectrogram Data +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBdata()\fP +.RE +.PP + +.SS "void QwtPlotSpectrogram::setDefaultContourPen (const QPen &pen)" +.PP +Set the default pen for the contour lines. If the spectrogram has a valid default contour pen a contour line is painted using the default contour pen. Otherwise (pen.style() == Qt::NoPen) the pen is calculated for each contour level using \fBcontourPen()\fP. +.PP +\fBSee also:\fP +.RS 4 +\fBdefaultContourPen()\fP, \fBcontourPen()\fP +.RE +.PP + +.SS "void QwtPlotSpectrogram::setDisplayMode (\fBDisplayMode\fPmode, boolon = \fCtrue\fP)"The display mode controls how the raster data will be represented. +.PP +\fBParameters:\fP +.RS 4 +\fImode\fP Display mode +.br +\fIon\fP On/Off +.RE +.PP +The default setting enables ImageMode. +.PP +\fBSee also:\fP +.RS 4 +\fBDisplayMode\fP, displayMode() +.RE +.PP + +.SS "void QwtPlotSpectrogram::setRenderThreadCount (uintnumThreads)"Rendering an image from the raster data can often be done parallel on a multicore system. +.PP +\fBParameters:\fP +.RS 4 +\fInumThreads\fP Number of threads to be used for rendering. If numThreads is set to 0, the system specific ideal thread count is used. +.RE +.PP +The default thread count is 1 ( = no additional threads ) +.PP +\fBWarning:\fP +.RS 4 +Rendering in multiple threads is only supported for Qt >= 4.4 +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBrenderThreadCount()\fP, \fBrenderImage()\fP, \fBrenderTile()\fP +.RE +.PP + +.SS "bool QwtPlotSpectrogram::testConrecFlag (\fBQwtRasterData::ConrecFlag\fPflag) const"Test an attribute of the CONREC algorithm, used to calculate the contour lines. +.PP +\fBParameters:\fP +.RS 4 +\fIflag\fP CONREC flag +.RE +.PP +\fBReturns:\fP +.RS 4 +true, is enabled +.RE +.PP +\fBSee also:\fP +.RS 4 +setConrecClag(), \fBrenderContourLines()\fP, \fBQwtRasterData::contourLines()\fP +.RE +.PP + +.SS "bool QwtPlotSpectrogram::testDisplayMode (\fBDisplayMode\fPmode) const"The display mode controls how the raster data will be represented. +.PP +\fBParameters:\fP +.RS 4 +\fImode\fP Display mode +.RE +.PP +\fBReturns:\fP +.RS 4 +true if mode is enabled +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotSvgItem.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotSvgItem.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotSvgItem.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotSvgItem.3 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,201 @@ +.TH "QwtPlotSvgItem" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPlotSvgItem \- +.PP +A plot item, which displays data in Scalable Vector Graphics (SVG) format. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtPlotItem\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPlotSvgItem\fP (const QString &title=QString::null)" +.br +.ti -1c +.RI "\fBQwtPlotSvgItem\fP (const \fBQwtText\fP &title)" +.br +.ti -1c +.RI "virtual \fB~QwtPlotSvgItem\fP ()" +.br +.ti -1c +.RI "bool \fBloadFile\fP (const QRectF &, const QString &fileName)" +.br +.ti -1c +.RI "bool \fBloadData\fP (const QRectF &, const QByteArray &)" +.br +.ti -1c +.RI "virtual QRectF \fBboundingRect\fP () const " +.br +.ti -1c +.RI "virtual void \fBdraw\fP (QPainter *p, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &rect) const " +.br +.ti -1c +.RI "virtual int \fBrtti\fP () const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "const QSvgRenderer & \fBrenderer\fP () const " +.br +.ti -1c +.RI "QSvgRenderer & \fBrenderer\fP ()" +.br +.ti -1c +.RI "void \fBrender\fP (QPainter *painter, const QRectF &viewBox, const QRectF &rect) const " +.br +.ti -1c +.RI "QRectF \fBviewBox\fP (const QRectF &area) const " +.br +.in -1c +.SH "Detailed Description" +.PP +A plot item, which displays data in Scalable Vector Graphics (SVG) format. + +SVG images are often used to display maps +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPlotSvgItem::QwtPlotSvgItem (const QString &title = \fCQString::null\fP)\fC [explicit]\fP" +.PP +Constructor. Sets the following item attributes: +.IP "\(bu" 2 +\fBQwtPlotItem::AutoScale\fP: true +.IP "\(bu" 2 +\fBQwtPlotItem::Legend\fP: false +.PP +.PP +\fBParameters:\fP +.RS 4 +\fItitle\fP Title +.RE +.PP + +.SS "QwtPlotSvgItem::QwtPlotSvgItem (const \fBQwtText\fP &title)\fC [explicit]\fP" +.PP +Constructor. Sets the following item attributes: +.IP "\(bu" 2 +\fBQwtPlotItem::AutoScale\fP: true +.IP "\(bu" 2 +\fBQwtPlotItem::Legend\fP: false +.PP +.PP +\fBParameters:\fP +.RS 4 +\fItitle\fP Title +.RE +.PP + +.SS "QwtPlotSvgItem::~QwtPlotSvgItem ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "QRectF QwtPlotSvgItem::boundingRect () const\fC [virtual]\fP" +.PP +Bounding rect of the item. +.PP +Reimplemented from \fBQwtPlotItem\fP. +.SS "void QwtPlotSvgItem::draw (QPainter *painter, const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &canvasRect) const\fC [virtual]\fP"Draw the SVG item +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIxMap\fP X-Scale Map +.br +\fIyMap\fP Y-Scale Map +.br +\fIcanvasRect\fP Contents rect of the plot canvas +.RE +.PP + +.PP +Implements \fBQwtPlotItem\fP. +.SS "bool QwtPlotSvgItem::loadData (const QRectF &rect, const QByteArray &data)"Load SVG data +.PP +\fBParameters:\fP +.RS 4 +\fIrect\fP Bounding rectangle +.br +\fIdata\fP in SVG format +.RE +.PP +\fBReturns:\fP +.RS 4 +true, if the SVG data could be loaded +.RE +.PP + +.SS "bool QwtPlotSvgItem::loadFile (const QRectF &rect, const QString &fileName)"Load a SVG file +.PP +\fBParameters:\fP +.RS 4 +\fIrect\fP Bounding rectangle +.br +\fIfileName\fP SVG file name +.RE +.PP +\fBReturns:\fP +.RS 4 +true, if the SVG file could be loaded +.RE +.PP + +.SS "void QwtPlotSvgItem::render (QPainter *painter, const QRectF &viewBox, const QRectF &rect) const\fC [protected]\fP"Render the SVG data +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIviewBox\fP View Box, see QSvgRenderer::viewBox +.br +\fIrect\fP Traget rectangle on the paint device +.RE +.PP + +.SS "QSvgRenderer & QwtPlotSvgItem::renderer ()\fC [protected]\fP"\fBReturns:\fP +.RS 4 +Renderer used to render the SVG data +.RE +.PP + +.SS "const QSvgRenderer & QwtPlotSvgItem::renderer () const\fC [protected]\fP"\fBReturns:\fP +.RS 4 +Renderer used to render the SVG data +.RE +.PP + +.SS "int QwtPlotSvgItem::rtti () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +QwtPlotItem::Rtti_PlotSVG +.RE +.PP + +.PP +Reimplemented from \fBQwtPlotItem\fP. +.SS "QRectF QwtPlotSvgItem::viewBox (const QRectF &rect) const\fC [protected]\fP"Calculate the viewBox from an rect and \fBboundingRect()\fP. +.PP +\fBParameters:\fP +.RS 4 +\fIrect\fP Rectangle in scale coordinates +.RE +.PP +\fBReturns:\fP +.RS 4 +viewBox View Box, see QSvgRenderer::viewBox +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotZoomer.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotZoomer.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotZoomer.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPlotZoomer.3 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,438 @@ +.TH "QwtPlotZoomer" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPlotZoomer \- +.PP +\fBQwtPlotZoomer\fP provides stacked zooming for a plot widget. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtPlotPicker\fP. +.SS "Public Slots" + +.in +1c +.ti -1c +.RI "void \fBmoveBy\fP (double x, double y)" +.br +.ti -1c +.RI "virtual void \fBmoveTo\fP (const QPointF &)" +.br +.ti -1c +.RI "virtual void \fBzoom\fP (const QRectF &)" +.br +.ti -1c +.RI "virtual void \fBzoom\fP (int up)" +.br +.in -1c +.SS "Signals" + +.in +1c +.ti -1c +.RI "void \fBzoomed\fP (const QRectF &rect)" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPlotZoomer\fP (\fBQwtPlotCanvas\fP *, bool doReplot=true)" +.br +.ti -1c +.RI "\fBQwtPlotZoomer\fP (int xAxis, int yAxis, \fBQwtPlotCanvas\fP *, bool doReplot=true)" +.br +.ti -1c +.RI "virtual void \fBsetZoomBase\fP (bool doReplot=true)" +.br +.ti -1c +.RI "virtual void \fBsetZoomBase\fP (const QRectF &)" +.br +.ti -1c +.RI "QRectF \fBzoomBase\fP () const " +.br +.ti -1c +.RI "QRectF \fBzoomRect\fP () const " +.br +.ti -1c +.RI "virtual void \fBsetAxis\fP (int xAxis, int yAxis)" +.br +.ti -1c +.RI "void \fBsetMaxStackDepth\fP (int)" +.br +.ti -1c +.RI "int \fBmaxStackDepth\fP () const " +.br +.ti -1c +.RI "const QStack< QRectF > & \fBzoomStack\fP () const " +.br +.ti -1c +.RI "void \fBsetZoomStack\fP (const QStack< QRectF > &, int zoomRectIndex=-1)" +.br +.ti -1c +.RI "uint \fBzoomRectIndex\fP () const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual void \fBrescale\fP ()" +.br +.ti -1c +.RI "virtual QSizeF \fBminZoomSize\fP () const " +.br +.ti -1c +.RI "virtual void \fBwidgetMouseReleaseEvent\fP (QMouseEvent *)" +.br +.ti -1c +.RI "virtual void \fBwidgetKeyPressEvent\fP (QKeyEvent *)" +.br +.ti -1c +.RI "virtual void \fBbegin\fP ()" +.br +.ti -1c +.RI "virtual bool \fBend\fP (bool ok=true)" +.br +.ti -1c +.RI "virtual bool \fBaccept\fP (QPolygon &) const " +.br +.in -1c +.SH "Detailed Description" +.PP +\fBQwtPlotZoomer\fP provides stacked zooming for a plot widget. + +\fBQwtPlotZoomer\fP offers rubberband selections on the plot canvas, translating the selected rectangles into plot coordinates and adjusting the axes to them. Zooming can repeated as often as possible, limited only by \fBmaxStackDepth()\fP or \fBminZoomSize()\fP. Each rectangle is pushed on a stack. +.PP +Zoom rectangles can be selected depending on selectionFlags() using the mouse or keyboard (\fBQwtEventPattern\fP, \fBQwtPickerMachine\fP). QwtEventPattern::MouseSelect3,QwtEventPattern::KeyUndo, or QwtEventPattern::MouseSelect6,QwtEventPattern::KeyRedo walk up and down the zoom stack. QwtEventPattern::MouseSelect2 or QwtEventPattern::KeyHome unzoom to the initial size. +.PP +\fBQwtPlotZoomer\fP is tailored for plots with one x and y axis, but it is allowed to attach a second \fBQwtPlotZoomer\fP for the other axes. +.PP +\fBNote:\fP +.RS 4 +The realtime example includes an derived zoomer class that adds scrollbars to the plot canvas. +.RE +.PP + +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPlotZoomer::QwtPlotZoomer (\fBQwtPlotCanvas\fP *canvas, booldoReplot = \fCtrue\fP)\fC [explicit]\fP" +.PP +Create a zoomer for a plot canvas. The zoomer is set to those x- and y-axis of the parent plot of the canvas that are enabled. If both or no x-axis are enabled, the picker is set to \fBQwtPlot::xBottom\fP. If both or no y-axis are enabled, it is set to \fBQwtPlot::yLeft\fP. +.PP +The zoomer is initialized with a \fBQwtPickerDragRectMachine\fP, the tracker mode is set to \fBQwtPicker::ActiveOnly\fP and the rubberband is set to \fBQwtPicker::RectRubberBand\fP +.PP +\fBParameters:\fP +.RS 4 +\fIcanvas\fP Plot canvas to observe, also the parent object +.br +\fIdoReplot\fP Call replot for the attached plot before initializing the zoomer with its scales. This might be necessary, when the plot is in a state with pending scale changes. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtPlot::autoReplot()\fP, \fBQwtPlot::replot()\fP, \fBsetZoomBase()\fP +.RE +.PP + +.SS "QwtPlotZoomer::QwtPlotZoomer (intxAxis, intyAxis, \fBQwtPlotCanvas\fP *canvas, booldoReplot = \fCtrue\fP)\fC [explicit]\fP" +.PP +Create a zoomer for a plot canvas. The zoomer is initialized with a \fBQwtPickerDragRectMachine\fP, the tracker mode is set to \fBQwtPicker::ActiveOnly\fP and the rubberband is set to \fBQwtPicker\fP;;RectRubberBand +.PP +\fBParameters:\fP +.RS 4 +\fIxAxis\fP X axis of the zoomer +.br +\fIyAxis\fP Y axis of the zoomer +.br +\fIcanvas\fP Plot canvas to observe, also the parent object +.br +\fIdoReplot\fP Call replot for the attached plot before initializing the zoomer with its scales. This might be necessary, when the plot is in a state with pending scale changes. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtPlot::autoReplot()\fP, \fBQwtPlot::replot()\fP, \fBsetZoomBase()\fP +.RE +.PP + +.SH "Member Function Documentation" +.PP +.SS "bool QwtPlotZoomer::accept (QPolygon &pa) const\fC [protected, virtual]\fP" +.PP +Check and correct a selected rectangle. Reject rectangles with a hight or width < 2, otherwise expand the selected rectangle to a minimum size of 11x11 and accept it. +.PP +\fBReturns:\fP +.RS 4 +true If rect is accepted, or has been changed to a accepted rectangle. +.RE +.PP + +.PP +Reimplemented from \fBQwtPicker\fP. +.SS "void QwtPlotZoomer::begin ()\fC [protected, virtual]\fP"Rejects selections, when the stack depth is too deep, or the zoomed rectangle is \fBminZoomSize()\fP. +.PP +\fBSee also:\fP +.RS 4 +\fBminZoomSize()\fP, \fBmaxStackDepth()\fP +.RE +.PP + +.PP +Reimplemented from \fBQwtPicker\fP. +.SS "bool QwtPlotZoomer::end (boolok = \fCtrue\fP)\fC [protected, virtual]\fP"Expand the selected rectangle to \fBminZoomSize()\fP and zoom in if accepted. +.PP +\fBSee also:\fP +.RS 4 +\fBaccept()\fP, \fBminZoomSize()\fP +.RE +.PP + +.PP +Reimplemented from \fBQwtPlotPicker\fP. +.SS "int QwtPlotZoomer::maxStackDepth () const"\fBReturns:\fP +.RS 4 +Maximal depth of the zoom stack. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetMaxStackDepth()\fP +.RE +.PP + +.SS "QSizeF QwtPlotZoomer::minZoomSize () const\fC [protected, virtual]\fP" +.PP +Limit zooming by a minimum rectangle. \fBReturns:\fP +.RS 4 +\fBzoomBase()\fP.width() / 10e4, \fBzoomBase()\fP.height() / 10e4 +.RE +.PP + +.SS "void QwtPlotZoomer::moveBy (doubledx, doubledy)\fC [slot]\fP"Move the current zoom rectangle. +.PP +\fBParameters:\fP +.RS 4 +\fIdx\fP X offset +.br +\fIdy\fP Y offset +.RE +.PP +\fBNote:\fP +.RS 4 +The changed rectangle is limited by the zoom base +.RE +.PP + +.SS "void QwtPlotZoomer::moveTo (const QPointF &pos)\fC [virtual, slot]\fP"Move the the current zoom rectangle. +.PP +\fBParameters:\fP +.RS 4 +\fIpos\fP New position +.RE +.PP +\fBSee also:\fP +.RS 4 +QRectF::moveTo() +.RE +.PP +\fBNote:\fP +.RS 4 +The changed rectangle is limited by the zoom base +.RE +.PP + +.SS "void QwtPlotZoomer::rescale ()\fC [protected, virtual]\fP"Adjust the observed plot to \fBzoomRect()\fP +.PP +\fBNote:\fP +.RS 4 +Initiates \fBQwtPlot::replot\fP +.RE +.PP + +.SS "void QwtPlotZoomer::setAxis (intxAxis, intyAxis)\fC [virtual]\fP"Reinitialize the axes, and set the zoom base to their scales. +.PP +\fBParameters:\fP +.RS 4 +\fIxAxis\fP X axis +.br +\fIyAxis\fP Y axis +.RE +.PP + +.PP +Reimplemented from \fBQwtPlotPicker\fP. +.SS "void QwtPlotZoomer::setMaxStackDepth (intdepth)" +.PP +Limit the number of recursive zoom operations to depth. A value of -1 set the depth to unlimited, 0 disables zooming. If the current zoom rectangle is below depth, the plot is unzoomed. +.PP +\fBParameters:\fP +.RS 4 +\fIdepth\fP Maximum for the stack depth +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBmaxStackDepth()\fP +.RE +.PP +\fBNote:\fP +.RS 4 +depth doesn't include the zoom base, so \fBzoomStack()\fP.count() might be \fBmaxStackDepth()\fP + 1. +.RE +.PP + +.SS "void QwtPlotZoomer::setZoomBase (booldoReplot = \fCtrue\fP)\fC [virtual]\fP"Reinitialized the zoom stack with \fBscaleRect()\fP as base. +.PP +\fBParameters:\fP +.RS 4 +\fIdoReplot\fP Call replot for the attached plot before initializing the zoomer with its scales. This might be necessary, when the plot is in a state with pending scale changes. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBzoomBase()\fP, \fBscaleRect()\fP \fBQwtPlot::autoReplot()\fP, \fBQwtPlot::replot()\fP. +.RE +.PP + +.SS "void QwtPlotZoomer::setZoomBase (const QRectF &base)\fC [virtual]\fP" +.PP +Set the initial size of the zoomer. base is united with the current \fBscaleRect()\fP and the zoom stack is reinitalized with it as zoom base. plot is zoomed to \fBscaleRect()\fP. +.PP +\fBParameters:\fP +.RS 4 +\fIbase\fP Zoom base +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBzoomBase()\fP, \fBscaleRect()\fP +.RE +.PP + +.SS "void QwtPlotZoomer::setZoomStack (const QStack< QRectF > &zoomStack, intzoomRectIndex = \fC-1\fP)" +.PP +Assign a zoom stack. In combination with other types of navigation it might be useful to modify to manipulate the complete zoom stack. +.PP +\fBParameters:\fP +.RS 4 +\fIzoomStack\fP New zoom stack +.br +\fIzoomRectIndex\fP Index of the current position of zoom stack. In case of -1 the current position is at the top of the stack. +.RE +.PP +\fBNote:\fP +.RS 4 +The zoomed signal might be emitted. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBzoomStack()\fP, \fBzoomRectIndex()\fP +.RE +.PP + +.SS "void QwtPlotZoomer::widgetKeyPressEvent (QKeyEvent *ke)\fC [protected, virtual]\fP"Qt::Key_Plus zooms in, Qt::Key_Minus zooms out one position on the zoom stack, Qt::Key_Escape zooms out to the zoom base. +.PP +Changes the current position on the stack, but doesn't pop any rectangle. +.PP +\fBNote:\fP +.RS 4 +The keys codes can be changed, using \fBQwtEventPattern::setKeyPattern\fP: 3, 4, 5 +.RE +.PP + +.PP +Reimplemented from \fBQwtPicker\fP. +.SS "void QwtPlotZoomer::widgetMouseReleaseEvent (QMouseEvent *me)\fC [protected, virtual]\fP"Qt::MidButton zooms out one position on the zoom stack, Qt::RightButton to the zoom base. +.PP +Changes the current position on the stack, but doesn't pop any rectangle. +.PP +\fBNote:\fP +.RS 4 +The mouse events can be changed, using \fBQwtEventPattern::setMousePattern\fP: 2, 1 +.RE +.PP + +.PP +Reimplemented from \fBQwtPicker\fP. +.SS "void QwtPlotZoomer::zoom (const QRectF &rect)\fC [virtual, slot]\fP" +.PP +Zoom in. Clears all rectangles above the current position of the zoom stack and pushs the normalized rect on it. +.PP +\fBNote:\fP +.RS 4 +If the maximal stack depth is reached, zoom is ignored. +.PP +The zoomed signal is emitted. +.RE +.PP + +.SS "void QwtPlotZoomer::zoom (intoffset)\fC [virtual, slot]\fP" +.PP +Zoom in or out. Activate a rectangle on the zoom stack with an offset relative to the current position. Negative values of offest will zoom out, positive zoom in. A value of 0 zooms out to the zoom base. +.PP +\fBParameters:\fP +.RS 4 +\fIoffset\fP Offset relative to the current position of the zoom stack. +.RE +.PP +\fBNote:\fP +.RS 4 +The zoomed signal is emitted. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBzoomRectIndex()\fP +.RE +.PP + +.SS "QRectF QwtPlotZoomer::zoomBase () const"\fBReturns:\fP +.RS 4 +Initial rectangle of the zoomer +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetZoomBase()\fP, \fBzoomRect()\fP +.RE +.PP + +.SS "void QwtPlotZoomer::zoomed (const QRectF &rect)\fC [signal]\fP"A signal emitting the \fBzoomRect()\fP, when the plot has been zoomed in or out. +.PP +\fBParameters:\fP +.RS 4 +\fIrect\fP Current zoom rectangle. +.RE +.PP + +.SS "QRectF QwtPlotZoomer::zoomRect () const"Rectangle at the current position on the zoom stack. +.PP +\fBSee also:\fP +.RS 4 +\fBzoomRectIndex()\fP, \fBscaleRect()\fP. +.RE +.PP + +.SS "uint QwtPlotZoomer::zoomRectIndex () const"\fBReturns:\fP +.RS 4 +Index of current position of zoom stack. +.RE +.PP + +.SS "const QStack< QRectF > & QwtPlotZoomer::zoomStack () const"Return the zoom stack. \fBzoomStack()\fP[0] is the zoom base, \fBzoomStack()\fP[1] the first zoomed rectangle. +.PP +\fBSee also:\fP +.RS 4 +\fBsetZoomStack()\fP, \fBzoomRectIndex()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPoint3D.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPoint3D.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPoint3D.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPoint3D.3 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,129 @@ +.TH "QwtPoint3D" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPoint3D \- +.PP +\fBQwtPoint3D\fP class defines a 3D point in double coordinates. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPoint3D\fP ()" +.br +.ti -1c +.RI "\fBQwtPoint3D\fP (double x, double y, double z)" +.br +.ti -1c +.RI "\fBQwtPoint3D\fP (const \fBQwtPoint3D\fP &)" +.br +.ti -1c +.RI "\fBQwtPoint3D\fP (const QPointF &)" +.br +.ti -1c +.RI "bool \fBisNull\fP () const " +.br +.ti -1c +.RI "double \fBx\fP () const " +.br +.ti -1c +.RI "double \fBy\fP () const " +.br +.ti -1c +.RI "double \fBz\fP () const " +.br +.ti -1c +.RI "double & \fBrx\fP ()" +.br +.ti -1c +.RI "double & \fBry\fP ()" +.br +.ti -1c +.RI "double & \fBrz\fP ()" +.br +.ti -1c +.RI "void \fBsetX\fP (double x)" +.br +.ti -1c +.RI "void \fBsetY\fP (double y)" +.br +.ti -1c +.RI "void \fBsetZ\fP (double y)" +.br +.ti -1c +.RI "QPointF \fBtoPoint\fP () const " +.br +.ti -1c +.RI "bool \fBoperator==\fP (const \fBQwtPoint3D\fP &) const " +.br +.ti -1c +.RI "bool \fBoperator!=\fP (const \fBQwtPoint3D\fP &) const " +.br +.in -1c +.SH "Detailed Description" +.PP +\fBQwtPoint3D\fP class defines a 3D point in double coordinates. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPoint3D::QwtPoint3D ()\fC [inline]\fP"Constructs a null point. +.PP +\fBSee also:\fP +.RS 4 +\fBisNull()\fP +.RE +.PP + +.SS "QwtPoint3D::QwtPoint3D (doublex, doubley, doublez = \fC0.0\fP)\fC [inline]\fP" +.PP +Constructs a point with coordinates specified by x, y and z. +.SS "QwtPoint3D::QwtPoint3D (const \fBQwtPoint3D\fP &other)\fC [inline]\fP"Copy constructor. Constructs a point using the values of the point specified. +.SS "QwtPoint3D::QwtPoint3D (const QPointF &other)\fC [inline]\fP"Constructs a point with x and y coordinates from a 2D point, and a z coordinate of 0. +.SH "Member Function Documentation" +.PP +.SS "bool QwtPoint3D::isNull () const\fC [inline]\fP"Returns true if the point is null; otherwise returns false. +.PP +A point is considered to be null if x, y and z-coordinates are equal to zero. +.SS "bool QwtPoint3D::operator!= (const \fBQwtPoint3D\fP &other) const\fC [inline]\fP" +.PP +Returns true if this rect and other are different; otherwise returns false. +.SS "bool QwtPoint3D::operator== (const \fBQwtPoint3D\fP &other) const\fC [inline]\fP" +.PP +Returns true if this point and other are equal; otherwise returns false. +.SS "double & QwtPoint3D::rx ()\fC [inline]\fP" +.PP +Returns a reference to the x-coordinate of the point. +.SS "double & QwtPoint3D::ry ()\fC [inline]\fP" +.PP +Returns a reference to the y-coordinate of the point. +.SS "double & QwtPoint3D::rz ()\fC [inline]\fP" +.PP +Returns a reference to the z-coordinate of the point. +.SS "void QwtPoint3D::setX (doublex)\fC [inline]\fP" +.PP +Sets the x-coordinate of the point to the value specified by x. +.SS "void QwtPoint3D::setY (doubley)\fC [inline]\fP" +.PP +Sets the y-coordinate of the point to the value specified by y. +.SS "void QwtPoint3D::setZ (doubley)\fC [inline]\fP" +.PP +Sets the z-coordinate of the point to the value specified by z. +.SS "QPointF QwtPoint3D::toPoint () const\fC [inline]\fP"Rounds 2D point, where the z coordinate is dropped. +.SS "double QwtPoint3D::x () const\fC [inline]\fP" +.PP +Returns the x-coordinate of the point. +.SS "double QwtPoint3D::y () const\fC [inline]\fP" +.PP +Returns the y-coordinate of the point. +.SS "double QwtPoint3D::z () const\fC [inline]\fP" +.PP +Returns the z-coordinate of the point. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPoint3DSeriesData.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPoint3DSeriesData.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPoint3DSeriesData.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPoint3DSeriesData.3 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,56 @@ +.TH "QwtPoint3DSeriesData" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPoint3DSeriesData \- +.PP +Interface for iterating over an array of 3D points. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtArraySeriesData< QwtPoint3D >\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPoint3DSeriesData\fP (const QVector< \fBQwtPoint3D\fP > &=QVector< \fBQwtPoint3D\fP >())" +.br +.ti -1c +.RI "virtual QRectF \fBboundingRect\fP () const " +.br +.in -1c +.SH "Detailed Description" +.PP +Interface for iterating over an array of 3D points. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPoint3DSeriesData::QwtPoint3DSeriesData (const QVector< \fBQwtPoint3D\fP > &samples = \fCQVector<\fBQwtPoint3D\fP>()\fP)"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fIsamples\fP Samples +.RE +.PP + +.SH "Member Function Documentation" +.PP +.SS "QRectF QwtPoint3DSeriesData::boundingRect () const\fC [virtual]\fP" +.PP +Calculate the bounding rect. The bounding rectangle is calculated once by iterating over all points and is stored for all following requests. +.PP +\fBReturns:\fP +.RS 4 +Bounding rectangle +.RE +.PP + +.PP +Implements \fBQwtSeriesData< QwtPoint3D >\fP. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPointArrayData.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPointArrayData.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPointArrayData.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPointArrayData.3 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,130 @@ +.TH "QwtPointArrayData" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPointArrayData \- +.PP +Interface for iterating over two QVector objects. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtSeriesData< QPointF >\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPointArrayData\fP (const QVector< double > &x, const QVector< double > &y)" +.br +.ti -1c +.RI "\fBQwtPointArrayData\fP (const double *x, const double *y, size_t size)" +.br +.ti -1c +.RI "virtual QRectF \fBboundingRect\fP () const " +.br +.ti -1c +.RI "virtual size_t \fBsize\fP () const " +.br +.ti -1c +.RI "virtual QPointF \fBsample\fP (size_t i) const " +.br +.ti -1c +.RI "const QVector< double > & \fBxData\fP () const " +.br +.ti -1c +.RI "const QVector< double > & \fByData\fP () const " +.br +.in -1c +.SH "Detailed Description" +.PP +Interface for iterating over two QVector objects. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPointArrayData::QwtPointArrayData (const QVector< double > &x, const QVector< double > &y)"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fIx\fP Array of x values +.br +\fIy\fP Array of y values +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtPlotCurve::setData()\fP, \fBQwtPlotCurve::setSamples()\fP +.RE +.PP + +.SS "QwtPointArrayData::QwtPointArrayData (const double *x, const double *y, size_tsize)"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fIx\fP Array of x values +.br +\fIy\fP Array of y values +.br +\fIsize\fP Size of the x and y arrays +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtPlotCurve::setData()\fP, \fBQwtPlotCurve::setSamples()\fP +.RE +.PP + +.SH "Member Function Documentation" +.PP +.SS "QRectF QwtPointArrayData::boundingRect () const\fC [virtual]\fP" +.PP +Calculate the bounding rect. The bounding rectangle is calculated once by iterating over all points and is stored for all following requests. +.PP +\fBReturns:\fP +.RS 4 +Bounding rectangle +.RE +.PP + +.PP +Implements \fBQwtSeriesData< QPointF >\fP. +.SS "QPointF QwtPointArrayData::sample (size_ti) const\fC [virtual]\fP"Return the sample at position i +.PP +\fBParameters:\fP +.RS 4 +\fIi\fP Index +.RE +.PP +\fBReturns:\fP +.RS 4 +Sample at position i +.RE +.PP + +.PP +Implements \fBQwtSeriesData< QPointF >\fP. +.SS "size_t QwtPointArrayData::size () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +Size of the data set +.RE +.PP + +.PP +Implements \fBQwtSeriesData< QPointF >\fP. +.SS "const QVector< double > & QwtPointArrayData::xData () const"\fBReturns:\fP +.RS 4 +Array of the x-values +.RE +.PP + +.SS "const QVector< double > & QwtPointArrayData::yData () const"\fBReturns:\fP +.RS 4 +Array of the y-values +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPointPolar.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPointPolar.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPointPolar.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPointPolar.3 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,188 @@ +.TH "QwtPointPolar" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPointPolar \- +.PP +A point in polar coordinates. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPointPolar\fP ()" +.br +.ti -1c +.RI "\fBQwtPointPolar\fP (double azimuth, double radius)" +.br +.ti -1c +.RI "\fBQwtPointPolar\fP (const \fBQwtPointPolar\fP &)" +.br +.ti -1c +.RI "\fBQwtPointPolar\fP (const QPointF &)" +.br +.ti -1c +.RI "void \fBsetPoint\fP (const QPointF &)" +.br +.ti -1c +.RI "QPointF \fBtoPoint\fP () const " +.br +.ti -1c +.RI "bool \fBisValid\fP () const " +.br +.ti -1c +.RI "bool \fBisNull\fP () const " +.br +.ti -1c +.RI "double \fBradius\fP () const " +.br +.ti -1c +.RI "double \fBazimuth\fP () const " +.br +.ti -1c +.RI "double & \fBrRadius\fP ()" +.br +.ti -1c +.RI "double & \fBrAzimuth\fP ()" +.br +.ti -1c +.RI "void \fBsetRadius\fP (double)" +.br +.ti -1c +.RI "void \fBsetAzimuth\fP (double)" +.br +.ti -1c +.RI "bool \fBoperator==\fP (const \fBQwtPointPolar\fP &) const " +.br +.ti -1c +.RI "bool \fBoperator!=\fP (const \fBQwtPointPolar\fP &) const " +.br +.ti -1c +.RI "\fBQwtPointPolar\fP \fBnormalized\fP () const " +.br +.in -1c +.SH "Detailed Description" +.PP +A point in polar coordinates. + +In polar coordinates a point is determined by an angle and a distance. See http://en.wikipedia.org/wiki/Polar_coordinate_system +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPointPolar::QwtPointPolar ()\fC [inline]\fP"Constructs a null point, with a radius and azimuth set to 0.0. +.PP +\fBSee also:\fP +.RS 4 +QPointF::isNull +.RE +.PP + +.SS "QwtPointPolar::QwtPointPolar (doubleazimuth, doubleradius)\fC [inline]\fP"Constructs a point with coordinates specified by radius and azimuth. +.PP +\fBParameters:\fP +.RS 4 +\fIazimuth\fP Azimuth +.br +\fIradius\fP Radius +.RE +.PP + +.SS "QwtPointPolar::QwtPointPolar (const \fBQwtPointPolar\fP &other)\fC [inline]\fP"Constructs a point using the values of the point specified. +.PP +\fBParameters:\fP +.RS 4 +\fIother\fP Other point +.RE +.PP + +.SS "QwtPointPolar::QwtPointPolar (const QPointF &p)"Convert and assign values from a point in Cartesian coordinates +.PP +\fBParameters:\fP +.RS 4 +\fIp\fP Point in Cartesian coordinates +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetPoint()\fP, \fBtoPoint()\fP +.RE +.PP + +.SH "Member Function Documentation" +.PP +.SS "double QwtPointPolar::azimuth () const\fC [inline]\fP" +.PP +Returns the azimuth. +.SS "bool QwtPointPolar::isNull () const\fC [inline]\fP" +.PP +Returns true if \fBradius()\fP >= 0.0. +.SS "bool QwtPointPolar::isValid () const\fC [inline]\fP" +.PP +Returns true if \fBradius()\fP >= 0.0. +.SS "\fBQwtPointPolar\fP QwtPointPolar::normalized () const"Normalize radius and azimuth +.PP +When the radius is < 0.0 it is set to 0.0. The azimuth is a value >= 0.0 and < 2 * M_PI. +.SS "bool QwtPointPolar::operator!= (const \fBQwtPointPolar\fP &other) const"Returns true if point1 is not equal to point2; otherwise returns false. +.PP +Two points are equal to each other if radius and azimuth-coordinates are the same. Points are not equal, when the azimuth differs, but other.azimuth() == \fBazimuth()\fP % (2 * PI). +.PP +\fBSee also:\fP +.RS 4 +\fBnormalized()\fP +.RE +.PP + +.SS "bool QwtPointPolar::operator== (const \fBQwtPointPolar\fP &other) const"Returns true if point1 is equal to point2; otherwise returns false. +.PP +Two points are equal to each other if radius and azimuth-coordinates are the same. Points are not equal, when the azimuth differs, but other.azimuth() == \fBazimuth()\fP % (2 * PI). +.PP +\fBSee also:\fP +.RS 4 +\fBnormalized()\fP +.RE +.PP + +.SS "double QwtPointPolar::radius () const\fC [inline]\fP" +.PP +Returns the radius. +.SS "double & QwtPointPolar::rAzimuth ()\fC [inline]\fP" +.PP +Returns the azimuth. +.SS "double & QwtPointPolar::rRadius ()\fC [inline]\fP" +.PP +Returns the radius. +.SS "void QwtPointPolar::setAzimuth (doubleazimuth)\fC [inline]\fP" +.PP +Sets the atimuth to atimuth. +.SS "void QwtPointPolar::setPoint (const QPointF &p)"Convert and assign values from a point in Cartesian coordinates +.PP +\fBParameters:\fP +.RS 4 +\fIp\fP Point in Cartesian coordinates +.RE +.PP + +.SS "void QwtPointPolar::setRadius (doubleradius)\fC [inline]\fP" +.PP +Sets the radius to radius. +.SS "QPointF QwtPointPolar::toPoint () const"Convert and return values in Cartesian coordinates +.PP +\fBNote:\fP +.RS 4 +Invalid or null points will be returned as QPointF(0.0, 0.0) +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBisValid()\fP, \fBisNull()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPointSeriesData.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPointSeriesData.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPointSeriesData.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtPointSeriesData.3 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,56 @@ +.TH "QwtPointSeriesData" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtPointSeriesData \- +.PP +Interface for iterating over an array of points. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtArraySeriesData< QPointF >\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtPointSeriesData\fP (const QVector< QPointF > &=QVector< QPointF >())" +.br +.ti -1c +.RI "virtual QRectF \fBboundingRect\fP () const " +.br +.in -1c +.SH "Detailed Description" +.PP +Interface for iterating over an array of points. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtPointSeriesData::QwtPointSeriesData (const QVector< QPointF > &samples = \fCQVector()\fP)"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fIsamples\fP Samples +.RE +.PP + +.SH "Member Function Documentation" +.PP +.SS "QRectF QwtPointSeriesData::boundingRect () const\fC [virtual]\fP" +.PP +Calculate the bounding rect. The bounding rectangle is calculated once by iterating over all points and is stored for all following requests. +.PP +\fBReturns:\fP +.RS 4 +Bounding rectangle +.RE +.PP + +.PP +Implements \fBQwtSeriesData< QPointF >\fP. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtRasterData.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtRasterData.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtRasterData.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtRasterData.3 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,204 @@ +.TH "QwtRasterData" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtRasterData \- +.PP +\fBQwtRasterData\fP defines an interface to any type of raster data. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherited by \fBQwtMatrixRasterData\fP. +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBConrecFlag\fP { \fBIgnoreAllVerticesOnLevel\fP = 0x01, \fBIgnoreOutOfRange\fP = 0x02 }" +.br +.ti -1c +.RI "typedef QMap< double, QPolygonF > \fBContourLines\fP" +.br +.ti -1c +.RI "typedef QFlags< \fBConrecFlag\fP > \fBConrecFlags\fP" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtRasterData\fP ()" +.br +.ti -1c +.RI "virtual \fB~QwtRasterData\fP ()" +.br +.ti -1c +.RI "virtual void \fBsetInterval\fP (Qt::Axis, const \fBQwtInterval\fP &)" +.br +.ti -1c +.RI "const \fBQwtInterval\fP & \fBinterval\fP (Qt::Axis) const " +.br +.ti -1c +.RI "virtual QRectF \fBpixelHint\fP (const QRectF &) const " +.br +.ti -1c +.RI "virtual void \fBinitRaster\fP (const QRectF &, const QSize &raster)" +.br +.ti -1c +.RI "virtual void \fBdiscardRaster\fP ()" +.br +.ti -1c +.RI "virtual double \fBvalue\fP (double x, double y) const =0" +.br +.ti -1c +.RI "virtual \fBContourLines\fP \fBcontourLines\fP (const QRectF &rect, const QSize &raster, const QList< double > &levels, \fBConrecFlags\fP) const " +.br +.in -1c +.SH "Detailed Description" +.PP +\fBQwtRasterData\fP defines an interface to any type of raster data. + +\fBQwtRasterData\fP is an abstract interface, that is used by \fBQwtPlotRasterItem\fP to find the values at the pixels of its raster. +.PP +Often a raster item is used to display values from a matrix. Then the derived raster data class needs to implement some sort of resampling, that maps the raster of the matrix into the requested raster of the raster item ( depending on resolution and scales of the canvas ). +.SH "Member Typedef Documentation" +.PP +.SS "typedef QFlags<\fBConrecFlag\fP> \fBQwtRasterData::ConrecFlags\fP" +.PP +Flags to modify the contour algorithm. +.SS "typedef QMap \fBQwtRasterData::ContourLines\fP" +.PP +Contour lines. +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtRasterData::ConrecFlag\fP" +.PP +Flags to modify the contour algorithm. +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIIgnoreAllVerticesOnLevel \fP\fP +Ignore all verices on the same level. +.TP +\fB\fIIgnoreOutOfRange \fP\fP +Ignore all values, that are out of range. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtRasterData::QwtRasterData ()" +.PP +Constructor. +.SS "QwtRasterData::~QwtRasterData ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "\fBQwtRasterData::ContourLines\fP QwtRasterData::contourLines (const QRectF &rect, const QSize &raster, const QList< double > &levels, \fBConrecFlags\fPflags) const\fC [virtual]\fP"Calculate contour lines +.PP +An adaption of CONREC, a simple contouring algorithm. http://local.wasp.uwa.edu.au/~pbourke/papers/conrec/ +.SS "void QwtRasterData::discardRaster ()\fC [virtual]\fP" +.PP +Discard a raster. After the composition of an image \fBQwtPlotSpectrogram\fP calls \fBdiscardRaster()\fP. +.PP +The default implementation does nothing, but if data has been loaded in \fBinitRaster()\fP, it could deleted now. +.PP +\fBSee also:\fP +.RS 4 +\fBinitRaster()\fP, \fBvalue()\fP +.RE +.PP + +.SS "void QwtRasterData::initRaster (const QRectF &area, const QSize &raster)\fC [virtual]\fP" +.PP +Initialize a raster. Before the composition of an image \fBQwtPlotSpectrogram\fP calls initRaster, announcing the area and its resolution that will be requested. +.PP +The default implementation does nothing, but for data sets that are stored in files, it might be good idea to reimplement initRaster, where the data is resampled and loaded into memory. +.PP +\fBParameters:\fP +.RS 4 +\fIarea\fP Area of the raster +.br +\fIraster\fP Number of horizontal and vertical pixels +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBinitRaster()\fP, \fBvalue()\fP +.RE +.PP + +.SS "const \fBQwtInterval\fP & QwtRasterData::interval (Qt::Axisaxis) const\fC [inline]\fP"\fBReturns:\fP +.RS 4 +Bounding interval for a axis +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetInterval\fP +.RE +.PP + +.SS "QRectF QwtRasterData::pixelHint (const QRectF &area) const\fC [virtual]\fP" +.PP +Pixel hint. \fBpixelHint()\fP returns the geometry of a pixel, that can be used to calculate the resolution and alignment of the plot item, that is representing the data. +.PP +Width and height of the hint need to be the horizontal and vertical distances between 2 neighboured points. The center of the hint has to be the position of any point ( it doesn't matter which one ). +.PP +An empty hint indicates, that there are values for any detail level. +.PP +Limiting the resolution of the image might significantly improve the performance and heavily reduce the amount of memory when rendering a QImage from the raster data. +.PP +The default implementation returns an empty rectangle recommending to render in target device ( f.e. screen ) resolution. +.PP +\fBParameters:\fP +.RS 4 +\fIarea\fP In most implementations the resolution of the data doesn't depend on the requested area. +.RE +.PP +\fBReturns:\fP +.RS 4 +Bounding rectangle of a pixel +.RE +.PP + +.PP +Reimplemented in \fBQwtMatrixRasterData\fP. +.SS "void QwtRasterData::setInterval (Qt::Axisaxis, const \fBQwtInterval\fP &interval)\fC [virtual]\fP"Set the bounding interval for the x, y or z coordinates. +.PP +\fBParameters:\fP +.RS 4 +\fIaxis\fP Axis +.br +\fIinterval\fP Bounding interval +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBinterval()\fP +.RE +.PP + +.PP +Reimplemented in \fBQwtMatrixRasterData\fP. +.SS "virtual double QwtRasterData::value (doublex, doubley) const\fC [pure virtual]\fP"\fBReturns:\fP +.RS 4 +the value at a raster position +.RE +.PP +\fBParameters:\fP +.RS 4 +\fIx\fP X value in plot coordinates +.br +\fIy\fP Y value in plot coordinates +.RE +.PP + +.PP +Implemented in \fBQwtMatrixRasterData\fP. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtRichTextEngine.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtRichTextEngine.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtRichTextEngine.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtRichTextEngine.3 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,140 @@ +.TH "QwtRichTextEngine" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtRichTextEngine \- +.PP +A text engine for Qt rich texts. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtTextEngine\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtRichTextEngine\fP ()" +.br +.ti -1c +.RI "virtual double \fBheightForWidth\fP (const QFont &font, int flags, const QString &text, double width) const " +.br +.ti -1c +.RI "virtual QSizeF \fBtextSize\fP (const QFont &font, int flags, const QString &text) const " +.br +.ti -1c +.RI "virtual void \fBdraw\fP (QPainter *painter, const QRectF &rect, int flags, const QString &text) const " +.br +.ti -1c +.RI "virtual bool \fBmightRender\fP (const QString &) const " +.br +.ti -1c +.RI "virtual void \fBtextMargins\fP (const QFont &, const QString &, double &left, double &right, double &top, double &bottom) const " +.br +.in -1c +.SH "Detailed Description" +.PP +A text engine for Qt rich texts. + +\fBQwtRichTextEngine\fP renders Qt rich texts using the classes of the Scribe framework of Qt. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtRichTextEngine::QwtRichTextEngine ()" +.PP +Constructor. +.SH "Member Function Documentation" +.PP +.SS "void QwtRichTextEngine::draw (QPainter *painter, const QRectF &rect, intflags, const QString &text) const\fC [virtual]\fP"Draw the text in a clipping rectangle +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIrect\fP Clipping rectangle +.br +\fIflags\fP Bitwise OR of the flags like in for QPainter::drawText +.br +\fItext\fP Text to be rendered +.RE +.PP + +.PP +Implements \fBQwtTextEngine\fP. +.SS "double QwtRichTextEngine::heightForWidth (const QFont &font, intflags, const QString &text, doublewidth) const\fC [virtual]\fP"Find the height for a given width +.PP +\fBParameters:\fP +.RS 4 +\fIfont\fP Font of the text +.br +\fIflags\fP Bitwise OR of the flags used like in QPainter::drawText +.br +\fItext\fP Text to be rendered +.br +\fIwidth\fP Width +.RE +.PP +\fBReturns:\fP +.RS 4 +Calculated height +.RE +.PP + +.PP +Implements \fBQwtTextEngine\fP. +.SS "bool QwtRichTextEngine::mightRender (const QString &text) const\fC [virtual]\fP"Test if a string can be rendered by this text engine +.PP +\fBParameters:\fP +.RS 4 +\fItext\fP Text to be tested +.RE +.PP +\fBReturns:\fP +.RS 4 +QStyleSheet::mightBeRichText(text); +.RE +.PP + +.PP +Implements \fBQwtTextEngine\fP. +.SS "void QwtRichTextEngine::textMargins (const QFont &, const QString &, double &left, double &right, double &top, double &bottom) const\fC [virtual]\fP"Return margins around the texts +.PP +\fBParameters:\fP +.RS 4 +\fIleft\fP Return 0 +.br +\fIright\fP Return 0 +.br +\fItop\fP Return 0 +.br +\fIbottom\fP Return 0 +.RE +.PP + +.PP +Implements \fBQwtTextEngine\fP. +.SS "QSizeF QwtRichTextEngine::textSize (const QFont &font, intflags, const QString &text) const\fC [virtual]\fP"Returns the size, that is needed to render text +.PP +\fBParameters:\fP +.RS 4 +\fIfont\fP Font of the text +.br +\fIflags\fP Bitwise OR of the flags used like in QPainter::drawText +.br +\fItext\fP Text to be rendered +.RE +.PP +\fBReturns:\fP +.RS 4 +Caluclated size +.RE +.PP + +.PP +Implements \fBQwtTextEngine\fP. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtRoundScaleDraw.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtRoundScaleDraw.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtRoundScaleDraw.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtRoundScaleDraw.3 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,223 @@ +.TH "QwtRoundScaleDraw" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtRoundScaleDraw \- +.PP +A class for drawing round scales. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtAbstractScaleDraw\fP. +.PP +Inherited by \fBQwtDialScaleDraw\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtRoundScaleDraw\fP ()" +.br +.ti -1c +.RI "virtual \fB~QwtRoundScaleDraw\fP ()" +.br +.ti -1c +.RI "void \fBsetRadius\fP (int radius)" +.br +.ti -1c +.RI "int \fBradius\fP () const " +.br +.ti -1c +.RI "void \fBmoveCenter\fP (double x, double y)" +.br +.ti -1c +.RI "void \fBmoveCenter\fP (const QPointF &)" +.br +.ti -1c +.RI "QPointF \fBcenter\fP () const " +.br +.ti -1c +.RI "void \fBsetAngleRange\fP (double angle1, double angle2)" +.br +.ti -1c +.RI "virtual double \fBextent\fP (const QFont &) const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual void \fBdrawTick\fP (QPainter *p, double val, double len) const " +.br +.ti -1c +.RI "virtual void \fBdrawBackbone\fP (QPainter *p) const " +.br +.ti -1c +.RI "virtual void \fBdrawLabel\fP (QPainter *p, double val) const " +.br +.in -1c +.SH "Detailed Description" +.PP +A class for drawing round scales. + +\fBQwtRoundScaleDraw\fP can be used to draw round scales. The circle segment can be adjusted by \fBQwtRoundScaleDraw::setAngleRange()\fP. The geometry of the scale can be specified with \fBQwtRoundScaleDraw::moveCenter()\fP and \fBQwtRoundScaleDraw::setRadius()\fP. +.PP +After a scale division has been specified as a \fBQwtScaleDiv\fP object using \fBQwtAbstractScaleDraw::setScaleDiv(const QwtScaleDiv &s)\fP, the scale can be drawn with the \fBQwtAbstractScaleDraw::draw()\fP member. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtRoundScaleDraw::QwtRoundScaleDraw ()" +.PP +Constructor. The range of the scale is initialized to [0, 100], The center is set to (50, 50) with a radius of 50. The angle range is set to [-135, 135]. +.SS "QwtRoundScaleDraw::~QwtRoundScaleDraw ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "QPointF QwtRoundScaleDraw::center () const" +.PP +Get the center of the scale. +.SS "void QwtRoundScaleDraw::drawBackbone (QPainter *painter) const\fC [protected, virtual]\fP"Draws the baseline of the scale +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBdrawTick()\fP, \fBdrawLabel()\fP +.RE +.PP + +.PP +Implements \fBQwtAbstractScaleDraw\fP. +.SS "void QwtRoundScaleDraw::drawLabel (QPainter *painter, doublevalue) const\fC [protected, virtual]\fP"Draws the label for a major scale tick +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIvalue\fP Value +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBdrawTick()\fP, \fBdrawBackbone()\fP +.RE +.PP + +.PP +Implements \fBQwtAbstractScaleDraw\fP. +.SS "void QwtRoundScaleDraw::drawTick (QPainter *painter, doublevalue, doublelen) const\fC [protected, virtual]\fP"Draw a tick +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIvalue\fP Value of the tick +.br +\fIlen\fP Lenght of the tick +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBdrawBackbone()\fP, \fBdrawLabel()\fP +.RE +.PP + +.PP +Implements \fBQwtAbstractScaleDraw\fP. +.SS "double QwtRoundScaleDraw::extent (const QFont &font) const\fC [virtual]\fP"Calculate the extent of the scale +.PP +The extent is the distance between the baseline to the outermost pixel of the scale draw. \fBradius()\fP + \fBextent()\fP is an upper limit for the radius of the bounding circle. +.PP +\fBParameters:\fP +.RS 4 +\fIfont\fP Font used for painting the labels +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetMinimumExtent()\fP, \fBminimumExtent()\fP +.RE +.PP +\fBWarning:\fP +.RS 4 +The implemented algo is not too smart and calculates only an upper limit, that might be a few pixels too large +.RE +.PP + +.PP +Implements \fBQwtAbstractScaleDraw\fP. +.SS "void QwtRoundScaleDraw::moveCenter (doublex, doubley)\fC [inline]\fP" +.PP +Move the center of the scale draw, leaving the radius unchanged. +.SS "void QwtRoundScaleDraw::moveCenter (const QPointF ¢er)"Move the center of the scale draw, leaving the radius unchanged +.PP +\fBParameters:\fP +.RS 4 +\fIcenter\fP New center +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetRadius()\fP +.RE +.PP + +.SS "int QwtRoundScaleDraw::radius () const"Get the radius +.PP +Radius is the radius of the backbone without ticks and labels. +.PP +\fBSee also:\fP +.RS 4 +\fBsetRadius()\fP, \fBextent()\fP +.RE +.PP + +.SS "void QwtRoundScaleDraw::setAngleRange (doubleangle1, doubleangle2)" +.PP +Adjust the baseline circle segment for round scales. The baseline will be drawn from min(angle1,angle2) to max(angle1, angle2). The default setting is [ -135, 135 ]. An angle of 0 degrees corresponds to the 12 o'clock position, and positive angles count in a clockwise direction. +.PP +\fBParameters:\fP +.RS 4 +\fIangle1\fP +.br +\fIangle2\fP boundaries of the angle interval in degrees. +.RE +.PP +\fBWarning:\fP +.RS 4 +.PD 0 +.IP "\(bu" 2 +The angle range is limited to [-360, 360] degrees. Angles exceeding this range will be clipped. +.IP "\(bu" 2 +For angles more than 359 degrees above or below min(angle1, angle2), scale marks will not be drawn. +.IP "\(bu" 2 +If you need a counterclockwise scale, use QwtScaleDiv::setRange +.PP +.RE +.PP + +.SS "void QwtRoundScaleDraw::setRadius (intradius)"Change of radius the scale +.PP +Radius is the radius of the backbone without ticks and labels. +.PP +\fBParameters:\fP +.RS 4 +\fIradius\fP New Radius +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBmoveCenter()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSamplingThread.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSamplingThread.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSamplingThread.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSamplingThread.3 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,136 @@ +.TH "QwtSamplingThread" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtSamplingThread \- +.PP +A thread collecting samples at regular intervals. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.SS "Public Slots" + +.in +1c +.ti -1c +.RI "void \fBsetInterval\fP (double interval)" +.br +.ti -1c +.RI "void \fBstop\fP ()" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "virtual \fB~QwtSamplingThread\fP ()" +.br +.ti -1c +.RI "double \fBinterval\fP () const " +.br +.ti -1c +.RI "double \fBelapsed\fP () const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtSamplingThread\fP (QObject *parent=NULL)" +.br +.ti -1c +.RI "virtual void \fBrun\fP ()" +.br +.ti -1c +.RI "virtual void \fBsample\fP (double elapsed)=0" +.br +.in -1c +.SH "Detailed Description" +.PP +A thread collecting samples at regular intervals. + +Contiounous signals are converted into a discrete signal by collecting samples at regular intervals. A discrete signal can be displayed by a \fBQwtPlotSeriesItem\fP on a \fBQwtPlot\fP widget. +.PP +\fBQwtSamplingThread\fP starts a thread calling perodically \fBsample()\fP, to collect and store ( or emit ) a single sample. +.PP +\fBSee also:\fP +.RS 4 +\fBQwtPlotCurve\fP, \fBQwtPlotSeriesItem\fP +.RE +.PP + +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtSamplingThread::~QwtSamplingThread ()\fC [virtual]\fP" +.PP +Destructor. +.SS "QwtSamplingThread::QwtSamplingThread (QObject *parent = \fCNULL\fP)\fC [explicit, protected]\fP" +.PP +Constructor. +.SH "Member Function Documentation" +.PP +.SS "double QwtSamplingThread::elapsed () const"\fBReturns:\fP +.RS 4 +Time (in ms) since the thread was started +.RE +.PP +\fBSee also:\fP +.RS 4 +QThread::start(), \fBrun()\fP +.RE +.PP + +.SS "double QwtSamplingThread::interval () const"\fBReturns:\fP +.RS 4 +Interval (in ms), between 2 calls of \fBsample()\fP +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetInterval()\fP +.RE +.PP + +.SS "void QwtSamplingThread::run ()\fC [protected, virtual]\fP"Loop collecting samples started from QThread::start() +.PP +\fBSee also:\fP +.RS 4 +\fBstop()\fP +.RE +.PP + +.SS "virtual void QwtSamplingThread::sample (doubleelapsed)\fC [protected, pure virtual]\fP"Collect a sample +.PP +\fBParameters:\fP +.RS 4 +\fIelapsed\fP Time since the thread was started in miliseconds +.RE +.PP + +.SS "void QwtSamplingThread::setInterval (doubleinterval)\fC [slot]\fP"Change the interval (in ms), when \fBsample()\fP is called. The default interval is 1000.0 ( = 1s ) +.PP +\fBParameters:\fP +.RS 4 +\fIinterval\fP Interval +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBinterval()\fP +.RE +.PP + +.SS "void QwtSamplingThread::stop ()\fC [slot]\fP"Terminate the collecting thread +.PP +\fBSee also:\fP +.RS 4 +QThread::start(), \fBrun()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtScaleArithmetic.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtScaleArithmetic.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtScaleArithmetic.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtScaleArithmetic.3 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,103 @@ +.TH "QwtScaleArithmetic" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtScaleArithmetic \- +.PP +Arithmetic including a tolerance. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.SS "Static Public Member Functions" + +.in +1c +.ti -1c +.RI "static double \fBceilEps\fP (double value, double intervalSize)" +.br +.ti -1c +.RI "static double \fBfloorEps\fP (double value, double intervalSize)" +.br +.ti -1c +.RI "static double \fBdivideEps\fP (double interval, double steps)" +.br +.ti -1c +.RI "static double \fBceil125\fP (double x)" +.br +.ti -1c +.RI "static double \fBfloor125\fP (double x)" +.br +.in -1c +.SH "Detailed Description" +.PP +Arithmetic including a tolerance. +.SH "Member Function Documentation" +.PP +.SS "double QwtScaleArithmetic::ceil125 (doublex)\fC [static]\fP"Find the smallest value out of {1,2,5}*10^n with an integer number n which is greater than or equal to x +.PP +\fBParameters:\fP +.RS 4 +\fIx\fP Input value +.RE +.PP + +.SS "double QwtScaleArithmetic::ceilEps (doublevalue, doubleintervalSize)\fC [static]\fP"Ceil a value, relative to an interval +.PP +\fBParameters:\fP +.RS 4 +\fIvalue\fP Value to ceil +.br +\fIintervalSize\fP Interval size +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBfloorEps()\fP +.RE +.PP + +.SS "double QwtScaleArithmetic::divideEps (doubleintervalSize, doublenumSteps)\fC [static]\fP" +.PP +Divide an interval into steps. $stepSize = (intervalSize - intervalSize * 10e^{-6}) / numSteps$.PP +\fBParameters:\fP +.RS 4 +\fIintervalSize\fP Interval size +.br +\fInumSteps\fP Number of steps +.RE +.PP +\fBReturns:\fP +.RS 4 +Step size +.RE +.PP + +.SS "double QwtScaleArithmetic::floor125 (doublex)\fC [static]\fP" +.PP +Find the largest value out of {1,2,5}*10^n with an integer number n which is smaller than or equal to x. \fBParameters:\fP +.RS 4 +\fIx\fP Input value +.RE +.PP + +.SS "double QwtScaleArithmetic::floorEps (doublevalue, doubleintervalSize)\fC [static]\fP"Floor a value, relative to an interval +.PP +\fBParameters:\fP +.RS 4 +\fIvalue\fP Value to floor +.br +\fIintervalSize\fP Interval size +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBfloorEps()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtScaleDiv.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtScaleDiv.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtScaleDiv.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtScaleDiv.3 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,253 @@ +.TH "QwtScaleDiv" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtScaleDiv \- +.PP +A class representing a scale division. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBTickType\fP { \fBNoTick\fP = -1, \fBMinorTick\fP, \fBMediumTick\fP, \fBMajorTick\fP, \fBNTickTypes\fP }" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtScaleDiv\fP ()" +.br +.ti -1c +.RI "\fBQwtScaleDiv\fP (const \fBQwtInterval\fP &, QList< double >[NTickTypes])" +.br +.ti -1c +.RI "\fBQwtScaleDiv\fP (double lowerBound, double upperBound, QList< double >[NTickTypes])" +.br +.ti -1c +.RI "bool \fBoperator==\fP (const \fBQwtScaleDiv\fP &s) const " +.br +.ti -1c +.RI "bool \fBoperator!=\fP (const \fBQwtScaleDiv\fP &s) const " +.br +.ti -1c +.RI "void \fBsetInterval\fP (double lowerBound, double upperBound)" +.br +.ti -1c +.RI "void \fBsetInterval\fP (const \fBQwtInterval\fP &)" +.br +.ti -1c +.RI "\fBQwtInterval\fP \fBinterval\fP () const " +.br +.ti -1c +.RI "double \fBlowerBound\fP () const " +.br +.ti -1c +.RI "double \fBupperBound\fP () const " +.br +.ti -1c +.RI "double \fBrange\fP () const " +.br +.ti -1c +.RI "bool \fBcontains\fP (double v) const " +.br +.ti -1c +.RI "void \fBsetTicks\fP (int type, const QList< double > &)" +.br +.ti -1c +.RI "const QList< double > & \fBticks\fP (int type) const " +.br +.ti -1c +.RI "void \fBinvalidate\fP ()" +.br +.ti -1c +.RI "bool \fBisValid\fP () const " +.br +.ti -1c +.RI "void \fBinvert\fP ()" +.br +.in -1c +.SH "Detailed Description" +.PP +A class representing a scale division. + +A scale division consists of its limits and 3 list of tick values qualified as major, medium and minor ticks. +.PP +In most cases scale divisions are calculated by a \fBQwtScaleEngine\fP. +.PP +\fBSee also:\fP +.RS 4 +subDivideInto(), subDivide() +.RE +.PP + +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtScaleDiv::TickType\fP" +.PP +Scale tick types. +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fINoTick \fP\fP +No ticks. +.TP +\fB\fIMinorTick \fP\fP +Minor ticks. +.TP +\fB\fIMediumTick \fP\fP +Medium ticks. +.TP +\fB\fIMajorTick \fP\fP +Major ticks. +.TP +\fB\fINTickTypes \fP\fP +Number of valid tick types. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtScaleDiv::QwtScaleDiv ()\fC [explicit]\fP" +.PP +Construct an invalid \fBQwtScaleDiv\fP instance. +.SS "QwtScaleDiv::QwtScaleDiv (const \fBQwtInterval\fP &interval, QList< double >ticks[NTickTypes])\fC [explicit]\fP"Construct \fBQwtScaleDiv\fP instance. +.PP +\fBParameters:\fP +.RS 4 +\fIinterval\fP Interval +.br +\fIticks\fP List of major, medium and minor ticks +.RE +.PP + +.SS "QwtScaleDiv::QwtScaleDiv (doublelowerBound, doubleupperBound, QList< double >ticks[NTickTypes])\fC [explicit]\fP"Construct \fBQwtScaleDiv\fP instance. +.PP +\fBParameters:\fP +.RS 4 +\fIlowerBound\fP First interval limit +.br +\fIupperBound\fP Second interval limit +.br +\fIticks\fP List of major, medium and minor ticks +.RE +.PP + +.SH "Member Function Documentation" +.PP +.SS "bool QwtScaleDiv::contains (doublevalue) const"Return if a value is between \fBlowerBound()\fP and \fBupperBound()\fP +.PP +\fBParameters:\fP +.RS 4 +\fIvalue\fP Value +.RE +.PP +\fBReturns:\fP +.RS 4 +true/false +.RE +.PP + +.SS "\fBQwtInterval\fP QwtScaleDiv::interval () const\fC [inline]\fP"\fBReturns:\fP +.RS 4 +lowerBound -> upperBound +.RE +.PP + +.SS "void QwtScaleDiv::invalidate ()" +.PP +Invalidate the scale division. +.SS "void QwtScaleDiv::invert ()" +.PP +Invert the scale divison. +.SS "bool QwtScaleDiv::isValid () const" +.PP +Check if the scale division is valid. +.SS "double QwtScaleDiv::lowerBound () const\fC [inline]\fP"\fBReturns:\fP +.RS 4 +lower bound +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBupperBound()\fP +.RE +.PP + +.SS "bool QwtScaleDiv::operator!= (const \fBQwtScaleDiv\fP &s) const" +.PP +Inequality. \fBReturns:\fP +.RS 4 +true if this instance is not equal to s +.RE +.PP + +.SS "bool QwtScaleDiv::operator== (const \fBQwtScaleDiv\fP &other) const" +.PP +Equality operator. \fBReturns:\fP +.RS 4 +true if this instance is equal to other +.RE +.PP + +.SS "double QwtScaleDiv::range () const\fC [inline]\fP"\fBReturns:\fP +.RS 4 +\fBupperBound()\fP - \fBlowerBound()\fP +.RE +.PP + +.SS "void QwtScaleDiv::setInterval (const \fBQwtInterval\fP &interval)"Change the interval +.PP +\fBParameters:\fP +.RS 4 +\fIinterval\fP Interval +.RE +.PP + +.SS "void QwtScaleDiv::setInterval (doublelowerBound, doubleupperBound)\fC [inline]\fP"Change the interval +.PP +\fBParameters:\fP +.RS 4 +\fIlowerBound\fP lower bound +.br +\fIupperBound\fP upper bound +.RE +.PP + +.SS "void QwtScaleDiv::setTicks (inttype, const QList< double > &ticks)"Assign ticks +.PP +\fBParameters:\fP +.RS 4 +\fItype\fP MinorTick, MediumTick or MajorTick +.br +\fIticks\fP Values of the tick positions +.RE +.PP + +.SS "const QList< double > & QwtScaleDiv::ticks (inttype) const"Return a list of ticks +.PP +\fBParameters:\fP +.RS 4 +\fItype\fP MinorTick, MediumTick or MajorTick +.RE +.PP + +.SS "double QwtScaleDiv::upperBound () const\fC [inline]\fP"\fBReturns:\fP +.RS 4 +upper bound +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBlowerBound()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtScaleDraw.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtScaleDraw.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtScaleDraw.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtScaleDraw.3 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,517 @@ +.TH "QwtScaleDraw" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtScaleDraw \- +.PP +A class for drawing scales. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtAbstractScaleDraw\fP. +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBAlignment\fP { \fBBottomScale\fP, \fBTopScale\fP, \fBLeftScale\fP, \fBRightScale\fP }" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtScaleDraw\fP ()" +.br +.ti -1c +.RI "virtual \fB~QwtScaleDraw\fP ()" +.br +.ti -1c +.RI "void \fBgetBorderDistHint\fP (const QFont &, int &start, int &end) const " +.br +.ti -1c +.RI "int \fBminLabelDist\fP (const QFont &) const " +.br +.ti -1c +.RI "int \fBminLength\fP (const QFont &) const " +.br +.ti -1c +.RI "virtual double \fBextent\fP (const QFont &) const " +.br +.ti -1c +.RI "void \fBmove\fP (double x, double y)" +.br +.ti -1c +.RI "void \fBmove\fP (const QPointF &)" +.br +.ti -1c +.RI "void \fBsetLength\fP (double length)" +.br +.ti -1c +.RI "\fBAlignment\fP \fBalignment\fP () const " +.br +.ti -1c +.RI "void \fBsetAlignment\fP (\fBAlignment\fP)" +.br +.ti -1c +.RI "Qt::Orientation \fBorientation\fP () const " +.br +.ti -1c +.RI "QPointF \fBpos\fP () const " +.br +.ti -1c +.RI "double \fBlength\fP () const " +.br +.ti -1c +.RI "void \fBsetLabelAlignment\fP (Qt::Alignment)" +.br +.ti -1c +.RI "Qt::Alignment \fBlabelAlignment\fP () const " +.br +.ti -1c +.RI "void \fBsetLabelRotation\fP (double rotation)" +.br +.ti -1c +.RI "double \fBlabelRotation\fP () const " +.br +.ti -1c +.RI "int \fBmaxLabelHeight\fP (const QFont &) const " +.br +.ti -1c +.RI "int \fBmaxLabelWidth\fP (const QFont &) const " +.br +.ti -1c +.RI "QPointF \fBlabelPosition\fP (double val) const " +.br +.ti -1c +.RI "QRectF \fBlabelRect\fP (const QFont &, double val) const " +.br +.ti -1c +.RI "QSizeF \fBlabelSize\fP (const QFont &, double val) const " +.br +.ti -1c +.RI "QRect \fBboundingLabelRect\fP (const QFont &, double val) const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "QTransform \fBlabelTransformation\fP (const QPointF &, const QSizeF &) const " +.br +.ti -1c +.RI "virtual void \fBdrawTick\fP (QPainter *, double val, double len) const " +.br +.ti -1c +.RI "virtual void \fBdrawBackbone\fP (QPainter *) const " +.br +.ti -1c +.RI "virtual void \fBdrawLabel\fP (QPainter *, double val) const " +.br +.in -1c +.SH "Detailed Description" +.PP +A class for drawing scales. + +\fBQwtScaleDraw\fP can be used to draw linear or logarithmic scales. A scale has a position, an alignment and a length, which can be specified . The labels can be rotated and aligned to the ticks using \fBsetLabelRotation()\fP and \fBsetLabelAlignment()\fP. +.PP +After a scale division has been specified as a \fBQwtScaleDiv\fP object using \fBQwtAbstractScaleDraw::setScaleDiv(const QwtScaleDiv &s)\fP, the scale can be drawn with the \fBQwtAbstractScaleDraw::draw()\fP member. +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtScaleDraw::Alignment\fP"Alignment of the scale draw +.PP +\fBSee also:\fP +.RS 4 +\fBsetAlignment()\fP, \fBalignment()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIBottomScale \fP\fP +The scale is below. +.TP +\fB\fITopScale \fP\fP +The scale is above. +.TP +\fB\fILeftScale \fP\fP +The scale is left. +.TP +\fB\fIRightScale \fP\fP +The scale is right. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtScaleDraw::QwtScaleDraw ()" +.PP +Constructor. The range of the scale is initialized to [0, 100], The position is at (0, 0) with a length of 100. The orientation is QwtAbstractScaleDraw::Bottom. +.SS "QwtScaleDraw::~QwtScaleDraw ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "\fBQwtScaleDraw::Alignment\fP QwtScaleDraw::alignment () const"Return alignment of the scale +.PP +\fBSee also:\fP +.RS 4 +\fBsetAlignment()\fP +.RE +.PP + +.SS "QRect QwtScaleDraw::boundingLabelRect (const QFont &font, doublevalue) const"Find the bounding rect for the label. The coordinates of the rect are absolute coordinates ( calculated from \fBpos()\fP ). in direction of the tick. +.PP +\fBParameters:\fP +.RS 4 +\fIfont\fP Font used for painting +.br +\fIvalue\fP Value +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBlabelRect()\fP +.RE +.PP + +.SS "void QwtScaleDraw::drawBackbone (QPainter *painter) const\fC [protected, virtual]\fP"Draws the baseline of the scale +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBdrawTick()\fP, \fBdrawLabel()\fP +.RE +.PP + +.PP +Implements \fBQwtAbstractScaleDraw\fP. +.SS "void QwtScaleDraw::drawLabel (QPainter *painter, doublevalue) const\fC [protected, virtual]\fP"Draws the label for a major scale tick +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIvalue\fP Value +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBdrawTick()\fP, \fBdrawBackbone()\fP, \fBboundingLabelRect()\fP +.RE +.PP + +.PP +Implements \fBQwtAbstractScaleDraw\fP. +.SS "void QwtScaleDraw::drawTick (QPainter *painter, doublevalue, doublelen) const\fC [protected, virtual]\fP"Draw a tick +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIvalue\fP Value of the tick +.br +\fIlen\fP Lenght of the tick +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBdrawBackbone()\fP, \fBdrawLabel()\fP +.RE +.PP + +.PP +Implements \fBQwtAbstractScaleDraw\fP. +.SS "double QwtScaleDraw::extent (const QFont &font) const\fC [virtual]\fP"Calculate the width/height that is needed for a vertical/horizontal scale. +.PP +The extent is calculated from the pen width of the backbone, the major tick length, the spacing and the maximum width/height of the labels. +.PP +\fBParameters:\fP +.RS 4 +\fIfont\fP Font used for painting the labels +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBminLength()\fP +.RE +.PP + +.PP +Implements \fBQwtAbstractScaleDraw\fP. +.SS "void QwtScaleDraw::getBorderDistHint (const QFont &font, int &start, int &end) const" +.PP +Determine the minimum border distance. This member function returns the minimum space needed to draw the mark labels at the scale's endpoints. +.PP +\fBParameters:\fP +.RS 4 +\fIfont\fP Font +.br +\fIstart\fP Start border distance +.br +\fIend\fP End border distance +.RE +.PP + +.SS "Qt::Alignment QwtScaleDraw::labelAlignment () const"\fBReturns:\fP +.RS 4 +the label flags +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetLabelAlignment()\fP, \fBlabelRotation()\fP +.RE +.PP + +.SS "QPointF QwtScaleDraw::labelPosition (doublevalue) const"Find the position, where to paint a label +.PP +The position has a distance of majTickLength() + \fBspacing()\fP + 1 from the backbone. The direction depends on the \fBalignment()\fP +.PP +\fBParameters:\fP +.RS 4 +\fIvalue\fP Value +.RE +.PP + +.SS "QRectF QwtScaleDraw::labelRect (const QFont &font, doublevalue) const"Find the bounding rect for the label. The coordinates of the rect are relative to spacing + ticklength from the backbone in direction of the tick. +.PP +\fBParameters:\fP +.RS 4 +\fIfont\fP Font used for painting +.br +\fIvalue\fP Value +.RE +.PP + +.SS "double QwtScaleDraw::labelRotation () const"\fBReturns:\fP +.RS 4 +the label rotation +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetLabelRotation()\fP, \fBlabelAlignment()\fP +.RE +.PP + +.SS "QSizeF QwtScaleDraw::labelSize (const QFont &font, doublevalue) const"Calculate the size that is needed to draw a label +.PP +\fBParameters:\fP +.RS 4 +\fIfont\fP Label font +.br +\fIvalue\fP Value +.RE +.PP + +.SS "QTransform QwtScaleDraw::labelTransformation (const QPointF &pos, const QSizeF &size) const\fC [protected]\fP"Calculate the transformation that is needed to paint a label depending on its alignment and rotation. +.PP +\fBParameters:\fP +.RS 4 +\fIpos\fP Position where to paint the label +.br +\fIsize\fP Size of the label +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetLabelAlignment()\fP, \fBsetLabelRotation()\fP +.RE +.PP + +.SS "double QwtScaleDraw::length () const"\fBReturns:\fP +.RS 4 +the length of the backbone +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetLength()\fP, \fBpos()\fP +.RE +.PP + +.SS "int QwtScaleDraw::maxLabelHeight (const QFont &font) const"\fBParameters:\fP +.RS 4 +\fIfont\fP Font +.RE +.PP +\fBReturns:\fP +.RS 4 +the maximum height of a label +.RE +.PP + +.SS "int QwtScaleDraw::maxLabelWidth (const QFont &font) const"\fBParameters:\fP +.RS 4 +\fIfont\fP Font +.RE +.PP +\fBReturns:\fP +.RS 4 +the maximum width of a label +.RE +.PP + +.SS "int QwtScaleDraw::minLabelDist (const QFont &font) const"Determine the minimum distance between two labels, that is necessary that the texts don't overlap. +.PP +\fBParameters:\fP +.RS 4 +\fIfont\fP Font +.RE +.PP +\fBReturns:\fP +.RS 4 +The maximum width of a label +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBgetBorderDistHint()\fP +.RE +.PP + +.SS "int QwtScaleDraw::minLength (const QFont &font) const"Calculate the minimum length that is needed to draw the scale +.PP +\fBParameters:\fP +.RS 4 +\fIfont\fP Font used for painting the labels +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBextent()\fP +.RE +.PP + +.SS "void QwtScaleDraw::move (doublex, doubley)\fC [inline]\fP"Move the position of the scale +.PP +\fBSee also:\fP +.RS 4 +\fBmove(const QPointF &)\fP +.RE +.PP + +.SS "void QwtScaleDraw::move (const QPointF &pos)" +.PP +Move the position of the scale. The meaning of the parameter pos depends on the alignment: +.IP "\fB\fBQwtScaleDraw::LeftScale\fP \fP" 1c +The origin is the topmost point of the backbone. The backbone is a vertical line. Scale marks and labels are drawn at the left of the backbone. +.IP "\fB\fBQwtScaleDraw::RightScale\fP \fP" 1c +The origin is the topmost point of the backbone. The backbone is a vertical line. Scale marks and labels are drawn at the right of the backbone. +.IP "\fB\fBQwtScaleDraw::TopScale\fP \fP" 1c +The origin is the leftmost point of the backbone. The backbone is a horizontal line. Scale marks and labels are drawn above the backbone. +.IP "\fB\fBQwtScaleDraw::BottomScale\fP \fP" 1c +The origin is the leftmost point of the backbone. The backbone is a horizontal line Scale marks and labels are drawn below the backbone. +.PP +.PP +\fBParameters:\fP +.RS 4 +\fIpos\fP Origin of the scale +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBpos()\fP, \fBsetLength()\fP +.RE +.PP + +.SS "Qt::Orientation QwtScaleDraw::orientation () const"Return the orientation +.PP +TopScale, BottomScale are horizontal (Qt::Horizontal) scales, LeftScale, RightScale are vertical (Qt::Vertical) scales. +.PP +\fBSee also:\fP +.RS 4 +\fBalignment()\fP +.RE +.PP + +.SS "QPointF QwtScaleDraw::pos () const"\fBReturns:\fP +.RS 4 +Origin of the scale +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBmove()\fP, \fBlength()\fP +.RE +.PP + +.SS "void QwtScaleDraw::setAlignment (\fBAlignment\fPalign)"Set the alignment of the scale +.PP +The default alignment is \fBQwtScaleDraw::BottomScale\fP +.PP +\fBSee also:\fP +.RS 4 +\fBalignment()\fP +.RE +.PP + +.SS "void QwtScaleDraw::setLabelAlignment (Qt::Alignmentalignment)" +.PP +Change the label flags. Labels are aligned to the point ticklength + spacing away from the backbone. +.PP +The alignment is relative to the orientation of the label text. In case of an flags of 0 the label will be aligned depending on the orientation of the scale: +.PP +\fBQwtScaleDraw::TopScale\fP: Qt::AlignHCenter | Qt::AlignTop +.br + \fBQwtScaleDraw::BottomScale\fP: Qt::AlignHCenter | Qt::AlignBottom +.br + \fBQwtScaleDraw::LeftScale\fP: Qt::AlignLeft | Qt::AlignVCenter +.br + \fBQwtScaleDraw::RightScale\fP: Qt::AlignRight | Qt::AlignVCenter +.br +.PP +Changing the alignment is often necessary for rotated labels. +.PP +\fBParameters:\fP +.RS 4 +\fIalignment\fP Or'd Qt::AlignmentFlags +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetLabelRotation()\fP, \fBlabelRotation()\fP, \fBlabelAlignment()\fP +.RE +.PP +\fBWarning:\fP +.RS 4 +The various alignments might be confusing. The alignment of the label is not the alignment of the scale and is not the alignment of the flags (QwtText::flags()) returned from \fBQwtAbstractScaleDraw::label()\fP. +.RE +.PP + +.SS "void QwtScaleDraw::setLabelRotation (doublerotation)"Rotate all labels. +.PP +When changing the rotation, it might be necessary to adjust the label flags too. Finding a useful combination is often the result of try and error. +.PP +\fBParameters:\fP +.RS 4 +\fIrotation\fP Angle in degrees. When changing the label rotation, the label flags often needs to be adjusted too. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetLabelAlignment()\fP, \fBlabelRotation()\fP, \fBlabelAlignment()\fP. +.RE +.PP + +.SS "void QwtScaleDraw::setLength (doublelength)"Set the length of the backbone. +.PP +The length doesn't include the space needed for overlapping labels. +.PP +\fBSee also:\fP +.RS 4 +\fBmove()\fP, \fBminLabelDist()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtScaleEngine.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtScaleEngine.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtScaleEngine.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtScaleEngine.3 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,355 @@ +.TH "QwtScaleEngine" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtScaleEngine \- +.PP +Base class for scale engines. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherited by \fBQwtLinearScaleEngine\fP, and \fBQwtLog10ScaleEngine\fP. +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBAttribute\fP { \fBNoAttribute\fP = 0x00, \fBIncludeReference\fP = 0x01, \fBSymmetric\fP = 0x02, \fBFloating\fP = 0x04, \fBInverted\fP = 0x08 }" +.br +.ti -1c +.RI "typedef QFlags< \fBAttribute\fP > \fBAttributes\fP" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtScaleEngine\fP ()" +.br +.ti -1c +.RI "virtual \fB~QwtScaleEngine\fP ()" +.br +.ti -1c +.RI "void \fBsetAttribute\fP (\fBAttribute\fP, bool on=true)" +.br +.ti -1c +.RI "bool \fBtestAttribute\fP (\fBAttribute\fP) const " +.br +.ti -1c +.RI "void \fBsetAttributes\fP (\fBAttributes\fP)" +.br +.ti -1c +.RI "\fBAttributes\fP \fBattributes\fP () const " +.br +.ti -1c +.RI "void \fBsetReference\fP (double reference)" +.br +.ti -1c +.RI "double \fBreference\fP () const " +.br +.ti -1c +.RI "void \fBsetMargins\fP (double lower, double upper)" +.br +.ti -1c +.RI "double \fBlowerMargin\fP () const " +.br +.ti -1c +.RI "double \fBupperMargin\fP () const " +.br +.ti -1c +.RI "virtual void \fBautoScale\fP (int maxNumSteps, double &x1, double &x2, double &stepSize) const =0" +.br +.ti -1c +.RI "virtual \fBQwtScaleDiv\fP \fBdivideScale\fP (double x1, double x2, int maxMajSteps, int maxMinSteps, double stepSize=0.0) const =0" +.br +.ti -1c +.RI "virtual \fBQwtScaleTransformation\fP * \fBtransformation\fP () const =0" +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "bool \fBcontains\fP (const \fBQwtInterval\fP &, double val) const " +.br +.ti -1c +.RI "QList< double > \fBstrip\fP (const QList< double > &, const \fBQwtInterval\fP &) const " +.br +.ti -1c +.RI "double \fBdivideInterval\fP (double interval, int numSteps) const " +.br +.ti -1c +.RI "\fBQwtInterval\fP \fBbuildInterval\fP (double v) const " +.br +.in -1c +.SH "Detailed Description" +.PP +Base class for scale engines. + +A scale engine trys to find 'reasonable' ranges and step sizes for scales. +.PP +The layout of the scale can be varied with \fBsetAttribute()\fP. +.PP +Qwt offers implementations for logarithmic (log10) and linear scales. Contributions for other types of scale engines (date/time, log2 ... ) are welcome. +.SH "Member Typedef Documentation" +.PP +.SS "typedef QFlags<\fBAttribute\fP> \fBQwtScaleEngine::Attributes\fP" +.PP +Layout attributes. +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtScaleEngine::Attribute\fP"Layout attributes +.PP +\fBSee also:\fP +.RS 4 +\fBsetAttribute()\fP, \fBtestAttribute()\fP, \fBreference()\fP, \fBlowerMargin()\fP, \fBupperMargin()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fINoAttribute \fP\fP +No attributes. +.TP +\fB\fIIncludeReference \fP\fP +Build a scale which includes the \fBreference()\fP value. +.TP +\fB\fISymmetric \fP\fP +Build a scale which is symmetric to the \fBreference()\fP value. +.TP +\fB\fIFloating \fP\fP +The endpoints of the scale are supposed to be equal the outmost included values plus the specified margins (see \fBsetMargins()\fP). If this attribute is *not* set, the endpoints of the scale will be integer multiples of the step size. +.TP +\fB\fIInverted \fP\fP +Turn the scale upside down. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtScaleEngine::QwtScaleEngine ()\fC [explicit]\fP" +.PP +Constructor. +.SS "QwtScaleEngine::~QwtScaleEngine ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "\fBQwtScaleEngine::Attributes\fP QwtScaleEngine::attributes () const"Return the scale attributes +.PP +\fBSee also:\fP +.RS 4 +\fBAttribute\fP, \fBsetAttributes()\fP, \fBtestAttribute()\fP +.RE +.PP + +.SS "virtual void QwtScaleEngine::autoScale (intmaxNumSteps, double &x1, double &x2, double &stepSize) const\fC [pure virtual]\fP"Align and divide an interval +.PP +\fBParameters:\fP +.RS 4 +\fImaxNumSteps\fP Max. number of steps +.br +\fIx1\fP First limit of the interval (In/Out) +.br +\fIx2\fP Second limit of the interval (In/Out) +.br +\fIstepSize\fP Step size (Return value) +.RE +.PP + +.PP +Implemented in \fBQwtLinearScaleEngine\fP, and \fBQwtLog10ScaleEngine\fP. +.SS "\fBQwtInterval\fP QwtScaleEngine::buildInterval (doublev) const\fC [protected]\fP" +.PP +Build an interval for a value. In case of v == 0.0 the interval is [-0.5, 0.5], otherwide it is [0.5 * v, 1.5 * v] +.SS "bool QwtScaleEngine::contains (const \fBQwtInterval\fP &interval, doublevalue) const\fC [protected]\fP"Check if an interval 'contains' a value +.PP +\fBParameters:\fP +.RS 4 +\fIinterval\fP Interval +.br +\fIvalue\fP Value +.RE +.PP +\fBSee also:\fP +.RS 4 +QwtScaleArithmetic::compareEps() +.RE +.PP + +.SS "double QwtScaleEngine::divideInterval (doubleintervalSize, intnumSteps) const\fC [protected]\fP"Calculate a step size for an interval size +.PP +\fBParameters:\fP +.RS 4 +\fIintervalSize\fP Interval size +.br +\fInumSteps\fP Number of steps +.RE +.PP +\fBReturns:\fP +.RS 4 +Step size +.RE +.PP + +.SS "virtual \fBQwtScaleDiv\fP QwtScaleEngine::divideScale (doublex1, doublex2, intmaxMajSteps, intmaxMinSteps, doublestepSize = \fC0.0\fP) const\fC [pure virtual]\fP" +.PP +Calculate a scale division. \fBParameters:\fP +.RS 4 +\fIx1\fP First interval limit +.br +\fIx2\fP Second interval limit +.br +\fImaxMajSteps\fP Maximum for the number of major steps +.br +\fImaxMinSteps\fP Maximum number of minor steps +.br +\fIstepSize\fP Step size. If stepSize == 0.0, the scaleEngine calculates one. +.RE +.PP + +.PP +Implemented in \fBQwtLinearScaleEngine\fP, and \fBQwtLog10ScaleEngine\fP. +.SS "double QwtScaleEngine::lowerMargin () const"\fBReturns:\fP +.RS 4 +the margin at the lower end of the scale The default margin is 0. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetMargins()\fP +.RE +.PP + +.SS "double QwtScaleEngine::reference () const"\fBReturns:\fP +.RS 4 +the reference value +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetReference()\fP, \fBsetAttribute()\fP +.RE +.PP + +.SS "void QwtScaleEngine::setAttribute (\fBAttribute\fPattribute, boolon = \fCtrue\fP)"Change a scale attribute +.PP +\fBParameters:\fP +.RS 4 +\fIattribute\fP Attribute to change +.br +\fIon\fP On/Off +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBAttribute\fP, \fBtestAttribute()\fP +.RE +.PP + +.SS "void QwtScaleEngine::setAttributes (\fBAttributes\fPattributes)"Change the scale attribute +.PP +\fBParameters:\fP +.RS 4 +\fIattributes\fP Set scale attributes +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBAttribute\fP, \fBattributes()\fP +.RE +.PP + +.SS "void QwtScaleEngine::setMargins (doublelower, doubleupper)" +.PP +Specify margins at the scale's endpoints. \fBParameters:\fP +.RS 4 +\fIlower\fP minimum distance between the scale's lower boundary and the smallest enclosed value +.br +\fIupper\fP minimum distance between the scale's upper boundary and the greatest enclosed value +.RE +.PP +Margins can be used to leave a minimum amount of space between the enclosed intervals and the boundaries of the scale. +.PP +\fBWarning:\fP +.RS 4 +.PD 0 +.IP "\(bu" 2 +\fBQwtLog10ScaleEngine\fP measures the margins in decades. +.PP +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBupperMargin()\fP, \fBlowerMargin()\fP +.RE +.PP + +.SS "void QwtScaleEngine::setReference (doubler)" +.PP +Specify a reference point. \fBParameters:\fP +.RS 4 +\fIr\fP new reference value +.RE +.PP +The reference point is needed if options IncludeReference or Symmetric are active. Its default value is 0.0. +.PP +\fBSee also:\fP +.RS 4 +\fBAttribute\fP +.RE +.PP + +.SS "QList< double > QwtScaleEngine::strip (const QList< double > &ticks, const \fBQwtInterval\fP &interval) const\fC [protected]\fP"Remove ticks from a list, that are not inside an interval +.PP +\fBParameters:\fP +.RS 4 +\fIticks\fP Tick list +.br +\fIinterval\fP Interval +.RE +.PP +\fBReturns:\fP +.RS 4 +Stripped tick list +.RE +.PP + +.SS "bool QwtScaleEngine::testAttribute (\fBAttribute\fPattribute) const"Check if a attribute is set. +.PP +\fBParameters:\fP +.RS 4 +\fIattribute\fP Attribute to be tested +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBAttribute\fP, \fBsetAttribute()\fP +.RE +.PP + +.SS "virtual \fBQwtScaleTransformation\fP* QwtScaleEngine::transformation () const\fC [pure virtual]\fP"\fBReturns:\fP +.RS 4 +a transformation +.RE +.PP + +.PP +Implemented in \fBQwtLinearScaleEngine\fP, and \fBQwtLog10ScaleEngine\fP. +.SS "double QwtScaleEngine::upperMargin () const"\fBReturns:\fP +.RS 4 +the margin at the upper end of the scale The default margin is 0. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetMargins()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtScaleMap.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtScaleMap.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtScaleMap.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtScaleMap.3 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,305 @@ +.TH "QwtScaleMap" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtScaleMap \- +.PP +A scale map. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtScaleMap\fP ()" +.br +.ti -1c +.RI "\fBQwtScaleMap\fP (const \fBQwtScaleMap\fP &)" +.br +.ti -1c +.RI "\fB~QwtScaleMap\fP ()" +.br +.ti -1c +.RI "\fBQwtScaleMap\fP & \fBoperator=\fP (const \fBQwtScaleMap\fP &)" +.br +.ti -1c +.RI "void \fBsetTransformation\fP (\fBQwtScaleTransformation\fP *)" +.br +.ti -1c +.RI "const \fBQwtScaleTransformation\fP * \fBtransformation\fP () const " +.br +.ti -1c +.RI "void \fBsetPaintInterval\fP (double p1, double p2)" +.br +.ti -1c +.RI "void \fBsetScaleInterval\fP (double s1, double s2)" +.br +.ti -1c +.RI "double \fBtransform\fP (double s) const " +.br +.ti -1c +.RI "double \fBinvTransform\fP (double p) const " +.br +.ti -1c +.RI "double \fBp1\fP () const " +.br +.ti -1c +.RI "double \fBp2\fP () const " +.br +.ti -1c +.RI "double \fBs1\fP () const " +.br +.ti -1c +.RI "double \fBs2\fP () const " +.br +.ti -1c +.RI "double \fBpDist\fP () const " +.br +.ti -1c +.RI "double \fBsDist\fP () const " +.br +.ti -1c +.RI "bool \fBisInverting\fP () const " +.br +.in -1c +.SS "Static Public Member Functions" + +.in +1c +.ti -1c +.RI "static QRectF \fBtransform\fP (const \fBQwtScaleMap\fP &, const \fBQwtScaleMap\fP &, const QRectF &)" +.br +.ti -1c +.RI "static QRectF \fBinvTransform\fP (const \fBQwtScaleMap\fP &, const \fBQwtScaleMap\fP &, const QRectF &)" +.br +.ti -1c +.RI "static QPointF \fBtransform\fP (const \fBQwtScaleMap\fP &, const \fBQwtScaleMap\fP &, const QPointF &)" +.br +.ti -1c +.RI "static QPointF \fBinvTransform\fP (const \fBQwtScaleMap\fP &, const \fBQwtScaleMap\fP &, const QPointF &)" +.br +.in -1c +.SS "Public Attributes" + +.in +1c +.ti -1c +.RI "QT_STATIC_CONST double \fBLogMin\fP = 1.0e-150" +.br +.ti -1c +.RI "QT_STATIC_CONST double \fBLogMax\fP = 1.0e150" +.br +.in -1c +.SH "Detailed Description" +.PP +A scale map. + +\fBQwtScaleMap\fP offers transformations from a scale into a paint interval and vice versa. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtScaleMap::QwtScaleMap ()" +.PP +Constructor. The scale and paint device intervals are both set to [0,1]. +.SS "QwtScaleMap::QwtScaleMap (const \fBQwtScaleMap\fP &other)" +.PP +Copy constructor. +.SS "QwtScaleMap::~QwtScaleMap ()"Destructor +.SH "Member Function Documentation" +.PP +.SS "double QwtScaleMap::invTransform (doublep) const\fC [inline]\fP"Transform an paint device value into a value in the interval of the scale. +.PP +\fBParameters:\fP +.RS 4 +\fIp\fP Value relative to the coordinates of the paint device +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBtransform()\fP +.RE +.PP + +.SS "QPointF QwtScaleMap::invTransform (const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QPointF &pos)\fC [static]\fP"Transform a rectangle from paint to scale coordinates +.PP +\fBParameters:\fP +.RS 4 +\fIxMap\fP X map +.br +\fIyMap\fP Y map +.br +\fIpos\fP Position in paint coordinates +.RE +.PP +\fBReturns:\fP +.RS 4 +Position in scale coordinates +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBtransform()\fP +.RE +.PP + +.SS "QRectF QwtScaleMap::invTransform (const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &rect)\fC [static]\fP"Transform a rectangle from paint to scale coordinates +.PP +\fBParameters:\fP +.RS 4 +\fIxMap\fP X map +.br +\fIyMap\fP Y map +.br +\fIrect\fP Rectangle in paint coordinates +.RE +.PP +\fBReturns:\fP +.RS 4 +Rectangle in scale coordinates +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBtransform()\fP +.RE +.PP + +.SS "bool QwtScaleMap::isInverting () const\fC [inline]\fP"\fBReturns:\fP +.RS 4 +True, when ( \fBp1()\fP < \fBp2()\fP ) != ( \fBs1()\fP < \fBs2()\fP ) +.RE +.PP + +.SS "\fBQwtScaleMap\fP & QwtScaleMap::operator= (const \fBQwtScaleMap\fP &other)" +.PP +Assignment operator. +.SS "double QwtScaleMap::p1 () const\fC [inline]\fP"\fBReturns:\fP +.RS 4 +First border of the paint interval +.RE +.PP + +.SS "double QwtScaleMap::p2 () const\fC [inline]\fP"\fBReturns:\fP +.RS 4 +Second border of the paint interval +.RE +.PP + +.SS "double QwtScaleMap::pDist () const\fC [inline]\fP"\fBReturns:\fP +.RS 4 +qwtAbs(\fBp2()\fP - \fBp1()\fP) +.RE +.PP + +.SS "double QwtScaleMap::s1 () const\fC [inline]\fP"\fBReturns:\fP +.RS 4 +First border of the scale interval +.RE +.PP + +.SS "double QwtScaleMap::s2 () const\fC [inline]\fP"\fBReturns:\fP +.RS 4 +Second border of the scale interval +.RE +.PP + +.SS "double QwtScaleMap::sDist () const\fC [inline]\fP"\fBReturns:\fP +.RS 4 +qwtAbs(\fBs2()\fP - \fBs1()\fP) +.RE +.PP + +.SS "void QwtScaleMap::setPaintInterval (doublep1, doublep2)" +.PP +Specify the borders of the paint device interval. \fBParameters:\fP +.RS 4 +\fIp1\fP first border +.br +\fIp2\fP second border +.RE +.PP + +.SS "void QwtScaleMap::setScaleInterval (doubles1, doubles2)" +.PP +Specify the borders of the scale interval. \fBParameters:\fP +.RS 4 +\fIs1\fP first border +.br +\fIs2\fP second border +.RE +.PP +\fBWarning:\fP +.RS 4 +logarithmic scales might be aligned to [LogMin, LogMax] +.RE +.PP + +.SS "void QwtScaleMap::setTransformation (\fBQwtScaleTransformation\fP *transformation)"Initialize the map with a transformation +.SS "QPointF QwtScaleMap::transform (const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QPointF &pos)\fC [static]\fP"Transform a point from scale to paint coordinates +.PP +\fBParameters:\fP +.RS 4 +\fIxMap\fP X map +.br +\fIyMap\fP Y map +.br +\fIpos\fP Position in scale coordinates +.RE +.PP +\fBReturns:\fP +.RS 4 +Position in paint coordinates +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBinvTransform()\fP +.RE +.PP + +.SS "double QwtScaleMap::transform (doubles) const\fC [inline]\fP"Transform a point related to the scale interval into an point related to the interval of the paint device +.PP +\fBParameters:\fP +.RS 4 +\fIs\fP Value relative to the coordinates of the scale +.RE +.PP + +.SS "QRectF QwtScaleMap::transform (const \fBQwtScaleMap\fP &xMap, const \fBQwtScaleMap\fP &yMap, const QRectF &rect)\fC [static]\fP"Transform a rectangle from scale to paint coordinates +.PP +\fBParameters:\fP +.RS 4 +\fIxMap\fP X map +.br +\fIyMap\fP Y map +.br +\fIrect\fP Rectangle in scale coordinates +.RE +.PP +\fBReturns:\fP +.RS 4 +Rectangle in paint coordinates +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBinvTransform()\fP +.RE +.PP + +.SS "const \fBQwtScaleTransformation\fP * QwtScaleMap::transformation () const" +.PP +Get the transformation. +.SH "Member Data Documentation" +.PP +.SS "QT_STATIC_CONST_IMPL double \fBQwtScaleMap::LogMax\fP = 1.0e150" +.PP +Largest allowed value for logarithmic scales: 1.0e150. +.SS "QT_STATIC_CONST_IMPL double \fBQwtScaleMap::LogMin\fP = 1.0e-150" +.PP +Smallest allowed value for logarithmic scales: 1.0e-150. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtScaleTransformation.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtScaleTransformation.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtScaleTransformation.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtScaleTransformation.3 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,133 @@ +.TH "QwtScaleTransformation" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtScaleTransformation \- +.PP +Operations for linear or logarithmic (base 10) transformations. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBType\fP { \fBLinear\fP, \fBLog10\fP, \fBOther\fP }" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtScaleTransformation\fP (\fBType\fP type)" +.br +.ti -1c +.RI "virtual \fB~QwtScaleTransformation\fP ()" +.br +.ti -1c +.RI "virtual double \fBxForm\fP (double x, double s1, double s2, double p1, double p2) const " +.br +.ti -1c +.RI "virtual double \fBinvXForm\fP (double x, double s1, double s2, double p1, double p2) const " +.br +.ti -1c +.RI "\fBType\fP \fBtype\fP () const " +.br +.ti -1c +.RI "virtual \fBQwtScaleTransformation\fP * \fBcopy\fP () const " +.br +.in -1c +.SH "Detailed Description" +.PP +Operations for linear or logarithmic (base 10) transformations. +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtScaleTransformation::Type\fP" +.PP +Transformation type. +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fILinear \fP\fP +Transformation between 2 linear scales. +.TP +\fB\fILog10 \fP\fP +Transformation between a linear and a logarithmic ( base 10 ) scale. +.TP +\fB\fIOther \fP\fP +Any other type of transformation. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtScaleTransformation::QwtScaleTransformation (\fBType\fPtype)" +.PP +Constructor for a linear transformation. +.SS "QwtScaleTransformation::~QwtScaleTransformation ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "\fBQwtScaleTransformation\fP * QwtScaleTransformation::copy () const\fC [virtual]\fP" +.PP +Create a clone of the transformation. +.SS "double QwtScaleTransformation::invXForm (doublep, doublep1, doublep2, doubles1, doubles2) const\fC [virtual]\fP" +.PP +Transform a value from a linear to a logarithmic interval. \fBParameters:\fP +.RS 4 +\fIp\fP value related to the linear interval [p1, p2] +.br +\fIp1\fP first border of linear interval +.br +\fIp2\fP second border of linear interval +.br +\fIs1\fP first border of logarithmic interval +.br +\fIs2\fP second border of logarithmic interval +.RE +.PP +\fBReturns:\fP +.RS 4 +.IP "\fBexp((p - p1) / (p2 - p1) * log(s2 / s1)) * s1; \fP" 1c +.PP +.RE +.PP + +.SS "\fBQwtScaleTransformation::Type\fP QwtScaleTransformation::type () const\fC [inline]\fP"\fBReturns:\fP +.RS 4 +Transformation type +.RE +.PP + +.SS "double QwtScaleTransformation::xForm (doubles, doubles1, doubles2, doublep1, doublep2) const\fC [virtual]\fP" +.PP +Transform a value between 2 linear intervals. \fBParameters:\fP +.RS 4 +\fIs\fP value related to the interval [s1, s2] +.br +\fIs1\fP first border of scale interval +.br +\fIs2\fP second border of scale interval +.br +\fIp1\fP first border of target interval +.br +\fIp2\fP second border of target interval +.RE +.PP +\fBReturns:\fP +.RS 4 +.IP "\fBlinear mapping:\fP" 1c +p1 + (p2 - p1) / (s2 - s1) * (s - s1) +.PP +.IP "\fBlog10 mapping: \fP" 1c +p1 + (p2 - p1) / log(s2 / s1) * log(s / s1) +.PP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtScaleWidget.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtScaleWidget.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtScaleWidget.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtScaleWidget.3 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,703 @@ +.TH "QwtScaleWidget" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtScaleWidget \- +.PP +A Widget which contains a scale. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBLayoutFlag\fP { \fBTitleInverted\fP = 1 }" +.br +.ti -1c +.RI "typedef QFlags< \fBLayoutFlag\fP > \fBLayoutFlags\fP" +.br +.in -1c +.SS "Signals" + +.in +1c +.ti -1c +.RI "void \fBscaleDivChanged\fP ()" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtScaleWidget\fP (QWidget *parent=NULL)" +.br +.ti -1c +.RI "\fBQwtScaleWidget\fP (\fBQwtScaleDraw::Alignment\fP, QWidget *parent=NULL)" +.br +.ti -1c +.RI "virtual \fB~QwtScaleWidget\fP ()" +.br +.ti -1c +.RI "void \fBsetTitle\fP (const QString &title)" +.br +.ti -1c +.RI "void \fBsetTitle\fP (const \fBQwtText\fP &title)" +.br +.ti -1c +.RI "\fBQwtText\fP \fBtitle\fP () const " +.br +.ti -1c +.RI "void \fBsetLayoutFlag\fP (\fBLayoutFlag\fP, bool on)" +.br +.ti -1c +.RI "bool \fBtestLayoutFlag\fP (\fBLayoutFlag\fP) const " +.br +.ti -1c +.RI "void \fBsetBorderDist\fP (int start, int end)" +.br +.ti -1c +.RI "int \fBstartBorderDist\fP () const " +.br +.ti -1c +.RI "int \fBendBorderDist\fP () const " +.br +.ti -1c +.RI "void \fBgetBorderDistHint\fP (int &start, int &end) const " +.br +.ti -1c +.RI "void \fBgetMinBorderDist\fP (int &start, int &end) const " +.br +.ti -1c +.RI "void \fBsetMinBorderDist\fP (int start, int end)" +.br +.ti -1c +.RI "void \fBsetMargin\fP (int)" +.br +.ti -1c +.RI "int \fBmargin\fP () const " +.br +.ti -1c +.RI "void \fBsetSpacing\fP (int td)" +.br +.ti -1c +.RI "int \fBspacing\fP () const " +.br +.ti -1c +.RI "void \fBsetScaleDiv\fP (\fBQwtScaleTransformation\fP *, const \fBQwtScaleDiv\fP &sd)" +.br +.ti -1c +.RI "void \fBsetScaleDraw\fP (\fBQwtScaleDraw\fP *)" +.br +.ti -1c +.RI "const \fBQwtScaleDraw\fP * \fBscaleDraw\fP () const " +.br +.ti -1c +.RI "\fBQwtScaleDraw\fP * \fBscaleDraw\fP ()" +.br +.ti -1c +.RI "void \fBsetLabelAlignment\fP (Qt::Alignment)" +.br +.ti -1c +.RI "void \fBsetLabelRotation\fP (double rotation)" +.br +.ti -1c +.RI "void \fBsetColorBarEnabled\fP (bool)" +.br +.ti -1c +.RI "bool \fBisColorBarEnabled\fP () const " +.br +.ti -1c +.RI "void \fBsetColorBarWidth\fP (int)" +.br +.ti -1c +.RI "int \fBcolorBarWidth\fP () const " +.br +.ti -1c +.RI "void \fBsetColorMap\fP (const \fBQwtInterval\fP &, \fBQwtColorMap\fP *)" +.br +.ti -1c +.RI "\fBQwtInterval\fP \fBcolorBarInterval\fP () const " +.br +.ti -1c +.RI "const \fBQwtColorMap\fP * \fBcolorMap\fP () const " +.br +.ti -1c +.RI "virtual QSize \fBsizeHint\fP () const " +.br +.ti -1c +.RI "virtual QSize \fBminimumSizeHint\fP () const " +.br +.ti -1c +.RI "int \fBtitleHeightForWidth\fP (int width) const " +.br +.ti -1c +.RI "int \fBdimForLength\fP (int length, const QFont &scaleFont) const " +.br +.ti -1c +.RI "void \fBdrawColorBar\fP (QPainter *painter, const QRectF &) const " +.br +.ti -1c +.RI "void \fBdrawTitle\fP (QPainter *painter, \fBQwtScaleDraw::Alignment\fP, const QRectF &rect) const " +.br +.ti -1c +.RI "void \fBsetAlignment\fP (\fBQwtScaleDraw::Alignment\fP)" +.br +.ti -1c +.RI "\fBQwtScaleDraw::Alignment\fP \fBalignment\fP () const " +.br +.ti -1c +.RI "QRectF \fBcolorBarRect\fP (const QRectF &) const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual void \fBpaintEvent\fP (QPaintEvent *)" +.br +.ti -1c +.RI "virtual void \fBresizeEvent\fP (QResizeEvent *)" +.br +.ti -1c +.RI "void \fBdraw\fP (QPainter *p) const " +.br +.ti -1c +.RI "void \fBscaleChange\fP ()" +.br +.ti -1c +.RI "void \fBlayoutScale\fP (bool update=true)" +.br +.in -1c +.SH "Detailed Description" +.PP +A Widget which contains a scale. + +This Widget can be used to decorate composite widgets with a scale. +.SH "Member Typedef Documentation" +.PP +.SS "typedef QFlags<\fBLayoutFlag\fP> \fBQwtScaleWidget::LayoutFlags\fP" +.PP +Layout flags of the title. +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtScaleWidget::LayoutFlag\fP" +.PP +Layout flags of the title. +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fITitleInverted \fP\fP +The title of vertical scales is painted from top to bottom. Otherwise it is painted from bottom to top. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtScaleWidget::QwtScaleWidget (QWidget *parent = \fCNULL\fP)\fC [explicit]\fP" +.PP +Create a scale with the position QwtScaleWidget::Left. \fBParameters:\fP +.RS 4 +\fIparent\fP Parent widget +.RE +.PP + +.SS "QwtScaleWidget::QwtScaleWidget (\fBQwtScaleDraw::Alignment\fPalign, QWidget *parent = \fCNULL\fP)\fC [explicit]\fP" +.PP +Constructor. \fBParameters:\fP +.RS 4 +\fIalign\fP Alignment. +.br +\fIparent\fP Parent widget +.RE +.PP + +.SS "QwtScaleWidget::~QwtScaleWidget ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "\fBQwtScaleDraw::Alignment\fP QwtScaleWidget::alignment () const"\fBReturns:\fP +.RS 4 +position +.RE +.PP +\fBSee also:\fP +.RS 4 +setPosition() +.RE +.PP + +.SS "\fBQwtInterval\fP QwtScaleWidget::colorBarInterval () const"\fBReturns:\fP +.RS 4 +Value interval for the color bar +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetColorMap()\fP, \fBcolorMap()\fP +.RE +.PP + +.SS "QRectF QwtScaleWidget::colorBarRect (const QRectF &rect) const"Calculate the the rectangle for the color bar +.PP +\fBParameters:\fP +.RS 4 +\fIrect\fP Bounding rectangle for all components of the scale +.RE +.PP +\fBReturns:\fP +.RS 4 +Rectabgle for the color bar +.RE +.PP + +.SS "int QwtScaleWidget::colorBarWidth () const"\fBReturns:\fP +.RS 4 +Width of the color bar +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetColorBarEnabled()\fP, \fBsetColorBarEnabled()\fP +.RE +.PP + +.SS "const \fBQwtColorMap\fP * QwtScaleWidget::colorMap () const"\fBReturns:\fP +.RS 4 +Color map +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetColorMap()\fP, \fBcolorBarInterval()\fP +.RE +.PP + +.SS "int QwtScaleWidget::dimForLength (intlength, const QFont &scaleFont) const" +.PP +Find the minimum dimension for a given length. dim is the height, length the width seen in direction of the title. \fBParameters:\fP +.RS 4 +\fIlength\fP width for horizontal, height for vertical scales +.br +\fIscaleFont\fP Font of the scale +.RE +.PP +\fBReturns:\fP +.RS 4 +height for horizontal, width for vertical scales +.RE +.PP + +.SS "void QwtScaleWidget::draw (QPainter *p) const\fC [protected]\fP" +.PP +draw the scale +.SS "void QwtScaleWidget::drawColorBar (QPainter *painter, const QRectF &rect) const"Draw the color bar of the scale widget +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIrect\fP Bounding rectangle for the color bar +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetColorBarEnabled()\fP +.RE +.PP + +.SS "void QwtScaleWidget::drawTitle (QPainter *painter, \fBQwtScaleDraw::Alignment\fPalign, const QRectF &rect) const"Rotate and paint a title according to its position into a given rectangle. +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIalign\fP Alignment +.br +\fIrect\fP Bounding rectangle +.RE +.PP + +.SS "int QwtScaleWidget::endBorderDist () const"\fBReturns:\fP +.RS 4 +end border distance +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetBorderDist()\fP +.RE +.PP + +.SS "void QwtScaleWidget::getBorderDistHint (int &start, int &end) const" +.PP +Calculate a hint for the border distances. This member function calculates the distance of the scale's endpoints from the widget borders which is required for the mark labels to fit into the widget. The maximum of this distance an the minimum border distance is returned. +.PP +\fBWarning:\fP +.RS 4 +.PD 0 +.IP "\(bu" 2 +The minimum border distance depends on the font. +.PP +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetMinBorderDist()\fP, \fBgetMinBorderDist()\fP, \fBsetBorderDist()\fP +.RE +.PP + +.SS "void QwtScaleWidget::getMinBorderDist (int &start, int &end) const"Get the minimum value for the distances of the scale's endpoints from the widget borders. +.PP +\fBSee also:\fP +.RS 4 +\fBsetMinBorderDist()\fP, \fBgetBorderDistHint()\fP +.RE +.PP + +.SS "bool QwtScaleWidget::isColorBarEnabled () const"\fBReturns:\fP +.RS 4 +true, when the color bar is enabled +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetColorBarEnabled()\fP, \fBsetColorBarWidth()\fP +.RE +.PP + +.SS "void QwtScaleWidget::layoutScale (boolupdate_geometry = \fCtrue\fP)\fC [protected]\fP"Recalculate the scale's geometry and layout based on the current rect and fonts. +.PP +\fBParameters:\fP +.RS 4 +\fIupdate_geometry\fP Notify the layout system and call update to redraw the scale +.RE +.PP + +.SS "int QwtScaleWidget::margin () const"\fBReturns:\fP +.RS 4 +margin +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetMargin()\fP +.RE +.PP + +.SS "QSize QwtScaleWidget::minimumSizeHint () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +a minimum size hint +.RE +.PP + +.SS "void QwtScaleWidget::paintEvent (QPaintEvent *event)\fC [protected, virtual]\fP" +.PP +paintEvent +.SS "void QwtScaleWidget::resizeEvent (QResizeEvent *event)\fC [protected, virtual]\fP"Event handler for resize event +.PP +\fBParameters:\fP +.RS 4 +\fIevent\fP Resize event +.RE +.PP + +.SS "void QwtScaleWidget::scaleChange ()\fC [protected]\fP" +.PP +Notify a change of the scale. This virtual function can be overloaded by derived classes. The default implementation updates the geometry and repaints the widget. +.SS "void QwtScaleWidget::scaleDivChanged ()\fC [signal]\fP" +.PP +Signal emitted, whenever the scale divison changes. +.SS "const \fBQwtScaleDraw\fP * QwtScaleWidget::scaleDraw () const"scaleDraw of this scale +.PP +\fBSee also:\fP +.RS 4 +\fBsetScaleDraw()\fP, QwtScaleDraw::setScaleDraw() +.RE +.PP + +.SS "\fBQwtScaleDraw\fP * QwtScaleWidget::scaleDraw ()"scaleDraw of this scale +.PP +\fBSee also:\fP +.RS 4 +QwtScaleDraw::setScaleDraw() +.RE +.PP + +.SS "void QwtScaleWidget::setAlignment (\fBQwtScaleDraw::Alignment\fPalignment)"Change the alignment +.PP +\fBParameters:\fP +.RS 4 +\fIalignment\fP New alignment +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBalignment()\fP +.RE +.PP + +.SS "void QwtScaleWidget::setBorderDist (intdist1, intdist2)"Specify distances of the scale's endpoints from the widget's borders. The actual borders will never be less than minimum border distance. +.PP +\fBParameters:\fP +.RS 4 +\fIdist1\fP Left or top Distance +.br +\fIdist2\fP Right or bottom distance +.RE +.PP +\fBSee also:\fP +.RS 4 +borderDist() +.RE +.PP + +.SS "void QwtScaleWidget::setColorBarEnabled (boolon)"En/disable a color bar associated to the scale +.PP +\fBSee also:\fP +.RS 4 +\fBisColorBarEnabled()\fP, \fBsetColorBarWidth()\fP +.RE +.PP + +.SS "void QwtScaleWidget::setColorBarWidth (intwidth)"Set the width of the color bar +.PP +\fBParameters:\fP +.RS 4 +\fIwidth\fP Width +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBcolorBarWidth()\fP, \fBsetColorBarEnabled()\fP +.RE +.PP + +.SS "void QwtScaleWidget::setColorMap (const \fBQwtInterval\fP &interval, \fBQwtColorMap\fP *colorMap)"Set the color map and value interval, that are used for displaying the color bar. +.PP +\fBParameters:\fP +.RS 4 +\fIinterval\fP Value interval +.br +\fIcolorMap\fP Color map +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBcolorMap()\fP, \fBcolorBarInterval()\fP +.RE +.PP + +.SS "void QwtScaleWidget::setLabelAlignment (Qt::Alignmentalignment)" +.PP +Change the alignment for the labels. \fBSee also:\fP +.RS 4 +\fBQwtScaleDraw::setLabelAlignment()\fP, \fBsetLabelRotation()\fP +.RE +.PP + +.SS "void QwtScaleWidget::setLabelRotation (doublerotation)" +.PP +Change the rotation for the labels. See \fBQwtScaleDraw::setLabelRotation()\fP. \fBParameters:\fP +.RS 4 +\fIrotation\fP Rotation +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtScaleDraw::setLabelRotation()\fP, setLabelFlags() +.RE +.PP + +.SS "void QwtScaleWidget::setLayoutFlag (\fBLayoutFlag\fPflag, boolon)"Toggle an layout flag +.PP +\fBParameters:\fP +.RS 4 +\fIflag\fP Layout flag +.br +\fIon\fP true/false +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBtestLayoutFlag()\fP, \fBLayoutFlag\fP +.RE +.PP + +.SS "void QwtScaleWidget::setMargin (intmargin)" +.PP +Specify the margin to the colorBar/base line. \fBParameters:\fP +.RS 4 +\fImargin\fP Margin +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBmargin()\fP +.RE +.PP + +.SS "void QwtScaleWidget::setMinBorderDist (intstart, intend)"Set a minimum value for the distances of the scale's endpoints from the widget borders. This is useful to avoid that the scales are 'jumping', when the tick labels or their positions change often. +.PP +\fBParameters:\fP +.RS 4 +\fIstart\fP Minimum for the start border +.br +\fIend\fP Minimum for the end border +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBgetMinBorderDist()\fP, \fBgetBorderDistHint()\fP +.RE +.PP + +.SS "void QwtScaleWidget::setScaleDiv (\fBQwtScaleTransformation\fP *transformation, const \fBQwtScaleDiv\fP &scaleDiv)" +.PP +Assign a scale division. The scale division determines where to set the tick marks. +.PP +\fBParameters:\fP +.RS 4 +\fItransformation\fP Transformation, needed to translate between scale and pixal values +.br +\fIscaleDiv\fP Scale Division +.RE +.PP +\fBSee also:\fP +.RS 4 +For more information about scale divisions, see \fBQwtScaleDiv\fP. +.RE +.PP + +.SS "void QwtScaleWidget::setScaleDraw (\fBQwtScaleDraw\fP *sd)"Set a scale draw sd has to be created with new and will be deleted in \fB~QwtScaleWidget()\fP or the next call of \fBsetScaleDraw()\fP. +.PP +\fBParameters:\fP +.RS 4 +\fIsd\fP ScaleDraw object +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBscaleDraw()\fP +.RE +.PP + +.SS "void QwtScaleWidget::setSpacing (intspacing)" +.PP +Specify the distance between color bar, scale and title. \fBParameters:\fP +.RS 4 +\fIspacing\fP Spacing +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBspacing()\fP +.RE +.PP + +.SS "void QwtScaleWidget::setTitle (const QString &title)"Give title new text contents +.PP +\fBParameters:\fP +.RS 4 +\fItitle\fP New title +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBtitle()\fP, \fBsetTitle(const QwtText &)\fP; +.RE +.PP + +.SS "void QwtScaleWidget::setTitle (const \fBQwtText\fP &title)"Give title new text contents +.PP +\fBParameters:\fP +.RS 4 +\fItitle\fP New title +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBtitle()\fP +.RE +.PP +\fBWarning:\fP +.RS 4 +The title flags are interpreted in direction of the label, AlignTop, AlignBottom can't be set as the title will always be aligned to the scale. +.RE +.PP + +.SS "QSize QwtScaleWidget::sizeHint () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +a size hint +.RE +.PP + +.SS "int QwtScaleWidget::spacing () const"\fBReturns:\fP +.RS 4 +distance between scale and title +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetMargin()\fP +.RE +.PP + +.SS "int QwtScaleWidget::startBorderDist () const"\fBReturns:\fP +.RS 4 +start border distance +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetBorderDist()\fP +.RE +.PP + +.SS "bool QwtScaleWidget::testLayoutFlag (\fBLayoutFlag\fPflag) const"Test a layout flag +.PP +\fBParameters:\fP +.RS 4 +\fIflag\fP Layout flag +.RE +.PP +\fBReturns:\fP +.RS 4 +true/false +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetLayoutFlag()\fP, \fBLayoutFlag\fP +.RE +.PP + +.SS "\fBQwtText\fP QwtScaleWidget::title () const"\fBReturns:\fP +.RS 4 +title +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetTitle()\fP +.RE +.PP + +.SS "int QwtScaleWidget::titleHeightForWidth (intwidth) const" +.PP +Find the height of the title for a given width. \fBParameters:\fP +.RS 4 +\fIwidth\fP Width +.RE +.PP +\fBReturns:\fP +.RS 4 +height Height +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSeriesData.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSeriesData.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSeriesData.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSeriesData.3 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,107 @@ +.TH "QwtSeriesData" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtSeriesData \- +.PP +Abstract interface for iterating over samples. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherited by \fBQwtArraySeriesData< T >\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtSeriesData\fP ()" +.br +.ti -1c +.RI "virtual \fB~QwtSeriesData\fP ()" +.br +.ti -1c +.RI "virtual size_t \fBsize\fP () const =0" +.br +.ti -1c +.RI "virtual T \fBsample\fP (size_t i) const =0" +.br +.ti -1c +.RI "virtual QRectF \fBboundingRect\fP () const =0" +.br +.ti -1c +.RI "virtual void \fBsetRectOfInterest\fP (const QRectF &)" +.br +.in -1c +.SS "Protected Attributes" + +.in +1c +.ti -1c +.RI "QRectF \fBd_boundingRect\fP" +.br +.in -1c +.SH "Detailed Description" +.PP + +.SS "template class QwtSeriesData< T >" +Abstract interface for iterating over samples. + +Qwt offers several implementations of the \fBQwtSeriesData\fP API, but in situations, where data of an application specific format needs to be displayed, without having to copy it, it is recommended to implement an individual data access. +.SH "Constructor & Destructor Documentation" +.PP +.SS "template \fBQwtSeriesData\fP< T >::\fBQwtSeriesData\fP ()" +.PP +Constructor. +.SS "template \fBQwtSeriesData\fP< T >::~\fBQwtSeriesData\fP ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "template virtual QRectF \fBQwtSeriesData\fP< T >::boundingRect () const\fC [pure virtual]\fP"Calculate the bounding rect of all samples +.PP +The bounding rect is necessary for autoscaling and can be used for a couple of painting optimizations. +.PP +qwtBoundingRect(...) offers slow implementations iterating over the samples. For large sets it is recommended to implement something faster f.e. by caching the bounding rect. +.PP +Implemented in \fBQwtPointSeriesData\fP, \fBQwtPoint3DSeriesData\fP, \fBQwtIntervalSeriesData\fP, \fBQwtSetSeriesData\fP, \fBQwtPointArrayData\fP, \fBQwtCPointerData\fP, and \fBQwtSyntheticPointData\fP. +.SS "template virtual T \fBQwtSeriesData\fP< T >::sample (size_ti) const\fC [pure virtual]\fP"Return a sample +.PP +\fBParameters:\fP +.RS 4 +\fIi\fP Index +.RE +.PP +\fBReturns:\fP +.RS 4 +Sample at position i +.RE +.PP + +.PP +Implemented in \fBQwtArraySeriesData< T >\fP, \fBQwtPointArrayData\fP, \fBQwtCPointerData\fP, \fBQwtSyntheticPointData\fP, \fBQwtArraySeriesData< QwtIntervalSample >\fP, \fBQwtArraySeriesData< QPointF >\fP, \fBQwtArraySeriesData< QwtPoint3D >\fP, and \fBQwtArraySeriesData< QwtSetSample >\fP. +.SS "template void \fBQwtSeriesData\fP< T >::setRectOfInterest (const QRectF &)\fC [virtual]\fP"Set a the 'rect of interest' +.PP +\fBQwtPlotSeriesItem\fP defines the current area of the plot canvas as 'rect of interest' ( \fBQwtPlotSeriesItem::updateScaleDiv()\fP ). It can be used to implement different levels of details. +.PP +The default implementation does nothing. +.PP +Reimplemented in \fBQwtSyntheticPointData\fP. +.SS "template virtual size_t \fBQwtSeriesData\fP< T >::size () const\fC [pure virtual]\fP"\fBReturns:\fP +.RS 4 +Number of samples +.RE +.PP + +.PP +Implemented in \fBQwtArraySeriesData< T >\fP, \fBQwtPointArrayData\fP, \fBQwtCPointerData\fP, \fBQwtSyntheticPointData\fP, \fBQwtArraySeriesData< QwtIntervalSample >\fP, \fBQwtArraySeriesData< QPointF >\fP, \fBQwtArraySeriesData< QwtPoint3D >\fP, and \fBQwtArraySeriesData< QwtSetSample >\fP. +.SH "Member Data Documentation" +.PP +.SS "template QRectF \fBQwtSeriesData\fP< T >::\fBd_boundingRect\fP\fC [mutable, protected]\fP" +.PP +Can be used to cache a calculated bounding rectangle. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSetSample.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSetSample.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSetSample.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSetSample.3 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,62 @@ +.TH "QwtSetSample" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtSetSample \- +.PP +A sample of the types (x1...xn, y) or (x, y1..yn) + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtSetSample\fP ()" +.br +.ti -1c +.RI "bool \fBoperator==\fP (const \fBQwtSetSample\fP &other) const " +.br +.ti -1c +.RI "bool \fBoperator!=\fP (const \fBQwtSetSample\fP &other) const " +.br +.in -1c +.SS "Public Attributes" + +.in +1c +.ti -1c +.RI "double \fBvalue\fP" +.br +.ti -1c +.RI "QVector< double > \fBset\fP" +.br +.in -1c +.SH "Detailed Description" +.PP +A sample of the types (x1...xn, y) or (x, y1..yn) +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtSetSample::QwtSetSample ()\fC [inline]\fP"Constructor The value is set to 0.0 +.SH "Member Function Documentation" +.PP +.SS "bool QwtSetSample::operator!= (const \fBQwtSetSample\fP &other) const\fC [inline]\fP" +.PP +Compare operator. +.SS "bool QwtSetSample::operator== (const \fBQwtSetSample\fP &other) const\fC [inline]\fP" +.PP +Compare operator. +.SH "Member Data Documentation" +.PP +.SS "QVector \fBQwtSetSample::set\fP" +.PP +Vector of values associated to value. +.SS "double \fBQwtSetSample::value\fP" +.PP +value + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSetSeriesData.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSetSeriesData.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSetSeriesData.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSetSeriesData.3 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,56 @@ +.TH "QwtSetSeriesData" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtSetSeriesData \- +.PP +Interface for iterating over an array of samples. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtArraySeriesData< QwtSetSample >\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtSetSeriesData\fP (const QVector< \fBQwtSetSample\fP > &=QVector< \fBQwtSetSample\fP >())" +.br +.ti -1c +.RI "virtual QRectF \fBboundingRect\fP () const " +.br +.in -1c +.SH "Detailed Description" +.PP +Interface for iterating over an array of samples. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtSetSeriesData::QwtSetSeriesData (const QVector< \fBQwtSetSample\fP > &samples = \fCQVector<\fBQwtSetSample\fP>()\fP)"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fIsamples\fP Samples +.RE +.PP + +.SH "Member Function Documentation" +.PP +.SS "QRectF QwtSetSeriesData::boundingRect () const\fC [virtual]\fP" +.PP +Calculate the bounding rect. The bounding rectangle is calculated once by iterating over all points and is stored for all following requests. +.PP +\fBReturns:\fP +.RS 4 +Bounding rectangle +.RE +.PP + +.PP +Implements \fBQwtSeriesData< QwtSetSample >\fP. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSimpleCompassRose.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSimpleCompassRose.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSimpleCompassRose.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSimpleCompassRose.3 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,206 @@ +.TH "QwtSimpleCompassRose" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtSimpleCompassRose \- +.PP +A simple rose for \fBQwtCompass\fP. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtCompassRose\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtSimpleCompassRose\fP (int numThorns=8, int numThornLevels=-1)" +.br +.ti -1c +.RI "virtual \fB~QwtSimpleCompassRose\fP ()" +.br +.ti -1c +.RI "void \fBsetWidth\fP (double w)" +.br +.ti -1c +.RI "double \fBwidth\fP () const " +.br +.ti -1c +.RI "void \fBsetNumThorns\fP (int count)" +.br +.ti -1c +.RI "int \fBnumThorns\fP () const " +.br +.ti -1c +.RI "void \fBsetNumThornLevels\fP (int count)" +.br +.ti -1c +.RI "int \fBnumThornLevels\fP () const " +.br +.ti -1c +.RI "void \fBsetShrinkFactor\fP (double factor)" +.br +.ti -1c +.RI "double \fBshrinkFactor\fP () const " +.br +.ti -1c +.RI "virtual void \fBdraw\fP (QPainter *, const QPointF ¢er, double radius, double north, QPalette::ColorGroup=QPalette::Active) const " +.br +.in -1c +.SS "Static Public Member Functions" + +.in +1c +.ti -1c +.RI "static void \fBdrawRose\fP (QPainter *, const QPalette &, const QPointF ¢er, double radius, double origin, double width, int numThorns, int numThornLevels, double shrinkFactor)" +.br +.in -1c +.SH "Detailed Description" +.PP +A simple rose for \fBQwtCompass\fP. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtSimpleCompassRose::QwtSimpleCompassRose (intnumThorns = \fC8\fP, intnumThornLevels = \fC-1\fP)"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fInumThorns\fP Number of thorns +.br +\fInumThornLevels\fP Number of thorn levels +.RE +.PP + +.SS "QwtSimpleCompassRose::~QwtSimpleCompassRose ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "void QwtSimpleCompassRose::draw (QPainter *painter, const QPointF ¢er, doubleradius, doublenorth, QPalette::ColorGroupcg = \fCQPalette::Active\fP) const\fC [virtual]\fP"Draw the rose +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIcenter\fP Center point +.br +\fIradius\fP Radius of the rose +.br +\fInorth\fP Position +.br +\fIcg\fP Color group +.RE +.PP + +.PP +Implements \fBQwtCompassRose\fP. +.SS "void QwtSimpleCompassRose::drawRose (QPainter *painter, const QPalette &palette, const QPointF ¢er, doubleradius, doublenorth, doublewidth, intnumThorns, intnumThornLevels, doubleshrinkFactor)\fC [static]\fP"Draw the rose +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIpalette\fP Palette +.br +\fIcenter\fP Center of the rose +.br +\fIradius\fP Radius of the rose +.br +\fInorth\fP Position pointing to north +.br +\fIwidth\fP Width of the rose +.br +\fInumThorns\fP Number of thorns +.br +\fInumThornLevels\fP Number of thorn levels +.br +\fIshrinkFactor\fP Factor to shrink the thorns with each level +.RE +.PP + +.SS "int QwtSimpleCompassRose::numThornLevels () const"\fBReturns:\fP +.RS 4 +Number of thorn levels +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetNumThorns()\fP, \fBsetNumThornLevels()\fP +.RE +.PP + +.SS "int QwtSimpleCompassRose::numThorns () const"\fBReturns:\fP +.RS 4 +Number of thorns +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetNumThorns()\fP, \fBsetNumThornLevels()\fP +.RE +.PP + +.SS "void QwtSimpleCompassRose::setNumThornLevels (intnumThornLevels)"Set the of thorns levels +.PP +\fBParameters:\fP +.RS 4 +\fInumThornLevels\fP Number of thorns levels +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetNumThorns()\fP, \fBnumThornLevels()\fP +.RE +.PP + +.SS "void QwtSimpleCompassRose::setNumThorns (intnumThorns)"Set the number of thorns on one level The number is aligned to a multiple of 4, with a minimum of 4 +.PP +\fBParameters:\fP +.RS 4 +\fInumThorns\fP Number of thorns +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBnumThorns()\fP, \fBsetNumThornLevels()\fP +.RE +.PP + +.SS "void QwtSimpleCompassRose::setShrinkFactor (doublefactor)"Set the Factor how to shrink the thorns with each level The default value is 0.9. +.PP +\fBSee also:\fP +.RS 4 +\fBshrinkFactor()\fP +.RE +.PP + +.SS "void QwtSimpleCompassRose::setWidth (doublewidth)"Set the width of the rose heads. Lower value make thinner heads. The range is limited from 0.03 to 0.4. +.PP +\fBParameters:\fP +.RS 4 +\fIwidth\fP Width +.RE +.PP + +.SS "double QwtSimpleCompassRose::shrinkFactor () const"\fBReturns:\fP +.RS 4 +Factor how to shrink the thorns with each level +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetShrinkFactor()\fP +.RE +.PP + +.SS "double QwtSimpleCompassRose::width () const"\fBSee also:\fP +.RS 4 +\fBsetWidth()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSlider.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSlider.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSlider.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSlider.3 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,483 @@ +.TH "QwtSlider" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtSlider \- +.PP +The Slider Widget. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtAbstractSlider\fP, and \fBQwtAbstractScale\fP. +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBScalePos\fP { \fBNoScale\fP, \fBLeftScale\fP, \fBRightScale\fP, \fBTopScale\fP, \fBBottomScale\fP }" +.br +.ti -1c +.RI "enum \fBBackgroundStyle\fP { \fBTrough\fP = 0x01, \fBGroove\fP = 0x02 }" +.br +.ti -1c +.RI "typedef QFlags< \fBBackgroundStyle\fP > \fBBackgroundStyles\fP" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtSlider\fP (QWidget *parent, Qt::Orientation=Qt::Horizontal, \fBScalePos\fP=NoScale, \fBBackgroundStyles\fP=Trough)" +.br +.ti -1c +.RI "virtual void \fBsetOrientation\fP (Qt::Orientation)" +.br +.ti -1c +.RI "void \fBsetBackgroundStyle\fP (\fBBackgroundStyles\fP)" +.br +.ti -1c +.RI "\fBBackgroundStyles\fP \fBbackgroundStyle\fP () const " +.br +.ti -1c +.RI "void \fBsetScalePosition\fP (\fBScalePos\fP s)" +.br +.ti -1c +.RI "\fBScalePos\fP \fBscalePosition\fP () const " +.br +.ti -1c +.RI "void \fBsetHandleSize\fP (int width, int height)" +.br +.ti -1c +.RI "void \fBsetHandleSize\fP (const QSize &)" +.br +.ti -1c +.RI "QSize \fBhandleSize\fP () const " +.br +.ti -1c +.RI "void \fBsetBorderWidth\fP (int bw)" +.br +.ti -1c +.RI "int \fBborderWidth\fP () const " +.br +.ti -1c +.RI "void \fBsetSpacing\fP (int)" +.br +.ti -1c +.RI "int \fBspacing\fP () const " +.br +.ti -1c +.RI "virtual QSize \fBsizeHint\fP () const " +.br +.ti -1c +.RI "virtual QSize \fBminimumSizeHint\fP () const " +.br +.ti -1c +.RI "void \fBsetScaleDraw\fP (\fBQwtScaleDraw\fP *)" +.br +.ti -1c +.RI "const \fBQwtScaleDraw\fP * \fBscaleDraw\fP () const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual double \fBgetValue\fP (const QPoint &p)" +.br +.ti -1c +.RI "virtual void \fBgetScrollMode\fP (const QPoint &p, \fBQwtAbstractSlider::ScrollMode\fP &, int &direction) const " +.br +.ti -1c +.RI "virtual void \fBdrawSlider\fP (QPainter *, const QRect &) const " +.br +.ti -1c +.RI "virtual void \fBdrawHandle\fP (QPainter *, const QRect &, int pos) const " +.br +.ti -1c +.RI "virtual void \fBresizeEvent\fP (QResizeEvent *)" +.br +.ti -1c +.RI "virtual void \fBpaintEvent\fP (QPaintEvent *)" +.br +.ti -1c +.RI "virtual void \fBchangeEvent\fP (QEvent *)" +.br +.ti -1c +.RI "virtual void \fBvalueChange\fP ()" +.br +.ti -1c +.RI "virtual void \fBrangeChange\fP ()" +.br +.ti -1c +.RI "virtual void \fBscaleChange\fP ()" +.br +.ti -1c +.RI "int \fBtransform\fP (double v) const " +.br +.ti -1c +.RI "\fBQwtScaleDraw\fP * \fBscaleDraw\fP ()" +.br +.in -1c +.SH "Detailed Description" +.PP +The Slider Widget. + +\fBQwtSlider\fP is a slider widget which operates on an interval of type double. \fBQwtSlider\fP supports different layouts as well as a scale. +.PP +.PP +\fBSee also:\fP +.RS 4 +\fBQwtAbstractSlider\fP and \fBQwtAbstractScale\fP for the descriptions of the inherited members. +.RE +.PP + +.SH "Member Typedef Documentation" +.PP +.SS "typedef QFlags<\fBBackgroundStyle\fP> \fBQwtSlider::BackgroundStyles\fP" +.PP +Background styles. +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtSlider::BackgroundStyle\fP"Background style. +.PP +\fBSee also:\fP +.RS 4 +\fBQwtSlider()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fITrough \fP\fP +Trough background. +.TP +\fB\fIGroove \fP\fP +Groove. +.SS "enum \fBQwtSlider::ScalePos\fP"Scale position. \fBQwtSlider\fP tries to enforce valid combinations of its orientation and scale position: +.PP +.IP "\(bu" 2 +Qt::Horizonal combines with NoScale, TopScale and BottomScale +.IP "\(bu" 2 +Qt::Vertical combines with NoScale, LeftScale and RightScale +.PP +.PP +\fBSee also:\fP +.RS 4 +\fBQwtSlider()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fINoScale \fP\fP +The slider has no scale. +.TP +\fB\fILeftScale \fP\fP +The scale is left of the slider. +.TP +\fB\fIRightScale \fP\fP +The scale is right of the slider. +.TP +\fB\fITopScale \fP\fP +The scale is above of the slider. +.TP +\fB\fIBottomScale \fP\fP +The scale is below of the slider. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtSlider::QwtSlider (QWidget *parent, Qt::Orientationorientation = \fCQt::Horizontal\fP, \fBScalePos\fPscalePos = \fCNoScale\fP, \fBBackgroundStyles\fPbgStyle = \fCTrough\fP)\fC [explicit]\fP" +.PP +Constructor. \fBParameters:\fP +.RS 4 +\fIparent\fP parent widget +.br +\fIorientation\fP Orientation of the slider. Can be Qt::Horizontal or Qt::Vertical. Defaults to Qt::Horizontal. +.br +\fIscalePos\fP Position of the scale. Defaults to \fBQwtSlider::NoScale\fP. +.br +\fIbgStyle\fP Background style. \fBQwtSlider::Trough\fP draws the slider button in a trough, QwtSlider::Slot draws a slot underneath the button. An or-combination of both may also be used. The default is \fBQwtSlider::Trough\fP. +.RE +.PP +\fBQwtSlider\fP enforces valid combinations of its orientation and scale position. If the combination is invalid, the scale position will be set to NoScale. Valid combinations are: +.IP "\(bu" 2 +Qt::Horizonal with NoScale, TopScale, or BottomScale; +.IP "\(bu" 2 +Qt::Vertical with NoScale, LeftScale, or RightScale. +.PP + +.SH "Member Function Documentation" +.PP +.SS "\fBQwtSlider::BackgroundStyles\fP QwtSlider::backgroundStyle () const"\fBReturns:\fP +.RS 4 +the background style. +.RE +.PP + +.SS "int QwtSlider::borderWidth () const"\fBReturns:\fP +.RS 4 +the border width. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetBorderWidth()\fP +.RE +.PP + +.SS "void QwtSlider::changeEvent (QEvent *event)\fC [protected, virtual]\fP" +.PP +Qt change event handler. +.SS "void QwtSlider::drawHandle (QPainter *painter, const QRect &sliderRect, intpos) const\fC [protected, virtual]\fP"Draw the thumb at a position +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIsliderRect\fP Bounding rectangle of the slider +.br +\fIpos\fP Position of the slider thumb +.RE +.PP + +.SS "void QwtSlider::drawSlider (QPainter *painter, const QRect &sliderRect) const\fC [protected, virtual]\fP"Draw the slider into the specified rectangle. +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIsliderRect\fP Bounding rectangle of the slider +.RE +.PP + +.SS "void QwtSlider::getScrollMode (const QPoint &p, \fBQwtAbstractSlider::ScrollMode\fP &scrollMode, int &direction) const\fC [protected, virtual]\fP" +.PP +Determine scrolling mode and direction. \fBParameters:\fP +.RS 4 +\fIp\fP point +.br +\fIscrollMode\fP Scrolling mode +.br +\fIdirection\fP Direction +.RE +.PP + +.PP +Implements \fBQwtAbstractSlider\fP. +.SS "double QwtSlider::getValue (const QPoint &pos)\fC [protected, virtual]\fP"Determine the value corresponding to a specified mouse location. +.PP +\fBParameters:\fP +.RS 4 +\fIpos\fP Mouse position +.RE +.PP + +.PP +Implements \fBQwtAbstractSlider\fP. +.SS "QSize QwtSlider::handleSize () const"\fBReturns:\fP +.RS 4 +Size of the handle. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetHandleSize()\fP +.RE +.PP + +.SS "QSize QwtSlider::minimumSizeHint () const\fC [virtual]\fP" +.PP +Return a minimum size hint. \fBWarning:\fP +.RS 4 +The return value of \fBQwtSlider::minimumSizeHint()\fP depends on the font and the scale. +.RE +.PP + +.SS "void QwtSlider::paintEvent (QPaintEvent *event)\fC [protected, virtual]\fP"Qt paint event +.PP +\fBParameters:\fP +.RS 4 +\fIevent\fP Paint event +.RE +.PP + +.SS "void QwtSlider::rangeChange ()\fC [protected, virtual]\fP" +.PP +Notify change of range. +.PP +Reimplemented from \fBQwtDoubleRange\fP. +.SS "void QwtSlider::resizeEvent (QResizeEvent *)\fC [protected, virtual]\fP" +.PP +Qt resize event. +.SS "void QwtSlider::scaleChange ()\fC [protected, virtual]\fP" +.PP +Notify changed scale. +.PP +Reimplemented from \fBQwtAbstractScale\fP. +.SS "const \fBQwtScaleDraw\fP * QwtSlider::scaleDraw () const"\fBReturns:\fP +.RS 4 +the scale draw of the slider +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetScaleDraw()\fP +.RE +.PP + +.SS "\fBQwtScaleDraw\fP * QwtSlider::scaleDraw ()\fC [protected]\fP"\fBReturns:\fP +.RS 4 +the scale draw of the slider +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetScaleDraw()\fP +.RE +.PP + +.SS "\fBQwtSlider::ScalePos\fP QwtSlider::scalePosition () const" +.PP +Return the scale position. +.SS "void QwtSlider::setBackgroundStyle (\fBBackgroundStyles\fPstyle)"Set the background style. +.SS "void QwtSlider::setBorderWidth (intwidth)" +.PP +Change the slider's border width. \fBParameters:\fP +.RS 4 +\fIwidth\fP Border width +.RE +.PP + +.SS "void QwtSlider::setHandleSize (const QSize &size)" +.PP +Set the slider's handle size. \fBParameters:\fP +.RS 4 +\fIsize\fP New size +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBhandleSize()\fP +.RE +.PP + +.SS "void QwtSlider::setHandleSize (intwidth, intheight)" +.PP +Set the slider's handle size. \fBParameters:\fP +.RS 4 +\fIwidth\fP Width +.br +\fIheight\fP Height +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBhandleSize()\fP +.RE +.PP + +.SS "void QwtSlider::setOrientation (Qt::Orientationo)\fC [virtual]\fP" +.PP +Set the orientation. \fBParameters:\fP +.RS 4 +\fIo\fP Orientation. Allowed values are Qt::Horizontal and Qt::Vertical. +.RE +.PP +If the new orientation and the old scale position are an invalid combination, the scale position will be set to \fBQwtSlider::NoScale\fP. +.PP +\fBSee also:\fP +.RS 4 +\fBQwtAbstractSlider::orientation()\fP +.RE +.PP + +.PP +Reimplemented from \fBQwtAbstractSlider\fP. +.SS "void QwtSlider::setScaleDraw (\fBQwtScaleDraw\fP *scaleDraw)" +.PP +Set a scale draw. For changing the labels of the scales, it is necessary to derive from \fBQwtScaleDraw\fP and overload \fBQwtScaleDraw::label()\fP. +.PP +\fBParameters:\fP +.RS 4 +\fIscaleDraw\fP ScaleDraw object, that has to be created with new and will be deleted in ~QwtSlider or the next call of \fBsetScaleDraw()\fP. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBscaleDraw()\fP +.RE +.PP + +.SS "void QwtSlider::setScalePosition (\fBScalePos\fPscalePos)" +.PP +Change the scale position (and slider orientation). \fBParameters:\fP +.RS 4 +\fIscalePos\fP Position of the scale. +.RE +.PP +A valid combination of scale position and orientation is enforced: +.IP "\(bu" 2 +if the new scale position is Left or Right, the scale orientation will become Qt::Vertical; +.IP "\(bu" 2 +if the new scale position is Bottom or Top the scale orientation will become Qt::Horizontal; +.IP "\(bu" 2 +if the new scale position is \fBQwtSlider::NoScale\fP, the scale orientation will not change. +.PP + +.SS "void QwtSlider::setSpacing (intspacing)" +.PP +Change the spacing between pipe and scale. A spacing of 0 means, that the backbone of the scale is below the trough. +.PP +The default setting is 4 pixels. +.PP +\fBParameters:\fP +.RS 4 +\fIspacing\fP Number of pixels +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBspacing()\fP; +.RE +.PP + +.SS "QSize QwtSlider::sizeHint () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +\fBQwtSlider::minimumSizeHint()\fP +.RE +.PP + +.SS "int QwtSlider::spacing () const"\fBReturns:\fP +.RS 4 +Number of pixels between slider and scale +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetSpacing()\fP +.RE +.PP + +.SS "int QwtSlider::transform (doublevalue) const\fC [protected]\fP"Map and round a value into widget coordinates +.PP +\fBParameters:\fP +.RS 4 +\fIvalue\fP Value +.RE +.PP + +.SS "void QwtSlider::valueChange ()\fC [protected, virtual]\fP" +.PP +Notify change of value. +.PP +Reimplemented from \fBQwtAbstractSlider\fP. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSpline.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSpline.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSpline.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSpline.3 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,256 @@ +.TH "QwtSpline" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtSpline \- +.PP +A class for spline interpolation. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBSplineType\fP { \fBNatural\fP, \fBPeriodic\fP }" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtSpline\fP ()" +.br +.ti -1c +.RI "\fBQwtSpline\fP (const \fBQwtSpline\fP &)" +.br +.ti -1c +.RI "\fB~QwtSpline\fP ()" +.br +.ti -1c +.RI "\fBQwtSpline\fP & \fBoperator=\fP (const \fBQwtSpline\fP &)" +.br +.ti -1c +.RI "void \fBsetSplineType\fP (\fBSplineType\fP)" +.br +.ti -1c +.RI "\fBSplineType\fP \fBsplineType\fP () const " +.br +.ti -1c +.RI "bool \fBsetPoints\fP (const QPolygonF &points)" +.br +.ti -1c +.RI "QPolygonF \fBpoints\fP () const " +.br +.ti -1c +.RI "void \fBreset\fP ()" +.br +.ti -1c +.RI "bool \fBisValid\fP () const " +.br +.ti -1c +.RI "double \fBvalue\fP (double x) const " +.br +.ti -1c +.RI "const QVector< double > & \fBcoefficientsA\fP () const " +.br +.ti -1c +.RI "const QVector< double > & \fBcoefficientsB\fP () const " +.br +.ti -1c +.RI "const QVector< double > & \fBcoefficientsC\fP () const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "bool \fBbuildNaturalSpline\fP (const QPolygonF &)" +.br +.ti -1c +.RI "bool \fBbuildPeriodicSpline\fP (const QPolygonF &)" +.br +.in -1c +.SH "Detailed Description" +.PP +A class for spline interpolation. + +The \fBQwtSpline\fP class is used for cubical spline interpolation. Two types of splines, natural and periodic, are supported. +.PP +\fBUsage:\fP +.RS 4 + +.PD 0 + +.IP "1." 4 +First call \fBsetPoints()\fP to determine the spline coefficients for a tabulated function y(x). +.IP "2." 4 +After the coefficients have been set up, the interpolated function value for an argument x can be determined by calling \fBQwtSpline::value()\fP. +.PP +.RE +.PP +\fBExample:\fP +.RS 4 + +.PP +.nf +#include + +QPolygonF interpolate(const QPolygonF& points, int numValues) +{ + QwtSpline spline; + if ( !spline.setPoints(points) ) + return points; + + QPolygonF interpolatedPoints(numValues); + + const double delta = + (points[numPoints - 1].x() - points[0].x()) / (points.size() - 1); + for(i = 0; i < points.size(); i++) / interpolate + { + const double x = points[0].x() + i * delta; + interpolatedPoints[i].setX(x); + interpolatedPoints[i].setY(spline.value(x)); + } + return interpolatedPoints; +} + +.fi +.PP + +.RE +.PP + +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtSpline::SplineType\fP" +.PP +Spline type. +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fINatural \fP\fP +A natural spline. +.TP +\fB\fIPeriodic \fP\fP +A periodic spline. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtSpline::QwtSpline ()" +.PP +Constructor. +.SS "QwtSpline::QwtSpline (const \fBQwtSpline\fP &other)"Copy constructor +.PP +\fBParameters:\fP +.RS 4 +\fIother\fP Spline used for initilization +.RE +.PP + +.SS "QwtSpline::~QwtSpline ()" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "bool QwtSpline::buildNaturalSpline (const QPolygonF &points)\fC [protected]\fP" +.PP +Determines the coefficients for a natural spline. \fBReturns:\fP +.RS 4 +true if successful +.RE +.PP + +.SS "bool QwtSpline::buildPeriodicSpline (const QPolygonF &points)\fC [protected]\fP" +.PP +Determines the coefficients for a periodic spline. \fBReturns:\fP +.RS 4 +true if successful +.RE +.PP + +.SS "const QVector< double > & QwtSpline::coefficientsA () const"\fBReturns:\fP +.RS 4 +A coefficients +.RE +.PP + +.SS "const QVector< double > & QwtSpline::coefficientsB () const"\fBReturns:\fP +.RS 4 +B coefficients +.RE +.PP + +.SS "const QVector< double > & QwtSpline::coefficientsC () const"\fBReturns:\fP +.RS 4 +C coefficients +.RE +.PP + +.SS "bool QwtSpline::isValid () const" +.PP +True if valid. +.SS "\fBQwtSpline\fP & QwtSpline::operator= (const \fBQwtSpline\fP &other)"Assignment operator +.PP +\fBParameters:\fP +.RS 4 +\fIother\fP Spline used for initilization +.RE +.PP + +.SS "QPolygonF QwtSpline::points () const"Return points passed by setPoints +.SS "void QwtSpline::reset ()" +.PP +Free allocated memory and set size to 0. +.SS "bool QwtSpline::setPoints (const QPolygonF &points)" +.PP +Calculate the spline coefficients. Depending on the value of \fIperiodic\fP, this function will determine the coefficients for a natural or a periodic spline and store them internally. +.PP +\fBParameters:\fP +.RS 4 +\fIpoints\fP Points +.RE +.PP +\fBReturns:\fP +.RS 4 +true if successful +.RE +.PP +\fBWarning:\fP +.RS 4 +The sequence of x (but not y) values has to be strictly monotone increasing, which means \fCpoints[i].x() < points[i+1].x()\fP. If this is not the case, the function will return false +.RE +.PP + +.SS "void QwtSpline::setSplineType (\fBSplineType\fPsplineType)"Select the algorithm used for calculating the spline +.PP +\fBParameters:\fP +.RS 4 +\fIsplineType\fP Spline type +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsplineType()\fP +.RE +.PP + +.SS "\fBQwtSpline::SplineType\fP QwtSpline::splineType () const"\fBReturns:\fP +.RS 4 +the spline type +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetSplineType()\fP +.RE +.PP + +.SS "double QwtSpline::value (doublex) const"Calculate the interpolated function value corresponding to a given argument x. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSplineCurveFitter.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSplineCurveFitter.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSplineCurveFitter.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSplineCurveFitter.3 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,193 @@ +.TH "QwtSplineCurveFitter" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtSplineCurveFitter \- +.PP +A curve fitter using cubic splines. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtCurveFitter\fP. +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBFitMode\fP { \fBAuto\fP, \fBSpline\fP, \fBParametricSpline\fP }" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtSplineCurveFitter\fP ()" +.br +.ti -1c +.RI "virtual \fB~QwtSplineCurveFitter\fP ()" +.br +.ti -1c +.RI "void \fBsetFitMode\fP (\fBFitMode\fP)" +.br +.ti -1c +.RI "\fBFitMode\fP \fBfitMode\fP () const " +.br +.ti -1c +.RI "void \fBsetSpline\fP (const \fBQwtSpline\fP &)" +.br +.ti -1c +.RI "const \fBQwtSpline\fP & \fBspline\fP () const " +.br +.ti -1c +.RI "\fBQwtSpline\fP & \fBspline\fP ()" +.br +.ti -1c +.RI "void \fBsetSplineSize\fP (int size)" +.br +.ti -1c +.RI "int \fBsplineSize\fP () const " +.br +.ti -1c +.RI "virtual QPolygonF \fBfitCurve\fP (const QPolygonF &) const " +.br +.in -1c +.SH "Detailed Description" +.PP +A curve fitter using cubic splines. +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtSplineCurveFitter::FitMode\fP"Spline type The default setting is Auto +.PP +\fBSee also:\fP +.RS 4 +\fBsetFitMode()\fP, \fBFitMode()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIAuto \fP\fP +Use the default spline algorithm for polygons with increasing x values ( p[i-1] < p[i] ), otherwise use a parametric spline algorithm. +.TP +\fB\fISpline \fP\fP +Use a default spline algorithm. +.TP +\fB\fIParametricSpline \fP\fP +Use a parametric spline algorithm. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtSplineCurveFitter::QwtSplineCurveFitter ()" +.PP +Constructor. +.SS "QwtSplineCurveFitter::~QwtSplineCurveFitter ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "QPolygonF QwtSplineCurveFitter::fitCurve (const QPolygonF &points) const\fC [virtual]\fP"Find a curve which has the best fit to a series of data points +.PP +\fBParameters:\fP +.RS 4 +\fIpoints\fP Series of data points +.RE +.PP +\fBReturns:\fP +.RS 4 +Curve points +.RE +.PP + +.PP +Implements \fBQwtCurveFitter\fP. +.SS "\fBQwtSplineCurveFitter::FitMode\fP QwtSplineCurveFitter::fitMode () const"\fBReturns:\fP +.RS 4 +Mode representing a spline algorithm +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetFitMode()\fP +.RE +.PP + +.SS "void QwtSplineCurveFitter::setFitMode (\fBFitMode\fPmode)"Select the algorithm used for building the spline +.PP +\fBParameters:\fP +.RS 4 +\fImode\fP Mode representing a spline algorithm +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBfitMode()\fP +.RE +.PP + +.SS "void QwtSplineCurveFitter::setSpline (const \fBQwtSpline\fP &spline)"Assign a spline +.PP +\fBParameters:\fP +.RS 4 +\fIspline\fP Spline +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBspline()\fP +.RE +.PP + +.SS "void QwtSplineCurveFitter::setSplineSize (intsplineSize)"Assign a spline size ( has to be at least 10 points ) +.PP +\fBParameters:\fP +.RS 4 +\fIsplineSize\fP Spline size +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsplineSize()\fP +.RE +.PP + +.SS "const \fBQwtSpline\fP & QwtSplineCurveFitter::spline () const"\fBReturns:\fP +.RS 4 +Spline +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetSpline()\fP +.RE +.PP + +.SS "\fBQwtSpline\fP & QwtSplineCurveFitter::spline ()"\fBReturns:\fP +.RS 4 +Spline +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetSpline()\fP +.RE +.PP + +.SS "int QwtSplineCurveFitter::splineSize () const"\fBReturns:\fP +.RS 4 +Spline size +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetSplineSize()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSymbol.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSymbol.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSymbol.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSymbol.3 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,385 @@ +.TH "QwtSymbol" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtSymbol \- +.PP +A class for drawing symbols. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBStyle\fP { \fBNoSymbol\fP = -1, \fBEllipse\fP, \fBRect\fP, \fBDiamond\fP, \fBTriangle\fP, \fBDTriangle\fP, \fBUTriangle\fP, \fBLTriangle\fP, \fBRTriangle\fP, \fBCross\fP, \fBXCross\fP, \fBHLine\fP, \fBVLine\fP, \fBStar1\fP, \fBStar2\fP, \fBHexagon\fP, \fBUserStyle\fP = 1000 }" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtSymbol\fP (\fBStyle\fP=NoSymbol)" +.br +.ti -1c +.RI "\fBQwtSymbol\fP (\fBStyle\fP, const QBrush &, const QPen &, const QSize &)" +.br +.ti -1c +.RI "\fBQwtSymbol\fP (const \fBQwtSymbol\fP &)" +.br +.ti -1c +.RI "virtual \fB~QwtSymbol\fP ()" +.br +.ti -1c +.RI "\fBQwtSymbol\fP & \fBoperator=\fP (const \fBQwtSymbol\fP &)" +.br +.ti -1c +.RI "bool \fBoperator==\fP (const \fBQwtSymbol\fP &) const " +.br +.ti -1c +.RI "bool \fBoperator!=\fP (const \fBQwtSymbol\fP &) const " +.br +.ti -1c +.RI "void \fBsetSize\fP (const QSize &)" +.br +.ti -1c +.RI "void \fBsetSize\fP (int width, int height=-1)" +.br +.ti -1c +.RI "const QSize & \fBsize\fP () const " +.br +.ti -1c +.RI "virtual void \fBsetColor\fP (const QColor &)" +.br +.ti -1c +.RI "void \fBsetBrush\fP (const QBrush &b)" +.br +.ti -1c +.RI "const QBrush & \fBbrush\fP () const " +.br +.ti -1c +.RI "void \fBsetPen\fP (const QPen &)" +.br +.ti -1c +.RI "const QPen & \fBpen\fP () const " +.br +.ti -1c +.RI "void \fBsetStyle\fP (\fBStyle\fP)" +.br +.ti -1c +.RI "\fBStyle\fP \fBstyle\fP () const " +.br +.ti -1c +.RI "void \fBdrawSymbol\fP (QPainter *, const QPointF &) const " +.br +.ti -1c +.RI "void \fBdrawSymbols\fP (QPainter *, const QPolygonF &) const " +.br +.ti -1c +.RI "virtual QSize \fBboundingSize\fP () const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual void \fBdrawSymbols\fP (QPainter *, const QPointF *, int numPoints) const " +.br +.in -1c +.SH "Detailed Description" +.PP +A class for drawing symbols. +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtSymbol::Style\fP"Symbol Style +.PP +\fBSee also:\fP +.RS 4 +\fBsetStyle()\fP, \fBstyle()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fINoSymbol \fP\fP +No Style. The symbol cannot be drawn. +.TP +\fB\fIEllipse \fP\fP +Ellipse or circle. +.TP +\fB\fIRect \fP\fP +Rectangle. +.TP +\fB\fIDiamond \fP\fP +Diamond. +.TP +\fB\fITriangle \fP\fP +Triangle pointing upwards. +.TP +\fB\fIDTriangle \fP\fP +Triangle pointing downwards. +.TP +\fB\fIUTriangle \fP\fP +Triangle pointing upwards. +.TP +\fB\fILTriangle \fP\fP +Triangle pointing left. +.TP +\fB\fIRTriangle \fP\fP +Triangle pointing right. +.TP +\fB\fICross \fP\fP +Cross (+) +.TP +\fB\fIXCross \fP\fP +Diagonal cross (X) +.TP +\fB\fIHLine \fP\fP +Horizontal line. +.TP +\fB\fIVLine \fP\fP +Vertical line. +.TP +\fB\fIStar1 \fP\fP +X combined with +. +.TP +\fB\fIStar2 \fP\fP +Six-pointed star. +.TP +\fB\fIHexagon \fP\fP +Hexagon. +.TP +\fB\fIUserStyle \fP\fP +Styles >= QwtSymbol::UserSymbol are reserved for derived classes of \fBQwtSymbol\fP that overload \fBdrawSymbols()\fP with additional application specific symbol types. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtSymbol::QwtSymbol (\fBStyle\fPstyle = \fCNoSymbol\fP)"Default Constructor +.PP +\fBParameters:\fP +.RS 4 +\fIstyle\fP Symbol Style +.RE +.PP +The symbol is constructed with gray interior, black outline with zero width, no size and style 'NoSymbol'. +.SS "QwtSymbol::QwtSymbol (\fBQwtSymbol::Style\fPstyle, const QBrush &brush, const QPen &pen, const QSize &size)" +.PP +Constructor. \fBParameters:\fP +.RS 4 +\fIstyle\fP Symbol Style +.br +\fIbrush\fP brush to fill the interior +.br +\fIpen\fP outline pen +.br +\fIsize\fP size +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetStyle()\fP, \fBsetBrush()\fP, \fBsetPen()\fP, \fBsetSize()\fP +.RE +.PP + +.SS "QwtSymbol::QwtSymbol (const \fBQwtSymbol\fP &other)" +.PP +Copy constructor. \fBParameters:\fP +.RS 4 +\fIother\fP Symbol +.RE +.PP + +.SS "QwtSymbol::~QwtSymbol ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "QSize QwtSymbol::boundingSize () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +Size of the bounding rectangle of a symbol +.RE +.PP + +.SS "const QBrush & QwtSymbol::brush () const"\fBReturns:\fP +.RS 4 +Brush +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetBrush()\fP +.RE +.PP + +.SS "void QwtSymbol::drawSymbol (QPainter *painter, const QPointF &pos) const\fC [inline]\fP" +.PP +Draw the symbol at a specified position. \fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIpos\fP Position of the symbol in screen coordinates +.RE +.PP + +.SS "void QwtSymbol::drawSymbols (QPainter *painter, const QPointF *points, intnumPoints) const\fC [protected, virtual]\fP"Draw an array of symbols +.PP +Painting several symbols is more effective than drawing symbols one by one, as a couple of layout calculations and setting of pen/brush can be done once for the complete array. +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIpoints\fP Array of points +.br +\fInumPoints\fP Number of points +.RE +.PP + +.SS "void QwtSymbol::drawSymbols (QPainter *painter, const QPolygonF &points) const\fC [inline]\fP" +.PP +Draw symbols at the specified points. \fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIpoints\fP Positions of the symbols in screen coordinates +.RE +.PP + +.SS "bool QwtSymbol::operator!= (const \fBQwtSymbol\fP &other) const" +.PP +Compare two symbols. +.SS "\fBQwtSymbol\fP & QwtSymbol::operator= (const \fBQwtSymbol\fP &other)" +.PP +Assignment operator. +.SS "bool QwtSymbol::operator== (const \fBQwtSymbol\fP &other) const" +.PP +Compare two symbols. +.SS "const QPen & QwtSymbol::pen () const"\fBReturns:\fP +.RS 4 +Pen +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetPen()\fP, \fBbrush()\fP +.RE +.PP + +.SS "void QwtSymbol::setBrush (const QBrush &brush)" +.PP +Assign a brush. The brush is used to draw the interior of the symbol. +.PP +\fBParameters:\fP +.RS 4 +\fIbrush\fP Brush +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBbrush()\fP +.RE +.PP + +.SS "void QwtSymbol::setColor (const QColor &color)\fC [virtual]\fP" +.PP +Set the color of the symbol. Change the color of the brush for symbol types with a filled area. For all other symbol types the color will be assigned to the pen. +.PP +\fBParameters:\fP +.RS 4 +\fIcolor\fP Color +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetBrush()\fP, \fBsetPen()\fP, \fBbrush()\fP, \fBpen()\fP +.RE +.PP + +.SS "void QwtSymbol::setPen (const QPen &pen)"Assign a pen +.PP +The pen is used to draw the symbol's outline. +.PP +\fBParameters:\fP +.RS 4 +\fIpen\fP Pen +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBpen()\fP, \fBsetBrush()\fP +.RE +.PP + +.SS "void QwtSymbol::setSize (intwidth, intheight = \fC-1\fP)" +.PP +Specify the symbol's size. If the 'h' parameter is left out or less than 0, and the 'w' parameter is greater than or equal to 0, the symbol size will be set to (w,w). +.PP +\fBParameters:\fP +.RS 4 +\fIwidth\fP Width +.br +\fIheight\fP Height (defaults to -1) +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsize()\fP +.RE +.PP + +.SS "void QwtSymbol::setSize (const QSize &size)"Set the symbol's size +.PP +\fBParameters:\fP +.RS 4 +\fIsize\fP Size +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsize()\fP +.RE +.PP + +.SS "void QwtSymbol::setStyle (\fBQwtSymbol::Style\fPstyle)"Specify the symbol style +.PP +\fBParameters:\fP +.RS 4 +\fIstyle\fP Style +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBstyle()\fP +.RE +.PP + +.SS "const QSize & QwtSymbol::size () const"\fBReturns:\fP +.RS 4 +Size +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetSize()\fP +.RE +.PP + +.SS "\fBQwtSymbol::Style\fP QwtSymbol::style () const"\fBReturns:\fP +.RS 4 +Current symbol style +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetStyle()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSyntheticPointData.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSyntheticPointData.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSyntheticPointData.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSyntheticPointData.3 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,260 @@ +.TH "QwtSyntheticPointData" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtSyntheticPointData \- +.PP +Synthetic point data. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtSeriesData< QPointF >\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtSyntheticPointData\fP (size_t size, const \fBQwtInterval\fP &=\fBQwtInterval\fP())" +.br +.ti -1c +.RI "void \fBsetSize\fP (size_t size)" +.br +.ti -1c +.RI "size_t \fBsize\fP () const " +.br +.ti -1c +.RI "void \fBsetInterval\fP (const \fBQwtInterval\fP &)" +.br +.ti -1c +.RI "\fBQwtInterval\fP \fBinterval\fP () const " +.br +.ti -1c +.RI "virtual QRectF \fBboundingRect\fP () const " +.br +.ti -1c +.RI "virtual QPointF \fBsample\fP (size_t i) const " +.br +.ti -1c +.RI "virtual double \fBy\fP (double x) const =0" +.br +.ti -1c +.RI "virtual double \fBx\fP (uint index) const " +.br +.ti -1c +.RI "virtual void \fBsetRectOfInterest\fP (const QRectF &)" +.br +.ti -1c +.RI "QRectF \fBrectOfInterest\fP () const " +.br +.in -1c +.SH "Detailed Description" +.PP +Synthetic point data. + +\fBQwtSyntheticPointData\fP provides a fixed number of points for an interval. The points are calculated in equidistant steps in x-direction. +.PP +If the interval is invalid, the points are calculated for the 'rect of interest', what normally is the displayed area on the plot canvas. In this mode you get different levels of detail, when zooming in/out. +.PP +\fBExample\fP +.RS 4 + +.RE +.PP +The following example shows how to implement a sinus curve. +.PP +.PP +.nf + +#include +#include +#include +#include +#include + +class SinusData: public QwtSyntheticPointData +{ +public: + SinusData(): + QwtSyntheticPointData(100) + { + } + virtual double y(double x) const + { + return qSin(x); + } +}; + +int main(int argc, char **argv) +{ + QApplication a(argc, argv); + + QwtPlot plot; + plot.setAxisScale(QwtPlot::xBottom, 0.0, 10.0); + plot.setAxisScale(QwtPlot::yLeft, -1.0, 1.0); + + QwtPlotCurve *curve = new QwtPlotCurve("y = sin(x)"); + curve->setData(SinusData()); + curve->attach(&plot); + + plot.show(); + return a.exec(); +} + .fi +.PP + +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtSyntheticPointData::QwtSyntheticPointData (size_tsize, const \fBQwtInterval\fP &interval = \fC\fBQwtInterval\fP()\fP)"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fIsize\fP Number of points +.br +\fIinterval\fP Bounding interval for the points +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetInterval()\fP, \fBsetSize()\fP +.RE +.PP + +.SH "Member Function Documentation" +.PP +.SS "QRectF QwtSyntheticPointData::boundingRect () const\fC [virtual]\fP" +.PP +Calculate the bounding rect. This implementation iterates over all points, what could often be implemented much faster using the characteristics of the series. When there are many points it is recommended to overload and reimplement this method using the characteristics of the series ( if possible ). +.PP +\fBReturns:\fP +.RS 4 +Bounding rectangle +.RE +.PP + +.PP +Implements \fBQwtSeriesData< QPointF >\fP. +.SS "\fBQwtInterval\fP QwtSyntheticPointData::interval () const"\fBReturns:\fP +.RS 4 +Bounding interval +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetInterval()\fP, \fBsize()\fP +.RE +.PP + +.SS "QRectF QwtSyntheticPointData::rectOfInterest () const"\fBReturns:\fP +.RS 4 +'rect of interest' +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetRectOfInterest()\fP +.RE +.PP + +.SS "QPointF QwtSyntheticPointData::sample (size_tindex) const\fC [virtual]\fP"Calculate the point from an index +.PP +\fBParameters:\fP +.RS 4 +\fIindex\fP Index +.RE +.PP +\fBReturns:\fP +.RS 4 +QPointF(x(index), y(x(index))); +.RE +.PP +\fBWarning:\fP +.RS 4 +For invalid indices ( index < 0 || index >= \fBsize()\fP ) (0, 0) is returned. +.RE +.PP + +.PP +Implements \fBQwtSeriesData< QPointF >\fP. +.SS "void QwtSyntheticPointData::setInterval (const \fBQwtInterval\fP &interval)"Set the bounding interval +.PP +\fBParameters:\fP +.RS 4 +\fIinterval\fP Interval +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBinterval()\fP, \fBsetSize()\fP +.RE +.PP + +.SS "void QwtSyntheticPointData::setRectOfInterest (const QRectF &rect)\fC [virtual]\fP"Set a the 'rect of interest' +.PP +\fBQwtPlotSeriesItem\fP defines the current area of the plot canvas as 'rect of interest' ( \fBQwtPlotSeriesItem::updateScaleDiv()\fP ). +.PP +If \fBinterval()\fP.isValid() == false the x values are calculated in the interval rect.left() -> rect.right(). +.PP +\fBSee also:\fP +.RS 4 +\fBrectOfInterest()\fP +.RE +.PP + +.PP +Reimplemented from \fBQwtSeriesData< QPointF >\fP. +.SS "void QwtSyntheticPointData::setSize (size_tsize)"Change the number of points +.PP +\fBParameters:\fP +.RS 4 +\fIsize\fP Number of points +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsize()\fP, \fBsetInterval()\fP +.RE +.PP + +.SS "size_t QwtSyntheticPointData::size () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +Number of points +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetSize()\fP, \fBinterval()\fP +.RE +.PP + +.PP +Implements \fBQwtSeriesData< QPointF >\fP. +.SS "double QwtSyntheticPointData::x (uintindex) const\fC [virtual]\fP"Calculate a x-value from an index +.PP +x values are calculated by deviding an interval into equidistant steps. If !interval().isValid() the interval is calculated from the 'rect of interest'. +.PP +\fBSee also:\fP +.RS 4 +\fBinterval()\fP, \fBrectOfInterest()\fP, \fBy()\fP +.RE +.PP + +.SS "virtual double QwtSyntheticPointData::y (doublex) const\fC [pure virtual]\fP"Calculate a y value for a x value +.PP +\fBParameters:\fP +.RS 4 +\fIx\fP x value +.RE +.PP +\fBReturns:\fP +.RS 4 +Corresponding y value +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSystemClock.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSystemClock.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSystemClock.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtSystemClock.3 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,90 @@ +.TH "QwtSystemClock" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtSystemClock \- +.PP +\fBQwtSystemClock\fP provides high resolution clock time functions. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtSystemClock\fP ()" +.br +.ti -1c +.RI "virtual \fB~QwtSystemClock\fP ()" +.br +.ti -1c +.RI "bool \fBisNull\fP () const " +.br +.ti -1c +.RI "void \fBstart\fP ()" +.br +.ti -1c +.RI "double \fBrestart\fP ()" +.br +.ti -1c +.RI "double \fBelapsed\fP () const " +.br +.in -1c +.SS "Static Public Member Functions" + +.in +1c +.ti -1c +.RI "static double \fBprecision\fP ()" +.br +.in -1c +.SH "Detailed Description" +.PP +\fBQwtSystemClock\fP provides high resolution clock time functions. + +Sometimes the resolution offered by QTime ( millisecond ) is not accurate enough for implementing time measurements ( f.e. sampling ). \fBQwtSystemClock\fP offers a subset of the QTime functionality using higher resolution timers ( if possible ). +.PP +Precision and time intervals are multiples of milliseconds (ms). +.PP +\fBNote:\fP +.RS 4 +The implementation uses high-resolution performance counter on Windows, mach_absolute_time() on the Mac or POSIX timers on other systems. If none is available it falls back on QTimer. +.RE +.PP + +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtSystemClock::QwtSystemClock ()" +.PP +Constructs a null clock object. +.SS "QwtSystemClock::~QwtSystemClock ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "double QwtSystemClock::elapsed () const"\fBReturns:\fP +.RS 4 +Number of milliseconds that have elapsed since the last time \fBstart()\fP or \fBrestart()\fP was called or 0.0 for null clocks. +.RE +.PP + +.SS "bool QwtSystemClock::isNull () const"\fBReturns:\fP +.RS 4 +true if the clock has never been started. +.RE +.PP + +.SS "double QwtSystemClock::precision ()\fC [static]\fP"\fBReturns:\fP +.RS 4 +Accuracy of the system clock in milliseconds. +.RE +.PP + +.SS "double QwtSystemClock::restart ()"The start time to the current time and return the time, that is elapsed since the previous start time. +.SS "void QwtSystemClock::start ()"Sets the start time to the current time. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtText.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtText.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtText.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtText.3 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,620 @@ +.TH "QwtText" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtText \- +.PP +A class representing a text. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBTextFormat\fP { \fBAutoText\fP = 0, \fBPlainText\fP, \fBRichText\fP, \fBMathMLText\fP, \fBTeXText\fP, \fBOtherFormat\fP = 100 }" +.br +.ti -1c +.RI "enum \fBPaintAttribute\fP { \fBPaintUsingTextFont\fP = 0x01, \fBPaintUsingTextColor\fP = 0x02, \fBPaintBackground\fP = 0x04 }" +.br +.ti -1c +.RI "enum \fBLayoutAttribute\fP { \fBMinimumLayout\fP = 0x01 }" +.br +.ti -1c +.RI "typedef QFlags< \fBPaintAttribute\fP > \fBPaintAttributes\fP" +.br +.ti -1c +.RI "typedef QFlags< \fBLayoutAttribute\fP > \fBLayoutAttributes\fP" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtText\fP (const QString &=QString::null, \fBTextFormat\fP textFormat=AutoText)" +.br +.ti -1c +.RI "\fBQwtText\fP (const \fBQwtText\fP &)" +.br +.ti -1c +.RI "\fB~QwtText\fP ()" +.br +.ti -1c +.RI "\fBQwtText\fP & \fBoperator=\fP (const \fBQwtText\fP &)" +.br +.ti -1c +.RI "bool \fBoperator==\fP (const \fBQwtText\fP &) const " +.br +.ti -1c +.RI "bool \fBoperator!=\fP (const \fBQwtText\fP &) const " +.br +.ti -1c +.RI "void \fBsetText\fP (const QString &, \fBQwtText::TextFormat\fP textFormat=AutoText)" +.br +.ti -1c +.RI "QString \fBtext\fP () const " +.br +.ti -1c +.RI "bool \fBisNull\fP () const " +.br +.ti -1c +.RI "bool \fBisEmpty\fP () const " +.br +.ti -1c +.RI "void \fBsetFont\fP (const QFont &)" +.br +.ti -1c +.RI "QFont \fBfont\fP () const " +.br +.ti -1c +.RI "QFont \fBusedFont\fP (const QFont &) const " +.br +.ti -1c +.RI "void \fBsetRenderFlags\fP (int flags)" +.br +.ti -1c +.RI "int \fBrenderFlags\fP () const " +.br +.ti -1c +.RI "void \fBsetColor\fP (const QColor &)" +.br +.ti -1c +.RI "QColor \fBcolor\fP () const " +.br +.ti -1c +.RI "QColor \fBusedColor\fP (const QColor &) const " +.br +.ti -1c +.RI "void \fBsetBackgroundPen\fP (const QPen &)" +.br +.ti -1c +.RI "QPen \fBbackgroundPen\fP () const " +.br +.ti -1c +.RI "void \fBsetBackgroundBrush\fP (const QBrush &)" +.br +.ti -1c +.RI "QBrush \fBbackgroundBrush\fP () const " +.br +.ti -1c +.RI "void \fBsetPaintAttribute\fP (\fBPaintAttribute\fP, bool on=true)" +.br +.ti -1c +.RI "bool \fBtestPaintAttribute\fP (\fBPaintAttribute\fP) const " +.br +.ti -1c +.RI "void \fBsetLayoutAttribute\fP (\fBLayoutAttribute\fP, bool on=true)" +.br +.ti -1c +.RI "bool \fBtestLayoutAttribute\fP (\fBLayoutAttribute\fP) const " +.br +.ti -1c +.RI "double \fBheightForWidth\fP (double width, const QFont &=QFont()) const " +.br +.ti -1c +.RI "QSizeF \fBtextSize\fP (const QFont &=QFont()) const " +.br +.ti -1c +.RI "void \fBdraw\fP (QPainter *painter, const QRectF &rect) const " +.br +.in -1c +.SS "Static Public Member Functions" + +.in +1c +.ti -1c +.RI "static const \fBQwtTextEngine\fP * \fBtextEngine\fP (const QString &text, \fBQwtText::TextFormat\fP=AutoText)" +.br +.ti -1c +.RI "static const \fBQwtTextEngine\fP * \fBtextEngine\fP (\fBQwtText::TextFormat\fP)" +.br +.ti -1c +.RI "static void \fBsetTextEngine\fP (\fBQwtText::TextFormat\fP, \fBQwtTextEngine\fP *)" +.br +.in -1c +.SH "Detailed Description" +.PP +A class representing a text. + +A \fBQwtText\fP is a text including a set of attributes how to render it. +.PP +.IP "\(bu" 2 +Format +.br + A text might include control sequences (f.e tags) describing how to render it. Each format (f.e MathML, TeX, Qt Rich Text) has its own set of control sequences, that can be handles by a \fBQwtTextEngine\fP for this format. +.IP "\(bu" 2 +Background +.br + A text might have a background, defined by a QPen and QBrush to improve its visibility. +.IP "\(bu" 2 +Font +.br + A text might have an individual font. +.IP "\(bu" 2 +Color +.br + A text might have an individual color. +.IP "\(bu" 2 +Render Flags +.br + Flags from Qt::AlignmentFlag and Qt::TextFlag used like in QPainter::drawText. +.PP +.PP +\fBSee also:\fP +.RS 4 +\fBQwtTextEngine\fP, \fBQwtTextLabel\fP +.RE +.PP + +.SH "Member Typedef Documentation" +.PP +.SS "typedef QFlags<\fBLayoutAttribute\fP> \fBQwtText::LayoutAttributes\fP" +.PP +Layout attributes. +.SS "typedef QFlags<\fBPaintAttribute\fP> \fBQwtText::PaintAttributes\fP" +.PP +Paint attributes. +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtText::LayoutAttribute\fP" +.PP +Layout Attributes The layout attributes affects some aspects of the layout of the text. +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIMinimumLayout \fP\fP +Layout the text without its margins. This mode is useful if a text needs to be aligned accurately, like the tick labels of a scale. If \fBQwtTextEngine::textMargins\fP is not implemented for the format of the text, MinimumLayout has no effect. +.SS "enum \fBQwtText::PaintAttribute\fP" +.PP +Paint Attributes. Font and color and background are optional attributes of a \fBQwtText\fP. The paint attributes hold the information, if they are set. +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIPaintUsingTextFont \fP\fP +The text has an individual font. +.TP +\fB\fIPaintUsingTextColor \fP\fP +The text has an individual color. +.TP +\fB\fIPaintBackground \fP\fP +The text has an individual background. +.SS "enum \fBQwtText::TextFormat\fP" +.PP +Text format. The text format defines the \fBQwtTextEngine\fP, that is used to render the text. +.PP +\fBSee also:\fP +.RS 4 +\fBQwtTextEngine\fP, \fBsetTextEngine()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fIAutoText \fP\fP +The text format is determined using \fBQwtTextEngine::mightRender\fP for all available text engines in increasing order > PlainText. If none of the text engines can render the text is rendered like \fBQwtText::PlainText\fP. +.TP +\fB\fIPlainText \fP\fP +Draw the text as it is, using a \fBQwtPlainTextEngine\fP. +.TP +\fB\fIRichText \fP\fP +Use the Scribe framework (Qt Rich Text) to render the text. +.TP +\fB\fIMathMLText \fP\fP +Use a MathML (http://en.wikipedia.org/wiki/MathML) render engine to display the text. The Qwt MathML extension offers such an engine based on the MathML renderer of the Qt solutions package. To enable MathML support the following code needs to be added to the application: +.PP +.nf +QwtText::setTextEngine(QwtText::MathMLText, new QwtMathMLTextEngine()); +.fi +.PP + +.TP +\fB\fITeXText \fP\fP +Use a TeX (http://en.wikipedia.org/wiki/TeX) render engine to display the text ( not implemented yet ). +.TP +\fB\fIOtherFormat \fP\fP +The number of text formats can be extended using setTextEngine. Formats >= \fBQwtText::OtherFormat\fP are not used by Qwt. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtText::QwtText (const QString &text = \fCQString::null\fP, \fBQwtText::TextFormat\fPtextFormat = \fCAutoText\fP)"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fItext\fP Text content +.br +\fItextFormat\fP Text format +.RE +.PP + +.SS "QwtText::QwtText (const \fBQwtText\fP &other)" +.PP +Copy constructor. +.SS "QwtText::~QwtText ()" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "QBrush QwtText::backgroundBrush () const"\fBReturns:\fP +.RS 4 +Background brush +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetBackgroundBrush()\fP, \fBbackgroundPen()\fP +.RE +.PP + +.SS "QPen QwtText::backgroundPen () const"\fBReturns:\fP +.RS 4 +Background pen +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetBackgroundPen()\fP, \fBbackgroundBrush()\fP +.RE +.PP + +.SS "QColor QwtText::color () const" +.PP +Return the pen color, used for painting the text. +.SS "void QwtText::draw (QPainter *painter, const QRectF &rect) const"Draw a text into a rectangle +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIrect\fP Rectangle +.RE +.PP + +.SS "QFont QwtText::font () const" +.PP +Return the font. +.SS "double QwtText::heightForWidth (doublewidth, const QFont &defaultFont = \fCQFont()\fP) const"Find the height for a given width +.PP +\fBParameters:\fP +.RS 4 +\fIdefaultFont\fP Font, used for the calculation if the text has no font +.br +\fIwidth\fP Width +.RE +.PP +\fBReturns:\fP +.RS 4 +Calculated height +.RE +.PP + +.SS "bool QwtText::isEmpty () const\fC [inline]\fP"\fBReturns:\fP +.RS 4 +\fBtext()\fP.\fBisEmpty()\fP +.RE +.PP + +.SS "bool QwtText::isNull () const\fC [inline]\fP"\fBReturns:\fP +.RS 4 +\fBtext()\fP.\fBisNull()\fP +.RE +.PP + +.SS "bool QwtText::operator!= (const \fBQwtText\fP &other) const" +.PP +Relational operator. +.SS "\fBQwtText\fP & QwtText::operator= (const \fBQwtText\fP &other)" +.PP +Assignment operator. +.SS "bool QwtText::operator== (const \fBQwtText\fP &other) const" +.PP +Relational operator. +.SS "int QwtText::renderFlags () const"\fBReturns:\fP +.RS 4 +Render flags +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetRenderFlags()\fP +.RE +.PP + +.SS "void QwtText::setBackgroundBrush (const QBrush &brush)"Set the background brush +.PP +\fBParameters:\fP +.RS 4 +\fIbrush\fP Background brush +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBbackgroundBrush()\fP, \fBsetBackgroundPen()\fP +.RE +.PP + +.SS "void QwtText::setBackgroundPen (const QPen &pen)"Set the background pen +.PP +\fBParameters:\fP +.RS 4 +\fIpen\fP Background pen +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBbackgroundPen()\fP, \fBsetBackgroundBrush()\fP +.RE +.PP + +.SS "void QwtText::setColor (const QColor &color)"Set the pen color used for painting the text. +.PP +\fBParameters:\fP +.RS 4 +\fIcolor\fP Color +.RE +.PP +\fBNote:\fP +.RS 4 +Setting the color might have no effect, when the text contains control sequences for setting colors. +.RE +.PP + +.SS "void QwtText::setFont (const QFont &font)"Set the font. +.PP +\fBParameters:\fP +.RS 4 +\fIfont\fP Font +.RE +.PP +\fBNote:\fP +.RS 4 +Setting the font might have no effect, when the text contains control sequences for setting fonts. +.RE +.PP + +.SS "void QwtText::setLayoutAttribute (\fBLayoutAttribute\fPattribute, boolon = \fCtrue\fP)"Change a layout attribute +.PP +\fBParameters:\fP +.RS 4 +\fIattribute\fP Layout attribute +.br +\fIon\fP On/Off +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBtestLayoutAttribute()\fP +.RE +.PP + +.SS "void QwtText::setPaintAttribute (\fBPaintAttribute\fPattribute, boolon = \fCtrue\fP)"Change a paint attribute +.PP +\fBParameters:\fP +.RS 4 +\fIattribute\fP Paint attribute +.br +\fIon\fP On/Off +.RE +.PP +\fBNote:\fP +.RS 4 +Used by \fBsetFont()\fP, \fBsetColor()\fP, \fBsetBackgroundPen()\fP and \fBsetBackgroundBrush()\fP +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBtestPaintAttribute()\fP +.RE +.PP + +.SS "void QwtText::setRenderFlags (intrenderFlags)" +.PP +Change the render flags. The default setting is Qt::AlignCenter +.PP +\fBParameters:\fP +.RS 4 +\fIrenderFlags\fP Bitwise OR of the flags used like in QPainter::drawText +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBrenderFlags()\fP, \fBQwtTextEngine::draw()\fP +.RE +.PP +\fBNote:\fP +.RS 4 +Some renderFlags might have no effect, depending on the text format. +.RE +.PP + +.SS "void QwtText::setText (const QString &text, \fBQwtText::TextFormat\fPtextFormat = \fCAutoText\fP)"Assign a new text content +.PP +\fBParameters:\fP +.RS 4 +\fItext\fP Text content +.br +\fItextFormat\fP Text format +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBtext()\fP +.RE +.PP + +.SS "void QwtText::setTextEngine (\fBQwtText::TextFormat\fPformat, \fBQwtTextEngine\fP *engine)\fC [static]\fP"Assign/Replace a text engine for a text format +.PP +With setTextEngine it is possible to extend Qwt with other types of text formats. +.PP +For \fBQwtText::PlainText\fP it is not allowed to assign a engine == NULL. +.PP +\fBParameters:\fP +.RS 4 +\fIformat\fP Text format +.br +\fIengine\fP Text engine +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtMathMLTextEngine\fP +.RE +.PP +\fBWarning:\fP +.RS 4 +Using \fBQwtText::AutoText\fP does nothing. +.RE +.PP + +.SS "bool QwtText::testLayoutAttribute (\fBLayoutAttribute\fPattribute) const"Test a layout attribute +.PP +\fBParameters:\fP +.RS 4 +\fIattribute\fP Layout attribute +.RE +.PP +\fBReturns:\fP +.RS 4 +true, if attribute is enabled +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetLayoutAttribute()\fP +.RE +.PP + +.SS "bool QwtText::testPaintAttribute (\fBPaintAttribute\fPattribute) const"Test a paint attribute +.PP +\fBParameters:\fP +.RS 4 +\fIattribute\fP Paint attribute +.RE +.PP +\fBReturns:\fP +.RS 4 +true, if attribute is enabled +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetPaintAttribute()\fP +.RE +.PP + +.SS "QString QwtText::text () const"Return the text. +.PP +\fBSee also:\fP +.RS 4 +\fBsetText()\fP +.RE +.PP + +.SS "const \fBQwtTextEngine\fP * QwtText::textEngine (\fBQwtText::TextFormat\fPformat)\fC [static]\fP" +.PP +Find the text engine for a text format. textEngine can be used to find out if a text format is supported. +.PP +\fBParameters:\fP +.RS 4 +\fIformat\fP Text format +.RE +.PP +\fBReturns:\fP +.RS 4 +The text engine, or NULL if no engine is available. +.RE +.PP + +.SS "const \fBQwtTextEngine\fP * QwtText::textEngine (const QString &text, \fBQwtText::TextFormat\fPformat = \fCAutoText\fP)\fC [static]\fP"Find the text engine for a text format +.PP +In case of \fBQwtText::AutoText\fP the first text engine (beside \fBQwtPlainTextEngine\fP) is returned, where \fBQwtTextEngine::mightRender\fP returns true. If there is none \fBQwtPlainTextEngine\fP is returnd. +.PP +If no text engine is registered for the format \fBQwtPlainTextEngine\fP is returnd. +.PP +\fBParameters:\fP +.RS 4 +\fItext\fP Text, needed in case of AutoText +.br +\fIformat\fP Text format +.RE +.PP + +.SS "QSizeF QwtText::textSize (const QFont &defaultFont = \fCQFont()\fP) const"Find the height for a given width +.PP +\fBParameters:\fP +.RS 4 +\fIdefaultFont\fP Font, used for the calculation if the text has no font +.RE +.PP +\fBReturns:\fP +.RS 4 +Calculated height +.RE +.PP +Returns the size, that is needed to render text +.PP +\fBParameters:\fP +.RS 4 +\fIdefaultFont\fP Font of the text +.RE +.PP +\fBReturns:\fP +.RS 4 +Caluclated size +.RE +.PP + +.SS "QColor QwtText::usedColor (const QColor &defaultColor) const"Return the color of the text, if it has one. Otherwise return defaultColor. +.PP +\fBParameters:\fP +.RS 4 +\fIdefaultColor\fP Default color +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetColor()\fP, \fBcolor()\fP, \fBPaintAttributes\fP +.RE +.PP + +.SS "QFont QwtText::usedFont (const QFont &defaultFont) const"Return the font of the text, if it has one. Otherwise return defaultFont. +.PP +\fBParameters:\fP +.RS 4 +\fIdefaultFont\fP Default font +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetFont()\fP, \fBfont()\fP, \fBPaintAttributes\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtTextEngine.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtTextEngine.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtTextEngine.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtTextEngine.3 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,165 @@ +.TH "QwtTextEngine" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtTextEngine \- +.PP +Abstract base class for rendering text strings. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherited by \fBQwtMathMLTextEngine\fP, \fBQwtPlainTextEngine\fP, and \fBQwtRichTextEngine\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "virtual \fB~QwtTextEngine\fP ()" +.br +.ti -1c +.RI "virtual double \fBheightForWidth\fP (const QFont &font, int flags, const QString &text, double width) const =0" +.br +.ti -1c +.RI "virtual QSizeF \fBtextSize\fP (const QFont &font, int flags, const QString &text) const =0" +.br +.ti -1c +.RI "virtual bool \fBmightRender\fP (const QString &text) const =0" +.br +.ti -1c +.RI "virtual void \fBtextMargins\fP (const QFont &font, const QString &text, double &left, double &right, double &top, double &bottom) const =0" +.br +.ti -1c +.RI "virtual void \fBdraw\fP (QPainter *painter, const QRectF &rect, int flags, const QString &text) const =0" +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtTextEngine\fP ()" +.br +.in -1c +.SH "Detailed Description" +.PP +Abstract base class for rendering text strings. + +A text engine is responsible for rendering texts for a specific text format. They are used by \fBQwtText\fP to render a text. +.PP +\fBQwtPlainTextEngine\fP and \fBQwtRichTextEngine\fP are part of the Qwt library. The implementation of \fBQwtMathMLTextEngine\fP uses code from the Qt solution package. Because of license implications it is built into a separate library. +.PP +\fBSee also:\fP +.RS 4 +\fBQwtText::setTextEngine()\fP +.RE +.PP + +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtTextEngine::~QwtTextEngine ()\fC [virtual]\fP" +.PP +Destructor. +.SS "QwtTextEngine::QwtTextEngine ()\fC [protected]\fP" +.PP +Constructor. +.SH "Member Function Documentation" +.PP +.SS "virtual void QwtTextEngine::draw (QPainter *painter, const QRectF &rect, intflags, const QString &text) const\fC [pure virtual]\fP"Draw the text in a clipping rectangle +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIrect\fP Clipping rectangle +.br +\fIflags\fP Bitwise OR of the flags like in for QPainter::drawText +.br +\fItext\fP Text to be rendered +.RE +.PP + +.PP +Implemented in \fBQwtPlainTextEngine\fP, \fBQwtRichTextEngine\fP, and \fBQwtMathMLTextEngine\fP. +.SS "virtual double QwtTextEngine::heightForWidth (const QFont &font, intflags, const QString &text, doublewidth) const\fC [pure virtual]\fP"Find the height for a given width +.PP +\fBParameters:\fP +.RS 4 +\fIfont\fP Font of the text +.br +\fIflags\fP Bitwise OR of the flags used like in QPainter::drawText +.br +\fItext\fP Text to be rendered +.br +\fIwidth\fP Width +.RE +.PP +\fBReturns:\fP +.RS 4 +Calculated height +.RE +.PP + +.PP +Implemented in \fBQwtPlainTextEngine\fP, \fBQwtRichTextEngine\fP, and \fBQwtMathMLTextEngine\fP. +.SS "virtual bool QwtTextEngine::mightRender (const QString &text) const\fC [pure virtual]\fP"Test if a string can be rendered by this text engine +.PP +\fBParameters:\fP +.RS 4 +\fItext\fP Text to be tested +.RE +.PP +\fBReturns:\fP +.RS 4 +true, if it can be rendered +.RE +.PP + +.PP +Implemented in \fBQwtPlainTextEngine\fP, \fBQwtRichTextEngine\fP, and \fBQwtMathMLTextEngine\fP. +.SS "virtual void QwtTextEngine::textMargins (const QFont &font, const QString &text, double &left, double &right, double &top, double &bottom) const\fC [pure virtual]\fP"Return margins around the texts +.PP +The textSize might include margins around the text, like QFontMetrics::descent. In situations where texts need to be aligend in detail, knowing these margins might improve the layout calculations. +.PP +\fBParameters:\fP +.RS 4 +\fIfont\fP Font of the text +.br +\fItext\fP Text to be rendered +.br +\fIleft\fP Return value for the left margin +.br +\fIright\fP Return value for the right margin +.br +\fItop\fP Return value for the top margin +.br +\fIbottom\fP Return value for the bottom margin +.RE +.PP + +.PP +Implemented in \fBQwtPlainTextEngine\fP, \fBQwtRichTextEngine\fP, and \fBQwtMathMLTextEngine\fP. +.SS "virtual QSizeF QwtTextEngine::textSize (const QFont &font, intflags, const QString &text) const\fC [pure virtual]\fP"Returns the size, that is needed to render text +.PP +\fBParameters:\fP +.RS 4 +\fIfont\fP Font of the text +.br +\fIflags\fP Bitwise OR of the flags like in for QPainter::drawText +.br +\fItext\fP Text to be rendered +.RE +.PP +\fBReturns:\fP +.RS 4 +Caluclated size +.RE +.PP + +.PP +Implemented in \fBQwtPlainTextEngine\fP, \fBQwtRichTextEngine\fP, and \fBQwtMathMLTextEngine\fP. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtTextLabel.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtTextLabel.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtTextLabel.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtTextLabel.3 2011-04-15 10:49:00.000000000 +0000 @@ -0,0 +1,206 @@ +.TH "QwtTextLabel" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtTextLabel \- +.PP +A Widget which displays a \fBQwtText\fP. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherited by \fBQwtLegendItem\fP. +.SS "Public Slots" + +.in +1c +.ti -1c +.RI "void \fBsetText\fP (const QString &, \fBQwtText::TextFormat\fP textFormat=QwtText::AutoText)" +.br +.ti -1c +.RI "virtual void \fBsetText\fP (const \fBQwtText\fP &)" +.br +.ti -1c +.RI "void \fBclear\fP ()" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtTextLabel\fP (QWidget *parent=NULL)" +.br +.ti -1c +.RI "\fBQwtTextLabel\fP (const \fBQwtText\fP &, QWidget *parent=NULL)" +.br +.ti -1c +.RI "virtual \fB~QwtTextLabel\fP ()" +.br +.ti -1c +.RI "const \fBQwtText\fP & \fBtext\fP () const " +.br +.ti -1c +.RI "int \fBindent\fP () const " +.br +.ti -1c +.RI "void \fBsetIndent\fP (int)" +.br +.ti -1c +.RI "int \fBmargin\fP () const " +.br +.ti -1c +.RI "void \fBsetMargin\fP (int)" +.br +.ti -1c +.RI "virtual QSize \fBsizeHint\fP () const " +.br +.ti -1c +.RI "virtual QSize \fBminimumSizeHint\fP () const " +.br +.ti -1c +.RI "virtual int \fBheightForWidth\fP (int) const " +.br +.ti -1c +.RI "QRect \fBtextRect\fP () const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual void \fBpaintEvent\fP (QPaintEvent *e)" +.br +.ti -1c +.RI "virtual void \fBdrawContents\fP (QPainter *)" +.br +.ti -1c +.RI "virtual void \fBdrawText\fP (QPainter *, const QRect &)" +.br +.in -1c +.SH "Detailed Description" +.PP +A Widget which displays a \fBQwtText\fP. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtTextLabel::QwtTextLabel (QWidget *parent = \fCNULL\fP)\fC [explicit]\fP"Constructs an empty label. +.PP +\fBParameters:\fP +.RS 4 +\fIparent\fP Parent widget +.RE +.PP + +.SS "QwtTextLabel::QwtTextLabel (const \fBQwtText\fP &text, QWidget *parent = \fCNULL\fP)\fC [explicit]\fP"Constructs a label that displays the text, text +.PP +\fBParameters:\fP +.RS 4 +\fIparent\fP Parent widget +.br +\fItext\fP Text +.RE +.PP + +.SS "QwtTextLabel::~QwtTextLabel ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "void QwtTextLabel::clear ()\fC [slot]\fP" +.PP +Clear the text and all \fBQwtText\fP attributes. +.SS "void QwtTextLabel::drawContents (QPainter *painter)\fC [protected, virtual]\fP" +.PP +Redraw the text and focus indicator. +.SS "void QwtTextLabel::drawText (QPainter *painter, const QRect &textRect)\fC [protected, virtual]\fP" +.PP +Redraw the text. +.SS "int QwtTextLabel::heightForWidth (intwidth) const\fC [virtual]\fP"Returns the preferred height for this widget, given the width. +.PP +\fBParameters:\fP +.RS 4 +\fIwidth\fP Width +.RE +.PP + +.SS "int QwtTextLabel::indent () const" +.PP +Return label's text indent in pixels. +.SS "int QwtTextLabel::margin () const" +.PP +Return label's text indent in pixels. +.SS "QSize QwtTextLabel::minimumSizeHint () const\fC [virtual]\fP" +.PP +Return a minimum size hint. +.SS "void QwtTextLabel::paintEvent (QPaintEvent *event)\fC [protected, virtual]\fP"Qt paint event +.PP +\fBParameters:\fP +.RS 4 +\fIevent\fP Paint event +.RE +.PP + +.PP +Reimplemented in \fBQwtLegendItem\fP. +.SS "void QwtTextLabel::setIndent (intindent)"Set label's text indent in pixels +.PP +\fBParameters:\fP +.RS 4 +\fIindent\fP Indentation in pixels +.RE +.PP + +.SS "void QwtTextLabel::setMargin (intmargin)"Set label's margin in pixels +.PP +\fBParameters:\fP +.RS 4 +\fImargin\fP Margin in pixels +.RE +.PP + +.SS "void QwtTextLabel::setText (const \fBQwtText\fP &text)\fC [virtual, slot]\fP"Change the label's text +.PP +\fBParameters:\fP +.RS 4 +\fItext\fP New text +.RE +.PP + +.PP +Reimplemented in \fBQwtLegendItem\fP. +.SS "void QwtTextLabel::setText (const QString &text, \fBQwtText::TextFormat\fPtextFormat = \fCQwtText::AutoText\fP)\fC [slot]\fP"Change the label's text, keeping all other \fBQwtText\fP attributes +.PP +\fBParameters:\fP +.RS 4 +\fItext\fP New text +.br +\fItextFormat\fP Format of text +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtText\fP +.RE +.PP + +.SS "QSize QwtTextLabel::sizeHint () const\fC [virtual]\fP" +.PP +Return label's margin in pixels. +.PP +Reimplemented in \fBQwtLegendItem\fP. +.SS "const \fBQwtText\fP & QwtTextLabel::text () const" +.PP +Return the text. +.SS "QRect QwtTextLabel::textRect () const"Calculate the rect for the text in widget coordinates +.PP +\fBReturns:\fP +.RS 4 +Text rect +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtThermo.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtThermo.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtThermo.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtThermo.3 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1,738 @@ +.TH "QwtThermo" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtThermo \- +.PP +The Thermometer Widget. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtAbstractScale\fP. +.SS "Public Types" + +.in +1c +.ti -1c +.RI "enum \fBScalePos\fP { \fBNoScale\fP, \fBLeftScale\fP, \fBRightScale\fP, \fBTopScale\fP, \fBBottomScale\fP }" +.br +.in -1c +.SS "Public Slots" + +.in +1c +.ti -1c +.RI "virtual void \fBsetValue\fP (double val)" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtThermo\fP (QWidget *parent=NULL)" +.br +.ti -1c +.RI "virtual \fB~QwtThermo\fP ()" +.br +.ti -1c +.RI "void \fBsetOrientation\fP (Qt::Orientation, \fBScalePos\fP)" +.br +.ti -1c +.RI "void \fBsetScalePosition\fP (\fBScalePos\fP s)" +.br +.ti -1c +.RI "\fBScalePos\fP \fBscalePosition\fP () const " +.br +.ti -1c +.RI "void \fBsetSpacing\fP (int)" +.br +.ti -1c +.RI "int \fBspacing\fP () const " +.br +.ti -1c +.RI "void \fBsetBorderWidth\fP (int w)" +.br +.ti -1c +.RI "int \fBborderWidth\fP () const " +.br +.ti -1c +.RI "void \fBsetFillBrush\fP (const QBrush &b)" +.br +.ti -1c +.RI "const QBrush & \fBfillBrush\fP () const " +.br +.ti -1c +.RI "void \fBsetAlarmBrush\fP (const QBrush &b)" +.br +.ti -1c +.RI "const QBrush & \fBalarmBrush\fP () const " +.br +.ti -1c +.RI "void \fBsetAlarmLevel\fP (double v)" +.br +.ti -1c +.RI "double \fBalarmLevel\fP () const " +.br +.ti -1c +.RI "void \fBsetAlarmEnabled\fP (bool tf)" +.br +.ti -1c +.RI "bool \fBalarmEnabled\fP () const " +.br +.ti -1c +.RI "void \fBsetColorMap\fP (\fBQwtColorMap\fP *)" +.br +.ti -1c +.RI "\fBQwtColorMap\fP * \fBcolorMap\fP ()" +.br +.ti -1c +.RI "const \fBQwtColorMap\fP * \fBcolorMap\fP () const " +.br +.ti -1c +.RI "void \fBsetPipeWidth\fP (int w)" +.br +.ti -1c +.RI "int \fBpipeWidth\fP () const " +.br +.ti -1c +.RI "void \fBsetRangeFlags\fP (\fBQwtInterval::BorderFlags\fP)" +.br +.ti -1c +.RI "\fBQwtInterval::BorderFlags\fP \fBrangeFlags\fP () const " +.br +.ti -1c +.RI "void \fBsetMaxValue\fP (double v)" +.br +.ti -1c +.RI "double \fBmaxValue\fP () const " +.br +.ti -1c +.RI "void \fBsetMinValue\fP (double v)" +.br +.ti -1c +.RI "double \fBminValue\fP () const " +.br +.ti -1c +.RI "double \fBvalue\fP () const " +.br +.ti -1c +.RI "void \fBsetRange\fP (double vmin, double vmax, bool lg=false)" +.br +.ti -1c +.RI "virtual QSize \fBsizeHint\fP () const " +.br +.ti -1c +.RI "virtual QSize \fBminimumSizeHint\fP () const " +.br +.ti -1c +.RI "void \fBsetScaleDraw\fP (\fBQwtScaleDraw\fP *)" +.br +.ti -1c +.RI "const \fBQwtScaleDraw\fP * \fBscaleDraw\fP () const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual void \fBdrawLiquid\fP (QPainter *, const QRect &) const " +.br +.ti -1c +.RI "virtual void \fBscaleChange\fP ()" +.br +.ti -1c +.RI "virtual void \fBpaintEvent\fP (QPaintEvent *)" +.br +.ti -1c +.RI "virtual void \fBresizeEvent\fP (QResizeEvent *)" +.br +.ti -1c +.RI "virtual void \fBchangeEvent\fP (QEvent *)" +.br +.ti -1c +.RI "\fBQwtScaleDraw\fP * \fBscaleDraw\fP ()" +.br +.ti -1c +.RI "QRect \fBpipeRect\fP () const " +.br +.in -1c +.SH "Detailed Description" +.PP +The Thermometer Widget. + +\fBQwtThermo\fP is a widget which displays a value in an interval. It supports: +.IP "\(bu" 2 +a horizontal or vertical layout; +.IP "\(bu" 2 +a range; +.IP "\(bu" 2 +a scale; +.IP "\(bu" 2 +an alarm level. +.PP +.PP +.PP +The fill colors might be calculated from an optional color map If no color map has been assigned \fBQwtThermo\fP uses the following colors/brushes from the widget palette: +.PP +.IP "\(bu" 2 +QPalette::Base Background of the pipe +.IP "\(bu" 2 +QPalette::ButtonText Fill brush below the alarm level +.IP "\(bu" 2 +QPalette::Highlight Fill brush for the values above the alarm level +.IP "\(bu" 2 +QPalette::WindowText For the axis of the scale +.IP "\(bu" 2 +QPalette::Text For the labels of the scale +.PP +.PP +By default, the scale and range run over the same interval of values. \fBQwtAbstractScale::setScale()\fP changes the interval of the scale and allows easy conversion between physical units. +.PP +The example shows how to make the scale indicate in degrees Fahrenheit and to set the value in degrees Kelvin: +.PP +.nf +#include +#include + +double Kelvin2Fahrenheit(double kelvin) +{ + // see http://en.wikipedia.org/wiki/Kelvin + return 1.8*kelvin - 459.67; +} + +int main(int argc, char **argv) +{ + const double minKelvin = 0.0; + const double maxKelvin = 500.0; + + QApplication a(argc, argv); + QwtThermo t; + t.setRange(minKelvin, maxKelvin); + t.setScale(Kelvin2Fahrenheit(minKelvin), Kelvin2Fahrenheit(maxKelvin)); + // set the value in Kelvin but the scale displays in Fahrenheit + // 273.15 Kelvin = 0 Celsius = 32 Fahrenheit + t.setValue(273.15); + a.setMainWidget(&t); + t.show(); + return a.exec(); +} + +.fi +.PP + +.SH "Member Enumeration Documentation" +.PP +.SS "enum \fBQwtThermo::ScalePos\fP"Scale position. \fBQwtThermo\fP tries to enforce valid combinations of its orientation and scale position: +.PP +.IP "\(bu" 2 +Qt::Horizonal combines with NoScale, TopScale and BottomScale +.IP "\(bu" 2 +Qt::Vertical combines with NoScale, LeftScale and RightScale +.PP +.PP +\fBSee also:\fP +.RS 4 +\fBsetOrientation()\fP, \fBsetScalePosition()\fP +.RE +.PP + +.PP +\fBEnumerator: \fP +.in +1c +.TP +\fB\fINoScale \fP\fP +No scale. +.TP +\fB\fILeftScale \fP\fP +The scale is left of the pipe. +.TP +\fB\fIRightScale \fP\fP +The scale is right of the pipe. +.TP +\fB\fITopScale \fP\fP +The scale is above the pipe. +.TP +\fB\fIBottomScale \fP\fP +The scale is below the pipe. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtThermo::QwtThermo (QWidget *parent = \fCNULL\fP)\fC [explicit]\fP"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fIparent\fP Parent widget +.RE +.PP + +.SS "QwtThermo::~QwtThermo ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "const QBrush & QwtThermo::alarmBrush () const"Return the liquid brush ( QPalette::Highlight ) above the alarm threshold. +.PP +\fBSee also:\fP +.RS 4 +\fBsetAlarmBrush()\fP, QWidget::palette() +.RE +.PP +\fBWarning:\fP +.RS 4 +The alarm threshold has no effect, when a color map has been assigned +.RE +.PP + +.SS "bool QwtThermo::alarmEnabled () const"\fBReturns:\fP +.RS 4 +True, when the alarm threshold is enabled. +.RE +.PP +\fBWarning:\fP +.RS 4 +The alarm threshold has no effect, when a color map has been assigned +.RE +.PP + +.SS "double QwtThermo::alarmLevel () const"Return the alarm threshold. +.PP +\fBSee also:\fP +.RS 4 +\fBsetAlarmLevel()\fP +.RE +.PP +\fBWarning:\fP +.RS 4 +The alarm threshold has no effect, when a color map has been assigned +.RE +.PP + +.SS "int QwtThermo::borderWidth () const"Return the border width of the thermometer pipe. +.PP +\fBSee also:\fP +.RS 4 +\fBsetBorderWidth()\fP +.RE +.PP + +.SS "void QwtThermo::changeEvent (QEvent *event)\fC [protected, virtual]\fP"Qt change event handler +.PP +\fBParameters:\fP +.RS 4 +\fIevent\fP Event +.RE +.PP + +.SS "\fBQwtColorMap\fP * QwtThermo::colorMap ()"\fBReturns:\fP +.RS 4 +Color map for the fill color +.RE +.PP +\fBWarning:\fP +.RS 4 +The alarm threshold has no effect, when a color map has been assigned +.RE +.PP + +.SS "const \fBQwtColorMap\fP * QwtThermo::colorMap () const"\fBReturns:\fP +.RS 4 +Color map for the fill color +.RE +.PP +\fBWarning:\fP +.RS 4 +The alarm threshold has no effect, when a color map has been assigned +.RE +.PP + +.SS "void QwtThermo::drawLiquid (QPainter *painter, const QRect &pipeRect) const\fC [protected, virtual]\fP"Redraw the liquid in thermometer pipe. +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIpipeRect\fP Bounding rectangle of the pipe without borders +.RE +.PP + +.SS "const QBrush & QwtThermo::fillBrush () const"Return the liquid ( QPalette::ButtonText ) brush. +.PP +\fBSee also:\fP +.RS 4 +\fBsetFillBrush()\fP, QWidget::palette() +.RE +.PP + +.SS "double QwtThermo::maxValue () const" +.PP +Return the maximum value. +.SS "QSize QwtThermo::minimumSizeHint () const\fC [virtual]\fP" +.PP +Return a minimum size hint. \fBWarning:\fP +.RS 4 +The return value depends on the font and the scale. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsizeHint()\fP +.RE +.PP + +.SS "double QwtThermo::minValue () const" +.PP +Return the minimum value. +.SS "void QwtThermo::paintEvent (QPaintEvent *event)\fC [protected, virtual]\fP"Qt paint event. +.PP +\fBParameters:\fP +.RS 4 +\fIevent\fP Paint event +.RE +.PP + +.SS "QRect QwtThermo::pipeRect () const\fC [protected]\fP"\fBReturns:\fP +.RS 4 +Bounding rectangle of the pipe ( without borders ) in widget coordinates +.RE +.PP + +.SS "int QwtThermo::pipeWidth () const"Return the width of the pipe. +.PP +\fBSee also:\fP +.RS 4 +\fBsetPipeWidth()\fP +.RE +.PP + +.SS "\fBQwtInterval::BorderFlags\fP QwtThermo::rangeFlags () const"\fBReturns:\fP +.RS 4 +Range flags +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetRangeFlags()\fP +.RE +.PP + +.SS "void QwtThermo::resizeEvent (QResizeEvent *event)\fC [protected, virtual]\fP"Qt resize event handler +.PP +\fBParameters:\fP +.RS 4 +\fIevent\fP Resize event +.RE +.PP + +.SS "void QwtThermo::scaleChange ()\fC [protected, virtual]\fP" +.PP +Notify a scale change. +.PP +Reimplemented from \fBQwtAbstractScale\fP. +.SS "const \fBQwtScaleDraw\fP * QwtThermo::scaleDraw () const"\fBReturns:\fP +.RS 4 +the scale draw of the thermo +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetScaleDraw()\fP +.RE +.PP + +.SS "\fBQwtScaleDraw\fP * QwtThermo::scaleDraw ()\fC [protected]\fP"\fBReturns:\fP +.RS 4 +the scale draw of the thermo +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetScaleDraw()\fP +.RE +.PP + +.SS "\fBQwtThermo::ScalePos\fP QwtThermo::scalePosition () const"Return the scale position. +.PP +\fBSee also:\fP +.RS 4 +\fBsetScalePosition()\fP +.RE +.PP + +.SS "void QwtThermo::setAlarmBrush (const QBrush &brush)" +.PP +Specify the liquid brush above the alarm threshold. Changes the QPalette::Highlight brush of the palette. +.PP +\fBParameters:\fP +.RS 4 +\fIbrush\fP New brush. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBalarmBrush()\fP, QWidget::setPalette() +.RE +.PP +\fBWarning:\fP +.RS 4 +The alarm threshold has no effect, when a color map has been assigned +.RE +.PP + +.SS "void QwtThermo::setAlarmEnabled (booltf)" +.PP +Enable or disable the alarm threshold. \fBParameters:\fP +.RS 4 +\fItf\fP true (disabled) or false (enabled) +.RE +.PP +\fBWarning:\fP +.RS 4 +The alarm threshold has no effect, when a color map has been assigned +.RE +.PP + +.SS "void QwtThermo::setAlarmLevel (doublelevel)"Specify the alarm threshold. +.PP +\fBParameters:\fP +.RS 4 +\fIlevel\fP Alarm threshold +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBalarmLevel()\fP +.RE +.PP +\fBWarning:\fP +.RS 4 +The alarm threshold has no effect, when a color map has been assigned +.RE +.PP + +.SS "void QwtThermo::setBorderWidth (intwidth)"Set the border width of the pipe. +.PP +\fBParameters:\fP +.RS 4 +\fIwidth\fP Border width +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBborderWidth()\fP +.RE +.PP + +.SS "void QwtThermo::setColorMap (\fBQwtColorMap\fP *colorMap)" +.PP +Assign a color map for the fill color. \fBParameters:\fP +.RS 4 +\fIcolorMap\fP Color map +.RE +.PP +\fBWarning:\fP +.RS 4 +The alarm threshold has no effect, when a color map has been assigned +.RE +.PP + +.SS "void QwtThermo::setFillBrush (const QBrush &brush)" +.PP +Change the brush of the liquid. Changes the QPalette::ButtonText brush of the palette. +.PP +\fBParameters:\fP +.RS 4 +\fIbrush\fP New brush. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBfillBrush()\fP, QWidget::setPalette() +.RE +.PP + +.SS "void QwtThermo::setMaxValue (doublemaxValue)"Set the maximum value. +.PP +\fBParameters:\fP +.RS 4 +\fImaxValue\fP Maximum value +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBmaxValue()\fP, \fBsetMinValue()\fP, \fBsetRange()\fP +.RE +.PP + +.SS "void QwtThermo::setMinValue (doubleminValue)"Set the minimum value. +.PP +\fBParameters:\fP +.RS 4 +\fIminValue\fP Minimum value +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBminValue()\fP, \fBsetMaxValue()\fP, \fBsetRange()\fP +.RE +.PP + +.SS "void QwtThermo::setOrientation (Qt::Orientationo, \fBScalePos\fPs)" +.PP +Set the thermometer orientation and the scale position. The scale position NoScale disables the scale. +.PP +\fBParameters:\fP +.RS 4 +\fIo\fP orientation. Possible values are Qt::Horizontal and Qt::Vertical. The default value is Qt::Vertical. +.br +\fIs\fP Position of the scale. The default value is NoScale. +.RE +.PP +A valid combination of scale position and orientation is enforced: +.IP "\(bu" 2 +a horizontal thermometer can have the scale positions TopScale, BottomScale or NoScale; +.IP "\(bu" 2 +a vertical thermometer can have the scale positions LeftScale, RightScale or NoScale; +.IP "\(bu" 2 +an invalid scale position will default to NoScale. +.PP +.PP +\fBSee also:\fP +.RS 4 +\fBsetScalePosition()\fP +.RE +.PP + +.SS "void QwtThermo::setPipeWidth (intwidth)"Change the width of the pipe. +.PP +\fBParameters:\fP +.RS 4 +\fIwidth\fP Width of the pipe +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBpipeWidth()\fP +.RE +.PP + +.SS "void QwtThermo::setRange (doubleminValue, doublemaxValue, boollogarithmic = \fCfalse\fP)" +.PP +Set the range. \fBParameters:\fP +.RS 4 +\fIminValue\fP value corresponding lower or left end of the thermometer +.br +\fImaxValue\fP value corresponding to the upper or right end of the thermometer +.br +\fIlogarithmic\fP logarithmic mapping, true or false +.RE +.PP + +.SS "void QwtThermo::setRangeFlags (\fBQwtInterval::BorderFlags\fPflags)" +.PP +Exclude/Include min/max values. According to the flags \fBminValue()\fP and \fBmaxValue()\fP are included/excluded from the pipe. In case of an excluded value the corresponding tick is painted 1 pixel off of the \fBpipeRect()\fP. +.PP +F.e. when a minimum of 0.0 has to be displayed as an empty pipe the \fBminValue()\fP needs to be excluded. +.PP +\fBParameters:\fP +.RS 4 +\fIflags\fP Range flags +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBrangeFlags()\fP +.RE +.PP + +.SS "void QwtThermo::setScaleDraw (\fBQwtScaleDraw\fP *scaleDraw)" +.PP +Set a scale draw. For changing the labels of the scales, it is necessary to derive from \fBQwtScaleDraw\fP and overload \fBQwtScaleDraw::label()\fP. +.PP +\fBParameters:\fP +.RS 4 +\fIscaleDraw\fP ScaleDraw object, that has to be created with new and will be deleted in ~QwtThermo or the next call of \fBsetScaleDraw()\fP. +.RE +.PP + +.SS "void QwtThermo::setScalePosition (\fBScalePos\fPscalePos)" +.PP +Change the scale position (and thermometer orientation). \fBParameters:\fP +.RS 4 +\fIscalePos\fP Position of the scale. +.RE +.PP +A valid combination of scale position and orientation is enforced: +.IP "\(bu" 2 +if the new scale position is LeftScale or RightScale, the scale orientation will become Qt::Vertical; +.IP "\(bu" 2 +if the new scale position is BottomScale or TopScale, the scale orientation will become Qt::Horizontal; +.IP "\(bu" 2 +if the new scale position is NoScale, the scale orientation will not change. +.PP +.PP +\fBSee also:\fP +.RS 4 +\fBsetOrientation()\fP, \fBscalePosition()\fP +.RE +.PP + +.SS "void QwtThermo::setSpacing (intspacing)" +.PP +Change the spacing between pipe and scale. A spacing of 0 means, that the backbone of the scale is below the pipe. +.PP +The default setting is 3 pixels. +.PP +\fBParameters:\fP +.RS 4 +\fIspacing\fP Number of pixels +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBspacing()\fP; +.RE +.PP + +.SS "void QwtThermo::setValue (doublevalue)\fC [virtual, slot]\fP"Set the current value. +.PP +\fBParameters:\fP +.RS 4 +\fIvalue\fP New Value +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBvalue()\fP +.RE +.PP + +.SS "QSize QwtThermo::sizeHint () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +the minimum size hint +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBminimumSizeHint()\fP +.RE +.PP + +.SS "int QwtThermo::spacing () const"\fBReturns:\fP +.RS 4 +Number of pixels between pipe and scale +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetSpacing()\fP +.RE +.PP + +.SS "double QwtThermo::value () const" +.PP +Return the value. + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtWeedingCurveFitter.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtWeedingCurveFitter.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtWeedingCurveFitter.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtWeedingCurveFitter.3 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1,108 @@ +.TH "QwtWeedingCurveFitter" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtWeedingCurveFitter \- +.PP +A curve fitter implementing Douglas and Peucker algorithm. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtCurveFitter\fP. +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtWeedingCurveFitter\fP (double tolerance=1.0)" +.br +.ti -1c +.RI "virtual \fB~QwtWeedingCurveFitter\fP ()" +.br +.ti -1c +.RI "void \fBsetTolerance\fP (double)" +.br +.ti -1c +.RI "double \fBtolerance\fP () const " +.br +.ti -1c +.RI "virtual QPolygonF \fBfitCurve\fP (const QPolygonF &) const " +.br +.in -1c +.SH "Detailed Description" +.PP +A curve fitter implementing Douglas and Peucker algorithm. + +The purpose of the Douglas and Peucker algorithm is that given a 'curve' composed of line segments to find a curve not too dissimilar but that has fewer points. The algorithm defines 'too dissimilar' based on the maximum distance (tolerance) between the original curve and the smoothed curve. +.PP +The smoothed curve consists of a subset of the points that defined the original curve. +.PP +In opposite to \fBQwtSplineCurveFitter\fP the Douglas and Peucker algorithm reduces the number of points. By adjusting the tolerance parameter according to the axis scales \fBQwtSplineCurveFitter\fP can be used to implement different level of details to speed up painting of curves of many points. +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtWeedingCurveFitter::QwtWeedingCurveFitter (doubletolerance = \fC1.0\fP)"Constructor +.PP +\fBParameters:\fP +.RS 4 +\fItolerance\fP Tolerance +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetTolerance()\fP, \fBtolerance()\fP +.RE +.PP + +.SS "QwtWeedingCurveFitter::~QwtWeedingCurveFitter ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "QPolygonF QwtWeedingCurveFitter::fitCurve (const QPolygonF &points) const\fC [virtual]\fP"\fBParameters:\fP +.RS 4 +\fIpoints\fP Series of data points +.RE +.PP +\fBReturns:\fP +.RS 4 +Curve points +.RE +.PP + +.PP +Implements \fBQwtCurveFitter\fP. +.SS "void QwtWeedingCurveFitter::setTolerance (doubletolerance)"Assign the tolerance +.PP +The tolerance is the maximum distance, that is accaptable between the original curve and the smoothed curve. +.PP +Increasing the tolerance will reduce the number of the resulting points. +.PP +\fBParameters:\fP +.RS 4 +\fItolerance\fP Tolerance +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBtolerance()\fP +.RE +.PP + +.SS "double QwtWeedingCurveFitter::tolerance () const"\fBReturns:\fP +.RS 4 +Tolerance +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetTolerance()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtWheel.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtWheel.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtWheel.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/QwtWheel.3 2011-04-15 10:49:01.000000000 +0000 @@ -0,0 +1,409 @@ +.TH "QwtWheel" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +QwtWheel \- +.PP +The Wheel Widget. + +.SH SYNOPSIS +.br +.PP +.PP +\fC#include \fP +.PP +Inherits \fBQwtAbstractSlider\fP. +.SS "Public Slots" + +.in +1c +.ti -1c +.RI "void \fBsetTotalAngle\fP (double)" +.br +.ti -1c +.RI "void \fBsetViewAngle\fP (double)" +.br +.in -1c +.SS "Public Member Functions" + +.in +1c +.ti -1c +.RI "\fBQwtWheel\fP (QWidget *parent=NULL)" +.br +.ti -1c +.RI "virtual \fB~QwtWheel\fP ()" +.br +.ti -1c +.RI "virtual void \fBsetOrientation\fP (Qt::Orientation)" +.br +.ti -1c +.RI "double \fBtotalAngle\fP () const " +.br +.ti -1c +.RI "double \fBviewAngle\fP () const " +.br +.ti -1c +.RI "void \fBsetTickCnt\fP (int)" +.br +.ti -1c +.RI "int \fBtickCnt\fP () const " +.br +.ti -1c +.RI "void \fBsetMass\fP (double)" +.br +.ti -1c +.RI "double \fBmass\fP () const " +.br +.ti -1c +.RI "void \fBsetWheelWidth\fP (int)" +.br +.ti -1c +.RI "int \fBwheelWidth\fP () const " +.br +.ti -1c +.RI "void \fBsetWheelBorderWidth\fP (int)" +.br +.ti -1c +.RI "int \fBwheelBorderWidth\fP () const " +.br +.ti -1c +.RI "void \fBsetBorderWidth\fP (int)" +.br +.ti -1c +.RI "int \fBborderWidth\fP () const " +.br +.ti -1c +.RI "QRect \fBwheelRect\fP () const " +.br +.ti -1c +.RI "virtual QSize \fBsizeHint\fP () const " +.br +.ti -1c +.RI "virtual QSize \fBminimumSizeHint\fP () const " +.br +.in -1c +.SS "Protected Member Functions" + +.in +1c +.ti -1c +.RI "virtual void \fBpaintEvent\fP (QPaintEvent *)" +.br +.ti -1c +.RI "virtual void \fBresizeEvent\fP (QResizeEvent *)" +.br +.ti -1c +.RI "virtual void \fBdrawTicks\fP (QPainter *, const QRectF &)" +.br +.ti -1c +.RI "virtual void \fBdrawWheelBackground\fP (QPainter *, const QRectF &)" +.br +.ti -1c +.RI "virtual void \fBvalueChange\fP ()" +.br +.ti -1c +.RI "virtual double \fBgetValue\fP (const QPoint &)" +.br +.ti -1c +.RI "virtual void \fBgetScrollMode\fP (const QPoint &, \fBQwtAbstractSlider::ScrollMode\fP &, int &direction) const " +.br +.in -1c +.SH "Detailed Description" +.PP +The Wheel Widget. + +The wheel widget can be used to change values over a very large range in very small steps. Using the setMass member, it can be configured as a flywheel. +.PP +\fBSee also:\fP +.RS 4 +The radio example. +.RE +.PP + +.SH "Constructor & Destructor Documentation" +.PP +.SS "QwtWheel::QwtWheel (QWidget *parent = \fCNULL\fP)\fC [explicit]\fP" +.PP +Constructor. +.SS "QwtWheel::~QwtWheel ()\fC [virtual]\fP" +.PP +Destructor. +.SH "Member Function Documentation" +.PP +.SS "int QwtWheel::borderWidth () const"\fBReturns:\fP +.RS 4 +Border width +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetBorderWidth()\fP +.RE +.PP + +.SS "void QwtWheel::drawTicks (QPainter *painter, const QRectF &rect)\fC [protected, virtual]\fP"Draw the Wheel's ticks +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIrect\fP Rectangle for the wheel +.RE +.PP + +.SS "void QwtWheel::drawWheelBackground (QPainter *painter, const QRectF &rect)\fC [protected, virtual]\fP"Draw the Wheel's background gradient +.PP +\fBParameters:\fP +.RS 4 +\fIpainter\fP Painter +.br +\fIrect\fP Rectangle for the wheel +.RE +.PP + +.SS "void QwtWheel::getScrollMode (const QPoint &p, \fBQwtAbstractSlider::ScrollMode\fP &scrollMode, int &direction) const\fC [protected, virtual]\fP" +.PP +Determine the scrolling mode and direction corresponding to a specified point. \fBParameters:\fP +.RS 4 +\fIp\fP point +.br +\fIscrollMode\fP scrolling mode +.br +\fIdirection\fP direction +.RE +.PP + +.PP +Implements \fBQwtAbstractSlider\fP. +.SS "double QwtWheel::getValue (const QPoint &p)\fC [protected, virtual]\fP" +.PP +Determine the value corresponding to a specified point. +.PP +Implements \fBQwtAbstractSlider\fP. +.SS "double QwtWheel::mass () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +mass +.RE +.PP + +.PP +Reimplemented from \fBQwtAbstractSlider\fP. +.SS "QSize QwtWheel::minimumSizeHint () const\fC [virtual]\fP" +.PP +Return a minimum size hint. \fBWarning:\fP +.RS 4 +The return value is based on the wheel width. +.RE +.PP + +.SS "void QwtWheel::paintEvent (QPaintEvent *event)\fC [protected, virtual]\fP" +.PP +Qt Paint Event. \fBParameters:\fP +.RS 4 +\fIevent\fP Paint event +.RE +.PP + +.SS "void QwtWheel::resizeEvent (QResizeEvent *event)\fC [protected, virtual]\fP" +.PP +Qt Resize Event. \fBParameters:\fP +.RS 4 +\fIevent\fP Resize event +.RE +.PP + +.SS "void QwtWheel::setBorderWidth (intwidth)" +.PP +Set the border width. The border defaults to 2. +.PP +\fBParameters:\fP +.RS 4 +\fIwidth\fP Border width +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBborderWidth()\fP +.RE +.PP + +.SS "void QwtWheel::setMass (doublemass)\fC [virtual]\fP" +.PP +Set the mass of the wheel. Assigning a mass turns the wheel into a flywheel. +.PP +\fBParameters:\fP +.RS 4 +\fImass\fP The wheel's mass +.RE +.PP + +.PP +Reimplemented from \fBQwtAbstractSlider\fP. +.SS "void QwtWheel::setOrientation (Qt::Orientationo)\fC [virtual]\fP" +.PP +Set the wheel's orientation. \fBParameters:\fP +.RS 4 +\fIo\fP Orientation. Allowed values are Qt::Horizontal and Qt::Vertical. Defaults to Qt::Horizontal. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBQwtAbstractSlider::orientation()\fP +.RE +.PP + +.PP +Reimplemented from \fBQwtAbstractSlider\fP. +.SS "void QwtWheel::setTickCnt (intcnt)" +.PP +Adjust the number of grooves in the wheel's surface. The number of grooves is limited to 6 <= cnt <= 50. Values outside this range will be clipped. The default value is 10. +.PP +\fBParameters:\fP +.RS 4 +\fIcnt\fP Number of grooves per 360 degrees +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBtickCnt()\fP +.RE +.PP + +.SS "void QwtWheel::setTotalAngle (doubleangle)\fC [slot]\fP" +.PP +Set the total angle which the wheel can be turned. One full turn of the wheel corresponds to an angle of 360 degrees. A total angle of n*360 degrees means that the wheel has to be turned n times around its axis to get from the minimum value to the maximum value. +.PP +The default setting of the total angle is 360 degrees. +.PP +\fBParameters:\fP +.RS 4 +\fIangle\fP total angle in degrees +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBtotalAngle()\fP +.RE +.PP + +.SS "void QwtWheel::setViewAngle (doubleangle)\fC [slot]\fP" +.PP +Specify the visible portion of the wheel. You may use this function for fine-tuning the appearance of the wheel. The default value is 175 degrees. The value is limited from 10 to 175 degrees. +.PP +\fBParameters:\fP +.RS 4 +\fIangle\fP Visible angle in degrees +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBviewAngle()\fP, \fBsetTotalAngle()\fP +.RE +.PP + +.SS "void QwtWheel::setWheelBorderWidth (intborderWidth)" +.PP +Set the wheel border width of the wheel. The wheel border must not be smaller than 1 and is limited in dependence on the wheel's size. Values outside the allowed range will be clipped. +.PP +The wheel border defaults to 2. +.PP +\fBParameters:\fP +.RS 4 +\fIborderWidth\fP Border width +.RE +.PP +\fBSee also:\fP +.RS 4 +internalBorder() +.RE +.PP + +.SS "void QwtWheel::setWheelWidth (intwidth)" +.PP +Set the width of the wheel. Corresponds to the wheel height for horizontal orientation, and the wheel width for vertical orientation. +.PP +\fBParameters:\fP +.RS 4 +\fIwidth\fP the wheel's width +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBwheelWidth()\fP +.RE +.PP + +.SS "QSize QwtWheel::sizeHint () const\fC [virtual]\fP"\fBReturns:\fP +.RS 4 +a size hint +.RE +.PP + +.SS "int QwtWheel::tickCnt () const"\fBReturns:\fP +.RS 4 +Number of grooves in the wheel's surface. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetTickCnt()\fP +.RE +.PP + +.SS "double QwtWheel::totalAngle () const"\fBReturns:\fP +.RS 4 +Total angle which the wheel can be turned. +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetTotalAngle()\fP +.RE +.PP + +.SS "void QwtWheel::valueChange ()\fC [protected, virtual]\fP" +.PP +Notify value change. +.PP +Reimplemented from \fBQwtAbstractSlider\fP. +.SS "double QwtWheel::viewAngle () const"\fBReturns:\fP +.RS 4 +Visible portion of the wheel +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetViewAngle()\fP, \fBtotalAngle()\fP +.RE +.PP + +.SS "int QwtWheel::wheelBorderWidth () const"\fBReturns:\fP +.RS 4 +Wheel border width +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetWheelBorderWidth()\fP +.RE +.PP + +.SS "QRect QwtWheel::wheelRect () const"\fBReturns:\fP +.RS 4 +Rectangle of the wheel without the outer border +.RE +.PP + +.SS "int QwtWheel::wheelWidth () const"\fBReturns:\fP +.RS 4 +Width of the wheel +.RE +.PP +\fBSee also:\fP +.RS 4 +\fBsetWheelWidth()\fP +.RE +.PP + + +.SH "Author" +.PP +Generated automatically by Doxygen for Qwt User's Guide from the source code. diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/scatterscreenshots.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/scatterscreenshots.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/scatterscreenshots.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/scatterscreenshots.3 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,9 @@ +.TH "scatterscreenshots" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +scatterscreenshots \- .TH "scatterscreenshots" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +scatterscreenshots \- diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/spectrogramscreenshots.3 phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/spectrogramscreenshots.3 --- phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/spectrogramscreenshots.3 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/man/man3/spectrogramscreenshots.3 2011-04-15 10:48:57.000000000 +0000 @@ -0,0 +1,12 @@ +.TH "spectrogramscreenshots" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +spectrogramscreenshots \- .TH "spectrogramscreenshots" 3 "Fri Apr 15 2011" "Version 6.0.0" "Qwt User's Guide" \" -*- nroff -*- +.ad l +.nh +.SH NAME +spectrogramscreenshots \- .PP +.PP +.PP +/*! diff -Nru phyxcalc-3rev200/qwt-6.0.0/doc/qwt.dox phyxcalc-3rev200/qwt-6.0.0/doc/qwt.dox --- phyxcalc-3rev200/qwt-6.0.0/doc/qwt.dox 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/doc/qwt.dox 2011-04-15 10:48:44.000000000 +0000 @@ -0,0 +1,162 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +/* + This file contains NO source code, just some documentation for doxygen to + parse. +*/ + +/*! + \mainpage Qwt - Qt Widgets for Technical Applications + +The Qwt library contains GUI Components and utility classes which are primarily +useful for programs with a technical background. Beside a 2D plot widget +it provides scales, sliders, dials, compasses, thermometers, wheels and knobs +to control or display values, arrays, or ranges of type double. + + \image html plot.png + + \if homepage + \section homepage Project page + The official project page is hosted at + sourceforge + \endif + + \section license License + + Qwt is distributed under the terms of the \ref qwtlicense. + + \section platforms Platforms + + Qwt 6.x might be usable in all environments where you find + Qt. + It is compatible with Qt >= 4.4. + + \section screenshotsonmainpage Screenshots + - \ref curvescreenshots\n + - \ref scatterscreenshots\n + - \ref spectrogramscreenshots\n + - \ref histogramscreenshots\n + - \ref controlscreenshots\n + + \latexonly Screenshots are only available in the HTML docs.\endlatexonly + + \section downloads Downloads + Stable releases, prereleases and snapshots are available at the Qwt project page. + + For getting a snapshot with all bugfixes for the latest 6.0 release: + \code svn co https://qwt.svn.sourceforge.net/svnroot/qwt/branches/qwt-6.0 \endcode + + For getting a development snapshot from the SVN repository: + \code svn co https://qwt.svn.sourceforge.net/svnroot/qwt/trunk/qwt \endcode + + Qwt doesn't distribute binary packages, but today all major Linux distributors + offer one. Note, that these packages often don't include the examples. + + \section installonmainpage Installation + + Have a look at the qwt.pro project file. It is prepared for building + dynamic libraries in Win32 and Unix/X11 environments. + If you don't know what to do with it, read the file \ref qwtinstall and/or + Trolltechs + qmake documentation. Once you have build the library you have to install + all files from the lib, include and doc directories. + + \section support Support + - Mailing list\n + For all kind of Qwt related questions use the Qwt mailing list.\n + If you prefer newsgroups use the mail to news gateway of Gmane. + + - Forum\n + Qt Centre is a great resource for Qt + related questions. It has a sub forum, that is dedicated to + Qwt related questions. + + - Individual support\n + If you are looking for individual support, or need someone who implements + your Qwt component/application contact qwt-support@tigertal.de. But sending + requests to this address without a good reason for not using public + support channels might be silently ignored. + + \section relatedprojects Related Projects + + QwtPolar, a polar plot widget.\n + QwtPlot3D, an OpenGL 3D plot widget.\n + QtiPlot, + data analysis and scientific plotting tool, using QwtPlot. + + \section languagebindings Language Bindings + + PyQwt, a set of Qwt Python bindings.\n + Korundum/QtRuby, including a set of Qwt Ruby bindings.\n + + \section donations Donations + + Sourceforge offers a Donation System via PayPal. You can use it, if you like to support the development of Qwt. + + \section credits Credits: + \par Authors: + Uwe Rathmann, Josef Wilgen ( <= Qwt 0.2 ) + \par Project admin: + Uwe Rathmann \ +*/ + +/*! + \page qwtlicense Qwt License, Version 1.0 + \include "COPYING" +*/ + +/*! + \page qwtinstall INSTALL + \include "INSTALL" +*/ + +/*! + \page curvescreenshots Curve Plots + \image html plot.png + + \image html sinus.png + + \image html cpuplot.png + + \image html graph.png + + \image html curves.png +*/ + +/*! + \page scatterscreenshots Scatter Plot + \image html scatterplot.png +*/ + +/*! + \page spectrogramscreenshots Spectrogram, Contour Plot + \image html spectrogram1.png + + \image html spectrogram2.png + + \image html spectrogram3.png + +/*! + \page histogramscreenshots Histogram + \image html histogram.png +*/ + +/*! + \page controlscreenshots Dials, Compasses, Knobs, Wheels, Sliders, Thermos + \image html radio.png + + \image html sliders.png + + \image html dials1.png + + \image html dials2.png + + \image html sysinfo.png +*/ diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/bode/bode.pro phyxcalc-3rev200/qwt-6.0.0/examples/bode/bode.pro --- phyxcalc-3rev200/qwt-6.0.0/examples/bode/bode.pro 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/bode/bode.pro 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,23 @@ +################################################################ +# Qwt Widget Library +# Copyright (C) 1997 Josef Wilgen +# Copyright (C) 2002 Uwe Rathmann +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the Qwt License, Version 1.0 +################################################################ + +include( $${PWD}/../examples.pri ) + +TARGET = bode + +HEADERS = \ + mainwindow.h \ + plot.h \ + complexnumber.h \ + pixmaps.h + +SOURCES = \ + plot.cpp \ + mainwindow.cpp \ + main.cpp diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/bode/complexnumber.h phyxcalc-3rev200/qwt-6.0.0/examples/bode/complexnumber.h --- phyxcalc-3rev200/qwt-6.0.0/examples/bode/complexnumber.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/bode/complexnumber.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,83 @@ +#ifndef _COMPLEX_NUMBER_H_ +#define _COMPLEX_NUMBER_H_ + +#include + +class ComplexNumber +{ +public: + ComplexNumber() ; + ComplexNumber(double r, double i = 0.0); + + double real() const; + double imag() const; + + friend ComplexNumber operator*( + const ComplexNumber &, const ComplexNumber &); + + friend ComplexNumber operator+( + const ComplexNumber &, const ComplexNumber &); + + friend ComplexNumber operator-( + const ComplexNumber &, const ComplexNumber &); + friend ComplexNumber operator/( + const ComplexNumber &, const ComplexNumber &); + +private: + double d_real; + double d_imag; +}; + +inline ComplexNumber::ComplexNumber(): + d_real(0.0), + d_imag(-0.0) +{ +} + +inline ComplexNumber::ComplexNumber(double re, double im): + d_real(re), + d_imag(im) +{ +} + +inline double ComplexNumber::real() const +{ + return d_real; +} + +inline double ComplexNumber::imag() const +{ + return d_imag; +} + +inline ComplexNumber operator+( + const ComplexNumber &x1, const ComplexNumber &x2) +{ + return ComplexNumber(x1.d_real + x2.d_real, x1.d_imag + x2.d_imag); +} + +inline ComplexNumber operator-( + const ComplexNumber &x1, const ComplexNumber &x2) +{ + return ComplexNumber(x1.d_real - x2.d_real, x1.d_imag - x2.d_imag); +} + +inline ComplexNumber operator*( + const ComplexNumber &x1, const ComplexNumber &x2) +{ + return ComplexNumber(x1.d_real * x2.d_real - x1.d_imag * x2.d_imag, + x1.d_real * x2.d_imag + x2.d_real * x1.d_imag); +} + +inline ComplexNumber operator/( + const ComplexNumber &x1, const ComplexNumber &x2) +{ + double denom = x2.d_real * x2.d_real + x2.d_imag * x2.d_imag; + + return ComplexNumber( + (x1.d_real * x2.d_real + x1.d_imag * x2.d_imag) / denom, + (x1.d_imag * x2.d_real - x2.d_imag * x1.d_real) / denom + ); +} + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/bode/main.cpp phyxcalc-3rev200/qwt-6.0.0/examples/bode/main.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/bode/main.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/bode/main.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,13 @@ +#include +#include "mainwindow.h" + +int main (int argc, char **argv) +{ + QApplication a(argc, argv); + + MainWindow w; + w.resize(540,400); + w.show(); + + return a.exec(); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/bode/mainwindow.cpp phyxcalc-3rev200/qwt-6.0.0/examples/bode/mainwindow.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/bode/mainwindow.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/bode/mainwindow.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,276 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "pixmaps.h" +#include "plot.h" +#include "mainwindow.h" + +class Zoomer: public QwtPlotZoomer +{ +public: + Zoomer(int xAxis, int yAxis, QwtPlotCanvas *canvas): + QwtPlotZoomer(xAxis, yAxis, canvas) + { + setTrackerMode(QwtPicker::AlwaysOff); + setRubberBand(QwtPicker::NoRubberBand); + + // RightButton: zoom out by 1 + // Ctrl+RightButton: zoom out to full size + + setMousePattern(QwtEventPattern::MouseSelect2, + Qt::RightButton, Qt::ControlModifier); + setMousePattern(QwtEventPattern::MouseSelect3, + Qt::RightButton); + } +}; + +//----------------------------------------------------------------- +// +// bode.cpp -- A demo program featuring QwtPlot and QwtCounter +// +// This example demonstrates the mapping of different curves +// to different axes in a QwtPlot widget. It also shows how to +// display the cursor position and how to implement zooming. +// +//----------------------------------------------------------------- + +MainWindow::MainWindow(QWidget *parent): + QMainWindow(parent) +{ + d_plot = new Plot(this); + + const int margin = 5; + d_plot->setContentsMargins( margin, margin, margin, 0 ); + + setContextMenuPolicy(Qt::NoContextMenu); + + d_zoomer[0] = new Zoomer( QwtPlot::xBottom, QwtPlot::yLeft, + d_plot->canvas()); + d_zoomer[0]->setRubberBand(QwtPicker::RectRubberBand); + d_zoomer[0]->setRubberBandPen(QColor(Qt::green)); + d_zoomer[0]->setTrackerMode(QwtPicker::ActiveOnly); + d_zoomer[0]->setTrackerPen(QColor(Qt::white)); + + d_zoomer[1] = new Zoomer(QwtPlot::xTop, QwtPlot::yRight, + d_plot->canvas()); + + d_panner = new QwtPlotPanner(d_plot->canvas()); + d_panner->setMouseButton(Qt::MidButton); + + d_picker = new QwtPlotPicker(QwtPlot::xBottom, QwtPlot::yLeft, + QwtPlotPicker::CrossRubberBand, QwtPicker::AlwaysOn, + d_plot->canvas()); + d_picker->setStateMachine(new QwtPickerDragPointMachine()); + d_picker->setRubberBandPen(QColor(Qt::green)); + d_picker->setRubberBand(QwtPicker::CrossRubberBand); + d_picker->setTrackerPen(QColor(Qt::white)); + + setCentralWidget(d_plot); + + QToolBar *toolBar = new QToolBar(this); + + QToolButton *btnZoom = new QToolButton(toolBar); + btnZoom->setText("Zoom"); + btnZoom->setIcon(QIcon(zoom_xpm)); + btnZoom->setCheckable(true); + btnZoom->setToolButtonStyle(Qt::ToolButtonTextUnderIcon); + toolBar->addWidget(btnZoom); + connect(btnZoom, SIGNAL(toggled(bool)), SLOT(enableZoomMode(bool))); + +#ifndef QT_NO_PRINTER + QToolButton *btnPrint = new QToolButton(toolBar); + btnPrint->setText("Print"); + btnPrint->setIcon(QIcon(print_xpm)); + btnPrint->setToolButtonStyle(Qt::ToolButtonTextUnderIcon); + toolBar->addWidget(btnPrint); + connect(btnPrint, SIGNAL(clicked()), SLOT(print())); +#endif + + QToolButton *btnExport = new QToolButton(toolBar); + btnExport->setText("Export"); + btnExport->setIcon(QIcon(print_xpm)); + btnExport->setToolButtonStyle(Qt::ToolButtonTextUnderIcon); + toolBar->addWidget(btnExport); + connect(btnExport, SIGNAL(clicked()), SLOT(exportDocument())); + + toolBar->addSeparator(); + + QWidget *hBox = new QWidget(toolBar); + + QHBoxLayout *layout = new QHBoxLayout(hBox); + layout->setSpacing(0); + layout->addWidget(new QWidget(hBox), 10); // spacer + layout->addWidget(new QLabel("Damping Factor", hBox), 0); + layout->addSpacing(10); + + QwtCounter *cntDamp = new QwtCounter(hBox); + cntDamp->setRange(0.0, 5.0, 0.01); + cntDamp->setValue(0.0); + + layout->addWidget(cntDamp, 0); + + (void)toolBar->addWidget(hBox); + + addToolBar(toolBar); +#ifndef QT_NO_STATUSBAR + (void)statusBar(); +#endif + + enableZoomMode(false); + showInfo(); + + connect(cntDamp, SIGNAL(valueChanged(double)), + d_plot, SLOT(setDamp(double))); + + connect(d_picker, SIGNAL(moved(const QPoint &)), + SLOT(moved(const QPoint &))); + connect(d_picker, SIGNAL(selected(const QPolygon &)), + SLOT(selected(const QPolygon &))); +} + +#ifndef QT_NO_PRINTER + +void MainWindow::print() +{ + QPrinter printer(QPrinter::HighResolution); + + QString docName = d_plot->title().text(); + if ( !docName.isEmpty() ) + { + docName.replace (QRegExp (QString::fromLatin1 ("\n")), tr (" -- ")); + printer.setDocName (docName); + } + + printer.setCreator("Bode example"); + printer.setOrientation(QPrinter::Landscape); + + QPrintDialog dialog(&printer); + if ( dialog.exec() ) + { + QwtPlotRenderer renderer; + + if ( printer.colorMode() == QPrinter::GrayScale ) + { + renderer.setDiscardFlag(QwtPlotRenderer::DiscardCanvasBackground); + renderer.setLayoutFlag(QwtPlotRenderer::FrameWithScales); + } + + renderer.renderTo(d_plot, printer); + } +} + +#endif + +void MainWindow::exportDocument() +{ +#ifndef QT_NO_PRINTER + QString fileName = "bode.pdf"; +#else + QString fileName = "bode.png"; +#endif + +#ifndef QT_NO_FILEDIALOG + const QList imageFormats = + QImageWriter::supportedImageFormats(); + + QStringList filter; + filter += "PDF Documents (*.pdf)"; +#ifndef QWT_NO_SVG + filter += "SVG Documents (*.svg)"; +#endif + filter += "Postscript Documents (*.ps)"; + + if ( imageFormats.size() > 0 ) + { + QString imageFilter("Images ("); + for ( int i = 0; i < imageFormats.size(); i++ ) + { + if ( i > 0 ) + imageFilter += " "; + imageFilter += "*."; + imageFilter += imageFormats[i]; + } + imageFilter += ")"; + + filter += imageFilter; + } + + fileName = QFileDialog::getSaveFileName( + this, "Export File Name", fileName, + filter.join(";;"), NULL, QFileDialog::DontConfirmOverwrite); +#endif + + if ( !fileName.isEmpty() ) + { + QwtPlotRenderer renderer; + + // flags to make the document look like the widget + renderer.setDiscardFlag(QwtPlotRenderer::DiscardBackground, false); + renderer.setLayoutFlag(QwtPlotRenderer::KeepFrames, true); + + renderer.renderDocument(d_plot, fileName, QSizeF(300, 200), 85); + } +} + +void MainWindow::enableZoomMode(bool on) +{ + d_panner->setEnabled(on); + + d_zoomer[0]->setEnabled(on); + d_zoomer[0]->zoom(0); + + d_zoomer[1]->setEnabled(on); + d_zoomer[1]->zoom(0); + + d_picker->setEnabled(!on); + + showInfo(); +} + +void MainWindow::showInfo(QString text) +{ + if ( text == QString::null ) + { + if ( d_picker->rubberBand() ) + text = "Cursor Pos: Press left mouse button in plot region"; + else + text = "Zoom: Press mouse button and drag"; + } + +#ifndef QT_NO_STATUSBAR + statusBar()->showMessage(text); +#endif +} + +void MainWindow::moved(const QPoint &pos) +{ + QString info; + info.sprintf("Freq=%g, Ampl=%g, Phase=%g", + d_plot->invTransform(QwtPlot::xBottom, pos.x()), + d_plot->invTransform(QwtPlot::yLeft, pos.y()), + d_plot->invTransform(QwtPlot::yRight, pos.y()) + ); + showInfo(info); +} + +void MainWindow::selected(const QPolygon &) +{ + showInfo(); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/bode/mainwindow.h phyxcalc-3rev200/qwt-6.0.0/examples/bode/mainwindow.h --- phyxcalc-3rev200/qwt-6.0.0/examples/bode/mainwindow.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/bode/mainwindow.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,35 @@ +#include + +class QwtPlotZoomer; +class QwtPlotPicker; +class QwtPlotPanner; +class Plot; +class QPolygon; + +class MainWindow : public QMainWindow +{ + Q_OBJECT + +public: + MainWindow(QWidget *parent = 0); + +private Q_SLOTS: + void moved(const QPoint &); + void selected(const QPolygon &); + +#ifndef QT_NO_PRINTER + void print(); +#endif + + void exportDocument(); + void enableZoomMode(bool); + +private: + void showInfo(QString text = QString::null); + + Plot *d_plot; + + QwtPlotZoomer *d_zoomer[2]; + QwtPlotPicker *d_picker; + QwtPlotPanner *d_panner; +}; diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/bode/pixmaps.h phyxcalc-3rev200/qwt-6.0.0/examples/bode/pixmaps.h --- phyxcalc-3rev200/qwt-6.0.0/examples/bode/pixmaps.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/bode/pixmaps.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,95 @@ +#ifndef PIXMAPS_H +#define PIXMAPS_H + +static const char *print_xpm[]={ +"32 32 12 1", +"a c #ffffff", +"h c #ffff00", +"c c #ffffff", +"f c #dcdcdc", +"b c #c0c0c0", +"j c #a0a0a4", +"e c #808080", +"g c #808000", +"d c #585858", +"i c #00ff00", +"# c #000000", +". c None", +"................................", +"................................", +"...........###..................", +"..........#abb###...............", +".........#aabbbbb###............", +".........#ddaaabbbbb###.........", +"........#ddddddaaabbbbb###......", +".......#deffddddddaaabbbbb###...", +"......#deaaabbbddddddaaabbbbb###", +".....#deaaaaaaabbbddddddaaabbbb#", +"....#deaaabbbaaaa#ddedddfggaaad#", +"...#deaaaaaaaaaa#ddeeeeafgggfdd#", +"..#deaaabbbaaaa#ddeeeeabbbbgfdd#", +".#deeefaaaaaaa#ddeeeeabbhhbbadd#", +"#aabbbeeefaaa#ddeeeeabbbbbbaddd#", +"#bbaaabbbeee#ddeeeeabbiibbadddd#", +"#bbbbbaaabbbeeeeeeabbbbbbaddddd#", +"#bjbbbbbbaaabbbbeabbbbbbadddddd#", +"#bjjjjbbbbbbaaaeabbbbbbaddddddd#", +"#bjaaajjjbbbbbbaaabbbbadddddddd#", +"#bbbbbaaajjjbbbbbbaaaaddddddddd#", +"#bjbbbbbbaaajjjbbbbbbddddddddd#.", +"#bjjjjbbbbbbaaajjjbbbdddddddd#..", +"#bjaaajjjbbbbbbjaajjbddddddd#...", +"#bbbbbaaajjjbbbjbbaabdddddd#....", +"###bbbbbbaaajjjjbbbbbddddd#.....", +"...###bbbbbbaaajbbbbbdddd#......", +"......###bbbbbbjbbbbbddd#.......", +".........###bbbbbbbbbdd#........", +"............###bbbbbbd#.........", +"...............###bbb#..........", +"..................###..........."}; + + +static const char *zoom_xpm[]={ +"32 32 8 1", +"# c #000000", +"b c #c0c0c0", +"a c #ffffff", +"e c #585858", +"d c #a0a0a4", +"c c #0000ff", +"f c #00ffff", +". c None", +"..######################........", +".#a#baaaaaaaaaaaaaaaaaa#........", +"#aa#baaaaaaaaaaaaaccaca#........", +"####baaaaaaaaaaaaaaaaca####.....", +"#bbbbaaaaaaaaaaaacccaaa#da#.....", +"#aaaaaaaaaaaaaaaacccaca#da#.....", +"#aaaaaaaaaaaaaaaaaccaca#da#.....", +"#aaaaaaaaaabe###ebaaaaa#da#.....", +"#aaaaaaaaa#########aaaa#da#.....", +"#aaaaaaaa###dbbbb###aaa#da#.....", +"#aaaaaaa###aaaaffb###aa#da#.....", +"#aaaaaab##aaccaaafb##ba#da#.....", +"#aaaaaae#daaccaccaad#ea#da#.....", +"#aaaaaa##aaaaaaccaab##a#da#.....", +"#aaaaaa##aacccaaaaab##a#da#.....", +"#aaaaaa##aaccccaccab##a#da#.....", +"#aaaaaae#daccccaccad#ea#da#.....", +"#aaaaaab##aacccaaaa##da#da#.....", +"#aaccacd###aaaaaaa###da#da#.....", +"#aaaaacad###daaad#####a#da#.....", +"#acccaaaad##########da##da#.....", +"#acccacaaadde###edd#eda#da#.....", +"#aaccacaaaabdddddbdd#eda#a#.....", +"#aaaaaaaaaaaaaaaaaadd#eda##.....", +"#aaaaaaaaaaaaaaaaaaadd#eda#.....", +"#aaaaaaaccacaaaaaaaaadd#eda#....", +"#aaaaaaaaaacaaaaaaaaaad##eda#...", +"#aaaaaacccaaaaaaaaaaaaa#d#eda#..", +"########################dd#eda#.", +"...#dddddddddddddddddddddd##eda#", +"...#aaaaaaaaaaaaaaaaaaaaaa#.####", +"...########################..##."}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/bode/plot.cpp phyxcalc-3rev200/qwt-6.0.0/examples/bode/plot.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/bode/plot.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/bode/plot.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,186 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "complexnumber.h" +#include "plot.h" + +#if QT_VERSION < 0x040601 +#define qExp(x) ::exp(x) +#define qAtan2(y, x) ::atan2(y, x) +#endif + +static void logSpace(double *array, int size, double xmin, double xmax) +{ + if ((xmin <= 0.0) || (xmax <= 0.0) || (size <= 0)) + return; + + const int imax = size -1; + + array[0] = xmin; + array[imax] = xmax; + + const double lxmin = log(xmin); + const double lxmax = log(xmax); + const double lstep = (lxmax - lxmin) / double(imax); + + for (int i = 1; i < imax; i++) + array[i] = qExp(lxmin + double(i) * lstep); +} + +Plot::Plot(QWidget *parent): + QwtPlot(parent) +{ + setAutoReplot(false); + + setTitle("Frequency Response of a Second-Order System"); + + setCanvasBackground(QColor(Qt::darkBlue)); + + // legend + QwtLegend *legend = new QwtLegend; + insertLegend(legend, QwtPlot::BottomLegend); + + // grid + QwtPlotGrid *grid = new QwtPlotGrid; + grid->enableXMin(true); + grid->setMajPen(QPen(Qt::white, 0, Qt::DotLine)); + grid->setMinPen(QPen(Qt::gray, 0 , Qt::DotLine)); + grid->attach(this); + + // axes + enableAxis(QwtPlot::yRight); + setAxisTitle(QwtPlot::xBottom, "Normalized Frequency"); + setAxisTitle(QwtPlot::yLeft, "Amplitude [dB]"); + setAxisTitle(QwtPlot::yRight, "Phase [deg]"); + + setAxisMaxMajor(QwtPlot::xBottom, 6); + setAxisMaxMinor(QwtPlot::xBottom, 10); + setAxisScaleEngine(QwtPlot::xBottom, new QwtLog10ScaleEngine); + + // curves + d_curve1 = new QwtPlotCurve("Amplitude"); + d_curve1->setRenderHint(QwtPlotItem::RenderAntialiased); + d_curve1->setPen(QPen(Qt::yellow)); + d_curve1->setLegendAttribute(QwtPlotCurve::LegendShowLine); + d_curve1->setYAxis(QwtPlot::yLeft); + d_curve1->attach(this); + + d_curve2 = new QwtPlotCurve("Phase"); + d_curve2->setRenderHint(QwtPlotItem::RenderAntialiased); + d_curve2->setPen(QPen(Qt::cyan)); + d_curve2->setLegendAttribute(QwtPlotCurve::LegendShowLine); + d_curve2->setYAxis(QwtPlot::yRight); + d_curve2->attach(this); + + // marker + d_marker1 = new QwtPlotMarker(); + d_marker1->setValue(0.0, 0.0); + d_marker1->setLineStyle(QwtPlotMarker::VLine); + d_marker1->setLabelAlignment(Qt::AlignRight | Qt::AlignBottom); + d_marker1->setLinePen(QPen(Qt::green, 0, Qt::DashDotLine)); + d_marker1->attach(this); + + d_marker2 = new QwtPlotMarker(); + d_marker2->setLineStyle(QwtPlotMarker::HLine); + d_marker2->setLabelAlignment(Qt::AlignRight | Qt::AlignBottom); + d_marker2->setLinePen(QPen(QColor(200,150,0), 0, Qt::DashDotLine)); + d_marker2->setSymbol( new QwtSymbol(QwtSymbol::Diamond, + QColor(Qt::yellow), QColor(Qt::green), QSize(7,7))); + d_marker2->attach(this); + + setDamp(0.0); + + setAutoReplot(true); +} + +void Plot::showData(const double *frequency, const double *amplitude, + const double *phase, int count) +{ + d_curve1->setSamples(frequency, amplitude, count); + d_curve2->setSamples(frequency, phase, count); +} + +void Plot::showPeak(double freq, double amplitude) +{ + QString label; + label.sprintf("Peak: %.3g dB", amplitude); + + QwtText text(label); + text.setFont(QFont("Helvetica", 10, QFont::Bold)); + text.setColor(QColor(200,150,0)); + + d_marker2->setValue(freq, amplitude); + d_marker2->setLabel(text); +} + +void Plot::show3dB(double freq) +{ + QString label; + label.sprintf("-3 dB at f = %.3g", freq); + + QwtText text(label); + text.setFont(QFont("Helvetica", 10, QFont::Bold)); + text.setColor(Qt::green); + + d_marker1->setValue(freq, 0.0); + d_marker1->setLabel(text); +} + +// +// re-calculate frequency response +// +void Plot::setDamp(double damping) +{ + const bool doReplot = autoReplot(); + setAutoReplot(false); + + const int ArraySize = 200; + + double frequency[ArraySize]; + double amplitude[ArraySize]; + double phase[ArraySize]; + + // build frequency vector with logarithmic division + logSpace(frequency, ArraySize, 0.01, 100); + + int i3 = 1; + double fmax = 1; + double amax = -1000.0; + + for (int i = 0; i < ArraySize; i++) + { + double f = frequency[i]; + const ComplexNumber g = + ComplexNumber(1.0) / ComplexNumber(1.0 - f * f, 2.0 * damping * f); + + amplitude[i] = 20.0 * log10(qSqrt( g.real() * g.real() + g.imag() * g.imag())); + phase[i] = qAtan2(g.imag(), g.real()) * (180.0 / M_PI); + + if ((i3 <= 1) && (amplitude[i] < -3.0)) + i3 = i; + if (amplitude[i] > amax) + { + amax = amplitude[i]; + fmax = frequency[i]; + } + + } + + double f3 = frequency[i3] - + (frequency[i3] - frequency[i3 - 1]) + / (amplitude[i3] - amplitude[i3 -1]) * (amplitude[i3] + 3); + + showPeak(fmax, amax); + show3dB(f3); + showData(frequency, amplitude, phase, ArraySize); + + setAutoReplot(doReplot); + + replot(); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/bode/plot.h phyxcalc-3rev200/qwt-6.0.0/examples/bode/plot.h --- phyxcalc-3rev200/qwt-6.0.0/examples/bode/plot.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/bode/plot.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,31 @@ +#ifndef _PLOT_H_ +#define _PLOT_H_ + +#include + +class QwtPlotCurve; +class QwtPlotMarker; + +class Plot: public QwtPlot +{ + Q_OBJECT + +public: + Plot(QWidget *parent); + +public Q_SLOTS: + void setDamp(double damping); + +private: + void showData(const double *frequency, const double *amplitude, + const double *phase, int count); + void showPeak(double freq, double amplitude); + void show3dB(double freq); + + QwtPlotCurve *d_curve1; + QwtPlotCurve *d_curve2; + QwtPlotMarker *d_marker1; + QwtPlotMarker *d_marker2; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/cpuplot/cpupiemarker.cpp phyxcalc-3rev200/qwt-6.0.0/examples/cpuplot/cpupiemarker.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/cpuplot/cpupiemarker.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/cpuplot/cpupiemarker.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,55 @@ +#include +#include +#include +#include "cpuplot.h" +#include "cpupiemarker.h" + +CpuPieMarker::CpuPieMarker() +{ + setZ(1000); + setRenderHint(QwtPlotItem::RenderAntialiased, true); +} + +int CpuPieMarker::rtti() const +{ + return QwtPlotItem::Rtti_PlotUserItem; +} + +void CpuPieMarker::draw(QPainter *p, + const QwtScaleMap &, const QwtScaleMap &, + const QRectF &rect) const +{ + const CpuPlot *cpuPlot = (CpuPlot *)plot(); + + const QwtScaleMap yMap = cpuPlot->canvasMap(QwtPlot::yLeft); + + const int margin = 5; + + QRect pieRect; + pieRect.setX(rect.x() + margin); + pieRect.setY(rect.y() + margin); + pieRect.setHeight( qRound(yMap.transform(80.0)) ); + pieRect.setWidth( pieRect.height() ); + + const int dataType[] = { CpuPlot::User, CpuPlot::System, CpuPlot::Idle }; + + int angle = (int)(5760 * 0.75); + for ( unsigned int i = 0; + i < sizeof(dataType) / sizeof(dataType[0]); i++ ) + { + const QwtPlotCurve *curve = cpuPlot->cpuCurve(dataType[i]); + if ( curve->dataSize() > 0 ) + { + const int value = (int)(5760 * curve->sample(0).y() / 100.0); + + p->save(); + p->setBrush(QBrush(curve->pen().color(), Qt::SolidPattern)); + if ( value != 0 ) + p->drawPie(pieRect, -angle, -value); + p->restore(); + + angle += value; + } + } +} + diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/cpuplot/cpupiemarker.h phyxcalc-3rev200/qwt-6.0.0/examples/cpuplot/cpupiemarker.h --- phyxcalc-3rev200/qwt-6.0.0/examples/cpuplot/cpupiemarker.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/cpuplot/cpupiemarker.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,18 @@ +//----------------------------------------------------------------- +// This class shows how to extend QwtPlotItems. It displays a +// pie chart of user/total/idle cpu usage in percent. +//----------------------------------------------------------------- + +#include + +class CpuPieMarker: public QwtPlotItem +{ +public: + CpuPieMarker(); + + virtual int rtti() const; + + virtual void draw(QPainter *p, + const QwtScaleMap &, const QwtScaleMap &, + const QRectF &rect) const; +}; diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/cpuplot/cpuplot.cpp phyxcalc-3rev200/qwt-6.0.0/examples/cpuplot/cpuplot.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/cpuplot/cpuplot.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/cpuplot/cpuplot.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,234 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "cpupiemarker.h" +#include "cpuplot.h" + +class TimeScaleDraw: public QwtScaleDraw +{ +public: + TimeScaleDraw(const QTime &base): + baseTime(base) + { + } + virtual QwtText label(double v) const + { + QTime upTime = baseTime.addSecs((int)v); + return upTime.toString(); + } +private: + QTime baseTime; +}; + +class Background: public QwtPlotItem +{ +public: + Background() + { + setZ(0.0); + } + + virtual int rtti() const + { + return QwtPlotItem::Rtti_PlotUserItem; + } + + virtual void draw(QPainter *painter, + const QwtScaleMap &, const QwtScaleMap &yMap, + const QRectF &rect) const + { + QColor c(Qt::white); + QRectF r = rect; + + for ( int i = 100; i > 0; i -= 10 ) + { + r.setBottom(yMap.transform(i - 10)); + r.setTop(yMap.transform(i)); + painter->fillRect(r, c); + + c = c.dark(110); + } + } +}; + +class CpuCurve: public QwtPlotCurve +{ +public: + CpuCurve(const QString &title): + QwtPlotCurve(title) + { + setRenderHint(QwtPlotItem::RenderAntialiased); + } + + void setColor(const QColor &color) + { + QColor c = color; + c.setAlpha(150); + + setPen(c); + setBrush(c); + } +}; + +CpuPlot::CpuPlot(QWidget *parent): + QwtPlot(parent), + dataCount(0) +{ + setAutoReplot(false); + + canvas()->setBorderRadius( 10 ); + + plotLayout()->setAlignCanvasToScales(true); + + QwtLegend *legend = new QwtLegend; + legend->setItemMode(QwtLegend::CheckableItem); + insertLegend(legend, QwtPlot::RightLegend); + + setAxisTitle(QwtPlot::xBottom, " System Uptime [h:m:s]"); + setAxisScaleDraw(QwtPlot::xBottom, + new TimeScaleDraw(cpuStat.upTime())); + setAxisScale(QwtPlot::xBottom, 0, HISTORY); + setAxisLabelRotation(QwtPlot::xBottom, -50.0); + setAxisLabelAlignment(QwtPlot::xBottom, Qt::AlignLeft | Qt::AlignBottom); + + /* + In situations, when there is a label at the most right position of the + scale, additional space is needed to display the overlapping part + of the label would be taken by reducing the width of scale and canvas. + To avoid this "jumping canvas" effect, we add a permanent margin. + We don't need to do the same for the left border, because there + is enough space for the overlapping label below the left scale. + */ + + QwtScaleWidget *scaleWidget = axisWidget(QwtPlot::xBottom); + const int fmh = QFontMetrics(scaleWidget->font()).height(); + scaleWidget->setMinBorderDist(0, fmh / 2); + + setAxisTitle(QwtPlot::yLeft, "Cpu Usage [%]"); + setAxisScale(QwtPlot::yLeft, 0, 100); + + Background *bg = new Background(); + bg->attach(this); + + CpuPieMarker *pie = new CpuPieMarker(); + pie->attach(this); + + CpuCurve *curve; + + curve = new CpuCurve("System"); + curve->setColor(Qt::red); + curve->attach(this); + data[System].curve = curve; + + curve = new CpuCurve("User"); + curve->setColor(Qt::blue); + curve->setZ(curve->z() - 1); + curve->attach(this); + data[User].curve = curve; + + curve = new CpuCurve("Total"); + curve->setColor(Qt::black); + curve->setZ(curve->z() - 2); + curve->attach(this); + data[Total].curve = curve; + + curve = new CpuCurve("Idle"); + curve->setColor(Qt::darkCyan); + curve->setZ(curve->z() - 3); + curve->attach(this); + data[Idle].curve = curve; + + showCurve(data[System].curve, true); + showCurve(data[User].curve, true); + showCurve(data[Total].curve, false); + showCurve(data[Idle].curve, false); + + for ( int i = 0; i < HISTORY; i++ ) + timeData[HISTORY - 1 - i] = i; + + (void)startTimer(1000); // 1 second + + connect(this, SIGNAL(legendChecked(QwtPlotItem *, bool)), + SLOT(showCurve(QwtPlotItem *, bool))); +} + +void CpuPlot::timerEvent(QTimerEvent *) +{ + for ( int i = dataCount; i > 0; i-- ) + { + for ( int c = 0; c < NCpuData; c++ ) + { + if ( i < HISTORY ) + data[c].data[i] = data[c].data[i-1]; + } + } + + cpuStat.statistic(data[User].data[0], data[System].data[0]); + + data[Total].data[0] = data[User].data[0] + + data[System].data[0]; + data[Idle].data[0] = 100.0 - data[Total].data[0]; + + if ( dataCount < HISTORY ) + dataCount++; + + for ( int j = 0; j < HISTORY; j++ ) + timeData[j]++; + + setAxisScale(QwtPlot::xBottom, + timeData[HISTORY - 1], timeData[0]); + + for ( int c = 0; c < NCpuData; c++ ) + { + data[c].curve->setRawSamples( + timeData, data[c].data, dataCount); + } + + replot(); +} + +void CpuPlot::showCurve(QwtPlotItem *item, bool on) +{ + item->setVisible(on); + QWidget *w = legend()->find(item); + if ( w && w->inherits("QwtLegendItem") ) + ((QwtLegendItem *)w)->setChecked(on); + + replot(); +} + +int main(int argc, char **argv) +{ + QApplication a(argc, argv); + + QWidget vBox; + vBox.setWindowTitle("Cpu Plot"); + + CpuPlot *plot = new CpuPlot(&vBox); + plot->setTitle("History"); + + const int margin = 5; + plot->setContentsMargins(margin, margin, margin, margin); + + QString info("Press the legend to en/disable a curve"); + + QLabel *label = new QLabel(info, &vBox); + + QVBoxLayout *layout = new QVBoxLayout(&vBox); + layout->addWidget(plot); + layout->addWidget(label); + + vBox.resize(600,400); + vBox.show(); + + return a.exec(); +} + diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/cpuplot/cpuplot.h phyxcalc-3rev200/qwt-6.0.0/examples/cpuplot/cpuplot.h --- phyxcalc-3rev200/qwt-6.0.0/examples/cpuplot/cpuplot.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/cpuplot/cpuplot.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,42 @@ +#include +#include "cpustat.h" + +#define HISTORY 60 // seconds + +class QwtPlotCurve; + +class CpuPlot : public QwtPlot +{ + Q_OBJECT +public: + enum CpuData + { + User, + System, + Total, + Idle, + + NCpuData + }; + + CpuPlot(QWidget * = 0); + const QwtPlotCurve *cpuCurve(int id) const + { return data[id].curve; } + +protected: + void timerEvent(QTimerEvent *e); + +private Q_SLOTS: + void showCurve(QwtPlotItem *, bool on); + +private: + struct + { + QwtPlotCurve *curve; + double data[HISTORY]; + } data[NCpuData]; + double timeData[HISTORY]; + + int dataCount; + CpuStat cpuStat; +}; diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/cpuplot/cpuplot.pro phyxcalc-3rev200/qwt-6.0.0/examples/cpuplot/cpuplot.pro --- phyxcalc-3rev200/qwt-6.0.0/examples/cpuplot/cpuplot.pro 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/cpuplot/cpuplot.pro 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,22 @@ +################################################################ +# Qwt Widget Library +# Copyright (C) 1997 Josef Wilgen +# Copyright (C) 2002 Uwe Rathmann +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the Qwt License, Version 1.0 +################################################################ + +include( $${PWD}/../examples.pri ) + +TARGET = cpuplot + +HEADERS = \ + cpuplot.h \ + cpustat.h \ + cpupiemarker.h + +SOURCES = \ + cpuplot.cpp \ + cpustat.cpp \ + cpupiemarker.cpp diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/cpuplot/cpustat.cpp phyxcalc-3rev200/qwt-6.0.0/examples/cpuplot/cpustat.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/cpuplot/cpustat.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/cpuplot/cpustat.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,218 @@ +#include +#include +#include +#include "cpustat.h" + +CpuStat::CpuStat() +{ + lookUp(procValues); +} + +QTime CpuStat::upTime() const +{ + QTime t; + for ( int i = 0; i < NValues; i++ ) + t = t.addSecs(int(procValues[i] / 100)); + + return t; +} + +void CpuStat::statistic(double &user, double &system) +{ + double values[NValues]; + + lookUp(values); + + double userDelta = values[User] + values[Nice] + - procValues[User] - procValues[Nice]; + double systemDelta = values[System] - procValues[System]; + + double totalDelta = 0; + for ( int i = 0; i < NValues; i++ ) + totalDelta += values[i] - procValues[i]; + + user = userDelta / totalDelta * 100.0; + system = systemDelta / totalDelta * 100.0; + + for ( int j = 0; j < NValues; j++ ) + procValues[j] = values[j]; +} + +void CpuStat::lookUp(double values[NValues]) const +{ + QFile file("/proc/stat"); + if ( !file.open(QIODevice::ReadOnly) ) + { + static double dummyValues[][NValues] = + { + { 103726, 0, 23484, 819556 }, + { 103783, 0, 23489, 819604 }, + { 103798, 0, 23490, 819688 }, + { 103820, 0, 23490, 819766 }, + { 103840, 0, 23493, 819843 }, + { 103875, 0, 23499, 819902 }, + { 103917, 0, 23504, 819955 }, + { 103950, 0, 23508, 820018 }, + { 103987, 0, 23510, 820079 }, + { 104020, 0, 23513, 820143 }, + { 104058, 0, 23514, 820204 }, + { 104099, 0, 23520, 820257 }, + { 104121, 0, 23525, 820330 }, + { 104159, 0, 23530, 820387 }, + { 104176, 0, 23534, 820466 }, + { 104215, 0, 23538, 820523 }, + { 104245, 0, 23541, 820590 }, + { 104267, 0, 23545, 820664 }, + { 104311, 0, 23555, 820710 }, + { 104355, 0, 23565, 820756 }, + { 104367, 0, 23567, 820842 }, + { 104383, 0, 23572, 820921 }, + { 104396, 0, 23577, 821003 }, + { 104413, 0, 23579, 821084 }, + { 104446, 0, 23588, 821142 }, + { 104521, 0, 23594, 821161 }, + { 104611, 0, 23604, 821161 }, + { 104708, 0, 23607, 821161 }, + { 104804, 0, 23611, 821161 }, + { 104895, 0, 23620, 821161 }, + { 104993, 0, 23622, 821161 }, + { 105089, 0, 23626, 821161 }, + { 105185, 0, 23630, 821161 }, + { 105281, 0, 23634, 821161 }, + { 105379, 0, 23636, 821161 }, + { 105472, 0, 23643, 821161 }, + { 105569, 0, 23646, 821161 }, + { 105666, 0, 23649, 821161 }, + { 105763, 0, 23652, 821161 }, + { 105828, 0, 23661, 821187 }, + { 105904, 0, 23666, 821206 }, + { 105999, 0, 23671, 821206 }, + { 106094, 0, 23676, 821206 }, + { 106184, 0, 23686, 821206 }, + { 106273, 0, 23692, 821211 }, + { 106306, 0, 23700, 821270 }, + { 106341, 0, 23703, 821332 }, + { 106392, 0, 23709, 821375 }, + { 106423, 0, 23715, 821438 }, + { 106472, 0, 23721, 821483 }, + { 106531, 0, 23727, 821517 }, + { 106562, 0, 23732, 821582 }, + { 106597, 0, 23736, 821643 }, + { 106633, 0, 23737, 821706 }, + { 106666, 0, 23742, 821768 }, + { 106697, 0, 23744, 821835 }, + { 106730, 0, 23748, 821898 }, + { 106765, 0, 23751, 821960 }, + { 106799, 0, 23754, 822023 }, + { 106831, 0, 23758, 822087 }, + { 106862, 0, 23761, 822153 }, + { 106899, 0, 23763, 822214 }, + { 106932, 0, 23766, 822278 }, + { 106965, 0, 23768, 822343 }, + { 107009, 0, 23771, 822396 }, + { 107040, 0, 23775, 822461 }, + { 107092, 0, 23780, 822504 }, + { 107143, 0, 23787, 822546 }, + { 107200, 0, 23795, 822581 }, + { 107250, 0, 23803, 822623 }, + { 107277, 0, 23810, 822689 }, + { 107286, 0, 23810, 822780 }, + { 107313, 0, 23817, 822846 }, + { 107325, 0, 23818, 822933 }, + { 107332, 0, 23818, 823026 }, + { 107344, 0, 23821, 823111 }, + { 107357, 0, 23821, 823198 }, + { 107368, 0, 23823, 823284 }, + { 107375, 0, 23824, 823377 }, + { 107386, 0, 23825, 823465 }, + { 107396, 0, 23826, 823554 }, + { 107422, 0, 23830, 823624 }, + { 107434, 0, 23831, 823711 }, + { 107456, 0, 23835, 823785 }, + { 107468, 0, 23838, 823870 }, + { 107487, 0, 23840, 823949 }, + { 107515, 0, 23843, 824018 }, + { 107528, 0, 23846, 824102 }, + { 107535, 0, 23851, 824190 }, + { 107548, 0, 23853, 824275 }, + { 107562, 0, 23857, 824357 }, + { 107656, 0, 23863, 824357 }, + { 107751, 0, 23868, 824357 }, + { 107849, 0, 23870, 824357 }, + { 107944, 0, 23875, 824357 }, + { 108043, 0, 23876, 824357 }, + { 108137, 0, 23882, 824357 }, + { 108230, 0, 23889, 824357 }, + { 108317, 0, 23902, 824357 }, + { 108412, 0, 23907, 824357 }, + { 108511, 0, 23908, 824357 }, + { 108608, 0, 23911, 824357 }, + { 108704, 0, 23915, 824357 }, + { 108801, 0, 23918, 824357 }, + { 108891, 0, 23928, 824357 }, + { 108987, 0, 23932, 824357 }, + { 109072, 0, 23943, 824361 }, + { 109079, 0, 23943, 824454 }, + { 109086, 0, 23944, 824546 }, + { 109098, 0, 23950, 824628 }, + { 109108, 0, 23955, 824713 }, + { 109115, 0, 23957, 824804 }, + { 109122, 0, 23958, 824896 }, + { 109132, 0, 23959, 824985 }, + { 109142, 0, 23961, 825073 }, + { 109146, 0, 23962, 825168 }, + { 109153, 0, 23964, 825259 }, + { 109162, 0, 23966, 825348 }, + { 109168, 0, 23969, 825439 }, + { 109176, 0, 23971, 825529 }, + { 109185, 0, 23974, 825617 }, + { 109193, 0, 23977, 825706 }, + { 109198, 0, 23978, 825800 }, + { 109206, 0, 23978, 825892 }, + { 109212, 0, 23981, 825983 }, + { 109219, 0, 23981, 826076 }, + { 109225, 0, 23981, 826170 }, + { 109232, 0, 23984, 826260 }, + { 109242, 0, 23984, 826350 }, + { 109255, 0, 23986, 826435 }, + { 109268, 0, 23987, 826521 }, + { 109283, 0, 23990, 826603 }, + { 109288, 0, 23991, 826697 }, + { 109295, 0, 23993, 826788 }, + { 109308, 0, 23994, 826874 }, + { 109322, 0, 24009, 826945 }, + { 109328, 0, 24011, 827037 }, + { 109338, 0, 24012, 827126 }, + { 109347, 0, 24012, 827217 }, + { 109354, 0, 24017, 827305 }, + { 109367, 0, 24017, 827392 }, + { 109371, 0, 24019, 827486 }, + }; + static int counter = 0; + + for ( int i = 0; i < NValues; i++ ) + values[i] = dummyValues[counter][i]; + + counter = (counter + 1) + % (sizeof(dummyValues) / sizeof(dummyValues[0])); + } + else + { + QTextStream textStream(&file); + do { + QString line = textStream.readLine(); + line = line.trimmed(); + if ( line.startsWith("cpu ") ) + { + const QStringList valueList = + line.split(" ", QString::SkipEmptyParts); + if ( valueList.count() >= 5 ) + { + for ( int i = 0; i < NValues; i++ ) + values[i] = valueList[i+1].toDouble(); + } + break; + } + } while(!textStream.atEnd()); + } +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/cpuplot/cpustat.h phyxcalc-3rev200/qwt-6.0.0/examples/cpuplot/cpustat.h --- phyxcalc-3rev200/qwt-6.0.0/examples/cpuplot/cpustat.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/cpuplot/cpustat.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,23 @@ +#include + +class CpuStat +{ +public: + CpuStat(); + void statistic(double &user, double &system); + QTime upTime() const; + + enum Value + { + User, + Nice, + System, + Idle, + + NValues + }; + +private: + void lookUp(double[NValues]) const; + double procValues[NValues]; +}; diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/curvdemo1/curvdemo1.cpp phyxcalc-3rev200/qwt-6.0.0/examples/curvdemo1/curvdemo1.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/curvdemo1/curvdemo1.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/curvdemo1/curvdemo1.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,202 @@ + +#include +#include +#include +#include +#include +#include +#include +#include + +//------------------------------------------------------------ +// curvdemo1 +// +// This example program features some of the different +// display styles of the QwtPlotCurve class +//------------------------------------------------------------ + + +// +// Array Sizes +// +const int Size = 27; +const int CurvCnt = 6; + +// +// Arrays holding the values +// +double xval[Size]; +double yval[Size]; +QwtScaleMap xMap; +QwtScaleMap yMap; + +class MainWin : public QFrame +{ +public: + MainWin(); + +protected: + virtual void paintEvent(QPaintEvent *); + void drawContents(QPainter *p); + +private: + void shiftDown(QRect &rect, int offset) const; + + QwtPlotCurve d_curves[CurvCnt]; +}; + +MainWin::MainWin() +{ + int i; + + xMap.setScaleInterval(-0.5, 10.5); + yMap.setScaleInterval(-1.1, 1.1); + + // + // Frame style + // + setFrameStyle(QFrame::Box|QFrame::Raised); + setLineWidth(2); + setMidLineWidth(3); + + // + // Calculate values + // + for(i=0; isetRenderHint(QPainter::Antialiasing, + d_curves[i].testRenderHint(QwtPlotItem::RenderAntialiased) ); + d_curves[i].draw(painter, xMap, yMap, r); + + shiftDown(r, deltay); + } + + // + // draw titles + // + r = contentsRect(); // reset r + painter->setFont(QFont("Helvetica", 8)); + + const int alignment = Qt::AlignTop|Qt::AlignHCenter; + + painter->setPen(Qt::black); + + painter->drawText(0,r.top(),r.width(), painter->fontMetrics().height(), + alignment, "Style: Line/Fitted, Symbol: Cross"); + shiftDown(r, deltay); + + painter->drawText(0,r.top(),r.width(), painter->fontMetrics().height(), + alignment, "Style: Sticks, Symbol: Ellipse"); + shiftDown(r, deltay); + + painter->drawText(0 ,r.top(),r.width(), painter->fontMetrics().height(), + alignment, "Style: Lines, Symbol: None"); + shiftDown(r, deltay); + + painter->drawText(0 ,r.top(),r.width(), painter->fontMetrics().height(), + alignment, "Style: Lines, Symbol: None, Antialiased"); + shiftDown(r, deltay); + + painter->drawText(0, r.top(),r.width(), painter->fontMetrics().height(), + alignment, "Style: Steps, Symbol: None"); + shiftDown(r, deltay); + + painter->drawText(0,r.top(),r.width(), painter->fontMetrics().height(), + alignment, "Style: NoCurve, Symbol: XCross"); +} + +int main (int argc, char **argv) +{ + QApplication a(argc, argv); + + MainWin w; + + w.resize(300,600); + w.show(); + + return a.exec(); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/curvdemo1/curvdemo1.pro phyxcalc-3rev200/qwt-6.0.0/examples/curvdemo1/curvdemo1.pro --- phyxcalc-3rev200/qwt-6.0.0/examples/curvdemo1/curvdemo1.pro 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/curvdemo1/curvdemo1.pro 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,15 @@ +################################################################ +# Qwt Widget Library +# Copyright (C) 1997 Josef Wilgen +# Copyright (C) 2002 Uwe Rathmann +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the Qwt License, Version 1.0 +################################################################ + +include( $${PWD}/../examples.pri ) + +TARGET = curvdemo1 + +SOURCES = \ + curvdemo1.cpp diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/curvdemo2/curvdemo2.cpp phyxcalc-3rev200/qwt-6.0.0/examples/curvdemo2/curvdemo2.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/curvdemo2/curvdemo2.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/curvdemo2/curvdemo2.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,214 @@ +#include +#include +#include +#include +#include +#include "curvdemo2.h" + + +//------------------------------------------------------------ +// curvdemo2 +// +// This example shows a simple animation featuring +// with several QwtPlotCurves +// +//------------------------------------------------------------ + +// +// Array Sizes +// +const int Size = 15; +const int USize = 13; + +// +// Arrays holding the values +// +double xval[Size]; +double yval[Size]; +double zval[Size]; +double uval[USize]; +double vval[USize]; + + +// +// CONSTRUCT MAIN WINDOW +// +MainWin::MainWin(): + QFrame() +{ + setFrameStyle(QFrame::Box|QFrame::Raised); + setLineWidth(2); + setMidLineWidth(3); + + const QColor bgColor(30,30,50); + + QPalette p = palette(); + p.setColor(backgroundRole(), bgColor); + setPalette(p); + + QwtSplineCurveFitter* curveFitter; + + // + // curve 1 + // + int i = 0; + xMap[i].setScaleInterval(-1.5, 1.5); + yMap[i].setScaleInterval(0.0, 6.28); + + curve[i].setPen(QPen(QColor(150,150,200),2)); + curve[i].setStyle(QwtPlotCurve::Lines); + curve[i].setCurveAttribute(QwtPlotCurve::Fitted, true); + curveFitter = new QwtSplineCurveFitter(); + curveFitter->setSplineSize(150); + curve[i].setCurveFitter(curveFitter); + + QwtSymbol *symbol = new QwtSymbol(QwtSymbol::XCross); + symbol->setPen(QPen(Qt::yellow,2)); + symbol->setSize(7); + + curve[i].setSymbol(symbol); + + curve[i].setRawSamples(yval,xval,Size); + + // + // curve 2 + // + i++; + xMap[i].setScaleInterval(0.0, 6.28); + yMap[i].setScaleInterval(-3.0, 1.1); + curve[i].setPen(QPen(QColor(200,150,50))); + curve[i].setStyle(QwtPlotCurve::Sticks); + curve[i].setSymbol(new QwtSymbol(QwtSymbol::Ellipse, + QColor(Qt::blue), QColor(Qt::yellow), QSize(5,5))); + + curve[i].setRawSamples(xval,zval,Size); + + + // + // curve 3 + // + i++; + xMap[i].setScaleInterval(-1.1, 3.0); + yMap[i].setScaleInterval(-1.1, 3.0); + curve[i].setStyle(QwtPlotCurve::Lines); + curve[i].setCurveAttribute(QwtPlotCurve::Fitted, true); + curve[i].setPen(QColor(100,200,150)); + curveFitter = new QwtSplineCurveFitter(); + curveFitter->setFitMode(QwtSplineCurveFitter::ParametricSpline); + curveFitter->setSplineSize(200); + curve[i].setCurveFitter(curveFitter); + + curve[i].setRawSamples(yval,zval,Size); + + + // + // curve 4 + // + i++; + xMap[i].setScaleInterval(-5, 1.1); + yMap[i].setScaleInterval(-1.1, 5.0); + curve[i].setStyle(QwtPlotCurve::Lines); + curve[i].setCurveAttribute(QwtPlotCurve::Fitted, true); + curve[i].setPen(QColor(Qt::red)); + curveFitter = new QwtSplineCurveFitter(); + curveFitter->setSplineSize(200); + curve[i].setCurveFitter(curveFitter); + + curve[i].setRawSamples(uval,vval,USize); + + // + // initialize values + // + double base = 2.0 * M_PI / double(USize - 1); + double toggle = 1.0; + for (i = 0; i < USize; i++) + { + uval[i] = toggle * qCos( double(i) * base); + vval[i] = toggle * qSin( double(i) * base); + + if (toggle == 1.0) + toggle = 0.5; + else + toggle = 1.0; + } + + newValues(); + + // + // start timer + // + (void)startTimer(250); +} + +void MainWin::paintEvent(QPaintEvent *event) +{ + QFrame::paintEvent(event); + + QPainter painter(this); + painter.setClipRect(contentsRect()); + drawContents(&painter); +} + +void MainWin::drawContents(QPainter *painter) +{ + const QRect &r = contentsRect(); + + for ( int i = 0; i < curveCount; i++ ) + { + xMap[i].setPaintInterval(r.left(), r.right()); + yMap[i].setPaintInterval(r.top(), r.bottom()); + curve[i].draw(painter, xMap[i], yMap[i], r); + } +} + +// +// TIMER EVENT +// +void MainWin::timerEvent(QTimerEvent *) +{ + newValues(); + repaint(); +} + +// +// RE-CALCULATE VALUES +// +void MainWin::newValues() +{ + int i; + static double phs = 0.0; + double s,c,u; + + for (i=0;i 6.28) + phs = 0.0; + +} + +int main (int argc, char **argv) +{ + QApplication a(argc, argv); + + MainWin w; + + w.resize(300,300); + w.show(); + + return a.exec(); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/curvdemo2/curvdemo2.h phyxcalc-3rev200/qwt-6.0.0/examples/curvdemo2/curvdemo2.h --- phyxcalc-3rev200/qwt-6.0.0/examples/curvdemo2/curvdemo2.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/curvdemo2/curvdemo2.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,24 @@ +#include +#include +#include + +class MainWin : public QFrame +{ +public: + enum { curveCount = 4 }; + + QwtScaleMap xMap[curveCount]; + QwtScaleMap yMap[curveCount]; + QwtPlotCurve curve[curveCount]; + +public: + MainWin(); + +protected: + virtual void timerEvent(QTimerEvent *t); + virtual void paintEvent(QPaintEvent *); + virtual void drawContents(QPainter *); + +private: + void newValues(); +}; diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/curvdemo2/curvdemo2.pro phyxcalc-3rev200/qwt-6.0.0/examples/curvdemo2/curvdemo2.pro --- phyxcalc-3rev200/qwt-6.0.0/examples/curvdemo2/curvdemo2.pro 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/curvdemo2/curvdemo2.pro 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,18 @@ +################################################################ +# Qwt Widget Library +# Copyright (C) 1997 Josef Wilgen +# Copyright (C) 2002 Uwe Rathmann +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the Qwt License, Version 1.0 +################################################################ + +include( $${PWD}/../examples.pri ) + +TARGET = curvdemo2 + +HEADERS = \ + curvdemo2.h + +SOURCES = \ + curvdemo2.cpp diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/dials/attitude_indicator.cpp phyxcalc-3rev200/qwt-6.0.0/examples/dials/attitude_indicator.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/dials/attitude_indicator.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/dials/attitude_indicator.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,125 @@ +#include "attitude_indicator.h" +#include +#include +#include +#include + +AttitudeIndicatorNeedle::AttitudeIndicatorNeedle(const QColor &c) +{ + QPalette palette; + for ( int i = 0; i < QPalette::NColorGroups; i++ ) + { + palette.setColor((QPalette::ColorGroup)i, + QPalette::Text, c); + } + setPalette(palette); +} + +void AttitudeIndicatorNeedle::drawNeedle(QPainter *painter, + double length, QPalette::ColorGroup colorGroup) const +{ + double triangleSize = length * 0.1; + double pos = length - 2.0; + + QPainterPath path; + path.moveTo( pos, 0 ); + path.lineTo( pos - 2 * triangleSize, triangleSize ); + path.lineTo( pos - 2 * triangleSize, -triangleSize ); + path.closeSubpath(); + + painter->setBrush( palette().brush(colorGroup, QPalette::Text ) ); + painter->drawPath( path ); + + double l = length - 2; + painter->setPen( QPen(palette().color( colorGroup, QPalette::Text ), 3) ); + painter->drawLine( 0, -l, 0, l ); +} + +AttitudeIndicator::AttitudeIndicator( + QWidget *parent): + QwtDial(parent), + d_gradient(0.0) +{ + setMode(RotateScale); + setWrapping(true); + + setOrigin(270.0); + setScaleComponents( QwtAbstractScaleDraw::Ticks ); + setScale(0, 0, 30.0); + + const QColor color = palette().color(QPalette::Text); + setNeedle(new AttitudeIndicatorNeedle(color)); +} + +void AttitudeIndicator::setGradient(double gradient) +{ + if ( gradient < -1.0 ) + gradient = -1.0; + else if ( gradient > 1.0 ) + gradient = 1.0; + + if ( d_gradient != gradient ) + { + d_gradient = gradient; + update(); + } +} + +void AttitudeIndicator::drawScale(QPainter *painter, const QPointF ¢er, + double radius, double origin, double minArc, double maxArc) const +{ + // counter clockwise, radian + + const double dir = (360.0 - origin) * M_PI / 180.0; + const double offset = 4.0; + + const QPointF p0 = qwtPolar2Pos( center, offset, dir + M_PI ); + + const double w = innerRect().width(); + + QPainterPath path; + path.moveTo( qwtPolar2Pos( p0, w, dir - M_PI_2 ) ); + path.lineTo( qwtPolar2Pos( path.currentPosition(), 2 * w, dir + M_PI_2 ) ); + path.lineTo( qwtPolar2Pos( path.currentPosition(), w, dir ) ); + path.lineTo( qwtPolar2Pos( path.currentPosition(), w, dir - M_PI_2 ) ); + + painter->save(); + painter->setClipPath( path ); // swallow 180 - 360 degrees + + QwtDial::drawScale(painter, + center, radius, origin, minArc, maxArc); + + painter->restore(); +} + +void AttitudeIndicator::drawScaleContents(QPainter *painter, + const QPointF &, double) const +{ + int dir = 360 - qRound(origin() - value()); // counter clockwise + int arc = 90 + qRound(gradient() * 90); + + const QColor skyColor(38, 151, 221); + + painter->save(); + painter->setBrush(skyColor); + painter->drawChord(scaleInnerRect(), + (dir - arc) * 16, 2 * arc * 16 ); + painter->restore(); +} + +void AttitudeIndicator::keyPressEvent(QKeyEvent *e) +{ + switch(e->key()) + { + case Qt::Key_Plus: + setGradient(gradient() + 0.05); + break; + + case Qt::Key_Minus: + setGradient(gradient() - 0.05); + break; + + default: + QwtDial::keyPressEvent(e); + } +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/dials/attitude_indicator.h phyxcalc-3rev200/qwt-6.0.0/examples/dials/attitude_indicator.h --- phyxcalc-3rev200/qwt-6.0.0/examples/dials/attitude_indicator.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/dials/attitude_indicator.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,39 @@ +#include +#include + +class AttitudeIndicatorNeedle: public QwtDialNeedle +{ +public: + AttitudeIndicatorNeedle(const QColor &); + +protected: + virtual void drawNeedle(QPainter *, + double length, QPalette::ColorGroup) const; +}; + +class AttitudeIndicator: public QwtDial +{ + Q_OBJECT + +public: + AttitudeIndicator(QWidget *parent = NULL); + + double angle() const { return value(); } + double gradient() const { return d_gradient; } + +public Q_SLOTS: + void setGradient(double); + void setAngle(double angle) { setValue(angle); } + +protected: + virtual void keyPressEvent(QKeyEvent *); + + virtual void drawScale(QPainter *, const QPointF ¢er, + double radius, double origin, double arcMin, double arcMax) const; + + virtual void drawScaleContents(QPainter *painter, + const QPointF ¢er, double radius) const; + +private: + double d_gradient; +}; diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/dials/cockpit_grid.cpp phyxcalc-3rev200/qwt-6.0.0/examples/dials/cockpit_grid.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/dials/cockpit_grid.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/dials/cockpit_grid.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,193 @@ +#include +#include +#include +#include "attitude_indicator.h" +#include "speedo_meter.h" +#include "cockpit_grid.h" + +CockpitGrid::CockpitGrid(QWidget *parent): + QFrame(parent) +{ + setAutoFillBackground(true); + + setPalette(colorTheme(QColor(Qt::darkGray).dark(150))); + + QGridLayout *layout = new QGridLayout(this); + layout->setSpacing(5); + layout->setMargin(0); + + int i; + for ( i = 0; i < 3; i++ ) + { + QwtDial *dial = createDial(i); + layout->addWidget(dial, 0, i); + } + + for ( i = 0; i < layout->columnCount(); i++ ) + layout->setColumnStretch(i, 1); +} + +QwtDial *CockpitGrid::createDial(int pos) +{ + QwtDial *dial = NULL; + switch(pos) + { + case 0: + { + d_clock = new QwtAnalogClock(this); + + const QColor knobColor = QColor(Qt::gray).light(130); + + for ( int i = 0; i < QwtAnalogClock::NHands; i++) + { + QColor handColor = QColor(Qt::gray).light(150); + int width = 8; + + if ( i == QwtAnalogClock::SecondHand ) + { + handColor = Qt::gray; + width = 5; + } + + QwtDialSimpleNeedle *hand = new QwtDialSimpleNeedle( + QwtDialSimpleNeedle::Arrow, true, handColor, knobColor); + hand->setWidth(width); + + d_clock->setHand((QwtAnalogClock::Hand)i, hand); + } + + QTimer *timer = new QTimer(d_clock); + timer->connect(timer, SIGNAL(timeout()), + d_clock, SLOT(setCurrentTime())); + timer->start(1000); + + dial = d_clock; + break; + } + case 1: + { + d_speedo = new SpeedoMeter(this); + d_speedo->setRange(0.0, 240.0); + d_speedo->setScale(-1, 2, 20); + + QTimer *timer = new QTimer(d_speedo); + timer->connect(timer, SIGNAL(timeout()), + this, SLOT(changeSpeed())); + timer->start(50); + + dial = d_speedo; + break; + } + case 2: + { + d_ai = new AttitudeIndicator(this); + + QTimer *gradientTimer = new QTimer(d_ai); + gradientTimer->connect(gradientTimer, SIGNAL(timeout()), + this, SLOT(changeGradient())); + gradientTimer->start(100); + + QTimer *angleTimer = new QTimer(d_ai); + angleTimer->connect(angleTimer, SIGNAL(timeout()), + this, SLOT(changeAngle())); + angleTimer->start(100); + + dial = d_ai; + break; + } + + } + + if ( dial ) + { + dial->setReadOnly(true); + dial->scaleDraw()->setPenWidth(3); + dial->setLineWidth(4); + dial->setFrameShadow(QwtDial::Sunken); + } + return dial; +} + +QPalette CockpitGrid::colorTheme(const QColor &base) const +{ + const QColor background = base.dark(150); + const QColor foreground = base.dark(200); + + const QColor mid = base.dark(110); + const QColor dark = base.dark(170); + const QColor light = base.light(170); + const QColor text = foreground.light(800); + + QPalette palette; + for ( int i = 0; i < QPalette::NColorGroups; i++ ) + { + QPalette::ColorGroup cg = (QPalette::ColorGroup)i; + + palette.setColor(cg, QPalette::Base, base); + palette.setColor(cg, QPalette::Window, background); + palette.setColor(cg, QPalette::Mid, mid); + palette.setColor(cg, QPalette::Light, light); + palette.setColor(cg, QPalette::Dark, dark); + palette.setColor(cg, QPalette::Text, text); + palette.setColor(cg, QPalette::WindowText, foreground); + } + + return palette; +} + +void CockpitGrid::changeSpeed() +{ + static double offset = 0.8; + + double speed = d_speedo->value(); + + if ( (speed < 40.0 && offset < 0.0 ) || + (speed > 160.0 && offset > 0.0) ) + { + offset = -offset; + } + + static int counter = 0; + switch(counter++ % 12 ) + { + case 0: + case 2: + case 7: + case 8: + break; + default: + d_speedo->setValue(speed + offset); + } +} + +void CockpitGrid::changeAngle() +{ + static double offset = 0.05; + + double angle = d_ai->angle(); + if ( angle > 180.0 ) + angle -= 360.0; + + if ( (angle < -5.0 && offset < 0.0 ) || + (angle > 5.0 && offset > 0.0) ) + { + offset = -offset; + } + + d_ai->setAngle(angle + offset); +} + +void CockpitGrid::changeGradient() +{ + static double offset = 0.005; + + double gradient = d_ai->gradient(); + + if ( (gradient < -0.05 && offset < 0.0 ) || + (gradient > 0.05 && offset > 0.0) ) + { + offset = -offset; + } + + d_ai->setGradient(gradient + offset); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/dials/cockpit_grid.h phyxcalc-3rev200/qwt-6.0.0/examples/dials/cockpit_grid.h --- phyxcalc-3rev200/qwt-6.0.0/examples/dials/cockpit_grid.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/dials/cockpit_grid.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,28 @@ +#include +#include + +class QwtDial; +class QwtAnalogClock; +class SpeedoMeter; +class AttitudeIndicator; + +class CockpitGrid: public QFrame +{ + Q_OBJECT + +public: + CockpitGrid(QWidget *parent = NULL); + +private Q_SLOTS: + void changeSpeed(); + void changeGradient(); + void changeAngle(); + +private: + QPalette colorTheme(const QColor &) const; + QwtDial *createDial(int pos); + + QwtAnalogClock *d_clock; + SpeedoMeter *d_speedo; + AttitudeIndicator *d_ai; +}; diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/dials/compass_grid.cpp phyxcalc-3rev200/qwt-6.0.0/examples/dials/compass_grid.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/dials/compass_grid.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/dials/compass_grid.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,202 @@ +#include +#include +#include +#include +#include "compass_grid.h" + +CompassGrid::CompassGrid(QWidget *parent): + QFrame(parent) +{ + QPalette p = palette(); + p.setColor(backgroundRole(), Qt::gray); + setPalette(p); + + setAutoFillBackground(true); + + QGridLayout *layout = new QGridLayout(this); + layout->setSpacing(5); + layout->setMargin(0); + + int i; + for ( i = 0; i < 6; i++ ) + { + QwtCompass *compass = createCompass(i); + layout->addWidget(compass, i / 3, i % 3); + } + + for ( i = 0; i < layout->columnCount(); i++ ) + layout->setColumnStretch(i, 1); +} + +QwtCompass *CompassGrid::createCompass(int pos) +{ + int c; + + QPalette colorGroup; + for ( c = 0; c < QPalette::NColorRoles; c++ ) + colorGroup.setColor((QPalette::ColorRole)c, QColor()); + + colorGroup.setColor(QPalette::Base, + palette().color(backgroundRole()).light(120)); + colorGroup.setColor(QPalette::WindowText, + colorGroup.color(QPalette::Base)); + + QwtCompass *compass = new QwtCompass(this); + compass->setLineWidth(4); + compass->setFrameShadow( + pos <= 2 ? QwtCompass::Sunken : QwtCompass::Raised); + + switch(pos) + { + case 0: + { + /* + A compass with a rose and no needle. Scale and rose are + rotating. + */ + compass->setMode(QwtCompass::RotateScale); + + QwtSimpleCompassRose *rose = new QwtSimpleCompassRose(16, 2); + rose->setWidth(0.15); + + compass->setRose(rose); + break; + } + case 1: + { + /* + A windrose, with a scale indicating the main directions only + */ + QMap map; + map.insert(0.0, "N"); + map.insert(90.0, "E"); + map.insert(180.0, "S"); + map.insert(270.0, "W"); + + compass->setLabelMap(map); + + QwtSimpleCompassRose *rose = new QwtSimpleCompassRose(4, 1); + compass->setRose(rose); + + compass->setNeedle( + new QwtCompassWindArrow(QwtCompassWindArrow::Style2)); + compass->setValue(60.0); + break; + } + case 2: + { + /* + A compass with a rotating needle in darkBlue. Shows + a ticks for each degree. + */ + + colorGroup.setColor(QPalette::Base, Qt::darkBlue); + colorGroup.setColor(QPalette::WindowText, + QColor(Qt::darkBlue).dark(120)); + colorGroup.setColor(QPalette::Text, Qt::white); + + compass->setScaleComponents( + QwtAbstractScaleDraw::Ticks | QwtAbstractScaleDraw::Labels); + compass->setScaleTicks(1, 1, 3); + compass->setScale(36, 5, 0); + + compass->setNeedle( + new QwtCompassMagnetNeedle(QwtCompassMagnetNeedle::ThinStyle)); + compass->setValue(220.0); + + break; + } + case 3: + { + /* + A compass without a frame, showing numbers as tick labels. + The origin is at 220.0 + */ + colorGroup.setColor(QPalette::Base, + palette().color(backgroundRole())); + colorGroup.setColor(QPalette::WindowText, Qt::blue); + + compass->setLineWidth(0); + + compass->setScaleComponents( QwtAbstractScaleDraw::Backbone | + QwtAbstractScaleDraw::Ticks | QwtAbstractScaleDraw::Labels ); + compass->setScaleTicks(0, 0, 3); + + QMap map; + for ( double d = 0.0; d < 360.0; d += 60.0 ) + { + QString label; + label.sprintf("%.0f", d); + map.insert(d, label); + } + compass->setLabelMap(map); + compass->setScale(36, 5, 0); + + compass->setNeedle(new QwtDialSimpleNeedle(QwtDialSimpleNeedle::Ray, + true, Qt::white)); + compass->setOrigin(220.0); + compass->setValue(20.0); + break; + } + case 4: + { + /* + A compass showing another needle + */ + compass->setScaleComponents( + QwtAbstractScaleDraw::Ticks | QwtAbstractScaleDraw::Labels ); + compass->setScaleTicks(0, 0, 3); + + compass->setNeedle(new QwtCompassMagnetNeedle( + QwtCompassMagnetNeedle::TriangleStyle, Qt::white, Qt::red)); + compass->setValue(220.0); + break; + } + case 5: + { + /* + A compass with a yellow on black ray + */ + colorGroup.setColor(QPalette::WindowText, Qt::black); + + compass->setNeedle(new QwtDialSimpleNeedle(QwtDialSimpleNeedle::Ray, + false, Qt::yellow)); + compass->setValue(315.0); + break; + } + } + + QPalette newPalette = compass->palette(); + for ( c = 0; c < QPalette::NColorRoles; c++ ) + { + if ( colorGroup.color((QPalette::ColorRole)c).isValid() ) + { + for ( int cg = 0; cg < QPalette::NColorGroups; cg++ ) + { + newPalette.setColor( + (QPalette::ColorGroup)cg, + (QPalette::ColorRole)c, + colorGroup.color((QPalette::ColorRole)c)); + } + } + } + + for ( int i = 0; i < QPalette::NColorGroups; i++ ) + { + QPalette::ColorGroup cg = (QPalette::ColorGroup)i; + + const QColor light = + newPalette.color(cg, QPalette::Base).light(170); + const QColor dark = newPalette.color(cg, QPalette::Base).dark(170); + const QColor mid = compass->frameShadow() == QwtDial::Raised + ? newPalette.color(cg, QPalette::Base).dark(110) + : newPalette.color(cg, QPalette::Base).light(110); + + newPalette.setColor(cg, QPalette::Dark, dark); + newPalette.setColor(cg, QPalette::Mid, mid); + newPalette.setColor(cg, QPalette::Light, light); + } + compass->setPalette(newPalette); + + return compass; +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/dials/compass_grid.h phyxcalc-3rev200/qwt-6.0.0/examples/dials/compass_grid.h --- phyxcalc-3rev200/qwt-6.0.0/examples/dials/compass_grid.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/dials/compass_grid.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,11 @@ +#include +class QwtCompass; + +class CompassGrid: public QFrame +{ +public: + CompassGrid(QWidget *parent = NULL); + +private: + QwtCompass *createCompass(int pos); +}; diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/dials/dials.cpp phyxcalc-3rev200/qwt-6.0.0/examples/dials/dials.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/dials/dials.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/dials/dials.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,24 @@ +#include +#include +#include "compass_grid.h" +#include "cockpit_grid.h" + +//----------------------------------------------------------------- +// +// dials.cpp -- A demo program featuring QwtDial and friends +// +//----------------------------------------------------------------- + +int main (int argc, char **argv) +{ + QApplication a(argc, argv); + + QTabWidget tabWidget; + tabWidget.addTab(new CompassGrid, "Compass"); + tabWidget.addTab(new CockpitGrid, "Cockpit"); + + tabWidget.show(); + + return a.exec(); +} + diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/dials/dials.pro phyxcalc-3rev200/qwt-6.0.0/examples/dials/dials.pro --- phyxcalc-3rev200/qwt-6.0.0/examples/dials/dials.pro 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/dials/dials.pro 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,26 @@ +################################################################ +# Qwt Widget Library +# Copyright (C) 1997 Josef Wilgen +# Copyright (C) 2002 Uwe Rathmann +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the Qwt License, Version 1.0 +################################################################ + +include( $${PWD}/../examples.pri ) + +TARGET = dials + +HEADERS = \ + attitude_indicator.h \ + speedo_meter.h \ + cockpit_grid.h \ + compass_grid.h + +SOURCES = \ + attitude_indicator.cpp \ + speedo_meter.cpp \ + cockpit_grid.cpp \ + compass_grid.cpp \ + dials.cpp + diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/dials/speedo_meter.cpp phyxcalc-3rev200/qwt-6.0.0/examples/dials/speedo_meter.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/dials/speedo_meter.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/dials/speedo_meter.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,48 @@ +#include +#include +#include "speedo_meter.h" + +SpeedoMeter::SpeedoMeter(QWidget *parent): + QwtDial(parent), + d_label("km/h") +{ + setWrapping(false); + setReadOnly(true); + + setOrigin(135.0); + setScaleArc(0.0, 270.0); + scaleDraw()->setSpacing(8); + + QwtDialSimpleNeedle *needle = new QwtDialSimpleNeedle( + QwtDialSimpleNeedle::Arrow, true, Qt::red, + QColor(Qt::gray).light(130)); + setNeedle(needle); + + setScaleComponents( + QwtAbstractScaleDraw::Ticks | QwtAbstractScaleDraw::Labels); + setScaleTicks(0, 4, 8); +} + +void SpeedoMeter::setLabel(const QString &label) +{ + d_label = label; + update(); +} + +QString SpeedoMeter::label() const +{ + return d_label; +} + +void SpeedoMeter::drawScaleContents(QPainter *painter, + const QPoint ¢er, int radius) const +{ + QRect rect(0, 0, 2 * radius, 2 * radius - 10); + rect.moveCenter(center); + + const QColor color = palette().color(QPalette::Text); + painter->setPen(color); + + const int flags = Qt::AlignBottom | Qt::AlignHCenter; + painter->drawText(rect, flags, d_label); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/dials/speedo_meter.h phyxcalc-3rev200/qwt-6.0.0/examples/dials/speedo_meter.h --- phyxcalc-3rev200/qwt-6.0.0/examples/dials/speedo_meter.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/dials/speedo_meter.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,18 @@ +#include +#include + +class SpeedoMeter: public QwtDial +{ +public: + SpeedoMeter(QWidget *parent = NULL); + + void setLabel(const QString &); + QString label() const; + +protected: + virtual void drawScaleContents(QPainter *painter, + const QPoint ¢er, int radius) const; + +private: + QString d_label; +}; diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/canvaspicker.cpp phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/canvaspicker.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/canvaspicker.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/canvaspicker.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,327 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "canvaspicker.h" + +CanvasPicker::CanvasPicker(QwtPlot *plot): + QObject(plot), + d_selectedCurve(NULL), + d_selectedPoint(-1) +{ + QwtPlotCanvas *canvas = plot->canvas(); + + canvas->installEventFilter(this); + + // We want the focus, but no focus rect. The + // selected point will be highlighted instead. + + canvas->setFocusPolicy(Qt::StrongFocus); +#ifndef QT_NO_CURSOR + canvas->setCursor(Qt::PointingHandCursor); +#endif + canvas->setFocusIndicator(QwtPlotCanvas::ItemFocusIndicator); + canvas->setFocus(); + + const char *text = + "All points can be moved using the left mouse button " + "or with these keys:\n\n" + "- Up:\t\tSelect next curve\n" + "- Down:\t\tSelect previous curve\n" + "- Left, ´-´:\tSelect next point\n" + "- Right, ´+´:\tSelect previous point\n" + "- 7, 8, 9, 4, 6, 1, 2, 3:\tMove selected point"; + canvas->setWhatsThis(text); + + shiftCurveCursor(true); +} + +bool CanvasPicker::event(QEvent *e) +{ + if ( e->type() == QEvent::User ) + { + showCursor(true); + return true; + } + return QObject::event(e); +} + +bool CanvasPicker::eventFilter(QObject *object, QEvent *e) +{ + if ( object != (QObject *)plot()->canvas() ) + return false; + + switch(e->type()) + { + case QEvent::FocusIn: + showCursor(true); + case QEvent::FocusOut: + showCursor(false); + + case QEvent::Paint: + { + QApplication::postEvent(this, new QEvent(QEvent::User)); + break; + } + case QEvent::MouseButtonPress: + { + select(((QMouseEvent *)e)->pos()); + return true; + } + case QEvent::MouseMove: + { + move(((QMouseEvent *)e)->pos()); + return true; + } + case QEvent::KeyPress: + { + const int delta = 5; + switch(((const QKeyEvent *)e)->key()) + { + case Qt::Key_Up: + shiftCurveCursor(true); + return true; + + case Qt::Key_Down: + shiftCurveCursor(false); + return true; + + case Qt::Key_Right: + case Qt::Key_Plus: + if ( d_selectedCurve ) + shiftPointCursor(true); + else + shiftCurveCursor(true); + return true; + + case Qt::Key_Left: + case Qt::Key_Minus: + if ( d_selectedCurve ) + shiftPointCursor(false); + else + shiftCurveCursor(true); + return true; + + // The following keys represent a direction, they are + // organized on the keyboard. + + case Qt::Key_1: + moveBy(-delta, delta); + break; + case Qt::Key_2: + moveBy(0, delta); + break; + case Qt::Key_3: + moveBy(delta, delta); + break; + case Qt::Key_4: + moveBy(-delta, 0); + break; + case Qt::Key_6: + moveBy(delta, 0); + break; + case Qt::Key_7: + moveBy(-delta, -delta); + break; + case Qt::Key_8: + moveBy(0, -delta); + break; + case Qt::Key_9: + moveBy(delta, -delta); + break; + default: + break; + } + } + default: + break; + } + return QObject::eventFilter(object, e); +} + +// Select the point at a position. If there is no point +// deselect the selected point + +void CanvasPicker::select(const QPoint &pos) +{ + QwtPlotCurve *curve = NULL; + double dist = 10e10; + int index = -1; + + const QwtPlotItemList& itmList = plot()->itemList(); + for ( QwtPlotItemIterator it = itmList.begin(); + it != itmList.end(); ++it ) + { + if ( (*it)->rtti() == QwtPlotItem::Rtti_PlotCurve ) + { + QwtPlotCurve *c = (QwtPlotCurve*)(*it); + + double d; + int idx = c->closestPoint(pos, &d); + if ( d < dist ) + { + curve = c; + index = idx; + dist = d; + } + } + } + + showCursor(false); + d_selectedCurve = NULL; + d_selectedPoint = -1; + + if ( curve && dist < 10 ) // 10 pixels tolerance + { + d_selectedCurve = curve; + d_selectedPoint = index; + showCursor(true); + } +} + +// Move the selected point +void CanvasPicker::moveBy(int dx, int dy) +{ + if ( dx == 0 && dy == 0 ) + return; + + if ( !d_selectedCurve ) + return; + + const QPointF sample = + d_selectedCurve->sample(d_selectedPoint); + + const double x = plot()->transform( + d_selectedCurve->xAxis(), sample.x()); + const double y = plot()->transform( + d_selectedCurve->yAxis(), sample.y()); + + move( QPoint(qRound(x + dx), qRound(y + dy)) ); +} + +// Move the selected point +void CanvasPicker::move(const QPoint &pos) +{ + if ( !d_selectedCurve ) + return; + + QVector xData(d_selectedCurve->dataSize()); + QVector yData(d_selectedCurve->dataSize()); + + for ( int i = 0; i < (int)d_selectedCurve->dataSize(); i++ ) + { + if ( i == d_selectedPoint ) + { + xData[i] = plot()->invTransform( + d_selectedCurve->xAxis(), pos.x()); + yData[i] = plot()->invTransform( + d_selectedCurve->yAxis(), pos.y()); + } + else + { + const QPointF sample = d_selectedCurve->sample(i); + xData[i] = sample.x(); + yData[i] = sample.y(); + } + } + d_selectedCurve->setSamples(xData, yData); + + plot()->replot(); + showCursor(true); +} + +// Hightlight the selected point +void CanvasPicker::showCursor(bool showIt) +{ + if ( !d_selectedCurve ) + return; + + QwtSymbol *symbol = const_cast( d_selectedCurve->symbol() ); + + const QBrush brush = symbol->brush(); + if ( showIt ) + symbol->setBrush(symbol->brush().color().dark(150)); + + const bool doReplot = plot()->autoReplot(); + + plot()->setAutoReplot(false); + + QwtPlotDirectPainter directPainter; + directPainter.drawSeries(d_selectedCurve, d_selectedPoint, d_selectedPoint); + + if ( showIt ) + symbol->setBrush(brush); // reset brush + + plot()->setAutoReplot(doReplot); +} + +// Select the next/previous curve +void CanvasPicker::shiftCurveCursor(bool up) +{ + QwtPlotItemIterator it; + + const QwtPlotItemList &itemList = plot()->itemList(); + + QwtPlotItemList curveList; + for ( it = itemList.begin(); it != itemList.end(); ++it ) + { + if ( (*it)->rtti() == QwtPlotItem::Rtti_PlotCurve ) + curveList += *it; + } + if ( curveList.isEmpty() ) + return; + + it = curveList.begin(); + + if ( d_selectedCurve ) + { + for ( it = curveList.begin(); it != curveList.end(); ++it ) + { + if ( d_selectedCurve == *it ) + break; + } + if ( it == curveList.end() ) // not found + it = curveList.begin(); + + if ( up ) + { + ++it; + if ( it == curveList.end() ) + it = curveList.begin(); + } + else + { + if ( it == curveList.begin() ) + it = curveList.end(); + --it; + } + } + + showCursor(false); + d_selectedPoint = 0; + d_selectedCurve = (QwtPlotCurve *)*it; + showCursor(true); +} + +// Select the next/previous neighbour of the selected point +void CanvasPicker::shiftPointCursor(bool up) +{ + if ( !d_selectedCurve ) + return; + + int index = d_selectedPoint + (up ? 1 : -1); + index = (index + d_selectedCurve->dataSize()) % d_selectedCurve->dataSize(); + + if ( index != d_selectedPoint ) + { + showCursor(false); + d_selectedPoint = index; + showCursor(true); + } +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/canvaspicker.h phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/canvaspicker.h --- phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/canvaspicker.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/canvaspicker.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,33 @@ +#include + +class QPoint; +class QCustomEvent; +class QwtPlot; +class QwtPlotCurve; + +class CanvasPicker: public QObject +{ + Q_OBJECT +public: + CanvasPicker(QwtPlot *plot); + virtual bool eventFilter(QObject *, QEvent *); + + virtual bool event(QEvent *); + +private: + void select(const QPoint &); + void move(const QPoint &); + void moveBy(int dx, int dy); + + void release(); + + void showCursor(bool enable); + void shiftPointCursor(bool up); + void shiftCurveCursor(bool up); + + QwtPlot *plot() { return (QwtPlot *)parent(); } + const QwtPlot *plot() const { return (QwtPlot *)parent(); } + + QwtPlotCurve *d_selectedCurve; + int d_selectedPoint; +}; diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/colorbar.cpp phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/colorbar.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/colorbar.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/colorbar.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,112 @@ +#include +#include +#include +#include +#include "colorbar.h" + +ColorBar::ColorBar(Qt::Orientation o, QWidget *parent): + QWidget(parent), + d_orientation(o), + d_light(Qt::white), + d_dark(Qt::black) +{ +#ifndef QT_NO_CURSOR + setCursor(Qt::PointingHandCursor); +#endif +} + +void ColorBar::setOrientation(Qt::Orientation o) +{ + d_orientation = o; + update(); +} + +void ColorBar::setLight(const QColor &light) +{ + d_light = light; + update(); +} + +void ColorBar::setDark(const QColor &dark) +{ + d_dark = dark; + update(); +} + +void ColorBar::setRange(const QColor &light, const QColor &dark) +{ + d_light = light; + d_dark = dark; + update(); +} + +void ColorBar::mousePressEvent(QMouseEvent *e) +{ + if( e->button() == Qt::LeftButton ) + { + // emit the color of the position where the mouse click + // happened + + const QPixmap pm = QPixmap::grabWidget(this); + const QRgb rgb = pm.toImage().pixel(e->x(), e->y()); + + Q_EMIT selected(QColor(rgb)); + e->accept(); + } +} + +void ColorBar::paintEvent(QPaintEvent *) +{ + QPainter painter(this); + drawColorBar(&painter, rect()); +} + +void ColorBar::drawColorBar(QPainter *painter, const QRect &rect) const +{ + int h1, s1, v1; + int h2, s2, v2; + + d_light.getHsv(&h1, &s1, &v1); + d_dark.getHsv(&h2, &s2, &v2); + + painter->save(); + painter->setClipRect(rect); + painter->setClipping(true); + + painter->fillRect(rect, d_dark); + + const int sectionSize = 2; + + int numIntervalls; + if ( d_orientation == Qt::Horizontal ) + numIntervalls = rect.width() / sectionSize; + else + numIntervalls = rect.height() / sectionSize; + + for ( int i = 0; i < numIntervalls; i++ ) + { + QRect section; + if ( d_orientation == Qt::Horizontal ) + { + section.setRect(rect.x() + i * sectionSize, rect.y(), + sectionSize, rect.height()); + } + else + { + section.setRect(rect.x(), rect.y() + i * sectionSize, + rect.width(), sectionSize); + } + + const double ratio = i / (double)numIntervalls; + + QColor c; + c.setHsv( h1 + qRound(ratio * (h2 - h1)), + s1 + qRound(ratio * (s2 - s1)), + v1 + qRound(ratio * (v2 - v1)) ); + + painter->fillRect(section, c); + } + + painter->restore(); +} + diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/colorbar.h phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/colorbar.h --- phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/colorbar.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/colorbar.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,34 @@ +#include + +class ColorBar: public QWidget +{ + Q_OBJECT + +public: + ColorBar(Qt::Orientation = Qt::Horizontal, + QWidget * = NULL); + + virtual void setOrientation(Qt::Orientation o); + Qt::Orientation orientation() const { return d_orientation; } + + void setRange(const QColor &light, const QColor &dark); + void setLight(const QColor &light); + void setDark(const QColor &dark); + + QColor light() const { return d_light; } + QColor dark() const { return d_dark; } + +Q_SIGNALS: + void selected(const QColor &); + +protected: + virtual void mousePressEvent(QMouseEvent *); + virtual void paintEvent(QPaintEvent *); + + void drawColorBar(QPainter *, const QRect &) const; + +private: + Qt::Orientation d_orientation; + QColor d_light; + QColor d_dark; +}; diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/event_filter.cpp phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/event_filter.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/event_filter.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/event_filter.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,51 @@ +//----------------------------------------------------------------- +// A demo program showing how to use event filtering +//----------------------------------------------------------------- + +#include +#include +#include +#include +#include +#include "plot.h" +#include "canvaspicker.h" +#include "scalepicker.h" + +int main (int argc, char **argv) +{ + QApplication a(argc, argv); + + QMainWindow mainWindow; + QToolBar *toolBar = new QToolBar(&mainWindow); + QAction *action = QWhatsThis::createAction(toolBar); + toolBar->addAction(action); + mainWindow.addToolBar(toolBar); + + Plot *plot = new Plot(&mainWindow); + + // The canvas picker handles all mouse and key + // events on the plot canvas + + (void) new CanvasPicker(plot); + + // The scale picker translates mouse clicks + // int o clicked() signals + + ScalePicker *scalePicker = new ScalePicker(plot); + a.connect(scalePicker, SIGNAL(clicked(int, double)), + plot, SLOT(insertCurve(int, double))); + + mainWindow.setCentralWidget(plot); + + mainWindow.resize(540, 400); + mainWindow.show(); + + const char *text = + "An useless plot to demonstrate how to use event filtering.\n\n" + "You can click on the color bar, the scales or move the wheel.\n" + "All points can be moved using the mouse or the keyboard."; + plot->setWhatsThis(text); + + int rv = a.exec(); + return rv; +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/event_filter.pro phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/event_filter.pro --- phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/event_filter.pro 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/event_filter.pro 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,25 @@ +################################################################ +# Qwt Widget Library +# Copyright (C) 1997 Josef Wilgen +# Copyright (C) 2002 Uwe Rathmann +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the Qwt License, Version 1.0 +################################################################ + +include( $${PWD}/../examples.pri ) + +TARGET = event_filter + +HEADERS = \ + colorbar.h \ + scalepicker.h \ + canvaspicker.h \ + plot.h + +SOURCES = \ + colorbar.cpp \ + scalepicker.cpp \ + canvaspicker.cpp \ + plot.cpp \ + event_filter.cpp diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/plot.cpp phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/plot.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/plot.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/plot.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,176 @@ +#include "plot.h" +#include "colorbar.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include + +Plot::Plot(QWidget *parent): + QwtPlot(parent) +{ + setTitle("Interactive Plot"); + + setCanvasColor(Qt::darkCyan); + + QwtPlotGrid *grid = new QwtPlotGrid; + grid->setMajPen(QPen(Qt::white, 0, Qt::DotLine)); + grid->attach(this); + + // axes + + setAxisScale(QwtPlot::xBottom, 0.0, 100.0); + setAxisScale(QwtPlot::yLeft, 0.0, 100.0); + + // Avoid jumping when label with 3 digits + // appear/disappear when scrolling vertically + + QwtScaleDraw *sd = axisScaleDraw(QwtPlot::yLeft); + sd->setMinimumExtent( sd->extent(axisWidget(QwtPlot::yLeft)->font())); + + plotLayout()->setAlignCanvasToScales(true); + + insertCurve(Qt::Vertical, Qt::blue, 30.0); + insertCurve(Qt::Vertical, Qt::magenta, 70.0); + insertCurve(Qt::Horizontal, Qt::yellow, 30.0); + insertCurve(Qt::Horizontal, Qt::white, 70.0); + + replot(); + + // ------------------------------------ + // We add a color bar to the left axis + // ------------------------------------ + + QwtScaleWidget *scaleWidget = (QwtScaleWidget *)axisWidget(yLeft); + scaleWidget->setMargin(10); // area for the color bar + d_colorBar = new ColorBar(Qt::Vertical, scaleWidget); + d_colorBar->setRange(Qt::red, Qt::darkBlue); + d_colorBar->setFocusPolicy(Qt::TabFocus); + + connect(d_colorBar, SIGNAL(selected(const QColor &)), + SLOT(setCanvasColor(const QColor &))); + + // we need the resize events, to lay out the color bar + scaleWidget->installEventFilter(this); + + // ------------------------------------ + // We add a wheel to the canvas + // ------------------------------------ + + d_wheel = new QwtWheel(canvas()); + d_wheel->setOrientation(Qt::Vertical); + d_wheel->setRange(-100, 100); + d_wheel->setValue(0.0); + d_wheel->setMass(0.2); + d_wheel->setTotalAngle(4 * 360.0); + + connect(d_wheel, SIGNAL(valueChanged(double)), + SLOT(scrollLeftAxis(double))); + + // we need the resize events, to lay out the wheel + canvas()->installEventFilter(this); + + d_colorBar->setWhatsThis( + "Selecting a color will change the background of the plot."); + scaleWidget->setWhatsThis( + "Selecting a value at the scale will insert a new curve."); + d_wheel->setWhatsThis( + "With the wheel you can move the visible area."); + axisWidget(xBottom)->setWhatsThis( + "Selecting a value at the scale will insert a new curve."); +} + +void Plot::setCanvasColor(const QColor &c) +{ + setCanvasBackground(c); + replot(); +} + +void Plot::scrollLeftAxis(double value) +{ + setAxisScale(yLeft, value, value + 100.0); + replot(); +} + +bool Plot::eventFilter(QObject *object, QEvent *e) +{ + if ( e->type() == QEvent::Resize ) + { + const QSize &size = ((QResizeEvent *)e)->size(); + if ( object == (QObject *)axisWidget(yLeft) ) + { + const QwtScaleWidget *scaleWidget = axisWidget(yLeft); + + const int margin = 2; + + // adjust the color bar to the scale backbone + const int x = size.width() - scaleWidget->margin() + margin; + const int w = scaleWidget->margin() - 2 * margin; + const int y = scaleWidget->startBorderDist(); + const int h = size.height() - + scaleWidget->startBorderDist() - scaleWidget->endBorderDist(); + + d_colorBar->setGeometry(x, y, w, h); + } + if ( object == canvas() ) + { + const int w = 16; + const int h = 50; + const int margin = 2; + + const QRect cr = canvas()->contentsRect(); + d_wheel->setGeometry( + cr.right() - margin - w, cr.center().y() - h / 2, w, h); + } + } + + return QwtPlot::eventFilter(object, e); +} + +void Plot::insertCurve(int axis, double base) +{ + Qt::Orientation o; + if ( axis == yLeft || axis == yRight ) + o = Qt::Horizontal; + else + o = Qt::Vertical; + + QRgb rgb = (uint)rand(); + insertCurve(o, QColor(rgb), base); + replot(); +} + +void Plot::insertCurve(Qt::Orientation o, + const QColor &c, double base) +{ + QwtPlotCurve *curve = new QwtPlotCurve(); + + curve->setPen(c); + curve->setSymbol(new QwtSymbol(QwtSymbol::Ellipse, + Qt::gray, c, QSize(8, 8))); + + double x[10]; + double y[sizeof(x) / sizeof(x[0])]; + + for ( uint i = 0; i < sizeof(x) / sizeof(x[0]); i++ ) + { + double v = 5.0 + i * 10.0; + if ( o == Qt::Horizontal ) + { + x[i] = v; + y[i] = base; + } + else + { + x[i] = base; + y[i] = v; + } + } + + curve->setSamples(x, y, sizeof(x) / sizeof(x[0])); + curve->attach(this); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/plot.h phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/plot.h --- phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/plot.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/plot.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,25 @@ +#include + +class ColorBar; +class QwtWheel; + +class Plot: public QwtPlot +{ + Q_OBJECT +public: + Plot(QWidget *parent = NULL); + virtual bool eventFilter(QObject *, QEvent *); + +public Q_SLOTS: + void setCanvasColor(const QColor &); + void insertCurve(int axis, double base); + +private Q_SLOTS: + void scrollLeftAxis(double); + +private: + void insertCurve(Qt::Orientation, const QColor &, double base); + + ColorBar *d_colorBar; + QwtWheel *d_wheel; +}; diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/README phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/README --- phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/README 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/README 2011-04-15 10:48:45.000000000 +0000 @@ -0,0 +1,27 @@ +QwtPlot is a composite widget consisting of a title label, +the canvas, the scales and a legend. Although all components +should be exchangable some day, the current design isn´t ready for it. + +In this situation event filtering is the mechanism to extend the behaviour +of the plot components. event_filter shows 3 examples how to use it: + +1) CanvasPicker + +The CanvasPicker implements a solution, how to move points on the canvas +with mouse and keyboard. + +2) ScalePicker + +The ScalePicker translates the position of mouse clicks on the scales +and emits them as signals. + +3) Plot: ColorBar, QSlider + +The Plot class shows how to add widgets to the scales. In this example +there is no filter class. The derived plot widget filters its components. + + +Please note that CanvasPicker and ScalePicker are standalone classes +that could be connected with your QwtPlot as well. + +Uwe diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/scalepicker.cpp phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/scalepicker.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/scalepicker.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/scalepicker.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,114 @@ +#include +#include +#include +#include "scalepicker.h" + +ScalePicker::ScalePicker(QwtPlot *plot): + QObject(plot) +{ + for ( uint i = 0; i < QwtPlot::axisCnt; i++ ) + { + QwtScaleWidget *scaleWidget = (QwtScaleWidget *)plot->axisWidget(i); + if ( scaleWidget ) + scaleWidget->installEventFilter(this); + } +} + +bool ScalePicker::eventFilter(QObject *object, QEvent *e) +{ + if ( object->inherits("QwtScaleWidget") && + e->type() == QEvent::MouseButtonPress ) + { + mouseClicked((const QwtScaleWidget *)object, + ((QMouseEvent *)e)->pos()); + return true; + } + + return QObject::eventFilter(object, e); +} + +void ScalePicker::mouseClicked(const QwtScaleWidget *scale, const QPoint &pos) +{ + QRect rect = scaleRect(scale); + + int margin = 10; // 10 pixels tolerance + rect.setRect(rect.x() - margin, rect.y() - margin, + rect.width() + 2 * margin, rect.height() + 2 * margin); + + if ( rect.contains(pos) ) // No click on the title + { + // translate the position in a value on the scale + + double value = 0.0; + int axis = -1; + + const QwtScaleDraw *sd = scale->scaleDraw(); + switch(scale->alignment()) + { + case QwtScaleDraw::LeftScale: + { + value = sd->scaleMap().invTransform(pos.y()); + axis = QwtPlot::yLeft; + break; + } + case QwtScaleDraw::RightScale: + { + value = sd->scaleMap().invTransform(pos.y()); + axis = QwtPlot::yRight; + break; + } + case QwtScaleDraw::BottomScale: + { + value = sd->scaleMap().invTransform(pos.x()); + axis = QwtPlot::xBottom; + break; + } + case QwtScaleDraw::TopScale: + { + value = sd->scaleMap().invTransform(pos.x()); + axis = QwtPlot::xTop; + break; + } + } + Q_EMIT clicked(axis, value); + } +} + +// The rect of a scale without the title +QRect ScalePicker::scaleRect(const QwtScaleWidget *scale) const +{ + const int bld = scale->margin(); + const int mjt = scale->scaleDraw()->maxTickLength(); + const int sbd = scale->startBorderDist(); + const int ebd = scale->endBorderDist(); + + QRect rect; + switch(scale->alignment()) + { + case QwtScaleDraw::LeftScale: + { + rect.setRect(scale->width() - bld - mjt, sbd, + mjt, scale->height() - sbd - ebd); + break; + } + case QwtScaleDraw::RightScale: + { + rect.setRect(bld, sbd, + mjt, scale->height() - sbd - ebd); + break; + } + case QwtScaleDraw::BottomScale: + { + rect.setRect(sbd, bld, + scale->width() - sbd - ebd, mjt); + break; + } + case QwtScaleDraw::TopScale: + { + rect.setRect(sbd, scale->height() - bld - mjt, + scale->width() - sbd - ebd, mjt); + break; + } + } + return rect; +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/scalepicker.h phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/scalepicker.h --- phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/scalepicker.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/event_filter/scalepicker.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,20 @@ +#include +#include + +class QwtPlot; +class QwtScaleWidget; + +class ScalePicker: public QObject +{ + Q_OBJECT +public: + ScalePicker(QwtPlot *plot); + virtual bool eventFilter(QObject *, QEvent *); + +Q_SIGNALS: + void clicked(int axis, double value); + +private: + void mouseClicked(const QwtScaleWidget *, const QPoint &); + QRect scaleRect(const QwtScaleWidget *) const; +}; diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/examples.pri phyxcalc-3rev200/qwt-6.0.0/examples/examples.pri --- phyxcalc-3rev200/qwt-6.0.0/examples/examples.pri 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/examples.pri 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,49 @@ +################################################################ +# Qwt Widget Library +# Copyright (C) 1997 Josef Wilgen +# Copyright (C) 2002 Uwe Rathmann +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the Qwt License, Version 1.0 +################################################################### + +QWT_ROOT = $${PWD}/.. +include( $${QWT_ROOT}/qwtconfig.pri ) +include( $${QWT_ROOT}/qwtbuild.pri ) + +TEMPLATE = app + +INCLUDEPATH += $${QWT_ROOT}/src +DEPENDPATH += $${QWT_ROOT}/src +DESTDIR = $${QWT_ROOT}/examples/bin + +QMAKE_RPATHDIR *= $${QWT_ROOT}/lib + +contains(QWT_CONFIG, QwtFramework) { + + LIBS += -F$${QWT_ROOT}/lib +} +else { + + LIBS += -L$${QWT_ROOT}/lib +} + +IPATH = $${INCLUDEPATH} +qtAddLibrary(qwt) +INCLUDEPATH = $${IPATH} + +contains(QWT_CONFIG, QwtSvg) { + + QT += svg +} +else { + + DEFINES += QWT_NO_SVG +} + + +win32 { + contains(QWT_CONFIG, QwtDll) { + DEFINES += QT_DLL QWT_DLL + } +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/examples.pro phyxcalc-3rev200/qwt-6.0.0/examples/examples.pro --- phyxcalc-3rev200/qwt-6.0.0/examples/examples.pro 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/examples.pro 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,52 @@ +################################################################ +# Qwt Widget Library +# Copyright (C) 1997 Josef Wilgen +# Copyright (C) 2002 Uwe Rathmann +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the Qwt License, Version 1.0 +################################################################ + +include( $${PWD}/../qwtconfig.pri ) + +TEMPLATE = subdirs + +contains(QWT_CONFIG, QwtPlot) { + + SUBDIRS += \ + cpuplot \ + curvdemo1 \ + curvdemo2 \ + friedberg \ + sinusplot \ + realtime \ + refreshtest \ + navigation \ + plotmatrix \ + spectrogram \ + rasterview \ + tvplot + + contains(QWT_CONFIG, QwtWidgets) { + + SUBDIRS += \ + bode \ + event_filter \ + oscilloscope + } + + contains(QWT_CONFIG, QwtSvg) { + + SUBDIRS += \ + svgmap + } +} + +contains(QWT_CONFIG, QwtWidgets) { + + SUBDIRS += \ + sysinfo \ + radio \ + dials \ + sliders +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/friedberg/friedberg2007.cpp phyxcalc-3rev200/qwt-6.0.0/examples/friedberg/friedberg2007.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/friedberg/friedberg2007.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/friedberg/friedberg2007.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,384 @@ +#include "friedberg2007.h" + +// Temperature 2007 from Friedberg somewhere in Germany +// See: http://wetter61169.de + +Temperature friedberg2007[] = +{ + /* 01.01 */ Temperature( 2.6, 9.8, 7.07862 ), + /* 02.01 */ Temperature( 0.8, 5.8, 3.6993 ), + /* 03.01 */ Temperature( 2, 7, 5.02388 ), + /* 04.01 */ Temperature( 5.3, 7.8, 6.37778 ), + /* 05.01 */ Temperature( 5.6, 7.7, 6.83149 ), + /* 06.01 */ Temperature( 7.2, 8.9, 8.0816 ), + /* 07.01 */ Temperature( 4.2, 9.9, 7.54704 ), + /* 08.01 */ Temperature( 3.5, 8.9, 6.71951 ), + /* 09.01 */ Temperature( 8.2, 12.9, 10.8594 ), + /* 10.01 */ Temperature( 6.3, 11.9, 9.76424 ), + /* 11.01 */ Temperature( 3.9, 9.2, 6.18223 ), + /* 12.01 */ Temperature( 6.9, 9.7, 8.44236 ), + /* 13.01 */ Temperature( 9, 12.3, 10.6649 ), + /* 14.01 */ Temperature( 1.8, 10.8, 7.23438 ), + /* 15.01 */ Temperature( -2.8, 1.8, -0.518403 ), + /* 16.01 */ Temperature( -0.6, 4.5, 2.39479 ), + /* 17.01 */ Temperature( 4.3, 10.2, 7.23472 ), + /* 18.01 */ Temperature( 9.1, 13.6, 10.9316 ), + /* 19.01 */ Temperature( 6.9, 12.4, 9.4128 ), + /* 20.01 */ Temperature( 7.1, 13.3, 10.5083 ), + /* 21.01 */ Temperature( 3.5, 9.6, 6.10871 ), + /* 22.01 */ Temperature( -1.8, 6, 2.89028 ), + /* 23.01 */ Temperature( -5.4, 1.7, -2.46678 ), + /* 24.01 */ Temperature( -5.3, -1.3, -3.71483 ), + /* 25.01 */ Temperature( -7.5, 3.3, -3.36736 ), + /* 26.01 */ Temperature( -11.1, 0.3, -5.50662 ), + /* 27.01 */ Temperature( 0.2, 3.2, 1.95345 ), + /* 28.01 */ Temperature( 1.9, 5.2, 3.43633 ), + /* 29.01 */ Temperature( 4.4, 9.1, 6.24236 ), + /* 30.01 */ Temperature( 2.3, 11.5, 6.03114 ), + /* 31.01 */ Temperature( 4.6, 10.2, 6.04192 ), + + /* 01.02 */ Temperature( 4.8, 13.8, 7.87674 ), + /* 02.02 */ Temperature( 5.7, 10, 7.28646 ), + /* 03.02 */ Temperature( 2.9, 8.2, 5.71771 ), + /* 04.02 */ Temperature( -1.5, 7.2, 4.71319 ), + /* 05.02 */ Temperature( -2.6, 4.4, 1.23542 ), + /* 06.02 */ Temperature( 0.3, 9.2, 2.59965 ), + /* 07.02 */ Temperature( -0.4, 2.4, 0.641667 ), + /* 08.02 */ Temperature( -1.7, 3.8, 0.811458 ), + /* 09.02 */ Temperature( 0.7, 7, 3.58328 ), + /* 10.02 */ Temperature( 1, 6, 3.51181 ), + /* 11.02 */ Temperature( 4.7, 9.6, 6.14913 ), + /* 12.02 */ Temperature( 5.3, 8.7, 6.80552 ), + /* 13.02 */ Temperature( 4.4, 10.3, 6.84552 ), + /* 14.02 */ Temperature( 2.6, 6.5, 4.58681 ), + /* 15.02 */ Temperature( -0.8, 13.4, 6.38542 ), + /* 16.02 */ Temperature( -3, 14.4, 4.11336 ), + /* 17.02 */ Temperature( 0.5, 13, 5.87457 ), + /* 18.02 */ Temperature( -2.2, 14.1, 4.36528 ), + /* 19.02 */ Temperature( 3.9, 5.6, 4.63737 ), + /* 20.02 */ Temperature( -0.4, 9.2, 4.37014 ), + /* 21.02 */ Temperature( -1.9, 5.5, 1.85675 ), + /* 22.02 */ Temperature( 1, 13.1, 5.41176 ), + /* 23.02 */ Temperature( 1.9, 13.9, 7.74251 ), + /* 24.02 */ Temperature( 3.8, 9.6, 7.19306 ), + /* 25.02 */ Temperature( 5.8, 10.8, 7.80312 ), + /* 26.02 */ Temperature( 5.2, 10.4, 6.79481 ), + /* 27.02 */ Temperature( 3.2, 7.4, 5.22986 ), + /* 28.02 */ Temperature( 6.4, 13.4, 9.13356 ), + + /* 01.03 */ Temperature( 4.6, 11.4, 7.70554 ), + /* 02.03 */ Temperature( 3.4, 10.9, 5.98408 ), + /* 03.03 */ Temperature( 2.9, 10.5, 5.45675 ), + /* 04.03 */ Temperature( -0.7, 16.8, 7.29585 ), + /* 05.03 */ Temperature( 4.2, 13.4, 8.35862 ), + /* 06.03 */ Temperature( 3, 13, 7.76644 ), + /* 07.03 */ Temperature( 2, 13.3, 8.24618 ), + /* 08.03 */ Temperature( -0.8, 15, 6.11765 ), + /* 09.03 */ Temperature( -0.7, 11, 5.7568 ), + /* 10.03 */ Temperature( 1.2, 14.4, 6.61389 ), + /* 11.03 */ Temperature( -1.7, 18, 6.66146 ), + /* 12.03 */ Temperature( -0.6, 21.9, 8.9816 ), + /* 13.03 */ Temperature( -0.9, 19.6, 9.08299 ), + /* 14.03 */ Temperature( 5.3, 18.9, 10.5562 ), + /* 15.03 */ Temperature( 2, 20.5, 9.65156 ), + /* 16.03 */ Temperature( 0.2, 16.7, 7.8699 ), + /* 17.03 */ Temperature( 4.5, 10.6, 7.87535 ), + /* 18.03 */ Temperature( 2.7, 9.7, 6.71806 ), + /* 19.03 */ Temperature( 0.4, 10.9, 3.92404 ), + /* 20.03 */ Temperature( -2, 12.7, 4.01359 ), + /* 21.03 */ Temperature( 0.3, 6.8, 3.00382 ), + /* 22.03 */ Temperature( 0.9, 4.2, 2.2816 ), + /* 23.03 */ Temperature( 2, 5.7, 3.39233 ), + /* 24.03 */ Temperature( 3.9, 9.3, 6.41076 ), + /* 25.03 */ Temperature( 4.2, 19.1, 9.92182 ), + /* 26.03 */ Temperature( 2.3, 22, 12.5716 ), + /* 27.03 */ Temperature( 4.9, 20.6, 13.4568 ), + /* 28.03 */ Temperature( 0.3, 22.8, 10.755 ), + /* 29.03 */ Temperature( 1.8, 17.2, 9.43924 ), + /* 30.03 */ Temperature( 1.9, 19.8, 10.25 ), + /* 31.03 */ Temperature( 6.7, 17, 11.1324 ), + + /* 01.04 */ Temperature( 5.7, 22, 12.8457 ), + /* 02.04 */ Temperature( 6.4, 22.1, 13.3847 ), + /* 03.04 */ Temperature( 5.8, 17.5, 10.5614 ), + /* 04.04 */ Temperature( 2.8, 16.2, 8.06574 ), + /* 05.04 */ Temperature( -0.6, 20.8, 9.18062 ), + /* 06.04 */ Temperature( 2.1, 24, 13.0069 ), + /* 07.04 */ Temperature( 5.3, 16.2, 10.2771 ), + /* 08.04 */ Temperature( 0.1, 20.7, 9.79861 ), + /* 09.04 */ Temperature( 0.3, 18.9, 10.0087 ), + /* 10.04 */ Temperature( 4, 16.4, 11.4208 ), + /* 11.04 */ Temperature( 2.3, 23.4, 13.083 ), + /* 12.04 */ Temperature( 7, 29.4, 16.5826 ), + /* 13.04 */ Temperature( 10.6, 31.5, 19.2249 ), + /* 14.04 */ Temperature( 11.8, 34, 21.441 ), + /* 15.04 */ Temperature( 11.6, 33.8, 21.0201 ), + /* 16.04 */ Temperature( 8.7, 31.1, 18.7885 ), + /* 17.04 */ Temperature( 5.5, 27.2, 16.1432 ), + /* 18.04 */ Temperature( 6.1, 17.2, 10.6688 ), + /* 19.04 */ Temperature( -0.6, 21.3, 10.4806 ), + /* 20.04 */ Temperature( 5.9, 21.6, 12.6257 ), + /* 21.04 */ Temperature( 2.1, 21.6, 11.0858 ), + /* 22.04 */ Temperature( 3.9, 25.9, 14.2108 ), + /* 23.04 */ Temperature( 3.1, 27.8, 15.7111 ), + /* 24.04 */ Temperature( 13.7, 29, 19.6397 ), + /* 25.04 */ Temperature( 9.8, 31.6, 19.601 ), + /* 26.04 */ Temperature( 8.2, 32.4, 20.0389 ), + /* 27.04 */ Temperature( 11.8, 32.1, 21.0726 ), + /* 28.04 */ Temperature( 12.6, 33.3, 21.6993 ), + /* 29.04 */ Temperature( 10.5, 27.4, 19.1206 ), + /* 30.04 */ Temperature( 5.3, 26.4, 15.0972 ), + + /* 01.05 */ Temperature( 6.9, 25.3, 15.2802 ), + /* 02.05 */ Temperature( 4.3, 26.2, 14.8401 ), + /* 03.05 */ Temperature( 7.1, 28.5, 17.2145 ), + /* 04.05 */ Temperature( 11, 28.5, 18.537 ), + /* 05.05 */ Temperature( 12, 28, 18.1672 ), + /* 06.05 */ Temperature( 10.4, 29, 18.3844 ), + /* 07.05 */ Temperature( 13, 18.1, 15.0028 ), + /* 08.05 */ Temperature( 10.7, 18.3, 13.2014 ), + /* 09.05 */ Temperature( 10.8, 14.4, 12.5208 ), + /* 10.05 */ Temperature( 11.9, 23.5, 16.9632 ), + /* 11.05 */ Temperature( 9.8, 16.9, 15.0795 ), + /* 12.05 */ Temperature( 9.2, 19.6, 13.8521 ), + /* 13.05 */ Temperature( 8.9, 26.3, 16.2028 ), + /* 14.05 */ Temperature( 11.1, 17.5, 13.2934 ), + /* 15.05 */ Temperature( 6.5, 17, 11.7743 ), + /* 16.05 */ Temperature( 4.9, 13.6, 9.75625 ), + /* 17.05 */ Temperature( 6.8, 16.6, 9.96701 ), + /* 18.05 */ Temperature( 2.4, 21.2, 11.4311 ), + /* 19.05 */ Temperature( 8.2, 24.4, 15.4188 ), + /* 20.05 */ Temperature( 14.1, 31.7, 21.3303 ), + /* 21.05 */ Temperature( 11, 30.9, 21.5359 ), + /* 22.05 */ Temperature( 13.8, 31, 21.5177 ), + /* 23.05 */ Temperature( 16, 27.8, 21.0271 ), + /* 24.05 */ Temperature( 15, 34, 23.4142 ), + /* 25.05 */ Temperature( 14.3, 31.8, 22.8903 ), + /* 26.05 */ Temperature( 13.6, 33.1, 22.6156 ), + /* 27.05 */ Temperature( 11.2, 23.4, 16.6192 ), + /* 28.05 */ Temperature( 9.6, 13.1, 11.3222 ), + /* 29.05 */ Temperature( 8.3, 11.2, 10.3529 ), + /* 30.05 */ Temperature( 4.2, 20.8, 12.6218 ), + /* 31.05 */ Temperature( 9.2, 23.6, 15.1073 ), + + /* 01.06 */ Temperature( 10.8, 24.4, 16.3205 ), + /* 02.06 */ Temperature( 13, 26.5, 18.9649 ), + /* 03.06 */ Temperature( 14, 25.1, 18.5398 ), + /* 04.06 */ Temperature( 13, 28, 20.2139 ), + /* 05.06 */ Temperature( 14, 28.8, 20.438 ), + /* 06.06 */ Temperature( 14, 30.4, 21.7821 ), + /* 07.06 */ Temperature( 17, 34.8, 25.3087 ), + /* 08.06 */ Temperature( 17.9, 35.7, 25.7872 ), + /* 09.06 */ Temperature( 17.8, 31.6, 22.0788 ), + /* 10.06 */ Temperature( 15.5, 33.4, 22.4458 ), + /* 11.06 */ Temperature( 16.6, 28.3, 19.8797 ), + /* 12.06 */ Temperature( 14, 27.3, 20.2566 ), + /* 13.06 */ Temperature( 13.2, 28.2, 19.4233 ), + /* 14.06 */ Temperature( 12.7, 30, 20.1427 ), + /* 15.06 */ Temperature( 15.2, 22.6, 18.5917 ), + /* 16.06 */ Temperature( 13.2, 24, 17.7014 ), + /* 17.06 */ Temperature( 11.7, 27.9, 19.8229 ), + /* 18.06 */ Temperature( 15.9, 27.2, 20.3358 ), + /* 19.06 */ Temperature( 12.6, 33.7, 22.2427 ), + /* 20.06 */ Temperature( 15.7, 30.8, 23.7507 ), + /* 21.06 */ Temperature( 14.8, 22.6, 18.2538 ), + /* 22.06 */ Temperature( 12.4, 21.3, 15.9969 ), + /* 23.06 */ Temperature( 12.6, 21.6, 15.8149 ), + /* 24.06 */ Temperature( 13, 26, 18.4176 ), + /* 25.06 */ Temperature( 12.9, 24.4, 17.1299 ), + /* 26.06 */ Temperature( 10.8, 18.8, 13.2913 ), + /* 27.06 */ Temperature( 9.9, 18.8, 13.5465 ), + /* 28.06 */ Temperature( 12, 19.8, 14.8434 ), + /* 29.06 */ Temperature( 12, 19, 15.155 ), + /* 30.06 */ Temperature( 12.4, 22.4, 17.1354 ), + + /* 01.07 */ Temperature( 12.1, 24.9, 19.1639 ), + /* 02.07 */ Temperature( 15.7, 24.3, 18.4554 ), + /* 03.07 */ Temperature( 12.7, 17.2, 14.6564 ), + /* 04.07 */ Temperature( 11.2, 19, 13.9529 ), + /* 05.07 */ Temperature( 11.5, 19, 14.6422 ), + /* 06.07 */ Temperature( 12.4, 22, 16.6146 ), + /* 07.07 */ Temperature( 11.6, 24, 17.666 ), + /* 08.07 */ Temperature( 9, 28, 19.1351 ), + /* 09.07 */ Temperature( 11.3, 21.5, 16.5271 ), + /* 10.07 */ Temperature( 11.3, 20.2, 14.2326 ), + /* 11.07 */ Temperature( 10.2, 19.2, 14.0649 ), + /* 12.07 */ Temperature( 13.2, 23.1, 16.6346 ), + /* 13.07 */ Temperature( 15, 27, 19.6844 ), + /* 14.07 */ Temperature( 13.4, 32.4, 23.845 ), + /* 15.07 */ Temperature( 15, 38.2, 26.8559 ), + /* 16.07 */ Temperature( 16.1, 36.5, 26.4483 ), + /* 17.07 */ Temperature( 19.7, 30.5, 24.189 ), + /* 18.07 */ Temperature( 14.2, 29.3, 22.1363 ), + /* 19.07 */ Temperature( 16.4, 25.9, 19.0819 ), + /* 20.07 */ Temperature( 16.2, 30.8, 22.151 ), + /* 21.07 */ Temperature( 14, 24.3, 18.6573 ), + /* 22.07 */ Temperature( 13.2, 24.5, 18.3301 ), + /* 23.07 */ Temperature( 10.6, 23.4, 16.6903 ), + /* 24.07 */ Temperature( 13.2, 20.8, 16.2743 ), + /* 25.07 */ Temperature( 12.2, 25.8, 18.8267 ), + /* 26.07 */ Temperature( 11.9, 28.9, 20.5522 ), + /* 27.07 */ Temperature( 17.6, 25.8, 21.5691 ), + /* 28.07 */ Temperature( 16.6, 24.6, 19.2295 ), + /* 29.07 */ Temperature( 13, 19, 15.9021 ), + /* 30.07 */ Temperature( 9.6, 19.7, 13.875 ), + /* 31.07 */ Temperature( 8, 22, 14.5284 ), + + /* 01.08 */ Temperature( 7.6, 27.5, 17.5684 ), + /* 02.08 */ Temperature( 9.2, 22.2, 16.1035 ), + /* 03.08 */ Temperature( 12.7, 25.3, 18.2958 ), + /* 04.08 */ Temperature( 8.6, 31.3, 19.7941 ), + /* 05.08 */ Temperature( 10.3, 32.7, 21.492 ), + /* 06.08 */ Temperature( 10, 33.4, 22.4431 ), + /* 07.08 */ Temperature( 16.8, 22.6, 19.5583 ), + /* 08.08 */ Temperature( 13.5, 16.7, 15.0264 ), + /* 09.08 */ Temperature( 13.2, 18.8, 15.6003 ), + /* 10.08 */ Temperature( 14.6, 27.9, 18.8292 ), + /* 11.08 */ Temperature( 16.3, 26.4, 20.3837 ), + /* 12.08 */ Temperature( 12.1, 28.7, 19.9892 ), + /* 13.08 */ Temperature( 15, 27.4, 19.7542 ), + /* 14.08 */ Temperature( 11.3, 28.3, 20.5656 ), + /* 15.08 */ Temperature( 18.6, 28.4, 23.1215 ), + /* 16.08 */ Temperature( 16, 23.6, 19.491 ), + /* 17.08 */ Temperature( 12.6, 22, 17.0437 ), + /* 18.08 */ Temperature( 8.5, 25.7, 16.5589 ), + /* 19.08 */ Temperature( 13.4, 25.8, 18.0543 ), + /* 20.08 */ Temperature( 10.9, 21.5, 16.1306 ), + /* 21.08 */ Temperature( 10.6, 19.2, 14.6177 ), + /* 22.08 */ Temperature( 14, 24.6, 17.3841 ), + /* 23.08 */ Temperature( 13.8, 30.4, 20.6125 ), + /* 24.08 */ Temperature( 12.3, 30.3, 20.7622 ), + /* 25.08 */ Temperature( 12.8, 30.2, 21.6736 ), + /* 26.08 */ Temperature( 15, 29.3, 21.266 ), + /* 27.08 */ Temperature( 12.9, 25.9, 18.791 ), + /* 28.08 */ Temperature( 9.3, 24.6, 16.2833 ), + /* 29.08 */ Temperature( 10.8, 25, 16.8459 ), + /* 30.08 */ Temperature( 8.2, 24.4, 15.9267 ), + /* 31.08 */ Temperature( 14.1, 20.5, 16.6128 ), + + /* 01.09 */ Temperature( 13.4, 21.9, 16.2205 ), + /* 02.09 */ Temperature( 12, 20.7, 16.0882 ), + /* 03.09 */ Temperature( 10.8, 21.3, 14.7913 ), + /* 04.09 */ Temperature( 7.8, 18.2, 12.2747 ), + /* 05.09 */ Temperature( 8.1, 22.2, 12.9406 ), + /* 06.09 */ Temperature( 10, 23.8, 13.8785 ), + /* 07.09 */ Temperature( 10.7, 21.2, 15.4823 ), + /* 08.09 */ Temperature( 12.4, 21, 15.8194 ), + /* 09.09 */ Temperature( 12.7, 16.9, 14.7212 ), + /* 10.09 */ Temperature( 10.3, 17.7, 12.9271 ), + /* 11.09 */ Temperature( 10.6, 20.8, 14.4788 ), + /* 12.09 */ Temperature( 10.8, 21.9, 15.0184 ), + /* 13.09 */ Temperature( 6.9, 24.6, 14.5222 ), + /* 14.09 */ Temperature( 8.1, 24, 15.6583 ), + /* 15.09 */ Temperature( 8.8, 22.8, 15.941 ), + /* 16.09 */ Temperature( 3.1, 24.5, 14.1486 ), + /* 17.09 */ Temperature( 12.4, 21.2, 16.0497 ), + /* 18.09 */ Temperature( 7.8, 16.1, 12.024 ), + /* 19.09 */ Temperature( 5.3, 18.1, 10.3003 ), + /* 20.09 */ Temperature( 6.4, 20.3, 12.3177 ), + /* 21.09 */ Temperature( 6, 23.8, 13.6247 ), + /* 22.09 */ Temperature( 5.7, 27, 14.6847 ), + /* 23.09 */ Temperature( 7.8, 28, 16.6238 ), + /* 24.09 */ Temperature( 9.6, 24.9, 16.7191 ), + /* 25.09 */ Temperature( 8.4, 17.6, 12.636 ), + /* 26.09 */ Temperature( 4.3, 18.9, 10.0809 ), + /* 27.09 */ Temperature( 9.4, 11.2, 10.3344 ), + /* 28.09 */ Temperature( 7.7, 12.6, 10.5337 ), + /* 29.09 */ Temperature( 9.8, 15.3, 11.9306 ), + /* 30.09 */ Temperature( 9.6, 21.1, 13.6635 ), + + /* 01.10 */ Temperature( 8.9, 24.5, 14.8163 ), + /* 02.10 */ Temperature( 13.5, 20.2, 16.1628 ), + /* 03.10 */ Temperature( 12.5, 18, 15.4691 ), + /* 04.10 */ Temperature( 13.8, 25, 17.2073 ), + /* 05.10 */ Temperature( 9.1, 23.2, 14.6181 ), + /* 06.10 */ Temperature( 6.4, 23.4, 12.8625 ), + /* 07.10 */ Temperature( 4.6, 22.1, 11.0052 ), + /* 08.10 */ Temperature( 2, 22.2, 10.1677 ), + /* 09.10 */ Temperature( 7.8, 21.6, 12.2139 ), + /* 10.10 */ Temperature( 7.1, 22.7, 13.0115 ), + /* 11.10 */ Temperature( 6.1, 21.2, 11.4333 ), + /* 12.10 */ Temperature( 4.3, 15.2, 10.6104 ), + /* 13.10 */ Temperature( 5.8, 23, 12.8875 ), + /* 14.10 */ Temperature( 1, 23, 9.72986 ), + /* 15.10 */ Temperature( 1, 19.3, 9.33021 ), + /* 16.10 */ Temperature( 8.5, 20.4, 13.2639 ), + /* 17.10 */ Temperature( 6.8, 17.3, 11.8174 ), + /* 18.10 */ Temperature( 5.2, 15.6, 9.06076 ), + /* 19.10 */ Temperature( 2.7, 13.5, 7.1309 ), + /* 20.10 */ Temperature( -0.2, 15.8, 6.01667 ), + /* 21.10 */ Temperature( 2.6, 6.1, 4.9441 ), + /* 22.10 */ Temperature( -0.8, 13.2, 4.50694 ), + /* 23.10 */ Temperature( -0.4, 13.3, 4.71007 ), + /* 24.10 */ Temperature( 2.9, 8.1, 5.96979 ), + /* 25.10 */ Temperature( 6.3, 10.5, 8.01206 ), + /* 26.10 */ Temperature( 7, 10.8, 8.14965 ), + /* 27.10 */ Temperature( 6.6, 9.7, 7.7809 ), + /* 28.10 */ Temperature( 1.7, 10.8, 6.95728 ), + /* 29.10 */ Temperature( 2.2, 9.9, 6.62917 ), + /* 30.10 */ Temperature( 5.8, 15, 8.76181 ), + /* 31.10 */ Temperature( 0.7, 15, 6.01528 ), + + /* 01.11 */ Temperature( -0.2, 9.7, 3.75842 ), + /* 02.11 */ Temperature( 6.4, 9.6, 8.00138 ), + /* 03.11 */ Temperature( 8.7, 13.1, 10.5676 ), + /* 04.11 */ Temperature( 8, 11.8, 9.54306 ), + /* 05.11 */ Temperature( 5.8, 15.9, 8.52345 ), + /* 06.11 */ Temperature( 5.5, 10.8, 7.16493 ), + /* 07.11 */ Temperature( 5.5, 8.9, 7.30172 ), + /* 08.11 */ Temperature( 7, 11.7, 8.96701 ), + /* 09.11 */ Temperature( 2.5, 8.4, 4.86528 ), + /* 10.11 */ Temperature( 3.7, 9, 5.20828 ), + /* 11.11 */ Temperature( 2.8, 10.6, 6.80756 ), + /* 12.11 */ Temperature( 2.7, 9.5, 5.07647 ), + /* 13.11 */ Temperature( 0.1, 5.4, 3.3945 ), + /* 14.11 */ Temperature( -0.7, 7.9, 2.02234 ), + /* 15.11 */ Temperature( -1.8, 6.5, 1.07778 ), + /* 16.11 */ Temperature( -4.4, 5.1, -0.693772 ), + /* 17.11 */ Temperature( -0.3, 3.4, 1.33229 ), + /* 18.11 */ Temperature( -0.4, 4.3, 2.4622 ), + /* 19.11 */ Temperature( 1.8, 3.6, 2.78282 ), + /* 20.11 */ Temperature( 1.3, 5.6, 2.95979 ), + /* 21.11 */ Temperature( 1.6, 5.7, 3.62284 ), + /* 22.11 */ Temperature( 3.1, 7.3, 5.60277 ), + /* 23.11 */ Temperature( 4.2, 7.7, 6.28166 ), + /* 24.11 */ Temperature( -0.5, 11.5, 3.25931 ), + /* 25.11 */ Temperature( -1, 8.8, 2.86505 ), + /* 26.11 */ Temperature( 1.2, 6.8, 3.09414 ), + /* 27.11 */ Temperature( -0.8, 7.5, 3.17805 ), + /* 28.11 */ Temperature( -2.8, 3.1, -0.920139 ), + /* 29.11 */ Temperature( -2.6, 1.7, -0.491696 ), + /* 30.11 */ Temperature( 1.3, 6.5, 3.85 ), + + /* 01.12 */ Temperature( 4.1, 8.7, 5.88924 ), + /* 02.12 */ Temperature( 4.8, 9, 6.81667 ), + /* 03.12 */ Temperature( 3.5, 8.5, 6.23633 ), + /* 04.12 */ Temperature( 2.7, 6.6, 4.63045 ), + /* 05.12 */ Temperature( 4.3, 8.6, 6.85993 ), + /* 06.12 */ Temperature( 5.5, 9.3, 7.79201 ), + /* 07.12 */ Temperature( 3.1, 13.4, 8.79444 ), + /* 08.12 */ Temperature( 2.6, 6.3, 4.67093 ), + /* 09.12 */ Temperature( 3, 10.4, 5.75724 ), + /* 10.12 */ Temperature( 4.1, 6.8, 5.31834 ), + /* 11.12 */ Temperature( 4.1, 7.4, 5.28993 ), + /* 12.12 */ Temperature( 3.9, 6.4, 4.64479 ), + /* 13.12 */ Temperature( 1.7, 9.1, 4.15363 ), + /* 14.12 */ Temperature( 0.4, 1.8, 0.934602 ), + /* 15.12 */ Temperature( -4.5, 2.1, -1.17292 ), + /* 16.12 */ Temperature( -5, 4.8, -2.17431 ), + /* 17.12 */ Temperature( -5.6, 6.1, -1.35448 ), + /* 18.12 */ Temperature( -4.9, 6.4, -1.25502 ), + /* 19.12 */ Temperature( -4.4, 6.6, -1.02396 ), + /* 20.12 */ Temperature( -7.3, 5.2, -2.63854 ), + /* 21.12 */ Temperature( -8.5, 5.7, -3.58333 ), + /* 22.12 */ Temperature( -7.9, -5.3, -6.13438 ), + /* 23.12 */ Temperature( -6.1, -4.4, -5.23472 ), + /* 24.12 */ Temperature( -4.6, -3.3, -3.84291 ), + /* 25.12 */ Temperature( -4.9, -2.8, -3.9066 ), + /* 26.12 */ Temperature( -4.7, -1.9, -3.10379 ), + /* 27.12 */ Temperature( -1.9, -0.2, -0.679791 ), + /* 28.12 */ Temperature( -1.8, 0.5, -0.521875 ), + /* 29.12 */ Temperature( -2.2, 2.3, -0.430796 ), + /* 30.12 */ Temperature( 0.9, 5.2, 2.83437 ), + /* 31.12 */ Temperature( -1, 8.3, 2.27093 ) +}; diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/friedberg/friedberg2007.h phyxcalc-3rev200/qwt-6.0.0/examples/friedberg/friedberg2007.h --- phyxcalc-3rev200/qwt-6.0.0/examples/friedberg/friedberg2007.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/friedberg/friedberg2007.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,28 @@ +#ifndef _FRIEDBERG_2007_H_ +#define _FRIEDBERG_2007_H_ + +class Temperature +{ +public: + Temperature(): + minValue( 0.0 ), + maxValue( 0.0 ), + averageValue( 0.0 ) + { + } + + Temperature( double min, double max, double average ): + minValue( min ), + maxValue( max ), + averageValue( average ) + { + } + + double minValue; + double maxValue; + double averageValue; +}; + +extern Temperature friedberg2007[]; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/friedberg/friedberg.pro phyxcalc-3rev200/qwt-6.0.0/examples/friedberg/friedberg.pro --- phyxcalc-3rev200/qwt-6.0.0/examples/friedberg/friedberg.pro 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/friedberg/friedberg.pro 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,21 @@ +################################################################ +# Qwt Widget Library +# Copyright (C) 1997 Josef Wilgen +# Copyright (C) 2002 Uwe Rathmann +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the Qwt License, Version 1.0 +################################################################ + +include( $${PWD}/../examples.pri ) + +TARGET = friedberg + +HEADERS = \ + plot.h \ + friedberg2007.h + +SOURCES = \ + friedberg2007.cpp \ + plot.cpp \ + main.cpp diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/friedberg/main.cpp phyxcalc-3rev200/qwt-6.0.0/examples/friedberg/main.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/friedberg/main.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/friedberg/main.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,57 @@ +#include +#include +#include +#include +#include +#include +#include +#include "plot.h" + +class MainWindow: public QMainWindow +{ +public: + MainWindow( QWidget * = NULL ); + +private: + Plot *d_plot; +}; + +MainWindow::MainWindow( QWidget *parent ): + QMainWindow( parent ) +{ + d_plot = new Plot( this ); + setCentralWidget( d_plot ); + + QToolBar *toolBar = new QToolBar( this ); + + QComboBox *typeBox = new QComboBox( toolBar ); + typeBox->addItem( "Bars" ); + typeBox->addItem( "Tube" ); + typeBox->setCurrentIndex( 1 ); + typeBox->setSizePolicy( QSizePolicy::Fixed, QSizePolicy::Fixed ); + + QToolButton *btnExport = new QToolButton( toolBar ); + btnExport->setText( "Export" ); + btnExport->setToolButtonStyle( Qt::ToolButtonTextUnderIcon ); + connect( btnExport, SIGNAL( clicked() ), d_plot, SLOT( exportPlot() ) ); + + toolBar->addWidget( typeBox ); + toolBar->addWidget( btnExport ); + addToolBar( toolBar ); + + d_plot->setMode( typeBox->currentIndex() ); + connect( typeBox, SIGNAL( currentIndexChanged( int ) ), + d_plot, SLOT( setMode( int ) ) ); +} + +int main( int argc, char **argv ) +{ + QApplication a( argc, argv ); + + MainWindow w; + w.setObjectName( "MainWindow" ); + w.resize( 600, 400 ); + w.show(); + + return a.exec(); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/friedberg/plot.cpp phyxcalc-3rev200/qwt-6.0.0/examples/friedberg/plot.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/friedberg/plot.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/friedberg/plot.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,252 @@ +#include "plot.h" +#include "friedberg2007.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +class Grid: public QwtPlotGrid +{ +public: + Grid() + { + enableXMin( true ); + setMajPen( QPen( Qt::white, 0, Qt::DotLine ) ); + setMinPen( QPen( Qt::gray, 0 , Qt::DotLine ) ); + } + + virtual void updateScaleDiv( const QwtScaleDiv &xMap, + const QwtScaleDiv &yMap ) + { + QList ticks[QwtScaleDiv::NTickTypes]; + + ticks[QwtScaleDiv::MajorTick] = + xMap.ticks( QwtScaleDiv::MediumTick ); + ticks[QwtScaleDiv::MinorTick] = + xMap.ticks( QwtScaleDiv::MinorTick ); + + QwtPlotGrid::updateScaleDiv( + QwtScaleDiv( xMap.lowerBound(), xMap.upperBound(), ticks ), + yMap ); + } +}; + +class YearScaleDraw: public QwtScaleDraw +{ +public: + YearScaleDraw() + { + setTickLength( QwtScaleDiv::MajorTick, 0 ); + setTickLength( QwtScaleDiv::MinorTick, 0 ); + setTickLength( QwtScaleDiv::MediumTick, 6 ); + + setLabelRotation( -60.0 ); + setLabelAlignment( Qt::AlignLeft | Qt::AlignVCenter ); + + setSpacing( 15 ); + } + + virtual QwtText label( double value ) const + { + return QDate::longMonthName( int( value / 30 ) + 1 ); + } +}; + +Plot::Plot( QWidget *parent ): + QwtPlot( parent ) +{ + setObjectName( "FriedbergPlot" ); + setTitle( "Temperature of Friedberg/Germany" ); + + setAxisTitle( QwtPlot::xBottom, "2007" ); + setAxisScaleDiv( QwtPlot::xBottom, yearScaleDiv() ); + setAxisScaleDraw( QwtPlot::xBottom, new YearScaleDraw() ); + + setAxisTitle( QwtPlot::yLeft, + QString( "Temperature [%1C]" ).arg( QChar( 0x00B0 ) ) ); + + // grid + QwtPlotGrid *grid = new Grid; + grid->attach( this ); + + insertLegend( new QwtLegend(), QwtPlot::RightLegend ); + + const int numDays = 365; + QVector averageData( numDays ); + QVector rangeData( numDays ); + + for ( int i = 0; i < numDays; i++ ) + { + const Temperature &t = friedberg2007[i]; + averageData[i] = QPointF( double( i ), t.averageValue ); + rangeData[i] = QwtIntervalSample( double( i ), + QwtInterval( t.minValue, t.maxValue ) ); + } + + insertCurve( "Average", averageData, Qt::black ); + insertErrorBars( "Range", rangeData, Qt::blue ); + + // LeftButton for the zooming + // MidButton for the panning + // RightButton: zoom out by 1 + // Ctrl+RighButton: zoom out to full size + + QwtPlotZoomer* zoomer = new QwtPlotZoomer( canvas() ); + zoomer->setRubberBandPen( QColor( Qt::black ) ); + zoomer->setTrackerPen( QColor( Qt::black ) ); + zoomer->setMousePattern( QwtEventPattern::MouseSelect2, + Qt::RightButton, Qt::ControlModifier ); + zoomer->setMousePattern( QwtEventPattern::MouseSelect3, + Qt::RightButton ); + + QwtPlotPanner *panner = new QwtPlotPanner( canvas() ); + panner->setMouseButton( Qt::MidButton ); + + canvas()->setPalette( Qt::darkGray ); + canvas()->setBorderRadius( 10 ); +} + +QwtScaleDiv Plot::yearScaleDiv() const +{ + const int days[] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; + + QList ticks[QwtScaleDiv::NTickTypes]; + + QList &mediumTicks = ticks[QwtScaleDiv::MediumTick]; + mediumTicks += 0.0; + for ( uint i = 0; i < sizeof( days ) / sizeof( days[0] ); i++ ) + mediumTicks += mediumTicks.last() + days[i]; + + QList &minorTicks = ticks[QwtScaleDiv::MinorTick]; + for ( int i = 1; i <= 365; i += 7 ) + minorTicks += i; + + QList &majorTicks = ticks[QwtScaleDiv::MajorTick]; + for ( int i = 0; i < 12; i++ ) + majorTicks += i * 30 + 15; + + QwtScaleDiv scaleDiv( mediumTicks.first(), mediumTicks.last() + 1, ticks ); + return scaleDiv; +} + +void Plot::insertCurve( const QString& title, + const QVector& samples, const QColor &color ) +{ + d_curve = new QwtPlotCurve( title ); + d_curve->setRenderHint( QwtPlotItem::RenderAntialiased ); + d_curve->setStyle( QwtPlotCurve::NoCurve ); + d_curve->setLegendAttribute( QwtPlotCurve::LegendShowSymbol ); + + QwtSymbol *symbol = new QwtSymbol( QwtSymbol::XCross ); + symbol->setSize( 4 ); + symbol->setPen( QPen( color ) ); + d_curve->setSymbol( symbol ); + + d_curve->setSamples( samples ); + d_curve->attach( this ); +} + +void Plot::insertErrorBars( + const QString &title, + const QVector& samples, + const QColor &color ) +{ + d_intervalCurve = new QwtPlotIntervalCurve( title ); + d_intervalCurve->setRenderHint( QwtPlotItem::RenderAntialiased ); + d_intervalCurve->setPen( QPen( Qt::white ) ); + + QColor bg( color ); + bg.setAlpha( 150 ); + d_intervalCurve->setBrush( QBrush( bg ) ); + d_intervalCurve->setStyle( QwtPlotIntervalCurve::Tube ); + + d_intervalCurve->setSamples( samples ); + d_intervalCurve->attach( this ); +} + +void Plot::setMode( int style ) +{ + if ( style == Tube ) + { + d_intervalCurve->setStyle( QwtPlotIntervalCurve::Tube ); + d_intervalCurve->setSymbol( NULL ); + d_intervalCurve->setRenderHint( QwtPlotItem::RenderAntialiased, true ); + } + else + { + d_intervalCurve->setStyle( QwtPlotIntervalCurve::NoCurve ); + + QColor c( d_intervalCurve->brush().color().rgb() ); // skip alpha + + QwtIntervalSymbol *errorBar = + new QwtIntervalSymbol( QwtIntervalSymbol::Bar ); + errorBar->setWidth( 8 ); // should be something even + errorBar->setPen( c ); + + d_intervalCurve->setSymbol( errorBar ); + d_intervalCurve->setRenderHint( QwtPlotItem::RenderAntialiased, false ); + } + + replot(); +} + +void Plot::exportPlot() +{ +#ifndef QT_NO_PRINTER + QString fileName = "friedberg.pdf"; +#else + QString fileName = "friedberg.png"; +#endif + +#ifndef QT_NO_FILEDIALOG + const QList imageFormats = + QImageWriter::supportedImageFormats(); + + QStringList filter; + filter += "PDF Documents (*.pdf)"; +#ifndef QWT_NO_SVG + filter += "SVG Documents (*.svg)"; +#endif + filter += "Postscript Documents (*.ps)"; + + if ( imageFormats.size() > 0 ) + { + QString imageFilter("Images ("); + for ( int i = 0; i < imageFormats.size(); i++ ) + { + if ( i > 0 ) + imageFilter += " "; + imageFilter += "*."; + imageFilter += imageFormats[i]; + } + imageFilter += ")"; + + filter += imageFilter; + } + + fileName = QFileDialog::getSaveFileName( + this, "Export File Name", fileName, + filter.join(";;"), NULL, QFileDialog::DontConfirmOverwrite); +#endif + if ( !fileName.isEmpty() ) + { + QwtPlotRenderer renderer; + renderer.setDiscardFlag(QwtPlotRenderer::DiscardBackground, false); + + renderer.renderDocument(this, fileName, QSizeF(300, 200), 85); + } +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/friedberg/plot.h phyxcalc-3rev200/qwt-6.0.0/examples/friedberg/plot.h --- phyxcalc-3rev200/qwt-6.0.0/examples/friedberg/plot.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/friedberg/plot.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,43 @@ +#ifndef _PLOT_H_ +#define _PLOT_H_ + +#include +#include +#include + +class QwtPlotCurve; +class QwtPlotIntervalCurve; + +class Plot: public QwtPlot +{ + Q_OBJECT + +public: + enum Mode + { + Bars, + Tube + }; + + Plot( QWidget * = NULL ); + +public Q_SLOTS: + void setMode( int ); + void exportPlot(); + +private: + void insertCurve( const QString &title, + const QVector &, const QColor & ); + + void insertErrorBars( const QString &title, + const QVector &, + const QColor &color ); + + + QwtScaleDiv yearScaleDiv() const; + + QwtPlotIntervalCurve *d_intervalCurve; + QwtPlotCurve *d_curve; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/navigation/main.cpp phyxcalc-3rev200/qwt-6.0.0/examples/navigation/main.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/navigation/main.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/navigation/main.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,15 @@ +#include +#include "mainwindow.h" + +int main(int argc, char **argv) +{ + QApplication a(argc, argv); + + MainWindow mainWindow; + + mainWindow.resize(800,600); + mainWindow.show(); + + return a.exec(); +} + diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/navigation/mainwindow.cpp phyxcalc-3rev200/qwt-6.0.0/examples/navigation/mainwindow.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/navigation/mainwindow.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/navigation/mainwindow.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,184 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "plot.h" +#include "mainwindow.h" + +MainWindow::MainWindow() +{ + QFrame *w = new QFrame(this); + + QWidget *panel = createPanel(w); + panel->setFixedWidth(2 * panel->sizeHint().width()); + d_plot = createPlot(w); + + QHBoxLayout *layout = new QHBoxLayout(w); + layout->setMargin(0); + layout->addWidget(panel, 0); + layout->addWidget(d_plot, 10); + + setCentralWidget(w); + + setRescaleMode(0); + setMouseMode(0); + + (void)statusBar(); +} + +QWidget *MainWindow::createPanel(QWidget *parent) +{ + QGroupBox *panel = new QGroupBox("Navigation Panel", parent); + + QComboBox *navigationBox = new QComboBox(panel); + navigationBox->setEditable(false); + navigationBox->insertItem(Tracking, "Tracking"); + navigationBox->insertItem(Zooming, "Zooming"); + navigationBox->insertItem(Panning, "Panning"); + + connect(navigationBox, SIGNAL(activated(int)), SLOT(setMouseMode(int))); + + d_navigationInfo = new QLabel(panel); + d_navigationInfo->setSizePolicy( + QSizePolicy::Expanding, QSizePolicy::Expanding); + d_navigationInfo->setWordWrap(true); + + QComboBox *rescaleBox = new QComboBox(panel); + rescaleBox->setEditable(false); + rescaleBox->insertItem(KeepScales, "None"); + rescaleBox->insertItem(Fixed, "Fixed"); + rescaleBox->insertItem(Expanding, "Expanding"); + rescaleBox->insertItem(Fitting, "Fitting"); + + connect(rescaleBox, SIGNAL(activated(int)), SLOT(setRescaleMode(int))); + + d_rescaleInfo = new QLabel(panel); + d_rescaleInfo->setSizePolicy( + QSizePolicy::Expanding, QSizePolicy::Expanding); + d_rescaleInfo->setWordWrap(true); + + QVBoxLayout *layout = new QVBoxLayout(panel); + layout->addWidget(navigationBox); + layout->addWidget(d_navigationInfo); + layout->addWidget(rescaleBox); + layout->addWidget(d_rescaleInfo); + layout->addStretch(10); + + return panel; +} + +Plot *MainWindow::createPlot(QWidget *parent) +{ + Plot *plot = new Plot(parent, QwtInterval(0.0, 1000.0)); + plot->replot(); + + d_rescaler = new QwtPlotRescaler(plot->canvas()); + d_rescaler->setReferenceAxis(QwtPlot::xBottom); + d_rescaler->setAspectRatio(QwtPlot::yLeft, 1.0); + d_rescaler->setAspectRatio(QwtPlot::yRight, 0.0); + d_rescaler->setAspectRatio(QwtPlot::xTop, 0.0); + + for ( int axis = 0; axis < QwtPlot::axisCnt; axis++ ) + d_rescaler->setIntervalHint(axis, QwtInterval(0.0, 1000.0)); + + connect(plot, SIGNAL(resized(double, double)), + SLOT(showRatio(double, double))); + return plot; +} + +void MainWindow::setMouseMode(int mode) +{ + switch(mode) + { + case Tracking: + { + d_navigationInfo->setText("Tracking"); + break; + } + case Zooming: + { + d_navigationInfo->setText("Zooming"); + break; + } + case Panning: + { + d_navigationInfo->setText("Panning"); + break; + } + } +} + +void MainWindow::setRescaleMode(int mode) +{ + bool doEnable = true; + QString info; + QRectF rectOfInterest; + QwtPlotRescaler::ExpandingDirection direction = QwtPlotRescaler::ExpandUp; + + switch(mode) + { + case KeepScales: + { + doEnable = false; + info = "All scales remain unchanged, when the plot is resized"; + break; + } + case Fixed: + { + d_rescaler->setRescalePolicy(QwtPlotRescaler::Fixed); + info = "The scale of the bottom axis remains unchanged, " + "when the plot is resized. All other scales are changed, " + "so that a pixel on screen means the same distance for" + "all scales."; + break; + } + case Expanding: + { + d_rescaler->setRescalePolicy(QwtPlotRescaler::Expanding); + info = "The scales of all axis are shrinked/expanded, when " + "resizing the plot, keeping the distance that is represented " + "by one pixel."; + d_rescaleInfo->setText("Expanding"); + break; + } + case Fitting: + { + d_rescaler->setRescalePolicy(QwtPlotRescaler::Fitting); + const QwtInterval xIntv = + d_rescaler->intervalHint(QwtPlot::xBottom); + const QwtInterval yIntv = + d_rescaler->intervalHint(QwtPlot::yLeft); + + rectOfInterest = QRectF( xIntv.minValue(), yIntv.minValue(), + xIntv.width(), yIntv.width()); + direction = QwtPlotRescaler::ExpandBoth; + + info = "Fitting"; + break; + } + } + + d_plot->setRectOfInterest(rectOfInterest); + + d_rescaleInfo->setText(info); + d_rescaler->setEnabled(doEnable); + for ( int axis = 0; axis < QwtPlot::axisCnt; axis++ ) + d_rescaler->setExpandingDirection(direction); + + if ( doEnable ) + d_rescaler->rescale(); + else + d_plot->replot(); +} + +void MainWindow::showRatio(double xRatio, double yRatio) +{ + const QString msg = QString("%1, %2").arg(xRatio).arg(yRatio); + statusBar()->showMessage(msg); +} + diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/navigation/mainwindow.h phyxcalc-3rev200/qwt-6.0.0/examples/navigation/mainwindow.h --- phyxcalc-3rev200/qwt-6.0.0/examples/navigation/mainwindow.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/navigation/mainwindow.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,49 @@ +#ifndef _MAINWINDOW_H_ +#define _MAINWINDOW_H_ 1 + +#include +#include + +class QwtPlotRescaler; +class QLabel; +class Plot; + +class MainWindow: public QMainWindow +{ + Q_OBJECT + +public: + enum MouseMode + { + Tracking, + Zooming, + Panning + }; + + enum RescaleMode + { + KeepScales, + Fixed, + Expanding, + Fitting + }; + + MainWindow(); + +private Q_SLOTS: + void setMouseMode(int); + void setRescaleMode(int); + void showRatio(double, double); + +private: + QWidget *createPanel(QWidget *); + Plot *createPlot(QWidget *); + + QwtPlotRescaler *d_rescaler; + QLabel *d_navigationInfo; + QLabel *d_rescaleInfo; + + Plot *d_plot; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/navigation/navigation.pro phyxcalc-3rev200/qwt-6.0.0/examples/navigation/navigation.pro --- phyxcalc-3rev200/qwt-6.0.0/examples/navigation/navigation.pro 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/navigation/navigation.pro 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,22 @@ +################################################################ +# Qwt Widget Library +# Copyright (C) 1997 Josef Wilgen +# Copyright (C) 2002 Uwe Rathmann +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the Qwt License, Version 1.0 +################################################################ + +include( $${PWD}/../examples.pri ) + +TARGET = navigation + +HEADERS = \ + mainwindow.h \ + plot.h + +SOURCES = \ + mainwindow.cpp \ + plot.cpp \ + main.cpp + diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/navigation/plot.cpp phyxcalc-3rev200/qwt-6.0.0/examples/navigation/plot.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/navigation/plot.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/navigation/plot.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,146 @@ +#include "plot.h" +#include +#include +#include +#include +#include +#include +#include +#include + +class RectItem: public QwtPlotItem +{ +public: + enum Type + { + Rect, + Ellipse + }; + + RectItem(Type type): + d_type(type) + { + } + + void setPen(const QPen &pen) + { + if ( pen != d_pen ) + { + d_pen = pen; + itemChanged(); + } + } + + void setBrush(const QBrush &brush) + { + if ( brush != d_brush ) + { + d_brush = brush; + itemChanged(); + } + } + void setRect(const QRectF &rect) + { + if ( d_rect != rect ) + { + d_rect = rect; + itemChanged(); + } + } + + virtual QRectF boundingRect() const + { + return d_rect; + } + + virtual void draw(QPainter *painter, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + const QRectF &) const + { + if ( d_rect.isValid() ) + { + const QRectF rect = QwtScaleMap::transform( + xMap, yMap, d_rect); + painter->setPen(d_pen); + painter->setBrush(d_brush); + if ( d_type == Ellipse ) + QwtPainter::drawEllipse(painter, rect); + else + QwtPainter::drawRect(painter, rect); + } + } +private: + QPen d_pen; + QBrush d_brush; + QRectF d_rect; + Type d_type; +}; + +Plot::Plot(QWidget *parent, const QwtInterval &interval): + QwtPlot(parent) +{ + for ( int axis = 0; axis < QwtPlot::axisCnt; axis ++ ) + setAxisScale(axis, interval.minValue(), interval.maxValue()); + + setCanvasBackground(QColor(Qt::darkBlue)); + plotLayout()->setAlignCanvasToScales(true); + + // grid + QwtPlotGrid *grid = new QwtPlotGrid; + //grid->enableXMin(true); + grid->setMajPen(QPen(Qt::white, 0, Qt::DotLine)); + grid->setMinPen(QPen(Qt::gray, 0 , Qt::DotLine)); + grid->attach(this); + + const int numEllipses = 10; + + for ( int i = 0; i < numEllipses; i++ ) + { + const double x = interval.minValue() + + qrand() % qRound(interval.width()); + const double y = interval.minValue() + + qrand() % qRound(interval.width()); + const double r = interval.minValue() + + qrand() % qRound(interval.width() / 6); + + const QRectF area(x - r, y - r , 2 * r, 2 * r); + + RectItem *item = new RectItem(RectItem::Ellipse); + item->setRenderHint(QwtPlotItem::RenderAntialiased, true); + item->setRect(area); + item->setPen(QPen(Qt::yellow)); + item->attach(this); + } + + + d_rectOfInterest = new RectItem(RectItem::Rect); + d_rectOfInterest->setPen(Qt::NoPen); + QColor c = Qt::gray; + c.setAlpha(100); + d_rectOfInterest->setBrush(QBrush(c)); + d_rectOfInterest->attach(this); +} + +void Plot::updateLayout() +{ + QwtPlot::updateLayout(); + + const QwtScaleMap xMap = canvasMap(QwtPlot::xBottom); + const QwtScaleMap yMap = canvasMap(QwtPlot::yLeft); + + const QRect cr = canvas()->contentsRect(); + const double x1 = xMap.invTransform(cr.left()); + const double x2 = xMap.invTransform(cr.right()); + const double y1 = yMap.invTransform(cr.bottom()); + const double y2 = yMap.invTransform(cr.top()); + + const double xRatio = (x2 - x1) / cr.width(); + const double yRatio = (y2 - y1) / cr.height(); + + Q_EMIT resized(xRatio, yRatio); +} + +void Plot::setRectOfInterest(const QRectF &rect) +{ + d_rectOfInterest->setRect(rect); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/navigation/plot.h phyxcalc-3rev200/qwt-6.0.0/examples/navigation/plot.h --- phyxcalc-3rev200/qwt-6.0.0/examples/navigation/plot.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/navigation/plot.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,28 @@ +#ifndef _PLOT_H_ +#define _PLOT_H_ 1 + +#include + +class RectItem; +class QwtInterval; + +class Plot: public QwtPlot +{ + Q_OBJECT + +public: + Plot(QWidget *parent, const QwtInterval &); + virtual void updateLayout(); + + void setRectOfInterest(const QRectF &); + +Q_SIGNALS: + void resized(double xRatio, double yRatio); + +private: + RectItem *d_rectOfInterest; +}; + +#endif + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/curvedata.cpp phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/curvedata.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/curvedata.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/curvedata.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,27 @@ +#include "curvedata.h" +#include "signaldata.h" + +const SignalData &CurveData::values() const +{ + return SignalData::instance(); +} + +SignalData &CurveData::values() +{ + return SignalData::instance(); +} + +QPointF CurveData::sample(size_t i) const +{ + return SignalData::instance().value(i); +} + +size_t CurveData::size() const +{ + return SignalData::instance().size(); +} + +QRectF CurveData::boundingRect() const +{ + return SignalData::instance().boundingRect(); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/curvedata.h phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/curvedata.h --- phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/curvedata.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/curvedata.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,16 @@ +#include +#include + +class SignalData; + +class CurveData: public QwtSeriesData +{ +public: + const SignalData &values() const; + SignalData &values(); + + virtual QPointF sample(size_t i) const; + virtual size_t size() const; + + virtual QRectF boundingRect() const; +}; diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/knob.cpp phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/knob.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/knob.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/knob.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,86 @@ +#include "knob.h" +#include +#include +#include +#include +#include +#include +#include + +Knob::Knob(const QString &title, double min, double max, QWidget *parent): + QWidget(parent) +{ + QFont font("Helvetica", 10); + + d_knob = new QwtKnob(this); + d_knob->setFont(font); + d_knob->setRange(min, max); + + QwtScaleDiv scaleDiv = + d_knob->scaleEngine()->divideScale(min, max, 5, 3); + + QList ticks = scaleDiv.ticks(QwtScaleDiv::MajorTick); + if ( ticks.size() > 0 && ticks[0] > min ) + { + if ( ticks.first() > min ) + ticks.prepend(min); + if ( ticks.last() < max ) + ticks.append(max); + } + scaleDiv.setTicks(QwtScaleDiv::MajorTick, ticks); + d_knob->setScale(scaleDiv); + + d_knob->setKnobWidth(50); + + font.setBold(true); + d_label = new QLabel(title, this); + d_label->setFont(font); + d_label->setAlignment(Qt::AlignTop | Qt::AlignHCenter); + + setSizePolicy(QSizePolicy::MinimumExpanding, + QSizePolicy::MinimumExpanding); + + connect(d_knob, SIGNAL(valueChanged(double)), + this, SIGNAL(valueChanged(double))); +} + +QSize Knob::sizeHint() const +{ + QSize sz1 = d_knob->sizeHint(); + QSize sz2 = d_label->sizeHint(); + + const int w = qMax(sz1.width(), sz2.width()); + const int h = sz1.height() + sz2.height(); + + int off = d_knob->scaleDraw()->extent(d_knob->font()); + off -= 10; // spacing + + return QSize(w, h - off); +} + +void Knob::setValue(double value) +{ + d_knob->setValue(value); +} + +double Knob::value() const +{ + return d_knob->value(); +} + +void Knob::resizeEvent(QResizeEvent *e) +{ + const QSize sz = e->size(); + + int h = d_label->sizeHint().height(); + + d_label->setGeometry(0, sz.height() - h, + sz.width(), h); + + h = d_knob->sizeHint().height(); + int off = d_knob->scaleDraw()->extent(d_knob->font()); + off -= 10; // spacing + + d_knob->setGeometry(0, d_label->pos().y() - h + off, + sz.width(), h); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/knob.h phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/knob.h --- phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/knob.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/knob.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,33 @@ +#ifndef _KNOB_H_ +#define _KNOB_H_ + +#include + +class QwtKnob; +class QLabel; + +class Knob: public QWidget +{ + Q_OBJECT + +public: + Knob(const QString &title, + double min, double max, QWidget *parent = NULL); + + virtual QSize sizeHint() const; + + void setValue(double value); + double value() const; + +Q_SIGNALS: + double valueChanged(double); + +protected: + virtual void resizeEvent(QResizeEvent *); + +private: + QwtKnob *d_knob; + QLabel *d_label; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/main.cpp phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/main.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/main.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/main.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,35 @@ +#include +#include "mainwindow.h" +#include "samplingthread.h" + +int main(int argc, char **argv) +{ + QApplication app(argc, argv); + + MainWindow window; + window.resize(800,400); + + SamplingThread samplingThread; + samplingThread.setFrequency(window.frequency()); + samplingThread.setAmplitude(window.amplitude()); + samplingThread.setInterval(window.signalInterval()); + + window.connect(&window, SIGNAL(frequencyChanged(double)), + &samplingThread, SLOT(setFrequency(double))); + window.connect(&window, SIGNAL(amplitudeChanged(double)), + &samplingThread, SLOT(setAmplitude(double))); + window.connect(&window, SIGNAL(signalIntervalChanged(double)), + &samplingThread, SLOT(setInterval(double))); + + window.show(); + + samplingThread.start(); + window.start(); + + bool ok = app.exec(); + + samplingThread.stop(); + samplingThread.wait(1000); + + return ok; +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/mainwindow.cpp phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/mainwindow.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/mainwindow.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/mainwindow.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,69 @@ +#include "mainwindow.h" +#include "plot.h" +#include "knob.h" +#include "wheelbox.h" +#include +#include +#include + +MainWindow::MainWindow(QWidget *parent): + QWidget(parent) +{ + const double intervalLength = 10.0; // seconds + + d_plot = new Plot(this); + d_plot->setIntervalLength(intervalLength); + + d_amplitudeKnob = new Knob("Amplitude", 0.0, 200.0, this); + d_amplitudeKnob->setValue(160.0); + + d_frequencyKnob = new Knob("Frequency [Hz]", 0.1, 20.0, this); + d_frequencyKnob->setValue(17.8); + + d_intervalWheel = new WheelBox("Displayed [s]", 1.0, 100.0, 1.0, this); + d_intervalWheel->setValue(intervalLength); + + d_timerWheel = new WheelBox("Sample Interval [ms]", 0.0, 20.0, 0.1, this); + d_timerWheel->setValue(10.0); + + QVBoxLayout* vLayout1 = new QVBoxLayout(); + vLayout1->addWidget(d_intervalWheel); + vLayout1->addWidget(d_timerWheel); + vLayout1->addStretch(10); + vLayout1->addWidget(d_amplitudeKnob); + vLayout1->addWidget(d_frequencyKnob); + + QHBoxLayout *layout = new QHBoxLayout(this); + layout->addWidget(d_plot, 10); + layout->addLayout(vLayout1); + + connect(d_amplitudeKnob, SIGNAL(valueChanged(double)), + SIGNAL(amplitudeChanged(double))); + connect(d_frequencyKnob, SIGNAL(valueChanged(double)), + SIGNAL(frequencyChanged(double))); + connect(d_timerWheel, SIGNAL(valueChanged(double)), + SIGNAL(signalIntervalChanged(double))); + + connect(d_intervalWheel, SIGNAL(valueChanged(double)), + d_plot, SLOT(setIntervalLength(double)) ); +} + +void MainWindow::start() +{ + d_plot->start(); +} + +double MainWindow::frequency() const +{ + return d_frequencyKnob->value(); +} + +double MainWindow::amplitude() const +{ + return d_amplitudeKnob->value(); +} + +double MainWindow::signalInterval() const +{ + return d_timerWheel->value(); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/mainwindow.h phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/mainwindow.h --- phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/mainwindow.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/mainwindow.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,32 @@ +#include + +class Plot; +class Knob; +class WheelBox; + +class MainWindow : public QWidget +{ + Q_OBJECT + +public: + MainWindow(QWidget * = NULL); + + void start(); + + double amplitude() const; + double frequency() const; + double signalInterval() const; + +Q_SIGNALS: + void amplitudeChanged(double); + void frequencyChanged(double); + void signalIntervalChanged(double); + +private: + Knob *d_frequencyKnob; + Knob *d_amplitudeKnob; + WheelBox *d_timerWheel; + WheelBox *d_intervalWheel; + + Plot *d_plot; +}; diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/oscilloscope.pro phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/oscilloscope.pro --- phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/oscilloscope.pro 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/oscilloscope.pro 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,31 @@ +################################################################ +# Qwt Widget Library +# Copyright (C) 1997 Josef Wilgen +# Copyright (C) 2002 Uwe Rathmann +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the Qwt License, Version 1.0 +################################################################ + +include( $${PWD}/../examples.pri ) + +TARGET = oscilloscope + +HEADERS = \ + signaldata.h \ + plot.h \ + knob.h \ + wheelbox.h \ + samplingthread.h \ + curvedata.h \ + mainwindow.h + +SOURCES = \ + signaldata.cpp \ + plot.cpp \ + knob.cpp \ + wheelbox.cpp \ + samplingthread.cpp \ + curvedata.cpp \ + mainwindow.cpp \ + main.cpp diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/plot.cpp phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/plot.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/plot.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/plot.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,227 @@ +#include "plot.h" +#include "curvedata.h" +#include "signaldata.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include + +Plot::Plot(QWidget *parent): + QwtPlot(parent), + d_paintedPoints(0), + d_interval(0.0, 10.0), + d_timerId(-1) +{ + d_directPainter = new QwtPlotDirectPainter(); + + setAutoReplot(false); + + // The backing store is important, when working with widget + // overlays ( f.e rubberbands for zooming ). + // Here we don't have them and the internal + // backing store of QWidget is good enough. + + canvas()->setPaintAttribute(QwtPlotCanvas::BackingStore, false); + + +#if defined(Q_WS_X11) + // Even if not recommended by TrollTech, Qt::WA_PaintOutsidePaintEvent + // works on X11. This has a nice effect on the performance. + + canvas()->setAttribute(Qt::WA_PaintOutsidePaintEvent, true); + + // Disabling the backing store of Qt improves the performance + // for the direct painter even more, but the canvas becomes + // a native window of the window system, receiving paint events + // for resize and expose operations. Those might be expensive + // when there are many points and the backing store of + // the canvas is disabled. So in this application + // we better don't both backing stores. + + if ( canvas()->testPaintAttribute( QwtPlotCanvas::BackingStore ) ) + { + canvas()->setAttribute(Qt::WA_PaintOnScreen, true); + canvas()->setAttribute(Qt::WA_NoSystemBackground, true); + } + +#endif + + initGradient(); + + plotLayout()->setAlignCanvasToScales(true); + + setAxisTitle(QwtPlot::xBottom, "Time [s]"); + setAxisScale(QwtPlot::xBottom, d_interval.minValue(), d_interval.maxValue()); + setAxisScale(QwtPlot::yLeft, -200.0, 200.0); + + QwtPlotGrid *grid = new QwtPlotGrid(); + grid->setPen(QPen(Qt::gray, 0.0, Qt::DotLine)); + grid->enableX(true); + grid->enableXMin(true); + grid->enableY(true); + grid->enableYMin(false); + grid->attach(this); + + d_origin = new QwtPlotMarker(); + d_origin->setLineStyle(QwtPlotMarker::Cross); + d_origin->setValue(d_interval.minValue() + d_interval.width() / 2.0, 0.0); + d_origin->setLinePen(QPen(Qt::gray, 0.0, Qt::DashLine)); + d_origin->attach(this); + + d_curve = new QwtPlotCurve(); + d_curve->setStyle(QwtPlotCurve::Lines); + d_curve->setPen(QPen(Qt::green)); +#if 1 + d_curve->setRenderHint(QwtPlotItem::RenderAntialiased, true); +#endif +#if 1 + d_curve->setPaintAttribute(QwtPlotCurve::ClipPolygons, false); +#endif + d_curve->setData(new CurveData()); + d_curve->attach(this); +} + +Plot::~Plot() +{ + delete d_directPainter; +} + +void Plot::initGradient() +{ + QPalette pal = canvas()->palette(); + +#if QT_VERSION >= 0x040400 + QLinearGradient gradient( 0.0, 0.0, 1.0, 0.0 ); + gradient.setCoordinateMode( QGradient::StretchToDeviceMode ); + gradient.setColorAt(0.0, QColor( 0, 49, 110 ) ); + gradient.setColorAt(1.0, QColor( 0, 87, 174 ) ); + + pal.setBrush(QPalette::Window, QBrush(gradient)); +#else + pal.setBrush(QPalette::Window, QBrush( color )); +#endif + + canvas()->setPalette(pal); +} + +void Plot::start() +{ + d_clock.start(); + d_timerId = startTimer(10); +} + +void Plot::replot() +{ + CurveData *data = (CurveData *)d_curve->data(); + data->values().lock(); + + QwtPlot::replot(); + d_paintedPoints = data->size(); + + data->values().unlock(); +} + +void Plot::setIntervalLength(double interval) +{ + if ( interval > 0.0 && interval != d_interval.width() ) + { + d_interval.setMaxValue(d_interval.minValue() + interval); + setAxisScale(QwtPlot::xBottom, + d_interval.minValue(), d_interval.maxValue()); + + replot(); + } +} + +void Plot::updateCurve() +{ + CurveData *data = (CurveData *)d_curve->data(); + data->values().lock(); + + const int numPoints = data->size(); + if ( numPoints > d_paintedPoints ) + { + const bool doClip = !canvas()->testAttribute( Qt::WA_PaintOnScreen ); + if ( doClip ) + { + /* + Depending on the platform setting a clip might be an important + performance issue. F.e. for Qt Embedded this reduces the + part of the backing store that has to be copied out - maybe + to an unaccelerated frame buffer device. + */ + + const QwtScaleMap xMap = canvasMap( d_curve->xAxis() ); + const QwtScaleMap yMap = canvasMap( d_curve->yAxis() ); + + QRectF br = qwtBoundingRect( *data, + d_paintedPoints - 1, numPoints - 1 ); + + const QRect clipRect = QwtScaleMap::transform( xMap, yMap, br ).toRect(); + d_directPainter->setClipRegion( clipRect ); + } + + d_directPainter->drawSeries(d_curve, + d_paintedPoints - 1, numPoints - 1); + d_paintedPoints = numPoints; + } + + data->values().unlock(); +} + +void Plot::incrementInterval() +{ + d_interval = QwtInterval(d_interval.maxValue(), + d_interval.maxValue() + d_interval.width()); + + CurveData *data = (CurveData *)d_curve->data(); + data->values().clearStaleValues(d_interval.minValue()); + + // To avoid, that the grid is jumping, we disable + // the autocalculation of the ticks and shift them + // manually instead. + + QwtScaleDiv scaleDiv = *axisScaleDiv(QwtPlot::xBottom); + scaleDiv.setInterval(d_interval); + + for ( int i = 0; i < QwtScaleDiv::NTickTypes; i++ ) + { + QList ticks = scaleDiv.ticks(i); + for ( int j = 0; j < ticks.size(); j++ ) + ticks[j] += d_interval.width(); + scaleDiv.setTicks(i, ticks); + } + setAxisScaleDiv(QwtPlot::xBottom, scaleDiv); + + d_origin->setValue(d_interval.minValue() + d_interval.width() / 2.0, 0.0); + + d_paintedPoints = 0; + replot(); +} + +void Plot::timerEvent(QTimerEvent *event) +{ + if ( event->timerId() == d_timerId ) + { + updateCurve(); + + const double elapsed = d_clock.elapsed() / 1000.0; + if ( elapsed > d_interval.maxValue() ) + incrementInterval(); + + return; + } + + QwtPlot::timerEvent(event); +} + +void Plot::resizeEvent(QResizeEvent *event) +{ + d_directPainter->reset(); + QwtPlot::resizeEvent(event); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/plot.h phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/plot.h --- phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/plot.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/plot.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,43 @@ +#include +#include +#include + +class QwtPlotCurve; +class QwtPlotMarker; +class QwtPlotDirectPainter; + +class Plot: public QwtPlot +{ + Q_OBJECT + +public: + Plot(QWidget * = NULL); + virtual ~Plot(); + + void start(); + virtual void replot(); + +public Q_SLOTS: + void setIntervalLength(double); + +protected: + virtual void resizeEvent(QResizeEvent *); + virtual void timerEvent(QTimerEvent *); + +private: + void initGradient(); + + void updateCurve(); + void incrementInterval(); + + QwtPlotMarker *d_origin; + QwtPlotCurve *d_curve; + int d_paintedPoints; + + QwtPlotDirectPainter *d_directPainter; + + QwtInterval d_interval; + int d_timerId; + + QwtSystemClock d_clock; +}; diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/samplingthread.cpp phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/samplingthread.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/samplingthread.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/samplingthread.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,54 @@ +#include "samplingthread.h" +#include "signaldata.h" +#include +#include + +#if QT_VERSION < 0x040600 +#define qFastSin(x) ::sin(x) +#endif + +SamplingThread::SamplingThread(QObject *parent): + QwtSamplingThread(parent), + d_frequency(5.0), + d_amplitude(20.0) +{ +} + +void SamplingThread::setFrequency(double frequency) +{ + d_frequency = frequency; +} + +double SamplingThread::frequency() const +{ + return d_frequency; +} + +void SamplingThread::setAmplitude(double amplitude) +{ + d_amplitude = amplitude; +} + +double SamplingThread::amplitude() const +{ + return d_amplitude; +} + +void SamplingThread::sample(double elapsed) +{ + if ( d_frequency > 0.0 ) + { + const QPointF s(elapsed, value(elapsed)); + SignalData::instance().append(s); + } +} + +double SamplingThread::value(double timeStamp) const +{ + const double period = 1.0 / d_frequency; + + const double x = ::fmod(timeStamp, period); + const double v = d_amplitude * qFastSin(x / period * 2 * M_PI); + + return v; +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/samplingthread.h phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/samplingthread.h --- phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/samplingthread.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/samplingthread.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,25 @@ +#include + +class SamplingThread: public QwtSamplingThread +{ + Q_OBJECT + +public: + SamplingThread(QObject *parent = NULL); + + double frequency() const; + double amplitude() const; + +public Q_SLOTS: + void setAmplitude(double); + void setFrequency(double); + +protected: + virtual void sample(double elapsed); + +private: + virtual double value(double timeStamp) const; + + double d_frequency; + double d_amplitude; +}; diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/signaldata.cpp phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/signaldata.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/signaldata.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/signaldata.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,133 @@ +#include "signaldata.h" +#include +#include +#include + +class SignalData::PrivateData +{ +public: + PrivateData(): + boundingRect(1.0, 1.0, -2.0, -2.0) // invalid + { + values.reserve(1000); + } + + inline void append(const QPointF &sample) + { + values.append(sample); + + // adjust the bounding rectangle + + if ( boundingRect.width() < 0 || boundingRect.height() < 0 ) + { + boundingRect.setRect(sample.x(), sample.y(), 0.0, 0.0); + } + else + { + boundingRect.setRight(sample.x()); + + if ( sample.y() > boundingRect.bottom() ) + boundingRect.setBottom(sample.y()); + + if ( sample.y() < boundingRect.top() ) + boundingRect.setTop(sample.y()); + } + } + + QReadWriteLock lock; + + QVector values; + QRectF boundingRect; + + QMutex mutex; // protecting pendingValues + QVector pendingValues; +}; + +SignalData::SignalData() +{ + d_data = new PrivateData(); +} + +SignalData::~SignalData() +{ + delete d_data; +} + +int SignalData::size() const +{ + return d_data->values.size(); +} + +QPointF SignalData::value(int index) const +{ + return d_data->values[index]; +} + +QRectF SignalData::boundingRect() const +{ + return d_data->boundingRect; +} + +void SignalData::lock() +{ + d_data->lock.lockForRead(); +} + +void SignalData::unlock() +{ + d_data->lock.unlock(); +} + +void SignalData::append(const QPointF &sample) +{ + d_data->mutex.lock(); + d_data->pendingValues += sample; + + const bool isLocked = d_data->lock.tryLockForWrite(); + if ( isLocked ) + { + const int numValues = d_data->pendingValues.size(); + const QPointF *pendingValues = d_data->pendingValues.data(); + + for ( int i = 0; i < numValues; i++ ) + d_data->append(pendingValues[i]); + + d_data->pendingValues.clear(); + + d_data->lock.unlock(); + } + + d_data->mutex.unlock(); +} + +void SignalData::clearStaleValues(double limit) +{ + d_data->lock.lockForWrite(); + + d_data->boundingRect = QRectF(1.0, 1.0, -2.0, -2.0); // invalid + + const QVector values = d_data->values; + d_data->values.clear(); + d_data->values.reserve(values.size()); + + int index; + for ( index = values.size() - 1; index >= 0; index-- ) + { + if ( values[index].x() < limit ) + break; + } + + if ( index > 0 ) + d_data->append(values[index++]); + + while ( index < values.size() - 1 ) + d_data->append(values[index++]); + + d_data->lock.unlock(); +} + +SignalData &SignalData::instance() +{ + static SignalData valueVector; + return valueVector; +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/signaldata.h phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/signaldata.h --- phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/signaldata.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/signaldata.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,33 @@ +#ifndef _SIGNAL_DATA_H_ +#define _SIGNAL_DATA_H_ 1 + +#include + +class SignalData +{ +public: + static SignalData &instance(); + + void append(const QPointF &pos); + void clearStaleValues(double min); + + int size() const; + QPointF value(int index) const; + + QRectF boundingRect() const; + + void lock(); + void unlock(); + +private: + SignalData(); + SignalData(const SignalData &); + SignalData &operator=( const SignalData & ); + + virtual ~SignalData(); + + class PrivateData; + PrivateData *d_data; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/wheelbox.cpp phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/wheelbox.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/wheelbox.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/wheelbox.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,90 @@ +#include "wheelbox.h" +#include +#include +#include +#include +#include +#include + +class Wheel: public QwtWheel +{ +public: + Wheel(WheelBox *parent): + QwtWheel(parent) + { + setFocusPolicy(Qt::WheelFocus); + parent->installEventFilter(this); + } + + virtual bool eventFilter(QObject *object, QEvent *ev) + { + if ( ev->type() == QEvent::Wheel ) + { + QWheelEvent *we = (QWheelEvent *)ev; + + QWheelEvent wheelEvent(QPoint(5, 5), we->delta(), + we->buttons(), we->modifiers(), + we->orientation()); + + QApplication::sendEvent(this, &wheelEvent); + return true; + } + return QwtWheel::eventFilter(object, ev); + } +}; + +WheelBox::WheelBox(const QString &title, + double min, double max, double stepSize, QWidget *parent): + QWidget(parent) +{ + + d_number = new QLCDNumber(this); + d_number->setSegmentStyle(QLCDNumber::Filled); + d_number->setAutoFillBackground(true); + d_number->setFixedHeight(d_number->sizeHint().height() * 2 ); + d_number->setFocusPolicy(Qt::WheelFocus); + + QPalette pal(Qt::black); + pal.setColor(QPalette::WindowText, Qt::green); + d_number->setPalette(pal); + + d_wheel = new Wheel(this); + d_wheel->setOrientation(Qt::Vertical); + d_wheel->setRange(min, max, stepSize); + d_wheel->setFixedSize( + qRound(d_number->height() / 2.5), d_number->height()); + + d_number->setFocusProxy(d_wheel); + + QFont font("Helvetica", 10); + font.setBold(true); + + d_label = new QLabel(title, this); + d_label->setFont(font); + + QHBoxLayout *hLayout = new QHBoxLayout; + hLayout->setContentsMargins(0, 0, 0, 0); + hLayout->setSpacing(2); + hLayout->addWidget(d_number, 10); + hLayout->addWidget(d_wheel); + + QVBoxLayout *vLayout = new QVBoxLayout(this); + vLayout->addLayout(hLayout, 10); + vLayout->addWidget(d_label, 0, Qt::AlignTop | Qt::AlignHCenter); + + connect(d_wheel, SIGNAL(valueChanged(double)), + d_number, SLOT(display(double))); + connect(d_wheel, SIGNAL(valueChanged(double)), + this, SIGNAL(valueChanged(double))); +} + +void WheelBox::setValue(double value) +{ + d_wheel->setValue(value); + d_number->display(value); +} + +double WheelBox::value() const +{ + return d_wheel->value(); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/wheelbox.h phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/wheelbox.h --- phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/wheelbox.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/oscilloscope/wheelbox.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,36 @@ +#ifndef _WHEELBOX_H_ +#define _WHEELBOX_H_ + +#include + +class QwtWheel; +class QLabel; +class QLCDNumber; + +class WheelBox: public QWidget +{ + Q_OBJECT + +public: + WheelBox(const QString &title, + double min, double max, double stepSize, + QWidget *parent = NULL); + + void setUnit(const QString &); + QString unit() const; + + void setValue(double value); + double value() const; + +Q_SIGNALS: + double valueChanged(double); + +private: + QLCDNumber *d_number; + QwtWheel *d_wheel; + QLabel *d_label; + + QString d_unit; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/plotmatrix/main.cpp phyxcalc-3rev200/qwt-6.0.0/examples/plotmatrix/main.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/plotmatrix/main.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/plotmatrix/main.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,59 @@ +#include +#include +#include +#include "plotmatrix.h" + +class MainWindow: public PlotMatrix +{ +public: + MainWindow(); +}; + +MainWindow::MainWindow(): + PlotMatrix(3, 4) +{ + enableAxis(QwtPlot::yLeft); + enableAxis(QwtPlot::yRight); + enableAxis(QwtPlot::xBottom); + + for ( int row = 0; row < numRows(); row++ ) + { + const double v = qPow(10.0, row); + setAxisScale(QwtPlot::yLeft, row, -v, v); + setAxisScale(QwtPlot::yRight, row, -v, v); + } + + for ( int col = 0; col < numColumns(); col++ ) + { + const double v = qPow(10.0, col); + setAxisScale(QwtPlot::xBottom, col, -v, v); + setAxisScale(QwtPlot::xTop, col, -v, v); + } + + for ( int row = 0; row < numRows(); row++ ) + { + for ( int col = 0; col < numColumns(); col++ ) + { + QwtPlot *plt = plot(row, col); + plt->setCanvasBackground(QColor(Qt::darkBlue)); + + QwtPlotGrid *grid = new QwtPlotGrid(); + grid->enableXMin(true); + grid->setMajPen(QPen(Qt::white, 0, Qt::DotLine)); + grid->setMinPen(QPen(Qt::gray, 0 , Qt::DotLine)); + grid->attach(plt); + } + } +} + +int main(int argc, char **argv) +{ + QApplication a(argc, argv); + + MainWindow mainWindow; + + mainWindow.resize(800,600); + mainWindow.show(); + + return a.exec(); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/plotmatrix/plotmatrix.cpp phyxcalc-3rev200/qwt-6.0.0/examples/plotmatrix/plotmatrix.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/plotmatrix/plotmatrix.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/plotmatrix/plotmatrix.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,293 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +// vim: expandtab + +#include +#include +#include +#include +#include +#include "plotmatrix.h" + +class PlotMatrix::PrivateData +{ +public: + PrivateData(): + inScaleSync(false) + { + isAxisEnabled[QwtPlot::xBottom] = true; + isAxisEnabled[QwtPlot::xTop] = false; + isAxisEnabled[QwtPlot::yLeft] = true; + isAxisEnabled[QwtPlot::yRight] = false; + } + + bool isAxisEnabled[QwtPlot::axisCnt]; + QVector plotWidgets; + mutable bool inScaleSync; +}; + +PlotMatrix::PlotMatrix( int numRows, int numColumns, QWidget *parent): + QFrame(parent) +{ + d_data = new PrivateData(); + d_data->plotWidgets.resize(numRows * numColumns); + + QGridLayout *layout = new QGridLayout(this); + for ( int row = 0; row < numRows; row++ ) + { + for ( int col = 0; col < numColumns; col++ ) + { + QwtPlot *plot = new QwtPlot(this); + layout->addWidget(plot, row, col); + + for ( int axis = 0; axis < QwtPlot::axisCnt; axis++ ) + { + connect(plot->axisWidget(axis), + SIGNAL(scaleDivChanged()), SLOT(scaleDivChanged()) ); + } + d_data->plotWidgets[row * numColumns + col] = plot; + } + } + + updateLayout(); +} + +PlotMatrix::~PlotMatrix() +{ + delete d_data; +} + +int PlotMatrix::numRows() const +{ + const QGridLayout *l = qobject_cast(layout()); + if ( l ) + return l->rowCount(); + + return 0; +} + +int PlotMatrix::numColumns() const +{ + const QGridLayout *l = qobject_cast(layout()); + if ( l ) + return l->columnCount(); + return 0; +} + +QwtPlot* PlotMatrix::plot(int row, int column) +{ + const int index = row * numColumns() + column; + if ( index < (int)d_data->plotWidgets.size() ) + return d_data->plotWidgets[index]; + + return NULL; +} + +const QwtPlot* PlotMatrix::plot(int row, int column) const +{ + const int index = row * numColumns() + column; + if ( index < (int)d_data->plotWidgets.size() ) + return d_data->plotWidgets[index]; + + return NULL; +} + +void PlotMatrix::enableAxis(int axis, bool tf) +{ + if ( axis >= 0 && axis < QwtPlot::axisCnt ) + { + if ( tf != d_data->isAxisEnabled[axis] ) + { + d_data->isAxisEnabled[axis] = tf; + updateLayout(); + } + } +} + +bool PlotMatrix::axisEnabled(int axis) const +{ + if ( axis >= 0 && axis < QwtPlot::axisCnt ) + return d_data->isAxisEnabled[axis]; + + return false; +} + +void PlotMatrix::setAxisScale(int axis, int rowOrColumn, + double min, double max, double step) +{ + int row = 0; + int col = 0; + + if ( axis == QwtPlot::xBottom || axis == QwtPlot::xTop ) + col = rowOrColumn; + else + row = rowOrColumn; + + QwtPlot *plt = plot(row, col); + if ( plt ) + { + plt->setAxisScale(axis, min, max, step); + plt->updateAxes(); + } +} + +void PlotMatrix::scaleDivChanged() +{ + if ( d_data->inScaleSync ) + return; + + d_data->inScaleSync = true; + + QwtPlot *plt = NULL; + int axisId = -1; + int rowOrColumn = -1; + + // find the changed axis + for ( int row = 0; row < numRows(); row++ ) + { + for ( int col = 0; col < numColumns(); col++ ) + { + QwtPlot *p = plot(row, col); + if ( p ) + { + for ( int axis = 0; axis < QwtPlot::axisCnt; axis++ ) + { + if ( p->axisWidget(axis) == sender() ) + { + plt = p; + axisId = axis; + if ( axisId == QwtPlot::xBottom || axisId == QwtPlot::xTop ) + rowOrColumn = col; + else + rowOrColumn = row; + + } + } + } + } + } + + if ( plt ) + { + + // synchronize the axes + if ( axisId == QwtPlot::xBottom || axisId == QwtPlot::xTop ) + { + for ( int row = 0; row < numRows(); row++ ) + { + QwtPlot *p = plot(row, rowOrColumn); + if ( p != plt ) + p->setAxisScaleDiv(axisId, *plt->axisScaleDiv(axisId)); + } + } + else + { + for ( int col = 0; col < numColumns(); col++ ) + { + QwtPlot *p = plot(rowOrColumn, col); + if ( p != plt ) + p->setAxisScaleDiv(axisId, *plt->axisScaleDiv(axisId)); + } + } + + updateLayout(); + } + + d_data->inScaleSync = false; +} + +void PlotMatrix::updateLayout() +{ + for ( int row = 0; row < numRows(); row++ ) + { + for ( int col = 0; col < numColumns(); col++ ) + { + QwtPlot *p = plot(row, col); + if ( p ) + { + bool showAxis[QwtPlot::axisCnt]; + showAxis[QwtPlot::xBottom] = + axisEnabled(QwtPlot::xBottom) && row == numRows() - 1; + showAxis[QwtPlot::xTop] = + axisEnabled(QwtPlot::xTop) && row == 0; + showAxis[QwtPlot::yLeft] = + axisEnabled(QwtPlot::yLeft) && col == 0; + showAxis[QwtPlot::yRight] = + axisEnabled(QwtPlot::yRight) && col == numColumns() - 1; + + for ( int axis = 0; axis < QwtPlot::axisCnt; axis++ ) + { + if ( axis == QwtPlot::xBottom || axis == QwtPlot::xTop ) + p->enableAxis(axis, showAxis[axis]); + else + { + p->enableAxis(axis, true); + + QwtScaleDraw *sd = p->axisScaleDraw(axis); + sd->enableComponent( + QwtScaleDraw::Backbone, showAxis[axis]); + sd->enableComponent( + QwtScaleDraw::Ticks, showAxis[axis]); + sd->enableComponent( + QwtScaleDraw::Labels, showAxis[axis]); + } + } + } + } + } + + for ( int col = 0; col < numColumns(); col++ ) + { + alignVAxes(col, QwtPlot::yLeft); + alignVAxes(col, QwtPlot::yRight); + } + + for ( int row = 0; row < numRows(); row++ ) + { + for ( int col = 0; col < numColumns(); col++ ) + { + QwtPlot *p = plot(row, col); + if ( p ) + p->replot(); + } + } +} + +void PlotMatrix::alignVAxes(int col, int axis) +{ + if ( axis != QwtPlot::yLeft && axis != QwtPlot::yRight ) + return; + + int maxExtent = 0; + for ( int row = 0; row < numRows(); row++ ) + { + QwtPlot *p = plot(row, col); + if ( p ) + { + QwtScaleWidget *scaleWidget = p->axisWidget(axis); + + QwtScaleDraw *sd = scaleWidget->scaleDraw(); + sd->setMinimumExtent(0); + + const int extent = sd->extent( scaleWidget->font() ); + if ( extent > maxExtent ) + maxExtent = extent; + } + } + for ( int row = 0; row < numRows(); row++ ) + { + QwtPlot *p = plot(row, col); + if ( p ) + { + QwtScaleWidget *scaleWidget = p->axisWidget(axis); + scaleWidget->scaleDraw()->setMinimumExtent(maxExtent); + } + } +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/plotmatrix/plotmatrix.h phyxcalc-3rev200/qwt-6.0.0/examples/plotmatrix/plotmatrix.h --- phyxcalc-3rev200/qwt-6.0.0/examples/plotmatrix/plotmatrix.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/plotmatrix/plotmatrix.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,38 @@ +#ifndef _PLOT_MATRIX_H_ +#define _PLOT_MATRIX_H_ + +#include +#include + +class PlotMatrix: public QFrame +{ + Q_OBJECT + +public: + PlotMatrix( int rows, int columns, QWidget * parent = NULL); + virtual ~PlotMatrix(); + + int numRows() const; + int numColumns() const; + + QwtPlot* plot(int row, int column); + const QwtPlot* plot(int row, int column) const; + + void enableAxis(int axisId, bool tf = true); + bool axisEnabled(int axisId) const; + + void setAxisScale(int axisId, int rowOrColumn, + double min, double max, double step = 0); + +private Q_SLOTS: + void scaleDivChanged(); + +private: + void updateLayout(); + void alignVAxes(int col, int axis); + + class PrivateData; + PrivateData *d_data; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/plotmatrix/plotmatrix.pro phyxcalc-3rev200/qwt-6.0.0/examples/plotmatrix/plotmatrix.pro --- phyxcalc-3rev200/qwt-6.0.0/examples/plotmatrix/plotmatrix.pro 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/plotmatrix/plotmatrix.pro 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,19 @@ +################################################################ +# Qwt Widget Library +# Copyright (C) 1997 Josef Wilgen +# Copyright (C) 2002 Uwe Rathmann +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the Qwt License, Version 1.0 +################################################################ + +include( $${PWD}/../examples.pri ) + +TARGET = plotmatrix + +HEADERS = \ + plotmatrix.h + +SOURCES = \ + plotmatrix.cpp \ + main.cpp diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/radio/ampfrm.cpp phyxcalc-3rev200/qwt-6.0.0/examples/radio/ampfrm.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/radio/ampfrm.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/radio/ampfrm.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,201 @@ +#include "ampfrm.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#if QT_VERSION < 0x040600 +#define qFastSin(x) ::sin(x) +#define qFastCos(x) ::cos(x) +#endif + +class Knob: public QWidget +{ +public: + Knob(const QString &title, double min, double max, QWidget *parent): + QWidget(parent) + { + d_knob = new QwtKnob(this); + d_knob->setRange(min, max, 0,1); + d_knob->setScaleMaxMajor(10); + + d_knob->setKnobStyle(QwtKnob::Raised); + d_knob->setKnobWidth(50); + d_knob->setBorderWidth(2); + d_knob->setMarkerStyle(QwtKnob::Notch); + d_knob->setMarkerSize( 8 ); + + d_knob->scaleDraw()->setTickLength( QwtScaleDiv::MinorTick, 4 ); + d_knob->scaleDraw()->setTickLength( QwtScaleDiv::MediumTick, 4 ); + d_knob->scaleDraw()->setTickLength( QwtScaleDiv::MajorTick, 6 ); + + d_label = new QLabel(title, this); + d_label->setAlignment(Qt::AlignTop | Qt::AlignHCenter); + + setSizePolicy(QSizePolicy::MinimumExpanding, + QSizePolicy::MinimumExpanding); + } + + virtual QSize sizeHint() const + { + QSize sz1 = d_knob->sizeHint(); + QSize sz2 = d_label->sizeHint(); + + const int w = qMax(sz1.width(), sz2.width()); + const int h = sz1.height() + sz2.height(); + + int off = d_knob->scaleDraw()->extent(d_knob->font()); + off -= 10; // spacing + + return QSize(w, h - off); + } + + void setValue( double value ) + { + d_knob->setValue( value ); + } + + double value() const + { + return d_knob->value(); + } + +protected: + virtual void resizeEvent(QResizeEvent *e) + { + const QSize sz = e->size(); + + int h = d_label->sizeHint().height(); + + d_label->setGeometry(0, sz.height() - h, + sz.width(), h); + + h = d_knob->sizeHint().height(); + int off = d_knob->scaleDraw()->extent(d_knob->font()); + off -= 10; // spacing + + d_knob->setGeometry(0, d_label->pos().y() - h + off, + sz.width(), h); + } + +private: + QwtKnob *d_knob; + QLabel *d_label; +}; + +class Thermo: public QWidget +{ +public: + Thermo(const QString &title, QWidget *parent): + QWidget(parent) + { + d_thermo = new QwtThermo( this ); + d_thermo->setPipeWidth( 6 ); + d_thermo->setRange( -40, 10 ); + d_thermo->setFillBrush( Qt::green ); + d_thermo->setAlarmBrush( Qt::red ); + d_thermo->setAlarmLevel( 0.0 ); + d_thermo->setAlarmEnabled( true ); + + QLabel *label = new QLabel(title, this); + label->setAlignment(Qt::AlignTop | Qt::AlignLeft); + + QVBoxLayout *layout = new QVBoxLayout(this); + layout->setMargin(0); + layout->setSpacing(0); + layout->addWidget(d_thermo, 10); + layout->addWidget(label); + } + + void setValue(double value) + { + d_thermo->setValue(value); + } + +private: + QwtThermo *d_thermo; +}; + +AmpFrame::AmpFrame(QWidget *p): + QFrame(p) +{ + d_knbVolume = new Knob("Volume", 0.0, 10.0, this); + d_knbBalance = new Knob("Balance", -10.0, 10.0, this); + d_knbTreble = new Knob("Treble", -10.0, 10.0, this); + d_knbBass = new Knob("Bass", -10.0, 10.0, this); + + d_thmLeft = new Thermo("Left [dB]", this); + d_thmRight = new Thermo("Right [dB]", this); + + QHBoxLayout *layout = new QHBoxLayout(this); + layout->setSpacing(0); + layout->setMargin(10); + layout->addWidget(d_knbVolume); + layout->addWidget(d_knbBalance); + layout->addWidget(d_knbTreble); + layout->addWidget(d_knbBass); + layout->addSpacing(20); + layout->addStretch(10); + layout->addWidget(d_thmLeft); + layout->addSpacing(10); + layout->addWidget(d_thmRight); + + d_knbVolume->setValue( 7.0 ); + (void)startTimer(50); +} + +void AmpFrame::timerEvent(QTimerEvent *) +{ + static double phs = 0; + + // + // This amplifier generates its own input signal... + // + + const double sig_bass = (1.0 + 0.1 * d_knbBass->value()) + * qFastSin(13.0 * phs); + const double sig_mid_l = qFastSin(17.0 * phs); + const double sig_mid_r = qFastCos(17.5 * phs); + const double sig_trbl_l = 0.5 * (1.0 + 0.1 * d_knbTreble->value()) + * qFastSin(35.0 * phs); + const double sig_trbl_r = 0.5 * (1.0 + 0.1 * d_knbTreble->value()) + * qFastSin(34.0 * phs); + + double sig_l = 0.05 * d_master * d_knbVolume->value() + * qwtSqr(sig_bass + sig_mid_l + sig_trbl_l); + double sig_r = 0.05 * d_master * d_knbVolume->value() + * qwtSqr(sig_bass + sig_mid_r + sig_trbl_r); + + double balance = 0.1 * d_knbBalance->value(); + if (balance > 0) + sig_l *= (1.0 - balance); + else + sig_r *= (1.0 + balance); + + if (sig_l > 0.01) + sig_l = 20.0 * log10(sig_l); + else + sig_l = -40.0; + + if (sig_r > 0.01) + sig_r = 20.0 * log10(sig_r); + else + sig_r = - 40.0; + + d_thmLeft->setValue(sig_l); + d_thmRight->setValue(sig_r); + + phs += M_PI / 100; + if (phs > M_PI) + phs = 0; +} + +void AmpFrame::setMaster(double v) +{ + d_master = v; +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/radio/ampfrm.h phyxcalc-3rev200/qwt-6.0.0/examples/radio/ampfrm.h --- phyxcalc-3rev200/qwt-6.0.0/examples/radio/ampfrm.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/radio/ampfrm.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,29 @@ +#include + +class Knob; +class Thermo; + +class AmpFrame : public QFrame +{ + Q_OBJECT +public: + AmpFrame(QWidget *); + +public Q_SLOTS: + void setMaster(double v); + +protected: + void timerEvent(QTimerEvent *); + +private: + Knob *d_knbVolume; + Knob *d_knbBalance; + Knob *d_knbTreble; + Knob *d_knbBass; + Thermo *d_thmLeft; + Thermo *d_thmRight; + double d_master; +}; + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/radio/mainwindow.cpp phyxcalc-3rev200/qwt-6.0.0/examples/radio/mainwindow.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/radio/mainwindow.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/radio/mainwindow.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,60 @@ +#include +#include "tunerfrm.h" +#include "ampfrm.h" +#include "mainwindow.h" + +MainWindow::MainWindow(): + QWidget() +{ + TunerFrame *frmTuner = new TunerFrame(this); + frmTuner->setFrameStyle(QFrame::Panel|QFrame::Raised); + + AmpFrame *frmAmp = new AmpFrame(this); + frmAmp->setFrameStyle(QFrame::Panel|QFrame::Raised); + + QVBoxLayout *layout = new QVBoxLayout(this); + layout->setMargin(0); + layout->setSpacing(0); + layout->addWidget(frmTuner); + layout->addWidget(frmAmp); + + connect(frmTuner, SIGNAL(fieldChanged(double)), + frmAmp, SLOT(setMaster(double))); + + frmTuner->setFreq(90.0); + + setPalette( QPalette( QColor( 192, 192, 192 ) ) ); + updateGradient(); +} + +void MainWindow::resizeEvent( QResizeEvent * ) +{ +#ifdef Q_WS_X11 + updateGradient(); +#endif +} + +void MainWindow::updateGradient() +{ + QPalette pal = palette(); + + const QColor buttonColor = pal.color( QPalette::Button ); + const QColor lightColor = pal.color( QPalette::Light ); + const QColor midLightColor = pal.color( QPalette::Midlight ); + +#ifdef Q_WS_X11 + // Qt 4.7.1: QGradient::StretchToDeviceMode is buggy on X11 + + QLinearGradient gradient( rect().topLeft(), rect().topRight() ); +#else + QLinearGradient gradient( 0, 0, 1, 0 ); + gradient.setCoordinateMode( QGradient::StretchToDeviceMode ); +#endif + + gradient.setColorAt( 0.0, midLightColor ); + gradient.setColorAt( 0.7, buttonColor ); + gradient.setColorAt( 1.0, buttonColor ); + + pal.setBrush( QPalette::Window, gradient ); + setPalette( pal ); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/radio/mainwindow.h phyxcalc-3rev200/qwt-6.0.0/examples/radio/mainwindow.h --- phyxcalc-3rev200/qwt-6.0.0/examples/radio/mainwindow.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/radio/mainwindow.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,15 @@ +#include + +class MainWindow : public QWidget +{ +public: + MainWindow(); + +protected: + virtual void resizeEvent( QResizeEvent * ); + +private: + void updateGradient(); +}; + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/radio/radio.cpp phyxcalc-3rev200/qwt-6.0.0/examples/radio/radio.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/radio/radio.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/radio/radio.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,12 @@ +#include +#include "mainwindow.h" + +int main (int argc, char **argv) +{ + QApplication a(argc, argv); + + MainWindow w; + w.show(); + + return a.exec(); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/radio/radio.pro phyxcalc-3rev200/qwt-6.0.0/examples/radio/radio.pro --- phyxcalc-3rev200/qwt-6.0.0/examples/radio/radio.pro 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/radio/radio.pro 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,23 @@ +################################################################ +# Qwt Widget Library +# Copyright (C) 1997 Josef Wilgen +# Copyright (C) 2002 Uwe Rathmann +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the Qwt License, Version 1.0 +################################################################ + +include( $${PWD}/../examples.pri ) + +TARGET = radio + +HEADERS = \ + mainwindow.h \ + ampfrm.h \ + tunerfrm.h + +SOURCES = \ + mainwindow.cpp \ + ampfrm.cpp \ + tunerfrm.cpp \ + radio.cpp diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/radio/tunerfrm.cpp phyxcalc-3rev200/qwt-6.0.0/examples/radio/tunerfrm.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/radio/tunerfrm.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/radio/tunerfrm.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,101 @@ +#include +#include +#include +#include +#include +#include +#include "tunerfrm.h" + +#if QT_VERSION < 0x040600 +#define qFastSin(x) ::sin(x) +#define qFastCos(x) ::cos(x) +#endif + +class TuningThermo: public QWidget +{ +public: + TuningThermo(QWidget *parent): + QWidget(parent) + { + d_thermo = new QwtThermo(this); + d_thermo->setOrientation(Qt::Horizontal, QwtThermo::NoScale); + d_thermo->setRange(0.0, 1.0); + d_thermo->setFillBrush( Qt::green ); + + QLabel *label = new QLabel("Tuning", this); + label->setAlignment(Qt::AlignCenter); + + QVBoxLayout *layout = new QVBoxLayout(this); + layout->setMargin(0); + layout->addWidget(d_thermo); + layout->addWidget(label); + + setFixedWidth(3 * label->sizeHint().width()); + } + + void setValue(double value) + { + d_thermo->setValue(value); + } + +private: + QwtThermo *d_thermo; +}; + +TunerFrame::TunerFrame(QWidget *parent): + QFrame(parent) +{ + d_sliderFrequency = new QwtSlider(this, Qt::Horizontal, QwtSlider::TopScale); + d_sliderFrequency->setRange(87.5, 108, 0.01, 10); + d_sliderFrequency->setScaleMaxMinor(5); + d_sliderFrequency->setScaleMaxMajor(12); + d_sliderFrequency->setHandleSize(80, 20 ); + d_sliderFrequency->setBorderWidth(1); + + d_thermoTune = new TuningThermo(this); + + d_wheelFrequency = new QwtWheel(this); + d_wheelFrequency->setMass(0.5); + d_wheelFrequency->setRange(87.5, 108, 0.01); + d_wheelFrequency->setTotalAngle(3600.0); + d_wheelFrequency->setFixedHeight(30); + + + connect(d_wheelFrequency, SIGNAL(valueChanged(double)), SLOT(adjustFreq(double))); + connect(d_sliderFrequency, SIGNAL(valueChanged(double)), SLOT(adjustFreq(double))); + + QVBoxLayout *mainLayout = new QVBoxLayout(this); + mainLayout->setMargin(10); + mainLayout->setSpacing(5); + mainLayout->addWidget(d_sliderFrequency); + + QHBoxLayout *hLayout = new QHBoxLayout; + hLayout->setMargin(0); + hLayout->addWidget(d_thermoTune, 0); + hLayout->addStretch(5); + hLayout->addWidget(d_wheelFrequency, 2); + + mainLayout->addLayout(hLayout); +} + +void TunerFrame::adjustFreq(double frq) +{ + const double factor = 13.0 / (108 - 87.5); + + const double x = (frq - 87.5) * factor; + const double field = qwtSqr(qFastSin(x) * qFastCos(4.0 * x)); + + d_thermoTune->setValue(field); + + if (d_sliderFrequency->value() != frq) + d_sliderFrequency->setValue(frq); + if (d_wheelFrequency->value() != frq) + d_wheelFrequency->setValue(frq); + + Q_EMIT fieldChanged(field); +} + +void TunerFrame::setFreq(double frq) +{ + d_wheelFrequency->setValue(frq); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/radio/tunerfrm.h phyxcalc-3rev200/qwt-6.0.0/examples/radio/tunerfrm.h --- phyxcalc-3rev200/qwt-6.0.0/examples/radio/tunerfrm.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/radio/tunerfrm.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,30 @@ +#include + +class QwtWheel; +class QwtSlider; +class TuningThermo; + +class TunerFrame : public QFrame +{ + Q_OBJECT +public: + TunerFrame(QWidget *p); + +Q_SIGNALS: + void fieldChanged(double f); + +public Q_SLOTS: + void setFreq(double frq); + +private Q_SLOTS: + void adjustFreq(double frq); + +private: + QwtWheel *d_wheelFrequency; + TuningThermo *d_thermoTune; + QwtSlider *d_sliderFrequency; +}; + + + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/rasterview/main.cpp phyxcalc-3rev200/qwt-6.0.0/examples/rasterview/main.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/rasterview/main.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/rasterview/main.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,62 @@ +#include +#include +#include +#include +#include +#include +#include +#include "plot.h" + +class MainWindow: public QMainWindow +{ +public: + MainWindow(QWidget * = NULL); +}; + +MainWindow::MainWindow(QWidget *parent): + QMainWindow(parent) +{ + Plot *plot = new Plot(this); + setCentralWidget(plot); + + QToolBar *toolBar = new QToolBar(this); + + QComboBox *rasterBox = new QComboBox(toolBar); + rasterBox->setStyle(new QWindowsStyle() ); + rasterBox->addItem("Wikipedia"); + + toolBar->addWidget(new QLabel("Data ", toolBar)); + toolBar->addWidget(rasterBox); + toolBar->addSeparator(); + + QComboBox *modeBox = new QComboBox(toolBar); + modeBox->setStyle(new QWindowsStyle() ); + modeBox->addItem("Nearest Neighbour"); + modeBox->addItem("Bilinear Interpolation"); + + toolBar->addWidget(new QLabel("Resampling ", toolBar)); + toolBar->addWidget(modeBox); + + toolBar->addSeparator(); + + QToolButton *btnExport = new QToolButton(toolBar); + btnExport->setText("Export"); + btnExport->setToolButtonStyle(Qt::ToolButtonTextUnderIcon); + toolBar->addWidget(btnExport); + + addToolBar(toolBar); + + connect(modeBox, SIGNAL(activated(int)), plot, SLOT(setResampleMode(int))); + connect(btnExport, SIGNAL(clicked()), plot, SLOT(exportPlot()) ); +} + +int main(int argc, char **argv) +{ + QApplication a(argc, argv); + + MainWindow mainWindow; + mainWindow.resize(600,400); + mainWindow.show(); + + return a.exec(); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/rasterview/plot.cpp phyxcalc-3rev200/qwt-6.0.0/examples/rasterview/plot.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/rasterview/plot.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/rasterview/plot.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,146 @@ +#include "plot.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +class RasterData: public QwtMatrixRasterData +{ +public: + RasterData() + { + const double matrix[] = + { + 1, 2, 4, 1, + 6, 3, 5, 2, + 4, 2, 1, 5, + 5, 4, 2, 3 + }; + + QVector values; + for ( uint i = 0; i < sizeof(matrix) / sizeof(double); i++ ) + values += matrix[i]; + + const int numColumns = 4; + setValueMatrix(values, numColumns); + + setInterval( Qt::XAxis, + QwtInterval( -0.5, 3.5, QwtInterval::ExcludeMaximum ) ); + setInterval( Qt::YAxis, + QwtInterval( -0.5, 3.5, QwtInterval::ExcludeMaximum ) ); + setInterval( Qt::ZAxis, QwtInterval(1.0, 6.0) ); + } +}; + +class ColorMap: public QwtLinearColorMap +{ +public: + ColorMap(): + QwtLinearColorMap(Qt::darkBlue, Qt::darkRed) + { + addColorStop(0.2, Qt::blue); + addColorStop(0.4, Qt::cyan); + addColorStop(0.6, Qt::yellow); + addColorStop(0.8, Qt::red); + } +}; + +Plot::Plot(QWidget *parent): + QwtPlot(parent) +{ +#if 0 + QwtPlotGrid *grid = new QwtPlotGrid(); + grid->setPen(QPen(Qt::DotLine)); + grid->attach(this); +#endif + + d_spectrogram = new QwtPlotSpectrogram(); + d_spectrogram->setRenderThreadCount(0); // use system specific thread count + + d_spectrogram->setColorMap( new ColorMap() ); + + d_spectrogram->setData(new RasterData()); + d_spectrogram->attach(this); + + const QwtInterval zInterval = d_spectrogram->data()->interval( Qt::ZAxis ); + // A color bar on the right axis + QwtScaleWidget *rightAxis = axisWidget(QwtPlot::yRight); + rightAxis->setColorBarEnabled(true); + rightAxis->setColorBarWidth(40); + rightAxis->setColorMap(zInterval, new ColorMap() ); + + setAxisScale(QwtPlot::yRight, zInterval.minValue(), zInterval.maxValue() ); + enableAxis(QwtPlot::yRight); + + plotLayout()->setAlignCanvasToScales(true); + + setAxisScale(QwtPlot::xBottom, 0.0, 3.0); + setAxisMaxMinor(QwtPlot::xBottom, 0); + setAxisScale(QwtPlot::yLeft, 0.0, 3.0); + setAxisMaxMinor(QwtPlot::yLeft, 0); + + QwtPlotMagnifier *magnifier = new QwtPlotMagnifier( canvas() ); + magnifier->setAxisEnabled( QwtPlot::yRight, false); + + QwtPlotPanner *panner = new QwtPlotPanner( canvas() ); + panner->setAxisEnabled( QwtPlot::yRight, false); + + canvas()->setBorderRadius( 10 ); +} + +void Plot::exportPlot() +{ + QString fileName = "rasterview.pdf"; + +#ifndef QT_NO_FILEDIALOG + const QList imageFormats = + QImageWriter::supportedImageFormats(); + + QStringList filter; + filter += "PDF Documents (*.pdf)"; +#ifndef QWT_NO_SVG + filter += "SVG Documents (*.svg)"; +#endif + filter += "Postscript Documents (*.ps)"; + + if ( imageFormats.size() > 0 ) + { + QString imageFilter("Images ("); + for ( int i = 0; i < imageFormats.size(); i++ ) + { + if ( i > 0 ) + imageFilter += " "; + imageFilter += "*."; + imageFilter += imageFormats[i]; + } + imageFilter += ")"; + + filter += imageFilter; + } + + fileName = QFileDialog::getSaveFileName( + this, "Export File Name", fileName, + filter.join(";;"), NULL, QFileDialog::DontConfirmOverwrite); +#endif + if ( !fileName.isEmpty() ) + { + QwtPlotRenderer renderer; + renderer.renderDocument(this, fileName, QSizeF(300, 200), 85); + } +} + +void Plot::setResampleMode(int mode) +{ + RasterData *data = (RasterData *)d_spectrogram->data(); + data->setResampleMode( (QwtMatrixRasterData::ResampleMode) mode); + + replot(); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/rasterview/plot.h phyxcalc-3rev200/qwt-6.0.0/examples/rasterview/plot.h --- phyxcalc-3rev200/qwt-6.0.0/examples/rasterview/plot.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/rasterview/plot.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,17 @@ +#include +#include + +class Plot: public QwtPlot +{ + Q_OBJECT + +public: + Plot(QWidget * = NULL); + +public Q_SLOTS: + void exportPlot(); + void setResampleMode(int); + +private: + QwtPlotSpectrogram *d_spectrogram; +}; diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/rasterview/rasterview.pro phyxcalc-3rev200/qwt-6.0.0/examples/rasterview/rasterview.pro --- phyxcalc-3rev200/qwt-6.0.0/examples/rasterview/rasterview.pro 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/rasterview/rasterview.pro 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,19 @@ +################################################################ +# Qwt Widget Library +# Copyright (C) 1997 Josef Wilgen +# Copyright (C) 2002 Uwe Rathmann +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the Qwt License, Version 1.0 +################################################################ + +include( $${PWD}/../examples.pri ) + +TARGET = rasterview + +HEADERS = \ + plot.h + +SOURCES = \ + plot.cpp \ + main.cpp diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/realtime/clear.xpm phyxcalc-3rev200/qwt-6.0.0/examples/realtime/clear.xpm --- phyxcalc-3rev200/qwt-6.0.0/examples/realtime/clear.xpm 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/realtime/clear.xpm 2011-04-15 10:48:46.000000000 +0000 @@ -0,0 +1,51 @@ +/* XPM */ +static const char *clear_xpm[] = { +/* width height num_colors chars_per_pixel */ +" 32 32 12 1", +/* colors */ +". c #000000", +"# c #004040", +"a c #303030", +"b c #400000", +"c c #404000", +"d c #585858", +"e c #808080", +"f c #a0a0a4", +"g c #bdbdbd", +"h c #c0c0c0", +"i c #dcdcdc", +"j c #ffffff", +/* pixels */ +"gggggggggggggggggggggggggggggggg", +"gggggggggggggg..gggggggggggggggg", +"gggggggggg....ficggggggggggggggg", +"ggggggg...fdad#ai......ggggggggg", +"gggg...fhjjidfbc#f.fffe...gggggg", +"ggg.fhjjjjihc#dhef.fhhhffe.ggggg", +"ggg.#jjjjjihhhhhe..ehhhfff.ggggg", +"ggg.#dffjjjjiihhcadehhfddd.ggggg", +"ggg.iiiffhfjjjjjhhhfdddddd.ggggg", +"ggg.#fjjiiffeeeeddddeeeddd.ggggg", +"gggg.#eeiiiiifffffffeee...gggggg", +"gggg.ffffffiifffffffddddd.gggggg", +"gggg.fffjfffeeeeddddeed.d.gggggg", +"gggg.fefiiiifhffeeeeded.d.gggggg", +"gggg.fefijhfhifefff.ded.d.gggggg", +"gggg.fefijeffifeefe.ded.d.gggggg", +"gggg.fefijeffifeefe.ded.d.gggggg", +"gggg.fefijeffifeefe.ded.d.gggggg", +"gggg.fefijeffifeefe.ded.d.gggggg", +"gggg.fefijeffifeefe.ded.d.gggggg", +"gggg.fefijeffifeefe.ded.d.gggggg", +"gggg.fefijeffifeefe.ded.d.gggggg", +"gggg.fefijeffifeefe.ded.d.gggggg", +"gggg.fefijeffifeefe.ded.d.gggggg", +"gggg.fefijeffifeefe.ded.d.gggggg", +"gggg.fefijeffifeefe.ded.d.gggggg", +"gggg.fffijeffifeefe.deddd.gggggg", +"gggg.ffiijeffifeefeddedd#.gggggg", +"gggg.eiijjjeiifdffedded#..gggggg", +"ggggg..fjjiiiiffffedddd..ggggggg", +"ggggggg...fhhfffffdd...ggggggggg", +"gggggggggg..........gggggggggggg" +}; diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/realtime/incrementalplot.cpp phyxcalc-3rev200/qwt-6.0.0/examples/realtime/incrementalplot.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/realtime/incrementalplot.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/realtime/incrementalplot.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,105 @@ +#include +#include +#include +#include +#include +#include "incrementalplot.h" +#include + +class CurveData: public QwtArraySeriesData +{ +public: + CurveData() + { + } + + virtual QRectF boundingRect() const + { + if ( d_boundingRect.width() < 0.0 ) + d_boundingRect = qwtBoundingRect( *this ); + + return d_boundingRect; + } + + inline void append( const QPointF &point ) + { + d_samples += point; + } + + void clear() + { + d_samples.clear(); + d_samples.squeeze(); + d_boundingRect = QRectF( 0.0, 0.0, -1.0, -1.0 ); + } +}; + +IncrementalPlot::IncrementalPlot(QWidget *parent): + QwtPlot(parent), + d_curve(NULL) +{ + d_directPainter = new QwtPlotDirectPainter(this); + +#if defined(Q_WS_X11) + canvas()->setAttribute(Qt::WA_PaintOutsidePaintEvent, true); + canvas()->setAttribute(Qt::WA_PaintOnScreen, true); +#endif + + d_curve = new QwtPlotCurve("Test Curve"); + d_curve->setStyle(QwtPlotCurve::NoCurve); + d_curve->setData( new CurveData() ); + + d_curve->setSymbol(new QwtSymbol(QwtSymbol::XCross, + Qt::NoBrush, QPen(Qt::white), QSize( 4, 4 ) ) ); + + d_curve->attach(this); + + setAutoReplot(false); +} + +IncrementalPlot::~IncrementalPlot() +{ + delete d_curve; +} + +void IncrementalPlot::appendPoint( const QPointF &point ) +{ + CurveData *data = static_cast( d_curve->data() ); + data->append(point); + + const bool doClip = !canvas()->testAttribute( Qt::WA_PaintOnScreen ); + if ( doClip ) + { + /* + Depending on the platform setting a clip might be an important + performance issue. F.e. for Qt Embedded this reduces the + part of the backing store that has to be copied out - maybe + to an unaccelerated frame buffer device. + */ + const QwtScaleMap xMap = canvasMap( d_curve->xAxis() ); + const QwtScaleMap yMap = canvasMap( d_curve->yAxis() ); + + QRegion clipRegion; + + const QSize symbolSize = d_curve->symbol()->size(); + QRect r( 0, 0, symbolSize.width() + 2, symbolSize.height() + 2 ); + + const QPointF center = + QwtScaleMap::transform( xMap, yMap, point ); + r.moveCenter( center.toPoint() ); + clipRegion += r; + + d_directPainter->setClipRegion( clipRegion ); + } + + d_directPainter->drawSeries(d_curve, + data->size() - 1, data->size() - 1); +} + +void IncrementalPlot::clearPoints() +{ + CurveData *data = static_cast( d_curve->data() ); + data->clear(); + + replot(); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/realtime/incrementalplot.h phyxcalc-3rev200/qwt-6.0.0/examples/realtime/incrementalplot.h --- phyxcalc-3rev200/qwt-6.0.0/examples/realtime/incrementalplot.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/realtime/incrementalplot.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,25 @@ +#ifndef _INCREMENTALPLOT_H_ +#define _INCREMENTALPLOT_H_ 1 + +#include + +class QwtPlotCurve; +class QwtPlotDirectPainter; + +class IncrementalPlot : public QwtPlot +{ + Q_OBJECT + +public: + IncrementalPlot(QWidget *parent = NULL); + virtual ~IncrementalPlot(); + + void appendPoint( const QPointF &); + void clearPoints(); + +private: + QwtPlotCurve *d_curve; + QwtPlotDirectPainter *d_directPainter; +}; + +#endif // _INCREMENTALPLOT_H_ diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/realtime/main.cpp phyxcalc-3rev200/qwt-6.0.0/examples/realtime/main.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/realtime/main.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/realtime/main.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,12 @@ +#include +#include "mainwindow.h" + +int main(int argc, char **argv) +{ + QApplication a(argc, argv); + + MainWindow w; + w.show(); + + return a.exec(); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/realtime/mainwindow.cpp phyxcalc-3rev200/qwt-6.0.0/examples/realtime/mainwindow.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/realtime/mainwindow.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/realtime/mainwindow.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,186 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include "randomplot.h" +#include "mainwindow.h" +#include "start.xpm" +#include "clear.xpm" + +class MyToolBar: public QToolBar +{ +public: + MyToolBar(MainWindow *parent): + QToolBar(parent) + { + } + void addSpacing(int spacing) + { + QLabel *label = new QLabel(this); + addWidget(label); + label->setFixedWidth(spacing); + } +}; + +class Counter: public QWidget +{ +public: + Counter(QWidget *parent, + const QString &prefix, const QString &suffix, + int min, int max, int step): + QWidget(parent) + { + QHBoxLayout *layout = new QHBoxLayout(this); + + if ( !prefix.isEmpty() ) + layout->addWidget(new QLabel(prefix + " ", this)); + + d_counter = new QSpinBox(this); + d_counter->setRange(min, max); + d_counter->setSingleStep(step); + layout->addWidget(d_counter); + + if ( !suffix.isEmpty() ) + layout->addWidget(new QLabel(QString(" ") + suffix, this)); + } + + void setValue(int value) { d_counter->setValue(value); } + int value() const { return d_counter->value(); } + +private: + QSpinBox *d_counter; +}; + +MainWindow::MainWindow() +{ + addToolBar(toolBar()); +#ifndef QT_NO_STATUSBAR + (void)statusBar(); +#endif + + d_plot = new RandomPlot(this); + const int margin = 4; + d_plot->setContentsMargins( margin, margin, margin, margin); + + setCentralWidget(d_plot); + + connect(d_startAction, SIGNAL( toggled(bool) ), this, SLOT( appendPoints(bool) ) ); + connect(d_clearAction, SIGNAL( triggered() ), d_plot, SLOT( clear() ) ); + connect(d_plot, SIGNAL( running(bool) ), this, SLOT( showRunning(bool) ) ); + connect(d_plot, SIGNAL( elapsed(int) ), this, SLOT( showElapsed( int ) ) ); + + initWhatsThis(); + + setContextMenuPolicy(Qt::NoContextMenu); +} + +QToolBar *MainWindow::toolBar() +{ + MyToolBar *toolBar = new MyToolBar(this); + + toolBar->setAllowedAreas(Qt::TopToolBarArea | Qt::BottomToolBarArea); + setToolButtonStyle(Qt::ToolButtonTextUnderIcon); + + d_startAction = new QAction(QIcon(start_xpm), "Clear", toolBar); + d_startAction->setCheckable(true); + d_clearAction = new QAction(QIcon(clear_xpm), "Clear", toolBar); + QAction *whatsThisAction = QWhatsThis::createAction(toolBar); + whatsThisAction->setText("Help"); + + toolBar->addAction(d_startAction); + toolBar->addAction(d_clearAction); + toolBar->addAction(whatsThisAction); + + setIconSize(QSize(22, 22)); + + QWidget *hBox = new QWidget(toolBar); + + d_randomCount = + new Counter(hBox, "Points", QString::null, 1, 100000, 100); + d_randomCount->setValue(1000); + + d_timerCount = new Counter(hBox, "Delay", "ms", 0, 100000, 100); + d_timerCount->setValue(0); + + QHBoxLayout *layout = new QHBoxLayout(hBox); + layout->setMargin(0); + layout->setSpacing(0); + layout->addSpacing(10); + layout->addWidget(new QWidget(hBox), 10); // spacer + layout->addWidget(d_randomCount); + layout->addSpacing(5); + layout->addWidget(d_timerCount); + + showRunning(false); + + toolBar->addWidget(hBox); + + return toolBar; +} + +void MainWindow::appendPoints(bool on) +{ + if ( on ) + d_plot->append(d_timerCount->value(), + d_randomCount->value()); + else + d_plot->stop(); +} + +void MainWindow::showRunning(bool running) +{ + d_randomCount->setEnabled(!running); + d_timerCount->setEnabled(!running); + d_startAction->setChecked(running); + d_startAction->setText(running ? "Stop" : "Start"); +} + +void MainWindow::showElapsed(int ms) +{ + QString text; + text.setNum(ms); + text += " ms"; + + statusBar()->showMessage( text ); +} + +void MainWindow::initWhatsThis() +{ + const char *text1 = + "Zooming is enabled until the selected area gets " + "too small for the significance on the axes.\n\n" + "You can zoom in using the left mouse button.\n" + "The middle mouse button is used to go back to the " + "previous zoomed area.\n" + "The right mouse button is used to unzoom completely."; + + const char *text2 = + "Number of random points that will be generated."; + + const char *text3 = + "Delay between the generation of two random points."; + + const char *text4 = + "Start generation of random points.\n\n" + "The intention of this example is to show how to implement " + "growing curves. The points will be generated and displayed " + "one after the other.\n" + "To check the performance, a small delay and a large number " + "of points are useful. To watch the curve growing, a delay " + " > 300 ms and less points are better.\n" + "To inspect the curve, stacked zooming is implemented using the " + "mouse buttons on the plot."; + + const char *text5 = "Remove all points."; + + d_plot->setWhatsThis(text1); + d_randomCount->setWhatsThis(text2); + d_timerCount->setWhatsThis(text3); + d_startAction->setWhatsThis(text4); + d_clearAction->setWhatsThis(text5); +} + diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/realtime/mainwindow.h phyxcalc-3rev200/qwt-6.0.0/examples/realtime/mainwindow.h --- phyxcalc-3rev200/qwt-6.0.0/examples/realtime/mainwindow.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/realtime/mainwindow.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,35 @@ +#ifndef _MAINWINDOW_H_ +#define _MAINWINDOW_H_ 1 + +#include +#include + +class QSpinBox; +class QPushButton; +class RandomPlot; +class Counter; + +class MainWindow: public QMainWindow +{ + Q_OBJECT +public: + MainWindow(); + +private Q_SLOTS: + void showRunning( bool ); + void appendPoints( bool ); + void showElapsed( int ); + +private: + QToolBar *toolBar(); + void initWhatsThis(); + +private: + Counter *d_randomCount; + Counter *d_timerCount; + QAction *d_startAction; + QAction *d_clearAction; + RandomPlot *d_plot; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/realtime/randomplot.cpp phyxcalc-3rev200/qwt-6.0.0/examples/realtime/randomplot.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/realtime/randomplot.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/realtime/randomplot.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,139 @@ +#include +#include +#include +#include +#include +#include +#include +#include "scrollzoomer.h" +#include "randomplot.h" + +const unsigned int c_rangeMax = 1000; + +class Zoomer: public ScrollZoomer +{ +public: + Zoomer(QwtPlotCanvas *canvas): + ScrollZoomer(canvas) + { +#if 0 + setRubberBandPen(QPen(Qt::red, 2, Qt::DotLine)); +#else + setRubberBandPen(QPen(Qt::red)); +#endif + } + + virtual QwtText trackerTextF(const QPointF &pos) const + { + QColor bg(Qt::white); + + QwtText text = QwtPlotZoomer::trackerTextF(pos); + text.setBackgroundBrush( QBrush( bg )); + return text; + } + + virtual void rescale() + { + QwtScaleWidget *scaleWidget = plot()->axisWidget(yAxis()); + QwtScaleDraw *sd = scaleWidget->scaleDraw(); + + int minExtent = 0; + if ( zoomRectIndex() > 0 ) + { + // When scrolling in vertical direction + // the plot is jumping in horizontal direction + // because of the different widths of the labels + // So we better use a fixed extent. + + minExtent = sd->spacing() + sd->maxTickLength() + 1; + minExtent += sd->labelSize( + scaleWidget->font(), c_rangeMax).width(); + } + + sd->setMinimumExtent(minExtent); + + ScrollZoomer::rescale(); + } +}; + +RandomPlot::RandomPlot(QWidget *parent): + IncrementalPlot(parent), + d_timer(0), + d_timerCount(0) +{ + setFrameStyle(QFrame::NoFrame); + setLineWidth(0); + setCanvasLineWidth(2); + + plotLayout()->setAlignCanvasToScales(true); + + QwtPlotGrid *grid = new QwtPlotGrid; + grid->setMajPen(QPen(Qt::gray, 0, Qt::DotLine)); + grid->attach(this); + + setCanvasBackground(QColor(29, 100, 141)); // nice blue + + setAxisScale(xBottom, 0, c_rangeMax); + setAxisScale(yLeft, 0, c_rangeMax); + + replot(); + + // enable zooming + + (void) new Zoomer(canvas()); +} + +QSize RandomPlot::sizeHint() const +{ + return QSize(540,400); +} + +void RandomPlot::appendPoint() +{ + double x = qrand() % c_rangeMax; + x += ( qrand() % 100 ) / 100; + + double y = qrand() % c_rangeMax; + y += ( qrand() % 100 ) / 100; + + IncrementalPlot::appendPoint( QPointF( x, y ) ); + + if ( --d_timerCount <= 0 ) + stop(); +} + +void RandomPlot::append(int timeout, int count) +{ + if ( !d_timer ) + { + d_timer = new QTimer(this); + connect(d_timer, SIGNAL(timeout()), SLOT(appendPoint())); + } + + d_timerCount = count; + + Q_EMIT running(true); + d_timeStamp.start(); + + canvas()->setPaintAttribute(QwtPlotCanvas::BackingStore, false); + d_timer->start(timeout); +} + +void RandomPlot::stop() +{ + Q_EMIT elapsed( d_timeStamp.elapsed() ); + + if ( d_timer ) + { + d_timer->stop(); + Q_EMIT running(false); + } + + canvas()->setPaintAttribute(QwtPlotCanvas::BackingStore, true); +} + +void RandomPlot::clear() +{ + clearPoints(); + replot(); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/realtime/randomplot.h phyxcalc-3rev200/qwt-6.0.0/examples/realtime/randomplot.h --- phyxcalc-3rev200/qwt-6.0.0/examples/realtime/randomplot.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/realtime/randomplot.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,39 @@ +#ifndef _RANDOMPLOT_H_ +#define _RANDOMPLOT_H_ 1 + +#include "incrementalplot.h" +#include + +class QTimer; + +class RandomPlot: public IncrementalPlot +{ + Q_OBJECT + +public: + RandomPlot(QWidget *parent); + + virtual QSize sizeHint() const; + +Q_SIGNALS: + void running( bool ); + void elapsed( int ms ); + +public Q_SLOTS: + void clear(); + void stop(); + void append( int timeout, int count ); + +private Q_SLOTS: + void appendPoint(); + +private: + void initCurve(); + + QTimer *d_timer; + int d_timerCount; + + QTime d_timeStamp; +}; + +#endif // _RANDOMPLOT_H_ diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/realtime/README phyxcalc-3rev200/qwt-6.0.0/examples/realtime/README --- phyxcalc-3rev200/qwt-6.0.0/examples/realtime/README 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/realtime/README 2011-04-15 10:48:46.000000000 +0000 @@ -0,0 +1,25 @@ +1) Incremental plots + +IncrementalPlot shows an example how to implement a plot that +displays growing data. + +The example produces random data when you push the start button. +With 'Timer' you can adjust the intervall between the +the generation of the points, with 'Points' you can set the number +of points to be generated. + +Unfortunately in Qt4 incremental painting is not possible with QPaintEngines +that doesn't support the QPaintEngine::PaintOutsidePaintEvent feature. +( These are all common paint engines beside the OpenGL engine, but this one +is not supported by Qwt yet. ) +That is the reason why you can see much faster repaints with Qt3. + +2) Stacked Zooming with scrollbars + +ScrollZoomer adds scrollbars for zooming. There are a couple of +reasons why the implementation is a hack and therefore the class +is not part of the Qwt lib, but it should be working with all +types of QwtPlots. Copy the code of scrollbar.[h|cpp] and +scrollzoomer.[h|cpp] to the application code. + +Uwe diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/realtime/realtime.pro phyxcalc-3rev200/qwt-6.0.0/examples/realtime/realtime.pro --- phyxcalc-3rev200/qwt-6.0.0/examples/realtime/realtime.pro 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/realtime/realtime.pro 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,28 @@ +################################################################ +# Qwt Widget Library +# Copyright (C) 1997 Josef Wilgen +# Copyright (C) 2002 Uwe Rathmann +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the Qwt License, Version 1.0 +################################################################ + +include( $${PWD}/../examples.pri ) + +TARGET = realtime + +HEADERS = \ + mainwindow.h \ + scrollzoomer.h \ + scrollbar.h \ + incrementalplot.h \ + randomplot.h + +SOURCES = \ + main.cpp \ + mainwindow.cpp \ + scrollzoomer.cpp \ + scrollbar.cpp \ + incrementalplot.cpp \ + randomplot.cpp + diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/realtime/scrollbar.cpp phyxcalc-3rev200/qwt-6.0.0/examples/realtime/scrollbar.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/realtime/scrollbar.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/realtime/scrollbar.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,169 @@ +#include +#include +#include "scrollbar.h" + +ScrollBar::ScrollBar(QWidget * parent): + QScrollBar(parent) +{ + init(); +} + +ScrollBar::ScrollBar(Qt::Orientation o, + QWidget *parent): + QScrollBar(o, parent) +{ + init(); +} + +ScrollBar::ScrollBar(double minBase, double maxBase, + Qt::Orientation o, QWidget *parent): + QScrollBar(o, parent) +{ + init(); + setBase(minBase, maxBase); + moveSlider(minBase, maxBase); +} + +void ScrollBar::init() +{ + d_inverted = orientation() == Qt::Vertical; + d_baseTicks = 1000000; + d_minBase = 0.0; + d_maxBase = 1.0; + moveSlider(d_minBase, d_maxBase); + + connect(this, SIGNAL(sliderMoved(int)), SLOT(catchSliderMoved(int))); + connect(this, SIGNAL(valueChanged(int)), SLOT(catchValueChanged(int))); +} + +void ScrollBar::setInverted(bool inverted) +{ + if ( d_inverted != inverted ) + { + d_inverted = inverted; + moveSlider(minSliderValue(), maxSliderValue()); + } +} + +bool ScrollBar::isInverted() const +{ + return d_inverted; +} + +void ScrollBar::setBase(double min, double max) +{ + if ( min != d_minBase || max != d_maxBase ) + { + d_minBase = min; + d_maxBase = max; + + moveSlider(minSliderValue(), maxSliderValue()); + } +} + +void ScrollBar::moveSlider(double min, double max) +{ + const int sliderTicks = qRound((max - min) / + (d_maxBase - d_minBase) * d_baseTicks); + + // setRange initiates a valueChanged of the scrollbars + // in some situations. So we block + // and unblock the signals. + + blockSignals(true); + + setRange(sliderTicks / 2, d_baseTicks - sliderTicks / 2); + int steps = sliderTicks / 200; + if ( steps <= 0 ) + steps = 1; + + setSingleStep(steps); + setPageStep(sliderTicks); + + int tick = mapToTick(min + (max - min) / 2); + if ( isInverted() ) + tick = d_baseTicks - tick; + + setSliderPosition(tick); + blockSignals(false); +} + +double ScrollBar::minBaseValue() const +{ + return d_minBase; +} + +double ScrollBar::maxBaseValue() const +{ + return d_maxBase; +} + +void ScrollBar::sliderRange(int value, double &min, double &max) const +{ + if ( isInverted() ) + value = d_baseTicks - value; + + const int visibleTicks = pageStep(); + + min = mapFromTick(value - visibleTicks / 2); + max = mapFromTick(value + visibleTicks / 2); +} + +double ScrollBar::minSliderValue() const +{ + double min, dummy; + sliderRange(value(), min, dummy); + + return min; +} + +double ScrollBar::maxSliderValue() const +{ + double max, dummy; + sliderRange(value(), dummy, max); + + return max; +} + +int ScrollBar::mapToTick(double v) const +{ + return (int) ( ( v - d_minBase) / (d_maxBase - d_minBase ) * d_baseTicks ); +} + +double ScrollBar::mapFromTick(int tick) const +{ + return d_minBase + ( d_maxBase - d_minBase ) * tick / d_baseTicks; +} + +void ScrollBar::catchValueChanged(int value) +{ + double min, max; + sliderRange(value, min, max); + Q_EMIT valueChanged(orientation(), min, max); +} + +void ScrollBar::catchSliderMoved(int value) +{ + double min, max; + sliderRange(value, min, max); + Q_EMIT sliderMoved(orientation(), min, max); +} + +int ScrollBar::extent() const +{ + QStyleOptionSlider opt; + opt.init(this); + opt.subControls = QStyle::SC_None; + opt.activeSubControls = QStyle::SC_None; + opt.orientation = orientation(); + opt.minimum = minimum(); + opt.maximum = maximum(); + opt.sliderPosition = sliderPosition(); + opt.sliderValue = value(); + opt.singleStep = singleStep(); + opt.pageStep = pageStep(); + opt.upsideDown = invertedAppearance(); + if (orientation() == Qt::Horizontal) + opt.state |= QStyle::State_Horizontal; + return style()->pixelMetric(QStyle::PM_ScrollBarExtent, &opt, this); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/realtime/scrollbar.h phyxcalc-3rev200/qwt-6.0.0/examples/realtime/scrollbar.h --- phyxcalc-3rev200/qwt-6.0.0/examples/realtime/scrollbar.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/realtime/scrollbar.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,53 @@ +#ifndef _SCROLLBAR_H +#define _SCROLLBAR_H 1 + +#include + +class ScrollBar: public QScrollBar +{ + Q_OBJECT + +public: + ScrollBar(QWidget *parent = NULL); + ScrollBar(Qt::Orientation, QWidget *parent = NULL); + ScrollBar(double minBase, double maxBase, + Qt::Orientation o, QWidget *parent = NULL); + + void setInverted(bool); + bool isInverted() const; + + double minBaseValue() const; + double maxBaseValue() const; + + double minSliderValue() const; + double maxSliderValue() const; + + int extent() const; + +Q_SIGNALS: + void sliderMoved(Qt::Orientation, double, double); + void valueChanged(Qt::Orientation, double, double); + +public Q_SLOTS: + virtual void setBase(double min, double max); + virtual void moveSlider(double min, double max); + +protected: + void sliderRange(int value, double &min, double &max) const; + int mapToTick(double) const; + double mapFromTick(int) const; + +private Q_SLOTS: + void catchValueChanged(int value); + void catchSliderMoved(int value); + +private: + void init(); + + bool d_inverted; + double d_minBase; + double d_maxBase; + int d_baseTicks; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/realtime/scrollzoomer.cpp phyxcalc-3rev200/qwt-6.0.0/examples/realtime/scrollzoomer.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/realtime/scrollzoomer.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/realtime/scrollzoomer.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,477 @@ +#include +#include +#include +#include +#include +#include "scrollbar.h" +#include "scrollzoomer.h" + +class ScrollData +{ +public: + ScrollData(): + scrollBar(NULL), + position(ScrollZoomer::OppositeToScale), + mode(Qt::ScrollBarAsNeeded) + { + } + + ~ScrollData() + { + delete scrollBar; + } + + ScrollBar *scrollBar; + ScrollZoomer::ScrollBarPosition position; + Qt::ScrollBarPolicy mode; +}; + +ScrollZoomer::ScrollZoomer(QwtPlotCanvas *canvas): + QwtPlotZoomer(canvas), + d_cornerWidget(NULL), + d_hScrollData(NULL), + d_vScrollData(NULL), + d_inZoom(false), + d_alignCanvasToScales(false) +{ + if ( !canvas ) + return; + + d_hScrollData = new ScrollData; + d_vScrollData = new ScrollData; +} + +ScrollZoomer::~ScrollZoomer() +{ + delete d_cornerWidget; + delete d_vScrollData; + delete d_hScrollData; +} + +void ScrollZoomer::rescale() +{ + QwtScaleWidget *xScale = plot()->axisWidget(xAxis()); + QwtScaleWidget *yScale = plot()->axisWidget(yAxis()); + + if ( zoomRectIndex() <= 0 ) + { + if ( d_inZoom ) + { + xScale->setMinBorderDist(0, 0); + yScale->setMinBorderDist(0, 0); + + QwtPlotLayout *layout = plot()->plotLayout(); + layout->setAlignCanvasToScales(d_alignCanvasToScales); + + d_inZoom = false; + } + } + else + { + if ( !d_inZoom ) + { + /* + We set a minimum border distance. + Otherwise the canvas size changes when scrolling, + between situations where the major ticks are at + the canvas borders (requiring extra space for the label) + and situations where all labels can be painted below/top + or left/right of the canvas. + */ + int start, end; + + xScale->getBorderDistHint(start, end); + xScale->setMinBorderDist(start, end); + + yScale->getBorderDistHint(start, end); + yScale->setMinBorderDist(start, end); + + QwtPlotLayout *layout = plot()->plotLayout(); + d_alignCanvasToScales = layout->alignCanvasToScales(); + layout->setAlignCanvasToScales(false); + + d_inZoom = true; + } + } + + QwtPlotZoomer::rescale(); + updateScrollBars(); +} + +ScrollBar *ScrollZoomer::scrollBar(Qt::Orientation o) +{ + ScrollBar *&sb = (o == Qt::Vertical) + ? d_vScrollData->scrollBar : d_hScrollData->scrollBar; + + if ( sb == NULL ) + { + sb = new ScrollBar(o, canvas()); + sb->hide(); + connect(sb, + SIGNAL(valueChanged(Qt::Orientation, double, double)), + SLOT(scrollBarMoved(Qt::Orientation, double, double))); + } + return sb; +} + +ScrollBar *ScrollZoomer::horizontalScrollBar() const +{ + return d_hScrollData->scrollBar; +} + +ScrollBar *ScrollZoomer::verticalScrollBar() const +{ + return d_vScrollData->scrollBar; +} + +void ScrollZoomer::setHScrollBarMode(Qt::ScrollBarPolicy mode) +{ + if ( hScrollBarMode() != mode ) + { + d_hScrollData->mode = mode; + updateScrollBars(); + } +} + +void ScrollZoomer::setVScrollBarMode(Qt::ScrollBarPolicy mode) +{ + if ( vScrollBarMode() != mode ) + { + d_vScrollData->mode = mode; + updateScrollBars(); + } +} + +Qt::ScrollBarPolicy ScrollZoomer::hScrollBarMode() const +{ + return d_hScrollData->mode; +} + +Qt::ScrollBarPolicy ScrollZoomer::vScrollBarMode() const +{ + return d_vScrollData->mode; +} + +void ScrollZoomer::setHScrollBarPosition(ScrollBarPosition pos) +{ + if ( d_hScrollData->position != pos ) + { + d_hScrollData->position = pos; + updateScrollBars(); + } +} + +void ScrollZoomer::setVScrollBarPosition(ScrollBarPosition pos) +{ + if ( d_vScrollData->position != pos ) + { + d_vScrollData->position = pos; + updateScrollBars(); + } +} + +ScrollZoomer::ScrollBarPosition ScrollZoomer::hScrollBarPosition() const +{ + return d_hScrollData->position; +} + +ScrollZoomer::ScrollBarPosition ScrollZoomer::vScrollBarPosition() const +{ + return d_vScrollData->position; +} + +void ScrollZoomer::setCornerWidget(QWidget *w) +{ + if ( w != d_cornerWidget ) + { + if ( canvas() ) + { + delete d_cornerWidget; + d_cornerWidget = w; + if ( d_cornerWidget->parent() != canvas() ) + d_cornerWidget->setParent(canvas()); + + updateScrollBars(); + } + } +} + +QWidget *ScrollZoomer::cornerWidget() const +{ + return d_cornerWidget; +} + +bool ScrollZoomer::eventFilter(QObject *o, QEvent *e) +{ + if ( o == canvas() ) + { + switch(e->type()) + { + case QEvent::Resize: + { + const int fw = ((QwtPlotCanvas *)canvas())->frameWidth(); + + QRect rect; + rect.setSize(((QResizeEvent *)e)->size()); + rect.setRect(rect.x() + fw, rect.y() + fw, + rect.width() - 2 * fw, rect.height() - 2 * fw); + + layoutScrollBars(rect); + break; + } + case QEvent::ChildRemoved: + { + const QObject *child = ((QChildEvent *)e)->child(); + if ( child == d_cornerWidget ) + d_cornerWidget = NULL; + else if ( child == d_hScrollData->scrollBar ) + d_hScrollData->scrollBar = NULL; + else if ( child == d_vScrollData->scrollBar ) + d_vScrollData->scrollBar = NULL; + break; + } + default: + break; + } + } + return QwtPlotZoomer::eventFilter(o, e); +} + +bool ScrollZoomer::needScrollBar(Qt::Orientation o) const +{ + Qt::ScrollBarPolicy mode; + double zoomMin, zoomMax, baseMin, baseMax; + + if ( o == Qt::Horizontal ) + { + mode = d_hScrollData->mode; + baseMin = zoomBase().left(); + baseMax = zoomBase().right(); + zoomMin = zoomRect().left(); + zoomMax = zoomRect().right(); + } + else + { + mode = d_vScrollData->mode; + baseMin = zoomBase().top(); + baseMax = zoomBase().bottom(); + zoomMin = zoomRect().top(); + zoomMax = zoomRect().bottom(); + } + + bool needed = false; + switch(mode) + { + case Qt::ScrollBarAlwaysOn: + needed = true; + break; + case Qt::ScrollBarAlwaysOff: + needed = false; + break; + default: + { + if ( baseMin < zoomMin || baseMax > zoomMax ) + needed = true; + break; + } + } + return needed; +} + +void ScrollZoomer::updateScrollBars() +{ + if ( !canvas() ) + return; + + const int xAxis = QwtPlotZoomer::xAxis(); + const int yAxis = QwtPlotZoomer::yAxis(); + + int xScrollBarAxis = xAxis; + if ( hScrollBarPosition() == OppositeToScale ) + xScrollBarAxis = oppositeAxis(xScrollBarAxis); + + int yScrollBarAxis = yAxis; + if ( vScrollBarPosition() == OppositeToScale ) + yScrollBarAxis = oppositeAxis(yScrollBarAxis); + + + QwtPlotLayout *layout = plot()->plotLayout(); + + bool showHScrollBar = needScrollBar(Qt::Horizontal); + if ( showHScrollBar ) + { + ScrollBar *sb = scrollBar(Qt::Horizontal); + + sb->setPalette(plot()->palette()); + + const QwtScaleDiv *sd = plot()->axisScaleDiv(xAxis); + sb->setInverted(sd->lowerBound() > sd->upperBound() ); + + sb->setBase(zoomBase().left(), zoomBase().right()); + sb->moveSlider(zoomRect().left(), zoomRect().right()); + + if ( !sb->isVisibleTo(canvas()) ) + { + sb->show(); + layout->setCanvasMargin(layout->canvasMargin(xScrollBarAxis) + + sb->extent(), xScrollBarAxis); + } + } + else + { + if ( horizontalScrollBar() ) + { + horizontalScrollBar()->hide(); + layout->setCanvasMargin(layout->canvasMargin(xScrollBarAxis) + - horizontalScrollBar()->extent(), xScrollBarAxis); + } + } + + bool showVScrollBar = needScrollBar(Qt::Vertical); + if ( showVScrollBar ) + { + ScrollBar *sb = scrollBar(Qt::Vertical); + + sb->setPalette(plot()->palette()); + + const QwtScaleDiv *sd = plot()->axisScaleDiv(yAxis); + sb->setInverted(sd->lowerBound() < sd->upperBound() ); + + sb->setBase(zoomBase().top(), zoomBase().bottom()); + sb->moveSlider(zoomRect().top(), zoomRect().bottom()); + + if ( !sb->isVisibleTo(canvas()) ) + { + sb->show(); + layout->setCanvasMargin(layout->canvasMargin(yScrollBarAxis) + + sb->extent(), yScrollBarAxis); + } + } + else + { + if ( verticalScrollBar() ) + { + verticalScrollBar()->hide(); + layout->setCanvasMargin(layout->canvasMargin(yScrollBarAxis) + - verticalScrollBar()->extent(), yScrollBarAxis); + } + } + + if ( showHScrollBar && showVScrollBar ) + { + if ( d_cornerWidget == NULL ) + { + d_cornerWidget = new QWidget(canvas()); + d_cornerWidget->setAutoFillBackground(true); + d_cornerWidget->setPalette(plot()->palette()); + } + d_cornerWidget->show(); + } + else + { + if ( d_cornerWidget ) + d_cornerWidget->hide(); + } + + layoutScrollBars(((QwtPlotCanvas *)canvas())->contentsRect()); + plot()->updateLayout(); +} + +void ScrollZoomer::layoutScrollBars(const QRect &rect) +{ + int hPos = xAxis(); + if ( hScrollBarPosition() == OppositeToScale ) + hPos = oppositeAxis(hPos); + + int vPos = yAxis(); + if ( vScrollBarPosition() == OppositeToScale ) + vPos = oppositeAxis(vPos); + + ScrollBar *hScrollBar = horizontalScrollBar(); + ScrollBar *vScrollBar = verticalScrollBar(); + + const int hdim = hScrollBar ? hScrollBar->extent() : 0; + const int vdim = vScrollBar ? vScrollBar->extent() : 0; + + if ( hScrollBar && hScrollBar->isVisible() ) + { + int x = rect.x(); + int y = (hPos == QwtPlot::xTop) + ? rect.top() : rect.bottom() - hdim + 1; + int w = rect.width(); + + if ( vScrollBar && vScrollBar->isVisible() ) + { + if ( vPos == QwtPlot::yLeft ) + x += vdim; + w -= vdim; + } + + hScrollBar->setGeometry(x, y, w, hdim); + } + if ( vScrollBar && vScrollBar->isVisible() ) + { + int pos = yAxis(); + if ( vScrollBarPosition() == OppositeToScale ) + pos = oppositeAxis(pos); + + int x = (vPos == QwtPlot::yLeft) + ? rect.left() : rect.right() - vdim + 1; + int y = rect.y(); + + int h = rect.height(); + + if ( hScrollBar && hScrollBar->isVisible() ) + { + if ( hPos == QwtPlot::xTop ) + y += hdim; + + h -= hdim; + } + + vScrollBar->setGeometry(x, y, vdim, h); + } + if ( hScrollBar && hScrollBar->isVisible() && + vScrollBar && vScrollBar->isVisible() ) + { + if ( d_cornerWidget ) + { + QRect cornerRect( + vScrollBar->pos().x(), hScrollBar->pos().y(), + vdim, hdim); + d_cornerWidget->setGeometry(cornerRect); + } + } +} + +void ScrollZoomer::scrollBarMoved( + Qt::Orientation o, double min, double max) +{ + Q_UNUSED(max); + + if ( o == Qt::Horizontal ) + moveTo( QPointF( min, zoomRect().top() ) ); + else + moveTo( QPointF( zoomRect().left(), min ) ); + + Q_EMIT zoomed(zoomRect()); +} + +int ScrollZoomer::oppositeAxis(int axis) const +{ + switch(axis) + { + case QwtPlot::xBottom: + return QwtPlot::xTop; + case QwtPlot::xTop: + return QwtPlot::xBottom; + case QwtPlot::yLeft: + return QwtPlot::yRight; + case QwtPlot::yRight: + return QwtPlot::yLeft; + default: + break; + } + + return axis; +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/realtime/scrollzoomer.h phyxcalc-3rev200/qwt-6.0.0/examples/realtime/scrollzoomer.h --- phyxcalc-3rev200/qwt-6.0.0/examples/realtime/scrollzoomer.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/realtime/scrollzoomer.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,66 @@ +#ifndef _SCROLLZOOMER_H +#define _SCROLLZOOMER_H + +#include +#include + +class ScrollData; +class ScrollBar; + +class ScrollZoomer: public QwtPlotZoomer +{ + Q_OBJECT +public: + enum ScrollBarPosition + { + AttachedToScale, + OppositeToScale + }; + + ScrollZoomer(QwtPlotCanvas *); + virtual ~ScrollZoomer(); + + ScrollBar *horizontalScrollBar() const; + ScrollBar *verticalScrollBar() const; + + void setHScrollBarMode(Qt::ScrollBarPolicy); + void setVScrollBarMode(Qt::ScrollBarPolicy); + + Qt::ScrollBarPolicy vScrollBarMode () const; + Qt::ScrollBarPolicy hScrollBarMode () const; + + void setHScrollBarPosition(ScrollBarPosition); + void setVScrollBarPosition(ScrollBarPosition); + + ScrollBarPosition hScrollBarPosition() const; + ScrollBarPosition vScrollBarPosition() const; + + QWidget* cornerWidget() const; + virtual void setCornerWidget(QWidget *); + + virtual bool eventFilter(QObject *, QEvent *); + + virtual void rescale(); + +protected: + virtual ScrollBar *scrollBar(Qt::Orientation); + virtual void updateScrollBars(); + virtual void layoutScrollBars(const QRect &); + +private Q_SLOTS: + void scrollBarMoved(Qt::Orientation o, double min, double max); + +private: + bool needScrollBar(Qt::Orientation) const; + int oppositeAxis(int) const; + + QWidget *d_cornerWidget; + + ScrollData *d_hScrollData; + ScrollData *d_vScrollData; + + bool d_inZoom; + bool d_alignCanvasToScales; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/realtime/start.xpm phyxcalc-3rev200/qwt-6.0.0/examples/realtime/start.xpm --- phyxcalc-3rev200/qwt-6.0.0/examples/realtime/start.xpm 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/realtime/start.xpm 2011-04-15 10:48:46.000000000 +0000 @@ -0,0 +1,266 @@ +/* XPM */ +static const char *start_xpm[] = { +/* width height num_colors chars_per_pixel */ +" 32 32 227 2", +/* colors */ +".. c #040204", +".# c #848684", +".a c #c4c2b4", +".b c #843a04", +".c c #444244", +".d c #ece2cc", +".e c #fca234", +".f c #c45e04", +".g c #bca27c", +".h c #646264", +".i c #e4c69c", +".j c #847254", +".k c #c4a684", +".l c #443e34", +".m c #a48e6c", +".n c #f4f2e4", +".o c #24261c", +".p c #a44a04", +".q c #c4825c", +".r c #644634", +".s c #b4b2ac", +".t c #747274", +".u c #844e2c", +".v c #ece6dc", +".w c #c4b6a4", +".x c #a49274", +".y c #343634", +".z c #fcd69c", +".A c #b4aa9c", +".B c #8c8e8c", +".C c #545254", +".D c #f4f2ec", +".E c #fcb67c", +".F c #e4965c", +".G c #e46634", +".H c #141614", +".I c #d4c2a4", +".J c #746a5c", +".K c #fcc2a4", +".L c #342a1c", +".M c #fc9204", +".N c #a45e2c", +".O c #94521c", +".P c #a4560c", +".Q c #645e54", +".R c #ec7a04", +".S c #f4deac", +".T c #5c462c", +".U c #bcaa8c", +".V c #d4be9c", +".W c #fcfaf4", +".X c #d4cab4", +".Y c #1c0a04", +".Z c #6c6a6c", +".0 c #e4caa4", +".1 c #2c2a1c", +".2 c #74462c", +".3 c #84562c", +".4 c #f4eee4", +".5 c #c4beb4", +".6 c #a49a84", +".7 c #f4ba7c", +".8 c #dc966c", +".9 c #948674", +"#. c #fc8a04", +"## c #f4eab4", +"#a c #fcb26c", +"#b c #c4ae94", +"#c c #f4e6d4", +"#d c #9c8e74", +"#e c #fc7e04", +"#f c #140604", +"#g c #b4a28c", +"#h c #6c625c", +"#i c #8c7e64", +"#j c #f4ae84", +"#k c #e4decc", +"#l c #ac5204", +"#m c #e48a4c", +"#n c #7c7a7c", +"#o c #ccba9c", +"#p c #fcd2b4", +"#q c #bcae9c", +"#r c #dcc6a4", +"#s c #ac723c", +"#t c #e4ceb4", +"#u c #ec9e74", +"#v c #8c8a8c", +"#w c #8c4204", +"#x c #4c4a34", +"#y c #7c3a04", +"#z c #fcfecc", +"#A c #2c221c", +"#B c #ac4e04", +"#C c #d48264", +"#D c #bcb2a4", +"#E c #a49684", +"#F c #b4aeac", +"#G c #5c5a5c", +"#H c #fcf2ec", +"#I c #fcb28c", +"#J c #7c6e5c", +"#K c #fcce9c", +"#L c #3c2e24", +"#M c #bc9e71", +"#N c #fc922c", +"#O c #bc622c", +"#P c #b45604", +"#Q c #f47a08", +"#R c #fcdeb8", +"#S c #544e44", +"#T c #fcfefc", +"#U c #e4ceaa", +"#V c #8c5a2c", +"#W c #e49e7c", +"#X c #f4eadb", +"#Y c #9c9284", +"#Z c #f4ae90", +"#0 c #c47e5c", +"#1 c #bc824c", +"#2 c #e47634", +"#3 c #e46e24", +"#4 c #b48e6c", +"#5 c #7c5a4c", +"#6 c #744e2c", +"#7 c #fcba9c", +"#8 c #cccacc", +"#9 c #f4722c", +"a. c #c46224", +"a# c #e47a54", +"aa c #ac663c", +"ab c #fce2cc", +"ac c #945634", +"ad c #fceacc", +"ae c #3c3e3c", +"af c #ec9e54", +"ag c #843e1c", +"ah c #fccab0", +"ai c #8c8274", +"aj c #4c4634", +"ak c #ecc2ac", +"al c #8c765c", +"am c #7c7264", +"an c #e49a7c", +"ao c #6c4e34", +"ap c #fc9a2c", +"aq c #4c4a4c", +"ar c #ccbea4", +"as c #fcf6dc", +"at c #3c3a3c", +"au c #949294", +"av c #fceebc", +"aw c #fcaa7c", +"ax c #ecdac8", +"ay c #0c0604", +"az c #fc8204", +"aA c #847664", +"aB c #e4d6c4", +"aC c #fcd2ac", +"aD c #1c1a14", +"aE c #342e2c", +"aF c #240e04", +"aG c #2c2e2c", +"aH c #fcbe7c", +"aI c #fc8e14", +"aJ c #fc7a14", +"aK c #944604", +"aL c #7c3e14", +"aM c #fcfadc", +"aN c #645244", +"aO c #bcb6b4", +"aP c #bc5604", +"aQ c #7c522c", +"aR c #cc8264", +"aS c #dccab0", +"aT c #ac9a84", +"aU c #f4e2cc", +"aV c #a45e3c", +"aW c #9c5634", +"aX c #fca634", +"aY c #c4aa89", +"aZ c #a44e07", +"a0 c #b4b6b4", +"a1 c #c4baa9", +"a2 c #a4967c", +"a3 c #b4aea4", +"a4 c #d4c6a8", +"a5 c #5c4a34", +"a6 c #bcae94", +"a7 c #845a2c", +"a8 c #948a7c", +"a9 c #c4b299", +"b. c #b4a690", +"b# c #6c6658", +"ba c #fcd6b4", +"bb c #2c261d", +"bc c #fcf6f0", +"bd c #fcb694", +"be c #fc9624", +"bf c #646664", +"bg c #747674", +"bh c #eceadc", +"bi c #545654", +"bj c #b49e7c", +"bk c #6c6e6c", +"bl c #fc8e04", +"bm c #fcb66c", +"bn c #7c7e7c", +"bo c #5c5e5c", +"bp c #8c8674", +"bq c #fc8604", +"br c #bc5a04", +"bs c #fca23c", +"bt c #443e3c", +"bu c #a4927c", +"bv c #b4aaa4", +"bw c #746a64", +"bx c #342a24", +"by c #fcfafc", +"bz c #2c2a24", +"bA c #a49a8c", +"bB c #bcbabc", +"bC c #9c8e7c", +"bD c #8c7e6c", +"bE c #ccbaa4", +"bF c #fcd2bc", +"bG c #fcb294", +/* pixels */ +"#Gbi#G.#bnbg.t.Zbfbf.hbo#G.Caqaq.c.C.C.C.C.C.C.C.C.C.C.Cbi#Gbi#G", +"#Gbi#Gbg#8#8.a#8#8#8#8#8#8#8#8.B#8#8#8#8#8#8#8#8#8#8#8.C#Gbi#Gbi", +"bi#Gbi#n#8#T#T#T#T#T#T#T#T#T#TbB#T#T#T#T#T#T#T#T#T#T#8aq#6afbm#z", +"#Gbi#Gbk#8#T#T#T#T#T#T#T#T#T#TbB#T#T#T#T#T#T#T#T#T#T#8#6af#aavaX", +"bi#Gbibk#8#T#T#T#T#T#T#T#T#T#TbB#T#T#T#T#T#T#T#T#T#T#6af#a##aX#.", +"#Gbi#Gbk#8#T#T#T#T#T#T#T#T#T#TbB#T#T#T#T#T#T#T#T#T.3af#a.S.e#.bq", +"#Gbi#G.Z#8#T#T#T#T#T#T#T#T#T#TbB#T#T#T#T#T#T#T#TaQaf#a#R.e#eazbq", +"bi#GbibkaubBbBbBbBbBbBbBbBbBbBbBbBbBbBbBbBbBbBa7af#aba.e#eazbq.M", +"#Gbi#G.Z#8#T#T#T#T#T#T#T#T#T#TbB#T#T#T#T#T#T#Vaf#ababs#ebqbq#.az", +"#Gbi#Gbf#8#T#T#T#T#T#T#T#T#T#TbB#T#T#Tby#T#saf#a#Kap#ebqbqbl#Q.f", +"bi#Gbi.Z#8#T#T#T#T#T#T#T#T#T#TbB#T#T#T#T.Naf#a.z#N#ebqbqbl.R.f#l", +"#Gbi#Gbf#8#T#T#T#T#T#T#T#T#T#TbB#T#T#T#1af.EaHbe#ebqbq#..Rbr#B#y", +"bi#Gbibf#8#T#T#T#T#T#T#T#T#T#TbB#T#T.F.7#jawaI#ebqbqbl.R#PaZ.b..", +"#Gbi#GbfaubBbBbBbBbBbBbBbBbBbBbBbBbG#RaMak#m#ebqbqbl#Q#P#B#w.Y.y", +"bi#Gbibf#8#T#T#T#T#T#T#T#T#T#TaObyaC.Wab#Z#2bqbq.M.RaP.p#way.y.y", +"#Gbi#G.h#8#T#T#T#T#T#T#T#T#Tbya0#I#Tad.K#j#2#QaJ.Rbr.p#yaF.y.yat", +"bi#Gbi.h#8#T#T#T#T#T#T#T#Tby.W.saCasba#Za#.G#9#3aPaZaK.Y.y.yat.c", +"#Gbi#Gbo#8#T#T#T#T#T#T#Tby.Wbc#I#T#p#7.8#0a.#O.P.paLay...yatbtaq", +"bi#Gbi.h#8#T#T#T#T#T#Tby.Wbc.DaCadah#W#0aa.O.2.ragaF#h..ataeaq.C", +"#Gbi#GboaubBbBbBbBbBaOa0.sa3bdasahanaRaV.u.Ta5ae#f.Q#S..aeaq.Cbi", +"bi#Gbibo#8#T#T#T#T.Wbcbc.D#HaCbF#uaRaWaQa5ajbt.HbDai#J..aq.Cbibi", +"#Gbi#Gbo#8#T#Tby.W.W.D#H.nbdab#u#Cac.uaN.o..bDaiaia8#i...Cbibi#G", +"bi#Gbibo#8#T#Tbybc.Dbc.n.4#4.8.q#5.r.l..#vbDaia8a2#g#d..bibi#Gbi", +"#Gbi#G#G#8#T.Wbc.D#H.D#X.j.Lao#5#L.H#vaibpbpbCaT.U#oa2..bi#Gbi#G", +"bi#Gbi#G#8.Wbc.D#H.n.4bjajaD#A...#bpai.9bC#E#ga9.V#r.gbb#Gbi#Gbi", +"#Gbi#Gbiaua0.s.s#Fa3bvaG....#vbwb#b#.JbwaA#i.9bC.m.xal.1bi#Gbi#G", +"bi#Gbi#G#8.D#H.4.4#X.v#x#v#qbAb##Y.6b.a6ar.I#r#r.0.i.g.Lbi#Gbi#G", +"bi#Gbibi#8.D.4.4#X#c.vax.X.AbAamb.#D#oa4aS#r.0.0.i.i#M#A#Gbi#Gbi", +"#Gbi#G.C#8.n.4#X#X.daUaBaS.wa6aiar#raS.0#U#U.0.i.0#r#Mbb#Gbi#Gbi", +"bi#Gbiaq#8.4#Xbh.v#c.d#kaB.Xa4buaS#U#t#U#U.0.0#r.i.i#Mbbbi#Gbi#G", +"#Gbi#Gae.a.a.5a1bE.w.w.w#ba6.U#iaYaYaY.k.g.g.g#M#M#M#M.Lbi#Gbi#G", +"bi#Gbi.HbxaEbxaEbz.LaEbzbzbbbzbbbbbxbb.Lbbbb.1.Lbb.1#Aay#Gbi#Gbi" +}; diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/circularbuffer.cpp phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/circularbuffer.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/circularbuffer.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/circularbuffer.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,73 @@ +#include "circularbuffer.h" +#include + +CircularBuffer::CircularBuffer(double interval, size_t numPoints): + d_y(NULL), + d_referenceTime(0.0), + d_startIndex(0), + d_offset(0.0) +{ + fill(interval, numPoints); +} + +void CircularBuffer::fill(double interval, size_t numPoints) +{ + if ( interval <= 0.0 || numPoints < 2 ) + return; + + d_values.resize(numPoints); + d_values.fill(0.0); + + if ( d_y ) + { + d_step = interval / (numPoints - 2); + for ( size_t i = 0; i < numPoints; i++ ) + d_values[i] = d_y(i * d_step); + } + + d_interval = interval; +} + +void CircularBuffer::setFunction(double(*y)(double)) +{ + d_y = y; +} + +void CircularBuffer::setReferenceTime(double timeStamp) +{ + d_referenceTime = timeStamp; + + const double startTime = ::fmod(d_referenceTime, d_values.size() * d_step); + + d_startIndex = int(startTime / d_step); // floor + d_offset = ::fmod(startTime, d_step); +} + +double CircularBuffer::referenceTime() const +{ + return d_referenceTime; +} + +size_t CircularBuffer::size() const +{ + return d_values.size(); +} + +QPointF CircularBuffer::sample(size_t i) const +{ + const int size = d_values.size(); + + int index = d_startIndex + i; + if ( index >= size ) + index -= size; + + const double x = i * d_step - d_offset - d_interval; + const double y = d_values.data()[index]; + + return QPointF(x, y); +} + +QRectF CircularBuffer::boundingRect() const +{ + return QRectF(-1.0, -d_interval, 2.0, d_interval); +} \ No newline at end of file diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/circularbuffer.h phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/circularbuffer.h --- phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/circularbuffer.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/circularbuffer.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,35 @@ +#ifndef _CIRCULAR_BUFFER_H_ +#define _CIRCULAR_BUFFER_H_ + +#include +#include + +class CircularBuffer: public QwtSeriesData +{ +public: + CircularBuffer(double interval = 10.0, size_t numPoints = 1000); + void fill(double interval, size_t numPoints); + + void setReferenceTime(double); + double referenceTime() const; + + virtual size_t size() const; + virtual QPointF sample(size_t i) const; + + virtual QRectF boundingRect() const; + + void setFunction(double(*y)(double)); + +private: + double (*d_y)(double); + + double d_referenceTime; + double d_interval; + QVector d_values; + + double d_step; + int d_startIndex; + double d_offset; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/main.cpp phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/main.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/main.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/main.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,13 @@ +#include +#include "mainwindow.h" + +int main(int argc, char **argv) +{ + QApplication a(argc, argv); + + MainWindow mainWindow; + mainWindow.resize(600,400); + mainWindow.show(); + + return a.exec(); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/mainwindow.cpp phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/mainwindow.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/mainwindow.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/mainwindow.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,68 @@ +#include +#include +#include +#include +#include +#include +#include "panel.h" +#include "plot.h" +#include "mainwindow.h" + +MainWindow::MainWindow(QWidget *parent): + QMainWindow(parent) +{ + QWidget *w = new QWidget(this); + + d_panel = new Panel(w); + + d_plot = new Plot(w); + d_plot->canvas()->installEventFilter(this); + + QHBoxLayout *hLayout = new QHBoxLayout(w); + hLayout->addWidget(d_panel); + hLayout->addWidget(d_plot, 10); + + setCentralWidget(w); + + d_frameCount = new QLabel(this); + statusBar()->addWidget(d_frameCount, 10); + + d_plot->setSettings(d_panel->settings()); + + connect(d_panel, SIGNAL(settingsChanged(const Settings &)), + d_plot, SLOT(setSettings(const Settings &))); +} + +bool MainWindow::eventFilter(QObject *object, QEvent *event) +{ + if ( object == d_plot->canvas() && event->type() == QEvent::Paint ) + { + static int counter; + static QTime timeStamp; + + if ( !timeStamp.isValid() ) + { + timeStamp.start(); + counter = 0; + } + else + { + counter++; + + const double elapsed = timeStamp.elapsed() / 1000.0; + if ( elapsed >= 1 ) + { + QString fps; + fps.setNum(qRound(counter / elapsed)); + fps += " Fps"; + + d_frameCount->setText(fps); + + counter = 0; + timeStamp.start(); + } + } + } + + return QMainWindow::eventFilter(object, event); +}; diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/mainwindow.h phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/mainwindow.h --- phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/mainwindow.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/mainwindow.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,22 @@ +#ifndef _MAIN_WINDOW_H_ +#define _MAIN_WINDOW_H_ + +#include + +class Plot; +class Panel; +class QLabel; + +class MainWindow: public QMainWindow +{ +public: + MainWindow(QWidget *parent = NULL); + virtual bool eventFilter(QObject *, QEvent *); + +private: + Plot *d_plot; + Panel *d_panel; + QLabel *d_frameCount; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/panel.cpp phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/panel.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/panel.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/panel.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,264 @@ +#include "panel.h" +#include +#include +#include +#include +#include +#include + +class SpinBox: public QSpinBox +{ +public: + SpinBox(int min, int max, int step, QWidget *parent): + QSpinBox(parent) + { + setRange(min, max); + setSingleStep(step); + } +}; + +class CheckBox: public QCheckBox +{ +public: + CheckBox(const QString &title, QWidget *parent): + QCheckBox(title, parent) + { + } + + void setChecked(bool checked) + { + setCheckState(checked ? Qt::Checked : Qt::Unchecked); + } + + bool isChecked() const + { + return checkState() == Qt::Checked; + } +}; + +Panel::Panel(QWidget *parent): + QTabWidget(parent) +{ + setTabPosition(QTabWidget::West); + + addTab(createPlotTab(this), "Plot"); + addTab(createCanvasTab(this), "Canvas"); + addTab(createCurveTab(this), "Curve"); + + setSettings(Settings()); + + connect(d_numPoints, SIGNAL(valueChanged(int)), SLOT(edited()) ); + connect(d_updateInterval, SIGNAL(valueChanged(int)), SLOT(edited()) ); + connect(d_curveWidth, SIGNAL(valueChanged(int)), SLOT(edited()) ); + connect(d_paintCache, SIGNAL(stateChanged(int)), SLOT(edited()) ); + connect(d_paintOnScreen, SIGNAL(stateChanged(int)), SLOT(edited()) ); + connect(d_immediatePaint, SIGNAL(stateChanged(int)), SLOT(edited()) ); + connect(d_curveAntialiasing, SIGNAL(stateChanged(int)), SLOT(edited()) ); + connect(d_curveClipping, SIGNAL(stateChanged(int)), SLOT(edited()) ); + connect(d_lineSplitting, SIGNAL(stateChanged(int)), SLOT(edited()) ); + connect(d_curveFilled, SIGNAL(stateChanged(int)), SLOT(edited()) ); + + connect(d_updateType, SIGNAL(currentIndexChanged(int)), SLOT(edited()) ); + connect(d_gridStyle, SIGNAL(currentIndexChanged(int)), SLOT(edited()) ); + connect(d_curveType, SIGNAL(currentIndexChanged(int)), SLOT(edited()) ); + connect(d_curvePen, SIGNAL(currentIndexChanged(int)), SLOT(edited()) ); +} + +QWidget *Panel::createPlotTab(QWidget *parent) +{ + QWidget *page = new QWidget(parent); + + d_updateInterval = new SpinBox(0, 1000, 10, page); + d_numPoints = new SpinBox(10, 1000000, 1000, page); + + d_updateType = new QComboBox(page); + d_updateType->addItem("Repaint"); + d_updateType->addItem("Replot"); + + int row = 0; + + QGridLayout *layout = new QGridLayout(page); + + layout->addWidget(new QLabel("Updates", page), row, 0 ); + layout->addWidget(d_updateInterval, row, 1); + layout->addWidget(new QLabel("ms", page), row++, 2 ); + + layout->addWidget(new QLabel("Points", page), row, 0 ); + layout->addWidget(d_numPoints, row++, 1); + + layout->addWidget(new QLabel("Update", page), row, 0 ); + layout->addWidget(d_updateType, row++, 1); + + layout->addLayout(new QHBoxLayout(), row++, 0); + + layout->setColumnStretch(1, 10); + layout->setRowStretch(row, 10); + + return page; +} + +QWidget *Panel::createCanvasTab(QWidget *parent) +{ + QWidget *page = new QWidget(parent); + + d_gridStyle = new QComboBox(page); + d_gridStyle->addItem("None"); + d_gridStyle->addItem("Solid"); + d_gridStyle->addItem("Dashes"); + + d_paintCache = new CheckBox("Paint Cache", page); + d_paintOnScreen = new CheckBox("Paint On Screen", page); + d_immediatePaint = new CheckBox("Immediate Paint", page); + + int row = 0; + + QGridLayout *layout = new QGridLayout(page); + layout->addWidget(new QLabel("Grid", page), row, 0); + layout->addWidget(d_gridStyle, row++, 1); + + layout->addWidget(d_paintCache, row++, 0, 1, -1); + layout->addWidget(d_paintOnScreen, row++, 0, 1, -1); + layout->addWidget(d_immediatePaint, row++, 0, 1, -1); + + layout->addLayout(new QHBoxLayout(), row++, 0); + + layout->setColumnStretch(1, 10); + layout->setRowStretch(row, 10); + + return page; +} + +QWidget *Panel::createCurveTab(QWidget *parent) +{ + QWidget *page = new QWidget(parent); + + d_curveType = new QComboBox(page); + d_curveType->addItem("Wave"); + d_curveType->addItem("Noise"); + + d_curveAntialiasing = new CheckBox("Antialiasing", page); + d_curveClipping = new CheckBox("Clipping", page); + d_lineSplitting = new CheckBox("Split Lines", page); + + d_curveWidth = new SpinBox(0, 10, 1, page); + + d_curvePen = new QComboBox(page); + d_curvePen->addItem("Solid"); + d_curvePen->addItem("Dotted"); + + d_curveFilled = new CheckBox("Filled", page); + + int row = 0; + + QGridLayout *layout = new QGridLayout(page); + layout->addWidget(new QLabel("Type", page), row, 0 ); + layout->addWidget(d_curveType, row++, 1); + + layout->addWidget(d_curveAntialiasing, row++, 0, 1, -1); + layout->addWidget(d_curveClipping, row++, 0, 1, -1); + layout->addWidget(d_lineSplitting, row++, 0, 1, -1); + + layout->addWidget(new QLabel("Width", page), row, 0 ); + layout->addWidget(d_curveWidth, row++, 1); + + layout->addWidget(new QLabel("Style", page), row, 0 ); + layout->addWidget(d_curvePen, row++, 1); + + layout->addWidget(d_curveFilled, row++, 0, 1, -1); + + layout->addLayout(new QHBoxLayout(), row++, 0); + + layout->setColumnStretch(1, 10); + layout->setRowStretch(row, 10); + + return page; +} + +void Panel::edited() +{ + const Settings s = settings(); + Q_EMIT settingsChanged(s); +} + + +Settings Panel::settings() const +{ + Settings s; + + s.grid.pen = QPen(Qt::black); + + switch(d_gridStyle->currentIndex()) + { + case 0: + s.grid.pen.setStyle(Qt::NoPen); + break; + case 2: + s.grid.pen.setStyle(Qt::DashLine); + break; + } + + s.curve.pen.setStyle(d_curvePen->currentIndex() == 0 ? + Qt::SolidLine : Qt::DotLine); + s.curve.pen.setWidth(d_curveWidth->value()); + s.curve.brush.setStyle((d_curveFilled->isChecked()) ? + Qt::SolidPattern : Qt::NoBrush); + s.curve.numPoints = d_numPoints->value(); + s.curve.functionType = (Settings::FunctionType)d_curveType->currentIndex(); + if ( d_curveClipping->isChecked() ) + s.curve.paintAttributes |= QwtPlotCurve::ClipPolygons; + else + s.curve.paintAttributes &= ~QwtPlotCurve::ClipPolygons; + + if ( d_curveAntialiasing->isChecked() ) + s.curve.renderHint |= QwtPlotCurve::RenderAntialiased; + else + s.curve.renderHint &= ~QwtPlotCurve::RenderAntialiased; + + s.curve.lineSplitting = (d_lineSplitting->isChecked() ); + + s.canvas.useBackingStore = (d_paintCache->isChecked() ); + s.canvas.paintOnScreen = (d_paintOnScreen->isChecked() ); + s.canvas.immediatePaint = (d_immediatePaint->isChecked() ); + + s.updateInterval = d_updateInterval->value(); + s.updateType = (Settings::UpdateType)d_updateType->currentIndex(); + + return s; +} + +void Panel::setSettings(const Settings &s) +{ + d_numPoints->setValue(s.curve.numPoints); + d_updateInterval->setValue(s.updateInterval); + d_updateType->setCurrentIndex(s.updateType); + + switch(s.grid.pen.style()) + { + case Qt::NoPen: + d_gridStyle->setCurrentIndex(0); + break; + case Qt::DashLine: + d_gridStyle->setCurrentIndex(2); + break; + default: + d_gridStyle->setCurrentIndex(1); // Solid + } + + d_paintCache->setChecked(s.canvas.useBackingStore ); + d_paintOnScreen->setChecked(s.canvas.paintOnScreen); + d_immediatePaint->setChecked(s.canvas.immediatePaint); + + d_curveType->setCurrentIndex(s.curve.functionType); + d_curveAntialiasing->setChecked( + s.curve.renderHint & QwtPlotCurve::RenderAntialiased ); + + d_curveClipping->setChecked( + s.curve.paintAttributes & QwtPlotCurve::ClipPolygons); + + d_lineSplitting->setChecked(s.curve.lineSplitting ); + + d_curveWidth->setValue(s.curve.pen.width()); + d_curvePen->setCurrentIndex( + s.curve.pen.style() == Qt::SolidLine ? 0 : 1); + d_curveFilled->setChecked(s.curve.brush.style() != Qt::NoBrush); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/panel.h phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/panel.h --- phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/panel.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/panel.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,50 @@ +#ifndef _PANEL_H_ +#define _PANEL_H_ 1 + +#include "settings.h" +#include + +class QComboBox; +class SpinBox; +class CheckBox; + +class Panel: public QTabWidget +{ + Q_OBJECT + +public: + Panel(QWidget * = NULL); + + Settings settings() const; + void setSettings(const Settings &); + +Q_SIGNALS: + void settingsChanged(const Settings &); + +private Q_SLOTS: + void edited(); + +private: + QWidget *createPlotTab(QWidget *); + QWidget *createCanvasTab(QWidget *); + QWidget *createCurveTab(QWidget *); + + SpinBox *d_numPoints; + SpinBox *d_updateInterval; + QComboBox *d_updateType; + + QComboBox *d_gridStyle; + CheckBox *d_paintCache; + CheckBox *d_paintOnScreen; + CheckBox *d_immediatePaint; + + QComboBox *d_curveType; + CheckBox *d_curveAntialiasing; + CheckBox *d_curveClipping; + CheckBox *d_lineSplitting; + SpinBox *d_curveWidth; + QComboBox *d_curvePen; + CheckBox *d_curveFilled; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/plot.cpp phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/plot.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/plot.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/plot.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,161 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include "plot.h" +#include "circularbuffer.h" +#include "settings.h" + +static double wave(double x) +{ + const double period = 1.0; + const double c = 5.0; + + double v = ::fmod(x, period); + + const double amplitude = qAbs(x - qRound(x / c) * c) / ( 0.5 * c ); + v = amplitude * qSin(v / period * 2 * M_PI); + + return v; +} + +static double noise(double) +{ + return 2.0 * ( qrand() / ((double)RAND_MAX + 1) ) - 1.0; +} + +Plot::Plot(QWidget *parent): + QwtPlot(parent), + d_interval(10.0), // seconds + d_timerId(-1) +{ + // Assign a title + setTitle("Testing Refresh Rates"); + + setCanvasBackground(Qt::white); + + alignScales(); + + // Insert grid + d_grid = new QwtPlotGrid(); + d_grid->attach(this); + + // Insert curve + d_curve = new QwtPlotCurve("Data Moving Right"); + d_curve->setPen(QPen(Qt::black)); + d_curve->setData(new CircularBuffer(d_interval, 10)); + d_curve->attach(this); + + // Axis + setAxisTitle(QwtPlot::xBottom, "Seconds"); + setAxisScale(QwtPlot::xBottom, -d_interval, 0.0); + + setAxisTitle(QwtPlot::yLeft, "Values"); + setAxisScale(QwtPlot::yLeft, -1.0, 1.0); + + d_clock.start(); + + setSettings(d_settings); +} + +// +// Set a plain canvas frame and align the scales to it +// +void Plot::alignScales() +{ + // The code below shows how to align the scales to + // the canvas frame, but is also a good example demonstrating + // why the spreaded API needs polishing. + + canvas()->setFrameStyle(QFrame::Box | QFrame::Plain ); + canvas()->setLineWidth(1); + + for ( int i = 0; i < QwtPlot::axisCnt; i++ ) + { + QwtScaleWidget *scaleWidget = (QwtScaleWidget *)axisWidget(i); + if ( scaleWidget ) + scaleWidget->setMargin(0); + + QwtScaleDraw *scaleDraw = (QwtScaleDraw *)axisScaleDraw(i); + if ( scaleDraw ) + scaleDraw->enableComponent(QwtAbstractScaleDraw::Backbone, false); + } + + plotLayout()->setAlignCanvasToScales(true); +} + +void Plot::setSettings(const Settings &s) +{ + if ( d_timerId >= 0 ) + killTimer(d_timerId); + + d_timerId = startTimer(s.updateInterval); + + d_grid->setPen(s.grid.pen); + d_grid->setVisible(s.grid.pen.style() != Qt::NoPen); + + CircularBuffer *buffer = (CircularBuffer *)d_curve->data(); + if ( s.curve.numPoints != buffer->size() || + s.curve.functionType != d_settings.curve.functionType ) + { + + switch(s.curve.functionType) + { + case Settings::Wave: + buffer->setFunction(wave); + break; + case Settings::Noise: + buffer->setFunction(noise); + break; + default: + buffer->setFunction(NULL); + } + + buffer->fill(d_interval, s.curve.numPoints); + } + + d_curve->setPen(s.curve.pen); + d_curve->setBrush(s.curve.brush); + + d_curve->setPaintAttribute(QwtPlotCurve::ClipPolygons, + s.curve.paintAttributes & QwtPlotCurve::ClipPolygons); + d_curve->setRenderHint(QwtPlotCurve::RenderAntialiased, + s.curve.renderHint & QwtPlotCurve::RenderAntialiased); + + canvas()->setAttribute(Qt::WA_PaintOnScreen, s.canvas.paintOnScreen); + + canvas()->setPaintAttribute( + QwtPlotCanvas::BackingStore, s.canvas.useBackingStore); + canvas()->setPaintAttribute( + QwtPlotCanvas::ImmediatePaint, s.canvas.immediatePaint); + + QwtPainter::setPolylineSplitting(s.curve.lineSplitting); + + d_settings = s; +} + +void Plot::timerEvent(QTimerEvent *) +{ + CircularBuffer *buffer = (CircularBuffer *)d_curve->data(); + buffer->setReferenceTime(d_clock.elapsed() / 1000.0); + + switch(d_settings.updateType) + { + case Settings::RepaintCanvas: + { + // the axes in this example doesn't change. So all we need to do + // is to repaint the canvas. + + canvas()->replot(); + break; + } + default: + { + replot(); + } + } +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/plot.h phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/plot.h --- phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/plot.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/plot.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,38 @@ +#ifndef _PLOT_H_ +#define _PLOT_H_ 1 + +#include +#include +#include "settings.h" + +class QwtPlotGrid; +class QwtPlotCurve; + +class Plot: public QwtPlot +{ + Q_OBJECT + +public: + Plot(QWidget* = NULL); + +public Q_SLOTS: + void setSettings(const Settings &); + +protected: + virtual void timerEvent(QTimerEvent *e); + +private: + void alignScales(); + + QwtPlotGrid *d_grid; + QwtPlotCurve *d_curve; + + QwtSystemClock d_clock; + double d_interval; + + int d_timerId; + + Settings d_settings; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/refreshtest.pro phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/refreshtest.pro --- phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/refreshtest.pro 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/refreshtest.pro 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,27 @@ +################################################################ +# Qwt Widget Library +# Copyright (C) 1997 Josef Wilgen +# Copyright (C) 2002 Uwe Rathmann +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the Qwt License, Version 1.0 +################################################################ + +include( $${PWD}/../examples.pri ) + +TARGET = refreshtest + +HEADERS = \ + settings.h \ + circularbuffer.h \ + panel.h \ + plot.h \ + mainwindow.h + +SOURCES = \ + circularbuffer.cpp \ + panel.cpp \ + plot.cpp \ + mainwindow.cpp \ + main.cpp + diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/settings.h phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/settings.h --- phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/settings.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/refreshtest/settings.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,70 @@ +#ifndef _SETTINGS_H_ +#define _SETTINGS_H_ + +#include +#include + +class Settings +{ +public: + enum FunctionType + { + NoFunction = -1, + + Wave, + Noise + }; + + enum UpdateType + { + RepaintCanvas, + Replot + }; + + Settings() + { + grid.pen = Qt::NoPen; + + curve.brush = Qt::NoBrush; + curve.numPoints = 1000; + curve.functionType = Wave; + curve.paintAttributes = 0; + curve.renderHint = 0; + curve.lineSplitting = true; + + canvas.useBackingStore = false; + canvas.paintOnScreen = false; + canvas.immediatePaint = true; + + updateType = RepaintCanvas; + updateInterval = 20; + } + + struct gridSettings + { + QPen pen; + } grid; + + struct curveSettings + { + QPen pen; + QBrush brush; + uint numPoints; + FunctionType functionType; + int paintAttributes; + int renderHint; + bool lineSplitting; + } curve; + + struct canvasSettings + { + bool useBackingStore; + bool paintOnScreen; + bool immediatePaint; + } canvas; + + UpdateType updateType; + int updateInterval; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/sinusplot/sinusplot.cpp phyxcalc-3rev200/qwt-6.0.0/examples/sinusplot/sinusplot.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/sinusplot/sinusplot.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/sinusplot/sinusplot.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,182 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +//----------------------------------------------------------------- +// simple.cpp +// +// A simple example which shows how to use QwtPlot connected +// to a data class without any storage, calculating each values +// on the fly. +//----------------------------------------------------------------- + +class FunctionData: public QwtSyntheticPointData +{ +public: + FunctionData(double(*y)(double)): + QwtSyntheticPointData(100), + d_y(y) + { + } + + virtual double y(double x) const + { + return d_y(x); + } + +private: + double(*d_y)(double); +}; + +class Plot : public QwtPlot +{ +public: + Plot( QWidget *parent = NULL); + +protected: + virtual void resizeEvent( QResizeEvent * ); + +private: + void populate(); + void updateGradient(); +}; + + +Plot::Plot(QWidget *parent): + QwtPlot( parent ) +{ + // panning with the left mouse button + (void) new QwtPlotPanner( canvas() ); + + // zoom in/out with the wheel + (void) new QwtPlotMagnifier( canvas() ); + + setAutoFillBackground( true ); + setPalette( QPalette( QColor( 165, 193, 228 ) ) ); + updateGradient(); + + setTitle("A Simple QwtPlot Demonstration"); + insertLegend(new QwtLegend(), QwtPlot::RightLegend); + + // axes + setAxisTitle(xBottom, "x -->" ); + setAxisScale(xBottom, 0.0, 10.0); + + setAxisTitle(yLeft, "y -->"); + setAxisScale(yLeft, -1.0, 1.0); + + // canvas + canvas()->setLineWidth( 1 ); + canvas()->setFrameStyle( QFrame::Box | QFrame::Plain ); + canvas()->setBorderRadius( 15 ); + + QPalette canvasPalette( Qt::white ); + canvasPalette.setColor( QPalette::Foreground, QColor( 133, 190, 232 ) ); + canvas()->setPalette( canvasPalette ); + + populate(); +} + +void Plot::populate() +{ + // Insert new curves + QwtPlotCurve *cSin = new QwtPlotCurve("y = sin(x)"); + cSin->setRenderHint(QwtPlotItem::RenderAntialiased); + cSin->setLegendAttribute(QwtPlotCurve::LegendShowLine, true); + cSin->setPen(QPen(Qt::red)); + cSin->attach(this); + + QwtPlotCurve *cCos = new QwtPlotCurve("y = cos(x)"); + cCos->setRenderHint(QwtPlotItem::RenderAntialiased); + cCos->setLegendAttribute(QwtPlotCurve::LegendShowLine, true); + cCos->setPen(QPen(Qt::blue)); + cCos->attach(this); + + // Create sin and cos data + cSin->setData(new FunctionData(::sin)); + cCos->setData(new FunctionData(::cos)); + + // Insert markers + + // ...a horizontal line at y = 0... + QwtPlotMarker *mY = new QwtPlotMarker(); + mY->setLabel(QString::fromLatin1("y = 0")); + mY->setLabelAlignment(Qt::AlignRight|Qt::AlignTop); + mY->setLineStyle(QwtPlotMarker::HLine); + mY->setYValue(0.0); + mY->attach(this); + + // ...a vertical line at x = 2 * pi + QwtPlotMarker *mX = new QwtPlotMarker(); + mX->setLabel(QString::fromLatin1("x = 2 pi")); + mX->setLabelAlignment(Qt::AlignLeft | Qt::AlignBottom); + mX->setLabelOrientation(Qt::Vertical); + mX->setLineStyle(QwtPlotMarker::VLine); + mX->setLinePen(QPen(Qt::black, 0, Qt::DashDotLine)); + mX->setXValue(2.0 * M_PI); + mX->attach(this); +} + +void Plot::updateGradient() +{ + QPalette pal = palette(); + + const QColor buttonColor = pal.color( QPalette::Button ); + +#ifdef Q_WS_X11 + // Qt 4.7.1: QGradient::StretchToDeviceMode is buggy on X11 + + QLinearGradient gradient( rect().topLeft(), rect().bottomLeft() ); + gradient.setColorAt( 0.0, Qt::white ); + gradient.setColorAt( 0.7, buttonColor ); + gradient.setColorAt( 1.0, buttonColor ); +#else + QLinearGradient gradient( 0, 0, 0, 1 ); + gradient.setCoordinateMode( QGradient::StretchToDeviceMode ); + gradient.setColorAt( 0.0, Qt::white ); + gradient.setColorAt( 0.7, buttonColor ); + gradient.setColorAt( 1.0, buttonColor ); +#endif + + pal.setBrush( QPalette::Window, gradient ); + setPalette( pal ); +} + +void Plot::resizeEvent( QResizeEvent *event ) +{ + QwtPlot::resizeEvent( event ); +#ifdef Q_WS_X11 + updateGradient(); +#endif +} + +int main(int argc, char **argv) +{ + QApplication a(argc, argv); + + Plot *plot = new Plot(); + + // We put a dummy widget around to have + // so that Qt paints a widget background + // when resizing + + QWidget window; + QHBoxLayout *layout = new QHBoxLayout( &window ); + layout->setContentsMargins( 0, 0, 0, 0 ); + layout->addWidget( plot ); + + window.resize(600,400); + window.show(); + + return a.exec(); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/sinusplot/sinusplot.pro phyxcalc-3rev200/qwt-6.0.0/examples/sinusplot/sinusplot.pro --- phyxcalc-3rev200/qwt-6.0.0/examples/sinusplot/sinusplot.pro 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/sinusplot/sinusplot.pro 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,16 @@ +################################################################ +# Qwt Widget Library +# Copyright (C) 1997 Josef Wilgen +# Copyright (C) 2002 Uwe Rathmann +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the Qwt License, Version 1.0 +################################################################ + +include( $${PWD}/../examples.pri ) + +TARGET = sinusplot + +SOURCES = \ + sinusplot.cpp + diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/sliders/sliders.cpp phyxcalc-3rev200/qwt-6.0.0/examples/sliders/sliders.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/sliders/sliders.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/sliders/sliders.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,193 @@ +#include +#include +#include +#include +#include +#include +#include "sliders.h" + +class Layout: public QBoxLayout +{ +public: + Layout(Qt::Orientation o, QWidget *parent = NULL): + QBoxLayout(QBoxLayout::LeftToRight, parent) + { + if ( o == Qt::Vertical ) + setDirection(QBoxLayout::TopToBottom); + + setSpacing(20); + setMargin(0); + } +}; + +Slider::Slider(QWidget *parent, int sliderType): + QWidget(parent) +{ + d_slider = createSlider(this, sliderType); + + QFlags alignment; + switch(d_slider->scalePosition()) + { + case QwtSlider::NoScale: + if ( d_slider->orientation() == Qt::Horizontal ) + alignment = Qt::AlignHCenter | Qt::AlignTop; + else + alignment = Qt::AlignVCenter | Qt::AlignLeft; + break; + case QwtSlider::LeftScale: + alignment = Qt::AlignVCenter | Qt::AlignRight; + break; + case QwtSlider::RightScale: + alignment = Qt::AlignVCenter | Qt::AlignLeft; + break; + case QwtSlider::TopScale: + alignment = Qt::AlignHCenter | Qt::AlignBottom; + break; + case QwtSlider::BottomScale: + alignment = Qt::AlignHCenter | Qt::AlignTop; + break; + } + + d_label = new QLabel("0", this); + d_label->setAlignment(alignment); + d_label->setFixedWidth(d_label->fontMetrics().width("10000.9")); + + connect(d_slider, SIGNAL(valueChanged(double)), SLOT(setNum(double))); + + QBoxLayout *layout; + if ( d_slider->orientation() == Qt::Horizontal ) + layout = new QHBoxLayout(this); + else + layout = new QVBoxLayout(this); + + layout->addWidget(d_slider); + layout->addWidget(d_label); +} + +QwtSlider *Slider::createSlider(QWidget *parent, int sliderType) const +{ + QwtSlider *slider = NULL; + + switch( sliderType ) + { + case 0: + { + slider = new QwtSlider(parent, Qt::Horizontal, + QwtSlider::TopScale, QwtSlider::Trough); + slider->setHandleSize( 30, 16 ); + slider->setRange(-10.0, 10.0, 1.0, 0); // paging disabled + break; + } + case 1: + { + slider = new QwtSlider(parent, Qt::Horizontal, + QwtSlider::NoScale, QwtSlider::Trough | QwtSlider::Groove ); + slider->setRange(0.0, 1.0, 0.01, 5); + break; + } + case 2: + { + slider = new QwtSlider(parent, Qt::Horizontal, + QwtSlider::BottomScale, QwtSlider::Groove); + slider->setHandleSize( 12, 25 ); + slider->setRange(1000.0, 3000.0, 10.0, 10); + break; + } + case 3: + { + slider = new QwtSlider(parent, Qt::Vertical, + QwtSlider::LeftScale, QwtSlider::Groove); + slider->setRange(0.0, 100.0, 1.0, 5); + slider->setScaleMaxMinor(5); + break; + } + case 4: + { + slider = new QwtSlider(parent, Qt::Vertical, + QwtSlider::NoScale, QwtSlider::Trough); + slider->setRange(0.0,100.0,1.0, 10); + break; + } + case 5: + { + slider = new QwtSlider(parent, Qt::Vertical, + QwtSlider::RightScale, QwtSlider::Trough | QwtSlider::Groove); + slider->setScaleEngine(new QwtLog10ScaleEngine); + slider->setHandleSize( 20, 32 ); + slider->setBorderWidth(1); + slider->setRange(0.0, 4.0, 0.01); + slider->setScale(1.0, 1.0e4); + slider->setScaleMaxMinor(10); + break; + } + } + + if ( slider ) + { + QString name( "Slider %1" ); + slider->setObjectName( name.arg( sliderType ) ); + } + + return slider; +} + +void Slider::setNum( double v ) +{ + if ( d_slider->scaleMap().transformation()->type() == + QwtScaleTransformation::Log10 ) + { + v = qPow(10.0, v); + } + + QString text; + text.setNum(v, 'f', 1); + + d_label->setText(text); +} + +SliderDemo::SliderDemo(QWidget *p): + QWidget(p) +{ + int i; + + Layout *hSliderLayout = new Layout(Qt::Vertical); + for ( i = 0; i < 3; i++ ) + hSliderLayout->addWidget(new Slider(this, i)); + hSliderLayout->addStretch(); + + Layout *vSliderLayout = new Layout(Qt::Horizontal); + for ( ; i < 6; i++ ) + vSliderLayout->addWidget(new Slider(this, i)); + + QLabel *vTitle = new QLabel("Vertical Sliders", this); + vTitle->setFont(QFont("Helvetica", 14, QFont::Bold)); + vTitle->setAlignment(Qt::AlignHCenter); + + Layout *layout1 = new Layout(Qt::Vertical); + layout1->addWidget(vTitle, 0); + layout1->addLayout(vSliderLayout, 10); + + QLabel *hTitle = new QLabel("Horizontal Sliders", this); + hTitle->setFont(vTitle->font()); + hTitle->setAlignment(Qt::AlignHCenter); + + Layout *layout2 = new Layout(Qt::Vertical); + layout2->addWidget(hTitle, 0); + layout2->addLayout(hSliderLayout, 10); + + Layout *mainLayout = new Layout(Qt::Horizontal, this); + mainLayout->addLayout(layout1); + mainLayout->addLayout(layout2, 10); +} + +int main (int argc, char **argv) +{ + QApplication a(argc, argv); + + QApplication::setFont(QFont("Helvetica",10)); + + SliderDemo w; + w.show(); + + return a.exec(); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/sliders/sliders.h phyxcalc-3rev200/qwt-6.0.0/examples/sliders/sliders.h --- phyxcalc-3rev200/qwt-6.0.0/examples/sliders/sliders.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/sliders/sliders.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,27 @@ +#include +#include + +class QLabel; +class QLayout; + +class Slider: public QWidget +{ + Q_OBJECT +public: + Slider(QWidget *parent, int sliderType); + +private Q_SLOTS: + void setNum(double v); + +private: + QwtSlider *createSlider(QWidget *, int sliderType) const; + + QwtSlider *d_slider; + QLabel *d_label; +}; + +class SliderDemo : public QWidget +{ +public: + SliderDemo(QWidget *p = NULL); +}; diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/sliders/sliders.pro phyxcalc-3rev200/qwt-6.0.0/examples/sliders/sliders.pro --- phyxcalc-3rev200/qwt-6.0.0/examples/sliders/sliders.pro 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/sliders/sliders.pro 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,19 @@ +################################################################ +# Qwt Widget Library +# Copyright (C) 1997 Josef Wilgen +# Copyright (C) 2002 Uwe Rathmann +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the Qwt License, Version 1.0 +################################################################ + +include( $${PWD}/../examples.pri ) + +TARGET = sliders + +HEADERS = \ + sliders.h + +SOURCES = \ + sliders.cpp + diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/spectrogram/main.cpp phyxcalc-3rev200/qwt-6.0.0/examples/spectrogram/main.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/spectrogram/main.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/spectrogram/main.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,65 @@ +#include +#include +#include +#include +#include "plot.h" + +class MainWindow: public QMainWindow +{ +public: + MainWindow(QWidget * = NULL); + +private: + Plot *d_plot; +}; + +MainWindow::MainWindow(QWidget *parent): + QMainWindow(parent) +{ + d_plot = new Plot(this); + + setCentralWidget(d_plot); + + QToolBar *toolBar = new QToolBar(this); + + QToolButton *btnSpectrogram = new QToolButton(toolBar); + btnSpectrogram->setText("Spectrogram"); + btnSpectrogram->setCheckable(true); + btnSpectrogram->setToolButtonStyle(Qt::ToolButtonTextUnderIcon); + toolBar->addWidget(btnSpectrogram); + connect(btnSpectrogram, SIGNAL(toggled(bool)), + d_plot, SLOT(showSpectrogram(bool))); + + QToolButton *btnContour = new QToolButton(toolBar); + btnContour->setText("Contour"); + btnContour->setCheckable(true); + btnContour->setToolButtonStyle(Qt::ToolButtonTextUnderIcon); + toolBar->addWidget(btnContour); + connect(btnContour, SIGNAL(toggled(bool)), + d_plot, SLOT(showContour(bool))); + +#ifndef QT_NO_PRINTER + QToolButton *btnPrint = new QToolButton(toolBar); + btnPrint->setText("Print"); + btnPrint->setToolButtonStyle(Qt::ToolButtonTextUnderIcon); + toolBar->addWidget(btnPrint); + connect(btnPrint, SIGNAL(clicked()), + d_plot, SLOT(printPlot()) ); +#endif + + addToolBar(toolBar); + + btnSpectrogram->setChecked(true); + btnContour->setChecked(false); +} + +int main(int argc, char **argv) +{ + QApplication a(argc, argv); + + MainWindow mainWindow; + mainWindow.resize(600,400); + mainWindow.show(); + + return a.exec(); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/spectrogram/plot.cpp phyxcalc-3rev200/qwt-6.0.0/examples/spectrogram/plot.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/spectrogram/plot.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/spectrogram/plot.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,158 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "plot.h" + +class MyZoomer: public QwtPlotZoomer +{ +public: + MyZoomer(QwtPlotCanvas *canvas): + QwtPlotZoomer(canvas) + { + setTrackerMode(AlwaysOn); + } + + virtual QwtText trackerTextF(const QPointF &pos) const + { + QColor bg(Qt::white); + bg.setAlpha(200); + + QwtText text = QwtPlotZoomer::trackerTextF(pos); + text.setBackgroundBrush( QBrush( bg )); + return text; + } +}; + +class SpectrogramData: public QwtRasterData +{ +public: + SpectrogramData() + { + setInterval( Qt::XAxis, QwtInterval( -1.5, 1.5 ) ); + setInterval( Qt::YAxis, QwtInterval( -1.5, 1.5 ) ); + setInterval( Qt::ZAxis, QwtInterval( 0.0, 10.0 ) ); + } + + virtual double value(double x, double y) const + { + const double c = 0.842; + + const double v1 = x * x + (y-c) * (y+c); + const double v2 = x * (y+c) + x * (y+c); + + return 1.0 / (v1 * v1 + v2 * v2); + } +}; + +class ColorMap: public QwtLinearColorMap +{ +public: + ColorMap(): + QwtLinearColorMap(Qt::darkCyan, Qt::red) + { + addColorStop(0.1, Qt::cyan); + addColorStop(0.6, Qt::green); + addColorStop(0.95, Qt::yellow); + } +}; + +Plot::Plot(QWidget *parent): + QwtPlot(parent) +{ + d_spectrogram = new QwtPlotSpectrogram(); + d_spectrogram->setRenderThreadCount(0); // use system specific thread count + + d_spectrogram->setColorMap(new ColorMap()); + + d_spectrogram->setData(new SpectrogramData()); + d_spectrogram->attach(this); + + QList contourLevels; + for ( double level = 0.5; level < 10.0; level += 1.0 ) + contourLevels += level; + d_spectrogram->setContourLevels(contourLevels); + + const QwtInterval zInterval = d_spectrogram->data()->interval( Qt::ZAxis ); + // A color bar on the right axis + QwtScaleWidget *rightAxis = axisWidget(QwtPlot::yRight); + rightAxis->setTitle("Intensity"); + rightAxis->setColorBarEnabled(true); + rightAxis->setColorMap( zInterval, new ColorMap()); + + setAxisScale(QwtPlot::yRight, zInterval.minValue(), zInterval.maxValue() ); + enableAxis(QwtPlot::yRight); + + plotLayout()->setAlignCanvasToScales(true); + replot(); + + // LeftButton for the zooming + // MidButton for the panning + // RightButton: zoom out by 1 + // Ctrl+RighButton: zoom out to full size + + QwtPlotZoomer* zoomer = new MyZoomer(canvas()); + zoomer->setMousePattern(QwtEventPattern::MouseSelect2, + Qt::RightButton, Qt::ControlModifier); + zoomer->setMousePattern(QwtEventPattern::MouseSelect3, + Qt::RightButton); + + QwtPlotPanner *panner = new QwtPlotPanner(canvas()); + panner->setAxisEnabled(QwtPlot::yRight, false); + panner->setMouseButton(Qt::MidButton); + + // Avoid jumping when labels with more/less digits + // appear/disappear when scrolling vertically + + const QFontMetrics fm(axisWidget(QwtPlot::yLeft)->font()); + QwtScaleDraw *sd = axisScaleDraw(QwtPlot::yLeft); + sd->setMinimumExtent( fm.width("100.00") ); + + const QColor c(Qt::darkBlue); + zoomer->setRubberBandPen(c); + zoomer->setTrackerPen(c); +} + +void Plot::showContour(bool on) +{ + d_spectrogram->setDisplayMode(QwtPlotSpectrogram::ContourMode, on); + replot(); +} + +void Plot::showSpectrogram(bool on) +{ + d_spectrogram->setDisplayMode(QwtPlotSpectrogram::ImageMode, on); + d_spectrogram->setDefaultContourPen(on ? QPen() : QPen(Qt::NoPen)); + replot(); +} + +#ifndef QT_NO_PRINTER + +void Plot::printPlot() +{ +#if 1 + QPrinter printer; +#else + QPrinter printer(QPrinter::HighResolution); +#endif + printer.setOrientation(QPrinter::Landscape); + printer.setOutputFileName("spectrogram.pdf"); + QPrintDialog dialog(&printer); + if ( dialog.exec() ) + { + QwtPlotRenderer renderer; + + renderer.setDiscardFlag(QwtPlotRenderer::DiscardBackground, false); + renderer.setLayoutFlag(QwtPlotRenderer::KeepFrames, true); + + renderer.renderTo(this, printer); + } +} + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/spectrogram/plot.h phyxcalc-3rev200/qwt-6.0.0/examples/spectrogram/plot.h --- phyxcalc-3rev200/qwt-6.0.0/examples/spectrogram/plot.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/spectrogram/plot.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,21 @@ +#include +#include + +class Plot: public QwtPlot +{ + Q_OBJECT + +public: + Plot(QWidget * = NULL); + +public Q_SLOTS: + void showContour(bool on); + void showSpectrogram(bool on); + +#ifndef QT_NO_PRINTER + void printPlot(); +#endif + +private: + QwtPlotSpectrogram *d_spectrogram; +}; diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/spectrogram/spectrogram.pro phyxcalc-3rev200/qwt-6.0.0/examples/spectrogram/spectrogram.pro --- phyxcalc-3rev200/qwt-6.0.0/examples/spectrogram/spectrogram.pro 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/spectrogram/spectrogram.pro 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,19 @@ +################################################################ +# Qwt Widget Library +# Copyright (C) 1997 Josef Wilgen +# Copyright (C) 2002 Uwe Rathmann +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the Qwt License, Version 1.0 +################################################################ + +include( $${PWD}/../examples.pri ) + +TARGET = spectrogram + +HEADERS = \ + plot.h + +SOURCES = \ + plot.cpp \ + main.cpp diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/stylesheets/choco.css phyxcalc-3rev200/qwt-6.0.0/examples/stylesheets/choco.css --- phyxcalc-3rev200/qwt-6.0.0/examples/stylesheets/choco.css 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/stylesheets/choco.css 2011-04-15 10:48:46.000000000 +0000 @@ -0,0 +1,39 @@ +QwtPlot +{ + border: 1px solid white; + border-radius: 10px; + padding: 10px; + background-color: qlineargradient( x1: 0, y1: 0, x2: 0, y2: 1, + stop: 0 Brown, stop: 0.5 Chocolate, stop: 1 Brown ); +} + +QwtPlotCanvas +{ + border: 1px solid White; + border-radius: 10px; + background-color: Tan; +} + +QwtScaleWidget +{ + color: palette(light); +} + +QwtTextLabel#QwtPlotTitle +{ + color: palette(light); +} + +QwtLegend +{ + border: 1px solid white; + border-radius: 10px; + padding: 10px; + background: brown; +} + +QwtLegendItem +{ + color: palette(light); +} + diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/svgmap/main.cpp phyxcalc-3rev200/qwt-6.0.0/examples/svgmap/main.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/svgmap/main.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/svgmap/main.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,49 @@ +#include +#include +#include +#include +#include "plot.h" + +class MainWindow: public QMainWindow +{ +public: + MainWindow(const QString &fileName) + { + Plot *plot = new Plot(this); + if ( !fileName.isEmpty() ) + plot->loadSVG(fileName); + + setCentralWidget(plot); + +#ifndef QT_NO_FILEDIALOG + + QToolBar *toolBar = new QToolBar(this); + + QToolButton *btnLoad = new QToolButton(toolBar); + + btnLoad->setText("Load SVG"); + btnLoad->setToolButtonStyle(Qt::ToolButtonTextUnderIcon); + toolBar->addWidget(btnLoad); + + addToolBar(toolBar); + + connect(btnLoad, SIGNAL(clicked()), plot, SLOT(loadSVG())); +#endif + } +}; + +int main(int argc, char **argv) +{ + QApplication a(argc, argv); + + QString fileName; + if ( argc > 1 ) + fileName = argv[1]; + + MainWindow w(fileName); + w.resize(600,400); + w.show(); + + int rv = a.exec(); + return rv; +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/svgmap/plot.cpp phyxcalc-3rev200/qwt-6.0.0/examples/svgmap/plot.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/svgmap/plot.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/svgmap/plot.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,79 @@ +#include +#include +#include +#include +#include +#include +#include +#include "plot.h" + +Plot::Plot(QWidget *parent): + QwtPlot(parent), + d_mapItem(NULL), + d_mapRect(0.0, 0.0, 100.0, 100.0) // something +{ +#if 1 + /* + d_mapRect is only a reference for zooming, but + the ranges are nothing useful for the user. So we + hide the axes. + */ + plotLayout()->setCanvasMargin(0); + for ( int axis = 0; axis < QwtPlot::axisCnt; axis++ ) + enableAxis(axis, false); +#else + QwtPlotGrid *grid = new QwtPlotGrid(); + grid->attach(this); +#endif + + /* + Navigation: + + Left Mouse Button: Panning + Mouse Wheel: Zooming In/Out + Right Mouse Button: Reset to initial + */ + + (void)new QwtPlotPanner(canvas()); + (void)new QwtPlotMagnifier(canvas()); + + canvas()->setFocusPolicy(Qt::WheelFocus); + rescale(); +} + +#ifndef QT_NO_FILEDIALOG + +void Plot::loadSVG() +{ + QString dir; + const QString fileName = QFileDialog::getOpenFileName( NULL, + "Load a Scaleable Vector Graphic (SVG) Map", + dir, "SVG Files (*.svg)"); + + if ( !fileName.isEmpty() ) + loadSVG(fileName); +} + +#endif + +void Plot::loadSVG(const QString &fileName) +{ + if ( d_mapItem == NULL ) + { + d_mapItem = new QwtPlotSvgItem(); + d_mapItem->attach(this); + } + + d_mapItem->loadFile(d_mapRect, fileName); + rescale(); + + replot(); +} + +void Plot::rescale() +{ + setAxisScale(QwtPlot::xBottom, + d_mapRect.left(), d_mapRect.right()); + setAxisScale(QwtPlot::yLeft, + d_mapRect.top(), d_mapRect.bottom()); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/svgmap/plot.h phyxcalc-3rev200/qwt-6.0.0/examples/svgmap/plot.h --- phyxcalc-3rev200/qwt-6.0.0/examples/svgmap/plot.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/svgmap/plot.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,26 @@ +#include +#include + +class QwtPlotSvgItem; + +class Plot: public QwtPlot +{ + Q_OBJECT + +public: + Plot(QWidget * = NULL); + +public Q_SLOTS: + +#ifndef QT_NO_FILEDIALOG + void loadSVG(); +#endif + + void loadSVG(const QString &); + +private: + void rescale(); + + QwtPlotSvgItem *d_mapItem; + const QRectF d_mapRect; +}; diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/svgmap/svgmap.pro phyxcalc-3rev200/qwt-6.0.0/examples/svgmap/svgmap.pro --- phyxcalc-3rev200/qwt-6.0.0/examples/svgmap/svgmap.pro 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/svgmap/svgmap.pro 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,26 @@ +################################################################ +# Qwt Widget Library +# Copyright (C) 1997 Josef Wilgen +# Copyright (C) 2002 Uwe Rathmann +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the Qwt License, Version 1.0 +################################################################ + +include( $${PWD}/../examples.pri ) + +!contains(QWT_CONFIG, QwtSvg) { + + message(Are you trying to build Qwt with the Qt Creator as Shadow Build ?) + error(Qwt is configured without SVG support !) +} + +TARGET = svgmap +QT += svg + +HEADERS = \ + plot.h + +SOURCES = \ + plot.cpp \ + main.cpp diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/sysinfo/sysinfo.cpp phyxcalc-3rev200/qwt-6.0.0/examples/sysinfo/sysinfo.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/sysinfo/sysinfo.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/sysinfo/sysinfo.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,121 @@ +#include +#include +#include +#include +#include +#include +#include +#include + +class ValueBar: public QWidget +{ +public: + ValueBar( Qt::Orientation orientation, + const QString &text, QWidget *parent, double value = 0.0 ): + QWidget( parent ) + { + d_label = new QLabel( text, this ); + d_label->setFont( QFont( "Helvetica", 10 ) ); + + d_thermo = new QwtThermo( this ); + d_thermo->setRange( 0.0, 100.0 ); + d_thermo->setValue( value ); + d_thermo->setFont( QFont( "Helvetica", 8 ) ); + d_thermo->setPipeWidth( 6 ); + d_thermo->setScaleMaxMajor( 6 ); + d_thermo->setScaleMaxMinor( 5 ); + d_thermo->setFillBrush( Qt::darkMagenta ); + +#if 0 + QwtLinearColorMap *colorMap = + new QwtLinearColorMap( Qt::blue, Qt::red ); + + colorMap->addColorStop( 0.2, Qt::yellow ); + colorMap->addColorStop( 0.3, Qt::cyan ); + colorMap->addColorStop( 0.4, Qt::green ); + colorMap->addColorStop( 0.5, Qt::magenta ); + colorMap->setMode( QwtLinearColorMap::FixedColors ); + d_thermo->setColorMap( colorMap ); +#endif + + QVBoxLayout *layout = new QVBoxLayout( this ); + layout->setMargin( 0 ); + layout->setSpacing( 0 ); + + if ( orientation == Qt::Horizontal ) + { + d_label->setAlignment( Qt::AlignCenter ); + d_thermo->setOrientation( orientation, QwtThermo::BottomScale ); + layout->addWidget( d_label ); + layout->addWidget( d_thermo ); + } + else + { + d_label->setAlignment( Qt::AlignRight ); + d_thermo->setOrientation( orientation, QwtThermo::LeftScale ); + layout->addWidget( d_thermo, 10, Qt::AlignHCenter ); + layout->addWidget( d_label, 0 ); + } + } + + void setValue( double value ) + { + d_thermo->setValue( value ); + } +private: + QLabel *d_label; + QwtThermo *d_thermo; +}; + +class SysInfo : public QFrame +{ +public: + SysInfo( QWidget *parent = NULL ): + QFrame( parent ) + { + QGroupBox *memBox = new QGroupBox( "Memory Usage", this ); + memBox->setFont( QFont( "Helvetica", 10 ) ); + + QVBoxLayout *memLayout = new QVBoxLayout( memBox ); + memLayout->setMargin( 15 ); + memLayout->setSpacing( 5 ); + + Qt::Orientation o = Qt::Horizontal; + memLayout->addWidget( new ValueBar( o, "Used", memBox, 57 ) ); + memLayout->addWidget( new ValueBar( o, "Shared", memBox, 17 ) ); + memLayout->addWidget( new ValueBar( o, "Cache", memBox, 30 ) ); + memLayout->addWidget( new ValueBar( o, "Buffers", memBox, 22 ) ); + memLayout->addWidget( new ValueBar( o, "Swap Used", memBox, 57 ) ); + memLayout->addWidget( new QWidget( memBox ), 10 ); // spacer + + QGroupBox *cpuBox = new QGroupBox( "Cpu Usage", this ); + cpuBox->setFont( QFont( "Helvetica", 10 ) ); + + QHBoxLayout *cpuLayout = new QHBoxLayout( cpuBox ); + cpuLayout->setMargin( 15 ); + cpuLayout->setSpacing( 5 ); + + o = Qt::Vertical; + cpuLayout->addWidget( new ValueBar( o, "User", cpuBox, 57 ) ); + cpuLayout->addWidget( new ValueBar( o, "Total", cpuBox, 73 ) ); + cpuLayout->addWidget( new ValueBar( o, "System", cpuBox, 16 ) ); + cpuLayout->addWidget( new ValueBar( o, "Idle", cpuBox, 27 ) ); + + QHBoxLayout *layout = new QHBoxLayout( this ); + layout->setMargin( 10 ); + layout->addWidget( memBox, 10 ); + layout->addWidget( cpuBox, 0 ); + } +}; + +int main ( int argc, char **argv ) +{ + QApplication a( argc, argv ); + + SysInfo info; + info.resize( info.sizeHint().expandedTo( QSize( 600, 400 ) ) ); + info.show(); + + int rv = a.exec(); + return rv; +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/sysinfo/sysinfo.pro phyxcalc-3rev200/qwt-6.0.0/examples/sysinfo/sysinfo.pro --- phyxcalc-3rev200/qwt-6.0.0/examples/sysinfo/sysinfo.pro 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/sysinfo/sysinfo.pro 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,15 @@ +################################################################ +# Qwt Widget Library +# Copyright (C) 1997 Josef Wilgen +# Copyright (C) 2002 Uwe Rathmann +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the Qwt License, Version 1.0 +################################################################ + +include( $${PWD}/../examples.pri ) + +TARGET = sysinfo + +SOURCES = \ + sysinfo.cpp diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/tvplot/main.cpp phyxcalc-3rev200/qwt-6.0.0/examples/tvplot/main.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/tvplot/main.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/tvplot/main.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,14 @@ +#include +#include "tvplot.h" + +int main(int argc, char **argv) +{ + QApplication a(argc, argv); + + TVPlot plot; + + plot.resize(600,400); + plot.show(); + + return a.exec(); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/tvplot/tvplot.cpp phyxcalc-3rev200/qwt-6.0.0/examples/tvplot/tvplot.cpp --- phyxcalc-3rev200/qwt-6.0.0/examples/tvplot/tvplot.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/tvplot/tvplot.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,125 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "tvplot.h" + +class Histogram: public QwtPlotHistogram +{ +public: + Histogram(const QString &, const QColor &); + + void setColor(const QColor &); + void setValues(uint numValues, const double *); +}; + +Histogram::Histogram(const QString &title, const QColor &symbolColor): + QwtPlotHistogram(title) +{ + setStyle(QwtPlotHistogram::Columns); + + setColor(symbolColor); +} + +void Histogram::setColor(const QColor &symbolColor) +{ + QColor color = symbolColor; + color.setAlpha(180); + + setPen(QPen(Qt::black)); + setBrush(QBrush(color)); + + QwtColumnSymbol *symbol = new QwtColumnSymbol(QwtColumnSymbol::Box); + symbol->setFrameStyle(QwtColumnSymbol::Raised); + symbol->setLineWidth(2); + symbol->setPalette(QPalette(color)); + setSymbol(symbol); +} + +void Histogram::setValues(uint numValues, const double *values) +{ + QVector samples(numValues); + for ( uint i = 0; i < numValues; i++ ) + { + QwtInterval interval(double(i), i + 1.0); + interval.setBorderFlags(QwtInterval::ExcludeMaximum); + + samples[i] = QwtIntervalSample(values[i], interval); + } + + setData(new QwtIntervalSeriesData(samples)); +} + +TVPlot::TVPlot(QWidget *parent): + QwtPlot(parent) +{ + setTitle("Watching TV during a weekend"); + + setCanvasBackground(QColor(Qt::gray)); + plotLayout()->setAlignCanvasToScales(true); + + setAxisTitle(QwtPlot::yLeft, "Number of People"); + setAxisTitle(QwtPlot::xBottom, "Number of Hours"); + + QwtLegend *legend = new QwtLegend; + legend->setItemMode(QwtLegend::CheckableItem); + insertLegend(legend, QwtPlot::RightLegend); + + populate(); + + connect(this, SIGNAL(legendChecked(QwtPlotItem *, bool)), + SLOT(showItem(QwtPlotItem *, bool))); + + replot(); // creating the legend items + + QwtPlotItemList items = itemList(QwtPlotItem::Rtti_PlotHistogram); + for ( int i = 0; i < items.size(); i++ ) + { + if ( i == 0 ) + { + QwtLegendItem *legendItem = (QwtLegendItem *)legend->find(items[i]); + if ( legendItem ) + legendItem->setChecked(true); + items[i]->setVisible(true); + } + else + items[i]->setVisible(false); + } + + setAutoReplot(true); +} + +void TVPlot::populate() +{ + QwtPlotGrid *grid = new QwtPlotGrid; + grid->enableX(false); + grid->enableY(true); + grid->enableXMin(false); + grid->enableYMin(false); + grid->setMajPen(QPen(Qt::black, 0, Qt::DotLine)); + grid->attach(this); + + const double juneValues[] = { 7, 19, 24, 32, 10, 5, 3 }; + const double novemberValues[] = { 4, 15, 22, 34, 13, 8, 4 }; + + Histogram *histogramJune = new Histogram("Summer", Qt::red); + histogramJune->setValues( + sizeof(juneValues) / sizeof(double), juneValues); + histogramJune->attach(this); + + Histogram *histogramNovember = new Histogram("Winter", Qt::blue); + histogramNovember->setValues( + sizeof(novemberValues) / sizeof(double), novemberValues); + histogramNovember->attach(this); +} + +void TVPlot::showItem(QwtPlotItem *item, bool on) +{ + item->setVisible(on); +} + diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/tvplot/tvplot.h phyxcalc-3rev200/qwt-6.0.0/examples/tvplot/tvplot.h --- phyxcalc-3rev200/qwt-6.0.0/examples/tvplot/tvplot.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/tvplot/tvplot.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,19 @@ +#ifndef _TV_PLOT_H_ + +#include + +class TVPlot: public QwtPlot +{ + Q_OBJECT + +public: + TVPlot(QWidget * = NULL); + +private: + void populate(); + +private Q_SLOTS: + void showItem(QwtPlotItem *, bool on); +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/examples/tvplot/tvplot.pro phyxcalc-3rev200/qwt-6.0.0/examples/tvplot/tvplot.pro --- phyxcalc-3rev200/qwt-6.0.0/examples/tvplot/tvplot.pro 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/examples/tvplot/tvplot.pro 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,19 @@ +################################################################ +# Qwt Widget Library +# Copyright (C) 1997 Josef Wilgen +# Copyright (C) 2002 Uwe Rathmann +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the Qwt License, Version 1.0 +################################################################ + +include( $${PWD}/../examples.pri ) + +TARGET = tvplot + +SOURCES = \ + tvplot.cpp \ + main.cpp + +HEADERS = \ + tvplot.h diff -Nru phyxcalc-3rev200/qwt-6.0.0/INSTALL phyxcalc-3rev200/qwt-6.0.0/INSTALL --- phyxcalc-3rev200/qwt-6.0.0/INSTALL 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/INSTALL 2011-04-15 10:48:46.000000000 +0000 @@ -0,0 +1,164 @@ +Introduction +============ + +Qwt uses qmake to build all its components and examples. +qmake is part of a Qt distribution. + +qmake reads project files, that contain the options and rules how to +build a certain project. A project file ends with the suffix "*.pro". +Files that end with the suffix "*.pri" are included by the project +files and contain definitions, that are common for several project files. + +qwtconfig.pri and qwtbuild.pri are read by all project files of the Qwt +package. qwtconfig.pri is also read by qwt.prf, when building your +application. So the first step is to edit the *.pri files to adjust +them to your needs. + +The subdirs template of qmake is known to be buggy when using spaces +in path names. So better don't build Qwt below a path name with spaces. +( Otherwise you might have to run qmake in all subdirs manually ). + +Documentation +========================== + +Qwt includes a class documentation, that is available in various formats: + +- Html files +- PDF document +- Qt Compressed Help (*.qch ) for the Qt assistant or creator. + You can load it "Edit Preferences" -> "Documentation" -> "Add..." +- Man pages ( UNIX only ) + +Building Qwt +========================== + +The easiest way to build Qwt is from the command line - but you insist on +using an IDE don't forget the "make install" step. + +A) Unix +-------- + +qmake +make +make install + +If you have installed a shared library it's path has to be known to +the run-time linker of your operating system. On Linux systems read +"man ldconfig" ( or google for it ). Another option is to use +the LD_LIBRARY_PATH (on some systems LIBPATH is used instead, on MacOSX +it is called DYLD_LIBRARY_PATH) environment variable. + +If you only want to check the Qwt examples without installing something, +you can set the LD_LIBRARY_PATH to the lib directory +of your local build. + +If you didn't enable autobuilding of the examples in qwtconfig.pri +you have to build the examples this way: + +cd examples +qmake +make + + +B) Win32/MSVC +-------- + +Check that your Qt version has been built with MSVC - not with MinGW ! + +Please read the qmake documentation how to convert +your *.pro files into your development environment. + +F.e MSVC with nmake: +qmake qwt.pro +nmake +nmake install + +If you didn't enable autobuilding of the examples in qwtconfig.pri +you have to build the examples this way: + +cd examples +qmake examples.pro +nmake + +Windows doesn't like mixing of debug and release binaries. Most +of the problems with using the Qwt designer plugin are because +of trying to load a Qwt debug library into a designer release +executable. + +It's not possible to load a plugin, that has been built with MinGW +into a Qt Designer/Creator, that has been built with MSVC ( and v.v ). +This is a common reason for problems, when working with prebuild +binaries of the Qt Creator. + +C) Win32/MinGW +-------- + +Check that your Qt version has been built with MinGW - not with MSVC ! + +Start a Shell, where Qt4 is initialized. ( F.e. with +"Programs->Qt by Trolltech ...->Qt 4.x.x Command Prompt" ). +Check if you can execute "make" or something like "mingw32-make". + +qmake qwt.pro +make +make install + +If you didn't enable autobuilding of the examples in qwtconfig.pri +you have to build the examples this way: + +cd examples +qmake examples.pro +make + +Windows doesn't like mixing of debug and release binaries. Most +of the problems with using the Qwt designer plugin are because +of trying to load a Qwt debug library into a designer release +executable. + +Don't forget to tell qmake where to find qwt.prf: +qmake -set QMAKEFEATURES ... + +D) MacOSX +-------- + +Well, the Mac is only another Unix system. So read the instructions in A). + +In the recent Qt4 releases the default target of qmake is to generate +XCode project files instead of makefiles. So you might need to do the +following: + +qmake -spec macx-g++ +... + +D) Qt Embedded +-------- + +I only tested Qwt with Qt Embedded in qvfb (Virtual Framebuffer Devivce) +Emulator on my Linux box. To build Qwt for the emulator was as simple as +for a regular Unix build. + +F) Symbian +-------- + +I never tried this platform myself. + +Using Qwt +=========== + +For building a Qwt application with qmake use the Qwt configuration features +file, that has been installed by "make install". When qmake is able to find +it ( http://doc.qt.nokia.com/4.7/qmake-advanced-usage.html#adding-new-configuration-features ) +you can simply add "CONFIG += qwt" to your application project file. + +If you don't use qmake you have to add the include path to find the Qwt +headers to your compiler flags and the Qwt library to your linker list. +Don't forget to add QWT_DLL to the compiler flags, when you work with a +Qwt-DLLs on Windows. + +For using the designer plugin you have to configure the Qt designer/creator +where to look for plugins. This can be done by setting the QT_PLUGIN_PATH or +using a qt.conf file ( see http://doc.qt.nokia.com/4.7/deployment-plugins.html ). +Beside the plugin the Qwt library itsself also needs to be known to the Designer/Creator +( see LD_LIBRARY_PATH, PATH ... above ). + +Good luck ! diff -Nru phyxcalc-3rev200/qwt-6.0.0/qwtbuild.pri phyxcalc-3rev200/qwt-6.0.0/qwtbuild.pri --- phyxcalc-3rev200/qwt-6.0.0/qwtbuild.pri 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/qwtbuild.pri 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,69 @@ +################################################################ +# Qwt Widget Library +# Copyright (C) 1997 Josef Wilgen +# Copyright (C) 2002 Uwe Rathmann +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the Qwt License, Version 1.0 +################################################################ + +###################################################################### +# qmake internal options +###################################################################### + +CONFIG += qt +CONFIG += warn_on +CONFIG += no_keywords +CONFIG += silent + +###################################################################### +# release/debug mode +###################################################################### + +win32 { + # On Windows you can't mix release and debug libraries. + # The designer is built in release mode. If you like to use it + # you need a release version. For your own application development you + # might need a debug version. + # Enable debug_and_release + build_all if you want to build both. + + CONFIG += debug_and_release + CONFIG += build_all +} +else { + + CONFIG += release + + VER_MAJ = $${QWT_VER_MAJ} + VER_MIN = $${QWT_VER_MIN} + VER_PAT = $${QWT_VER_PAT} + VERSION = $${QWT_VERSION} +} + +linux-g++ { + # CONFIG += separate_debug_info +} + +###################################################################### +# paths for building qwt +###################################################################### + +MOC_DIR = moc +RCC_DIR = resources +!debug_and_release { + OBJECTS_DIR = obj +} + +unix { + + exists( $${QMAKE_LIBDIR_QT}/libqwt.* ) { + + # On some Linux distributions the Qwt libraries are installed + # in the same directory as the Qt libraries. Unfortunately + # qmake always adds QMAKE_LIBDIR_QT at the beginning of the + # linker path, so that the installed libraries will be + # used instead of the local ones. + + error( "local build will conflict with $${QMAKE_LIBDIR_QT}/libqwt.*" ) + } +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/qwtconfig.pri phyxcalc-3rev200/qwt-6.0.0/qwtconfig.pri --- phyxcalc-3rev200/qwt-6.0.0/qwtconfig.pri 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/qwtconfig.pri 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,118 @@ +################################################################ +# Qwt Widget Library +# Copyright (C) 1997 Josef Wilgen +# Copyright (C) 2002 Uwe Rathmann +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the Qwt License, Version 1.0 +################################################################ + +QWT_VER_MAJ = 6 +QWT_VER_MIN = 0 +QWT_VER_PAT = 0 +QWT_VERSION = $${QWT_VER_MAJ}.$${QWT_VER_MIN}.$${QWT_VER_PAT} + +###################################################################### +# Install paths +###################################################################### + +QWT_INSTALL_PREFIX = $$[QT_INSTALL_PREFIX] + +unix { + QWT_INSTALL_PREFIX = /usr/local/qwt-$$QWT_VERSION +} + +win32 { + QWT_INSTALL_PREFIX = C:/Qwt-$$QWT_VERSION +} + +QWT_INSTALL_DOCS = $${QWT_INSTALL_PREFIX}/doc +QWT_INSTALL_HEADERS = $${QWT_INSTALL_PREFIX}/include +QWT_INSTALL_LIBS = $${QWT_INSTALL_PREFIX}/lib + +###################################################################### +# Designer plugin +###################################################################### + +QWT_INSTALL_PLUGINS = $${QWT_INSTALL_PREFIX}/plugins/designer +# QWT_INSTALL_PLUGINS = $${QT_INSTALL_PREFIX}/plugins/designer + +###################################################################### +# Features +# When building a Qwt application with qmake you might want to load +# the compiler/linker flags, that are required to build a Qwt application +# from qwt.prf. Therefore all you need to do is to add "CONFIG += qwt" +# to your project file and take care, that qwt.prf can be found by qmake. +# ( see http://doc.trolltech.com/4.7/qmake-advanced-usage.html#adding-new-configuration-features ) +# I recommend not to install the Qwt features together with the +# Qt features, because you will have to reinstall the Qwt features, +# with every Qt upgrade. +###################################################################### + +QWT_INSTALL_FEATURES = $${QWT_INSTALL_PREFIX}/features +# QWT_INSTALL_FEATURES = $${QT_INSTALL_PREFIX}/features + +###################################################################### +# Build the static/shared libraries. +# If QwtDll is enabled, a shared library is built, otherwise +# it will be a static library. +###################################################################### + +QWT_CONFIG += QwtDll + +###################################################################### +# QwtPlot enables all classes, that are needed to use the QwtPlot +# widget. +###################################################################### + +QWT_CONFIG += QwtPlot + +###################################################################### +# QwtWidgets enables all classes, that are needed to use the all other +# widgets (sliders, dials, ...), beside QwtPlot. +###################################################################### + +QWT_CONFIG += QwtWidgets + +###################################################################### +# If you want to display svg images on the plot canvas, or +# export a plot to a SVG document +###################################################################### + +QWT_CONFIG += QwtSvg + +###################################################################### +# You can use the MathML renderer of the Qt solutions package to +# enable MathML support in Qwt. Because of license implications +# the ( modified ) code of the MML Widget solution is included and +# linked together with the QwtMathMLTextEngine into an own library. +# To use it you will have to add "CONFIG += qwtmathml" +# to your qmake project file. +###################################################################### + +QWT_CONFIG += QwtMathML + +###################################################################### +# If you want to build the Qwt designer plugin, +# enable the line below. +# Otherwise you have to build it from the designer directory. +###################################################################### + +QWT_CONFIG += QwtDesigner + +###################################################################### +# If you want to auto build the examples, enable the line below +# Otherwise you have to build them from the examples directory. +###################################################################### + +# QWT_CONFIG += QwtExamples + +###################################################################### +# When Qt has been built as framework qmake ( qtAddLibrary ) wants +# to link frameworks instead of regular libs +###################################################################### + +macx:CONFIG(qt_framework, qt_framework|qt_no_framework) { + + QWT_CONFIG += QwtFramework +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/qwt.prf phyxcalc-3rev200/qwt-6.0.0/qwt.prf --- phyxcalc-3rev200/qwt-6.0.0/qwt.prf 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/qwt.prf 2011-04-15 10:48:46.000000000 +0000 @@ -0,0 +1,44 @@ +################################################################ +# Qwt Widget Library +# Copyright (C) 1997 Josef Wilgen +# Copyright (C) 2002 Uwe Rathmann +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the Qwt License, Version 1.0 +################################################################ + +include ( ./qwtconfig.pri ) + +contains(QWT_CONFIG, QwtDll) { + + DEFINES *= QWT_DLL +} + +contains(QWT_CONFIG, QwtSvg) { + + QT *= svg +} +else { + + DEFINES *= QWT_NO_SVG +} + +contains(QWT_CONFIG, QwtFramework) { + + INCLUDEPATH *= $${QWT_INSTALL_LIBS}/qwt.framework/Headers + LIBS *= -F$${QWT_INSTALL_LIBS} +} +else { + + INCLUDEPATH *= $${QWT_INSTALL_HEADERS} + LIBS *= -L$${QWT_INSTALL_LIBS} +} + +INCLUDEPATH_QWT = $${INCLUDEPATH} +qtAddLibrary(qwt) + +# we don't want qtAddLibrary to expand the +# include path, with directories, that might +# conflict with other installations of qwt + +INCLUDEPATH = $${INCLUDEPATH_QWT} diff -Nru phyxcalc-3rev200/qwt-6.0.0/qwt.pro phyxcalc-3rev200/qwt-6.0.0/qwt.pro --- phyxcalc-3rev200/qwt-6.0.0/qwt.pro 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/qwt.pro 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,31 @@ +################################################################ +# Qwt Widget Library +# Copyright (C) 1997 Josef Wilgen +# Copyright (C) 2002 Uwe Rathmann +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the Qwt License, Version 1.0 +################################################################ + +include( qwtconfig.pri ) + +TEMPLATE = subdirs +CONFIG += ordered + +SUBDIRS = \ + src \ + textengines + +contains(QWT_CONFIG, QwtDesigner ) { + SUBDIRS += designer +} + +contains(QWT_CONFIG, QwtExamples ) { + SUBDIRS += examples +} + +qwtspec.files = qwtconfig.pri qwt.prf +qwtspec.path = $${QWT_INSTALL_FEATURES} + +INSTALLS += qwtspec + diff -Nru phyxcalc-3rev200/qwt-6.0.0/README phyxcalc-3rev200/qwt-6.0.0/README --- phyxcalc-3rev200/qwt-6.0.0/README 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/README 2011-04-15 10:48:46.000000000 +0000 @@ -0,0 +1,33 @@ + +The Qwt Widget Library +---------------------- + + Qwt is an extension to the Qt GUI library from Troll Tech AS. + The Qwt library contains widgets and components which are + primarily useful for technical and scientifical purposes. + It includes a 2-D plotting widget, different kinds of sliders, + and much more. + + Qwt is hosted at http://qwt.sf.net + +Installation +------------ + + Read INSTALL how to build and install Qwt. + +Copyright +--------- + + Qwt Widget Library + Copyright (C) 1997 Josef Wilgen + Copyright (C) 2002 Uwe Rathmann + + Qwt is published under the Qwt License, Version 1.0. + You should have received a copy of this licence in the file + COPYING. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + + diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_abstract_scale.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_abstract_scale.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_abstract_scale.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_abstract_scale.cpp 2011-04-15 10:48:51.000000000 +0000 @@ -0,0 +1,310 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_abstract_scale.h" +#include "qwt_scale_engine.h" +#include "qwt_scale_draw.h" +#include "qwt_scale_div.h" +#include "qwt_scale_map.h" +#include "qwt_interval.h" + +class QwtAbstractScale::PrivateData +{ +public: + PrivateData(): + maxMajor( 5 ), + maxMinor( 3 ), + stepSize( 0.0 ), + autoScale( true ) + { + scaleEngine = new QwtLinearScaleEngine; + scaleDraw = new QwtScaleDraw(); + } + + ~PrivateData() + { + delete scaleEngine; + delete scaleDraw; + } + + QwtScaleEngine *scaleEngine; + QwtAbstractScaleDraw *scaleDraw; + + int maxMajor; + int maxMinor; + double stepSize; + + bool autoScale; +}; + +/*! + Constructor + + Creates a default QwtScaleDraw and a QwtLinearScaleEngine. + Autoscaling is enabled, and the stepSize is initialized by 0.0. +*/ + +QwtAbstractScale::QwtAbstractScale() +{ + d_data = new PrivateData; + rescale( 0.0, 100.0 ); +} + +//! Destructor +QwtAbstractScale::~QwtAbstractScale() +{ + delete d_data; +} + +/*! + \brief Specify a scale. + + Disable autoscaling and define a scale by an interval and a step size + + \param vmin lower limit of the scale interval + \param vmax upper limit of the scale interval + \param stepSize major step size + \sa setAutoScale() +*/ +void QwtAbstractScale::setScale( double vmin, double vmax, double stepSize ) +{ + d_data->autoScale = false; + d_data->stepSize = stepSize; + + rescale( vmin, vmax, stepSize ); +} + +/*! + \brief Specify a scale. + + Disable autoscaling and define a scale by an interval and a step size + + \param interval Interval + \param stepSize major step size + \sa setAutoScale() +*/ +void QwtAbstractScale::setScale( const QwtInterval &interval, double stepSize ) +{ + setScale( interval.minValue(), interval.maxValue(), stepSize ); +} + + +/*! + \brief Specify a scale. + + Disable autoscaling and define a scale by a scale division + + \param scaleDiv Scale division + \sa setAutoScale() +*/ +void QwtAbstractScale::setScale( const QwtScaleDiv &scaleDiv ) +{ + d_data->autoScale = false; + + if ( scaleDiv != d_data->scaleDraw->scaleDiv() ) + { + d_data->scaleDraw->setScaleDiv( scaleDiv ); + scaleChange(); + } +} + +/*! + Recalculate the scale division and update the scale draw. + + \param vmin Lower limit of the scale interval + \param vmax Upper limit of the scale interval + \param stepSize Major step size + + \sa scaleChange() +*/ +void QwtAbstractScale::rescale( double vmin, double vmax, double stepSize ) +{ + const QwtScaleDiv scaleDiv = d_data->scaleEngine->divideScale( + vmin, vmax, d_data->maxMajor, d_data->maxMinor, stepSize ); + + if ( scaleDiv != d_data->scaleDraw->scaleDiv() ) + { + d_data->scaleDraw->setTransformation( + d_data->scaleEngine->transformation() ); + d_data->scaleDraw->setScaleDiv( scaleDiv ); + scaleChange(); + } +} + +/*! + \brief Advise the widget to control the scale range internally. + + Autoscaling is on by default. + \sa setScale(), autoScale() +*/ +void QwtAbstractScale::setAutoScale() +{ + if ( !d_data->autoScale ) + { + d_data->autoScale = true; + scaleChange(); + } +} + +/*! + \return \c true if autoscaling is enabled +*/ +bool QwtAbstractScale::autoScale() const +{ + return d_data->autoScale; +} + +/*! + \brief Set the maximum number of major tick intervals. + + The scale's major ticks are calculated automatically such that + the number of major intervals does not exceed ticks. + The default value is 5. + \param ticks maximal number of major ticks. + \sa QwtAbstractScaleDraw +*/ +void QwtAbstractScale::setScaleMaxMajor( int ticks ) +{ + if ( ticks != d_data->maxMajor ) + { + d_data->maxMajor = ticks; + updateScaleDraw(); + } +} + +/*! + \brief Set the maximum number of minor tick intervals + + The scale's minor ticks are calculated automatically such that + the number of minor intervals does not exceed ticks. + The default value is 3. + \param ticks + \sa QwtAbstractScaleDraw +*/ +void QwtAbstractScale::setScaleMaxMinor( int ticks ) +{ + if ( ticks != d_data->maxMinor ) + { + d_data->maxMinor = ticks; + updateScaleDraw(); + } +} + +/*! + \return Max. number of minor tick intervals + The default value is 3. +*/ +int QwtAbstractScale::scaleMaxMinor() const +{ + return d_data->maxMinor; +} + +/*! + \return Max. number of major tick intervals + The default value is 5. +*/ +int QwtAbstractScale::scaleMaxMajor() const +{ + return d_data->maxMajor; +} + +/*! + \brief Set a scale draw + + scaleDraw has to be created with new and will be deleted in + ~QwtAbstractScale or the next call of setAbstractScaleDraw. +*/ +void QwtAbstractScale::setAbstractScaleDraw( QwtAbstractScaleDraw *scaleDraw ) +{ + if ( scaleDraw == NULL || scaleDraw == d_data->scaleDraw ) + return; + + if ( d_data->scaleDraw != NULL ) + scaleDraw->setScaleDiv( d_data->scaleDraw->scaleDiv() ); + + delete d_data->scaleDraw; + d_data->scaleDraw = scaleDraw; +} + +/*! + \return Scale draw + \sa setAbstractScaleDraw() +*/ +QwtAbstractScaleDraw *QwtAbstractScale::abstractScaleDraw() +{ + return d_data->scaleDraw; +} + +/*! + \return Scale draw + \sa setAbstractScaleDraw() +*/ +const QwtAbstractScaleDraw *QwtAbstractScale::abstractScaleDraw() const +{ + return d_data->scaleDraw; +} + +void QwtAbstractScale::updateScaleDraw() +{ + rescale( d_data->scaleDraw->scaleDiv().lowerBound(), + d_data->scaleDraw->scaleDiv().upperBound(), d_data->stepSize ); +} + +/*! + \brief Set a scale engine + + The scale engine is responsible for calculating the scale division, + and in case of auto scaling how to align the scale. + + scaleEngine has to be created with new and will be deleted in + ~QwtAbstractScale or the next call of setScaleEngine. +*/ +void QwtAbstractScale::setScaleEngine( QwtScaleEngine *scaleEngine ) +{ + if ( scaleEngine != NULL && scaleEngine != d_data->scaleEngine ) + { + delete d_data->scaleEngine; + d_data->scaleEngine = scaleEngine; + } +} + +/*! + \return Scale engine + \sa setScaleEngine() +*/ +const QwtScaleEngine *QwtAbstractScale::scaleEngine() const +{ + return d_data->scaleEngine; +} + +/*! + \return Scale engine + \sa setScaleEngine() +*/ +QwtScaleEngine *QwtAbstractScale::scaleEngine() +{ + return d_data->scaleEngine; +} + +/*! + \brief Notify changed scale + + Dummy empty implementation, intended to be overloaded by derived classes +*/ +void QwtAbstractScale::scaleChange() +{ +} + +/*! + \return abstractScaleDraw()->scaleMap() +*/ +const QwtScaleMap &QwtAbstractScale::scaleMap() const +{ + return d_data->scaleDraw->scaleMap(); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_abstract_scale_draw.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_abstract_scale_draw.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_abstract_scale_draw.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_abstract_scale_draw.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,412 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_abstract_scale_draw.h" +#include "qwt_math.h" +#include "qwt_text.h" +#include "qwt_painter.h" +#include "qwt_scale_map.h" +#include +#include +#include +#include + +class QwtAbstractScaleDraw::PrivateData +{ +public: + PrivateData(): + spacing( 4.0 ), + penWidth( 0 ), + minExtent( 0.0 ) + { + components = QwtAbstractScaleDraw::Backbone + | QwtAbstractScaleDraw::Ticks + | QwtAbstractScaleDraw::Labels; + + tickLength[QwtScaleDiv::MinorTick] = 4.0; + tickLength[QwtScaleDiv::MediumTick] = 6.0; + tickLength[QwtScaleDiv::MajorTick] = 8.0; + } + + ScaleComponents components; + + QwtScaleMap map; + QwtScaleDiv scldiv; + + double spacing; + double tickLength[QwtScaleDiv::NTickTypes]; + int penWidth; + + double minExtent; + + QMap labelCache; +}; + +/*! + \brief Constructor + + The range of the scale is initialized to [0, 100], + The spacing (distance between ticks and labels) is + set to 4, the tick lengths are set to 4,6 and 8 pixels +*/ +QwtAbstractScaleDraw::QwtAbstractScaleDraw() +{ + d_data = new QwtAbstractScaleDraw::PrivateData; +} + +//! Destructor +QwtAbstractScaleDraw::~QwtAbstractScaleDraw() +{ + delete d_data; +} + +/*! + En/Disable a component of the scale + + \param component Scale component + \param enable On/Off + + \sa hasComponent() +*/ +void QwtAbstractScaleDraw::enableComponent( + ScaleComponent component, bool enable ) +{ + if ( enable ) + d_data->components |= component; + else + d_data->components &= ~component; +} + +/*! + Check if a component is enabled + \sa enableComponent() +*/ +bool QwtAbstractScaleDraw::hasComponent( ScaleComponent component ) const +{ + return ( d_data->components & component ); +} + +/*! + Change the scale division + \param sd New scale division +*/ +void QwtAbstractScaleDraw::setScaleDiv( const QwtScaleDiv &sd ) +{ + d_data->scldiv = sd; + d_data->map.setScaleInterval( sd.lowerBound(), sd.upperBound() ); + d_data->labelCache.clear(); +} + +/*! + Change the transformation of the scale + \param transformation New scale transformation +*/ +void QwtAbstractScaleDraw::setTransformation( + QwtScaleTransformation *transformation ) +{ + d_data->map.setTransformation( transformation ); +} + +//! \return Map how to translate between scale and pixel values +const QwtScaleMap &QwtAbstractScaleDraw::scaleMap() const +{ + return d_data->map; +} + +//! \return Map how to translate between scale and pixel values +QwtScaleMap &QwtAbstractScaleDraw::scaleMap() +{ + return d_data->map; +} + +//! \return scale division +const QwtScaleDiv& QwtAbstractScaleDraw::scaleDiv() const +{ + return d_data->scldiv; +} + +/*! + \brief Specify the width of the scale pen + \param width Pen width + \sa penWidth() +*/ +void QwtAbstractScaleDraw::setPenWidth( int width ) +{ + if ( width < 0 ) + width = 0; + + if ( width != d_data->penWidth ) + d_data->penWidth = width; +} + +/*! + \return Scale pen width + \sa setPenWidth() +*/ +int QwtAbstractScaleDraw::penWidth() const +{ + return d_data->penWidth; +} + +/*! + \brief Draw the scale + + \param painter The painter + + \param palette Palette, text color is used for the labels, + foreground color for ticks and backbone +*/ +void QwtAbstractScaleDraw::draw( QPainter *painter, + const QPalette& palette ) const +{ + painter->save(); + + QPen pen = painter->pen(); + pen.setWidth( d_data->penWidth ); + pen.setCosmetic( false ); + painter->setPen( pen ); + + if ( hasComponent( QwtAbstractScaleDraw::Labels ) ) + { + painter->save(); + painter->setPen( palette.color( QPalette::Text ) ); // ignore pen style + + const QList &majorTicks = + d_data->scldiv.ticks( QwtScaleDiv::MajorTick ); + + for ( int i = 0; i < ( int )majorTicks.count(); i++ ) + { + const double v = majorTicks[i]; + if ( d_data->scldiv.contains( v ) ) + drawLabel( painter, majorTicks[i] ); + } + + painter->restore(); + } + + if ( hasComponent( QwtAbstractScaleDraw::Ticks ) ) + { + painter->save(); + + QPen pen = painter->pen(); + pen.setColor( palette.color( QPalette::WindowText ) ); + pen.setCapStyle( Qt::FlatCap ); + + painter->setPen( pen ); + + for ( int tickType = QwtScaleDiv::MinorTick; + tickType < QwtScaleDiv::NTickTypes; tickType++ ) + { + const QList &ticks = d_data->scldiv.ticks( tickType ); + for ( int i = 0; i < ( int )ticks.count(); i++ ) + { + const double v = ticks[i]; + if ( d_data->scldiv.contains( v ) ) + drawTick( painter, v, d_data->tickLength[tickType] ); + } + } + + painter->restore(); + } + + if ( hasComponent( QwtAbstractScaleDraw::Backbone ) ) + { + painter->save(); + + QPen pen = painter->pen(); + pen.setColor( palette.color( QPalette::WindowText ) ); + pen.setCapStyle( Qt::FlatCap ); + + painter->setPen( pen ); + + drawBackbone( painter ); + + painter->restore(); + } + + painter->restore(); +} + +/*! + \brief Set the spacing between tick and labels + + The spacing is the distance between ticks and labels. + The default spacing is 4 pixels. + + \param spacing Spacing + + \sa spacing() +*/ +void QwtAbstractScaleDraw::setSpacing( double spacing ) +{ + if ( spacing < 0 ) + spacing = 0; + + d_data->spacing = spacing; +} + +/*! + \brief Get the spacing + + The spacing is the distance between ticks and labels. + The default spacing is 4 pixels. + + \sa setSpacing() +*/ +double QwtAbstractScaleDraw::spacing() const +{ + return d_data->spacing; +} + +/*! + \brief Set a minimum for the extent + + The extent is calculated from the coomponents of the + scale draw. In situations, where the labels are + changing and the layout depends on the extent (f.e scrolling + a scale), setting an upper limit as minimum extent will + avoid jumps of the layout. + + \param minExtent Minimum extent + + \sa extent(), minimumExtent() +*/ +void QwtAbstractScaleDraw::setMinimumExtent( double minExtent ) +{ + if ( minExtent < 0.0 ) + minExtent = 0.0; + + d_data->minExtent = minExtent; +} + +/*! + Get the minimum extent + \sa extent(), setMinimumExtent() +*/ +double QwtAbstractScaleDraw::minimumExtent() const +{ + return d_data->minExtent; +} + +/*! + Set the length of the ticks + + \param tickType Tick type + \param length New length + + \warning the length is limited to [0..1000] +*/ +void QwtAbstractScaleDraw::setTickLength( + QwtScaleDiv::TickType tickType, double length ) +{ + if ( tickType < QwtScaleDiv::MinorTick || + tickType > QwtScaleDiv::MajorTick ) + { + return; + } + + if ( length < 0.0 ) + length = 0.0; + + const double maxTickLen = 1000.0; + if ( length > maxTickLen ) + length = maxTickLen; + + d_data->tickLength[tickType] = length; +} + +/*! + Return the length of the ticks + + \sa setTickLength(), maxTickLength() +*/ +double QwtAbstractScaleDraw::tickLength( QwtScaleDiv::TickType tickType ) const +{ + if ( tickType < QwtScaleDiv::MinorTick || + tickType > QwtScaleDiv::MajorTick ) + { + return 0; + } + + return d_data->tickLength[tickType]; +} + +/*! + \return Length of the longest tick + + Useful for layout calculations + \sa tickLength(), setTickLength() +*/ +double QwtAbstractScaleDraw::maxTickLength() const +{ + double length = 0.0; + for ( int i = 0; i < QwtScaleDiv::NTickTypes; i++ ) + length = qMax( length, d_data->tickLength[i] ); + + return length; +} + +/*! + \brief Convert a value into its representing label + + The value is converted to a plain text using + QLocale::system().toString(value). + This method is often overloaded by applications to have individual + labels. + + \param value Value + \return Label string. +*/ +QwtText QwtAbstractScaleDraw::label( double value ) const +{ + return QLocale().toString( value ); +} + +/*! + \brief Convert a value into its representing label and cache it. + + The conversion between value and label is called very often + in the layout and painting code. Unfortunately the + calculation of the label sizes might be slow (really slow + for rich text in Qt4), so it's necessary to cache the labels. + + \param font Font + \param value Value + + \return Tick label +*/ +const QwtText &QwtAbstractScaleDraw::tickLabel( + const QFont &font, double value ) const +{ + QMap::const_iterator it = d_data->labelCache.find( value ); + if ( it == d_data->labelCache.end() ) + { + QwtText lbl = label( value ); + lbl.setRenderFlags( 0 ); + lbl.setLayoutAttribute( QwtText::MinimumLayout ); + + ( void )lbl.textSize( font ); // initialize the internal cache + + it = d_data->labelCache.insert( value, lbl ); + } + + return ( *it ); +} + +/*! + Invalidate the cache used by QwtAbstractScaleDraw::tickLabel + + The cache is invalidated, when a new QwtScaleDiv is set. If + the labels need to be changed. while the same QwtScaleDiv is set, + invalidateCache() needs to be called manually. +*/ +void QwtAbstractScaleDraw::invalidateCache() +{ + d_data->labelCache.clear(); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_abstract_scale_draw.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_abstract_scale_draw.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_abstract_scale_draw.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_abstract_scale_draw.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,139 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_ABSTRACT_SCALE_DRAW_H +#define QWT_ABSTRACT_SCALE_DRAW_H + +#include "qwt_global.h" +#include "qwt_scale_div.h" +#include "qwt_text.h" + +class QPalette; +class QPainter; +class QFont; +class QwtScaleTransformation; +class QwtScaleMap; + +/*! + \brief A abstract base class for drawing scales + + QwtAbstractScaleDraw can be used to draw linear or logarithmic scales. + + After a scale division has been specified as a QwtScaleDiv object + using QwtAbstractScaleDraw::setScaleDiv(const QwtScaleDiv &s), + the scale can be drawn with the QwtAbstractScaleDraw::draw() member. +*/ +class QWT_EXPORT QwtAbstractScaleDraw +{ +public: + + /*! + Components of a scale + \sa enableComponent(), hasComponent + */ + enum ScaleComponent + { + //! Backbone = the line where the ticks are located + Backbone = 0x01, + + //! Ticks + Ticks = 0x02, + + //! Labels + Labels = 0x04 + }; + + //! Scale components + typedef QFlags ScaleComponents; + + QwtAbstractScaleDraw(); + virtual ~QwtAbstractScaleDraw(); + + void setScaleDiv( const QwtScaleDiv &s ); + const QwtScaleDiv& scaleDiv() const; + + void setTransformation( QwtScaleTransformation * ); + const QwtScaleMap &scaleMap() const; + QwtScaleMap &scaleMap(); + + void enableComponent( ScaleComponent, bool enable = true ); + bool hasComponent( ScaleComponent ) const; + + void setTickLength( QwtScaleDiv::TickType, double length ); + double tickLength( QwtScaleDiv::TickType ) const; + double maxTickLength() const; + + void setSpacing( double margin ); + double spacing() const; + + void setPenWidth( int width ); + int penWidth() const; + + virtual void draw( QPainter *, const QPalette & ) const; + + virtual QwtText label( double ) const; + + /*! + Calculate the extent + + The extent is the distcance from the baseline to the outermost + pixel of the scale draw in opposite to its orientation. + It is at least minimumExtent() pixels. + + \sa setMinimumExtent(), minimumExtent() + */ + virtual double extent( const QFont & ) const = 0; + + void setMinimumExtent( double ); + double minimumExtent() const; + +protected: + /*! + Draw a tick + + \param painter Painter + \param value Value of the tick + \param len Lenght of the tick + + \sa drawBackbone(), drawLabel() + */ + virtual void drawTick( QPainter *painter, double value, double len ) const = 0; + + /*! + Draws the baseline of the scale + \param painter Painter + + \sa drawTick(), drawLabel() + */ + virtual void drawBackbone( QPainter *painter ) const = 0; + + /*! + Draws the label for a major scale tick + + \param painter Painter + \param value Value + + \sa drawTick(), drawBackbone() + */ + virtual void drawLabel( QPainter *painter, double value ) const = 0; + + void invalidateCache(); + const QwtText &tickLabel( const QFont &, double value ) const; + +private: + QwtAbstractScaleDraw( const QwtAbstractScaleDraw & ); + QwtAbstractScaleDraw &operator=( const QwtAbstractScaleDraw & ); + + class PrivateData; + PrivateData *d_data; +}; + +Q_DECLARE_OPERATORS_FOR_FLAGS( QwtAbstractScaleDraw::ScaleComponents ); + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_abstract_scale.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_abstract_scale.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_abstract_scale.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_abstract_scale.h 2011-04-15 10:48:46.000000000 +0000 @@ -0,0 +1,70 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_ABSTRACT_SCALE_H +#define QWT_ABSTRACT_SCALE_H + +#include "qwt_global.h" + +class QwtScaleEngine; +class QwtAbstractScaleDraw; +class QwtScaleDiv; +class QwtScaleMap; +class QwtInterval; + +/*! + \brief An abstract base class for classes containing a scale + + QwtAbstractScale is used to provide classes with a QwtScaleDraw, + and a QwtScaleDiv. The QwtScaleDiv might be set explicitely + or calculated by a QwtScaleEngine. +*/ + +class QWT_EXPORT QwtAbstractScale +{ +public: + QwtAbstractScale(); + virtual ~QwtAbstractScale(); + + void setScale( double vmin, double vmax, double step = 0.0 ); + void setScale( const QwtInterval &, double step = 0.0 ); + void setScale( const QwtScaleDiv & ); + + void setAutoScale(); + bool autoScale() const; + + void setScaleMaxMajor( int ticks ); + int scaleMaxMinor() const; + + void setScaleMaxMinor( int ticks ); + int scaleMaxMajor() const; + + void setScaleEngine( QwtScaleEngine * ); + const QwtScaleEngine *scaleEngine() const; + QwtScaleEngine *scaleEngine(); + + const QwtScaleMap &scaleMap() const; + +protected: + void rescale( double vmin, double vmax, double step = 0.0 ); + + void setAbstractScaleDraw( QwtAbstractScaleDraw * ); + const QwtAbstractScaleDraw *abstractScaleDraw() const; + QwtAbstractScaleDraw *abstractScaleDraw(); + + virtual void scaleChange(); + +private: + void updateScaleDraw(); + + class PrivateData; + PrivateData *d_data; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_abstract_slider.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_abstract_slider.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_abstract_slider.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_abstract_slider.cpp 2011-04-15 10:48:49.000000000 +0000 @@ -0,0 +1,597 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_abstract_slider.h" +#include "qwt_math.h" +#include +#include + +#if QT_VERSION < 0x040601 +#define qFabs(x) ::fabs(x) +#define qExp(x) ::exp(x) +#endif + +class QwtAbstractSlider::PrivateData +{ +public: + PrivateData(): + scrollMode( QwtAbstractSlider::ScrNone ), + mouseOffset( 0.0 ), + tracking( true ), + tmrID( 0 ), + updTime( 150 ), + mass( 0.0 ), + readOnly( false ) + { + } + + QwtAbstractSlider::ScrollMode scrollMode; + double mouseOffset; + int direction; + int tracking; + + int tmrID; + int updTime; + int timerTick; + QTime time; + double speed; + double mass; + Qt::Orientation orientation; + bool readOnly; +}; + +/*! + \brief Constructor + + \param orientation Orientation + \param parent Parent widget +*/ +QwtAbstractSlider::QwtAbstractSlider( + Qt::Orientation orientation, QWidget *parent ): + QWidget( parent, NULL ) +{ + d_data = new QwtAbstractSlider::PrivateData; + d_data->orientation = orientation; + + setFocusPolicy( Qt::TabFocus ); +} + +//! Destructor +QwtAbstractSlider::~QwtAbstractSlider() +{ + if ( d_data->tmrID ) + killTimer( d_data->tmrID ); + + delete d_data; +} + +/*! + En/Disable read only mode + + In read only mode the slider can't be controlled by mouse + or keyboard. + + \param readOnly Enables in case of true + \sa isReadOnly() +*/ +void QwtAbstractSlider::setReadOnly( bool readOnly ) +{ + d_data->readOnly = readOnly; + update(); +} + +/*! + In read only mode the slider can't be controlled by mouse + or keyboard. + + \return true if read only + \sa setReadOnly() +*/ +bool QwtAbstractSlider::isReadOnly() const +{ + return d_data->readOnly; +} + +/*! + \brief Set the orientation. + \param o Orientation. Allowed values are + Qt::Horizontal and Qt::Vertical. +*/ +void QwtAbstractSlider::setOrientation( Qt::Orientation o ) +{ + d_data->orientation = o; +} + +/*! + \return Orientation + \sa setOrientation() +*/ +Qt::Orientation QwtAbstractSlider::orientation() const +{ + return d_data->orientation; +} + +//! Stop updating if automatic scrolling is active + +void QwtAbstractSlider::stopMoving() +{ + if ( d_data->tmrID ) + { + killTimer( d_data->tmrID ); + d_data->tmrID = 0; + } +} + +/*! + \brief Specify the update interval for automatic scrolling + \param t update interval in milliseconds + \sa getScrollMode() +*/ +void QwtAbstractSlider::setUpdateTime( int t ) +{ + if ( t < 50 ) + t = 50; + d_data->updTime = t; +} + + +/*! + Mouse press event handler + \param e Mouse event +*/ +void QwtAbstractSlider::mousePressEvent( QMouseEvent *e ) +{ + if ( isReadOnly() ) + { + e->ignore(); + return; + } + if ( !isValid() ) + return; + + const QPoint &p = e->pos(); + + d_data->timerTick = 0; + + getScrollMode( p, d_data->scrollMode, d_data->direction ); + stopMoving(); + + switch ( d_data->scrollMode ) + { + case ScrPage: + case ScrTimer: + d_data->mouseOffset = 0; + d_data->tmrID = startTimer( qMax( 250, 2 * d_data->updTime ) ); + break; + + case ScrMouse: + d_data->time.start(); + d_data->speed = 0; + d_data->mouseOffset = getValue( p ) - value(); + Q_EMIT sliderPressed(); + break; + + default: + d_data->mouseOffset = 0; + d_data->direction = 0; + break; + } +} + + +//! Emits a valueChanged() signal if necessary +void QwtAbstractSlider::buttonReleased() +{ + if ( ( !d_data->tracking ) || ( value() != prevValue() ) ) + Q_EMIT valueChanged( value() ); +} + + +/*! + Mouse Release Event handler + \param e Mouse event +*/ +void QwtAbstractSlider::mouseReleaseEvent( QMouseEvent *e ) +{ + if ( isReadOnly() ) + { + e->ignore(); + return; + } + if ( !isValid() ) + return; + + const double inc = step(); + + switch ( d_data->scrollMode ) + { + case ScrMouse: + { + setPosition( e->pos() ); + d_data->direction = 0; + d_data->mouseOffset = 0; + if ( d_data->mass > 0.0 ) + { + const int ms = d_data->time.elapsed(); + if ( ( qFabs( d_data->speed ) > 0.0 ) && ( ms < 50 ) ) + d_data->tmrID = startTimer( d_data->updTime ); + } + else + { + d_data->scrollMode = ScrNone; + buttonReleased(); + } + Q_EMIT sliderReleased(); + + break; + } + + case ScrDirect: + { + setPosition( e->pos() ); + d_data->direction = 0; + d_data->mouseOffset = 0; + d_data->scrollMode = ScrNone; + buttonReleased(); + break; + } + + case ScrPage: + { + stopMoving(); + if ( !d_data->timerTick ) + QwtDoubleRange::incPages( d_data->direction ); + d_data->timerTick = 0; + buttonReleased(); + d_data->scrollMode = ScrNone; + break; + } + + case ScrTimer: + { + stopMoving(); + if ( !d_data->timerTick ) + QwtDoubleRange::fitValue( value() + double( d_data->direction ) * inc ); + d_data->timerTick = 0; + buttonReleased(); + d_data->scrollMode = ScrNone; + break; + } + + default: + { + d_data->scrollMode = ScrNone; + buttonReleased(); + } + } +} + + +/*! + Move the slider to a specified point, adjust the value + and emit signals if necessary. +*/ +void QwtAbstractSlider::setPosition( const QPoint &p ) +{ + QwtDoubleRange::fitValue( getValue( p ) - d_data->mouseOffset ); +} + + +/*! + \brief Enables or disables tracking. + + If tracking is enabled, the slider emits a + valueChanged() signal whenever its value + changes (the default behaviour). If tracking + is disabled, the value changed() signal will only + be emitted if:
    +
  • the user releases the mouse + button and the value has changed or +
  • at the end of automatic scrolling.
+ Tracking is enabled by default. + \param enable \c true (enable) or \c false (disable) tracking. +*/ +void QwtAbstractSlider::setTracking( bool enable ) +{ + d_data->tracking = enable; +} + +/*! + Mouse Move Event handler + \param e Mouse event +*/ +void QwtAbstractSlider::mouseMoveEvent( QMouseEvent *e ) +{ + if ( isReadOnly() ) + { + e->ignore(); + return; + } + + if ( !isValid() ) + return; + + if ( d_data->scrollMode == ScrMouse ) + { + setPosition( e->pos() ); + if ( d_data->mass > 0.0 ) + { + double ms = double( d_data->time.elapsed() ); + if ( ms < 1.0 ) + ms = 1.0; + d_data->speed = ( exactValue() - exactPrevValue() ) / ms; + d_data->time.start(); + } + if ( value() != prevValue() ) + Q_EMIT sliderMoved( value() ); + } +} + +/*! + Wheel Event handler + \param e Whell event +*/ +void QwtAbstractSlider::wheelEvent( QWheelEvent *e ) +{ + if ( isReadOnly() ) + { + e->ignore(); + return; + } + + if ( !isValid() ) + return; + + QwtAbstractSlider::ScrollMode mode = ScrNone; + int direction = 0; + + // Give derived classes a chance to say ScrNone + getScrollMode( e->pos(), mode, direction ); + if ( mode != QwtAbstractSlider::ScrNone ) + { + // Most mouse types work in steps of 15 degrees, in which case + // the delta value is a multiple of 120 + + const int inc = e->delta() / 120; + QwtDoubleRange::incPages( inc ); + if ( value() != prevValue() ) + Q_EMIT sliderMoved( value() ); + } +} + +/*! + Handles key events + + - Key_Down, KeyLeft\n + Decrement by 1 + - Key_Up, Key_Right\n + Increment by 1 + + \param e Key event + \sa isReadOnly() +*/ +void QwtAbstractSlider::keyPressEvent( QKeyEvent *e ) +{ + if ( isReadOnly() ) + { + e->ignore(); + return; + } + + if ( !isValid() ) + return; + + int increment = 0; + switch ( e->key() ) + { + case Qt::Key_Down: + if ( orientation() == Qt::Vertical ) + increment = -1; + break; + case Qt::Key_Up: + if ( orientation() == Qt::Vertical ) + increment = 1; + break; + case Qt::Key_Left: + if ( orientation() == Qt::Horizontal ) + increment = -1; + break; + case Qt::Key_Right: + if ( orientation() == Qt::Horizontal ) + increment = 1; + break; + default:; + e->ignore(); + } + + if ( increment != 0 ) + { + QwtDoubleRange::incValue( increment ); + if ( value() != prevValue() ) + Q_EMIT sliderMoved( value() ); + } +} + +/*! + Qt timer event + \param e Timer event +*/ +void QwtAbstractSlider::timerEvent( QTimerEvent * ) +{ + const double inc = step(); + + switch ( d_data->scrollMode ) + { + case ScrMouse: + { + if ( d_data->mass > 0.0 ) + { + d_data->speed *= qExp( - double( d_data->updTime ) * 0.001 / d_data->mass ); + const double newval = + exactValue() + d_data->speed * double( d_data->updTime ); + QwtDoubleRange::fitValue( newval ); + // stop if d_data->speed < one step per second + if ( qFabs( d_data->speed ) < 0.001 * qFabs( step() ) ) + { + d_data->speed = 0; + stopMoving(); + buttonReleased(); + } + + } + else + stopMoving(); + break; + } + + case ScrPage: + { + QwtDoubleRange::incPages( d_data->direction ); + if ( !d_data->timerTick ) + { + killTimer( d_data->tmrID ); + d_data->tmrID = startTimer( d_data->updTime ); + } + break; + } + case ScrTimer: + { + QwtDoubleRange::fitValue( value() + double( d_data->direction ) * inc ); + if ( !d_data->timerTick ) + { + killTimer( d_data->tmrID ); + d_data->tmrID = startTimer( d_data->updTime ); + } + break; + } + default: + { + stopMoving(); + break; + } + } + + d_data->timerTick = 1; +} + + +/*! + Notify change of value + + This function can be reimplemented by derived classes + in order to keep track of changes, i.e. repaint the widget. + The default implementation emits a valueChanged() signal + if tracking is enabled. +*/ +void QwtAbstractSlider::valueChange() +{ + if ( d_data->tracking ) + Q_EMIT valueChanged( value() ); +} + +/*! + \brief Set the slider's mass for flywheel effect. + + If the slider's mass is greater then 0, it will continue + to move after the mouse button has been released. Its speed + decreases with time at a rate depending on the slider's mass. + A large mass means that it will continue to move for a + long time. + + Derived widgets may overload this function to make it public. + + \param val New mass in kg + + \bug If the mass is smaller than 1g, it is set to zero. + The maximal mass is limited to 100kg. + \sa mass() +*/ +void QwtAbstractSlider::setMass( double val ) +{ + if ( val < 0.001 ) + d_data->mass = 0.0; + else if ( val > 100.0 ) + d_data->mass = 100.0; + else + d_data->mass = val; +} + +/*! + \return mass + \sa setMass() +*/ +double QwtAbstractSlider::mass() const +{ + return d_data->mass; +} + + +/*! + \brief Move the slider to a specified value + + This function can be used to move the slider to a value + which is not an integer multiple of the step size. + \param val new value + \sa fitValue() +*/ +void QwtAbstractSlider::setValue( double val ) +{ + if ( d_data->scrollMode == ScrMouse ) + stopMoving(); + QwtDoubleRange::setValue( val ); +} + + +/*! + \brief Set the slider's value to the nearest integer multiple + of the step size. + + \param value Value + \sa setValue(), incValue() +*/ +void QwtAbstractSlider::fitValue( double value ) +{ + if ( d_data->scrollMode == ScrMouse ) + stopMoving(); + QwtDoubleRange::fitValue( value ); +} + +/*! + \brief Increment the value by a specified number of steps + \param steps number of steps + \sa setValue() +*/ +void QwtAbstractSlider::incValue( int steps ) +{ + if ( d_data->scrollMode == ScrMouse ) + stopMoving(); + QwtDoubleRange::incValue( steps ); +} + +/*! + \sa mouseOffset() +*/ +void QwtAbstractSlider::setMouseOffset( double offset ) +{ + d_data->mouseOffset = offset; +} + +/*! + \sa setMouseOffset() +*/ +double QwtAbstractSlider::mouseOffset() const +{ + return d_data->mouseOffset; +} + +//! sa ScrollMode +int QwtAbstractSlider::scrollMode() const +{ + return d_data->scrollMode; +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_abstract_slider.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_abstract_slider.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_abstract_slider.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_abstract_slider.h 2011-04-15 10:48:46.000000000 +0000 @@ -0,0 +1,188 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_ABSTRACT_SLIDER_H +#define QWT_ABSTRACT_SLIDER_H + +#include "qwt_global.h" +#include "qwt_double_range.h" +#include + +/*! + \brief An abstract base class for slider widgets + + QwtAbstractSlider is a base class for + slider widgets. It handles mouse events + and updates the slider's value accordingly. Derived classes + only have to implement the getValue() and + getScrollMode() members, and should react to a + valueChange(), which normally requires repainting. +*/ + +class QWT_EXPORT QwtAbstractSlider : public QWidget, public QwtDoubleRange +{ + Q_OBJECT + Q_PROPERTY( bool readOnly READ isReadOnly WRITE setReadOnly ) + Q_PROPERTY( bool valid READ isValid WRITE setValid ) + Q_PROPERTY( double mass READ mass WRITE setMass ) + Q_PROPERTY( Qt::Orientation orientation + READ orientation WRITE setOrientation ) + +public: + /*! + Scroll mode + \sa getScrollMode() + */ + enum ScrollMode + { + //! Scrolling switched off. Don't change the value. + ScrNone, + + /*! + Change the value while the user keeps the + button pressed and moves the mouse. + */ + ScrMouse, + + /*! + Automatic scrolling. Increment the value in the specified direction + as long as the user keeps the button pressed. + */ + ScrTimer, + + ScrDirect, + + //! Automatic scrolling. Same as ScrTimer, but increment by page size. + ScrPage + }; + + explicit QwtAbstractSlider( Qt::Orientation, QWidget *parent = NULL ); + virtual ~QwtAbstractSlider(); + + void setUpdateTime( int t ); + void stopMoving(); + void setTracking( bool enable ); + + virtual void setMass( double val ); + virtual double mass() const; + + virtual void setOrientation( Qt::Orientation o ); + Qt::Orientation orientation() const; + + bool isReadOnly() const; + + /* + Wrappers for QwtDblRange::isValid/QwtDblRange::setValid made + to be available as Q_PROPERTY in the designer. + */ + + /*! + \sa QwtDblRange::isValid() + */ + bool isValid() const + { + return QwtDoubleRange::isValid(); + } + + /*! + \param valid true/false + \sa QwtDblRange::isValid() + */ + void setValid( bool valid ) + { + QwtDoubleRange::setValid( valid ); + } + +public Q_SLOTS: + virtual void setValue( double val ); + virtual void fitValue( double val ); + virtual void incValue( int steps ); + + virtual void setReadOnly( bool ); + +Q_SIGNALS: + + /*! + \brief Notify a change of value. + + In the default setting + (tracking enabled), this signal will be emitted every + time the value changes ( see setTracking() ). + \param value new value + */ + void valueChanged( double value ); + + /*! + This signal is emitted when the user presses the + movable part of the slider (start ScrMouse Mode). + */ + void sliderPressed(); + + /*! + This signal is emitted when the user releases the + movable part of the slider. + */ + + void sliderReleased(); + /*! + This signal is emitted when the user moves the + slider with the mouse. + \param value new value + */ + void sliderMoved( double value ); + +protected: + virtual void setPosition( const QPoint & ); + virtual void valueChange(); + + virtual void timerEvent( QTimerEvent *e ); + virtual void mousePressEvent( QMouseEvent *e ); + virtual void mouseReleaseEvent( QMouseEvent *e ); + virtual void mouseMoveEvent( QMouseEvent *e ); + virtual void keyPressEvent( QKeyEvent *e ); + virtual void wheelEvent( QWheelEvent *e ); + + /*! + \brief Determine the value corresponding to a specified poind + + This is an abstract virtual function which is called when + the user presses or releases a mouse button or moves the + mouse. It has to be implemented by the derived class. + \param p point + */ + virtual double getValue( const QPoint & p ) = 0; + + /*! + \brief Determine what to do when the user presses a mouse button. + + This function is abstract and has to be implemented by derived classes. + It is called on a mousePress event. The derived class can determine + what should happen next in dependence of the position where the mouse + was pressed by returning scrolling mode and direction. + + \param pos point where the mouse was pressed + \retval scrollMode The scrolling mode + \retval direction direction: 1, 0, or -1. + */ + virtual void getScrollMode( const QPoint &pos, + ScrollMode &scrollMode, int &direction ) const = 0; + + void setMouseOffset( double ); + double mouseOffset() const; + + int scrollMode() const; + +private: + void buttonReleased(); + + class PrivateData; + PrivateData *d_data; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_analog_clock.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_analog_clock.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_analog_clock.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_analog_clock.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,226 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_analog_clock.h" + +/*! + Constructor + \param parent Parent widget +*/ +QwtAnalogClock::QwtAnalogClock( QWidget *parent ): + QwtDial( parent ) +{ + initClock(); +} + +void QwtAnalogClock::initClock() +{ + setWrapping( true ); + setReadOnly( true ); + + setOrigin( 270.0 ); + setRange( 0.0, 60.0 * 60.0 * 12.0 ); // seconds + setScale( -1, 5, 60.0 * 60.0 ); + + setScaleComponents( + QwtAbstractScaleDraw::Ticks | QwtAbstractScaleDraw::Labels ); + setScaleTicks( 1, 0, 8 ); + scaleDraw()->setSpacing( 8 ); + + QColor knobColor = palette().color( QPalette::Active, QPalette::Text ); + knobColor = knobColor.dark( 120 ); + + QColor handColor; + int width; + + for ( int i = 0; i < NHands; i++ ) + { + if ( i == SecondHand ) + { + width = 2; + handColor = knobColor.dark( 120 ); + } + else + { + width = 8; + handColor = knobColor; + } + + QwtDialSimpleNeedle *hand = new QwtDialSimpleNeedle( + QwtDialSimpleNeedle::Arrow, true, handColor, knobColor ); + hand->setWidth( width ); + + d_hand[i] = NULL; + setHand( ( Hand )i, hand ); + } +} + +//! Destructor +QwtAnalogClock::~QwtAnalogClock() +{ + for ( int i = 0; i < NHands; i++ ) + delete d_hand[i]; +} + +/*! + Nop method, use setHand instead + \sa setHand() +*/ +void QwtAnalogClock::setNeedle( QwtDialNeedle * ) +{ + // no op + return; +} + +/*! + Set a clockhand + \param hand Specifies the type of hand + \param needle Hand + \sa hand() +*/ +void QwtAnalogClock::setHand( Hand hand, QwtDialNeedle *needle ) +{ + if ( hand >= 0 || hand < NHands ) + { + delete d_hand[hand]; + d_hand[hand] = needle; + } +} + +/*! + \return Clock hand + \param hd Specifies the type of hand + \sa setHand() +*/ +QwtDialNeedle *QwtAnalogClock::hand( Hand hd ) +{ + if ( hd < 0 || hd >= NHands ) + return NULL; + + return d_hand[hd]; +} + +/*! + \return Clock hand + \param hd Specifies the type of hand + \sa setHand() +*/ +const QwtDialNeedle *QwtAnalogClock::hand( Hand hd ) const +{ + return const_cast( this )->hand( hd ); +} + +/*! + \brief Set the current time + + This is the same as QwtAnalogClock::setTime(), but Qt < 3.0 + can't handle default parameters for slots. +*/ +void QwtAnalogClock::setCurrentTime() +{ + setTime( QTime::currentTime() ); +} + +/*! + Set a time + \param time Time to display +*/ +void QwtAnalogClock::setTime( const QTime &time ) +{ + if ( time.isValid() ) + { + setValue( ( time.hour() % 12 ) * 60.0 * 60.0 + + time.minute() * 60.0 + time.second() ); + } + else + setValid( false ); +} + +/*! + Find the scale label for a given value + + \param value Value + \return Label +*/ +QwtText QwtAnalogClock::scaleLabel( double value ) const +{ + if ( value == 0.0 ) + value = 60.0 * 60.0 * 12.0; + + return QString::number( int( value / ( 60.0 * 60.0 ) ) ); +} + +/*! + \brief Draw the needle + + A clock has no single needle but three hands instead. drawNeedle + translates value() into directions for the hands and calls + drawHand(). + + \param painter Painter + \param center Center of the clock + \param radius Maximum length for the hands + \param dir Dummy, not used. + \param colorGroup ColorGroup + + \sa drawHand() +*/ +void QwtAnalogClock::drawNeedle( QPainter *painter, const QPointF ¢er, + double radius, double dir, QPalette::ColorGroup colorGroup ) const +{ + Q_UNUSED( dir ); + + if ( isValid() ) + { + const double hours = value() / ( 60.0 * 60.0 ); + const double minutes = ( value() - ( int )hours * 60.0 * 60.0 ) / 60.0; + const double seconds = value() - ( int )hours * 60.0 * 60.0 + - ( int )minutes * 60.0; + + double angle[NHands]; + angle[HourHand] = 360.0 * hours / 12.0; + angle[MinuteHand] = 360.0 * minutes / 60.0; + angle[SecondHand] = 360.0 * seconds / 60.0; + + for ( int hand = 0; hand < NHands; hand++ ) + { + double d = angle[hand]; + if ( direction() == Clockwise ) + d = 360.0 - d; + + d -= origin(); + + drawHand( painter, ( Hand )hand, center, radius, d, colorGroup ); + } + } +} + +/*! + Draw a clock hand + + \param painter Painter + \param hd Specify the type of hand + \param center Center of the clock + \param radius Maximum length for the hands + \param direction Direction of the hand in degrees, counter clockwise + \param cg ColorGroup +*/ +void QwtAnalogClock::drawHand( QPainter *painter, Hand hd, + const QPointF ¢er, double radius, double direction, + QPalette::ColorGroup cg ) const +{ + const QwtDialNeedle *needle = hand( hd ); + if ( needle ) + { + if ( hd == HourHand ) + radius = qRound( 0.8 * radius ); + + needle->draw( painter, center, radius, direction, cg ); + } +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_analog_clock.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_analog_clock.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_analog_clock.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_analog_clock.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,96 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_ANALOG_CLOCK_H +#define QWT_ANALOG_CLOCK_H + +#include "qwt_global.h" +#include "qwt_dial.h" +#include "qwt_dial_needle.h" +#include + +/*! + \brief An analog clock + + \image html analogclock.png + + \par Example + \verbatim #include + + QwtAnalogClock *clock = new QwtAnalogClock(...); + clock->scaleDraw()->setPenWidth(3); + clock->setLineWidth(6); + clock->setFrameShadow(QwtDial::Sunken); + clock->setTime(); + + // update the clock every second + QTimer *timer = new QTimer(clock); + timer->connect(timer, SIGNAL(timeout()), clock, SLOT(setCurrentTime())); + timer->start(1000); + + \endverbatim + + Qwt is missing a set of good looking hands. + Contributions are very welcome. + + \note The examples/dials example shows how to use QwtAnalogClock. +*/ + +class QWT_EXPORT QwtAnalogClock: public QwtDial +{ + Q_OBJECT + +public: + /*! + Hand type + \sa setHand(), hand() + */ + enum Hand + { + //! Needle displaying the seconds + SecondHand, + + //! Needle displaying the minutes + MinuteHand, + + //! Needle displaying the hours + HourHand, + + //! Number of needles + NHands + }; + + explicit QwtAnalogClock( QWidget* parent = NULL ); + virtual ~QwtAnalogClock(); + + virtual void setHand( Hand, QwtDialNeedle * ); + const QwtDialNeedle *hand( Hand ) const; + QwtDialNeedle *hand( Hand ); + +public Q_SLOTS: + void setCurrentTime(); + void setTime( const QTime & = QTime::currentTime() ); + +protected: + virtual QwtText scaleLabel( double ) const; + + virtual void drawNeedle( QPainter *, const QPointF &, + double radius, double direction, QPalette::ColorGroup ) const; + + virtual void drawHand( QPainter *, Hand, const QPointF &, + double radius, double direction, QPalette::ColorGroup ) const; + +private: + virtual void setNeedle( QwtDialNeedle * ); + void initClock(); + + QwtDialNeedle *d_hand[NHands]; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_arrow_button.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_arrow_button.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_arrow_button.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_arrow_button.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,332 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_arrow_button.h" +#include "qwt_math.h" +#include +#include +#include +#include +#include + +static const int MaxNum = 3; +static const int Margin = 2; +static const int Spacing = 1; + +class QwtArrowButton::PrivateData +{ +public: + int num; + Qt::ArrowType arrowType; +}; + +static QStyleOptionButton styleOpt( const QwtArrowButton* btn ) +{ + QStyleOptionButton option; + option.init( btn ); + option.features = QStyleOptionButton::None; + if ( btn->isFlat() ) + option.features |= QStyleOptionButton::Flat; + if ( btn->menu() ) + option.features |= QStyleOptionButton::HasMenu; + if ( btn->autoDefault() || btn->isDefault() ) + option.features |= QStyleOptionButton::AutoDefaultButton; + if ( btn->isDefault() ) + option.features |= QStyleOptionButton::DefaultButton; + if ( btn->isDown() ) + option.state |= QStyle::State_Sunken; + if ( !btn->isFlat() && !btn->isDown() ) + option.state |= QStyle::State_Raised; + + return option; +} + +/*! + \param num Number of arrows + \param arrowType see Qt::ArowType in the Qt docs. + \param parent Parent widget +*/ +QwtArrowButton::QwtArrowButton( int num, + Qt::ArrowType arrowType, QWidget *parent ): + QPushButton( parent ) +{ + d_data = new PrivateData; + d_data->num = qBound( 1, num, MaxNum ); + d_data->arrowType = arrowType; + + setAutoRepeat( true ); + setAutoDefault( false ); + + switch ( d_data->arrowType ) + { + case Qt::LeftArrow: + case Qt::RightArrow: + setSizePolicy( QSizePolicy::Expanding, + QSizePolicy::Fixed ); + break; + default: + setSizePolicy( QSizePolicy::Fixed, + QSizePolicy::Expanding ); + } +} + +//! Destructor +QwtArrowButton::~QwtArrowButton() +{ + delete d_data; + d_data = NULL; +} + +/*! + \brief The direction of the arrows +*/ +Qt::ArrowType QwtArrowButton::arrowType() const +{ + return d_data->arrowType; +} + +/*! + \brief The number of arrows +*/ +int QwtArrowButton::num() const +{ + return d_data->num; +} + +/*! + \return the bounding rect for the label +*/ +QRect QwtArrowButton::labelRect() const +{ + const int m = Margin; + + QRect r = rect(); + r.setRect( r.x() + m, r.y() + m, + r.width() - 2 * m, r.height() - 2 * m ); + + if ( isDown() ) + { + QStyleOptionButton option = styleOpt( this ); + const int ph = style()->pixelMetric( + QStyle::PM_ButtonShiftHorizontal, &option, this ); + const int pv = style()->pixelMetric( + QStyle::PM_ButtonShiftVertical, &option, this ); + + r.translate( ph, pv ); + } + + return r; +} + +/*! + Paint event handler + \param event Paint event +*/ +void QwtArrowButton::paintEvent( QPaintEvent *event ) +{ + QPushButton::paintEvent( event ); + QPainter painter( this ); + drawButtonLabel( &painter ); +} + +/*! + \brief Draw the button label + + \param painter Painter + \sa The Qt Manual on QPushButton +*/ +void QwtArrowButton::drawButtonLabel( QPainter *painter ) +{ + const bool isVertical = d_data->arrowType == Qt::UpArrow || + d_data->arrowType == Qt::DownArrow; + + const QRect r = labelRect(); + QSize boundingSize = labelRect().size(); + if ( isVertical ) + boundingSize.transpose(); + + const int w = + ( boundingSize.width() - ( MaxNum - 1 ) * Spacing ) / MaxNum; + + QSize arrow = arrowSize( Qt::RightArrow, + QSize( w, boundingSize.height() ) ); + + if ( isVertical ) + arrow.transpose(); + + QRect contentsSize; // aligned rect where to paint all arrows + if ( d_data->arrowType == Qt::LeftArrow || d_data->arrowType == Qt::RightArrow ) + { + contentsSize.setWidth( d_data->num * arrow.width() + + ( d_data->num - 1 ) * Spacing ); + contentsSize.setHeight( arrow.height() ); + } + else + { + contentsSize.setWidth( arrow.width() ); + contentsSize.setHeight( d_data->num * arrow.height() + + ( d_data->num - 1 ) * Spacing ); + } + + QRect arrowRect( contentsSize ); + arrowRect.moveCenter( r.center() ); + arrowRect.setSize( arrow ); + + painter->save(); + for ( int i = 0; i < d_data->num; i++ ) + { + drawArrow( painter, arrowRect, d_data->arrowType ); + + int dx = 0; + int dy = 0; + + if ( isVertical ) + dy = arrow.height() + Spacing; + else + dx = arrow.width() + Spacing; + + arrowRect.translate( dx, dy ); + } + painter->restore(); + + if ( hasFocus() ) + { + QStyleOptionFocusRect option; + option.init( this ); + option.backgroundColor = palette().color( QPalette::Window ); + + style()->drawPrimitive( QStyle::PE_FrameFocusRect, + &option, painter, this ); + } +} + +/*! + Draw an arrow int a bounding rect + + \param painter Painter + \param r Rectangle where to paint the arrow + \param arrowType Arrow type +*/ +void QwtArrowButton::drawArrow( QPainter *painter, + const QRect &r, Qt::ArrowType arrowType ) const +{ + QPolygon pa( 3 ); + + switch ( arrowType ) + { + case Qt::UpArrow: + pa.setPoint( 0, r.bottomLeft() ); + pa.setPoint( 1, r.bottomRight() ); + pa.setPoint( 2, r.center().x(), r.top() ); + break; + case Qt::DownArrow: + pa.setPoint( 0, r.topLeft() ); + pa.setPoint( 1, r.topRight() ); + pa.setPoint( 2, r.center().x(), r.bottom() ); + break; + case Qt::RightArrow: + pa.setPoint( 0, r.topLeft() ); + pa.setPoint( 1, r.bottomLeft() ); + pa.setPoint( 2, r.right(), r.center().y() ); + break; + case Qt::LeftArrow: + pa.setPoint( 0, r.topRight() ); + pa.setPoint( 1, r.bottomRight() ); + pa.setPoint( 2, r.left(), r.center().y() ); + break; + default: + break; + } + + painter->save(); + + painter->setPen( palette().color( QPalette::ButtonText ) ); + painter->setBrush( palette().brush( QPalette::ButtonText ) ); + painter->drawPolygon( pa ); + + painter->restore(); +} + +/*! + \return a size hint +*/ +QSize QwtArrowButton::sizeHint() const +{ + const QSize hint = minimumSizeHint(); + return hint.expandedTo( QApplication::globalStrut() ); +} + +/*! + \brief Return a minimum size hint +*/ +QSize QwtArrowButton::minimumSizeHint() const +{ + const QSize asz = arrowSize( Qt::RightArrow, QSize() ); + + QSize sz( + 2 * Margin + ( MaxNum - 1 ) * Spacing + MaxNum * asz.width(), + 2 * Margin + asz.height() + ); + + if ( d_data->arrowType == Qt::UpArrow || d_data->arrowType == Qt::DownArrow ) + sz.transpose(); + + QStyleOption styleOption; + styleOption.init( this ); + + sz = style()->sizeFromContents( QStyle::CT_PushButton, + &styleOption, sz, this ); + + return sz; +} + +/*! + Calculate the size for a arrow that fits into a rect of a given size + + \param arrowType Arrow type + \param boundingSize Bounding size + \return Size of the arrow +*/ +QSize QwtArrowButton::arrowSize( Qt::ArrowType arrowType, + const QSize &boundingSize ) const +{ + QSize bs = boundingSize; + if ( arrowType == Qt::UpArrow || arrowType == Qt::DownArrow ) + bs.transpose(); + + const int MinLen = 2; + const QSize sz = bs.expandedTo( + QSize( MinLen, 2 * MinLen - 1 ) ); // minimum + + int w = sz.width(); + int h = 2 * w - 1; + + if ( h > sz.height() ) + { + h = sz.height(); + w = ( h + 1 ) / 2; + } + + QSize arrSize( w, h ); + if ( arrowType == Qt::UpArrow || arrowType == Qt::DownArrow ) + arrSize.transpose(); + + return arrSize; +} + +/*! + \brief autoRepeat for the space keys +*/ +void QwtArrowButton::keyPressEvent( QKeyEvent *event ) +{ + if ( event->isAutoRepeat() && event->key() == Qt::Key_Space ) + Q_EMIT clicked(); + + QPushButton::keyPressEvent( event ); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_arrow_button.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_arrow_button.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_arrow_button.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_arrow_button.h 2011-04-15 10:48:46.000000000 +0000 @@ -0,0 +1,52 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_ARROW_BUTTON_H +#define QWT_ARROW_BUTTON_H + +#include "qwt_global.h" +#include + +/*! + \brief Arrow Button + + A push button with one or more filled triangles on its front. + An Arrow button can have 1 to 3 arrows in a row, pointing + up, down, left or right. +*/ +class QWT_EXPORT QwtArrowButton : public QPushButton +{ +public: + explicit QwtArrowButton ( int num, Qt::ArrowType, QWidget *parent = NULL ); + virtual ~QwtArrowButton(); + + Qt::ArrowType arrowType() const; + int num() const; + + virtual QSize sizeHint() const; + virtual QSize minimumSizeHint() const; + +protected: + virtual void paintEvent( QPaintEvent *event ); + + virtual void drawButtonLabel( QPainter *p ); + virtual void drawArrow( QPainter *, + const QRect &, Qt::ArrowType ) const; + virtual QRect labelRect() const; + virtual QSize arrowSize( Qt::ArrowType, + const QSize &boundingSize ) const; + + virtual void keyPressEvent( QKeyEvent * ); + +private: + class PrivateData; + PrivateData *d_data; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_clipper.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_clipper.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_clipper.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_clipper.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,486 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_clipper.h" +#include "qwt_point_polar.h" +#include + +#if QT_VERSION < 0x040601 +#define qAtan(x) ::atan(x) +#endif + +namespace QwtClip +{ + // some templates used for inlining + template class LeftEdge; + template class RightEdge; + template class TopEdge; + template class BottomEdge; + + template class PointBuffer; +}; + +template +class QwtClip::LeftEdge +{ +public: + inline LeftEdge( Value x1, Value, Value, Value ): + d_x1( x1 ) + { + } + + inline bool isInside( const Point &p ) const + { + return p.x() >= d_x1; + } + + inline Point intersection( const Point &p1, const Point &p2 ) const + { + double dy = ( p1.y() - p2.y() ) / double( p1.x() - p2.x() ); + return Point( d_x1, ( Value ) ( p2.y() + ( d_x1 - p2.x() ) * dy ) ); + } +private: + const Value d_x1; +}; + +template +class QwtClip::RightEdge +{ +public: + inline RightEdge( Value, Value x2, Value, Value ): + d_x2( x2 ) + { + } + + inline bool isInside( const Point &p ) const + { + return p.x() <= d_x2; + } + + inline Point intersection( const Point &p1, const Point &p2 ) const + { + double dy = ( p1.y() - p2.y() ) / double( p1.x() - p2.x() ); + return Point( d_x2, ( Value ) ( p2.y() + ( d_x2 - p2.x() ) * dy ) ); + } + +private: + const Value d_x2; +}; + +template +class QwtClip::TopEdge +{ +public: + inline TopEdge( Value, Value, Value y1, Value ): + d_y1( y1 ) + { + } + + inline bool isInside( const Point &p ) const + { + return p.y() >= d_y1; + } + + inline Point intersection( const Point &p1, const Point &p2 ) const + { + double dx = ( p1.x() - p2.x() ) / double( p1.y() - p2.y() ); + return Point( ( Value )( p2.x() + ( d_y1 - p2.y() ) * dx ), d_y1 ); + } + +private: + const Value d_y1; +}; + +template +class QwtClip::BottomEdge +{ +public: + inline BottomEdge( Value, Value, Value, Value y2 ): + d_y2( y2 ) + { + } + + inline bool isInside( const Point &p ) const + { + return p.y() <= d_y2; + } + + inline Point intersection( const Point &p1, const Point &p2 ) const + { + double dx = ( p1.x() - p2.x() ) / double( p1.y() - p2.y() ); + return Point( ( Value )( p2.x() + ( d_y2 - p2.y() ) * dx ), d_y2 ); + } + +private: + const Value d_y2; +}; + +template +class QwtClip::PointBuffer +{ +public: + PointBuffer( int capacity = 0 ): + m_capacity( 0 ), + m_size( 0 ), + m_buffer( NULL ) + { + if ( capacity > 0 ) + reserve( capacity ); + } + + ~PointBuffer() + { + if ( m_buffer ) + qFree( m_buffer ); + } + + inline void setPoints( int numPoints, const Point *points ) + { + reserve( numPoints ); + + m_size = numPoints; + qMemCopy( m_buffer, points, m_size * sizeof( Point ) ); + } + + inline void reset() + { + m_size = 0; + } + + inline int size() const + { + return m_size; + } + + inline Point *data() const + { + return m_buffer; + } + + inline Point &operator[]( int i ) + { + return m_buffer[i]; + } + + inline const Point &operator[]( int i ) const + { + return m_buffer[i]; + } + + inline void add( const Point &point ) + { + if ( m_capacity <= m_size ) + reserve( m_size + 1 ); + + m_buffer[m_size++] = point; + } + +private: + inline void reserve( int size ) + { + if ( m_capacity == 0 ) + m_capacity = 1; + + while ( m_capacity < size ) + m_capacity *= 2; + + m_buffer = ( Point * ) qRealloc( m_buffer, + m_capacity * sizeof( Point ) ); + } + + int m_capacity; + int m_size; + Point *m_buffer; +}; + +using namespace QwtClip; + +template +class QwtPolygonClipper +{ +public: + QwtPolygonClipper( const Rect &clipRect ): + d_clipRect( clipRect ) + { + } + + Polygon clipPolygon( const Polygon &polygon, bool closePolygon ) const + { +#if 0 + if ( d_clipRect.contains( polygon.boundingRect() ) ) + return polygon; +#endif + + PointBuffer points1; + PointBuffer points2( qMin( 256, polygon.size() ) ); + + points1.setPoints( polygon.size(), polygon.data() ); + + clipEdge< LeftEdge >( closePolygon, points1, points2 ); + clipEdge< RightEdge >( closePolygon, points2, points1 ); + clipEdge< TopEdge >( closePolygon, points1, points2 ); + clipEdge< BottomEdge >( closePolygon, points2, points1 ); + + Polygon p; + p.resize( points1.size() ); + qMemCopy( p.data(), points1.data(), points1.size() * sizeof( Point ) ); + + return p; + } + +private: + template + inline void clipEdge( bool closePolygon, + PointBuffer &points, PointBuffer &clippedPoints ) const + { + clippedPoints.reset(); + + if ( points.size() < 2 ) + { + if ( points.size() == 1 ) + clippedPoints.add( points[0] ); + return; + } + + const Edge edge( d_clipRect.x(), d_clipRect.x() + d_clipRect.width(), + d_clipRect.y(), d_clipRect.y() + d_clipRect.height() ); + + int lastPos, start; + if ( closePolygon ) + { + start = 0; + lastPos = points.size() - 1; + } + else + { + start = 1; + lastPos = 0; + + if ( edge.isInside( points[0] ) ) + clippedPoints.add( points[0] ); + } + + const uint nPoints = points.size(); + for ( uint i = start; i < nPoints; i++ ) + { + const Point &p1 = points[i]; + const Point &p2 = points[lastPos]; + + if ( edge.isInside( p1 ) ) + { + if ( edge.isInside( p2 ) ) + { + clippedPoints.add( p1 ); + } + else + { + clippedPoints.add( edge.intersection( p1, p2 ) ); + clippedPoints.add( p1 ); + } + } + else + { + if ( edge.isInside( p2 ) ) + { + clippedPoints.add( edge.intersection( p1, p2 ) ); + } + } + lastPos = i; + } + } + + const Rect d_clipRect; +}; + +class QwtCircleClipper +{ +public: + QwtCircleClipper( const QRectF &r ); + QVector clipCircle( const QPointF &, double radius ) const; + +private: + enum Edge + { + Left, + Top, + Right, + Bottom, + + NEdges + }; + + QList cuttingPoints( + Edge, const QPointF &pos, double radius ) const; + + double toAngle( const QPointF &, const QPointF & ) const; + + const QRectF d_rect; +}; + + +QwtCircleClipper::QwtCircleClipper( const QRectF &r ): + d_rect( r ) +{ +} + +QVector QwtCircleClipper::clipCircle( + const QPointF &pos, double radius ) const +{ + QList points; + for ( int edge = 0; edge < NEdges; edge++ ) + points += cuttingPoints( ( Edge )edge, pos, radius ); + + QVector intv; + if ( points.size() <= 0 ) + { + QRectF cRect( 0, 0, 2 * radius, 2 * radius ); + cRect.moveCenter( pos ); + if ( d_rect.contains( cRect ) ) + intv += QwtInterval( 0.0, 2 * M_PI ); + } + else + { + QList angles; + for ( int i = 0; i < points.size(); i++ ) + angles += toAngle( pos, points[i] ); + qSort( angles ); + + const int in = d_rect.contains( qwtPolar2Pos( pos, radius, + angles[0] + ( angles[1] - angles[0] ) / 2 ) ); + + if ( in ) + { + for ( int i = 0; i < angles.size() - 1; i += 2 ) + intv += QwtInterval( angles[i], angles[i+1] ); + } + else + { + for ( int i = 1; i < angles.size() - 1; i += 2 ) + intv += QwtInterval( angles[i], angles[i+1] ); + intv += QwtInterval( angles.last(), angles.first() ); + } + } + + return intv; +} + +double QwtCircleClipper::toAngle( + const QPointF &from, const QPointF &to ) const +{ + if ( from.x() == to.x() ) + return from.y() <= to.y() ? M_PI / 2.0 : 3 * M_PI / 2.0; + + const double m = qAbs( ( to.y() - from.y() ) / ( to.x() - from.x() ) ); + + double angle = qAtan( m ); + if ( to.x() > from.x() ) + { + if ( to.y() > from.y() ) + angle = 2 * M_PI - angle; + } + else + { + if ( to.y() > from.y() ) + angle = M_PI + angle; + else + angle = M_PI - angle; + } + + return angle; +} + +QList QwtCircleClipper::cuttingPoints( + Edge edge, const QPointF &pos, double radius ) const +{ + QList points; + + if ( edge == Left || edge == Right ) + { + const double x = ( edge == Left ) ? d_rect.left() : d_rect.right(); + if ( qAbs( pos.x() - x ) < radius ) + { + const double off = qSqrt( qwtSqr( radius ) - qwtSqr( pos.x() - x ) ); + const double m_y1 = pos.y() + off; + if ( m_y1 >= d_rect.top() && m_y1 <= d_rect.bottom() ) + points += QPointF( x, m_y1 ); + + const double m_y2 = pos.y() - off; + if ( m_y2 >= d_rect.top() && m_y2 <= d_rect.bottom() ) + points += QPointF( x, m_y2 ); + } + } + else + { + const double y = ( edge == Top ) ? d_rect.top() : d_rect.bottom(); + if ( qAbs( pos.y() - y ) < radius ) + { + const double off = qSqrt( qwtSqr( radius ) - qwtSqr( pos.y() - y ) ); + const double x1 = pos.x() + off; + if ( x1 >= d_rect.left() && x1 <= d_rect.right() ) + points += QPointF( x1, y ); + + const double m_x2 = pos.x() - off; + if ( m_x2 >= d_rect.left() && m_x2 <= d_rect.right() ) + points += QPointF( m_x2, y ); + } + } + return points; +} + +/*! + Sutherland-Hodgman polygon clipping + + \param clipRect Clip rectangle + \param polygon Polygon + \param closePolygon True, when the polygon is closed + + \return Clipped polygon +*/ +QPolygon QwtClipper::clipPolygon( + const QRect &clipRect, const QPolygon &polygon, bool closePolygon ) +{ + QwtPolygonClipper clipper( clipRect ); + return clipper.clipPolygon( polygon, closePolygon ); +} + +/*! + Sutherland-Hodgman polygon clipping + + \param clipRect Clip rectangle + \param polygon Polygon + \param closePolygon True, when the polygon is closed + + \return Clipped polygon +*/ +QPolygonF QwtClipper::clipPolygonF( + const QRectF &clipRect, const QPolygonF &polygon, bool closePolygon ) +{ + QwtPolygonClipper clipper( clipRect ); + return clipper.clipPolygon( polygon, closePolygon ); +} + +/*! + Circle clipping + + clipCircle() devides a circle into intervals of angles representing arcs + of the circle. When the circle is completely inside the clip rectangle + an interval [0.0, 2 * M_PI] is returned. + + \param clipRect Clip rectangle + \param center Center of the circle + \param radius Radius of the circle + + \return Arcs of the circle +*/ +QVector QwtClipper::clipCircle( const QRectF &clipRect, + const QPointF ¢er, double radius ) +{ + QwtCircleClipper clipper( clipRect ); + return clipper.clipCircle( center, radius ); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_clipper.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_clipper.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_clipper.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_clipper.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,37 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_CLIPPER_H +#define QWT_CLIPPER_H + +#include "qwt_global.h" +#include "qwt_interval.h" +#include +#include + +class QRect; +class QRectF; + +/*! + \brief Some clipping algos +*/ + +class QWT_EXPORT QwtClipper +{ +public: + static QPolygon clipPolygon( const QRect &, + const QPolygon &, bool closePolygon = false ); + static QPolygonF clipPolygonF( const QRectF &, + const QPolygonF &, bool closePolygon = false ); + + static QVector clipCircle( + const QRectF &, const QPointF &, double radius ); +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_color_map.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_color_map.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_color_map.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_color_map.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,442 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_color_map.h" +#include "qwt_math.h" +#include "qwt_interval.h" +#include + +typedef QVector QwtColorTable; + +class QwtLinearColorMap::ColorStops +{ +public: + ColorStops() + { + _stops.reserve( 256 ); + } + + void insert( double pos, const QColor &color ); + QRgb rgb( QwtLinearColorMap::Mode, double pos ) const; + + QVector stops() const; + +private: + + class ColorStop + { + public: + ColorStop(): + pos( 0.0 ), + rgb( 0 ) + { + }; + + ColorStop( double p, const QColor &c ): + pos( p ), + rgb( c.rgb() ) + { + r = qRed( rgb ); + g = qGreen( rgb ); + b = qBlue( rgb ); + } + + double pos; + QRgb rgb; + int r, g, b; + }; + + inline int findUpper( double pos ) const; + QVector _stops; +}; + +void QwtLinearColorMap::ColorStops::insert( double pos, const QColor &color ) +{ + // Lookups need to be very fast, insertions are not so important. + // Anyway, a balanced tree is what we need here. TODO ... + + if ( pos < 0.0 || pos > 1.0 ) + return; + + int index; + if ( _stops.size() == 0 ) + { + index = 0; + _stops.resize( 1 ); + } + else + { + index = findUpper( pos ); + if ( index == ( int )_stops.size() || + qAbs( _stops[index].pos - pos ) >= 0.001 ) + { + _stops.resize( _stops.size() + 1 ); + for ( int i = _stops.size() - 1; i > index; i-- ) + _stops[i] = _stops[i-1]; + } + } + + _stops[index] = ColorStop( pos, color ); +} + +inline QVector QwtLinearColorMap::ColorStops::stops() const +{ + QVector positions( _stops.size() ); + for ( int i = 0; i < ( int )_stops.size(); i++ ) + positions[i] = _stops[i].pos; + return positions; +} + +inline int QwtLinearColorMap::ColorStops::findUpper( double pos ) const +{ + int index = 0; + int n = _stops.size(); + + const ColorStop *stops = _stops.data(); + + while ( n > 0 ) + { + const int half = n >> 1; + const int middle = index + half; + + if ( stops[middle].pos <= pos ) + { + index = middle + 1; + n -= half + 1; + } + else + n = half; + } + + return index; +} + +inline QRgb QwtLinearColorMap::ColorStops::rgb( + QwtLinearColorMap::Mode mode, double pos ) const +{ + if ( pos <= 0.0 ) + return _stops[0].rgb; + if ( pos >= 1.0 ) + return _stops[( int )( _stops.size() - 1 )].rgb; + + const int index = findUpper( pos ); + if ( mode == FixedColors ) + { + return _stops[index-1].rgb; + } + else + { + const ColorStop &s1 = _stops[index-1]; + const ColorStop &s2 = _stops[index]; + + const double ratio = ( pos - s1.pos ) / ( s2.pos - s1.pos ); + + const int r = s1.r + qRound( ratio * ( s2.r - s1.r ) ); + const int g = s1.g + qRound( ratio * ( s2.g - s1.g ) ); + const int b = s1.b + qRound( ratio * ( s2.b - s1.b ) ); + + return qRgb( r, g, b ); + } +} + +//! Constructor +QwtColorMap::QwtColorMap( Format format ): + d_format( format ) +{ +} + +//! Destructor +QwtColorMap::~QwtColorMap() +{ +} + +/*! + Build and return a color map of 256 colors + + The color table is needed for rendering indexed images in combination + with using colorIndex(). + + \param interval Range for the values + \return A color table, that can be used for a QImage +*/ +QwtColorTable QwtColorMap::colorTable( const QwtInterval &interval ) const +{ + QwtColorTable table( 256 ); + + if ( interval.isValid() ) + { + const double step = interval.width() / ( table.size() - 1 ); + for ( int i = 0; i < ( int ) table.size(); i++ ) + table[i] = rgb( interval, interval.minValue() + step * i ); + } + + return table; +} + +class QwtLinearColorMap::PrivateData +{ +public: + ColorStops colorStops; + QwtLinearColorMap::Mode mode; +}; + +/*! + Build a color map with two stops at 0.0 and 1.0. The color + at 0.0 is Qt::blue, at 1.0 it is Qt::yellow. + + \param format Preferred format of the color map +*/ +QwtLinearColorMap::QwtLinearColorMap( QwtColorMap::Format format ): + QwtColorMap( format ) +{ + d_data = new PrivateData; + d_data->mode = ScaledColors; + + setColorInterval( Qt::blue, Qt::yellow ); +} + +/*! + Build a color map with two stops at 0.0 and 1.0. + + \param color1 Color used for the minimum value of the value interval + \param color2 Color used for the maximum value of the value interval + \param format Preferred format of the coor map +*/ +QwtLinearColorMap::QwtLinearColorMap( const QColor &color1, + const QColor &color2, QwtColorMap::Format format ): + QwtColorMap( format ) +{ + d_data = new PrivateData; + d_data->mode = ScaledColors; + setColorInterval( color1, color2 ); +} + +//! Destructor +QwtLinearColorMap::~QwtLinearColorMap() +{ + delete d_data; +} + +/*! + \brief Set the mode of the color map + + FixedColors means the color is calculated from the next lower + color stop. ScaledColors means the color is calculated + by interpolating the colors of the adjacent stops. + + \sa mode() +*/ +void QwtLinearColorMap::setMode( Mode mode ) +{ + d_data->mode = mode; +} + +/*! + \return Mode of the color map + \sa setMode() +*/ +QwtLinearColorMap::Mode QwtLinearColorMap::mode() const +{ + return d_data->mode; +} + +/*! + Set the color range + + Add stops at 0.0 and 1.0. + + \param color1 Color used for the minimum value of the value interval + \param color2 Color used for the maximum value of the value interval + + \sa color1(), color2() +*/ +void QwtLinearColorMap::setColorInterval( + const QColor &color1, const QColor &color2 ) +{ + d_data->colorStops = ColorStops(); + d_data->colorStops.insert( 0.0, color1 ); + d_data->colorStops.insert( 1.0, color2 ); +} + +/*! + Add a color stop + + The value has to be in the range [0.0, 1.0]. + F.e. a stop at position 17.0 for a range [10.0,20.0] must be + passed as: (17.0 - 10.0) / (20.0 - 10.0) + + \param value Value between [0.0, 1.0] + \param color Color stop +*/ +void QwtLinearColorMap::addColorStop( double value, const QColor& color ) +{ + if ( value >= 0.0 && value <= 1.0 ) + d_data->colorStops.insert( value, color ); +} + +/*! + Return all positions of color stops in increasing order +*/ +QVector QwtLinearColorMap::colorStops() const +{ + return d_data->colorStops.stops(); +} + +/*! + \return the first color of the color range + \sa setColorInterval() +*/ +QColor QwtLinearColorMap::color1() const +{ + return QColor( d_data->colorStops.rgb( d_data->mode, 0.0 ) ); +} + +/*! + \return the second color of the color range + \sa setColorInterval() +*/ +QColor QwtLinearColorMap::color2() const +{ + return QColor( d_data->colorStops.rgb( d_data->mode, 1.0 ) ); +} + +/*! + Map a value of a given interval into a rgb value + + \param interval Range for all values + \param value Value to map into a rgb value +*/ +QRgb QwtLinearColorMap::rgb( + const QwtInterval &interval, double value ) const +{ + if ( qIsNaN(value) ) + return qRgba(0, 0, 0, 0); + + const double width = interval.width(); + + double ratio = 0.0; + if ( width > 0.0 ) + ratio = ( value - interval.minValue() ) / width; + + return d_data->colorStops.rgb( d_data->mode, ratio ); +} + +/*! + Map a value of a given interval into a color index, between 0 and 255 + + \param interval Range for all values + \param value Value to map into a color index +*/ +unsigned char QwtLinearColorMap::colorIndex( + const QwtInterval &interval, double value ) const +{ + const double width = interval.width(); + + if ( qIsNaN(value) || width <= 0.0 || value <= interval.minValue() ) + return 0; + + if ( value >= interval.maxValue() ) + return ( unsigned char )255; + + const double ratio = ( value - interval.minValue() ) / width; + + unsigned char index; + if ( d_data->mode == FixedColors ) + index = ( unsigned char )( ratio * 255 ); // always floor + else + index = ( unsigned char )qRound( ratio * 255 ); + + return index; +} + +class QwtAlphaColorMap::PrivateData +{ +public: + QColor color; + QRgb rgb; +}; + + +/*! + Constructor + \param color Color of the map +*/ +QwtAlphaColorMap::QwtAlphaColorMap( const QColor &color ): + QwtColorMap( QwtColorMap::RGB ) +{ + d_data = new PrivateData; + d_data->color = color; + d_data->rgb = color.rgb() & qRgba( 255, 255, 255, 0 ); +} + +//! Destructor +QwtAlphaColorMap::~QwtAlphaColorMap() +{ + delete d_data; +} + +/*! + Set the color + + \param color Color + \sa color() +*/ +void QwtAlphaColorMap::setColor( const QColor &color ) +{ + d_data->color = color; + d_data->rgb = color.rgb(); +} + +/*! + \return the color + \sa setColor() +*/ +QColor QwtAlphaColorMap::color() const +{ + return d_data->color; +} + +/*! + \brief Map a value of a given interval into a alpha value + + alpha := (value - interval.minValue()) / interval.width(); + + \param interval Range for all values + \param value Value to map into a rgb value + \return rgb value, with an alpha value +*/ +QRgb QwtAlphaColorMap::rgb( const QwtInterval &interval, double value ) const +{ + const double width = interval.width(); + if ( !qIsNaN(value) && width >= 0.0 ) + { + const double ratio = ( value - interval.minValue() ) / width; + int alpha = qRound( 255 * ratio ); + if ( alpha < 0 ) + alpha = 0; + if ( alpha > 255 ) + alpha = 255; + + return d_data->rgb | ( alpha << 24 ); + } + return d_data->rgb; +} + +/*! + Dummy function, needed to be implemented as it is pure virtual + in QwtColorMap. Color indices make no sense in combination with + an alpha channel. + + \return Always 0 +*/ +unsigned char QwtAlphaColorMap::colorIndex( + const QwtInterval &, double ) const +{ + return 0; +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_color_map.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_color_map.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_color_map.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_color_map.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,198 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_COLOR_MAP_H +#define QWT_COLOR_MAP_H + +#include "qwt_global.h" +#include "qwt_interval.h" +#include +#include + +/*! + \brief QwtColorMap is used to map values into colors. + + For displaying 3D data on a 2D plane the 3rd dimension is often + displayed using colors, like f.e in a spectrogram. + + Each color map is optimized to return colors for only one of the + following image formats: + + - QImage::Format_Indexed8\n + - QImage::Format_ARGB32\n + + \sa QwtPlotSpectrogram, QwtScaleWidget +*/ + +class QWT_EXPORT QwtColorMap +{ +public: + /*! + Format for color mapping + \sa rgb(), colorIndex(), colorTable() + */ + + enum Format + { + //! The map is intended to map into QRgb values. + RGB, + + /*! + The map is intended to map into 8 bit values, that + are indices into the color table. + */ + Indexed + }; + + QwtColorMap( Format = QwtColorMap::RGB ); + virtual ~QwtColorMap(); + + Format format() const; + + /*! + Map a value of a given interval into a rgb value. + \param interval Range for the values + \param value Value + \return rgb value, corresponding to value + */ + virtual QRgb rgb( const QwtInterval &interval, + double value ) const = 0; + + /*! + Map a value of a given interval into a color index + \param interval Range for the values + \param value Value + \return color index, corresponding to value + */ + virtual unsigned char colorIndex( + const QwtInterval &interval, double value ) const = 0; + + QColor color( const QwtInterval &, double value ) const; + virtual QVector colorTable( const QwtInterval & ) const; + +private: + Format d_format; +}; + +/*! + \brief QwtLinearColorMap builds a color map from color stops. + + A color stop is a color at a specific position. The valid + range for the positions is [0.0, 1.0]. When mapping a value + into a color it is translated into this interval according to mode(). +*/ +class QWT_EXPORT QwtLinearColorMap: public QwtColorMap +{ +public: + /*! + Mode of color map + \sa setMode(), mode() + */ + enum Mode + { + //! Return the color from the next lower color stop + FixedColors, + + //! Interpolating the colors of the adjacent stops. + ScaledColors + }; + + QwtLinearColorMap( QwtColorMap::Format = QwtColorMap::RGB ); + QwtLinearColorMap( const QColor &from, const QColor &to, + QwtColorMap::Format = QwtColorMap::RGB ); + + virtual ~QwtLinearColorMap(); + + void setMode( Mode ); + Mode mode() const; + + void setColorInterval( const QColor &color1, const QColor &color2 ); + void addColorStop( double value, const QColor& ); + QVector colorStops() const; + + QColor color1() const; + QColor color2() const; + + virtual QRgb rgb( const QwtInterval &, double value ) const; + virtual unsigned char colorIndex( + const QwtInterval &, double value ) const; + + class ColorStops; + +private: + // Disabled copy constructor and operator= + QwtLinearColorMap( const QwtLinearColorMap & ); + QwtLinearColorMap &operator=( const QwtLinearColorMap & ); + + class PrivateData; + PrivateData *d_data; +}; + +/*! + \brief QwtAlphaColorMap variies the alpha value of a color +*/ +class QWT_EXPORT QwtAlphaColorMap: public QwtColorMap +{ +public: + QwtAlphaColorMap( const QColor & = QColor( Qt::gray ) ); + virtual ~QwtAlphaColorMap(); + + void setColor( const QColor & ); + QColor color() const; + + virtual QRgb rgb( const QwtInterval &, double value ) const; + +private: + QwtAlphaColorMap( const QwtAlphaColorMap & ); + QwtAlphaColorMap &operator=( const QwtAlphaColorMap & ); + + virtual unsigned char colorIndex( + const QwtInterval &, double value ) const; + + class PrivateData; + PrivateData *d_data; +}; + + +/*! + Map a value into a color + + \param interval Valid interval for values + \param value Value + + \return Color corresponding to value + + \warning This method is slow for Indexed color maps. If it is + necessary to map many values, its better to get the + color table once and find the color using colorIndex(). +*/ +inline QColor QwtColorMap::color( + const QwtInterval &interval, double value ) const +{ + if ( d_format == RGB ) + { + return QColor( rgb( interval, value ) ); + } + else + { + const unsigned int index = colorIndex( interval, value ); + return colorTable( interval )[index]; // slow + } +} + +/*! + \return Intended format of the color map + \sa Format +*/ +inline QwtColorMap::Format QwtColorMap::format() const +{ + return d_format; +} + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_column_symbol.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_column_symbol.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_column_symbol.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_column_symbol.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,296 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_column_symbol.h" +#include "qwt_math.h" +#include "qwt_text.h" +#include "qwt_painter.h" +#include +#include + +static void drawBox( QPainter *p, const QRectF &rect, + const QPalette &pal, double lw ) +{ + if ( lw > 0.0 ) + { + if ( rect.width() == 0.0 ) + { + p->setPen( pal.dark().color() ); + p->drawLine( rect.topLeft(), rect.bottomLeft() ); + return; + } + + if ( rect.height() == 0.0 ) + { + p->setPen( pal.dark().color() ); + p->drawLine( rect.topLeft(), rect.topRight() ); + return; + } + + lw = qMin( lw, rect.height() / 2.0 - 1.0 ); + lw = qMin( lw, rect.width() / 2.0 - 1.0 ); + + const QRectF outerRect = rect.adjusted( 0, 0, 1, 1 ); + QPolygonF polygon( outerRect ); + + if ( outerRect.width() > 2 * lw && + outerRect.height() > 2 * lw ) + { + const QRectF innerRect = outerRect.adjusted( lw, lw, -lw, -lw ); + polygon = polygon.subtracted( innerRect ); + } + + p->setPen( Qt::NoPen ); + + p->setBrush( pal.dark() ); + p->drawPolygon( polygon ); + } + + const QRectF windowRect = rect.adjusted( lw, lw, -lw + 1, -lw + 1 ); + if ( windowRect.isValid() ) + p->fillRect( windowRect, pal.window() ); +} + +static void drawPanel( QPainter *painter, const QRectF &rect, + const QPalette &pal, double lw ) +{ + if ( lw > 0.0 ) + { + if ( rect.width() == 0.0 ) + { + painter->setPen( pal.window().color() ); + painter->drawLine( rect.topLeft(), rect.bottomLeft() ); + return; + } + + if ( rect.height() == 0.0 ) + { + painter->setPen( pal.window().color() ); + painter->drawLine( rect.topLeft(), rect.topRight() ); + return; + } + + lw = qMin( lw, rect.height() / 2.0 - 1.0 ); + lw = qMin( lw, rect.width() / 2.0 - 1.0 ); + + const QRectF outerRect = rect.adjusted( 0, 0, 1, 1 ); + const QRectF innerRect = outerRect.adjusted( lw, lw, -lw, -lw ); + + QPolygonF lines[2]; + + lines[0] += outerRect.bottomLeft(); + lines[0] += outerRect.topLeft(); + lines[0] += outerRect.topRight(); + lines[0] += innerRect.topRight(); + lines[0] += innerRect.topLeft(); + lines[0] += innerRect.bottomLeft(); + + lines[1] += outerRect.topRight(); + lines[1] += outerRect.bottomRight(); + lines[1] += outerRect.bottomLeft(); + lines[1] += innerRect.bottomLeft(); + lines[1] += innerRect.bottomRight(); + lines[1] += innerRect.topRight(); + + painter->setPen( Qt::NoPen ); + + painter->setBrush( pal.light() ); + painter->drawPolygon( lines[0] ); + painter->setBrush( pal.dark() ); + painter->drawPolygon( lines[1] ); + } + + painter->fillRect( rect.adjusted( lw, lw, -lw + 1, -lw + 1 ), pal.window() ); +} + +class QwtColumnSymbol::PrivateData +{ +public: + PrivateData(): + style( QwtColumnSymbol::Box ), + frameStyle( QwtColumnSymbol::Raised ), + lineWidth( 2 ) + { + palette = QPalette( Qt::gray ); + } + + QwtColumnSymbol::Style style; + QwtColumnSymbol::FrameStyle frameStyle; + + QPalette palette; + QwtText label; + + int lineWidth; +}; + +/*! + Constructor + + \param style Style of the symbol + \sa setStyle(), style(), Style +*/ +QwtColumnSymbol::QwtColumnSymbol( Style style ) +{ + d_data = new PrivateData(); + d_data->style = style; +} + +//! Destructor +QwtColumnSymbol::~QwtColumnSymbol() +{ + delete d_data; +} + +/*! + Specify the symbol style + + \param style Style + \sa style(), setPalette() +*/ +void QwtColumnSymbol::setStyle( Style style ) +{ + d_data->style = style; +} + +/*! + \return Current symbol style + \sa setStyle() +*/ +QwtColumnSymbol::Style QwtColumnSymbol::style() const +{ + return d_data->style; +} + +/*! + Assign a palette for the symbol + + \param palette Palette + \sa palette(), setStyle() +*/ +void QwtColumnSymbol::setPalette( const QPalette &palette ) +{ + d_data->palette = palette; +} + +/*! + \return Current palette + \sa setPalette() +*/ +const QPalette& QwtColumnSymbol::palette() const +{ + return d_data->palette; +} + +/*! + Set the frame, that is used for the Box style. + + \param frameStyle Frame style + \sa frameStyle(), setLineWidth(), setStyle() +*/ +void QwtColumnSymbol::setFrameStyle( FrameStyle frameStyle ) +{ + d_data->frameStyle = frameStyle; +} + +/*! + \return Current frame style, that is used for the Box style. + \sa setFrameStyle(), lineWidth(), setStyle() +*/ +QwtColumnSymbol::FrameStyle QwtColumnSymbol::frameStyle() const +{ + return d_data->frameStyle; +} + +/*! + Set the line width of the frame, that is used for the Box style. + + \param width Width + \sa lineWidth(), setFrameStyle() +*/ +void QwtColumnSymbol::setLineWidth( int width ) +{ + if ( width < 0 ) + width = 0; + + d_data->lineWidth = width; +} + +/*! + \return Line width of the frame, that is used for the Box style. + \sa setLineWidth(), frameStyle(), setStyle() +*/ +int QwtColumnSymbol::lineWidth() const +{ + return d_data->lineWidth; +} + +/*! + Draw the symbol depending on its style. + + \param painter Painter + \param rect Directed rectangle + + \sa drawBox() +*/ +void QwtColumnSymbol::draw( QPainter *painter, + const QwtColumnRect &rect ) const +{ + painter->save(); + + switch ( d_data->style ) + { + case QwtColumnSymbol::Box: + { + drawBox( painter, rect ); + break; + } + default:; + } + + painter->restore(); +} + +/*! + Draw the symbol when it is in Box style. + + \param painter Painter + \param rect Directed rectangle + + \sa draw() +*/ +void QwtColumnSymbol::drawBox( QPainter *painter, + const QwtColumnRect &rect ) const +{ + QRectF r = rect.toRect(); + if ( QwtPainter::roundingAlignment( painter ) ) + { + r.setLeft( qRound( r.left() ) ); + r.setRight( qRound( r.right() ) ); + r.setTop( qRound( r.top() ) ); + r.setBottom( qRound( r.bottom() ) ); + } + + switch ( d_data->frameStyle ) + { + case QwtColumnSymbol::Raised: + { + ::drawPanel( painter, r, d_data->palette, d_data->lineWidth ); + break; + } + case QwtColumnSymbol::Plain: + { + ::drawBox( painter, r, d_data->palette, d_data->lineWidth ); + break; + } + default: + { + painter->fillRect( r, d_data->palette.window() ); + } + } +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_column_symbol.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_column_symbol.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_column_symbol.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_column_symbol.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,161 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_COLUMN_SYMBOL_H +#define QWT_COLUMN_SYMBOL_H + +#include "qwt_global.h" +#include "qwt_interval.h" +#include +#include +#include + +class QPainter; +class QPalette; +class QRect; +class QwtText; + +/*! + \brief Directed rectangle representing bounding rectangle und orientation + of a column. +*/ +class QWT_EXPORT QwtColumnRect +{ +public: + //! Direction of the column + enum Direction + { + //! From left to right + LeftToRight, + + //! From right to left + RightToLeft, + + //! From bottom to top + BottomToTop, + + //! From top to bottom + TopToBottom + }; + + //! Build an rectangle with invalid intervals directed BottomToTop. + QwtColumnRect(): + direction( BottomToTop ) + { + } + + //! \return A normalized QRect built from the intervals + QRectF toRect() const + { + QRectF r( hInterval.minValue(), vInterval.minValue(), + hInterval.maxValue() - hInterval.minValue(), + vInterval.maxValue() - vInterval.minValue() ); + r = r.normalized(); + + if ( hInterval.borderFlags() & QwtInterval::ExcludeMinimum ) + r.adjust( 1, 0, 0, 0 ); + if ( hInterval.borderFlags() & QwtInterval::ExcludeMaximum ) + r.adjust( 0, 0, -1, 0 ); + if ( vInterval.borderFlags() & QwtInterval::ExcludeMinimum ) + r.adjust( 0, 1, 0, 0 ); + if ( vInterval.borderFlags() & QwtInterval::ExcludeMaximum ) + r.adjust( 0, 0, 0, -1 ); + + return r; + } + + //! \return Orientation + Qt::Orientation orientation() const + { + if ( direction == LeftToRight || direction == RightToLeft ) + return Qt::Horizontal; + + return Qt::Vertical; + } + + //! Interval for the horizontal coordinates + QwtInterval hInterval; + + //! Interval for the vertical coordinates + QwtInterval vInterval; + + //! Direction + Direction direction; +}; + +//! A drawing primitive for columns +class QWT_EXPORT QwtColumnSymbol +{ +public: + /*! + Style + \sa setStyle(), style() + */ + enum Style + { + //! No Style, the symbol draws nothing + NoStyle = -1, + + /*! + The column is painted with a frame depending on the frameStyle() + and lineWidth() using the palette(). + */ + Box, + + /*! + Styles >= QwtColumnSymbol::UserStyle are reserved for derived + classes of QwtColumnSymbol that overload draw() with + additional application specific symbol types. + */ + UserStyle = 1000 + }; + + /*! + Frame Style used in Box style(). + \sa Style, setFrameStyle(), frameStyle(), setStyle(), setPalette() + */ + enum FrameStyle + { + //! No frame + NoFrame, + + //! A plain frame style + Plain, + + //! A raised frame style + Raised + }; + +public: + QwtColumnSymbol( Style = NoStyle ); + virtual ~QwtColumnSymbol(); + + void setFrameStyle( FrameStyle style ); + FrameStyle frameStyle() const; + + void setLineWidth( int width ); + int lineWidth() const; + + void setPalette( const QPalette & ); + const QPalette &palette() const; + + void setStyle( Style ); + Style style() const; + + virtual void draw( QPainter *, const QwtColumnRect & ) const; + +protected: + void drawBox( QPainter *, const QwtColumnRect & ) const; + +private: + class PrivateData; + PrivateData* d_data; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_compass.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_compass.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_compass.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_compass.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,292 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_compass.h" +#include "qwt_compass_rose.h" +#include "qwt_math.h" +#include "qwt_scale_draw.h" +#include "qwt_painter.h" +#include "qwt_dial_needle.h" +#include +#include +#include + +class QwtCompass::PrivateData +{ +public: + PrivateData(): + rose( NULL ) + { + } + + ~PrivateData() + { + delete rose; + } + + QwtCompassRose *rose; + QMap labelMap; +}; + +/*! + \brief Constructor + \param parent Parent widget + + Create a compass widget with a scale, no needle and no rose. + The default origin is 270.0 with no valid value. It accepts + mouse and keyboard inputs and has no step size. The default mode + is QwtDial::RotateNeedle. +*/ +QwtCompass::QwtCompass( QWidget* parent ): + QwtDial( parent ) +{ + initCompass(); +} + +//! Destructor +QwtCompass::~QwtCompass() +{ + delete d_data; +} + +void QwtCompass::initCompass() +{ + d_data = new PrivateData; + + // Only labels, no backbone, no ticks + setScaleComponents( QwtAbstractScaleDraw::Labels ); + + setOrigin( 270.0 ); + setWrapping( true ); + + + d_data->labelMap.insert( 0.0, QString::fromLatin1( "N" ) ); + d_data->labelMap.insert( 45.0, QString::fromLatin1( "NE" ) ); + d_data->labelMap.insert( 90.0, QString::fromLatin1( "E" ) ); + d_data->labelMap.insert( 135.0, QString::fromLatin1( "SE" ) ); + d_data->labelMap.insert( 180.0, QString::fromLatin1( "S" ) ); + d_data->labelMap.insert( 225.0, QString::fromLatin1( "SW" ) ); + d_data->labelMap.insert( 270.0, QString::fromLatin1( "W" ) ); + d_data->labelMap.insert( 315.0, QString::fromLatin1( "NW" ) ); + +#if 0 + d_data->labelMap.insert( 22.5, QString::fromLatin1( "NNE" ) ); + d_data->labelMap.insert( 67.5, QString::fromLatin1( "NEE" ) ); + d_data->labelMap.insert( 112.5, QString::fromLatin1( "SEE" ) ); + d_data->labelMap.insert( 157.5, QString::fromLatin1( "SSE" ) ); + d_data->labelMap.insert( 202.5, QString::fromLatin1( "SSW" ) ); + d_data->labelMap.insert( 247.5, QString::fromLatin1( "SWW" ) ); + d_data->labelMap.insert( 292.5, QString::fromLatin1( "NWW" ) ); + d_data->labelMap.insert( 337.5, QString::fromLatin1( "NNW" ) ); +#endif +} + +/*! + Draw the contents of the scale + + \param painter Painter + \param center Center of the content circle + \param radius Radius of the content circle +*/ +void QwtCompass::drawScaleContents( QPainter *painter, + const QPointF ¢er, double radius ) const +{ + QPalette::ColorGroup cg; + if ( isEnabled() ) + cg = hasFocus() ? QPalette::Active : QPalette::Inactive; + else + cg = QPalette::Disabled; + + double north = origin(); + if ( isValid() ) + { + if ( mode() == RotateScale ) + north -= value(); + } + + const int margin = 4; + drawRose( painter, center, radius - margin, 360.0 - north, cg ); +} + +/*! + Draw the compass rose + + \param painter Painter + \param center Center of the compass + \param radius of the circle, where to paint the rose + \param north Direction pointing north, in degrees counter clockwise + \param cg Color group +*/ +void QwtCompass::drawRose( QPainter *painter, const QPointF ¢er, + double radius, double north, QPalette::ColorGroup cg ) const +{ + if ( d_data->rose ) + d_data->rose->draw( painter, center, radius, north, cg ); +} + +/*! + Set a rose for the compass + \param rose Compass rose + \warning The rose will be deleted, when a different rose is + set or in ~QwtCompass + \sa rose() +*/ +void QwtCompass::setRose( QwtCompassRose *rose ) +{ + if ( rose != d_data->rose ) + { + if ( d_data->rose ) + delete d_data->rose; + + d_data->rose = rose; + update(); + } +} + +/*! + \return rose + \sa setRose() +*/ +const QwtCompassRose *QwtCompass::rose() const +{ + return d_data->rose; +} + +/*! + \return rose + \sa setRose() +*/ +QwtCompassRose *QwtCompass::rose() +{ + return d_data->rose; +} + +/*! + Handles key events + + Beside the keys described in QwtDial::keyPressEvent numbers + from 1-9 (without 5) set the direction according to their + position on the num pad. + + \sa isReadOnly() +*/ +void QwtCompass::keyPressEvent( QKeyEvent *kev ) +{ + if ( isReadOnly() ) + return; + +#if 0 + if ( kev->key() == Key_5 ) + { + invalidate(); // signal ??? + return; + } +#endif + + double newValue = value(); + + if ( kev->key() >= Qt::Key_1 && kev->key() <= Qt::Key_9 ) + { + if ( mode() != RotateNeedle || kev->key() == Qt::Key_5 ) + return; + + switch ( kev->key() ) + { + case Qt::Key_6: + newValue = 180.0 * 0.0; + break; + case Qt::Key_3: + newValue = 180.0 * 0.25; + break; + case Qt::Key_2: + newValue = 180.0 * 0.5; + break; + case Qt::Key_1: + newValue = 180.0 * 0.75; + break; + case Qt::Key_4: + newValue = 180.0 * 1.0; + break; + case Qt::Key_7: + newValue = 180.0 * 1.25; + break; + case Qt::Key_8: + newValue = 180.0 * 1.5; + break; + case Qt::Key_9: + newValue = 180.0 * 1.75; + break; + } + newValue -= origin(); + setValue( newValue ); + } + else + { + QwtDial::keyPressEvent( kev ); + } +} + +/*! + \return map, mapping values to labels + \sa setLabelMap() +*/ +const QMap &QwtCompass::labelMap() const +{ + return d_data->labelMap; +} + +/*! + \return map, mapping values to labels + \sa setLabelMap() +*/ +QMap &QwtCompass::labelMap() +{ + return d_data->labelMap; +} + +/*! + \brief Set a map, mapping values to labels + \param map value to label map + + The values of the major ticks are found by looking into this + map. The default map consists of the labels N, NE, E, SE, S, SW, W, NW. + + \warning The map will have no effect for values that are no major + tick values. Major ticks can be changed by QwtScaleDraw::setScale + + \sa labelMap(), scaleDraw(), setScale() +*/ +void QwtCompass::setLabelMap( const QMap &map ) +{ + d_data->labelMap = map; +} + +/*! + Map a value to a corresponding label + \param value Value that will be mapped + \return Label, or QString::null + + label() looks in a map for a corresponding label for value + or return an null text. + \sa labelMap(), setLabelMap() +*/ + +QwtText QwtCompass::scaleLabel( double value ) const +{ + if ( qFuzzyCompare( value, 0.0 ) ) + value = 0.0; + + if ( value < 0.0 ) + value += 360.0; + + if ( d_data->labelMap.contains( value ) ) + return d_data->labelMap[value]; + + return QwtText(); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_compass.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_compass.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_compass.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_compass.h 2011-04-15 10:48:46.000000000 +0000 @@ -0,0 +1,65 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_COMPASS_H +#define QWT_COMPASS_H 1 + +#include "qwt_global.h" +#include "qwt_dial.h" +#include +#include + +class QwtCompassRose; + +/*! + \brief A Compass Widget + + QwtCompass is a widget to display and enter directions. It consists + of a scale, an optional needle and rose. + + \image html dials1.png + + \note The examples/dials example shows how to use QwtCompass. +*/ + +class QWT_EXPORT QwtCompass: public QwtDial +{ + Q_OBJECT + +public: + explicit QwtCompass( QWidget* parent = NULL ); + virtual ~QwtCompass(); + + void setRose( QwtCompassRose *rose ); + const QwtCompassRose *rose() const; + QwtCompassRose *rose(); + + const QMap &labelMap() const; + QMap &labelMap(); + void setLabelMap( const QMap &map ); + +protected: + virtual QwtText scaleLabel( double value ) const; + + virtual void drawRose( QPainter *, const QPointF ¢er, + double radius, double north, QPalette::ColorGroup ) const; + + virtual void drawScaleContents( QPainter *, + const QPointF ¢er, double radius ) const; + + virtual void keyPressEvent( QKeyEvent * ); + +private: + void initCompass(); + + class PrivateData; + PrivateData *d_data; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_compass_rose.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_compass_rose.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_compass_rose.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_compass_rose.cpp 2011-04-15 10:48:49.000000000 +0000 @@ -0,0 +1,270 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_compass_rose.h" +#include "qwt_point_polar.h" +#include "qwt_painter.h" +#include + +static QPointF qwtIntersection( + QPointF p11, QPointF p12, QPointF p21, QPointF p22 ) +{ + const QLineF line1( p11, p12 ); + const QLineF line2( p21, p22 ); + + QPointF pos; + if ( line1.intersect( line2, &pos ) == QLineF::NoIntersection ) + return QPointF(); + + return pos; +} + +class QwtSimpleCompassRose::PrivateData +{ +public: + PrivateData(): + width( 0.2 ), + numThorns( 8 ), + numThornLevels( -1 ), + shrinkFactor( 0.9 ) + { + } + + double width; + int numThorns; + int numThornLevels; + double shrinkFactor; +}; + +/*! + Constructor + + \param numThorns Number of thorns + \param numThornLevels Number of thorn levels +*/ +QwtSimpleCompassRose::QwtSimpleCompassRose( + int numThorns, int numThornLevels ) +{ + d_data = new PrivateData(); + d_data->numThorns = numThorns; + d_data->numThornLevels = numThornLevels; + + const QColor dark( 128, 128, 255 ); + const QColor light( 192, 255, 255 ); + + QPalette palette; + for ( int i = 0; i < QPalette::NColorGroups; i++ ) + { + palette.setColor( ( QPalette::ColorGroup )i, + QPalette::Dark, dark ); + palette.setColor( ( QPalette::ColorGroup )i, + QPalette::Light, light ); + } + + setPalette( palette ); +} + +//! Destructor +QwtSimpleCompassRose::~QwtSimpleCompassRose() +{ + delete d_data; +} + +/*! + Set the Factor how to shrink the thorns with each level + The default value is 0.9. + + \sa shrinkFactor() +*/ +void QwtSimpleCompassRose::setShrinkFactor( double factor ) +{ + d_data->shrinkFactor = factor; +} + +/*! + \return Factor how to shrink the thorns with each level + \sa setShrinkFactor() +*/ +double QwtSimpleCompassRose::shrinkFactor() const +{ + return d_data->shrinkFactor; +} + +/*! + Draw the rose + + \param painter Painter + \param center Center point + \param radius Radius of the rose + \param north Position + \param cg Color group +*/ +void QwtSimpleCompassRose::draw( QPainter *painter, const QPointF ¢er, + double radius, double north, QPalette::ColorGroup cg ) const +{ + QPalette pal = palette(); + pal.setCurrentColorGroup( cg ); + + drawRose( painter, pal, center, radius, north, d_data->width, + d_data->numThorns, d_data->numThornLevels, d_data->shrinkFactor ); +} + +/*! + Draw the rose + + \param painter Painter + \param palette Palette + \param center Center of the rose + \param radius Radius of the rose + \param north Position pointing to north + \param width Width of the rose + \param numThorns Number of thorns + \param numThornLevels Number of thorn levels + \param shrinkFactor Factor to shrink the thorns with each level +*/ +void QwtSimpleCompassRose::drawRose( + QPainter *painter, + const QPalette &palette, + const QPointF ¢er, double radius, double north, double width, + int numThorns, int numThornLevels, double shrinkFactor ) +{ + if ( numThorns < 4 ) + numThorns = 4; + + if ( numThorns % 4 ) + numThorns += 4 - numThorns % 4; + + if ( numThornLevels <= 0 ) + numThornLevels = numThorns / 4; + + if ( shrinkFactor >= 1.0 ) + shrinkFactor = 1.0; + + if ( shrinkFactor <= 0.5 ) + shrinkFactor = 0.5; + + painter->save(); + + painter->setPen( Qt::NoPen ); + + for ( int j = 1; j <= numThornLevels; j++ ) + { + double step = qPow( 2.0, j ) * M_PI / ( double )numThorns; + if ( step > M_PI_2 ) + break; + + double r = radius; + for ( int k = 0; k < 3; k++ ) + { + if ( j + k < numThornLevels ) + r *= shrinkFactor; + } + + double leafWidth = r * width; + if ( 2.0 * M_PI / step > 32 ) + leafWidth = 16; + + const double origin = north / 180.0 * M_PI; + for ( double angle = origin; + angle < 2.0 * M_PI + origin; angle += step ) + { + const QPointF p = qwtPolar2Pos( center, r, angle ); + const QPointF p1 = qwtPolar2Pos( center, leafWidth, angle + M_PI_2 ); + const QPointF p2 = qwtPolar2Pos( center, leafWidth, angle - M_PI_2 ); + const QPointF p3 = qwtPolar2Pos( center, r, angle + step / 2.0 ); + const QPointF p4 = qwtPolar2Pos( center, r, angle - step / 2.0 ); + + QPainterPath darkPath; + darkPath.moveTo( center ); + darkPath.lineTo( p ); + darkPath.lineTo( qwtIntersection( center, p3, p1, p ) ); + + painter->setBrush( palette.brush( QPalette::Dark ) ); + painter->drawPath( darkPath ); + + QPainterPath lightPath; + lightPath.moveTo( center ); + lightPath.lineTo( p ); + lightPath.lineTo( qwtIntersection( center, p4, p2, p ) ); + + painter->setBrush( palette.brush( QPalette::Light ) ); + painter->drawPath( lightPath ); + } + } + painter->restore(); +} + +/*! + Set the width of the rose heads. Lower value make thinner heads. + The range is limited from 0.03 to 0.4. + + \param width Width +*/ +void QwtSimpleCompassRose::setWidth( double width ) +{ + d_data->width = width; + if ( d_data->width < 0.03 ) + d_data->width = 0.03; + + if ( d_data->width > 0.4 ) + d_data->width = 0.4; +} + +//! \sa setWidth() +double QwtSimpleCompassRose::width() const +{ + return d_data->width; +} + +/*! + Set the number of thorns on one level + The number is aligned to a multiple of 4, with a minimum of 4 + + \param numThorns Number of thorns + \sa numThorns(), setNumThornLevels() +*/ +void QwtSimpleCompassRose::setNumThorns( int numThorns ) +{ + if ( numThorns < 4 ) + numThorns = 4; + + if ( numThorns % 4 ) + numThorns += 4 - numThorns % 4; + + d_data->numThorns = numThorns; +} + +/*! + \return Number of thorns + \sa setNumThorns(), setNumThornLevels() +*/ +int QwtSimpleCompassRose::numThorns() const +{ + return d_data->numThorns; +} + +/*! + Set the of thorns levels + + \param numThornLevels Number of thorns levels + \sa setNumThorns(), numThornLevels() +*/ +void QwtSimpleCompassRose::setNumThornLevels( int numThornLevels ) +{ + d_data->numThornLevels = numThornLevels; +} + +/*! + \return Number of thorn levels + \sa setNumThorns(), setNumThornLevels() +*/ +int QwtSimpleCompassRose::numThornLevels() const +{ + return d_data->numThornLevels; +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_compass_rose.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_compass_rose.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_compass_rose.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_compass_rose.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,89 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_COMPASS_ROSE_H +#define QWT_COMPASS_ROSE_H 1 + +#include "qwt_global.h" +#include + +class QPainter; + +/*! + \brief Abstract base class for a compass rose +*/ +class QWT_EXPORT QwtCompassRose +{ +public: + //! Destructor + virtual ~QwtCompassRose() {}; + + //! Assign a palette + virtual void setPalette( const QPalette &p ) + { + d_palette = p; + } + + //! \return Current palette + const QPalette &palette() const + { + return d_palette; + } + + /*! + Draw the rose + + \param painter Painter + \param center Center point + \param radius Radius of the rose + \param north Position + \param colorGroup Color group + */ + virtual void draw( QPainter *painter, + const QPointF ¢er, double radius, double north, + QPalette::ColorGroup colorGroup = QPalette::Active ) const = 0; + +private: + QPalette d_palette; +}; + +/*! + \brief A simple rose for QwtCompass +*/ +class QWT_EXPORT QwtSimpleCompassRose: public QwtCompassRose +{ +public: + QwtSimpleCompassRose( int numThorns = 8, int numThornLevels = -1 ); + virtual ~QwtSimpleCompassRose(); + + void setWidth( double w ); + double width() const; + + void setNumThorns( int count ); + int numThorns() const; + + void setNumThornLevels( int count ); + int numThornLevels() const; + + void setShrinkFactor( double factor ); + double shrinkFactor() const; + + virtual void draw( QPainter *, const QPointF ¢er, double radius, + double north, QPalette::ColorGroup = QPalette::Active ) const; + + static void drawRose( QPainter *, const QPalette &, + const QPointF ¢er, double radius, double origin, double width, + int numThorns, int numThornLevels, double shrinkFactor ); + +private: + class PrivateData; + PrivateData *d_data; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_compat.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_compat.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_compat.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_compat.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,40 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef _QWT_COMPAT_H_ +#define _QWT_COMPAT_H_ + +#include "qwt_global.h" +#include +#include +#include +#include +#include +#include + +// A couple of definition for Qwt5 compatibility + +#define qwtMax qMax +#define qwtMin qMin +#define qwtAbs qAbs +#define qwtRound qRound + +#define QwtArray QVector + +typedef QList QwtValueList; +typedef QPointF QwtDoublePoint; +typedef QSizeF QwtDoubleSize; +typedef QRectF QwtDoubleRect; + +typedef QPolygon QwtPolygon; +typedef QPolygonF QwtPolygonF; +typedef QwtInterval QwtDoubleInterval; +typedef QwtPoint3D QwtDoublePoint3D; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_counter.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_counter.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_counter.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_counter.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,603 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_arrow_button.h" +#include "qwt_math.h" +#include "qwt_counter.h" +#include +#include +#include +#include +#include + +class QwtCounter::PrivateData +{ +public: + PrivateData(): + editable( true ) + { + increment[Button1] = 1; + increment[Button2] = 10; + increment[Button3] = 100; + } + + QwtArrowButton *buttonDown[ButtonCnt]; + QwtArrowButton *buttonUp[ButtonCnt]; + QLineEdit *valueEdit; + + int increment[ButtonCnt]; + int numButtons; + + bool editable; +}; + +/*! + The default number of buttons is set to 2. The default increments are: + \li Button 1: 1 step + \li Button 2: 10 steps + \li Button 3: 100 steps + + \param parent + */ +QwtCounter::QwtCounter( QWidget *parent ): + QWidget( parent ) +{ + initCounter(); +} + +void QwtCounter::initCounter() +{ + d_data = new PrivateData; + + QHBoxLayout *layout = new QHBoxLayout( this ); + layout->setSpacing( 0 ); + layout->setMargin( 0 ); + + for ( int i = ButtonCnt - 1; i >= 0; i-- ) + { + QwtArrowButton *btn = + new QwtArrowButton( i + 1, Qt::DownArrow, this ); + btn->setFocusPolicy( Qt::NoFocus ); + btn->installEventFilter( this ); + layout->addWidget( btn ); + + connect( btn, SIGNAL( released() ), SLOT( btnReleased() ) ); + connect( btn, SIGNAL( clicked() ), SLOT( btnClicked() ) ); + + d_data->buttonDown[i] = btn; + } + + d_data->valueEdit = new QLineEdit( this ); + d_data->valueEdit->setReadOnly( false ); + d_data->valueEdit->setValidator( new QDoubleValidator( d_data->valueEdit ) ); + layout->addWidget( d_data->valueEdit ); + + connect( d_data->valueEdit, SIGNAL( editingFinished() ), + SLOT( textChanged() ) ); + + layout->setStretchFactor( d_data->valueEdit, 10 ); + + for ( int i = 0; i < ButtonCnt; i++ ) + { + QwtArrowButton *btn = + new QwtArrowButton( i + 1, Qt::UpArrow, this ); + btn->setFocusPolicy( Qt::NoFocus ); + btn->installEventFilter( this ); + layout->addWidget( btn ); + + connect( btn, SIGNAL( released() ), SLOT( btnReleased() ) ); + connect( btn, SIGNAL( clicked() ), SLOT( btnClicked() ) ); + + d_data->buttonUp[i] = btn; + } + + setNumButtons( 2 ); + setRange( 0.0, 1.0, 0.001 ); + setValue( 0.0 ); + + setSizePolicy( + QSizePolicy( QSizePolicy::Preferred, QSizePolicy::Fixed ) ); + + setFocusProxy( d_data->valueEdit ); + setFocusPolicy( Qt::StrongFocus ); +} + +//! Destructor +QwtCounter::~QwtCounter() +{ + delete d_data; +} + +//! Set from lineedit +void QwtCounter::textChanged() +{ + if ( !d_data->editable ) + return; + + bool converted = false; + + const double value = d_data->valueEdit->text().toDouble( &converted ); + if ( converted ) + setValue( value ); +} + +/** + \brief Allow/disallow the user to manually edit the value + + \param editable true enables editing + \sa editable() +*/ +void QwtCounter::setEditable( bool editable ) +{ + if ( editable == d_data->editable ) + return; + + d_data->editable = editable; + d_data->valueEdit->setReadOnly( !editable ); +} + +//! returns whether the line edit is edatble. (default is yes) +bool QwtCounter::editable() const +{ + return d_data->editable; +} + +/*! + Handle PolishRequest events + \param event Event +*/ +bool QwtCounter::event( QEvent *event ) +{ + if ( event->type() == QEvent::PolishRequest ) + { + const int w = d_data->valueEdit->fontMetrics().width( "W" ) + 8; + for ( int i = 0; i < ButtonCnt; i++ ) + { + d_data->buttonDown[i]->setMinimumWidth( w ); + d_data->buttonUp[i]->setMinimumWidth( w ); + } + } + + return QWidget::event( event ); +} + +/*! + Handle key events + + - Ctrl + Qt::Key_Home\n + Step to minValue() + - Ctrl + Qt::Key_End\n + Step to maxValue() + - Qt::Key_Up\n + Increment by incSteps(QwtCounter::Button1) + - Qt::Key_Down\n + Decrement by incSteps(QwtCounter::Button1) + - Qt::Key_PageUp\n + Increment by incSteps(QwtCounter::Button2) + - Qt::Key_PageDown\n + Decrement by incSteps(QwtCounter::Button2) + - Shift + Qt::Key_PageUp\n + Increment by incSteps(QwtCounter::Button3) + - Shift + Qt::Key_PageDown\n + Decrement by incSteps(QwtCounter::Button3) + + \param event Key event +*/ +void QwtCounter::keyPressEvent ( QKeyEvent *event ) +{ + bool accepted = true; + + switch ( event->key() ) + { + case Qt::Key_Home: + { + if ( event->modifiers() & Qt::ControlModifier ) + setValue( minValue() ); + else + accepted = false; + break; + } + case Qt::Key_End: + { + if ( event->modifiers() & Qt::ControlModifier ) + setValue( maxValue() ); + else + accepted = false; + break; + } + case Qt::Key_Up: + { + incValue( d_data->increment[0] ); + break; + } + case Qt::Key_Down: + { + incValue( -d_data->increment[0] ); + break; + } + case Qt::Key_PageUp: + case Qt::Key_PageDown: + { + int increment = d_data->increment[0]; + if ( d_data->numButtons >= 2 ) + increment = d_data->increment[1]; + if ( d_data->numButtons >= 3 ) + { + if ( event->modifiers() & Qt::ShiftModifier ) + increment = d_data->increment[2]; + } + if ( event->key() == Qt::Key_PageDown ) + increment = -increment; + incValue( increment ); + break; + } + default: + { + accepted = false; + } + } + + if ( accepted ) + { + event->accept(); + return; + } + + QWidget::keyPressEvent ( event ); +} + +/*! + Handle wheel events + \param event Wheel event +*/ +void QwtCounter::wheelEvent( QWheelEvent *event ) +{ + event->accept(); + + if ( d_data->numButtons <= 0 ) + return; + + int increment = d_data->increment[0]; + if ( d_data->numButtons >= 2 ) + { + if ( event->modifiers() & Qt::ControlModifier ) + increment = d_data->increment[1]; + } + if ( d_data->numButtons >= 3 ) + { + if ( event->modifiers() & Qt::ShiftModifier ) + increment = d_data->increment[2]; + } + + for ( int i = 0; i < d_data->numButtons; i++ ) + { + if ( d_data->buttonDown[i]->geometry().contains( event->pos() ) || + d_data->buttonUp[i]->geometry().contains( event->pos() ) ) + { + increment = d_data->increment[i]; + } + } + + const int wheel_delta = 120; + + int delta = event->delta(); + if ( delta >= 2 * wheel_delta ) + delta /= 2; // Never saw an abs(delta) < 240 + + incValue( delta / wheel_delta * increment ); +} + +/*! + Specify the number of steps by which the value + is incremented or decremented when a specified button + is pushed. + + \param button Button index + \param nSteps Number of steps + + \sa incSteps() +*/ +void QwtCounter::setIncSteps( QwtCounter::Button button, int nSteps ) +{ + if ( button >= 0 && button < ButtonCnt ) + d_data->increment[button] = nSteps; +} + +/*! + \return the number of steps by which a specified button increments the value + or 0 if the button is invalid. + \param button Button index + + \sa setIncSteps() +*/ +int QwtCounter::incSteps( QwtCounter::Button button ) const +{ + if ( button >= 0 && button < ButtonCnt ) + return d_data->increment[button]; + + return 0; +} + +/*! + \brief Set a new value + + Calls QwtDoubleRange::setValue and does all visual updates. + + \param value New value + \sa QwtDoubleRange::setValue() +*/ + +void QwtCounter::setValue( double value ) +{ + QwtDoubleRange::setValue( value ); + + showNum( this->value() ); + updateButtons(); +} + +/*! + \brief Notify a change of value +*/ +void QwtCounter::valueChange() +{ + if ( isValid() ) + showNum( value() ); + else + d_data->valueEdit->setText( QString::null ); + + updateButtons(); + + if ( isValid() ) + Q_EMIT valueChanged( value() ); +} + +/*! + \brief Update buttons according to the current value + + When the QwtCounter under- or over-flows, the focus is set to the smallest + up- or down-button and counting is disabled. + + Counting is re-enabled on a button release event (mouse or space bar). +*/ +void QwtCounter::updateButtons() +{ + if ( isValid() ) + { + // 1. save enabled state of the smallest down- and up-button + // 2. change enabled state on under- or over-flow + + for ( int i = 0; i < QwtCounter::ButtonCnt; i++ ) + { + d_data->buttonDown[i]->setEnabled( value() > minValue() ); + d_data->buttonUp[i]->setEnabled( value() < maxValue() ); + } + } + else + { + for ( int i = 0; i < QwtCounter::ButtonCnt; i++ ) + { + d_data->buttonDown[i]->setEnabled( false ); + d_data->buttonUp[i]->setEnabled( false ); + } + } +} + +/*! + \brief Specify the number of buttons on each side of the label + \param numButtons Number of buttons +*/ +void QwtCounter::setNumButtons( int numButtons ) +{ + if ( numButtons < 0 || numButtons > QwtCounter::ButtonCnt ) + return; + + for ( int i = 0; i < QwtCounter::ButtonCnt; i++ ) + { + if ( i < numButtons ) + { + d_data->buttonDown[i]->show(); + d_data->buttonUp[i]->show(); + } + else + { + d_data->buttonDown[i]->hide(); + d_data->buttonUp[i]->hide(); + } + } + + d_data->numButtons = numButtons; +} + +/*! + \return The number of buttons on each side of the widget. +*/ +int QwtCounter::numButtons() const +{ + return d_data->numButtons; +} + +/*! + Display number string + + \param number Number +*/ +void QwtCounter::showNum( double number ) +{ + QString text; + text.setNum( number ); + + const int cursorPos = d_data->valueEdit->cursorPosition(); + d_data->valueEdit->setText( text ); + d_data->valueEdit->setCursorPosition( cursorPos ); +} + +//! Button clicked +void QwtCounter::btnClicked() +{ + for ( int i = 0; i < ButtonCnt; i++ ) + { + if ( d_data->buttonUp[i] == sender() ) + incValue( d_data->increment[i] ); + + if ( d_data->buttonDown[i] == sender() ) + incValue( -d_data->increment[i] ); + } +} + +//! Button released +void QwtCounter::btnReleased() +{ + Q_EMIT buttonReleased( value() ); +} + +/*! + \brief Notify change of range + + This function updates the enabled property of + all buttons contained in QwtCounter. +*/ +void QwtCounter::rangeChange() +{ + updateButtons(); +} + +//! A size hint +QSize QwtCounter::sizeHint() const +{ + QString tmp; + + int w = tmp.setNum( minValue() ).length(); + int w1 = tmp.setNum( maxValue() ).length(); + if ( w1 > w ) + w = w1; + w1 = tmp.setNum( minValue() + step() ).length(); + if ( w1 > w ) + w = w1; + w1 = tmp.setNum( maxValue() - step() ).length(); + if ( w1 > w ) + w = w1; + + tmp.fill( '9', w ); + + QFontMetrics fm( d_data->valueEdit->font() ); + w = fm.width( tmp ) + 2; + if ( d_data->valueEdit->hasFrame() ) + w += 2 * style()->pixelMetric( QStyle::PM_DefaultFrameWidth ); + + // Now we replace default sizeHint contribution of d_data->valueEdit by + // what we really need. + + w += QWidget::sizeHint().width() - d_data->valueEdit->sizeHint().width(); + + const int h = qMin( QWidget::sizeHint().height(), + d_data->valueEdit->minimumSizeHint().height() ); + return QSize( w, h ); +} + +//! returns the step size +double QwtCounter::step() const +{ + return QwtDoubleRange::step(); +} + +/*! + Set the step size + \param stepSize Step size + \sa QwtDoubleRange::setStep() +*/ +void QwtCounter::setStep( double stepSize ) +{ + QwtDoubleRange::setStep( stepSize ); +} + +//! returns the minimum value of the range +double QwtCounter::minValue() const +{ + return QwtDoubleRange::minValue(); +} + +/*! + Set the minimum value of the range + + \param value Minimum value + \sa setMaxValue(), minValue() +*/ +void QwtCounter::setMinValue( double value ) +{ + setRange( value, maxValue(), step() ); +} + +//! returns the maximum value of the range +double QwtCounter::maxValue() const +{ + return QwtDoubleRange::maxValue(); +} + +/*! + Set the maximum value of the range + + \param value Maximum value + \sa setMinValue(), maxVal() +*/ +void QwtCounter::setMaxValue( double value ) +{ + setRange( minValue(), value, step() ); +} + +/*! + Set the number of increment steps for button 1 + \param nSteps Number of steps +*/ +void QwtCounter::setStepButton1( int nSteps ) +{ + setIncSteps( Button1, nSteps ); +} + +//! returns the number of increment steps for button 1 +int QwtCounter::stepButton1() const +{ + return incSteps( Button1 ); +} + +/*! + Set the number of increment steps for button 2 + \param nSteps Number of steps +*/ +void QwtCounter::setStepButton2( int nSteps ) +{ + setIncSteps( Button2, nSteps ); +} + +//! returns the number of increment steps for button 2 +int QwtCounter::stepButton2() const +{ + return incSteps( Button2 ); +} + +/*! + Set the number of increment steps for button 3 + \param nSteps Number of steps +*/ +void QwtCounter::setStepButton3( int nSteps ) +{ + setIncSteps( Button3, nSteps ); +} + +//! returns the number of increment steps for button 3 +int QwtCounter::stepButton3() const +{ + return incSteps( Button3 ); +} + +//! \return Current value +double QwtCounter::value() const +{ + return QwtDoubleRange::value(); +} + diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_counter.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_counter.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_counter.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_counter.h 2011-04-15 10:48:46.000000000 +0000 @@ -0,0 +1,160 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_COUNTER_H +#define QWT_COUNTER_H + +#include "qwt_global.h" +#include "qwt_double_range.h" +#include + +/*! + \brief The Counter Widget + + A Counter consists of a label displaying a number and + one ore more (up to three) push buttons on each side + of the label which can be used to increment or decrement + the counter's value. + + A Counter has a range from a minimum value to a maximum value + and a step size. The range can be specified using + QwtDblRange::setRange(). + The counter's value is an integer multiple of the step size. + The number of steps by which a button increments or decrements + the value can be specified using QwtCounter::setIncSteps(). + The number of buttons can be changed with + QwtCounter::setNumButtons(). + + Holding the space bar down with focus on a button is the + fastest method to step through the counter values. + When the counter underflows/overflows, the focus is set + to the smallest up/down button and counting is disabled. + Counting is re-enabled on a button release event (mouse or + space bar). + + Example: +\code +#include "../include/qwt_counter.h> + +QwtCounter *cnt; + +cnt = new QwtCounter(parent, name); + +cnt->setRange(0.0, 100.0, 1.0); // From 0.0 to 100, step 1.0 +cnt->setNumButtons(2); // Two buttons each side +cnt->setIncSteps(QwtCounter::Button1, 1); // Button 1 increments 1 step +cnt->setIncSteps(QwtCounter::Button2, 20); // Button 2 increments 20 steps + +connect(cnt, SIGNAL(valueChanged(double)), my_class, SLOT(newValue(double))); +\endcode + */ + +class QWT_EXPORT QwtCounter : public QWidget, public QwtDoubleRange +{ + Q_OBJECT + + Q_PROPERTY( int numButtons READ numButtons WRITE setNumButtons ) + Q_PROPERTY( double basicstep READ step WRITE setStep ) + Q_PROPERTY( double minValue READ minValue WRITE setMinValue ) + Q_PROPERTY( double maxValue READ maxValue WRITE setMaxValue ) + Q_PROPERTY( int stepButton1 READ stepButton1 WRITE setStepButton1 ) + Q_PROPERTY( int stepButton2 READ stepButton2 WRITE setStepButton2 ) + Q_PROPERTY( int stepButton3 READ stepButton3 WRITE setStepButton3 ) + Q_PROPERTY( double value READ value WRITE setValue ) + Q_PROPERTY( bool editable READ editable WRITE setEditable ) + +public: + //! Button index + enum Button + { + //! Button intended for minor steps + Button1, + + //! Button intended for medium steps + Button2, + + //! Button intended for large steps + Button3, + + //! Number of buttons + ButtonCnt + }; + + explicit QwtCounter( QWidget *parent = NULL ); + virtual ~QwtCounter(); + + bool editable() const; + void setEditable( bool ); + + void setNumButtons( int n ); + int numButtons() const; + + void setIncSteps( QwtCounter::Button btn, int nSteps ); + int incSteps( QwtCounter::Button btn ) const; + + virtual void setValue( double ); + virtual QSize sizeHint() const; + + // a set of dummies to help the designer + + double step() const; + void setStep( double s ); + + double minValue() const; + void setMinValue( double m ); + + double maxValue() const; + void setMaxValue( double m ); + + void setStepButton1( int nSteps ); + int stepButton1() const; + + void setStepButton2( int nSteps ); + int stepButton2() const; + + void setStepButton3( int nSteps ); + int stepButton3() const; + + virtual double value() const; + +Q_SIGNALS: + /*! + This signal is emitted when a button has been released + \param value The new value + */ + void buttonReleased ( double value ); + + /*! + This signal is emitted when the counter's value has changed + \param value The new value + */ + void valueChanged ( double value ); + +protected: + virtual bool event( QEvent * ); + virtual void wheelEvent( QWheelEvent * ); + virtual void keyPressEvent( QKeyEvent * ); + virtual void rangeChange(); + +private Q_SLOTS: + void btnReleased(); + void btnClicked(); + void textChanged(); + +private: + void initCounter(); + void updateButtons(); + void showNum( double ); + virtual void valueChange(); + + class PrivateData; + PrivateData *d_data; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_curve_fitter.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_curve_fitter.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_curve_fitter.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_curve_fitter.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,405 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_curve_fitter.h" +#include "qwt_math.h" +#include "qwt_spline.h" +#include +#include + +#if QT_VERSION < 0x040601 +#define qFabs(x) ::fabs(x) +#endif + +//! Constructor +QwtCurveFitter::QwtCurveFitter() +{ +} + +//! Destructor +QwtCurveFitter::~QwtCurveFitter() +{ +} + +class QwtSplineCurveFitter::PrivateData +{ +public: + PrivateData(): + fitMode( QwtSplineCurveFitter::Auto ), + splineSize( 250 ) + { + } + + QwtSpline spline; + QwtSplineCurveFitter::FitMode fitMode; + int splineSize; +}; + +//! Constructor +QwtSplineCurveFitter::QwtSplineCurveFitter() +{ + d_data = new PrivateData; +} + +//! Destructor +QwtSplineCurveFitter::~QwtSplineCurveFitter() +{ + delete d_data; +} + +/*! + Select the algorithm used for building the spline + + \param mode Mode representing a spline algorithm + \sa fitMode() +*/ +void QwtSplineCurveFitter::setFitMode( FitMode mode ) +{ + d_data->fitMode = mode; +} + +/*! + \return Mode representing a spline algorithm + \sa setFitMode() +*/ +QwtSplineCurveFitter::FitMode QwtSplineCurveFitter::fitMode() const +{ + return d_data->fitMode; +} + +/*! + Assign a spline + + \param spline Spline + \sa spline() +*/ +void QwtSplineCurveFitter::setSpline( const QwtSpline &spline ) +{ + d_data->spline = spline; + d_data->spline.reset(); +} + +/*! + \return Spline + \sa setSpline() +*/ +const QwtSpline &QwtSplineCurveFitter::spline() const +{ + return d_data->spline; +} + +/*! + \return Spline + \sa setSpline() +*/ +QwtSpline &QwtSplineCurveFitter::spline() +{ + return d_data->spline; +} + +/*! + Assign a spline size ( has to be at least 10 points ) + + \param splineSize Spline size + \sa splineSize() +*/ +void QwtSplineCurveFitter::setSplineSize( int splineSize ) +{ + d_data->splineSize = qMax( splineSize, 10 ); +} + +/*! + \return Spline size + \sa setSplineSize() +*/ +int QwtSplineCurveFitter::splineSize() const +{ + return d_data->splineSize; +} + +/*! + Find a curve which has the best fit to a series of data points + + \param points Series of data points + \return Curve points +*/ +QPolygonF QwtSplineCurveFitter::fitCurve( const QPolygonF &points ) const +{ + const int size = ( int )points.size(); + if ( size <= 2 ) + return points; + + FitMode fitMode = d_data->fitMode; + if ( fitMode == Auto ) + { + fitMode = Spline; + + const QPointF *p = points.data(); + for ( int i = 1; i < size; i++ ) + { + if ( p[i].x() <= p[i-1].x() ) + { + fitMode = ParametricSpline; + break; + } + }; + } + + if ( fitMode == ParametricSpline ) + return fitParametric( points ); + else + return fitSpline( points ); +} + +QPolygonF QwtSplineCurveFitter::fitSpline( const QPolygonF &points ) const +{ + d_data->spline.setPoints( points ); + if ( !d_data->spline.isValid() ) + return points; + + QPolygonF fittedPoints( d_data->splineSize ); + + const double x1 = points[0].x(); + const double x2 = points[int( points.size() - 1 )].x(); + const double dx = x2 - x1; + const double delta = dx / ( d_data->splineSize - 1 ); + + for ( int i = 0; i < d_data->splineSize; i++ ) + { + QPointF &p = fittedPoints[i]; + + const double v = x1 + i * delta; + const double sv = d_data->spline.value( v ); + + p.setX( v ); + p.setY( sv ); + } + d_data->spline.reset(); + + return fittedPoints; +} + +QPolygonF QwtSplineCurveFitter::fitParametric( const QPolygonF &points ) const +{ + int i; + const int size = points.size(); + + QPolygonF fittedPoints( d_data->splineSize ); + QPolygonF splinePointsX( size ); + QPolygonF splinePointsY( size ); + + const QPointF *p = points.data(); + QPointF *spX = splinePointsX.data(); + QPointF *spY = splinePointsY.data(); + + double param = 0.0; + for ( i = 0; i < size; i++ ) + { + const double x = p[i].x(); + const double y = p[i].y(); + if ( i > 0 ) + { + const double delta = qSqrt( qwtSqr( x - spX[i-1].y() ) + + qwtSqr( y - spY[i-1].y() ) ); + param += qMax( delta, 1.0 ); + } + spX[i].setX( param ); + spX[i].setY( x ); + spY[i].setX( param ); + spY[i].setY( y ); + } + + d_data->spline.setPoints( splinePointsX ); + if ( !d_data->spline.isValid() ) + return points; + + const double deltaX = + splinePointsX[size - 1].x() / ( d_data->splineSize - 1 ); + for ( i = 0; i < d_data->splineSize; i++ ) + { + const double dtmp = i * deltaX; + fittedPoints[i].setX( d_data->spline.value( dtmp ) ); + } + + d_data->spline.setPoints( splinePointsY ); + if ( !d_data->spline.isValid() ) + return points; + + const double deltaY = + splinePointsY[size - 1].x() / ( d_data->splineSize - 1 ); + for ( i = 0; i < d_data->splineSize; i++ ) + { + const double dtmp = i * deltaY; + fittedPoints[i].setY( d_data->spline.value( dtmp ) ); + } + + return fittedPoints; +} + +class QwtWeedingCurveFitter::PrivateData +{ +public: + PrivateData(): + tolerance( 1.0 ) + { + } + + double tolerance; +}; + +class QwtWeedingCurveFitter::Line +{ +public: + Line( int i1 = 0, int i2 = 0 ): + from( i1 ), + to( i2 ) + { + } + + int from; + int to; +}; + +/*! + Constructor + + \param tolerance Tolerance + \sa setTolerance(), tolerance() +*/ +QwtWeedingCurveFitter::QwtWeedingCurveFitter( double tolerance ) +{ + d_data = new PrivateData; + setTolerance( tolerance ); +} + +//! Destructor +QwtWeedingCurveFitter::~QwtWeedingCurveFitter() +{ + delete d_data; +} + +/*! + Assign the tolerance + + The tolerance is the maximum distance, that is accaptable + between the original curve and the smoothed curve. + + Increasing the tolerance will reduce the number of the + resulting points. + + \param tolerance Tolerance + + \sa tolerance() +*/ +void QwtWeedingCurveFitter::setTolerance( double tolerance ) +{ + d_data->tolerance = qMax( tolerance, 0.0 ); +} + +/*! + \return Tolerance + \sa setTolerance() +*/ +double QwtWeedingCurveFitter::tolerance() const +{ + return d_data->tolerance; +} + +/*! + \param points Series of data points + \return Curve points +*/ +QPolygonF QwtWeedingCurveFitter::fitCurve( const QPolygonF &points ) const +{ + QStack stack; + stack.reserve( 500 ); + + const QPointF *p = points.data(); + const int nPoints = points.size(); + + QVector usePoint( nPoints, false ); + + double distToSegment; + + stack.push( Line( 0, nPoints - 1 ) ); + + while ( !stack.isEmpty() ) + { + const Line r = stack.pop(); + + // initialize line segment + const double vecX = p[r.to].x() - p[r.from].x(); + const double vecY = p[r.to].y() - p[r.from].y(); + + const double vecLength = qSqrt( vecX * vecX + vecY * vecY ); + + const double unitVecX = ( vecLength != 0.0 ) ? vecX / vecLength : 0.0; + const double unitVecY = ( vecLength != 0.0 ) ? vecY / vecLength : 0.0; + + double maxDist = 0.0; + int nVertexIndexMaxDistance = r.from + 1; + for ( int i = r.from + 1; i < r.to; i++ ) + { + //compare to anchor + const double fromVecX = p[i].x() - p[r.from].x(); + const double fromVecY = p[i].y() - p[r.from].y(); + const double fromVecLength = + qSqrt( fromVecX * fromVecX + fromVecY * fromVecY ); + + if ( fromVecX * unitVecX + fromVecY * unitVecY < 0.0 ) + { + distToSegment = fromVecLength; + } + if ( fromVecX * unitVecX + fromVecY * unitVecY < 0.0 ) + { + distToSegment = fromVecLength; + } + else + { + const double toVecX = p[i].x() - p[r.to].x(); + const double toVecY = p[i].y() - p[r.to].y(); + const double toVecLength = qSqrt( toVecX * toVecX + toVecY * toVecY ); + const double s = toVecX * ( -unitVecX ) + toVecY * ( -unitVecY ); + if ( s < 0.0 ) + distToSegment = toVecLength; + else + { + distToSegment = qSqrt( qFabs( toVecLength * toVecLength - s * s ) ); + } + } + + if ( maxDist < distToSegment ) + { + maxDist = distToSegment; + nVertexIndexMaxDistance = i; + } + } + if ( maxDist <= d_data->tolerance ) + { + usePoint[r.from] = true; + usePoint[r.to] = true; + } + else + { + stack.push( Line( r.from, nVertexIndexMaxDistance ) ); + stack.push( Line( nVertexIndexMaxDistance, r.to ) ); + } + } + + int cnt = 0; + + QPolygonF stripped( nPoints ); + for ( int i = 0; i < nPoints; i++ ) + { + if ( usePoint[i] ) + stripped[cnt++] = p[i]; + } + stripped.resize( cnt ); + return stripped; +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_curve_fitter.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_curve_fitter.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_curve_fitter.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_curve_fitter.h 2011-04-15 10:48:46.000000000 +0000 @@ -0,0 +1,128 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_CURVE_FITTER_H +#define QWT_CURVE_FITTER_H + +#include "qwt_global.h" +#include +#include + +class QwtSpline; + +/*! + \brief Abstract base class for a curve fitter +*/ +class QWT_EXPORT QwtCurveFitter +{ +public: + virtual ~QwtCurveFitter(); + + /*! + Find a curve which has the best fit to a series of data points + + \param polygon Series of data points + \return Curve points + */ + virtual QPolygonF fitCurve( const QPolygonF &polygon ) const = 0; + +protected: + QwtCurveFitter(); + +private: + QwtCurveFitter( const QwtCurveFitter & ); + QwtCurveFitter &operator=( const QwtCurveFitter & ); +}; + +/*! + \brief A curve fitter using cubic splines +*/ +class QWT_EXPORT QwtSplineCurveFitter: public QwtCurveFitter +{ +public: + /*! + Spline type + The default setting is Auto + \sa setFitMode(), FitMode() + */ + enum FitMode + { + /*! + Use the default spline algorithm for polygons with + increasing x values ( p[i-1] < p[i] ), otherwise use + a parametric spline algorithm. + */ + Auto, + + //! Use a default spline algorithm + Spline, + + //! Use a parametric spline algorithm + ParametricSpline + }; + + QwtSplineCurveFitter(); + virtual ~QwtSplineCurveFitter(); + + void setFitMode( FitMode ); + FitMode fitMode() const; + + void setSpline( const QwtSpline& ); + const QwtSpline &spline() const; + QwtSpline &spline(); + + void setSplineSize( int size ); + int splineSize() const; + + virtual QPolygonF fitCurve( const QPolygonF & ) const; + +private: + QPolygonF fitSpline( const QPolygonF & ) const; + QPolygonF fitParametric( const QPolygonF & ) const; + + class PrivateData; + PrivateData *d_data; +}; + +/*! + \brief A curve fitter implementing Douglas and Peucker algorithm + + The purpose of the Douglas and Peucker algorithm is that given a 'curve' + composed of line segments to find a curve not too dissimilar but that + has fewer points. The algorithm defines 'too dissimilar' based on the + maximum distance (tolerance) between the original curve and the + smoothed curve. + + The smoothed curve consists of a subset of the points that defined the + original curve. + + In opposite to QwtSplineCurveFitter the Douglas and Peucker algorithm reduces + the number of points. By adjusting the tolerance parameter according to the + axis scales QwtSplineCurveFitter can be used to implement different + level of details to speed up painting of curves of many points. +*/ +class QWT_EXPORT QwtWeedingCurveFitter: public QwtCurveFitter +{ +public: + QwtWeedingCurveFitter( double tolerance = 1.0 ); + virtual ~QwtWeedingCurveFitter(); + + void setTolerance( double ); + double tolerance() const; + + virtual QPolygonF fitCurve( const QPolygonF & ) const; + +private: + class Line; + + class PrivateData; + PrivateData *d_data; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_dial.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_dial.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_dial.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_dial.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,1155 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_dial.h" +#include "qwt_dial_needle.h" +#include "qwt_math.h" +#include "qwt_scale_engine.h" +#include "qwt_scale_map.h" +#include "qwt_painter.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#if QT_VERSION < 0x040601 +#define qAtan(x) ::atan(x) +#endif + +class QwtDial::PrivateData +{ +public: + PrivateData(): + frameShadow( Sunken ), + lineWidth( 0 ), + mode( RotateNeedle ), + direction( Clockwise ), + origin( 90.0 ), + minScaleArc( 0.0 ), + maxScaleArc( 0.0 ), + scaleDraw( 0 ), + maxMajIntv( 36 ), + maxMinIntv( 10 ), + scaleStep( 0.0 ), + needle( 0 ) + { + } + + ~PrivateData() + { + delete scaleDraw; + delete needle; + } + Shadow frameShadow; + int lineWidth; + + QwtDial::Mode mode; + QwtDial::Direction direction; + + double origin; + double minScaleArc; + double maxScaleArc; + + QwtDialScaleDraw *scaleDraw; + int maxMajIntv; + int maxMinIntv; + double scaleStep; + + QwtDialNeedle *needle; + + static double previousDir; +}; + +double QwtDial::PrivateData::previousDir = -1.0; + +/*! + Constructor + + \param parent Parent dial widget +*/ +QwtDialScaleDraw::QwtDialScaleDraw( QwtDial *parent ): + d_parent( parent ), + d_penWidth( 1.0 ) +{ +} + +/*! + Set the pen width used for painting the scale + + \param penWidth Pen width + \sa penWidth(), QwtDial::drawScale() +*/ + +void QwtDialScaleDraw::setPenWidth( double penWidth ) +{ + d_penWidth = qMax( penWidth, 0.0 ); +} + +/*! + \return Pen width used for painting the scale + \sa setPenWidth, QwtDial::drawScale() +*/ +double QwtDialScaleDraw::penWidth() const +{ + return d_penWidth; +} + +/*! + Call QwtDial::scaleLabel of the parent dial widget. + + \param value Value to display + + \sa QwtDial::scaleLabel() +*/ +QwtText QwtDialScaleDraw::label( double value ) const +{ + if ( d_parent == NULL ) + return QwtRoundScaleDraw::label( value ); + + return d_parent->scaleLabel( value ); +} + +/*! + \brief Constructor + \param parent Parent widget + + Create a dial widget with no scale and no needle. + The default origin is 90.0 with no valid value. It accepts + mouse and keyboard inputs and has no step size. The default mode + is QwtDial::RotateNeedle. +*/ +QwtDial::QwtDial( QWidget* parent ): + QwtAbstractSlider( Qt::Horizontal, parent ) +{ + initDial(); +} + +void QwtDial::initDial() +{ + d_data = new PrivateData; + + setFocusPolicy( Qt::TabFocus ); + + QPalette p = palette(); + for ( int i = 0; i < QPalette::NColorGroups; i++ ) + { + const QPalette::ColorGroup cg = ( QPalette::ColorGroup )i; + + // Base: background color of the circle inside the frame. + // WindowText: background color of the circle inside the scale + + p.setColor( cg, QPalette::WindowText, + p.color( cg, QPalette::Base ) ); + } + setPalette( p ); + + d_data->scaleDraw = new QwtDialScaleDraw( this ); + d_data->scaleDraw->setRadius( 0 ); + + setScaleArc( 0.0, 360.0 ); // scale as a full circle + setRange( 0.0, 360.0, 1.0, 10 ); // degrees as deafult +} + +//! Destructor +QwtDial::~QwtDial() +{ + delete d_data; +} + +/*! + Sets the frame shadow value from the frame style. + \param shadow Frame shadow + \sa setLineWidth(), QFrame::setFrameShadow() +*/ +void QwtDial::setFrameShadow( Shadow shadow ) +{ + if ( shadow != d_data->frameShadow ) + { + d_data->frameShadow = shadow; + if ( lineWidth() > 0 ) + update(); + } +} + +/*! + \return Frame shadow + /sa setFrameShadow(), lineWidth(), QFrame::frameShadow +*/ +QwtDial::Shadow QwtDial::frameShadow() const +{ + return d_data->frameShadow; +} + +/*! + Sets the line width + + \param lineWidth Line width + \sa setFrameShadow() +*/ +void QwtDial::setLineWidth( int lineWidth ) +{ + if ( lineWidth < 0 ) + lineWidth = 0; + + if ( d_data->lineWidth != lineWidth ) + { + d_data->lineWidth = lineWidth; + update(); + } +} + +/*! + \return Line width of the frame + \sa setLineWidth(), frameShadow(), lineWidth() +*/ +int QwtDial::lineWidth() const +{ + return d_data->lineWidth; +} + +/*! + \return bounding rect of the circle inside the frame + \sa setLineWidth(), scaleInnerRect(), boundingRect() +*/ +QRectF QwtDial::innerRect() const +{ + const double lw = lineWidth(); + return boundingRect().adjusted( lw, lw, -lw, -lw ); +} + +/*! + \return bounding rect of the dial including the frame + \sa setLineWidth(), scaleInnerRect(), innerRect() +*/ +QRectF QwtDial::boundingRect() const +{ + const QRectF cr = contentsRect(); + + const double dim = qMin( cr.width(), cr.height() ); + + QRectF inner( 0, 0, dim, dim ); + inner.moveCenter( cr.center() ); + + return inner; +} + +/*! + \return rect inside the scale + \sa setLineWidth(), boundingRect(), innerRect() +*/ +QRectF QwtDial::scaleInnerRect() const +{ + QRectF rect = innerRect(); + + if ( d_data->scaleDraw ) + { + double scaleDist = qCeil( d_data->scaleDraw->extent( font() ) ); + scaleDist++; // margin + + rect.adjust( scaleDist, scaleDist, -scaleDist, -scaleDist ); + } + + return rect; +} + +/*! + \brief Change the mode of the meter. + \param mode New mode + + The value of the meter is indicated by the difference + between north of the scale and the direction of the needle. + In case of QwtDial::RotateNeedle north is pointing + to the origin() and the needle is rotating, in case of + QwtDial::RotateScale, the needle points to origin() + and the scale is rotating. + + The default mode is QwtDial::RotateNeedle. + + \sa mode(), setValue(), setOrigin() +*/ +void QwtDial::setMode( Mode mode ) +{ + if ( mode != d_data->mode ) + { + d_data->mode = mode; + update(); + } +} + +/*! + \return mode of the dial. + + The value of the dial is indicated by the difference + between the origin and the direction of the needle. + In case of QwtDial::RotateNeedle the scale arc is fixed + to the origin() and the needle is rotating, in case of + QwtDial::RotateScale, the needle points to origin() + and the scale is rotating. + + The default mode is QwtDial::RotateNeedle. + + \sa setMode(), origin(), setScaleArc(), value() +*/ +QwtDial::Mode QwtDial::mode() const +{ + return d_data->mode; +} + +/*! + Sets whether it is possible to step the value from the highest value to + the lowest value and vice versa to on. + + \param wrapping en/disables wrapping + + \sa wrapping(), QwtDoubleRange::periodic() + \note The meaning of wrapping is like the wrapping property of QSpinBox, + but not like it is used in QDial. +*/ +void QwtDial::setWrapping( bool wrapping ) +{ + setPeriodic( wrapping ); +} + +/*! + wrapping() holds whether it is possible to step the value from the + highest value to the lowest value and vice versa. + + \sa setWrapping(), QwtDoubleRange::setPeriodic() + \note The meaning of wrapping is like the wrapping property of QSpinBox, + but not like it is used in QDial. +*/ +bool QwtDial::wrapping() const +{ + return periodic(); +} + +/*! + Set the direction of the dial (clockwise/counterclockwise) + + \param direction Direction + \sa direction() +*/ +void QwtDial::setDirection( Direction direction ) +{ + if ( direction != d_data->direction ) + { + d_data->direction = direction; + update(); + } +} + +/*! + \return Direction of the dial + + The default direction of a dial is QwtDial::Clockwise + + \sa setDirection() +*/ +QwtDial::Direction QwtDial::direction() const +{ + return d_data->direction; +} + +/*! + Paint the dial + \param event Paint event +*/ +void QwtDial::paintEvent( QPaintEvent *event ) +{ + QPainter painter( this ); + painter.setClipRegion( event->region() ); + + QStyleOption opt; + opt.init(this); + style()->drawPrimitive(QStyle::PE_Widget, &opt, &painter, this); + + painter.setRenderHint( QPainter::Antialiasing, true ); + + painter.save(); + drawContents( &painter ); + painter.restore(); + + painter.save(); + drawFrame( &painter ); + painter.restore(); + + if ( hasFocus() ) + drawFocusIndicator( &painter ); +} + +/*! + Draw a dotted round circle, if !isReadOnly() + + \param painter Painter +*/ +void QwtDial::drawFocusIndicator( QPainter *painter ) const +{ + if ( !isReadOnly() ) + { + QRectF focusRect = innerRect(); + + const int margin = 2; + focusRect.adjust( margin, margin, -margin, -margin ); + + QColor color = palette().color( QPalette::Base ); + if ( color.isValid() ) + { + const QColor gray( Qt::gray ); + + int h, s, v; + color.getHsv( &h, &s, &v ); + color = ( v > 128 ) ? gray.dark( 120 ) : gray.light( 120 ); + } + else + color = Qt::darkGray; + + painter->save(); + painter->setBrush( Qt::NoBrush ); + painter->setPen( QPen( color, 0, Qt::DotLine ) ); + painter->drawEllipse( focusRect ); + painter->restore(); + } +} + +/*! + Draw the frame around the dial + + \param painter Painter + \sa lineWidth(), frameShadow() +*/ +void QwtDial::drawFrame( QPainter *painter ) +{ + if ( lineWidth() <= 0 ) + return; + + const double lw2 = 0.5 * lineWidth(); + + QRectF r = boundingRect(); + r.adjust( lw2, lw2, -lw2, -lw2 ); + + QPen pen; + + switch ( d_data->frameShadow ) + { + case QwtDial::Raised: + case QwtDial::Sunken: + { + QColor c1 = palette().color( QPalette::Light ); + QColor c2 = palette().color( QPalette::Dark ); + + if ( d_data->frameShadow == QwtDial::Sunken ) + qSwap( c1, c2 ); + + QLinearGradient gradient( r.topLeft(), r.bottomRight() ); + gradient.setColorAt( 0.0, c1 ); +#if 0 + gradient.setColorAt( 0.3, c1 ); + gradient.setColorAt( 0.7, c2 ); +#endif + gradient.setColorAt( 1.0, c2 ); + + pen = QPen( gradient, lineWidth() ); + break; + } + default: // Plain + { + pen = QPen( palette().brush( QPalette::Dark ), lineWidth() ); + } + } + + painter->save(); + + painter->setPen( pen ); + painter->setBrush( Qt::NoBrush ); + painter->drawEllipse( r ); + + painter->restore(); +} + +/*! + \brief Draw the contents inside the frame + + QPalette::Window is the background color outside of the frame. + QPalette::Base is the background color inside the frame. + QPalette::WindowText is the background color inside the scale. + + \param painter Painter + \sa boundingRect(), innerRect(), + scaleInnerRect(), QWidget::setPalette() +*/ +void QwtDial::drawContents( QPainter *painter ) const +{ + if ( testAttribute( Qt::WA_NoSystemBackground ) || + palette().brush( QPalette::Base ) != + palette().brush( QPalette::Window ) ) + { + const QRectF br = boundingRect(); + + painter->save(); + painter->setPen( Qt::NoPen ); + painter->setBrush( palette().brush( QPalette::Base ) ); + painter->drawEllipse( br ); + painter->restore(); + } + + + const QRectF insideScaleRect = scaleInnerRect(); + if ( palette().brush( QPalette::WindowText ) != + palette().brush( QPalette::Base ) ) + { + painter->save(); + painter->setPen( Qt::NoPen ); + painter->setBrush( palette().brush( QPalette::WindowText ) ); + painter->drawEllipse( insideScaleRect ); + painter->restore(); + } + + const QPointF center = insideScaleRect.center(); + const double radius = 0.5 * insideScaleRect.width(); + + double direction = d_data->origin; + + if ( isValid() ) + { + direction = d_data->minScaleArc; + if ( maxValue() > minValue() && + d_data->maxScaleArc > d_data->minScaleArc ) + { + const double ratio = + ( value() - minValue() ) / ( maxValue() - minValue() ); + direction += ratio * ( d_data->maxScaleArc - d_data->minScaleArc ); + } + + if ( d_data->direction == QwtDial::CounterClockwise ) + direction = d_data->maxScaleArc - ( direction - d_data->minScaleArc ); + + direction += d_data->origin; + if ( direction >= 360.0 ) + direction -= 360.0; + else if ( direction < 0.0 ) + direction += 360.0; + } + + double origin = d_data->origin; + if ( mode() == RotateScale ) + { + origin -= direction - d_data->origin; + direction = d_data->origin; + } + + painter->save(); + drawScale( painter, center, radius, origin, + d_data->minScaleArc, d_data->maxScaleArc ); + painter->restore(); + + painter->save(); + drawScaleContents( painter, center, radius ); + painter->restore(); + + if ( isValid() ) + { + QPalette::ColorGroup cg; + if ( isEnabled() ) + cg = hasFocus() ? QPalette::Active : QPalette::Inactive; + else + cg = QPalette::Disabled; + + painter->save(); + drawNeedle( painter, center, radius, direction, cg ); + painter->restore(); + } +} + +/*! + Draw the needle + + \param painter Painter + \param center Center of the dial + \param radius Length for the needle + \param direction Direction of the needle in degrees, counter clockwise + \param cg ColorGroup +*/ +void QwtDial::drawNeedle( QPainter *painter, const QPointF ¢er, + double radius, double direction, QPalette::ColorGroup cg ) const +{ + if ( d_data->needle ) + { + direction = 360.0 - direction; // counter clockwise + d_data->needle->draw( painter, center, radius, direction, cg ); + } +} + +/*! + Draw the scale + + \param painter Painter + \param center Center of the dial + \param radius Radius of the scale + \param origin Origin of the scale + \param minArc Minimum of the arc + \param maxArc Minimum of the arc + + \sa QwtRoundScaleDraw::setAngleRange() +*/ +void QwtDial::drawScale( QPainter *painter, const QPointF ¢er, + double radius, double origin, double minArc, double maxArc ) const +{ + if ( d_data->scaleDraw == NULL ) + return; + + origin -= 270.0; // hardcoded origin of QwtScaleDraw + + double angle = maxArc - minArc; + if ( angle > 360.0 ) + angle = ::fmod( angle, 360.0 ); + + minArc += origin; + if ( minArc < -360.0 ) + minArc = ::fmod( minArc, 360.0 ); + + maxArc = minArc + angle; + if ( maxArc > 360.0 ) + { + // QwtRoundScaleDraw::setAngleRange accepts only values + // in the range [-360.0..360.0] + minArc -= 360.0; + maxArc -= 360.0; + } + + if ( d_data->direction == QwtDial::CounterClockwise ) + qSwap( minArc, maxArc ); + + painter->setFont( font() ); + + d_data->scaleDraw->setAngleRange( minArc, maxArc ); + d_data->scaleDraw->setRadius( radius ); + d_data->scaleDraw->moveCenter( center ); + + QPalette pal = palette(); + + const QColor textColor = pal.color( QPalette::Text ); + pal.setColor( QPalette::WindowText, textColor ); //ticks, backbone + + painter->setPen( QPen( textColor, d_data->scaleDraw->penWidth() ) ); + + painter->setBrush( Qt::red ); + d_data->scaleDraw->draw( painter, pal ); +} + +/*! + Draw the contents inside the scale + + Paints nothing. + + \param painter Painter + \param center Center of the contents circle + \param radius Radius of the contents circle +*/ + +void QwtDial::drawScaleContents( QPainter *painter, + const QPointF ¢er, double radius ) const +{ + Q_UNUSED(painter); + Q_UNUSED(center); + Q_UNUSED(radius); +} + +/*! + Set a needle for the dial + + Qwt is missing a set of good looking needles. + Contributions are very welcome. + + \param needle Needle + \warning The needle will be deleted, when a different needle is + set or in ~QwtDial() +*/ +void QwtDial::setNeedle( QwtDialNeedle *needle ) +{ + if ( needle != d_data->needle ) + { + if ( d_data->needle ) + delete d_data->needle; + + d_data->needle = needle; + update(); + } +} + +/*! + \return needle + \sa setNeedle() +*/ +const QwtDialNeedle *QwtDial::needle() const +{ + return d_data->needle; +} + +/*! + \return needle + \sa setNeedle() +*/ +QwtDialNeedle *QwtDial::needle() +{ + return d_data->needle; +} + +//! QwtDoubleRange update hook +void QwtDial::rangeChange() +{ + updateScale(); +} + +/*! + Update the scale with the current attributes + \sa setScale() +*/ +void QwtDial::updateScale() +{ + if ( d_data->scaleDraw ) + { + QwtLinearScaleEngine scaleEngine; + + const QwtScaleDiv scaleDiv = scaleEngine.divideScale( + minValue(), maxValue(), + d_data->maxMajIntv, d_data->maxMinIntv, d_data->scaleStep ); + + d_data->scaleDraw->setTransformation( scaleEngine.transformation() ); + d_data->scaleDraw->setScaleDiv( scaleDiv ); + } +} + +//! Return the scale draw +QwtDialScaleDraw *QwtDial::scaleDraw() +{ + return d_data->scaleDraw; +} + +//! Return the scale draw +const QwtDialScaleDraw *QwtDial::scaleDraw() const +{ + return d_data->scaleDraw; +} + +/*! + Set an individual scale draw + + \param scaleDraw Scale draw + \warning The previous scale draw is deleted +*/ +void QwtDial::setScaleDraw( QwtDialScaleDraw *scaleDraw ) +{ + if ( scaleDraw != d_data->scaleDraw ) + { + if ( d_data->scaleDraw ) + delete d_data->scaleDraw; + + d_data->scaleDraw = scaleDraw; + updateScale(); + update(); + } +} + +/*! + Change the intervals of the scale + + \param maxMajIntv Maximum for the number of major steps + \param maxMinIntv Maximum number of minor steps + \param step Step size + + \sa QwtScaleEngine::divideScale() +*/ +void QwtDial::setScale( int maxMajIntv, int maxMinIntv, double step ) +{ + d_data->maxMajIntv = maxMajIntv; + d_data->maxMinIntv = maxMinIntv; + d_data->scaleStep = step; + + updateScale(); +} + +/*! + A wrapper method for accessing the scale draw. + + \param components Scale components + \sa QwtAbstractScaleDraw::enableComponent() +*/ +void QwtDial::setScaleComponents( + QwtAbstractScaleDraw::ScaleComponents components ) +{ + if ( components == 0 ) + setScaleDraw( NULL ); + + QwtDialScaleDraw *sd = d_data->scaleDraw; + if ( sd == NULL ) + return; + + sd->enableComponent( QwtAbstractScaleDraw::Backbone, + components & QwtAbstractScaleDraw::Backbone ); + + sd->enableComponent( QwtAbstractScaleDraw::Ticks, + components & QwtAbstractScaleDraw::Ticks ); + + sd->enableComponent( QwtAbstractScaleDraw::Labels, + components & QwtAbstractScaleDraw::Labels ); +} + +/*! + Assign length and width of the ticks + + \param minLen Length of the minor ticks + \param medLen Length of the medium ticks + \param majLen Length of the major ticks + \param penWidth Width of the pen for all ticks + + \sa QwtAbstractScaleDraw::setTickLength(), QwtDialScaleDraw::setPenWidth() +*/ +void QwtDial::setScaleTicks( int minLen, int medLen, + int majLen, int penWidth ) +{ + QwtDialScaleDraw *sd = d_data->scaleDraw; + if ( sd ) + { + sd->setTickLength( QwtScaleDiv::MinorTick, minLen ); + sd->setTickLength( QwtScaleDiv::MediumTick, medLen ); + sd->setTickLength( QwtScaleDiv::MajorTick, majLen ); + sd->setPenWidth( penWidth ); + } +} + +/*! + Find the label for a value + + \param value Value + \return label +*/ +QwtText QwtDial::scaleLabel( double value ) const +{ +#if 1 + if ( value == -0 ) + value = 0; +#endif + + return QString::number( value ); +} + +//! \return Lower limit of the scale arc +double QwtDial::minScaleArc() const +{ + return d_data->minScaleArc; +} + +//! \return Upper limit of the scale arc +double QwtDial::maxScaleArc() const +{ + return d_data->maxScaleArc; +} + +/*! + \brief Change the origin + + The origin is the angle where scale and needle is relative to. + + \param origin New origin + \sa origin() +*/ +void QwtDial::setOrigin( double origin ) +{ + d_data->origin = origin; + update(); +} + +/*! + The origin is the angle where scale and needle is relative to. + + \return Origin of the dial + \sa setOrigin() +*/ +double QwtDial::origin() const +{ + return d_data->origin; +} + +/*! + Change the arc of the scale + + \param minArc Lower limit + \param maxArc Upper limit +*/ +void QwtDial::setScaleArc( double minArc, double maxArc ) +{ + if ( minArc != 360.0 && minArc != -360.0 ) + minArc = ::fmod( minArc, 360.0 ); + if ( maxArc != 360.0 && maxArc != -360.0 ) + maxArc = ::fmod( maxArc, 360.0 ); + + d_data->minScaleArc = qMin( minArc, maxArc ); + d_data->maxScaleArc = qMax( minArc, maxArc ); + if ( d_data->maxScaleArc - d_data->minScaleArc > 360.0 ) + d_data->maxScaleArc = d_data->minScaleArc + 360.0; + + update(); +} + +//! QwtDoubleRange update hook +void QwtDial::valueChange() +{ + update(); + QwtAbstractSlider::valueChange(); +} + +/*! + \return Size hint +*/ +QSize QwtDial::sizeHint() const +{ + int sh = 0; + if ( d_data->scaleDraw ) + sh = qCeil( d_data->scaleDraw->extent( font() ) ); + + const int d = 6 * sh + 2 * lineWidth(); + + QSize hint( d, d ); + if ( !isReadOnly() ) + hint = hint.expandedTo( QApplication::globalStrut() ); + + return hint; +} + +/*! + \brief Return a minimum size hint + \warning The return value of QwtDial::minimumSizeHint() depends on the + font and the scale. +*/ +QSize QwtDial::minimumSizeHint() const +{ + int sh = 0; + if ( d_data->scaleDraw ) + sh = qCeil( d_data->scaleDraw->extent( font() ) ); + + const int d = 3 * sh + 2 * lineWidth(); + + return QSize( d, d ); +} + +static double line2Radians( const QPointF &p1, const QPointF &p2 ) +{ + const QPointF p = p2 - p1; + + double angle; + if ( p.x() == 0 ) + angle = ( p.y() <= 0.0 ) ? M_PI_2 : 3 * M_PI_2; + else + { + angle = qAtan( double( -p.y() ) / double( p.x() ) ); + if ( p.x() < 0.0 ) + angle += M_PI; + if ( angle < 0.0 ) + angle += 2 * M_PI; + } + return 360.0 - angle * 180.0 / M_PI; +} + +/*! + Find the value for a given position + + \param pos Position + \return Value +*/ +double QwtDial::getValue( const QPoint &pos ) +{ + if ( d_data->maxScaleArc == d_data->minScaleArc || maxValue() == minValue() ) + return minValue(); + + double dir = line2Radians( innerRect().center(), pos ) - d_data->origin; + if ( dir < 0.0 ) + dir += 360.0; + + if ( mode() == RotateScale ) + dir = 360.0 - dir; + + // The position might be in the area that is outside the scale arc. + // We need the range of the scale if it was a complete circle. + + const double completeCircle = 360.0 / ( d_data->maxScaleArc - d_data->minScaleArc ) + * ( maxValue() - minValue() ); + + double posValue = minValue() + completeCircle * dir / 360.0; + + if ( scrollMode() == ScrMouse ) + { + if ( d_data->previousDir >= 0.0 ) // valid direction + { + // We have to find out whether the mouse is moving + // clock or counter clockwise + + bool clockWise = false; + + const double angle = dir - d_data->previousDir; + if ( ( angle >= 0.0 && angle <= 180.0 ) || angle < -180.0 ) + clockWise = true; + + if ( clockWise ) + { + if ( dir < d_data->previousDir && mouseOffset() > 0.0 ) + { + // We passed 360 -> 0 + setMouseOffset( mouseOffset() - completeCircle ); + } + + if ( wrapping() ) + { + if ( posValue - mouseOffset() > maxValue() ) + { + // We passed maxValue and the value will be set + // to minValue. We have to adjust the mouseOffset. + + setMouseOffset( posValue - minValue() ); + } + } + else + { + if ( posValue - mouseOffset() > maxValue() || + value() == maxValue() ) + { + // We fix the value at maxValue by adjusting + // the mouse offset. + + setMouseOffset( posValue - maxValue() ); + } + } + } + else + { + if ( dir > d_data->previousDir && mouseOffset() < 0.0 ) + { + // We passed 0 -> 360 + setMouseOffset( mouseOffset() + completeCircle ); + } + + if ( wrapping() ) + { + if ( posValue - mouseOffset() < minValue() ) + { + // We passed minValue and the value will be set + // to maxValue. We have to adjust the mouseOffset. + + setMouseOffset( posValue - maxValue() ); + } + } + else + { + if ( posValue - mouseOffset() < minValue() || + value() == minValue() ) + { + // We fix the value at minValue by adjusting + // the mouse offset. + + setMouseOffset( posValue - minValue() ); + } + } + } + } + d_data->previousDir = dir; + } + + return posValue; +} + +/*! + See QwtAbstractSlider::getScrollMode() + + \param pos point where the mouse was pressed + \retval scrollMode The scrolling mode + \retval direction direction: 1, 0, or -1. + + \sa QwtAbstractSlider::getScrollMode() +*/ +void QwtDial::getScrollMode( const QPoint &pos, + QwtAbstractSlider::ScrollMode &scrollMode, int &direction ) const +{ + direction = 0; + scrollMode = QwtAbstractSlider::ScrNone; + + const QRegion region( innerRect().toRect(), QRegion::Ellipse ); + if ( region.contains( pos ) && pos != innerRect().center() ) + { + scrollMode = QwtAbstractSlider::ScrMouse; + d_data->previousDir = -1.0; + } +} + +/*! + Handles key events + + - Key_Down, KeyLeft\n + Decrement by 1 + - Key_Prior\n + Decrement by pageSize() + - Key_Home\n + Set the value to minValue() + + - Key_Up, KeyRight\n + Increment by 1 + - Key_Next\n + Increment by pageSize() + - Key_End\n + Set the value to maxValue() + + \param event Key event + \sa isReadOnly() +*/ +void QwtDial::keyPressEvent( QKeyEvent *event ) +{ + if ( isReadOnly() ) + { + event->ignore(); + return; + } + + if ( !isValid() ) + return; + + double previous = prevValue(); + switch ( event->key() ) + { + case Qt::Key_Down: + case Qt::Key_Left: + QwtDoubleRange::incValue( -1 ); + break; + case Qt::Key_PageUp: + QwtDoubleRange::incValue( -pageSize() ); + break; + case Qt::Key_Home: + setValue( minValue() ); + break; + + case Qt::Key_Up: + case Qt::Key_Right: + QwtDoubleRange::incValue( 1 ); + break; + case Qt::Key_PageDown: + QwtDoubleRange::incValue( pageSize() ); + break; + case Qt::Key_End: + setValue( maxValue() ); + break; + default:; + event->ignore(); + } + + if ( value() != previous ) + Q_EMIT sliderMoved( value() ); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_dial.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_dial.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_dial.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_dial.h 2011-04-15 10:48:46.000000000 +0000 @@ -0,0 +1,215 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_DIAL_H +#define QWT_DIAL_H 1 + +#include "qwt_global.h" +#include "qwt_abstract_slider.h" +#include "qwt_round_scale_draw.h" +#include +#include + +class QwtDialNeedle; +class QwtDial; + +/*! + \brief A special scale draw made for QwtDial + + \sa QwtDial, QwtCompass +*/ +class QWT_EXPORT QwtDialScaleDraw: public QwtRoundScaleDraw +{ +public: + explicit QwtDialScaleDraw( QwtDial * ); + + virtual QwtText label( double value ) const; + + void setPenWidth( double ); + double penWidth() const; + +private: + QwtDial *d_parent; + double d_penWidth; +}; + +/*! + \brief QwtDial class provides a rounded range control. + + QwtDial is intended as base class for dial widgets like + speedometers, compass widgets, clocks ... + + \image html dials2.png + + A dial contains a scale and a needle indicating the current value + of the dial. Depending on Mode one of them is fixed and the + other is rotating. If not isReadOnly() the + dial can be rotated by dragging the mouse or using keyboard inputs + (see keyPressEvent()). A dial might be wrapping, what means + a rotation below/above one limit continues on the other limit (f.e compass). + The scale might cover any arc of the dial, its values are related to + the origin() of the dial. + + Qwt is missing a set of good looking needles (QwtDialNeedle). + Contributions are very welcome. + + \sa QwtCompass, QwtAnalogClock, QwtDialNeedle + \note The examples/dials example shows different types of dials. +*/ + +class QWT_EXPORT QwtDial: public QwtAbstractSlider +{ + Q_OBJECT + + Q_ENUMS( Shadow ) + Q_ENUMS( Mode ) + Q_ENUMS( Direction ) + + Q_PROPERTY( int lineWidth READ lineWidth WRITE setLineWidth ) + Q_PROPERTY( Shadow frameShadow READ frameShadow WRITE setFrameShadow ) + Q_PROPERTY( Mode mode READ mode WRITE setMode ) + Q_PROPERTY( double origin READ origin WRITE setOrigin ) + Q_PROPERTY( bool wrapping READ wrapping WRITE setWrapping ) + Q_PROPERTY( Direction direction READ direction WRITE setDirection ) + + friend class QwtDialScaleDraw; +public: + + /*! + \brief Frame shadow + + Unfortunately it is not possible to use QFrame::Shadow + as a property of a widget that is not derived from QFrame. + The following enum is made for the designer only. It is safe + to use QFrame::Shadow instead. + */ + enum Shadow + { + //! QFrame::Plain + Plain = QFrame::Plain, + + //! QFrame::Raised + Raised = QFrame::Raised, + + //! QFrame::Sunken + Sunken = QFrame::Sunken + }; + + //! Mode controlling wether the needle or the scale is rotating + enum Mode + { + //! The needle is rotating + RotateNeedle, + + //! The needle is fixed, the scales are rotating + RotateScale + }; + + //! Direction of the dial + enum Direction + { + //! Clockwise + Clockwise, + + //! Counter clockwise + CounterClockwise + }; + + explicit QwtDial( QWidget *parent = NULL ); + virtual ~QwtDial(); + + void setFrameShadow( Shadow ); + Shadow frameShadow() const; + + void setLineWidth( int ); + int lineWidth() const; + + void setMode( Mode ); + Mode mode() const; + + virtual void setWrapping( bool ); + bool wrapping() const; + + virtual void setScale( int maxMajIntv, int maxMinIntv, double step = 0.0 ); + + void setScaleArc( double min, double max ); + void setScaleComponents( QwtAbstractScaleDraw::ScaleComponents ); + void setScaleTicks( int minLen, int medLen, int majLen, int penWidth = 1 ); + + double minScaleArc() const; + double maxScaleArc() const; + + virtual void setOrigin( double ); + double origin() const; + + void setDirection( Direction ); + Direction direction() const; + + virtual void setNeedle( QwtDialNeedle * ); + const QwtDialNeedle *needle() const; + QwtDialNeedle *needle(); + + QRectF boundingRect() const; + QRectF innerRect() const; + virtual QRectF scaleInnerRect() const; + + virtual QSize sizeHint() const; + virtual QSize minimumSizeHint() const; + + virtual void setScaleDraw( QwtDialScaleDraw * ); + + QwtDialScaleDraw *scaleDraw(); + const QwtDialScaleDraw *scaleDraw() const; + +protected: + virtual void paintEvent( QPaintEvent * ); + virtual void keyPressEvent( QKeyEvent * ); + + virtual void drawFrame( QPainter *p ); + virtual void drawContents( QPainter * ) const; + virtual void drawFocusIndicator( QPainter * ) const; + + virtual void drawScale( + QPainter *, const QPointF ¢er, + double radius, double origin, + double arcMin, double arcMax ) const; + + /*! + Draw the contents inside the scale + + Paints nothing. + + \param painter Painter + \param center Center of the contents circle + \param radius Radius of the contents circle + */ + virtual void drawScaleContents( QPainter *painter, + const QPointF ¢er, double radius ) const; + + virtual void drawNeedle( QPainter *, const QPointF &, + double radius, double direction, QPalette::ColorGroup ) const; + + virtual QwtText scaleLabel( double ) const; + void updateScale(); + + virtual void rangeChange(); + virtual void valueChange(); + + virtual double getValue( const QPoint & ); + virtual void getScrollMode( const QPoint &, + QwtAbstractSlider::ScrollMode &, int &direction ) const; + +private: + void initDial(); + + class PrivateData; + PrivateData *d_data; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_dial_needle.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_dial_needle.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_dial_needle.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_dial_needle.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,452 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_dial_needle.h" +#include "qwt_global.h" +#include "qwt_math.h" +#include "qwt_painter.h" +#include +#include + +static void qwtDrawStyle1Needle( QPainter *painter, + const QPalette &palette, QPalette::ColorGroup colorGroup, + double length ) +{ + const double r[] = { 0.4, 0.3, 1, 0.8, 1, 0.3, 0.4 }; + const double a[] = { -45, -20, -15, 0, 15, 20, 45 }; + + QPainterPath path; + for ( int i = 0; i < 7; i++ ) + { + const double angle = a[i] / 180.0 * M_PI; + const double radius = r[i] * length; + + const double x = radius * qCos( angle ); + const double y = radius * qSin( angle ); + + path.lineTo( x, -y ); + } + + painter->setPen( Qt::NoPen ); + painter->setBrush( palette.brush( colorGroup, QPalette::Light ) ); + painter->drawPath( path ); +} + +static void qwtDrawStyle2Needle( QPainter *painter, + const QPalette &palette, QPalette::ColorGroup colorGroup, double length ) +{ + const double ratioX = 0.7; + const double ratioY = 0.3; + + QPainterPath path1; + path1.lineTo( ratioX * length, 0.0 ); + path1.lineTo( length, ratioY * length ); + + QPainterPath path2; + path2.lineTo( ratioX * length, 0.0 ); + path2.lineTo( length, -ratioY * length ); + + painter->setPen( Qt::NoPen ); + + painter->setBrush( palette.brush( colorGroup, QPalette::Light ) ); + painter->drawPath( path1 ); + + painter->setBrush( palette.brush( colorGroup, QPalette::Dark ) ); + painter->drawPath( path2 ); +} + +static void qwtDrawShadedPointer( QPainter *painter, + const QColor &lightColor, const QColor &darkColor, + double length, double width ) +{ + const double peak = qMax( length / 10.0, 5.0 ); + + const double knobWidth = width + 8; + QRectF knobRect( 0, 0, knobWidth, knobWidth ); + knobRect.moveCenter( QPointF(0, 0) ); + + QPainterPath path1; + path1.lineTo( 0.0, 0.5 * width ); + path1.lineTo( length - peak, 0.5 * width ); + path1.lineTo( length, 0.0 ); + path1.lineTo( 0.0, 0.0 ); + + QPainterPath arcPath1; + arcPath1.arcTo( knobRect, 0.0, -90.0 ); + + path1 = path1.united( arcPath1 ); + + QPainterPath path2; + path2.lineTo( 0.0, -0.5 * width ); + path2.lineTo( length - peak, -0.5 * width ); + path2.lineTo( length, 0.0 ); + path2.lineTo( 0.0, 0.0 ); + + QPainterPath arcPath2; + arcPath2.arcTo( knobRect, 0.0, 90.0 ); + + path2 = path2.united( arcPath2 ); + + painter->setPen( Qt::NoPen ); + + painter->setBrush( lightColor ); + painter->drawPath( path1 ); + + painter->setBrush( darkColor ); + painter->drawPath( path2 ); +} + +static void qwtDrawArrowNeedle( QPainter *painter, + const QPalette &palette, QPalette::ColorGroup colorGroup, + double length, double width ) +{ + if ( width <= 0 ) + width = qMax( length * 0.06, 9.0 ); + + const double peak = qMax( 2.0, 0.4 * width ); + + QPainterPath path; + path.moveTo( 0.0, 0.5 * width ); + path.lineTo( length - peak, 0.3 * width ); + path.lineTo( length, 0.0 ); + path.lineTo( length - peak, -0.3 * width ); + path.lineTo( 0.0, -0.5 * width ); + + QRectF br = path.boundingRect(); + + QPalette pal( palette.color( QPalette::Mid ) ); + QColor c1 = pal.color( QPalette::Light ); + QColor c2 = pal.color( QPalette::Dark ); + + QLinearGradient gradient( br.topLeft(), br.bottomLeft() ); + gradient.setColorAt( 0.0, c1 ); + gradient.setColorAt( 0.5, c1 ); + gradient.setColorAt( 0.5001, c2 ); + gradient.setColorAt( 1.0, c2 ); + + QPen pen( gradient, 1 ); + pen.setJoinStyle( Qt::MiterJoin ); + + painter->setPen( pen ); + painter->setBrush( palette.brush( colorGroup, QPalette::Mid ) ); + + painter->drawPath( path ); +} + +static void qwtDrawTriangleNeedle( QPainter *painter, + const QPalette &palette, QPalette::ColorGroup colorGroup, + double length ) +{ + const double width = qRound( length / 3.0 ); + + QPainterPath path[4]; + + path[0].lineTo( length, 0.0 ); + path[0].lineTo( 0.0, width / 2 ); + + path[1].lineTo( length, 0.0 ); + path[1].lineTo( 0.0, -width / 2 ); + + path[2].lineTo( -length, 0.0 ); + path[2].lineTo( 0.0, width / 2 ); + + path[3].lineTo( -length, 0.0 ); + path[3].lineTo( 0.0, -width / 2 ); + + + const int colorOffset = 10; + const QColor darkColor = palette.color( colorGroup, QPalette::Dark ); + const QColor lightColor = palette.color( colorGroup, QPalette::Light ); + + QColor color[4]; + color[0] = darkColor.light( 100 + colorOffset ); + color[1] = darkColor.dark( 100 + colorOffset ); + color[2] = lightColor.light( 100 + colorOffset ); + color[3] = lightColor.dark( 100 + colorOffset ); + + painter->setPen( Qt::NoPen ); + + for ( int i = 0; i < 4; i++ ) + { + painter->setBrush( color[i] ); + painter->drawPath( path[i] ); + } +} + +//! Constructor +QwtDialNeedle::QwtDialNeedle(): + d_palette( QApplication::palette() ) +{ +} + +//! Destructor +QwtDialNeedle::~QwtDialNeedle() +{ +} + +/*! + Sets the palette for the needle. + + \param palette New Palette +*/ +void QwtDialNeedle::setPalette( const QPalette &palette ) +{ + d_palette = palette; +} + +/*! + \return the palette of the needle. +*/ +const QPalette &QwtDialNeedle::palette() const +{ + return d_palette; +} + +/*! + Draw the needle + + \param painter Painter + \param center Center of the dial, start position for the needle + \param length Length of the needle + \param direction Direction of the needle, in degrees counter clockwise + \param colorGroup Color group, used for painting +*/ +void QwtDialNeedle::draw( QPainter *painter, + const QPointF ¢er, double length, double direction, + QPalette::ColorGroup colorGroup ) const +{ + painter->save(); + + painter->translate( center ); + painter->rotate( -direction ); + + drawNeedle( painter, length, colorGroup ); + + painter->restore(); +} + +//! Draw the knob +void QwtDialNeedle::drawKnob( QPainter *painter, + double width, const QBrush &brush, bool sunken ) const +{ + QPalette palette( brush.color() ); + + QColor c1 = palette.color( QPalette::Light ); + QColor c2 = palette.color( QPalette::Dark ); + + if ( sunken ) + qSwap( c1, c2 ); + + QRectF rect( 0.0, 0.0, width, width ); + rect.moveCenter( painter->combinedTransform().map( QPointF() ) ); + + QLinearGradient gradient( rect.topLeft(), rect.bottomRight() ); + gradient.setColorAt( 0.0, c1 ); + gradient.setColorAt( 0.3, c1 ); + gradient.setColorAt( 0.7, c2 ); + gradient.setColorAt( 1.0, c2 ); + + painter->save(); + + painter->resetTransform(); + + painter->setPen( QPen( gradient, 1 ) ); + painter->setBrush( brush ); + painter->drawEllipse( rect ); + + painter->restore(); +} + +/*! + Constructor + + \param style Style + \param hasKnob With/Without knob + \param mid Middle color + \param base Base color +*/ +QwtDialSimpleNeedle::QwtDialSimpleNeedle( Style style, bool hasKnob, + const QColor &mid, const QColor &base ): + d_style( style ), + d_hasKnob( hasKnob ), + d_width( -1 ) +{ + QPalette palette; + for ( int i = 0; i < QPalette::NColorGroups; i++ ) + { + palette.setColor( ( QPalette::ColorGroup )i, + QPalette::Mid, mid ); + palette.setColor( ( QPalette::ColorGroup )i, + QPalette::Base, base ); + } + + setPalette( palette ); +} + +/*! + Set the width of the needle + \param width Width + \sa width() +*/ +void QwtDialSimpleNeedle::setWidth( double width ) +{ + d_width = width; +} + +/*! + \return the width of the needle + \sa setWidth() +*/ +double QwtDialSimpleNeedle::width() const +{ + return d_width; +} + +/*! + Draw the needle + + \param painter Painter + \param length Length of the needle + \param colorGroup Color group, used for painting +*/ +void QwtDialSimpleNeedle::drawNeedle( QPainter *painter, + double length, QPalette::ColorGroup colorGroup ) const +{ + double knobWidth = 0.0; + double width = d_width; + + if ( d_style == Arrow ) + { + if ( width <= 0.0 ) + width = qMax(length * 0.06, 6.0); + + qwtDrawArrowNeedle( painter, + palette(), colorGroup, length, width ); + + knobWidth = qMin( width * 2.0, 0.2 * length ); + } + else + { + if ( width <= 0.0 ) + width = 5.0; + + QPen pen ( palette().brush( colorGroup, QPalette::Mid ), width ); + pen.setCapStyle( Qt::FlatCap ); + + painter->setPen( pen ); + painter->drawLine( 0, 0, length, 0 ); + + knobWidth = qMax( width * 3.0, 5.0 ); + } + + if ( d_hasKnob && knobWidth > 0.0 ) + { + drawKnob( painter, knobWidth, + palette().brush( colorGroup, QPalette::Base ), false ); + } +} + +//! Constructor + +QwtCompassMagnetNeedle::QwtCompassMagnetNeedle( Style style, + const QColor &light, const QColor &dark ): + d_style( style ) +{ + QPalette palette; + for ( int i = 0; i < QPalette::NColorGroups; i++ ) + { + palette.setColor( ( QPalette::ColorGroup )i, + QPalette::Light, light ); + palette.setColor( ( QPalette::ColorGroup )i, + QPalette::Dark, dark ); + palette.setColor( ( QPalette::ColorGroup )i, + QPalette::Base, Qt::gray ); + } + + setPalette( palette ); +} + +/*! + Draw the needle + + \param painter Painter + \param length Length of the needle + \param colorGroup Color group, used for painting +*/ +void QwtCompassMagnetNeedle::drawNeedle( QPainter *painter, + double length, QPalette::ColorGroup colorGroup ) const +{ + if ( d_style == ThinStyle ) + { + const double width = qMax( length / 6.0, 3.0 ); + + const int colorOffset = 10; + + const QColor light = palette().color( colorGroup, QPalette::Light ); + const QColor dark = palette().color( colorGroup, QPalette::Dark ); + + qwtDrawShadedPointer( painter, + dark.light( 100 + colorOffset ), + dark.dark( 100 + colorOffset ), + length, width ); + + painter->rotate( 180.0 ); + + qwtDrawShadedPointer( painter, + light.light( 100 + colorOffset ), + light.dark( 100 + colorOffset ), + length, width ); + + const QBrush baseBrush = palette().brush( colorGroup, QPalette::Base ); + drawKnob( painter, width, baseBrush, true ); + } + else + { + qwtDrawTriangleNeedle( painter, palette(), colorGroup, length ); + } +} + +/*! + Constructor + + \param style Arrow style + \param light Light color + \param dark Dark color +*/ +QwtCompassWindArrow::QwtCompassWindArrow( Style style, + const QColor &light, const QColor &dark ): + d_style( style ) +{ + QPalette palette; + for ( int i = 0; i < QPalette::NColorGroups; i++ ) + { + palette.setColor( ( QPalette::ColorGroup )i, + QPalette::Light, light ); + palette.setColor( ( QPalette::ColorGroup )i, + QPalette::Dark, dark ); + } + + setPalette( palette ); +} + +/*! + Draw the needle + + \param painter Painter + \param length Length of the needle + \param colorGroup Color group, used for painting +*/ +void QwtCompassWindArrow::drawNeedle( QPainter *painter, + double length, QPalette::ColorGroup colorGroup ) const +{ + if ( d_style == Style1 ) + qwtDrawStyle1Needle( painter, palette(), colorGroup, length ); + else + qwtDrawStyle2Needle( painter, palette(), colorGroup, length ); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_dial_needle.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_dial_needle.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_dial_needle.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_dial_needle.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,190 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_DIAL_NEEDLE_H +#define QWT_DIAL_NEEDLE_H 1 + +#include "qwt_global.h" +#include + +class QPainter; +class QPoint; + +/*! + \brief Base class for needles that can be used in a QwtDial. + + QwtDialNeedle is a pointer that indicates a value by pointing + to a specific direction. + + Qwt is missing a set of good looking needles. + Contributions are very welcome. + + \sa QwtDial, QwtCompass +*/ + +class QWT_EXPORT QwtDialNeedle +{ +public: + QwtDialNeedle(); + virtual ~QwtDialNeedle(); + + virtual void setPalette( const QPalette & ); + const QPalette &palette() const; + + virtual void draw( QPainter *painter, const QPointF ¢er, + double length, double direction, + QPalette::ColorGroup = QPalette::Active ) const; + +protected: + /*! + \brief Draw the needle + + The origin of the needle is at position (0.0, 0.0 ) + pointing in direction 0.0 ( = east ). + + The painter is already initilaized with translation and + rotation. + + \param painter Painter + \param length Length of the needle + \param colorGroup Color group, used for painting + + \sa setPalette(), palette() + */ + virtual void drawNeedle( QPainter *painter, + double length, QPalette::ColorGroup colorGroup ) const = 0; + + virtual void drawKnob( QPainter *, double width, + const QBrush &, bool sunken ) const; + +private: + QPalette d_palette; +}; + +/*! + \brief A needle for dial widgets + + The following colors are used: + + - QPalette::Mid\n + Pointer + - QPalette::Base\n + Knob + + \sa QwtDial, QwtCompass +*/ + +class QWT_EXPORT QwtDialSimpleNeedle: public QwtDialNeedle +{ +public: + //! Style of the needle + enum Style + { + //! Arrow + Arrow, + + //! A straight line from the center + Ray + }; + + QwtDialSimpleNeedle( Style, bool hasKnob = true, + const QColor &mid = Qt::gray, const QColor &base = Qt::darkGray ); + + void setWidth( double width ); + double width() const; + +protected: + virtual void drawNeedle( QPainter *, double length, + QPalette::ColorGroup ) const; + +private: + Style d_style; + bool d_hasKnob; + double d_width; +}; + +/*! + \brief A magnet needle for compass widgets + + A magnet needle points to two opposite directions indicating + north and south. + + The following colors are used: + - QPalette::Light\n + Used for pointing south + - QPalette::Dark\n + Used for pointing north + - QPalette::Base\n + Knob (ThinStyle only) + + \sa QwtDial, QwtCompass +*/ + +class QWT_EXPORT QwtCompassMagnetNeedle: public QwtDialNeedle +{ +public: + //! Style of the needle + enum Style + { + //! A needle with a triangular shape + TriangleStyle, + + //! A thin needle + ThinStyle + }; + + QwtCompassMagnetNeedle( Style = TriangleStyle, + const QColor &light = Qt::white, const QColor &dark = Qt::red ); + +protected: + virtual void drawNeedle( QPainter *, + double length, QPalette::ColorGroup ) const; + +private: + Style d_style; +}; + +/*! + \brief An indicator for the wind direction + + QwtCompassWindArrow shows the direction where the wind comes from. + + - QPalette::Light\n + Used for Style1, or the light half of Style2 + - QPalette::Dark\n + Used for the dark half of Style2 + + \sa QwtDial, QwtCompass +*/ + +class QWT_EXPORT QwtCompassWindArrow: public QwtDialNeedle +{ +public: + //! Style of the arrow + enum Style + { + //! A needle pointing to the center + Style1, + + //! A needle pointing to the center + Style2 + }; + + QwtCompassWindArrow( Style, const QColor &light = Qt::white, + const QColor &dark = Qt::gray ); + +protected: + virtual void drawNeedle( QPainter *, + double length, QPalette::ColorGroup ) const; + +private: + Style d_style; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_double_range.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_double_range.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_double_range.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_double_range.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,410 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_double_range.h" +#include "qwt_math.h" + +#if QT_VERSION < 0x040601 +#define qFabs(x) ::fabs(x) +#endif + +class QwtDoubleRange::PrivateData +{ +public: + PrivateData(): + minValue( 0.0 ), + maxValue( 0.0 ), + step( 1.0 ), + pageSize( 1 ), + isValid( false ), + value( 0.0 ), + exactValue( 0.0 ), + exactPrevValue( 0.0 ), + prevValue( 0.0 ), + periodic( false ) + { + } + + double minValue; + double maxValue; + double step; + int pageSize; + + bool isValid; + double value; + double exactValue; + double exactPrevValue; + double prevValue; + + bool periodic; +}; + +/*! + The range is initialized to [0.0, 100.0], the + step size to 1.0, and the value to 0.0. +*/ +QwtDoubleRange::QwtDoubleRange() +{ + d_data = new PrivateData(); +} + +//! Destroys the QwtDoubleRange +QwtDoubleRange::~QwtDoubleRange() +{ + delete d_data; +} + +//! Set the value to be valid/invalid +void QwtDoubleRange::setValid( bool isValid ) +{ + if ( isValid != d_data->isValid ) + { + d_data->isValid = isValid; + valueChange(); + } +} + +//! Indicates if the value is valid +bool QwtDoubleRange::isValid() const +{ + return d_data->isValid; +} + +void QwtDoubleRange::setNewValue( double value, bool align ) +{ + d_data->prevValue = d_data->value; + + const double vmin = qMin( d_data->minValue, d_data->maxValue ); + const double vmax = qMax( d_data->minValue, d_data->maxValue ); + + if ( value < vmin ) + { + if ( d_data->periodic && vmin != vmax ) + { + d_data->value = value + + qwtCeilF( ( vmin - value ) / ( vmax - vmin ) ) * ( vmax - vmin ); + } + else + d_data->value = vmin; + } + else if ( value > vmax ) + { + if ( ( d_data->periodic ) && ( vmin != vmax ) ) + { + d_data->value = value - + qwtCeilF( ( value - vmax ) / ( vmax - vmin ) ) * ( vmax - vmin ); + } + else + d_data->value = vmax; + } + else + { + d_data->value = value; + } + + d_data->exactPrevValue = d_data->exactValue; + d_data->exactValue = d_data->value; + + if ( align ) + { + if ( d_data->step != 0.0 ) + { + d_data->value = d_data->minValue + + qRound( ( d_data->value - d_data->minValue ) / d_data->step ) * d_data->step; + } + else + d_data->value = d_data->minValue; + + const double minEps = 1.0e-10; + // correct rounding error at the border + if ( qFabs( d_data->value - d_data->maxValue ) < minEps * qAbs( d_data->step ) ) + d_data->value = d_data->maxValue; + + // correct rounding error if value = 0 + if ( qFabs( d_data->value ) < minEps * qAbs( d_data->step ) ) + d_data->value = 0.0; + } + + if ( !d_data->isValid || d_data->prevValue != d_data->value ) + { + d_data->isValid = true; + valueChange(); + } +} + +/*! + \brief Adjust the value to the closest point in the step raster. + \param x value + \warning The value is clipped when it lies outside the range. + When the range is QwtDoubleRange::periodic, it will + be mapped to a point in the interval such that + \verbatim new value := x + n * (max. value - min. value)\endverbatim + with an integer number n. +*/ +void QwtDoubleRange::fitValue( double x ) +{ + setNewValue( x, true ); +} + + +/*! + \brief Set a new value without adjusting to the step raster + \param x new value + \warning The value is clipped when it lies outside the range. + When the range is QwtDoubleRange::periodic, it will + be mapped to a point in the interval such that + \verbatim new value := x + n * (max. value - min. value)\endverbatim + with an integer number n. +*/ +void QwtDoubleRange::setValue( double x ) +{ + setNewValue( x, false ); +} + +/*! + \brief Specify range and step size + + \param vmin lower boundary of the interval + \param vmax higher boundary of the interval + \param vstep step width + \param pageSize page size in steps + \warning + \li A change of the range changes the value if it lies outside the + new range. The current value + will *not* be adjusted to the new step raster. + \li vmax < vmin is allowed. + \li If the step size is left out or set to zero, it will be + set to 1/100 of the interval length. + \li If the step size has an absurd value, it will be corrected + to a better one. +*/ +void QwtDoubleRange::setRange( + double vmin, double vmax, double vstep, int pageSize ) +{ + const bool rchg = ( d_data->maxValue != vmax || d_data->minValue != vmin ); + + if ( rchg ) + { + d_data->minValue = vmin; + d_data->maxValue = vmax; + } + + // look if the step width has an acceptable + // value or otherwise change it. + setStep( vstep ); + + // limit page size + const int max = + int( qAbs( ( d_data->maxValue - d_data->minValue ) / d_data->step ) ); + d_data->pageSize = qBound( 0, pageSize, max ); + + // If the value lies out of the range, it + // will be changed. Note that it will not be adjusted to + // the new step width. + setNewValue( d_data->value, false ); + + // call notifier after the step width has been + // adjusted. + if ( rchg ) + rangeChange(); +} + +/*! + \brief Change the step raster + \param vstep new step width + \warning The value will \e not be adjusted to the new step raster. +*/ +void QwtDoubleRange::setStep( double vstep ) +{ + const double intv = d_data->maxValue - d_data->minValue; + + double newStep; + if ( vstep == 0.0 ) + { + const double defaultRelStep = 1.0e-2; + newStep = intv * defaultRelStep; + } + else + { + if ( ( intv > 0.0 && vstep < 0.0 ) || ( intv < 0.0 && vstep > 0.0 ) ) + newStep = -vstep; + else + newStep = vstep; + + const double minRelStep = 1.0e-10; + if ( qFabs( newStep ) < qFabs( minRelStep * intv ) ) + newStep = minRelStep * intv; + } + + if ( newStep != d_data->step ) + { + d_data->step = newStep; + stepChange(); + } +} + + +/*! + \brief Make the range periodic + + When the range is periodic, the value will be set to a point + inside the interval such that + + \verbatim point = value + n * width \endverbatim + + if the user tries to set a new value which is outside the range. + If the range is nonperiodic (the default), values outside the + range will be clipped. + + \param tf true for a periodic range +*/ +void QwtDoubleRange::setPeriodic( bool tf ) +{ + d_data->periodic = tf; +} + +/*! + \brief Increment the value by a specified number of steps + \param nSteps Number of steps to increment + \warning As a result of this operation, the new value will always be + adjusted to the step raster. +*/ +void QwtDoubleRange::incValue( int nSteps ) +{ + if ( isValid() ) + setNewValue( d_data->value + double( nSteps ) * d_data->step, true ); +} + +/*! + \brief Increment the value by a specified number of pages + \param nPages Number of pages to increment. + A negative number decrements the value. + \warning The Page size is specified in the constructor. +*/ +void QwtDoubleRange::incPages( int nPages ) +{ + if ( isValid() ) + { + const double off = d_data->step * d_data->pageSize * nPages; + setNewValue( d_data->value + off, true ); + } +} + +/*! + \brief Notify a change of value + + This virtual function is called whenever the value changes. + The default implementation does nothing. +*/ +void QwtDoubleRange::valueChange() +{ +} + + +/*! + \brief Notify a change of the range + + This virtual function is called whenever the range changes. + The default implementation does nothing. +*/ +void QwtDoubleRange::rangeChange() +{ +} + + +/*! + \brief Notify a change of the step size + + This virtual function is called whenever the step size changes. + The default implementation does nothing. +*/ +void QwtDoubleRange::stepChange() +{ +} + +/*! + \return the step size + \sa setStep(), setRange() +*/ +double QwtDoubleRange::step() const +{ + return qAbs( d_data->step ); +} + +/*! + \brief Returns the value of the second border of the range + + maxValue returns the value which has been specified + as the second parameter in QwtDoubleRange::setRange. + + \sa setRange() +*/ +double QwtDoubleRange::maxValue() const +{ + return d_data->maxValue; +} + +/*! + \brief Returns the value at the first border of the range + + minValue returns the value which has been specified + as the first parameter in setRange(). + + \sa setRange() +*/ +double QwtDoubleRange::minValue() const +{ + return d_data->minValue; +} + +/*! + \brief Returns true if the range is periodic + \sa setPeriodic() +*/ +bool QwtDoubleRange::periodic() const +{ + return d_data->periodic; +} + +//! Returns the page size in steps. +int QwtDoubleRange::pageSize() const +{ + return d_data->pageSize; +} + +//! Returns the current value. +double QwtDoubleRange::value() const +{ + return d_data->value; +} + +/*! + \brief Returns the exact value + + The exact value is the value which QwtDoubleRange::value would return + if the value were not adjusted to the step raster. It differs from + the current value only if fitValue() or incValue() have been used before. + This function is intended for internal use in derived classes. +*/ +double QwtDoubleRange::exactValue() const +{ + return d_data->exactValue; +} + +//! Returns the exact previous value +double QwtDoubleRange::exactPrevValue() const +{ + return d_data->exactPrevValue; +} + +//! Returns the previous value +double QwtDoubleRange::prevValue() const +{ + return d_data->prevValue; +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_double_range.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_double_range.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_double_range.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_double_range.h 2011-04-15 10:48:46.000000000 +0000 @@ -0,0 +1,78 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_DOUBLE_RANGE_H +#define QWT_DOUBLE_RANGE_H + +#include "qwt_global.h" + +/*! + \brief A class which controls a value within an interval + + This class is useful as a base class or a member for sliders. + It represents an interval of type double within which a value can + be moved. The value can be either an arbitrary point inside + the interval (see QwtDoubleRange::setValue), or it can be fitted + into a step raster (see QwtDoubleRange::fitValue and + QwtDoubleRange::incValue). + + As a special case, a QwtDoubleRange can be periodic, which means that + a value outside the interval will be mapped to a value inside the + interval when QwtDoubleRange::setValue(), QwtDoubleRange::fitValue(), + QwtDoubleRange::incValue() or QwtDoubleRange::incPages() are called. +*/ + +class QWT_EXPORT QwtDoubleRange +{ +public: + QwtDoubleRange(); + virtual ~QwtDoubleRange(); + + void setRange( double vmin, double vmax, + double vstep = 0.0, int pagesize = 1 ); + + void setValid( bool ); + bool isValid() const; + + virtual void setValue( double ); + double value() const; + + void setPeriodic( bool tf ); + bool periodic() const; + + void setStep( double ); + double step() const; + + double maxValue() const; + double minValue() const; + + int pageSize() const; + + virtual void incValue( int ); + virtual void incPages( int ); + virtual void fitValue( double ); + +protected: + + double exactValue() const; + double exactPrevValue() const; + double prevValue() const; + + virtual void valueChange(); + virtual void stepChange(); + virtual void rangeChange(); + +private: + void setNewValue( double value, bool align = false ); + + class PrivateData; + PrivateData *d_data; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_dyngrid_layout.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_dyngrid_layout.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_dyngrid_layout.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_dyngrid_layout.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,571 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_dyngrid_layout.h" +#include "qwt_math.h" +#include +#include + +class QwtDynGridLayout::PrivateData +{ +public: + PrivateData(): + isDirty( true ) + { + } + + void updateLayoutCache(); + + mutable QList itemList; + + uint maxCols; + uint numRows; + uint numCols; + + Qt::Orientations expanding; + + bool isDirty; + QVector itemSizeHints; +}; + +void QwtDynGridLayout::PrivateData::updateLayoutCache() +{ + itemSizeHints.resize( itemList.count() ); + + int index = 0; + + for ( QList::iterator it = itemList.begin(); + it != itemList.end(); ++it, index++ ) + { + itemSizeHints[ index ] = ( *it )->sizeHint(); + } + + isDirty = false; +} + +/*! + \param parent Parent widget + \param margin Margin + \param spacing Spacing +*/ + +QwtDynGridLayout::QwtDynGridLayout( QWidget *parent, + int margin, int spacing ): + QLayout( parent ) +{ + init(); + + setSpacing( spacing ); + setMargin( margin ); +} + +/*! + \param spacing Spacing +*/ + +QwtDynGridLayout::QwtDynGridLayout( int spacing ) +{ + init(); + setSpacing( spacing ); +} + +/*! + Initialize the layout with default values. +*/ +void QwtDynGridLayout::init() +{ + d_data = new QwtDynGridLayout::PrivateData; + d_data->maxCols = d_data->numRows = d_data->numCols = 0; + d_data->expanding = 0; +} + +//! Destructor + +QwtDynGridLayout::~QwtDynGridLayout() +{ + for ( int i = 0; i < d_data->itemList.size(); i++ ) + delete d_data->itemList[i]; + + delete d_data; +} + +//! Invalidate all internal caches +void QwtDynGridLayout::invalidate() +{ + d_data->isDirty = true; + QLayout::invalidate(); +} + +/*! + Limit the number of columns. + \param maxCols upper limit, 0 means unlimited + \sa maxCols() +*/ +void QwtDynGridLayout::setMaxCols( uint maxCols ) +{ + d_data->maxCols = maxCols; +} + +/*! + Return the upper limit for the number of columns. + 0 means unlimited, what is the default. + \sa setMaxCols() +*/ + +uint QwtDynGridLayout::maxCols() const +{ + return d_data->maxCols; +} + +//! Adds item to the next free position. + +void QwtDynGridLayout::addItem( QLayoutItem *item ) +{ + d_data->itemList.append( item ); + invalidate(); +} + +/*! + \return true if this layout is empty. +*/ + +bool QwtDynGridLayout::isEmpty() const +{ + return d_data->itemList.isEmpty(); +} + +/*! + \return number of layout items +*/ + +uint QwtDynGridLayout::itemCount() const +{ + return d_data->itemList.count(); +} + +/*! + Find the item at a spcific index + + \param index Index + \sa takeAt() +*/ +QLayoutItem *QwtDynGridLayout::itemAt( int index ) const +{ + if ( index < 0 || index >= d_data->itemList.count() ) + return NULL; + + return d_data->itemList.at( index ); +} + +/*! + Find the item at a spcific index and remove it from the layout + + \param index Index + \sa itemAt() +*/ +QLayoutItem *QwtDynGridLayout::takeAt( int index ) +{ + if ( index < 0 || index >= d_data->itemList.count() ) + return NULL; + + d_data->isDirty = true; + return d_data->itemList.takeAt( index ); +} + +//! \return Number of items in the layout +int QwtDynGridLayout::count() const +{ + return d_data->itemList.count(); +} + +/*! + Set whether this layout can make use of more space than sizeHint(). + A value of Qt::Vertical or Qt::Horizontal means that it wants to grow in only + one dimension, while Qt::Vertical | Qt::Horizontal means that it wants + to grow in both dimensions. The default value is 0. + + \param expanding Or'd orientations + \sa expandingDirections() +*/ +void QwtDynGridLayout::setExpandingDirections( Qt::Orientations expanding ) +{ + d_data->expanding = expanding; +} + +/*! + Returns whether this layout can make use of more space than sizeHint(). + A value of Qt::Vertical or Qt::Horizontal means that it wants to grow in only + one dimension, while Qt::Vertical | Qt::Horizontal means that it wants + to grow in both dimensions. + \sa setExpandingDirections() +*/ +Qt::Orientations QwtDynGridLayout::expandingDirections() const +{ + return d_data->expanding; +} + +/*! + Reorganizes columns and rows and resizes managed widgets within + the rectangle rect. + + \param rect Layout geometry +*/ +void QwtDynGridLayout::setGeometry( const QRect &rect ) +{ + QLayout::setGeometry( rect ); + + if ( isEmpty() ) + return; + + d_data->numCols = columnsForWidth( rect.width() ); + d_data->numRows = itemCount() / d_data->numCols; + if ( itemCount() % d_data->numCols ) + d_data->numRows++; + + QList itemGeometries = layoutItems( rect, d_data->numCols ); + + int index = 0; + for ( QList::iterator it = d_data->itemList.begin(); + it != d_data->itemList.end(); ++it ) + { + QWidget *w = ( *it )->widget(); + if ( w ) + { + w->setGeometry( itemGeometries[index] ); + index++; + } + } +} + +/*! + Calculate the number of columns for a given width. It tries to + use as many columns as possible (limited by maxCols()) + + \param width Available width for all columns + \sa maxCols(), setMaxCols() +*/ + +uint QwtDynGridLayout::columnsForWidth( int width ) const +{ + if ( isEmpty() ) + return 0; + + const int maxCols = ( d_data->maxCols > 0 ) ? d_data->maxCols : itemCount(); + if ( maxRowWidth( maxCols ) <= width ) + return maxCols; + + for ( int numCols = 2; numCols <= maxCols; numCols++ ) + { + const int rowWidth = maxRowWidth( numCols ); + if ( rowWidth > width ) + return numCols - 1; + } + + return 1; // At least 1 column +} + +/*! + Calculate the width of a layout for a given number of + columns. + + \param numCols Given number of columns + \param itemWidth Array of the width hints for all items +*/ +int QwtDynGridLayout::maxRowWidth( int numCols ) const +{ + int col; + + QVector colWidth( numCols ); + for ( col = 0; col < ( int )numCols; col++ ) + colWidth[col] = 0; + + if ( d_data->isDirty ) + d_data->updateLayoutCache(); + + for ( uint index = 0; + index < ( uint )d_data->itemSizeHints.count(); index++ ) + { + col = index % numCols; + colWidth[col] = qMax( colWidth[col], + d_data->itemSizeHints[int( index )].width() ); + } + + int rowWidth = 2 * margin() + ( numCols - 1 ) * spacing(); + for ( col = 0; col < ( int )numCols; col++ ) + rowWidth += colWidth[col]; + + return rowWidth; +} + +/*! + \return the maximum width of all layout items +*/ +int QwtDynGridLayout::maxItemWidth() const +{ + if ( isEmpty() ) + return 0; + + if ( d_data->isDirty ) + d_data->updateLayoutCache(); + + int w = 0; + for ( uint i = 0; i < ( uint )d_data->itemSizeHints.count(); i++ ) + { + const int itemW = d_data->itemSizeHints[int( i )].width(); + if ( itemW > w ) + w = itemW; + } + + return w; +} + +/*! + Calculate the geometries of the layout items for a layout + with numCols columns and a given rect. + + \param rect Rect where to place the items + \param numCols Number of columns + \return item geometries +*/ + +QList QwtDynGridLayout::layoutItems( const QRect &rect, + uint numCols ) const +{ + QList itemGeometries; + if ( numCols == 0 || isEmpty() ) + return itemGeometries; + + uint numRows = itemCount() / numCols; + if ( numRows % itemCount() ) + numRows++; + + QVector rowHeight( numRows ); + QVector colWidth( numCols ); + + layoutGrid( numCols, rowHeight, colWidth ); + + bool expandH, expandV; + expandH = expandingDirections() & Qt::Horizontal; + expandV = expandingDirections() & Qt::Vertical; + + if ( expandH || expandV ) + stretchGrid( rect, numCols, rowHeight, colWidth ); + + const int maxCols = d_data->maxCols; + d_data->maxCols = numCols; + const QRect alignedRect = alignmentRect( rect ); + d_data->maxCols = maxCols; + + const int xOffset = expandH ? 0 : alignedRect.x(); + const int yOffset = expandV ? 0 : alignedRect.y(); + + QVector colX( numCols ); + QVector rowY( numRows ); + + const int xySpace = spacing(); + + rowY[0] = yOffset + margin(); + for ( int r = 1; r < ( int )numRows; r++ ) + rowY[r] = rowY[r-1] + rowHeight[r-1] + xySpace; + + colX[0] = xOffset + margin(); + for ( int c = 1; c < ( int )numCols; c++ ) + colX[c] = colX[c-1] + colWidth[c-1] + xySpace; + + const int itemCount = d_data->itemList.size(); + for ( int i = 0; i < itemCount; i++ ) + { + const int row = i / numCols; + const int col = i % numCols; + + QRect itemGeometry( colX[col], rowY[row], + colWidth[col], rowHeight[row] ); + itemGeometries.append( itemGeometry ); + } + + return itemGeometries; +} + + +/*! + Calculate the dimensions for the columns and rows for a grid + of numCols columns. + + \param numCols Number of columns. + \param rowHeight Array where to fill in the calculated row heights. + \param colWidth Array where to fill in the calculated column widths. +*/ + +void QwtDynGridLayout::layoutGrid( uint numCols, + QVector& rowHeight, QVector& colWidth ) const +{ + if ( numCols <= 0 ) + return; + + if ( d_data->isDirty ) + d_data->updateLayoutCache(); + + for ( uint index = 0; + index < ( uint )d_data->itemSizeHints.count(); index++ ) + { + const int row = index / numCols; + const int col = index % numCols; + + const QSize &size = d_data->itemSizeHints[int( index )]; + + rowHeight[row] = ( col == 0 ) + ? size.height() : qMax( rowHeight[row], size.height() ); + colWidth[col] = ( row == 0 ) + ? size.width() : qMax( colWidth[col], size.width() ); + } +} + +/*! + \return true: QwtDynGridLayout implements heightForWidth. + \sa heightForWidth() +*/ +bool QwtDynGridLayout::hasHeightForWidth() const +{ + return true; +} + +/*! + \return The preferred height for this layout, given the width w. + \sa hasHeightForWidth() +*/ +int QwtDynGridLayout::heightForWidth( int width ) const +{ + if ( isEmpty() ) + return 0; + + const uint numCols = columnsForWidth( width ); + uint numRows = itemCount() / numCols; + if ( itemCount() % numCols ) + numRows++; + + QVector rowHeight( numRows ); + QVector colWidth( numCols ); + + layoutGrid( numCols, rowHeight, colWidth ); + + int h = 2 * margin() + ( numRows - 1 ) * spacing(); + for ( int row = 0; row < ( int )numRows; row++ ) + h += rowHeight[row]; + + return h; +} + +/*! + Stretch columns in case of expanding() & QSizePolicy::Horizontal and + rows in case of expanding() & QSizePolicy::Vertical to fill the entire + rect. Rows and columns are stretched with the same factor. + + \sa setExpanding(), expanding() +*/ +void QwtDynGridLayout::stretchGrid( const QRect &rect, + uint numCols, QVector& rowHeight, QVector& colWidth ) const +{ + if ( numCols == 0 || isEmpty() ) + return; + + bool expandH, expandV; + expandH = expandingDirections() & Qt::Horizontal; + expandV = expandingDirections() & Qt::Vertical; + + if ( expandH ) + { + int xDelta = rect.width() - 2 * margin() - ( numCols - 1 ) * spacing(); + for ( int col = 0; col < ( int )numCols; col++ ) + xDelta -= colWidth[col]; + + if ( xDelta > 0 ) + { + for ( int col = 0; col < ( int )numCols; col++ ) + { + const int space = xDelta / ( numCols - col ); + colWidth[col] += space; + xDelta -= space; + } + } + } + + if ( expandV ) + { + uint numRows = itemCount() / numCols; + if ( itemCount() % numCols ) + numRows++; + + int yDelta = rect.height() - 2 * margin() - ( numRows - 1 ) * spacing(); + for ( int row = 0; row < ( int )numRows; row++ ) + yDelta -= rowHeight[row]; + + if ( yDelta > 0 ) + { + for ( int row = 0; row < ( int )numRows; row++ ) + { + const int space = yDelta / ( numRows - row ); + rowHeight[row] += space; + yDelta -= space; + } + } + } +} + +/*! + Return the size hint. If maxCols() > 0 it is the size for + a grid with maxCols() columns, otherwise it is the size for + a grid with only one row. + + \sa maxCols(), setMaxCols() +*/ +QSize QwtDynGridLayout::sizeHint() const +{ + if ( isEmpty() ) + return QSize(); + + const uint numCols = ( d_data->maxCols > 0 ) ? d_data->maxCols : itemCount(); + uint numRows = itemCount() / numCols; + if ( itemCount() % numCols ) + numRows++; + + QVector rowHeight( numRows ); + QVector colWidth( numCols ); + + layoutGrid( numCols, rowHeight, colWidth ); + + int h = 2 * margin() + ( numRows - 1 ) * spacing(); + for ( int row = 0; row < ( int )numRows; row++ ) + h += rowHeight[row]; + + int w = 2 * margin() + ( numCols - 1 ) * spacing(); + for ( int col = 0; col < ( int )numCols; col++ ) + w += colWidth[col]; + + return QSize( w, h ); +} + +/*! + \return Number of rows of the current layout. + \sa numCols() + \warning The number of rows might change whenever the geometry changes +*/ +uint QwtDynGridLayout::numRows() const +{ + return d_data->numRows; +} + +/*! + \return Number of columns of the current layout. + \sa numRows() + \warning The number of columns might change whenever the geometry changes +*/ +uint QwtDynGridLayout::numCols() const +{ + return d_data->numCols; +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_dyngrid_layout.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_dyngrid_layout.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_dyngrid_layout.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_dyngrid_layout.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,83 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_DYNGRID_LAYOUT_H +#define QWT_DYNGRID_LAYOUT_H + +#include "qwt_global.h" +#include +#include +#include + +/*! + \brief The QwtDynGridLayout class lays out widgets in a grid, + adjusting the number of columns and rows to the current size. + + QwtDynGridLayout takes the space it gets, divides it up into rows and + columns, and puts each of the widgets it manages into the correct cell(s). + It lays out as many number of columns as possible (limited by maxCols()). +*/ + +class QWT_EXPORT QwtDynGridLayout : public QLayout +{ + Q_OBJECT +public: + explicit QwtDynGridLayout( QWidget *, int margin = 0, int space = -1 ); + explicit QwtDynGridLayout( int space = -1 ); + + virtual ~QwtDynGridLayout(); + + virtual void invalidate(); + + void setMaxCols( uint maxCols ); + uint maxCols() const; + + uint numRows () const; + uint numCols () const; + + virtual void addItem( QLayoutItem * ); + + virtual QLayoutItem *itemAt( int index ) const; + virtual QLayoutItem *takeAt( int index ); + virtual int count() const; + + void setExpandingDirections( Qt::Orientations ); + virtual Qt::Orientations expandingDirections() const; + QList layoutItems( const QRect &, uint numCols ) const; + + virtual int maxItemWidth() const; + + virtual void setGeometry( const QRect &rect ); + + virtual bool hasHeightForWidth() const; + virtual int heightForWidth( int ) const; + + virtual QSize sizeHint() const; + + virtual bool isEmpty() const; + uint itemCount() const; + + virtual uint columnsForWidth( int width ) const; + +protected: + + void layoutGrid( uint numCols, + QVector& rowHeight, QVector& colWidth ) const; + void stretchGrid( const QRect &rect, uint numCols, + QVector& rowHeight, QVector& colWidth ) const; + +private: + void init(); + int maxRowWidth( int numCols ) const; + + class PrivateData; + PrivateData *d_data; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_event_pattern.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_event_pattern.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_event_pattern.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_event_pattern.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,272 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_event_pattern.h" +#include + +/*! + Constructor + + \sa MousePatternCode, KeyPatternCode +*/ + +QwtEventPattern::QwtEventPattern(): + d_mousePattern( MousePatternCount ), + d_keyPattern( KeyPatternCount ) +{ + initKeyPattern(); + initMousePattern( 3 ); +} + +//! Destructor +QwtEventPattern::~QwtEventPattern() +{ +} + +/*! + Set default mouse patterns, depending on the number of mouse buttons + + \param numButtons Number of mouse buttons ( <= 3 ) + \sa MousePatternCode +*/ +void QwtEventPattern::initMousePattern( int numButtons ) +{ + const int altButton = Qt::AltModifier; + const int controlButton = Qt::ControlModifier; + const int shiftButton = Qt::ShiftModifier; + + d_mousePattern.resize( MousePatternCount ); + + switch ( numButtons ) + { + case 1: + { + setMousePattern( MouseSelect1, Qt::LeftButton ); + setMousePattern( MouseSelect2, Qt::LeftButton, controlButton ); + setMousePattern( MouseSelect3, Qt::LeftButton, altButton ); + break; + } + case 2: + { + setMousePattern( MouseSelect1, Qt::LeftButton ); + setMousePattern( MouseSelect2, Qt::RightButton ); + setMousePattern( MouseSelect3, Qt::LeftButton, altButton ); + break; + } + default: + { + setMousePattern( MouseSelect1, Qt::LeftButton ); + setMousePattern( MouseSelect2, Qt::RightButton ); + setMousePattern( MouseSelect3, Qt::MidButton ); + } + } + for ( int i = 0; i < 3; i++ ) + { + setMousePattern( MouseSelect4 + i, + d_mousePattern[MouseSelect1 + i].button, + d_mousePattern[MouseSelect1 + i].state | shiftButton ); + } +} + +/*! + Set default mouse patterns. + + \sa KeyPatternCode +*/ +void QwtEventPattern::initKeyPattern() +{ + d_keyPattern.resize( KeyPatternCount ); + + setKeyPattern( KeySelect1, Qt::Key_Return ); + setKeyPattern( KeySelect2, Qt::Key_Space ); + setKeyPattern( KeyAbort, Qt::Key_Escape ); + + setKeyPattern( KeyLeft, Qt::Key_Left ); + setKeyPattern( KeyRight, Qt::Key_Right ); + setKeyPattern( KeyUp, Qt::Key_Up ); + setKeyPattern( KeyDown, Qt::Key_Down ); + + setKeyPattern( KeyRedo, Qt::Key_Plus ); + setKeyPattern( KeyUndo, Qt::Key_Minus ); + setKeyPattern( KeyHome, Qt::Key_Escape ); +} + +/*! + Change one mouse pattern + + \param pattern Index of the pattern + \param button Button + \param state State + + \sa QMouseEvent +*/ +void QwtEventPattern::setMousePattern( uint pattern, int button, int state ) +{ + if ( pattern < ( uint )d_mousePattern.count() ) + { + d_mousePattern[int( pattern )].button = button; + d_mousePattern[int( pattern )].state = state; + } +} + +/*! + Change one key pattern + + \param pattern Index of the pattern + \param key Key + \param state State + + \sa QKeyEvent +*/ +void QwtEventPattern::setKeyPattern( uint pattern, int key, int state ) +{ + if ( pattern < ( uint )d_keyPattern.count() ) + { + d_keyPattern[int( pattern )].key = key; + d_keyPattern[int( pattern )].state = state; + } +} + +//! Change the mouse event patterns +void QwtEventPattern::setMousePattern( const QVector &pattern ) +{ + d_mousePattern = pattern; +} + +//! Change the key event patterns +void QwtEventPattern::setKeyPattern( const QVector &pattern ) +{ + d_keyPattern = pattern; +} + +//! Return mouse patterns +const QVector & +QwtEventPattern::mousePattern() const +{ + return d_mousePattern; +} + +//! Return key patterns +const QVector & +QwtEventPattern::keyPattern() const +{ + return d_keyPattern; +} + +//! Return ,ouse patterns +QVector &QwtEventPattern::mousePattern() +{ + return d_mousePattern; +} + +//! Return Key patterns +QVector &QwtEventPattern::keyPattern() +{ + return d_keyPattern; +} + +/*! + \brief Compare a mouse event with an event pattern. + + A mouse event matches the pattern when both have the same button + value and in the state value the same key flags(Qt::KeyButtonMask) + are set. + + \param pattern Index of the event pattern + \param e Mouse event + \return true if matches + + \sa keyMatch() +*/ +bool QwtEventPattern::mouseMatch( uint pattern, const QMouseEvent *e ) const +{ + bool ok = false; + + if ( e && pattern < ( uint )d_mousePattern.count() ) + ok = mouseMatch( d_mousePattern[int( pattern )], e ); + + return ok; +} + +/*! + \brief Compare a mouse event with an event pattern. + + A mouse event matches the pattern when both have the same button + value and in the state value the same key flags(Qt::KeyButtonMask) + are set. + + \param pattern Mouse event pattern + \param e Mouse event + \return true if matches + + \sa keyMatch() +*/ + +bool QwtEventPattern::mouseMatch( const MousePattern &pattern, + const QMouseEvent *e ) const +{ + if ( e->button() != pattern.button ) + return false; + + const bool matched = + ( e->modifiers() & Qt::KeyboardModifierMask ) == + ( int )( pattern.state & Qt::KeyboardModifierMask ); + + return matched; +} + +/*! + \brief Compare a key event with an event pattern. + + A key event matches the pattern when both have the same key + value and in the state value the same key flags (Qt::KeyButtonMask) + are set. + + \param pattern Index of the event pattern + \param e Key event + \return true if matches + + \sa mouseMatch() +*/ +bool QwtEventPattern::keyMatch( uint pattern, const QKeyEvent *e ) const +{ + bool ok = false; + + if ( e && pattern < ( uint )d_keyPattern.count() ) + ok = keyMatch( d_keyPattern[int( pattern )], e ); + + return ok; +} + +/*! + \brief Compare a key event with an event pattern. + + A key event matches the pattern when both have the same key + value and in the state value the same key flags (Qt::KeyButtonMask) + are set. + + \param pattern Key event pattern + \param e Key event + \return true if matches + + \sa mouseMatch() +*/ + +bool QwtEventPattern::keyMatch( + const KeyPattern &pattern, const QKeyEvent *e ) const +{ + if ( e->key() != pattern.key ) + return false; + + const bool matched = + ( e->modifiers() & Qt::KeyboardModifierMask ) == + ( int )( pattern.state & Qt::KeyboardModifierMask ); + + return matched; +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_event_pattern.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_event_pattern.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_event_pattern.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_event_pattern.h 2011-04-15 10:48:46.000000000 +0000 @@ -0,0 +1,225 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_EVENT_PATTERN +#define QWT_EVENT_PATTERN 1 + +#include "qwt_global.h" +#include +#include + +class QMouseEvent; +class QKeyEvent; + +/*! + \brief A collection of event patterns + + QwtEventPattern introduces an level of indirection for mouse and + keyboard inputs. Those are represented by symbolic names, so + the application code can be configured by individual mappings. + + \sa QwtPicker, QwtPickerMachine, QwtPlotZoomer +*/ +class QWT_EXPORT QwtEventPattern +{ +public: + /*! + \brief Symbolic mouse input codes + + The default initialization for 3 button mice is: + - MouseSelect1\n + Qt::LeftButton + - MouseSelect2\n + Qt::RightButton + - MouseSelect3\n + Qt::MidButton + - MouseSelect4\n + Qt::LeftButton + Qt::ShiftButton + - MouseSelect5\n + Qt::RightButton + Qt::ShiftButton + - MouseSelect6\n + Qt::MidButton + Qt::ShiftButton + + The default initialization for 2 button mice is: + - MouseSelect1\n + Qt::LeftButton + - MouseSelect2\n + Qt::RightButton + - MouseSelect3\n + Qt::LeftButton + Qt::AltButton + - MouseSelect4\n + Qt::LeftButton + Qt::ShiftButton + - MouseSelect5\n + Qt::RightButton + Qt::ShiftButton + - MouseSelect6\n + Qt::LeftButton + Qt::AltButton + Qt::ShiftButton + + The default initialization for 1 button mice is: + - MouseSelect1\n + Qt::LeftButton + - MouseSelect2\n + Qt::LeftButton + Qt::ControlButton + - MouseSelect3\n + Qt::LeftButton + Qt::AltButton + - MouseSelect4\n + Qt::LeftButton + Qt::ShiftButton + - MouseSelect5\n + Qt::LeftButton + Qt::ControlButton + Qt::ShiftButton + - MouseSelect6\n + Qt::LeftButton + Qt::AltButton + Qt::ShiftButton + + \sa initMousePattern() + */ + + enum MousePatternCode + { + MouseSelect1, + MouseSelect2, + MouseSelect3, + MouseSelect4, + MouseSelect5, + MouseSelect6, + + MousePatternCount + }; + + /*! + \brief Symbolic keyboard input codes + + Default initialization: + - KeySelect1\n + Qt::Key_Return + - KeySelect2\n + Qt::Key_Space + - KeyAbort\n + Qt::Key_Escape + + - KeyLeft\n + Qt::Key_Left + - KeyRight\n + Qt::Key_Right + - KeyUp\n + Qt::Key_Up + - KeyDown\n + Qt::Key_Down + + - KeyUndo\n + Qt::Key_Minus + - KeyRedo\n + Qt::Key_Plus + - KeyHome\n + Qt::Key_Escape + */ + enum KeyPatternCode + { + KeySelect1, + KeySelect2, + KeyAbort, + + KeyLeft, + KeyRight, + KeyUp, + KeyDown, + + KeyRedo, + KeyUndo, + KeyHome, + + KeyPatternCount + }; + + //! A pattern for mouse events + class MousePattern + { + public: + //! Constructor + MousePattern( int btn = Qt::NoButton, int st = Qt::NoButton ) + { + button = btn; + state = st; + } + + //! Button code + int button; + + //! State + int state; + }; + + //! A pattern for key events + class KeyPattern + { + public: + //! Constructor + KeyPattern( int k = 0, int st = Qt::NoButton ) + { + key = k; + state = st; + } + + //! Key code + int key; + + //! State + int state; + }; + + QwtEventPattern(); + virtual ~QwtEventPattern(); + + void initMousePattern( int numButtons ); + void initKeyPattern(); + + void setMousePattern( uint pattern, int button, int state = Qt::NoButton ); + void setKeyPattern( uint pattern, int key, int state = Qt::NoButton ); + + void setMousePattern( const QVector & ); + void setKeyPattern( const QVector & ); + + const QVector &mousePattern() const; + const QVector &keyPattern() const; + + QVector &mousePattern(); + QVector &keyPattern(); + + bool mouseMatch( uint pattern, const QMouseEvent * ) const; + bool keyMatch( uint pattern, const QKeyEvent * ) const; + +protected: + virtual bool mouseMatch( const MousePattern &, const QMouseEvent * ) const; + virtual bool keyMatch( const KeyPattern &, const QKeyEvent * ) const; + +private: + +#if defined(_MSC_VER) +#pragma warning(push) +#pragma warning(disable: 4251) +#endif + QVector d_mousePattern; + QVector d_keyPattern; +#if defined(_MSC_VER) +#pragma warning(pop) +#endif +}; + +//! Compare operator +inline bool operator==( QwtEventPattern::MousePattern b1, + QwtEventPattern::MousePattern b2 ) +{ + return b1.button == b2.button && b1.state == b2.state; +} + +//! Compare operator +inline bool operator==( QwtEventPattern::KeyPattern b1, + QwtEventPattern::KeyPattern b2 ) +{ + return b1.key == b2.key && b1.state == b2.state; +} + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_global.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_global.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_global.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_global.h 2011-04-15 10:48:46.000000000 +0000 @@ -0,0 +1,46 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_GLOBAL_H +#define QWT_GLOBAL_H + +#include + +// QWT_VERSION is (major << 16) + (minor << 8) + patch. + +#define QWT_VERSION 0x060000 +#define QWT_VERSION_STR "6.0.0-svn" + +#if defined(Q_WS_WIN) || defined(Q_WS_S60) + +#if defined(_MSC_VER) /* MSVC Compiler */ +/* template-class specialization 'identifier' is already instantiated */ +#pragma warning(disable: 4660) +#endif // _MSC_VER + +#ifdef QWT_DLL + +#if defined(QWT_MAKEDLL) // create a Qwt DLL library +#define QWT_EXPORT __declspec(dllexport) +#define QWT_TEMPLATEDLL +#else // use a Qwt DLL library +#define QWT_EXPORT __declspec(dllimport) +#endif + +#endif // QWT_DLL + +#endif // Q_WS_WIN || Q_WS_S60 + +#ifndef QWT_EXPORT +#define QWT_EXPORT +#endif + +// #define QWT_NO_COMPAT 1 // disable withdrawn functionality + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt.h phyxcalc-3rev200/qwt-6.0.0/src/qwt.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt.h 2011-04-15 10:48:46.000000000 +0000 @@ -0,0 +1,22 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_H +#define QWT_H + +#include "qwt_global.h" + +/*! + Some constants for use within Qwt. +*/ +namespace Qwt +{ +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_interval.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_interval.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_interval.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_interval.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,334 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_interval.h" +#include "qwt_math.h" +#include + +/*! + \brief Normalize the limits of the interval + + If maxValue() < minValue() the limits will be inverted. + \return Normalized interval + + \sa isValid(), inverted() +*/ +QwtInterval QwtInterval::normalized() const +{ + if ( d_minValue > d_maxValue ) + { + return inverted(); + } + if ( d_minValue == d_maxValue && d_borderFlags == ExcludeMinimum ) + { + return inverted(); + } + + return *this; +} + +/*! + Invert the limits of the interval + \return Inverted interval + \sa normalized() +*/ +QwtInterval QwtInterval::inverted() const +{ + BorderFlags borderFlags = IncludeBorders; + if ( d_borderFlags & ExcludeMinimum ) + borderFlags |= ExcludeMaximum; + if ( d_borderFlags & ExcludeMaximum ) + borderFlags |= ExcludeMinimum; + + return QwtInterval( d_maxValue, d_minValue, borderFlags ); +} + +/*! + Test if a value is inside an interval + + \param value Value + \return true, if value >= minValue() && value <= maxValue() +*/ +bool QwtInterval::contains( double value ) const +{ + if ( !isValid() ) + return false; + + if ( value < d_minValue || value > d_maxValue ) + return false; + + if ( value == d_minValue && d_borderFlags & ExcludeMinimum ) + return false; + + if ( value == d_maxValue && d_borderFlags & ExcludeMaximum ) + return false; + + return true; +} + +//! Unite 2 intervals +QwtInterval QwtInterval::unite( const QwtInterval &other ) const +{ + /* + If one of the intervals is invalid return the other one. + If both are invalid return an invalid default interval + */ + if ( !isValid() ) + { + if ( !other.isValid() ) + return QwtInterval(); + else + return other; + } + if ( !other.isValid() ) + return *this; + + QwtInterval united; + BorderFlags flags = IncludeBorders; + + // minimum + if ( d_minValue < other.minValue() ) + { + united.setMinValue( d_minValue ); + flags &= d_borderFlags & ExcludeMinimum; + } + else if ( other.minValue() < d_minValue ) + { + united.setMinValue( other.minValue() ); + flags &= other.borderFlags() & ExcludeMinimum; + } + else // d_minValue == other.minValue() + { + united.setMinValue( d_minValue ); + flags &= ( d_borderFlags & other.borderFlags() ) & ExcludeMinimum; + } + + // maximum + if ( d_maxValue > other.maxValue() ) + { + united.setMaxValue( d_maxValue ); + flags &= d_borderFlags & ExcludeMaximum; + } + else if ( other.maxValue() > d_maxValue ) + { + united.setMaxValue( other.maxValue() ); + flags &= other.borderFlags() & ExcludeMaximum; + } + else // d_maxValue == other.maxValue() ) + { + united.setMaxValue( d_maxValue ); + flags &= d_borderFlags & other.borderFlags() & ExcludeMaximum; + } + + united.setBorderFlags( flags ); + return united; +} + +//! Intersect 2 intervals +QwtInterval QwtInterval::intersect( const QwtInterval &other ) const +{ + if ( !other.isValid() || !isValid() ) + return QwtInterval(); + + QwtInterval i1 = *this; + QwtInterval i2 = other; + + // swap i1/i2, so that the minimum of i1 + // is smaller then the minimum of i2 + + if ( i1.minValue() > i2.minValue() ) + { + qSwap( i1, i2 ); + } + else if ( i1.minValue() == i2.minValue() ) + { + if ( i1.borderFlags() & ExcludeMinimum ) + qSwap( i1, i2 ); + } + + if ( i1.maxValue() < i2.minValue() ) + { + return QwtInterval(); + } + + if ( i1.maxValue() == i2.minValue() ) + { + if ( i1.borderFlags() & ExcludeMaximum || + i2.borderFlags() & ExcludeMinimum ) + { + return QwtInterval(); + } + } + + QwtInterval intersected; + BorderFlags flags = IncludeBorders; + + intersected.setMinValue( i2.minValue() ); + flags |= i2.borderFlags() & ExcludeMinimum; + + if ( i1.maxValue() < i2.maxValue() ) + { + intersected.setMaxValue( i1.maxValue() ); + flags |= i1.borderFlags() & ExcludeMaximum; + } + else if ( i2.maxValue() < i1.maxValue() ) + { + intersected.setMaxValue( i2.maxValue() ); + flags |= i2.borderFlags() & ExcludeMaximum; + } + else // i1.maxValue() == i2.maxValue() + { + intersected.setMaxValue( i1.maxValue() ); + flags |= i1.borderFlags() & i2.borderFlags() & ExcludeMaximum; + } + + intersected.setBorderFlags( flags ); + return intersected; +} + +//! Unites this interval with the given interval. +QwtInterval& QwtInterval::operator|=( const QwtInterval & interval ) +{ + *this = *this | interval; + return *this; +} + +//! Intersects this interval with the given interval. +QwtInterval& QwtInterval::operator&=( const QwtInterval & interval ) +{ + *this = *this & interval; + return *this; +} + +/*! + Test if two intervals overlap +*/ +bool QwtInterval::intersects( const QwtInterval &other ) const +{ + if ( !isValid() || !other.isValid() ) + return false; + + QwtInterval i1 = *this; + QwtInterval i2 = other; + + // swap i1/i2, so that the minimum of i1 + // is smaller then the minimum of i2 + + if ( i1.minValue() > i2.minValue() ) + { + qSwap( i1, i2 ); + } + else if ( i1.minValue() == i2.minValue() && + i1.borderFlags() & ExcludeMinimum ) + { + qSwap( i1, i2 ); + } + + if ( i1.maxValue() > i2.minValue() ) + { + return true; + } + if ( i1.maxValue() == i2.minValue() ) + { + return !( ( i1.borderFlags() & ExcludeMaximum ) || + ( i2.borderFlags() & ExcludeMinimum ) ); + } + return false; +} + +/*! + Adjust the limit that is closer to value, so that value becomes + the center of the interval. + + \param value Center + \return Interval with value as center +*/ +QwtInterval QwtInterval::symmetrize( double value ) const +{ + if ( !isValid() ) + return *this; + + const double delta = + qMax( qAbs( value - d_maxValue ), qAbs( value - d_minValue ) ); + + return QwtInterval( value - delta, value + delta ); +} + +/*! + Limit the interval, keeping the border modes + + \param lowerBound Lower limit + \param upperBound Upper limit + + \return Limited interval +*/ +QwtInterval QwtInterval::limited( double lowerBound, double upperBound ) const +{ + if ( !isValid() || lowerBound > upperBound ) + return QwtInterval(); + + double minValue = qMax( d_minValue, lowerBound ); + minValue = qMin( minValue, upperBound ); + + double maxValue = qMax( d_maxValue, lowerBound ); + maxValue = qMin( maxValue, upperBound ); + + return QwtInterval( minValue, maxValue, d_borderFlags ); +} + +/*! + Extend the interval + + If value is below minValue, value becomes the lower limit. + If value is above maxValue, value becomes the upper limit. + + extend has no effect for invalid intervals + + \param value Value + \sa isValid() +*/ +QwtInterval QwtInterval::extend( double value ) const +{ + if ( !isValid() ) + return *this; + + return QwtInterval( qMin( value, d_minValue ), + qMax( value, d_maxValue ), d_borderFlags ); +} + +/*! + Extend an interval + + \param value Value + \return Reference of the extended interval + + \sa extend() +*/ +QwtInterval& QwtInterval::operator|=( double value ) +{ + *this = *this | value; + return *this; +} + +#ifndef QT_NO_DEBUG_STREAM + +QDebug operator<<( QDebug debug, const QwtInterval &interval ) +{ + const int flags = interval.borderFlags(); + + debug.nospace() << "QwtInterval(" + << ( ( flags & QwtInterval::ExcludeMinimum ) ? "]" : "[" ) + << interval.minValue() << "," << interval.maxValue() + << ( ( flags & QwtInterval::ExcludeMaximum ) ? "[" : "]" ) + << ")"; + + return debug.space(); +} + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_interval.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_interval.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_interval.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_interval.h 2011-04-15 10:48:46.000000000 +0000 @@ -0,0 +1,296 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_INTERVAL_H +#define QWT_INTERVAL_H + +#include "qwt_global.h" +#ifndef QT_NO_DEBUG_STREAM +#include +#endif + +/*! + \brief A class representing an interval + + The interval is represented by 2 doubles, the lower and the upper limit. +*/ + +class QWT_EXPORT QwtInterval +{ +public: + /*! + Flag indicating if a border is included or excluded + \sa setBorderFlags(), borderFlags() + */ + enum BorderFlag + { + //! Min/Max values are inside the interval + IncludeBorders = 0x00, + + //! Min value is not included in the interval + ExcludeMinimum = 0x01, + + //! Max value is not included in the interval + ExcludeMaximum = 0x02, + + //! Min/Max values are not included in the interval + ExcludeBorders = ExcludeMinimum | ExcludeMaximum + }; + + //! Border flags + typedef QFlags BorderFlags; + + QwtInterval(); + QwtInterval( double minValue, double maxValue, + BorderFlags = IncludeBorders ); + + void setInterval( double minValue, double maxValue, + BorderFlags = IncludeBorders ); + + QwtInterval normalized() const; + QwtInterval inverted() const; + QwtInterval limited( double minValue, double maxValue ) const; + + bool operator==( const QwtInterval & ) const; + bool operator!=( const QwtInterval & ) const; + + void setBorderFlags( BorderFlags ); + BorderFlags borderFlags() const; + + double minValue() const; + double maxValue() const; + + double width() const; + + void setMinValue( double ); + void setMaxValue( double ); + + bool contains( double value ) const; + + bool intersects( const QwtInterval & ) const; + QwtInterval intersect( const QwtInterval & ) const; + QwtInterval unite( const QwtInterval & ) const; + + QwtInterval operator|( const QwtInterval & ) const; + QwtInterval operator&( const QwtInterval & ) const; + + QwtInterval &operator|=( const QwtInterval & ); + QwtInterval &operator&=( const QwtInterval & ); + + QwtInterval extend( double value ) const; + QwtInterval operator|( double ) const; + QwtInterval &operator|=( double ); + + bool isValid() const; + bool isNull() const; + void invalidate(); + + QwtInterval symmetrize( double value ) const; + +private: + double d_minValue; + double d_maxValue; + BorderFlags d_borderFlags; +}; + +Q_DECLARE_TYPEINFO(QwtInterval, Q_MOVABLE_TYPE); + +/*! + \brief Default Constructor + + Creates an invalid interval [0.0, -1.0] + \sa setInterval(), isValid() +*/ +inline QwtInterval::QwtInterval(): + d_minValue( 0.0 ), + d_maxValue( -1.0 ), + d_borderFlags( IncludeBorders ) +{ +} + +/*! + Constructor + + Build an interval with from min/max values + + \param minValue Minimum value + \param maxValue Maximum value + \param borderFlags Include/Exclude borders +*/ +inline QwtInterval::QwtInterval( + double minValue, double maxValue, BorderFlags borderFlags ): + d_minValue( minValue ), + d_maxValue( maxValue ), + d_borderFlags( borderFlags ) +{ +} + +/*! + Assign the limits of the interval + + \param minValue Minimum value + \param maxValue Maximum value + \param borderFlags Include/Exclude borders +*/ +inline void QwtInterval::setInterval( + double minValue, double maxValue, BorderFlags borderFlags ) +{ + d_minValue = minValue; + d_maxValue = maxValue; + d_borderFlags = borderFlags; +} + +/*! + Change the border flags + + \param borderFlags Or'd BorderMode flags + \sa borderFlags() +*/ +inline void QwtInterval::setBorderFlags( BorderFlags borderFlags ) +{ + d_borderFlags = borderFlags; +} + +/*! + \return Border flags + \sa setBorderFlags() +*/ +inline QwtInterval::BorderFlags QwtInterval::borderFlags() const +{ + return d_borderFlags; +} + +/*! + Assign the lower limit of the interval + + \param minValue Minimum value +*/ +inline void QwtInterval::setMinValue( double minValue ) +{ + d_minValue = minValue; +} + +/*! + Assign the upper limit of the interval + + \param maxValue Maximum value +*/ +inline void QwtInterval::setMaxValue( double maxValue ) +{ + d_maxValue = maxValue; +} + +//! \return Lower limit of the interval +inline double QwtInterval::minValue() const +{ + return d_minValue; +} + +//! \return Upper limit of the interval +inline double QwtInterval::maxValue() const +{ + return d_maxValue; +} + +/*! + Return the width of an interval + The width of invalid intervals is 0.0, otherwise the result is + maxValue() - minValue(). + + \sa isValid() +*/ +inline double QwtInterval::width() const +{ + return isValid() ? ( d_maxValue - d_minValue ) : 0.0; +} + +/*! + Intersection of two intervals + \sa intersect() +*/ +inline QwtInterval QwtInterval::operator&( + const QwtInterval &interval ) const +{ + return intersect( interval ); +} + +/*! + Union of two intervals + \sa unite() +*/ +inline QwtInterval QwtInterval::operator|( + const QwtInterval &interval ) const +{ + return unite( interval ); +} + +//! Compare two intervals +inline bool QwtInterval::operator==( const QwtInterval &other ) const +{ + return ( d_minValue == other.d_minValue ) && + ( d_maxValue == other.d_maxValue ) && + ( d_borderFlags == other.d_borderFlags ); +} + +//! Compare two intervals +inline bool QwtInterval::operator!=( const QwtInterval &other ) const +{ + return ( !( *this == other ) ); +} + +/*! + Extend an interval + + \param value Value + \return Extended interval + \sa extend() +*/ +inline QwtInterval QwtInterval::operator|( double value ) const +{ + return extend( value ); +} + +//! \return true, if isValid() && (minValue() >= maxValue()) +inline bool QwtInterval::isNull() const +{ + return isValid() && d_minValue >= d_maxValue; +} + +/*! + A interval is valid when minValue() <= maxValue(). + In case of QwtInterval::ExcludeBorders it is true + when minValue() < maxValue() +*/ +inline bool QwtInterval::isValid() const +{ + if ( ( d_borderFlags & ExcludeBorders ) == 0 ) + return d_minValue <= d_maxValue; + else + return d_minValue < d_maxValue; +} + +/*! + Invalidate the interval + + The limits are set to interval [0.0, -1.0] + \sa isValid() +*/ +inline void QwtInterval::invalidate() +{ + d_minValue = 0.0; + d_maxValue = -1.0; +} + +Q_DECLARE_OPERATORS_FOR_FLAGS( QwtInterval::BorderFlags ); + +#ifndef QT_NO_DEBUG_STREAM +QWT_EXPORT QDebug operator<<( QDebug, const QwtInterval & ); +#endif + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_interval_symbol.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_interval_symbol.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_interval_symbol.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_interval_symbol.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,298 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_interval_symbol.h" +#include "qwt_painter.h" +#include "qwt_math.h" +#include + +#if QT_VERSION < 0x040601 +#define qAtan2(y, x) ::atan2(y, x) +#endif + +class QwtIntervalSymbol::PrivateData +{ +public: + PrivateData(): + style( QwtIntervalSymbol::NoSymbol ), + width( 6 ) + { + } + + bool operator==( const PrivateData &other ) const + { + return ( style == other.style ) + && ( width == other.width ) + && ( brush == other.brush ) + && ( pen == other.pen ); + } + + QwtIntervalSymbol::Style style; + int width; + + QPen pen; + QBrush brush; +}; + +/*! + Constructor + + \param style Style of the symbol + \sa setStyle(), style(), Style +*/ +QwtIntervalSymbol::QwtIntervalSymbol( Style style ) +{ + d_data = new PrivateData(); + d_data->style = style; +} + +//! Copy constructor +QwtIntervalSymbol::QwtIntervalSymbol( const QwtIntervalSymbol &other ) +{ + d_data = new PrivateData(); + *d_data = *other.d_data; +} + +//! Destructor +QwtIntervalSymbol::~QwtIntervalSymbol() +{ + delete d_data; +} + +//! \brief Assignment operator +QwtIntervalSymbol &QwtIntervalSymbol::operator=( + const QwtIntervalSymbol &other ) +{ + *d_data = *other.d_data; + return *this; +} + +//! \brief Compare two symbols +bool QwtIntervalSymbol::operator==( + const QwtIntervalSymbol &other ) const +{ + return *d_data == *other.d_data; +} + +//! \brief Compare two symbols +bool QwtIntervalSymbol::operator!=( + const QwtIntervalSymbol &other ) const +{ + return !( *d_data == *other.d_data ); +} + +/*! + Specify the symbol style + + \param style Style + \sa style(), Style +*/ +void QwtIntervalSymbol::setStyle( Style style ) +{ + d_data->style = style; +} + +/*! + \return Current symbol style + \sa setStyle() +*/ +QwtIntervalSymbol::Style QwtIntervalSymbol::style() const +{ + return d_data->style; +} + +/*! + Specify the width of the symbol + It is used depending on the style. + + \param width Width + \sa width(), setStyle() +*/ +void QwtIntervalSymbol::setWidth( int width ) +{ + d_data->width = width; +} + +/*! + \return Width of the symbol. + \sa setWidth(), setStyle() +*/ +int QwtIntervalSymbol::width() const +{ + return d_data->width; +} + +/*! + \brief Assign a brush + + The brush is used for the Box style. + + \param brush Brush + \sa brush() +*/ +void QwtIntervalSymbol::setBrush( const QBrush &brush ) +{ + d_data->brush = brush; +} + +/*! + \return Brush + \sa setBrush() +*/ +const QBrush& QwtIntervalSymbol::brush() const +{ + return d_data->brush; +} + +/*! + Assign a pen + + \param pen Pen + \sa pen(), setBrush() +*/ +void QwtIntervalSymbol::setPen( const QPen &pen ) +{ + d_data->pen = pen; +} + +/*! + \return Pen + \sa setPen(), brush() +*/ +const QPen& QwtIntervalSymbol::pen() const +{ + return d_data->pen; +} + +/*! + Draw a symbol depending on its style + + \param painter Painter + \param orientation Orientation + \param from Start point of the interval in target device coordinates + \param to End point of the interval in target device coordinates + + \sa setStyle() +*/ +void QwtIntervalSymbol::draw( QPainter *painter, Qt::Orientation orientation, + const QPointF &from, const QPointF &to ) const +{ + const qreal pw = qMax( painter->pen().widthF(), qreal( 1.0 ) ); + + QPointF p1 = from; + QPointF p2 = to; + if ( QwtPainter::roundingAlignment( painter ) ) + { + p1 = p1.toPoint(); + p2 = p2.toPoint(); + } + + switch ( d_data->style ) + { + case QwtIntervalSymbol::Bar: + { + QwtPainter::drawLine( painter, p1, p2 ); + if ( d_data->width > pw ) + { + if ( ( orientation == Qt::Horizontal ) + && ( p1.y() == p2.y() ) ) + { + const double sw = d_data->width; + + const double y = p1.y() - sw / 2; + QwtPainter::drawLine( painter, + p1.x(), y, p1.x(), y + sw ); + QwtPainter::drawLine( painter, + p2.x(), y, p2.x(), y + sw ); + } + else if ( ( orientation == Qt::Vertical ) + && ( p1.x() == p2.x() ) ) + { + const double sw = d_data->width; + + const double x = p1.x() - sw / 2; + QwtPainter::drawLine( painter, + x, p1.y(), x + sw, p1.y() ); + QwtPainter::drawLine( painter, + x, p2.y(), x + sw, p2.y() ); + } + else + { + const double sw = d_data->width; + + const double dx = p2.x() - p1.x(); + const double dy = p2.y() - p1.y(); + const double angle = qAtan2( dy, dx ) + M_PI_2; + double dw2 = sw / 2.0; + + const double cx = qCos( angle ) * dw2; + const double sy = qSin( angle ) * dw2; + + QwtPainter::drawLine( painter, + p1.x() - cx, p1.y() - sy, + p1.x() + cx, p1.y() + sy ); + QwtPainter::drawLine( painter, + p2.x() - cx, p2.y() - sy, + p2.x() + cx, p2.y() + sy ); + } + } + break; + } + case QwtIntervalSymbol::Box: + { + if ( d_data->width <= pw ) + { + QwtPainter::drawLine( painter, p1, p2 ); + } + else + { + if ( ( orientation == Qt::Horizontal ) + && ( p1.y() == p2.y() ) ) + { + const double sw = d_data->width; + + const double y = p1.y() - d_data->width / 2; + QwtPainter::drawRect( painter, + p1.x(), y, p2.x() - p1.x(), sw ); + } + else if ( ( orientation == Qt::Vertical ) + && ( p1.x() == p2.x() ) ) + { + const double sw = d_data->width; + + const double x = p1.x() - d_data->width / 2; + QwtPainter::drawRect( painter, + x, p1.y(), sw, p2.y() - p1.y() ); + } + else + { + const double sw = d_data->width; + + const double dx = p2.x() - p1.x(); + const double dy = p2.y() - p1.y(); + const double angle = qAtan2( dy, dx ) + M_PI_2; + double dw2 = sw / 2.0; + + const int cx = qCos( angle ) * dw2; + const int sy = qSin( angle ) * dw2; + + QPolygonF polygon; + polygon += QPointF( p1.x() - cx, p1.y() - sy ); + polygon += QPointF( p1.x() + cx, p1.y() + sy ); + polygon += QPointF( p2.x() + cx, p2.y() + sy ); + polygon += QPointF( p2.x() - cx, p2.y() - sy ); + + QwtPainter::drawPolygon( painter, polygon ); + } + } + break; + } + default:; + } +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_interval_symbol.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_interval_symbol.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_interval_symbol.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_interval_symbol.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,86 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_INTERVAL_SYMBOL_H +#define QWT_INTERVAL_SYMBOL_H + +#include "qwt_global.h" +#include +#include + +class QPainter; +class QRect; +class QPointF; + +/*! + \brief A drawing primitive for displaying an interval like an error bar + + \sa QwtPlotIntervalCurve +*/ +class QWT_EXPORT QwtIntervalSymbol +{ +public: + //! Symbol style + enum Style + { + //! No Style. The symbol cannot be drawn. + NoSymbol = -1, + + /*! + The symbol displays a line with caps at the beginning/end. + The size of the caps depends on the symbol width(). + */ + Bar, + + /*! + The symbol displays a plain rectangle using pen() and brush(). + The size of the rectangle depends on the translated interval and + the width(), + */ + Box, + + /*! + Styles >= UserSymbol are reserved for derived + classes of QwtIntervalSymbol that overload draw() with + additional application specific symbol types. + */ + UserSymbol = 1000 + }; + +public: + QwtIntervalSymbol( Style = NoSymbol ); + QwtIntervalSymbol( const QwtIntervalSymbol & ); + virtual ~QwtIntervalSymbol(); + + QwtIntervalSymbol &operator=( const QwtIntervalSymbol & ); + bool operator==( const QwtIntervalSymbol & ) const; + bool operator!=( const QwtIntervalSymbol & ) const; + + void setWidth( int ); + int width() const; + + void setBrush( const QBrush& b ); + const QBrush& brush() const; + + void setPen( const QPen & ); + const QPen& pen() const; + + void setStyle( Style ); + Style style() const; + + virtual void draw( QPainter *, Qt::Orientation, + const QPointF& from, const QPointF& to ) const; + +private: + + class PrivateData; + PrivateData* d_data; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_knob.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_knob.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_knob.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_knob.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,666 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_knob.h" +#include "qwt_round_scale_draw.h" +#include "qwt_math.h" +#include "qwt_painter.h" +#include +#include +#include +#include +#include +#include +#include + +#if QT_VERSION < 0x040601 +#define qAtan2(y, x) ::atan2(y, x) +#define qFabs(x) ::fabs(x) +#define qFastCos(x) ::cos(x) +#define qFastSin(x) ::sin(x) +#endif + +class QwtKnob::PrivateData +{ +public: + PrivateData() + { + angle = 0.0; + nTurns = 0.0; + borderWidth = 2; + borderDist = 4; + totalAngle = 270.0; + scaleDist = 4; + markerStyle = QwtKnob::Notch; + maxScaleTicks = 11; + knobStyle = QwtKnob::Raised; + knobWidth = 50; + markerSize = 8; + } + + QwtKnob::KnobStyle knobStyle; + QwtKnob::MarkerStyle markerStyle; + + int borderWidth; + int borderDist; + int scaleDist; + int maxScaleTicks; + int knobWidth; + int markerSize; + + double angle; + double totalAngle; + double nTurns; + + mutable QRectF knobRect; // bounding rect of the knob without scale +}; + +/*! + Constructor + \param parent Parent widget +*/ +QwtKnob::QwtKnob( QWidget* parent ): + QwtAbstractSlider( Qt::Horizontal, parent ) +{ + initKnob(); +} + +void QwtKnob::initKnob() +{ + d_data = new PrivateData; + + setScaleDraw( new QwtRoundScaleDraw() ); + + setUpdateTime( 50 ); + setTotalAngle( 270.0 ); + recalcAngle(); + setSizePolicy( QSizePolicy( QSizePolicy::Minimum, QSizePolicy::Minimum ) ); + + setRange( 0.0, 10.0, 1.0 ); + setValue( 0.0 ); +} + +//! Destructor +QwtKnob::~QwtKnob() +{ + delete d_data; +} + +/*! + \brief Set the knob type + + \param knobStyle Knob type + \sa knobStyle(), setBorderWidth() +*/ +void QwtKnob::setKnobStyle( KnobStyle knobStyle ) +{ + if ( d_data->knobStyle != knobStyle ) + { + d_data->knobStyle = knobStyle; + update(); + } +} + +/*! + \return Marker type of the knob + \sa setKnobStyle(), setBorderWidth() +*/ +QwtKnob::KnobStyle QwtKnob::knobStyle() const +{ + return d_data->knobStyle; +} + +/*! + \brief Set the marker type of the knob + + \param markerStyle Marker type + \sa markerStyle(), setMarkerSize() +*/ +void QwtKnob::setMarkerStyle( MarkerStyle markerStyle ) +{ + if ( d_data->markerStyle != markerStyle ) + { + d_data->markerStyle = markerStyle; + update(); + } +} + +/*! + \return Marker type of the knob + \sa setMarkerStyle(), setMarkerSize() +*/ +QwtKnob::MarkerStyle QwtKnob::markerStyle() const +{ + return d_data->markerStyle; +} + +/*! + \brief Set the total angle by which the knob can be turned + \param angle Angle in degrees. + + The default angle is 270 degrees. It is possible to specify + an angle of more than 360 degrees so that the knob can be + turned several times around its axis. +*/ +void QwtKnob::setTotalAngle ( double angle ) +{ + if ( angle < 10.0 ) + d_data->totalAngle = 10.0; + else + d_data->totalAngle = angle; + + scaleDraw()->setAngleRange( -0.5 * d_data->totalAngle, + 0.5 * d_data->totalAngle ); + layoutKnob( true ); +} + +//! Return the total angle +double QwtKnob::totalAngle() const +{ + return d_data->totalAngle; +} + +/*! + Change the scale draw of the knob + + For changing the labels of the scales, it + is necessary to derive from QwtRoundScaleDraw and + overload QwtRoundScaleDraw::label(). + + \sa scaleDraw() +*/ +void QwtKnob::setScaleDraw( QwtRoundScaleDraw *scaleDraw ) +{ + setAbstractScaleDraw( scaleDraw ); + setTotalAngle( d_data->totalAngle ); +} + +/*! + \return the scale draw of the knob + \sa setScaleDraw() +*/ +const QwtRoundScaleDraw *QwtKnob::scaleDraw() const +{ + return static_cast( abstractScaleDraw() ); +} + +/*! + \return the scale draw of the knob + \sa setScaleDraw() +*/ +QwtRoundScaleDraw *QwtKnob::scaleDraw() +{ + return static_cast( abstractScaleDraw() ); +} + +/*! + \brief Notify change of value + + Sets the knob's value to the nearest multiple + of the step size. +*/ +void QwtKnob::valueChange() +{ + recalcAngle(); + update(); + QwtAbstractSlider::valueChange(); +} + +/*! + \brief Determine the value corresponding to a specified position + + Called by QwtAbstractSlider + \param pos point +*/ +double QwtKnob::getValue( const QPoint &pos ) +{ + const double dx = rect().center().x() - pos.x(); + const double dy = rect().center().y() - pos.y(); + + const double arc = qAtan2( -dx, dy ) * 180.0 / M_PI; + + double newValue = 0.5 * ( minValue() + maxValue() ) + + ( arc + d_data->nTurns * 360.0 ) * ( maxValue() - minValue() ) + / d_data->totalAngle; + + const double oneTurn = qFabs( maxValue() - minValue() ) * 360.0 / d_data->totalAngle; + const double eqValue = value() + mouseOffset(); + + if ( qFabs( newValue - eqValue ) > 0.5 * oneTurn ) + { + if ( newValue < eqValue ) + newValue += oneTurn; + else + newValue -= oneTurn; + } + + return newValue; +} + +/*! + \brief Set the scrolling mode and direction + + Called by QwtAbstractSlider + \param pos Point in question + \param scrollMode Scrolling mode + \param direction Direction +*/ +void QwtKnob::getScrollMode( const QPoint &pos, + QwtAbstractSlider::ScrollMode &scrollMode, int &direction ) const +{ + const int r = d_data->knobRect.width() / 2; + + const int dx = d_data->knobRect.x() + r - pos.x(); + const int dy = d_data->knobRect.y() + r - pos.y(); + + if ( ( dx * dx ) + ( dy * dy ) <= ( r * r ) ) // point is inside the knob + { + scrollMode = QwtAbstractSlider::ScrMouse; + direction = 0; + } + else // point lies outside + { + scrollMode = QwtAbstractSlider::ScrTimer; + double arc = qAtan2( double( -dx ), double( dy ) ) * 180.0 / M_PI; + if ( arc < d_data->angle ) + direction = -1; + else if ( arc > d_data->angle ) + direction = 1; + else + direction = 0; + } +} + +/*! + \brief Notify a change of the range + + Called by QwtAbstractSlider +*/ +void QwtKnob::rangeChange() +{ + if ( autoScale() ) + rescale( minValue(), maxValue() ); + + layoutKnob( true ); + recalcAngle(); +} + +/*! + Qt Resize Event + \param event Resize event +*/ +void QwtKnob::resizeEvent( QResizeEvent *event ) +{ + Q_UNUSED( event ); + layoutKnob( false ); +} + +/*! + Handle QEvent::StyleChange and QEvent::FontChange; + \param event Change event +*/ +void QwtKnob::changeEvent( QEvent *event ) +{ + switch( event->type() ) + { + case QEvent::StyleChange: + case QEvent::FontChange: + layoutKnob( true ); + break; + default: + break; + } +} + +/*! + Recalculate the knob's geometry and layout based on + the current rect and fonts. + + \param update_geometry notify the layout system and call update + to redraw the scale +*/ +void QwtKnob::layoutKnob( bool update_geometry ) +{ + const double d = d_data->knobWidth; + + d_data->knobRect.setWidth( d ); + d_data->knobRect.setHeight( d ); + d_data->knobRect.moveCenter( rect().center() ); + + scaleDraw()->setRadius( 0.5 * d + d_data->scaleDist ); + scaleDraw()->moveCenter( rect().center() ); + + if ( update_geometry ) + { + updateGeometry(); + update(); + } +} + +/*! + Repaint the knob + \param event Paint event +*/ +void QwtKnob::paintEvent( QPaintEvent *event ) +{ + QPainter painter( this ); + painter.setClipRegion( event->region() ); + + QStyleOption opt; + opt.init(this); + style()->drawPrimitive(QStyle::PE_Widget, &opt, &painter, this); + + painter.setRenderHint( QPainter::Antialiasing, true ); + + if ( !d_data->knobRect.contains( event->region().boundingRect() ) ) + scaleDraw()->draw( &painter, palette() ); + + drawKnob( &painter, d_data->knobRect ); + drawMarker( &painter, d_data->knobRect, d_data->angle ); + + painter.setRenderHint( QPainter::Antialiasing, false ); + + if ( hasFocus() ) + QwtPainter::drawFocusRect( &painter, this ); +} + +/*! + \brief Draw the knob + \param painter painter + \param knobRect Bounding rectangle of the knob (without scale) +*/ +void QwtKnob::drawKnob( QPainter *painter, + const QRectF &knobRect ) const +{ + double dim = qMin( knobRect.width(), knobRect.height() ); + dim -= d_data->borderWidth * 0.5; + + QRectF aRect( 0, 0, dim, dim ); + aRect.moveCenter( knobRect.center() ); + + QPen pen( Qt::NoPen ); + if ( d_data->borderWidth > 0 ) + { + QColor c1 = palette().color( QPalette::Light ); + QColor c2 = palette().color( QPalette::Dark ); + + QLinearGradient gradient( aRect.topLeft(), aRect.bottomRight() ); + gradient.setColorAt( 0.0, c1 ); + gradient.setColorAt( 0.3, c1 ); + gradient.setColorAt( 0.7, c2 ); + gradient.setColorAt( 1.0, c2 ); + + pen = QPen( gradient, d_data->borderWidth ); + } + + QBrush brush; + switch( d_data->knobStyle ) + { + case QwtKnob::Raised: + { + double off = 0.3 * knobRect.width(); + QRadialGradient gradient( knobRect.center(), + knobRect.width(), knobRect.topLeft() + QPoint( off, off ) ); + + gradient.setColorAt( 0.0, palette().color( QPalette::Midlight ) ); + gradient.setColorAt( 1.0, palette().color( QPalette::Button ) ); + + brush = QBrush( gradient ); + + break; + } + case QwtKnob::Sunken: + { + QLinearGradient gradient( + knobRect.topLeft(), knobRect.bottomRight() ); + gradient.setColorAt( 0.0, palette().color( QPalette::Mid ) ); + gradient.setColorAt( 0.5, palette().color( QPalette::Button ) ); + gradient.setColorAt( 1.0, palette().color( QPalette::Midlight ) ); + brush = QBrush( gradient ); + + break; + } + default: + brush = palette().brush( QPalette::Button ); + } + + painter->setPen( pen ); + painter->setBrush( brush ); + painter->drawEllipse( aRect ); +} + + +/*! + \brief Draw the marker at the knob's front + \param painter Painter + \param rect Bounding rectangle of the knob without scale + \param angle Angle of the marker in degrees +*/ +void QwtKnob::drawMarker( QPainter *painter, + const QRectF &rect, double angle ) const +{ + if ( d_data->markerStyle == NoMarker || !isValid() ) + return; + + const double radians = angle * M_PI / 180.0; + const double sinA = -qFastSin( radians ); + const double cosA = qFastCos( radians ); + + const double xm = rect.center().x(); + const double ym = rect.center().y(); + const double margin = 4.0; + + double radius = 0.5 * ( rect.width() - d_data->borderWidth ) - margin; + if ( radius < 1.0 ) + radius = 1.0; + + switch ( d_data->markerStyle ) + { + case Notch: + case Nub: + { + const double dotWidth = + qMin( double( d_data->markerSize ), radius); + + const double dotCenterDist = radius - 0.5 * dotWidth; + if ( dotCenterDist > 0.0 ) + { + const QPointF center( xm - sinA * dotCenterDist, + ym - cosA * dotCenterDist ); + + QRectF ellipse( 0.0, 0.0, dotWidth, dotWidth ); + ellipse.moveCenter( center ); + + QColor c1 = palette().color( QPalette::Light ); + QColor c2 = palette().color( QPalette::Mid ); + + if ( d_data->markerStyle == Notch ) + qSwap( c1, c2 ); + + QLinearGradient gradient( + ellipse.topLeft(), ellipse.bottomRight() ); + gradient.setColorAt( 0.0, c1 ); + gradient.setColorAt( 1.0, c2 ); + + painter->setPen( Qt::NoPen ); + painter->setBrush( gradient ); + + painter->drawEllipse( ellipse ); + } + break; + } + case Dot: + { + const double dotWidth = + qMin( double( d_data->markerSize ), radius); + + const double dotCenterDist = radius - 0.5 * dotWidth; + if ( dotCenterDist > 0.0 ) + { + const QPointF center( xm - sinA * dotCenterDist, + ym - cosA * dotCenterDist ); + + QRectF ellipse( 0.0, 0.0, dotWidth, dotWidth ); + ellipse.moveCenter( center ); + + painter->setPen( Qt::NoPen ); + painter->setBrush( palette().color( QPalette::ButtonText ) ); + painter->drawEllipse( ellipse ); + } + + break; + } + case Tick: + { + const double rb = qMax( radius - d_data->markerSize, 1.0 ); + const double re = radius; + + const QLine line( xm - sinA * rb, ym - cosA * rb, + xm - sinA * re, ym - cosA * re ); + + QPen pen( palette().color( QPalette::ButtonText ), 0 ); + pen.setCapStyle( Qt::FlatCap ); + painter->setPen( pen ); + painter->drawLine ( line ); + + break; + } +#if 0 + case Triangle: + { + const double rb = qMax( radius - d_data->markerSize, 1.0 ); + const double re = radius; + + painter->translate( rect.center() ); + painter->rotate( angle - 90.0 ); + + QPolygonF polygon; + polygon += QPointF( re, 0.0 ); + polygon += QPointF( rb, 0.5 * ( re - rb ) ); + polygon += QPointF( rb, -0.5 * ( re - rb ) ); + + painter->setPen( Qt::NoPen ); + painter->setBrush( palette().color( QPalette::Text ) ); + painter->drawPolygon( polygon ); + break; + } +#endif + default: + break; + } +} + +/*! + \brief Change the knob's width. + + The specified width must be >= 5, or it will be clipped. + \param width New width +*/ +void QwtKnob::setKnobWidth( int width ) +{ + d_data->knobWidth = qMax( width, 5 ); + layoutKnob( true ); +} + +//! Return the width of the knob +int QwtKnob::knobWidth() const +{ + return d_data->knobWidth; +} + +/*! + \brief Set the knob's border width + \param borderWidth new border width +*/ +void QwtKnob::setBorderWidth( int borderWidth ) +{ + d_data->borderWidth = qMax( borderWidth, 0 ); + layoutKnob( true ); +} + +//! Return the border width +int QwtKnob::borderWidth() const +{ + return d_data->borderWidth; +} + +/*! + \brief Set the size of the marker + \sa markerSize(), markerStyle() +*/ +void QwtKnob::setMarkerSize( int size ) +{ + if ( d_data->markerSize != size ) + { + d_data->markerSize = size; + update(); + } +} + +//! Return the marker size +int QwtKnob::markerSize() const +{ + return d_data->markerSize; +} + +/*! + \brief Recalculate the marker angle corresponding to the + current value +*/ +void QwtKnob::recalcAngle() +{ + // + // calculate the angle corresponding to the value + // + if ( maxValue() == minValue() ) + { + d_data->angle = 0; + d_data->nTurns = 0; + } + else + { + d_data->angle = ( value() - 0.5 * ( minValue() + maxValue() ) ) + / ( maxValue() - minValue() ) * d_data->totalAngle; + d_data->nTurns = qFloor( ( d_data->angle + 180.0 ) / 360.0 ); + d_data->angle = d_data->angle - d_data->nTurns * 360.0; + } +} + + +/*! + Recalculates the layout + \sa layoutKnob() +*/ +void QwtKnob::scaleChange() +{ + layoutKnob( true ); +} + +/*! + \return minimumSizeHint() +*/ +QSize QwtKnob::sizeHint() const +{ + const QSize hint = minimumSizeHint(); + return hint.expandedTo( QApplication::globalStrut() ); +} + +/*! + \brief Return a minimum size hint + \warning The return value of QwtKnob::minimumSizeHint() depends on the + font and the scale. +*/ +QSize QwtKnob::minimumSizeHint() const +{ + // Add the scale radial thickness to the knobWidth + const int sh = qCeil( scaleDraw()->extent( font() ) ); + const int d = 2 * sh + 2 * d_data->scaleDist + d_data->knobWidth; + + return QSize( d, d ); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_knob.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_knob.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_knob.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_knob.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,159 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_KNOB_H +#define QWT_KNOB_H + +#include "qwt_global.h" +#include "qwt_abstract_slider.h" +#include "qwt_abstract_scale.h" + +class QwtRoundScaleDraw; + +/*! + \brief The Knob Widget + + The QwtKnob widget imitates look and behaviour of a volume knob on a radio. + It contains a scale around the knob which is set up automatically or can + be configured manually (see QwtAbstractScale). + Automatic scrolling is enabled when the user presses a mouse + button on the scale. For a description of signals, slots and other + members, see QwtAbstractSlider. + + \image html knob.png + \sa QwtAbstractSlider and QwtAbstractScale for the descriptions + of the inherited members. +*/ + +class QWT_EXPORT QwtKnob : public QwtAbstractSlider, public QwtAbstractScale +{ + Q_OBJECT + + Q_ENUMS ( KnobStyle ) + Q_ENUMS ( MarkerStyle ) + + Q_PROPERTY( KnobStyle knobStyle READ knobStyle WRITE setKnobStyle ) + Q_PROPERTY( MarkerStyle markerStyle READ markerStyle WRITE setMarkerStyle ) + Q_PROPERTY( int knobWidth READ knobWidth WRITE setKnobWidth ) + Q_PROPERTY( int borderWidth READ borderWidth WRITE setBorderWidth ) + Q_PROPERTY( double totalAngle READ totalAngle WRITE setTotalAngle ) + Q_PROPERTY( int markerSize READ markerSize WRITE setMarkerSize ) + Q_PROPERTY( int borderWidth READ borderWidth WRITE setBorderWidth ) + +public: + /*! + \brief Style of the knob surface + + Depending on the KnobStyle the surface of the knob is + filled from the brushes of the widget palette(). + + \sa setKnobStyle(), knobStyle() + */ + enum KnobStyle + { + //! Fill the knob with a brush from QPalette::Button. + NoStyle = -1, + + //! Build a gradient from QPalette::Midlight and QPalette::Button + Raised, + + /*! + Build a gradient from QPalette::Midlight, QPalette::Button + and QPalette::Midlight + */ + Sunken + }; + + /*! + \brief Marker type + + The marker indicates the current value on the knob + The default setting is a Notch marker. + + \sa setMarkerStyle(), setMarkerSize() + */ + enum MarkerStyle + { + //! Don't paint any marker + NoMarker = -1, + + //! Paint a single tick in QPalette::ButtonText color + Tick, + + //! Paint a circle in QPalette::ButtonText color + Dot, + + /*! + Draw a raised ellipse with a gradient build from + QPalette::Light and QPalette::Mid + */ + Nub, + + /*! + Draw a sunken ellipse with a gradient build from + QPalette::Light and QPalette::Mid + */ + Notch + }; + + explicit QwtKnob( QWidget* parent = NULL ); + virtual ~QwtKnob(); + + void setKnobWidth( int w ); + int knobWidth() const; + + void setTotalAngle ( double angle ); + double totalAngle() const; + + void setKnobStyle( KnobStyle ); + KnobStyle knobStyle() const; + + void setBorderWidth( int bw ); + int borderWidth() const; + + void setMarkerStyle( MarkerStyle ); + MarkerStyle markerStyle() const; + + void setMarkerSize( int ); + int markerSize() const; + + virtual QSize sizeHint() const; + virtual QSize minimumSizeHint() const; + + void setScaleDraw( QwtRoundScaleDraw * ); + const QwtRoundScaleDraw *scaleDraw() const; + QwtRoundScaleDraw *scaleDraw(); + +protected: + virtual void paintEvent( QPaintEvent * ); + virtual void resizeEvent( QResizeEvent * ); + virtual void changeEvent( QEvent * ); + + virtual void drawKnob( QPainter *, const QRectF & ) const; + virtual void drawMarker( QPainter *, + const QRectF &, double arc ) const; + + virtual double getValue( const QPoint &p ); + virtual void getScrollMode( const QPoint &, + QwtAbstractSlider::ScrollMode &, int &direction ) const; + +private: + void initKnob(); + void layoutKnob( bool update ); + void recalcAngle(); + + virtual void valueChange(); + virtual void rangeChange(); + virtual void scaleChange(); + + class PrivateData; + PrivateData *d_data; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_legend.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_legend.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_legend.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_legend.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,520 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_legend.h" +#include "qwt_legend_itemmanager.h" +#include "qwt_legend_item.h" +#include "qwt_dyngrid_layout.h" +#include "qwt_math.h" +#include +#include +#include +#include + +class QwtLegend::PrivateData +{ +public: + class LegendMap + { + public: + void insert( const QwtLegendItemManager *, QWidget * ); + + void remove( const QwtLegendItemManager * ); + void remove( QWidget * ); + + void clear(); + + uint count() const; + + inline const QWidget *find( const QwtLegendItemManager * ) const; + inline QWidget *find( const QwtLegendItemManager * ); + + inline const QwtLegendItemManager *find( const QWidget * ) const; + inline QwtLegendItemManager *find( const QWidget * ); + + const QMap &widgetMap() const; + QMap &widgetMap(); + + private: + QMap d_widgetMap; + QMap d_itemMap; + }; + + QwtLegend::LegendItemMode itemMode; + + LegendMap map; + + class LegendView; + LegendView *view; +}; + +class QwtLegend::PrivateData::LegendView: public QScrollArea +{ +public: + LegendView( QWidget *parent ): + QScrollArea( parent ) + { + setFocusPolicy( Qt::NoFocus ); + + contentsWidget = new QWidget( this ); + contentsWidget->setObjectName( "QwtLegendViewContents" ); + + setWidget( contentsWidget ); + setWidgetResizable( false ); + + viewport()->setObjectName( "QwtLegendViewport" ); + + // QScrollArea::setWidget internally sets autoFillBackground to true + // But we don't want a background. + contentsWidget->setAutoFillBackground( false ); + viewport()->setAutoFillBackground( false ); + } + + virtual bool viewportEvent( QEvent *e ) + { + bool ok = QScrollArea::viewportEvent( e ); + + if ( e->type() == QEvent::Resize ) + { + QEvent event( QEvent::LayoutRequest ); + QApplication::sendEvent( contentsWidget, &event ); + } + return ok; + } + + QSize viewportSize( int w, int h ) const + { + const int sbHeight = horizontalScrollBar()->sizeHint().height(); + const int sbWidth = verticalScrollBar()->sizeHint().width(); + + const int cw = contentsRect().width(); + const int ch = contentsRect().height(); + + int vw = cw; + int vh = ch; + + if ( w > vw ) + vh -= sbHeight; + + if ( h > vh ) + { + vw -= sbWidth; + if ( w > vw && vh == ch ) + vh -= sbHeight; + } + return QSize( vw, vh ); + } + + QWidget *contentsWidget; +}; + +void QwtLegend::PrivateData::LegendMap::insert( + const QwtLegendItemManager *item, QWidget *widget ) +{ + d_itemMap.insert( item, widget ); + d_widgetMap.insert( widget, item ); +} + +void QwtLegend::PrivateData::LegendMap::remove( const QwtLegendItemManager *item ) +{ + QWidget *widget = d_itemMap[item]; + d_itemMap.remove( item ); + d_widgetMap.remove( widget ); +} + +void QwtLegend::PrivateData::LegendMap::remove( QWidget *widget ) +{ + const QwtLegendItemManager *item = d_widgetMap[widget]; + d_itemMap.remove( item ); + d_widgetMap.remove( widget ); +} + +void QwtLegend::PrivateData::LegendMap::clear() +{ + + /* + We can't delete the widgets in the following loop, because + we would get ChildRemoved events, changing d_itemMap, while + we are iterating. + */ + + QList widgets; + + QMap::const_iterator it; + for ( it = d_itemMap.begin(); it != d_itemMap.end(); ++it ) + widgets.append( it.value() ); + + d_itemMap.clear(); + d_widgetMap.clear(); + + for ( int i = 0; i < ( int )widgets.size(); i++ ) + delete widgets[i]; +} + +uint QwtLegend::PrivateData::LegendMap::count() const +{ + return d_itemMap.count(); +} + +inline const QWidget *QwtLegend::PrivateData::LegendMap::find( + const QwtLegendItemManager *item ) const +{ + if ( !d_itemMap.contains( item ) ) + return NULL; + + return d_itemMap[item]; +} + +inline QWidget *QwtLegend::PrivateData::LegendMap::find( + const QwtLegendItemManager *item ) +{ + if ( !d_itemMap.contains( item ) ) + return NULL; + + return d_itemMap[item]; +} + +inline const QwtLegendItemManager *QwtLegend::PrivateData::LegendMap::find( + const QWidget *widget ) const +{ + QWidget *w = const_cast( widget ); + if ( !d_widgetMap.contains( w ) ) + return NULL; + + return d_widgetMap[w]; +} + +inline QwtLegendItemManager *QwtLegend::PrivateData::LegendMap::find( + const QWidget *widget ) +{ + QWidget *w = const_cast( widget ); + if ( !d_widgetMap.contains( w ) ) + return NULL; + + return const_cast( d_widgetMap[w] ); +} + +inline const QMap & +QwtLegend::PrivateData::LegendMap::widgetMap() const +{ + return d_widgetMap; +} + +inline QMap & +QwtLegend::PrivateData::LegendMap::widgetMap() +{ + return d_widgetMap; +} + +/*! + Constructor + + \param parent Parent widget +*/ +QwtLegend::QwtLegend( QWidget *parent ): + QFrame( parent ) +{ + setFrameStyle( NoFrame ); + + d_data = new QwtLegend::PrivateData; + d_data->itemMode = QwtLegend::ReadOnlyItem; + + d_data->view = new QwtLegend::PrivateData::LegendView( this ); + d_data->view->setObjectName( "QwtLegendView" ); + d_data->view->setFrameStyle( NoFrame ); + + QwtDynGridLayout *gridLayout = new QwtDynGridLayout( + d_data->view->contentsWidget ); + gridLayout->setAlignment( Qt::AlignHCenter | Qt::AlignTop ); + + d_data->view->contentsWidget->installEventFilter( this ); + + QVBoxLayout *layout = new QVBoxLayout( this ); + layout->setContentsMargins( 0, 0, 0, 0 ); + layout->addWidget( d_data->view ); +} + +//! Destructor +QwtLegend::~QwtLegend() +{ + delete d_data; +} + +//! \sa LegendItemMode +void QwtLegend::setItemMode( LegendItemMode mode ) +{ + d_data->itemMode = mode; +} + +//! \sa LegendItemMode +QwtLegend::LegendItemMode QwtLegend::itemMode() const +{ + return d_data->itemMode; +} + +/*! + The contents widget is the only child of the viewport of + the internal QScrollArea and the parent widget of all legend items. + + \return Container widget of the legend items +*/ +QWidget *QwtLegend::contentsWidget() +{ + return d_data->view->contentsWidget; +} + +/*! + \return Horizontal scrollbar + \sa verticalScrollBar() +*/ +QScrollBar *QwtLegend::horizontalScrollBar() const +{ + return d_data->view->horizontalScrollBar(); +} + +/*! + \return Vertical scrollbar + \sa horizontalScrollBar() +*/ +QScrollBar *QwtLegend::verticalScrollBar() const +{ + return d_data->view->verticalScrollBar(); +} + +/*! + The contents widget is the only child of the viewport of + the internal QScrollArea and the parent widget of all legend items. + + \return Container widget of the legend items + +*/ +const QWidget *QwtLegend::contentsWidget() const +{ + return d_data->view->contentsWidget; +} + +/*! + Insert a new item for a plot item + \param plotItem Plot item + \param legendItem New legend item + \note The parent of item will be changed to contentsWidget() +*/ +void QwtLegend::insert( const QwtLegendItemManager *plotItem, QWidget *legendItem ) +{ + if ( legendItem == NULL || plotItem == NULL ) + return; + + QWidget *contentsWidget = d_data->view->contentsWidget; + + if ( legendItem->parent() != contentsWidget ) + legendItem->setParent( contentsWidget ); + + legendItem->show(); + + d_data->map.insert( plotItem, legendItem ); + + layoutContents(); + + if ( contentsWidget->layout() ) + { + contentsWidget->layout()->addWidget( legendItem ); + + // set tab focus chain + + QWidget *w = NULL; + + for ( int i = 0; i < contentsWidget->layout()->count(); i++ ) + { + QLayoutItem *item = contentsWidget->layout()->itemAt( i ); + if ( w && item->widget() ) + QWidget::setTabOrder( w, item->widget() ); + + w = item->widget(); + } + } + if ( parentWidget() && parentWidget()->layout() == NULL ) + { + /* + updateGeometry() doesn't post LayoutRequest in certain + situations, like when we are hidden. But we want the + parent widget notified, so it can show/hide the legend + depending on its items. + */ + QApplication::postEvent( parentWidget(), + new QEvent( QEvent::LayoutRequest ) ); + } +} + +/*! + Find the widget that represents a plot item + + \param plotItem Plot item + \return Widget on the legend, or NULL +*/ +QWidget *QwtLegend::find( const QwtLegendItemManager *plotItem ) const +{ + return d_data->map.find( plotItem ); +} + +/*! + Find the widget that represents a plot item + + \param legendItem Legend item + \return Widget on the legend, or NULL +*/ +QwtLegendItemManager *QwtLegend::find( const QWidget *legendItem ) const +{ + return d_data->map.find( legendItem ); +} + +/*! + Find the corresponding item for a plotItem and remove it + from the item list. + + \param plotItem Plot item +*/ +void QwtLegend::remove( const QwtLegendItemManager *plotItem ) +{ + QWidget *legendItem = d_data->map.find( plotItem ); + d_data->map.remove( legendItem ); + delete legendItem; +} + +//! Remove all items. +void QwtLegend::clear() +{ + bool doUpdate = updatesEnabled(); + if ( doUpdate ) + setUpdatesEnabled( false ); + + d_data->map.clear(); + + if ( doUpdate ) + setUpdatesEnabled( true ); + + update(); +} + +//! Return a size hint. +QSize QwtLegend::sizeHint() const +{ + QSize hint = d_data->view->contentsWidget->sizeHint(); + hint += QSize( 2 * frameWidth(), 2 * frameWidth() ); + + return hint; +} + +/*! + \return The preferred height, for the width w. + \param width Width +*/ +int QwtLegend::heightForWidth( int width ) const +{ + width -= 2 * frameWidth(); + + int h = d_data->view->contentsWidget->heightForWidth( width ); + if ( h >= 0 ) + h += 2 * frameWidth(); + + return h; +} + +/*! + Adjust contents widget and item layout to the size of the viewport(). +*/ +void QwtLegend::layoutContents() +{ + const QSize visibleSize = + d_data->view->viewport()->contentsRect().size(); + + const QLayout *l = d_data->view->contentsWidget->layout(); + if ( l && l->inherits( "QwtDynGridLayout" ) ) + { + const QwtDynGridLayout *tl = ( const QwtDynGridLayout * )l; + + const int minW = int( tl->maxItemWidth() ) + 2 * tl->margin(); + + int w = qMax( visibleSize.width(), minW ); + int h = qMax( tl->heightForWidth( w ), visibleSize.height() ); + + const int vpWidth = d_data->view->viewportSize( w, h ).width(); + if ( w > vpWidth ) + { + w = qMax( vpWidth, minW ); + h = qMax( tl->heightForWidth( w ), visibleSize.height() ); + } + + d_data->view->contentsWidget->resize( w, h ); + } +} + +/*! + Handle QEvent::ChildRemoved andQEvent::LayoutRequest events + for the contentsWidget(). + + \param object Object to be filtered + \param event Event +*/ +bool QwtLegend::eventFilter( QObject *object, QEvent *event ) +{ + if ( object == d_data->view->contentsWidget ) + { + switch ( event->type() ) + { + case QEvent::ChildRemoved: + { + const QChildEvent *ce = + static_cast(event); + if ( ce->child()->isWidgetType() ) + { + QWidget *w = static_cast< QWidget * >( ce->child() ); + d_data->map.remove( w ); + } + break; + } + case QEvent::LayoutRequest: + { + layoutContents(); + break; + } + default: + break; + } + } + + return QFrame::eventFilter( object, event ); +} + + +//! Return true, if there are no legend items. +bool QwtLegend::isEmpty() const +{ + return d_data->map.count() == 0; +} + +//! Return the number of legend items. +uint QwtLegend::itemCount() const +{ + return d_data->map.count(); +} + +//! Return a list of all legend items +QList QwtLegend::legendItems() const +{ + const QMap &map = + d_data->map.widgetMap(); + + QList list; + + QMap::const_iterator it; + for ( it = map.begin(); it != map.end(); ++it ) + list += it.key(); + + return list; +} \ No newline at end of file diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_legend.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_legend.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_legend.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_legend.h 2011-04-15 10:48:46.000000000 +0000 @@ -0,0 +1,95 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_LEGEND_H +#define QWT_LEGEND_H + +#include "qwt_global.h" +#include +#include + +class QScrollBar; +class QwtLegendItemManager; + +/*! + \brief The legend widget + + The QwtLegend widget is a tabular arrangement of legend items. Legend + items might be any type of widget, but in general they will be + a QwtLegendItem. + + \sa QwtLegendItem, QwtLegendItemManager QwtPlot +*/ + +class QWT_EXPORT QwtLegend : public QFrame +{ + Q_OBJECT + +public: + /*! + \brief Interaction mode for the legend items + + The default is QwtLegend::ReadOnlyItem. + + \sa setItemMode(), itemMode(), QwtLegendItem::IdentifierMode + QwtLegendItem::clicked(), QwtLegendItem::checked(), + QwtPlot::legendClicked(), QwtPlot::legendChecked() + */ + + enum LegendItemMode + { + //! The legend item is not interactive, like a label + ReadOnlyItem, + + //! The legend item is clickable, like a push button + ClickableItem, + + //! The legend item is checkable, like a checkable button + CheckableItem + }; + + explicit QwtLegend( QWidget *parent = NULL ); + virtual ~QwtLegend(); + + void setItemMode( LegendItemMode ); + LegendItemMode itemMode() const; + + QWidget *contentsWidget(); + const QWidget *contentsWidget() const; + + void insert( const QwtLegendItemManager *, QWidget * ); + void remove( const QwtLegendItemManager * ); + + QWidget *find( const QwtLegendItemManager * ) const; + QwtLegendItemManager *find( const QWidget * ) const; + + virtual QList legendItems() const; + + void clear(); + + bool isEmpty() const; + uint itemCount() const; + + virtual bool eventFilter( QObject *, QEvent * ); + + virtual QSize sizeHint() const; + virtual int heightForWidth( int w ) const; + + QScrollBar *horizontalScrollBar() const; + QScrollBar *verticalScrollBar() const; + +protected: + virtual void layoutContents(); + +private: + class PrivateData; + PrivateData *d_data; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_legend_item.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_legend_item.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_legend_item.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_legend_item.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,405 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_legend_item.h" +#include "qwt_math.h" +#include "qwt_painter.h" +#include "qwt_symbol.h" +#include +#include +#include +#include +#include +#include +#include + +static const int ButtonFrame = 2; +static const int Margin = 2; + +static QSize buttonShift( const QwtLegendItem *w ) +{ + QStyleOption option; + option.init( w ); + + const int ph = w->style()->pixelMetric( + QStyle::PM_ButtonShiftHorizontal, &option, w ); + const int pv = w->style()->pixelMetric( + QStyle::PM_ButtonShiftVertical, &option, w ); + return QSize( ph, pv ); +} + +class QwtLegendItem::PrivateData +{ +public: + PrivateData(): + itemMode( QwtLegend::ReadOnlyItem ), + isDown( false ), + identifierSize( 8, 8 ), + spacing( Margin ) + { + } + + QwtLegend::LegendItemMode itemMode; + bool isDown; + + QSize identifierSize; + QPixmap identifier; + + int spacing; +}; + +/*! + \param parent Parent widget +*/ +QwtLegendItem::QwtLegendItem( QWidget *parent ): + QwtTextLabel( parent ) +{ + d_data = new PrivateData; + setMargin( Margin ); + setIndent( Margin + d_data->identifierSize.width() + 2 * d_data->spacing ); +} + +//! Destructor +QwtLegendItem::~QwtLegendItem() +{ + delete d_data; + d_data = NULL; +} + +/*! + Set the text to the legend item + + \param text Text label + \sa QwtTextLabel::text() +*/ +void QwtLegendItem::setText( const QwtText &text ) +{ + const int flags = Qt::AlignLeft | Qt::AlignVCenter + | Qt::TextExpandTabs | Qt::TextWordWrap; + + QwtText txt = text; + txt.setRenderFlags( flags ); + + QwtTextLabel::setText( txt ); +} + +/*! + Set the item mode + The default is QwtLegend::ReadOnlyItem + + \param mode Item mode + \sa itemMode() +*/ +void QwtLegendItem::setItemMode( QwtLegend::LegendItemMode mode ) +{ + if ( mode != d_data->itemMode ) + { + d_data->itemMode = mode; + d_data->isDown = false; + + setFocusPolicy( mode != QwtLegend::ReadOnlyItem ? Qt::TabFocus : Qt::NoFocus ); + setMargin( ButtonFrame + Margin ); + + updateGeometry(); + } +} + +/*! + Return the item mode + + \sa setItemMode() +*/ +QwtLegend::LegendItemMode QwtLegendItem::itemMode() const +{ + return d_data->itemMode; +} + +/*! + Assign the identifier + The identifier needs to be created according to the identifierWidth() + + \param identifier Pixmap representing a plot item + + \sa identifier(), identifierWidth() +*/ +void QwtLegendItem::setIdentifier( const QPixmap &identifier ) +{ + d_data->identifier = identifier; + update(); +} + +/*! + \return pixmap representing a plot item + \sa setIdentifier() +*/ +QPixmap QwtLegendItem::identifier() const +{ + return d_data->identifier; +} + +/*! + Set the size for the identifier + Default is 8x8 pixels + + \param size New size + + \sa identifierSize() +*/ +void QwtLegendItem::setIdentifierSize( const QSize &size ) +{ + QSize sz = size.expandedTo( QSize( 0, 0 ) ); + if ( sz != d_data->identifierSize ) + { + d_data->identifierSize = sz; + setIndent( margin() + d_data->identifierSize.width() + + 2 * d_data->spacing ); + updateGeometry(); + } +} +/*! + Return the width of the identifier + + \sa setIdentifierSize() +*/ +QSize QwtLegendItem::identifierSize() const +{ + return d_data->identifierSize; +} + +/*! + Change the spacing + \param spacing Spacing + \sa spacing(), identifierWidth(), QwtTextLabel::margin() +*/ +void QwtLegendItem::setSpacing( int spacing ) +{ + spacing = qMax( spacing, 0 ); + if ( spacing != d_data->spacing ) + { + d_data->spacing = spacing; + setIndent( margin() + d_data->identifierSize.width() + + 2 * d_data->spacing ); + } +} + +/*! + Return the spacing + \sa setSpacing(), identifierWidth(), QwtTextLabel::margin() +*/ +int QwtLegendItem::spacing() const +{ + return d_data->spacing; +} + +/*! + Check/Uncheck a the item + + \param on check/uncheck + \sa setItemMode() +*/ +void QwtLegendItem::setChecked( bool on ) +{ + if ( d_data->itemMode == QwtLegend::CheckableItem ) + { + const bool isBlocked = signalsBlocked(); + blockSignals( true ); + + setDown( on ); + + blockSignals( isBlocked ); + } +} + +//! Return true, if the item is checked +bool QwtLegendItem::isChecked() const +{ + return d_data->itemMode == QwtLegend::CheckableItem && isDown(); +} + +//! Set the item being down +void QwtLegendItem::setDown( bool down ) +{ + if ( down == d_data->isDown ) + return; + + d_data->isDown = down; + update(); + + if ( d_data->itemMode == QwtLegend::ClickableItem ) + { + if ( d_data->isDown ) + Q_EMIT pressed(); + else + { + Q_EMIT released(); + Q_EMIT clicked(); + } + } + + if ( d_data->itemMode == QwtLegend::CheckableItem ) + Q_EMIT checked( d_data->isDown ); +} + +//! Return true, if the item is down +bool QwtLegendItem::isDown() const +{ + return d_data->isDown; +} + +//! Return a size hint +QSize QwtLegendItem::sizeHint() const +{ + QSize sz = QwtTextLabel::sizeHint(); + sz.setHeight( qMax( sz.height(), d_data->identifier.height() + 4 ) ); + + if ( d_data->itemMode != QwtLegend::ReadOnlyItem ) + { + sz += buttonShift( this ); + sz = sz.expandedTo( QApplication::globalStrut() ); + } + + return sz; +} + +//! Paint event +void QwtLegendItem::paintEvent( QPaintEvent *e ) +{ + const QRect cr = contentsRect(); + + QPainter painter( this ); + painter.setClipRegion( e->region() ); + + if ( d_data->isDown ) + { + qDrawWinButton( &painter, 0, 0, width(), height(), + palette(), true ); + } + + painter.save(); + + if ( d_data->isDown ) + { + const QSize shiftSize = buttonShift( this ); + painter.translate( shiftSize.width(), shiftSize.height() ); + } + + painter.setClipRect( cr ); + + drawContents( &painter ); + + if ( !d_data->identifier.isNull() ) + { + QRect identRect = cr; + identRect.setX( identRect.x() + margin() ); + if ( d_data->itemMode != QwtLegend::ReadOnlyItem ) + identRect.setX( identRect.x() + ButtonFrame ); + + identRect.setSize( d_data->identifier.size() ); + identRect.moveCenter( QPoint( identRect.center().x(), cr.center().y() ) ); + + painter.drawPixmap( identRect, d_data->identifier ); + } + + painter.restore(); +} + +//! Handle mouse press events +void QwtLegendItem::mousePressEvent( QMouseEvent *e ) +{ + if ( e->button() == Qt::LeftButton ) + { + switch ( d_data->itemMode ) + { + case QwtLegend::ClickableItem: + { + setDown( true ); + return; + } + case QwtLegend::CheckableItem: + { + setDown( !isDown() ); + return; + } + default:; + } + } + QwtTextLabel::mousePressEvent( e ); +} + +//! Handle mouse release events +void QwtLegendItem::mouseReleaseEvent( QMouseEvent *e ) +{ + if ( e->button() == Qt::LeftButton ) + { + switch ( d_data->itemMode ) + { + case QwtLegend::ClickableItem: + { + setDown( false ); + return; + } + case QwtLegend::CheckableItem: + { + return; // do nothing, but accept + } + default:; + } + } + QwtTextLabel::mouseReleaseEvent( e ); +} + +//! Handle key press events +void QwtLegendItem::keyPressEvent( QKeyEvent *e ) +{ + if ( e->key() == Qt::Key_Space ) + { + switch ( d_data->itemMode ) + { + case QwtLegend::ClickableItem: + { + if ( !e->isAutoRepeat() ) + setDown( true ); + return; + } + case QwtLegend::CheckableItem: + { + if ( !e->isAutoRepeat() ) + setDown( !isDown() ); + return; + } + default:; + } + } + + QwtTextLabel::keyPressEvent( e ); +} + +//! Handle key release events +void QwtLegendItem::keyReleaseEvent( QKeyEvent *e ) +{ + if ( e->key() == Qt::Key_Space ) + { + switch ( d_data->itemMode ) + { + case QwtLegend::ClickableItem: + { + if ( !e->isAutoRepeat() ) + setDown( false ); + return; + } + case QwtLegend::CheckableItem: + { + return; // do nothing, but accept + } + default:; + } + } + + QwtTextLabel::keyReleaseEvent( e ); +} \ No newline at end of file diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_legend_item.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_legend_item.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_legend_item.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_legend_item.h 2011-04-15 10:48:46.000000000 +0000 @@ -0,0 +1,78 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_LEGEND_ITEM_H +#define QWT_LEGEND_ITEM_H + +#include "qwt_global.h" +#include "qwt_legend.h" +#include "qwt_text.h" +#include "qwt_text_label.h" +#include + +/*! + \brief A widget representing something on a QwtLegend(). +*/ +class QWT_EXPORT QwtLegendItem: public QwtTextLabel +{ + Q_OBJECT +public: + explicit QwtLegendItem( QWidget *parent = 0 ); + virtual ~QwtLegendItem(); + + void setItemMode( QwtLegend::LegendItemMode ); + QwtLegend::LegendItemMode itemMode() const; + + void setSpacing( int spacing ); + int spacing() const; + + virtual void setText( const QwtText & ); + + void setIdentifier( const QPixmap & ); + QPixmap identifier() const; + + void setIdentifierSize( const QSize & ); + QSize identifierSize() const; + + virtual QSize sizeHint() const; + + bool isChecked() const; + +public Q_SLOTS: + void setChecked( bool on ); + +Q_SIGNALS: + //! Signal, when the legend item has been clicked + void clicked(); + + //! Signal, when the legend item has been pressed + void pressed(); + + //! Signal, when the legend item has been relased + void released(); + + //! Signal, when the legend item has been toggled + void checked( bool ); + +protected: + void setDown( bool ); + bool isDown() const; + + virtual void paintEvent( QPaintEvent * ); + virtual void mousePressEvent( QMouseEvent * ); + virtual void mouseReleaseEvent( QMouseEvent * ); + virtual void keyPressEvent( QKeyEvent * ); + virtual void keyReleaseEvent( QKeyEvent * ); + +private: + class PrivateData; + PrivateData *d_data; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_legend_itemmanager.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_legend_itemmanager.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_legend_itemmanager.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_legend_itemmanager.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,66 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_LEGEND_ITEM_MANAGER_H +#define QWT_LEGEND_ITEM_MANAGER_H + +#include "qwt_global.h" + +class QwtLegend; +class QWidget; +class QRectF; +class QPainter; + +/*! + \brief Abstract API to bind plot items to the legend +*/ + +class QWT_EXPORT QwtLegendItemManager +{ +public: + //! Constructor + QwtLegendItemManager() + { + } + + //! Destructor + virtual ~QwtLegendItemManager() + { + } + + /*! + Update the widget that represents the item on the legend + \param legend Legend + \sa legendItem() + */ + virtual void updateLegend( QwtLegend *legend ) const = 0; + + /*! + Allocate the widget that represents the item on the legend + \return Allocated widget + \sa updateLegend() QwtLegend() + */ + + virtual QWidget *legendItem() const = 0; + + /*! + QwtLegendItem can display an icon-identifier followed + by a text. The icon helps to identify a plot item on + the plot canvas and depends on the type of information, + that is displayed. + + The default implementation paints nothing. + */ + virtual void drawLegendIdentifier( QPainter *, const QRectF & ) const + { + } +}; + +#endif + diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_magnifier.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_magnifier.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_magnifier.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_magnifier.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,462 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_magnifier.h" +#include "qwt_math.h" +#include +#include + +class QwtMagnifier::PrivateData +{ +public: + PrivateData(): + isEnabled( false ), + wheelFactor( 0.9 ), + wheelButtonState( Qt::NoButton ), + mouseFactor( 0.95 ), + mouseButton( Qt::RightButton ), + mouseButtonState( Qt::NoButton ), + keyFactor( 0.9 ), + zoomInKey( Qt::Key_Plus ), + zoomOutKey( Qt::Key_Minus ), + zoomInKeyModifiers( Qt::NoModifier ), + zoomOutKeyModifiers( Qt::NoModifier ), + mousePressed( false ) + { + } + + bool isEnabled; + + double wheelFactor; + int wheelButtonState; + + double mouseFactor; + int mouseButton; + int mouseButtonState; + + double keyFactor; + int zoomInKey; + int zoomOutKey; + int zoomInKeyModifiers; + int zoomOutKeyModifiers; + + bool mousePressed; + bool hasMouseTracking; + QPoint mousePos; +}; + +/*! + Constructor + \param parent Widget to be magnified +*/ +QwtMagnifier::QwtMagnifier( QWidget *parent ): + QObject( parent ) +{ + d_data = new PrivateData(); + setEnabled( true ); +} + +//! Destructor +QwtMagnifier::~QwtMagnifier() +{ + delete d_data; +} + +/*! + \brief En/disable the magnifier + + When enabled is true an event filter is installed for + the observed widget, otherwise the event filter is removed. + + \param on true or false + \sa isEnabled(), eventFilter() +*/ +void QwtMagnifier::setEnabled( bool on ) +{ + if ( d_data->isEnabled != on ) + { + d_data->isEnabled = on; + + QObject *o = parent(); + if ( o ) + { + if ( d_data->isEnabled ) + o->installEventFilter( this ); + else + o->removeEventFilter( this ); + } + } +} + +/*! + \return true when enabled, false otherwise + \sa setEnabled(), eventFilter() +*/ +bool QwtMagnifier::isEnabled() const +{ + return d_data->isEnabled; +} + +/*! + \brief Change the wheel factor + + The wheel factor defines the ratio between the current range + on the parent widget and the zoomed range for each step of the wheel. + The default value is 0.9. + + \param factor Wheel factor + \sa wheelFactor(), setWheelButtonState(), + setMouseFactor(), setKeyFactor() +*/ +void QwtMagnifier::setWheelFactor( double factor ) +{ + d_data->wheelFactor = factor; +} + +/*! + \return Wheel factor + \sa setWheelFactor() +*/ +double QwtMagnifier::wheelFactor() const +{ + return d_data->wheelFactor; +} + +/*! + Assign a mandatory button state for zooming in/out using the wheel. + The default button state is Qt::NoButton. + + \param buttonState Button state + \sa wheelButtonState() +*/ +void QwtMagnifier::setWheelButtonState( int buttonState ) +{ + d_data->wheelButtonState = buttonState; +} + +/*! + \return Wheel button state + \sa setWheelButtonState() +*/ +int QwtMagnifier::wheelButtonState() const +{ + return d_data->wheelButtonState; +} + +/*! + \brief Change the mouse factor + + The mouse factor defines the ratio between the current range + on the parent widget and the zoomed range for each vertical mouse movement. + The default value is 0.95. + + \param factor Wheel factor + \sa mouseFactor(), setMouseButton(), setWheelFactor(), setKeyFactor() +*/ +void QwtMagnifier::setMouseFactor( double factor ) +{ + d_data->mouseFactor = factor; +} + +/*! + \return Mouse factor + \sa setMouseFactor() +*/ +double QwtMagnifier::mouseFactor() const +{ + return d_data->mouseFactor; +} + +/*! + Assign the mouse button, that is used for zooming in/out. + The default value is Qt::RightButton. + + \param button Button + \param buttonState Button state + \sa getMouseButton() +*/ +void QwtMagnifier::setMouseButton( int button, int buttonState ) +{ + d_data->mouseButton = button; + d_data->mouseButtonState = buttonState; +} + +//! \sa setMouseButton() +void QwtMagnifier::getMouseButton( + int &button, int &buttonState ) const +{ + button = d_data->mouseButton; + buttonState = d_data->mouseButtonState; +} + +/*! + \brief Change the key factor + + The key factor defines the ratio between the current range + on the parent widget and the zoomed range for each key press of + the zoom in/out keys. The default value is 0.9. + + \param factor Key factor + \sa keyFactor(), setZoomInKey(), setZoomOutKey(), + setWheelFactor, setMouseFactor() +*/ +void QwtMagnifier::setKeyFactor( double factor ) +{ + d_data->keyFactor = factor; +} + +/*! + \return Key factor + \sa setKeyFactor() +*/ +double QwtMagnifier::keyFactor() const +{ + return d_data->keyFactor; +} + +/*! + Assign the key, that is used for zooming in. + The default combination is Qt::Key_Plus + Qt::NoModifier. + + \param key + \param modifiers + \sa getZoomInKey(), setZoomOutKey() +*/ +void QwtMagnifier::setZoomInKey( int key, int modifiers ) +{ + d_data->zoomInKey = key; + d_data->zoomInKeyModifiers = modifiers; +} + +//! \sa setZoomInKey() +void QwtMagnifier::getZoomInKey( int &key, int &modifiers ) const +{ + key = d_data->zoomInKey; + modifiers = d_data->zoomInKeyModifiers; +} + +/*! + Assign the key, that is used for zooming out. + The default combination is Qt::Key_Minus + Qt::NoModifier. + + \param key + \param modifiers + \sa getZoomOutKey(), setZoomOutKey() +*/ +void QwtMagnifier::setZoomOutKey( int key, int modifiers ) +{ + d_data->zoomOutKey = key; + d_data->zoomOutKeyModifiers = modifiers; +} + +//! \sa setZoomOutKey() +void QwtMagnifier::getZoomOutKey( int &key, int &modifiers ) const +{ + key = d_data->zoomOutKey; + modifiers = d_data->zoomOutKeyModifiers; +} + +/*! + \brief Event filter + + When isEnabled() the mouse events of the observed widget are filtered. + + \sa widgetMousePressEvent(), widgetMouseReleaseEvent(), + widgetMouseMoveEvent(), widgetWheelEvent(), widgetKeyPressEvent() + widgetKeyReleaseEvent() +*/ +bool QwtMagnifier::eventFilter( QObject *o, QEvent *e ) +{ + if ( o && o == parent() ) + { + switch ( e->type() ) + { + case QEvent::MouseButtonPress: + { + widgetMousePressEvent( ( QMouseEvent * )e ); + break; + } + case QEvent::MouseMove: + { + widgetMouseMoveEvent( ( QMouseEvent * )e ); + break; + } + case QEvent::MouseButtonRelease: + { + widgetMouseReleaseEvent( ( QMouseEvent * )e ); + break; + } + case QEvent::Wheel: + { + widgetWheelEvent( ( QWheelEvent * )e ); + break; + } + case QEvent::KeyPress: + { + widgetKeyPressEvent( ( QKeyEvent * )e ); + break; + } + case QEvent::KeyRelease: + { + widgetKeyReleaseEvent( ( QKeyEvent * )e ); + break; + } + default:; + } + } + return QObject::eventFilter( o, e ); +} + +/*! + Handle a mouse press event for the observed widget. + + \param me Mouse event + \sa eventFilter(), widgetMouseReleaseEvent(), widgetMouseMoveEvent() +*/ +void QwtMagnifier::widgetMousePressEvent( QMouseEvent *me ) +{ + if ( me->button() != d_data->mouseButton || parentWidget() == NULL ) + return; + + if ( ( me->modifiers() & Qt::KeyboardModifierMask ) != + ( int )( d_data->mouseButtonState & Qt::KeyboardModifierMask ) ) + { + return; + } + + d_data->hasMouseTracking = parentWidget()->hasMouseTracking(); + parentWidget()->setMouseTracking( true ); + d_data->mousePos = me->pos(); + d_data->mousePressed = true; +} + +/*! + Handle a mouse release event for the observed widget. + \sa eventFilter(), widgetMousePressEvent(), widgetMouseMoveEvent(), +*/ +void QwtMagnifier::widgetMouseReleaseEvent( QMouseEvent * ) +{ + if ( d_data->mousePressed && parentWidget() ) + { + d_data->mousePressed = false; + parentWidget()->setMouseTracking( d_data->hasMouseTracking ); + } +} + +/*! + Handle a mouse move event for the observed widget. + + \param me Mouse event + \sa eventFilter(), widgetMousePressEvent(), widgetMouseReleaseEvent(), +*/ +void QwtMagnifier::widgetMouseMoveEvent( QMouseEvent *me ) +{ + if ( !d_data->mousePressed ) + return; + + const int dy = me->pos().y() - d_data->mousePos.y(); + if ( dy != 0 ) + { + double f = d_data->mouseFactor; + if ( dy < 0 ) + f = 1 / f; + + rescale( f ); + } + + d_data->mousePos = me->pos(); +} + +/*! + Handle a wheel event for the observed widget. + + \param wheelEvent Wheel event + \sa eventFilter() +*/ +void QwtMagnifier::widgetWheelEvent( QWheelEvent *wheelEvent ) +{ + if ( ( wheelEvent->modifiers() & Qt::KeyboardModifierMask ) != + ( int )( d_data->wheelButtonState & Qt::KeyboardModifierMask ) ) + { + return; + } + + if ( d_data->wheelFactor != 0.0 ) + { + /* + A positive delta indicates that the wheel was + rotated forwards away from the user; a negative + value indicates that the wheel was rotated + backwards toward the user. + Most mouse types work in steps of 15 degrees, + in which case the delta value is a multiple + of 120 (== 15 * 8). + */ + double f = qPow( d_data->wheelFactor, + qAbs( wheelEvent->delta() / 120 ) ); + + if ( wheelEvent->delta() > 0 ) + f = 1 / f; + + rescale( f ); + } +} + +/*! + Handle a key press event for the observed widget. + + \param keyEvent Key event + \sa eventFilter(), widgetKeyReleaseEvent() +*/ +void QwtMagnifier::widgetKeyPressEvent( QKeyEvent *keyEvent ) +{ + const int key = keyEvent->key(); + const int state = keyEvent->modifiers(); + + if ( key == d_data->zoomInKey && + state == d_data->zoomInKeyModifiers ) + { + rescale( d_data->keyFactor ); + } + else if ( key == d_data->zoomOutKey && + state == d_data->zoomOutKeyModifiers ) + { + rescale( 1.0 / d_data->keyFactor ); + } +} + +/*! + Handle a key release event for the observed widget. + + \param keyEvent Key event + \sa eventFilter(), widgetKeyReleaseEvent() +*/ +void QwtMagnifier::widgetKeyReleaseEvent( QKeyEvent *keyEvent ) +{ + Q_UNUSED( keyEvent ); +} + +//! \return Parent widget, where the rescaling happens +QWidget *QwtMagnifier::parentWidget() +{ + if ( parent()->inherits( "QWidget" ) ) + return ( QWidget * )parent(); + + return NULL; +} + +//! \return Parent widget, where the rescaling happens +const QWidget *QwtMagnifier::parentWidget() const +{ + if ( parent()->inherits( "QWidget" ) ) + return ( const QWidget * )parent(); + + return NULL; +} + diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_magnifier.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_magnifier.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_magnifier.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_magnifier.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,86 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_MAGNIFIER_H +#define QWT_MAGNIFIER_H 1 + +#include "qwt_global.h" +#include + +class QWidget; +class QMouseEvent; +class QWheelEvent; +class QKeyEvent; + +/*! + \brief QwtMagnifier provides zooming, by magnifying in steps. + + Using QwtMagnifier a plot can be zoomed in/out in steps using + keys, the mouse wheel or moving a mouse button in vertical direction. +*/ +class QWT_EXPORT QwtMagnifier: public QObject +{ + Q_OBJECT + +public: + explicit QwtMagnifier( QWidget * ); + virtual ~QwtMagnifier(); + + QWidget *parentWidget(); + const QWidget *parentWidget() const; + + void setEnabled( bool ); + bool isEnabled() const; + + // mouse + void setMouseFactor( double ); + double mouseFactor() const; + + void setMouseButton( int button, int buttonState = Qt::NoButton ); + void getMouseButton( int &button, int &buttonState ) const; + + // mouse wheel + void setWheelFactor( double ); + double wheelFactor() const; + + void setWheelButtonState( int buttonState ); + int wheelButtonState() const; + + // keyboard + void setKeyFactor( double ); + double keyFactor() const; + + void setZoomInKey( int key, int modifiers ); + void getZoomInKey( int &key, int &modifiers ) const; + + void setZoomOutKey( int key, int modifiers ); + void getZoomOutKey( int &key, int &modifiers ) const; + + virtual bool eventFilter( QObject *, QEvent * ); + +protected: + /*! + Rescale the parent widget + \param factor Scale factor + */ + virtual void rescale( double factor ) = 0; + + virtual void widgetMousePressEvent( QMouseEvent * ); + virtual void widgetMouseReleaseEvent( QMouseEvent * ); + virtual void widgetMouseMoveEvent( QMouseEvent * ); + virtual void widgetWheelEvent( QWheelEvent * ); + virtual void widgetKeyPressEvent( QKeyEvent * ); + virtual void widgetKeyReleaseEvent( QKeyEvent * ); + +private: + class PrivateData; + PrivateData *d_data; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_math.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_math.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_math.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_math.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,45 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_math.h" + +/*! + \brief Find the smallest value in an array + \param array Pointer to an array + \param size Array size +*/ +double qwtGetMin( const double *array, int size ) +{ + if ( size <= 0 ) + return 0.0; + + double rv = array[0]; + for ( int i = 1; i < size; i++ ) + rv = qMin( rv, array[i] ); + + return rv; +} + + +/*! + \brief Find the largest value in an array + \param array Pointer to an array + \param size Array size +*/ +double qwtGetMax( const double *array, int size ) +{ + if ( size <= 0 ) + return 0.0; + + double rv = array[0]; + for ( int i = 1; i < size; i++ ) + rv = qMax( rv, array[i] ); + + return rv; +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_math.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_math.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_math.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_math.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,182 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_MATH_H +#define QWT_MATH_H + +#include "qwt_global.h" + +#if defined(_MSC_VER) +/* + Microsoft says: + + Define _USE_MATH_DEFINES before including math.h to expose these macro + definitions for common math constants. These are placed under an #ifdef + since these commonly-defined names are not part of the C/C++ standards. +*/ +#define _USE_MATH_DEFINES 1 +#endif + +#include +#include +#include "qwt_global.h" + +#ifndef LOG10_2 +#define LOG10_2 0.30102999566398119802 /* log10(2) */ +#endif + +#ifndef LOG10_3 +#define LOG10_3 0.47712125471966243540 /* log10(3) */ +#endif + +#ifndef LOG10_5 +#define LOG10_5 0.69897000433601885749 /* log10(5) */ +#endif + +#ifndef M_2PI +#define M_2PI 6.28318530717958623200 /* 2 pi */ +#endif + +#ifndef LOG_MIN +//! Mininum value for logarithmic scales +#define LOG_MIN 1.0e-100 +#endif + +#ifndef LOG_MAX +//! Maximum value for logarithmic scales +#define LOG_MAX 1.0e100 +#endif + +#ifndef M_E +#define M_E 2.7182818284590452354 /* e */ +#endif + +#ifndef M_LOG2E +#define M_LOG2E 1.4426950408889634074 /* log_2 e */ +#endif + +#ifndef M_LOG10E +#define M_LOG10E 0.43429448190325182765 /* log_10 e */ +#endif + +#ifndef M_LN2 +#define M_LN2 0.69314718055994530942 /* log_e 2 */ +#endif + +#ifndef M_LN10 +#define M_LN10 2.30258509299404568402 /* log_e 10 */ +#endif + +#ifndef M_PI +#define M_PI 3.14159265358979323846 /* pi */ +#endif + +#ifndef M_PI_2 +#define M_PI_2 1.57079632679489661923 /* pi/2 */ +#endif + +#ifndef M_PI_4 +#define M_PI_4 0.78539816339744830962 /* pi/4 */ +#endif + +#ifndef M_1_PI +#define M_1_PI 0.31830988618379067154 /* 1/pi */ +#endif + +#ifndef M_2_PI +#define M_2_PI 0.63661977236758134308 /* 2/pi */ +#endif + +#ifndef M_2_SQRTPI +#define M_2_SQRTPI 1.12837916709551257390 /* 2/sqrt(pi) */ +#endif + +#ifndef M_SQRT2 +#define M_SQRT2 1.41421356237309504880 /* sqrt(2) */ +#endif + +#ifndef M_SQRT1_2 +#define M_SQRT1_2 0.70710678118654752440 /* 1/sqrt(2) */ +#endif + +QWT_EXPORT double qwtGetMin( const double *array, int size ); +QWT_EXPORT double qwtGetMax( const double *array, int size ); + +/*! + \brief Compare 2 values, relative to an interval + + Values are "equal", when : + \f$\cdot value2 - value1 <= abs(intervalSize * 10e^{-6})\f$ + + \param value1 First value to compare + \param value2 Second value to compare + \param intervalSize interval size + + \return 0: if equal, -1: if value2 > value1, 1: if value1 > value2 +*/ +inline int qwtFuzzyCompare( double value1, double value2, double intervalSize ) +{ + const double eps = qAbs( 1.0e-6 * intervalSize ); + + if ( value2 - value1 > eps ) + return -1; + + if ( value1 - value2 > eps ) + return 1; + + return 0; +} + + +inline bool qwtFuzzyGreaterOrEqual( double d1, double d2 ) +{ + return ( d1 >= d2 ) || qFuzzyCompare( d1, d2 ); +} + +inline bool qwtFuzzyLessOrEqual( double d1, double d2 ) +{ + return ( d1 <= d2 ) || qFuzzyCompare( d1, d2 ); +} + +//! Return the sign +inline int qwtSign( double x ) +{ + if ( x > 0.0 ) + return 1; + else if ( x < 0.0 ) + return ( -1 ); + else + return 0; +} + +//! Return the square of a number +inline double qwtSqr( double x ) +{ + return x * x; +} + +//! Like qRound, but without converting the result to an int +inline double qwtRoundF(double d) +{ + return ::floor( d + 0.5 ); +} + +//! Like qFloor, but without converting the result to an int +inline double qwtFloorF(double d) +{ + return ::floor( d ); +} + +//! Like qCeil, but without converting the result to an int +inline double qwtCeilF(double d) +{ + return ::ceil( d ); +} + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_matrix_raster_data.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_matrix_raster_data.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_matrix_raster_data.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_matrix_raster_data.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,270 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_matrix_raster_data.h" +#include +#include + +class QwtMatrixRasterData::PrivateData +{ +public: + PrivateData(): + resampleMode(QwtMatrixRasterData::NearestNeighbour), + numColumns(0) + { + } + + inline double value(size_t row, size_t col) const + { + return values.data()[ row * numColumns + col ]; + } + + QwtMatrixRasterData::ResampleMode resampleMode; + + QVector values; + size_t numColumns; + size_t numRows; + + double dx; + double dy; +}; + +//! Constructor +QwtMatrixRasterData::QwtMatrixRasterData() +{ + d_data = new PrivateData(); + update(); +} + +//! Destructor +QwtMatrixRasterData::~QwtMatrixRasterData() +{ + delete d_data; +} + +/*! + \brief Set the resampling algorithm + + \param mode Resampling mode + \sa resampleMode(), value() +*/ +void QwtMatrixRasterData::setResampleMode(ResampleMode mode) +{ + d_data->resampleMode = mode; +} + +/*! + \return resampling algorithm + \sa setResampleMode(), value() +*/ +QwtMatrixRasterData::ResampleMode QwtMatrixRasterData::resampleMode() const +{ + return d_data->resampleMode; +} + +/*! + \brief Assign the bounding interval for an axis + + Setting the bounding intervals for the X/Y axis is mandatory + to define the positions for the values of the value matrix. + The interval in Z direction defines the possible range for + the values in the matrix, what is f.e used by QwtPlotSpectrogram + to map values to colors. The Z-interval might be the bounding + interval of the values in the matrix, but usually it isn't. + ( f.e a interval of 0.0-100.0 for values in percentage ) + + \param axis X, Y or Z axis + \param interval Interval + + \sa QwtRasterData::interval(), setValueMatrix() +*/ +void QwtMatrixRasterData::setInterval( + Qt::Axis axis, const QwtInterval &interval ) +{ + QwtRasterData::setInterval( axis, interval ); + update(); +} + +/*! + \brief Assign a value matrix + + The positions of the values are calculated by dividing + the bounding rectangle of the X/Y intervals into equidistant + rectangles ( pixels ). Each value corresponds to the center of + a pixel. + + \param values Vector of values + \param numColumns Number of columns + + \sa valueMatrix(), numColumns(), numRows(), setInterval()() +*/ +void QwtMatrixRasterData::setValueMatrix( + const QVector &values, size_t numColumns ) +{ + d_data->values = values; + d_data->numColumns = numColumns; + update(); +} + +/*! + \return Value matrix + \sa setValueMatrix(), numColumns(), numRows(), setInterval() +*/ +const QVector QwtMatrixRasterData::valueMatrix() const +{ + return d_data->values; +} + +/*! + \return Number of columns of the value matrix + \sa valueMatrix(), numRows(), setValueMatrix() +*/ +size_t QwtMatrixRasterData::numColumns() const +{ + return d_data->numColumns; +} + +/*! + \return Number of rows of the value matrix + \sa valueMatrix(), numColumns(), setValueMatrix() +*/ +size_t QwtMatrixRasterData::numRows() const +{ + return d_data->numRows; +} + +/*! + \brief Pixel hint + + - NearestNeighbour\n + pixelHint() returns the surrounding pixel of the top left value + in the matrix. + + - BilinearInterpolation\n + Returns an empty rectangle recommending + to render in target device ( f.e. screen ) resolution. + + \sa ResampleMode, setMatrix(), setInterval() +*/ +QRectF QwtMatrixRasterData::pixelHint( const QRectF & ) const +{ + QRectF rect; + if ( d_data->resampleMode == NearestNeighbour ) + { + const QwtInterval intervalX = interval( Qt::XAxis ); + const QwtInterval intervalY = interval( Qt::YAxis ); + if ( intervalX.isValid() && intervalY.isValid() ) + { + rect = QRectF( intervalX.minValue(), intervalY.minValue(), + d_data->dx, d_data->dy ); + } + } + + return rect; +} + +/*! + \return the value at a raster position + + \param x X value in plot coordinates + \param y Y value in plot coordinates + + \sa ResampleMode +*/ +double QwtMatrixRasterData::value( double x, double y ) const +{ + const QwtInterval xInterval = interval( Qt::XAxis ); + const QwtInterval yInterval = interval( Qt::YAxis ); + + if ( !( xInterval.contains(x) && yInterval.contains(y) ) ) + return qQNaN(); + + double value; + + switch( d_data->resampleMode ) + { + case BilinearInterpolation: + { + int col1 = qRound( (x - xInterval.minValue() ) / d_data->dx ) - 1; + int row1 = qRound( (y - yInterval.minValue() ) / d_data->dy ) - 1; + int col2 = col1 + 1; + int row2 = row1 + 1; + + if ( col1 < 0 ) + col1 = col2; + else if ( col2 >= (int)d_data->numColumns ) + col2 = col1; + + if ( row1 < 0 ) + row1 = row2; + else if ( row2 >= (int)d_data->numRows ) + row2 = row1; + + const double v11 = d_data->value( row1, col1 ); + const double v21 = d_data->value( row1, col2 ); + const double v12 = d_data->value( row2, col1 ); + const double v22 = d_data->value( row2, col2 ); + + const double x2 = xInterval.minValue() + + ( col2 + 0.5 ) * d_data->dx; + const double y2 = yInterval.minValue() + + ( row2 + 0.5 ) * d_data->dy; + + const double rx = ( x2 - x ) / d_data->dx; + const double ry = ( y2 - y ) / d_data->dy; + + const double vr1 = rx * v11 + ( 1.0 - rx ) * v21; + const double vr2 = rx * v12 + ( 1.0 - rx ) * v22; + + value = ry * vr1 + ( 1.0 - ry ) * vr2; + + break; + } + case NearestNeighbour: + default: + { + uint row = uint( (y - yInterval.minValue() ) / d_data->dy ); + uint col = uint( (x - xInterval.minValue() ) / d_data->dx ); + + // In case of intervals, where the maximum is included + // we get out of bound for row/col, when the value for the + // maximum is requested. Instead we return the value + // from the last row/col + + if ( row >= d_data->numRows ) + row = d_data->numRows - 1; + + if ( col >= d_data->numColumns ) + col = d_data->numColumns - 1; + + value = d_data->value( row, col ); + } + } + + return value; +} + +void QwtMatrixRasterData::update() +{ + d_data->numRows = 0; + d_data->dx = 0.0; + d_data->dy = 0.0; + + if ( d_data->numColumns > 0 ) + { + d_data->numRows = d_data->values.size() / d_data->numColumns; + + const QwtInterval xInterval = interval( Qt::XAxis ); + const QwtInterval yInterval = interval( Qt::YAxis ); + if ( xInterval.isValid() ) + d_data->dx = xInterval.width() / d_data->numColumns; + if ( yInterval.isValid() ) + d_data->dy = yInterval.width() / d_data->numRows; + } +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_matrix_raster_data.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_matrix_raster_data.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_matrix_raster_data.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_matrix_raster_data.h 2011-04-15 10:48:46.000000000 +0000 @@ -0,0 +1,71 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_MATRIX_RASTER_DATA_H +#define QWT_MATRIX_RASTER_DATA_H 1 + +#include "qwt_global.h" +#include "qwt_raster_data.h" +#include + +/*! + \brief A class representing a matrix of values as raster data + + QwtMatrixRasterData implements an interface for a matrix of + equidistant values, that can be used by a QwtPlotRasterItem. + It implements a couple of resampling algorithms, to provide + values for positions, that or not on the value matrix. +*/ +class QWT_EXPORT QwtMatrixRasterData: public QwtRasterData +{ +public: + /*! + \brief Resampling algorithm + The default setting is NearestNeighbour; + */ + enum ResampleMode + { + /*! + Return the value from the matrix, that is nearest to the + the requested position. + */ + NearestNeighbour, + + /*! + Interpolate the value from the distances and values of the + 4 surrounding values in the matrix, + */ + BilinearInterpolation + }; + + QwtMatrixRasterData(); + virtual ~QwtMatrixRasterData(); + + void setResampleMode(ResampleMode mode); + ResampleMode resampleMode() const; + + virtual void setInterval( Qt::Axis, const QwtInterval & ); + void setValueMatrix( const QVector &values, size_t numColumns ); + + const QVector valueMatrix() const; + size_t numColumns() const; + size_t numRows() const; + + virtual QRectF pixelHint( const QRectF & ) const; + + virtual double value( double x, double y ) const; + +private: + void update(); + + class PrivateData; + PrivateData *d_data; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_null_paintdevice.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_null_paintdevice.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_null_paintdevice.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_null_paintdevice.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,428 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_null_paintdevice.h" +#include +#include + +class QwtNullPaintDevice::PrivateData +{ +public: + PrivateData(): + size( 0, 0 ) + { + } + + QSize size; +}; + +class QwtNullPaintDevice::PaintEngine: public QPaintEngine +{ +public: + PaintEngine( QPaintEngine::PaintEngineFeatures ); + + virtual bool begin( QPaintDevice * ); + virtual bool end(); + + virtual Type type () const; + virtual void updateState(const QPaintEngineState &); + + virtual void drawRects(const QRect *, int ); + virtual void drawRects(const QRectF *, int ); + + virtual void drawLines(const QLine *, int ); + virtual void drawLines(const QLineF *, int ); + + virtual void drawEllipse(const QRectF &); + virtual void drawEllipse(const QRect &); + + virtual void drawPath(const QPainterPath &); + + virtual void drawPoints(const QPointF *, int ); + virtual void drawPoints(const QPoint *, int ); + + virtual void drawPolygon(const QPointF *, int , PolygonDrawMode ); + virtual void drawPolygon(const QPoint *, int , PolygonDrawMode ); + + virtual void drawPixmap(const QRectF &, + const QPixmap &, const QRectF &); + + virtual void drawTextItem(const QPointF &, const QTextItem &); + virtual void drawTiledPixmap(const QRectF &, + const QPixmap &, const QPointF &s); + virtual void drawImage(const QRectF &, + const QImage &, const QRectF &, Qt::ImageConversionFlags ); + +private: + QwtNullPaintDevice *d_device; +}; + +QwtNullPaintDevice::PaintEngine::PaintEngine( + QPaintEngine::PaintEngineFeatures features ): + QPaintEngine( features ), + d_device(NULL) +{ +} + +bool QwtNullPaintDevice::PaintEngine::begin( + QPaintDevice *device ) +{ + d_device = static_cast( device ); + return true; +} + +bool QwtNullPaintDevice::PaintEngine::end() +{ + d_device = NULL; + return true; +} + +QPaintEngine::Type +QwtNullPaintDevice::PaintEngine::type () const +{ + return QPaintEngine::User; +} + +void QwtNullPaintDevice::PaintEngine::drawRects( + const QRect *rects, int rectCount) +{ + if ( d_device ) + d_device->drawRects( rects, rectCount ); +} + +void QwtNullPaintDevice::PaintEngine::drawRects( + const QRectF *rects, int rectCount) +{ + if ( d_device ) + d_device->drawRects( rects, rectCount ); +} + +void QwtNullPaintDevice::PaintEngine::drawLines( + const QLine *lines, int lineCount) +{ + if ( d_device ) + d_device->drawLines( lines, lineCount ); +} + +void QwtNullPaintDevice::PaintEngine::drawLines( + const QLineF *lines, int lineCount) +{ + if ( d_device ) + d_device->drawLines( lines, lineCount ); +} + +void QwtNullPaintDevice::PaintEngine::drawEllipse( + const QRectF &rect) +{ + if ( d_device ) + d_device->drawEllipse( rect ); +} + +void QwtNullPaintDevice::PaintEngine::drawEllipse( + const QRect &rect) +{ + if ( d_device ) + d_device->drawEllipse( rect ); +} + + +void QwtNullPaintDevice::PaintEngine::drawPath( + const QPainterPath &path) +{ + if ( d_device ) + d_device->drawPath( path ); +} + +void QwtNullPaintDevice::PaintEngine::drawPoints( + const QPointF *points, int pointCount) +{ + if ( d_device ) + d_device->drawPoints( points, pointCount ); +} + +void QwtNullPaintDevice::PaintEngine::drawPoints( + const QPoint *points, int pointCount) +{ + if ( d_device ) + d_device->drawPoints( points, pointCount ); +} + +void QwtNullPaintDevice::PaintEngine::drawPolygon( + const QPointF *points, int pointCount, PolygonDrawMode mode) +{ + if ( d_device ) + d_device->drawPolygon( points, pointCount, mode ); +} + +void QwtNullPaintDevice::PaintEngine::drawPolygon( + const QPoint *points, int pointCount, PolygonDrawMode mode) +{ + if ( d_device ) + d_device->drawPolygon( points, pointCount, mode ); +} + +void QwtNullPaintDevice::PaintEngine::drawPixmap( + const QRectF &rect, const QPixmap &pm, const QRectF &subRect ) +{ + if ( d_device ) + d_device->drawPixmap( rect, pm, subRect ); +} + +void QwtNullPaintDevice::PaintEngine::drawTextItem( + const QPointF &pos, const QTextItem &textItem) +{ + if ( d_device ) + d_device->drawTextItem( pos, textItem ); +} + +void QwtNullPaintDevice::PaintEngine::drawTiledPixmap( + const QRectF &rect, const QPixmap &pixmap, + const QPointF &subRect) +{ + if ( d_device ) + d_device->drawTiledPixmap( rect, pixmap, subRect ); +} + +void QwtNullPaintDevice::PaintEngine::drawImage( + const QRectF &rect, const QImage &image, + const QRectF &subRect, Qt::ImageConversionFlags flags) +{ + if ( d_device ) + d_device->drawImage( rect, image, subRect, flags ); +} + +void QwtNullPaintDevice::PaintEngine::updateState( + const QPaintEngineState &state) +{ + if ( d_device ) + d_device->updateState( state ); +} + +//! Constructor +QwtNullPaintDevice::QwtNullPaintDevice( + QPaintEngine::PaintEngineFeatures features ) +{ + init( features ); +} + +//! Constructor +QwtNullPaintDevice::QwtNullPaintDevice( const QSize &size, + QPaintEngine::PaintEngineFeatures features ) +{ + init( features ); + d_data->size = size; +} + +void QwtNullPaintDevice::init( + QPaintEngine::PaintEngineFeatures features ) +{ + d_engine = new PaintEngine( features ); + d_data = new PrivateData; +} + +//! Destructor +QwtNullPaintDevice::~QwtNullPaintDevice() +{ + delete d_engine; + delete d_data; +} + +/*! + Set the size of the paint device + + \param size Size + \sa size() +*/ +void QwtNullPaintDevice::setSize( const QSize & size ) +{ + d_data->size = size; +} + +/*! + \return Size of the paint device + \sa setSize() +*/ +QSize QwtNullPaintDevice::size() const +{ + return d_data->size; +} + +//! See QPaintDevice::paintEngine() +QPaintEngine *QwtNullPaintDevice::paintEngine() const +{ + return d_engine; +} + +/*! + See QPaintDevice::metric() + \sa setSize() +*/ +int QwtNullPaintDevice::metric( PaintDeviceMetric metric ) const +{ + static QPixmap pm; + + int value; + + switch ( metric ) + { + case PdmWidth: + value = qMax( d_data->size.width(), 0 ); + break; + case PdmHeight: + value = qMax( d_data->size.height(), 0 ); + break; + case PdmNumColors: + value = 16777216; + break; + case PdmDepth: + value = 24; + break; + case PdmPhysicalDpiX: + case PdmDpiY: + case PdmPhysicalDpiY: + case PdmWidthMM: + case PdmHeightMM: + case PdmDpiX: + default: + value = 0; + } + return value; + +} + +//! See QPaintEngine::drawRects() +void QwtNullPaintDevice::drawRects( + const QRect *rects, int rectCount) +{ + Q_UNUSED(rects); + Q_UNUSED(rectCount); +} + +//! See QPaintEngine::drawRects() +void QwtNullPaintDevice::drawRects( + const QRectF *rects, int rectCount) +{ + Q_UNUSED(rects); + Q_UNUSED(rectCount); +} + +//! See QPaintEngine::drawLines() +void QwtNullPaintDevice::drawLines( + const QLine *lines, int lineCount) +{ + Q_UNUSED(lines); + Q_UNUSED(lineCount); +} + +//! See QPaintEngine::drawLines() +void QwtNullPaintDevice::drawLines( + const QLineF *lines, int lineCount) +{ + Q_UNUSED(lines); + Q_UNUSED(lineCount); +} + +//! See QPaintEngine::drawEllipse() +void QwtNullPaintDevice::drawEllipse( const QRectF &rect ) +{ + Q_UNUSED(rect); +} + +//! See QPaintEngine::drawEllipse() +void QwtNullPaintDevice::drawEllipse( const QRect &rect ) +{ + Q_UNUSED(rect); +} + +//! See QPaintEngine::drawPath() +void QwtNullPaintDevice::drawPath( const QPainterPath &path ) +{ + Q_UNUSED(path); +} + +//! See QPaintEngine::drawPoints() +void QwtNullPaintDevice::drawPoints( + const QPointF *points, int pointCount) +{ + Q_UNUSED(points); + Q_UNUSED(pointCount); +} + +//! See QPaintEngine::drawPoints() +void QwtNullPaintDevice::drawPoints( + const QPoint *points, int pointCount) +{ + Q_UNUSED(points); + Q_UNUSED(pointCount); +} + +//! See QPaintEngine::drawPolygon() +void QwtNullPaintDevice::drawPolygon( + const QPointF *points, int pointCount, + QPaintEngine::PolygonDrawMode mode) +{ + Q_UNUSED(points); + Q_UNUSED(pointCount); + Q_UNUSED(mode); +} + +//! See QPaintEngine::drawPolygon() +void QwtNullPaintDevice::drawPolygon( + const QPoint *points, int pointCount, + QPaintEngine::PolygonDrawMode mode) +{ + Q_UNUSED(points); + Q_UNUSED(pointCount); + Q_UNUSED(mode); +} + +//! See QPaintEngine::drawPixmap() +void QwtNullPaintDevice::drawPixmap( const QRectF &rect, + const QPixmap &pm, const QRectF &subRect ) +{ + Q_UNUSED(rect); + Q_UNUSED(pm); + Q_UNUSED(subRect); +} + +//! See QPaintEngine::drawTextItem() +void QwtNullPaintDevice::drawTextItem( + const QPointF &pos, const QTextItem &textItem) +{ + Q_UNUSED(pos); + Q_UNUSED(textItem); +} + +//! See QPaintEngine::drawTiledPixmap() +void QwtNullPaintDevice::drawTiledPixmap( + const QRectF &rect, const QPixmap &pixmap, + const QPointF &subRect) +{ + Q_UNUSED(rect); + Q_UNUSED(pixmap); + Q_UNUSED(subRect); +} + +//! See QPaintEngine::drawImage() +void QwtNullPaintDevice::drawImage( + const QRectF &rect, const QImage &image, + const QRectF &subRect, Qt::ImageConversionFlags flags) +{ + Q_UNUSED(rect); + Q_UNUSED(image); + Q_UNUSED(subRect); + Q_UNUSED(flags); +} + +//! See QPaintEngine::updateState() +void QwtNullPaintDevice::updateState( + const QPaintEngineState &state ) +{ + Q_UNUSED(state); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_null_paintdevice.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_null_paintdevice.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_null_paintdevice.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_null_paintdevice.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,89 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_NULL_PAINT_DEVICE_H +#define QWT_NULL_PAINT_DEVICE_H 1 + +#include "qwt_global.h" +#include +#include + +/*! + \brief A null paint device doing nothing + + Sometimes important layout/rendering geometries are not + available or changable from the public Qt class interface. + ( f.e hidden in the style implementation ). + + QwtNullPaintDevice can be used to manipulate or filter out + these informations by analyzing the stream of paint primitives. + + F.e. QwtNullPaintDevice is used by QwtPlotCanvas to identify + styled backgrounds with rounded corners. +*/ + +class QWT_EXPORT QwtNullPaintDevice: public QPaintDevice +{ +public: + QwtNullPaintDevice( QPaintEngine::PaintEngineFeatures ); + QwtNullPaintDevice( const QSize &size, + QPaintEngine::PaintEngineFeatures ); + + virtual ~QwtNullPaintDevice(); + + void setSize( const QSize &); + QSize size() const; + + virtual QPaintEngine *paintEngine() const; + virtual int metric( PaintDeviceMetric metric ) const; + + virtual void drawRects(const QRect *, int ); + virtual void drawRects(const QRectF *, int ); + + virtual void drawLines(const QLine *, int ); + virtual void drawLines(const QLineF *, int ); + + virtual void drawEllipse(const QRectF &); + virtual void drawEllipse(const QRect &); + + virtual void drawPath(const QPainterPath &); + + virtual void drawPoints(const QPointF *, int ); + virtual void drawPoints(const QPoint *, int ); + + virtual void drawPolygon( + const QPointF *, int , QPaintEngine::PolygonDrawMode ); + + virtual void drawPolygon( + const QPoint *, int , QPaintEngine::PolygonDrawMode ); + + virtual void drawPixmap(const QRectF &, + const QPixmap &, const QRectF &); + + virtual void drawTextItem(const QPointF &, const QTextItem &); + + virtual void drawTiledPixmap(const QRectF &, + const QPixmap &, const QPointF &s); + + virtual void drawImage(const QRectF &, + const QImage &, const QRectF &, Qt::ImageConversionFlags ); + + virtual void updateState( const QPaintEngineState &state ); + +private: + void init( QPaintEngine::PaintEngineFeatures ); + + class PaintEngine; + PaintEngine *d_engine; + + class PrivateData; + PrivateData *d_data; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_painter.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_painter.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_painter.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_painter.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,703 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_painter.h" +#include "qwt_math.h" +#include "qwt_clipper.h" +#include "qwt_color_map.h" +#include "qwt_scale_map.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +bool QwtPainter::d_polylineSplitting = true; +bool QwtPainter::d_roundingAlignment = true; + +static inline bool isClippingNeeded( const QPainter *painter, QRectF &clipRect ) +{ + bool doClipping = false; + const QPaintEngine *pe = painter->paintEngine(); + if ( pe && pe->type() == QPaintEngine::SVG ) + { + // The SVG paint engine ignores any clipping, + + if ( painter->hasClipping() ) + { + doClipping = true; + clipRect = painter->clipRegion().boundingRect(); + } + } + + return doClipping; +} + +static inline void drawPolyline( QPainter *painter, + const QPointF *points, int pointCount, bool polylineSplitting ) +{ + bool doSplit = false; + if ( polylineSplitting ) + { + const QPaintEngine *pe = painter->paintEngine(); + if ( pe && pe->type() == QPaintEngine::Raster ) + { + /* + The raster paint engine seems to use some algo with O(n*n). + ( Qt 4.3 is better than Qt 4.2, but remains unacceptable) + To work around this problem, we have to split the polygon into + smaller pieces. + */ + doSplit = true; + } + } + + if ( doSplit ) + { + const int splitSize = 20; + for ( int i = 0; i < pointCount; i += splitSize ) + { + const int n = qMin( splitSize + 1, pointCount - i ); + painter->drawPolyline( points + i, n ); + } + } + else + painter->drawPolyline( points, pointCount ); +} + +static inline void unscaleFont( QPainter *painter ) +{ + if ( painter->font().pixelSize() >= 0 ) + return; + + static QSize screenResolution; + if ( !screenResolution.isValid() ) + { + QDesktopWidget *desktop = QApplication::desktop(); + if ( desktop ) + { + screenResolution.setWidth( desktop->logicalDpiX() ); + screenResolution.setHeight( desktop->logicalDpiY() ); + } + } + + const QPaintDevice *pd = painter->device(); + if ( pd->logicalDpiX() != screenResolution.width() || + pd->logicalDpiY() != screenResolution.height() ) + { + QFont pixelFont( painter->font(), QApplication::desktop() ); + pixelFont.setPixelSize( QFontInfo( pixelFont ).pixelSize() ); + + painter->setFont( pixelFont ); + } +} + +/*! + Check if the painter is using a paint engine, that aligns + coordinates to integers. Today these are all paint engines + beside QPaintEngine::Pdf and QPaintEngine::SVG. + + \param painter Painter + \return true, when the paint engine is aligning + + \sa setRoundingAlignment() +*/ +bool QwtPainter::isAligning( QPainter *painter ) +{ + if ( painter && painter->isActive() ) + { + switch ( painter->paintEngine()->type() ) + { + case QPaintEngine::Pdf: + case QPaintEngine::SVG: + return false; + + default:; + } + } + + return true; +} + +/*! + Enable whether coordinates should be rounded, before they are painted + to a paint engine that floors to integer values. For other paint engines + this ( Pdf, SVG ), this flag has no effect. + QwtPainter stores this flag only, the rounding itsself is done in + the painting code ( f.e the plot items ). + + The default setting is true. + + \sa roundingAlignment(), isAligning() +*/ +void QwtPainter::setRoundingAlignment( bool enable ) +{ + d_roundingAlignment = enable; +} + +/*! + \brief En/Disable line splitting for the raster paint engine + + The raster paint engine paints polylines of many points + much faster when they are splitted in smaller chunks. + + \sa polylineSplitting() +*/ +void QwtPainter::setPolylineSplitting( bool enable ) +{ + d_polylineSplitting = enable; +} + +//! Wrapper for QPainter::drawPath() +void QwtPainter::drawPath( QPainter *painter, const QPainterPath &path ) +{ + painter->drawPath( path ); +} + +//! Wrapper for QPainter::drawRect() +void QwtPainter::drawRect( QPainter *painter, double x, double y, double w, double h ) +{ + drawRect( painter, QRectF( x, y, w, h ) ); +} + +//! Wrapper for QPainter::drawRect() +void QwtPainter::drawRect( QPainter *painter, const QRectF &rect ) +{ + const QRectF r = rect; + + QRectF clipRect; + const bool deviceClipping = isClippingNeeded( painter, clipRect ); + + if ( deviceClipping ) + { + if ( !clipRect.intersects( r ) ) + return; + + if ( !clipRect.contains( r ) ) + { + fillRect( painter, r & clipRect, painter->brush() ); + + painter->save(); + painter->setBrush( Qt::NoBrush ); + drawPolyline( painter, QPolygonF( r ) ); + painter->restore(); + + return; + } + } + + painter->drawRect( r ); +} + +//! Wrapper for QPainter::fillRect() +void QwtPainter::fillRect( QPainter *painter, + const QRectF &rect, const QBrush &brush ) +{ + if ( !rect.isValid() ) + return; + + QRectF clipRect; + const bool deviceClipping = isClippingNeeded( painter, clipRect ); + + /* + Performance of Qt4 is horrible for non trivial brushs. Without + clipping expect minutes or hours for repainting large rects + (might result from zooming) + */ + + if ( deviceClipping ) + clipRect &= painter->window(); + else + clipRect = painter->window(); + + if ( painter->hasClipping() ) + clipRect &= painter->clipRegion().boundingRect(); + + QRectF r = rect; + if ( deviceClipping ) + r = r.intersect( clipRect ); + + if ( r.isValid() ) + painter->fillRect( r, brush ); +} + +//! Wrapper for QPainter::drawPie() +void QwtPainter::drawPie( QPainter *painter, const QRectF &rect, + int a, int alen ) +{ + QRectF clipRect; + const bool deviceClipping = isClippingNeeded( painter, clipRect ); + if ( deviceClipping && !clipRect.contains( rect ) ) + return; + + painter->drawPie( rect, a, alen ); +} + +//! Wrapper for QPainter::drawEllipse() +void QwtPainter::drawEllipse( QPainter *painter, const QRectF &rect ) +{ + QRectF clipRect; + const bool deviceClipping = isClippingNeeded( painter, clipRect ); + + if ( deviceClipping && !clipRect.contains( rect ) ) + return; + + painter->drawEllipse( rect ); +} + +//! Wrapper for QPainter::drawText() +void QwtPainter::drawText( QPainter *painter, double x, double y, + const QString &text ) +{ + drawText( painter, QPointF( x, y ), text ); +} + +//! Wrapper for QPainter::drawText() +void QwtPainter::drawText( QPainter *painter, const QPointF &pos, + const QString &text ) +{ + QRectF clipRect; + const bool deviceClipping = isClippingNeeded( painter, clipRect ); + + if ( deviceClipping && !clipRect.contains( pos ) ) + return; + + + painter->save(); + unscaleFont( painter ); + painter->drawText( pos, text ); + painter->restore(); +} + +//! Wrapper for QPainter::drawText() +void QwtPainter::drawText( QPainter *painter, + double x, double y, double w, double h, + int flags, const QString &text ) +{ + drawText( painter, QRectF( x, y, w, h ), flags, text ); +} + +//! Wrapper for QPainter::drawText() +void QwtPainter::drawText( QPainter *painter, const QRectF &rect, + int flags, const QString &text ) +{ + painter->save(); + unscaleFont( painter ); + painter->drawText( rect, flags, text ); + painter->restore(); +} + +#ifndef QT_NO_RICHTEXT + +/*! + Draw a text document into a rectangle + + \param painter Painter + \param rect Traget rectangle + \param flags Alignments/Text flags, see QPainter::drawText() + \param text Text document +*/ +void QwtPainter::drawSimpleRichText( QPainter *painter, const QRectF &rect, + int flags, const QTextDocument &text ) +{ + QTextDocument *txt = text.clone(); + + painter->save(); + + painter->setFont( txt->defaultFont() ); + unscaleFont( painter ); + + txt->setDefaultFont( painter->font() ); + txt->setPageSize( QSizeF( rect.width(), QWIDGETSIZE_MAX ) ); + + QAbstractTextDocumentLayout* layout = txt->documentLayout(); + + const double height = layout->documentSize().height(); + double y = rect.y(); + if ( flags & Qt::AlignBottom ) + y += ( rect.height() - height ); + else if ( flags & Qt::AlignVCenter ) + y += ( rect.height() - height ) / 2; + + QAbstractTextDocumentLayout::PaintContext context; + context.palette.setColor( QPalette::Text, painter->pen().color() ); + + painter->translate( rect.x(), y ); + layout->draw( painter, context ); + + painter->restore(); + delete txt; +} + +#endif // !QT_NO_RICHTEXT + + +//! Wrapper for QPainter::drawLine() +void QwtPainter::drawLine( QPainter *painter, + const QPointF &p1, const QPointF &p2 ) +{ + QRectF clipRect; + const bool deviceClipping = isClippingNeeded( painter, clipRect ); + + if ( deviceClipping && + !( clipRect.contains( p1 ) && clipRect.contains( p2 ) ) ) + { + QPolygonF polygon; + polygon += p1; + polygon += p2; + drawPolyline( painter, polygon ); + return; + } + + painter->drawLine( p1, p2 ); +} + +//! Wrapper for QPainter::drawPolygon() +void QwtPainter::drawPolygon( QPainter *painter, const QPolygonF &polygon ) +{ + QRectF clipRect; + const bool deviceClipping = isClippingNeeded( painter, clipRect ); + + QPolygonF cpa = polygon; + if ( deviceClipping ) + cpa = QwtClipper::clipPolygonF( clipRect, polygon ); + + painter->drawPolygon( cpa ); +} + +//! Wrapper for QPainter::drawPolyline() +void QwtPainter::drawPolyline( QPainter *painter, const QPolygonF &polygon ) +{ + QRectF clipRect; + const bool deviceClipping = isClippingNeeded( painter, clipRect ); + + QPolygonF cpa = polygon; + if ( deviceClipping ) + cpa = QwtClipper::clipPolygonF( clipRect, cpa ); + + ::drawPolyline( painter, + cpa.constData(), cpa.size(), d_polylineSplitting ); +} + +//! Wrapper for QPainter::drawPolyline() +void QwtPainter::drawPolyline( QPainter *painter, + const QPointF *points, int pointCount ) +{ + QRectF clipRect; + const bool deviceClipping = isClippingNeeded( painter, clipRect ); + + if ( deviceClipping ) + { + QPolygonF polygon( pointCount ); + qMemCopy( polygon.data(), points, pointCount * sizeof( QPointF ) ); + + polygon = QwtClipper::clipPolygonF( clipRect, polygon ); + ::drawPolyline( painter, + polygon.constData(), polygon.size(), d_polylineSplitting ); + } + else + ::drawPolyline( painter, points, pointCount, d_polylineSplitting ); +} + +//! Wrapper for QPainter::drawPoint() +void QwtPainter::drawPoint( QPainter *painter, const QPointF &pos ) +{ + QRectF clipRect; + const bool deviceClipping = isClippingNeeded( painter, clipRect ); + + if ( deviceClipping && !clipRect.contains( pos ) ) + return; + + painter->drawPoint( pos ); +} + +//! Wrapper for QPainter::drawImage() +void QwtPainter::drawImage( QPainter *painter, + const QRectF &rect, const QImage &image ) +{ + const QRect alignedRect = rect.toAlignedRect(); + + if ( alignedRect != rect ) + { + const QRectF clipRect = rect.adjusted( 0.0, 0.0, -1.0, -1.0 ); + + painter->save(); + painter->setClipRect( clipRect, Qt::IntersectClip ); + painter->drawImage( alignedRect, image ); + painter->restore(); + } + else + { + painter->drawImage( alignedRect, image ); + } +} + +//! Wrapper for QPainter::drawPixmap() +void QwtPainter::drawPixmap( QPainter *painter, + const QRectF &rect, const QPixmap &pixmap ) +{ + const QRect alignedRect = rect.toAlignedRect(); + + if ( alignedRect != rect ) + { + const QRectF clipRect = rect.adjusted( 0.0, 0.0, -1.0, -1.0 ); + + painter->save(); + painter->setClipRect( clipRect, Qt::IntersectClip ); + painter->drawPixmap( alignedRect, pixmap ); + painter->restore(); + } + else + { + painter->drawPixmap( alignedRect, pixmap ); + } +} + +//! Draw a focus rectangle on a widget using its style. +void QwtPainter::drawFocusRect( QPainter *painter, QWidget *widget ) +{ + drawFocusRect( painter, widget, widget->rect() ); +} + +//! Draw a focus rectangle on a widget using its style. +void QwtPainter::drawFocusRect( QPainter *painter, QWidget *widget, + const QRect &rect ) +{ + QStyleOptionFocusRect opt; + opt.init( widget ); + opt.rect = rect; + opt.state |= QStyle::State_HasFocus; + + widget->style()->drawPrimitive( QStyle::PE_FrameFocusRect, + &opt, painter, widget ); +} + +/*! + Draw a frame with rounded borders + + \param painter Painter + \param rect Frame rectangle + \param xRadius x-radius of the ellipses defining the corners + \param yRadius y-radius of the ellipses defining the corners + \param palette QPalette::WindowText is used for plain borders + QPalette::Dark and QPalette::Light for raised + or sunken borders + \param lineWidth Line width + \param frameStyle bitwise OR´ed value of QFrame::Shape and QFrame::Shadow +*/ + +void QwtPainter::drawRoundedFrame( QPainter *painter, + const QRectF &rect, double xRadius, double yRadius, + const QPalette &palette, int lineWidth, int frameStyle ) +{ + painter->save(); + painter->setRenderHint( QPainter::Antialiasing, true ); + painter->setBrush( Qt::NoBrush ); + + double lw2 = lineWidth * 0.5; + QRectF r = rect.adjusted( lw2, lw2, -lw2, -lw2 ); + + QPainterPath path; + path.addRoundedRect( r, xRadius, yRadius ); + + enum Style + { + Plain, + Sunken, + Raised + }; + + Style style = Plain; + if ( (frameStyle & QFrame::Sunken) == QFrame::Sunken ) + style = Sunken; + else if ( (frameStyle & QFrame::Raised) == QFrame::Raised ) + style = Raised; + + if ( style != Plain && path.elementCount() == 17 ) + { + // move + 4 * ( cubicTo + lineTo ) + QPainterPath pathList[8]; + + for ( int i = 0; i < 4; i++ ) + { + const int j = i * 4 + 1; + + pathList[ 2 * i ].moveTo( + path.elementAt(j - 1).x, path.elementAt( j - 1 ).y + ); + + pathList[ 2 * i ].cubicTo( + path.elementAt(j + 0).x, path.elementAt(j + 0).y, + path.elementAt(j + 1).x, path.elementAt(j + 1).y, + path.elementAt(j + 2).x, path.elementAt(j + 2).y ); + + pathList[ 2 * i + 1 ].moveTo( + path.elementAt(j + 2).x, path.elementAt(j + 2).y + ); + pathList[ 2 * i + 1 ].lineTo( + path.elementAt(j + 3).x, path.elementAt(j + 3).y + ); + } + + QColor c1( palette.color( QPalette::Dark ) ); + QColor c2( palette.color( QPalette::Light ) ); + + if ( style == Raised ) + qSwap( c1, c2 ); + + for ( int i = 0; i < 4; i++ ) + { + QRectF r = pathList[2 * i].controlPointRect(); + + QPen arcPen; + arcPen.setWidth( lineWidth ); + + QPen linePen; + linePen.setWidth( lineWidth ); + + switch( i ) + { + case 0: + { + arcPen.setColor( c1 ); + linePen.setColor( c1 ); + break; + } + case 1: + { + QLinearGradient gradient; + gradient.setStart( r.topLeft() ); + gradient.setFinalStop( r.bottomRight() ); + gradient.setColorAt( 0.0, c1 ); + gradient.setColorAt( 1.0, c2 ); + + arcPen.setBrush( gradient ); + linePen.setColor( c2 ); + break; + } + case 2: + { + arcPen.setColor( c2 ); + linePen.setColor( c2 ); + break; + } + case 3: + { + QLinearGradient gradient; + + gradient.setStart( r.bottomRight() ); + gradient.setFinalStop( r.topLeft() ); + gradient.setColorAt( 0.0, c2 ); + gradient.setColorAt( 1.0, c1 ); + + arcPen.setBrush( gradient ); + linePen.setColor( c1 ); + break; + } + } + + + painter->setPen( arcPen ); + painter->drawPath( pathList[ 2 * i] ); + + painter->setPen( linePen ); + painter->drawPath( pathList[ 2 * i + 1] ); + } + } + else + { + QPen pen( palette.color( QPalette::WindowText ), lineWidth ); + painter->setPen( pen ); + painter->drawPath( path ); + } + + painter->restore(); +} + +/*! + Draw a color bar into a rectangle + + \param painter Painter + \param colorMap Color map + \param interval Value range + \param scaleMap Scale map + \param orientation Orientation + \param rect Traget rectangle +*/ +void QwtPainter::drawColorBar( QPainter *painter, + const QwtColorMap &colorMap, const QwtInterval &interval, + const QwtScaleMap &scaleMap, Qt::Orientation orientation, + const QRectF &rect ) +{ + QVector colorTable; + if ( colorMap.format() == QwtColorMap::Indexed ) + colorTable = colorMap.colorTable( interval ); + + QColor c; + + const QRect devRect = rect.toAlignedRect(); + + /* + We paint to a pixmap first to have something scalable for printing + ( f.e. in a Pdf document ) + */ + + QPixmap pixmap( devRect.size() ); + QPainter pmPainter( &pixmap ); + pmPainter.translate( -devRect.x(), -devRect.y() ); + + if ( orientation == Qt::Horizontal ) + { + QwtScaleMap sMap = scaleMap; + sMap.setPaintInterval( rect.left(), rect.right() ); + + for ( int x = devRect.left(); x <= devRect.right(); x++ ) + { + const double value = sMap.invTransform( x ); + + if ( colorMap.format() == QwtColorMap::RGB ) + c.setRgb( colorMap.rgb( interval, value ) ); + else + c = colorTable[colorMap.colorIndex( interval, value )]; + + pmPainter.setPen( c ); + pmPainter.drawLine( x, devRect.top(), x, devRect.bottom() ); + } + } + else // Vertical + { + QwtScaleMap sMap = scaleMap; + sMap.setPaintInterval( rect.bottom(), rect.top() ); + + for ( int y = devRect.top(); y <= devRect.bottom(); y++ ) + { + const double value = sMap.invTransform( y ); + + if ( colorMap.format() == QwtColorMap::RGB ) + c.setRgb( colorMap.rgb( interval, value ) ); + else + c = colorTable[colorMap.colorIndex( interval, value )]; + + pmPainter.setPen( c ); + pmPainter.drawLine( devRect.left(), y, devRect.right(), y ); + } + } + pmPainter.end(); + + drawPixmap( painter, rect, pixmap ); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_painter.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_painter.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_painter.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_painter.h 2011-04-15 10:48:46.000000000 +0000 @@ -0,0 +1,149 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_PAINTER_H +#define QWT_PAINTER_H + +#include "qwt_global.h" + +#include +#include +#include +#include + +class QPainter; +class QBrush; +class QColor; +class QWidget; +class QPolygonF; +class QRectF; +class QImage; +class QPixmap; +class QwtScaleMap; +class QwtColorMap; +class QwtInterval; + +class QPalette; +class QTextDocument; +class QPainterPath; + +/*! + \brief A collection of QPainter workarounds +*/ +class QWT_EXPORT QwtPainter +{ +public: + static void setPolylineSplitting( bool ); + static bool polylineSplitting(); + + static void setRoundingAlignment( bool ); + static bool roundingAlignment(); + static bool roundingAlignment(QPainter *); + + static void drawText( QPainter *, double x, double y, const QString & ); + static void drawText( QPainter *, const QPointF &, const QString & ); + static void drawText( QPainter *, double x, double y, double w, double h, + int flags, const QString & ); + static void drawText( QPainter *, const QRectF &, + int flags, const QString & ); + +#ifndef QT_NO_RICHTEXT + static void drawSimpleRichText( QPainter *, const QRectF &, + int flags, const QTextDocument & ); +#endif + + static void drawRect( QPainter *, double x, double y, double w, double h ); + static void drawRect( QPainter *, const QRectF &rect ); + static void fillRect( QPainter *, const QRectF &, const QBrush & ); + + static void drawEllipse( QPainter *, const QRectF & ); + static void drawPie( QPainter *, const QRectF & r, int a, int alen ); + + static void drawLine( QPainter *, double x1, double y1, double x2, double y2 ); + static void drawLine( QPainter *, const QPointF &p1, const QPointF &p2 ); + static void drawLine( QPainter *, const QLineF & ); + + static void drawPolygon( QPainter *, const QPolygonF &pa ); + static void drawPolyline( QPainter *, const QPolygonF &pa ); + static void drawPolyline( QPainter *, const QPointF *, int pointCount ); + + static void drawPoint( QPainter *, double x, double y ); + static void drawPoint( QPainter *, const QPointF & ); + + static void drawPath( QPainter *, const QPainterPath & ); + static void drawImage( QPainter *, const QRectF &, const QImage & ); + static void drawPixmap( QPainter *, const QRectF &, const QPixmap & ); + + static void drawRoundedFrame( QPainter *, + const QRectF &, double xRadius, double yRadius, + const QPalette &, int lineWidth, int frameStyle ); + + static void drawFocusRect( QPainter *, QWidget * ); + static void drawFocusRect( QPainter *, QWidget *, const QRect & ); + + static void drawColorBar( QPainter *painter, + const QwtColorMap &, const QwtInterval &, + const QwtScaleMap &, Qt::Orientation, const QRectF & ); + + static bool isAligning( QPainter *painter ); + +private: + static bool d_polylineSplitting; + static bool d_roundingAlignment; +}; + +//! Wrapper for QPainter::drawPoint() +inline void QwtPainter::drawPoint( QPainter *painter, double x, double y ) +{ + QwtPainter::drawPoint( painter, QPointF( x, y ) ); +} + +//! Wrapper for QPainter::drawLine() +inline void QwtPainter::drawLine( QPainter *painter, + double x1, double y1, double x2, double y2 ) +{ + QwtPainter::drawLine( painter, QPointF( x1, y1 ), QPointF( x2, y2 ) ); +} + +//! Wrapper for QPainter::drawLine() +inline void QwtPainter::drawLine( QPainter *painter, const QLineF &line ) +{ + QwtPainter::drawLine( painter, line.p1(), line.p2() ); +} + +/*! + Returns whether line splitting for the raster paint engine is enabled. + \sa setPolylineSplitting() +*/ +inline bool QwtPainter::polylineSplitting() +{ + return d_polylineSplitting; +} + +/*! + Returns whether coordinates should be rounded, before they are painted + to a paint engine that floors to integer values. For other paint engines + this ( Pdf, SVG ), this flag has no effect. + + \sa setRoundingAlignment(), isAligning() +*/ +inline bool QwtPainter::roundingAlignment() +{ + return d_roundingAlignment; +} + +/*! + \return roundingAlignment() && isAligning(painter); + \param painter Painter +*/ +inline bool QwtPainter::roundingAlignment(QPainter *painter) +{ + return d_roundingAlignment && isAligning(painter); +} +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_panner.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_panner.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_panner.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_panner.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,528 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_panner.h" +#include "qwt_picker.h" +#include +#include +#include +#include +#include + +static QVector qwtActivePickers( QWidget *w ) +{ + QVector pickers; + + QObjectList children = w->children(); + for ( int i = 0; i < children.size(); i++ ) + { + QObject *obj = children[i]; + if ( obj->inherits( "QwtPicker" ) ) + { + QwtPicker *picker = ( QwtPicker * )obj; + if ( picker->isEnabled() ) + pickers += picker; + } + } + + return pickers; +} + +class QwtPanner::PrivateData +{ +public: + PrivateData(): + button( Qt::LeftButton ), + buttonState( Qt::NoButton ), + abortKey( Qt::Key_Escape ), + abortKeyState( Qt::NoButton ), +#ifndef QT_NO_CURSOR + cursor( NULL ), + restoreCursor( NULL ), + hasCursor( false ), +#endif + isEnabled( false ) + { + orientations = Qt::Vertical | Qt::Horizontal; + } + + ~PrivateData() + { +#ifndef QT_NO_CURSOR + delete cursor; + delete restoreCursor; +#endif + } + + int button; + int buttonState; + int abortKey; + int abortKeyState; + + QPoint initialPos; + QPoint pos; + + QPixmap pixmap; + QBitmap contentsMask; + +#ifndef QT_NO_CURSOR + QCursor *cursor; + QCursor *restoreCursor; + bool hasCursor; +#endif + bool isEnabled; + Qt::Orientations orientations; +}; + +/*! + Creates an panner that is enabled for the left mouse button. + + \param parent Parent widget to be panned +*/ +QwtPanner::QwtPanner( QWidget *parent ): + QWidget( parent ) +{ + d_data = new PrivateData(); + + setAttribute( Qt::WA_TransparentForMouseEvents ); + setAttribute( Qt::WA_NoSystemBackground ); + setFocusPolicy( Qt::NoFocus ); + hide(); + + setEnabled( true ); +} + +//! Destructor +QwtPanner::~QwtPanner() +{ + delete d_data; +} + +/*! + Change the mouse button + The defaults are Qt::LeftButton and Qt::NoButton +*/ +void QwtPanner::setMouseButton( int button, int buttonState ) +{ + d_data->button = button; + d_data->buttonState = buttonState; +} + +//! Get the mouse button +void QwtPanner::getMouseButton( int &button, int &buttonState ) const +{ + button = d_data->button; + buttonState = d_data->buttonState; +} + +/*! + Change the abort key + The defaults are Qt::Key_Escape and Qt::NoButton + + \param key Key ( See Qt::Keycode ) + \param state State +*/ +void QwtPanner::setAbortKey( int key, int state ) +{ + d_data->abortKey = key; + d_data->abortKeyState = state; +} + +//! Get the abort key +void QwtPanner::getAbortKey( int &key, int &state ) const +{ + key = d_data->abortKey; + state = d_data->abortKeyState; +} + +/*! + Change the cursor, that is active while panning + The default is the cursor of the parent widget. + + \param cursor New cursor + + \sa setCursor() +*/ +#ifndef QT_NO_CURSOR +void QwtPanner::setCursor( const QCursor &cursor ) +{ + d_data->cursor = new QCursor( cursor ); +} +#endif + +/*! + \return Cursor that is active while panning + \sa setCursor() +*/ +#ifndef QT_NO_CURSOR +const QCursor QwtPanner::cursor() const +{ + if ( d_data->cursor ) + return *d_data->cursor; + + if ( parentWidget() ) + return parentWidget()->cursor(); + + return QCursor(); +} +#endif + +/*! + \brief En/disable the panner + + When enabled is true an event filter is installed for + the observed widget, otherwise the event filter is removed. + + \param on true or false + \sa isEnabled(), eventFilter() +*/ +void QwtPanner::setEnabled( bool on ) +{ + if ( d_data->isEnabled != on ) + { + d_data->isEnabled = on; + + QWidget *w = parentWidget(); + if ( w ) + { + if ( d_data->isEnabled ) + { + w->installEventFilter( this ); + } + else + { + w->removeEventFilter( this ); + hide(); + } + } + } +} + +/*! + Set the orientations, where panning is enabled + The default value is in both directions: Qt::Horizontal | Qt::Vertical + + /param o Orientation +*/ +void QwtPanner::setOrientations( Qt::Orientations o ) +{ + d_data->orientations = o; +} + +//! Return the orientation, where paning is enabled +Qt::Orientations QwtPanner::orientations() const +{ + return d_data->orientations; +} + +/*! + Return true if a orientatio is enabled + \sa orientations(), setOrientations() +*/ +bool QwtPanner::isOrientationEnabled( Qt::Orientation o ) const +{ + return d_data->orientations & o; +} + +/*! + \return true when enabled, false otherwise + \sa setEnabled, eventFilter() +*/ +bool QwtPanner::isEnabled() const +{ + return d_data->isEnabled; +} + +/*! + \brief Paint event + + Repaint the grabbed pixmap on its current position and + fill the empty spaces by the background of the parent widget. + + \param pe Paint event +*/ +void QwtPanner::paintEvent( QPaintEvent *pe ) +{ + int dx = d_data->pos.x() - d_data->initialPos.x(); + int dy = d_data->pos.y() - d_data->initialPos.y(); + + QRect r( 0, 0, d_data->pixmap.width(), d_data->pixmap.height() ); + r.moveCenter( QPoint( r.center().x() + dx, r.center().y() + dy ) ); + + QPixmap pm( size() ); + pm.fill( parentWidget(), 0, 0 ); + + QPainter painter( &pm ); + + if ( !d_data->contentsMask.isNull() ) + { + QPixmap masked = d_data->pixmap; + masked.setMask( d_data->contentsMask ); + painter.drawPixmap( r, masked ); + } + else + { + painter.drawPixmap( r, d_data->pixmap ); + } + + painter.end(); + + if ( !d_data->contentsMask.isNull() ) + pm.setMask( d_data->contentsMask ); + + painter.begin( this ); + painter.setClipRegion( pe->region() ); + painter.drawPixmap( 0, 0, pm ); +} + +/*! + \brief Calculate a mask for the contents of the panned widget + + Sometimes only parts of the contents of a widget should be + panned. F.e. for a widget with a styled background with rounded borders + only the area inside of the border should be panned. + + \return An empty bitmap, indicating no mask +*/ +QBitmap QwtPanner::contentsMask() const +{ + return QBitmap(); +} + +/*! + Grab the widget into a pixmap. +*/ +QPixmap QwtPanner::grab() const +{ + return QPixmap::grabWidget( parentWidget() ); +} + +/*! + \brief Event filter + + When isEnabled() the mouse events of the observed widget are filtered. + + \sa widgetMousePressEvent(), widgetMouseReleaseEvent(), + widgetMouseMoveEvent() +*/ +bool QwtPanner::eventFilter( QObject *o, QEvent *e ) +{ + if ( o == NULL || o != parentWidget() ) + return false; + + switch ( e->type() ) + { + case QEvent::MouseButtonPress: + { + widgetMousePressEvent( ( QMouseEvent * )e ); + break; + } + case QEvent::MouseMove: + { + widgetMouseMoveEvent( ( QMouseEvent * )e ); + break; + } + case QEvent::MouseButtonRelease: + { + widgetMouseReleaseEvent( ( QMouseEvent * )e ); + break; + } + case QEvent::KeyPress: + { + widgetKeyPressEvent( ( QKeyEvent * )e ); + break; + } + case QEvent::KeyRelease: + { + widgetKeyReleaseEvent( ( QKeyEvent * )e ); + break; + } + case QEvent::Paint: + { + if ( isVisible() ) + return true; + break; + } + default:; + } + + return false; +} + +/*! + Handle a mouse press event for the observed widget. + + \param me Mouse event + \sa eventFilter(), widgetMouseReleaseEvent(), + widgetMouseMoveEvent(), +*/ +void QwtPanner::widgetMousePressEvent( QMouseEvent *me ) +{ + if ( me->button() != d_data->button ) + return; + + QWidget *w = parentWidget(); + if ( w == NULL ) + return; + + if ( ( me->modifiers() & Qt::KeyboardModifierMask ) != + ( int )( d_data->buttonState & Qt::KeyboardModifierMask ) ) + { + return; + } + +#ifndef QT_NO_CURSOR + showCursor( true ); +#endif + + d_data->initialPos = d_data->pos = me->pos(); + + setGeometry( parentWidget()->rect() ); + + // We don't want to grab the picker ! + QVector pickers = qwtActivePickers( parentWidget() ); + for ( int i = 0; i < ( int )pickers.size(); i++ ) + pickers[i]->setEnabled( false ); + + d_data->pixmap = grab(); + d_data->contentsMask = contentsMask(); + + for ( int i = 0; i < ( int )pickers.size(); i++ ) + pickers[i]->setEnabled( true ); + + show(); +} + +/*! + Handle a mouse move event for the observed widget. + + \param me Mouse event + \sa eventFilter(), widgetMousePressEvent(), widgetMouseReleaseEvent() +*/ +void QwtPanner::widgetMouseMoveEvent( QMouseEvent *me ) +{ + if ( !isVisible() ) + return; + + QPoint pos = me->pos(); + if ( !isOrientationEnabled( Qt::Horizontal ) ) + pos.setX( d_data->initialPos.x() ); + if ( !isOrientationEnabled( Qt::Vertical ) ) + pos.setY( d_data->initialPos.y() ); + + if ( pos != d_data->pos && rect().contains( pos ) ) + { + d_data->pos = pos; + update(); + + Q_EMIT moved( d_data->pos.x() - d_data->initialPos.x(), + d_data->pos.y() - d_data->initialPos.y() ); + } +} + +/*! + Handle a mouse release event for the observed widget. + + \param me Mouse event + \sa eventFilter(), widgetMousePressEvent(), + widgetMouseMoveEvent(), +*/ +void QwtPanner::widgetMouseReleaseEvent( QMouseEvent *me ) +{ + if ( isVisible() ) + { + hide(); +#ifndef QT_NO_CURSOR + showCursor( false ); +#endif + + QPoint pos = me->pos(); + if ( !isOrientationEnabled( Qt::Horizontal ) ) + pos.setX( d_data->initialPos.x() ); + if ( !isOrientationEnabled( Qt::Vertical ) ) + pos.setY( d_data->initialPos.y() ); + + d_data->pixmap = QPixmap(); + d_data->contentsMask = QBitmap(); + d_data->pos = pos; + + if ( d_data->pos != d_data->initialPos ) + { + Q_EMIT panned( d_data->pos.x() - d_data->initialPos.x(), + d_data->pos.y() - d_data->initialPos.y() ); + } + } +} + +/*! + Handle a key press event for the observed widget. + + \param ke Key event + \sa eventFilter(), widgetKeyReleaseEvent() +*/ +void QwtPanner::widgetKeyPressEvent( QKeyEvent *ke ) +{ + if ( ke->key() == d_data->abortKey ) + { + const bool matched = + ( ke->modifiers() & Qt::KeyboardModifierMask ) == + ( int )( d_data->abortKeyState & Qt::KeyboardModifierMask ); + if ( matched ) + { + hide(); +#ifndef QT_NO_CURSOR + showCursor( false ); +#endif + d_data->pixmap = QPixmap(); + } + } +} + +/*! + Handle a key release event for the observed widget. + \sa eventFilter(), widgetKeyReleaseEvent() +*/ +void QwtPanner::widgetKeyReleaseEvent( QKeyEvent * ) +{ +} + +#ifndef QT_NO_CURSOR +void QwtPanner::showCursor( bool on ) +{ + if ( on == d_data->hasCursor ) + return; + + QWidget *w = parentWidget(); + if ( w == NULL || d_data->cursor == NULL ) + return; + + d_data->hasCursor = on; + + if ( on ) + { + if ( w->testAttribute( Qt::WA_SetCursor ) ) + { + delete d_data->restoreCursor; + d_data->restoreCursor = new QCursor( w->cursor() ); + } + w->setCursor( *d_data->cursor ); + } + else + { + if ( d_data->restoreCursor ) + { + w->setCursor( *d_data->restoreCursor ); + delete d_data->restoreCursor; + d_data->restoreCursor = NULL; + } + else + w->unsetCursor(); + } +} +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_panner.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_panner.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_panner.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_panner.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,100 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_PANNER_H +#define QWT_PANNER_H 1 + +#include "qwt_global.h" +#include +#include + +class QCursor; + +/*! + \brief QwtPanner provides panning of a widget + + QwtPanner grabs the contents of a widget, that can be dragged + in all directions. The offset between the start and the end position + is emitted by the panned signal. + + QwtPanner grabs the content of the widget into a pixmap and moves + the pixmap around, without initiating any repaint events for the widget. + Areas, that are not part of content are not painted while panning. + This makes panning fast enough for widgets, where + repaints are too slow for mouse movements. + + For widgets, where repaints are very fast it might be better to + implement panning manually by mapping mouse events into paint events. +*/ +class QWT_EXPORT QwtPanner: public QWidget +{ + Q_OBJECT + +public: + QwtPanner( QWidget* parent ); + virtual ~QwtPanner(); + + void setEnabled( bool ); + bool isEnabled() const; + + void setMouseButton( int button, int buttonState = Qt::NoButton ); + void getMouseButton( int &button, int &buttonState ) const; + void setAbortKey( int key, int state = Qt::NoButton ); + void getAbortKey( int &key, int &state ) const; + + void setCursor( const QCursor & ); + const QCursor cursor() const; + + void setOrientations( Qt::Orientations ); + Qt::Orientations orientations() const; + + bool isOrientationEnabled( Qt::Orientation ) const; + + virtual bool eventFilter( QObject *, QEvent * ); + +Q_SIGNALS: + /*! + Signal emitted, when panning is done + + \param dx Offset in horizontal direction + \param dy Offset in vertical direction + */ + void panned( int dx, int dy ); + + /*! + Signal emitted, while the widget moved, but panning + is not finished. + + \param dx Offset in horizontal direction + \param dy Offset in vertical direction + */ + void moved( int dx, int dy ); + +protected: + virtual void widgetMousePressEvent( QMouseEvent * ); + virtual void widgetMouseReleaseEvent( QMouseEvent * ); + virtual void widgetMouseMoveEvent( QMouseEvent * ); + virtual void widgetKeyPressEvent( QKeyEvent * ); + virtual void widgetKeyReleaseEvent( QKeyEvent * ); + + virtual void paintEvent( QPaintEvent * ); + + virtual QBitmap contentsMask() const; + virtual QPixmap grab() const; + +private: +#ifndef QT_NO_CURSOR + void showCursor( bool ); +#endif + + class PrivateData; + PrivateData *d_data; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_picker.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_picker.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_picker.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_picker.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,1413 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_picker.h" +#include "qwt_picker_machine.h" +#include "qwt_painter.h" +#include "qwt_math.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include + +class QwtPicker::PickerWidget: public QWidget +{ +public: + enum Type + { + RubberBand, + Text + }; + + PickerWidget( QwtPicker *, QWidget *, Type ); + void updateMask(); + + /* + For a tracker text with a background we can use the background + rect as mask. Also for "regular" Qt widgets >= 4.3.0 we + don't need to mask the text anymore. + */ + bool d_hasTextMask; + +protected: + virtual void paintEvent( QPaintEvent * ); + + QwtPicker *d_picker; + Type d_type; +}; + +class QwtPicker::PrivateData +{ +public: + bool enabled; + + QwtPickerMachine *stateMachine; + + QwtPicker::ResizeMode resizeMode; + + QwtPicker::RubberBand rubberBand; + QPen rubberBandPen; + + QwtPicker::DisplayMode trackerMode; + QPen trackerPen; + QFont trackerFont; + + QPolygon pickedPoints; + bool isActive; + QPoint trackerPosition; + + bool mouseTracking; // used to save previous value + + /* + On X11 the widget below the picker widgets gets paint events + with a region that is the bounding rect of the mask, if it is complex. + In case of (f.e) a CrossRubberBand and a text this creates complete + repaints of the widget. So we better use two different widgets. + */ + + QPointer rubberBandWidget; + QPointer trackerWidget; +}; + +QwtPicker::PickerWidget::PickerWidget( + QwtPicker *picker, QWidget *parent, Type type ): + QWidget( parent ), + d_hasTextMask( false ), + d_picker( picker ), + d_type( type ) +{ + setAttribute( Qt::WA_TransparentForMouseEvents ); + setAttribute( Qt::WA_NoSystemBackground ); + setFocusPolicy( Qt::NoFocus ); +} + +void QwtPicker::PickerWidget::updateMask() +{ + QRegion mask; + + if ( d_type == RubberBand ) + { + QBitmap bm( width(), height() ); + bm.fill( Qt::color0 ); + + QPainter painter( &bm ); + QPen pen = d_picker->rubberBandPen(); + pen.setColor( Qt::color1 ); + painter.setPen( pen ); + + d_picker->drawRubberBand( &painter ); + + mask = QRegion( bm ); + } + if ( d_type == Text ) + { + d_hasTextMask = parentWidget()->testAttribute( Qt::WA_PaintOnScreen ); + + if ( d_hasTextMask ) + { + const QwtText label = d_picker->trackerText( + d_picker->trackerPosition() ); + + if ( label.testPaintAttribute( QwtText::PaintBackground ) + && label.backgroundBrush().style() != Qt::NoBrush ) + { + if ( label.backgroundBrush().color().alpha() > 0 ) + { + // We don't need a text mask, when we have a background + d_hasTextMask = false; + } + } + } + + if ( d_hasTextMask ) + { + QBitmap bm( width(), height() ); + bm.fill( Qt::color0 ); + + QPainter painter( &bm ); + painter.setFont( font() ); + + QPen pen = d_picker->trackerPen(); + pen.setColor( Qt::color1 ); + painter.setPen( pen ); + + d_picker->drawTracker( &painter ); + + mask = QRegion( bm ); + } + else + { + mask = d_picker->trackerRect( font() ); + } + } + + QWidget *w = parentWidget(); + if ( w && !w->testAttribute( Qt::WA_PaintOnScreen ) ) + { + // The parent widget gets an update for its complete rectangle + // when the mask is changed in visible state. + // With this hide/show we only get an update for the + // previous mask. + + hide(); + } + setMask( mask ); + setVisible( !mask.isEmpty() ); +} + +void QwtPicker::PickerWidget::paintEvent( QPaintEvent *e ) +{ + QPainter painter( this ); + painter.setClipRegion( e->region() ); + + if ( d_type == RubberBand ) + { + painter.setPen( d_picker->rubberBandPen() ); + d_picker->drawRubberBand( &painter ); + } + + if ( d_type == Text ) + { + /* + If we have a text mask we simply fill the region of + the mask. This gives better results for antialiased fonts. + */ + if ( d_hasTextMask ) + { + painter.fillRect( e->rect(), + QBrush( d_picker->trackerPen().color() ) ); + } + else + { + painter.setPen( d_picker->trackerPen() ); + d_picker->drawTracker( &painter ); + } + } +} + +/*! + Constructor + + Creates an picker that is enabled, but without a state machine. + rubberband and tracker are disabled. + + \param parent Parent widget, that will be observed + */ + +QwtPicker::QwtPicker( QWidget *parent ): + QObject( parent ) +{ + init( parent, NoRubberBand, AlwaysOff ); +} + +/*! + Constructor + + \param rubberBand Rubberband style + \param trackerMode Tracker mode + \param parent Parent widget, that will be observed + */ +QwtPicker::QwtPicker( RubberBand rubberBand, + DisplayMode trackerMode, QWidget *parent ): + QObject( parent ) +{ + init( parent, rubberBand, trackerMode ); +} + +//! Destructor +QwtPicker::~QwtPicker() +{ + setMouseTracking( false ); + delete d_data->stateMachine; + delete d_data->rubberBandWidget; + delete d_data->trackerWidget; + delete d_data; +} + +//! Init the picker, used by the constructors +void QwtPicker::init( QWidget *parent, + RubberBand rubberBand, DisplayMode trackerMode ) +{ + d_data = new PrivateData; + + d_data->rubberBandWidget = NULL; + d_data->trackerWidget = NULL; + + d_data->rubberBand = rubberBand; + d_data->enabled = false; + d_data->resizeMode = Stretch; + d_data->trackerMode = AlwaysOff; + d_data->isActive = false; + d_data->trackerPosition = QPoint( -1, -1 ); + d_data->mouseTracking = false; + + d_data->stateMachine = NULL; + + if ( parent ) + { + if ( parent->focusPolicy() == Qt::NoFocus ) + parent->setFocusPolicy( Qt::WheelFocus ); + + d_data->trackerFont = parent->font(); + d_data->mouseTracking = parent->hasMouseTracking(); + setEnabled( true ); + } + setTrackerMode( trackerMode ); +} + +/*! + Set a state machine and delete the previous one + + \param stateMachine State machine + \sa stateMachine() +*/ +void QwtPicker::setStateMachine( QwtPickerMachine *stateMachine ) +{ + if ( d_data->stateMachine != stateMachine ) + { + reset(); + + delete d_data->stateMachine; + d_data->stateMachine = stateMachine; + + if ( d_data->stateMachine ) + d_data->stateMachine->reset(); + } +} + +/*! + \return Assigned state machine + \sa setStateMachine() +*/ +QwtPickerMachine *QwtPicker::stateMachine() +{ + return d_data->stateMachine; +} + +/*! + \return Assigned state machine + \sa setStateMachine() +*/ +const QwtPickerMachine *QwtPicker::stateMachine() const +{ + return d_data->stateMachine; +} + +//! Return the parent widget, where the selection happens +QWidget *QwtPicker::parentWidget() +{ + QObject *obj = parent(); + if ( obj && obj->isWidgetType() ) + return ( QWidget * )obj; + + return NULL; +} + +//! Return the parent widget, where the selection happens +const QWidget *QwtPicker::parentWidget() const +{ + QObject *obj = parent(); + if ( obj && obj->isWidgetType() ) + return ( QWidget * )obj; + + return NULL; +} + +/*! + Set the rubberband style + + \param rubberBand Rubberband style + The default value is NoRubberBand. + + \sa rubberBand(), RubberBand, setRubberBandPen() +*/ +void QwtPicker::setRubberBand( RubberBand rubberBand ) +{ + d_data->rubberBand = rubberBand; +} + +/*! + \return Rubberband style + \sa setRubberBand(), RubberBand, rubberBandPen() +*/ +QwtPicker::RubberBand QwtPicker::rubberBand() const +{ + return d_data->rubberBand; +} + +/*! + \brief Set the display mode of the tracker. + + A tracker displays information about current position of + the cursor as a string. The display mode controls + if the tracker has to be displayed whenever the observed + widget has focus and cursor (AlwaysOn), never (AlwaysOff), or + only when the selection is active (ActiveOnly). + + \param mode Tracker display mode + + \warning In case of AlwaysOn, mouseTracking will be enabled + for the observed widget. + \sa trackerMode(), DisplayMode +*/ + +void QwtPicker::setTrackerMode( DisplayMode mode ) +{ + if ( d_data->trackerMode != mode ) + { + d_data->trackerMode = mode; + setMouseTracking( d_data->trackerMode == AlwaysOn ); + } +} + +/*! + \return Tracker display mode + \sa setTrackerMode(), DisplayMode +*/ +QwtPicker::DisplayMode QwtPicker::trackerMode() const +{ + return d_data->trackerMode; +} + +/*! + \brief Set the resize mode. + + The resize mode controls what to do with the selected points of an active + selection when the observed widget is resized. + + Stretch means the points are scaled according to the new + size, KeepSize means the points remain unchanged. + + The default mode is Stretch. + + \param mode Resize mode + \sa resizeMode(), ResizeMode +*/ +void QwtPicker::setResizeMode( ResizeMode mode ) +{ + d_data->resizeMode = mode; +} + +/*! + \return Resize mode + \sa setResizeMode(), ResizeMode +*/ + +QwtPicker::ResizeMode QwtPicker::resizeMode() const +{ + return d_data->resizeMode; +} + +/*! + \brief En/disable the picker + + When enabled is true an event filter is installed for + the observed widget, otherwise the event filter is removed. + + \param enabled true or false + \sa isEnabled(), eventFilter() +*/ +void QwtPicker::setEnabled( bool enabled ) +{ + if ( d_data->enabled != enabled ) + { + d_data->enabled = enabled; + + QWidget *w = parentWidget(); + if ( w ) + { + if ( enabled ) + w->installEventFilter( this ); + else + w->removeEventFilter( this ); + } + + updateDisplay(); + } +} + +/*! + \return true when enabled, false otherwise + \sa setEnabled(), eventFilter() +*/ + +bool QwtPicker::isEnabled() const +{ + return d_data->enabled; +} + +/*! + Set the font for the tracker + + \param font Tracker font + \sa trackerFont(), setTrackerMode(), setTrackerPen() +*/ +void QwtPicker::setTrackerFont( const QFont &font ) +{ + if ( font != d_data->trackerFont ) + { + d_data->trackerFont = font; + updateDisplay(); + } +} + +/*! + \return Tracker font + \sa setTrackerFont(), trackerMode(), trackerPen() +*/ + +QFont QwtPicker::trackerFont() const +{ + return d_data->trackerFont; +} + +/*! + Set the pen for the tracker + + \param pen Tracker pen + \sa trackerPen(), setTrackerMode(), setTrackerFont() +*/ +void QwtPicker::setTrackerPen( const QPen &pen ) +{ + if ( pen != d_data->trackerPen ) + { + d_data->trackerPen = pen; + updateDisplay(); + } +} + +/*! + \return Tracker pen + \sa setTrackerPen(), trackerMode(), trackerFont() +*/ +QPen QwtPicker::trackerPen() const +{ + return d_data->trackerPen; +} + +/*! + Set the pen for the rubberband + + \param pen Rubberband pen + \sa rubberBandPen(), setRubberBand() +*/ +void QwtPicker::setRubberBandPen( const QPen &pen ) +{ + if ( pen != d_data->rubberBandPen ) + { + d_data->rubberBandPen = pen; + updateDisplay(); + } +} + +/*! + \return Rubberband pen + \sa setRubberBandPen(), rubberBand() +*/ +QPen QwtPicker::rubberBandPen() const +{ + return d_data->rubberBandPen; +} + +/*! + \brief Return the label for a position + + In case of HLineRubberBand the label is the value of the + y position, in case of VLineRubberBand the value of the x position. + Otherwise the label contains x and y position separated by a ',' . + + The format for the string conversion is "%d". + + \param pos Position + \return Converted position as string +*/ + +QwtText QwtPicker::trackerText( const QPoint &pos ) const +{ + QString label; + + switch ( rubberBand() ) + { + case HLineRubberBand: + label.sprintf( "%d", pos.y() ); + break; + case VLineRubberBand: + label.sprintf( "%d", pos.x() ); + break; + default: + label.sprintf( "%d, %d", pos.x(), pos.y() ); + } + return label; +} + +/*! + Draw a rubberband, depending on rubberBand() + + \param painter Painter, initialized with clip rect + + \sa rubberBand(), RubberBand +*/ + +void QwtPicker::drawRubberBand( QPainter *painter ) const +{ + if ( !isActive() || rubberBand() == NoRubberBand || + rubberBandPen().style() == Qt::NoPen ) + { + return; + } + + const QRect &pRect = pickRect(); + const QPolygon pa = adjustedPoints( d_data->pickedPoints ); + + QwtPickerMachine::SelectionType selectionType = + QwtPickerMachine::NoSelection; + + if ( d_data->stateMachine ) + selectionType = d_data->stateMachine->selectionType(); + + switch ( selectionType ) + { + case QwtPickerMachine::NoSelection: + case QwtPickerMachine::PointSelection: + { + if ( pa.count() < 1 ) + return; + + const QPoint pos = pa[0]; + + switch ( rubberBand() ) + { + case VLineRubberBand: + QwtPainter::drawLine( painter, pos.x(), + pRect.top(), pos.x(), pRect.bottom() ); + break; + + case HLineRubberBand: + QwtPainter::drawLine( painter, pRect.left(), + pos.y(), pRect.right(), pos.y() ); + break; + + case CrossRubberBand: + QwtPainter::drawLine( painter, pos.x(), + pRect.top(), pos.x(), pRect.bottom() ); + QwtPainter::drawLine( painter, pRect.left(), + pos.y(), pRect.right(), pos.y() ); + break; + default: + break; + } + break; + } + case QwtPickerMachine::RectSelection: + { + if ( pa.count() < 2 ) + return; + + const QPoint p1 = pa[0]; + const QPoint p2 = pa[int( pa.count() - 1 )]; + + const QRect rect = QRect( p1, p2 ).normalized(); + switch ( rubberBand() ) + { + case EllipseRubberBand: + QwtPainter::drawEllipse( painter, rect ); + break; + case RectRubberBand: + QwtPainter::drawRect( painter, rect ); + break; + default: + break; + } + break; + } + case QwtPickerMachine::PolygonSelection: + { + if ( rubberBand() == PolygonRubberBand ) + painter->drawPolyline( pa ); + break; + } + default: + break; + } +} + +/*! + Draw the tracker + + \param painter Painter + \sa trackerRect(), trackerText() +*/ + +void QwtPicker::drawTracker( QPainter *painter ) const +{ + const QRect textRect = trackerRect( painter->font() ); + if ( !textRect.isEmpty() ) + { + const QwtText label = trackerText( d_data->trackerPosition ); + if ( !label.isEmpty() ) + label.draw( painter, textRect ); + } +} + +/*! + \brief Map the pickedPoints() into a selection() + + adjustedPoints() maps the points, that have been collected on + the parentWidget() into a selection(). The default implementation + simply returns the points unmodified. + + The reason, why a selection() differs from the picked points + depends on the application requirements. F.e. : + + - A rectangular selection might need to have a specific aspect ratio only.\n + - A selection could accept non intersecting polygons only.\n + - ...\n + + The example below is for a rectangular selection, where the first + point is the center of the selected rectangle. + \par Example + \verbatim QPolygon MyPicker::adjustedPoints(const QPolygon &points) const +{ + QPolygon adjusted; + if ( points.size() == 2 ) + { + const int width = qAbs(points[1].x() - points[0].x()); + const int height = qAbs(points[1].y() - points[0].y()); + + QRect rect(0, 0, 2 * width, 2 * height); + rect.moveCenter(points[0]); + + adjusted += rect.topLeft(); + adjusted += rect.bottomRight(); + } + return adjusted; +}\endverbatim\n +*/ +QPolygon QwtPicker::adjustedPoints( const QPolygon &points ) const +{ + return points; +} + +/*! + \return Selected points + \sa pickedPoints(), adjustedPoints() +*/ +QPolygon QwtPicker::selection() const +{ + return adjustedPoints( d_data->pickedPoints ); +} + +//! \return Current position of the tracker +QPoint QwtPicker::trackerPosition() const +{ + return d_data->trackerPosition; +} + +/*! + Calculate the bounding rectangle for the tracker text + from the current position of the tracker + + \param font Font of the tracker text + \return Bounding rectangle of the tracker text + + \sa trackerPosition() +*/ +QRect QwtPicker::trackerRect( const QFont &font ) const +{ + if ( trackerMode() == AlwaysOff || + ( trackerMode() == ActiveOnly && !isActive() ) ) + { + return QRect(); + } + + if ( d_data->trackerPosition.x() < 0 || d_data->trackerPosition.y() < 0 ) + return QRect(); + + QwtText text = trackerText( d_data->trackerPosition ); + if ( text.isEmpty() ) + return QRect(); + + const QSizeF textSize = text.textSize( font ); + QRect textRect( 0, 0, qCeil( textSize.width() ), qCeil( textSize.height() ) ); + + const QPoint &pos = d_data->trackerPosition; + + int alignment = 0; + if ( isActive() && d_data->pickedPoints.count() > 1 + && rubberBand() != NoRubberBand ) + { + const QPoint last = + d_data->pickedPoints[int( d_data->pickedPoints.count() ) - 2]; + + alignment |= ( pos.x() >= last.x() ) ? Qt::AlignRight : Qt::AlignLeft; + alignment |= ( pos.y() > last.y() ) ? Qt::AlignBottom : Qt::AlignTop; + } + else + alignment = Qt::AlignTop | Qt::AlignRight; + + const int margin = 5; + + int x = pos.x(); + if ( alignment & Qt::AlignLeft ) + x -= textRect.width() + margin; + else if ( alignment & Qt::AlignRight ) + x += margin; + + int y = pos.y(); + if ( alignment & Qt::AlignBottom ) + y += margin; + else if ( alignment & Qt::AlignTop ) + y -= textRect.height() + margin; + + textRect.moveTopLeft( QPoint( x, y ) ); + + int right = qMin( textRect.right(), pickRect().right() - margin ); + int bottom = qMin( textRect.bottom(), pickRect().bottom() - margin ); + textRect.moveBottomRight( QPoint( right, bottom ) ); + + int left = qMax( textRect.left(), pickRect().left() + margin ); + int top = qMax( textRect.top(), pickRect().top() + margin ); + textRect.moveTopLeft( QPoint( left, top ) ); + + return textRect; +} + +/*! + \brief Event filter + + When isEnabled() == true all events of the observed widget are filtered. + Mouse and keyboard events are translated into widgetMouse- and widgetKey- + and widgetWheel-events. Paint and Resize events are handled to keep + rubberband and tracker up to date. + + \sa event(), widgetEnterEvent(), widgetLeaveEvent(), + widgetMousePressEvent(), widgetMouseReleaseEvent(), + widgetMouseDoubleClickEvent(), widgetMouseMoveEvent(), + widgetWheelEvent(), widgetKeyPressEvent(), widgetKeyReleaseEvent() +*/ +bool QwtPicker::eventFilter( QObject *o, QEvent *e ) +{ + if ( o && o == parentWidget() ) + { + switch ( e->type() ) + { + case QEvent::Resize: + { + const QResizeEvent *re = ( QResizeEvent * )e; + if ( d_data->resizeMode == Stretch ) + stretchSelection( re->oldSize(), re->size() ); + + if ( d_data->rubberBandWidget ) + d_data->rubberBandWidget->resize( re->size() ); + + if ( d_data->trackerWidget ) + d_data->trackerWidget->resize( re->size() ); + break; + } + case QEvent::Enter: + widgetEnterEvent( e ); + break; + case QEvent::Leave: + widgetLeaveEvent( e ); + break; + case QEvent::MouseButtonPress: + widgetMousePressEvent( ( QMouseEvent * )e ); + break; + case QEvent::MouseButtonRelease: + widgetMouseReleaseEvent( ( QMouseEvent * )e ); + break; + case QEvent::MouseButtonDblClick: + widgetMouseDoubleClickEvent( ( QMouseEvent * )e ); + break; + case QEvent::MouseMove: + widgetMouseMoveEvent( ( QMouseEvent * )e ); + break; + case QEvent::KeyPress: + widgetKeyPressEvent( ( QKeyEvent * )e ); + break; + case QEvent::KeyRelease: + widgetKeyReleaseEvent( ( QKeyEvent * )e ); + break; + case QEvent::Wheel: + widgetWheelEvent( ( QWheelEvent * )e ); + break; + default: + break; + } + } + return false; +} + +/*! + Handle a mouse press event for the observed widget. + + \sa eventFilter(), widgetMouseReleaseEvent(), + widgetMouseDoubleClickEvent(), widgetMouseMoveEvent(), + widgetWheelEvent(), widgetKeyPressEvent(), widgetKeyReleaseEvent() +*/ +void QwtPicker::widgetMousePressEvent( QMouseEvent *e ) +{ + transition( e ); +} + +/*! + Handle a mouse move event for the observed widget. + + \sa eventFilter(), widgetMousePressEvent(), widgetMouseReleaseEvent(), + widgetMouseDoubleClickEvent(), + widgetWheelEvent(), widgetKeyPressEvent(), widgetKeyReleaseEvent() +*/ +void QwtPicker::widgetMouseMoveEvent( QMouseEvent *e ) +{ + if ( pickRect().contains( e->pos() ) ) + d_data->trackerPosition = e->pos(); + else + d_data->trackerPosition = QPoint( -1, -1 ); + + if ( !isActive() ) + updateDisplay(); + + transition( e ); +} + +/*! + Handle a enter event for the observed widget. + + \sa eventFilter(), widgetMousePressEvent(), widgetMouseReleaseEvent(), + widgetMouseDoubleClickEvent(), + widgetWheelEvent(), widgetKeyPressEvent(), widgetKeyReleaseEvent() +*/ +void QwtPicker::widgetEnterEvent( QEvent *event ) +{ + transition( event ); +} + +/*! + Handle a leave event for the observed widget. + + \sa eventFilter(), widgetMousePressEvent(), widgetMouseReleaseEvent(), + widgetMouseDoubleClickEvent(), + widgetWheelEvent(), widgetKeyPressEvent(), widgetKeyReleaseEvent() +*/ +void QwtPicker::widgetLeaveEvent( QEvent *event ) +{ + transition( event ); + + d_data->trackerPosition = QPoint( -1, -1 ); + if ( !isActive() ) + updateDisplay(); +} + +/*! + Handle a mouse relase event for the observed widget. + + \sa eventFilter(), widgetMousePressEvent(), + widgetMouseDoubleClickEvent(), widgetMouseMoveEvent(), + widgetWheelEvent(), widgetKeyPressEvent(), widgetKeyReleaseEvent() +*/ +void QwtPicker::widgetMouseReleaseEvent( QMouseEvent *e ) +{ + transition( e ); +} + +/*! + Handle mouse double click event for the observed widget. + + Empty implementation, does nothing. + + \sa eventFilter(), widgetMousePressEvent(), widgetMouseReleaseEvent(), + widgetMouseMoveEvent(), + widgetWheelEvent(), widgetKeyPressEvent(), widgetKeyReleaseEvent() +*/ +void QwtPicker::widgetMouseDoubleClickEvent( QMouseEvent *me ) +{ + transition( me ); +} + + +/*! + Handle a wheel event for the observed widget. + + Move the last point of the selection in case of isActive() == true + + \sa eventFilter(), widgetMousePressEvent(), widgetMouseReleaseEvent(), + widgetMouseDoubleClickEvent(), widgetMouseMoveEvent(), + widgetKeyPressEvent(), widgetKeyReleaseEvent() +*/ +void QwtPicker::widgetWheelEvent( QWheelEvent *e ) +{ + if ( pickRect().contains( e->pos() ) ) + d_data->trackerPosition = e->pos(); + else + d_data->trackerPosition = QPoint( -1, -1 ); + + updateDisplay(); + + transition( e ); +} + +/*! + Handle a key press event for the observed widget. + + Selections can be completely done by the keyboard. The arrow keys + move the cursor, the abort key aborts a selection. All other keys + are handled by the current state machine. + + \sa eventFilter(), widgetMousePressEvent(), widgetMouseReleaseEvent(), + widgetMouseDoubleClickEvent(), widgetMouseMoveEvent(), + widgetWheelEvent(), widgetKeyReleaseEvent(), stateMachine(), + QwtEventPattern::KeyPatternCode +*/ +void QwtPicker::widgetKeyPressEvent( QKeyEvent *ke ) +{ + int dx = 0; + int dy = 0; + + int offset = 1; + if ( ke->isAutoRepeat() ) + offset = 5; + + if ( keyMatch( KeyLeft, ke ) ) + dx = -offset; + else if ( keyMatch( KeyRight, ke ) ) + dx = offset; + else if ( keyMatch( KeyUp, ke ) ) + dy = -offset; + else if ( keyMatch( KeyDown, ke ) ) + dy = offset; + else if ( keyMatch( KeyAbort, ke ) ) + { + reset(); + } + else + transition( ke ); + + if ( dx != 0 || dy != 0 ) + { + const QRect rect = pickRect(); + const QPoint pos = parentWidget()->mapFromGlobal( QCursor::pos() ); + + int x = pos.x() + dx; + x = qMax( rect.left(), x ); + x = qMin( rect.right(), x ); + + int y = pos.y() + dy; + y = qMax( rect.top(), y ); + y = qMin( rect.bottom(), y ); + + QCursor::setPos( parentWidget()->mapToGlobal( QPoint( x, y ) ) ); + } +} + +/*! + Handle a key release event for the observed widget. + + Passes the event to the state machine. + + \sa eventFilter(), widgetMousePressEvent(), widgetMouseReleaseEvent(), + widgetMouseDoubleClickEvent(), widgetMouseMoveEvent(), + widgetWheelEvent(), widgetKeyPressEvent(), stateMachine() +*/ +void QwtPicker::widgetKeyReleaseEvent( QKeyEvent *ke ) +{ + transition( ke ); +} + +/*! + Passes an event to the state machine and executes the resulting + commands. Append and Move commands use the current position + of the cursor (QCursor::pos()). + + \param e Event +*/ +void QwtPicker::transition( const QEvent *e ) +{ + if ( !d_data->stateMachine ) + return; + + const QList commandList = + d_data->stateMachine->transition( *this, e ); + + QPoint pos; + switch ( e->type() ) + { + case QEvent::MouseButtonDblClick: + case QEvent::MouseButtonPress: + case QEvent::MouseButtonRelease: + case QEvent::MouseMove: + { + const QMouseEvent *me = static_cast< const QMouseEvent * >( e ); + pos = me->pos(); + break; + } + default: + pos = parentWidget()->mapFromGlobal( QCursor::pos() ); + } + + for ( uint i = 0; i < ( uint )commandList.count(); i++ ) + { + switch ( commandList[i] ) + { + case QwtPickerMachine::Begin: + { + begin(); + break; + } + case QwtPickerMachine::Append: + { + append( pos ); + break; + } + case QwtPickerMachine::Move: + { + move( pos ); + break; + } + case QwtPickerMachine::Remove: + { + remove(); + break; + } + case QwtPickerMachine::End: + { + end(); + break; + } + } + } +} + +/*! + Open a selection setting the state to active + + \sa isActive(), end(), append(), move() +*/ +void QwtPicker::begin() +{ + if ( d_data->isActive ) + return; + + d_data->pickedPoints.resize( 0 ); + d_data->isActive = true; + Q_EMIT activated( true ); + + if ( trackerMode() != AlwaysOff ) + { + if ( d_data->trackerPosition.x() < 0 || d_data->trackerPosition.y() < 0 ) + { + QWidget *w = parentWidget(); + if ( w ) + d_data->trackerPosition = w->mapFromGlobal( QCursor::pos() ); + } + } + + updateDisplay(); + setMouseTracking( true ); +} + +/*! + \brief Close a selection setting the state to inactive. + + The selection is validated and maybe fixed by accept(). + + \param ok If true, complete the selection and emit a selected signal + otherwise discard the selection. + \return true if the selection is accepted, false otherwise + \sa isActive(), begin(), append(), move(), selected(), accept() +*/ +bool QwtPicker::end( bool ok ) +{ + if ( d_data->isActive ) + { + setMouseTracking( false ); + + d_data->isActive = false; + Q_EMIT activated( false ); + + if ( trackerMode() == ActiveOnly ) + d_data->trackerPosition = QPoint( -1, -1 ); + + if ( ok ) + ok = accept( d_data->pickedPoints ); + + if ( ok ) + Q_EMIT selected( d_data->pickedPoints ); + else + d_data->pickedPoints.resize( 0 ); + + updateDisplay(); + } + else + ok = false; + + return ok; +} + +/*! + Reset the state machine and terminate (end(false)) the selection +*/ +void QwtPicker::reset() +{ + if ( d_data->stateMachine ) + d_data->stateMachine->reset(); + + if ( isActive() ) + end( false ); +} + +/*! + Append a point to the selection and update rubberband and tracker. + The appended() signal is emitted. + + \param pos Additional point + + \sa isActive(), begin(), end(), move(), appended() +*/ +void QwtPicker::append( const QPoint &pos ) +{ + if ( d_data->isActive ) + { + const int idx = d_data->pickedPoints.count(); + d_data->pickedPoints.resize( idx + 1 ); + d_data->pickedPoints[idx] = pos; + + updateDisplay(); + Q_EMIT appended( pos ); + } +} + +/*! + Move the last point of the selection + The moved() signal is emitted. + + \param pos New position + \sa isActive(), begin(), end(), append() +*/ +void QwtPicker::move( const QPoint &pos ) +{ + if ( d_data->isActive ) + { + const int idx = d_data->pickedPoints.count() - 1; + if ( idx >= 0 ) + { + if ( d_data->pickedPoints[idx] != pos ) + { + d_data->pickedPoints[idx] = pos; + + updateDisplay(); + Q_EMIT moved( pos ); + } + } + } +} + +/*! + Remove the last point of the selection + The removed() signal is emitted. + + \sa isActive(), begin(), end(), append(), move() +*/ +void QwtPicker::remove() +{ + if ( d_data->isActive ) + { + const int idx = d_data->pickedPoints.count() - 1; + if ( idx > 0 ) + { + const int idx = d_data->pickedPoints.count(); + + const QPoint pos = d_data->pickedPoints[idx - 1]; + d_data->pickedPoints.resize( idx - 1 ); + + updateDisplay(); + Q_EMIT removed( pos ); + } + } +} + +/*! + \brief Validate and fixup the selection + + Accepts all selections unmodified + + \param selection Selection to validate and fixup + \return true, when accepted, false otherwise +*/ +bool QwtPicker::accept( QPolygon &selection ) const +{ + Q_UNUSED( selection ); + return true; +} + +/*! + A picker is active between begin() and end(). + \return true if the selection is active. +*/ +bool QwtPicker::isActive() const +{ + return d_data->isActive; +} + +/*! + Return the points, that have been collected so far. The selection() + is calculated from the pickedPoints() in adjustedPoints(). + \return Picked points +*/ +const QPolygon &QwtPicker::pickedPoints() const +{ + return d_data->pickedPoints; +} + +/*! + Scale the selection by the ratios of oldSize and newSize + The changed() signal is emitted. + + \param oldSize Previous size + \param newSize Current size + + \sa ResizeMode, setResizeMode(), resizeMode() +*/ +void QwtPicker::stretchSelection( const QSize &oldSize, const QSize &newSize ) +{ + if ( oldSize.isEmpty() ) + { + // avoid division by zero. But scaling for small sizes also + // doesn't make much sense, because of rounding losses. TODO ... + return; + } + + const double xRatio = + double( newSize.width() ) / double( oldSize.width() ); + const double yRatio = + double( newSize.height() ) / double( oldSize.height() ); + + for ( int i = 0; i < int( d_data->pickedPoints.count() ); i++ ) + { + QPoint &p = d_data->pickedPoints[i]; + p.setX( qRound( p.x() * xRatio ) ); + p.setY( qRound( p.y() * yRatio ) ); + + Q_EMIT changed( d_data->pickedPoints ); + } +} + +/*! + Set mouse tracking for the observed widget. + + In case of enable is true, the previous value + is saved, that is restored when enable is false. + + \warning Even when enable is false, mouse tracking might be restored + to true. When mouseTracking for the observed widget + has been changed directly by QWidget::setMouseTracking + while mouse tracking has been set to true, this value can't + be restored. +*/ + +void QwtPicker::setMouseTracking( bool enable ) +{ + QWidget *widget = parentWidget(); + if ( !widget ) + return; + + if ( enable ) + { + d_data->mouseTracking = widget->hasMouseTracking(); + widget->setMouseTracking( true ); + } + else + { + widget->setMouseTracking( d_data->mouseTracking ); + } +} + +/*! + Find the area of the observed widget, where selection might happen. + + \return QFrame::contentsRect() if it is a QFrame, QWidget::rect() otherwise. +*/ +QRect QwtPicker::pickRect() const +{ + const QWidget *widget = parentWidget(); + if ( widget ) + return widget->contentsRect(); + + return QRect(); +} + +//! Update the state of rubberband and tracker label +void QwtPicker::updateDisplay() +{ + QWidget *w = parentWidget(); + + bool showRubberband = false; + bool showTracker = false; + if ( w && w->isVisible() && d_data->enabled ) + { + if ( rubberBand() != NoRubberBand && isActive() && + rubberBandPen().style() != Qt::NoPen ) + { + showRubberband = true; + } + + if ( trackerMode() == AlwaysOn || + ( trackerMode() == ActiveOnly && isActive() ) ) + { + if ( trackerPen() != Qt::NoPen ) + showTracker = true; + } + } + + QPointer &rw = d_data->rubberBandWidget; + if ( showRubberband ) + { + if ( rw.isNull() ) + { + rw = new PickerWidget( this, w, PickerWidget::RubberBand ); + rw->resize( w->size() ); + } + rw->updateMask(); + rw->update(); // Needed, when the mask doesn't change + } + else + delete rw; + + QPointer &tw = d_data->trackerWidget; + if ( showTracker ) + { + if ( tw.isNull() ) + { + tw = new PickerWidget( this, w, PickerWidget::Text ); + tw->resize( w->size() ); + } + tw->setFont( d_data->trackerFont ); + tw->updateMask(); + tw->update(); // Needed, when the mask doesn't change + } + else + delete tw; +} + +//! \return Widget displaying the rubberband +const QWidget *QwtPicker::rubberBandWidget() const +{ + return d_data->rubberBandWidget; +} + +//! \return Widget displaying the tracker text +const QWidget *QwtPicker::trackerWidget() const +{ + return d_data->trackerWidget; +} + diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_picker.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_picker.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_picker.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_picker.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,327 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_PICKER +#define QWT_PICKER 1 + +#include "qwt_global.h" +#include "qwt_text.h" +#include "qwt_event_pattern.h" +#include +#include +#include +#include + +class QWidget; +class QMouseEvent; +class QWheelEvent; +class QKeyEvent; +class QwtPickerMachine; + +/*! + \brief QwtPicker provides selections on a widget + + QwtPicker filters all enter, leave, mouse and keyboard events of a widget + and translates them into an array of selected points. + + The way how the points are collected depends on type of state machine + that is connected to the picker. Qwt offers a couple of predefined + state machines for selecting: + + - Nothing\n + QwtPickerTrackerMachine + - Single points\n + QwtPickerClickPointMachine, QwtPickerDragPointMachine + - Rectangles\n + QwtPickerClickRectMachine, QwtPickerDragRectMachine + - Polygons\n + QwtPickerPolygonMachine + + While these state machines cover the most common ways to collect points + it is also possible to implement individual machines as well. + + QwtPicker translates the picked points into a selection using the + adjustedPoints method. adjustedPoints is intended to be reimplemented + to fixup the selection according to application specific requirements. + (F.e. when an application accepts rectangles of a fixed aspect ratio only.) + + Optionally QwtPicker support the process of collecting points by a + rubberband and tracker displaying a text for the current mouse + position. + + \par Example + \verbatim #include +#include + +QwtPicker *picker = new QwtPicker(widget); +picker->setStateMachine(new QwtPickerDragRectMachine); +picker->setTrackerMode(QwtPicker::ActiveOnly); +picker->setRubberBand(QwtPicker::RectRubberBand); \endverbatim\n + + The state machine triggers the following commands: + + - begin()\n + Activate/Initialize the selection. + - append()\n + Add a new point + - move() \n + Change the position of the last point. + - remove()\n + Remove the last point. + - end()\n + Terminate the selection and call accept to validate the picked points. + + The picker is active (isActive()), between begin() and end(). + In active state the rubberband is displayed, and the tracker is visible + in case of trackerMode is ActiveOnly or AlwaysOn. + + The cursor can be moved using the arrow keys. All selections can be aborted + using the abort key. (QwtEventPattern::KeyPatternCode) + + \warning In case of QWidget::NoFocus the focus policy of the observed + widget is set to QWidget::WheelFocus and mouse tracking + will be manipulated while the picker is active, + or if trackerMode() is AlwayOn. +*/ + +class QWT_EXPORT QwtPicker: public QObject, public QwtEventPattern +{ + Q_OBJECT + + Q_ENUMS( RubberBand ) + Q_ENUMS( DisplayMode ) + Q_ENUMS( ResizeMode ) + + Q_PROPERTY( bool isEnabled READ isEnabled WRITE setEnabled ) + Q_PROPERTY( ResizeMode resizeMode READ resizeMode WRITE setResizeMode ) + + Q_PROPERTY( DisplayMode trackerMode READ trackerMode WRITE setTrackerMode ) + Q_PROPERTY( QPen trackerPen READ trackerPen WRITE setTrackerPen ) + Q_PROPERTY( QFont trackerFont READ trackerFont WRITE setTrackerFont ) + + Q_PROPERTY( RubberBand rubberBand READ rubberBand WRITE setRubberBand ) + Q_PROPERTY( QPen rubberBandPen READ rubberBandPen WRITE setRubberBandPen ) + +public: + /*! + Rubberband style + + The default value is QwtPicker::NoRubberBand. + \sa setRubberBand(), rubberBand() + */ + + enum RubberBand + { + //! No rubberband. + NoRubberBand = 0, + + //! A horizontal line ( only for QwtPicker::PointSelection ) + HLineRubberBand, + + //! A vertical line ( only for QwtPicker::PointSelection ) + VLineRubberBand, + + //! A crosshair ( only for QwtPicker::PointSelection ) + CrossRubberBand, + + //! A rectangle ( only for QwtPicker::RectSelection ) + RectRubberBand, + + //! An ellipse ( only for QwtPicker::RectSelection ) + EllipseRubberBand, + + //! A polygon ( only for QwtPicker::&PolygonSelection ) + PolygonRubberBand, + + /*! + Values >= UserRubberBand can be used to define additional + rubber bands. + */ + UserRubberBand = 100 + }; + + /*! + \brief Display mode + \sa setTrackerMode(), trackerMode(), isActive() + */ + enum DisplayMode + { + //! Display never + AlwaysOff, + + //! Display always + AlwaysOn, + + //! Display only when the selection is active + ActiveOnly + }; + + /*! + Controls what to do with the selected points of an active + selection when the observed widget is resized. + + The default value is QwtPicker::Stretch. + \sa setResizeMode() + */ + + enum ResizeMode + { + //! All points are scaled according to the new size, + Stretch, + + //! All points remain unchanged. + KeepSize + }; + + explicit QwtPicker( QWidget *parent ); + explicit QwtPicker( RubberBand rubberBand, + DisplayMode trackerMode, QWidget * ); + + virtual ~QwtPicker(); + + void setStateMachine( QwtPickerMachine * ); + const QwtPickerMachine *stateMachine() const; + QwtPickerMachine *stateMachine(); + + void setRubberBand( RubberBand ); + RubberBand rubberBand() const; + + void setTrackerMode( DisplayMode ); + DisplayMode trackerMode() const; + + void setResizeMode( ResizeMode ); + ResizeMode resizeMode() const; + + void setRubberBandPen( const QPen & ); + QPen rubberBandPen() const; + + void setTrackerPen( const QPen & ); + QPen trackerPen() const; + + void setTrackerFont( const QFont & ); + QFont trackerFont() const; + + bool isEnabled() const; + bool isActive() const; + + virtual bool eventFilter( QObject *, QEvent * ); + + QWidget *parentWidget(); + const QWidget *parentWidget() const; + + virtual QRect pickRect() const; + + virtual void drawRubberBand( QPainter * ) const; + virtual void drawTracker( QPainter * ) const; + + virtual QwtText trackerText( const QPoint &pos ) const; + QPoint trackerPosition() const; + virtual QRect trackerRect( const QFont & ) const; + + QPolygon selection() const; + +public Q_SLOTS: + void setEnabled( bool ); + +Q_SIGNALS: + /*! + A signal indicating, when the picker has been activated. + Together with setEnabled() it can be used to implement + selections with more than one picker. + + \param on True, when the picker has been activated + */ + void activated( bool on ); + + /*! + A signal emitting the selected points, + at the end of a selection. + + \param polygon Selected points + */ + void selected( const QPolygon &polygon ); + + /*! + A signal emitted when a point has been appended to the selection + + \param pos Position of the appended point. + \sa append(). moved() + */ + void appended( const QPoint &pos ); + + /*! + A signal emitted whenever the last appended point of the + selection has been moved. + + \param pos Position of the moved last point of the selection. + \sa move(), appended() + */ + void moved( const QPoint &pos ); + + /*! + A signal emitted whenever the last appended point of the + selection has been removed. + + \sa remove(), appended() + */ + void removed( const QPoint &pos ); + /*! + A signal emitted when the active selection has been changed. + This might happen when the observed widget is resized. + + \param selection Changed selection + \sa stretchSelection() + */ + void changed( const QPolygon &selection ); + +protected: + virtual QPolygon adjustedPoints( const QPolygon & ) const; + + virtual void transition( const QEvent * ); + + virtual void begin(); + virtual void append( const QPoint & ); + virtual void move( const QPoint & ); + virtual void remove(); + virtual bool end( bool ok = true ); + + virtual bool accept( QPolygon & ) const; + virtual void reset(); + + virtual void widgetMousePressEvent( QMouseEvent * ); + virtual void widgetMouseReleaseEvent( QMouseEvent * ); + virtual void widgetMouseDoubleClickEvent( QMouseEvent * ); + virtual void widgetMouseMoveEvent( QMouseEvent * ); + virtual void widgetWheelEvent( QWheelEvent * ); + virtual void widgetKeyPressEvent( QKeyEvent * ); + virtual void widgetKeyReleaseEvent( QKeyEvent * ); + virtual void widgetEnterEvent( QEvent * ); + virtual void widgetLeaveEvent( QEvent * ); + + virtual void stretchSelection( const QSize &oldSize, + const QSize &newSize ); + + virtual void updateDisplay(); + + const QWidget *rubberBandWidget() const; + const QWidget *trackerWidget() const; + + const QPolygon &pickedPoints() const; + +private: + void init( QWidget *, RubberBand rubberBand, DisplayMode trackerMode ); + + void setMouseTracking( bool ); + + class PickerWidget; + class PrivateData; + PrivateData *d_data; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_picker_machine.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_picker_machine.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_picker_machine.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_picker_machine.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,450 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_picker_machine.h" +#include "qwt_event_pattern.h" +#include + +//! Constructor +QwtPickerMachine::QwtPickerMachine( SelectionType type ): + d_selectionType( type ), + d_state( 0 ) +{ +} + +//! Destructor +QwtPickerMachine::~QwtPickerMachine() +{ +} + +//! Return the selection type +QwtPickerMachine::SelectionType QwtPickerMachine::selectionType() const +{ + return d_selectionType; +} + +//! Return the current state +int QwtPickerMachine::state() const +{ + return d_state; +} + +//! Change the current state +void QwtPickerMachine::setState( int state ) +{ + d_state = state; +} + +//! Set the current state to 0. +void QwtPickerMachine::reset() +{ + setState( 0 ); +} + +//! Constructor +QwtPickerTrackerMachine::QwtPickerTrackerMachine(): + QwtPickerMachine( NoSelection ) +{ +} + +//! Transition +QList QwtPickerTrackerMachine::transition( + const QwtEventPattern &, const QEvent *e ) +{ + QList cmdList; + + switch ( e->type() ) + { + case QEvent::Enter: + case QEvent::MouseMove: + { + if ( state() == 0 ) + { + cmdList += Begin; + cmdList += Append; + setState( 1 ); + } + else + { + cmdList += Move; + } + break; + } + case QEvent::Leave: + { + cmdList += Remove; + cmdList += End; + setState( 0 ); + } + default: + break; + } + + return cmdList; +} + +//! Constructor +QwtPickerClickPointMachine::QwtPickerClickPointMachine(): + QwtPickerMachine( PointSelection ) +{ +} + +//! Transition +QList QwtPickerClickPointMachine::transition( + const QwtEventPattern &eventPattern, const QEvent *e ) +{ + QList cmdList; + + switch ( e->type() ) + { + case QEvent::MouseButtonPress: + { + if ( eventPattern.mouseMatch( + QwtEventPattern::MouseSelect1, ( const QMouseEvent * )e ) ) + { + cmdList += Begin; + cmdList += Append; + cmdList += End; + } + break; + } + case QEvent::KeyPress: + { + if ( eventPattern.keyMatch( + QwtEventPattern::KeySelect1, ( const QKeyEvent * )e ) ) + { + cmdList += Begin; + cmdList += Append; + cmdList += End; + } + break; + } + default: + break; + } + + return cmdList; +} + +//! Constructor +QwtPickerDragPointMachine::QwtPickerDragPointMachine(): + QwtPickerMachine( PointSelection ) +{ +} + +//! Transition +QList QwtPickerDragPointMachine::transition( + const QwtEventPattern &eventPattern, const QEvent *e ) +{ + QList cmdList; + + switch ( e->type() ) + { + case QEvent::MouseButtonPress: + { + if ( eventPattern.mouseMatch( + QwtEventPattern::MouseSelect1, ( const QMouseEvent * )e ) ) + { + if ( state() == 0 ) + { + cmdList += Begin; + cmdList += Append; + setState( 1 ); + } + } + break; + } + case QEvent::MouseMove: + case QEvent::Wheel: + { + if ( state() != 0 ) + cmdList += Move; + break; + } + case QEvent::MouseButtonRelease: + { + if ( state() != 0 ) + { + cmdList += End; + setState( 0 ); + } + break; + } + case QEvent::KeyPress: + { + if ( eventPattern.keyMatch( + QwtEventPattern::KeySelect1, ( const QKeyEvent * )e ) ) + { + if ( state() == 0 ) + { + cmdList += Begin; + cmdList += Append; + setState( 1 ); + } + else + { + cmdList += End; + setState( 0 ); + } + } + break; + } + default: + break; + } + + return cmdList; +} + +//! Constructor +QwtPickerClickRectMachine::QwtPickerClickRectMachine(): + QwtPickerMachine( RectSelection ) +{ +} + +//! Transition +QList QwtPickerClickRectMachine::transition( + const QwtEventPattern &eventPattern, const QEvent *e ) +{ + QList cmdList; + + switch ( e->type() ) + { + case QEvent::MouseButtonPress: + { + if ( eventPattern.mouseMatch( + QwtEventPattern::MouseSelect1, ( const QMouseEvent * )e ) ) + { + switch ( state() ) + { + case 0: + { + cmdList += Begin; + cmdList += Append; + setState( 1 ); + break; + } + case 1: + { + // Uh, strange we missed the MouseButtonRelease + break; + } + default: + { + cmdList += End; + setState( 0 ); + } + } + } + } + case QEvent::MouseMove: + case QEvent::Wheel: + { + if ( state() != 0 ) + cmdList += Move; + break; + } + case QEvent::MouseButtonRelease: + { + if ( eventPattern.mouseMatch( + QwtEventPattern::MouseSelect1, ( const QMouseEvent * )e ) ) + { + if ( state() == 1 ) + { + cmdList += Append; + setState( 2 ); + } + } + break; + } + case QEvent::KeyPress: + { + if ( eventPattern.keyMatch( + QwtEventPattern::KeySelect1, ( const QKeyEvent * )e ) ) + { + if ( state() == 0 ) + { + cmdList += Begin; + cmdList += Append; + setState( 1 ); + } + else + { + if ( state() == 1 ) + { + cmdList += Append; + setState( 2 ); + } + else if ( state() == 2 ) + { + cmdList += End; + setState( 0 ); + } + } + } + break; + } + default: + break; + } + + return cmdList; +} + +//! Constructor +QwtPickerDragRectMachine::QwtPickerDragRectMachine(): + QwtPickerMachine( RectSelection ) +{ +} + +//! Transition +QList QwtPickerDragRectMachine::transition( + const QwtEventPattern &eventPattern, const QEvent *e ) +{ + QList cmdList; + + switch ( e->type() ) + { + case QEvent::MouseButtonPress: + { + if ( eventPattern.mouseMatch( + QwtEventPattern::MouseSelect1, ( const QMouseEvent * )e ) ) + { + if ( state() == 0 ) + { + cmdList += Begin; + cmdList += Append; + cmdList += Append; + setState( 2 ); + } + } + break; + } + case QEvent::MouseMove: + case QEvent::Wheel: + { + if ( state() != 0 ) + cmdList += Move; + break; + } + case QEvent::MouseButtonRelease: + { + if ( state() == 2 ) + { + cmdList += End; + setState( 0 ); + } + break; + } + case QEvent::KeyPress: + { + if ( eventPattern.keyMatch( + QwtEventPattern::KeySelect1, ( const QKeyEvent * )e ) ) + { + if ( state() == 0 ) + { + cmdList += Begin; + cmdList += Append; + cmdList += Append; + setState( 2 ); + } + else + { + cmdList += End; + setState( 0 ); + } + } + break; + } + default: + break; + } + + return cmdList; +} + +//! Constructor +QwtPickerPolygonMachine::QwtPickerPolygonMachine(): + QwtPickerMachine( PolygonSelection ) +{ +} + +//! Transition +QList QwtPickerPolygonMachine::transition( + const QwtEventPattern &eventPattern, const QEvent *e ) +{ + QList cmdList; + + switch ( e->type() ) + { + case QEvent::MouseButtonPress: + { + if ( eventPattern.mouseMatch( + QwtEventPattern::MouseSelect1, ( const QMouseEvent * )e ) ) + { + if ( state() == 0 ) + { + cmdList += Begin; + cmdList += Append; + cmdList += Append; + setState( 1 ); + } + else + { + cmdList += End; + setState( 0 ); + } + } + if ( eventPattern.mouseMatch( + QwtEventPattern::MouseSelect2, ( const QMouseEvent * )e ) ) + { + if ( state() == 1 ) + cmdList += Append; + } + break; + } + case QEvent::MouseMove: + case QEvent::Wheel: + { + if ( state() != 0 ) + cmdList += Move; + break; + } + case QEvent::KeyPress: + { + if ( eventPattern.keyMatch( + QwtEventPattern::KeySelect1, ( const QKeyEvent * )e ) ) + { + if ( state() == 0 ) + { + cmdList += Begin; + cmdList += Append; + cmdList += Append; + setState( 1 ); + } + else + { + cmdList += End; + setState( 0 ); + } + } + else if ( eventPattern.keyMatch( + QwtEventPattern::KeySelect2, ( const QKeyEvent * )e ) ) + { + if ( state() == 1 ) + cmdList += Append; + } + break; + } + default: + break; + } + + return cmdList; +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_picker_machine.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_picker_machine.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_picker_machine.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_picker_machine.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,190 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_PICKER_MACHINE +#define QWT_PICKER_MACHINE 1 + +#include "qwt_global.h" +#include + +class QEvent; +class QwtEventPattern; + +/*! + \brief A state machine for QwtPicker selections + + QwtPickerMachine accepts key and mouse events and translates them + into selection commands. + + \sa QwtEventPattern::MousePatternCode, QwtEventPattern::KeyPatternCode +*/ + +class QWT_EXPORT QwtPickerMachine +{ +public: + /*! + Type of a selection. + \sa selectionType() + */ + enum SelectionType + { + //! The state machine not usable for any type of selection. + NoSelection = -1, + + //! The state machine is for selecting a single point. + PointSelection, + + //! The state machine is for selecting a rectangle (2 points). + RectSelection, + + //! The state machine is for selecting a polygon (many points). + PolygonSelection + }; + + //! Commands - the output of a state machine + enum Command + { + Begin, + Append, + Move, + Remove, + End + }; + + QwtPickerMachine( SelectionType ); + virtual ~QwtPickerMachine(); + + //! Transition + virtual QList transition( + const QwtEventPattern &, const QEvent * ) = 0; + void reset(); + + int state() const; + void setState( int ); + + SelectionType selectionType() const; + +private: + const SelectionType d_selectionType; + int d_state; +}; + +/*! + \brief A state machine for indicating mouse movements + + QwtPickerTrackerMachine supports displaying information + corresponding to mouse movements, but is not intended for + selecting anything. Begin/End are related to Enter/Leave events. +*/ +class QWT_EXPORT QwtPickerTrackerMachine: public QwtPickerMachine +{ +public: + QwtPickerTrackerMachine(); + + virtual QList transition( + const QwtEventPattern &, const QEvent * ); +}; + +/*! + \brief A state machine for point selections + + Pressing QwtEventPattern::MouseSelect1 or + QwtEventPattern::KeySelect1 selects a point. + + \sa QwtEventPattern::MousePatternCode, QwtEventPattern::KeyPatternCode +*/ +class QWT_EXPORT QwtPickerClickPointMachine: public QwtPickerMachine +{ +public: + QwtPickerClickPointMachine(); + + virtual QList transition( + const QwtEventPattern &, const QEvent * ); +}; + +/*! + \brief A state machine for point selections + + Pressing QwtEventPattern::MouseSelect1 or QwtEventPattern::KeySelect1 + starts the selection, releasing QwtEventPattern::MouseSelect1 or + a second press of QwtEventPattern::KeySelect1 terminates it. +*/ +class QWT_EXPORT QwtPickerDragPointMachine: public QwtPickerMachine +{ +public: + QwtPickerDragPointMachine(); + + virtual QList transition( + const QwtEventPattern &, const QEvent * ); +}; + +/*! + \brief A state machine for rectangle selections + + Pressing QwtEventPattern::MouseSelect1 starts + the selection, releasing it selects the first point. Pressing it + again selects the second point and terminates the selection. + Pressing QwtEventPattern::KeySelect1 also starts the + selection, a second press selects the first point. A third one selects + the second point and terminates the selection. + + \sa QwtEventPattern::MousePatternCode, QwtEventPattern::KeyPatternCode +*/ + +class QWT_EXPORT QwtPickerClickRectMachine: public QwtPickerMachine +{ +public: + QwtPickerClickRectMachine(); + + virtual QList transition( + const QwtEventPattern &, const QEvent * ); +}; + +/*! + \brief A state machine for rectangle selections + + Pressing QwtEventPattern::MouseSelect1 selects + the first point, releasing it the second point. + Pressing QwtEventPattern::KeySelect1 also selects the + first point, a second press selects the second point and terminates + the selection. + + \sa QwtEventPattern::MousePatternCode, QwtEventPattern::KeyPatternCode +*/ + +class QWT_EXPORT QwtPickerDragRectMachine: public QwtPickerMachine +{ +public: + QwtPickerDragRectMachine(); + + virtual QList transition( + const QwtEventPattern &, const QEvent * ); +}; + +/*! + \brief A state machine for polygon selections + + Pressing QwtEventPattern::MouseSelect1 or QwtEventPattern::KeySelect1 + starts the selection and selects the first point, or appends a point. + Pressing QwtEventPattern::MouseSelect2 or QwtEventPattern::KeySelect2 + appends the last point and terminates the selection. + + \sa QwtEventPattern::MousePatternCode, QwtEventPattern::KeyPatternCode +*/ + +class QWT_EXPORT QwtPickerPolygonMachine: public QwtPickerMachine +{ +public: + QwtPickerPolygonMachine(); + + virtual QList transition( + const QwtEventPattern &, const QEvent * ); +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_axis.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_axis.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_axis.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_axis.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,670 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_plot.h" +#include "qwt_math.h" +#include "qwt_scale_widget.h" +#include "qwt_scale_div.h" +#include "qwt_scale_engine.h" + +class QwtPlot::AxisData +{ +public: + bool isEnabled; + bool doAutoScale; + + double minValue; + double maxValue; + double stepSize; + + int maxMajor; + int maxMinor; + + QwtScaleDiv scaleDiv; + QwtScaleEngine *scaleEngine; + QwtScaleWidget *scaleWidget; +}; + +//! Initialize axes +void QwtPlot::initAxesData() +{ + int axisId; + + for ( axisId = 0; axisId < axisCnt; axisId++ ) + d_axisData[axisId] = new AxisData; + + d_axisData[yLeft]->scaleWidget = + new QwtScaleWidget( QwtScaleDraw::LeftScale, this ); + d_axisData[yRight]->scaleWidget = + new QwtScaleWidget( QwtScaleDraw::RightScale, this ); + d_axisData[xTop]->scaleWidget = + new QwtScaleWidget( QwtScaleDraw::TopScale, this ); + d_axisData[xBottom]->scaleWidget = + new QwtScaleWidget( QwtScaleDraw::BottomScale, this ); + + d_axisData[yLeft]->scaleWidget->setObjectName( "QwtPlotAxisYLeft" ); + d_axisData[yRight]->scaleWidget->setObjectName( "QwtPlotAxisYRight" ); + d_axisData[xTop]->scaleWidget->setObjectName( "QwtPlotAxisXTop" ); + d_axisData[xBottom]->scaleWidget->setObjectName( "QwtPlotAxisXBottom" ); + + QFont fscl( fontInfo().family(), 10 ); + QFont fttl( fontInfo().family(), 12, QFont::Bold ); + + for ( axisId = 0; axisId < axisCnt; axisId++ ) + { + AxisData &d = *d_axisData[axisId]; + + d.scaleWidget->setFont( fscl ); + d.scaleWidget->setMargin( 2 ); + + QwtText text = d.scaleWidget->title(); + text.setFont( fttl ); + d.scaleWidget->setTitle( text ); + + d.doAutoScale = true; + + d.minValue = 0.0; + d.maxValue = 1000.0; + d.stepSize = 0.0; + + d.maxMinor = 5; + d.maxMajor = 8; + + d.scaleEngine = new QwtLinearScaleEngine; + + d.scaleDiv.invalidate(); + } + + d_axisData[yLeft]->isEnabled = true; + d_axisData[yRight]->isEnabled = false; + d_axisData[xBottom]->isEnabled = true; + d_axisData[xTop]->isEnabled = false; +} + +void QwtPlot::deleteAxesData() +{ + for ( int axisId = 0; axisId < axisCnt; axisId++ ) + { + delete d_axisData[axisId]->scaleEngine; + delete d_axisData[axisId]; + d_axisData[axisId] = NULL; + } +} + +/*! + \return specified axis, or NULL if axisId is invalid. + \param axisId axis index +*/ +const QwtScaleWidget *QwtPlot::axisWidget( int axisId ) const +{ + if ( axisValid( axisId ) ) + return d_axisData[axisId]->scaleWidget; + + return NULL; +} + +/*! + \return specified axis, or NULL if axisId is invalid. + \param axisId axis index +*/ +QwtScaleWidget *QwtPlot::axisWidget( int axisId ) +{ + if ( axisValid( axisId ) ) + return d_axisData[axisId]->scaleWidget; + + return NULL; +} + +/*! + Change the scale engine for an axis + + \param axisId axis index + \param scaleEngine Scale engine + + \sa axisScaleEngine() +*/ +void QwtPlot::setAxisScaleEngine( int axisId, QwtScaleEngine *scaleEngine ) +{ + if ( axisValid( axisId ) && scaleEngine != NULL ) + { + AxisData &d = *d_axisData[axisId]; + + delete d.scaleEngine; + d.scaleEngine = scaleEngine; + + d.scaleDiv.invalidate(); + + autoRefresh(); + } +} + +/*! + \param axisId axis index + \return Scale engine for a specific axis +*/ +QwtScaleEngine *QwtPlot::axisScaleEngine( int axisId ) +{ + if ( axisValid( axisId ) ) + return d_axisData[axisId]->scaleEngine; + else + return NULL; +} + +/*! + \param axisId axis index + \return Scale engine for a specific axis +*/ +const QwtScaleEngine *QwtPlot::axisScaleEngine( int axisId ) const +{ + if ( axisValid( axisId ) ) + return d_axisData[axisId]->scaleEngine; + else + return NULL; +} +/*! + \return \c true if autoscaling is enabled + \param axisId axis index +*/ +bool QwtPlot::axisAutoScale( int axisId ) const +{ + if ( axisValid( axisId ) ) + return d_axisData[axisId]->doAutoScale; + else + return false; + +} + +/*! + \return \c true if a specified axis is enabled + \param axisId axis index +*/ +bool QwtPlot::axisEnabled( int axisId ) const +{ + if ( axisValid( axisId ) ) + return d_axisData[axisId]->isEnabled; + else + return false; +} + +/*! + \return the font of the scale labels for a specified axis + \param axisId axis index +*/ +QFont QwtPlot::axisFont( int axisId ) const +{ + if ( axisValid( axisId ) ) + return axisWidget( axisId )->font(); + else + return QFont(); + +} + +/*! + \return the maximum number of major ticks for a specified axis + \param axisId axis index + \sa setAxisMaxMajor() +*/ +int QwtPlot::axisMaxMajor( int axisId ) const +{ + if ( axisValid( axisId ) ) + return d_axisData[axisId]->maxMajor; + else + return 0; +} + +/*! + \return the maximum number of minor ticks for a specified axis + \param axisId axis index + \sa setAxisMaxMinor() +*/ +int QwtPlot::axisMaxMinor( int axisId ) const +{ + if ( axisValid( axisId ) ) + return d_axisData[axisId]->maxMinor; + else + return 0; +} + +/*! + \brief Return the scale division of a specified axis + + axisScaleDiv(axisId)->lowerBound(), axisScaleDiv(axisId)->upperBound() + are the current limits of the axis scale. + + \param axisId axis index + \return Scale division + + \sa QwtScaleDiv, setAxisScaleDiv() +*/ +const QwtScaleDiv *QwtPlot::axisScaleDiv( int axisId ) const +{ + if ( !axisValid( axisId ) ) + return NULL; + + return &d_axisData[axisId]->scaleDiv; +} + +/*! + \brief Return the scale division of a specified axis + + axisScaleDiv(axisId)->lowerBound(), axisScaleDiv(axisId)->upperBound() + are the current limits of the axis scale. + + \param axisId axis index + \return Scale division + + \sa QwtScaleDiv, setAxisScaleDiv() +*/ +QwtScaleDiv *QwtPlot::axisScaleDiv( int axisId ) +{ + if ( !axisValid( axisId ) ) + return NULL; + + return &d_axisData[axisId]->scaleDiv; +} + +/*! + \returns the scale draw of a specified axis + \param axisId axis index + \return specified scaleDraw for axis, or NULL if axis is invalid. + \sa QwtScaleDraw +*/ +const QwtScaleDraw *QwtPlot::axisScaleDraw( int axisId ) const +{ + if ( !axisValid( axisId ) ) + return NULL; + + return axisWidget( axisId )->scaleDraw(); +} + +/*! + \returns the scale draw of a specified axis + \param axisId axis index + \return specified scaleDraw for axis, or NULL if axis is invalid. + \sa QwtScaleDraw +*/ +QwtScaleDraw *QwtPlot::axisScaleDraw( int axisId ) +{ + if ( !axisValid( axisId ) ) + return NULL; + + return axisWidget( axisId )->scaleDraw(); +} + +/*! + Return the step size parameter, that has been set + in setAxisScale. This doesn't need to be the step size + of the current scale. + + \param axisId axis index + \return step size parameter value + + \sa setAxisScale() +*/ +double QwtPlot::axisStepSize( int axisId ) const +{ + if ( !axisValid( axisId ) ) + return 0; + + return d_axisData[axisId]->stepSize; +} + +/*! + \brief Return the current interval of the specified axis + + This is only a convenience function for axisScaleDiv( axisId )->interval(); + + \param axisId axis index + \return Scale interval + + \sa QwtScaleDiv, axisScaleDiv() +*/ +QwtInterval QwtPlot::axisInterval( int axisId ) const +{ + if ( !axisValid( axisId ) ) + return QwtInterval(); + + return d_axisData[axisId]->scaleDiv.interval(); +} + +/*! + \return the title of a specified axis + \param axisId axis index +*/ +QwtText QwtPlot::axisTitle( int axisId ) const +{ + if ( axisValid( axisId ) ) + return axisWidget( axisId )->title(); + else + return QwtText(); +} + +/*! + \brief Enable or disable a specified axis + + When an axis is disabled, this only means that it is not + visible on the screen. Curves, markers and can be attached + to disabled axes, and transformation of screen coordinates + into values works as normal. + + Only xBottom and yLeft are enabled by default. + \param axisId axis index + \param tf \c true (enabled) or \c false (disabled) +*/ +void QwtPlot::enableAxis( int axisId, bool tf ) +{ + if ( axisValid( axisId ) && tf != d_axisData[axisId]->isEnabled ) + { + d_axisData[axisId]->isEnabled = tf; + updateLayout(); + } +} + +/*! + Transform the x or y coordinate of a position in the + drawing region into a value. + \param axisId axis index + \param pos position + \warning The position can be an x or a y coordinate, + depending on the specified axis. +*/ +double QwtPlot::invTransform( int axisId, int pos ) const +{ + if ( axisValid( axisId ) ) + return( canvasMap( axisId ).invTransform( pos ) ); + else + return 0.0; +} + + +/*! + \brief Transform a value into a coordinate in the plotting region + \param axisId axis index + \param value value + \return X or y coordinate in the plotting region corresponding + to the value. +*/ +double QwtPlot::transform( int axisId, double value ) const +{ + if ( axisValid( axisId ) ) + return( canvasMap( axisId ).transform( value ) ); + else + return 0.0; +} + +/*! + \brief Change the font of an axis + \param axisId axis index + \param f font + \warning This function changes the font of the tick labels, + not of the axis title. +*/ +void QwtPlot::setAxisFont( int axisId, const QFont &f ) +{ + if ( axisValid( axisId ) ) + axisWidget( axisId )->setFont( f ); +} + +/*! + \brief Enable autoscaling for a specified axis + + This member function is used to switch back to autoscaling mode + after a fixed scale has been set. Autoscaling is enabled by default. + + \param axisId axis index + \param on On/Off + \sa setAxisScale(), setAxisScaleDiv(), updateAxes() + + \note The autoscaling flag has no effect until updateAxes() is executed + ( called by replot() ). +*/ +void QwtPlot::setAxisAutoScale( int axisId, bool on ) +{ + if ( axisValid( axisId ) && ( d_axisData[axisId]->doAutoScale != on ) ) + { + d_axisData[axisId]->doAutoScale = on; + autoRefresh(); + } +} + +/*! + \brief Disable autoscaling and specify a fixed scale for a selected axis. + \param axisId axis index + \param min + \param max minimum and maximum of the scale + \param stepSize Major step size. If step == 0, the step size is + calculated automatically using the maxMajor setting. + \sa setAxisMaxMajor(), setAxisAutoScale(), axisStepSize() +*/ +void QwtPlot::setAxisScale( int axisId, double min, double max, double stepSize ) +{ + if ( axisValid( axisId ) ) + { + AxisData &d = *d_axisData[axisId]; + + d.doAutoScale = false; + d.scaleDiv.invalidate(); + + d.minValue = min; + d.maxValue = max; + d.stepSize = stepSize; + + autoRefresh(); + } +} + +/*! + \brief Disable autoscaling and specify a fixed scale for a selected axis. + \param axisId axis index + \param scaleDiv Scale division + \sa setAxisScale(), setAxisAutoScale() +*/ +void QwtPlot::setAxisScaleDiv( int axisId, const QwtScaleDiv &scaleDiv ) +{ + if ( axisValid( axisId ) ) + { + AxisData &d = *d_axisData[axisId]; + + d.doAutoScale = false; + d.scaleDiv = scaleDiv; + + autoRefresh(); + } +} + +/*! + \brief Set a scale draw + \param axisId axis index + \param scaleDraw object responsible for drawing scales. + + By passing scaleDraw it is possible to extend QwtScaleDraw + functionality and let it take place in QwtPlot. Please note + that scaleDraw has to be created with new and will be deleted + by the corresponding QwtScale member ( like a child object ). + + \sa QwtScaleDraw, QwtScaleWidget + \warning The attributes of scaleDraw will be overwritten by those of the + previous QwtScaleDraw. +*/ + +void QwtPlot::setAxisScaleDraw( int axisId, QwtScaleDraw *scaleDraw ) +{ + if ( axisValid( axisId ) ) + { + axisWidget( axisId )->setScaleDraw( scaleDraw ); + autoRefresh(); + } +} + +/*! + Change the alignment of the tick labels + \param axisId axis index + \param alignment Or'd Qt::AlignmentFlags + \sa QwtScaleDraw::setLabelAlignment() +*/ +void QwtPlot::setAxisLabelAlignment( int axisId, Qt::Alignment alignment ) +{ + if ( axisValid( axisId ) ) + axisWidget( axisId )->setLabelAlignment( alignment ); +} + +/*! + Rotate all tick labels + \param axisId axis index + \param rotation Angle in degrees. When changing the label rotation, + the label alignment might be adjusted too. + \sa QwtScaleDraw::setLabelRotation(), setAxisLabelAlignment() +*/ +void QwtPlot::setAxisLabelRotation( int axisId, double rotation ) +{ + if ( axisValid( axisId ) ) + axisWidget( axisId )->setLabelRotation( rotation ); +} + +/*! + Set the maximum number of minor scale intervals for a specified axis + + \param axisId axis index + \param maxMinor maximum number of minor steps + \sa axisMaxMinor() +*/ +void QwtPlot::setAxisMaxMinor( int axisId, int maxMinor ) +{ + if ( axisValid( axisId ) ) + { + maxMinor = qBound( 0, maxMinor, 100 ); + + AxisData &d = *d_axisData[axisId]; + if ( maxMinor != d.maxMinor ) + { + d.maxMinor = maxMinor; + d.scaleDiv.invalidate(); + autoRefresh(); + } + } +} + +/*! + Set the maximum number of major scale intervals for a specified axis + + \param axisId axis index + \param maxMajor maximum number of major steps + \sa axisMaxMajor() +*/ +void QwtPlot::setAxisMaxMajor( int axisId, int maxMajor ) +{ + if ( axisValid( axisId ) ) + { + maxMajor = qBound( 1, maxMajor, 10000 ); + + AxisData &d = *d_axisData[axisId]; + if ( maxMajor != d.maxMajor ) + { + d.maxMajor = maxMajor; + d.scaleDiv.invalidate(); + autoRefresh(); + } + } +} + +/*! + \brief Change the title of a specified axis + \param axisId axis index + \param title axis title +*/ +void QwtPlot::setAxisTitle( int axisId, const QString &title ) +{ + if ( axisValid( axisId ) ) + axisWidget( axisId )->setTitle( title ); +} + +/*! + \brief Change the title of a specified axis + \param axisId axis index + \param title axis title +*/ +void QwtPlot::setAxisTitle( int axisId, const QwtText &title ) +{ + if ( axisValid( axisId ) ) + axisWidget( axisId )->setTitle( title ); +} + +//! Rebuild the scales +void QwtPlot::updateAxes() +{ + // Find bounding interval of the item data + // for all axes, where autoscaling is enabled + + QwtInterval intv[axisCnt]; + + const QwtPlotItemList& itmList = itemList(); + + QwtPlotItemIterator it; + for ( it = itmList.begin(); it != itmList.end(); ++it ) + { + const QwtPlotItem *item = *it; + + if ( !item->testItemAttribute( QwtPlotItem::AutoScale ) ) + continue; + + if ( !item->isVisible() ) + continue; + + if ( axisAutoScale( item->xAxis() ) || axisAutoScale( item->yAxis() ) ) + { + const QRectF rect = item->boundingRect(); + intv[item->xAxis()] |= QwtInterval( rect.left(), rect.right() ); + intv[item->yAxis()] |= QwtInterval( rect.top(), rect.bottom() ); + } + } + + // Adjust scales + + for ( int axisId = 0; axisId < axisCnt; axisId++ ) + { + AxisData &d = *d_axisData[axisId]; + + double minValue = d.minValue; + double maxValue = d.maxValue; + double stepSize = d.stepSize; + + if ( d.doAutoScale && intv[axisId].isValid() ) + { + d.scaleDiv.invalidate(); + + minValue = intv[axisId].minValue(); + maxValue = intv[axisId].maxValue(); + + d.scaleEngine->autoScale( d.maxMajor, + minValue, maxValue, stepSize ); + } + if ( !d.scaleDiv.isValid() ) + { + d.scaleDiv = d.scaleEngine->divideScale( + minValue, maxValue, + d.maxMajor, d.maxMinor, stepSize ); + } + + QwtScaleWidget *scaleWidget = axisWidget( axisId ); + scaleWidget->setScaleDiv( + d.scaleEngine->transformation(), d.scaleDiv ); + + int startDist, endDist; + scaleWidget->getBorderDistHint( startDist, endDist ); + scaleWidget->setBorderDist( startDist, endDist ); + } + + for ( it = itmList.begin(); it != itmList.end(); ++it ) + { + QwtPlotItem *item = *it; + item->updateScaleDiv( *axisScaleDiv( item->xAxis() ), + *axisScaleDiv( item->yAxis() ) ); + } +} + diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_canvas.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_canvas.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_canvas.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_canvas.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,1079 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_plot_canvas.h" +#include "qwt_painter.h" +#include "qwt_null_paintdevice.h" +#include "qwt_math.h" +#include "qwt_plot.h" +#include +#include +#include +#include +#include +#include +#ifdef Q_WS_X11 +#include +#endif + +class QwtStyleSheetRecorder: public QwtNullPaintDevice +{ +public: + QwtStyleSheetRecorder( const QSize &size ): + QwtNullPaintDevice( QPaintEngine::AllFeatures ) + { + setSize( size ); + } + + virtual void updateState( const QPaintEngineState &state ) + { + if ( state.state() & QPaintEngine::DirtyPen ) + { + d_pen = state.pen(); + } + if ( state.state() & QPaintEngine::DirtyBrush ) + { + d_brush = state.brush(); + } + if ( state.state() & QPaintEngine::DirtyBrushOrigin ) + { + d_origin = state.brushOrigin(); + } + } + + virtual void drawRects(const QRectF *rects, int count ) + { + for ( int i = 0; i < count; i++ ) + border.rectList += rects[i]; + } + + virtual void drawPath( const QPainterPath &path ) + { + const QRectF rect( QPointF( 0.0, 0.0 ) , size() ); + if ( path.controlPointRect().contains( rect.center() ) ) + { + setCornerRects( path ); + alignCornerRects( rect ); + + background.path = path; + background.brush = d_brush; + background.origin = d_origin; + } + else + { + border.pathList += path; + } + } + + void setCornerRects( const QPainterPath &path ) + { + QPointF pos( 0.0, 0.0 ); + + for ( int i = 0; i < path.elementCount(); i++ ) + { + QPainterPath::Element el = path.elementAt(i); + switch( el.type ) + { + case QPainterPath::MoveToElement: + case QPainterPath::LineToElement: + { + pos.setX( el.x ); + pos.setY( el.y ); + break; + } + case QPainterPath::CurveToElement: + { + QRectF r( pos, QPointF( el.x, el.y ) ); + clipRects += r.normalized(); + + pos.setX( el.x ); + pos.setY( el.y ); + + break; + } + case QPainterPath::CurveToDataElement: + { + if ( clipRects.size() > 0 ) + { + QRectF r = clipRects.last(); + r.setCoords( + qMin( r.left(), el.x ), + qMin( r.top(), el.y ), + qMax( r.right(), el.x ), + qMax( r.bottom(), el.y ) + ); + clipRects.last() = r.normalized(); + } + break; + } + } + } + } + +private: + void alignCornerRects( const QRectF &rect ) + { + for ( int i = 0; i < clipRects.size(); i++ ) + { + QRectF &r = clipRects[i]; + if ( r.center().x() < rect.center().x() ) + r.setLeft( rect.left() ); + else + r.setRight( rect.right() ); + + if ( r.center().y() < rect.center().y() ) + r.setTop( rect.top() ); + else + r.setBottom( rect.bottom() ); + } + } + + +public: + QVector clipRects; + + struct + { + QList pathList; + QList rectList; + QRegion clipRegion; + } border; + + struct + { + QPainterPath path; + QBrush brush; + QPointF origin; + } background; + +private: + QPen d_pen; + QBrush d_brush; + QPointF d_origin; +}; + +static void qwtDrawBackground( QPainter *painter, QWidget *widget ) +{ + const QBrush &brush = + widget->palette().brush( widget->backgroundRole() ); + + if ( brush.style() == Qt::TexturePattern ) + { + QPixmap pm( widget->size() ); + pm.fill( widget, 0, 0 ); + painter->drawPixmap( 0, 0, pm ); + } + else if ( brush.gradient() ) + { + QVector rects; + + if ( brush.gradient()->coordinateMode() == QGradient::ObjectBoundingMode ) + { + rects += widget->rect(); + } + else + { + rects = painter->clipRegion().rects(); + } + +#if 1 + bool useRaster = false; + + if ( painter->paintEngine()->type() == QPaintEngine::X11 ) + { + // Qt 4.7.1: gradients on X11 are broken ( subrects + + // QGradient::StretchToDeviceMode ) and horrible slow. + // As workaround we have to use the raster paintengine. + // Even if the QImage -> QPixmap translation is slow + // it is three times faster, than using X11 directly + + useRaster = true; + } +#endif + if ( useRaster ) + { + QImage::Format format = QImage::Format_RGB32; + + const QGradientStops stops = brush.gradient()->stops(); + for ( int i = 0; i < stops.size(); i++ ) + { + if ( stops[i].second.alpha() != 255 ) + { + // don't use Format_ARGB32_Premultiplied. It's + // recommended by the Qt docs, but QPainter::drawImage() + // is horrible slow on X11. + + format = QImage::Format_ARGB32; + break; + } + } + + QImage image( widget->size(), format ); + + QPainter p( &image ); + p.setPen( Qt::NoPen ); + p.setBrush( brush ); + + p.drawRects( rects ); + + p.end(); + + painter->drawImage( 0, 0, image ); + } + else + { + painter->save(); + + painter->setPen( Qt::NoPen ); + painter->setBrush( brush ); + + painter->drawRects( rects ); + + painter->restore(); + } + } + else + { + painter->save(); + + painter->setPen( Qt::NoPen ); + painter->setBrush( brush ); + + painter->drawRects( painter->clipRegion().rects() ); + + painter->restore(); + } +} + +static inline void qwtRevertPath( QPainterPath &path ) +{ + if ( path.elementCount() == 4 ) + { + QPainterPath::Element &el0 = + const_cast( path.elementAt(0) ); + QPainterPath::Element &el2 = + const_cast( path.elementAt(3) ); + + qSwap( el0.x, el2.x ); + qSwap( el0.y, el2.y ); + } +} + +static QPainterPath qwtCombinePathList( const QRectF &rect, + const QList &pathList ) +{ + if ( pathList.isEmpty() ) + return QPainterPath(); + + QPainterPath ordered[8]; // starting top left + + for ( int i = 0; i < pathList.size(); i++ ) + { + int index = -1; + QPainterPath subPath = pathList[i]; + + const QRectF br = pathList[i].controlPointRect(); + if ( br.center().x() < rect.center().x() ) + { + if ( br.center().y() < rect.center().y() ) + { + if ( qAbs( br.top() - rect.top() ) < + qAbs( br.left() - rect.left() ) ) + { + index = 1; + } + else + { + index = 0; + } + } + else + { + if ( qAbs( br.bottom() - rect.bottom() ) < + qAbs( br.left() - rect.left() ) ) + { + index = 6; + } + else + { + index = 7; + } + } + + if ( subPath.currentPosition().y() > br.center().y() ) + qwtRevertPath( subPath ); + } + else + { + if ( br.center().y() < rect.center().y() ) + { + if ( qAbs( br.top() - rect.top() ) < + qAbs( br.right() - rect.right() ) ) + { + index = 2; + } + else + { + index = 3; + } + } + else + { + if ( qAbs( br.bottom() - rect.bottom() ) < + qAbs( br.right() - rect.right() ) ) + { + index = 5; + } + else + { + index = 4; + } + } + if ( subPath.currentPosition().y() < br.center().y() ) + qwtRevertPath( subPath ); + } + ordered[index] = subPath; + } + + for ( int i = 0; i < 4; i++ ) + { + if ( ordered[ 2 * i].isEmpty() != ordered[2 * i + 1].isEmpty() ) + { + // we don't accept incomplete rounded borders + return QPainterPath(); + } + } + + + const QPolygonF corners( rect ); + + QPainterPath path; + //path.moveTo( rect.topLeft() ); + + for ( int i = 0; i < 4; i++ ) + { + if ( ordered[2 * i].isEmpty() ) + { + path.lineTo( corners[i] ); + } + else + { + path.connectPath( ordered[2 * i] ); + path.connectPath( ordered[2 * i + 1] ); + } + } + + path.closeSubpath(); + +#if 0 + return path.simplified(); +#else + return path; +#endif +} + +static inline void qwtDrawStyledBackground( + QWidget *w, QPainter *painter ) +{ + QStyleOption opt; + opt.initFrom(w); + w->style()->drawPrimitive( QStyle::PE_Widget, &opt, painter, w); +} + +static QWidget *qwtBackgroundWidget( QWidget *w ) +{ + if ( w->parentWidget() == NULL ) + return w; + + if ( w->autoFillBackground() ) + { + const QBrush brush = w->palette().brush( w->backgroundRole() ); + if ( brush.color().alpha() > 0 ) + return w; + } + + if ( w->testAttribute( Qt::WA_StyledBackground ) ) + { + QImage image( 1, 1, QImage::Format_ARGB32 ); + image.fill( Qt::transparent ); + + QPainter painter( &image ); + painter.translate( -w->rect().center() ); + qwtDrawStyledBackground( w, &painter ); + painter.end(); + + if ( qAlpha( image.pixel( 0, 0 ) ) != 0 ) + return w; + } + + return qwtBackgroundWidget( w->parentWidget() ); +} + +static void qwtFillBackground( QPainter *painter, + QWidget *widget, const QVector &fillRects ) +{ + if ( fillRects.isEmpty() ) + return; + + QRegion clipRegion; + if ( painter->hasClipping() ) + clipRegion = painter->transform().map( painter->clipRegion() ); + else + clipRegion = widget->contentsRect(); + + // Try to find out which widget fills + // the unfilled areas of the styled background + + QWidget *bgWidget = qwtBackgroundWidget( widget->parentWidget() ); + + for ( int i = 0; i < fillRects.size(); i++ ) + { + const QRect rect = fillRects[i].toAlignedRect(); + if ( clipRegion.intersects( rect ) ) + { + QPixmap pm( rect.size() ); + pm.fill( bgWidget, widget->mapTo( bgWidget, rect.topLeft() ) ); + painter->drawPixmap( rect, pm ); + } + } +} + +static void qwtFillBackground( QPainter *painter, QwtPlotCanvas *canvas ) +{ + QVector rects; + + if ( canvas->testAttribute( Qt::WA_StyledBackground ) ) + { + QwtStyleSheetRecorder recorder( canvas->size() ); + + QPainter p( &recorder ); + qwtDrawStyledBackground( canvas, &p ); + p.end(); + + if ( recorder.background.brush.isOpaque() ) + rects = recorder.clipRects; + else + rects += canvas->rect(); + } + else + { + const QRectF r = canvas->rect(); + const double radius = canvas->borderRadius(); + if ( radius > 0.0 ) + { + QSize sz( radius, radius ); + + rects += QRectF( r.topLeft(), sz ); + rects += QRectF( r.topRight() - QPointF( radius, 0 ), sz ); + rects += QRectF( r.bottomRight() - QPointF( radius, radius ), sz ); + rects += QRectF( r.bottomLeft() - QPointF( 0, radius ), sz ); + } + } + + qwtFillBackground( painter, canvas, rects); +} + + +class QwtPlotCanvas::PrivateData +{ +public: + PrivateData(): + focusIndicator( NoFocusIndicator ), + borderRadius( 0 ), + paintAttributes( 0 ), + backingStore( NULL ) + { + styleSheet.hasBorder = false; + } + + ~PrivateData() + { + delete backingStore; + } + + FocusIndicator focusIndicator; + double borderRadius; + QwtPlotCanvas::PaintAttributes paintAttributes; + QPixmap *backingStore; + + struct + { + bool hasBorder; + QPainterPath borderPath; + QVector cornerRects; + + struct + { + QBrush brush; + QPointF origin; + } background; + + } styleSheet; + +}; + +//! Sets a cross cursor, enables QwtPlotCanvas::BackingStore + +QwtPlotCanvas::QwtPlotCanvas( QwtPlot *plot ): + QFrame( plot ) +{ + d_data = new PrivateData; + +#ifndef QT_NO_CURSOR + setCursor( Qt::CrossCursor ); +#endif + + setAutoFillBackground( true ); + setPaintAttribute( QwtPlotCanvas::BackingStore, true ); + setPaintAttribute( QwtPlotCanvas::Opaque, true ); + setPaintAttribute( QwtPlotCanvas::HackStyledBackground, true ); +} + +//! Destructor +QwtPlotCanvas::~QwtPlotCanvas() +{ + delete d_data; +} + +//! Return parent plot widget +QwtPlot *QwtPlotCanvas::plot() +{ + return qobject_cast( parentWidget() ); +} + +//! Return parent plot widget +const QwtPlot *QwtPlotCanvas::plot() const +{ + return qobject_cast( parentWidget() ); +} + +/*! + \brief Changing the paint attributes + + \param attribute Paint attribute + \param on On/Off + + \sa testPaintAttribute(), backingStore() +*/ +void QwtPlotCanvas::setPaintAttribute( PaintAttribute attribute, bool on ) +{ + if ( bool( d_data->paintAttributes & attribute ) == on ) + return; + + if ( on ) + d_data->paintAttributes |= attribute; + else + d_data->paintAttributes &= ~attribute; + + switch ( attribute ) + { + case BackingStore: + { + if ( on ) + { + if ( d_data->backingStore == NULL ) + d_data->backingStore = new QPixmap(); + + if ( isVisible() ) + { + *d_data->backingStore = + QPixmap::grabWidget( this, rect() ); + } + } + else + { + delete d_data->backingStore; + d_data->backingStore = NULL; + } + break; + } + case Opaque: + { + if ( on ) + setAttribute( Qt::WA_OpaquePaintEvent, true ); + + break; + } + case HackStyledBackground: + case ImmediatePaint: + { + break; + } + } +} + +/*! + Test wether a paint attribute is enabled + + \param attribute Paint attribute + \return true if the attribute is enabled + \sa setPaintAttribute() +*/ +bool QwtPlotCanvas::testPaintAttribute( PaintAttribute attribute ) const +{ + return d_data->paintAttributes & attribute; +} + +//! Return the backing store, might be null +const QPixmap *QwtPlotCanvas::backingStore() const +{ + return d_data->backingStore; +} + +//! Invalidate the internal backing store +void QwtPlotCanvas::invalidateBackingStore() +{ + if ( d_data->backingStore ) + *d_data->backingStore = QPixmap(); +} + +/*! + Set the focus indicator + + \sa FocusIndicator, focusIndicator() +*/ +void QwtPlotCanvas::setFocusIndicator( FocusIndicator focusIndicator ) +{ + d_data->focusIndicator = focusIndicator; +} + +/*! + \return Focus indicator + + \sa FocusIndicator, setFocusIndicator() +*/ +QwtPlotCanvas::FocusIndicator QwtPlotCanvas::focusIndicator() const +{ + return d_data->focusIndicator; +} + +/*! + Set the radius for the corners of the border frame + + \param radius Radius of a rounded corner + \sa borderRadius() +*/ +void QwtPlotCanvas::setBorderRadius( double radius ) +{ + d_data->borderRadius = qMax( 0.0, radius ); +} + +/*! + \return Radius for the corners of the border frame + \sa setBorderRadius() +*/ +double QwtPlotCanvas::borderRadius() const +{ + return d_data->borderRadius; +} + +/*! + Qt event handler for QEvent::PolishRequest and QEvent::StyleChange + \param event Qt Event +*/ +bool QwtPlotCanvas::event( QEvent *event ) +{ + if ( event->type() == QEvent::PolishRequest ) + { + if ( testPaintAttribute( QwtPlotCanvas::Opaque ) ) + { + // Setting a style sheet changes the + // Qt::WA_OpaquePaintEvent attribute, but we insist + // on painting the background. + + setAttribute( Qt::WA_OpaquePaintEvent, true ); + } + } + + if ( event->type() == QEvent::PolishRequest || + event->type() == QEvent::StyleChange ) + { + updateStyleSheetInfo(); + } + + return QFrame::event( event ); +} + +/*! + Paint event + \param event Paint event +*/ +void QwtPlotCanvas::paintEvent( QPaintEvent *event ) +{ + QPainter painter( this ); + painter.setClipRegion( event->region() ); + + if ( testPaintAttribute( QwtPlotCanvas::BackingStore ) && + d_data->backingStore != NULL ) + { + QPixmap &bs = *d_data->backingStore; + if ( bs.size() != size() ) + { + bs = QPixmap( size() ); + +#ifdef Q_WS_X11 + if ( bs.x11Info().screen() != x11Info().screen() ) + bs.x11SetScreen( x11Info().screen() ); +#endif + + if ( testAttribute(Qt::WA_StyledBackground) ) + { + QPainter p( &bs ); + qwtFillBackground( &p, this ); + drawCanvas( &p, true ); + } + else + { + QPainter p; + if ( d_data->borderRadius <= 0.0 ) + { + bs.fill( this, 0, 0 ); + p.begin( &bs ); + drawCanvas( &p, false ); + } + else + { + p.begin( &bs ); + qwtFillBackground( &p, this ); + drawCanvas( &p, true ); + } + + if ( frameWidth() > 0 ) + drawBorder( &p ); + } + } + + painter.drawPixmap( 0, 0, *d_data->backingStore ); + } + else + { + if ( testAttribute(Qt::WA_StyledBackground ) ) + { + if ( testAttribute( Qt::WA_OpaquePaintEvent ) ) + { + qwtFillBackground( &painter, this ); + drawCanvas( &painter, true ); + } + else + { + drawCanvas( &painter, false ); + } + } + else + { + if ( testAttribute( Qt::WA_OpaquePaintEvent ) ) + { + if ( autoFillBackground() ) + qwtDrawBackground( &painter, this ); + } + + drawCanvas( &painter, false ); + + if ( frameWidth() > 0 ) + drawBorder( &painter ); + } + } + + if ( hasFocus() && focusIndicator() == CanvasFocusIndicator ) + drawFocusIndicator( &painter ); +} + +void QwtPlotCanvas::drawCanvas( QPainter *painter, bool withBackground ) +{ + bool hackStyledBackground = false; + + if ( withBackground && testAttribute( Qt::WA_StyledBackground ) + && testPaintAttribute( HackStyledBackground ) ) + { + // Antialiasing rounded borders is done by + // inserting pixels with colors between the + // border color and the color on the canvas, + // When the border is painted before the plot items + // these colors are interpolated for the canvas + // and the plot items need to be clipped excluding + // the anialiased pixels. In situations, where + // the plot items fill the area at the rounded + // borders this is noticeable. + // The only way to avoid these annoying "artefacts" + // is to paint the border on top of the plot items. + + if ( d_data->styleSheet.hasBorder && + !d_data->styleSheet.borderPath.isEmpty() ) + { + // We have a border with at least one rounded corner + hackStyledBackground = true; + } + } + + if ( withBackground ) + { + painter->save(); + + if ( testAttribute( Qt::WA_StyledBackground ) ) + { + if ( hackStyledBackground ) + { + // paint background without border + + painter->setPen( Qt::NoPen ); + painter->setBrush( d_data->styleSheet.background.brush ); + painter->setBrushOrigin( d_data->styleSheet.background.origin ); + painter->setClipPath( d_data->styleSheet.borderPath ); + painter->drawRect( contentsRect() ); + } + else + { + qwtDrawStyledBackground( this, painter ); + } + } + else if ( autoFillBackground() ) + { + painter->setPen( Qt::NoPen ); + painter->setBrush( palette().brush( backgroundRole() ) ); + + if ( d_data->borderRadius > 0.0 ) + { + if ( frameWidth() > 0 ) + { + painter->setClipPath( borderPath( rect() ) ); + painter->drawRect( rect() ); + } + else + { + painter->setRenderHint( QPainter::Antialiasing, true ); + painter->drawPath( borderPath( rect() ) ); + } + } + else + { + painter->drawRect( contentsRect() ); + } + } + + painter->restore(); + } + + painter->save(); + + if ( !d_data->styleSheet.borderPath.isEmpty() ) + { + painter->setClipPath( + d_data->styleSheet.borderPath, Qt::IntersectClip ); + } + else + { + if ( d_data->borderRadius > 0.0 ) + painter->setClipPath( borderPath( rect() ), Qt::IntersectClip ); + else + painter->setClipRect( contentsRect(), Qt::IntersectClip ); + } + + plot()->drawCanvas( painter ); + + painter->restore(); + + if ( withBackground && hackStyledBackground ) + { + // Now paint the border on top + QStyleOptionFrame opt; + opt.initFrom(this); + style()->drawPrimitive( QStyle::PE_Frame, &opt, painter, this); + } +} + +/*! + Draw the border of the plot canvas + + \param painter Painter + \sa setBorderRadius(), QFrame::drawFrame() +*/ +void QwtPlotCanvas::drawBorder( QPainter *painter ) +{ + if ( d_data->borderRadius > 0 ) + { + if ( frameWidth() > 0 ) + { + QwtPainter::drawRoundedFrame( painter, QRectF( rect() ), + d_data->borderRadius, d_data->borderRadius, + palette(), frameWidth(), frameStyle() ); + } + } + else + { + drawFrame( painter ); + } +} + +/*! + Resize event + \param event Resize event +*/ +void QwtPlotCanvas::resizeEvent( QResizeEvent *event ) +{ + QFrame::resizeEvent( event ); + updateStyleSheetInfo(); +} + +/*! + Draw the focus indication + \param painter Painter +*/ +void QwtPlotCanvas::drawFocusIndicator( QPainter *painter ) +{ + const int margin = 1; + + QRect focusRect = contentsRect(); + focusRect.setRect( focusRect.x() + margin, focusRect.y() + margin, + focusRect.width() - 2 * margin, focusRect.height() - 2 * margin ); + + QwtPainter::drawFocusRect( painter, this, focusRect ); +} + +/*! + Invalidate the paint cache and repaint the canvas + \sa invalidatePaintCache() +*/ +void QwtPlotCanvas::replot() +{ + invalidateBackingStore(); + + if ( testPaintAttribute( QwtPlotCanvas::ImmediatePaint ) ) + repaint( contentsRect() ); + else + update( contentsRect() ); +} + +//! Update the cached informations about the current style sheet +void QwtPlotCanvas::updateStyleSheetInfo() +{ + if ( !testAttribute(Qt::WA_StyledBackground ) ) + return; + + QwtStyleSheetRecorder recorder( size() ); + + QPainter painter( &recorder ); + + QStyleOption opt; + opt.initFrom(this); + style()->drawPrimitive( QStyle::PE_Widget, &opt, &painter, this); + + painter.end(); + + d_data->styleSheet.hasBorder = !recorder.border.rectList.isEmpty(); + d_data->styleSheet.cornerRects = recorder.clipRects; + + if ( recorder.background.path.isEmpty() ) + { + if ( !recorder.border.rectList.isEmpty() ) + { + d_data->styleSheet.borderPath = + qwtCombinePathList( rect(), recorder.border.pathList ); + } + } + else + { + d_data->styleSheet.borderPath = recorder.background.path; + d_data->styleSheet.background.brush = recorder.background.brush; + d_data->styleSheet.background.origin = recorder.background.origin; + } +} + +/*! + Calculate the painter path for a styled or rounded border + + When the canvas has no styled background or rounded borders + the painter path is empty. + + \param rect Bounding rectangle of the canvas + \return Painter path, that can be used for clipping +*/ +QPainterPath QwtPlotCanvas::borderPath( const QRect &rect ) const +{ + if ( testAttribute(Qt::WA_StyledBackground ) ) + { + QwtStyleSheetRecorder recorder( rect.size() ); + + QPainter painter( &recorder ); + + QStyleOption opt; + opt.initFrom(this); + opt.rect = rect; + style()->drawPrimitive( QStyle::PE_Widget, &opt, &painter, this); + + painter.end(); + + if ( !recorder.background.path.isEmpty() ) + return recorder.background.path; + + if ( !recorder.border.rectList.isEmpty() ) + return qwtCombinePathList( rect, recorder.border.pathList ); + } + else if ( d_data->borderRadius > 0.0 ) + { + double fw2 = frameWidth() * 0.5; + QRectF r = QRectF(rect).adjusted( fw2, fw2, -fw2, -fw2 ); + + QPainterPath path; + path.addRoundedRect( r, d_data->borderRadius, d_data->borderRadius ); + return path; + } + + return QPainterPath(); +} + +/*! + Calculate a mask, that can be used to clip away the border frame + + \param size Size including the frame +*/ +QBitmap QwtPlotCanvas::borderMask( const QSize &size ) const +{ + const QRect r( 0, 0, size.width(), size.height() ); + + const QPainterPath path = borderPath( r ); + if ( path.isEmpty() ) + return QBitmap(); + + QImage image( size, QImage::Format_ARGB32_Premultiplied ); + image.fill( Qt::color0 ); + + QPainter painter( &image ); + painter.setClipPath( path ); + painter.fillRect( r, Qt::color1 ); + + // now erase the frame + + painter.setCompositionMode( QPainter::CompositionMode_DestinationOut ); + + if ( testAttribute(Qt::WA_StyledBackground ) ) + { + QStyleOptionFrame opt; + opt.initFrom(this); + opt.rect = r; + style()->drawPrimitive( QStyle::PE_Frame, &opt, &painter, this ); + } + else + { + if ( d_data->borderRadius > 0 && frameWidth() > 0 ) + { + painter.setPen( QPen( Qt::color1, frameWidth() ) ); + painter.setBrush( Qt::NoBrush ); + painter.setRenderHint( QPainter::Antialiasing, true ); + + painter.drawPath( path ); + } + } + + painter.end(); + + const QImage mask = image.createMaskFromColor( + QColor( Qt::color1 ).rgb(), Qt::MaskOutColor ); + + return QBitmap::fromImage( mask ); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_canvas.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_canvas.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_canvas.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_canvas.h 2011-04-15 10:48:46.000000000 +0000 @@ -0,0 +1,168 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_PLOT_CANVAS_H +#define QWT_PLOT_CANVAS_H + +#include "qwt_global.h" +#include +#include +#include +#include + +class QwtPlot; +class QPixmap; + +/*! + \brief Canvas of a QwtPlot. + \sa QwtPlot +*/ +class QWT_EXPORT QwtPlotCanvas : public QFrame +{ + Q_OBJECT + +public: + + /*! + \brief Paint attributes + + The default setting enables BackingStore and Opaque. + + \sa setPaintAttribute(), testPaintAttribute() + */ + enum PaintAttribute + { + /*! + \brief Paint double buffered reusing the content + of the pixmap buffer when possible. + + Using a backing store might improve the performance + significantly, when workin with widget overlays ( like rubberbands ). + Disabling the cache might improve the performance for + incremental paints (using QwtPlotDirectPainter ). + + \sa backingStore(), invalidateBackingStore() + */ + BackingStore = 1, + + /*! + \brief Try to fill the complete contents rectangle + of the plot canvas + + When using styled backgrounds Qt assumes, that the + canvas doesn't fill its area completely + ( f.e because of rounded borders ) and fills the area + below the canvas. When this is done with gradients it might + result in a serious performance bottleneck - depending on the size. + + When the Opaque attribute is enabled the canvas tries to + identify the gaps with some heuristics and to fill those only. + + \warning Will not work for semitransparent backgrounds + */ + Opaque = 2, + + /*! + \brief Try to improve painting of styled backgrounds + + QwtPlotCanvas supports the box model attributes for + customizing the layout with style sheets. Unfortunately + the design of Qt style sheets has no concept how to + handle backgrounds with rounded corners - beside of padding. + + When HackStyledBackground is enabled the plot canvas tries + to seperate the background from the background border + by reverse engeneering to paint the background before and + the border after the plot items. In this order the border + gets prefectly antialiased and you can avoid some pixel + artifacts in the corners. + */ + HackStyledBackground = 4, + + /*! + When ImmediatePaint is set replot() calls repaint() + instead of update(). + + \sa replot(), QWidget::repaint(), QWidget::update() + */ + ImmediatePaint = 8 + }; + + //! Paint attributes + typedef QFlags PaintAttributes; + + /*! + \brief Focus indicator + + - NoFocusIndicator\n + Don't paint a focus indicator + + - CanvasFocusIndicator\n + The focus is related to the complete canvas. + Paint the focus indicator using paintFocus() + + - ItemFocusIndicator\n + The focus is related to an item (curve, point, ...) on + the canvas. It is up to the application to display a + focus indication using f.e. highlighting. + + \sa setFocusIndicator(), focusIndicator(), paintFocus() + */ + + enum FocusIndicator + { + NoFocusIndicator, + CanvasFocusIndicator, + ItemFocusIndicator + }; + + explicit QwtPlotCanvas( QwtPlot * ); + virtual ~QwtPlotCanvas(); + + QwtPlot *plot(); + const QwtPlot *plot() const; + + void setFocusIndicator( FocusIndicator ); + FocusIndicator focusIndicator() const; + + void setBorderRadius( double ); + double borderRadius() const; + + QPainterPath borderPath( const QRect &rect ) const; + QBitmap borderMask( const QSize & ) const; + + void setPaintAttribute( PaintAttribute, bool on = true ); + bool testPaintAttribute( PaintAttribute ) const; + + const QPixmap *backingStore() const; + void invalidateBackingStore(); + + void replot(); + + virtual bool event( QEvent * ); + +protected: + virtual void paintEvent( QPaintEvent * ); + virtual void resizeEvent( QResizeEvent * ); + + virtual void drawFocusIndicator( QPainter * ); + virtual void drawBorder( QPainter * ); + + void updateStyleSheetInfo(); + +private: + void drawCanvas( QPainter *, bool withBackground ); + + class PrivateData; + PrivateData *d_data; +}; + +Q_DECLARE_OPERATORS_FOR_FLAGS( QwtPlotCanvas::PaintAttributes ); + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,748 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_plot.h" +#include "qwt_plot_dict.h" +#include "qwt_plot_layout.h" +#include "qwt_scale_widget.h" +#include "qwt_scale_engine.h" +#include "qwt_text_label.h" +#include "qwt_legend.h" +#include "qwt_dyngrid_layout.h" +#include "qwt_plot_canvas.h" +#include +#include +#include +#include +#include + +class QwtPlot::PrivateData +{ +public: + QPointer lblTitle; + QPointer canvas; + QPointer legend; + QwtPlotLayout *layout; + + bool autoReplot; +}; + +/*! + \brief Constructor + \param parent Parent widget + */ +QwtPlot::QwtPlot( QWidget *parent ): + QFrame( parent ) +{ + initPlot( QwtText() ); +} + +/*! + \brief Constructor + \param title Title text + \param parent Parent widget + */ +QwtPlot::QwtPlot( const QwtText &title, QWidget *parent ): + QFrame( parent ) +{ + initPlot( title ); +} + +//! Destructor +QwtPlot::~QwtPlot() +{ + detachItems( QwtPlotItem::Rtti_PlotItem, autoDelete() ); + + delete d_data->layout; + deleteAxesData(); + delete d_data; +} + +/*! + \brief Initializes a QwtPlot instance + \param title Title text + */ +void QwtPlot::initPlot( const QwtText &title ) +{ + d_data = new PrivateData; + + d_data->layout = new QwtPlotLayout; + d_data->autoReplot = false; + + d_data->lblTitle = new QwtTextLabel( title, this ); + d_data->lblTitle->setObjectName( "QwtPlotTitle" ); + + d_data->lblTitle->setFont( QFont( fontInfo().family(), 14, QFont::Bold ) ); + + QwtText text( title ); + text.setRenderFlags( Qt::AlignCenter | Qt::TextWordWrap ); + d_data->lblTitle->setText( text ); + + d_data->legend = NULL; + + initAxesData(); + + d_data->canvas = new QwtPlotCanvas( this ); + d_data->canvas->setObjectName( "QwtPlotCanvas" ); + d_data->canvas->setFrameStyle( QFrame::Panel | QFrame::Sunken ); + d_data->canvas->setLineWidth( 2 ); + + updateTabOrder(); + + setSizePolicy( QSizePolicy::MinimumExpanding, + QSizePolicy::MinimumExpanding ); + + resize( 200, 200 ); +} + +/*! + \brief Adds handling of layout requests + \param event Event +*/ +bool QwtPlot::event( QEvent *event ) +{ + bool ok = QFrame::event( event ); + switch ( event->type() ) + { + case QEvent::LayoutRequest: + updateLayout(); + break; + case QEvent::PolishRequest: + replot(); + break; + default:; + } + return ok; +} + +//! Replots the plot if autoReplot() is \c true. +void QwtPlot::autoRefresh() +{ + if ( d_data->autoReplot ) + replot(); +} + +/*! + \brief Set or reset the autoReplot option + + If the autoReplot option is set, the plot will be + updated implicitly by manipulating member functions. + Since this may be time-consuming, it is recommended + to leave this option switched off and call replot() + explicitly if necessary. + + The autoReplot option is set to false by default, which + means that the user has to call replot() in order to make + changes visible. + \param tf \c true or \c false. Defaults to \c true. + \sa replot() +*/ +void QwtPlot::setAutoReplot( bool tf ) +{ + d_data->autoReplot = tf; +} + +/*! + \return true if the autoReplot option is set. + \sa setAutoReplot() +*/ +bool QwtPlot::autoReplot() const +{ + return d_data->autoReplot; +} + +/*! + Change the plot's title + \param title New title +*/ +void QwtPlot::setTitle( const QString &title ) +{ + if ( title != d_data->lblTitle->text().text() ) + { + d_data->lblTitle->setText( title ); + updateLayout(); + } +} + +/*! + Change the plot's title + \param title New title +*/ +void QwtPlot::setTitle( const QwtText &title ) +{ + if ( title != d_data->lblTitle->text() ) + { + d_data->lblTitle->setText( title ); + updateLayout(); + } +} + +//! \return the plot's title +QwtText QwtPlot::title() const +{ + return d_data->lblTitle->text(); +} + +//! \return the plot's title +QwtPlotLayout *QwtPlot::plotLayout() +{ + return d_data->layout; +} + +//! \return the plot's titel label. +const QwtPlotLayout *QwtPlot::plotLayout() const +{ + return d_data->layout; +} + +//! \return the plot's titel label. +QwtTextLabel *QwtPlot::titleLabel() +{ + return d_data->lblTitle; +} + +/*! + \return the plot's titel label. +*/ +const QwtTextLabel *QwtPlot::titleLabel() const +{ + return d_data->lblTitle; +} + +/*! + \return the plot's legend + \sa insertLegend() +*/ +QwtLegend *QwtPlot::legend() +{ + return d_data->legend; +} + +/*! + \return the plot's legend + \sa insertLegend() +*/ +const QwtLegend *QwtPlot::legend() const +{ + return d_data->legend; +} + + +/*! + \return the plot's canvas +*/ +QwtPlotCanvas *QwtPlot::canvas() +{ + return d_data->canvas; +} + +/*! + \return the plot's canvas +*/ +const QwtPlotCanvas *QwtPlot::canvas() const +{ + return d_data->canvas; +} + +/*! + Return sizeHint + \sa minimumSizeHint() +*/ + +QSize QwtPlot::sizeHint() const +{ + int dw = 0; + int dh = 0; + for ( int axisId = 0; axisId < axisCnt; axisId++ ) + { + if ( axisEnabled( axisId ) ) + { + const int niceDist = 40; + const QwtScaleWidget *scaleWidget = axisWidget( axisId ); + const QwtScaleDiv &scaleDiv = scaleWidget->scaleDraw()->scaleDiv(); + const int majCnt = scaleDiv.ticks( QwtScaleDiv::MajorTick ).count(); + + if ( axisId == yLeft || axisId == yRight ) + { + int hDiff = ( majCnt - 1 ) * niceDist + - scaleWidget->minimumSizeHint().height(); + if ( hDiff > dh ) + dh = hDiff; + } + else + { + int wDiff = ( majCnt - 1 ) * niceDist + - scaleWidget->minimumSizeHint().width(); + if ( wDiff > dw ) + dw = wDiff; + } + } + } + return minimumSizeHint() + QSize( dw, dh ); +} + +/*! + \brief Return a minimum size hint +*/ +QSize QwtPlot::minimumSizeHint() const +{ + QSize hint = d_data->layout->minimumSizeHint( this ); + hint += QSize( 2 * frameWidth(), 2 * frameWidth() ); + + return hint; +} + +/*! + Resize and update internal layout + \param e Resize event +*/ +void QwtPlot::resizeEvent( QResizeEvent *e ) +{ + QFrame::resizeEvent( e ); + updateLayout(); +} + +/*! + \brief Redraw the plot + + If the autoReplot option is not set (which is the default) + or if any curves are attached to raw data, the plot has to + be refreshed explicitly in order to make changes visible. + + \sa setAutoReplot() + \warning Calls canvas()->repaint, take care of infinite recursions +*/ +void QwtPlot::replot() +{ + bool doAutoReplot = autoReplot(); + setAutoReplot( false ); + + updateAxes(); + + /* + Maybe the layout needs to be updated, because of changed + axes labels. We need to process them here before painting + to avoid that scales and canvas get out of sync. + */ + QApplication::sendPostedEvents( this, QEvent::LayoutRequest ); + + d_data->canvas->replot(); + + setAutoReplot( doAutoReplot ); +} + +/*! + \brief Adjust plot content to its current size. + \sa resizeEvent() +*/ +void QwtPlot::updateLayout() +{ + d_data->layout->activate( this, contentsRect() ); + + QRect titleRect = d_data->layout->titleRect().toRect(); + QRect scaleRect[QwtPlot::axisCnt]; + for ( int axisId = 0; axisId < axisCnt; axisId++ ) + scaleRect[axisId] = d_data->layout->scaleRect( axisId ).toRect(); + QRect legendRect = d_data->layout->legendRect().toRect(); + QRect canvasRect = d_data->layout->canvasRect().toRect(); + + // + // resize and show the visible widgets + // + if ( !d_data->lblTitle->text().isEmpty() ) + { + d_data->lblTitle->setGeometry( titleRect ); + if ( !d_data->lblTitle->isVisibleTo( this ) ) + d_data->lblTitle->show(); + } + else + d_data->lblTitle->hide(); + + for ( int axisId = 0; axisId < axisCnt; axisId++ ) + { + if ( axisEnabled( axisId ) ) + { + axisWidget( axisId )->setGeometry( scaleRect[axisId] ); + + if ( axisId == xBottom || axisId == xTop ) + { + QRegion r( scaleRect[axisId] ); + if ( axisEnabled( yLeft ) ) + r = r.subtract( QRegion( scaleRect[yLeft] ) ); + if ( axisEnabled( yRight ) ) + r = r.subtract( QRegion( scaleRect[yRight] ) ); + r.translate( -d_data->layout->scaleRect( axisId ).x(), + -scaleRect[axisId].y() ); + + axisWidget( axisId )->setMask( r ); + } + if ( !axisWidget( axisId )->isVisibleTo( this ) ) + axisWidget( axisId )->show(); + } + else + axisWidget( axisId )->hide(); + } + + if ( d_data->legend && + d_data->layout->legendPosition() != ExternalLegend ) + { + if ( d_data->legend->itemCount() > 0 ) + { + d_data->legend->setGeometry( legendRect ); + d_data->legend->show(); + } + else + d_data->legend->hide(); + } + + d_data->canvas->setGeometry( canvasRect ); +} + +/*! + Update the focus tab order + + The order is changed so that the canvas will be in front of the + first legend item, or behind the last legend item - depending + on the position of the legend. +*/ + +void QwtPlot::updateTabOrder() +{ + if ( d_data->canvas->focusPolicy() == Qt::NoFocus ) + return; + if ( d_data->legend.isNull() + || d_data->layout->legendPosition() == ExternalLegend + || d_data->legend->legendItems().count() == 0 ) + { + return; + } + + // Depending on the position of the legend the + // tab order will be changed that the canvas is + // next to the last legend item, or before + // the first one. + + const bool canvasFirst = + d_data->layout->legendPosition() == QwtPlot::BottomLegend || + d_data->layout->legendPosition() == QwtPlot::RightLegend; + + QWidget *previous = NULL; + + QWidget *w = d_data->canvas; + while ( ( w = w->nextInFocusChain() ) != d_data->canvas ) + { + bool isLegendItem = false; + if ( w->focusPolicy() != Qt::NoFocus + && w->parent() && w->parent() == d_data->legend->contentsWidget() ) + { + isLegendItem = true; + } + + if ( canvasFirst ) + { + if ( isLegendItem ) + break; + + previous = w; + } + else + { + if ( isLegendItem ) + previous = w; + else + { + if ( previous ) + break; + } + } + } + + if ( previous && previous != d_data->canvas ) + setTabOrder( previous, d_data->canvas ); +} + +/*! + Redraw the canvas. + \param painter Painter used for drawing + + \warning drawCanvas calls drawItems what is also used + for printing. Applications that like to add individual + plot items better overload drawItems() + \sa drawItems() +*/ +void QwtPlot::drawCanvas( QPainter *painter ) +{ + QwtScaleMap maps[axisCnt]; + for ( int axisId = 0; axisId < axisCnt; axisId++ ) + maps[axisId] = canvasMap( axisId ); + + drawItems( painter, d_data->canvas->contentsRect(), maps ); +} + +/*! + Redraw the canvas items. + \param painter Painter used for drawing + \param canvasRect Bounding rectangle where to paint + \param map QwtPlot::axisCnt maps, mapping between plot and paint device coordinates +*/ + +void QwtPlot::drawItems( QPainter *painter, const QRectF &canvasRect, + const QwtScaleMap map[axisCnt] ) const +{ + const QwtPlotItemList& itmList = itemList(); + for ( QwtPlotItemIterator it = itmList.begin(); + it != itmList.end(); ++it ) + { + QwtPlotItem *item = *it; + if ( item && item->isVisible() ) + { + painter->save(); + + painter->setRenderHint( QPainter::Antialiasing, + item->testRenderHint( QwtPlotItem::RenderAntialiased ) ); + + item->draw( painter, + map[item->xAxis()], map[item->yAxis()], + canvasRect ); + + painter->restore(); + } + } +} + +/*! + \param axisId Axis + \return Map for the axis on the canvas. With this map pixel coordinates can + translated to plot coordinates and vice versa. + \sa QwtScaleMap, transform(), invTransform() + +*/ +QwtScaleMap QwtPlot::canvasMap( int axisId ) const +{ + QwtScaleMap map; + if ( !d_data->canvas ) + return map; + + map.setTransformation( axisScaleEngine( axisId )->transformation() ); + + const QwtScaleDiv *sd = axisScaleDiv( axisId ); + map.setScaleInterval( sd->lowerBound(), sd->upperBound() ); + + if ( axisEnabled( axisId ) ) + { + const QwtScaleWidget *s = axisWidget( axisId ); + if ( axisId == yLeft || axisId == yRight ) + { + double y = s->y() + s->startBorderDist() - d_data->canvas->y(); + double h = s->height() - s->startBorderDist() - s->endBorderDist(); + map.setPaintInterval( y + h, y ); + } + else + { + double x = s->x() + s->startBorderDist() - d_data->canvas->x(); + double w = s->width() - s->startBorderDist() - s->endBorderDist(); + map.setPaintInterval( x, x + w ); + } + } + else + { + int margin = 0; + if ( !plotLayout()->alignCanvasToScales() ) + margin = plotLayout()->canvasMargin( axisId ); + + const QRect &canvasRect = d_data->canvas->contentsRect(); + if ( axisId == yLeft || axisId == yRight ) + { + map.setPaintInterval( canvasRect.bottom() - margin, + canvasRect.top() + margin ); + } + else + { + map.setPaintInterval( canvasRect.left() + margin, + canvasRect.right() - margin ); + } + } + return map; +} + +/*! + \brief Change the background of the plotting area + + Sets brush to QPalette::Window of all colorgroups of + the palette of the canvas. Using canvas()->setPalette() + is a more powerful way to set these colors. + + \param brush New background brush + \sa canvasBackground() +*/ +void QwtPlot::setCanvasBackground( const QBrush &brush ) +{ + QPalette pal = d_data->canvas->palette(); + + for ( int i = 0; i < QPalette::NColorGroups; i++ ) + pal.setBrush( ( QPalette::ColorGroup )i, QPalette::Window, brush ); + + canvas()->setPalette( pal ); +} + +/*! + Nothing else than: canvas()->palette().brush( + QPalette::Normal, QPalette::Window); + + \return Background brush of the plotting area. + \sa setCanvasBackground() +*/ +QBrush QwtPlot::canvasBackground() const +{ + return canvas()->palette().brush( + QPalette::Normal, QPalette::Window ); +} + +/*! + \brief Change the border width of the plotting area + + Nothing else than canvas()->setLineWidth(w), + left for compatibility only. + + \param width New border width +*/ +void QwtPlot::setCanvasLineWidth( int width ) +{ + canvas()->setLineWidth( width ); + updateLayout(); +} + +/*! + Nothing else than: canvas()->lineWidth(), + left for compatibility only. + + \return the border width of the plotting area +*/ +int QwtPlot::canvasLineWidth() const +{ + return canvas()->lineWidth(); +} + +/*! + \return \c true if the specified axis exists, otherwise \c false + \param axisId axis index + */ +bool QwtPlot::axisValid( int axisId ) +{ + return ( ( axisId >= QwtPlot::yLeft ) && ( axisId < QwtPlot::axisCnt ) ); +} + +/*! + Called internally when the legend has been clicked on. + Emits a legendClicked() signal. +*/ +void QwtPlot::legendItemClicked() +{ + if ( d_data->legend && sender()->isWidgetType() ) + { + QwtPlotItem *plotItem = + ( QwtPlotItem* )d_data->legend->find( ( QWidget * )sender() ); + if ( plotItem ) + Q_EMIT legendClicked( plotItem ); + } +} + +/*! + Called internally when the legend has been checked + Emits a legendClicked() signal. +*/ +void QwtPlot::legendItemChecked( bool on ) +{ + if ( d_data->legend && sender()->isWidgetType() ) + { + QwtPlotItem *plotItem = + ( QwtPlotItem* )d_data->legend->find( ( QWidget * )sender() ); + if ( plotItem ) + Q_EMIT legendChecked( plotItem, on ); + } +} + +/*! + \brief Insert a legend + + If the position legend is \c QwtPlot::LeftLegend or \c QwtPlot::RightLegend + the legend will be organized in one column from top to down. + Otherwise the legend items will be placed in a table + with a best fit number of columns from left to right. + + If pos != QwtPlot::ExternalLegend the plot widget will become + parent of the legend. It will be deleted when the plot is deleted, + or another legend is set with insertLegend(). + + \param legend Legend + \param pos The legend's position. For top/left position the number + of colums will be limited to 1, otherwise it will be set to + unlimited. + + \param ratio Ratio between legend and the bounding rect + of title, canvas and axes. The legend will be shrinked + if it would need more space than the given ratio. + The ratio is limited to ]0.0 .. 1.0]. In case of <= 0.0 + it will be reset to the default ratio. + The default vertical/horizontal ratio is 0.33/0.5. + + \sa legend(), QwtPlotLayout::legendPosition(), + QwtPlotLayout::setLegendPosition() +*/ +void QwtPlot::insertLegend( QwtLegend *legend, + QwtPlot::LegendPosition pos, double ratio ) +{ + d_data->layout->setLegendPosition( pos, ratio ); + + if ( legend != d_data->legend ) + { + if ( d_data->legend && d_data->legend->parent() == this ) + delete d_data->legend; + + d_data->legend = legend; + + if ( d_data->legend ) + { + if ( pos != ExternalLegend ) + { + if ( d_data->legend->parent() != this ) + d_data->legend->setParent( this ); + } + + const QwtPlotItemList& itmList = itemList(); + for ( QwtPlotItemIterator it = itmList.begin(); + it != itmList.end(); ++it ) + { + ( *it )->updateLegend( d_data->legend ); + } + + QLayout *l = d_data->legend->contentsWidget()->layout(); + if ( l && l->inherits( "QwtDynGridLayout" ) ) + { + QwtDynGridLayout *tl = ( QwtDynGridLayout * )l; + switch ( d_data->layout->legendPosition() ) + { + case LeftLegend: + case RightLegend: + tl->setMaxCols( 1 ); // 1 column: align vertical + break; + case TopLegend: + case BottomLegend: + tl->setMaxCols( 0 ); // unlimited + break; + case ExternalLegend: + break; + } + } + } + updateTabOrder(); + } + + updateLayout(); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_curve.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_curve.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_curve.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_curve.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,1109 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_plot_curve.h" +#include "qwt_math.h" +#include "qwt_clipper.h" +#include "qwt_painter.h" +#include "qwt_legend.h" +#include "qwt_legend_item.h" +#include "qwt_scale_map.h" +#include "qwt_plot.h" +#include "qwt_plot_canvas.h" +#include "qwt_curve_fitter.h" +#include "qwt_symbol.h" +#include +#include +#include +#include + +static int verifyRange( int size, int &i1, int &i2 ) +{ + if ( size < 1 ) + return 0; + + i1 = qBound( 0, i1, size - 1 ); + i2 = qBound( 0, i2, size - 1 ); + + if ( i1 > i2 ) + qSwap( i1, i2 ); + + return ( i2 - i1 + 1 ); +} + +class QwtPlotCurve::PrivateData +{ +public: + PrivateData(): + style( QwtPlotCurve::Lines ), + baseline( 0.0 ), + symbol( NULL ), + attributes( 0 ), + paintAttributes( QwtPlotCurve::ClipPolygons ), + legendAttributes( 0 ) + { + pen = QPen( Qt::black ); + curveFitter = new QwtSplineCurveFitter; + } + + ~PrivateData() + { + delete symbol; + delete curveFitter; + } + + QwtPlotCurve::CurveStyle style; + double baseline; + + const QwtSymbol *symbol; + QwtCurveFitter *curveFitter; + + QPen pen; + QBrush brush; + + QwtPlotCurve::CurveAttributes attributes; + QwtPlotCurve::PaintAttributes paintAttributes; + + QwtPlotCurve::LegendAttributes legendAttributes; +}; + +/*! + Constructor + \param title Title of the curve +*/ +QwtPlotCurve::QwtPlotCurve( const QwtText &title ): + QwtPlotSeriesItem( title ) +{ + init(); +} + +/*! + Constructor + \param title Title of the curve +*/ +QwtPlotCurve::QwtPlotCurve( const QString &title ): + QwtPlotSeriesItem( QwtText( title ) ) +{ + init(); +} + +//! Destructor +QwtPlotCurve::~QwtPlotCurve() +{ + delete d_data; +} + +//! Initialize internal members +void QwtPlotCurve::init() +{ + setItemAttribute( QwtPlotItem::Legend ); + setItemAttribute( QwtPlotItem::AutoScale ); + + d_data = new PrivateData; + d_series = new QwtPointSeriesData(); + + setZ( 20.0 ); +} + +//! \return QwtPlotItem::Rtti_PlotCurve +int QwtPlotCurve::rtti() const +{ + return QwtPlotItem::Rtti_PlotCurve; +} + +/*! + Specify an attribute how to draw the curve + + \param attribute Paint attribute + \param on On/Off + \sa testPaintAttribute() +*/ +void QwtPlotCurve::setPaintAttribute( PaintAttribute attribute, bool on ) +{ + if ( on ) + d_data->paintAttributes |= attribute; + else + d_data->paintAttributes &= ~attribute; +} + +/*! + \brief Return the current paint attributes + \sa setPaintAttribute() +*/ +bool QwtPlotCurve::testPaintAttribute( PaintAttribute attribute ) const +{ + return ( d_data->paintAttributes & attribute ); +} + +/*! + Specify an attribute how to draw the legend identifier + + \param attribute Attribute + \param on On/Off + /sa testLegendAttribute() +*/ +void QwtPlotCurve::setLegendAttribute( LegendAttribute attribute, bool on ) +{ + if ( on ) + d_data->legendAttributes |= attribute; + else + d_data->legendAttributes &= ~attribute; +} + +/*! + \brief Return the current paint attributes + \sa setLegendAttribute() +*/ +bool QwtPlotCurve::testLegendAttribute( LegendAttribute attribute ) const +{ + return ( d_data->legendAttributes & attribute ); +} + +/*! + Set the curve's drawing style + + \param style Curve style + \sa style() +*/ +void QwtPlotCurve::setStyle( CurveStyle style ) +{ + if ( style != d_data->style ) + { + d_data->style = style; + itemChanged(); + } +} + +/*! + Return the current style + \sa setStyle() +*/ +QwtPlotCurve::CurveStyle QwtPlotCurve::style() const +{ + return d_data->style; +} + +/*! + Assign a symbol + + \param symbol Symbol + \sa symbol() +*/ +void QwtPlotCurve::setSymbol( const QwtSymbol *symbol ) +{ + if ( symbol != d_data->symbol ) + { + delete d_data->symbol; + d_data->symbol = symbol; + itemChanged(); + } +} + +/*! + \return Current symbol or NULL, when no symbol has been assigned + \sa setSymbol() +*/ +const QwtSymbol *QwtPlotCurve::symbol() const +{ + return d_data->symbol; +} + +/*! + Assign a pen + + \param pen New pen + \sa pen(), brush() +*/ +void QwtPlotCurve::setPen( const QPen &pen ) +{ + if ( pen != d_data->pen ) + { + d_data->pen = pen; + itemChanged(); + } +} + +/*! + \return Pen used to draw the lines + \sa setPen(), brush() +*/ +const QPen& QwtPlotCurve::pen() const +{ + return d_data->pen; +} + +/*! + \brief Assign a brush. + + In case of brush.style() != QBrush::NoBrush + and style() != QwtPlotCurve::Sticks + the area between the curve and the baseline will be filled. + + In case !brush.color().isValid() the area will be filled by + pen.color(). The fill algorithm simply connects the first and the + last curve point to the baseline. So the curve data has to be sorted + (ascending or descending). + + \param brush New brush + \sa brush(), setBaseline(), baseline() +*/ +void QwtPlotCurve::setBrush( const QBrush &brush ) +{ + if ( brush != d_data->brush ) + { + d_data->brush = brush; + itemChanged(); + } +} + +/*! + \return Brush used to fill the area between lines and the baseline + \sa setBrush(), setBaseline(), baseline() +*/ +const QBrush& QwtPlotCurve::brush() const +{ + return d_data->brush; +} + +/*! + Draw an interval of the curve + + \param painter Painter + \param xMap Maps x-values into pixel coordinates. + \param yMap Maps y-values into pixel coordinates. + \param canvasRect Contents rect of the canvas + \param from Index of the first point to be painted + \param to Index of the last point to be painted. If to < 0 the + curve will be painted to its last point. + + \sa drawCurve(), drawSymbols(), +*/ +void QwtPlotCurve::drawSeries( QPainter *painter, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + const QRectF &canvasRect, int from, int to ) const +{ + if ( !painter || dataSize() <= 0 ) + return; + + if ( to < 0 ) + to = dataSize() - 1; + + if ( verifyRange( dataSize(), from, to ) > 0 ) + { + painter->save(); + painter->setPen( d_data->pen ); + + /* + Qt 4.0.0 is slow when drawing lines, but it's even + slower when the painter has a brush. So we don't + set the brush before we really need it. + */ + + drawCurve( painter, d_data->style, xMap, yMap, canvasRect, from, to ); + painter->restore(); + + if ( d_data->symbol && + ( d_data->symbol->style() != QwtSymbol::NoSymbol ) ) + { + painter->save(); + drawSymbols( painter, *d_data->symbol, + xMap, yMap, canvasRect, from, to ); + painter->restore(); + } + } +} + +/*! + \brief Draw the line part (without symbols) of a curve interval. + \param painter Painter + \param style curve style, see QwtPlotCurve::CurveStyle + \param xMap x map + \param yMap y map + \param canvasRect Contents rect of the canvas + \param from index of the first point to be painted + \param to index of the last point to be painted + \sa draw(), drawDots(), drawLines(), drawSteps(), drawSticks() +*/ +void QwtPlotCurve::drawCurve( QPainter *painter, int style, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + const QRectF &canvasRect, int from, int to ) const +{ + switch ( style ) + { + case Lines: + if ( testCurveAttribute( Fitted ) ) + { + // we always need the complete + // curve for fitting + from = 0; + to = dataSize() - 1; + } + drawLines( painter, xMap, yMap, canvasRect, from, to ); + break; + case Sticks: + drawSticks( painter, xMap, yMap, canvasRect, from, to ); + break; + case Steps: + drawSteps( painter, xMap, yMap, canvasRect, from, to ); + break; + case Dots: + drawDots( painter, xMap, yMap, canvasRect, from, to ); + break; + case NoCurve: + default: + break; + } +} + +/*! + \brief Draw lines + + If the CurveAttribute Fitted is enabled a QwtCurveFitter tries + to interpolate/smooth the curve, before it is painted. + + \param painter Painter + \param xMap x map + \param yMap y map + \param canvasRect Contents rect of the canvas + \param from index of the first point to be painted + \param to index of the last point to be painted + + \sa setCurveAttribute(), setCurveFitter(), draw(), + drawLines(), drawDots(), drawSteps(), drawSticks() +*/ +void QwtPlotCurve::drawLines( QPainter *painter, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + const QRectF &canvasRect, int from, int to ) const +{ + int size = to - from + 1; + if ( size <= 0 ) + return; + + const bool doAlign = QwtPainter::roundingAlignment( painter ); + + QPolygonF polyline( size ); + + QPointF *points = polyline.data(); + for ( int i = from; i <= to; i++ ) + { + const QPointF sample = d_series->sample( i ); + + double x = xMap.transform( sample.x() ); + double y = yMap.transform( sample.y() ); + if ( doAlign ) + { + x = qRound( x ); + y = qRound( y ); + } + + points[i - from].rx() = x; + points[i - from].ry() = y; + } + + if ( ( d_data->attributes & Fitted ) && d_data->curveFitter ) + polyline = d_data->curveFitter->fitCurve( polyline ); + + if ( d_data->paintAttributes & ClipPolygons ) + { + qreal pw = qMax( qreal( 1.0 ), painter->pen().widthF()); + const QPolygonF clipped = QwtClipper::clipPolygonF( + canvasRect.adjusted(-pw, -pw, pw, pw), polyline, false ); + + QwtPainter::drawPolyline( painter, clipped ); + } + else + { + QwtPainter::drawPolyline( painter, polyline ); + } + + if ( d_data->brush.style() != Qt::NoBrush ) + fillCurve( painter, xMap, yMap, canvasRect, polyline ); +} + +/*! + Draw sticks + + \param painter Painter + \param xMap x map + \param yMap y map + \param canvasRect Contents rect of the canvas + \param from index of the first point to be painted + \param to index of the last point to be painted + + \sa draw(), drawCurve(), drawDots(), drawLines(), drawSteps() +*/ +void QwtPlotCurve::drawSticks( QPainter *painter, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + const QRectF &, int from, int to ) const +{ + painter->save(); + painter->setRenderHint( QPainter::Antialiasing, false ); + + const bool doAlign = QwtPainter::roundingAlignment( painter ); + + double x0 = xMap.transform( d_data->baseline ); + double y0 = yMap.transform( d_data->baseline ); + if ( doAlign ) + { + x0 = qRound( x0 ); + y0 = qRound( y0 ); + } + + const Qt::Orientation o = orientation(); + + for ( int i = from; i <= to; i++ ) + { + const QPointF sample = d_series->sample( i ); + double xi = xMap.transform( sample.x() ); + double yi = yMap.transform( sample.y() ); + if ( doAlign ) + { + xi = qRound( xi ); + yi = qRound( yi ); + } + + if ( o == Qt::Horizontal ) + QwtPainter::drawLine( painter, x0, yi, xi, yi ); + else + QwtPainter::drawLine( painter, xi, y0, xi, yi ); + } + + painter->restore(); +} + +/*! + Draw dots + + \param painter Painter + \param xMap x map + \param yMap y map + \param canvasRect Contents rect of the canvas + \param from index of the first point to be painted + \param to index of the last point to be painted + + \sa draw(), drawCurve(), drawSticks(), drawLines(), drawSteps() +*/ +void QwtPlotCurve::drawDots( QPainter *painter, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + const QRectF &canvasRect, int from, int to ) const +{ + const bool doFill = d_data->brush.style() != Qt::NoBrush; + const bool doAlign = QwtPainter::roundingAlignment( painter ); + + QPolygonF polyline; + if ( doFill ) + polyline.resize( to - from + 1 ); + + QPointF *points = polyline.data(); + + for ( int i = from; i <= to; i++ ) + { + const QPointF sample = d_series->sample( i ); + double xi = xMap.transform( sample.x() ); + double yi = yMap.transform( sample.y() ); + if ( doAlign ) + { + xi = qRound( xi ); + yi = qRound( yi ); + } + + QwtPainter::drawPoint( painter, QPointF( xi, yi ) ); + + if ( doFill ) + { + points[i - from].rx() = xi; + points[i - from].ry() = yi; + } + } + + if ( doFill ) + fillCurve( painter, xMap, yMap, canvasRect, polyline ); +} + +/*! + Draw step function + + The direction of the steps depends on Inverted attribute. + + \param painter Painter + \param xMap x map + \param yMap y map + \param canvasRect Contents rect of the canvas + \param from index of the first point to be painted + \param to index of the last point to be painted + + \sa CurveAttribute, setCurveAttribute(), + draw(), drawCurve(), drawDots(), drawLines(), drawSticks() +*/ +void QwtPlotCurve::drawSteps( QPainter *painter, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + const QRectF &canvasRect, int from, int to ) const +{ + const bool doAlign = QwtPainter::roundingAlignment( painter ); + + QPolygonF polygon( 2 * ( to - from ) + 1 ); + QPointF *points = polygon.data(); + + bool inverted = orientation() == Qt::Vertical; + if ( d_data->attributes & Inverted ) + inverted = !inverted; + + int i, ip; + for ( i = from, ip = 0; i <= to; i++, ip += 2 ) + { + const QPointF sample = d_series->sample( i ); + double xi = xMap.transform( sample.x() ); + double yi = yMap.transform( sample.y() ); + if ( doAlign ) + { + xi = qRound( xi ); + yi = qRound( yi ); + } + + if ( ip > 0 ) + { + const QPointF &p0 = points[ip - 2]; + QPointF &p = points[ip - 1]; + + if ( inverted ) + { + p.rx() = p0.x(); + p.ry() = yi; + } + else + { + p.rx() = xi; + p.ry() = p0.y(); + } + } + + points[ip].rx() = xi; + points[ip].ry() = yi; + } + + if ( d_data->paintAttributes & ClipPolygons ) + { + const QPolygonF clipped = QwtClipper::clipPolygonF( + canvasRect, polygon, false ); + + QwtPainter::drawPolyline( painter, clipped ); + } + else + { + QwtPainter::drawPolyline( painter, polygon ); + } + + if ( d_data->brush.style() != Qt::NoBrush ) + fillCurve( painter, xMap, yMap, canvasRect, polygon ); +} + + +/*! + Specify an attribute for drawing the curve + + \param attribute Curve attribute + \param on On/Off + + /sa testCurveAttribute(), setCurveFitter() +*/ +void QwtPlotCurve::setCurveAttribute( CurveAttribute attribute, bool on ) +{ + if ( bool( d_data->attributes & attribute ) == on ) + return; + + if ( on ) + d_data->attributes |= attribute; + else + d_data->attributes &= ~attribute; + + itemChanged(); +} + +/*! + \return true, if attribute is enabled + \sa setCurveAttribute() +*/ +bool QwtPlotCurve::testCurveAttribute( CurveAttribute attribute ) const +{ + return d_data->attributes & attribute; +} + +/*! + Assign a curve fitter + + The curve fitter "smooths" the curve points, when the Fitted + CurveAttribute is set. setCurveFitter(NULL) also disables curve fitting. + + The curve fitter operates on the translated points ( = widget coordinates) + to be functional for logarithmic scales. Obviously this is less performant + for fitting algorithms, that reduce the number of points. + + For situations, where curve fitting is used to improve the performance + of painting huge series of points it might be better to execute the fitter + on the curve points once and to cache the result in the QwtSeriesData object. + + \param curveFitter() Curve fitter + \sa Fitted +*/ +void QwtPlotCurve::setCurveFitter( QwtCurveFitter *curveFitter ) +{ + delete d_data->curveFitter; + d_data->curveFitter = curveFitter; + + itemChanged(); +} + +/*! + Get the curve fitter. If curve fitting is disabled NULL is returned. + + \return Curve fitter + \sa setCurveFitter(), Fitted +*/ +QwtCurveFitter *QwtPlotCurve::curveFitter() const +{ + return d_data->curveFitter; +} + +/*! + Fill the area between the curve and the baseline with + the curve brush + + \param painter Painter + \param xMap x map + \param yMap y map + \param canvasRect Contents rect of the canvas + \param polygon Polygon - will be modified ! + + \sa setBrush(), setBaseline(), setStyle() +*/ +void QwtPlotCurve::fillCurve( QPainter *painter, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + const QRectF &canvasRect, QPolygonF &polygon ) const +{ + if ( d_data->brush.style() == Qt::NoBrush ) + return; + + closePolyline( painter, xMap, yMap, polygon ); + if ( polygon.count() <= 2 ) // a line can't be filled + return; + + QBrush brush = d_data->brush; + if ( !brush.color().isValid() ) + brush.setColor( d_data->pen.color() ); + + if ( d_data->paintAttributes & ClipPolygons ) + polygon = QwtClipper::clipPolygonF( canvasRect, polygon, true ); + + painter->save(); + + painter->setPen( Qt::NoPen ); + painter->setBrush( brush ); + + QwtPainter::drawPolygon( painter, polygon ); + + painter->restore(); +} + +/*! + \brief Complete a polygon to be a closed polygon including the + area between the original polygon and the baseline. + + \param painter Painter + \param xMap X map + \param yMap Y map + \param polygon Polygon to be completed +*/ +void QwtPlotCurve::closePolyline( QPainter *painter, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + QPolygonF &polygon ) const +{ + if ( polygon.size() < 2 ) + return; + + const bool doAlign = QwtPainter::roundingAlignment( painter ); + + double baseline = d_data->baseline; + + if ( orientation() == Qt::Vertical ) + { + if ( yMap.transformation()->type() == QwtScaleTransformation::Log10 ) + { + if ( baseline < QwtScaleMap::LogMin ) + baseline = QwtScaleMap::LogMin; + } + + double refY = yMap.transform( baseline ); + if ( doAlign ) + refY = qRound( refY ); + + polygon += QPointF( polygon.last().x(), refY ); + polygon += QPointF( polygon.first().x(), refY ); + } + else + { + if ( xMap.transformation()->type() == QwtScaleTransformation::Log10 ) + { + if ( baseline < QwtScaleMap::LogMin ) + baseline = QwtScaleMap::LogMin; + } + + double refX = xMap.transform( baseline ); + if ( doAlign ) + refX = qRound( refX ); + + polygon += QPointF( refX, polygon.last().y() ); + polygon += QPointF( refX, polygon.first().y() ); + } +} + +/*! + Draw symbols + + \param painter Painter + \param symbol Curve symbol + \param xMap x map + \param yMap y map + \param canvasRect Contents rect of the canvas + \param from Index of the first point to be painted + \param to Index of the last point to be painted + + \sa setSymbol(), drawSeries(), drawCurve() +*/ +void QwtPlotCurve::drawSymbols( QPainter *painter, const QwtSymbol &symbol, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + const QRectF &canvasRect, int from, int to ) const +{ + const bool doAlign = QwtPainter::roundingAlignment( painter ); + + bool usePixmap = testPaintAttribute( CacheSymbols ); + if ( usePixmap && !doAlign ) + { + // Don't use the pixmap, when the paint device + // could generate scalable vectors + + usePixmap = false; + } + + if ( usePixmap ) + { + QPixmap pm( symbol.boundingSize() ); + pm.fill( Qt::transparent ); + + const double pw2 = 0.5 * pm.width(); + const double ph2 = 0.5 * pm.height(); + + QPainter p( &pm ); + p.setRenderHints( painter->renderHints() ); + symbol.drawSymbol( &p, QPointF( pw2, ph2 ) ); + p.end(); + + for ( int i = from; i <= to; i++ ) + { + const QPointF sample = d_series->sample( i ); + + double xi = xMap.transform( sample.x() ); + double yi = yMap.transform( sample.y() ); + if ( doAlign ) + { + xi = qRound( xi ); + yi = qRound( yi ); + } + + if ( canvasRect.contains( xi, yi ) ) + { + const int left = qCeil( xi ) - pw2; + const int top = qCeil( yi ) - ph2; + + painter->drawPixmap( left, top, pm ); + } + } + } + else + { + const int chunkSize = 500; + + for ( int i = from; i <= to; i += chunkSize ) + { + const int n = qMin( chunkSize, to - i + 1 ); + + QPolygonF points; + for ( int j = 0; j < n; j++ ) + { + const QPointF sample = d_series->sample( i + j ); + + const double xi = xMap.transform( sample.x() ); + const double yi = yMap.transform( sample.y() ); + + if ( canvasRect.contains( xi, yi ) ) + points += QPointF( xi, yi ); + } + + if ( points.size() > 0 ) + symbol.drawSymbols( painter, points ); + } + } +} + +/*! + \brief Set the value of the baseline + + The baseline is needed for filling the curve with a brush or + the Sticks drawing style. + The interpretation of the baseline depends on the CurveType. + With QwtPlotCurve::Yfx, the baseline is interpreted as a horizontal line + at y = baseline(), with QwtPlotCurve::Yfy, it is interpreted as a vertical + line at x = baseline(). + + The default value is 0.0. + + \param value Value of the baseline + \sa baseline(), setBrush(), setStyle(), setStyle() +*/ +void QwtPlotCurve::setBaseline( double value ) +{ + if ( d_data->baseline != value ) + { + d_data->baseline = value; + itemChanged(); + } +} + +/*! + \return Value of the baseline + \sa setBaseline() +*/ +double QwtPlotCurve::baseline() const +{ + return d_data->baseline; +} + +/*! + Find the closest curve point for a specific position + + \param pos Position, where to look for the closest curve point + \param dist If dist != NULL, closestPoint() returns the distance between + the position and the clostest curve point + \return Index of the closest curve point, or -1 if none can be found + ( f.e when the curve has no points ) + \note closestPoint() implements a dumb algorithm, that iterates + over all points +*/ +int QwtPlotCurve::closestPoint( const QPoint &pos, double *dist ) const +{ + if ( plot() == NULL || dataSize() <= 0 ) + return -1; + + const QwtScaleMap xMap = plot()->canvasMap( xAxis() ); + const QwtScaleMap yMap = plot()->canvasMap( yAxis() ); + + int index = -1; + double dmin = 1.0e10; + + for ( uint i = 0; i < dataSize(); i++ ) + { + const QPointF sample = d_series->sample( i ); + + const double cx = xMap.transform( sample.x() ) - pos.x(); + const double cy = yMap.transform( sample.y() ) - pos.y(); + + const double f = qwtSqr( cx ) + qwtSqr( cy ); + if ( f < dmin ) + { + index = i; + dmin = f; + } + } + if ( dist ) + *dist = qSqrt( dmin ); + + return index; +} + +/*! + \brief Update the widget that represents the item on the legend + + \param legend Legend + \sa drawLegendIdentifier(), legendItem(), QwtPlotItem::Legend +*/ +void QwtPlotCurve::updateLegend( QwtLegend *legend ) const +{ + if ( legend && testItemAttribute( QwtPlotItem::Legend ) + && ( d_data->legendAttributes & QwtPlotCurve::LegendShowSymbol ) + && d_data->symbol + && d_data->symbol->style() != QwtSymbol::NoSymbol ) + { + QWidget *lgdItem = legend->find( this ); + if ( lgdItem == NULL ) + { + lgdItem = legendItem(); + if ( lgdItem ) + legend->insert( this, lgdItem ); + } + if ( lgdItem && lgdItem->inherits( "QwtLegendItem" ) ) + { + QwtLegendItem *l = ( QwtLegendItem * )lgdItem; + l->setIdentifierSize( d_data->symbol->boundingSize() ); + } + } + + QwtPlotItem::updateLegend( legend ); +} + +/*! + \brief Draw the identifier representing the curve on the legend + + \param painter Painter + \param rect Bounding rectangle for the identifier + + \sa setLegendAttribute(), QwtPlotItem::Legend +*/ +void QwtPlotCurve::drawLegendIdentifier( + QPainter *painter, const QRectF &rect ) const +{ + if ( rect.isEmpty() ) + return; + + const int dim = qMin( rect.width(), rect.height() ); + + QSize size( dim, dim ); + + QRectF r( 0, 0, size.width(), size.height() ); + r.moveCenter( rect.center() ); + + if ( d_data->legendAttributes == 0 ) + { + QBrush brush = d_data->brush; + if ( brush.style() == Qt::NoBrush ) + { + if ( style() != QwtPlotCurve::NoCurve ) + brush = QBrush( pen().color() ); + else if ( d_data->symbol && + ( d_data->symbol->style() != QwtSymbol::NoSymbol ) ) + { + brush = QBrush( d_data->symbol->pen().color() ); + } + } + if ( brush.style() != Qt::NoBrush ) + painter->fillRect( r, brush ); + } + if ( d_data->legendAttributes & QwtPlotCurve::LegendShowBrush ) + { + if ( d_data->brush.style() != Qt::NoBrush ) + painter->fillRect( r, d_data->brush ); + } + if ( d_data->legendAttributes & QwtPlotCurve::LegendShowLine ) + { + if ( pen() != Qt::NoPen ) + { + painter->setPen( pen() ); + QwtPainter::drawLine( painter, rect.left(), rect.center().y(), + rect.right() - 1.0, rect.center().y() ); + } + } + if ( d_data->legendAttributes & QwtPlotCurve::LegendShowSymbol ) + { + if ( d_data->symbol && + ( d_data->symbol->style() != QwtSymbol::NoSymbol ) ) + { + QSize symbolSize = d_data->symbol->boundingSize(); + symbolSize -= QSize( 2, 2 ); + + // scale the symbol size down if it doesn't fit into rect. + + double xRatio = 1.0; + if ( rect.width() < symbolSize.width() ) + xRatio = rect.width() / symbolSize.width(); + double yRatio = 1.0; + if ( rect.height() < symbolSize.height() ) + yRatio = rect.height() / symbolSize.height(); + + const double ratio = qMin( xRatio, yRatio ); + + painter->save(); + painter->scale( ratio, ratio ); + + d_data->symbol->drawSymbol( painter, rect.center() / ratio ); + + painter->restore(); + } + } +} + +/*! + Initialize data with an array of points (explicitly shared). + + \param samples Vector of points +*/ +void QwtPlotCurve::setSamples( const QVector &samples ) +{ + delete d_series; + d_series = new QwtPointSeriesData( samples ); + itemChanged(); +} + +#ifndef QWT_NO_COMPAT + +/*! + \brief Initialize the data by pointing to memory blocks which + are not managed by QwtPlotCurve. + + setRawSamples is provided for efficiency. + It is important to keep the pointers + during the lifetime of the underlying QwtCPointerData class. + + \param xData pointer to x data + \param yData pointer to y data + \param size size of x and y + + \sa QwtCPointerData +*/ +void QwtPlotCurve::setRawSamples( + const double *xData, const double *yData, int size ) +{ + delete d_series; + d_series = new QwtCPointerData( xData, yData, size ); + itemChanged(); +} + +/*! + Set data by copying x- and y-values from specified memory blocks. + Contrary to setRawSamples(), this function makes a 'deep copy' of + the data. + + \param xData pointer to x values + \param yData pointer to y values + \param size size of xData and yData + + \sa QwtPointArrayData +*/ +void QwtPlotCurve::setSamples( + const double *xData, const double *yData, int size ) +{ + delete d_series; + d_series = new QwtPointArrayData( xData, yData, size ); + itemChanged(); +} + +/*! + \brief Initialize data with x- and y-arrays (explicitly shared) + + \param xData x data + \param yData y data + + \sa QwtPointArrayData +*/ +void QwtPlotCurve::setSamples( const QVector &xData, + const QVector &yData ) +{ + delete d_series; + d_series = new QwtPointArrayData( xData, yData ); + itemChanged(); +} +#endif // !QWT_NO_COMPAT + diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_curve.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_curve.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_curve.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_curve.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,319 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_PLOT_CURVE_H +#define QWT_PLOT_CURVE_H + +#include "qwt_global.h" +#include "qwt_plot_seriesitem.h" +#include "qwt_series_data.h" +#include "qwt_text.h" +#include +#include + +class QPainter; +class QPolygonF; +class QwtScaleMap; +class QwtSymbol; +class QwtCurveFitter; + +/*! + \brief A plot item, that represents a series of points + + A curve is the representation of a series of points in the x-y plane. + It supports different display styles, interpolation ( f.e. spline ) + and symbols. + + \par Usage +
a) Assign curve properties
+
When a curve is created, it is configured to draw black solid lines + with in QwtPlotCurve::Lines style and no symbols. + You can change this by calling + setPen(), setStyle() and setSymbol().
+
b) Connect/Assign data.
+
QwtPlotCurve gets its points using a QwtSeriesData object offering + a bridge to the real storage of the points ( like QAbstractItemModel ). + There are several convenience classes derived from QwtSeriesData, that also store + the points inside ( like QStandardItemModel ). QwtPlotCurve also offers + a couple of variations of setSamples(), that build QwtSeriesData objects from + arrays internally.
+
c) Attach the curve to a plot
+
See QwtPlotItem::attach() +
+ + \par Example: + see examples/bode + + \sa QwtPointSeriesData, QwtSymbol, QwtScaleMap +*/ +class QWT_EXPORT QwtPlotCurve: public QwtPlotSeriesItem +{ +public: + /*! + Curve styles. + \sa setStyle(), style() + */ + enum CurveStyle + { + /*! + Don't draw a curve. Note: This doesn't affect the symbols. + */ + NoCurve = -1, + + /*! + Connect the points with straight lines. The lines might + be interpolated depending on the 'Fitted' attribute. Curve + fitting can be configured using setCurveFitter(). + */ + Lines, + + /*! + Draw vertical or horizontal sticks ( depending on the + orientation() ) from a baseline which is defined by setBaseline(). + */ + Sticks, + + /*! + Connect the points with a step function. The step function + is drawn from the left to the right or vice versa, + depending on the QwtPlotCurve::Inverted attribute. + */ + Steps, + + /*! + Draw dots at the locations of the data points. Note: + This is different from a dotted line (see setPen()), and faster + as a curve in QwtPlotCurve::NoStyle style and a symbol + painting a point. + */ + Dots, + + /*! + Styles >= QwtPlotCurve::UserCurve are reserved for derived + classes of QwtPlotCurve that overload drawCurve() with + additional application specific curve types. + */ + UserCurve = 100 + }; + + /*! + Attribute for drawing the curve + \sa setCurveAttribute(), testCurveAttribute(), curveFitter() + */ + enum CurveAttribute + { + /*! + For QwtPlotCurve::Steps only. + Draws a step function from the right to the left. + */ + Inverted = 0x01, + + /*! + Only in combination with QwtPlotCurve::Lines + A QwtCurveFitter tries to + interpolate/smooth the curve, before it is painted. + + \note Curve fitting requires temorary memory + for calculating coefficients and additional points. + If painting in QwtPlotCurve::Fitted mode is slow it might be better + to fit the points, before they are passed to QwtPlotCurve. + */ + Fitted = 0x02 + }; + + //! Curve attributes + typedef QFlags CurveAttributes; + + /*! + Attributes how to represent the curve on the legend + + \sa setLegendAttribute(), testLegendAttribute(), + drawLegendIdentifier() + */ + + enum LegendAttribute + { + /*! + QwtPlotCurve tries to find a color representing the curve + and paints a rectangle with it. + */ + LegendNoAttribute = 0x00, + + /*! + If the style() is not QwtPlotCurve::NoCurve a line + is painted with the curve pen(). + */ + LegendShowLine = 0x01, + + /*! + If the curve has a valid symbol it is painted. + */ + LegendShowSymbol = 0x02, + + /*! + If the curve has a brush a rectangle filled with the + curve brush() is painted. + */ + LegendShowBrush = 0x04 + }; + + //! Legend attributes + typedef QFlags LegendAttributes; + + /*! + Attributes to modify the drawing algorithm. + The default setting enables ClipPolygons + + \sa setPaintAttribute(), testPaintAttribute() + */ + enum PaintAttribute + { + /*! + Clip polygons before painting them. In situations, where points + are far outside the visible area (f.e when zooming deep) this + might be a substantial improvement for the painting performance + */ + ClipPolygons = 0x01, + + /*! + Paint the symbol to a QPixmap and paint the pixmap + instead rendering the symbol for each point. The flag has + no effect, when the curve is not painted to the canvas + ( f.e when exporting the plot to a PDF document ). + */ + CacheSymbols = 0x02 + }; + + //! Paint attributes + typedef QFlags PaintAttributes; + + explicit QwtPlotCurve( const QString &title = QString::null ); + explicit QwtPlotCurve( const QwtText &title ); + + virtual ~QwtPlotCurve(); + + virtual int rtti() const; + + void setPaintAttribute( PaintAttribute, bool on = true ); + bool testPaintAttribute( PaintAttribute ) const; + + void setLegendAttribute( LegendAttribute, bool on = true ); + bool testLegendAttribute( LegendAttribute ) const; + +#ifndef QWT_NO_COMPAT + void setRawSamples( const double *xData, const double *yData, int size ); + void setSamples( const double *xData, const double *yData, int size ); + void setSamples( const QVector &xData, const QVector &yData ); +#endif + void setSamples( const QVector & ); + + int closestPoint( const QPoint &pos, double *dist = NULL ) const; + + double minXValue() const; + double maxXValue() const; + double minYValue() const; + double maxYValue() const; + + void setCurveAttribute( CurveAttribute, bool on = true ); + bool testCurveAttribute( CurveAttribute ) const; + + void setPen( const QPen & ); + const QPen &pen() const; + + void setBrush( const QBrush & ); + const QBrush &brush() const; + + void setBaseline( double ref ); + double baseline() const; + + void setStyle( CurveStyle style ); + CurveStyle style() const; + + void setSymbol( const QwtSymbol *s ); + const QwtSymbol *symbol() const; + + void setCurveFitter( QwtCurveFitter * ); + QwtCurveFitter *curveFitter() const; + + virtual void drawSeries( QPainter *, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + const QRectF &canvasRect, int from, int to ) const; + + virtual void updateLegend( QwtLegend * ) const; + virtual void drawLegendIdentifier( QPainter *, const QRectF & ) const; + +protected: + + void init(); + + virtual void drawCurve( QPainter *p, int style, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + const QRectF &canvasRect, int from, int to ) const; + + virtual void drawSymbols( QPainter *p, const QwtSymbol &, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + const QRectF &canvasRect, int from, int to ) const; + + void drawLines( QPainter *p, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + const QRectF &canvasRect, int from, int to ) const; + + void drawSticks( QPainter *p, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + const QRectF &canvasRect, int from, int to ) const; + + void drawDots( QPainter *p, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + const QRectF &canvasRect, int from, int to ) const; + + void drawSteps( QPainter *p, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + const QRectF &canvasRect, int from, int to ) const; + + virtual void fillCurve( QPainter *, + const QwtScaleMap &, const QwtScaleMap &, + const QRectF &canvasRect, QPolygonF & ) const; + + void closePolyline( QPainter *, + const QwtScaleMap &, const QwtScaleMap &, QPolygonF & ) const; + +private: + class PrivateData; + PrivateData *d_data; +}; + +//! boundingRect().left() +inline double QwtPlotCurve::minXValue() const +{ + return boundingRect().left(); +} + +//! boundingRect().right() +inline double QwtPlotCurve::maxXValue() const +{ + return boundingRect().right(); +} + +//! boundingRect().top() +inline double QwtPlotCurve::minYValue() const +{ + return boundingRect().top(); +} + +//! boundingRect().bottom() +inline double QwtPlotCurve::maxYValue() const +{ + return boundingRect().bottom(); +} + +Q_DECLARE_OPERATORS_FOR_FLAGS( QwtPlotCurve::PaintAttributes ); +Q_DECLARE_OPERATORS_FOR_FLAGS( QwtPlotCurve::LegendAttributes ); +Q_DECLARE_OPERATORS_FOR_FLAGS( QwtPlotCurve::CurveAttributes ); + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_dict.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_dict.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_dict.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_dict.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,188 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_plot_dict.h" + +class QwtPlotDict::PrivateData +{ +public: + + class ItemList: public QList + { + public: + void insertItem( QwtPlotItem *item ) + { + if ( item == NULL ) + return; + + QList::iterator it = + qUpperBound( begin(), end(), item, LessZThan() ); + insert( it, item ); + } + + void removeItem( QwtPlotItem *item ) + { + if ( item == NULL ) + return; + + QList::iterator it = + qLowerBound( begin(), end(), item, LessZThan() ); + + for ( ; it != end(); ++it ) + { + if ( item == *it ) + { + erase( it ); + break; + } + } + } + private: + class LessZThan + { + public: + inline bool operator()( const QwtPlotItem *item1, + const QwtPlotItem *item2 ) const + { + return item1->z() < item2->z(); + } + }; + }; + + ItemList itemList; + bool autoDelete; +}; + +/*! + Constructor + + Auto deletion is enabled. + \sa setAutoDelete(), attachItem() +*/ +QwtPlotDict::QwtPlotDict() +{ + d_data = new QwtPlotDict::PrivateData; + d_data->autoDelete = true; +} + +/*! + Destructor + + If autoDelete is on, all attached items will be deleted + \sa setAutoDelete(), autoDelete(), attachItem() +*/ +QwtPlotDict::~QwtPlotDict() +{ + detachItems( QwtPlotItem::Rtti_PlotItem, d_data->autoDelete ); + delete d_data; +} + +/*! + En/Disable Auto deletion + + If Auto deletion is on all attached plot items will be deleted + in the destructor of QwtPlotDict. The default value is on. + + \sa autoDelete(), attachItem() +*/ +void QwtPlotDict::setAutoDelete( bool autoDelete ) +{ + d_data->autoDelete = autoDelete; +} + +/*! + \return true if auto deletion is enabled + \sa setAutoDelete(), attachItem() +*/ +bool QwtPlotDict::autoDelete() const +{ + return d_data->autoDelete; +} + +/*! + Attach/Detach a plot item + + Attached items will be deleted in the destructor, + if auto deletion is enabled (default). Manually detached + items are not deleted. + + \param item Plot item to attach/detach + \ on If true attach, else detach the item + + \sa setAutoDelete(), ~QwtPlotDict() +*/ +void QwtPlotDict::attachItem( QwtPlotItem *item, bool on ) +{ + if ( on ) + d_data->itemList.insertItem( item ); + else + d_data->itemList.removeItem( item ); +} + +/*! + Detach items from the dictionary + + \param rtti In case of QwtPlotItem::Rtti_PlotItem detach all items + otherwise only those items of the type rtti. + \param autoDelete If true, delete all detached items +*/ +void QwtPlotDict::detachItems( int rtti, bool autoDelete ) +{ + PrivateData::ItemList list = d_data->itemList; + QwtPlotItemIterator it = list.begin(); + while ( it != list.end() ) + { + QwtPlotItem *item = *it; + + ++it; // increment before removing item from the list + + if ( rtti == QwtPlotItem::Rtti_PlotItem || item->rtti() == rtti ) + { + item->attach( NULL ); + if ( autoDelete ) + delete item; + } + } +} + +/*! + \brief A QwtPlotItemList of all attached plot items. + + Use caution when iterating these lists, as removing/detaching an item will + invalidate the iterator. Instead you can place pointers to objects to be + removed in a removal list, and traverse that list later. + + \return List of all attached plot items. +*/ +const QwtPlotItemList &QwtPlotDict::itemList() const +{ + return d_data->itemList; +} + +/*! + \return List of all attached plot items of a specific type. + \sa QwtPlotItem::rtti() +*/ +QwtPlotItemList QwtPlotDict::itemList( int rtti ) const +{ + if ( rtti == QwtPlotItem::Rtti_PlotItem ) + return d_data->itemList; + + QwtPlotItemList items; + + PrivateData::ItemList list = d_data->itemList; + for ( QwtPlotItemIterator it = list.begin(); it != list.end(); ++it ) + { + QwtPlotItem *item = *it; + if ( item->rtti() == rtti ) + items += item; + } + + return items; +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_dict.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_dict.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_dict.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_dict.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,56 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +/*! \file !*/ +#ifndef QWT_PLOT_DICT +#define QWT_PLOT_DICT + +#include "qwt_global.h" +#include "qwt_plot_item.h" +#include + +/// \var typedef QList< QwtPlotItem *> QwtPlotItemList +/// \brief See QT 4.x assistant documentation for QList +typedef QList QwtPlotItemList; +typedef QList::ConstIterator QwtPlotItemIterator; + +/*! + \brief A dictionary for plot items + + QwtPlotDict organizes plot items in increasing z-order. + If autoDelete() is enabled, all attached items will be deleted + in the destructor of the dictionary. + + \sa QwtPlotItem::attach(), QwtPlotItem::detach(), QwtPlotItem::z() +*/ +class QWT_EXPORT QwtPlotDict +{ +public: + explicit QwtPlotDict(); + virtual ~QwtPlotDict(); + + void setAutoDelete( bool ); + bool autoDelete() const; + + const QwtPlotItemList& itemList() const; + QwtPlotItemList itemList( int rtti ) const; + + void detachItems( int rtti = QwtPlotItem::Rtti_PlotItem, + bool autoDelete = true ); + +private: + friend class QwtPlotItem; + + void attachItem( QwtPlotItem *, bool ); + + class PrivateData; + PrivateData *d_data; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_directpainter.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_directpainter.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_directpainter.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_directpainter.cpp 2011-04-15 10:48:49.000000000 +0000 @@ -0,0 +1,313 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_plot_directpainter.h" +#include "qwt_scale_map.h" +#include "qwt_plot.h" +#include "qwt_plot_canvas.h" +#include "qwt_plot_seriesitem.h" +#include +#include +#include +#include + +static inline void renderItem( + QPainter *painter, const QRect &canvasRect, + QwtPlotAbstractSeriesItem *seriesItem, int from, int to ) +{ + // A minor performance improvement is possible + // with caching the maps. TODO ... + + QwtPlot *plot = seriesItem->plot(); + const QwtScaleMap xMap = plot->canvasMap( seriesItem->xAxis() ); + const QwtScaleMap yMap = plot->canvasMap( seriesItem->yAxis() ); + + painter->setRenderHint( QPainter::Antialiasing, + seriesItem->testRenderHint( QwtPlotItem::RenderAntialiased ) ); + seriesItem->drawSeries( painter, xMap, yMap, canvasRect, from, to ); +} + +class QwtPlotDirectPainter::PrivateData +{ +public: + PrivateData(): + attributes( 0 ), + hasClipping(false), + seriesItem( NULL ) + { + } + + QwtPlotDirectPainter::Attributes attributes; + + bool hasClipping; + QRegion clipRegion; + + QPainter painter; + + QwtPlotAbstractSeriesItem *seriesItem; + int from; + int to; +}; + +//! Constructor +QwtPlotDirectPainter::QwtPlotDirectPainter( QObject *parent ): + QObject( parent ) +{ + d_data = new PrivateData; +} + +//! Destructor +QwtPlotDirectPainter::~QwtPlotDirectPainter() +{ + delete d_data; +} + +/*! + Change an attribute + + \param attribute Attribute to change + \param on On/Off + + \sa Attribute, testAttribute() +*/ +void QwtPlotDirectPainter::setAttribute( Attribute attribute, bool on ) +{ + if ( bool( d_data->attributes & attribute ) != on ) + { + if ( on ) + d_data->attributes |= attribute; + else + d_data->attributes &= ~attribute; + + if ( ( attribute == AtomicPainter ) && on ) + reset(); + } +} + +/*! + Check if a attribute is set. + + \param attribute Attribute to be tested + \sa Attribute, setAttribute() +*/ +bool QwtPlotDirectPainter::testAttribute( Attribute attribute ) const +{ + return d_data->attributes & attribute; +} + +/*! + En/Disables clipping + + \param enable Enables clipping is true, disable it otherwise + \sa hasClipping(), clipRegion(), setClipRegion() +*/ +void QwtPlotDirectPainter::setClipping( bool enable ) +{ + d_data->hasClipping = enable; +} + +/*! + \return true, when clipping is enabled + \sa setClipping(), clipRegion(), setClipRegion() +*/ +bool QwtPlotDirectPainter::hasClipping() const +{ + return d_data->hasClipping; +} + +/*! + \brief Assign a clip region and enable clipping + + Depending on the environment setting a proper clip region might improve + the performance heavily. F.e. on Qt embedded only the clipped part of + the backing store will be copied to a ( maybe unaccelerated ) frame buffer + device. + + \param region Clip region + \sa clipRegion(), hasClipping(), setClipping() +*/ +void QwtPlotDirectPainter::setClipRegion( const QRegion ®ion ) +{ + d_data->clipRegion = region; + d_data->hasClipping = true; +} + +/*! + \return Currently set clip region. + \sa setClipRegion(), setClipping(), hasClipping() +*/ +QRegion QwtPlotDirectPainter::clipRegion() const +{ + return d_data->clipRegion; +} + +/*! + \brief Draw a set of points of a seriesItem. + + When observing an measurement while it is running, new points have to be + added to an existing seriesItem. drawSeries can be used to display them avoiding + a complete redraw of the canvas. + + Setting plot()->canvas()->setAttribute(Qt::WA_PaintOutsidePaintEvent, true); + will result in faster painting, if the paint engine of the canvas widget + supports this feature. + + \param seriesItem Item to be painted + \param from Index of the first point to be painted + \param to Index of the last point to be painted. If to < 0 the + series will be painted to its last point. +*/ +void QwtPlotDirectPainter::drawSeries( + QwtPlotAbstractSeriesItem *seriesItem, int from, int to ) +{ + if ( seriesItem == NULL || seriesItem->plot() == NULL ) + return; + + QwtPlotCanvas *canvas = seriesItem->plot()->canvas(); + const QRect canvasRect = canvas->contentsRect(); + + const bool hasBackingStore = + canvas->testPaintAttribute( QwtPlotCanvas::BackingStore ) + && canvas->backingStore() && !canvas->backingStore()->isNull(); + + if ( hasBackingStore ) + { + QPainter painter( ( QPixmap * )canvas->backingStore() ); + painter.translate( -canvasRect.x(), -canvasRect.y() ); + + if ( d_data->hasClipping ) + painter.setClipRegion( d_data->clipRegion ); + + renderItem( &painter, canvasRect, seriesItem, from, to ); + + if ( testAttribute( FullRepaint ) ) + { + canvas->repaint(); + return; + } + } + + bool immediatePaint = true; + if ( !canvas->testAttribute( Qt::WA_WState_InPaintEvent ) && + !canvas->testAttribute( Qt::WA_PaintOutsidePaintEvent ) ) + { + immediatePaint = false; + } + + if ( immediatePaint ) + { + QwtPlotCanvas *canvas = seriesItem->plot()->canvas(); + if ( !d_data->painter.isActive() ) + { + reset(); + + d_data->painter.begin( canvas ); + canvas->installEventFilter( this ); + } + + if ( d_data->hasClipping ) + { + d_data->painter.setClipRegion( + QRegion( canvasRect ) & d_data->clipRegion ); + } + else + { + if ( !d_data->painter.hasClipping() ) + d_data->painter.setClipRect( canvasRect ); + } + + renderItem( &d_data->painter, canvasRect, seriesItem, from, to ); + + if ( d_data->attributes & AtomicPainter ) + { + reset(); + } + else + { + if ( d_data->hasClipping ) + d_data->painter.setClipping( false ); + } + } + else + { + reset(); + + d_data->seriesItem = seriesItem; + d_data->from = from; + d_data->to = to; + + QRegion clipRegion = canvasRect; + if ( d_data->hasClipping ) + clipRegion &= d_data->clipRegion; + + canvas->installEventFilter( this ); + canvas->repaint(clipRegion); + canvas->removeEventFilter( this ); + + d_data->seriesItem = NULL; + } +} + +//! Close the internal QPainter +void QwtPlotDirectPainter::reset() +{ + if ( d_data->painter.isActive() ) + { + QWidget *w = ( QWidget * )d_data->painter.device(); + if ( w ) + w->removeEventFilter( this ); + + d_data->painter.end(); + } +} + +//! Event filter +bool QwtPlotDirectPainter::eventFilter( QObject *, QEvent *event ) +{ + if ( event->type() == QEvent::Paint ) + { + reset(); + + if ( d_data->seriesItem ) + { + const QPaintEvent *pe = static_cast< QPaintEvent *>( event ); + + QwtPlotCanvas *canvas = d_data->seriesItem->plot()->canvas(); + + QPainter painter( canvas ); + painter.setClipRegion( pe->region() ); + + bool copyCache = testAttribute( CopyBackingStore ) + && canvas->testPaintAttribute( QwtPlotCanvas::BackingStore ); + + if ( copyCache ) + { + // is something valid in the cache ? + copyCache = ( canvas->backingStore() != NULL ) + && !canvas->backingStore()->isNull(); + } + + if ( copyCache ) + { + painter.drawPixmap( + canvas->contentsRect().topLeft(), + *canvas->backingStore() ); + } + else + { + renderItem( &painter, canvas->contentsRect(), + d_data->seriesItem, d_data->from, d_data->to ); + } + + return true; // don't call QwtPlotCanvas::paintEvent() + } + } + + return false; +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_directpainter.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_directpainter.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_directpainter.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_directpainter.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,100 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_PLOT_DIRECT_PAINTER_H +#define QWT_PLOT_DIRECT_PAINTER_H + +#include "qwt_global.h" +#include + +class QRegion; +class QwtPlotAbstractSeriesItem; + +/*! + \brief Painter object trying to paint incrementally + + Often applications want to display samples while they are + collected. When there are too many samples complete replots + will be expensive to be processed in a collection cycle. + + QwtPlotDirectPainter offers an API to paint + subsets ( f.e all additions points ) without erasing/repainting + the plot canvas. + + On certain environments it might be important to calculate a proper + clip region before painting. F.e. for Qt Embedded only the clipped part + of the backing store will be copied to a ( maybe unaccelerated ) + frame buffer. + + \warning Incremental painting will only help when no replot is triggered + by another operation ( like changing scales ) and nothing needs + to be erased. +*/ +class QWT_EXPORT QwtPlotDirectPainter: public QObject +{ +public: + /*! + \brief Paint attributes + \sa setAttribute(), testAttribute(), drawSeries() + */ + enum Attribute + { + /*! + Initializing a QPainter is an expensive operation. + When AtomicPainter is set each call of drawSeries() opens/closes + a temporary QPainter. Otherwise QwtPlotDirectPainter tries to + use the same QPainter as long as possible. + */ + AtomicPainter = 0x01, + + /*! + When FullRepaint is set the plot canvas is explicitely repainted + after the samples have been rendered. + */ + FullRepaint = 0x02, + + /*! + When QwtPlotCanvas::BackingStore is enabled the painter + has to paint to the backing store and the widget. In certain + situations/environments it might be faster to paint to + the backing store only and then copy the backingstore to the canvas. + This flag can also be useful for settings, where Qt fills the + the clip region with the widget background. + */ + CopyBackingStore = 0x04 + }; + + //! Paint attributes + typedef QFlags Attributes; + + QwtPlotDirectPainter( QObject *parent = NULL ); + virtual ~QwtPlotDirectPainter(); + + void setAttribute( Attribute, bool on ); + bool testAttribute( Attribute ) const; + + void setClipping( bool ); + bool hasClipping() const; + + void setClipRegion( const QRegion & ); + QRegion clipRegion() const; + + void drawSeries( QwtPlotAbstractSeriesItem *, int from, int to ); + void reset(); + + virtual bool eventFilter( QObject *, QEvent * ); + +private: + class PrivateData; + PrivateData *d_data; +}; + +Q_DECLARE_OPERATORS_FOR_FLAGS( QwtPlotDirectPainter::Attributes ); + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_grid.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_grid.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_grid.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_grid.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,367 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_plot_grid.h" +#include "qwt_painter.h" +#include "qwt_text.h" +#include "qwt_scale_map.h" +#include "qwt_scale_div.h" +#include "qwt_math.h" +#include +#include + +class QwtPlotGrid::PrivateData +{ +public: + PrivateData(): + xEnabled( true ), + yEnabled( true ), + xMinEnabled( false ), + yMinEnabled( false ) + { + } + + bool xEnabled; + bool yEnabled; + bool xMinEnabled; + bool yMinEnabled; + + QwtScaleDiv xScaleDiv; + QwtScaleDiv yScaleDiv; + + QPen majPen; + QPen minPen; +}; + +//! Enables major grid, disables minor grid +QwtPlotGrid::QwtPlotGrid(): + QwtPlotItem( QwtText( "Grid" ) ) +{ + d_data = new PrivateData; + setZ( 10.0 ); +} + +//! Destructor +QwtPlotGrid::~QwtPlotGrid() +{ + delete d_data; +} + +//! \return QwtPlotItem::Rtti_PlotGrid +int QwtPlotGrid::rtti() const +{ + return QwtPlotItem::Rtti_PlotGrid; +} + +/*! + \brief Enable or disable vertical gridlines + \param tf Enable (true) or disable + + \sa Minor gridlines can be enabled or disabled with + enableXMin() +*/ +void QwtPlotGrid::enableX( bool tf ) +{ + if ( d_data->xEnabled != tf ) + { + d_data->xEnabled = tf; + itemChanged(); + } +} + +/*! + \brief Enable or disable horizontal gridlines + \param tf Enable (true) or disable + \sa Minor gridlines can be enabled or disabled with enableYMin() +*/ +void QwtPlotGrid::enableY( bool tf ) +{ + if ( d_data->yEnabled != tf ) + { + d_data->yEnabled = tf; + itemChanged(); + } +} + +/*! + \brief Enable or disable minor vertical gridlines. + \param tf Enable (true) or disable + \sa enableX() +*/ +void QwtPlotGrid::enableXMin( bool tf ) +{ + if ( d_data->xMinEnabled != tf ) + { + d_data->xMinEnabled = tf; + itemChanged(); + } +} + +/*! + \brief Enable or disable minor horizontal gridlines + \param tf Enable (true) or disable + \sa enableY() +*/ +void QwtPlotGrid::enableYMin( bool tf ) +{ + if ( d_data->yMinEnabled != tf ) + { + d_data->yMinEnabled = tf; + itemChanged(); + } +} + +/*! + Assign an x axis scale division + + \param scaleDiv Scale division +*/ +void QwtPlotGrid::setXDiv( const QwtScaleDiv &scaleDiv ) +{ + if ( d_data->xScaleDiv != scaleDiv ) + { + d_data->xScaleDiv = scaleDiv; + itemChanged(); + } +} + +/*! + Assign a y axis division + + \param scaleDiv Scale division +*/ +void QwtPlotGrid::setYDiv( const QwtScaleDiv &scaleDiv ) +{ + if ( d_data->yScaleDiv != scaleDiv ) + { + d_data->yScaleDiv = scaleDiv; + itemChanged(); + } +} + +/*! + Assign a pen for both major and minor gridlines + + \param pen Pen + \sa setMajPen(), setMinPen() +*/ +void QwtPlotGrid::setPen( const QPen &pen ) +{ + if ( d_data->majPen != pen || d_data->minPen != pen ) + { + d_data->majPen = pen; + d_data->minPen = pen; + itemChanged(); + } +} + +/*! + Assign a pen for the major gridlines + + \param pen Pen + \sa majPen(), setMinPen(), setPen() +*/ +void QwtPlotGrid::setMajPen( const QPen &pen ) +{ + if ( d_data->majPen != pen ) + { + d_data->majPen = pen; + itemChanged(); + } +} + +/*! + Assign a pen for the minor gridlines + + \param pen Pen + \sa minPen(), setMajPen(), setPen() +*/ +void QwtPlotGrid::setMinPen( const QPen &pen ) +{ + if ( d_data->minPen != pen ) + { + d_data->minPen = pen; + itemChanged(); + } +} + +/*! + \brief Draw the grid + + The grid is drawn into the bounding rectangle such that + gridlines begin and end at the rectangle's borders. The X and Y + maps are used to map the scale divisions into the drawing region + screen. + \param painter Painter + \param xMap X axis map + \param yMap Y axis + \param canvasRect Contents rect of the plot canvas +*/ +void QwtPlotGrid::draw( QPainter *painter, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + const QRectF &canvasRect ) const +{ + // draw minor gridlines + QPen minPen = d_data->minPen; + minPen.setCapStyle( Qt::FlatCap ); + + painter->setPen( minPen ); + + if ( d_data->xEnabled && d_data->xMinEnabled ) + { + drawLines( painter, canvasRect, Qt::Vertical, xMap, + d_data->xScaleDiv.ticks( QwtScaleDiv::MinorTick ) ); + drawLines( painter, canvasRect, Qt::Vertical, xMap, + d_data->xScaleDiv.ticks( QwtScaleDiv::MediumTick ) ); + } + + if ( d_data->yEnabled && d_data->yMinEnabled ) + { + drawLines( painter, canvasRect, Qt::Horizontal, yMap, + d_data->yScaleDiv.ticks( QwtScaleDiv::MinorTick ) ); + drawLines( painter, canvasRect, Qt::Horizontal, yMap, + d_data->yScaleDiv.ticks( QwtScaleDiv::MediumTick ) ); + } + + // draw major gridlines + QPen majPen = d_data->majPen; + majPen.setCapStyle( Qt::FlatCap ); + + painter->setPen( majPen ); + + if ( d_data->xEnabled ) + { + drawLines( painter, canvasRect, Qt::Vertical, xMap, + d_data->xScaleDiv.ticks( QwtScaleDiv::MajorTick ) ); + } + + if ( d_data->yEnabled ) + { + drawLines( painter, canvasRect, Qt::Horizontal, yMap, + d_data->yScaleDiv.ticks( QwtScaleDiv::MajorTick ) ); + } +} + +void QwtPlotGrid::drawLines( QPainter *painter, const QRectF &canvasRect, + Qt::Orientation orientation, const QwtScaleMap &scaleMap, + const QList &values ) const +{ + const double x1 = canvasRect.left(); + const double x2 = canvasRect.right() - 1.0; + const double y1 = canvasRect.top(); + const double y2 = canvasRect.bottom() - 1.0; + + const bool doAlign = QwtPainter::roundingAlignment( painter ); + + for ( uint i = 0; i < ( uint )values.count(); i++ ) + { + double value = scaleMap.transform( values[i] ); + if ( doAlign ) + value = qRound( value ); + + if ( orientation == Qt::Horizontal ) + { + if ( qwtFuzzyGreaterOrEqual( value, y1 ) && + qwtFuzzyLessOrEqual( value, y2 ) ) + { + QwtPainter::drawLine( painter, x1, value, x2, value ); + } + } + else + { + if ( qwtFuzzyGreaterOrEqual( value, x1 ) && + qwtFuzzyLessOrEqual( value, x2 ) ) + { + QwtPainter::drawLine( painter, value, y1, value, y2 ); + } + } + } +} + +/*! + \return the pen for the major gridlines + \sa setMajPen(), setMinPen(), setPen() +*/ +const QPen &QwtPlotGrid::majPen() const +{ + return d_data->majPen; +} + +/*! + \return the pen for the minor gridlines + \sa setMinPen(), setMajPen(), setPen() +*/ +const QPen &QwtPlotGrid::minPen() const +{ + return d_data->minPen; +} + +/*! + \return true if vertical gridlines are enabled + \sa enableX() +*/ +bool QwtPlotGrid::xEnabled() const +{ + return d_data->xEnabled; +} + +/*! + \return true if minor vertical gridlines are enabled + \sa enableXMin() +*/ +bool QwtPlotGrid::xMinEnabled() const +{ + return d_data->xMinEnabled; +} + +/*! + \return true if horizontal gridlines are enabled + \sa enableY() +*/ +bool QwtPlotGrid::yEnabled() const +{ + return d_data->yEnabled; +} + +/*! + \return true if minor horizontal gridlines are enabled + \sa enableYMin() +*/ +bool QwtPlotGrid::yMinEnabled() const +{ + return d_data->yMinEnabled; +} + + +/*! \return the scale division of the x axis */ +const QwtScaleDiv &QwtPlotGrid::xScaleDiv() const +{ + return d_data->xScaleDiv; +} + +/*! \return the scale division of the y axis */ +const QwtScaleDiv &QwtPlotGrid::yScaleDiv() const +{ + return d_data->yScaleDiv; +} + +/*! + Update the grid to changes of the axes scale division + + \param xScaleDiv Scale division of the x-axis + \param yScaleDiv Scale division of the y-axis + + \sa QwtPlot::updateAxes() +*/ +void QwtPlotGrid::updateScaleDiv( const QwtScaleDiv& xScaleDiv, + const QwtScaleDiv& yScaleDiv ) +{ + setXDiv( xScaleDiv ); + setYDiv( yScaleDiv ); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_grid.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_grid.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_grid.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_grid.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,84 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_PLOT_GRID_H +#define QWT_PLOT_GRID_H + +#include "qwt_global.h" +#include "qwt_plot_item.h" +#include "qwt_scale_div.h" + +class QPainter; +class QPen; +class QwtScaleMap; +class QwtScaleDiv; + +/*! + \brief A class which draws a coordinate grid + + The QwtPlotGrid class can be used to draw a coordinate grid. + A coordinate grid consists of major and minor vertical + and horizontal gridlines. The locations of the gridlines + are determined by the X and Y scale divisions which can + be assigned with setXDiv() and setYDiv(). + The draw() member draws the grid within a bounding + rectangle. +*/ + +class QWT_EXPORT QwtPlotGrid: public QwtPlotItem +{ +public: + explicit QwtPlotGrid(); + virtual ~QwtPlotGrid(); + + virtual int rtti() const; + + void enableX( bool tf ); + bool xEnabled() const; + + void enableY( bool tf ); + bool yEnabled() const; + + void enableXMin( bool tf ); + bool xMinEnabled() const; + + void enableYMin( bool tf ); + bool yMinEnabled() const; + + void setXDiv( const QwtScaleDiv &sx ); + const QwtScaleDiv &xScaleDiv() const; + + void setYDiv( const QwtScaleDiv &sy ); + const QwtScaleDiv &yScaleDiv() const; + + void setPen( const QPen &p ); + + void setMajPen( const QPen &p ); + const QPen& majPen() const; + + void setMinPen( const QPen &p ); + const QPen& minPen() const; + + virtual void draw( QPainter *p, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + const QRectF &rect ) const; + + virtual void updateScaleDiv( + const QwtScaleDiv &xMap, const QwtScaleDiv &yMap ); + +private: + void drawLines( QPainter *painter, const QRectF &, + Qt::Orientation orientation, const QwtScaleMap &, + const QList & ) const; + + class PrivateData; + PrivateData *d_data; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot.h 2011-04-15 10:48:46.000000000 +0000 @@ -0,0 +1,290 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_PLOT_H +#define QWT_PLOT_H + +#include "qwt_global.h" +#include "qwt_text.h" +#include "qwt_plot_dict.h" +#include "qwt_scale_map.h" +#include "qwt_interval.h" +#include + +class QwtPlotLayout; +class QwtLegend; +class QwtScaleWidget; +class QwtScaleEngine; +class QwtScaleDiv; +class QwtScaleDraw; +class QwtTextLabel; +class QwtPlotCanvas; + +/*! + \brief A 2-D plotting widget + + QwtPlot is a widget for plotting two-dimensional graphs. + An unlimited number of plot items can be displayed on + its canvas. Plot items might be curves (QwtPlotCurve), markers + (QwtPlotMarker), the grid (QwtPlotGrid), or anything else derived + from QwtPlotItem. + A plot can have up to four axes, with each plot item attached to an x- and + a y axis. The scales at the axes can be explicitely set (QwtScaleDiv), or + are calculated from the plot items, using algorithms (QwtScaleEngine) which + can be configured separately for each axis. + + \image html plot.png + + \par Example + The following example shows (schematically) the most simple + way to use QwtPlot. By default, only the left and bottom axes are + visible and their scales are computed automatically. + \verbatim +#include +#include + +QwtPlot *myPlot = new QwtPlot("Two Curves", parent); + +// add curves +QwtPlotCurve *curve1 = new QwtPlotCurve("Curve 1"); +QwtPlotCurve *curve2 = new QwtPlotCurve("Curve 2"); + +// copy the data into the curves +curve1->setData(...); +curve2->setData(...); + +curve1->attach(myPlot); +curve2->attach(myPlot); + +// finally, refresh the plot +myPlot->replot(); +\endverbatim +*/ + +class QWT_EXPORT QwtPlot: public QFrame, public QwtPlotDict +{ + Q_OBJECT + Q_PROPERTY( QString propertiesDocument + READ grabProperties WRITE applyProperties ) + +public: + //! \brief Axis index + enum Axis + { + //! Y axis left of the canvas + yLeft, + + //! Y axis right of the canvas + yRight, + + //! X axis below the canvas + xBottom, + + //! X axis above the canvas + xTop, + + //! Number of axes + axisCnt + }; + + /*! + Position of the legend, relative to the canvas. + + \sa insertLegend() + \note In case of ExternalLegend, the legend is not + handled by QwtPlotRenderer + */ + enum LegendPosition + { + //! The legend will be left from the QwtPlot::yLeft axis. + LeftLegend, + + //! The legend will be right from the QwtPlot::yRight axis. + RightLegend, + + //! The legend will be below QwtPlot::xBottom axis. + BottomLegend, + + //! The legend will be between QwtPlot::xTop axis and the title. + TopLegend, + + /*! + External means that only the content of the legend + will be handled by QwtPlot, but not its geometry. + This type can be used to have a legend in an + external window ( or on the canvas ). + */ + ExternalLegend + }; + + explicit QwtPlot( QWidget * = NULL ); + explicit QwtPlot( const QwtText &title, QWidget *p = NULL ); + + virtual ~QwtPlot(); + + void applyProperties( const QString & ); + QString grabProperties() const; + + void setAutoReplot( bool tf = true ); + bool autoReplot() const; + + // Layout + + QwtPlotLayout *plotLayout(); + const QwtPlotLayout *plotLayout() const; + + // Title + + void setTitle( const QString & ); + void setTitle( const QwtText &t ); + QwtText title() const; + + QwtTextLabel *titleLabel(); + const QwtTextLabel *titleLabel() const; + + // Canvas + + QwtPlotCanvas *canvas(); + const QwtPlotCanvas *canvas() const; + + void setCanvasBackground( const QBrush & ); + QBrush canvasBackground() const; + + void setCanvasLineWidth( int w ); + int canvasLineWidth() const; + + virtual QwtScaleMap canvasMap( int axisId ) const; + + double invTransform( int axisId, int pos ) const; + double transform( int axisId, double value ) const; + + // Axes + + QwtScaleEngine *axisScaleEngine( int axisId ); + const QwtScaleEngine *axisScaleEngine( int axisId ) const; + void setAxisScaleEngine( int axisId, QwtScaleEngine * ); + + void setAxisAutoScale( int axisId, bool on = true ); + bool axisAutoScale( int axisId ) const; + + void enableAxis( int axisId, bool tf = true ); + bool axisEnabled( int axisId ) const; + + void setAxisFont( int axisId, const QFont &f ); + QFont axisFont( int axisId ) const; + + void setAxisScale( int axisId, double min, double max, double step = 0 ); + void setAxisScaleDiv( int axisId, const QwtScaleDiv & ); + void setAxisScaleDraw( int axisId, QwtScaleDraw * ); + + double axisStepSize( int axisId ) const; + QwtInterval axisInterval( int axisId ) const; + + const QwtScaleDiv *axisScaleDiv( int axisId ) const; + QwtScaleDiv *axisScaleDiv( int axisId ); + + const QwtScaleDraw *axisScaleDraw( int axisId ) const; + QwtScaleDraw *axisScaleDraw( int axisId ); + + const QwtScaleWidget *axisWidget( int axisId ) const; + QwtScaleWidget *axisWidget( int axisId ); + + void setAxisLabelAlignment( int axisId, Qt::Alignment ); + void setAxisLabelRotation( int axisId, double rotation ); + + void setAxisTitle( int axisId, const QString & ); + void setAxisTitle( int axisId, const QwtText & ); + QwtText axisTitle( int axisId ) const; + + void setAxisMaxMinor( int axisId, int maxMinor ); + int axisMaxMinor( int axisId ) const; + + void setAxisMaxMajor( int axisId, int maxMajor ); + int axisMaxMajor( int axisId ) const; + + // Legend + + void insertLegend( QwtLegend *, LegendPosition = QwtPlot::RightLegend, + double ratio = -1.0 ); + + QwtLegend *legend(); + const QwtLegend *legend() const; + + // Misc + + virtual QSize sizeHint() const; + virtual QSize minimumSizeHint() const; + + virtual void updateLayout(); + virtual void drawCanvas( QPainter * ); + + void updateAxes(); + + virtual bool event( QEvent * ); + + virtual void drawItems( QPainter *, const QRectF &, + const QwtScaleMap maps[axisCnt] ) const; + +Q_SIGNALS: + /*! + A signal which is emitted when the user has clicked on + a legend item, which is in QwtLegend::ClickableItem mode. + + \param plotItem Corresponding plot item of the + selected legend item + + \note clicks are disabled as default + \sa QwtLegend::setItemMode(), QwtLegend::itemMode() + */ + void legendClicked( QwtPlotItem *plotItem ); + + /*! + A signal which is emitted when the user has clicked on + a legend item, which is in QwtLegend::CheckableItem mode + + \param plotItem Corresponding plot item of the + selected legend item + \param on True when the legen item is checked + + \note clicks are disabled as default + \sa QwtLegend::setItemMode(), QwtLegend::itemMode() + */ + + void legendChecked( QwtPlotItem *plotItem, bool on ); + +public Q_SLOTS: + virtual void replot(); + void autoRefresh(); + +protected Q_SLOTS: + virtual void legendItemClicked(); + virtual void legendItemChecked( bool ); + +protected: + static bool axisValid( int axisId ); + + virtual void updateTabOrder(); + + virtual void resizeEvent( QResizeEvent *e ); + +private: + void initAxesData(); + void deleteAxesData(); + void updateScaleDiv(); + + void initPlot( const QwtText &title ); + + class AxisData; + AxisData *d_axisData[axisCnt]; + + class PrivateData; + PrivateData *d_data; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_histogram.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_histogram.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_histogram.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_histogram.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,648 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_plot_histogram.h" +#include "qwt_plot.h" +#include "qwt_legend.h" +#include "qwt_legend_item.h" +#include "qwt_painter.h" +#include "qwt_column_symbol.h" +#include "qwt_scale_map.h" +#include +#include + +static inline bool isCombinable( const QwtInterval &d1, + const QwtInterval &d2 ) +{ + if ( d1.isValid() && d2.isValid() ) + { + if ( d1.maxValue() == d2.minValue() ) + { + if ( !( d1.borderFlags() & QwtInterval::ExcludeMaximum + && d2.borderFlags() & QwtInterval::ExcludeMinimum ) ) + { + return true; + } + } + } + + return false; +} + +class QwtPlotHistogram::PrivateData +{ +public: + PrivateData(): + baseline( 0.0 ), + style( Columns ), + symbol( NULL ) + { + } + + ~PrivateData() + { + delete symbol; + } + + double baseline; + + QPen pen; + QBrush brush; + QwtPlotHistogram::HistogramStyle style; + const QwtColumnSymbol *symbol; +}; + +/*! + Constructor + \param title Title of the histogram. +*/ + +QwtPlotHistogram::QwtPlotHistogram( const QwtText &title ): + QwtPlotSeriesItem( title ) +{ + init(); +} + +/*! + Constructor + \param title Title of the histogram. +*/ +QwtPlotHistogram::QwtPlotHistogram( const QString &title ): + QwtPlotSeriesItem( title ) +{ + init(); +} + +//! Destructor +QwtPlotHistogram::~QwtPlotHistogram() +{ + delete d_data; +} + +//! Initialize data members +void QwtPlotHistogram::init() +{ + d_data = new PrivateData(); + d_series = new QwtIntervalSeriesData(); + + setItemAttribute( QwtPlotItem::AutoScale, true ); + setItemAttribute( QwtPlotItem::Legend, true ); + + setZ( 20.0 ); +} + +/*! + Set the histogram's drawing style + + \param style Histogram style + \sa HistogramStyle, style() +*/ +void QwtPlotHistogram::setStyle( HistogramStyle style ) +{ + if ( style != d_data->style ) + { + d_data->style = style; + itemChanged(); + } +} + +/*! + Return the current style + \sa HistogramStyle, setStyle() +*/ +QwtPlotHistogram::HistogramStyle QwtPlotHistogram::style() const +{ + return d_data->style; +} + +/*! + Assign a pen, that is used in a style() depending way. + + \param pen New pen + \sa pen(), brush() +*/ +void QwtPlotHistogram::setPen( const QPen &pen ) +{ + if ( pen != d_data->pen ) + { + d_data->pen = pen; + itemChanged(); + } +} + +/*! + \return Pen used in a style() depending way. + \sa setPen(), brush() +*/ +const QPen &QwtPlotHistogram::pen() const +{ + return d_data->pen; +} + +/*! + Assign a brush, that is used in a style() depending way. + + \param brush New brush + \sa pen(), brush() +*/ +void QwtPlotHistogram::setBrush( const QBrush &brush ) +{ + if ( brush != d_data->brush ) + { + d_data->brush = brush; + itemChanged(); + } +} + +/*! + \return Brush used in a style() depending way. + \sa setPen(), brush() +*/ +const QBrush &QwtPlotHistogram::brush() const +{ + return d_data->brush; +} + +/*! + \brief Assign a symbol + + In Column style an optional symbol can be assigned, that is responsible + for displaying the rectangle that is defined by the interval and + the distance between baseline() and value. When no symbol has been + defined the area is displayed as plain rectangle using pen() and brush(). + + \sa style(), symbol(), drawColumn(), pen(), brush() + + \note In applications, where different intervals need to be displayed + in a different way ( f.e different colors or even using differnt symbols) + it is recommended to overload drawColumn(). +*/ +void QwtPlotHistogram::setSymbol( const QwtColumnSymbol *symbol ) +{ + if ( symbol != d_data->symbol ) + { + delete d_data->symbol; + d_data->symbol = symbol; + itemChanged(); + } +} + +/*! + \return Current symbol or NULL, when no symbol has been assigned + \sa setSymbol() +*/ +const QwtColumnSymbol *QwtPlotHistogram::symbol() const +{ + return d_data->symbol; +} + +/*! + \brief Set the value of the baseline + + Each column representing an QwtIntervalSample is defined by its + interval and the interval between baseline and the value of the sample. + + The default value of the baseline is 0.0. + + \param value Value of the baseline + \sa baseline() +*/ +void QwtPlotHistogram::setBaseline( double value ) +{ + if ( d_data->baseline != value ) + { + d_data->baseline = value; + itemChanged(); + } +} + +/*! + \return Value of the baseline + \sa setBaseline() +*/ +double QwtPlotHistogram::baseline() const +{ + return d_data->baseline; +} + +/*! + \return Bounding rectangle of all samples. + For an empty series the rectangle is invalid. +*/ +QRectF QwtPlotHistogram::boundingRect() const +{ + QRectF rect = d_series->boundingRect(); + if ( !rect.isValid() ) + return rect; + + if ( orientation() == Qt::Horizontal ) + { + rect = QRectF( rect.y(), rect.x(), + rect.height(), rect.width() ); + + if ( rect.left() > d_data->baseline ) + rect.setLeft( d_data->baseline ); + else if ( rect.right() < d_data->baseline ) + rect.setRight( d_data->baseline ); + } + else + { + if ( rect.bottom() < d_data->baseline ) + rect.setBottom( d_data->baseline ); + else if ( rect.top() > d_data->baseline ) + rect.setTop( d_data->baseline ); + } + + return rect; +} + +//! \return QwtPlotItem::Rtti_PlotHistogram +int QwtPlotHistogram::rtti() const +{ + return QwtPlotItem::Rtti_PlotHistogram; +} + +/*! + Initialize data with an array of samples. + \param samples Vector of points +*/ +void QwtPlotHistogram::setSamples( + const QVector &samples ) +{ + delete d_series; + d_series = new QwtIntervalSeriesData( samples ); + itemChanged(); +} + +/*! + Draw a subset of the histogram samples + + \param painter Painter + \param xMap Maps x-values into pixel coordinates. + \param yMap Maps y-values into pixel coordinates. + \param canvasRect Contents rect of the canvas + \param from Index of the first sample to be painted + \param to Index of the last sample to be painted. If to < 0 the + series will be painted to its last sample. + + \sa drawOutline(), drawLines(), drawColumns +*/ +void QwtPlotHistogram::drawSeries( QPainter *painter, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + const QRectF &, int from, int to ) const +{ + if ( !painter || dataSize() <= 0 ) + return; + + if ( to < 0 ) + to = dataSize() - 1; + + switch ( d_data->style ) + { + case Outline: + drawOutline( painter, xMap, yMap, from, to ); + break; + case Lines: + drawLines( painter, xMap, yMap, from, to ); + break; + case Columns: + drawColumns( painter, xMap, yMap, from, to ); + break; + default: + break; + } +} + +/*! + Draw a histogram in Outline style() + + \param painter Painter + \param xMap Maps x-values into pixel coordinates. + \param yMap Maps y-values into pixel coordinates. + \param from Index of the first sample to be painted + \param to Index of the last sample to be painted. If to < 0 the + histogram will be painted to its last point. + + \sa setStyle(), style() + \warning The outline style requires, that the intervals are in increasing + order and not overlapping. +*/ +void QwtPlotHistogram::drawOutline( QPainter *painter, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + int from, int to ) const +{ + const bool doAlign = QwtPainter::roundingAlignment( painter ); + + double v0 = ( orientation() == Qt::Horizontal ) ? + xMap.transform( baseline() ) : yMap.transform( baseline() ); + if ( doAlign ) + v0 = qRound( v0 ); + + QwtIntervalSample previous; + + QPolygonF polygon; + for ( int i = from; i <= to; i++ ) + { + const QwtIntervalSample sample = d_series->sample( i ); + + if ( !sample.interval.isValid() ) + { + flushPolygon( painter, v0, polygon ); + previous = sample; + continue; + } + + if ( previous.interval.isValid() ) + { + if ( !isCombinable( previous.interval, sample.interval ) ) + flushPolygon( painter, v0, polygon ); + } + + if ( orientation() == Qt::Vertical ) + { + double x1 = xMap.transform( sample.interval.minValue() ); + double x2 = xMap.transform( sample.interval.maxValue() ); + double y = yMap.transform( sample.value ); + if ( doAlign ) + { + x1 = qRound( x1 ); + x2 = qRound( x2 ); + y = qRound( y ); + } + + if ( polygon.size() == 0 ) + polygon += QPointF( x1, v0 ); + + polygon += QPointF( x1, y ); + polygon += QPointF( x2, y ); + } + else + { + double y1 = yMap.transform( sample.interval.minValue() ); + double y2 = yMap.transform( sample.interval.maxValue() ); + double x = xMap.transform( sample.value ); + if ( doAlign ) + { + y1 = qRound( y1 ); + y2 = qRound( y2 ); + x = qRound( x ); + } + + if ( polygon.size() == 0 ) + polygon += QPointF( v0, y1 ); + + polygon += QPointF( x, y1 ); + polygon += QPointF( x, y2 ); + } + previous = sample; + } + + flushPolygon( painter, v0, polygon ); +} + +/*! + Draw a histogram in Columns style() + + \param painter Painter + \param xMap Maps x-values into pixel coordinates. + \param yMap Maps y-values into pixel coordinates. + \param from Index of the first sample to be painted + \param to Index of the last sample to be painted. If to < 0 the + histogram will be painted to its last point. + + \sa setStyle(), style(), setSymbol(), drawColumn() +*/ +void QwtPlotHistogram::drawColumns( QPainter *painter, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + int from, int to ) const +{ + painter->setPen( d_data->pen ); + painter->setBrush( d_data->brush ); + + for ( int i = from; i <= to; i++ ) + { + const QwtIntervalSample sample = d_series->sample( i ); + if ( !sample.interval.isNull() ) + { + const QwtColumnRect rect = columnRect( sample, xMap, yMap ); + drawColumn( painter, rect, sample ); + } + } +} + +/*! + Draw a histogram in Lines style() + + \param painter Painter + \param xMap Maps x-values into pixel coordinates. + \param yMap Maps y-values into pixel coordinates. + \param from Index of the first sample to be painted + \param to Index of the last sample to be painted. If to < 0 the + histogram will be painted to its last point. + + \sa setStyle(), style(), setPen() +*/ +void QwtPlotHistogram::drawLines( QPainter *painter, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + int from, int to ) const +{ + const bool doAlign = QwtPainter::roundingAlignment( painter ); + + painter->setPen( d_data->pen ); + painter->setBrush( Qt::NoBrush ); + + for ( int i = from; i <= to; i++ ) + { + const QwtIntervalSample sample = d_series->sample( i ); + if ( !sample.interval.isNull() ) + { + const QwtColumnRect rect = columnRect( sample, xMap, yMap ); + + QRectF r = rect.toRect(); + if ( doAlign ) + { + r.setLeft( qRound( r.left() ) ); + r.setRight( qRound( r.right() ) ); + r.setTop( qRound( r.top() ) ); + r.setBottom( qRound( r.bottom() ) ); + } + + switch ( rect.direction ) + { + case QwtColumnRect::LeftToRight: + { + QwtPainter::drawLine( painter, + r.topRight(), r.bottomRight() ); + break; + } + case QwtColumnRect::RightToLeft: + { + QwtPainter::drawLine( painter, + r.topLeft(), r.bottomLeft() ); + break; + } + case QwtColumnRect::TopToBottom: + { + QwtPainter::drawLine( painter, + r.bottomRight(), r.bottomLeft() ); + break; + } + case QwtColumnRect::BottomToTop: + { + QwtPainter::drawLine( painter, + r.topRight(), r.topLeft() ); + break; + } + } + } + } +} + +//! Internal, used by the Outline style. +void QwtPlotHistogram::flushPolygon( QPainter *painter, + double baseLine, QPolygonF &polygon ) const +{ + if ( polygon.size() == 0 ) + return; + + if ( orientation() == Qt::Horizontal ) + polygon += QPointF( baseLine, polygon.last().y() ); + else + polygon += QPointF( polygon.last().x(), baseLine ); + + if ( d_data->brush.style() != Qt::NoBrush ) + { + painter->setPen( Qt::NoPen ); + painter->setBrush( d_data->brush ); + + if ( orientation() == Qt::Horizontal ) + { + polygon += QPointF( polygon.last().x(), baseLine ); + polygon += QPointF( polygon.first().x(), baseLine ); + } + else + { + polygon += QPointF( baseLine, polygon.last().y() ); + polygon += QPointF( baseLine, polygon.first().y() ); + } + QwtPainter::drawPolygon( painter, polygon ); + polygon.resize( polygon.size() - 2 ); + } + if ( d_data->pen.style() != Qt::NoPen ) + { + painter->setBrush( Qt::NoBrush ); + painter->setPen( d_data->pen ); + QwtPainter::drawPolyline( painter, polygon ); + } + polygon.clear(); +} + +/*! + Calculate the area that is covered by a sample + + \param sample Sample + \param xMap Maps x-values into pixel coordinates. + \param yMap Maps y-values into pixel coordinates. + + \return Rectangle, that is covered by a sample +*/ +QwtColumnRect QwtPlotHistogram::columnRect( const QwtIntervalSample &sample, + const QwtScaleMap &xMap, const QwtScaleMap &yMap ) const +{ + QwtColumnRect rect; + + const QwtInterval &iv = sample.interval; + if ( !iv.isValid() ) + return rect; + + if ( orientation() == Qt::Horizontal ) + { + const double x0 = xMap.transform( baseline() ); + const double x = xMap.transform( sample.value ); + const double y1 = yMap.transform( iv.minValue() ); + const double y2 = yMap.transform( iv.maxValue() ); + + rect.hInterval.setInterval( x0, x ); + rect.vInterval.setInterval( y1, y2, iv.borderFlags() ); + rect.direction = ( x < x0 ) ? QwtColumnRect::RightToLeft : + QwtColumnRect::LeftToRight; + } + else + { + const double x1 = xMap.transform( iv.minValue() ); + const double x2 = xMap.transform( iv.maxValue() ); + const double y0 = yMap.transform( baseline() ); + const double y = yMap.transform( sample.value ); + + rect.hInterval.setInterval( x1, x2, iv.borderFlags() ); + rect.vInterval.setInterval( y0, y ); + rect.direction = ( y < y0 ) ? QwtColumnRect::BottomToTop : + QwtColumnRect::TopToBottom; + } + + return rect; +} + +/*! + Draw a column for a sample in Columns style(). + + When a symbol() has been set the symbol is used otherwise the + column is displayed as plain rectangle using pen() and brush(). + + \param painter Painter + \param rect Rectangle where to paint the column in paint device coordinates + \param sample Sample to be displayed + + \note In applications, where different intervals need to be displayed + in a different way ( f.e different colors or even using differnt symbols) + it is recommended to overload drawColumn(). +*/ +void QwtPlotHistogram::drawColumn( QPainter *painter, + const QwtColumnRect &rect, const QwtIntervalSample &sample ) const +{ + Q_UNUSED( sample ); + + if ( d_data->symbol && + ( d_data->symbol->style() != QwtColumnSymbol::NoStyle ) ) + { + d_data->symbol->draw( painter, rect ); + } + else + { + QRectF r = rect.toRect(); + if ( QwtPainter::roundingAlignment( painter ) ) + { + r.setLeft( qRound( r.left() ) ); + r.setRight( qRound( r.right() ) ); + r.setTop( qRound( r.top() ) ); + r.setBottom( qRound( r.bottom() ) ); + } + + QwtPainter::drawRect( painter, r ); + } +} + +/*! + Draw a plain rectangle without pen using the brush() as identifier + + \param painter Painter + \param rect Bounding rectangle for the identifier +*/ +void QwtPlotHistogram::drawLegendIdentifier( + QPainter *painter, const QRectF &rect ) const +{ + const double dim = qMin( rect.width(), rect.height() ); + + QSizeF size( dim, dim ); + + QRectF r( 0, 0, size.width(), size.height() ); + r.moveCenter( rect.center() ); + + painter->fillRect( r, d_data->brush ); +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_histogram.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_histogram.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_histogram.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_histogram.h 2011-04-15 10:48:47.000000000 +0000 @@ -0,0 +1,134 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_PLOT_HISTOGRAM_H +#define QWT_PLOT_HISTOGRAM_H + +#include "qwt_global.h" +#include "qwt_plot_seriesitem.h" +#include "qwt_column_symbol.h" +#include +#include + +class QwtIntervalData; +class QString; +class QPolygonF; + +/*! + \brief QwtPlotHistogram represents a series of samples, where an interval + is associated with a value ( \f$y = f([x1,x2])\f$ ). + + The representation depends on the style() and an optional symbol() + that is displayed for each interval. + + \note The term "histogram" is used in a different way in the areas of + digital image processing and statistics. Wikipedia introduces the + terms "image histogram" and "color histogram" to avoid confusions. + While "image histograms" can be displayed by a QwtPlotCurve there + is no applicable plot item for a "color histogram" yet. +*/ + +class QWT_EXPORT QwtPlotHistogram: public QwtPlotSeriesItem +{ +public: + /*! + Histogram styles. + The default style is QwtPlotHistogram::Columns. + + \sa setStyle(), style(), setSymbol(), symbol(), setBaseline() + */ + enum HistogramStyle + { + /*! + Draw an outline around the area, that is build by all intervals + using the pen() and fill it with the brush(). The outline style + requires, that the intervals are in increasing order and + not overlapping. + */ + Outline, + + /*! + Draw a column for each interval. When a symbol() has been set + the symbol is used otherwise the column is displayed as + plain rectangle using pen() and brush(). + */ + Columns, + + /*! + Draw a simple line using the pen() for each interval. + */ + Lines, + + /*! + Styles >= UserStyle are reserved for derived + classes that overload drawSeries() with + additional application specific ways to display a histogram. + */ + UserStyle = 100 + }; + + explicit QwtPlotHistogram( const QString &title = QString::null ); + explicit QwtPlotHistogram( const QwtText &title ); + virtual ~QwtPlotHistogram(); + + virtual int rtti() const; + + void setPen( const QPen & ); + const QPen &pen() const; + + void setBrush( const QBrush & ); + const QBrush &brush() const; + + void setSamples( const QVector & ); + + void setBaseline( double reference ); + double baseline() const; + + void setStyle( HistogramStyle style ); + HistogramStyle style() const; + + void setSymbol( const QwtColumnSymbol * ); + const QwtColumnSymbol *symbol() const; + + virtual void drawSeries( QPainter *p, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + const QRectF &canvasRect, int from, int to ) const; + + virtual QRectF boundingRect() const; + + virtual void drawLegendIdentifier( QPainter *, const QRectF & ) const; + +protected: + virtual QwtColumnRect columnRect( const QwtIntervalSample &, + const QwtScaleMap &, const QwtScaleMap & ) const; + + virtual void drawColumn( QPainter *, const QwtColumnRect &, + const QwtIntervalSample & ) const; + + void drawColumns( QPainter *, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + int from, int to ) const; + + void drawOutline( QPainter *, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + int from, int to ) const; + + void drawLines( QPainter *, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + int from, int to ) const; + +private: + void init(); + void flushPolygon( QPainter *, double baseLine, QPolygonF & ) const; + + class PrivateData; + PrivateData *d_data; +}; + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_intervalcurve.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_intervalcurve.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_intervalcurve.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_intervalcurve.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,547 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_plot_intervalcurve.h" +#include "qwt_interval_symbol.h" +#include "qwt_scale_map.h" +#include "qwt_clipper.h" +#include "qwt_painter.h" + +#include + +static inline bool qwtIsHSampleInside( const QwtIntervalSample &sample, + double xMin, double xMax, double yMin, double yMax ) +{ + const double y = sample.value; + const double x1 = sample.interval.minValue(); + const double x2 = sample.interval.maxValue(); + + const bool isOffScreen = ( y < yMin ) || ( y > yMax ) + || ( x1 < xMin && x2 < xMin ) || ( x1 > yMax && x2 > xMax ); + + return !isOffScreen; +} + +static inline bool qwtIsVSampleInside( const QwtIntervalSample &sample, + double xMin, double xMax, double yMin, double yMax ) +{ + const double x = sample.value; + const double y1 = sample.interval.minValue(); + const double y2 = sample.interval.maxValue(); + + const bool isOffScreen = ( x < xMin ) || ( x > xMax ) + || ( y1 < yMin && y2 < yMin ) || ( y1 > yMax && y2 > yMax ); + + return !isOffScreen; +} + +class QwtPlotIntervalCurve::PrivateData +{ +public: + PrivateData(): + style( Tube ), + symbol( NULL ), + pen( Qt::black ), + brush( Qt::white ) + { + paintAttributes = QwtPlotIntervalCurve::ClipPolygons; + paintAttributes |= QwtPlotIntervalCurve::ClipSymbol; + + pen.setCapStyle( Qt::FlatCap ); + } + + ~PrivateData() + { + delete symbol; + } + + CurveStyle style; + const QwtIntervalSymbol *symbol; + + QPen pen; + QBrush brush; + + QwtPlotIntervalCurve::PaintAttributes paintAttributes; +}; + +/*! + Constructor + \param title Title of the curve +*/ +QwtPlotIntervalCurve::QwtPlotIntervalCurve( const QwtText &title ): + QwtPlotSeriesItem( title ) +{ + init(); +} + +/*! + Constructor + \param title Title of the curve +*/ +QwtPlotIntervalCurve::QwtPlotIntervalCurve( const QString &title ): + QwtPlotSeriesItem( QwtText( title ) ) +{ + init(); +} + +//! Destructor +QwtPlotIntervalCurve::~QwtPlotIntervalCurve() +{ + delete d_data; +} + +//! Initialize internal members +void QwtPlotIntervalCurve::init() +{ + setItemAttribute( QwtPlotItem::Legend, true ); + setItemAttribute( QwtPlotItem::AutoScale, true ); + + d_data = new PrivateData; + d_series = new QwtIntervalSeriesData(); + + setZ( 19.0 ); +} + +//! \return QwtPlotItem::Rtti_PlotIntervalCurve +int QwtPlotIntervalCurve::rtti() const +{ + return QwtPlotIntervalCurve::Rtti_PlotIntervalCurve; +} + +/*! + Specify an attribute how to draw the curve + + \param attribute Paint attribute + \param on On/Off + \sa testPaintAttribute() +*/ +void QwtPlotIntervalCurve::setPaintAttribute( + PaintAttribute attribute, bool on ) +{ + if ( on ) + d_data->paintAttributes |= attribute; + else + d_data->paintAttributes &= ~attribute; +} + +/*! + \brief Return the current paint attributes + \sa PaintAttribute, setPaintAttribute() +*/ +bool QwtPlotIntervalCurve::testPaintAttribute( + PaintAttribute attribute ) const +{ + return ( d_data->paintAttributes & attribute ); +} + +/*! + Initialize data with an array of samples. + \param samples Vector of samples +*/ +void QwtPlotIntervalCurve::setSamples( + const QVector &samples ) +{ + delete d_series; + d_series = new QwtIntervalSeriesData( samples ); + itemChanged(); +} + +/*! + Set the curve's drawing style + + \param style Curve style + \sa CurveStyle, style() +*/ +void QwtPlotIntervalCurve::setStyle( CurveStyle style ) +{ + if ( style != d_data->style ) + { + d_data->style = style; + itemChanged(); + } +} + +/*! + \brief Return the current style + \sa setStyle() +*/ +QwtPlotIntervalCurve::CurveStyle QwtPlotIntervalCurve::style() const +{ + return d_data->style; +} + +/*! + Assign a symbol. + + \param symbol Symbol + \sa symbol() +*/ +void QwtPlotIntervalCurve::setSymbol( const QwtIntervalSymbol *symbol ) +{ + if ( symbol != d_data->symbol ) + { + delete d_data->symbol; + d_data->symbol = symbol; + itemChanged(); + } +} + +/*! + \return Current symbol or NULL, when no symbol has been assigned + \sa setSymbol() +*/ +const QwtIntervalSymbol *QwtPlotIntervalCurve::symbol() const +{ + return d_data->symbol; +} + +/*! + \brief Assign a pen + \param pen New pen + \sa pen(), brush() +*/ +void QwtPlotIntervalCurve::setPen( const QPen &pen ) +{ + if ( pen != d_data->pen ) + { + d_data->pen = pen; + itemChanged(); + } +} + +/*! + \brief Return the pen used to draw the lines + \sa setPen(), brush() +*/ +const QPen& QwtPlotIntervalCurve::pen() const +{ + return d_data->pen; +} + +/*! + Assign a brush. + + The brush is used to fill the area in Tube style(). + + \param brush Brush + \sa brush(), pen(), setStyle(), CurveStyle +*/ +void QwtPlotIntervalCurve::setBrush( const QBrush &brush ) +{ + if ( brush != d_data->brush ) + { + d_data->brush = brush; + itemChanged(); + } +} + +/*! + \return Brush used to fill the area in Tube style() + \sa setBrush(), setStyle(), CurveStyle +*/ +const QBrush& QwtPlotIntervalCurve::brush() const +{ + return d_data->brush; +} + +/*! + \return Bounding rectangle of all samples. + For an empty series the rectangle is invalid. +*/ +QRectF QwtPlotIntervalCurve::boundingRect() const +{ + QRectF rect = QwtPlotSeriesItem::boundingRect(); + if ( rect.isValid() && orientation() == Qt::Vertical ) + rect.setRect( rect.y(), rect.x(), rect.height(), rect.width() ); + + return rect; +} + +/*! + Draw a subset of the samples + + \param painter Painter + \param xMap Maps x-values into pixel coordinates. + \param yMap Maps y-values into pixel coordinates. + \param canvasRect Contents rect of the canvas + \param from Index of the first sample to be painted + \param to Index of the last sample to be painted. If to < 0 the + series will be painted to its last sample. + + \sa drawTube(), drawSymbols() +*/ +void QwtPlotIntervalCurve::drawSeries( QPainter *painter, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + const QRectF &canvasRect, int from, int to ) const +{ + if ( to < 0 ) + to = dataSize() - 1; + + if ( from < 0 ) + from = 0; + + if ( from > to ) + return; + + switch ( d_data->style ) + { + case Tube: + drawTube( painter, xMap, yMap, canvasRect, from, to ); + break; + + case NoCurve: + default: + break; + } + + if ( d_data->symbol && + ( d_data->symbol->style() != QwtIntervalSymbol::NoSymbol ) ) + { + drawSymbols( painter, *d_data->symbol, + xMap, yMap, canvasRect, from, to ); + } +} + +/*! + Draw a tube + + Builds 2 curves from the upper and lower limits of the intervals + and draws them with the pen(). The area between the curves is + filled with the brush(). + + \param painter Painter + \param xMap Maps x-values into pixel coordinates. + \param yMap Maps y-values into pixel coordinates. + \param canvasRect Contents rect of the canvas + \param from Index of the first sample to be painted + \param to Index of the last sample to be painted. If to < 0 the + series will be painted to its last sample. + + \sa drawSeries(), drawSymbols() +*/ +void QwtPlotIntervalCurve::drawTube( QPainter *painter, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + const QRectF &canvasRect, int from, int to ) const +{ + const bool doAlign = QwtPainter::roundingAlignment( painter ); + + painter->save(); + + const size_t size = to - from + 1; + QPolygonF polygon( 2 * size ); + QPointF *points = polygon.data(); + + for ( uint i = 0; i < size; i++ ) + { + QPointF &minValue = points[i]; + QPointF &maxValue = points[2 * size - 1 - i]; + + const QwtIntervalSample intervalSample = sample( from + i ); + if ( orientation() == Qt::Vertical ) + { + double x = xMap.transform( intervalSample.value ); + double y1 = yMap.transform( intervalSample.interval.minValue() ); + double y2 = yMap.transform( intervalSample.interval.maxValue() ); + if ( doAlign ) + { + x = qRound( x ); + y1 = qRound( y1 ); + y2 = qRound( y2 ); + } + + minValue.rx() = x; + minValue.ry() = y1; + maxValue.rx() = x; + maxValue.ry() = y2; + } + else + { + double y = yMap.transform( intervalSample.value ); + double x1 = xMap.transform( intervalSample.interval.minValue() ); + double x2 = xMap.transform( intervalSample.interval.maxValue() ); + if ( doAlign ) + { + y = qRound( y ); + x1 = qRound( x1 ); + x2 = qRound( x2 ); + } + + minValue.rx() = x1; + minValue.ry() = y; + maxValue.rx() = x2; + maxValue.ry() = y; + } + } + + if ( d_data->brush.style() != Qt::NoBrush ) + { + painter->setPen( QPen( Qt::NoPen ) ); + painter->setBrush( d_data->brush ); + + if ( d_data->paintAttributes & ClipPolygons ) + { + const qreal m = 1.0; + const QPolygonF p = QwtClipper::clipPolygonF( + canvasRect.adjusted(-m, -m, m, m), polygon, true ); + + QwtPainter::drawPolygon( painter, p ); + } + else + { + QwtPainter::drawPolygon( painter, polygon ); + } + } + + if ( d_data->pen.style() != Qt::NoPen ) + { + painter->setPen( d_data->pen ); + painter->setBrush( Qt::NoBrush ); + + if ( d_data->paintAttributes & ClipPolygons ) + { + qreal pw = qMax( qreal( 1.0 ), painter->pen().widthF()); + const QRectF clipRect = canvasRect.adjusted(-pw, -pw, pw, pw); + + QPolygonF p; + + p.resize( size ); + qMemCopy( p.data(), points, size * sizeof( QPointF ) ); + p = QwtClipper::clipPolygonF( canvasRect, p ); + QwtPainter::drawPolyline( painter, p ); + + p.resize( size ); + qMemCopy( p.data(), points + size, size * sizeof( QPointF ) ); + p = QwtClipper::clipPolygonF( canvasRect, p ); + QwtPainter::drawPolyline( painter, p ); + } + else + { + QwtPainter::drawPolyline( painter, points, size ); + QwtPainter::drawPolyline( painter, points + size, size ); + } + } + + painter->restore(); +} + +/*! + Draw symbols for a subset of the samples + + \param painter Painter + \param symbol Interval symbol + \param xMap x map + \param yMap y map + \param canvasRect Contents rect of the canvas + \param from Index of the first sample to be painted + \param to Index of the last sample to be painted + + \sa setSymbol(), drawSeries(), drawTube() +*/ +void QwtPlotIntervalCurve::drawSymbols( + QPainter *painter, const QwtIntervalSymbol &symbol, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + const QRectF &canvasRect, int from, int to ) const +{ + painter->save(); + + QPen pen = symbol.pen(); + pen.setCapStyle( Qt::FlatCap ); + + painter->setPen( pen ); + painter->setBrush( symbol.brush() ); + + const QRectF &tr = QwtScaleMap::invTransform( xMap, yMap, canvasRect); + + const double xMin = tr.left(); + const double xMax = tr.right(); + const double yMin = tr.top(); + const double yMax = tr.bottom(); + + const bool doClip = d_data->paintAttributes & ClipPolygons; + + for ( int i = from; i <= to; i++ ) + { + const QwtIntervalSample s = sample( i ); + + if ( orientation() == Qt::Vertical ) + { + if ( !doClip || qwtIsVSampleInside( s, xMin, xMax, yMin, yMax ) ) + { + const double x = xMap.transform( s.value ); + const double y1 = yMap.transform( s.interval.minValue() ); + const double y2 = yMap.transform( s.interval.maxValue() ); + + symbol.draw( painter, orientation(), + QPointF( x, y1 ), QPointF( x, y2 ) ); + } + } + else + { + if ( !doClip || qwtIsHSampleInside( s, xMin, xMax, yMin, yMax ) ) + { + const double y = yMap.transform( s.value ); + const double x1 = xMap.transform( s.interval.minValue() ); + const double x2 = xMap.transform( s.interval.maxValue() ); + + symbol.draw( painter, orientation(), + QPointF( x1, y ), QPointF( x2, y ) ); + } + } + } + + painter->restore(); +} + +/*! + In case of Tibe stale() a plain rectangle is painted without a pen filled + the brush(). If a symbol is assigned it is painted cebtered into rect. + + \param painter Painter + \param rect Bounding rectangle for the identifier +*/ + +void QwtPlotIntervalCurve::drawLegendIdentifier( + QPainter *painter, const QRectF &rect ) const +{ + const double dim = qMin( rect.width(), rect.height() ); + + QSizeF size( dim, dim ); + + QRectF r( 0, 0, size.width(), size.height() ); + r.moveCenter( rect.center() ); + + if ( d_data->style == Tube ) + { + painter->fillRect( r, d_data->brush ); + } + + if ( d_data->symbol && + ( d_data->symbol->style() != QwtIntervalSymbol::NoSymbol ) ) + { + QPen pen = d_data->symbol->pen(); + pen.setWidthF( pen.widthF() ); + pen.setCapStyle( Qt::FlatCap ); + + painter->setPen( pen ); + painter->setBrush( d_data->symbol->brush() ); + + if ( orientation() == Qt::Vertical ) + { + d_data->symbol->draw( painter, orientation(), + QPointF( r.center().x(), r.top() ), + QPointF( r.center().x(), r.bottom() - 1 ) ); + } + else + { + d_data->symbol->draw( painter, orientation(), + QPointF( r.left(), r.center().y() ), + QPointF( r.right() - 1, r.center().y() ) ); + } + } +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_intervalcurve.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_intervalcurve.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_intervalcurve.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_intervalcurve.h 2011-04-15 10:48:46.000000000 +0000 @@ -0,0 +1,130 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_PLOT_INTERVAL_CURVE_H +#define QWT_PLOT_INTERVAL_CURVE_H + +#include "qwt_global.h" +#include "qwt_plot_seriesitem.h" +#include "qwt_series_data.h" + +class QwtIntervalSymbol; + +/*! + \brief QwtPlotIntervalCurve represents a series of samples, where each value + is associated with an interval ( \f$[y1,y2] = f(x)\f$ ). + + The representation depends on the style() and an optional symbol() + that is displayed for each interval. QwtPlotIntervalCurve might be used + to disply error bars or the area between 2 curves. +*/ + +class QWT_EXPORT QwtPlotIntervalCurve: public QwtPlotSeriesItem +{ +public: + /*! + \brief Curve styles. + The default setting is QwtPlotIntervalCurve::Tube. + + \sa setStyle(), style() + */ + + enum CurveStyle + { + /*! + Don't draw a curve. Note: This doesn't affect the symbols. + */ + NoCurve, + + /*! + Build 2 curves from the upper and lower limits of the intervals + and draw them with the pen(). The area between the curves is + filled with the brush(). + */ + Tube, + + /*! + Styles >= QwtPlotIntervalCurve::UserCurve are reserved for derived + classes that overload drawSeries() with + additional application specific curve types. + */ + UserCurve = 100 + }; + + /*! + Attributes to modify the drawing algorithm. + \sa setPaintAttribute(), testPaintAttribute() + */ + enum PaintAttribute + { + /*! + Clip polygons before painting them. In situations, where points + are far outside the visible area (f.e when zooming deep) this + might be a substantial improvement for the painting performance. + */ + ClipPolygons = 0x01, + + //! Check if a symbol is on the plot canvas before painting it. + ClipSymbol = 0x02 + }; + + //! Paint attributes + typedef QFlags PaintAttributes; + + explicit QwtPlotIntervalCurve( const QString &title = QString::null ); + explicit QwtPlotIntervalCurve( const QwtText &title ); + + virtual ~QwtPlotIntervalCurve(); + + virtual int rtti() const; + + void setPaintAttribute( PaintAttribute, bool on = true ); + bool testPaintAttribute( PaintAttribute ) const; + + void setSamples( const QVector & ); + + void setPen( const QPen & ); + const QPen &pen() const; + + void setBrush( const QBrush & ); + const QBrush &brush() const; + + void setStyle( CurveStyle style ); + CurveStyle style() const; + + void setSymbol( const QwtIntervalSymbol * ); + const QwtIntervalSymbol *symbol() const; + + virtual void drawSeries( QPainter *p, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + const QRectF &canvasRect, int from, int to ) const; + + virtual QRectF boundingRect() const; + virtual void drawLegendIdentifier( QPainter *, const QRectF & ) const; + +protected: + + void init(); + + virtual void drawTube( QPainter *, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + const QRectF &canvasRect, int from, int to ) const; + + virtual void drawSymbols( QPainter *, const QwtIntervalSymbol &, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + const QRectF &canvasRect, int from, int to ) const; + +private: + class PrivateData; + PrivateData *d_data; +}; + +Q_DECLARE_OPERATORS_FOR_FLAGS( QwtPlotIntervalCurve::PaintAttributes ); + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_item.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_item.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_item.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_item.cpp 2011-04-15 10:48:49.000000000 +0000 @@ -0,0 +1,544 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_plot_item.h" +#include "qwt_text.h" +#include "qwt_plot.h" +#include "qwt_legend.h" +#include "qwt_legend_item.h" +#include "qwt_scale_div.h" +#include + +class QwtPlotItem::PrivateData +{ +public: + PrivateData(): + plot( NULL ), + isVisible( true ), + attributes( 0 ), + renderHints( 0 ), + z( 0.0 ), + xAxis( QwtPlot::xBottom ), + yAxis( QwtPlot::yLeft ) + { + } + + mutable QwtPlot *plot; + + bool isVisible; + QwtPlotItem::ItemAttributes attributes; + QwtPlotItem::RenderHints renderHints; + double z; + + int xAxis; + int yAxis; + + QwtText title; +}; + +/*! + Constructor + \param title Title of the item +*/ +QwtPlotItem::QwtPlotItem( const QwtText &title ) +{ + d_data = new PrivateData; + d_data->title = title; +} + +//! Destroy the QwtPlotItem +QwtPlotItem::~QwtPlotItem() +{ + attach( NULL ); + delete d_data; +} + +/*! + \brief Attach the item to a plot. + + This method will attach a QwtPlotItem to the QwtPlot argument. It will first + detach the QwtPlotItem from any plot from a previous call to attach (if + necessary). If a NULL argument is passed, it will detach from any QwtPlot it + was attached to. + + \param plot Plot widget + \sa detach() +*/ +void QwtPlotItem::attach( QwtPlot *plot ) +{ + if ( plot == d_data->plot ) + return; + + // remove the item from the previous plot + + if ( d_data->plot ) + { + if ( d_data->plot->legend() ) + d_data->plot->legend()->remove( this ); + + d_data->plot->attachItem( this, false ); + + if ( d_data->plot->autoReplot() ) + d_data->plot->update(); + } + + d_data->plot = plot; + + if ( d_data->plot ) + { + // insert the item into the current plot + + d_data->plot->attachItem( this, true ); + itemChanged(); + } +} + +/*! + \brief This method detaches a QwtPlotItem from any + QwtPlot it has been associated with. + + detach() is equivalent to calling attach( NULL ) + \sa attach() +*/ +void QwtPlotItem::detach() +{ + attach( NULL ); +} + +/*! + Return rtti for the specific class represented. QwtPlotItem is simply + a virtual interface class, and base classes will implement this method + with specific rtti values so a user can differentiate them. + + The rtti value is useful for environments, where the + runtime type information is disabled and it is not possible + to do a dynamic_cast<...>. + + \return rtti value + \sa RttiValues +*/ +int QwtPlotItem::rtti() const +{ + return Rtti_PlotItem; +} + +//! Return attached plot +QwtPlot *QwtPlotItem::plot() const +{ + return d_data->plot; +} + +/*! + Plot items are painted in increasing z-order. + + \return setZ(), QwtPlotDict::itemList() +*/ +double QwtPlotItem::z() const +{ + return d_data->z; +} + +/*! + \brief Set the z value + + Plot items are painted in increasing z-order. + + \param z Z-value + \sa z(), QwtPlotDict::itemList() +*/ +void QwtPlotItem::setZ( double z ) +{ + if ( d_data->z != z ) + { + if ( d_data->plot ) // update the z order + d_data->plot->attachItem( this, false ); + + d_data->z = z; + + if ( d_data->plot ) + d_data->plot->attachItem( this, true ); + + itemChanged(); + } +} + +/*! + Set a new title + + \param title Title + \sa title() +*/ +void QwtPlotItem::setTitle( const QString &title ) +{ + setTitle( QwtText( title ) ); +} + +/*! + Set a new title + + \param title Title + \sa title() +*/ +void QwtPlotItem::setTitle( const QwtText &title ) +{ + if ( d_data->title != title ) + { + d_data->title = title; + itemChanged(); + } +} + +/*! + \return Title of the item + \sa setTitle() +*/ +const QwtText &QwtPlotItem::title() const +{ + return d_data->title; +} + +/*! + Toggle an item attribute + + \param attribute Attribute type + \param on true/false + + \sa testItemAttribute(), ItemAttribute +*/ +void QwtPlotItem::setItemAttribute( ItemAttribute attribute, bool on ) +{ + if ( bool( d_data->attributes & attribute ) != on ) + { + if ( on ) + d_data->attributes |= attribute; + else + d_data->attributes &= ~attribute; + + itemChanged(); + } +} + +/*! + Test an item attribute + + \param attribute Attribute type + \return true/false + \sa setItemAttribute(), ItemAttribute +*/ +bool QwtPlotItem::testItemAttribute( ItemAttribute attribute ) const +{ + return ( d_data->attributes & attribute ); +} + +/*! + Toggle an render hint + + \param hint Render hint + \param on true/false + + \sa testRenderHint(), RenderHint +*/ +void QwtPlotItem::setRenderHint( RenderHint hint, bool on ) +{ + if ( ( ( d_data->renderHints & hint ) != 0 ) != on ) + { + if ( on ) + d_data->renderHints |= hint; + else + d_data->renderHints &= ~hint; + + itemChanged(); + } +} + +/*! + Test a render hint + + \param hint Render hint + \return true/false + \sa setRenderHint(), RenderHint +*/ +bool QwtPlotItem::testRenderHint( RenderHint hint ) const +{ + return ( d_data->renderHints & hint ); +} + +//! Show the item +void QwtPlotItem::show() +{ + setVisible( true ); +} + +//! Hide the item +void QwtPlotItem::hide() +{ + setVisible( false ); +} + +/*! + Show/Hide the item + + \param on Show if true, otherwise hide + \sa isVisible(), show(), hide() +*/ +void QwtPlotItem::setVisible( bool on ) +{ + if ( on != d_data->isVisible ) + { + d_data->isVisible = on; + itemChanged(); + } +} + +/*! + \return true if visible + \sa setVisible(), show(), hide() +*/ +bool QwtPlotItem::isVisible() const +{ + return d_data->isVisible; +} + +/*! + Update the legend and call QwtPlot::autoRefresh for the + parent plot. + + \sa updateLegend() +*/ +void QwtPlotItem::itemChanged() +{ + if ( d_data->plot ) + { + if ( d_data->plot->legend() ) + updateLegend( d_data->plot->legend() ); + + d_data->plot->autoRefresh(); + } +} + +/*! + Set X and Y axis + + The item will painted according to the coordinates its Axes. + + \param xAxis X Axis + \param yAxis Y Axis + + \sa setXAxis(), setYAxis(), xAxis(), yAxis() +*/ +void QwtPlotItem::setAxes( int xAxis, int yAxis ) +{ + if ( xAxis == QwtPlot::xBottom || xAxis == QwtPlot::xTop ) + d_data->xAxis = xAxis; + + if ( yAxis == QwtPlot::yLeft || yAxis == QwtPlot::yRight ) + d_data->yAxis = yAxis; + + itemChanged(); +} + +/*! + Set the X axis + + The item will painted according to the coordinates its Axes. + + \param axis X Axis + \sa setAxes(), setYAxis(), xAxis() +*/ +void QwtPlotItem::setXAxis( int axis ) +{ + if ( axis == QwtPlot::xBottom || axis == QwtPlot::xTop ) + { + d_data->xAxis = axis; + itemChanged(); + } +} + +/*! + Set the Y axis + + The item will painted according to the coordinates its Axes. + + \param axis Y Axis + \sa setAxes(), setXAxis(), yAxis() +*/ +void QwtPlotItem::setYAxis( int axis ) +{ + if ( axis == QwtPlot::yLeft || axis == QwtPlot::yRight ) + { + d_data->yAxis = axis; + itemChanged(); + } +} + +//! Return xAxis +int QwtPlotItem::xAxis() const +{ + return d_data->xAxis; +} + +//! Return yAxis +int QwtPlotItem::yAxis() const +{ + return d_data->yAxis; +} + +/*! + \return An invalid bounding rect: QRectF(1.0, 1.0, -2.0, -2.0) +*/ +QRectF QwtPlotItem::boundingRect() const +{ + return QRectF( 1.0, 1.0, -2.0, -2.0 ); // invalid +} + +/*! + \brief Allocate the widget that represents the item on the legend + + The default implementation returns a QwtLegendItem(), but an item + could be represented by any type of widget, + by overloading legendItem() and updateLegend(). + + \return QwtLegendItem() + \sa updateLegend() QwtLegend() +*/ +QWidget *QwtPlotItem::legendItem() const +{ + QwtLegendItem *item = new QwtLegendItem; + if ( d_data->plot ) + { + QObject::connect( item, SIGNAL( clicked() ), + d_data->plot, SLOT( legendItemClicked() ) ); + QObject::connect( item, SIGNAL( checked( bool ) ), + d_data->plot, SLOT( legendItemChecked( bool ) ) ); + } + return item; +} + +/*! + \brief Update the widget that represents the item on the legend + + updateLegend() is called from itemChanged() to adopt the widget + representing the item on the legend to its new configuration. + + The default implementation updates a QwtLegendItem(), + but an item could be represented by any type of widget, + by overloading legendItem() and updateLegend(). + + \param legend Legend + + \sa legendItem(), itemChanged(), QwtLegend() +*/ +void QwtPlotItem::updateLegend( QwtLegend *legend ) const +{ + if ( legend == NULL ) + return; + + QWidget *lgdItem = legend->find( this ); + if ( testItemAttribute( QwtPlotItem::Legend ) ) + { + if ( lgdItem == NULL ) + { + lgdItem = legendItem(); + if ( lgdItem ) + legend->insert( this, lgdItem ); + } + if ( lgdItem && lgdItem->inherits( "QwtLegendItem" ) ) + { + QwtLegendItem* label = ( QwtLegendItem* )lgdItem; + if ( label ) + { + // paint the identifier + const QSize sz = label->identifierSize(); + + QPixmap identifier( sz.width(), sz.height() ); + identifier.fill( Qt::transparent ); + + QPainter painter( &identifier ); + painter.setRenderHint( QPainter::Antialiasing, + testRenderHint( QwtPlotItem::RenderAntialiased ) ); + drawLegendIdentifier( &painter, + QRect( 0, 0, sz.width(), sz.height() ) ); + painter.end(); + + const bool doUpdate = label->updatesEnabled(); + if ( doUpdate ) + label->setUpdatesEnabled( false ); + + label->setText( title() ); + label->setIdentifier( identifier ); + label->setItemMode( legend->itemMode() ); + + if ( doUpdate ) + label->setUpdatesEnabled( true ); + + label->update(); + } + } + } + else + { + if ( lgdItem ) + { + lgdItem->hide(); + lgdItem->deleteLater(); + } + } +} + +/*! + \brief Update the item to changes of the axes scale division + + Update the item, when the axes of plot have changed. + The default implementation does nothing, but items that depend + on the scale division (like QwtPlotGrid()) have to reimplement + updateScaleDiv() + + \param xScaleDiv Scale division of the x-axis + \param yScaleDiv Scale division of the y-axis + + \sa QwtPlot::updateAxes() +*/ +void QwtPlotItem::updateScaleDiv( const QwtScaleDiv &xScaleDiv, + const QwtScaleDiv &yScaleDiv ) +{ + Q_UNUSED( xScaleDiv ); + Q_UNUSED( yScaleDiv ); +} + +/*! + \brief Calculate the bounding scale rect of 2 maps + + \param xMap X map + \param yMap X map + + \return Bounding scale rect of the scale maps, normalized +*/ +QRectF QwtPlotItem::scaleRect( const QwtScaleMap &xMap, + const QwtScaleMap &yMap ) const +{ + return QRectF( xMap.s1(), yMap.s1(), + xMap.sDist(), yMap.sDist() ); +} + +/*! + \brief Calculate the bounding paint rect of 2 maps + + \param xMap X map + \param yMap X map + + \return Bounding paint rect of the scale maps, normalized +*/ +QRectF QwtPlotItem::paintRect( const QwtScaleMap &xMap, + const QwtScaleMap &yMap ) const +{ + const QRectF rect( xMap.p1(), yMap.p1(), + xMap.pDist(), yMap.pDist() ); + + return rect; +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_item.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_item.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_item.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_item.h 2011-04-15 10:48:46.000000000 +0000 @@ -0,0 +1,192 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_PLOT_ITEM_H +#define QWT_PLOT_ITEM_H + +#include "qwt_global.h" +#include "qwt_legend_itemmanager.h" +#include "qwt_text.h" +#include + +class QString; +class QPainter; +class QWidget; +class QwtPlot; +class QwtLegend; +class QwtScaleMap; +class QwtScaleDiv; + +/*! + \brief Base class for items on the plot canvas + + A plot item is "something", that can be painted on the plot canvas, + or only affects the scales of the plot widget. They can be categorized as: + + - Representator\n + A "Representator" is an item that represents some sort of data + on the plot canvas. The different representator classes are organized + according to the characteristics of the data: + - QwtPlotMarker + Represents a point or a horizontal/vertical coordinate + - QwtPlotCurve + Represents a series of points + - QwtPlotSpectrogram ( QwtPlotRasterItem ) + Represents raster data + - ... + + - Decorators\n + A "Decorator" is an item, that displays additional information, that + is not related to any data: + - QwtPlotGrid + - QwtPlotScaleItem + - QwtPlotSvgItem + - ... + + Depending on the QwtPlotItem::ItemAttribute flags, an item is included + into autoscaling or has an entry on the legnd. + + Before misusing the existing item classes it might be better to + implement a new type of plot item + ( don't implement a watermark as spectrogram ). + Deriving a new type of QwtPlotItem primarily means to implement + the YourPlotItem::draw() method. + + \sa The cpuplot example shows the implementation of additional plot items. +*/ + +class QWT_EXPORT QwtPlotItem: public QwtLegendItemManager +{ +public: + /*! + \brief Runtime type information + + RttiValues is used to cast plot items, without + having to enable runtime type information of the compiler. + */ + enum RttiValues + { + Rtti_PlotItem = 0, + + Rtti_PlotGrid, + Rtti_PlotScale, + Rtti_PlotMarker, + Rtti_PlotCurve, + Rtti_PlotSpectroCurve, + Rtti_PlotIntervalCurve, + Rtti_PlotHistogram, + Rtti_PlotSpectrogram, + Rtti_PlotSVG, + + Rtti_PlotUserItem = 1000 + }; + + /*! + Plot Item Attributes + \sa setItemAttribute(), testItemAttribute() + */ + enum ItemAttribute + { + //! The item is represented on the legend. + Legend = 0x01, + + /*! + The boundingRect() of the item is included in the + autoscaling calculation. + */ + AutoScale = 0x02 + }; + + //! Plot Item Attributes + typedef QFlags ItemAttributes; + + //! Render hints + enum RenderHint + { + //! Enable antialiasing + RenderAntialiased = 1 + }; + + //! Render hints + typedef QFlags RenderHints; + + explicit QwtPlotItem( const QwtText &title = QwtText() ); + virtual ~QwtPlotItem(); + + void attach( QwtPlot *plot ); + void detach(); + + QwtPlot *plot() const; + + void setTitle( const QString &title ); + void setTitle( const QwtText &title ); + const QwtText &title() const; + + virtual int rtti() const; + + void setItemAttribute( ItemAttribute, bool on = true ); + bool testItemAttribute( ItemAttribute ) const; + + void setRenderHint( RenderHint, bool on = true ); + bool testRenderHint( RenderHint ) const; + + double z() const; + void setZ( double z ); + + void show(); + void hide(); + virtual void setVisible( bool ); + bool isVisible () const; + + void setAxes( int xAxis, int yAxis ); + + void setXAxis( int axis ); + int xAxis() const; + + void setYAxis( int axis ); + int yAxis() const; + + virtual void itemChanged(); + + /*! + \brief Draw the item + + \param painter Painter + \param xMap Maps x-values into pixel coordinates. + \param yMap Maps y-values into pixel coordinates. + \param canvasRect Contents rect of the canvas in painter coordinates + */ + virtual void draw( QPainter *painter, + const QwtScaleMap &xMap, const QwtScaleMap &yMap, + const QRectF &canvasRect ) const = 0; + + virtual QRectF boundingRect() const; + + virtual void updateLegend( QwtLegend * ) const; + virtual void updateScaleDiv( + const QwtScaleDiv&, const QwtScaleDiv& ); + + virtual QWidget *legendItem() const; + + QRectF scaleRect( const QwtScaleMap &, const QwtScaleMap & ) const; + QRectF paintRect( const QwtScaleMap &, const QwtScaleMap & ) const; + +private: + // Disabled copy constructor and operator= + QwtPlotItem( const QwtPlotItem & ); + QwtPlotItem &operator=( const QwtPlotItem & ); + + class PrivateData; + PrivateData *d_data; +}; + +Q_DECLARE_OPERATORS_FOR_FLAGS( QwtPlotItem::ItemAttributes ); +Q_DECLARE_OPERATORS_FOR_FLAGS( QwtPlotItem::RenderHints ); + +#endif diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_layout.cpp phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_layout.cpp --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_layout.cpp 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_layout.cpp 2011-04-15 10:48:50.000000000 +0000 @@ -0,0 +1,1227 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#include "qwt_plot_layout.h" +#include "qwt_text.h" +#include "qwt_text_label.h" +#include "qwt_plot_canvas.h" +#include "qwt_scale_widget.h" +#include "qwt_legend.h" +#include +#include + +class QwtPlotLayout::LayoutData +{ +public: + void init( const QwtPlot *, const QRectF &rect ); + + struct t_legendData + { + int frameWidth; + int vScrollBarWidth; + int hScrollBarHeight; + QSize hint; + } legend; + + struct t_titleData + { + QwtText text; + int frameWidth; + } title; + + struct t_scaleData + { + bool isEnabled; + const QwtScaleWidget *scaleWidget; + QFont scaleFont; + int start; + int end; + int baseLineOffset; + int tickOffset; + int dimWithoutTitle; + } scale[QwtPlot::axisCnt]; + + struct t_canvasData + { + int frameWidth; + } canvas; +}; + +/* + Extract all layout relevant data from the plot components +*/ + +void QwtPlotLayout::LayoutData::init( const QwtPlot *plot, const QRectF &rect ) +{ + // legend + + if ( plot->plotLayout()->legendPosition() != QwtPlot::ExternalLegend + && plot->legend() ) + { + legend.frameWidth = plot->legend()->frameWidth(); + legend.vScrollBarWidth = + plot->legend()->verticalScrollBar()->sizeHint().width(); + legend.hScrollBarHeight = + plot->legend()->horizontalScrollBar()->sizeHint().height(); + + const QSize hint = plot->legend()->sizeHint(); + + int w = qMin( hint.width(), ( int )rect.width() ); + int h = plot->legend()->heightForWidth( w ); + if ( h == 0 ) + h = hint.height(); + + if ( h > rect.height() ) + w += legend.vScrollBarWidth; + + legend.hint = QSize( w, h ); + } + + // title + + title.frameWidth = 0; + title.text = QwtText(); + + if ( plot->titleLabel() ) + { + const QwtTextLabel *label = plot->titleLabel(); + title.text = label->text(); + if ( !( title.text.testPaintAttribute( QwtText::PaintUsingTextFont ) ) ) + title.text.setFont( label->font() ); + + title.frameWidth = plot->titleLabel()->frameWidth(); + } + + // scales + + for ( int axis = 0; axis < QwtPlot::axisCnt; axis++ ) + { + if ( plot->axisEnabled( axis ) ) + { + const QwtScaleWidget *scaleWidget = plot->axisWidget( axis ); + + scale[axis].isEnabled = true; + + scale[axis].scaleWidget = scaleWidget; + + scale[axis].scaleFont = scaleWidget->font(); + + scale[axis].start = scaleWidget->startBorderDist(); + scale[axis].end = scaleWidget->endBorderDist(); + + scale[axis].baseLineOffset = scaleWidget->margin(); + scale[axis].tickOffset = scaleWidget->margin(); + if ( scaleWidget->scaleDraw()->hasComponent( + QwtAbstractScaleDraw::Ticks ) ) + { + scale[axis].tickOffset += + ( int )scaleWidget->scaleDraw()->maxTickLength(); + } + + scale[axis].dimWithoutTitle = scaleWidget->dimForLength( + QWIDGETSIZE_MAX, scale[axis].scaleFont ); + + if ( !scaleWidget->title().isEmpty() ) + { + scale[axis].dimWithoutTitle -= + scaleWidget->titleHeightForWidth( QWIDGETSIZE_MAX ); + } + } + else + { + scale[axis].isEnabled = false; + scale[axis].start = 0; + scale[axis].end = 0; + scale[axis].baseLineOffset = 0; + scale[axis].tickOffset = 0; + scale[axis].dimWithoutTitle = 0; + } + } + + // canvas + + canvas.frameWidth = plot->canvas()->frameWidth(); +} + +class QwtPlotLayout::PrivateData +{ +public: + PrivateData(): + spacing( 5 ), + alignCanvasToScales( false ) + { + } + + QRectF titleRect; + QRectF legendRect; + QRectF scaleRect[QwtPlot::axisCnt]; + QRectF canvasRect; + + QwtPlotLayout::LayoutData layoutData; + + QwtPlot::LegendPosition legendPos; + double legendRatio; + unsigned int spacing; + unsigned int canvasMargin[QwtPlot::axisCnt]; + bool alignCanvasToScales; +}; + +/*! + \brief Constructor + */ + +QwtPlotLayout::QwtPlotLayout() +{ + d_data = new PrivateData; + + setLegendPosition( QwtPlot::BottomLegend ); + setCanvasMargin( 4 ); + + invalidate(); +} + +//! Destructor +QwtPlotLayout::~QwtPlotLayout() +{ + delete d_data; +} + +/*! + Change a margin of the canvas. The margin is the space + above/below the scale ticks. A negative margin will + be set to -1, excluding the borders of the scales. + + \param margin New margin + \param axis One of QwtPlot::Axis. Specifies where the position of the margin. + -1 means margin at all borders. + \sa canvasMargin() + + \warning The margin will have no effect when alignCanvasToScales is true +*/ + +void QwtPlotLayout::setCanvasMargin( int margin, int axis ) +{ + if ( margin < -1 ) + margin = -1; + + if ( axis == -1 ) + { + for ( axis = 0; axis < QwtPlot::axisCnt; axis++ ) + d_data->canvasMargin[axis] = margin; + } + else if ( axis >= 0 && axis < QwtPlot::axisCnt ) + d_data->canvasMargin[axis] = margin; +} + +/*! + \return Margin around the scale tick borders + \sa setCanvasMargin() +*/ +int QwtPlotLayout::canvasMargin( int axis ) const +{ + if ( axis < 0 || axis >= QwtPlot::axisCnt ) + return 0; + + return d_data->canvasMargin[axis]; +} + +/*! + Change the align-canvas-to-axis-scales setting. The canvas may: + - extend beyond the axis scale ends to maximize its size, + - align with the axis scale ends to control its size. + + \param alignCanvasToScales New align-canvas-to-axis-scales setting + + \sa setCanvasMargin() + \note In this context the term 'scale' means the backbone of a scale. + \warning In case of alignCanvasToScales == true canvasMargin will have + no effect +*/ +void QwtPlotLayout::setAlignCanvasToScales( bool alignCanvasToScales ) +{ + d_data->alignCanvasToScales = alignCanvasToScales; +} + +/*! + Return the align-canvas-to-axis-scales setting. The canvas may: + - extend beyond the axis scale ends to maximize its size + - align with the axis scale ends to control its size. + + \return align-canvas-to-axis-scales setting + \sa setAlignCanvasToScales, setCanvasMargin() + \note In this context the term 'scale' means the backbone of a scale. +*/ +bool QwtPlotLayout::alignCanvasToScales() const +{ + return d_data->alignCanvasToScales; +} + +/*! + Change the spacing of the plot. The spacing is the distance + between the plot components. + + \param spacing new spacing + \sa setMargin(), spacing() +*/ +void QwtPlotLayout::setSpacing( int spacing ) +{ + d_data->spacing = qMax( 0, spacing ); +} + +/*! + \return spacing + \sa margin(), setSpacing() +*/ +int QwtPlotLayout::spacing() const +{ + return d_data->spacing; +} + +/*! + \brief Specify the position of the legend + \param pos The legend's position. + \param ratio Ratio between legend and the bounding rect + of title, canvas and axes. The legend will be shrinked + if it would need more space than the given ratio. + The ratio is limited to ]0.0 .. 1.0]. In case of <= 0.0 + it will be reset to the default ratio. + The default vertical/horizontal ratio is 0.33/0.5. + + \sa QwtPlot::setLegendPosition() +*/ + +void QwtPlotLayout::setLegendPosition( QwtPlot::LegendPosition pos, double ratio ) +{ + if ( ratio > 1.0 ) + ratio = 1.0; + + switch ( pos ) + { + case QwtPlot::TopLegend: + case QwtPlot::BottomLegend: + if ( ratio <= 0.0 ) + ratio = 0.33; + d_data->legendRatio = ratio; + d_data->legendPos = pos; + break; + case QwtPlot::LeftLegend: + case QwtPlot::RightLegend: + if ( ratio <= 0.0 ) + ratio = 0.5; + d_data->legendRatio = ratio; + d_data->legendPos = pos; + break; + case QwtPlot::ExternalLegend: + d_data->legendRatio = ratio; // meaningless + d_data->legendPos = pos; + default: + break; + } +} + +/*! + \brief Specify the position of the legend + \param pos The legend's position. Valid values are + \c QwtPlot::LeftLegend, \c QwtPlot::RightLegend, + \c QwtPlot::TopLegend, \c QwtPlot::BottomLegend. + + \sa QwtPlot::setLegendPosition() +*/ +void QwtPlotLayout::setLegendPosition( QwtPlot::LegendPosition pos ) +{ + setLegendPosition( pos, 0.0 ); +} + +/*! + \return Position of the legend + \sa setLegendPosition(), QwtPlot::setLegendPosition(), + QwtPlot::legendPosition() +*/ +QwtPlot::LegendPosition QwtPlotLayout::legendPosition() const +{ + return d_data->legendPos; +} + +/*! + Specify the relative size of the legend in the plot + \param ratio Ratio between legend and the bounding rect + of title, canvas and axes. The legend will be shrinked + if it would need more space than the given ratio. + The ratio is limited to ]0.0 .. 1.0]. In case of <= 0.0 + it will be reset to the default ratio. + The default vertical/horizontal ratio is 0.33/0.5. +*/ +void QwtPlotLayout::setLegendRatio( double ratio ) +{ + setLegendPosition( legendPosition(), ratio ); +} + +/*! + \return The relative size of the legend in the plot. + \sa setLegendPosition() +*/ +double QwtPlotLayout::legendRatio() const +{ + return d_data->legendRatio; +} + +/*! + \return Geometry for the title + \sa activate(), invalidate() +*/ + +const QRectF &QwtPlotLayout::titleRect() const +{ + return d_data->titleRect; +} + +/*! + \return Geometry for the legend + \sa activate(), invalidate() +*/ + +const QRectF &QwtPlotLayout::legendRect() const +{ + return d_data->legendRect; +} + +/*! + \param axis Axis index + \return Geometry for the scale + \sa activate(), invalidate() +*/ + +const QRectF &QwtPlotLayout::scaleRect( int axis ) const +{ + if ( axis < 0 || axis >= QwtPlot::axisCnt ) + { + static QRectF dummyRect; + return dummyRect; + } + return d_data->scaleRect[axis]; +} + +/*! + \return Geometry for the canvas + \sa activate(), invalidate() +*/ + +const QRectF &QwtPlotLayout::canvasRect() const +{ + return d_data->canvasRect; +} + +/*! + Invalidate the geometry of all components. + \sa activate() +*/ +void QwtPlotLayout::invalidate() +{ + d_data->titleRect = d_data->legendRect = d_data->canvasRect = QRect(); + for ( int axis = 0; axis < QwtPlot::axisCnt; axis++ ) + d_data->scaleRect[axis] = QRect(); +} + +/*! + \brief Return a minimum size hint + \sa QwtPlot::minimumSizeHint() +*/ + +QSize QwtPlotLayout::minimumSizeHint( const QwtPlot *plot ) const +{ + class ScaleData + { + public: + ScaleData() + { + w = h = minLeft = minRight = tickOffset = 0; + } + + int w; + int h; + int minLeft; + int minRight; + int tickOffset; + } scaleData[QwtPlot::axisCnt]; + + int canvasBorder[QwtPlot::axisCnt]; + + int axis; + for ( axis = 0; axis < QwtPlot::axisCnt; axis++ ) + { + if ( plot->axisEnabled( axis ) ) + { + const QwtScaleWidget *scl = plot->axisWidget( axis ); + ScaleData &sd = scaleData[axis]; + + const QSize hint = scl->minimumSizeHint(); + sd.w = hint.width(); + sd.h = hint.height(); + scl->getBorderDistHint( sd.minLeft, sd.minRight ); + sd.tickOffset = scl->margin(); + if ( scl->scaleDraw()->hasComponent( QwtAbstractScaleDraw::Ticks ) ) + sd.tickOffset += scl->scaleDraw()->maxTickLength(); + } + + canvasBorder[axis] = plot->canvas()->frameWidth() + + d_data->canvasMargin[axis] + 1; + + } + + + for ( axis = 0; axis < QwtPlot::axisCnt; axis++ ) + { + ScaleData &sd = scaleData[axis]; + if ( sd.w && ( axis == QwtPlot::xBottom || axis == QwtPlot::xTop ) ) + { + if ( ( sd.minLeft > canvasBorder[QwtPlot::yLeft] ) + && scaleData[QwtPlot::yLeft].w ) + { + int shiftLeft = sd.minLeft - canvasBorder[QwtPlot::yLeft]; + if ( shiftLeft > scaleData[QwtPlot::yLeft].w ) + shiftLeft = scaleData[QwtPlot::yLeft].w; + + sd.w -= shiftLeft; + } + if ( ( sd.minRight > canvasBorder[QwtPlot::yRight] ) + && scaleData[QwtPlot::yRight].w ) + { + int shiftRight = sd.minRight - canvasBorder[QwtPlot::yRight]; + if ( shiftRight > scaleData[QwtPlot::yRight].w ) + shiftRight = scaleData[QwtPlot::yRight].w; + + sd.w -= shiftRight; + } + } + + if ( sd.h && ( axis == QwtPlot::yLeft || axis == QwtPlot::yRight ) ) + { + if ( ( sd.minLeft > canvasBorder[QwtPlot::xBottom] ) && + scaleData[QwtPlot::xBottom].h ) + { + int shiftBottom = sd.minLeft - canvasBorder[QwtPlot::xBottom]; + if ( shiftBottom > scaleData[QwtPlot::xBottom].tickOffset ) + shiftBottom = scaleData[QwtPlot::xBottom].tickOffset; + + sd.h -= shiftBottom; + } + if ( ( sd.minLeft > canvasBorder[QwtPlot::xTop] ) && + scaleData[QwtPlot::xTop].h ) + { + int shiftTop = sd.minRight - canvasBorder[QwtPlot::xTop]; + if ( shiftTop > scaleData[QwtPlot::xTop].tickOffset ) + shiftTop = scaleData[QwtPlot::xTop].tickOffset; + + sd.h -= shiftTop; + } + } + } + + const QwtPlotCanvas *canvas = plot->canvas(); + const QSize minCanvasSize = canvas->minimumSize(); + + int w = scaleData[QwtPlot::yLeft].w + scaleData[QwtPlot::yRight].w; + int cw = qMax( scaleData[QwtPlot::xBottom].w, scaleData[QwtPlot::xTop].w ) + + 2 * ( canvas->frameWidth() + 1 ); + w += qMax( cw, minCanvasSize.width() ); + + int h = scaleData[QwtPlot::xBottom].h + scaleData[QwtPlot::xTop].h; + int ch = qMax( scaleData[QwtPlot::yLeft].h, scaleData[QwtPlot::yRight].h ) + + 2 * ( canvas->frameWidth() + 1 ); + h += qMax( ch, minCanvasSize.height() ); + + const QwtTextLabel *title = plot->titleLabel(); + if ( title && !title->text().isEmpty() ) + { + // If only QwtPlot::yLeft or QwtPlot::yRight is showing, + // we center on the plot canvas. + const bool centerOnCanvas = !( plot->axisEnabled( QwtPlot::yLeft ) + && plot->axisEnabled( QwtPlot::yRight ) ); + + int titleW = w; + if ( centerOnCanvas ) + { + titleW -= scaleData[QwtPlot::yLeft].w + + scaleData[QwtPlot::yRight].w; + } + + int titleH = title->heightForWidth( titleW ); + if ( titleH > titleW ) // Compensate for a long title + { + w = titleW = titleH; + if ( centerOnCanvas ) + { + w += scaleData[QwtPlot::yLeft].w + + scaleData[QwtPlot::yRight].w; + } + + titleH = title->heightForWidth( titleW ); + } + h += titleH + d_data->spacing; + } + + // Compute the legend contribution + + const QwtLegend *legend = plot->legend(); + if ( d_data->legendPos != QwtPlot::ExternalLegend + && legend && !legend->isEmpty() ) + { + if ( d_data->legendPos == QwtPlot::LeftLegend + || d_data->legendPos == QwtPlot::RightLegend ) + { + int legendW = legend->sizeHint().width(); + int legendH = legend->heightForWidth( legendW ); + + if ( legend->frameWidth() > 0 ) + w += d_data->spacing; + + if ( legendH > h ) + legendW += legend->verticalScrollBar()->sizeHint().height(); + + if ( d_data->legendRatio < 1.0 ) + legendW = qMin( legendW, int( w / ( 1.0 - d_data->legendRatio ) ) ); + + w += legendW + d_data->spacing; + } + else // QwtPlot::Top, QwtPlot::Bottom + { + int legendW = qMin( legend->sizeHint().width(), w ); + int legendH = legend->heightForWidth( legendW ); + + if ( legend->frameWidth() > 0 ) + h += d_data->spacing; + + if ( d_data->legendRatio < 1.0 ) + legendH = qMin( legendH, int( h / ( 1.0 - d_data->legendRatio ) ) ); + + h += legendH + d_data->spacing; + } + } + + return QSize( w, h ); +} + +/*! + Find the geometry for the legend + \param options Options how to layout the legend + \param rect Rectangle where to place the legend + \return Geometry for the legend + \sa Options +*/ + +QRectF QwtPlotLayout::layoutLegend( Options options, + const QRectF &rect ) const +{ + const QSize hint( d_data->layoutData.legend.hint ); + + int dim; + if ( d_data->legendPos == QwtPlot::LeftLegend + || d_data->legendPos == QwtPlot::RightLegend ) + { + // We don't allow vertical legends to take more than + // half of the available space. + + dim = qMin( hint.width(), int( rect.width() * d_data->legendRatio ) ); + + if ( !( options & IgnoreScrollbars ) ) + { + if ( hint.height() > rect.height() ) + { + // The legend will need additional + // space for the vertical scrollbar. + + dim += d_data->layoutData.legend.vScrollBarWidth; + } + } + } + else + { + dim = qMin( hint.height(), int( rect.height() * d_data->legendRatio ) ); + dim = qMax( dim, d_data->layoutData.legend.hScrollBarHeight ); + } + + QRectF legendRect = rect; + switch ( d_data->legendPos ) + { + case QwtPlot::LeftLegend: + legendRect.setWidth( dim ); + break; + case QwtPlot::RightLegend: + legendRect.setX( rect.right() - dim ); + legendRect.setWidth( dim ); + break; + case QwtPlot::TopLegend: + legendRect.setHeight( dim ); + break; + case QwtPlot::BottomLegend: + legendRect.setY( rect.bottom() - dim ); + legendRect.setHeight( dim ); + break; + case QwtPlot::ExternalLegend: + break; + } + + return legendRect; +} + +/*! + Align the legend to the canvas + \param canvasRect Geometry of the canvas + \param legendRect Maximum geometry for the legend + \return Geometry for the aligned legend +*/ +QRectF QwtPlotLayout::alignLegend( const QRectF &canvasRect, + const QRectF &legendRect ) const +{ + QRectF alignedRect = legendRect; + + if ( d_data->legendPos == QwtPlot::BottomLegend + || d_data->legendPos == QwtPlot::TopLegend ) + { + if ( d_data->layoutData.legend.hint.width() < canvasRect.width() ) + { + alignedRect.setX( canvasRect.x() ); + alignedRect.setWidth( canvasRect.width() ); + } + } + else + { + if ( d_data->layoutData.legend.hint.height() < canvasRect.height() ) + { + alignedRect.setY( canvasRect.y() ); + alignedRect.setHeight( canvasRect.height() ); + } + } + + return alignedRect; +} + +/*! + Expand all line breaks in text labels, and calculate the height + of their widgets in orientation of the text. + + \param options Options how to layout the legend + \param rect Bounding rect for title, axes and canvas. + \param dimTitle Expanded height of the title widget + \param dimAxis Expanded heights of the axis in axis orientation. + + \sa Options +*/ +void QwtPlotLayout::expandLineBreaks( int options, const QRectF &rect, + int &dimTitle, int dimAxis[QwtPlot::axisCnt] ) const +{ + dimTitle = 0; + for ( int axis = 0; axis < QwtPlot::axisCnt; axis++ ) + dimAxis[axis] = 0; + + int backboneOffset[QwtPlot::axisCnt]; + for ( int axis = 0; axis < QwtPlot::axisCnt; axis++ ) + { + backboneOffset[axis] = 0; + if ( !d_data->alignCanvasToScales ) + backboneOffset[axis] += d_data->canvasMargin[axis]; + if ( !( options & IgnoreFrames ) ) + backboneOffset[axis] += d_data->layoutData.canvas.frameWidth; + } + + bool done = false; + while ( !done ) + { + done = true; + + // the size for the 4 axis depend on each other. Expanding + // the height of a horizontal axis will shrink the height + // for the vertical axis, shrinking the height of a vertical + // axis will result in a line break what will expand the + // width and results in shrinking the width of a horizontal + // axis what might result in a line break of a horizontal + // axis ... . So we loop as long until no size changes. + + if ( !d_data->layoutData.title.text.isEmpty() ) + { + int w = rect.width(); + + if ( d_data->layoutData.scale[QwtPlot::yLeft].isEnabled + != d_data->layoutData.scale[QwtPlot::yRight].isEnabled ) + { + // center to the canvas + w -= dimAxis[QwtPlot::yLeft] + dimAxis[QwtPlot::yRight]; + } + + int d = qCeil( d_data->layoutData.title.text.heightForWidth( w ) ); + if ( !( options & IgnoreFrames ) ) + d += 2 * d_data->layoutData.title.frameWidth; + + if ( d > dimTitle ) + { + dimTitle = d; + done = false; + } + } + + for ( int axis = 0; axis < QwtPlot::axisCnt; axis++ ) + { + const struct LayoutData::t_scaleData &scaleData = + d_data->layoutData.scale[axis]; + + if ( scaleData.isEnabled ) + { + int length; + if ( axis == QwtPlot::xTop || axis == QwtPlot::xBottom ) + { + length = rect.width() - dimAxis[QwtPlot::yLeft] + - dimAxis[QwtPlot::yRight]; + length -= scaleData.start + scaleData.end; + + if ( dimAxis[QwtPlot::yRight] > 0 ) + length -= 1; + + length += qMin( dimAxis[QwtPlot::yLeft], + scaleData.start - backboneOffset[QwtPlot::yLeft] ); + length += qMin( dimAxis[QwtPlot::yRight], + scaleData.end - backboneOffset[QwtPlot::yRight] ); + } + else // QwtPlot::yLeft, QwtPlot::yRight + { + length = rect.height() - dimAxis[QwtPlot::xTop] + - dimAxis[QwtPlot::xBottom]; + length -= scaleData.start + scaleData.end; + length -= 1; + + if ( dimAxis[QwtPlot::xBottom] <= 0 ) + length -= 1; + if ( dimAxis[QwtPlot::xTop] <= 0 ) + length -= 1; + + if ( dimAxis[QwtPlot::xBottom] > 0 ) + { + length += qMin( + d_data->layoutData.scale[QwtPlot::xBottom].tickOffset, + scaleData.start - backboneOffset[QwtPlot::xBottom] ); + } + if ( dimAxis[QwtPlot::xTop] > 0 ) + { + length += qMin( + d_data->layoutData.scale[QwtPlot::xTop].tickOffset, + scaleData.end - backboneOffset[QwtPlot::xTop] ); + } + + if ( dimTitle > 0 ) + length -= dimTitle + d_data->spacing; + } + + int d = scaleData.dimWithoutTitle; + if ( !scaleData.scaleWidget->title().isEmpty() ) + { + d += scaleData.scaleWidget->titleHeightForWidth( length ); + } + + + if ( d > dimAxis[axis] ) + { + dimAxis[axis] = d; + done = false; + } + } + } + } +} + +/*! + Align the ticks of the axis to the canvas borders using + the empty corners. + + \sa Options +*/ + +void QwtPlotLayout::alignScales( int options, + QRectF &canvasRect, QRectF scaleRect[QwtPlot::axisCnt] ) const +{ + int backboneOffset[QwtPlot::axisCnt]; + for ( int axis = 0; axis < QwtPlot::axisCnt; axis++ ) + { + backboneOffset[axis] = 0; + if ( !d_data->alignCanvasToScales ) + backboneOffset[axis] += d_data->canvasMargin[axis]; + if ( !( options & IgnoreFrames ) ) + backboneOffset[axis] += d_data->layoutData.canvas.frameWidth; + } + + for ( int axis = 0; axis < QwtPlot::axisCnt; axis++ ) + { + if ( !scaleRect[axis].isValid() ) + continue; + + const int startDist = d_data->layoutData.scale[axis].start; + const int endDist = d_data->layoutData.scale[axis].end; + + QRectF &axisRect = scaleRect[axis]; + + if ( axis == QwtPlot::xTop || axis == QwtPlot::xBottom ) + { + const QRectF &leftScaleRect = scaleRect[QwtPlot::yLeft]; + const int leftOffset = + backboneOffset[QwtPlot::yLeft] - startDist; + + if ( leftScaleRect.isValid() ) + { + const int dx = leftOffset + leftScaleRect.width(); + if ( d_data->alignCanvasToScales && dx < 0 ) + { + /* + The axis needs more space than the width + of the left scale. + */ + canvasRect.setLeft( qMax( canvasRect.left(), + axisRect.left() - dx ) ); + } + else + { + const double minLeft = leftScaleRect.left(); + const double left = axisRect.left() + leftOffset; + axisRect.setLeft( qMax( left, minLeft ) ); + } + } + else + { + if ( d_data->alignCanvasToScales && leftOffset < 0 ) + { + canvasRect.setLeft( qMax( canvasRect.left(), + axisRect.left() - leftOffset ) ); + } + else + { + if ( leftOffset > 0 ) + axisRect.setLeft( axisRect.left() + leftOffset ); + } + } + + const QRectF &rightScaleRect = scaleRect[QwtPlot::yRight]; + const int rightOffset = + backboneOffset[QwtPlot::yRight] - endDist + 1; + + if ( rightScaleRect.isValid() ) + { + const int dx = rightOffset + rightScaleRect.width(); + if ( d_data->alignCanvasToScales && dx < 0 ) + { + /* + The axis needs more space than the width + of the right scale. + */ + canvasRect.setRight( qMin( canvasRect.right(), + axisRect.right() + dx ) ); + } + + const double maxRight = rightScaleRect.right(); + const double right = axisRect.right() - rightOffset; + axisRect.setRight( qMin( right, maxRight ) ); + } + else + { + if ( d_data->alignCanvasToScales && rightOffset < 0 ) + { + canvasRect.setRight( qMin( canvasRect.right(), + axisRect.right() + rightOffset ) ); + } + else + { + if ( rightOffset > 0 ) + axisRect.setRight( axisRect.right() - rightOffset ); + } + } + } + else // QwtPlot::yLeft, QwtPlot::yRight + { + const QRectF &bottomScaleRect = scaleRect[QwtPlot::xBottom]; + const int bottomOffset = + backboneOffset[QwtPlot::xBottom] - endDist + 1; + + if ( bottomScaleRect.isValid() ) + { + const int dy = bottomOffset + bottomScaleRect.height(); + if ( d_data->alignCanvasToScales && dy < 0 ) + { + /* + The axis needs more space than the height + of the bottom scale. + */ + canvasRect.setBottom( qMin( canvasRect.bottom(), + axisRect.bottom() + dy ) ); + } + else + { + const double maxBottom = bottomScaleRect.top() + + d_data->layoutData.scale[QwtPlot::xBottom].tickOffset; + const double bottom = axisRect.bottom() - bottomOffset; + axisRect.setBottom( qMin( bottom, maxBottom ) ); + } + } + else + { + if ( d_data->alignCanvasToScales && bottomOffset < 0 ) + { + canvasRect.setBottom( qMin( canvasRect.bottom(), + axisRect.bottom() + bottomOffset ) ); + } + else + { + if ( bottomOffset > 0 ) + axisRect.setBottom( axisRect.bottom() - bottomOffset ); + } + } + + const QRectF &topScaleRect = scaleRect[QwtPlot::xTop]; + const int topOffset = backboneOffset[QwtPlot::xTop] - startDist; + + if ( topScaleRect.isValid() ) + { + const int dy = topOffset + topScaleRect.height(); + if ( d_data->alignCanvasToScales && dy < 0 ) + { + /* + The axis needs more space than the height + of the top scale. + */ + canvasRect.setTop( qMax( canvasRect.top(), + axisRect.top() - dy ) ); + } + else + { + const double minTop = topScaleRect.bottom() - + d_data->layoutData.scale[QwtPlot::xTop].tickOffset; + const double top = axisRect.top() + topOffset; + axisRect.setTop( qMax( top, minTop ) ); + } + } + else + { + if ( d_data->alignCanvasToScales && topOffset < 0 ) + { + canvasRect.setTop( qMax( canvasRect.top(), + axisRect.top() - topOffset ) ); + } + else + { + if ( topOffset > 0 ) + axisRect.setTop( axisRect.top() + topOffset ); + } + } + } + } + + if ( d_data->alignCanvasToScales ) + { + /* + The canvas has been aligned to the scale with largest + border distances. Now we have to realign the other scale. + */ + + int fw = 0; + if ( !( options & IgnoreFrames ) ) + fw = d_data->layoutData.canvas.frameWidth; + + for ( int axis = 0; axis < QwtPlot::axisCnt; axis++ ) + { + if ( !scaleRect[axis].isValid() ) + continue; + + if ( axis == QwtPlot::xBottom || axis == QwtPlot::xTop ) + { + scaleRect[axis].setLeft( canvasRect.left() + fw + - d_data->layoutData.scale[axis].start ); + scaleRect[axis].setRight( canvasRect.right() - fw - 1 + + d_data->layoutData.scale[axis].end ); + } + else + { + scaleRect[axis].setTop( canvasRect.top() + fw + - d_data->layoutData.scale[axis].start ); + scaleRect[axis].setBottom( canvasRect.bottom() - fw - 1 + + d_data->layoutData.scale[axis].end ); + } + } + + if ( scaleRect[QwtPlot::xTop].isValid() ) + scaleRect[QwtPlot::xTop].setBottom( canvasRect.top() ); + if ( scaleRect[QwtPlot::xBottom].isValid() ) + scaleRect[QwtPlot::xBottom].setTop( canvasRect.bottom() ); + if ( scaleRect[QwtPlot::yLeft].isValid() ) + scaleRect[QwtPlot::yLeft].setRight( canvasRect.left() ); + if ( scaleRect[QwtPlot::yRight].isValid() ) + scaleRect[QwtPlot::yRight].setLeft( canvasRect.right() ); + } +} + +/*! + \brief Recalculate the geometry of all components. + + \param plot Plot to be layout + \param plotRect Rect where to place the components + \param options Layout options + + \sa invalidate(), titleRect(), + legendRect(), scaleRect(), canvasRect() +*/ +void QwtPlotLayout::activate( const QwtPlot *plot, + const QRectF &plotRect, Options options ) +{ + invalidate(); + + QRectF rect( plotRect ); // undistributed rest of the plot rect + + // We extract all layout relevant data from the widgets, + // filter them through pfilter and save them to d_data->layoutData. + + d_data->layoutData.init( plot, rect ); + + if ( !( options & IgnoreLegend ) + && d_data->legendPos != QwtPlot::ExternalLegend + && plot->legend() && !plot->legend()->isEmpty() ) + { + d_data->legendRect = layoutLegend( options, rect ); + + // subtract d_data->legendRect from rect + + const QRegion region( rect.toRect() ); + rect = region.subtract( d_data->legendRect.toRect() ).boundingRect(); + + switch ( d_data->legendPos ) + { + case QwtPlot::LeftLegend: + rect.setLeft( rect.left() + d_data->spacing ); + break; + case QwtPlot::RightLegend: + rect.setRight( rect.right() - d_data->spacing ); + break; + case QwtPlot::TopLegend: + rect.setTop( rect.top() + d_data->spacing ); + break; + case QwtPlot::BottomLegend: + rect.setBottom( rect.bottom() - d_data->spacing ); + break; + case QwtPlot::ExternalLegend: + break; // suppress compiler warning + } + } + + /* + +---+-----------+---+ + | Title | + +---+-----------+---+ + | | Axis | | + +---+-----------+---+ + | A | | A | + | x | Canvas | x | + | i | | i | + | s | | s | + +---+-----------+---+ + | | Axis | | + +---+-----------+---+ + */ + + // axes and title include text labels. The height of each + // label depends on its line breaks, that depend on the width + // for the label. A line break in a horizontal text will reduce + // the available width for vertical texts and vice versa. + // expandLineBreaks finds the height/width for title and axes + // including all line breaks. + + int dimTitle, dimAxes[QwtPlot::axisCnt]; + expandLineBreaks( options, rect, dimTitle, dimAxes ); + + if ( dimTitle > 0 ) + { + d_data->titleRect = QRect( rect.x(), rect.y(), + rect.width(), dimTitle ); + + if ( d_data->layoutData.scale[QwtPlot::yLeft].isEnabled != + d_data->layoutData.scale[QwtPlot::yRight].isEnabled ) + { + // if only one of the y axes is missing we align + // the title centered to the canvas + + d_data->titleRect.setX( rect.x() + dimAxes[QwtPlot::yLeft] ); + d_data->titleRect.setWidth( rect.width() + - dimAxes[QwtPlot::yLeft] - dimAxes[QwtPlot::yRight] ); + } + + // subtract title + rect.setTop( rect.top() + dimTitle + d_data->spacing ); + } + + d_data->canvasRect.setRect( + rect.x() + dimAxes[QwtPlot::yLeft], + rect.y() + dimAxes[QwtPlot::xTop], + rect.width() - dimAxes[QwtPlot::yRight] - dimAxes[QwtPlot::yLeft], + rect.height() - dimAxes[QwtPlot::xBottom] - dimAxes[QwtPlot::xTop] ); + + for ( int axis = 0; axis < QwtPlot::axisCnt; axis++ ) + { + // set the rects for the axes + + if ( dimAxes[axis] ) + { + int dim = dimAxes[axis]; + QRectF &scaleRect = d_data->scaleRect[axis]; + + scaleRect = d_data->canvasRect; + switch ( axis ) + { + case QwtPlot::yLeft: + scaleRect.setX( d_data->canvasRect.left() - dim ); + scaleRect.setWidth( dim ); + break; + case QwtPlot::yRight: + scaleRect.setX( d_data->canvasRect.right() ); + scaleRect.setWidth( dim ); + break; + case QwtPlot::xBottom: + scaleRect.setY( d_data->canvasRect.bottom() ); + scaleRect.setHeight( dim ); + break; + case QwtPlot::xTop: + scaleRect.setY( d_data->canvasRect.top() - dim ); + scaleRect.setHeight( dim ); + break; + } + scaleRect = scaleRect.normalized(); + } + } + + // +---+-----------+---+ + // | <- Axis -> | + // +-^-+-----------+-^-+ + // | | | | | | + // | | | | + // | A | | A | + // | x | Canvas | x | + // | i | | i | + // | s | | s | + // | | | | + // | | | | | | + // +-V-+-----------+-V-+ + // | <- Axis -> | + // +---+-----------+---+ + + // The ticks of the axes - not the labels above - should + // be aligned to the canvas. So we try to use the empty + // corners to extend the axes, so that the label texts + // left/right of the min/max ticks are moved into them. + + alignScales( options, d_data->canvasRect, d_data->scaleRect ); + + if ( !d_data->legendRect.isEmpty() ) + { + // We prefer to align the legend to the canvas - not to + // the complete plot - if possible. + + d_data->legendRect = alignLegend( d_data->canvasRect, d_data->legendRect ); + } +} diff -Nru phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_layout.h phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_layout.h --- phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_layout.h 1970-01-01 00:00:00.000000000 +0000 +++ phyxcalc-3rev200/qwt-6.0.0/src/qwt_plot_layout.h 2011-04-15 10:48:46.000000000 +0000 @@ -0,0 +1,105 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** + * Qwt Widget Library + * Copyright (C) 1997 Josef Wilgen + * Copyright (C) 2002 Uwe Rathmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the Qwt License, Version 1.0 + *****************************************************************************/ + +#ifndef QWT_PLOT_LAYOUT_H +#define QWT_PLOT_LAYOUT_H + +#include "qwt_global.h" +#include "qwt_plot.h" + +/*! + \brief Layout engine for QwtPlot. + + It is used by the QwtPlot widget to organize its internal widgets + or by QwtPlot::print() to render its content to a QPaintDevice like + a QPrinter, QPixmap/QImage or QSvgRenderer. +*/ + +class QWT_EXPORT QwtPlotLayout +{ +public: + /*! + Options to configure the plot layout engine + \sa activate(), QwtPlotRenderer + */ + enum Option + { + //! Unused + AlignScales = 0x01, + + /*! + Ignore the dimension of the scrollbars. There are no + scrollbars, when the plot is not rendered to widgets. + */ + IgnoreScrollbars = 0x02, + + //! Ignore all frames. + IgnoreFrames = 0x04, + + //! Ignore the legend. + IgnoreLegend = 0x08 + }; + + //! Layout options + typedef QFlags