예제 #1
0
        // ---------------------------------------------------------- BUTTON LISTENERS
        private void ListOnlineUsers_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (listOnlineUsers.SelectedItem != null)
            {
                setUserControlEnabled(true);
                MessClient activeUser = (MessClient)listOnlineUsers.SelectedItem;

                // Update inverse list
                updateInverseClientList();

                // Check if user is muted, update buttons accordingly
                if (clientList[inverseClientList[activeUser]].isMuted)
                {
                    btnMute.Text = "Unmute User";
                }
                else
                {
                    btnMute.Text = "Mute User";
                }
            }
            else
            {
                setUserControlEnabled(false);
            }
        }
예제 #2
0
        private void BtnMute_Click(object sender, EventArgs e)
        {
            if (listOnlineUsers.SelectedItem == null)
            {
                setUserControlEnabled(false);
                return;
            }

            MessClient userToMute = (MessClient)listOnlineUsers.SelectedItem;
            bool       toMute     = (btnMute.Text == "Mute User");

            // Update inverse list
            updateInverseClientList();

            // Mute or unmute client
            if (toMute)
            {
                log("Muting " + userToMute.name + "...", isNew: true);
                clientList[inverseClientList[userToMute]].isMuted = true;
                btnMute.Text = "Unmute User";
            }
            else
            {
                log("Unmuting " + userToMute.name + "...", isNew: true);
                clientList[inverseClientList[userToMute]].isMuted = false;
                btnMute.Text = "Mute User";
            }

            // Creating update message
            dynamic content = new JObject();

            content.message = String.Format("{0} {1}...", userToMute.name, (toMute ? "muted" : "able to speak"));
            content.author  = "Server";

            MessMessage message = new MessMessage();

            message.type    = MessageTypes.TextMessage;
            message.time    = Utilities.DateTime2UnixTimeStamp(DateTime.UtcNow);
            message.content = JsonConvert.SerializeObject(content);

            broadcast(message.toJSON());

            UpdateSendUserList();
        }