把分析视频和分析设置挪到独立的「分析」菜单。
菜单栏为文件 | 采集 | 分析 | 视图 | 帮助。提示里指向这两项的路径已改成「分析」。
This commit is contained in:
@@ -171,7 +171,7 @@ class StudioMainWindow(QMainWindow):
|
||||
self._theme = str(self.prefs.get("theme") or "dark")
|
||||
self._language = str(self.prefs.get("language") or "zh_CN")
|
||||
#: Reference-frame override for the next analysis pass on a real recording
|
||||
#: (from View ▸ Analysis setup…). Bare-video workspaces store this in session.json.
|
||||
#: (from Analysis ▸ Analysis setup…). Bare-video workspaces store this in session.json.
|
||||
self._analysis_reference_override: int | None = None
|
||||
# The view preset, the calibration panel, the 3D pane's switch and the fps
|
||||
# readout are the controllers' state; the window reads and writes them through
|
||||
@@ -1064,7 +1064,7 @@ class StudioMainWindow(QMainWindow):
|
||||
self.addAction(self.act_play)
|
||||
|
||||
# Acquisition session controls (run / preview / pause). Order on the bar:
|
||||
# File | Session | View | Help.
|
||||
# File | Session | Analysis | View | Help.
|
||||
self.session_menu = menu_bar.addMenu("")
|
||||
|
||||
self.act_run = QAction(self)
|
||||
@@ -1095,6 +1095,19 @@ class StudioMainWindow(QMainWindow):
|
||||
self.act_pause.toggled.connect(self._on_pause_action_toggled)
|
||||
self.session_menu.addAction(self.act_pause)
|
||||
|
||||
# Offline analysis of a recording. Separate from Session: that menu starts
|
||||
# and stops a live device session.
|
||||
self.analysis_menu = menu_bar.addMenu("")
|
||||
# Serve / leave a stored analysis result (or run the pass when there is none).
|
||||
self.act_recompute = QAction(self)
|
||||
self.act_recompute.setCheckable(True)
|
||||
self.act_recompute.setChecked(False)
|
||||
self.analysis_menu.addAction(self.act_recompute)
|
||||
# Reopen the setup dialog after the first pass (profile / calibration / reference).
|
||||
self.act_analysis_setup = QAction(self)
|
||||
self.act_analysis_setup.triggered.connect(self.replay_ctl.on_analysis_setup)
|
||||
self.analysis_menu.addAction(self.act_analysis_setup)
|
||||
|
||||
self.view_menu = menu_bar.addMenu("")
|
||||
self.act_cal_panel = QAction(self)
|
||||
self.act_cal_panel.setCheckable(True)
|
||||
@@ -1142,17 +1155,6 @@ class StudioMainWindow(QMainWindow):
|
||||
self.act_rotate_arrows = QAction(self)
|
||||
self.act_rotate_arrows.triggered.connect(self.display_ctl.on_rotate_arrows)
|
||||
self.view_menu.addAction(self.act_rotate_arrows)
|
||||
|
||||
# Serve / leave a stored analysis result (or run the pass when there is none).
|
||||
self.act_recompute = QAction(self)
|
||||
self.act_recompute.setCheckable(True)
|
||||
self.act_recompute.setChecked(False)
|
||||
self.view_menu.addAction(self.act_recompute)
|
||||
|
||||
# Reopen the setup dialog after the first pass (profile / calibration / reference).
|
||||
self.act_analysis_setup = QAction(self)
|
||||
self.act_analysis_setup.triggered.connect(self.replay_ctl.on_analysis_setup)
|
||||
self.view_menu.addAction(self.act_analysis_setup)
|
||||
self.view_menu.addSeparator()
|
||||
|
||||
# The graphics half of the old 重置: curves, window, cursor and the 3D camera.
|
||||
@@ -1392,6 +1394,11 @@ class StudioMainWindow(QMainWindow):
|
||||
self._sync_reset_action()
|
||||
self.act_pause.setText(t("menu.pause"))
|
||||
self._sync_pause_action()
|
||||
self.analysis_menu.setTitle(t("menu.analysis"))
|
||||
self.act_recompute.setText(t("menu.recompute"))
|
||||
self.act_recompute.setToolTip(t("menu.recompute_tip"))
|
||||
self.act_analysis_setup.setText(t("menu.analysis_setup"))
|
||||
self.act_analysis_setup.setToolTip(t("menu.analysis_setup_tip"))
|
||||
self.view_menu.setTitle(t("menu.view"))
|
||||
self.act_cal_panel.setText(t("menu.calibration_panel"))
|
||||
self.act_finger_3d.setText(t("menu.finger_3d"))
|
||||
@@ -1401,10 +1408,6 @@ class StudioMainWindow(QMainWindow):
|
||||
self.act_settings.setText(t("menu.settings"))
|
||||
self.act_plot_settings.setText(t("menu.plot_settings"))
|
||||
self.act_rotate_arrows.setText(t("menu.rotate_arrows"))
|
||||
self.act_recompute.setText(t("menu.recompute"))
|
||||
self.act_recompute.setToolTip(t("menu.recompute_tip"))
|
||||
self.act_analysis_setup.setText(t("menu.analysis_setup"))
|
||||
self.act_analysis_setup.setToolTip(t("menu.analysis_setup_tip"))
|
||||
self.act_reset_view.setText(t("menu.reset_view"))
|
||||
self.act_reset_view.setToolTip(t("menu.reset_view_tip"))
|
||||
self.theme_menu.setTitle(t("menu.theme"))
|
||||
|
||||
Reference in New Issue
Block a user