Source code for ooodev.gui.menu.item.menu_item

from __future__ import annotations
from typing import Any, Tuple, TYPE_CHECKING
import contextlib

try:
    # python 3.12+
    from typing import override  # noqa # type: ignore
except ImportError:
    from typing_extensions import override  # noqa # type: ignore

from com.sun.star.beans import PropertyValue
from ooo.dyn.util.url import URL

from ooodev.adapter.container.index_access_comp import IndexAccessComp
from ooodev.gui.menu.comp.dispatch_comp import DispatchComp
from ooodev.gui.menu.item.menu_item_base import MenuItemBase
from ooodev.gui.menu.item.menu_item_kind import MenuItemKind
from ooodev.io.log.named_logger import NamedLogger
from ooodev.loader.inst.service import Service
from ooodev.macro.script.macro_script import MacroScript
from ooodev.utils.kind.item_style_kind import ItemStyleKind
from ooodev.utils.string.str_list import StrList

if TYPE_CHECKING:
    from ooodev.gui.menu.menu import Menu
    from ooodev.loader.inst.lo_inst import LoInst