* implot_items: INSTANTIATE_FOR_NUMERIC_TYPES / add long & long double (Fix#319)
- INSTANTIATE_FOR_NUMERIC_TYPES is a macro which instantiates templated plotting functions for numeric types.
This macro helps reduce some boilerplate code for template functions instantiations.
- Added optional support for more numeric types (long and long double)
The numeric type list does not include "long", "unsigned long" and "long double".
Most of the time, it is not an issue when linking statically.
However, when linking dynamically, issues related to undefined functions can arise:
although those types might have the same size, they are considered separate.
define IMPLOT_INSTANTIATE_ALL_NUMERIC_TYPES) in order to define versions for those types
In this case, the compilation time for this specific file will be 33% longer
- implot_internal.h / ImMean and ImStdDev: added cast to double
(suppress MSVC warning about downcasting)
- Notes about numeric types "synonyms":
Even if "long double" and "double" might occupy the same size,
they are not complete synonyms, and it is legal to define overloads for both double and long double.
On some platforms, "unsigned long" might be the same size as "unsigned long long",
but it is nonetheless a separate type: see https://godbolt.org/z/1KWv5re7q (example with GCC 64 bits)
On some other platforms, "long double" might be the same size as "double", but it is nonetheless a separate type: see https://godbolt.org/z/ae71P7rqG (example with MSVC 64 bits)
* IMPLOT_INSTANTIATE_ALL_NUMERIC_TYPES: disabled by default
* uppercase template instantiatation macros & group them
* implot_items.cpp: reword comments on IMPLOT_INSTANTIATE_ALL_NUMERIC_TYPES
* README.md: mention compile-time option IMPLOT_INSTANTIATE_ALL_NUMERIC_TYPES
* Github CI: IMPLOT_INSTANTIATE_ALL_NUMERIC_TYPES=1
* add new padding algo
* opposite working for y and x
* remove name axis colors
* move title label rendering
* axis dev
* clean up
* pre formatter
* formatter
* changing over to multi x axes
* more multi x changes
* more multi x changes
* more multi x changes
* setup 75% there
* 85% there
* 85% there
* remove query
* update input handling
* input and dnd tweaking
* input testing
* update demo
* setup debug
* setup debug
* bug fixes
* bug fixes
* more debug
* input
* more setup
* setup api almost complete
* setup api almost complete
* more clean up
* cleanup
* final commit before merge
* SubPlots: Y axis padding over multiple plots
* Align Plots Group
new signature ID, ImPool to store padding data, demo
* Align plots orientation (vertically, horizontally)
vertical will align Y axis, horizontal will align X axis.
*signature changed
* ImPlotOrientation used as flag for 2D grids of aligned plots
https://github.com/epezent/implot/pull/144#issuecomment-725849368
* AlignPlots updates to merge with v.0.9
* Sync to v0.9 20210127
* subplots proto
* make link flags work
* stuff
* add multi-line centered titles
* subplots work
* flag ideas
* better subplot positioning
* resizable subplots
* subplot shared items
* subplot ratios
* some cleanup and refactor
* some cleanup and refactor
* refactors and demo reorganization
* context menus...almost done!
* context menus, bug fixes
* active id
* make implot use ButtonBehavior throughout
* bug fixes
* more bug fixes
* tweaks
* fix id issue
* finish work on subplots
Co-authored-by: ozlb <ozlb@users.noreply.github.com>
* add support for ISO 8601 timestamps
* clean up work on ISO 8601
* legend location proto
* location docs
* add horizontal legends, and ability to position mouse location
* add ShowAltLegend
* add ShowAltLegend
* default sizing for ShowAltLegend
* finish up legend locations