void Load() { if (AppContext.ControlSpace != null) { _dataService.GetLE_TypeList(AppContext.ControlSpace, (data, error) => { if (error != null) { return; } // Report error here MasterSelectorList = data; }); _dataService.GetPartitions((data, error) => { if (error != null) { return; } // Report error here Partitions = new List <Partition>(data); }); _dataService.GetLightElements(AppContext.ControlSpace, AppContext.Partition, (data, error) => { if (error != null) { return; } // Report error here foreach (LightElement le in data) { LightElementVM leVM = new LightElementVM(le); leVM.IsLinked = le.ControlChannel != null; leVM.IsLinkedChanged = LinkingLogic; MasterList.Add(leVM); } }); _dataService.GetControlChannelList(AppContext.ControlSpace, AppContext.Partition, (data, error) => { if (error != null) { return; } // Report error here DetailList = data; }); MasterObjectPanelVisibility = Visibility.Collapsed; } }
void UpdateChangeLinkEnable() { LightElementVM master = MasterSelectedItem; ControlChannel detail = DetailSelectedItem; if (master != null && DetailSelectedItem != null) { if (master.DirectChild) { master.ChangeLinkEnable = true; return; } if (!master.IsLinked && detail.LE_Count == 0) { master.ChangeLinkEnable = true; return; } if (!master.IsLinked && detail.LE_Count > 0 && detail.Multilink && master.Model.PointType == detail.PointType) { master.ChangeLinkEnable = true; return; } if (master.IsLinked && !detail.DirectParent) { master.ChangeLinkEnable = false; return; } } else { if (master != null) { master.ChangeLinkEnable = false; } } }
LightElementVM CreateLightElementVM(PointTypeEnum pointType) { LightElementVM leVM = null; LightElement le = new LightElement(pointType, AppContext.ControlSpace); le.Partition = AppContext.Partition; leVM = new LightElementVM(le); if (leVM.Model.ControlSpace.Prefix == "AN" || leVM.Model.ControlSpace.Prefix == "DX") { if (leVM.Model.PointType == PointTypeEnum.RGB) { leVM.ColorSequenceList = LightElement.ColorSequenseRGB; } if (leVM.Model.PointType == PointTypeEnum.RGBW) { leVM.ColorSequenceList = LightElement.ColorSequenseRGBW; } } return(leVM); }