DevProLauncher.Windows.ChatFrm.ChatInput_KeyPress C# (CSharp) Method

ChatInput_KeyPress() private method

private ChatInput_KeyPress ( object sender, KeyPressEventArgs e ) : void
sender object
e KeyPressEventArgs
return void
        private void ChatInput_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (e.KeyChar != 13 || string.IsNullOrWhiteSpace(ChatInput.Text))
            {
                return;
            }

            string[] parts = ChatInput.Text.Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);

            var selectedTab = (ChatWindow)ChannelTabs.SelectedTab;
            if (parts[0].StartsWith("/"))
            {
                if (!HandleCommand(parts[0], selectedTab))
                {
                    return;
                }
            }
            else
            {
                if (selectedTab == null)
                {
                    WriteMessage(new ChatMessage(MessageType.System, CommandType.None, null, "No channel Selected."));
                    return;
                }

                if (selectedTab.IsSystemtab)
                {
                    ChatInput.Clear();
                    return;
                }

                if (selectedTab.IsPrivate)
                {
                    WriteMessage(new ChatMessage(MessageType.PrivateMessage, CommandType.None, Program.UserInfo, selectedTab.Name, ChatInput.Text));
                    Program.ChatServer.SendMessage(MessageType.PrivateMessage, CommandType.None, selectedTab.Name, ChatInput.Text);
                }
                else
                {
                    var isTeam = selectedTab.Name == MessageType.Team.ToString();
                    Program.ChatServer.SendMessage(isTeam ? MessageType.Team : MessageType.Message, CommandType.None, selectedTab.Name, ChatInput.Text);
                }
            }

            ChatInput.Clear();
            e.Handled = true;
        }