Coverage for graphica/gui/datasets/transfer.py: 100.0%
23 statements
« prev ^ index » next coverage.py v7.16.2, created at 2026-10-12 16:38 +0000
« prev ^ index » next coverage.py v7.16.2, created at 2026-10-12 16:38 +0000
1"""データセットをタブの外とやり取りするメニューの入口。本体は gui/datasets/operations/transfer.py。"""
2from graphica.gui.datasets.operations.runner import OperationState, run_operation
3from graphica.gui.datasets.operations.transfer import TRANSFER_OPERATIONS
6class TransferController:
7 """データセットをタブの外(ファイル・別のタブ)とやり取りする。"""
9 def __init__(self, host):
10 self._host = host
11 self._state = OperationState()
13 @property
14 def copied_style(self):
15 return self._state.copied_style
17 def _run(self, name):
18 run_operation(TRANSFER_OPERATIONS[name], self._host, self._state)
20 def export_data(self):
21 self._run("export_data")
23 def copy_or_move_to_tab(self, move):
24 self._run("move_to_tab" if move else "copy_to_tab")
26 def copy_style(self):
27 self._run("copy_style")
29 def paste_style(self):
30 self._run("paste_style")
32 def reload_from_source(self):
33 self._run("reload_from_source")
35 def copy_methods_text(self):
36 self._run("copy_methods_text")