Snolandia
a275fb73c3
Couple bug fixes ( #147 )
...
* BugFix
* Resolve several issues
1: Allow mouse scroll events to pass through to parent if the plot has not mouse scroll events to do. i.e. if scroll to zoom is disabled, and the graph is part of a scroll area, this allows scrolling the scroll area while the mouse is over the plot.
2: Fixed bug with resize timer resetting itself every time, rather than actually performing the countdown and calling the function.
3. Fixed bug with margins being calculated incorrectly, preventing the complete removal of margins from a plot.
2025-01-15 21:21:39 +01:00
jkriege2
9b877f9ed6
improved documentation
2024-09-18 14:38:02 +02:00
jkriege2
e25b494eb5
change to allow compiling against older Qt versions
2024-03-18 11:32:09 +01:00
jkriege2
210c7aaa42
improved qHash-functions and class constructors
...
NEW jkqtp_hash_combine() and jkqtp_combine_hash()
2024-02-05 17:12:34 +01:00
jkriege2
3b231273ef
FIXED symmetry when zooming with JKQTBasePlotter::zoomIn() or JKQTBasePlotter::zoomOut()
2024-02-05 00:24:39 +01:00
jkriege2
868d6dcdf4
fixed several compile warnings
2024-01-23 13:09:37 +01:00
jkriege2
8ccaaaebe6
NEW: added "currentcolor" as color-placeholder in style.ini files and using it in conjunction with linear-gradient() in cyberpunk and dark styles
...
NEW: added style simple_noaxes.ini
2024-01-22 21:31:09 +01:00
jkriege2
e5821eee3f
NEW allow linear-gradient()... in brush definitions of style.ini-file
2024-01-21 22:21:27 +01:00
jkriege2
4cd8a46245
FIXed drawing of secondary axes (distances betweeen axes were wrong, in part doubled and inside-ticks for secondary axes were not taken into account ... also fixed several minor bugs around this)
2024-01-10 12:35:48 +01:00
jkriege2
f096aa9602
fixed several static code analysis warnings and security vulnerabilities
2024-01-10 10:35:43 +01:00
jkriege2
3fee9609fb
NEW: Added CMake option JKQtPlotter_BUILD_WITH_TIMING_INFO_OUTPUT, which activates several runtime-measurement guards of type JKQTPAutoOutputTimer (output via qDebug())
2024-01-08 17:14:03 +01:00
jkriege2
9662ed2d69
MODIFIED: Synchronization of JKQTMathText and JKQTBasePlotter over threads: using read/write lockers now and removed some unnecessary mutexes by using a kind of singleton pattern
2024-01-05 23:26:47 +01:00
jkriege2
591f0dfe64
FIXED: using QSharedPointer for automatic memory management
2024-01-04 23:59:46 +01:00
jkriege2
36947a4bca
REWORKED JKQTBasePlotter::saveData() with a more consistent interface and a bool return value to indicate success or failure + improved documentation
...
NEW: added two functions to JKQTPSaveDataAdapter
2023-12-22 20:34:32 +01:00
jkriege2
0595fef048
BREAKING/DEPRECATED: deprecated JKQTBasePlotter::zoom() and JKQTPlotter::zoom(), use JKQTBasePlotter::setXY() and JKQTPlotter::setXY() instead
...
NEW: improved documentation of class methods
2023-12-22 20:31:25 +01:00
jkriege2
995ca92033
FIXED/REWORKED issue https://github.com/jkriege2/JKQtPlotter/issues/111 : Can't write to PDF files with JKQTPlotter::saveImage() when passing a filename ending in ".pdf" (thanks to https://github.com/fpalazzolo for reporting)
...
IMPROVED/REWORKED: The functions JKQTBasePlotter::saveImage(), JKQTBasePlotter::saveAsPixelImage(), JKQTBasePlotter::saveAsPDF(), JKQTBasePlotter::saveSVG(), ... gained a bool return value to indicate whether sacing was successful.
IMPROVED/REWORKED: More <code>save...()</code> functions will appear in the API of JKQTPlotter, so you don't have to go via JKQTPlotter::getPlotter(). These are merely forwarding the call to the internel JKQTBasePlotter instance.
2023-12-21 12:24:30 +01:00
jkriege2
f2004a6f66
NEW/BREAKING: rework layouting of keys/legends: new classes JKQTPBaseKey, JKQTPMainKey ... and removed several styling function for the main key from JKQTBasePlotter and JKQTPlotter (these are now accessible via JKQTBasePlotter::getMainKey()
...
IMPROVED/REWORKED: legend/key positioning as combination of 3 values, e.g. \c JKQTPKeyOutsideTop|JKQTPKeyTop|JKQTPKeyRight or \c JKQTPKeyInside|JKQTPKeyTopJKQTPKeyRight
2023-12-18 22:24:59 +01:00
jkriege2
134739c5a5
FIXED: Height of one-column key/legend was too large
2023-08-24 22:11:44 +02:00
jkriege2
5cc0b65d9a
NEW: added JKQTPLabelMinBesides and JKQTPLabelMaxBesides to JKQTPLabelPosition, so labels can be set besides the axes
2023-08-24 21:49:39 +02:00
jkriege2
22d8bdd674
partly fixed issue #99 : for horizontal axes, additional space at the left and/or right of the plot is allowed so labels are no longer clipped (thanks to user:allenbarnett5 for reporting)
2023-08-22 17:32:00 +02:00
jkriege2
fa50c3c130
NEW: added JKQTBasePlotterStyle::plotLabelTopBorder and made plot labels BOLD
2023-08-16 14:04:04 +02:00
jkriege2
49d79e610d
FIXED/NEW: placement of plot-title (was not centerd in its box, but glued to the bottom) by adding a plotstyle parameter JKQTBasePlotterStyle::plotLabelOffset
2023-08-15 15:26:06 +02:00
jkriege2
754553568d
NEW added entry for plotLabelColor to JKQTBasePlotterStyle
2023-07-25 22:21:42 +02:00
jkriege2
b6b5c48d9e
FIXED: exporting gridPrinting plots when using only a JKQTBasePlotter
2023-07-22 00:12:55 +02:00
jkriege2
3a789250be
NEW: added variant of JKQTBasePlotter::setWidgetSize() which accepts QSize
2023-07-21 22:58:01 +02:00
jkriege2
7f6c5fc9aa
FIXED: Barcharts were not filled with cycling patterns properly and the first default symbol was never used (in JKQTBasePlotter::getPlotStyle())
2023-07-21 21:53:06 +02:00
jkriege2
d23ea0a79e
fix issue #96 : JKQTPlotter::saveAsPixelImage() does not add a border around the image any longer (can be reacivated by a new optional function parameter)
2023-07-01 22:27:00 +02:00
jkriege2
a1408ccbd0
JKQTMathText: Update several layouting nodes (especially braces)
2023-07-01 15:57:57 +02:00
jkriege2
3b136c7320
fixed some compile errors in static initialization
2023-07-01 14:44:46 +02:00
jkriege2
3fc8951851
made more STATIC data members thread_local or secured them by a std::mutex. This was at least JKQTMathText and JKQTBasePlotter should be usable in several threads
2023-06-30 13:52:17 +02:00
jkriege2
ebd1a29e1d
BREAKING: Implement better/more access functions to the graphs (inlcuding sorting, moving up/down, appending/prepending, graphs-iterators ...), solves issue #97
2023-05-27 23:46:45 +02:00
jkriege2
fc642b6cac
bugfixed QSet-initialization
2023-03-23 14:53:23 +01:00
jkriege2
f61b46b96b
NEW: secondary axes: added functionality to manage additional secondary axes in a JKQTPBasePlotter and to select which x-/y-Axis to use for drawing a JKQTPPlotElement, see also issue #87
2023-03-23 13:55:18 +01:00
jkriege2
3de1df2b94
updated impulse plots & doc
2022-09-26 02:08:01 +02:00
jkriege2
8855891eea
NEW: added option to draw a zero axis to JKQTPCoordinateAxis, which draws an axis at the origin of the coordinate system
2022-09-25 15:34:05 +02:00
jkriege2
16df80c8c7
JKQTPlotter: NEW: Added signals JKQTBasePlotter::beforeExporting()/JKQTBasePlotter::afterExporting() and JKQTBasePlotterJKQTBasePlotter:beforePrinting()/JKQTBasePlotter::afterPrinting() which allow to modify the plot just before and just after an export/print
2022-09-12 00:35:45 +02:00
jkriege2
6ebd8743ca
JKQTMathText:
...
- NEW: Added the Fira Math fonts as sans-serif symbol font to the library (as a ressource) and added JKQTMathText::useFiraMath()
- NEW: Added JKQTMathText::useGuiFonts()</li>
JKQTPlotter:
- NEW: Using JKQTMathText::useGuiFonts() for FONT rendering by default
2022-09-01 14:36:34 +02:00
jkriege2
4ef29635ea
JKQTPlotter: improved plotting speed for line-graphs by drawing a series of single lines instead of a polyline in some cases
2022-08-30 22:24:24 +02:00
jkriege2
7030475568
NEW: added JKQTBasePlotter::grabPixelImage() and JKQTPlotter::grabPixelImage(), which grab the plotter into a QImage
...
NEW: added option to not display the preview dialog to JKQTBasePlotter::copyPixelImage() and JKQTPlotter::copyPixelImage()
2022-08-26 12:28:06 +02:00
jkriege2
f83a3468b1
JKQTMathText:
...
- new options interface for JKQTMathText::parse()
- breaking: removed JKQTMathtext::unparsedNode
- several minor improvements
2022-08-13 19:43:39 +02:00
jkriege2
c399959774
fixed several (pedantic) compiler warnings
...
fixed CMake problems
2022-07-23 16:05:13 +02:00
jkriege2
5087970c79
updated copyright notice
2022-07-19 13:40:43 +02:00
jkriege2
d8c1524f61
partly solve issue #81 by making print-support optional. In addition it can be switched off with the CMake-option JKQtPlotter_BUILD_FORCE_NO_PRINTER_SUPPORT=ON
2022-07-18 23:33:20 +02:00
jkriege2
f33838f187
added debug-feature to show boxes around text in the plot
2022-06-02 23:05:58 +02:00
jkriege2
cf27b77b6b
added JKQTMathTextFontSpecifier struct that describes a font and a math companion
2022-06-02 21:19:16 +02:00
jkriege2
0a5fa42470
more required changes for Qt6 compatibility
2022-04-22 13:27:31 +02:00
jkriege2
62adbd8036
Merge branch 'master' into add_qt6_compatibility
2022-04-21 12:15:15 +02:00
jkriege2
cc6a87c6d2
fixed bug #48 some users could not #include <QPrintPreviewWidget>
2022-04-21 12:13:23 +02:00
jkriege2
4ded1a2028
first round of Qt6 compatibility changes
2022-04-21 10:57:24 +02:00
jkriege2
052fc27cfb
replaced some deprecated constructs for Qt 5.15
2022-04-18 22:45:02 +02:00