public DeviceChangeArgs(DeviceChange changeType, string devicePath) { Contract.Requires<ArgumentException>(!string.IsNullOrWhiteSpace(devicePath)); ChangeType = changeType; DevicePath = devicePath.ToLowerInvariant(); }
public void InputMain(Mainwindow mainwindow) { var bootwindow = mainwindow.bootwindow; bootwindow.ToRightButton.Visibility = Visibility.Hidden; bootwindow.ToLeftButton.Visibility = Visibility.Hidden; var listdv = mainwindow.TADB.GetDevices(); if (listdv.Count() >= 1) { //select the working device mainwindow.TADB.SetDevice(listdv[0]); bootwindow.NaviSetion2(); } else { DeviceChange deviceChange = null; deviceChange = (e, s) => { mainwindow.TADB.SetDevice(s); bootwindow.NaviSetion2(); mainwindow.TADB.OndeivceConnect -= deviceChange; }; mainwindow.TADB.OndeivceConnect += deviceChange; } }
public DeviceChangeArgs(DeviceChange changeType, string devicePath) { Contract.Requires <ArgumentException>(!string.IsNullOrWhiteSpace(devicePath)); ChangeType = changeType; DevicePath = devicePath.ToLowerInvariant(); }
private void DeviceRemoved(object sender, INTV.Shared.Interop.DeviceManagement.DeviceChangeEventArgs e) { if (e.Type == INTV.Core.Model.Device.ConnectionType.Serial) { var removedDevice = AvailableSerialPorts.FirstOrDefault(p => p.PortName == e.Name); if (DeviceChange.IsDeviceChangeFromSystem(e.State)) { if ((removedDevice != null) && AvailableSerialPorts.Remove(removedDevice)) { INTV.Shared.ComponentModel.CommandManager.InvalidateRequerySuggested(); } } else { // Removal may also indicate that the device is not valid for use by the party responsible for showing the dialog. // In such a case, disable the item. if ((removedDevice != null) && !DisabledSerialPorts.Contains(e.Name)) { removedDevice.IsSelectable = false; DisabledSerialPorts.Add(e.Name); INTV.Shared.ComponentModel.CommandManager.InvalidateRequerySuggested(); } } } }
private void DevTtyDeleted(object sender, System.IO.FileSystemEventArgs e) { if (e.ChangeType.HasFlag(System.IO.WatcherChangeTypes.Deleted)) { DebugOutput("DeviceMonitor.FileSystemNotifcationPort: DevTtyDeleted: " + e.FullPath); DeviceChange.SystemReportsDeviceRemoved(this, e.FullPath, INTV.Core.Model.Device.ConnectionType.Serial); } }
private static void HandleSystemDidWake(object sender, EventArgs e) { DebugOutput("DeviceMonitor.HandleSystemDidWake"); foreach (var port in INTV.Shared.Model.Device.SerialPortConnection.AvailablePorts) { DeviceChange.SystemReportsDeviceAdded(null, port, INTV.Core.Model.Device.ConnectionType.Serial); } }
private void LoadDeviceSetting(object sender, MouseButtonEventArgs e) { if (sender is TreeViewItem treeViewItem) { selectdevice = (MonchaDevice)treeViewItem.DataContext; DeviceChange?.Invoke(this, (MonchaDevice)treeViewItem.DataContext); } }
private void DeviceAdded(object sender, INTV.Shared.Interop.DeviceManagement.DeviceChangeEventArgs e) { if ((e.Type == INTV.Core.Model.Device.ConnectionType.Serial) && DeviceChange.IsDeviceChangeFromSystem(e.State)) { if (!AvailableSerialPorts.Any(p => p.PortName == e.Name) && ((InclusionFilter == null) || InclusionFilter(Connection.CreatePseudoConnection(e.Name, e.Type)))) { AvailableSerialPorts.Add(new SerialPortViewModel(e.Name)); } INTV.Shared.ComponentModel.CommandManager.InvalidateRequerySuggested(); } }
private void AddDeviceToList(string DeviceNameString) { devices.Add(DeviceNameString.ToLowerInvariant(), new HidDevice(this, DeviceNameString)); EmitLogMessage(HidLogMessageType.Info, "Device Attach: " + DeviceNameString); if (DeviceChange != null) { DeviceChange.Invoke(this, null); } }
private void DeviceRemoved(object sender, DeviceChangeEventArgs e) { if ((e.Type == INTV.Core.Model.Device.ConnectionType.Serial) && DeviceChange.IsDeviceChangeFromSystem(e.State)) { var removedDevice = SerialPorts.FirstOrDefault(p => p.PortName == e.Name); if ((removedDevice != null) && SerialPorts.Remove(removedDevice)) { INTV.Shared.ComponentModel.CommandManager.InvalidateRequerySuggested(); } } RaisePropertyChanged("IsPortValid"); }
private void RemoveDeviceFromList(string DeviceNameString) { devices[DeviceNameString].Dispose(); devices[DeviceNameString] = null; devices.Remove(DeviceNameString); EmitLogMessage(HidLogMessageType.Info, "Device Removal: " + DeviceNameString); if (DeviceChange != null) { DeviceChange.Invoke(this, null); } }
private void DeviceAdded(object sender, DeviceChangeEventArgs e) { if ((e.Type == INTV.Core.Model.Device.ConnectionType.Serial) && DeviceChange.IsDeviceChangeFromSystem(e.State)) { var acceptPort = IsNotExclusivePort(Connection.CreatePseudoConnection(e.Name, ConnectionType.Serial)); if (acceptPort && !SerialPorts.Any(p => p.PortName == e.Name)) { SerialPorts.Add(new SerialPortViewModel(e.Name)); } INTV.Shared.ComponentModel.CommandManager.InvalidateRequerySuggested(); } RaisePropertyChanged("IsPortValid"); }
private void PlayerChangeOutput() { var selector = new DeviceChange(); string[] devices = Player.Instance.GetDevices(); selector.DataContext = devices; selector.OkClicked = new Action(() => { var name = devices[selector.DeviceIndex]; Properties.Settings.Default.SampleRate = selector.SampleRate; Player.Instance.ChangeDevice(name); }); View.ShowDialog(selector); }
private void Awake() { if (_instance == null) { _instance = this; return; } if (_instance != this) { Debug.LogWarning("A DeviceChange object has been created twice or more. This instance will be destroyed."); Destroy(this); } }
private void BtnChangeDev_Click(object sender, RoutedEventArgs e) { if (!_loaded) { return; } var selector = new DeviceChange(); string[] devices = _player.GetDevices(); selector.DataContext = devices; selector.OkClicked = new Action(() => { var name = devices[selector.DeviceIndex]; Properties.Settings.Default.SampleRate = selector.SampleRate; _player.ChangeDevice(name); }); MainWindow.ShowDialog(selector); }
private static void HandleSystemWillSleep(object sender, SystemWillSleepEventArgs e) { DebugOutput("DeviceMonitor.HandleSystemWillSleep CanCancel: " + e.CanCancel + " PreventSystemSleepDuringDeviceCommands: " + Properties.Settings.Default.PreventSystemSleepDuringDeviceCommands); var cancelSleep = false; if (e.CanCancel && Properties.Settings.Default.PreventSystemSleepDuringDeviceCommands) { var portBeingUsed = GetDevices().FirstOrDefault(d => d.IsValid && (d.Port != null) && d.Port.IsOpen && d.Port.IsInUse); cancelSleep = portBeingUsed != null; e.Cancel = cancelSleep; DebugOutput("DeviceMonitor.HandleSystemWillSleep will cancel: " + cancelSleep + " port being used: " + (cancelSleep ? portBeingUsed.Name : "<null>")); } if (!cancelSleep) { foreach (var port in INTV.Shared.Model.Device.SerialPortConnection.AvailablePorts) { DeviceChange.SystemReportsDeviceRemoved(null, port, INTV.Core.Model.Device.ConnectionType.Serial); } } }
private static IntPtr WndProc(IntPtr hwnd, int msg, IntPtr wParam, IntPtr lParam, ref bool handled) { if (msg == WM_DEVICECHANGE) //WM_DEVICECHANGE { DeviceChange?.Invoke(); var ports = SerialPort.GetPortNames(); var oldPorts = ComPorts.Except(ports).ToArray(); var newPorts = ports.Except(ComPorts).ToArray(); foreach (var newPort in newPorts) { comPorts.Add(newPort); } foreach (var oldPort in oldPorts) { comPorts.Remove(oldPort); } } // do stuff return(IntPtr.Zero); }
private void OnCDChange(DeviceChangeEventArgs ea) { DeviceChange?.Invoke(this, ea); }
private void DeviceChangeBehavior_DeviceChanged(object sender, DeviceChange e) { ExecuteCommand(new DeviceChangeEventArgs { DeviceChange = e }); }
void SignalDeviceChange(DeviceChange state, DeviceBroadcastInterface volume) { _manager.EnqueueEvent(_manager.DeviceChanged, new DeviceChangeArgs(state, volume.Name)); }
public void OnDeviceChange() { DeviceChange?.Invoke(this, EventArgs.Empty); }
private void HandleSystemDidPowerOn(object sender, EventArgs args) { DeviceChange.RaiseSystemDidPowerOnEvent(sender, args); }
private void HandleSystemWillPowerOff(object sender, EventArgs args) { DeviceChange.RaiseSystemWillPowerOffEvent(sender, args); }
private void HandleSystemWillSleep(object sender, SystemWillSleepEventArgs args) { DeviceChange.RaiseSystemWillSleepEvent(sender, args); }
private static void ReportPortDeparture(string portName) { DebugOutput("IOService: Departure: port: " + portName); DeviceChange.SystemReportsDeviceRemoved(null, portName, INTV.Core.Model.Device.ConnectionType.Serial); }
private static void ReportPortArrival(string portName) { DebugOutput("IOService: Arrival: port: " + portName); DeviceChange.SystemReportsDeviceAdded(null, portName, INTV.Core.Model.Device.ConnectionType.Serial); }