private void SessionReconnected(object sender, SessionClientEventArg e) { View.Invoke(() => { if (ReferenceEquals(e.SessionClient, currentSessionClient)) { RefreshMessages(); } }); }
private void SessionReconnecting(object sender, SessionClientEventArg e) { View.Invoke(() => { if (ReferenceEquals(e.SessionClient, currentSessionClient)) { View.EnableChat = false; } }); }
private void SessionStatusUpdated(object sender, SessionClientEventArg e) { View.Invoke(() => { if (ReferenceEquals(e.SessionClient, currentSessionClient)) { View.AddStatus(e.SessionClient.ClientStatuses[e.SessionClient.ClientStatuses.Count - 1].CurrentQuestionNumber + Argument.Session.Exam.FirstQuestionNumber, e.SessionClient.ClientStatuses[e.SessionClient.ClientStatuses.Count - 1].ExecutedQuestions, e.SessionClient.ClientStatuses[e.SessionClient.ClientStatuses.Count - 1].TimeOffset); } }); }
private void SessionMessageRecieved(object sender, SessionClientEventArg e) { View.Invoke(() => { if (ReferenceEquals(e.SessionClient, currentSessionClient)) { RefreshMessages(); } if (isHiden || !ReferenceEquals(e.SessionClient, currentSessionClient)) { Argument.SessionView.ShowClientToolTip(e.SessionClient, "Новое сообщение", "Прочитайте новое сообщение в чате.", false); } }); }
private void SessionViolation(object sender, SessionClientEventArg e) { View.Invoke(() => { if (ReferenceEquals(e.SessionClient, currentSessionClient)) { View.AddViolation($"№{e.SessionClient.Violations.Count} [{Argument.Session.InitializeTime.Value.AddSeconds(currentSessionClient.Violations[e.SessionClient.Violations.Count - 1].TimeOffset)}] {currentSessionClient.Violations[e.SessionClient.Violations.Count - 1].Content}", e.SessionClient.Violations[e.SessionClient.Violations.Count - 1].TimeOffset); } if (isHiden || !ReferenceEquals(e.SessionClient, currentSessionClient)) { Argument.SessionView.ShowClientToolTip(e.SessionClient, "Нарушение", "Состав нарушения доступен к просмотру.", true); } }); }
private void SessionReconnecting(object sender, SessionClientEventArg e) { View.Invoke(() => { if (ReferenceEquals(e.SessionClient, currentSessionClient)) { View.ClientStatus = currentSessionClient.ClientStatus; } if (isHiden || !ReferenceEquals(e.SessionClient, currentSessionClient)) { Argument.SessionView.ShowClientToolTip(e.SessionClient, "Потеря соединения", "Ожидание переподключения.", true); } }); }
private void SessionReconnected(object sender, SessionClientEventArg e) { View.Invoke(() => { if (ReferenceEquals(e.SessionClient, currentSessionClient)) { View.ClientStatus = currentSessionClient.ClientStatus; } if (isHiden || !ReferenceEquals(e.SessionClient, currentSessionClient)) { Argument.SessionView.ShowClientToolTip(e.SessionClient, "Соединение восстановлено", "Переподключеие завершено.", false); } }); }
private void SessionResultRecieved(object sender, SessionClientEventArg e) { View.Invoke(() => { if (ReferenceEquals(e.SessionClient, currentSessionClient)) { View.ClientStatus = currentSessionClient.ClientStatus; View.Points = currentSessionClient.Points; View.Mark = currentSessionClient.ExecutionResult.Mark; } if (isHiden || !ReferenceEquals(e.SessionClient, currentSessionClient)) { Argument.SessionView.ShowClientToolTip(e.SessionClient, "Выполнение запрещено", "Результат выполенеия доступен к просмотру.", false); } }); }
private void SessionConnectionDataUpdated(object sender, SessionClientEventArg e) { View.Invoke(() => { if (ReferenceEquals(e.SessionClient, currentSessionClient)) { View.ConnectionName = currentSessionClient.Name; View.ConnectionSurname = currentSessionClient.Surname; View.ConnectionPatronimyc = currentSessionClient.Patronymic; View.TicketName = $"Билет '{Argument.Session.Exam.Tickets.Single(a => a.TicketNumber == currentSessionClient.TicketNumber).TicketName}'"; } if (isHiden || !ReferenceEquals(e.SessionClient, currentSessionClient)) { Argument.SessionView.ShowClientToolTip(e.SessionClient, "Обновление данных", "Данные подключения были обновлены.", false); } }); }
private void ArgumentClientConnected(object sender, SessionClientEventArg e) { InvokeRefreshClients(); }