Source code for ewoksorange.canvas.utils

from typing import Optional

from ..orange_version import ORANGE_VERSION

if ORANGE_VERSION == ORANGE_VERSION.oasys_fork:
    from oasys.canvas.mainwindow import OASYSMainWindow as MainWindow
elif ORANGE_VERSION == ORANGE_VERSION.latest_orange:
    from Orange.canvas.mainwindow import MainWindow
else:
    from orangewidget.workflow.mainwindow import OWCanvasMainWindow as MainWindow

from ..bindings.qtapp import get_qtapp


[docs]def get_orange_canvas() -> Optional[MainWindow]: app = get_qtapp() if app is None: return None for widget in app.topLevelWidgets(): if isinstance(widget, MainWindow): return widget return None