private void RestoreLinkedCamera() { // List the selected cameras foreach (FilterInfo fi in VideoCapability.SelectedCameras()) { cboLinkedCamera.Items.Add(fi); } // Read from registry and select camera, if in list string[] linkedCamera = AVReg.ValueNames(AVReg.LinkedCamera); if (linkedCamera != null && linkedCamera.Length > 0) { Debug.Assert(linkedCamera.Length == 1); for (int i = 0; i < cboLinkedCamera.Items.Count; i++) { FilterInfo fi = (FilterInfo)cboLinkedCamera.Items[i]; if (fi.Moniker == linkedCamera[0]) { cboLinkedCamera.SelectedItem = fi; } } } if (cboLinkedCamera.SelectedIndex == -1 && cboLinkedCamera.Items.Count > 0) { cboLinkedCamera.SelectedIndex = 0; } cboLinkedCamera.Enabled = cboLinkedCamera.Items.Count > 1; }
private void RestoreVideo() { // Get the UI set up correctly in the event there are no selected cameras ClearVideoBox(); foreach (FilterInfo fi in VideoCapability.SelectedCameras()) { int idx = clbCameras.Items.IndexOf(fi); clbCameras.SetItemChecked(idx, true); clbCameras.SetSelected(idx, true); } }