public List <DisplayGroup> GetDisplayGroup(int displayGroupId) { List <DisplayGroup> displayGroupList = new List <DisplayGroup>(); try { DataTable dataTable = marbaleData.GetDisplayGroup(displayGroupId); DisplayGroup displayGrp; foreach (DataRow dr in dataTable.Rows) { displayGrp = new DisplayGroup(); displayGrp.displayGroupId = dr.IsNull("DisplayGroupId") ? 0 : int.Parse(dr["DisplayGroupId"].ToString()); displayGrp.displayGroupname = dr.IsNull("DisplayGroup") ? string.Empty : dr["DisplayGroup"].ToString(); displayGrp.sortOrder = dr.IsNull("SortOrder") ? 0 : int.Parse(dr["SortOrder"].ToString()); displayGrp.createdBy = dr.IsNull("CreatedBy") ? string.Empty : dr["CreatedBy"].ToString(); displayGrp.lastUpdatedBy = dr.IsNull("LastUpdatedBy") ? string.Empty : dr["LastUpdatedBy"].ToString(); displayGrp.createdDate = dr.IsNull("CreatedDate") ? new DateTime() : Convert.ToDateTime(dr["CreatedDate"]); displayGrp.lastUpdatedDate = dr.IsNull("LastUpdatedDate") ? new DateTime() : Convert.ToDateTime(dr["LastUpdatedDate"]); displayGroupList.Add(displayGrp); } } catch (Exception e) { } return(displayGroupList); }
public static DisplayGroup GetDisplayGroup(string groupID, string userid, string role = null) { string key = CacheHelper.DisplayGroupPrefix + userid + "@" + groupID; if (CacheHelper.Contains(key)) { return(CacheHelper.Get <DisplayGroup>(key)); } DisplayGroup result = null; using (var _gorillaCtx = new MSGorillaEntities()) { Group group = new GroupManager().GetGroupByID(groupID, _gorillaCtx); if (!string.IsNullOrEmpty(role)) { result = new DisplayGroup(group, role); } else { result = new DisplayGroup(group, userid, _gorillaCtx); } } CacheHelper.Add(key, result); return(result); }
private static void SetGroup(string groupName) { // change in memory and save changes to file ConfigManager.GeneralConfig.RigGroup = groupName; ConfigManager.GeneralConfigFileCommit(); // notify all components DisplayGroup?.Invoke(null, groupName); }
public ActionResult DeleteConfirmed(int id) { DisplayGroup displaygroup = db.DisplayGroups.Find(id); db.DisplayGroups.Remove(displaygroup); db.SaveChanges(); return(RedirectToAction("Index")); }
public DisplayGroupNode(DisplayGroup ADisplayGroup) : base(ADisplayGroup.Name) { this.DisplayGroup = ADisplayGroup; OpenImgIndex = 1; NoChildrenImgIndex = 0; EnabledButtons = !(DisplayList.FirstOrDefault() is PassiveDisplay); }
public ActionResult Edit(DisplayGroup displaygroup) { if (ModelState.IsValid) { db.Entry(displaygroup).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(displaygroup)); }
// // GET: /DisplayGroup/Delete/5 public ActionResult Delete(int id = 0) { DisplayGroup displaygroup = db.DisplayGroups.Find(id); if (displaygroup == null) { return(HttpNotFound()); } return(View(displaygroup)); }
public ActionResult Create(DisplayGroup displaygroup) { if (ModelState.IsValid) { db.DisplayGroups.Add(displaygroup); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(displaygroup)); }
public DisplayGroupProperties(DisplayGroup group, bool isReadOnly) :this(group) { IsReadOnly = isReadOnly; okButton.Visible = !isReadOnly; if (isReadOnly) cancelButton.Text = "OK"; nameText.ReadOnly = isReadOnly; commentText.ReadOnly = isReadOnly; }
private void InitGroupTree(DisplayGroup group, TreeNode groupNode) { if (group.ChildrenGroup.Count <= 0) { return; } foreach (var subGroup in group.ChildrenGroup) { TreeNode subGroupNode = AddNode(subGroup, subGroup.Name, groupNode); InitGroupTree(subGroup, subGroupNode); } }
void CloneGroup(DisplayGroup from, DisplayGroup dest) { foreach (PropertyInfo info in from.GetType().GetProperties()) { object value = info.GetValue(from, null); if (value is ICloneable) value = ((ICloneable)value).Clone(); if (info.CanWrite) info.SetValue(dest, value, null); } }
public void CleanGroup(DisplayGroup gr) { List<GameObject> toRemove = new List<GameObject>(); for(int i = 0; i < _objects.Count; i++){ if(_objects[i] == null){ toRemove.Add(_objects[i]); } else { DisplayGroup objGroup = _objects[i].GetComponent(typeof(DisplayGroup)) as DisplayGroup; if(objGroup != null){ CleanGroup(objGroup); } } } for(int i = 0; i < toRemove.Count; i++){ _objects.Remove(toRemove[i]); } }
public DisplayGroupProperties(DisplayGroup group) { InitializeComponent(); destGroup = group; this.Text = group.Name + " - Свойства"; CloneGroup(group, editGroup = new DisplayGroup()); nameText.DataBindings.Add("Text", editGroup, "Name", false, DataSourceUpdateMode.OnPropertyChanged); commentText.DataBindings.Add("Text", editGroup, "Comment", false, DataSourceUpdateMode.OnPropertyChanged); typeLabel.DataBindings.Add("Text", editGroup, "Type"); if (editGroup.Width > 0 && editGroup.Height > 0) resolutionLabel.Text = String.Format("{0}*{1}", editGroup.Width, editGroup.Height); else resolutionLabel.Visible = false; }
public List<Display> DisplayByGroup(DisplayGroup gr) { var displaysInGroup = (from d in Displays where gr.DisplayNameList.Contains(d.Type.Name) orderby d.Type.Name select d).ToList(); return displaysInGroup; }
public bool CanMoveDisplayToGroup(DisplayGroup displayGroup, Display display) { ISegmentationSupport s = display as ISegmentationSupport; if (s != null && (s.SegmentColumns > 1 || s.SegmentRows > 1)) { return false; } if (displayGroup.DisplayNameList.Count == 0) { return true; } else { if (display.Width == displayGroup.Width && display.Height == displayGroup.Height && display.Type.Type == displayGroup.Type) { if (displayGroup.DisplayNameList.Contains(display.Type.Name)) return false; return true; } else { return false; } } }
public bool AddDisplayToGroup(DisplayGroup displayGroup, Display display) { ISegmentationSupport s = display as ISegmentationSupport; if (s != null && (s.SegmentColumns > 1 || s.SegmentRows > 1)) { MessageBoxExt.Show("Многосегментный дисплей не может быть помещен в группу", "Внимание", MessageBoxButtons.OK, MessageBoxIcon.Warning); return false; } List<Slide> changedSlides = new List<Slide>(); bool clear = false; if (displayGroup.DisplayNameList.Count == 0) { displayGroup.Width = display.Width; displayGroup.Height = display.Height; displayGroup.Type = display.Type.Type; display.DisplayGroup = displayGroup.Name; PresentationController.Instance.PresentationChanged = true; } else { if (display.Width == displayGroup.Width && display.Height == displayGroup.Height && display.Type.Type == displayGroup.Type) { if (displayGroup.DisplayNameList.Contains(display.Type.Name)) return false; if (!SlideGraphController.Instance.SaveNewSlides("Имеются несохраненные сцены.\r\nДля продолжения необходимо сохранить изменения.\r\nСохранить новые сцены?")) return false; //https://sentinel2.luxoft.com/sen/issues/browse/PMEDIAINFOVISDEV-861 //Если хотя бы одна сцена в сценарии заблокирована другим пользователем, то при попытке поместить дисплей в непустую группу дисплеев, система должна выводить сообщение: «Перемещение дисплея <Название дисплея> в группу <Название группы> невозможно: в сценарии есть заблокированные сцены. Для перемещения дисплея в непустую группу необходимо разблокировать все сцены.» (кнопка «ОК») //Display anyDisplay = DisplayByGroup(displayGroup).First(); foreach (Slide slide in PresentationController.Instance.GetAllSlides()) { // НЕ проверяем сцены для которых есть непустая раскладка как на дисплее из группы итак и для дисплея который перемещается в группу //if (SlideLayout.GetWindowsCount(anyDisplay, slide) > 0 || SlideLayout.GetWindowsCount(display, slide) > 0) { changedSlides.Add(slide); LockingInfo lockingInfo = PresentationController.Instance.GetSlideLockingInfo(slide); if (lockingInfo != null && !lockingInfo.UserIdentity.Equals(PresentationController.Instance.UserIdentity)) { MessageBoxExt.Show( string.Format( "Перемещение дисплея {0} в группу {1} невозможно: в сценарии есть заблокированные сцены. Для перемещения дисплея в непустую группу необходимо разблокировать все сцены.", display.Name, displayGroup.Name), "Внимание", MessageBoxButtons.OK, MessageBoxIcon.Information); return false; } } } Slide[] allSlides = PresentationController.Instance.GetAllSlides(); for (int i = 0; i < allSlides.Length; i++) { if (SlideLayout.GetWindowsCount(display, allSlides[i]) > 0) { if (MessageBoxExt.Show(String.Format("У дисплея {0} есть настроенные раскладки сцен.\r\nПри перемещении дисплея ему будут установлены раскладки группы {1}?", display.Type.Name, displayGroup.Name), "Внимание", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning, new string[] { "Продолжить", "Отмена" }) == DialogResult.Cancel) return false; clear = true; break; } } // Это не работает, если выделена пустая сцена. Поэтому написан код выше. //if (SlideLayout.GetWindowsCount(display, PresentationController.Instance.SelectedSlide) > 0) //{ // if (MessageBoxExt.Show(String.Format("У дисплея {0} есть настроенные раскладки сцен.\r\nПри перемещении дисплея ему будут установлены раскладки группы {1}?", display.Type.Name, displayGroup.Name), "Внимание", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning, new string[] { "Продолжить", "Отмена" }) == DialogResult.Cancel) // return false; // clear = true; //} display.DisplayGroup = displayGroup.Name; PresentationController.Instance.PresentationChanged = true; } else { MessageBoxExt.Show(String.Format("Разрешение/тип {0} отличаются от разрешения/типа {1}.\r\nПеремещение дисплея в группу невозможно", displayGroup.Name, display.Name), "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); return false; } } bool isSuccess = true; List<Display> displayList = DisplayByGroup(displayGroup); List<Slide> lockedSlides = new List<Slide>(changedSlides.Count); // если все прошло успешно, то теперь для слайдов в changedSlides мы должны нефвно залочить, сохранить и разлочить foreach (Slide slide in changedSlides) { LockingInfo lockingInfo = PresentationController.Instance.GetSlideLockingInfo(slide); if (!(lockingInfo != null && lockingInfo.UserIdentity.Equals(PresentationController.Instance.UserIdentity))) { if (!PresentationController.Instance.LockSlide(slide)) { MessageBoxExt.Show( string.Format( "Перемещение дисплея {0} в группу {1} невозможно: в сценарии есть заблокированные сцены. Для перемещения дисплея в непустую группу необходимо разблокировать все сцены.", display.Name, displayGroup.Name), "Внимание", MessageBoxButtons.OK, MessageBoxIcon.Information); isSuccess = false; break; } else { lockedSlides.Add(slide); } } } if (isSuccess) { foreach (Slide slide in changedSlides) { SlideLayout sltemp = new SlideLayout(displayList, slide); sltemp.AppendToLayout(display, clear); if (displayList.Count > 0) { Display firstDisplay = slide.DisplayList.First(src => src.Equals(displayList[0])); if (firstDisplay is ActiveDisplay) { string id = ((ActiveDisplay)firstDisplay).BackgroundImage; if (!string.IsNullOrEmpty(id)) SlideLayout.ApplyDisplayBackground(slide, id, display); } } } displayGroup.DisplayNameList.Add(display.Type.Name); //PresentationController.Instance.SaveSlideChanges(lockedSlides.ToArray()); PresentationController.Instance.SavePresentation(); } foreach (Slide slide in lockedSlides) { PresentationController.Instance.UnlockSlide(slide); } if (!isSuccess) return false; //SlideLayout sl = new SlideLayout(displayList, PresentationController.Instance.SelectedSlide); //sl.AppendToLayout(display, clear); return true; }
public void RemoveDisplayGroup(DisplayGroup displayGroup) { SlideLayout layout = PresentationController.Instance.CurrentSlideLayout; DisplayByGroup(displayGroup).ForEach(layout.RemoveFromLayout); DisplayByGroup(displayGroup).ForEach(d => d.DisplayGroup = null); PresentationController.Instance.Presentation.DisplayGroupList.Remove(displayGroup); PresentationController.Instance.PresentationChanged = true; }
public void CreateDisplayGroup() { DisplayGroup newGroup = new DisplayGroup { Name = GetNewGroupName() }; PresentationController.Instance.Presentation.DisplayGroupList.Add(newGroup); if (OnDisplayGroupCreated != null) OnDisplayGroupCreated(newGroup); PresentationController.Instance.PresentationChanged = true; }
public void SelectDisplayGroup(DisplayGroup ADisplayGroup) { if (CurrentDisplayGroup != ADisplayGroup) { CurrentDisplay = null; CurrentDisplayGroup = ADisplayGroup; PresentationController.Instance.SelectedDisplayGroup = DisplayByGroup(CurrentDisplayGroup); } }
public ActionResult CourseTeacher(string courseId) { CourseGetResponse cgr = _courseCom.GetCourse(courseId); DisplayCourseModel dcm = new DisplayCourseModel(); if (cgr != null) { dcm.CourseCode = cgr.CourseCode; dcm.CourseDescription = cgr.CourseDescription; dcm.CourseName = cgr.CourseName; dcm.DesiredSkillSets = cgr.DesiredSkillSets; dcm.GroupSize = (int)cgr.GroupSize; dcm.GroupType = cgr.GroupType; if (!string.IsNullOrWhiteSpace(cgr.Roaster)) { dcm.Roaster = cgr.Roaster.Split(',').ToList(); } else { dcm.Roaster = null; } dcm.PreferSimiliarSkillSet = (bool)cgr.PreferSimiliarSkillSet; dcm.Users = new List <GT.BuddyUp.WebApp.Models.DisplayCourseUser>(); dcm.Questions = new List <GT.BuddyUp.WebApp.Models.DsiplayQuestion>(); dcm.Groups = new List <DisplayGroup>(); } foreach (var user in cgr.UserList) { dcm.Users.Add(new DisplayCourseUser() { emailId = user.EmailID, name = user.Name, role = user.RoleCode }); } foreach (var grp in cgr.CourseGroups) { var dg = new DisplayGroup() { GroupCode = grp.GroupCode, GroupName = grp.GroupName, Objective = grp.Objective, TimeZone = grp.TimeZone, GroupMembers = new List <DisplayCourseUser>() }; foreach (var gm in grp.GroupUsers) { dg.GroupMembers.Add(new DisplayCourseUser() { emailId = gm.EmailID, name = gm.Name, role = gm.RoleCode }); } dcm.Groups.Add(dg); } QuestionnaireGetResponse qgr = _questionnaireCom.GetQuestionnaire(cgr.QuestionnaireCode); if (qgr != null) { foreach (var q in qgr.Questions) { dcm.Questions.Add(new GT.BuddyUp.WebApp.Models.DsiplayQuestion() { QuestionText = q.questionText, QuestionType = q.questionType, AnswerChoices = q.answerChoices }); } } return(View(dcm)); }
void Instance_OnDisplayGroupCreated(DisplayGroup newGroup) { TreeNodeAdv node = new DisplayGroupNode(newGroup); displayTree.Nodes.Add(node); displayTree.BeginEdit(node); }