jkriege2
c399959774
fixed several (pedantic) compiler warnings
...
fixed CMake problems
2022-07-23 16:05:13 +02:00
jkriege2
e923a9de7b
improved CMake scripts: better output, less warnings
2022-07-23 13:59:23 +02:00
jkriege2
ae3d3b479d
better way to reuse PCH in examples, added CMake-Option to (de)activate PCH-usage
2022-07-22 21:44:16 +02:00
jkriege2
671e25b33b
removed some compiler warnings and fixed construction problems
2022-07-22 16:24:24 +02:00
jkriege2
8b6e420c56
bugfix: added #define _USE_MATH_DEFINES needed for msvc to use M_PI, M_LN2...
2022-07-21 12:06:22 +02:00
jkriege2
25c55391ab
NEW: Using precompiled headers in CMake-build to speed up build times
2022-07-20 22:31:42 +02:00
jkriege2
459c7d7809
bugfixed CMakeLists.txt
2022-07-19 14:21:51 +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
d132009679
added some additional accent-control-sequences
2022-07-18 15:01:42 +02:00
jkriege2
a1a2fcdd3f
clean-up of library dependencies
2022-07-18 15:01:12 +02:00
jkriege2
a8da6caf0d
IMPROVED JKQTMathText: tokenizing and parsing of text in text-mode: now a lot of accents with commands like \"a, \'e and variants (e.g. {\"a}, \"{a}, ...) are supported now
...
NEW in JKQTMathText: added \acute{X}, \grave{X}, \acute{X}
2022-07-10 22:01:11 +02:00
jkriege2
24cb74fc06
bugfixed Qt5.x problem
2022-07-09 10:57:46 +02:00
jkriege2
5dee5ae93d
JKQTMathText: refactored \\instruction parsing
...
JKQTMathText: added \shaded{color}{...}, \ovalbox{}, ... commands
2022-07-08 23:15:42 +02:00
jkriege2
36aeec13aa
refactored/simplified JKQTMathText::parseLatexString()
...
bugfixed regression: JKQTMathText displays \left.\right)-type braces and \sum,\int,... with and without \limits correctly again
2022-07-06 22:44:02 +02:00
jkriege2
f9370799fc
minor bugfix: missing return
2022-07-06 21:00:24 +02:00
jkriege2
fc83ebea4c
Wingdings symbols
2022-07-06 21:00:03 +02:00
jkriege2
0ab3626f4d
refactored symbol node, should also fix issue #78
2022-07-05 22:03:08 +02:00
jkriege2
341e1ac2ef
bugfixed missing QFontMettricsF::width() in newer Qt versions, should fix issue #77
2022-07-05 20:14:51 +02:00
jkriege2
2ef181301b
NEW: JKQTMathText: added functions to set the font-size in pixels (as alternative to the existing functions that set them in points), implements request #76
2022-07-04 21:02:43 +02:00
jkriege2
9a13e5127a
JKQTMathText: improve documentation (fixes issue #74 ), add new draw()-variant, which accepts a QPointF
2022-07-03 21:30:12 +02:00
jkriege2
0f958cc2d6
- JKQTMathText: IMPROVED/breaking: refactored symbol node JKQTMathTextSymbolNode and changed font-lookup!
...
- JKQTMathText: IMPROVED/NEW/breaking: refactored whitespace-processing node JKQTMathTextWhitespaceNode, now all major LaTeX whitespace commands are supported properly
2022-07-03 20:30:12 +02:00
jkriege2
8814523e63
BUGFIX: JKQTMathText: corrected size-calculation and drawing of decorations
2022-06-28 23:14:31 +02:00
jkriege2
9a7e44889f
IMPROVED: JKQTMathText: optional parameter of \sqrt is properly parsed now
2022-06-28 21:59:50 +02:00
jkriege2
6c26e250da
IMPROVED: JKQTMathText: rendering of sqrt
2022-06-28 12:00:20 +02:00
jkriege2
b83e0a3292
NEW: JKQTMathText: added \underbracket and \overbracket
2022-06-28 10:15:54 +02:00
jkriege2
fc557c9aff
IMPROVEMENT: JKQTMathText: added x-correction for sub/superscript above/below/besides integrals
2022-06-27 22:57:49 +02:00
jkriege2
56418f9504
IMPROVEMENTS: JKQTMathText: underbrace/overbrace and angle-braket improvements
2022-06-27 21:09:22 +02:00
jkriege2
ebdc183b2b
IMPROVED: JKQTMathText: improved drawing of parantheses, square brackets ...
2022-06-26 23:46:11 +02:00
jkriege2
2d2acc3b19
NEW: JKQTMathText: added top-corner (\ulcorner/\urcorner) and bottom-corner brackets (\llcorner/\lrcorner)
2022-06-26 21:17:42 +02:00
jkriege2
45d6ef373b
bugfix: JKQTMathText: \sum and \prod used the wrong symbol in XITS-mode
...
NEW: JKQTMathText: \limits and \nolimits work as in LaTeX now (before it was simply removed and the functionality implemented for a fixed list of symbols)
remove/breaking: JKQTMathText: \v[a-zA-Z] and shorthand for \vec{a-zA-Z} was removed
improvement: improved typesetting of sub-/supercripts, especially for large math operators and braces
2022-06-26 00:28:49 +02:00
jkriege2
f49714ecb6
JKQTMathText: improved quotation mark symbols
2022-06-20 12:21:38 +02:00
jkriege2
48a9a45af9
JKQTMathText code/documentation cleanup
2022-06-20 12:18:19 +02:00
jkriege2
d8a3539844
bugfix: didn't compile with Qt < 6.0
2022-06-20 09:53:28 +02:00
jkriege2
f9c060af68
FIXED: JKQTMathText: symbol spacing in math mode (and text mode)
2022-06-19 23:34:25 +02:00
jkriege2
03c59d3507
NEW: LaTeX-Parser simplifies parse-tree to increase speed of execution
2022-06-19 22:36:38 +02:00
jkriege2
d885f7f00a
NEW: JKQTMathText: LaTeX-Parser understands optional instruction parameters in [...] now
2022-06-19 15:11:06 +02:00
jkriege2
5c255712ce
JKQTMathTextBraceNode uses an enum to reference brace types, not a QStrig
2022-06-09 21:37:06 +02:00
jkriege2
c8ef57bb66
JKQTMathText: moved some node-specific enums into the node classes
2022-06-09 20:32:16 +02:00
jkriege2
7b83640a19
moved JKQTMathText images to their own subdirectory
2022-06-09 14:42:25 +02:00
jkriege2
992cad7ff3
MODIFIED: brace node now calculates the extension of the child height above or below the strikeoutPos, in order to center braces around the strikeoutPos
...
fixed: strikeoutPos was not correctly calculated in sub-/superscript node
NEW: JKQTMathText shows strikeoutPos when drawing Debug-Boxes
2022-06-09 14:31:27 +02:00
jkriege2
143ae54ae8
JKQTMathText: modified text-positions of \sfrac and \stfrac
2022-06-09 11:32:57 +02:00
jkriege2
1a8de1bb2f
- NEW: reworked node class tree: inserted base-class nodes for single-child, dual-child!
...
- NEW: improved frac-rendering: font-scaling takes nesting-level into account, overall-rendering, sizes, if a brace surrounds a frac, the heights are equal above and below to center the brace ...
2022-06-08 23:52:22 +02:00
jkriege2
94ca27aed0
NEW/BREAKING: restructured JKQTMathText: broke up single, large CPP-file into several smaller files
...
added more examples to jkqtmathtext_test
2022-06-08 15:38:26 +02:00
jkriege2
b0f8a2d0b9
- NEW: JKQTMathText supports new decoration instructions: \cancel, \xcancel, \bcancel, \sout, \ocirc, \widetilde, \widehat, \breve</li>
...
- NEW: JKQTMathText: reworked drawing of decorations: improved appearance and positioning!
2022-06-06 23:24:05 +02:00
jkriege2
0f0c03772e
NEW: JKQTMathText supports new instructions: \cancel, \xcancel, \bcancel, \sout
2022-06-06 14:16:50 +02:00
jkriege2
d6b6a71395
fixes/improvements: JKQTMathText renders several LaTeX strings better (simple braces in math mode, +-*... as symbols with proper sizes in math mode, added some missing instruction aliases, improved size of \vec and \hat, corrrected fonts usage for mathrm,
2022-06-03 13:33:18 +02:00
jkriege2
285814f2e6
fixed: JKQTMathText added a little whitespace before and after the LaTeX-string. This was removed as it disturbed the layout of text in plots
2022-06-02 23:24:41 +02:00
jkriege2
d3b74875db
improved Qt6-compatibility by getting rid of deprecated warnings
2022-06-02 22:31:39 +02:00
jkriege2
bf21d53149
improved high-dpr-support in JKQTMathText
2022-06-02 22:17:38 +02:00
jkriege2
cf27b77b6b
added JKQTMathTextFontSpecifier struct that describes a font and a math companion
2022-06-02 21:19:16 +02:00
jkriege2
b8088ccc69
improved/bugfixed doxygen documentation
2022-04-24 13:23:59 +02:00
jkriege2
0a5fa42470
more required changes for Qt6 compatibility
2022-04-22 13:27:31 +02:00
jkriege2
4ded1a2028
first round of Qt6 compatibility changes
2022-04-21 10:57:24 +02:00
jkriege2
8835febb96
modified CMakeLists.txt to match Qt6
2022-04-18 23:10:05 +02:00
jkriege2
725d19d616
using Qt's dllexport/import-macros
2022-04-18 22:00:41 +02:00
jkriege2
d51d47b2f4
requiring higher cmake-version, due to CMP0076
...
using CMAKE_CURRENT_LIST_DIR instead of CMAKE_CURRENT_SOURCE_DIR
2022-04-18 22:00:31 +02:00
jkriege2
2697e66e31
CMakeLists.txt: using target_sources() and making CPP-files private!
2022-04-18 14:19:35 +02:00
Patrick Stewart
29e970ed6f
Use PROJECT_SOURCE_DIR instead of CMAKE_SOURCE_DIR
...
This means that the project can be used with CMake fetchcontent / add_subdriectory
2020-10-02 14:40:47 +01:00
jkriege2
0faa51c9f5
comment formatting fix
2020-09-21 13:52:13 +02:00
jkriege2
87755ce515
diverse code improvements, increased copyright year to 2020
2020-08-26 12:58:23 +02:00
jkriege2
696ce11514
improved code style
2020-08-26 11:00:25 +02:00
jkriege2
7e9bad29b4
fix for issue #45 :
...
- for Qt 5.15: added missing #include statements that became necessary since Qt 5.15
- for Qt 5.15: fixed use of several deprecated functions
- for Qt 5.15/6: removed usage of QMatrix
2020-08-14 14:12:59 +02:00
jkriege2
eb7fd1d524
some bugfixes for VStudio NOMINMAX-problem ...
2020-06-29 08:01:40 +02:00
jkriege2
52d3349199
improvements in CMake setup:
...
- removed more global settings (these are now target-specific)
- exporting now Config.cmake, which contains find_package(Qt) and loads a separate Targets.cmake
2020-06-28 15:53:26 +02:00
jkriege2
04219ec6d9
fixed issue #37 : installing README/LICENSE files now to $PREFIX/doc/JKQtPlotter, instead of $PREFIX/doc/
2020-06-28 09:53:33 +02:00
jkriege2
f6505e35fc
fixed issue #41 : "Build error when JKQtPlotter_BUILD_INCLUDE_XITS_FONTS set to OFF", code tried to use XITS-ressources, which were not there oif option is switched off. --> solved by adding optional private preprocessor definition
2020-06-28 09:49:20 +02:00
jkriege2
6c058f73ed
improved linewidth calculation in JKQTMathText for SQRT, arrows, ...
2019-11-24 12:53:58 +01:00
jkriege2
97a1780b3d
- performance issue fixed in JKQTMathText (the constructor iterated over all available fonts, which can be very slow when many fonts are installed (1-2ms/font, i.e. several seconds for thousands of fonts!), fixes https://github.com/jkriege2/JKQtPlotter/issues/31
...
- fixed some compiler warnings for obsolete functions in newer Qt (QFontMetrics::width())
2019-11-24 12:48:20 +01:00
jkriege2
4c9db88a2e
some more fixes do MSVC build
2019-11-21 21:42:10 +01:00
jkriege2
f3fa587541
reworked CMake build system ... now JKQT...Config.cmake-files are written into the correct directory
2019-11-18 15:59:06 +01:00
jkriege2
61d3108fb8
removed some unneeded debug-messages
2019-11-18 08:15:07 +01:00
jkriege2
5575d1fa4e
some bugfixes in math rendering (e.g. problems with greek letters)
...
fixed some compiler warnings
2019-11-16 15:02:48 +01:00
jkriege2
4e890b9cb3
updated XITS to current master
2019-11-16 14:16:45 +01:00
jkriege2
bbfcec74ab
JKQTMathText: improved startup-speed by doing font searches only once per program start (via static variables)
2019-06-30 17:59:04 +02:00
jkriege2
01b6d7cee6
JKQTMathText: improved font-handling system + new fraktur and caligraphic, as well as special math sans/serif fonts-classes
2019-06-30 17:34:41 +02:00
jkriege2
a44d570bfa
added export of XITS license files
2019-06-22 16:55:18 +02:00
jkriege2
933d374533
+ added license/readme output to INSTALL-target in CMake
...
+ added example demonstrating how to link against a CMake-build of JKQTPlotter
+ improved documentation
2019-06-22 16:42:42 +02:00
jkriege2
34b31812ba
+ bugfixed DLL-export when building shared libraries
...
+ CMAKE now properly adds the Build-type when building libraries
+ removed some more compiler warning
2019-06-22 14:21:32 +02:00
jkriege2
fb5b497356
- several bugfixes (doc etz.)
...
- decoration of library names in CMake-builds
- renamed advancedlineandfillstyling to advplotstyling to solve problems with too long filenames
2019-06-21 13:44:49 +02:00
jkriege2
f5a49d6d3b
bugfixed compile errors
2019-06-21 10:46:13 +02:00
jkriege2
7311948d53
using CMake now to build examples
...
restructuring/massive renaming to make this possible
2019-06-20 22:24:47 +02:00
jkriege2
fae6b28a58
further reorganizations of code
2019-06-20 16:25:29 +02:00
jkriege2
60999478f8
added CMake build scripts for libraries + some necessary reorganizations
2019-06-20 15:18:58 +02:00
jkriege2
a390030db4
Merge branch 'master' into cmake_build
2019-06-20 10:28:53 +02:00
jkriege2
6fe42748ed
improvements to iterator interface (full random access iterators, erase-remove-idion)
...
added specific example for the iterator interface
2019-05-31 14:51:01 +02:00
jkriege2
356cc34349
new: Statistics library with functions to calculate histograms, regression, kernel density estimates, ... including a new example
...
new: iterator interface and improved documentation for JKQTPDatastore
reorganization of library (better separation of common code in jkqtpcommon and other code e.g. in jkqtplotter or jkqtmathtext)
2019-05-29 22:40:02 +02:00
jkriege2
5a4a778faf
improved contour plots + added example for contour plots
...
split contour plot into two variant, one for C-array-data and one for image column data
improved doxygen annotation
2019-05-19 15:22:56 +02:00
jkriege2
04aaa01333
first test CMakeLists.txt
2019-05-18 13:23:38 +02:00
jkriege2
5f62722d38
code reorganization
2019-05-18 13:22:46 +02:00
jkriege2
2b1649c7b7
added slanted fractions to JKQTMathText + improved documentation
2019-05-18 11:42:35 +02:00
jkriege2
ad48bf1873
improvements to documentation
2019-05-18 10:49:49 +02:00
jkriege2
67d23150f2
new: user-interaction tool that shows coordinates of data points near the current mouse position (when mouse is dragged, while mouse button is pressed)
...
new: user-interaction tool that measures distances and angles when mouse is dragged, while mouse button is pressed)
update: reworked error indicator base classes and styling settings
update: improved boxplot styling with a separate full-featured pen for the whiskers
2019-05-05 19:31:20 +02:00
jkriege2
171f1e6274
removed compiler warning
2019-05-01 14:58:19 +02:00
jkriege2
14d4857670
improvements to JKQtMathText when rendering non-XITS unicode fonts
2019-03-06 23:19:05 +01:00
Jan W. Krieger
2400245e94
- reworked how MTsubscriptNode/MTsuperscriptNode operate, also when the previous node was a brace (i.e. special shifts of sub/superscript)
...
- improved documentation
- fixed a bug in \overbrace
2019-02-12 09:32:20 +01:00
jkriege2
8ce6987315
minor fixes
2019-02-09 18:46:12 +01:00
jkriege2
69ad2a0182
- added styling system for JKQTPlotter (+example app)
...
- improved documentation
- changed: using static const variables instead of \c #define for fixed default values (e.g. JKQTPImageTools::LUTSIZE, JKQTPImageTools::PALETTE_ICON_WIDTH, JKQTPlotterDrawinTools::ABS_MIN_LINEWIDTH, JKQTMathText::ABS_MIN_LINEWIDTH ...)
- new: added debugging option, which surrounds different regions with visible rectangles (JKQTBasePlotter::enableDebugShowRegionBoxes() )
- fixed: colorbars at top were positioned over the plot label
- new: frames (plot viewport, key/legend ...) may be rounded off at the corners
- new: diverse new styling options (default font name/size ...)
- speed improvements to JKQTMathText::useSTIX()
2019-02-09 12:43:12 +01:00
jkriege2
4a63afc709
- fixed zoomin/synchronized graphs, which was broken by former update to user-interaction
...
- improved documentation & HTML-sytle
- removed datarange-facilities (not really useful!)
2019-02-03 14:08:16 +01:00
Jan W. Krieger
75d8fc8314
reworked the functions that allow to specify how JKQTPlotter reacts to mouse single-click actions
2019-01-27 23:24:12 +01:00
jkriege2
0e2237e92f
- more refactorings to modernize C++
...
- fixed JKQTPColumnMathImage with modifiers
- improved documentation
- make use of link_prl/create_prl in QMake projects (see http://doc.qt.io/qt-5/qmake-advanced-usage.html )
2019-01-26 18:00:42 +01:00