public GroupHolder InitializeGroupDetails(List <TaskHolder> availableTasksToAdd, GroupHolder chooosenGroup, List <TaskHolder> tasks) { GroupHolder shownGroup = new GroupHolder() { Id = chooosenGroup.Id, Name = chooosenGroup.Name, Description = chooosenGroup.Description, Archivized = chooosenGroup.Archivized, Tasks = new ObservableCollection <TaskHolder>(), }; foreach (var task in tasks) { var newTask = new TaskHolder { Id = task.Id, Name = task.Name, Description = task.Description, Archivized = task.Archivized, Groups = new ObservableCollection <GroupHolder>(), }; if (task.Groups.Contains(chooosenGroup)) { newTask.Groups.Add(shownGroup); shownGroup.Tasks.Add(newTask); } else { availableTasksToAdd.Add(newTask); } } return(shownGroup); }
public void UpdateConfigHolders(ICollection <GroupHolder> groups, ICollection <TaskHolder> tasks, ConfigDto config) { foreach (var group in config.Groups) { var groupHolderToUpdate = groups.Where(x => x.Id == group.Id).SingleOrDefault(); if (groupHolderToUpdate == null) { groupHolderToUpdate = new GroupHolder(); groups.Add(groupHolderToUpdate); } groupHolderToUpdate.Tasks = new ObservableCollection <TaskHolder>(); _holdersConversionService.ConvertFromDto(groupHolderToUpdate, group); } foreach (var task in config.Tasks) { var taskHolderToUpdate = tasks.Where(x => x.Id == task.Id).SingleOrDefault(); if (taskHolderToUpdate == null) { taskHolderToUpdate = new TaskHolder(); tasks.Add(taskHolderToUpdate); } taskHolderToUpdate.Groups = new ObservableCollection <GroupHolder>(); _holdersConversionService.ConvertFromDto(taskHolderToUpdate, task, groups, true); } }
public void ApplyChanges(ICollection <GroupHolder> currentGroups, IEnumerable <TaskHolder> currnetTasks, GroupHolder updatedGroup) { var groupToUpdate = currentGroups.SingleOrDefault(x => x.Id == updatedGroup.Id); if (groupToUpdate == null) { groupToUpdate = new GroupHolder(); currentGroups.Add(groupToUpdate); } groupToUpdate.Name = updatedGroup.Name; groupToUpdate.Description = updatedGroup.Description; if (groupToUpdate.Tasks == null) { groupToUpdate.Tasks = new ObservableCollection <TaskHolder>(); } foreach (var task in currnetTasks) { var groupInDetails = updatedGroup.Tasks.Where(x => x.Id == task.Id).SingleOrDefault(); if (!groupToUpdate.Tasks.Contains(task) && groupInDetails != null) { task.Groups.Add(groupToUpdate); groupToUpdate.Tasks.Add(task); } if (groupToUpdate.Tasks.Contains(task) && groupInDetails == null) { task.Groups.Remove(groupToUpdate); groupToUpdate.Tasks.Remove(task); } } }
public void ConvertFromDto(GroupDto dto, GroupHolder group, IEnumerable <TaskDto> groups, bool updateGroups) { ConvertFromDto(group, dto); if (dto.Tasks == null) { return; } foreach (var task in group.Tasks) { var taskDto = groups.Where(x => x.Id == task.Id).SingleOrDefault(); if (taskDto == null) { continue; } if (!dto.Tasks.Contains(taskDto)) { dto.Tasks.Add(taskDto); } if (updateGroups) { if (taskDto.Groups == null) { taskDto.Groups = new List <GroupDto>(); } if (!taskDto.Groups.Contains(dto)) { taskDto.Groups.Add(dto); } } } }
public void ConvertFromDto(GroupHolder group, GroupDto dto, IEnumerable <TaskHolder> groups, bool updateGroups) { ConvertFromDto(group, dto); if (dto.Tasks == null) { return; } foreach (var task in dto.Tasks) { var taskHolder = groups.Where(x => x.Id == task.Id).SingleOrDefault(); if (taskHolder == null) { continue; } if (!group.Tasks.Contains(taskHolder)) { group.Tasks.Add(taskHolder); } if (updateGroups) { if (taskHolder.Groups == null) { taskHolder.Groups = new ObservableCollection <GroupHolder>(); } if (!taskHolder.Groups.Contains(group)) { taskHolder.Groups.Add(group); } } } }
public void ConvertFromDto(GroupHolder group, GroupDto dto) { ConvertFromNamedModelDto(group, dto); if (group.Tasks == null) { group.Tasks = new ObservableCollection <TaskHolder>(); } }
public void ConvertToDto(GroupDto dto, GroupHolder group) { ConvertToNamedModelDto(dto, group); if (dto.Tasks == null) { dto.Tasks = new List <TaskDto>(); } }
/// <summary> /// /// </summary> /// <param name="groupHolder"></param> public void UpdateGroup([NotNull] GroupHolder groupHolder) { Assert.ArgumentNotNull(groupHolder, "groupHolder"); if (_groupWidget.ViewModelUid == groupHolder.Uid) { _groupWidget.UpdateModel(groupHolder.Characters); } }
public GroupHolder CreateNewGroup(IEnumerable <GroupHolder> groups) { var newGroup = new GroupHolder() { Id = GenerateTemporaryId(groups), Name = GetNameWithIndexIfNeeded("New group", groups), Tasks = new ObservableCollection <TaskHolder>(), }; return(newGroup); }
public void Initialize(GroupHolder chooosenGroup, List <TaskHolder> tasks) { if (chooosenGroup == null) { GroupDetailsPanel.Visibility = Visibility.Hidden; return; } GroupDetailsPanel.Visibility = Visibility.Visible; _availableTasksToAdd = new List <TaskHolder>(); ShownGroup = _holdersService.InitializeGroupDetails(_availableTasksToAdd, chooosenGroup, tasks); }
public TaskHolder InitializeTaskDetails(List <GroupHolder> availableGroupsToAdd, TaskHolder choosenTask, List <GroupHolder> groups) { TaskHolder shownTask = new TaskHolder() { Id = choosenTask.Id, Name = choosenTask.Name, Description = choosenTask.Description, StartDate = choosenTask.StartDate, Frequency = choosenTask.Frequency, Archivized = choosenTask.Archivized, Groups = new ObservableCollection <GroupHolder>(), }; foreach (var group in groups) { var newGroup = new GroupHolder { Id = group.Id, Name = group.Name, Description = group.Description, Archivized = group.Archivized, Tasks = new ObservableCollection <TaskHolder>(), }; if (group.Tasks.Contains(choosenTask)) { newGroup.Tasks.Add(shownTask); shownTask.Groups.Add(newGroup); } else { availableGroupsToAdd.Add(newGroup); } } return(shownTask); }
internal Group(IntPtr pConstGroup) { GroupHolder holder = new GroupHolder(pConstGroup); ConstructConstObject(holder, -1); }
//@Override public override View GetGroupView(int groupPosition, bool isExpanded, View convertView, ViewGroup parent) { GroupHolder groupHolder = null; if (convertView == null) { groupHolder = new GroupHolder(); convertView = inflater.Inflate(R.Layout.group, null); groupHolder.textView = (TextView)convertView .FindViewById(R.Id.group); groupHolder.imageView = (ImageView)convertView .FindViewById(R.Id.image); convertView.Tag=groupHolder; } else { groupHolder = (GroupHolder)convertView.Tag; } groupHolder.textView.Text=((Group)GetGroup(groupPosition)) .getTitle(); if (isExpanded)// ture is Expanded or false is not isExpanded groupHolder.imageView.SetImageResource(R.Drawable.expanded); else groupHolder.imageView.SetImageResource(R.Drawable.collapse); return convertView; }