QuickGraphLib 0.1.0a9__tar.gz → 0.1.0a10__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/CMakeLists.txt +2 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/PKG-INFO +2 -2
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/AntialiasingContainer.qml +8 -1
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/Axis.qml +11 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/CMakeLists.txt +3 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/DataTypes.hpp +7 -5
- quickgraphlib-0.1.0a10/QuickGraphLib/Global.hpp +12 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/GraphArea.qml +11 -2
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/GraphItems/AxHLine.qml +1 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/GraphItems/AxHSpan.qml +1 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/GraphItems/AxVLine.qml +1 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/GraphItems/AxVSpan.qml +1 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/GraphItems/CMakeLists.txt +0 -1
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/GraphItems/Contour.qml +1 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/GraphItems/Grid.qml +1 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/GraphItems/Histogram.qml +6 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/GraphItems/Line.qml +1 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/PreFabs/ImageAxes.qml +2 -2
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/PreFabs/XYAxes.qml +29 -5
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/QuickGraphLib.hpp +1 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/ScalingContainer.qml +2 -2
- quickgraphlib-0.1.0a10/QuickGraphLib/ShapeRepeater.qml +56 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/__init__.py +1 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/_version.py +1 -1
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/bindings/Bindings.hpp +1 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/bindings/Bindings.xml +2 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/bindings/CMakeLists.txt +47 -12
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/bindings/pyigen.py +3 -2
- quickgraphlib-0.1.0a10/QuickGraphLib/bindings/qtqml.rst +16 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/helpers/AxisHelper.cpp +8 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/helpers/Helpers.cpp +92 -9
- quickgraphlib-0.1.0a10/QuickGraphLib/helpers/Helpers.hpp +26 -0
- quickgraphlib-0.1.0a10/QuickGraphLib/helpers/ShapeRepeaterHelper.cpp +72 -0
- quickgraphlib-0.1.0a10/QuickGraphLib/helpers/ShapeRepeaterHelper.hpp +17 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/README.md +1 -1
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/docs/style.css +1 -1
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/AllTheAxes.qml +1 -1
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/BasicSinGraphNoPrefabs.qml +1 -1
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/Complex.qml +15 -15
- quickgraphlib-0.1.0a10/examples/ExampleGallery.png +0 -0
- quickgraphlib-0.1.0a10/examples/PeakButtons.png +0 -0
- quickgraphlib-0.1.0a10/examples/PeakButtons.qdoc +15 -0
- quickgraphlib-0.1.0a10/examples/PeakButtons.qml +71 -0
- quickgraphlib-0.1.0a10/examples/Scatter.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/TwinX.qml +1 -1
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/requirements.txt +1 -1
- quickgraphlib-0.1.0a10/tests/python_exporter.py +78 -0
- quickgraphlib-0.1.0a10/tests/reference_images/AllTheAxes.dat +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/AllTheAxes.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/AllTheAxes.svg +124 -124
- quickgraphlib-0.1.0a10/tests/reference_images/AllTheAxes_grab.png +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/BasicHistogram.dat +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/BasicHistogram.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/BasicHistogram.svg +56 -56
- quickgraphlib-0.1.0a10/tests/reference_images/BasicHistogram_grab.png +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/BasicSinGraph.dat +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/BasicSinGraph.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/BasicSinGraph.svg +53 -53
- quickgraphlib-0.1.0a10/tests/reference_images/BasicSinGraphNoPrefabs.dat +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/BasicSinGraphNoPrefabs.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/BasicSinGraphNoPrefabs.svg +53 -53
- quickgraphlib-0.1.0a10/tests/reference_images/BasicSinGraphNoPrefabs_grab.png +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/BasicSinGraph_grab.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/BuiltinColormaps.dat +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/ColorMappedImages.dat +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/ColorMesh.dat +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/ColorMesh.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/ColorMesh.svg +72 -72
- quickgraphlib-0.1.0a10/tests/reference_images/ColorMesh_grab.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/Complex.dat +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/Complex.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/Complex.svg +62 -62
- quickgraphlib-0.1.0a10/tests/reference_images/Complex_grab.png +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/Contours.dat +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/Contours.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/Contours.svg +56 -56
- quickgraphlib-0.1.0a10/tests/reference_images/Contours_grab.png +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/Conway.dat +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/DarkSinGraph.dat +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/DarkSinGraph.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/DarkSinGraph.svg +53 -53
- quickgraphlib-0.1.0a10/tests/reference_images/DarkSinGraph_grab.png +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/DraggableRegion.dat +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/DraggableRegion.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/DraggableRegion.svg +56 -56
- quickgraphlib-0.1.0a10/tests/reference_images/DraggableRegion_grab.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/ImageAlignment.dat +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/InvertedAxes.dat +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/InvertedAxes.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/InvertedAxes.svg +68 -68
- quickgraphlib-0.1.0a10/tests/reference_images/InvertedAxes_grab.png +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/PeakButtons.dat +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/PeakButtons.png +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/PeakButtons.svg +833 -0
- quickgraphlib-0.1.0a10/tests/reference_images/PeakButtons_grab.png +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/ReadoutLine.dat +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/ReadoutLine.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/ReadoutLine.svg +47 -47
- quickgraphlib-0.1.0a10/tests/reference_images/ReadoutLine_grab.png +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/ScalingGraph.dat +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/ScalingGraph.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/ScalingGraph.svg +68 -68
- quickgraphlib-0.1.0a10/tests/reference_images/ScalingGraph_grab.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/Scatter.dat +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/Scatter.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/Scatter.svg +59 -59
- quickgraphlib-0.1.0a10/tests/reference_images/Scatter_grab.png +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/SpansAndLines.dat +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/SpansAndLines.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/SpansAndLines.svg +68 -68
- quickgraphlib-0.1.0a10/tests/reference_images/SpansAndLines_grab.png +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/Subgraphs.dat +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/Subgraphs.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/Subgraphs.svg +110 -110
- quickgraphlib-0.1.0a10/tests/reference_images/Subgraphs_grab.png +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/TwinX.dat +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/TwinX.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/TwinX.svg +66 -66
- quickgraphlib-0.1.0a10/tests/reference_images/TwinX_grab.png +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/ZoomableAsImage.dat +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/ZoomableAsImage.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/ZoomableAsImage.svg +53 -53
- quickgraphlib-0.1.0a10/tests/reference_images/ZoomableAsImage_grab.png +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/ZoomableAxes.dat +0 -0
- quickgraphlib-0.1.0a10/tests/reference_images/ZoomableAxes.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/ZoomableAxes.svg +53 -53
- quickgraphlib-0.1.0a10/tests/reference_images/ZoomableAxes_grab.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/test_exports.py +60 -1
- quickgraphlib-0.1.0a9/QuickGraphLib/ShapeRepeater.qml +0 -27
- quickgraphlib-0.1.0a9/QuickGraphLib/helpers/Helpers.hpp +0 -23
- quickgraphlib-0.1.0a9/examples/ExampleGallery.png +0 -0
- quickgraphlib-0.1.0a9/examples/Scatter.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/AllTheAxes.dat +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/AllTheAxes.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/AllTheAxes_grab.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/BasicHistogram.dat +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/BasicHistogram.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/BasicHistogram_grab.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/BasicSinGraph.dat +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/BasicSinGraph.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/BasicSinGraphNoPrefabs.dat +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/BasicSinGraphNoPrefabs.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/BasicSinGraphNoPrefabs_grab.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/BasicSinGraph_grab.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/ColorMesh.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/ColorMesh_grab.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/Complex.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/Complex_grab.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/Contours.dat +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/Contours.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/Contours_grab.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/Conway.dat +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/DarkSinGraph.dat +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/DarkSinGraph.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/DarkSinGraph_grab.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/DraggableRegion.dat +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/DraggableRegion.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/DraggableRegion_grab.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/InvertedAxes.dat +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/InvertedAxes.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/InvertedAxes_grab.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/ReadoutLine.dat +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/ReadoutLine.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/ReadoutLine_grab.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/ScalingGraph.dat +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/ScalingGraph.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/ScalingGraph_grab.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/Scatter.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/Scatter_grab.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/SpansAndLines.dat +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/SpansAndLines.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/SpansAndLines_grab.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/Subgraphs.dat +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/Subgraphs.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/Subgraphs_grab.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/TwinX.dat +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/TwinX.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/TwinX_grab.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/ZoomableAsImage.dat +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/ZoomableAsImage.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/ZoomableAsImage_grab.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/ZoomableAxes.dat +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/ZoomableAxes.png +0 -0
- quickgraphlib-0.1.0a9/tests/reference_images/ZoomableAxes_grab.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/.clang-format +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/.gitignore +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/.pre-commit-config.yaml +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/LICENCE +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/ColorMaps.cpp +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/ColorMaps.hpp +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/DataTypes.cpp +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/GraphItems/BasicLegend.qml +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/GraphItems/BasicLegendItem.qml +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/GraphItems/ColorMesh.qml +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/GraphItems/GraphItemDragHandler.qml +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/GraphItems/Marker.qml +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/GraphItems/helpers/GridHelper.cpp +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/GraphItems/helpers/GridHelper.hpp +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/GraphItems/helpers/HistogramHelper.cpp +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/GraphItems/helpers/HistogramHelper.hpp +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/ImageView.cpp +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/ImageView.hpp +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/Plugin.cpp +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/PreFabs/CMakeLists.txt +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/TickLabel.qml +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/ZoomPanHandler.qml +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/bindings/ShibokenHelpers.cpp +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/bindings/ShibokenHelpers.hpp +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/bindings/glue/DataTypes.cpp +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/consts.py +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/contours.py +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/doc/AxesGridLayout.drawio +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/doc/AxesGridLayout.svg +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/doc/export.qdoc +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/doc/graphitems.qdoc +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/doc/graphstructure.qdoc +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/doc/index.qdoc +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/doc/interaction.qdoc +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/doc/module-cpp.qdoc +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/doc/module.qdoc +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/doc/prefabs.qdoc +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/doc/python_helpers.qdoc +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/helpers/AxisHelper.hpp +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/helpers/Foreign.hpp +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/QuickGraphLib/py.typed +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/activate_venv.ps1 +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/ci/find_qt.py +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/ci/setup_qt.py +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/docs/build_docs.py +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/docs/config.qdocconf +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/AllTheAxes.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/AllTheAxes.qdoc +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/BasicHistogram.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/BasicHistogram.qdoc +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/BasicHistogram.qml +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/BasicSinGraph.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/BasicSinGraph.qdoc +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/BasicSinGraph.qml +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/BasicSinGraphNoPrefabs.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/BasicSinGraphNoPrefabs.qdoc +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/BuiltinColormaps.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/BuiltinColormaps.qdoc +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/BuiltinColormaps.qml +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/ColorMappedImages.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/ColorMappedImages.qdoc +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/ColorMappedImages.qml +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/ColorMesh.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/ColorMesh.qdoc +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/ColorMesh.qml +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/Complex.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/Complex.qdoc +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/Contours.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/Contours.qdoc +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/Contours.qml +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/Conway.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/Conway.qdoc +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/Conway.qml +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/DarkSinGraph.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/DarkSinGraph.qdoc +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/DarkSinGraph.qml +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/DraggableRegion.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/DraggableRegion.qdoc +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/DraggableRegion.qml +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/ExampleGallery.qml +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/ImageAlignment.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/ImageAlignment.qdoc +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/ImageAlignment.qml +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/InvertedAxes.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/InvertedAxes.qdoc +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/InvertedAxes.qml +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/ReadoutLine.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/ReadoutLine.qdoc +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/ReadoutLine.qml +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/ScalingGraph.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/ScalingGraph.qdoc +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/ScalingGraph.qml +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/Scatter.qdoc +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/Scatter.qml +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/SpansAndLines.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/SpansAndLines.qdoc +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/SpansAndLines.qml +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/Subgraphs.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/Subgraphs.qdoc +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/Subgraphs.qml +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/TwinX.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/TwinX.qdoc +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/ZoomableAsImage.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/ZoomableAsImage.qdoc +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/ZoomableAsImage.qml +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/ZoomableAxes.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/ZoomableAxes.qdoc +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/ZoomableAxes.qml +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/__init__.py +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/conway.py +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/examples/gallery.py +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/pyproject.toml +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/setup_venv.ps1 +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/__init__.py +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/fonts/DejaVuSans-Bold.ttf +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/fonts/DejaVuSans-BoldOblique.ttf +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/fonts/DejaVuSans-Oblique.ttf +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/fonts/DejaVuSans.ttf +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/fonts/LICENSE +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/BuiltinColormaps.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/BuiltinColormaps.svg +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/BuiltinColormaps_grab.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/ColorMappedImages.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/ColorMappedImages.svg +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/ColorMappedImages_grab.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/Conway.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/Conway.svg +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/Conway_grab.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/ImageAlignment.png +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/ImageAlignment.svg +0 -0
- {quickgraphlib-0.1.0a9 → quickgraphlib-0.1.0a10}/tests/reference_images/ImageAlignment_grab.png +0 -0
|
@@ -15,6 +15,8 @@ else()
|
|
|
15
15
|
add_compile_options(-Wextra -Wpedantic -fno-visibility-inlines-hidden)
|
|
16
16
|
endif()
|
|
17
17
|
|
|
18
|
+
option(ENABLE_STUB_GENERATION "Enable .pyi stub generation (defaults to on)" ON)
|
|
19
|
+
|
|
18
20
|
if(NOT INSTALL_SUBPATH)
|
|
19
21
|
set(INSTALL_SUBPATH
|
|
20
22
|
${CMAKE_INSTALL_LIBDIR}/qml
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: QuickGraphLib
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.0a10
|
|
4
4
|
Summary: A scientific graphing library for QtQuick
|
|
5
5
|
Author-Email: Matthew Joyce <matthew.joyce@refeyn.com>
|
|
6
6
|
License: MIT License
|
|
@@ -79,7 +79,7 @@ The example gallery can be run using (provided the Python environment has [PySid
|
|
|
79
79
|
python examples/gallery.py
|
|
80
80
|
```
|
|
81
81
|
|
|
82
|
-
<p align="center"><img src="https://github.com/
|
|
82
|
+
<p align="center"><img src="https://github.com/user-attachments/assets/19fa3b50-9a86-458d-b7c2-7a6fc95f0b6c" width="80%"></p>
|
|
83
83
|
|
|
84
84
|
## Qt version compatibility
|
|
85
85
|
|
|
@@ -3,6 +3,10 @@
|
|
|
3
3
|
|
|
4
4
|
import QtQuick
|
|
5
5
|
|
|
6
|
+
@Deprecated {
|
|
7
|
+
reason: "Due to the new Qt 6.7 Curve renderer, this is no longer needed for antialiasing"
|
|
8
|
+
}
|
|
9
|
+
|
|
6
10
|
/*!
|
|
7
11
|
\qmltype AntialiasingContainer
|
|
8
12
|
\inqmlmodule QuickGraphLib
|
|
@@ -10,6 +14,9 @@ import QtQuick
|
|
|
10
14
|
\brief Enables antialiasing for it's contents.
|
|
11
15
|
|
|
12
16
|
This item turns on \l {Multisample Antialiasing}. This helps with rendering in some cases.
|
|
17
|
+
|
|
18
|
+
\deprecated [0.1.0a10] Due to the new Qt 6.7 Curve renderer, this is no longer needed for antialiasing.
|
|
19
|
+
Replace with \l Item or remove completely
|
|
13
20
|
*/
|
|
14
21
|
|
|
15
22
|
Item {
|
|
@@ -17,7 +24,7 @@ Item {
|
|
|
17
24
|
|
|
18
25
|
/*!
|
|
19
26
|
Whether MSAA antialiasing is enabled. This can help with rendering when the target display has a
|
|
20
|
-
fractional scaling factor. It can also make rendering worse, especially with text.
|
|
27
|
+
fractional scaling factor. It can also make rendering worse, especially with text. Defaults to \c false.
|
|
21
28
|
*/
|
|
22
29
|
property alias antialiasingEnabled: root.layer.enabled
|
|
23
30
|
|
|
@@ -13,6 +13,15 @@ import QuickGraphLib as QuickGraphLib
|
|
|
13
13
|
\brief Displays an Axis.
|
|
14
14
|
|
|
15
15
|
\sa {Basic sin graph (without prefabs)}, {Graph with all four axes}
|
|
16
|
+
|
|
17
|
+
\section2 Antialiasing
|
|
18
|
+
|
|
19
|
+
By default, the axis sets \l {Shape::preferredRendererType} to \c {Shape.CurveRenderer}.
|
|
20
|
+
This turns on high-quality antialiasing, which results in better looking axes on HiDPI systems.
|
|
21
|
+
However, if you know your application will only be viewed on LoDPI systems, the axes will look
|
|
22
|
+
slightly better without antialiasing. In addition, antialiasing may require more GPU performance,
|
|
23
|
+
so switching this back to \c {Shape.GeometryRenderer} may help on low-power systems. See
|
|
24
|
+
\l {Shape::rendererType} for more details.
|
|
16
25
|
*/
|
|
17
26
|
|
|
18
27
|
Item {
|
|
@@ -158,10 +167,12 @@ Item {
|
|
|
158
167
|
id: shape
|
|
159
168
|
|
|
160
169
|
anchors.fill: parent
|
|
170
|
+
preferredRendererType: QQS.Shape.CurveRenderer
|
|
161
171
|
|
|
162
172
|
QQS.ShapePath {
|
|
163
173
|
id: myPath
|
|
164
174
|
|
|
175
|
+
pathHints: QQS.ShapePath.PathLinear
|
|
165
176
|
strokeColor: "black"
|
|
166
177
|
strokeWidth: 1
|
|
167
178
|
|
|
@@ -24,7 +24,9 @@ qt_add_qml_module(QuickGraphLib
|
|
|
24
24
|
DEPENDENCIES QtQuick
|
|
25
25
|
SOURCES
|
|
26
26
|
helpers/Helpers.cpp helpers/Helpers.hpp helpers/AxisHelper.hpp helpers/AxisHelper.cpp helpers/Foreign.hpp
|
|
27
|
+
helpers/ShapeRepeaterHelper.hpp helpers/ShapeRepeaterHelper.cpp
|
|
27
28
|
ImageView.hpp ImageView.cpp ColorMaps.hpp ColorMaps.cpp DataTypes.hpp DataTypes.cpp bindings/Bindings.hpp QuickGraphLib.hpp
|
|
29
|
+
Global.hpp
|
|
28
30
|
)
|
|
29
31
|
set_property(
|
|
30
32
|
TARGET QuickGraphLib
|
|
@@ -34,6 +36,7 @@ set_property(
|
|
|
34
36
|
TARGET QuickGraphLib
|
|
35
37
|
PROPERTY RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
|
36
38
|
)
|
|
39
|
+
target_compile_definitions(QuickGraphLib PRIVATE QGL_LIBRARY)
|
|
37
40
|
|
|
38
41
|
target_compile_definitions(
|
|
39
42
|
QuickGraphLib
|
|
@@ -6,7 +6,9 @@
|
|
|
6
6
|
#include <QList>
|
|
7
7
|
#include <QPolygonF>
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
#include "Global.hpp"
|
|
10
|
+
|
|
11
|
+
class QGL_EXPORT QGLPolygonF : public QPolygonF {
|
|
10
12
|
public:
|
|
11
13
|
using QPolygonF::QPolygonF;
|
|
12
14
|
QGLPolygonF() = default;
|
|
@@ -15,19 +17,19 @@ class QGLPolygonF : public QPolygonF {
|
|
|
15
17
|
QGLPolygonF(QList<QPointF> &&v) noexcept : QPolygonF(std::move(v)) {}
|
|
16
18
|
QGLPolygonF(QPolygonF &&v) noexcept : QPolygonF(std::move(v)) {}
|
|
17
19
|
inline void swap(QGLPolygonF &other) { QPolygonF::swap(other); }
|
|
18
|
-
|
|
20
|
+
operator QVariant() const;
|
|
19
21
|
};
|
|
20
22
|
Q_DECLARE_SHARED(QGLPolygonF)
|
|
21
23
|
|
|
22
|
-
class QGLDoubleList : public QList<qreal> {
|
|
24
|
+
class QGL_EXPORT QGLDoubleList : public QList<qreal> {
|
|
23
25
|
public:
|
|
24
26
|
using QList<qreal>::QList;
|
|
25
27
|
QGLDoubleList() = default;
|
|
26
28
|
QGLDoubleList(const QList<qreal> &v) : QList<qreal>(v) {}
|
|
27
29
|
QGLDoubleList(QList<qreal> &&v) noexcept : QList<qreal>(std::move(v)) {}
|
|
28
30
|
inline void swap(QGLDoubleList &other) { QList<qreal>::swap(other); }
|
|
29
|
-
|
|
31
|
+
operator QVariant() const;
|
|
30
32
|
};
|
|
31
33
|
Q_DECLARE_SHARED(QGLDoubleList)
|
|
32
34
|
|
|
33
|
-
|
|
35
|
+
QGL_EXPORT void registerConvertions();
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
// SPDX-FileCopyrightText: Copyright (c) 2024 Refeyn Ltd and other QuickGraphLib contributors
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
|
|
4
|
+
#pragma once
|
|
5
|
+
|
|
6
|
+
#include <QtGlobal>
|
|
7
|
+
|
|
8
|
+
#if defined(QGL_LIBRARY)
|
|
9
|
+
#define QGL_EXPORT Q_DECL_EXPORT
|
|
10
|
+
#else
|
|
11
|
+
#define QGL_EXPORT Q_DECL_IMPORT
|
|
12
|
+
#endif
|
|
@@ -11,6 +11,13 @@ import QtQuick.Shapes as QQS
|
|
|
11
11
|
\brief An area that graphs can be added to.
|
|
12
12
|
|
|
13
13
|
\sa {Basic sin graph (without prefabs)}, {Inverted axes}
|
|
14
|
+
|
|
15
|
+
\section2 Antialiasing
|
|
16
|
+
|
|
17
|
+
By default, the graph area sets \l {Shape::preferredRendererType} to \c {Shape.CurveRenderer}.
|
|
18
|
+
This turns on high-quality antialiasing, which generally results in much better looking graphs.
|
|
19
|
+
However, it may require more GPU performance, so switching this back to \c {Shape.GeometryRenderer}
|
|
20
|
+
may help on low-power systems. See \l {Shape::rendererType} for more details.
|
|
14
21
|
*/
|
|
15
22
|
|
|
16
23
|
QQS.Shape {
|
|
@@ -79,6 +86,8 @@ QQS.Shape {
|
|
|
79
86
|
}
|
|
80
87
|
|
|
81
88
|
clip: true
|
|
82
|
-
|
|
83
|
-
|
|
89
|
+
// Set initial size to prevent Shape's automatically calculated implicitWidth resulting in binding loops
|
|
90
|
+
height: 100
|
|
91
|
+
preferredRendererType: QQS.Shape.CurveRenderer
|
|
92
|
+
width: 100
|
|
84
93
|
}
|
|
@@ -34,6 +34,7 @@ QQS.ShapePath {
|
|
|
34
34
|
capStyle: QQS.ShapePath.RoundCap
|
|
35
35
|
fillColor: "transparent"
|
|
36
36
|
joinStyle: QQS.ShapePath.RoundJoin
|
|
37
|
+
pathHints: QQS.ShapePath.PathLinear
|
|
37
38
|
|
|
38
39
|
PathMultiline {
|
|
39
40
|
paths: root.paths.map(ps => QuickGraphLib.Helpers.mapPoints(ps, root.dataTransform))
|
|
@@ -11,6 +11,11 @@ import QuickGraphLib.GraphItems as QGLGraphItems
|
|
|
11
11
|
\inherits QtQuick::Shapes::ShapePath
|
|
12
12
|
\brief Displays a histogram.
|
|
13
13
|
|
|
14
|
+
\warning Rendering of histograms in Qt 6.8 under the curve renderer may include artefacts
|
|
15
|
+
(see \l {https://bugreports.qt.io/browse/QTBUG-133247}{QTBUG-133247}). If this happens,
|
|
16
|
+
switch the renderer of the \l GraphArea back to the geometry renderer. This issue should be fixed
|
|
17
|
+
in a future Qt version.
|
|
18
|
+
|
|
14
19
|
\sa {Basic histogram}
|
|
15
20
|
*/
|
|
16
21
|
|
|
@@ -46,6 +51,7 @@ QQS.ShapePath {
|
|
|
46
51
|
|
|
47
52
|
capStyle: QQS.ShapePath.RoundCap
|
|
48
53
|
joinStyle: QQS.ShapePath.RoundJoin
|
|
54
|
+
pathHints: QQS.ShapePath.PathLinear
|
|
49
55
|
|
|
50
56
|
PathPolyline {
|
|
51
57
|
path: root._helper.path
|
|
@@ -9,13 +9,13 @@ import QuickGraphLib.GraphItems as QGLGraphItems
|
|
|
9
9
|
/*!
|
|
10
10
|
\qmltype ImageAxes
|
|
11
11
|
\inqmlmodule QuickGraphLib.PreFabs
|
|
12
|
-
\inherits
|
|
12
|
+
\inherits Item
|
|
13
13
|
\brief Displays an image with axes and a colorbar.
|
|
14
14
|
|
|
15
15
|
\sa {Color mesh}
|
|
16
16
|
*/
|
|
17
17
|
|
|
18
|
-
|
|
18
|
+
Item {
|
|
19
19
|
id: root
|
|
20
20
|
|
|
21
21
|
/*!
|
|
@@ -7,15 +7,15 @@ import QuickGraphLib as QuickGraphLib
|
|
|
7
7
|
import QuickGraphLib.GraphItems as QGLGraphItems
|
|
8
8
|
|
|
9
9
|
/*!
|
|
10
|
-
\qmltype
|
|
10
|
+
\qmltype XYAxes
|
|
11
11
|
\inqmlmodule QuickGraphLib.PreFabs
|
|
12
|
-
\inherits
|
|
12
|
+
\inherits Item
|
|
13
13
|
\brief Displays an XY axis with a grid.
|
|
14
14
|
|
|
15
15
|
\sa {Basic sin graph}, {Dark theme sin graph}, {Subgraphs}
|
|
16
16
|
*/
|
|
17
17
|
|
|
18
|
-
|
|
18
|
+
Item {
|
|
19
19
|
id: root
|
|
20
20
|
|
|
21
21
|
/*!
|
|
@@ -26,6 +26,10 @@ QuickGraphLib.AntialiasingContainer {
|
|
|
26
26
|
An alias to the \l Rectangle used as the background.
|
|
27
27
|
*/
|
|
28
28
|
property alias background: background
|
|
29
|
+
/*!
|
|
30
|
+
The padding below the XYAxes
|
|
31
|
+
*/
|
|
32
|
+
property int bottomPadding: 15
|
|
29
33
|
/*!
|
|
30
34
|
An alias to the data transform of the graph area.
|
|
31
35
|
|
|
@@ -45,6 +49,10 @@ QuickGraphLib.AntialiasingContainer {
|
|
|
45
49
|
An alias to the graph area's \l Grid.
|
|
46
50
|
*/
|
|
47
51
|
property alias grid: grid
|
|
52
|
+
/*!
|
|
53
|
+
The padding to the left of the XYAxes
|
|
54
|
+
*/
|
|
55
|
+
property int leftPadding: 15
|
|
48
56
|
/*!
|
|
49
57
|
Maximum number of ticks to show on the X axis.
|
|
50
58
|
|
|
@@ -57,6 +65,14 @@ QuickGraphLib.AntialiasingContainer {
|
|
|
57
65
|
\sa Helpers::tickLocator
|
|
58
66
|
*/
|
|
59
67
|
property int numYTicks: 11
|
|
68
|
+
/*!
|
|
69
|
+
The padding to the right of the XYAxes
|
|
70
|
+
*/
|
|
71
|
+
property int rightPadding: 15
|
|
72
|
+
/*!
|
|
73
|
+
The spacing between the title and the axes.
|
|
74
|
+
*/
|
|
75
|
+
property double spacing: 0
|
|
60
76
|
/*!
|
|
61
77
|
The title of the graph.
|
|
62
78
|
*/
|
|
@@ -65,6 +81,10 @@ QuickGraphLib.AntialiasingContainer {
|
|
|
65
81
|
An alias to the title item of the graph (a \l Text).
|
|
66
82
|
*/
|
|
67
83
|
property alias titleItem: titleLabel
|
|
84
|
+
/*!
|
|
85
|
+
The padding above the XYAxes
|
|
86
|
+
*/
|
|
87
|
+
property int topPadding: 15
|
|
68
88
|
/*!
|
|
69
89
|
An alias to the view rect of the graph area.
|
|
70
90
|
|
|
@@ -101,8 +121,11 @@ QuickGraphLib.AntialiasingContainer {
|
|
|
101
121
|
QQL.GridLayout {
|
|
102
122
|
id: axes
|
|
103
123
|
|
|
124
|
+
anchors.bottomMargin: root.bottomPadding
|
|
104
125
|
anchors.fill: parent
|
|
105
|
-
anchors.
|
|
126
|
+
anchors.leftMargin: root.leftPadding
|
|
127
|
+
anchors.rightMargin: root.rightPadding
|
|
128
|
+
anchors.topMargin: root.topPadding
|
|
106
129
|
columnSpacing: 0
|
|
107
130
|
columns: 2
|
|
108
131
|
rowSpacing: 0
|
|
@@ -111,7 +134,8 @@ QuickGraphLib.AntialiasingContainer {
|
|
|
111
134
|
id: titleLabel
|
|
112
135
|
|
|
113
136
|
QQL.Layout.alignment: Qt.AlignCenter
|
|
114
|
-
QQL.Layout.
|
|
137
|
+
QQL.Layout.bottomMargin: root.spacing
|
|
138
|
+
QQL.Layout.columnSpan: axes.columns
|
|
115
139
|
visible: text !== ""
|
|
116
140
|
}
|
|
117
141
|
QuickGraphLib.Axis {
|
|
@@ -6,7 +6,7 @@ import QtQuick
|
|
|
6
6
|
/*!
|
|
7
7
|
\qmltype ScalingContainer
|
|
8
8
|
\inqmlmodule QuickGraphLib
|
|
9
|
-
\inherits
|
|
9
|
+
\inherits Item
|
|
10
10
|
\brief Scales its contents while preserving the aspect ratio.
|
|
11
11
|
|
|
12
12
|
This container applies a scaling factor to its content item that preserves its aspect ratio.
|
|
@@ -14,7 +14,7 @@ import QtQuick
|
|
|
14
14
|
\sa {Scaled graph}
|
|
15
15
|
*/
|
|
16
16
|
|
|
17
|
-
|
|
17
|
+
Item {
|
|
18
18
|
id: container
|
|
19
19
|
|
|
20
20
|
/*!
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
// SPDX-FileCopyrightText: Copyright (c) 2024 Refeyn Ltd and other QuickGraphLib contributors
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
|
|
4
|
+
import QtQuick
|
|
5
|
+
import QtQml.Models as QQM
|
|
6
|
+
import QtQuick.Shapes as QQS
|
|
7
|
+
import QuickGraphLib as QuickGraphLib
|
|
8
|
+
|
|
9
|
+
/*!
|
|
10
|
+
\qmltype ShapeRepeater
|
|
11
|
+
\inqmlmodule QuickGraphLib
|
|
12
|
+
\inherits QtQml::Models::Instantiator
|
|
13
|
+
\brief A \l{Repeater}-like component that works with \l{ShapePath}s.
|
|
14
|
+
|
|
15
|
+
See the \l{Repeater} documentation for the general concept, and how to access data from the \l Instantiator::model.
|
|
16
|
+
|
|
17
|
+
If the ShapeRepeater is a child of the \l GraphArea provided to \l graphArea, then paths
|
|
18
|
+
the ShapeRepeater instantiates will be inserted, in order, immediately after the repeater's
|
|
19
|
+
position in the list of shape paths.
|
|
20
|
+
|
|
21
|
+
\note The ShapeRepeater must temporarily remove the children of the GraphArea in order to add/remove paths it
|
|
22
|
+
instantiates. This is fine for most elements, but \l Repeaters will destroy all of their children when this
|
|
23
|
+
happens. This may cause performance issues or loss of state. If this is an issue, place the Repeater outside
|
|
24
|
+
the GraphArea or inside an \l Item.
|
|
25
|
+
|
|
26
|
+
\sa {Peak buttons}
|
|
27
|
+
*/
|
|
28
|
+
|
|
29
|
+
QQM.Instantiator {
|
|
30
|
+
id: root
|
|
31
|
+
|
|
32
|
+
/*!
|
|
33
|
+
The GraphArea to add paths to.
|
|
34
|
+
*/
|
|
35
|
+
required property QQS.Shape graphArea
|
|
36
|
+
|
|
37
|
+
function forceResync() {
|
|
38
|
+
// Workaround for https://bugreports.qt.io/browse/QTBUG-133230 and https://bugreports.qt.io/browse/QTBUG-133231
|
|
39
|
+
if (graphArea.Window.window !== null) {
|
|
40
|
+
let renderer = graphArea.preferredRendererType;
|
|
41
|
+
let otherRenderer = graphArea.preferredRendererType === QQS.Shape.CurveRenderer ? QQS.Shape.GeometryRenderer : QQS.Shape.CurveRenderer;
|
|
42
|
+
graphArea.preferredRendererType = otherRenderer;
|
|
43
|
+
graphArea.ensurePolished();
|
|
44
|
+
graphArea.preferredRendererType = renderer;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
onObjectAdded: (i, obj) => {
|
|
49
|
+
QuickGraphLib.ShapeRepeaterHelper.insertObject(graphArea, root, obj, i);
|
|
50
|
+
forceResync();
|
|
51
|
+
}
|
|
52
|
+
onObjectRemoved: (i, obj) => {
|
|
53
|
+
QuickGraphLib.ShapeRepeaterHelper.removeObject(graphArea, obj);
|
|
54
|
+
forceResync();
|
|
55
|
+
}
|
|
56
|
+
}
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
-->
|
|
6
6
|
<typesystem package="QuickGraphLib._QuickGraphLib">
|
|
7
7
|
<load-typesystem name="typesystem_gui.xml" generate="no"/>
|
|
8
|
+
<load-typesystem name="typesystem_quick.xml" generate="no"/>
|
|
8
9
|
<value-type name="QGLDoubleList">
|
|
9
10
|
<inject-code class="native" position="beginning">
|
|
10
11
|
#include <sbknumpycheck.h>
|
|
@@ -26,4 +27,5 @@
|
|
|
26
27
|
<inject-code file="glue/DataTypes.cpp" snippet="qglpolygonf-fromndarray"/>
|
|
27
28
|
</add-function>
|
|
28
29
|
</value-type>
|
|
30
|
+
<object-type name="Helpers"/>
|
|
29
31
|
</typesystem>
|
|
@@ -74,6 +74,8 @@ if(DEFINED QT_HOST_PATH)
|
|
|
74
74
|
list(APPEND INCLUDES "-I${QT_HOST_PATH}/include")
|
|
75
75
|
list(APPEND INCLUDES "-I${QT_HOST_PATH}/include/QtCore")
|
|
76
76
|
list(APPEND INCLUDES "-I${QT_HOST_PATH}/include/QtGui")
|
|
77
|
+
list(APPEND INCLUDES "-I${QT_HOST_PATH}/include/QtQml")
|
|
78
|
+
list(APPEND INCLUDES "-I${QT_HOST_PATH}/include/QtQuick")
|
|
77
79
|
else()
|
|
78
80
|
get_property(
|
|
79
81
|
QT_CORE_INCLUDE_DIRS
|
|
@@ -91,6 +93,22 @@ else()
|
|
|
91
93
|
foreach(INCLUDE_DIR ${QT_GUI_INCLUDE_DIRS})
|
|
92
94
|
list(APPEND INCLUDES "-I${INCLUDE_DIR}")
|
|
93
95
|
endforeach()
|
|
96
|
+
get_property(
|
|
97
|
+
QT_QML_INCLUDE_DIRS
|
|
98
|
+
TARGET Qt6::Qml
|
|
99
|
+
PROPERTY INTERFACE_INCLUDE_DIRECTORIES
|
|
100
|
+
)
|
|
101
|
+
foreach(INCLUDE_DIR ${QT_QML_INCLUDE_DIRS})
|
|
102
|
+
list(APPEND INCLUDES "-I${INCLUDE_DIR}")
|
|
103
|
+
endforeach()
|
|
104
|
+
get_property(
|
|
105
|
+
QT_QUICK_INCLUDE_DIRS
|
|
106
|
+
TARGET Qt6::Quick
|
|
107
|
+
PROPERTY INTERFACE_INCLUDE_DIRECTORIES
|
|
108
|
+
)
|
|
109
|
+
foreach(INCLUDE_DIR ${QT_QUICK_INCLUDE_DIRS})
|
|
110
|
+
list(APPEND INCLUDES "-I${INCLUDE_DIR}")
|
|
111
|
+
endforeach()
|
|
94
112
|
endif()
|
|
95
113
|
|
|
96
114
|
# We need to include the headers for the module bindings that we use.
|
|
@@ -98,8 +116,20 @@ set(pyside_additional_includes "")
|
|
|
98
116
|
foreach(INCLUDE_DIR ${pyside_include_dir})
|
|
99
117
|
list(APPEND pyside_additional_includes "${INCLUDE_DIR}/QtCore")
|
|
100
118
|
list(APPEND pyside_additional_includes "${INCLUDE_DIR}/QtGui")
|
|
119
|
+
list(APPEND pyside_additional_includes "${INCLUDE_DIR}/QtQml")
|
|
120
|
+
list(APPEND pyside_additional_includes "${INCLUDE_DIR}/QtQuick")
|
|
121
|
+
list(APPEND pyside_additional_includes "${INCLUDE_DIR}/QtNetwork")
|
|
122
|
+
list(APPEND pyside_additional_includes "${INCLUDE_DIR}/QtOpenGL")
|
|
101
123
|
endforeach()
|
|
102
124
|
|
|
125
|
+
# Fix missing doc file that causes the QML typesystem parsing to fail
|
|
126
|
+
file(MAKE_DIRECTORY ${pyside_typesystems_path}/PySide6/doc)
|
|
127
|
+
configure_file(
|
|
128
|
+
${CMAKE_CURRENT_SOURCE_DIR}/qtqml.rst
|
|
129
|
+
${pyside_typesystems_path}/PySide6/doc/qtqml_functions.rst
|
|
130
|
+
COPYONLY
|
|
131
|
+
)
|
|
132
|
+
|
|
103
133
|
set(shiboken_options
|
|
104
134
|
--generator-set=shiboken
|
|
105
135
|
--enable-parent-ctor-heuristic
|
|
@@ -122,6 +152,7 @@ set(generated_sources
|
|
|
122
152
|
${CMAKE_CURRENT_BINARY_DIR}/QuickGraphLib/_QuickGraphLib/_quickgraphlib_module_wrapper.cpp
|
|
123
153
|
${CMAKE_CURRENT_BINARY_DIR}/QuickGraphLib/_QuickGraphLib/qglpolygonf_wrapper.cpp
|
|
124
154
|
${CMAKE_CURRENT_BINARY_DIR}/QuickGraphLib/_QuickGraphLib/qgldoublelist_wrapper.cpp
|
|
155
|
+
${CMAKE_CURRENT_BINARY_DIR}/QuickGraphLib/_QuickGraphLib/helpers_wrapper.cpp
|
|
125
156
|
)
|
|
126
157
|
|
|
127
158
|
# Add custom target to run shiboken to generate the binding cpp files.
|
|
@@ -168,22 +199,26 @@ target_link_libraries(
|
|
|
168
199
|
QuickGraphLib
|
|
169
200
|
Qt6::Core
|
|
170
201
|
Qt6::Gui
|
|
202
|
+
Qt6::Qml
|
|
203
|
+
Qt6::Quick
|
|
171
204
|
)
|
|
172
205
|
|
|
173
206
|
# Generate .pyi stub file
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
207
|
+
if(ENABLE_STUB_GENERATION)
|
|
208
|
+
set(pyi_path ${CMAKE_BINARY_DIR}/QuickGraphLib/_QuickGraphLib.pyi)
|
|
209
|
+
add_custom_command(
|
|
210
|
+
OUTPUT ${pyi_path}
|
|
211
|
+
COMMAND
|
|
212
|
+
"${Python_EXECUTABLE}" ${CMAKE_CURRENT_SOURCE_DIR}/pyigen.py
|
|
213
|
+
$<TARGET_FILE:_QuickGraphLib> --outpath
|
|
214
|
+
${CMAKE_BINARY_DIR}/QuickGraphLib
|
|
215
|
+
DEPENDS $<TARGET_FILE:_QuickGraphLib>
|
|
216
|
+
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
|
|
217
|
+
COMMENT "Running stub generation for for _QuickGraphLib."
|
|
218
|
+
)
|
|
185
219
|
|
|
186
|
-
add_custom_target(QuickGraphLibPythonStubs ALL DEPENDS ${pyi_path})
|
|
220
|
+
add_custom_target(QuickGraphLibPythonStubs ALL DEPENDS ${pyi_path})
|
|
221
|
+
endif()
|
|
187
222
|
|
|
188
223
|
# Install files
|
|
189
224
|
install(TARGETS _QuickGraphLib DESTINATION ${INSTALL_SUBPATH}/QuickGraphLib)
|
|
@@ -8,13 +8,14 @@ import re
|
|
|
8
8
|
import sys
|
|
9
9
|
from typing import ContextManager
|
|
10
10
|
|
|
11
|
-
import PySide6.
|
|
11
|
+
import PySide6.QtQuick
|
|
12
|
+
import PySide6.QtSvg
|
|
12
13
|
import shiboken6 # pylint: disable=unused-import
|
|
13
14
|
from shibokensupport.signature.lib import ( # type: ignore[import-not-found] # pylint: disable=import-error
|
|
14
15
|
pyi_generator,
|
|
15
16
|
)
|
|
16
17
|
|
|
17
|
-
_dll_path = pathlib.Path(sys.argv[1]).parent
|
|
18
|
+
_dll_path = pathlib.Path(sys.argv[1].replace("bindings", "")).parent
|
|
18
19
|
os.environ["PATH"] = os.fspath(_dll_path) + os.pathsep + os.environ["PATH"]
|
|
19
20
|
if hasattr(os, "add_dll_directory"):
|
|
20
21
|
cm: ContextManager = os.add_dll_directory(os.fspath(_dll_path))
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
// @snippet qmlregistersingletoninstance
|
|
2
|
+
// @snippet qmlregistersingletoninstance
|
|
3
|
+
// @snippet qmlregistersingletontype_qobject_nocallback
|
|
4
|
+
// @snippet qmlregistersingletontype_qobject_nocallback
|
|
5
|
+
// @snippet qmlregistersingletontype_qobject_callback
|
|
6
|
+
// @snippet qmlregistersingletontype_qobject_callback
|
|
7
|
+
// @snippet qmlregistersingletontype_qjsvalue
|
|
8
|
+
// @snippet qmlregistersingletontype_qjsvalue
|
|
9
|
+
// @snippet qmlregistertype
|
|
10
|
+
// @snippet qmlregistertype
|
|
11
|
+
// @snippet qmlregisteruncreatabletype
|
|
12
|
+
// @snippet qmlregisteruncreatabletype
|
|
13
|
+
// @snippet qqmlengine-singletoninstance-qmltypeid
|
|
14
|
+
// @snippet qqmlengine-singletoninstance-qmltypeid
|
|
15
|
+
// @snippet qqmlengine-singletoninstance-typename
|
|
16
|
+
// @snippet qqmlengine-singletoninstance-typename
|
|
@@ -19,6 +19,7 @@ AxisHelper::AxisHelper(QObject *parent) : QObject{parent} {
|
|
|
19
19
|
|
|
20
20
|
auto isVertical = direction == Top || direction == Bottom;
|
|
21
21
|
auto longAxis = isVertical ? width : height;
|
|
22
|
+
std::sort(ticks.begin(), ticks.end());
|
|
22
23
|
|
|
23
24
|
// Calculate everything as if we were a bottom axis
|
|
24
25
|
auto points = QList{QPointF{0, 0}};
|
|
@@ -68,6 +69,13 @@ AxisHelper::AxisHelper(QObject *parent) : QObject{parent} {
|
|
|
68
69
|
}
|
|
69
70
|
}
|
|
70
71
|
|
|
72
|
+
// Axis stroke width is 1px, so round positions to the nearest half pixel so that the line covers a single
|
|
73
|
+
// pixel.
|
|
74
|
+
for (auto &p : points) {
|
|
75
|
+
p.setY(round(p.y() + 0.5) - 0.5);
|
|
76
|
+
p.setX(round(p.x() + 0.5) - 0.5);
|
|
77
|
+
}
|
|
78
|
+
|
|
71
79
|
// Update tick items model
|
|
72
80
|
QList<AxisTickModel::TickData> tickDatas;
|
|
73
81
|
auto tickIndex = 0u;
|