some code refactoring (removed some macro-defined getter-functions and properties ...)

This commit is contained in:
jkriege2 2019-01-08 21:00:25 +01:00
parent 3e21d8a17f
commit 8ae0e20892
10 changed files with 490 additions and 207 deletions

View File

@ -590,7 +590,7 @@ SORT_BRIEF_DOCS = YES
# detailed member documentation.
# The default value is: NO.
SORT_MEMBERS_CTORS_1ST = NO
SORT_MEMBERS_CTORS_1ST = YES
# 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 group names will
@ -845,7 +845,8 @@ FILE_PATTERNS = *.c \
*.f90 \
*.f \
*.vhd \
*.vhdl
*.vhdl \
*.md
# The RECURSIVE tag can be used to specify whether or not subdirectories should
# be searched for input files as well.
@ -893,8 +894,8 @@ EXCLUDE_SYMBOLS =
# that contain example code fragments that are included (see the \include
# command).
EXAMPLE_PATH = ../test/ \
..
EXAMPLE_PATH = .. \
../examples/
# 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
@ -914,7 +915,8 @@ EXAMPLE_RECURSIVE = YES
# that contain images that are to be included in the documentation (see the
# \image command).
IMAGE_PATH = ./images/
IMAGE_PATH = ./images/ \
../screenshots/
# 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
@ -970,7 +972,7 @@ FILTER_SOURCE_PATTERNS =
# (index.html). This can be useful if you have a project on for instance GitHub
# and want to reuse the introduction page also for the doxygen output.
USE_MDFILE_AS_MAINPAGE =
USE_MDFILE_AS_MAINPAGE = ../Readme.md
#---------------------------------------------------------------------------
# Configuration options related to source browsing
@ -2090,7 +2092,8 @@ SEARCH_INCLUDES = YES
# preprocessor.
# This tag requires that the tag SEARCH_INCLUDES is set to YES.
INCLUDE_PATH =
INCLUDE_PATH = ../lib/jkqtplotter \
../lib/jkqtplottertools
# 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
@ -2119,7 +2122,8 @@ PREDEFINED =
EXPAND_AS_DEFINED = JKQTPGET_SET_MACRO \
JKQTPSET_CAST_MACRO \
JKQTPGET_SET_VMACRO
JKQTPGET_SET_VMACRO \
JKQTPGET_SET_MACRO()
# If the SKIP_FUNCTION_MACROS tag is set to YES then doxygen's preprocessor will
# remove all references to function-like macros that are alone on a line, have

View File

@ -25,8 +25,7 @@
*/
/**
* \defgroup jkqtfastplotter Speed-Optimized Plotter class
* \ingroup tools_qt
* \defgroup jkqtfastplotter JKQTFastPlotter: Speed-Optimized Plotter class
*/
/** \file jkqtpfastplotter.h

View File

@ -26,8 +26,7 @@
*/
/**
* \defgroup jkqtmathtext Functions for special text output (with math markup)
* \ingroup tools_qt
* \defgroup jkqtmathtext JKQtMathText LaTeX-Renderer for Qt
*/
/** \file jkqtmathtext.h

View File

@ -227,54 +227,100 @@ class LIB_EXPORT JKQTPcoordinateAxis: public QObject {
virtual void drawGrids(JKQTPEnhancedPainter& painter)=0;
JKQTPGET_MACRO(double, tickSpacing)
JKQTPGET_MACRO(int, labelDigits)
JKQTPGET_MACRO(bool, autoAxisSpacing)
JKQTPGET_MACRO(bool, minorTickLabelsEnabled)
JKQTPGET_MACRO(bool, logAxis)
JKQTPGET_MACRO(bool, inverted)
JKQTPGET_MACRO(double, logAxisBase)
JKQTPGET_MACRO(double, userTickSpacing)
JKQTPGET_MACRO(double, userLogTickSpacing)
JKQTPGET_MACRO(JKQTPCAlabelType, labelType)
JKQTPGET_MACRO(QString, axisLabel)
JKQTPGET_MACRO(JKQTPlabelPosition, labelPosition)
JKQTPGET_MACRO(QString, labelFont)
JKQTPGET_MACRO(double, labelFontSize)
JKQTPGET_MACRO(QString, tickLabelFont)
JKQTPGET_MACRO(double, tickLabelFontSize)
JKQTPGET_MACRO(double, minorTickLabelFontSize)
JKQTPGET_MACRO(bool, minorTickLabelFullNumber)
JKQTPGET_MACRO(double, tickLabelAngle)
JKQTPGET_MACRO(unsigned int, minTicks)
JKQTPGET_MACRO(unsigned int, minorTicks)
JKQTPGET_MACRO(double, tickOutsideLength)
JKQTPGET_MACRO(double, minorTickOutsideLength)
JKQTPGET_MACRO(QColor, axisColor)
JKQTPGET_MACRO(bool, showZeroAxis)
JKQTPGET_MACRO(QColor, gridColor)
JKQTPGET_MACRO(QColor, minorGridColor)
JKQTPGET_MACRO(double, gridWidth)
JKQTPGET_MACRO(Qt::PenStyle, gridStyle)
JKQTPGET_MACRO(double, minorGridWidth)
JKQTPGET_MACRO(Qt::PenStyle, minorGridStyle)
JKQTPGET_MACRO(QString, tickTimeFormat)
JKQTPGET_MACRO(QString, tickDateFormat)
JKQTPGET_MACRO(QString, tickDateTimeFormat)
JKQTPGET_MACRO(JKQTPLabelTickMode, tickMode)
/** \brief returns the property tickSpacing. \details Description of the parameter tickSpacing is: <CENTER>\copybrief tickSpacing.</CENTER>. \see tickSpacing for more information */
inline double get_tickSpacing() const { return this->tickSpacing; }
/** \brief returns the property labelDigits. \details Description of the parameter labelDigits is: <CENTER>\copybrief labelDigits.</CENTER>. \see labelDigits for more information */
inline int get_labelDigits() const { return this->labelDigits; }
/** \brief returns the property autoAxisSpacing. \details Description of the parameter autoAxisSpacing is: <CENTER>\copybrief autoAxisSpacing.</CENTER>. \see autoAxisSpacing for more information */
inline bool get_autoAxisSpacing() const { return this->autoAxisSpacing; }
/** \brief returns the property minorTickLabelsEnabled. \details Description of the parameter minorTickLabelsEnabled is: <CENTER>\copybrief minorTickLabelsEnabled.</CENTER>. \see minorTickLabelsEnabled for more information */
inline bool get_minorTickLabelsEnabled() const { return this->minorTickLabelsEnabled; }
/** \brief returns the property logAxis. \details Description of the parameter logAxis is: <CENTER>\copybrief logAxis.</CENTER>. \see logAxis for more information */
inline bool get_logAxis() const { return this->logAxis; }
/** \brief returns the property inverted. \details Description of the parameter inverted is: <CENTER>\copybrief inverted.</CENTER>. \see inverted for more information */
inline bool get_inverted() const { return this->inverted; }
/** \brief returns the property logAxisBase. \details Description of the parameter logAxisBase is: <CENTER>\copybrief logAxisBase.</CENTER>. \see logAxisBase for more information */
inline double get_logAxisBase() const { return this->logAxisBase; }
/** \brief returns the property userTickSpacing. \details Description of the parameter userTickSpacing is: <CENTER>\copybrief userTickSpacing.</CENTER>. \see userTickSpacing for more information */
inline double get_userTickSpacing() const { return this->userTickSpacing; }
/** \brief returns the property userLogTickSpacing. \details Description of the parameter userLogTickSpacing is: <CENTER>\copybrief userLogTickSpacing.</CENTER>. \see userLogTickSpacing for more information */
inline double get_userLogTickSpacing() const { return this->userLogTickSpacing; }
/** \brief returns the property labelType. \details Description of the parameter labelType is: <CENTER>\copybrief labelType.</CENTER>. \see labelType for more information */
inline JKQTPCAlabelType get_labelType() const { return this->labelType; }
/** \brief returns the property axisLabel. \details Description of the parameter axisLabel is: <CENTER>\copybrief axisLabel.</CENTER>. \see axisLabel for more information */
inline QString get_axisLabel() const { return this->axisLabel; }
/** \brief returns the property labelPosition. \details Description of the parameter labelPosition is: <CENTER>\copybrief labelPosition.</CENTER>. \see labelPosition for more information */
inline JKQTPlabelPosition get_labelPosition() const { return this->labelPosition; }
/** \brief returns the property labelFont. \details Description of the parameter labelFont is: <CENTER>\copybrief labelFont.</CENTER>. \see labelFont for more information */
inline QString get_labelFont() const { return this->labelFont; }
/** \brief returns the property labelFontSize. \details Description of the parameter labelFontSize is: <CENTER>\copybrief labelFontSize.</CENTER>. \see labelFontSize for more information */
inline double get_labelFontSize() const { return this->labelFontSize; }
/** \brief returns the property tickLabelFont. \details Description of the parameter tickLabelFont is: <CENTER>\copybrief tickLabelFont.</CENTER>. \see tickLabelFont for more information */
inline QString get_tickLabelFont() const { return this->tickLabelFont; }
/** \brief returns the property tickLabelFontSize. \details Description of the parameter tickLabelFontSize is: <CENTER>\copybrief tickLabelFontSize.</CENTER>. \see tickLabelFontSize for more information */
inline double get_tickLabelFontSize() const { return this->tickLabelFontSize; }
/** \brief returns the property minorTickLabelFontSize. \details Description of the parameter minorTickLabelFontSize is: <CENTER>\copybrief minorTickLabelFontSize.</CENTER>. \see minorTickLabelFontSize for more information */
inline double get_minorTickLabelFontSize() const { return this->minorTickLabelFontSize; }
/** \brief returns the property minorTickLabelFullNumber. \details Description of the parameter minorTickLabelFullNumber is: <CENTER>\copybrief minorTickLabelFullNumber.</CENTER>. \see minorTickLabelFullNumber for more information */
inline bool get_minorTickLabelFullNumber() const { return this->minorTickLabelFullNumber; }
/** \brief returns the property tickLabelAngle. \details Description of the parameter tickLabelAngle is: <CENTER>\copybrief tickLabelAngle.</CENTER>. \see tickLabelAngle for more information */
inline double get_tickLabelAngle() const { return this->tickLabelAngle; }
/** \brief returns the property minTicks. \details Description of the parameter minTicks is: <CENTER>\copybrief minTicks.</CENTER>. \see minTicks for more information */
inline unsigned int get_minTicks() const { return this->minTicks; }
/** \brief returns the property minorTicks. \details Description of the parameter minorTicks is: <CENTER>\copybrief minorTicks.</CENTER>. \see minorTicks for more information */
inline unsigned int get_minorTicks() const { return this->minorTicks; }
/** \brief returns the property tickOutsideLength. \details Description of the parameter tickOutsideLength is: <CENTER>\copybrief tickOutsideLength.</CENTER>. \see tickOutsideLength for more information */
inline double get_tickOutsideLength() const { return this->tickOutsideLength; }
/** \brief returns the property minorTickOutsideLength. \details Description of the parameter minorTickOutsideLength is: <CENTER>\copybrief minorTickOutsideLength.</CENTER>. \see minorTickOutsideLength for more information */
inline double get_minorTickOutsideLength() const { return this->minorTickOutsideLength; }
/** \brief returns the property axisColor. \details Description of the parameter axisColor is: <CENTER>\copybrief axisColor.</CENTER>. \see axisColor for more information */
inline QColor get_axisColor() const { return this->axisColor; }
/** \brief returns the property showZeroAxis. \details Description of the parameter showZeroAxis is: <CENTER>\copybrief showZeroAxis.</CENTER>. \see showZeroAxis for more information */
inline bool get_showZeroAxis() const { return this->showZeroAxis; }
/** \brief returns the property gridColor. \details Description of the parameter gridColor is: <CENTER>\copybrief gridColor.</CENTER>. \see gridColor for more information */
inline QColor get_gridColor() const { return this->gridColor; }
/** \brief returns the property minorGridColor. \details Description of the parameter minorGridColor is: <CENTER>\copybrief minorGridColor.</CENTER>. \see minorGridColor for more information */
inline QColor get_minorGridColor() const { return this->minorGridColor; }
/** \brief returns the property gridWidth. \details Description of the parameter gridWidth is: <CENTER>\copybrief gridWidth.</CENTER>. \see gridWidth for more information */
inline double get_gridWidth() const { return this->gridWidth; }
/** \brief returns the property gridStyle. \details Description of the parameter gridStyle is: <CENTER>\copybrief gridStyle.</CENTER>. \see gridStyle for more information */
inline Qt::PenStyle get_gridStyle() const { return this->gridStyle; }
/** \brief returns the property minorGridWidth. \details Description of the parameter minorGridWidth is: <CENTER>\copybrief minorGridWidth.</CENTER>. \see minorGridWidth for more information */
inline double get_minorGridWidth() const { return this->minorGridWidth; }
/** \brief returns the property minorGridStyle. \details Description of the parameter minorGridStyle is: <CENTER>\copybrief minorGridStyle.</CENTER>. \see minorGridStyle for more information */
inline Qt::PenStyle get_minorGridStyle() const { return this->minorGridStyle; }
/** \brief returns the property tickTimeFormat. \details Description of the parameter tickTimeFormat is: <CENTER>\copybrief tickTimeFormat.</CENTER>. \see tickTimeFormat for more information */
inline QString get_tickTimeFormat() const { return this->tickTimeFormat; }
/** \brief returns the property tickDateFormat. \details Description of the parameter tickDateFormat is: <CENTER>\copybrief tickDateFormat.</CENTER>. \see tickDateFormat for more information */
inline QString get_tickDateFormat() const { return this->tickDateFormat; }
/** \brief returns the property tickDateTimeFormat. \details Description of the parameter tickDateTimeFormat is: <CENTER>\copybrief tickDateTimeFormat.</CENTER>. \see tickDateTimeFormat for more information */
inline QString get_tickDateTimeFormat() const { return this->tickDateTimeFormat; }
/** \brief returns the property tickMode. \details Description of the parameter tickMode is: <CENTER>\copybrief tickMode.</CENTER>. \see tickMode for more information */
inline JKQTPLabelTickMode get_tickMode() const { return this->tickMode; }
JKQTPGET_MACRO(JKQTPCAdrawMode, drawMode1)
JKQTPGET_MACRO(JKQTPCAdrawMode, drawMode2)
JKQTPGET_MACRO(double, minorTickWidth)
JKQTPGET_MACRO(double, tickWidth)
JKQTPGET_MACRO(double, lineWidth)
JKQTPGET_MACRO(double, lineWidthZeroAxis)
JKQTPGET_MACRO(double, tickLabelDistance)
JKQTPGET_MACRO(double, labelDistance)
JKQTPGET_MACRO(bool, drawGrid)
JKQTPGET_MACRO(bool, drawMinorGrid)
/** \brief returns the property drawMode1. \details Description of the parameter drawMode1 is: <CENTER>\copybrief drawMode1.</CENTER>. \see drawMode1 for more information */
inline JKQTPCAdrawMode get_drawMode1() const { return this->drawMode1; }
/** \brief returns the property drawMode2. \details Description of the parameter drawMode2 is: <CENTER>\copybrief drawMode2.</CENTER>. \see drawMode2 for more information */
inline JKQTPCAdrawMode get_drawMode2() const { return this->drawMode2; }
/** \brief returns the property minorTickWidth. \details Description of the parameter minorTickWidth is: <CENTER>\copybrief minorTickWidth.</CENTER>. \see minorTickWidth for more information */
inline double get_minorTickWidth() const { return this->minorTickWidth; }
/** \brief returns the property tickWidth. \details Description of the parameter tickWidth is: <CENTER>\copybrief tickWidth.</CENTER>. \see tickWidth for more information */
inline double get_tickWidth() const { return this->tickWidth; }
/** \brief returns the property lineWidth. \details Description of the parameter lineWidth is: <CENTER>\copybrief lineWidth.</CENTER>. \see lineWidth for more information */
inline double get_lineWidth() const { return this->lineWidth; }
/** \brief returns the property lineWidthZeroAxis. \details Description of the parameter lineWidthZeroAxis is: <CENTER>\copybrief lineWidthZeroAxis.</CENTER>. \see lineWidthZeroAxis for more information */
inline double get_lineWidthZeroAxis() const { return this->lineWidthZeroAxis; }
/** \brief returns the property tickLabelDistance. \details Description of the parameter tickLabelDistance is: <CENTER>\copybrief tickLabelDistance.</CENTER>. \see tickLabelDistance for more information */
inline double get_tickLabelDistance() const { return this->tickLabelDistance; }
/** \brief returns the property labelDistance. \details Description of the parameter labelDistance is: <CENTER>\copybrief labelDistance.</CENTER>. \see labelDistance for more information */
inline double get_labelDistance() const { return this->labelDistance; }
/** \brief returns the property drawGrid. \details Description of the parameter drawGrid is: <CENTER>\copybrief drawGrid.</CENTER>. \see drawGrid for more information */
inline bool get_drawGrid() const { return this->drawGrid; }
/** \brief returns the property drawMinorGrid. \details Description of the parameter drawMinorGrid is: <CENTER>\copybrief drawMinorGrid.</CENTER>. \see drawMinorGrid for more information */
inline bool get_drawMinorGrid() const { return this->drawMinorGrid; }
JKQTPGET_SET_MACRO(bool, autoLabelDigits)
JKQTPGET_MACRO(JKQtBasePlotter*, parent)
/** \brief returns the property parent. \details Description of the parameter parent is: <CENTER>\copybrief parent.</CENTER>. \see parent for more information */
inline JKQtBasePlotter* get_parent() const { return this->parent; }
JKQTPGET_SET_MACRO(bool, doUpdateScaling)
@ -593,69 +639,119 @@ class LIB_EXPORT JKQTPcoordinateAxis: public QObject {
/** \brief when \c true, the digits of the labels are calculated automatically */
bool autoLabelDigits;
/** \brief indicates whether the object should use automatic tick spacing for the x axis (calculated by calcPlotScaling() ) */
JKQTPPROPERTY(bool, autoAxisSpacing)
bool autoAxisSpacing;
/** \brief default value for property property varname. \see autoAxisSpacing for more information */
bool def_autoAxisSpacing;
/** \brief if \c true, the plotter displays minor axis labels as number between 1 and 10 in some cases */
JKQTPPROPERTY(bool, minorTickLabelsEnabled)
bool minorTickLabelsEnabled;
/** \brief default value for property property varname. \see minorTickLabelsEnabled for more information */
bool def_minorTickLabelsEnabled;
/** \brief indicates whether the y axis has a logarithmic scale */
JKQTPPROPERTY(bool, logAxis)
bool logAxis;
/** \brief default value for property property varname. \see logAxis for more information */
bool def_logAxis;
/** \brief the base for a logarithmic x axis */
JKQTPPROPERTY(double, logAxisBase)
double logAxisBase;
/** \brief default value for property property varname. \see logAxisBase for more information */
double def_logAxisBase;
/** \brief if autoXAxisSpacing is \c false then this value is used for xTickSpacing. So this is the property which
* is editable by use of public access methods.
*/
JKQTPPROPERTY(double, userTickSpacing)
double userTickSpacing;
/** \brief default value for property property varname. \see userTickSpacing for more information */
double def_userTickSpacing;
/** \brief if autoXAxisSpacing is \c false then this value is used for xTickSpacing. So this is the property which
* is editable by use of public access methods.
*/
JKQTPPROPERTY(double, userLogTickSpacing)
double userLogTickSpacing;
/** \brief default value for property property varname. \see userLogTickSpacing for more information */
double def_userLogTickSpacing;
/** \brief indicates how to draw the labels */
JKQTPPROPERTY(JKQTPCAlabelType, labelType)
JKQTPCAlabelType labelType;
/** \brief default value for property property varname. \see labelType for more information */
JKQTPCAlabelType def_labelType;
/** \brief mode of the major ticks */
JKQTPPROPERTY(JKQTPLabelTickMode, tickMode)
JKQTPLabelTickMode tickMode;
/** \brief default value for property property varname. \see tickMode for more information */
JKQTPLabelTickMode def_tickMode;
/** \brief axis label of the axis */
QString axisLabel;
/** \brief position of the axis label */
JKQTPPROPERTY(JKQTPlabelPosition, labelPosition)
JKQTPlabelPosition labelPosition;
/** \brief default value for property property varname. \see labelPosition for more information */
JKQTPlabelPosition def_labelPosition;
/** \brief font of the axis labels */
JKQTPPROPERTY(QString, labelFont)
QString labelFont;
/** \brief default value for property property varname. \see labelFont for more information */
QString def_labelFont;
/** \brief fontsize of the axis labels */
JKQTPPROPERTY(double, labelFontSize)
double labelFontSize;
/** \brief default value for property property varname. \see labelFontSize for more information */
double def_labelFontSize;
/** \brief font of the axis tick labels */
JKQTPPROPERTY(QString, tickLabelFont)
QString tickLabelFont;
/** \brief default value for property property varname. \see tickLabelFont for more information */
QString def_tickLabelFont;
/** \brief fontsize of the axis tick labels */
JKQTPPROPERTY(double, tickLabelFontSize)
double tickLabelFontSize;
/** \brief default value for property property varname. \see tickLabelFontSize for more information */
double def_tickLabelFontSize;
/** \brief fontsize of the minor axis tick labels */
JKQTPPROPERTY(double, minorTickLabelFontSize)
double minorTickLabelFontSize;
/** \brief default value for property property varname. \see minorTickLabelFontSize for more information */
double def_minorTickLabelFontSize;
/** \brief indicates whether to draw a thick axis line at x=0 (zero axis) */
JKQTPPROPERTY(bool, showZeroAxis)
bool showZeroAxis;
/** \brief default value for property property varname. \see showZeroAxis for more information */
bool def_showZeroAxis;
/** \brief indicates whether the minor tick labels should be full numbers, or just a number between 0..10 */
JKQTPPROPERTY(bool, minorTickLabelFullNumber)
bool minorTickLabelFullNumber;
/** \brief default value for property property varname. \see minorTickLabelFullNumber for more information */
bool def_minorTickLabelFullNumber;
/** \brief draw mode of the main (left/bottom) axis */
JKQTPPROPERTY(JKQTPCAdrawMode, drawMode1)
JKQTPCAdrawMode drawMode1;
/** \brief default value for property property varname. \see drawMode1 for more information */
JKQTPCAdrawMode def_drawMode1;
/** \brief draw mode of the secondary (right/top) axis */
JKQTPPROPERTY(JKQTPCAdrawMode, drawMode2)
JKQTPCAdrawMode drawMode2;
/** \brief default value for property property varname. \see drawMode2 for more information */
JKQTPCAdrawMode def_drawMode2;
/** \brief line width of minor ticks in pixels */
JKQTPPROPERTY(double, minorTickWidth)
double minorTickWidth;
/** \brief default value for property property varname. \see minorTickWidth for more information */
double def_minorTickWidth;
/** \brief line width of ticks in pixels */
JKQTPPROPERTY(double, tickWidth)
double tickWidth;
/** \brief default value for property property varname. \see tickWidth for more information */
double def_tickWidth;
/** \brief line width of axis in pixels */
JKQTPPROPERTY(double, lineWidth)
double lineWidth;
/** \brief default value for property property varname. \see lineWidth for more information */
double def_lineWidth;
/** \brief line width of 0-line in pixels */
JKQTPPROPERTY(double, lineWidthZeroAxis)
double lineWidthZeroAxis;
/** \brief default value for property property varname. \see lineWidthZeroAxis for more information */
double def_lineWidthZeroAxis;
/** \brief format string for time tick labels, see see QDateTime::toString() documentation for details on format strings */
JKQTPPROPERTY(QString, tickTimeFormat)
QString tickTimeFormat;
/** \brief default value for property property varname. \see tickTimeFormat for more information */
QString def_tickTimeFormat;
/** \brief format string for date tick labels, see see QDateTime::toString() documentation for details on format strings */
JKQTPPROPERTY(QString, tickDateFormat)
QString tickDateFormat;
/** \brief default value for property property varname. \see tickDateFormat for more information */
QString def_tickDateFormat;
/** \brief format string for datetime tick labels, see see QDateTime::toString() documentation for details on format strings */
JKQTPPROPERTY(QString, tickDateTimeFormat)
QString tickDateTimeFormat;
/** \brief default value for property property varname. \see tickDateTimeFormat for more information */
QString def_tickDateTimeFormat;
/** \brief calculates the tick spacing for a linear axis that spans \a awidth and that should
* show at least \a minTicks ticks.
@ -691,42 +787,78 @@ class LIB_EXPORT JKQTPcoordinateAxis: public QObject {
int calcLinearUnitDigits();
/** \brief minimum number of axis ticks */
JKQTPPROPERTY(unsigned int, minTicks)
unsigned int minTicks;
/** \brief default value for property property varname. \see minTicks for more information */
unsigned int def_minTicks;
/** \brief number of minor grid lines per axis tick interval */
JKQTPPROPERTY(unsigned int, minorTicks)
unsigned int minorTicks;
/** \brief default value for property property varname. \see minorTicks for more information */
unsigned int def_minorTicks;
/** \brief length of an axis tick outside the plot border in pt */
JKQTPPROPERTY(double, tickOutsideLength)
double tickOutsideLength;
/** \brief default value for property property varname. \see tickOutsideLength for more information */
double def_tickOutsideLength;
/** \brief length of a minor axis tick outside the plot border in pt */
JKQTPPROPERTY(double, minorTickOutsideLength)
double minorTickOutsideLength;
/** \brief default value for property property varname. \see minorTickOutsideLength for more information */
double def_minorTickOutsideLength;
/** \brief length of an axis tick inside the plot border in pt */
JKQTPPROPERTY(double, tickInsideLength)
double tickInsideLength;
/** \brief default value for property property varname. \see tickInsideLength for more information */
double def_tickInsideLength;
/** \brief length of a minor axis tick inside the plot border in pt */
JKQTPPROPERTY(double, minorTickInsideLength)
double minorTickInsideLength;
/** \brief default value for property property varname. \see minorTickInsideLength for more information */
double def_minorTickInsideLength;
/** \brief color of the axis (labels, ticks, axis itself ...) */
JKQTPPROPERTY(QColor, axisColor)
QColor axisColor;
/** \brief default value for property property varname. \see axisColor for more information */
QColor def_axisColor;
/** \brief distance between tick end and label start in pt */
JKQTPPROPERTY(double, tickLabelDistance)
double tickLabelDistance;
/** \brief default value for property property varname. \see tickLabelDistance for more information */
double def_tickLabelDistance;
/** \brief distance between tick label and axis label in pt */
JKQTPPROPERTY(double, labelDistance)
double labelDistance;
/** \brief default value for property property varname. \see labelDistance for more information */
double def_labelDistance;
/** \brief rotation angle of tick labels [-180..180], i.e. given in degrees, default is 0 (horizontal) */
JKQTPPROPERTY(double, tickLabelAngle)
double tickLabelAngle;
/** \brief default value for property property varname. \see tickLabelAngle for more information */
double def_tickLabelAngle;
/** \brief indicates whether to draw the major grid lines */
JKQTPPROPERTY(bool, drawGrid)
bool drawGrid;
/** \brief default value for property property varname. \see drawGrid for more information */
bool def_drawGrid;
/** \brief indicates whether to draw the minor grid lines */
JKQTPPROPERTY(bool, drawMinorGrid)
bool drawMinorGrid;
/** \brief default value for property property varname. \see drawMinorGrid for more information */
bool def_drawMinorGrid;
/** \brief color of the grid*/
JKQTPPROPERTY(QColor, gridColor)
QColor gridColor;
/** \brief default value for property property varname. \see gridColor for more information */
QColor def_gridColor;
/** \brief color of the minor grid lines */
JKQTPPROPERTY(QColor, minorGridColor)
QColor minorGridColor;
/** \brief default value for property property varname. \see minorGridColor for more information */
QColor def_minorGridColor;
/** \brief width of the grid lines (in pixel) */
JKQTPPROPERTY(double, gridWidth)
double gridWidth;
/** \brief default value for property property varname. \see gridWidth for more information */
double def_gridWidth;
/** \brief line stye of the grid lines */
JKQTPPROPERTY(Qt::PenStyle, gridStyle)
Qt::PenStyle gridStyle;
/** \brief default value for property property varname. \see gridStyle for more information */
Qt::PenStyle def_gridStyle;
/** \brief width of the minor grid lines (in pixel) */
JKQTPPROPERTY(double, minorGridWidth)
double minorGridWidth;
/** \brief default value for property property varname. \see minorGridWidth for more information */
double def_minorGridWidth;
/** \brief line stye of the minor grid lines */
JKQTPPROPERTY(Qt::PenStyle, minorGridStyle)
Qt::PenStyle minorGridStyle;
/** \brief default value for property property varname. \see minorGridStyle for more information */
Qt::PenStyle def_minorGridStyle;
/** \brief axis prefix for storage of parameters */
QString axisPrefix;

View File

@ -4528,3 +4528,6 @@ QPaintDevice *JKQtBasePlotter::JKQTPPaintDeviceAdapter::createPaintdeviceMM(cons
{
return createPaintdevice(filename, widthMM/25.4*QApplication::desktop()->logicalDpiX(), heightMM/25.4*QApplication::desktop()->logicalDpiY());
}
JKQtBasePlotter::JKQTPSaveDataAdapter::~JKQTPSaveDataAdapter() {
}

View File

@ -243,9 +243,13 @@ class LIB_EXPORT JKQtBasePlotter: public QObject {
double paintMagnification;
/** \brief the decimal separator used when exporting data to text files */
JKQTPPROPERTY(QString, CSVdecimalSeparator)
QString CSVdecimalSeparator;
/** \brief default value for property property varname. \see CSVdecimalSeparator for more information */
QString def_CSVdecimalSeparator;
/** \brief this string is used to introduce comments in text output when exporting data */
JKQTPPROPERTY(QString, CSVcommentInitializer)
QString CSVcommentInitializer;
/** \brief default value for property property varname. \see CSVcommentInitializer for more information */
QString def_CSVcommentInitializer;
/** \brief an object which manages all data columns for this plotter class */
JKQTPdatastore* datastore;
@ -262,7 +266,9 @@ class LIB_EXPORT JKQtBasePlotter: public QObject {
/** \brief free space between widget top border and plot top border, this property may be set by the user and is possibly altered
* by the key positioning algorithm. The altered value is written to iplotBorderTop */
JKQTPPROPERTY(int, plotBorderTop)
int plotBorderTop;
/** \brief default value for property property varname. \see plotBorderTop for more information */
int def_plotBorderTop;
/** \brief free space between widget top border and plot top border, as used to plot the graph (mnay be altered from user input ) */
int iplotBorderTop;
int iplotKeyBorderTop;
@ -270,19 +276,25 @@ class LIB_EXPORT JKQtBasePlotter: public QObject {
int iTitleHeight;
/** \brief free space between widget left border and plot left border, this property may be set by the user and is possibly altered
* by the key positioning algorithm. The altered value is written to iplotBorderLeft */
JKQTPPROPERTY(int, plotBorderLeft)
int plotBorderLeft;
/** \brief default value for property property varname. \see plotBorderLeft for more information */
int def_plotBorderLeft;
/** \brief free space between widget top border and plot top border, as used to plot the graph (mnay be altered from user input ) */
int iplotBorderLeft;
int iplotKeyBorderLeft;
/** \brief free space between widget bottom border and plot bottom border, this property may be set by the user and is possibly altered
* by the key positioning algorithm. The altered value is written to iplotBorderBottom */
JKQTPPROPERTY(int, plotBorderBottom)
int plotBorderBottom;
/** \brief default value for property property varname. \see plotBorderBottom for more information */
int def_plotBorderBottom;
/** \brief free space between widget top border and plot top border, as used to plot the graph (mnay be altered from user input ) */
int iplotBorderBottom;
int iplotKeyBorderBottom;
/** \brief free space between widget right border and plot right border, this property may be set by the user and is possibly altered
* by the key positioning algorithm. The altered value is written to iplotBorderRight */
JKQTPPROPERTY(int, plotBorderRight)
int plotBorderRight;
/** \brief default value for property property varname. \see plotBorderRight for more information */
int def_plotBorderRight;
/** \brief free space between widget top border and plot top border, as used to plot the graph (mnay be altered from user input ) */
int iplotBorderRight;
int iplotKeyBorderRight;
@ -299,14 +311,22 @@ class LIB_EXPORT JKQtBasePlotter: public QObject {
int iplotBorderRight_nographs;
/** \brief indicates whether the widget should maintain an aspect ratio of plotwidth and plotheight */
JKQTPPROPERTY(bool, maintainAspectRatio)
bool maintainAspectRatio;
/** \brief default value for property property varname. \see maintainAspectRatio for more information */
bool def_maintainAspectRatio;
/** \brief the aspect ratio of plotwidth and plotheight to maintain, if \c maintainAspectRatio==true */
JKQTPPROPERTY(double, aspectRatio)
double aspectRatio;
/** \brief default value for property property varname. \see aspectRatio for more information */
double def_aspectRatio;
/** \brief indicates whether the axes should maintain an aspect ratio */
JKQTPPROPERTY(bool, maintainAxisAspectRatio)
bool maintainAxisAspectRatio;
/** \brief default value for property property varname. \see maintainAxisAspectRatio for more information */
bool def_maintainAxisAspectRatio;
/** \brief the aspect ratio of axis widths to maintain, if \c maintainAxisAspectRatio==true */
JKQTPPROPERTY(double, axisAspectRatio)
double axisAspectRatio;
/** \brief default value for property property varname. \see axisAspectRatio for more information */
double def_axisAspectRatio;
/** \brief plot width in pixels inside the widget (calculated by calcPlotScaling() from plotBorderLeft, plotBorderRight and widgetWidth) */
int plotWidth;
@ -316,16 +336,22 @@ class LIB_EXPORT JKQtBasePlotter: public QObject {
/** \brief color of the plotted graph */
JKQTPPROPERTY(QColor, graphColor)
QColor graphColor;
/** \brief default value for property property varname. \see graphColor for more information */
QColor def_graphColor;
/** \brief colors used in modes where more than one graph is beeing plottet */
QColor manyGraphsColor[50];
QColor def_manyGraphsColor[50];
/** \brief number of actually defined items in manyGraphsColor */
int manyGraphsColorCount;
/** \brief pen styles used in modes where more than one graph is beeing plottet */
JKQTPPROPERTY(Qt::PenStyle, manyGraphsStyle[5])
Qt::PenStyle manyGraphsStyle[5];
/** \brief default value for property property varname. \see manyGraphsStyle[5] for more information */
Qt::PenStyle def_manyGraphsStyle[5];
/** \brief width of the plotted graph (in pixel) */
JKQTPPROPERTY(double, graphWidth)
double graphWidth;
/** \brief default value for property property varname. \see graphWidth for more information */
double def_graphWidth;
@ -335,64 +361,116 @@ class LIB_EXPORT JKQtBasePlotter: public QObject {
/** \brief color of the coordinate system */
JKQTPPROPERTY(QColor, systemColor)
QColor systemColor;
/** \brief default value for property property varname. \see systemColor for more information */
QColor def_systemColor;
/** \brief width of the coordinate (in pixel) */
JKQTPPROPERTY(double, systemWidth)
double systemWidth;
/** \brief default value for property property varname. \see systemWidth for more information */
double def_systemWidth;
/** \brief color of the background*/
JKQTPPROPERTY(QColor, backgroundColor)
QColor backgroundColor;
/** \brief default value for property property varname. \see backgroundColor for more information */
QColor def_backgroundColor;
/** \brief color of the background when exporting*/
JKQTPPROPERTY(QColor, exportBackgroundColor)
QColor exportBackgroundColor;
/** \brief default value for property property varname. \see exportBackgroundColor for more information */
QColor def_exportBackgroundColor;
/** \brief color of the plot's background*/
JKQTPPROPERTY(QColor, plotBackgroundColor)
QColor plotBackgroundColor;
/** \brief default value for property property varname. \see plotBackgroundColor for more information */
QColor def_plotBackgroundColor;
/** \brief indicates whether to plot a frame around the key */
JKQTPPROPERTY(bool, showKeyFrame)
bool showKeyFrame;
/** \brief default value for property property varname. \see showKeyFrame for more information */
bool def_showKeyFrame;
/** \brief color of the key frame line */
JKQTPPROPERTY(QColor, keyFrameColor)
QColor keyFrameColor;
/** \brief default value for property property varname. \see keyFrameColor for more information */
QColor def_keyFrameColor;
/** \brief width of the key frame line */
JKQTPPROPERTY(double, keyFrameWidth)
double keyFrameWidth;
/** \brief default value for property property varname. \see keyFrameWidth for more information */
double def_keyFrameWidth;
/** \brief color of the key background */
JKQTPPROPERTY(QColor, keyBackgroundColor)
QColor keyBackgroundColor;
/** \brief default value for property property varname. \see keyBackgroundColor for more information */
QColor def_keyBackgroundColor;
/** \brief indicates whether to plot a key */
JKQTPPROPERTY(bool, showKey)
bool showKey;
/** \brief default value for property property varname. \see showKey for more information */
bool def_showKey;
/** \brief font face for key labels */
JKQTPPROPERTY(QString, keyFont)
QString keyFont;
/** \brief default value for property property varname. \see keyFont for more information */
QString def_keyFont;
/** \brief font size for key labels [in points] */
JKQTPPROPERTY(double, keyFontSize)
double keyFontSize;
/** \brief default value for property property varname. \see keyFontSize for more information */
double def_keyFontSize;
/** \brief width of a key item in pixels [in units of width of 'X' set in keyFont, keyFontSize] */
JKQTPPROPERTY(double, key_item_width)
double key_item_width;
/** \brief default value for property property varname. \see key_item_width for more information */
double def_key_item_width;
/** \brief height of a key item in pixels [in units of height keyFont, keyFontSize] */
JKQTPPROPERTY(double, key_item_height)
double key_item_height;
/** \brief default value for property property varname. \see key_item_height for more information */
double def_key_item_height;
/** \brief length of the line samples in the key in pixels [in units of width of 'X' set in keyFont, keyFontSize] */
JKQTPPROPERTY(double, key_line_length)
double key_line_length;
/** \brief default value for property property varname. \see key_line_length for more information */
double def_key_line_length;
/** \brief x-distance between key frame and key content [in units of width of 'X' set in keyFont, keyFontSize] */
JKQTPPROPERTY(double, keyXMargin)
double keyXMargin;
/** \brief default value for property property varname. \see keyXMargin for more information */
double def_keyXMargin;
/** \brief y-distance between key frame and key content [in units of width of 'x' set in keyFont, keyFontSize] */
JKQTPPROPERTY(double, keyYMargin)
double keyYMargin;
/** \brief default value for property property varname. \see keyYMargin for more information */
double def_keyYMargin;
/** \brief x-offset of the key from the border of the plot [in units of width of 'X' set in keyFont, keyFontSize] */
JKQTPPROPERTY(double, keyXOffset)
double keyXOffset;
/** \brief default value for property property varname. \see keyXOffset for more information */
double def_keyXOffset;
/** \brief y-offset of the key from the border of the plot [in units of width of 'x' set in keyFont, keyFontSize] */
JKQTPPROPERTY(double, keyYOffset)
double keyYOffset;
/** \brief default value for property property varname. \see keyYOffset for more information */
double def_keyYOffset;
/** \brief distance between key line example and key text [in units of width of 'X' set in keyFont, keyFontSize] */
JKQTPPROPERTY(double, keyXSeparation)
double keyXSeparation;
/** \brief default value for property property varname. \see keyXSeparation for more information */
double def_keyXSeparation;
/** \brief distance between two key entries [in units of height of keyFont, keyFontSize] */
JKQTPPROPERTY(double, keyYSeparation)
double keyYSeparation;
/** \brief default value for property property varname. \see keyYSeparation for more information */
double def_keyYSeparation;
/** \brief key position */
JKQTPPROPERTY(JKQTPkeyPosition, keyPosition)
JKQTPkeyPosition keyPosition;
/** \brief default value for property property varname. \see keyPosition for more information */
JKQTPkeyPosition def_keyPosition;
/** \brief the key layout */
JKQTPPROPERTY(JKQTPkeyLayout, keyLayout)
JKQTPkeyLayout keyLayout;
/** \brief default value for property property varname. \see keyLayout for more information */
JKQTPkeyLayout def_keyLayout;
/** \brief determine width of the key automatically */
JKQTPPROPERTY(bool, keyAutosize)
bool keyAutosize;
/** \brief default value for property property varname. \see keyAutosize for more information */
bool def_keyAutosize;
/** \brief the plot label text */
QString plotLabel;
/** \brief the plot label font name */
JKQTPPROPERTY(QString, plotLabelFontname)
QString plotLabelFontname;
/** \brief default value for property property varname. \see plotLabelFontname for more information */
QString def_plotLabelFontname;
/** \brief the plot label font size */
JKQTPPROPERTY(double, plotLabelFontSize)
double plotLabelFontSize;
/** \brief default value for property property varname. \see plotLabelFontSize for more information */
double def_plotLabelFontSize;
/** \brief calculate the scaling and offset values from axis min/max values */
void calcPlotScaling(JKQTPEnhancedPainter& painter);
@ -404,20 +482,26 @@ class LIB_EXPORT JKQtBasePlotter: public QObject {
bool emitSignals;
/** \brief specifies whether to use antialiasing for plotting the coordinate system */
JKQTPPROPERTY(bool, useAntiAliasingForSystem)
bool useAntiAliasingForSystem;
/** \brief default value for property property varname. \see useAntiAliasingForSystem for more information */
bool def_useAntiAliasingForSystem;
/** \brief specifies whether to use antialiasing for plotting the graphs
*
* \note You can set this property \c false to increase plotting speed of complex plots (with many graphs inside). You can reach a
* roughly three-fold speed improvement!
*/
JKQTPPROPERTY(bool, useAntiAliasingForGraphs)
bool useAntiAliasingForGraphs;
/** \brief default value for property property varname. \see useAntiAliasingForGraphs for more information */
bool def_useAntiAliasingForGraphs;
/** \brief specifies whether to use antialiasing when drawing any text
* \note You can set this property \c false to increase plotting speed of complex plots (with many graphs inside). You can reach a
* roughly three-fold speed improvement!
*/
JKQTPPROPERTY(bool, useAntiAliasingForText)
bool useAntiAliasingForText;
/** \brief default value for property property varname. \see useAntiAliasingForText for more information */
bool def_useAntiAliasingForText;
/** \brief multiplier which is used for font sizes when the plot is exported/printed */
double fontSizePrintMultiplier;
@ -799,7 +883,8 @@ class LIB_EXPORT JKQtBasePlotter: public QObject {
* the lather case */
void forceInternalDatastore();
JKQTPGET_MACRO(bool, emitSignals)
/** \brief returns the property emitSignals. \details Description of the parameter emitSignals is: <CENTER>\copybrief emitSignals.</CENTER>. \see emitSignals for more information */
inline bool get_emitSignals()const { return this->emitSignals; }
void set_emitSignals(bool enabled);
@ -1021,15 +1106,21 @@ class LIB_EXPORT JKQtBasePlotter: public QObject {
JKQTPGET_SET_MACRO(bool, emitPlotSignals)
JKQTPGET_MACRO(int, plotBorderTop)
JKQTPGET_MACRO(int, plotBorderLeft)
JKQTPGET_MACRO(int, plotBorderBottom)
JKQTPGET_MACRO(int, plotBorderRight)
/** \brief returns the property plotBorderTop. \details Description of the parameter plotBorderTop is: <CENTER>\copybrief plotBorderTop.</CENTER>. \see plotBorderTop for more information */
inline int get_plotBorderTop() const { return this->plotBorderTop; }
/** \brief returns the property plotBorderLeft. \details Description of the parameter plotBorderLeft is: <CENTER>\copybrief plotBorderLeft.</CENTER>. \see plotBorderLeft for more information */
inline int get_plotBorderLeft() const { return this->plotBorderLeft; }
/** \brief returns the property plotBorderBottom. \details Description of the parameter plotBorderBottom is: <CENTER>\copybrief plotBorderBottom.</CENTER>. \see plotBorderBottom for more information */
inline int get_plotBorderBottom() const { return this->plotBorderBottom; }
/** \brief returns the property plotBorderRight. \details Description of the parameter plotBorderRight is: <CENTER>\copybrief plotBorderRight.</CENTER>. \see plotBorderRight for more information */
inline int get_plotBorderRight() const { return this->plotBorderRight; }
JKQTPGET_MACRO(bool, maintainAspectRatio)
/** \brief returns the property maintainAspectRatio. \details Description of the parameter maintainAspectRatio is: <CENTER>\copybrief maintainAspectRatio.</CENTER>. \see maintainAspectRatio for more information */
inline bool get_maintainAspectRatio() const { return this->maintainAspectRatio; }
JKQTPGET_SET_MACRO_I(double, aspectRatio, update_plot())
JKQTPGET_MACRO(bool, maintainAxisAspectRatio)
/** \brief returns the property maintainAxisAspectRatio. \details Description of the parameter maintainAxisAspectRatio is: <CENTER>\copybrief maintainAxisAspectRatio.</CENTER>. \see maintainAxisAspectRatio for more information */
inline bool get_maintainAxisAspectRatio() const { return this->maintainAxisAspectRatio; }
JKQTPGET_SET_MACRO_I(double, axisAspectRatio, update_plot())
JKQTPGET_SET_MACRO_I(bool, useAntiAliasingForSystem, update_plot())
@ -1076,12 +1167,18 @@ class LIB_EXPORT JKQtBasePlotter: public QObject {
JKQTPGET_SET_MACRO(QString, CSVdecimalSeparator)
JKQTPGET_SET_MACRO(QString, CSVcommentInitializer)
JKQTPGET_MACRO(int, iplotBorderTop)
JKQTPGET_MACRO(int, iplotBorderLeft)
JKQTPGET_MACRO(int, iplotBorderBottom)
JKQTPGET_MACRO(int, iplotBorderRight)
JKQTPGET_MACRO(int, plotWidth)
JKQTPGET_MACRO(int, plotHeight)
/** \brief returns the property iplotBorderTop. \details Description of the parameter iplotBorderTop is: <CENTER>\copybrief iplotBorderTop.</CENTER>. \see iplotBorderTop for more information */
inline int get_iplotBorderTop() const { return this->iplotBorderTop; }
/** \brief returns the property iplotBorderLeft. \details Description of the parameter iplotBorderLeft is: <CENTER>\copybrief iplotBorderLeft.</CENTER>. \see iplotBorderLeft for more information */
inline int get_iplotBorderLeft() const { return this->iplotBorderLeft; }
/** \brief returns the property iplotBorderBottom. \details Description of the parameter iplotBorderBottom is: <CENTER>\copybrief iplotBorderBottom.</CENTER>. \see iplotBorderBottom for more information */
inline int get_iplotBorderBottom() const { return this->iplotBorderBottom; }
/** \brief returns the property iplotBorderRight. \details Description of the parameter iplotBorderRight is: <CENTER>\copybrief iplotBorderRight.</CENTER>. \see iplotBorderRight for more information */
inline int get_iplotBorderRight() const { return this->iplotBorderRight; }
/** \brief returns the property plotWidth. \details Description of the parameter plotWidth is: <CENTER>\copybrief plotWidth.</CENTER>. \see plotWidth for more information */
inline int get_plotWidth() const { return this->plotWidth; }
/** \brief returns the property plotHeight. \details Description of the parameter plotHeight is: <CENTER>\copybrief plotHeight.</CENTER>. \see plotHeight for more information */
inline int get_plotHeight() const { return this->plotHeight; }
inline JKQTmathText* get_mathText() { return &mathText; }
inline const JKQTmathText* get_mathText() const { return &mathText; }
inline JKQTPhorizontalAxis* get_xAxis() { return xAxis; }
@ -1090,38 +1187,58 @@ class LIB_EXPORT JKQtBasePlotter: public QObject {
inline const JKQTPverticalAxis* get_yAxis() const { return yAxis; }
JKQTPGET_MACRO(QAction*, actSavePlot)
JKQTPGET_MACRO(QAction*, actSaveData)
JKQTPGET_MACRO(QAction*, actCopyData)
JKQTPGET_MACRO(QAction*, actCopyPixelImage)
JKQTPGET_MACRO(QAction*, actCopyMatlab)
JKQTPGET_MACRO(QAction*, actSavePDF)
/** \brief returns the property actSavePlot. \details Description of the parameter actSavePlot is: <CENTER>\copybrief actSavePlot.</CENTER>. \see actSavePlot for more information */
inline QAction* get_actSavePlot() const { return this->actSavePlot; }
/** \brief returns the property actSaveData. \details Description of the parameter actSaveData is: <CENTER>\copybrief actSaveData.</CENTER>. \see actSaveData for more information */
inline QAction* get_actSaveData() const { return this->actSaveData; }
/** \brief returns the property actCopyData. \details Description of the parameter actCopyData is: <CENTER>\copybrief actCopyData.</CENTER>. \see actCopyData for more information */
inline QAction* get_actCopyData() const { return this->actCopyData; }
/** \brief returns the property actCopyPixelImage. \details Description of the parameter actCopyPixelImage is: <CENTER>\copybrief actCopyPixelImage.</CENTER>. \see actCopyPixelImage for more information */
inline QAction* get_actCopyPixelImage() const { return this->actCopyPixelImage; }
/** \brief returns the property actCopyMatlab. \details Description of the parameter actCopyMatlab is: <CENTER>\copybrief actCopyMatlab.</CENTER>. \see actCopyMatlab for more information */
inline QAction* get_actCopyMatlab() const { return this->actCopyMatlab; }
/** \brief returns the property actSavePDF. \details Description of the parameter actSavePDF is: <CENTER>\copybrief actSavePDF.</CENTER>. \see actSavePDF for more information */
inline QAction* get_actSavePDF() const { return this->actSavePDF; }
#if (QT_VERSION < QT_VERSION_CHECK(5, 0, 0))
JKQTPGET_MACRO(QAction*, actSavePS)
/** \brief returns the property actSavePS. \details Description of the parameter actSavePS is: <CENTER>\copybrief actSavePS.</CENTER>. \see actSavePS for more information */
inline QAction* get_actSavePS() const { return this->actSavePS; }
#endif
JKQTPGET_MACRO(QAction*, actSavePix)
JKQTPGET_MACRO(QAction*, actSaveSVG)
JKQTPGET_MACRO(QAction*, actPrint)
JKQTPGET_MACRO(QAction*, actSaveCSV)
JKQTPGET_MACRO(QAction*, actZoomAll)
JKQTPGET_MACRO(QAction*, actZoomIn)
JKQTPGET_MACRO(QAction*, actZoomOut)
JKQTPGET_MACRO(QAction*, actShowPlotData)
JKQTPGET_MACRO(AdditionalActionsMap, lstAdditionalPlotterActions)
/** \brief returns the property actSavePix. \details Description of the parameter actSavePix is: <CENTER>\copybrief actSavePix.</CENTER>. \see actSavePix for more information */
inline QAction* get_actSavePix() const { return this->actSavePix; }
/** \brief returns the property actSaveSVG. \details Description of the parameter actSaveSVG is: <CENTER>\copybrief actSaveSVG.</CENTER>. \see actSaveSVG for more information */
inline QAction* get_actSaveSVG() const { return this->actSaveSVG; }
/** \brief returns the property actPrint. \details Description of the parameter actPrint is: <CENTER>\copybrief actPrint.</CENTER>. \see actPrint for more information */
inline QAction* get_actPrint() const { return this->actPrint; }
/** \brief returns the property actSaveCSV. \details Description of the parameter actSaveCSV is: <CENTER>\copybrief actSaveCSV.</CENTER>. \see actSaveCSV for more information */
inline QAction* get_actSaveCSV() const { return this->actSaveCSV; }
/** \brief returns the property actZoomAll. \details Description of the parameter actZoomAll is: <CENTER>\copybrief actZoomAll.</CENTER>. \see actZoomAll for more information */
inline QAction* get_actZoomAll() const { return this->actZoomAll; }
/** \brief returns the property actZoomIn. \details Description of the parameter actZoomIn is: <CENTER>\copybrief actZoomIn.</CENTER>. \see actZoomIn for more information */
inline QAction* get_actZoomIn() const { return this->actZoomIn; }
/** \brief returns the property actZoomOut. \details Description of the parameter actZoomOut is: <CENTER>\copybrief actZoomOut.</CENTER>. \see actZoomOut for more information */
inline QAction* get_actZoomOut() const { return this->actZoomOut; }
/** \brief returns the property actShowPlotData. \details Description of the parameter actShowPlotData is: <CENTER>\copybrief actShowPlotData.</CENTER>. \see actShowPlotData for more information */
inline QAction* get_actShowPlotData() const { return this->actShowPlotData; }
/** \brief returns the property lstAdditionalPlotterActions. \details Description of the parameter lstAdditionalPlotterActions is: <CENTER>\copybrief lstAdditionalPlotterActions.</CENTER>. \see lstAdditionalPlotterActions for more information */
inline AdditionalActionsMap get_lstAdditionalPlotterActions() const { return this->lstAdditionalPlotterActions; }
/** \brief this function registers additional actions to lstAdditionalPlotterActions, which are displayed in the context-menu */
void registerAdditionalAction(const QString& key, QAction* act);
void deregisterAdditionalAction(QAction* act);
JKQTPGET_MACRO(bool, masterSynchronizeWidth)
JKQTPGET_MACRO(bool, masterSynchronizeHeight)
/** \brief returns the property masterSynchronizeWidth. \details Description of the parameter masterSynchronizeWidth is: <CENTER>\copybrief masterSynchronizeWidth.</CENTER>. \see masterSynchronizeWidth for more information */
inline bool get_masterSynchronizeWidth() const { return this->masterSynchronizeWidth; }
/** \brief returns the property masterSynchronizeHeight. \details Description of the parameter masterSynchronizeHeight is: <CENTER>\copybrief masterSynchronizeHeight.</CENTER>. \see masterSynchronizeHeight for more information */
inline bool get_masterSynchronizeHeight() const { return this->masterSynchronizeHeight; }
JKQTPSET_MACRO(QColor, def_backgroundColor)
JKQTPSET_MACRO(QColor, def_plotBackgroundColor)
JKQTPGET_SET_MACRO(double, fontSizePrintMultiplier)
JKQTPGET_SET_MACRO(double, lineWidthPrintMultiplier)
JKQTPGET_MACRO(double, fontSizeMultiplier)
JKQTPGET_MACRO(double, lineWidthMultiplier)
/** \brief returns the property fontSizeMultiplier. \details Description of the parameter fontSizeMultiplier is: <CENTER>\copybrief fontSizeMultiplier.</CENTER>. \see fontSizeMultiplier for more information */
inline double get_fontSizeMultiplier() const { return this->fontSizeMultiplier; }
/** \brief returns the property lineWidthMultiplier. \details Description of the parameter lineWidthMultiplier is: <CENTER>\copybrief lineWidthMultiplier.</CENTER>. \see lineWidthMultiplier for more information */
inline double get_lineWidthMultiplier() const { return this->lineWidthMultiplier; }
/** \brief returns description of i'th graph */
@ -1423,7 +1540,7 @@ class LIB_EXPORT JKQtBasePlotter: public QObject {
class LIB_EXPORT JKQTPSaveDataAdapter {
public:
virtual ~JKQTPSaveDataAdapter() {}
virtual ~JKQTPSaveDataAdapter() ;
virtual QString getFilter() const=0;
virtual void saveJKQTPData(const QString& filename, const QList<QVector<double> >& data, const QStringList& columnNames) const=0;
};

View File

@ -496,8 +496,10 @@ class LIB_EXPORT JKQTPxGraphErrors: public JKQTPgraphErrors {
JKQTPxGraphErrors(QColor graphColor=QColor("black"));
JKQTPGET_SET_MACRO(bool, xErrorSymmetric)
JKQTPGET_MACRO(int, xErrorColumnLower)
JKQTPGET_MACRO(int, xErrorColumn)
/** \brief returns the property xErrorColumnLower. \details Description of the parameter xErrorColumnLower is: <CENTER>\copybrief xErrorColumnLower.</CENTER>. \see xErrorColumnLower for more information */
inline int get_xErrorColumnLower() const { return this->xErrorColumnLower; }
/** \brief returns the property xErrorColumn. \details Description of the parameter xErrorColumn is: <CENTER>\copybrief xErrorColumn.</CENTER>. \see xErrorColumn for more information */
inline int get_xErrorColumn() const { return this->xErrorColumn; }
JKQTPGET_SET_MACRO(JKQTPerrorPlotstyle, xErrorStyle)
/** \brief set the column from which to read the error values for x-error indicators */
void set_xErrorColumn(int __value);
@ -538,8 +540,10 @@ class LIB_EXPORT JKQTPyGraphErrors: public JKQTPgraphErrors {
JKQTPyGraphErrors(QColor graphColor=QColor("black"));
JKQTPGET_SET_MACRO(bool, yErrorSymmetric)
JKQTPGET_MACRO(int, yErrorColumnLower)
JKQTPGET_MACRO(int, yErrorColumn)
/** \brief returns the property yErrorColumnLower. \details Description of the parameter yErrorColumnLower is: <CENTER>\copybrief yErrorColumnLower.</CENTER>. \see yErrorColumnLower for more information */
inline int get_yErrorColumnLower() const { return this->yErrorColumnLower; }
/** \brief returns the property yErrorColumn. \details Description of the parameter yErrorColumn is: <CENTER>\copybrief yErrorColumn.</CENTER>. \see yErrorColumn for more information */
inline int get_yErrorColumn() const { return this->yErrorColumn; }
JKQTPGET_SET_MACRO(JKQTPerrorPlotstyle, yErrorStyle)
/** \copydoc JKQTPgraphErrors::errorUsesColumn() */
virtual bool errorUsesColumn(int c) const override;
@ -578,10 +582,14 @@ class LIB_EXPORT JKQTPxyGraphErrors: public JKQTPgraphErrors {
JKQTPxyGraphErrors(QColor graphColor=QColor("black"));
JKQTPGET_SET_MACRO(bool, xErrorSymmetric)
JKQTPGET_SET_MACRO(bool, yErrorSymmetric)
JKQTPGET_MACRO(int, xErrorColumnLower)
JKQTPGET_MACRO(int, xErrorColumn)
JKQTPGET_MACRO(int, yErrorColumnLower)
JKQTPGET_MACRO(int, yErrorColumn)
/** \brief returns the property xErrorColumnLower. \details Description of the parameter xErrorColumnLower is: <CENTER>\copybrief xErrorColumnLower.</CENTER>. \see xErrorColumnLower for more information */
inline int get_xErrorColumnLower() const { return this->xErrorColumnLower; }
/** \brief returns the property xErrorColumn. \details Description of the parameter xErrorColumn is: <CENTER>\copybrief xErrorColumn.</CENTER>. \see xErrorColumn for more information */
inline int get_xErrorColumn() const { return this->xErrorColumn; }
/** \brief returns the property yErrorColumnLower. \details Description of the parameter yErrorColumnLower is: <CENTER>\copybrief yErrorColumnLower.</CENTER>. \see yErrorColumnLower for more information */
inline int get_yErrorColumnLower() const { return this->yErrorColumnLower; }
/** \brief returns the property yErrorColumn. \details Description of the parameter yErrorColumn is: <CENTER>\copybrief yErrorColumn.</CENTER>. \see yErrorColumn for more information */
inline int get_yErrorColumn() const { return this->yErrorColumn; }
JKQTPGET_SET_MACRO(JKQTPerrorPlotstyle, yErrorStyle)
JKQTPGET_SET_MACRO(JKQTPerrorPlotstyle, xErrorStyle)
/** \copydoc JKQTPgraphErrors::errorUsesColumn() */

View File

@ -252,7 +252,8 @@ class LIB_EXPORT JKQTPImage: public JKQTPImageBase {
/** \brief deletes the internal image */
void clear_image();
JKQTPGET_MACRO(QImage*, image)
/** \brief returns the property image. \details Description of the parameter image is: <CENTER>\copybrief image.</CENTER>. \see image for more information */
inline QImage* get_image() const { return this->image; }
protected:
/** \brief the image to be plotted. This is freed by the destructor, iff \a image_owned is set to \c true (.e.g by QImage-copy-constructors) */
QImage* image;
@ -336,10 +337,14 @@ class LIB_EXPORT JKQTPMathImage: public JKQTPMathImageBase {
JKQTPGET_SET_MACRO(QString, imageName)
JKQTPGET_SET_MACRO(QString, imageNameFontName)
JKQTPGET_SET_MACRO(double, imageNameFontSize)
JKQTPGET_MACRO(JKQTPverticalIndependentAxis*, colorBarRightAxis)
JKQTPGET_MACRO(JKQTPhorizontalIndependentAxis*, colorBarTopAxis)
JKQTPGET_MACRO(JKQTPverticalIndependentAxis*, modifierColorBarTopAxis)
JKQTPGET_MACRO(JKQTPhorizontalIndependentAxis*, modifierColorBarRightAxis )
/** \brief returns the property colorBarRightAxis. \details Description of the parameter colorBarRightAxis is: <CENTER>\copybrief colorBarRightAxis.</CENTER>. \see colorBarRightAxis for more information */
inline JKQTPverticalIndependentAxis* get_colorBarRightAxis() const { return this->colorBarRightAxis; }
/** \brief returns the property colorBarTopAxis. \details Description of the parameter colorBarTopAxis is: <CENTER>\copybrief colorBarTopAxis.</CENTER>. \see colorBarTopAxis for more information */
inline JKQTPhorizontalIndependentAxis* get_colorBarTopAxis() const { return this->colorBarTopAxis; }
/** \brief returns the property modifierColorBarTopAxis. \details Description of the parameter modifierColorBarTopAxis is: <CENTER>\copybrief modifierColorBarTopAxis.</CENTER>. \see modifierColorBarTopAxis for more information */
inline JKQTPverticalIndependentAxis* get_modifierColorBarTopAxis() const { return this->modifierColorBarTopAxis; }
/** \brief returns the property modifierColorBarRightAxis . \details Description of the parameter modifierColorBarRightAxis is: <CENTER>\copybrief modifierColorBarRightAxis .</CENTER>. \see modifierColorBarRightAxis for more information */
inline JKQTPhorizontalIndependentAxis* get_modifierColorBarRightAxis() const { return this->modifierColorBarRightAxis ; }
JKQTPGET_SET_MACRO(bool, colorBarTopVisible)
JKQTPGET_SET_MACRO(bool, colorBarRightVisible)
JKQTPGET_SET_MACRO(bool, autoModifierRange)
@ -529,12 +534,18 @@ class LIB_EXPORT JKQTPRGBMathImage: public JKQTPMathImageBase {
JKQTPGET_SET_MACRO(QString, imageNameB)
JKQTPGET_SET_MACRO(QString, imageNameFontName)
JKQTPGET_SET_MACRO(double, imageNameFontSize)
JKQTPGET_MACRO(JKQTPverticalIndependentAxis*, colorBarRightAxis)
JKQTPGET_MACRO(JKQTPhorizontalIndependentAxis*, colorBarTopAxis)
JKQTPGET_MACRO(JKQTPverticalIndependentAxis*, colorBarRightAxisG)
JKQTPGET_MACRO(JKQTPhorizontalIndependentAxis*, colorBarTopAxisG)
JKQTPGET_MACRO(JKQTPverticalIndependentAxis*, colorBarRightAxisB)
JKQTPGET_MACRO(JKQTPhorizontalIndependentAxis*, colorBarTopAxisB)
/** \brief returns the property colorBarRightAxis. \details Description of the parameter colorBarRightAxis is: <CENTER>\copybrief colorBarRightAxis.</CENTER>. \see colorBarRightAxis for more information */
inline JKQTPverticalIndependentAxis* get_colorBarRightAxis() const { return this->colorBarRightAxis; }
/** \brief returns the property colorBarTopAxis. \details Description of the parameter colorBarTopAxis is: <CENTER>\copybrief colorBarTopAxis.</CENTER>. \see colorBarTopAxis for more information */
inline JKQTPhorizontalIndependentAxis* get_colorBarTopAxis() const { return this->colorBarTopAxis; }
/** \brief returns the property colorBarRightAxisG. \details Description of the parameter colorBarRightAxisG is: <CENTER>\copybrief colorBarRightAxisG.</CENTER>. \see colorBarRightAxisG for more information */
inline JKQTPverticalIndependentAxis* get_colorBarRightAxisG() const { return this->colorBarRightAxisG; }
/** \brief returns the property colorBarTopAxisG. \details Description of the parameter colorBarTopAxisG is: <CENTER>\copybrief colorBarTopAxisG.</CENTER>. \see colorBarTopAxisG for more information */
inline JKQTPhorizontalIndependentAxis* get_colorBarTopAxisG() const { return this->colorBarTopAxisG; }
/** \brief returns the property colorBarRightAxisB. \details Description of the parameter colorBarRightAxisB is: <CENTER>\copybrief colorBarRightAxisB.</CENTER>. \see colorBarRightAxisB for more information */
inline JKQTPverticalIndependentAxis* get_colorBarRightAxisB() const { return this->colorBarRightAxisB; }
/** \brief returns the property colorBarTopAxisB. \details Description of the parameter colorBarTopAxisB is: <CENTER>\copybrief colorBarTopAxisB.</CENTER>. \see colorBarTopAxisB for more information */
inline JKQTPhorizontalIndependentAxis* get_colorBarTopAxisB() const { return this->colorBarTopAxisB; }
JKQTPGET_SET_MACRO(bool, colorBarTopVisible)
JKQTPGET_SET_MACRO(bool, colorBarRightVisible)
JKQTPGET_SET_MACRO(bool, colorbarsSideBySide)

View File

@ -21,8 +21,7 @@
/**
* \defgroup jkqtplotter Qt based Scientific Plotter Class
* \ingroup tools_qt
* \defgroup jkqtplotter JKQtPlotter: Qt based Scientific Plotter Class
*
* A Qt based plotter for 2D scientific graphs.
*/
@ -212,7 +211,8 @@ class LIB_EXPORT JKQtPlotter: public QWidget {
//GET_SET_MACRO(bool, zoomByDoubleAndRightMouseClick);
JKQTPGET_SET_MACRO(RightMouseButtonAction, rightMouseButtonAction)
JKQTPGET_SET_MACRO(LeftDoubleClickAction, leftDoubleClickAction)
JKQTPGET_MACRO(QMenu*, menuSpecialContextMenu)
/** \brief returns the property menuSpecialContextMenu. \details Description of the parameter menuSpecialContextMenu is: <CENTER>\copybrief menuSpecialContextMenu.</CENTER>. \see menuSpecialContextMenu for more information */
inline QMenu* get_menuSpecialContextMenu() const { return this->menuSpecialContextMenu; }
void set_menuSpecialContextMenu(QMenu* menu);
JKQTPGET_SET_MACRO(bool, zoomByMouseWheel)
@ -475,13 +475,19 @@ class LIB_EXPORT JKQtPlotter: public QWidget {
/** \brief fill color of the zoom rectangle */
JKQTPPROPERTY(QColor, userActionColor)
QColor userActionColor;
/** \brief default value for property property varname. \see userActionColor for more information */
QColor def_userActionColor;
/** \brief fill color of the zoom rectangle */
JKQTPPROPERTY(QPainter::CompositionMode, userActionCompositionMode)
QPainter::CompositionMode userActionCompositionMode;
/** \brief default value for property property varname. \see userActionCompositionMode for more information */
QPainter::CompositionMode def_userActionCompositionMode;
/** \brief width/height of the icons in the plotter toolbar in pixels */
JKQTPPROPERTY(int, toolbarIconSize)
int toolbarIconSize;
/** \brief default value for property property varname. \see toolbarIconSize for more information */
int def_toolbarIconSize;
/** \brief this is set \c true if we are drawing a zoom rectangle */
bool mouseDragingRectangle;
@ -602,7 +608,9 @@ class LIB_EXPORT JKQtPlotter: public QWidget {
top border, so the position fits in. The default widget font is used for the output. */
bool displayMousePosition;
/** \brief this string is used to generate the position output above the graph */
JKQTPPROPERTY(QString, mousePositionTemplate)
QString mousePositionTemplate;
/** \brief default value for property property varname. \see mousePositionTemplate for more information */
QString def_mousePositionTemplate;
/** \brief if set \c true and displayMousePosition is \c true, the mouse position is not automatically determined, but the text given to setMousePositionLabel() is used */
bool displayCustomMousePosition;
QString customMousePositiontext;

View File

@ -104,9 +104,11 @@ LIB_EXPORT void jkloadSplitter(QSettings& settings, QSplitter* splitter, QString
LIB_EXPORT QString jkVariantListToString(const QList<QVariant>& data, QString separator=QString(", "));
/*! \brief filename-ize a string, i.e. replace every non-number and non-character (and also not <code> _ -</code>) character to \c _ */
/*! \brief filename-ize a string, i.e. replace every non-number and non-character (and also not <code> _ -</code>) character to \c _
\ingroup tools_qt */
LIB_EXPORT QString jkqtp_filenameize(const QString& data);
/** \brief create a valid variable name from the string, i.e. a string with only characters and digits and \c '_'. ALso the first character has to be a charcter. */
/** \brief create a valid variable name from the string, i.e. a string with only characters and digits and \c '_'. ALso the first character has to be a charcter.
\ingroup tools_qt */
LIB_EXPORT QString jkqtp_toValidVariableName(const QString& input);
#endif // JKQTTOOLS_H