Exemplo n.º 1
0
        public void Unsubscribe()
        {
            foreach (var a in Authorized.GetInvocationList())
            {
                Authorized -= (Action)a;
            }

            foreach (var a in RoomCreated.GetInvocationList())
            {
                RoomCreated -= (SocketMessage <RoomDTO>)a;
            }

            foreach (var a in NewMessageReceived.GetInvocationList())
            {
                NewMessageReceived -= (SocketMessage <MessageDTO>)a;
            }

            foreach (var a in RoomParticipated.GetInvocationList())
            {
                RoomParticipated -= (SocketMessage <RoomParticipatedDTO>)a;
            }

            foreach (var a in RoomLeft.GetInvocationList())
            {
                RoomLeft -= (SocketMessage <RoomParticipatedDTO>)a;
            }

            foreach (var a in FileStatusChanged.GetInvocationList())
            {
                FileStatusChanged -= (SocketMessage <FileStatusDTO>)a;
            }
        }
Exemplo n.º 2
0
 private void OpenedFileChanged(string fileName)
 {
     FileStatus.FileName = fileName;
     // If fileName is null, it's a new file, which is not saved.
     // Otherwise, a file was opened and doesn't need immediate saving.
     FileStatus.IsSaveNeeded = fileName == null;
     FileStatusChanged?.Invoke(this, new FileStatusChangedArgs(FileStatus));
     AppSettings.SaveSettings(settings => settings.LastOpenedFile = fileName);
 }
 public static void NotifyFileStatusChanged(FileUpdateEventArgs args)
 {
     if (!Runtime.IsMainThread)
     {
         Gtk.Application.Invoke(delegate {
             NotifyFileStatusChanged(args);
         });
     }
     else
     {
         FileStatusChanged?.Invoke(null, args);
     }
 }
Exemplo n.º 4
0
        private void HandleSocketMessage(object sender, MessageEventArgs e)
        {
            var message = e.Data;

            try
            {
                var baseMessage = JsonConvert.DeserializeObject <BaseMessage>(message);
                if (baseMessage.Type == SocketMessageTypes.SuccessfullyAuthorized)
                {
                    Authorized?.Invoke();
                }
                else if (baseMessage.Type == SocketMessageTypes.RoomCreated)
                {
                    var response = JsonConvert.DeserializeObject <SocketResponseDTO <RoomDTO> >(message);
                    RoomCreated?.Invoke(response);
                }
                else if (baseMessage.Type == SocketMessageTypes.NewMessage)
                {
                    var response = JsonConvert.DeserializeObject <SocketResponseDTO <MessageDTO> >(message);
                    NewMessageReceived?.Invoke(response);
                }
                else if (baseMessage.Type == SocketMessageTypes.RoomParticipated)
                {
                    var response = JsonConvert.DeserializeObject <SocketResponseDTO <RoomParticipatedDTO> >(message);
                    RoomParticipated?.Invoke(response);
                }
                else if (baseMessage.Type == SocketMessageTypes.RoomLeft)
                {
                    var response = JsonConvert.DeserializeObject <SocketResponseDTO <RoomParticipatedDTO> >(message);
                    RoomLeft?.Invoke(response);
                }
                else if (baseMessage.Type == SocketMessageTypes.FileStatusChanged)
                {
                    var response = JsonConvert.DeserializeObject <SocketResponseDTO <FileStatusDTO> >(message);
                    FileStatusChanged?.Invoke(response);
                }
            }
            catch (Exception ex)
            {
                Failed?.Invoke(ex.Message);
            }
        }
Exemplo n.º 5
0
 private void DesignerOnBlueprintChanged(object sender, BlueprintChangedArgs blueprintChangedArgs)
 {
     FileStatus.IsSaveNeeded = blueprintChangedArgs.ChangesMade;
     FileStatusChanged?.Invoke(this, new FileStatusChangedArgs(FileStatus));
 }