biolab / biolab/orange3-datafusion

Fusion Graph: wheelEvent causes error

Open
#32 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
16
Forks
18
PR merge metrics
No merged PRs in 30d

Description

##### Data Fusion version

0.1.11

##### Orange version

3.24.dev

##### Expected behavior
Fusion Graph works.

##### Actual behavior
Fusion Graph crashes when using mouse scroll in the view.

##### Steps to reproduce the behavior
In Fusion Graph, one the view is set, use mouse scroll.

##### Additional info (worksheets, data, screenshots, ...)

```
Exception: | AttributeError: 'QWheelEvent' object has no attribute 'orientation'
-- | --
Module: | orangecontrib.datafusion.widgets.graphview:429
Version: | 3.24.0.dev
Environment: | Python 3.7.2 on Darwin 17.7.0 Darwin Kernel Version 17.7.0: Fri Oct 4 23:08:59 PDT 2019; root:xnu-4570.71.57~1/RELEASE_X86_64 x86_64
Installed Packages: | AnyQt==0.0.10, Babel==2.6.0, Bottleneck==1.2.1, CacheControl==0.12.5, CherryPy==18.1.1, Click==7.0, Cython==0.29.12, Fiona==1.8.9.post2, GDAL==2.3.3, Genesis-PyAPI==1.2.1, Jinja2==2.10, Keras-Applications==1.0.8, Keras-Preprocessing==1.1.0, Keras==2.3.1, Lemmagen==1.2.0, Mako==1.1.0, Markdown==3.1.1, MarkupSafe==1.1.0, Orange-Spectroscopy==0.4.7, Orange3-Associate==1.1.5, Orange3-Bioinformatics==4.0.1.dev9+g267c7dd, Orange3-DataFusion==0.1.11, Orange3-Educational==0.2.1, Orange3-Geo==0.2.5, Orange3-ImageAnalytics==0.4.1, Orange3-Lookalike-Demo==0.1.0, Orange3-Network==1.5.0, Orange3-Prototypes==0.12.0, Orange3-SingleCell==0.9.1.dev138+g0a3a944, Orange3-Text==0.8.0.dev0+e1d92ef, Orange3-Timeseries==0.3.3, Orange3==3.24.0.dev0+bf1dc93, Pattern==3.6, Pillow==6.2.1, PyPDF2==1.26.0, PyQt5-sip==4.19.19, PyQt5==5.13.1, PyQtWebEngine==5.13.1, PySocks==1.6.8, PyYAML==5.1, Pygments==2.3.1, Rtree==0.8.3, Send2Trash==1.5.0, Shapely==1.6.4.post2, Sphinx==2.0.1, Theano==1.0.4, Unidecode==1.0.23, Werkzeug==0.16.0, Wikipedia-API==0.5.3, XlsxWriter==1.1.2, absl-py==0.8.1, alabaster==0.7.12, altair==2.4.1, anndata==0.6.22.post1, appnope==0.1.0, asn1crypto==0.24.0, astor==0.7.1, astroid==2.2.5, atomicwrites==1.3.0, attrs==18.2.0, backcall==0.1.0, backports.csv==1.0.7, backports.functools-lru-cache==1.5, beautifulsoup4==4.7.1, biopython==1.73, bleach==3.1.0, blis==0.2.4, bokeh==1.0.4, boto3==1.9.88, boto==2.49.0, botocore==1.12.88, branca==0.3.1, brotlipy==0.7.0, bz2file==0.98, certifi==2019.9.11, cffi==1.12.2, chardet==3.0.4, cheroot==6.5.4, click-plugins==1.1.1, cligj==0.5.0, colorcet==0.9.1, commonmark==0.8.1, cryptography==2.5, cycler==0.10.0, cymem==2.0.2, decorator==4.3.2, defusedxml==0.5.0, distro==1.4.0, doc8==0.8.0, docutils==0.14, docx2txt==0.7, dropbox==9.3.0, elmoformanylangs==0.0.2, en-core-web-sm==2.1.0, entrypoints==0.3, extranormal3==0.0.3, fastdtw==0.3.2, feedparser==5.2.1, folium==0.8.0, funcy==1.11, future==0.17.1, gast==0.3.2, gensim==3.7.1, geopandas==0.6.1, google-compute-engine==2.8.13, grpcio==1.23.0, h2==2.6.2, h5py==2.9.0, holidays==0.9.10, hpack==3.0.0, hyperframe==3.2.0, hypertemp==0.8.0, idna==2.8, imagesize==1.1.0, importlib-metadata==0.23, ipykernel==5.1.0, ipython-genutils==0.2.0, ipython==7.2.0, ipywidgets==7.4.2, isort==4.3.17, jaraco.functools==2.0, jedi==0.13.2, jmespath==0.9.3, joblib==0.13.1, json-spec==0.10.1, jsonschema==3.0.0a3, jupyter-client==5.2.4, jupyter-console==6.0.0, jupyter-core==4.4.0, jupyter==1.0.0, keyring==17.1.1, keyrings.alt==3.1.1, kiwisolver==1.0.1, langdetect==1.0.7, language-check==1.1, lazy-object-proxy==1.3.1, llvmlite==0.27.1, lockfile==0.12.2, loompy==2.0.17, lxml==4.3.1, matplotlib==3.0.3, mccabe==0.6.1, mistune==0.8.4, mkl-fft==1.0.13, mkl-random==1.0.4, more-itertools==5.0.0, msgpack==0.6.1, munch==2.4.0, murmurhash==1.0.0, mysqlclient==1.4.2.post1, natsort==6.0.0, nbconvert==5.3.1, nbformat==4.4.0, ndf==0.1.4, networkx==2.2, nltk==3.4, notebook==5.7.4, numba==0.42.1, numexpr==2.6.9, numpy==1.16.4, oauthlib==3.0.1, odfpy==1.4.0, olefile==0.46, openTSNE==0.3.11, opencv-python==4.0.0.21, orange-canvas-core==0.1.9.dev0, orange-widget-base==4.2.0.dev0+abbb4ad, overrides==1.9, packaging==19.0, pandas-datareader==0.7.0, pandas==0.24.1, pandocfilters==1.4.2, parso==0.3.2, patsy==0.5.1, pbr==5.2.1, pdfminer3k==1.3.1, pexpect==4.6.0, pickleshare==0.7.5, pip==19.0.1, pkginfo==1.5.0.1, plac==0.9.6, plotly==3.6.0, pluggy==0.8.1, ply==3.11, point-annotator==1.0.0, polyglot==16.7.4, portend==2.4, preshed==2.0.1, prometheus-client==0.5.0, prompt-toolkit==2.0.8, protobuf==3.9.2, ptyprocess==0.6.0, py==1.7.0, pyLDAvis==2.1.2, pyOpenSSL==19.0.0, pyclipper==1.1.0.post1, pycparser==2.19, pycryptodome==3.8.1, pyemd==0.5.1, pygpu==0.7.6, pylint==2.3.1, pynndescent==0.3.3, pyparsing==2.3.1, pyproj==1.9.6, pyqtgraph==0.10.0, pyrsistent==0.14.9, pyspellchecker==0.5.1, pytest==4.2.0, python-dateutil==2.8.0, python-docx==0.8.10, python-louvain==0.13, pytz==2018.9, pyzmq==17.1.2, qtconsole==4.4.3, readme-renderer==24.0, recommonmark==0.5.0, requests-cache==0.5.2, requests-oauthlib==1.2.0, requests-toolbelt==0.9.1, requests==2.22.0, restructuredtext-lint==1.3.0, retrying==1.3.3, rfc3986==1.2.0, s3transfer==0.1.13, scikit-fusion==0.2.1, scikit-learn==0.20.2, scipy==1.3.0, seaborn==0.9.0, serverfiles==0.3.0, setuptools-git==1.2, setuptools==42.0.1, simhash==1.9.0, simplejson==3.16.0, singledispatch==3.4.0.3, sip==4.19.8, six==1.12.0, sklearn==0.0, slumber==0.7.1, smart-open==1.8.0, snowballstemmer==1.2.1, sortedcontainers==2.1.0, soupsieve==1.7.3, spacy==2.1.4, spectral==0.19, sphinxcontrib-applehelp==1.0.1, sphinxcontrib-devhelp==1.0.1, sphinxcontrib-htmlhelp==1.0.2, sphinxcontrib-jsmath==1.0.1, sphinxcontrib-qthelp==1.0.2, sphinxcontrib-serializinghtml==1.1.1, srsly==0.0.5, statsmodels==0.10.0, stevedore==1.30.1, tempora==1.14, tensorboard==1.13.1, tensorflow-estimator==1.13.0, tensorflow==1.13.1, termcolor==1.1.0, terminado==0.8.1, testpath==0.4.2, thinc==7.0.4, toolz==0.9.0, torch==1.1.0, tornado==5.1.1, tqdm==4.32.1, traitlets==4.3.2, tweepy==3.7.0, twine==3.1.1, ufal.udpipe-temp==1.2.0.5, ufal.udpipe==1.2.0.3, urllib3==1.24.1, validate-email==1.3, vincent==0.4.4, virtualenv==16.7.7, wasabi==0.2.2, wcwidth==0.1.7, webencodings==0.5.1, wheel==0.33.6, widgetsnbextension==3.4.2, wikipedia==1.4.0, wmd==1.3.1, wrapt==1.11.1, xlrd==1.2.0, zc.lockfile==1.4, zipp==0.6.0
Machine ID: | ajda
Stack Trace: | Traceback (most recent call last):  File "/Users/ajda/orange/orange3-datafusion/orangecontrib/datafusion/widgets/graphview.py", line 429, in wheelEvent    if event.orientation() != Qt.Vertical: returnAttributeError: 'QWheelEvent' object has no attribute 'orientation'
Local Variables: | OrderedDict([('event', ),             ('self',              )])
```

Contributor guide

No contributing guide indexed for this repository

Research direction

Start in orangecontrib/datafusion/widgets/graphview.py at line 429 and reproduce the crash by opening Fusion Graph and scrolling. Inspect the QWheelEvent usage involved in wheelEvent. Done means mouse scrolling no longer raises the reported AttributeError and Fusion Graph continues working.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
desktop
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.