Merge from original repo#1
Merged
NilsNemitz merged 1098 commits intoNilsNemitz:masterfrom Oct 31, 2020
Merged
Conversation
Add a check in the viewTransformChanged function to only force a rerender when the downsampling factor changed. Previously simply moving the image around or zooming in/out without changing the downsampling factor would force a complete rerendering of the image, which was very slow with large images. This way, the expensive rerender is only forced if necessary.
Check lastDownsample in viewTransformChanged
…ill_running Fix Dock close event QLabel still running with no parent
* Fix duplicate menus in GradientEditorItem Add call to ev.accept in Tivk.mouseClickEvent to prevent parent menu from opening on a right click of a Tick. Co-authored-by: Ogi <ognyan.moore@gmail.com>
NEW show/hide gradient ticks NEW link gradientEditor to others
Optionally provide custom PlotItem to PlotWidget
* move forward pyvirtualdisplay * Try installing things per QTBUG-84489 * Debug plugins to 1 * Removing all the other packages, adding libxcb-xfixes0 * adding libxcb-icccm4 per plugin debug * adding libxcb-image0, restoring pyvirtualdisplay to older version * now adding libxcb-keysyms1 * libxcb-randr0 * adding libxcb-render-util0 * adding libxcb-xinerama0 * Restore Configs, Properly Name Latest Pipeline
* moved some functionality from method 'export' to new method 'getSupportedFormats' making it accessible from outside
* changed structure to redefine axis via plotitem.setAxes * cleanuup * remove old axesitems before adding new ones * DEBUGGED plotitem.setAxes NEW AxisItem.setOrientation (needed by plotitem.setAxes) show/hide right axes after .setAxes() Co-authored-by: Ogi Moore <ognyan.moore@gmail.com>
* Do not wrap PlotView/ImageView There is no need to wrap PlotView/ImageView into QMainWindow, since only purpose of the QMainWindow is some default menu toolbar & menu handling, that is not used by PyQtGraph anyway. Moreover, every parent-less Qt widget can become window, so this change just use PlotView/ImageView as windows, removing extra complexity, eg. method forwarding, self.win property. Another benefit of this change, it that these windows get initial dimensions and titles as they were designed in .ui file. * Properly cleanup on ImageView.close() We should not close explicitly child widgets or clear scene, otherwise Qt will deallocate children views, and cause "wrapped C/C++ object of type ImageItem has been deleted" error next time we call close() and/or some other methods. All children, including self.ui.roiPlot, self.ui.graphicsView will be closed together with its parent, so there is no need to close them explicitly. So the purpose of close it to reclaim the memory, but not to make the existing ImageView object dysfunctional. * Remove references to plot & image windows after close PyQtGraph images and plots module list variables are currently holding references to all plots and image windows returned directly from main module. This does not seem to be documented however, and causes the Qt windows to be not released from memory, even if user releases all own references. This change removes the references from images/plots list once window is closed, so when there is no other reference, window and all related memory is reclaimed. * Change all UI forms title from Form to PyQtGraph Co-authored-by: Ogi Moore <ognyan.moore@gmail.com>
py3 fix for ScatterPlotWidget.setSelectedFields
Add support for running pyside2-uic binary to dynamically compile ui files
Co-authored-by: Ognyan Moore <omoore@sensoryinc.com>
Image axis order bugfix
This issue was introduced in merging develop into #1175. While refactoring for the merge, the change in namespace was not correctly attributed, leading to the parameter `opts` to be assumed in local namespace when it isn't.
Using `opts` as alias for `self.param.opts`, following the style of `updateFlags`.
ParameterTree: Fix custom context menu
- Adds doc strings for user-facing methods so they appear in the documentation. - Allows PlotItem.addLegend to accept the same arguments as LegendItem constructor for convenience. - Fixes a bug for adding a BarGraphItem (which doesn't have an antialias option) to LegendItem
Minor improvements to LegendItem
Wrap text in tables in docs
DataTreeWidget exception with multivalue Terminal (flowchart)
LegendItem: A bit auto flake8
…1392) * SignalProxy: Correct initialization without slot argument and provide tests * Add missing slot is None case on disconnect * Start new tests * Exception block * Test no module * Different signal * Debugging the signal connect * Re initialize proxy after disconnect * Add more test cases for blockSignal * Change test case for signal count * Give up for python 2 and pyside * Exclude for Python 2.7 and PySide * Convert float to integers in timer start period
* Add "lstep" and "rstep" step Modes stepMode is currently either True or False. If it is True, it requires the user to make len(x) = len(y)+1. This is inconvenient because it makes it difficult to change the stepMode on a given curve (just as one would change, e.g., its color). This commit extends the current situation by introducing two more step modes: "lstep" and "rstep", which do not require passing an extra x value. In turn, this modes associate each y value to either the left or the right boundary of the step. For example, the "rstep" mode is handy when plotting "life" digital signals in which x,y data pairs are appended as they are read. This commit does not modify the behaviour in case of stepMode=True * Replace step mode names: lstep,rstep -> left,right * Improve docs for stepMode Reword docstring and add it to PlotDataItem class too * Document left and right stepModes as added in v 0.12.0 TODO: confirm the exact version number to use here * Add comments stress the need for "is True" Some conditional statements in the code regarding stepMode are done with "is True". This is actually required since other possible values such as "left" also evaluate as true but should not be caught. * Deprecate boolean API for stepMode Introduce stepMode="mid" as a replacement of stepMode=True, but keeping full backwards compatibility with the old API. Adapt docs, examples and tests accordingly. * Raise ValueError on unsupported stepMode values * Rename "mid" step mode to "center" * Remove "added in 0.12.0" note See #1360 (comment) * Add deprecation warning when stepMode=True Issue a DeprecationWarning if stepMode=True is being passed to the constructor or setData() of PlotDataItem or PlotCurveItem. Note: warnings module is imported locally so that it is esier to remove once this check is no longer needed. * Fix wrong syntax in last commit Fix usage of "default" kwarg in dict.get()
This commit adds a depth buffer in renderToArray(). This fixes the issue that overlapping objects are rendered incorrectly when using renderToArray() on a GLViewWidget. This might be related to issue #743.
… not defined (#1349) * Fixed bug where removeTempArea would be called on home even if it was not defined * Made the check for whether or not home is defined more explicit
…ts (#1367) * Rebase * make the tests work * add test and rather more cleanup * Cleanup for axisitem visibility test * Another cleanup in test axis item
* Add a docs build job to CI * Add sphinxopts to fail on warning * Test sphinx warning * Redid ci stage conditionals * update conf.py to remove deprecation warning * introduce 3rd stage for proper conditionals * Attempt to fix malformed table Co-authored-by: Ogi Moore <ognyan.moore@gmail.com>
* LegendItem: Enable customization of label text size and tests * One more CI * Remove deleteLater of QAPP in legend item test * Remove assert statement in setLabelTextSize * Modify legend test without assertion
* Do not apply transparent background in Qt4 * Tests need to reflect this change too
* caching for boundaryRect of LinearRegionItem * caching viewRect at GraphicsItem
* dynamic range limiting in PlotDataItem * revised version of cynamic range limiting * replaced == with is operator * removed unicode +- character, converted to ascii * code/docstring cleanup * clean state with changes * silenced numpy all-NaN warnings * reverted PlotWidget.py to original * reverted PlotWidget.py to original * reverted PlotWidget.py to original * rewrapped/reformated setDynamicRangeLimits docstring Co-authored-by: Ogi Moore <ognyan.moore@gmail.com>
* example app now workw with Qt4 and Python2 again * Example App is now part of the test suite * Add initExample * No scary warning when launching examples * Fix scary examples.__main__ warning * Use courier new font as its on all platforms * Remove commented out code * Add newline * Updated docs, example app now tested * Non-relative import for example app * Proper importing now
Co-authored-by: Daniel Lidstrom <dlidstrom@russelltech.com>
Co-authored-by: Daniel Lidstrom <dlidstrom@russelltech.com>
* Call GraphicsItem.viewTransformChanged() * Needed to apply to labels too
Harmonizes behavior with PlotCurveItem.
- Parameters now respond to title change in setOpts - Add Parameter.title() - Action parameter uses default name/title handling in addition to setting button text (fixes #1320)
The three parameters "shape, vectors, origin" can't be passed as parameters because they are computed, which raise an error when kwds is passed to affineSlice.
* Permit nan, inf, and -inf for float SpinBox Bounds are enforced against inf and -inf inputs, but not for nan. * Ensure SpinBox text is updated when out-of-bounds value is entered * Make inf and nan entry in SpinBox case-insensitive * Make SpinBox example behave as advertised * Make non-finite SpinBox values optionally allowed * Python 2 compatibility
* [SVGExporter] Fix width and height * [SVGExporter] Fix background color * [SVGExporter] Remove f-strings * [Exporter] Fix for QtGui.QGraphicsScene * Revert "[Exporter] Fix for QtGui.QGraphicsScene" This reverts commit 5bdd25e. * [test_svg] Fix unit test
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.