private void ServerDone(object Sender, RunWorkerCompletedEventArgs e) { StatusLabel.Text = "Status: Offline"; StartStopServerButton.Text = "Start Server"; ConnectionDetailsButton.Enabled = false; DisconnectButton.Enabled = false; ConnectionsListView.Items.Clear(); ConnectionsListView.Enabled = false; MainServer = null; }
//~~~~~~~~~~~~~~{Constructor}~~~~~~~~~~~~~~ public SwitchboardConnection(SwitchboardServer HeadServer, Socket MainSocket) { ConnectedSince = DateTime.Now; IP = (IPEndPoint)MainSocket.RemoteEndPoint; River = new NetworkStream(MainSocket); TheSocket = MainSocket; this.HeadServer = HeadServer; HeadServer.ToLog("New user connected from " + IP.Address.ToString()); User = HeadServer.AnonymousUser; ConsolePreview = ""; }
//------------------------------[Server Background Worker]------------------------------ private void ServerTime(object sender, DoWorkEventArgs e) { //First lets start a server. MainServer = new Switchboard.SwitchboardServer(this, IP, Port, Welcome, AllowAnon, AllowMulti); //now while (!ServerBWorker.CancellationPending) { MainServer.Tick(); Thread.Sleep(50); //sleep to make sure this doesn't drive my computer insane } //if there is a cancelation pending: MainServer.Close(); }
//~~~~~~~~~~~~~~{Constructor}~~~~~~~~~~~~~~ public SwitchboardMainExtension(SwitchboardServer Main) : base("MAIN", "1.0") { HeadServer = Main; }