diff --git a/scam.py b/scam.py index a33c9c9..7855e52 100755 --- a/scam.py +++ b/scam.py @@ -28,6 +28,7 @@ TITLE = "SCam" if not clargs.show_all_settings else "SCam Expert Mode" import itertools +import subprocess import wx try: @@ -72,6 +73,7 @@ class MainPanel(wx.Panel): self.eb_bkg = eb_bkg = EntryButton(self, label="Background Images", value=100, button="Record Background") + self.btn_screenpanel = btn_screenpanel = wx.Button(self, label="Open ScreenPanel") self.btn_get_roi_bkg = btn_get_roi_bkg = wx.Button(self, label="Get ROI Background from ScreenPanel") self.btn_get_roi_sig = btn_get_roi_sig = wx.Button(self, label="Get ROI Signal from ScreenPanel") @@ -81,6 +83,7 @@ class MainPanel(wx.Panel): self.btn_save = btn_save = wx.Button(self, label="Save") eb_bkg.Disable() + btn_screenpanel.Disable() btn_get_roi_bkg.Disable() btn_get_roi_sig.Disable() btn_print.Disable() @@ -88,12 +91,13 @@ class MainPanel(wx.Panel): cb_pls.Bind(wx.EVT_COMBOBOX, self.on_select) eb_bkg.button.Bind(wx.EVT_BUTTON, self.on_save_bkg) + btn_screenpanel.Bind(wx.EVT_BUTTON, self.on_screenpanel) btn_get_roi_bkg.Bind(wx.EVT_BUTTON, self.on_get_roi_bkg) btn_get_roi_sig.Bind(wx.EVT_BUTTON, self.on_get_roi_sig) btn_print.Bind(wx.EVT_BUTTON, self.on_print) btn_save.Bind(wx.EVT_BUTTON, self.on_save_cfg) - widgets = [btn_get_roi_bkg, btn_get_roi_sig] + widgets = [btn_screenpanel, btn_get_roi_bkg, btn_get_roi_sig] btns_get_roi = make_filled_vbox(widgets) widgets = [btn_print, btn_save] @@ -139,6 +143,7 @@ class MainPanel(wx.Panel): bkg_setting.set_value(latest_bkg) self.eb_bkg.Enable() + self.btn_screenpanel.Enable() self.btn_get_roi_sig.Enable() self.btn_get_roi_bkg.Enable() self.btn_print.Enable() @@ -162,6 +167,13 @@ class MainPanel(wx.Panel): return cfg + def on_screenpanel(self, event): + cam = self.camera + cmd = f"screen_panel -persist -cam={cam}" + print(cmd) + subprocess.run(cmd.split()) + + def on_get_roi_bkg(self, event): roi = self._get_roi() if roi is None: