public void set(object input) { int index = _selectedIndex; if (index < camList.Count && index >= 0) { // Debug.WriteLine("set preset: " + camList[index].toString()); PresetParamsExtend toSet = camList[index]; PresetParams preset = new PresetParams(toSet.PresettingId, toSet.Camera.CameraName, toSet.Pan, toSet.Tilt, toSet.Zoom); _ea.GetEvent <SetPresetEvent>().Publish(preset); } }
public void delete(object input) { int index = _selectedIndex; if (index < camList.Count && index >= 0) { PresetParamsExtend toDelete = camList[index]; if (camList2camListForDisk.ContainsKey(toDelete)) { PresetParams itemInCamListForDisk = camList2camListForDisk[toDelete]; camListForDisk.Remove(itemInCamListForDisk); } camList.Remove(toDelete); } saveCamListToDisk(); _ea.GetEvent <PresettingDeleteEvent>().Publish(index); }
private void saveAsNewSetting(PresetParams setting) { PresetParamsExtend newItem = new PresetParamsExtend(CameraNameList); newItem.Camera = new CameraNameWrapper(setting.CameraName); newItem.Pan = setting.pan; newItem.Tilt = setting.tilt; newItem.Zoom = setting.zoom; newItem.CanSave = true; foreach (CameraNameWrapper item in CameraNameList) { if (item.CameraName == setting.CameraName) { newItem.Camera = item; break; } } camList.Add(newItem); }
private void saveToDiskListAtIndex(int index) { if (index < camList.Count && index >= 0) { PresetParamsExtend toSave = camList[index]; foreach (PresetParams preset in camListForDisk) { if (preset.presettingId == toSave.PresettingId) { if (!camList2camListForDisk.ContainsKey(toSave) || (camList2camListForDisk.ContainsKey(toSave) && camList2camListForDisk[toSave] != preset)) { MessageBox.Show("Cannot assian duplicate preset name", "Warning"); return; } } } if (toSave.Camera == null || toSave.PresettingId == null) { MessageBox.Show("Missing data", "Warning"); return; } if (camList2camListForDisk.ContainsKey(toSave)) { PresetParams itemInCamListForDisk = camList2camListForDisk[toSave]; itemInCamListForDisk.update(toSave.PresettingId, toSave.Camera.CameraName, toSave.Pan, toSave.Tilt, toSave.Zoom); if (presetName2Preset.ContainsKey(camList2camListForDisk[toSave].presettingId)) { presetName2Preset.Remove(camList2camListForDisk[toSave].presettingId); } } else { PresetParams savedItem = new PresetParams(toSave.PresettingId, toSave.Camera.CameraName, toSave.Pan, toSave.Tilt, toSave.Zoom); camListForDisk.Add(savedItem); camList2camListForDisk[toSave] = savedItem; } presetName2Preset[toSave.PresettingId] = camList2camListForDisk[toSave]; toSave.CanSave = false; } }
public PresetVM(List <PresetParams> presetList, List <CameraInfo> camList, Dictionary <string, PresetParams> PresetName2Preset, ObservableCollection <CameraNameWrapper> cameraNameList) { _ea = Notification.Instance; modeColors = ModeColors.Singleton(_ea); camListForDisk = presetList; presetName2Preset = PresetName2Preset; CameraNameList = cameraNameList; this.camList = new ObservableCollection <PresetParamsExtend>(); writer = new PresettingParser(constant.PRESET_FILE); //updateCamIdList(camList); foreach (PresetParams i in presetList) { PresetParamsExtend newItem = new PresetParamsExtend(i.presettingId, i.CameraName, CameraNameList, i.pan, i.tilt, i.zoom); newItem.CanSave = false; this.camList.Add(newItem); camList2camListForDisk[newItem] = i; } _ea.GetEvent <SaveSettingEvent>().Subscribe(saveSetting); _ea.GetEvent <SaveSettingAsNewEvent>().Subscribe(saveAsNewSetting); //_ea.GetEvent<CameraDiscoveredEvent>().Subscribe(updateCamIdList, ThreadOption.UIThread); }
public void add(object obj) { PresetParamsExtend newItem = new PresetParamsExtend(CameraNameList); camList.Add(newItem); }