/// <summary> /// Creates a new remote desktop form for the client or gets the current open form, if there exists one already. /// </summary> /// <param name="client">The client used for the remote desktop form.</param> /// <returns> /// Returns a new remote desktop form for the client if there is none currently open, otherwise creates a new one. /// </returns> public static FrmRemoteDesktop CreateNewOrGetExisting(Client client) { if (OpenedForms.ContainsKey(client)) { return(OpenedForms[client]); } FrmRemoteDesktop r = new FrmRemoteDesktop(client); r.Disposed += (sender, args) => OpenedForms.Remove(client); OpenedForms.Add(client, r); return(r); }