Source code for ewoksorange.canvas.config

"""Copy parts of Orange.canvas.config to be used when Orange3 is not installed.
"""

from ..orange_version import ORANGE_VERSION

if ORANGE_VERSION == ORANGE_VERSION.oasys_fork:
    from oasys.canvas.conf import oasysconf as _Config
    from oasys.canvas.conf import WIDGETS_ENTRY  # "oasys.widgets"
elif ORANGE_VERSION == ORANGE_VERSION.latest_orange:
    from Orange.canvas.config import Config as _Config
    from Orange.canvas.config import WIDGETS_ENTRY  # "orange.widgets"
else:
    from orangewidget.workflow.config import Config as _Config
    from orangewidget.workflow.config import WIDGETS_ENTRY  # "orange.widgets"

from ..pkg_meta import iter_entry_points

EXAMPLE_WORKFLOWS_ENTRY = WIDGETS_ENTRY + ".tutorials"


[docs]class Config(_Config):
[docs] @staticmethod def widgets_entry_points(): """Return an `EntryPoint` iterator for all WIDGETS_ENTRY entry points.""" # Ensure the 'this' distribution's ep is the first. iter_entry_points # yields them in unspecified order. from orangecontrib.ewokstest import is_ewokstest_category_enabled for ep in iter_entry_points(group=WIDGETS_ENTRY): if ( _get_ep_module(ep) == "orangecontrib.ewokstest" and not is_ewokstest_category_enabled() ): continue yield ep
[docs] @staticmethod def examples_entry_points(): """Return an `EntryPoint` iterator for all EXAMPLE_WORKFLOWS_ENTRY entry points.""" from orangecontrib.ewokstest import is_ewokstest_category_enabled for ep in iter_entry_points(group=EXAMPLE_WORKFLOWS_ENTRY): if ( _get_ep_module(ep) == "orangecontrib.ewokstest.tutorials" and not is_ewokstest_category_enabled() ): continue yield ep
tutorials_entry_points = examples_entry_points
def _get_ep_module(ep) -> str: try: return ep.module except AttributeError: return ep.module_name
[docs]def widgets_entry_points(): return Config.widgets_entry_points()