public static void RemoveBulbFromGroup(this ILifxNetwork network, IBulbGroup bulbGroup, IBulb bulb) { var n = (LifxNetwork)network; var group = (BulbGroup)bulbGroup; group.Remove(bulb); var groups = n.Groups.Where(g => g.Contains(bulb)).ToList(); SetGroups(n, bulb, groups); }
public static void RenameGroup(this ILifxNetwork network, IBulbGroup bulbGroup, string name) { var n = (LifxNetwork)network; var group = (BulbGroup)bulbGroup; group.Name = name; foreach (var bulb in group.GetBulbs()) { UpdateGroupName(n, group, bulb); } }
public static void RemoveGroup(this ILifxNetwork network, IBulbGroup bulbGroup) { var n = (LifxNetwork)network; var group = (BulbGroup)bulbGroup; n.Remove(group); var allGroups = n.Groups.ToList(); foreach (var bulb in group.GetBulbs()) { var groups = allGroups.Where(g => g.Contains(bulb) && !Equals(g, group)).ToList(); SetGroups(n, bulb, groups); } }
public static void AddBulbToGroup(this ILifxNetwork network, IBulbGroup bulbGroup, IBulb bulb) { var n = (LifxNetwork)network; var group = (BulbGroup)bulbGroup; if (group.Contains(bulb)) { return; } group.Add(bulb); var groups = n.Groups.Where(g => g.Contains(bulb)).ToList(); SetGroups(n, bulb, groups); UpdateGroupName(n, group, bulb); }