feat: 拆分 STEP 编辑器并完善最小系统
将原来的 main.py/step_model.py 拆分为 step_editor 包,补充测量、同域高亮、模型修复、历史导出、槽宽/凸台/边长等 MVP 编辑能力,并更新 README 和忽略规则。
This commit is contained in:
@@ -0,0 +1,51 @@
|
||||
from __future__ import annotations
|
||||
|
||||
from PySide6.QtCore import QObject, Signal, Slot
|
||||
|
||||
|
||||
class EditWorker(QObject):
|
||||
finished = Signal(object)
|
||||
failed = Signal(str)
|
||||
|
||||
def __init__(self, action):
|
||||
super().__init__()
|
||||
self.action = action
|
||||
|
||||
@Slot()
|
||||
def run(self) -> None:
|
||||
try:
|
||||
self.finished.emit(self.action())
|
||||
except Exception as exc:
|
||||
self.failed.emit(str(exc))
|
||||
|
||||
|
||||
class ScanWorker(QObject):
|
||||
finished = Signal(object)
|
||||
failed = Signal(str)
|
||||
|
||||
def __init__(self, action):
|
||||
super().__init__()
|
||||
self.action = action
|
||||
|
||||
@Slot()
|
||||
def run(self) -> None:
|
||||
try:
|
||||
self.finished.emit(self.action())
|
||||
except Exception as exc:
|
||||
self.failed.emit(str(exc))
|
||||
|
||||
|
||||
class LoadWorker(QObject):
|
||||
finished = Signal(object)
|
||||
failed = Signal(str)
|
||||
|
||||
def __init__(self, action):
|
||||
super().__init__()
|
||||
self.action = action
|
||||
|
||||
@Slot()
|
||||
def run(self) -> None:
|
||||
try:
|
||||
self.finished.emit(self.action())
|
||||
except Exception as exc:
|
||||
self.failed.emit(str(exc))
|
||||
Reference in New Issue
Block a user