Source code for ClearMap.Utils.events
from dataclasses import dataclass
from typing import Tuple, List, Any, Optional, Dict
# Intent may not actually materialize in the config
[docs]
@dataclass(frozen=True)
class UiChannelRenamed:
old: str
new: str
[docs]
@dataclass(frozen=True)
class UiChannelsChanged:
before: List[str]
after: List[str]
# Fact: actual change in the config
[docs]
@dataclass(frozen=True)
class ChannelRenamed:
old: str
new: str
[docs]
@dataclass(frozen=True)
class ChannelsChanged:
before: List[str]
after: List[str]
[docs]
@dataclass(frozen=True)
class ChannelsSnapshot:
names: List[str]
[docs]
@dataclass(frozen=True)
class ChannelDefaultsChanged:
partners: Dict[str, Dict[str, Optional[str]]]
[docs]
@dataclass(frozen=True)
class WorkspaceChanged:
exp_dir: str
[docs]
@dataclass(frozen=True)
class UiOrientationChanged:
channel_name: str
orientation: Tuple[int, int, int]
[docs]
@dataclass(frozen=True)
class UiCropChanged:
channel_name: str
slice_x: Any
slice_y: Any
slice_z: Any
[docs]
@dataclass(frozen=True)
class UiPrepareRawDataForClearMap:
channel_name: str
[docs]
@dataclass(frozen=True)
class UiRequestPlotMiniBrain:
channel_index: int
[docs]
@dataclass(frozen=True)
class UiRequestPlotAtlas:
channel_index: int
[docs]
@dataclass(frozen=True)
class UiRequestLandmarksDialog:
page_index: int
[docs]
@dataclass(frozen=True)
class UiLayoutChannelChanged:
channel_name: str
layout_channel: str
[docs]
@dataclass(frozen=True)
class UiUseExistingLayoutChanged:
channel_name: str
use_existing: bool
[docs]
@dataclass(frozen=True)
class UiAlignWithChanged:
channel_name: str
align_with: Optional[str]
[docs]
@dataclass(frozen=True)
class UiAtlasIdChanged:
atlas_base_name: str
[docs]
@dataclass(frozen=True)
class UiAtlasStructureTreeIdChanged:
tree_id: str
[docs]
@dataclass(frozen=True)
class UiVesselGraphFiltersChanged:
pass
[docs]
@dataclass(frozen=True)
class TabsUpdated:
titles: List[str]
tabs: List[Any]
[docs]
@dataclass(frozen=True)
class UiTabActivated:
key: str
[docs]
@dataclass(frozen=True)
class TabActivationResult:
key: str
ok: bool
message: str
[docs]
@dataclass(frozen=True)
class UiRequestRefreshTabs:
pass
# App/domain → UI notifications
[docs]
@dataclass(frozen=True)
class CfgChanged:
changed_keys: Tuple[str, ...]
[docs]
@dataclass(frozen=True)
class RegistrationStatusChanged:
pass
[docs]
@dataclass(frozen=True)
class UiBatchResultsFolderChanged:
folder: str
[docs]
@dataclass(frozen=True)
class UiBatchGroupsChanged:
groups: Dict[str, List[str]]