| | |
| | | |
| | | VisualStudioToolStripExtender extender = new VisualStudioToolStripExtender(); |
| | | extender.SetStyle(menuMain, VisualStudioToolStripExtender.VsVersion.Vs2015, theme); |
| | | |
| | | |
| | | InitialMenu(MenuFormFactory.MenuFrmTypeDict, ""); |
| | | |
| | | //MenuFormFactory.MenuFrmTypeDict.ToList().ForEach(t => |
| | |
| | | //}); |
| | | |
| | | m_deserializeMenuFrm = new DeserializeDockContent(GetMenuFromPersistString); |
| | | LoadLayoutFromXML(m_deserializeMenuFrm); |
| | | |
| | | m_deserializeDeviceRunFrm = new DeserializeDockContent(GetAllFormPersistString); |
| | | _allMenuLoadDoneHandle.Set(); |
| | | |
| | | //LoadLayoutFromXML(m_deserializeMenuFrm); |
| | | //_allMenuLoadDoneHandle.Set(); |
| | | |
| | | Text = SettingHelper.GetProgramDescription(); |
| | | string iconPath = SettingHelper.GetProgramIcon(); |
| | |
| | | private void RegisterEvent(MenuFrmBase dockFrm) |
| | | { |
| | | dockFrm.OnUploadProcess = DockFrm_OnUploadProcess; |
| | | dockFrm.OnLogMsgOutput = DockFrm_OnLogMsgOutput; |
| | | |
| | | dockFrm.OnLogMsgOutput -= DockFrm_OnLogMsgOutput; |
| | | dockFrm.OnLogMsgOutput += DockFrm_OnLogMsgOutput; |
| | | |
| | | //if (dockFrm is FrmDevices) |
| | | //{ |
| | |
| | | CloseAllDeviceFrm(); |
| | | LoadDevices(); |
| | | |
| | | foreach (var dock in dockPanelMain.Contents) |
| | | try |
| | | { |
| | | MenuFrmBase m = dock as MenuFrmBase; |
| | | |
| | | if (m != null && m.Id != frmId) |
| | | foreach (var dock in dockPanelMain.Contents) |
| | | { |
| | | m.DownloadProcess(process); |
| | | MenuFrmBase m = dock as MenuFrmBase; |
| | | |
| | | if (m != null && m.Id != frmId) |
| | | { |
| | | m.DownloadProcess(process); |
| | | } |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | } |
| | | }); |
| | | } |
| | | |
| | | private void Process_OnAlarmUpdate(string alarmMsg) |
| | | private async void Process_OnAlarmUpdate(string alarmMsg) |
| | | { |
| | | tsslWarning.Text = alarmMsg; |
| | | this.BeginInvoke(new Action(() => |
| | | { |
| | | tsslWarning.Text = alarmMsg; |
| | | })); |
| | | |
| | | await Task.Delay(100); |
| | | } |
| | | |
| | | private ToolStripMenuItem GetMatchNode(ToolStripItemCollection items, string parentMenuCode) |
| | |
| | | |
| | | private void MainFrm_Load(object sender, EventArgs e) |
| | | { |
| | | LoadLayoutFromXML(m_deserializeMenuFrm); |
| | | _allMenuLoadDoneHandle.Set(); |
| | | |
| | | AdvancedPwdFrm.OnLoginOK = OnLoginOK; |
| | | |
| | | SpinWait wait = new SpinWait(); |
| | | while (_process == null) |
| | | { |
| | | wait.SpinOnce(); |
| | | } |
| | | //SpinWait wait = new SpinWait(); |
| | | //while (_process == null) |
| | | //{ |
| | | // wait.SpinOnce(); |
| | | //} |
| | | |
| | | LoadProcess(); |
| | | |
| | | LoadLayoutFromXML(m_deserializeDeviceRunFrm); |
| | | |
| | | LoadProcess(false); |
| | | } |
| | | |
| | | private List<string> LoadProcessCode() |
| | | { |
| | | var systemProcessCodes = ProcessFactory.GetProcessCodes(); |
| | | var avaiableProcessCodes = SettingHelper.GetProcessCodes(); |
| | | |
| | | List<string> pCodes = new List<string>(); |
| | | |
| | | if (avaiableProcessCodes.Count > 0) |
| | | { |
| | | pCodes = avaiableProcessCodes.Intersect(systemProcessCodes).ToList(); |
| | | } |
| | | else |
| | | { |
| | | pCodes = systemProcessCodes; |
| | | } |
| | | |
| | | return pCodes; |
| | | } |
| | | |
| | | private List<string> LoadProductionCode() |
| | | { |
| | | return SettingHelper.GetProductionCodes(); |
| | | } |
| | | |
| | | private void LoadProcess(bool isInitialProcess = true) |
| | | { |
| | | if (isInitialProcess) |
| | | { |
| | | _process = ProcessFactory.CreateStationProcess(LoadProcessCode()[0], LoadProductionCode()[0], out string msg); |
| | | |
| | | if (!string.IsNullOrWhiteSpace(msg)) |
| | | { |
| | | _process = null; |
| | | //LogAsync(DateTime.Now, "Process创建失败", $"{msg}"); |
| | | throw new ProcessException($"Process创建失败,{msg}", null, ExceptionLevel.Fatal); |
| | | } |
| | | |
| | | |
| | | _process.InitialProcess(""); |
| | | } |
| | | _process.OnLog -= OnProcessLogOutput; |
| | | _process.OnLog += OnProcessLogOutput; |
| | | |
| | | _process.OnAlarmUpdate -= Process_OnAlarmUpdate; |
| | | _process.OnAlarmUpdate += Process_OnAlarmUpdate; |
| | | |
| | | //CloseAllDeviceFrm(); |
| | | LoadDevices(); |
| | | |
| | | try |
| | | { |
| | | foreach (var dock in dockPanelMain.Contents) |
| | | { |
| | | //MenuFrmBase m = dock as MenuFrmBase; |
| | | |
| | | //m.DownloadProcess(_process); |
| | | |
| | | if (dock is MenuFrmBase menuFrm) |
| | | { |
| | | menuFrm.DownloadProcess(_process); |
| | | } |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | } |
| | | } |
| | | |
| | | private void OnProcessLogOutput(DateTime dt, string prefix, string msg) |
| | | { |
| | | DockFrm_OnLogMsgOutput(new LogMsg(dt, prefix, msg)); |
| | | } |
| | | |
| | | private void CloseAllDocuments() |
| | |
| | | |
| | | private void OnLoginOK(bool isLogin) |
| | | { |
| | | IsLogin = true; |
| | | IsLogin = isLogin; |
| | | } |
| | | #endregion |
| | | |
| | |
| | | if (u == null) |
| | | return; |
| | | |
| | | if (_process.DeviceCollection.Any(d => d.Id == u.Device.Id)) |
| | | return; |
| | | |
| | | u.DockPanel = null; |
| | | u.Close(); |
| | | }); |
| | |
| | | |
| | | private void Device_OnDeviceStateChanged(IDevice device, EnumHelper.DeviceState currentState) |
| | | { |
| | | for (int i = 1; i < ststripDevices.Items.Count; i++) |
| | | ststripDevices.BeginInvoke(new Action(() => |
| | | { |
| | | if ((ststripDevices.Items[i].Tag as IDevice)?.Id == device.Id) |
| | | for (int i = 1; i < ststripDevices.Items.Count; i++) |
| | | { |
| | | ststripDevices.Items[i].BackColor = currentState.GetEnumSelectedColor(); |
| | | ststripDevices.Items[i].ForeColor = currentState.GetEnumSelectedFontColor(); |
| | | break; |
| | | if ((ststripDevices.Items[i].Tag as IDevice)?.Id == device.Id) |
| | | { |
| | | ststripDevices.Items[i].BackColor = currentState.GetEnumSelectedColor(); |
| | | ststripDevices.Items[i].ForeColor = currentState.GetEnumSelectedFontColor(); |
| | | break; |
| | | } |
| | | } |
| | | } |
| | | })); |
| | | } |
| | | #endregion |
| | | |
| | |
| | | |
| | | dockFrm.Text = desc[2]; |
| | | |
| | | if (_process != null) |
| | | { |
| | | dockFrm.DownloadProcess(_process); |
| | | } |
| | | //if (_process != null) |
| | | //{ |
| | | // dockFrm.DownloadProcess(_process); |
| | | //} |
| | | |
| | | dockFrm.SetLoginStatus(IsLogin); |
| | | |
| | |
| | | |
| | | dockFrm.Text = desc[2]; |
| | | |
| | | if (_process != null) |
| | | { |
| | | dockFrm.DownloadProcess(_process); |
| | | } |
| | | //if (_process != null) |
| | | //{ |
| | | // dockFrm.DownloadProcess(_process); |
| | | //} |
| | | |
| | | dockFrm.SetLoginStatus(IsLogin); |
| | | |