From a286b5fef200f298a19e5d70cffd4b31f3c086a1 Mon Sep 17 00:00:00 2001 From: Jaex Date: Wed, 6 Jan 2016 19:24:43 +0200 Subject: [PATCH] Removed IRC client --- ShareX.IRCLib/AutoResponseInfo.cs | 109 --- ShareX.IRCLib/Enums.cs | 61 -- ShareX.IRCLib/IRC.cs | 626 ------------- .../IRCClient/IRCClientForm.Designer.cs | 437 --------- ShareX.IRCLib/IRCClient/IRCClientForm.cs | 453 --------- ShareX.IRCLib/IRCClient/IRCClientForm.de.resx | 213 ----- ShareX.IRCLib/IRCClient/IRCClientForm.fr.resx | 213 ----- .../IRCClient/IRCClientForm.nl-NL.resx | 213 ----- .../IRCClient/IRCClientForm.pt-BR.resx | 213 ----- ShareX.IRCLib/IRCClient/IRCClientForm.resx | 879 ------------------ ShareX.IRCLib/IRCClient/IRCClientForm.ru.resx | 213 ----- ShareX.IRCLib/IRCClient/IRCClientForm.tr.resx | 213 ----- .../IRCClient/IRCClientForm.vi-VN.resx | 213 ----- ShareX.IRCLib/IRCClient/TabInfo.cs | 57 -- ShareX.IRCLib/IRCClient/TabManager.cs | 119 --- ShareX.IRCLib/IRCInfo.cs | 120 --- ShareX.IRCLib/IRCText.cs | 42 - ShareX.IRCLib/MessageInfo.cs | 170 ---- ShareX.IRCLib/Properties/AssemblyInfo.cs | 35 - .../Properties/Resources.Designer.cs | 81 -- ShareX.IRCLib/Properties/Resources.de.resx | 126 --- ShareX.IRCLib/Properties/Resources.fr.resx | 126 --- ShareX.IRCLib/Properties/Resources.nl-NL.resx | 126 --- ShareX.IRCLib/Properties/Resources.pt-BR.resx | 126 --- ShareX.IRCLib/Properties/Resources.resx | 107 --- ShareX.IRCLib/Properties/Resources.ru.resx | 126 --- ShareX.IRCLib/Properties/Resources.tr.resx | 126 --- ShareX.IRCLib/Properties/Resources.vi-VN.resx | 126 --- ShareX.IRCLib/ShareX.IRCLib.csproj | 128 --- .../ShareX.IRCLib.csproj.DotSettings | 2 - ShareX.IRCLib/UserInfo.cs | 57 -- ShareX.sln | 10 +- ShareX/Enums.cs | 1 - ShareX/Forms/MainForm.Designer.cs | 20 - ShareX/Forms/MainForm.cs | 8 - ShareX/Forms/MainForm.resx | 26 +- ShareX/Forms/TaskSettingsForm.cs | 3 - ShareX/ShareX.csproj | 4 - ShareX/TaskHelpers.cs | 8 - ShareX/TaskSettings.cs | 2 - 40 files changed, 2 insertions(+), 5936 deletions(-) delete mode 100644 ShareX.IRCLib/AutoResponseInfo.cs delete mode 100644 ShareX.IRCLib/Enums.cs delete mode 100644 ShareX.IRCLib/IRC.cs delete mode 100644 ShareX.IRCLib/IRCClient/IRCClientForm.Designer.cs delete mode 100644 ShareX.IRCLib/IRCClient/IRCClientForm.cs delete mode 100644 ShareX.IRCLib/IRCClient/IRCClientForm.de.resx delete mode 100644 ShareX.IRCLib/IRCClient/IRCClientForm.fr.resx delete mode 100644 ShareX.IRCLib/IRCClient/IRCClientForm.nl-NL.resx delete mode 100644 ShareX.IRCLib/IRCClient/IRCClientForm.pt-BR.resx delete mode 100644 ShareX.IRCLib/IRCClient/IRCClientForm.resx delete mode 100644 ShareX.IRCLib/IRCClient/IRCClientForm.ru.resx delete mode 100644 ShareX.IRCLib/IRCClient/IRCClientForm.tr.resx delete mode 100644 ShareX.IRCLib/IRCClient/IRCClientForm.vi-VN.resx delete mode 100644 ShareX.IRCLib/IRCClient/TabInfo.cs delete mode 100644 ShareX.IRCLib/IRCClient/TabManager.cs delete mode 100644 ShareX.IRCLib/IRCInfo.cs delete mode 100644 ShareX.IRCLib/IRCText.cs delete mode 100644 ShareX.IRCLib/MessageInfo.cs delete mode 100644 ShareX.IRCLib/Properties/AssemblyInfo.cs delete mode 100644 ShareX.IRCLib/Properties/Resources.Designer.cs delete mode 100644 ShareX.IRCLib/Properties/Resources.de.resx delete mode 100644 ShareX.IRCLib/Properties/Resources.fr.resx delete mode 100644 ShareX.IRCLib/Properties/Resources.nl-NL.resx delete mode 100644 ShareX.IRCLib/Properties/Resources.pt-BR.resx delete mode 100644 ShareX.IRCLib/Properties/Resources.resx delete mode 100644 ShareX.IRCLib/Properties/Resources.ru.resx delete mode 100644 ShareX.IRCLib/Properties/Resources.tr.resx delete mode 100644 ShareX.IRCLib/Properties/Resources.vi-VN.resx delete mode 100644 ShareX.IRCLib/ShareX.IRCLib.csproj delete mode 100644 ShareX.IRCLib/ShareX.IRCLib.csproj.DotSettings delete mode 100644 ShareX.IRCLib/UserInfo.cs diff --git a/ShareX.IRCLib/AutoResponseInfo.cs b/ShareX.IRCLib/AutoResponseInfo.cs deleted file mode 100644 index 6eda1395f..000000000 --- a/ShareX.IRCLib/AutoResponseInfo.cs +++ /dev/null @@ -1,109 +0,0 @@ -#region License Information (GPL v3) - -/* - ShareX - A program that allows you to take screenshots and share any file type - Copyright (c) 2007-2016 ShareX Team - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License - as published by the Free Software Foundation; either version 2 - of the License, or (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - - Optionally you can also view the license at . -*/ - -#endregion License Information (GPL v3) - -using ShareX.HelpersLib; -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.Diagnostics; -using System.Drawing.Design; -using System.Linq; -using System.Text.RegularExpressions; - -namespace ShareX.IRCLib -{ - public class AutoResponseInfo - { - [Editor("System.Windows.Forms.Design.StringCollectionEditor,System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a", typeof(UITypeEditor))] - public List Messages { get; set; } - - [Editor("System.Windows.Forms.Design.StringCollectionEditor,System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a", typeof(UITypeEditor))] - public List Responses { get; set; } - - [DefaultValue(IRCAutoResponseType.Contains)] - public IRCAutoResponseType Type { get; set; } - - private Stopwatch lastMatchTimer = new Stopwatch(); - - public AutoResponseInfo() - { - Messages = new List(); - Responses = new List(); - Type = IRCAutoResponseType.Contains; - } - - public AutoResponseInfo(List message, List response, IRCAutoResponseType type) - { - Messages = message; - Responses = response; - Type = type; - } - - public bool IsMatch(string message, string nick, string mynick) - { - bool isMatch = Messages.Select(m => m.Replace("$nick", nick).Replace("$mynick", mynick)).Any(x => - { - switch (Type) - { - default: - case IRCAutoResponseType.Contains: - return Regex.IsMatch(message, $"\\b{Regex.Escape(x)}\\b", RegexOptions.Compiled | RegexOptions.CultureInvariant | RegexOptions.IgnoreCase); - case IRCAutoResponseType.StartsWith: - return message.StartsWith(x, StringComparison.InvariantCultureIgnoreCase); - case IRCAutoResponseType.ExactMatch: - return message.Equals(x, StringComparison.InvariantCultureIgnoreCase); - } - }); - - if (isMatch) - { - lastMatchTimer.Restart(); - } - - return isMatch; - } - - public bool CheckLastMatchTimer(int milliseconds) - { - return milliseconds <= 0 || !lastMatchTimer.IsRunning || lastMatchTimer.Elapsed.TotalMilliseconds > milliseconds; - } - - public string RandomResponse(string nick, string mynick) - { - int index = MathHelpers.Random(Responses.Count - 1); - return Responses.Select(r => r.Replace("$nick", nick).Replace("$mynick", mynick)).ElementAt(index); - } - - public override string ToString() - { - if (Messages != null && Messages.Count > 0) - { - return string.Join(", ", Messages); - } - - return "..."; - } - } -} \ No newline at end of file diff --git a/ShareX.IRCLib/Enums.cs b/ShareX.IRCLib/Enums.cs deleted file mode 100644 index fab8aa385..000000000 --- a/ShareX.IRCLib/Enums.cs +++ /dev/null @@ -1,61 +0,0 @@ -#region License Information (GPL v3) - -/* - ShareX - A program that allows you to take screenshots and share any file type - Copyright (c) 2007-2016 ShareX Team - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License - as published by the Free Software Foundation; either version 2 - of the License, or (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - - Optionally you can also view the license at . -*/ - -#endregion License Information (GPL v3) - -namespace ShareX.IRCLib -{ - public enum IRCAutoResponseType - { - Contains, - StartsWith, - ExactMatch - } - - public enum IRCUserType - { - Me, - User, - Server - } - - public enum IRCColors - { - White = 0, - Black = 1, - Blue = 2, - Green = 3, - LightRed = 4, - Brown = 5, - Purple = 6, - Orange = 7, - Yellow = 8, - LightGreen = 9, - Cyan = 10, - LightCyan = 11, - LightBlue = 12, - Pink = 13, - Grey = 14, - LightGrey = 15 - } -} \ No newline at end of file diff --git a/ShareX.IRCLib/IRC.cs b/ShareX.IRCLib/IRC.cs deleted file mode 100644 index b01aea5de..000000000 --- a/ShareX.IRCLib/IRC.cs +++ /dev/null @@ -1,626 +0,0 @@ -#region License Information (GPL v3) - -/* - ShareX - A program that allows you to take screenshots and share any file type - Copyright (c) 2007-2016 ShareX Team - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License - as published by the Free Software Foundation; either version 2 - of the License, or (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - - Optionally you can also view the license at . -*/ - -#endregion License Information (GPL v3) - -using ShareX.HelpersLib; -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Net.Security; -using System.Net.Sockets; -using System.Threading; - -namespace ShareX.IRCLib -{ - public class IRC : IDisposable - { - public const int DefaultPort = 6667; - public const int DefaultPortSSL = 6697; - - public event Action Output; - public event Action ErrorOutput; - public event Action Connected, Disconnected; - public delegate void MessageEventHandler(UserInfo user, string channel, string message); - public event MessageEventHandler Message; - public event Action WhoisResult; - public delegate void UserEventHandler(UserInfo user, string channel); - public event UserEventHandler UserJoined, UserLeft, UserQuit; - public delegate void UserNickChangedEventHandler(UserInfo user, string newNick); - public event UserNickChangedEventHandler UserNickChanged; - public delegate void UserKickedEventHandler(UserInfo user, string channel, string kickedNick); - public event UserKickedEventHandler UserKicked; - - public IRCInfo Info { get; private set; } - public bool IsWorking { get; private set; } - public bool IsConnected { get; private set; } - public string CurrentNickname { get; private set; } - public string LastChannel { get; private set; } - - private TcpClient tcp; - private StreamReader streamReader; - private StreamWriter streamWriter; - private bool disconnecting; - private List userList = new List(); - - public IRC() - { - Info = new IRCInfo(); - } - - public IRC(IRCInfo info) - { - Info = info; - } - - public IRC(string server, int port, string nickname, string username, string realname, bool invisible) - { - Info = new IRCInfo() - { - Server = server, - Port = port, - Nickname = nickname, - Username = username, - Realname = realname, - Invisible = invisible - }; - } - - public void Dispose() - { - Disconnect(); - } - - public void Connect() - { - if (IsWorking) - { - return; - } - - try - { - IsWorking = true; - IsConnected = false; - disconnecting = false; - - int port = Info.Port; - - if (port <= 0) - { - if (Info.UseSSL) - { - port = DefaultPortSSL; - } - else - { - port = DefaultPort; - } - } - - tcp = new TcpClient(Info.Server, port) - { - NoDelay = true - }; - - Stream networkStream = tcp.GetStream(); - - if (Info.UseSSL) - { - SslStream sslStream = new SslStream(networkStream, false, (sender, certificate, chain, sslPolicyErrors) => true); - sslStream.AuthenticateAsClient(Info.Server); - networkStream = sslStream; - } - - streamReader = new StreamReader(networkStream); - streamWriter = new StreamWriter(networkStream); - - Thread connectionThread = new Thread(ConnectionThread); - connectionThread.Start(); - - if (!string.IsNullOrEmpty(Info.Password)) - { - SetPassword(Info.Password); - } - - SetUser(Info.Username, Info.Realname, Info.Invisible); - ChangeNickname(Info.Nickname); - } - catch (Exception e) - { - IsWorking = false; - DebugHelper.WriteLine(e.ToString()); - OnErrorOutput(e); - } - } - - public void Disconnect() - { - try - { - disconnecting = true; - - if (IsWorking) - { - Quit(Info.QuitReason); - } - - if (streamReader != null) streamReader.Close(); - if (streamWriter != null) streamWriter.Close(); - if (tcp != null) tcp.Close(); - } - catch (Exception e) - { - DebugHelper.WriteLine(e.ToString()); - OnErrorOutput(e); - } - } - - private void Reconnect() - { - Disconnect(); - Connect(); - } - - private void ConnectionThread() - { - try - { - string message; - - while ((message = streamReader.ReadLine()) != null) - { - try - { - if (!CheckCommand(message)) break; - } - catch (Exception e) - { - DebugHelper.WriteLine(e.ToString()); - OnErrorOutput(e); - } - } - } - catch (Exception e) - { - if (!disconnecting) - { - DebugHelper.WriteLine(e.ToString()); - OnErrorOutput(e); - } - } - - OnDisconnected(); - } - - public void SendRawMessage(string message) - { - streamWriter.WriteLine(message); - streamWriter.Flush(); - - CheckCommand(message); - } - - private bool CheckCommand(string message) - { - MessageInfo messageInfo = MessageInfo.Parse(message); - - if (messageInfo.User.UserType == IRCUserType.Me) - { - messageInfo.User.Nickname = CurrentNickname; - } - - bool suppressOutput = - //:sendak.freenode.net 375 Jaex :- sendak.freenode.net Message of the Day - - //:sendak.freenode.net 372 Jaex :- Welcome to sendak.freenode.net in Vilnius, Lithuania, EU. - //:sendak.freenode.net 376 Jaex :End of /MOTD command. - (Info.SuppressMOTD && messageInfo.CheckCommand("375", "372", "376")) || - //PING :sendak.freenode.net - //PONG :sendak.freenode.net - (Info.SuppressPing && messageInfo.CheckCommand("PING", "PONG")); - - if (!suppressOutput) - { - OnOutput(messageInfo); - } - - switch (messageInfo.Command) - { - case "PING": //PING :sendak.freenode.net - SendRawMessage("PONG :" + messageInfo.Message); - break; - case "376": //:sendak.freenode.net 376 Jaex :End of /MOTD command. - OnConnected(); - break; - case "433": //:sendak.freenode.net 433 * ShareX :Nickname is already in use. - if (!IsConnected && messageInfo.Parameters.Count >= 2) - { - string nickname = !string.IsNullOrEmpty(Info.Nickname2) ? Info.Nickname2 : Info.Nickname + "_"; - - if (!messageInfo.Parameters[1].Equals(nickname, StringComparison.InvariantCultureIgnoreCase)) - { - ChangeNickname(nickname); - } - } - break; - case "PRIVMSG": //:Jaex!Jaex@unaffiliated/jaex PRIVMSG #ShareX :test - CheckMessage(messageInfo); - break; - case "JOIN": //:Jaex!Jaex@unaffiliated/jaex JOIN #ShareX or :Jaex!Jaex@unaffiliated/jaex JOIN :#ShareX - if (UserJoined != null) UserJoined(messageInfo.User, messageInfo.Parameters.Count > 0 ? messageInfo.Parameters[0] : messageInfo.Message); - break; - case "PART": //:Jaex!Jaex@unaffiliated/jaex PART #ShareX :"Leaving" - if (UserLeft != null) UserLeft(messageInfo.User, messageInfo.Parameters[0]); - break; - case "QUIT": //:Jaex!Jaex@unaffiliated/jaex QUIT :Client Quit - if (UserQuit != null) UserQuit(messageInfo.User, null); - break; - case "NICK": //:Jaex!Jaex@unaffiliated/jaex NICK :Jaex2 - if (UserNickChanged != null) UserNickChanged(messageInfo.User, messageInfo.Message); - break; - case "KICK": //:Jaex!Jaex@unaffiliated/jaex KICK #ShareX Jaex2 :Jaex2 - if (UserKicked != null) UserKicked(messageInfo.User, messageInfo.Parameters[0], messageInfo.Parameters[1]); - if (Info.AutoRejoinOnKick) JoinChannel(messageInfo.Parameters[0]); - break; - case "311": //:sendak.freenode.net 311 Jaex ShareX ~ShareX unaffiliated/sharex * :realname - case "319": //:sendak.freenode.net 319 Jaex ShareX :@#ShareX @#ShareX_Test - case "312": //:sendak.freenode.net 312 Jaex ShareX sendak.freenode.net :Vilnius, Lithuania, EU - case "671": //:sendak.freenode.net 671 Jaex ShareX :is using a secure connection - case "317": //:sendak.freenode.net 317 Jaex ShareX 39110 1440201914 :seconds idle, signon time - case "330": //:sendak.freenode.net 330 Jaex ShareX ShareX :is logged in as - case "318": //:sendak.freenode.net 318 Jaex ShareX :End of /WHOIS list. - ParseWHOIS(messageInfo); - break; - case "396": //:sendak.freenode.net 396 Jaex unaffiliated/jaex :is now your hidden host (set by services.) - if (Info.AutoJoinWaitIdentify) - { - AutoJoinChannels(); - } - break; - case "ERROR": - return false; - } - - return true; - } - - private void CheckMessage(MessageInfo messageInfo) - { - string channel = messageInfo.Parameters[0]; - - OnMessage(messageInfo.User, channel, messageInfo.Message); - - if (messageInfo.User.UserType == IRCUserType.User) - { - HandleAutoResponse(channel, messageInfo.User.Nickname, messageInfo.Message.ToLowerInvariant()); - } - } - - private void AutoJoinChannels() - { - foreach (string channel in Info.AutoJoinChannels) - { - JoinChannel(channel); - } - } - - private void OnOutput(MessageInfo messageInfo) - { - if (Output != null) - { - Output(messageInfo); - } - - //Console.WriteLine($"{DateTime.Now:yyyy-MM-dd HH:mm:ss} - {messageInfo.Content}"); - } - - private void OnErrorOutput(Exception e) - { - if (ErrorOutput != null) - { - ErrorOutput(e); - } - } - - protected void OnConnected() - { - IsConnected = true; - - if (Connected != null) - { - Connected(); - } - - foreach (string command in Info.ConnectCommands) - { - SendRawMessage(command); - } - - if (!Info.AutoJoinWaitIdentify) - { - AutoJoinChannels(); - } - } - - protected void OnDisconnected() - { - IsWorking = IsConnected = false; - - if (Disconnected != null) - { - Disconnected(); - } - - if (!disconnecting && Info.AutoReconnect) - { - Thread.Sleep(Info.AutoReconnectDelay); - Reconnect(); - } - } - - protected void OnMessage(UserInfo user, string channel, string message) - { - if (Message != null) - { - Message(user, channel, message); - } - } - - protected void OnWhoisResult(UserInfo userInfo) - { - if (WhoisResult != null) - { - WhoisResult(userInfo); - } - } - - #region Commands - - // JOIN channel - public void JoinChannel(string channel) - { - SendRawMessage($"JOIN {channel}"); - LastChannel = channel; - } - - // TOPIC channel :message - public void SetTopic(string channel, string message) - { - SendRawMessage($"TOPIC {channel} :{message}"); - } - - // NOTICE channel/nick :message - public void SendNotice(string channelnick, string message) - { - SendRawMessage($"NOTICE {channelnick} :{message}"); - } - - // PRIVMSG channel/nick :message - public void SendMessage(string message, string channel = null) - { - if (string.IsNullOrEmpty(channel)) - { - channel = LastChannel; - } - - SendRawMessage($"PRIVMSG {channel} :{message}"); - } - - // NICK nick - public void ChangeNickname(string nick) - { - SendRawMessage($"NICK {nick}"); - CurrentNickname = nick; - } - - // PART channel :reason - public void LeaveChannel(string channel, string reason = null) - { - SendRawMessage(AddReason($"PART {channel}", reason)); - } - - // KICK nick :reason - public void KickUser(string channel, string nick, string reason = null) - { - SendRawMessage(AddReason($"KICK {channel} {nick}", reason)); - } - - // PASS password - public void SetPassword(string password) - { - SendRawMessage($"PASS {password}"); - } - - // USER username invisible * :realname - public void SetUser(string username, string realname, bool invisible) - { - SendRawMessage($"USER {username} {(invisible ? 8 : 0)} * :{realname}"); - } - - // WHOIS nick - public void Whois(string nick, bool detailed = true) - { - string msg = $"WHOIS {nick}"; - if (detailed) msg += $" {nick}"; - SendRawMessage(msg); - } - - // QUIT :reason - public void Quit(string reason = null) - { - SendRawMessage(AddReason("QUIT", reason)); - } - - #endregion Commands - - private string AddReason(string command, string reason) - { - if (!string.IsNullOrEmpty(reason)) command += " :" + reason; - return command; - } - - private bool HandleAutoResponse(string channel, string nick, string message) - { - if (Info.AutoResponse && nick != CurrentNickname) - { - foreach (AutoResponseInfo autoResponseInfo in Info.AutoResponseList) - { - if (autoResponseInfo.CheckLastMatchTimer(Info.AutoResponseDelay) && autoResponseInfo.IsMatch(message, nick, CurrentNickname)) - { - // Is it whisper? - if (!channel.StartsWith("#")) - { - channel = nick; - } - - string response = autoResponseInfo.RandomResponse(nick, CurrentNickname); - SendMessage(response, channel); - - return true; - } - } - } - - return false; - } - - private void ParseWHOIS(MessageInfo messageInfo) - { - UserInfo userInfo; - - switch (messageInfo.Command) - { - case "311": //:sendak.freenode.net 311 Jaex ShareX ~ShareX unaffiliated/sharex * :realname - if (messageInfo.Parameters.Count >= 4) - { - userInfo = new UserInfo(); - userInfo.Nickname = messageInfo.Parameters[1]; - - if (messageInfo.Parameters[2][1] == '~') - { - userInfo.Username = messageInfo.Parameters[2].Substring(1); - } - else // Ident - { - userInfo.Username = messageInfo.Parameters[2]; - } - - userInfo.Host = messageInfo.Parameters[3]; - userInfo.Realname = messageInfo.Message; - - userList.Add(userInfo); - } - break; - case "319": //:sendak.freenode.net 319 Jaex ShareX :@#ShareX @#ShareX_Test - if (messageInfo.Parameters.Count >= 2) - { - userInfo = FindUser(messageInfo.Parameters[1]); - - if (userInfo != null) - { - userInfo.Channels.Clear(); - userInfo.Channels.AddRange(messageInfo.Message.Split()); - } - } - break; - case "312": //:sendak.freenode.net 312 Jaex ShareX sendak.freenode.net :Vilnius, Lithuania, EU - if (messageInfo.Parameters.Count >= 3) - { - userInfo = FindUser(messageInfo.Parameters[1]); - - if (userInfo != null) - { - userInfo.Server = messageInfo.Parameters[2]; - } - } - break; - case "671": //:sendak.freenode.net 671 Jaex ShareX :is using a secure connection - if (messageInfo.Parameters.Count >= 2) - { - userInfo = FindUser(messageInfo.Parameters[1]); - - if (userInfo != null) - { - userInfo.SecureConnection = true; - } - } - break; - case "317": //:sendak.freenode.net 317 Jaex ShareX 39110 1440201914 :seconds idle, signon time - if (messageInfo.Parameters.Count >= 4) - { - userInfo = FindUser(messageInfo.Parameters[1]); - - if (userInfo != null) - { - int idleTime; - if (int.TryParse(messageInfo.Parameters[2], out idleTime)) - { - userInfo.IdleTime = TimeSpan.FromSeconds(idleTime); - } - - int signOnTime; - if (int.TryParse(messageInfo.Parameters[3], out signOnTime)) - { - userInfo.SignOnDate = Helpers.UnixToDateTime(signOnTime).ToLocalTime(); - } - } - } - break; - case "330": //:sendak.freenode.net 330 Jaex ShareX ShareX :is logged in as - if (messageInfo.Parameters.Count >= 3) - { - userInfo = FindUser(messageInfo.Parameters[1]); - - if (userInfo != null) - { - userInfo.Identity = messageInfo.Parameters[2]; - } - } - break; - case "318": //:sendak.freenode.net 318 Jaex ShareX :End of /WHOIS list. - if (messageInfo.Parameters.Count >= 2) - { - userInfo = FindUser(messageInfo.Parameters[1]); - - if (userInfo != null) - { - userList.Remove(userInfo); - OnWhoisResult(userInfo); - } - } - break; - } - } - - private UserInfo FindUser(string nickname) - { - if (!string.IsNullOrEmpty(nickname)) - { - return userList.FirstOrDefault(user => user.Nickname == nickname); - } - - return null; - } - } -} \ No newline at end of file diff --git a/ShareX.IRCLib/IRCClient/IRCClientForm.Designer.cs b/ShareX.IRCLib/IRCClient/IRCClientForm.Designer.cs deleted file mode 100644 index 08e932a43..000000000 --- a/ShareX.IRCLib/IRCClient/IRCClientForm.Designer.cs +++ /dev/null @@ -1,437 +0,0 @@ -namespace ShareX.IRCLib -{ - partial class IRCClientForm - { - /// - /// Required designer variable. - /// - private System.ComponentModel.IContainer components = null; - - #region Windows Form Designer generated code - - /// - /// Required method for Designer support - do not modify - /// the contents of this method with the code editor. - /// - private void InitializeComponent() - { - this.components = new System.ComponentModel.Container(); - System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(IRCClientForm)); - this.txtMessage = new System.Windows.Forms.TextBox(); - this.cmsMessage = new System.Windows.Forms.ContextMenuStrip(this.components); - this.tsmiMessageBold = new System.Windows.Forms.ToolStripMenuItem(); - this.tsmiMessageItalic = new System.Windows.Forms.ToolStripMenuItem(); - this.tsmiMessageUnderline = new System.Windows.Forms.ToolStripMenuItem(); - this.tsmiMessageNormal = new System.Windows.Forms.ToolStripMenuItem(); - this.tsmiColors = new System.Windows.Forms.ToolStripMenuItem(); - this.tsmiColorWhite = new System.Windows.Forms.ToolStripMenuItem(); - this.tsmiColorBlack = new System.Windows.Forms.ToolStripMenuItem(); - this.tsmiColorBlue = new System.Windows.Forms.ToolStripMenuItem(); - this.tsmiColorGreen = new System.Windows.Forms.ToolStripMenuItem(); - this.tsmiColorLightRed = new System.Windows.Forms.ToolStripMenuItem(); - this.tsmiColorBrown = new System.Windows.Forms.ToolStripMenuItem(); - this.tsmiColorPurple = new System.Windows.Forms.ToolStripMenuItem(); - this.tsmiColorOrange = new System.Windows.Forms.ToolStripMenuItem(); - this.tsmiColorYellow = new System.Windows.Forms.ToolStripMenuItem(); - this.tsmiColorLightGreen = new System.Windows.Forms.ToolStripMenuItem(); - this.tsmiColorCyan = new System.Windows.Forms.ToolStripMenuItem(); - this.tsmiColorLightCyan = new System.Windows.Forms.ToolStripMenuItem(); - this.tsmiColorLightBlue = new System.Windows.Forms.ToolStripMenuItem(); - this.tsmiColorPink = new System.Windows.Forms.ToolStripMenuItem(); - this.tsmiColorGrey = new System.Windows.Forms.ToolStripMenuItem(); - this.tsmiColorLightGrey = new System.Windows.Forms.ToolStripMenuItem(); - this.btnMessageSend = new System.Windows.Forms.Button(); - this.tcMain = new System.Windows.Forms.TabControl(); - this.tpMain = new System.Windows.Forms.TabPage(); - this.btnConnect = new System.Windows.Forms.Button(); - this.pgSettings = new System.Windows.Forms.PropertyGrid(); - this.tpOutput = new System.Windows.Forms.TabPage(); - this.txtCommand = new System.Windows.Forms.TextBox(); - this.lblCommand = new System.Windows.Forms.Label(); - this.btnCommandSend = new System.Windows.Forms.Button(); - this.rtbOutput = new System.Windows.Forms.RichTextBox(); - this.tpMessages = new System.Windows.Forms.TabPage(); - this.tcMessages = new System.Windows.Forms.TabControl(); - this.btnMessagesMenu = new System.Windows.Forms.Button(); - this.lblMessage = new System.Windows.Forms.Label(); - this.lblChannel = new System.Windows.Forms.Label(); - this.txtChannel = new System.Windows.Forms.TextBox(); - this.cmsMessage.SuspendLayout(); - this.tcMain.SuspendLayout(); - this.tpMain.SuspendLayout(); - this.tpOutput.SuspendLayout(); - this.tpMessages.SuspendLayout(); - this.SuspendLayout(); - // - // txtMessage - // - resources.ApplyResources(this.txtMessage, "txtMessage"); - this.txtMessage.Name = "txtMessage"; - this.txtMessage.KeyDown += new System.Windows.Forms.KeyEventHandler(this.txtMessage_KeyDown); - // - // cmsMessage - // - this.cmsMessage.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.tsmiMessageBold, - this.tsmiMessageItalic, - this.tsmiMessageUnderline, - this.tsmiMessageNormal, - this.tsmiColors}); - this.cmsMessage.Name = "cmsMessage"; - this.cmsMessage.ShowImageMargin = false; - resources.ApplyResources(this.cmsMessage, "cmsMessage"); - // - // tsmiMessageBold - // - resources.ApplyResources(this.tsmiMessageBold, "tsmiMessageBold"); - this.tsmiMessageBold.Name = "tsmiMessageBold"; - this.tsmiMessageBold.Click += new System.EventHandler(this.tsmiMessageBold_Click); - // - // tsmiMessageItalic - // - resources.ApplyResources(this.tsmiMessageItalic, "tsmiMessageItalic"); - this.tsmiMessageItalic.Name = "tsmiMessageItalic"; - this.tsmiMessageItalic.Click += new System.EventHandler(this.tsmiMessageItalic_Click); - // - // tsmiMessageUnderline - // - resources.ApplyResources(this.tsmiMessageUnderline, "tsmiMessageUnderline"); - this.tsmiMessageUnderline.Name = "tsmiMessageUnderline"; - this.tsmiMessageUnderline.Click += new System.EventHandler(this.tsmiMessageUnderline_Click); - // - // tsmiMessageNormal - // - this.tsmiMessageNormal.Name = "tsmiMessageNormal"; - resources.ApplyResources(this.tsmiMessageNormal, "tsmiMessageNormal"); - this.tsmiMessageNormal.Click += new System.EventHandler(this.tsmiMessageNormal_Click); - // - // tsmiColors - // - this.tsmiColors.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.tsmiColorWhite, - this.tsmiColorBlack, - this.tsmiColorBlue, - this.tsmiColorGreen, - this.tsmiColorLightRed, - this.tsmiColorBrown, - this.tsmiColorPurple, - this.tsmiColorOrange, - this.tsmiColorYellow, - this.tsmiColorLightGreen, - this.tsmiColorCyan, - this.tsmiColorLightCyan, - this.tsmiColorLightBlue, - this.tsmiColorPink, - this.tsmiColorGrey, - this.tsmiColorLightGrey}); - this.tsmiColors.Name = "tsmiColors"; - resources.ApplyResources(this.tsmiColors, "tsmiColors"); - // - // tsmiColorWhite - // - this.tsmiColorWhite.BackColor = System.Drawing.Color.White; - this.tsmiColorWhite.ForeColor = System.Drawing.Color.Black; - this.tsmiColorWhite.Name = "tsmiColorWhite"; - resources.ApplyResources(this.tsmiColorWhite, "tsmiColorWhite"); - this.tsmiColorWhite.Click += new System.EventHandler(this.tsmiColorWhite_Click); - // - // tsmiColorBlack - // - this.tsmiColorBlack.BackColor = System.Drawing.Color.Black; - this.tsmiColorBlack.ForeColor = System.Drawing.Color.White; - this.tsmiColorBlack.Name = "tsmiColorBlack"; - resources.ApplyResources(this.tsmiColorBlack, "tsmiColorBlack"); - this.tsmiColorBlack.Click += new System.EventHandler(this.tsmiColorBlack_Click); - // - // tsmiColorBlue - // - this.tsmiColorBlue.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(127))))); - this.tsmiColorBlue.ForeColor = System.Drawing.Color.White; - this.tsmiColorBlue.Name = "tsmiColorBlue"; - resources.ApplyResources(this.tsmiColorBlue, "tsmiColorBlue"); - this.tsmiColorBlue.Click += new System.EventHandler(this.tsmiColorBlue_Click); - // - // tsmiColorGreen - // - this.tsmiColorGreen.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(147)))), ((int)(((byte)(0))))); - this.tsmiColorGreen.ForeColor = System.Drawing.Color.White; - this.tsmiColorGreen.Name = "tsmiColorGreen"; - resources.ApplyResources(this.tsmiColorGreen, "tsmiColorGreen"); - this.tsmiColorGreen.Click += new System.EventHandler(this.tsmiColorGreen_Click); - // - // tsmiColorLightRed - // - this.tsmiColorLightRed.BackColor = System.Drawing.Color.Red; - this.tsmiColorLightRed.ForeColor = System.Drawing.Color.White; - this.tsmiColorLightRed.Name = "tsmiColorLightRed"; - resources.ApplyResources(this.tsmiColorLightRed, "tsmiColorLightRed"); - this.tsmiColorLightRed.Click += new System.EventHandler(this.tsmiColorLightRed_Click); - // - // tsmiColorBrown - // - this.tsmiColorBrown.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(127)))), ((int)(((byte)(0)))), ((int)(((byte)(0))))); - this.tsmiColorBrown.ForeColor = System.Drawing.Color.White; - this.tsmiColorBrown.Name = "tsmiColorBrown"; - resources.ApplyResources(this.tsmiColorBrown, "tsmiColorBrown"); - this.tsmiColorBrown.Click += new System.EventHandler(this.tsmiColorBrown_Click); - // - // tsmiColorPurple - // - this.tsmiColorPurple.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(156)))), ((int)(((byte)(0)))), ((int)(((byte)(156))))); - this.tsmiColorPurple.ForeColor = System.Drawing.Color.White; - this.tsmiColorPurple.Name = "tsmiColorPurple"; - resources.ApplyResources(this.tsmiColorPurple, "tsmiColorPurple"); - this.tsmiColorPurple.Click += new System.EventHandler(this.tsmiColorPurple_Click); - // - // tsmiColorOrange - // - this.tsmiColorOrange.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(252)))), ((int)(((byte)(127)))), ((int)(((byte)(0))))); - this.tsmiColorOrange.ForeColor = System.Drawing.Color.White; - this.tsmiColorOrange.Name = "tsmiColorOrange"; - resources.ApplyResources(this.tsmiColorOrange, "tsmiColorOrange"); - this.tsmiColorOrange.Click += new System.EventHandler(this.tsmiColorOrange_Click); - // - // tsmiColorYellow - // - this.tsmiColorYellow.BackColor = System.Drawing.Color.Yellow; - this.tsmiColorYellow.ForeColor = System.Drawing.Color.Black; - this.tsmiColorYellow.Name = "tsmiColorYellow"; - resources.ApplyResources(this.tsmiColorYellow, "tsmiColorYellow"); - this.tsmiColorYellow.Click += new System.EventHandler(this.tsmiColorYellow_Click); - // - // tsmiColorLightGreen - // - this.tsmiColorLightGreen.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(252)))), ((int)(((byte)(0))))); - this.tsmiColorLightGreen.ForeColor = System.Drawing.Color.Black; - this.tsmiColorLightGreen.Name = "tsmiColorLightGreen"; - resources.ApplyResources(this.tsmiColorLightGreen, "tsmiColorLightGreen"); - this.tsmiColorLightGreen.Click += new System.EventHandler(this.tsmiColorLightGreen_Click); - // - // tsmiColorCyan - // - this.tsmiColorCyan.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(147)))), ((int)(((byte)(147))))); - this.tsmiColorCyan.ForeColor = System.Drawing.Color.White; - this.tsmiColorCyan.Name = "tsmiColorCyan"; - resources.ApplyResources(this.tsmiColorCyan, "tsmiColorCyan"); - this.tsmiColorCyan.Click += new System.EventHandler(this.tsmiColorCyan_Click); - // - // tsmiColorLightCyan - // - this.tsmiColorLightCyan.BackColor = System.Drawing.Color.Aqua; - this.tsmiColorLightCyan.ForeColor = System.Drawing.Color.Black; - this.tsmiColorLightCyan.Name = "tsmiColorLightCyan"; - resources.ApplyResources(this.tsmiColorLightCyan, "tsmiColorLightCyan"); - this.tsmiColorLightCyan.Click += new System.EventHandler(this.tsmiColorLightCyan_Click); - // - // tsmiColorLightBlue - // - this.tsmiColorLightBlue.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(252))))); - this.tsmiColorLightBlue.ForeColor = System.Drawing.Color.White; - this.tsmiColorLightBlue.Name = "tsmiColorLightBlue"; - resources.ApplyResources(this.tsmiColorLightBlue, "tsmiColorLightBlue"); - this.tsmiColorLightBlue.Click += new System.EventHandler(this.tsmiColorLightBlue_Click); - // - // tsmiColorPink - // - this.tsmiColorPink.BackColor = System.Drawing.Color.Fuchsia; - this.tsmiColorPink.ForeColor = System.Drawing.Color.White; - this.tsmiColorPink.Name = "tsmiColorPink"; - resources.ApplyResources(this.tsmiColorPink, "tsmiColorPink"); - this.tsmiColorPink.Click += new System.EventHandler(this.tsmiColorPink_Click); - // - // tsmiColorGrey - // - this.tsmiColorGrey.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(127)))), ((int)(((byte)(127)))), ((int)(((byte)(127))))); - this.tsmiColorGrey.ForeColor = System.Drawing.Color.White; - this.tsmiColorGrey.Name = "tsmiColorGrey"; - resources.ApplyResources(this.tsmiColorGrey, "tsmiColorGrey"); - this.tsmiColorGrey.Click += new System.EventHandler(this.tsmiColorGrey_Click); - // - // tsmiColorLightGrey - // - this.tsmiColorLightGrey.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(210)))), ((int)(((byte)(210)))), ((int)(((byte)(210))))); - this.tsmiColorLightGrey.ForeColor = System.Drawing.Color.Black; - this.tsmiColorLightGrey.Name = "tsmiColorLightGrey"; - resources.ApplyResources(this.tsmiColorLightGrey, "tsmiColorLightGrey"); - this.tsmiColorLightGrey.Click += new System.EventHandler(this.tsmiColorLightGrey_Click); - // - // btnMessageSend - // - resources.ApplyResources(this.btnMessageSend, "btnMessageSend"); - this.btnMessageSend.Name = "btnMessageSend"; - this.btnMessageSend.UseVisualStyleBackColor = true; - this.btnMessageSend.Click += new System.EventHandler(this.btnMessageSend_Click); - // - // tcMain - // - this.tcMain.Controls.Add(this.tpMain); - this.tcMain.Controls.Add(this.tpOutput); - this.tcMain.Controls.Add(this.tpMessages); - resources.ApplyResources(this.tcMain, "tcMain"); - this.tcMain.Name = "tcMain"; - this.tcMain.SelectedIndex = 0; - this.tcMain.SelectedIndexChanged += new System.EventHandler(this.tcMain_SelectedIndexChanged); - // - // tpMain - // - this.tpMain.Controls.Add(this.btnConnect); - this.tpMain.Controls.Add(this.pgSettings); - resources.ApplyResources(this.tpMain, "tpMain"); - this.tpMain.Name = "tpMain"; - this.tpMain.UseVisualStyleBackColor = true; - // - // btnConnect - // - resources.ApplyResources(this.btnConnect, "btnConnect"); - this.btnConnect.Name = "btnConnect"; - this.btnConnect.UseVisualStyleBackColor = true; - this.btnConnect.Click += new System.EventHandler(this.btnConnect_Click); - // - // pgSettings - // - resources.ApplyResources(this.pgSettings, "pgSettings"); - this.pgSettings.CategoryForeColor = System.Drawing.SystemColors.InactiveCaptionText; - this.pgSettings.Name = "pgSettings"; - this.pgSettings.PropertySort = System.Windows.Forms.PropertySort.Categorized; - this.pgSettings.ToolbarVisible = false; - // - // tpOutput - // - this.tpOutput.Controls.Add(this.txtCommand); - this.tpOutput.Controls.Add(this.lblCommand); - this.tpOutput.Controls.Add(this.btnCommandSend); - this.tpOutput.Controls.Add(this.rtbOutput); - resources.ApplyResources(this.tpOutput, "tpOutput"); - this.tpOutput.Name = "tpOutput"; - this.tpOutput.UseVisualStyleBackColor = true; - // - // txtCommand - // - resources.ApplyResources(this.txtCommand, "txtCommand"); - this.txtCommand.Name = "txtCommand"; - this.txtCommand.KeyDown += new System.Windows.Forms.KeyEventHandler(this.txtCommand_KeyDown); - // - // lblCommand - // - resources.ApplyResources(this.lblCommand, "lblCommand"); - this.lblCommand.Name = "lblCommand"; - // - // btnCommandSend - // - resources.ApplyResources(this.btnCommandSend, "btnCommandSend"); - this.btnCommandSend.Name = "btnCommandSend"; - this.btnCommandSend.UseVisualStyleBackColor = true; - this.btnCommandSend.Click += new System.EventHandler(this.btnCommandSend_Click); - // - // rtbOutput - // - resources.ApplyResources(this.rtbOutput, "rtbOutput"); - this.rtbOutput.BackColor = System.Drawing.Color.White; - this.rtbOutput.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; - this.rtbOutput.Name = "rtbOutput"; - this.rtbOutput.ReadOnly = true; - this.rtbOutput.LinkClicked += new System.Windows.Forms.LinkClickedEventHandler(this.rtbOutput_LinkClicked); - // - // tpMessages - // - this.tpMessages.Controls.Add(this.tcMessages); - this.tpMessages.Controls.Add(this.btnMessagesMenu); - this.tpMessages.Controls.Add(this.lblMessage); - this.tpMessages.Controls.Add(this.lblChannel); - this.tpMessages.Controls.Add(this.txtChannel); - this.tpMessages.Controls.Add(this.txtMessage); - this.tpMessages.Controls.Add(this.btnMessageSend); - resources.ApplyResources(this.tpMessages, "tpMessages"); - this.tpMessages.Name = "tpMessages"; - this.tpMessages.UseVisualStyleBackColor = true; - // - // tcMessages - // - resources.ApplyResources(this.tcMessages, "tcMessages"); - this.tcMessages.Name = "tcMessages"; - this.tcMessages.SelectedIndex = 0; - this.tcMessages.SelectedIndexChanged += new System.EventHandler(this.tcMessages_SelectedIndexChanged); - // - // btnMessagesMenu - // - resources.ApplyResources(this.btnMessagesMenu, "btnMessagesMenu"); - this.btnMessagesMenu.Name = "btnMessagesMenu"; - this.btnMessagesMenu.UseVisualStyleBackColor = true; - this.btnMessagesMenu.MouseClick += new System.Windows.Forms.MouseEventHandler(this.btnMessagesMenu_MouseClick); - // - // lblMessage - // - resources.ApplyResources(this.lblMessage, "lblMessage"); - this.lblMessage.Name = "lblMessage"; - // - // lblChannel - // - resources.ApplyResources(this.lblChannel, "lblChannel"); - this.lblChannel.Name = "lblChannel"; - // - // txtChannel - // - resources.ApplyResources(this.txtChannel, "txtChannel"); - this.txtChannel.Name = "txtChannel"; - // - // IRCClientForm - // - resources.ApplyResources(this, "$this"); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.Controls.Add(this.tcMain); - this.Name = "IRCClientForm"; - this.cmsMessage.ResumeLayout(false); - this.tcMain.ResumeLayout(false); - this.tpMain.ResumeLayout(false); - this.tpOutput.ResumeLayout(false); - this.tpOutput.PerformLayout(); - this.tpMessages.ResumeLayout(false); - this.tpMessages.PerformLayout(); - this.ResumeLayout(false); - - } - - #endregion - - private System.Windows.Forms.TextBox txtMessage; - private System.Windows.Forms.Button btnMessageSend; - private System.Windows.Forms.TabControl tcMain; - private System.Windows.Forms.TabPage tpOutput; - private System.Windows.Forms.TabPage tpMessages; - private System.Windows.Forms.TextBox txtChannel; - private System.Windows.Forms.Label lblChannel; - private System.Windows.Forms.Label lblMessage; - private System.Windows.Forms.TabPage tpMain; - private System.Windows.Forms.PropertyGrid pgSettings; - private System.Windows.Forms.Button btnConnect; - private System.Windows.Forms.TextBox txtCommand; - private System.Windows.Forms.Label lblCommand; - private System.Windows.Forms.Button btnCommandSend; - private System.Windows.Forms.ContextMenuStrip cmsMessage; - private System.Windows.Forms.ToolStripMenuItem tsmiMessageBold; - private System.Windows.Forms.ToolStripMenuItem tsmiMessageItalic; - private System.Windows.Forms.ToolStripMenuItem tsmiMessageUnderline; - private System.Windows.Forms.ToolStripMenuItem tsmiMessageNormal; - private System.Windows.Forms.Button btnMessagesMenu; - private System.Windows.Forms.ToolStripMenuItem tsmiColors; - private System.Windows.Forms.ToolStripMenuItem tsmiColorWhite; - private System.Windows.Forms.ToolStripMenuItem tsmiColorBlack; - private System.Windows.Forms.ToolStripMenuItem tsmiColorBlue; - private System.Windows.Forms.ToolStripMenuItem tsmiColorGreen; - private System.Windows.Forms.ToolStripMenuItem tsmiColorLightRed; - private System.Windows.Forms.ToolStripMenuItem tsmiColorBrown; - private System.Windows.Forms.ToolStripMenuItem tsmiColorPurple; - private System.Windows.Forms.ToolStripMenuItem tsmiColorOrange; - private System.Windows.Forms.ToolStripMenuItem tsmiColorYellow; - private System.Windows.Forms.ToolStripMenuItem tsmiColorLightGreen; - private System.Windows.Forms.ToolStripMenuItem tsmiColorCyan; - private System.Windows.Forms.ToolStripMenuItem tsmiColorLightCyan; - private System.Windows.Forms.ToolStripMenuItem tsmiColorLightBlue; - private System.Windows.Forms.ToolStripMenuItem tsmiColorPink; - private System.Windows.Forms.ToolStripMenuItem tsmiColorGrey; - private System.Windows.Forms.ToolStripMenuItem tsmiColorLightGrey; - private System.Windows.Forms.TabControl tcMessages; - private System.Windows.Forms.RichTextBox rtbOutput; - } -} - diff --git a/ShareX.IRCLib/IRCClient/IRCClientForm.cs b/ShareX.IRCLib/IRCClient/IRCClientForm.cs deleted file mode 100644 index 34d76e000..000000000 --- a/ShareX.IRCLib/IRCClient/IRCClientForm.cs +++ /dev/null @@ -1,453 +0,0 @@ -#region License Information (GPL v3) - -/* - ShareX - A program that allows you to take screenshots and share any file type - Copyright (c) 2007-2016 ShareX Team - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License - as published by the Free Software Foundation; either version 2 - of the License, or (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - - Optionally you can also view the license at . -*/ - -#endregion License Information (GPL v3) - -using ShareX.HelpersLib; -using ShareX.IRCLib.Properties; -using System; -using System.Drawing; -using System.Windows.Forms; - -namespace ShareX.IRCLib -{ - public partial class IRCClientForm : BaseForm - { - public IRCInfo Info { get; private set; } - public IRC IRC { get; private set; } - - private TabManager tabManager; - private string lastCommand, lastMessage; - - public IRCClientForm() : this(new IRCInfo()) - { - } - - public IRCClientForm(IRCInfo info) - { - InitializeComponent(); - rtbOutput.AddContextMenu(); - tsmiColors.HideImageMargin(); - - tabManager = new TabManager(tcMessages); - - Info = info; - pgSettings.SelectedObject = Info; - - IRC = new IRC(Info); - IRC.Disconnected += IRC_Disconnected; - IRC.Output += IRC_Output; - IRC.ErrorOutput += IRC_ErrorOutput; - IRC.Message += IRC_Message; - IRC.UserJoined += IRC_UserJoined; - } - - protected override void Dispose(bool disposing) - { - if (disposing) - { - if (components != null) - { - components.Dispose(); - } - - if (IRC != null) - { - IRC.Dispose(); - } - } - - base.Dispose(disposing); - } - - private void AppendOutput(string output, Color color) - { - this.InvokeSafe(() => - { - rtbOutput.Select(rtbOutput.TextLength, 0); - rtbOutput.SelectionColor = color; - rtbOutput.AppendText($"{DateTime.Now:yyyy-MM-dd HH:mm:ss} - {output}\r\n"); - }); - } - - private void AppendMessage(string message) - { - txtMessage.AppendTextToSelection(message); - txtMessage.Focus(); - } - - private void SendCommand() - { - string command = txtCommand.Text; - - if (!string.IsNullOrEmpty(command)) - { - lastCommand = command; - - if (IRC.IsWorking) - { - SendCommand(command); - } - } - - txtCommand.Clear(); - } - - private void SendCommand(string command) - { - if (!string.IsNullOrEmpty(command)) - { - if (command.StartsWith("/")) - { - command = command.Substring(1); - } - - IRC.SendRawMessage(command); - } - } - - private void SendMessage() - { - string message = txtMessage.Text; - - if (!string.IsNullOrEmpty(message)) - { - lastMessage = message; - - if (IRC.IsWorking) - { - SendMessage(message); - } - } - - txtMessage.Clear(); - } - - private void SendMessage(string message) - { - if (!string.IsNullOrEmpty(message)) - { - if (message.StartsWith("/")) - { - IRC.SendRawMessage(message.Substring(1)); - } - else - { - IRC.SendMessage(message, txtChannel.Text); - } - } - } - - private void Connect() - { - if (CheckInfo()) - { - btnConnect.Text = Resources.IRCClientForm_Connect_Disconnect; - btnCommandSend.Enabled = btnMessageSend.Enabled = true; - tcMain.SelectedTab = tpOutput; - IRC.Connect(); - } - } - - private void Disconnect() - { - btnConnect.Text = Resources.IRCClientForm_Disconnect_Connect; - btnCommandSend.Enabled = btnMessageSend.Enabled = false; - IRC.Disconnect(); - } - - private bool CheckInfo() - { - if (string.IsNullOrEmpty(Info.Server)) - { - MessageBox.Show("Server field cannot be empty.", "ShareX - Error", MessageBoxButtons.OK, MessageBoxIcon.Error); - return false; - } - - if (string.IsNullOrEmpty(Info.Nickname)) - { - MessageBox.Show("Nickname field cannot be empty.", "ShareX - Error", MessageBoxButtons.OK, MessageBoxIcon.Error); - return false; - } - - if (string.IsNullOrEmpty(Info.Username)) - { - MessageBox.Show("Username field cannot be empty.", "ShareX - Error", MessageBoxButtons.OK, MessageBoxIcon.Error); - return false; - } - - if (string.IsNullOrEmpty(Info.Realname)) - { - MessageBox.Show("Realname field cannot be empty.", "ShareX - Error", MessageBoxButtons.OK, MessageBoxIcon.Error); - return false; - } - - return true; - } - - #region Form events - - private void tcMain_SelectedIndexChanged(object sender, EventArgs e) - { - if (tcMain.SelectedTab == tpOutput) - { - txtCommand.Focus(); - } - else if (tcMain.SelectedTab == tpMessages) - { - txtMessage.Focus(); - } - } - - private void btnConnect_Click(object sender, EventArgs e) - { - if (!IRC.IsWorking) - { - Connect(); - } - else - { - Disconnect(); - } - } - - private void rtbOutput_LinkClicked(object sender, LinkClickedEventArgs e) - { - URLHelpers.OpenURL(e.LinkText); - } - - private void txtCommand_KeyDown(object sender, KeyEventArgs e) - { - if (e.KeyCode == Keys.Enter) - { - SendCommand(); - e.SuppressKeyPress = true; - } - else if (e.KeyCode == Keys.Up && !string.IsNullOrEmpty(lastCommand)) - { - txtCommand.Text = lastCommand; - txtCommand.SelectionStart = txtCommand.TextLength; - e.SuppressKeyPress = true; - } - } - - private void btnCommandSend_Click(object sender, EventArgs e) - { - SendCommand(); - } - - private void tcMessages_SelectedIndexChanged(object sender, EventArgs e) - { - TabInfo tabInfo = tabManager.ActiveTab; - - if (tabInfo != null) - { - txtChannel.Text = tabInfo.Name; - } - - txtMessage.Focus(); - } - - private void txtMessage_KeyDown(object sender, KeyEventArgs e) - { - if (e.KeyCode == Keys.Enter) - { - SendMessage(); - e.SuppressKeyPress = true; - } - else if (e.KeyCode == Keys.Up && !string.IsNullOrEmpty(lastMessage)) - { - txtMessage.Text = lastMessage; - txtMessage.SelectionStart = txtMessage.TextLength; - e.SuppressKeyPress = true; - } - } - - private void btnMessagesMenu_MouseClick(object sender, MouseEventArgs e) - { - cmsMessage.Show(btnMessagesMenu, new Point(0, btnMessagesMenu.Height + 1)); - } - - #region Message menu - - private void tsmiMessageBold_Click(object sender, EventArgs e) - { - AppendMessage(IRCText.Bold); - } - - private void tsmiMessageItalic_Click(object sender, EventArgs e) - { - AppendMessage(IRCText.Italic); - } - - private void tsmiMessageUnderline_Click(object sender, EventArgs e) - { - AppendMessage(IRCText.Underline); - } - - private void tsmiMessageNormal_Click(object sender, EventArgs e) - { - AppendMessage(IRCText.Reset); - } - - private void tsmiColorWhite_Click(object sender, EventArgs e) - { - AppendMessage(IRCText.Color(IRCColors.White)); - } - - private void tsmiColorBlack_Click(object sender, EventArgs e) - { - AppendMessage(IRCText.Color(IRCColors.Black)); - } - - private void tsmiColorBlue_Click(object sender, EventArgs e) - { - AppendMessage(IRCText.Color(IRCColors.Blue)); - } - - private void tsmiColorGreen_Click(object sender, EventArgs e) - { - AppendMessage(IRCText.Color(IRCColors.Green)); - } - - private void tsmiColorLightRed_Click(object sender, EventArgs e) - { - AppendMessage(IRCText.Color(IRCColors.LightRed)); - } - - private void tsmiColorBrown_Click(object sender, EventArgs e) - { - AppendMessage(IRCText.Color(IRCColors.Brown)); - } - - private void tsmiColorPurple_Click(object sender, EventArgs e) - { - AppendMessage(IRCText.Color(IRCColors.Purple)); - } - - private void tsmiColorOrange_Click(object sender, EventArgs e) - { - AppendMessage(IRCText.Color(IRCColors.Orange)); - } - - private void tsmiColorYellow_Click(object sender, EventArgs e) - { - AppendMessage(IRCText.Color(IRCColors.Yellow)); - } - - private void tsmiColorLightGreen_Click(object sender, EventArgs e) - { - AppendMessage(IRCText.Color(IRCColors.LightGreen)); - } - - private void tsmiColorCyan_Click(object sender, EventArgs e) - { - AppendMessage(IRCText.Color(IRCColors.Cyan)); - } - - private void tsmiColorLightCyan_Click(object sender, EventArgs e) - { - AppendMessage(IRCText.Color(IRCColors.LightCyan)); - } - - private void tsmiColorLightBlue_Click(object sender, EventArgs e) - { - AppendMessage(IRCText.Color(IRCColors.LightBlue)); - } - - private void tsmiColorPink_Click(object sender, EventArgs e) - { - AppendMessage(IRCText.Color(IRCColors.Pink)); - } - - private void tsmiColorGrey_Click(object sender, EventArgs e) - { - AppendMessage(IRCText.Color(IRCColors.Grey)); - } - - private void tsmiColorLightGrey_Click(object sender, EventArgs e) - { - AppendMessage(IRCText.Color(IRCColors.LightGrey)); - } - - #endregion Message menu - - private void btnMessageSend_Click(object sender, EventArgs e) - { - SendMessage(); - } - - #endregion Form events - - #region IRC events - - private void IRC_Disconnected() - { - if (!Info.AutoReconnect) - { - Disconnect(); - } - } - - private void IRC_Output(MessageInfo messageInfo) - { - AppendOutput(messageInfo.Content, Color.Black); - } - - private void IRC_ErrorOutput(Exception e) - { - AppendOutput(e.ToString(), Color.Red); - } - - private void IRC_Message(UserInfo user, string channel, string message) - { - this.InvokeSafe(() => - { - if (channel[0] != '#' && user.UserType == IRCUserType.User) - { - channel = user.Nickname; - } - - tabManager.AddMessage(channel, $"{user.Nickname}: {message}"); - }); - } - - private void IRC_UserJoined(UserInfo user, string channel) - { - if (user.Nickname == IRC.CurrentNickname && user.Username == Info.Username) - { - this.InvokeSafe(() => - { - tabManager.AddChannel(channel); - - if (string.IsNullOrEmpty(txtChannel.Text)) - { - txtChannel.Text = channel; - } - }); - } - } - - #endregion IRC events - } -} \ No newline at end of file diff --git a/ShareX.IRCLib/IRCClient/IRCClientForm.de.resx b/ShareX.IRCLib/IRCClient/IRCClientForm.de.resx deleted file mode 100644 index 5a53416ec..000000000 --- a/ShareX.IRCLib/IRCClient/IRCClientForm.de.resx +++ /dev/null @@ -1,213 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - ShareX - IRC Programm - - - Senden - - - Verbinden - - - Senden - - - Channel/Nick: - - - Befehl: - - - Nachricht: - - - Einstellungen - - - Nachrichten - - - IRC Ausgabe - - - Schwarz - - - Blau - - - Braun - - - Cyan - - - Grün - - - Grau - - - Hellblau - - - Helles Cyan - - - Hellgrün - - - Hellgrau - - - Hellrot - - - Orange - - - Pink - - - Lila - - - Farben - - - Weiß - - - Gelb - - - Fett - - - Kursiv - - - Normal - - - Unterstrichen - - \ No newline at end of file diff --git a/ShareX.IRCLib/IRCClient/IRCClientForm.fr.resx b/ShareX.IRCLib/IRCClient/IRCClientForm.fr.resx deleted file mode 100644 index ad3fdc9e1..000000000 --- a/ShareX.IRCLib/IRCClient/IRCClientForm.fr.resx +++ /dev/null @@ -1,213 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - ShareX - Client IRC - - - Envoyer - - - Se connecter - - - Envoyer - - - Logs IRC - - - Noir - - - Bleu - - - Marron - - - Cyan - - - Vert - - - Gris - - - Bleu Clair - - - Cyan Clair - - - Vert Clair - - - Gris Clair - - - Rouge Clair - - - Orange - - - Rose - - - Violet - - - Couleurs - - - Blanc - - - Jaune - - - Gras - - - Italique - - - Normal - - - Souligné - - - Message: - - - Commande: - - - Messages - - - Paramètres - - - Salon/Pseudo: - - \ No newline at end of file diff --git a/ShareX.IRCLib/IRCClient/IRCClientForm.nl-NL.resx b/ShareX.IRCLib/IRCClient/IRCClientForm.nl-NL.resx deleted file mode 100644 index a16e91d48..000000000 --- a/ShareX.IRCLib/IRCClient/IRCClientForm.nl-NL.resx +++ /dev/null @@ -1,213 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - ShareX - IRC programma - - - Verstuur - - - Verbind - - - Verstuur - - - Kanaal/Nick: - - - Commando: - - - Bericht: - - - Instellingen - - - Berichten - - - IRC resultaat - - - Zwart - - - Blauw - - - Bruin - - - Turqoise - - - Groen - - - Grijs - - - Lichtblauw - - - Lichtturqoise - - - Lichtgroen - - - Lichtgrijs - - - Lichtrood - - - Oranje - - - Roze - - - Paars - - - Kleuren - - - Wit - - - Geel - - - Vet - - - Cursief - - - Normaal - - - Onderlijn - - \ No newline at end of file diff --git a/ShareX.IRCLib/IRCClient/IRCClientForm.pt-BR.resx b/ShareX.IRCLib/IRCClient/IRCClientForm.pt-BR.resx deleted file mode 100644 index 115262dd1..000000000 --- a/ShareX.IRCLib/IRCClient/IRCClientForm.pt-BR.resx +++ /dev/null @@ -1,213 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - ShareX - Cliente IRC - - - Enviar - - - Conectar - - - Enviar - - - Canal/Nick: - - - Comando: - - - Mensagem: - - - Configurações - - - Mensagens - - - Saída do IRC - - - Preto - - - Azul - - - Marrom - - - Ciano - - - Verde - - - Cinza - - - Azul claro - - - Ciano claro - - - Verde claro - - - Cinza claro - - - Vermelho claro - - - Laranja - - - Rosa - - - Roxo - - - Cores - - - Branco - - - Amarelo - - - Negrito - - - Itálico - - - Normal - - - Sublinhado - - \ No newline at end of file diff --git a/ShareX.IRCLib/IRCClient/IRCClientForm.resx b/ShareX.IRCLib/IRCClient/IRCClientForm.resx deleted file mode 100644 index 32b49a12d..000000000 --- a/ShareX.IRCLib/IRCClient/IRCClientForm.resx +++ /dev/null @@ -1,879 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - - Bottom, Left, Right - - - - 248, 504 - - - 400, 20 - - - - 1 - - - txtMessage - - - System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tpMessages - - - 5 - - - 17, 17 - - - Segoe UI, 9pt, style=Bold - - - 100, 22 - - - Bold - - - Segoe UI, 9pt, style=Italic - - - 100, 22 - - - Italic - - - Segoe UI, 9pt, style=Underline - - - 100, 22 - - - Underline - - - 100, 22 - - - Normal - - - 135, 22 - - - White - - - 135, 22 - - - Black - - - 135, 22 - - - Blue - - - 135, 22 - - - Green - - - 135, 22 - - - Light Red - - - 135, 22 - - - Brown - - - 135, 22 - - - Purple - - - 135, 22 - - - Orange - - - 135, 22 - - - Yellow - - - 135, 22 - - - Light Green - - - 135, 22 - - - Cyan - - - 135, 22 - - - Light Cyan - - - 135, 22 - - - Light Blue - - - 135, 22 - - - Pink - - - 135, 22 - - - Grey - - - 135, 22 - - - Light Grey - - - 100, 22 - - - Colors - - - 101, 114 - - - cmsMessage - - - System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - Bottom, Right - - - False - - - 688, 502 - - - 80, 24 - - - 3 - - - Send - - - btnMessageSend - - - System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tpMessages - - - 6 - - - Bottom, Left - - - 8, 500 - - - 112, 24 - - - 0 - - - Connect - - - btnConnect - - - System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tpMain - - - 0 - - - Top, Bottom, Left, Right - - - 8, 8 - - - 760, 484 - - - 1 - - - pgSettings - - - System.Windows.Forms.PropertyGrid, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tpMain - - - 1 - - - 4, 22 - - - 3, 3, 3, 3 - - - 776, 535 - - - 2 - - - Settings - - - tpMain - - - System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tcMain - - - 0 - - - Bottom, Left, Right - - - 72, 504 - - - 608, 20 - - - 1 - - - txtCommand - - - System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tpOutput - - - 0 - - - Bottom, Left - - - True - - - 8, 508 - - - 57, 13 - - - 0 - - - Command: - - - lblCommand - - - System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tpOutput - - - 1 - - - Bottom, Right - - - False - - - 688, 502 - - - 80, 24 - - - 2 - - - Send - - - btnCommandSend - - - System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tpOutput - - - 2 - - - Top, Bottom, Left, Right - - - 8, 8 - - - 760, 484 - - - 4 - - - - @Invariant - - False - - - rtbOutput - - - System.Windows.Forms.RichTextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tpOutput - - - 3 - - - 4, 22 - - - 3, 3, 3, 3 - - - 776, 535 - - - 0 - - - IRC output - - - tpOutput - - - System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tcMain - - - 1 - - - Top, Bottom, Left, Right - - - 0, 0 - - - 776, 492 - - - 6 - - - tcMessages - - - System.Windows.Forms.TabControl, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tpMessages - - - 0 - - - Bottom, Right - - - 656, 502 - - - 24, 24 - - - 2 - - - ... - @Invariant - - btnMessagesMenu - - - System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tpMessages - - - 1 - - - Bottom, Left - - - True - - - 192, 508 - - - 53, 13 - - - 0 - - - Message: - - - lblMessage - - - System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tpMessages - - - 2 - - - Bottom, Left - - - True - - - 8, 508 - - - 76, 13 - - - 4 - - - Channel/Nick: - - - lblChannel - - - System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tpMessages - - - 3 - - - Bottom, Left - - - 88, 504 - - - 96, 20 - - - 5 - - - txtChannel - - - System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tpMessages - - - 4 - - - 4, 22 - - - 3, 3, 3, 3 - - - 776, 535 - - - 1 - - - Messages - - - tpMessages - - - System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tcMain - - - 2 - - - Fill - - - 0, 0 - - - 784, 561 - - - 0 - - - tcMain - - - System.Windows.Forms.TabControl, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - $this - - - 1 - - - True - - - 62 - - - 6, 13 - - - 784, 561 - - - CenterScreen - - - ShareX - IRC client - - - tsmiMessageBold - - - System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tsmiMessageItalic - - - System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tsmiMessageUnderline - - - System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tsmiMessageNormal - - - System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tsmiColors - - - System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tsmiColorWhite - - - System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tsmiColorBlack - - - System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tsmiColorBlue - - - System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tsmiColorGreen - - - System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tsmiColorLightRed - - - System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tsmiColorBrown - - - System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tsmiColorPurple - - - System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tsmiColorOrange - - - System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tsmiColorYellow - - - System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tsmiColorLightGreen - - - System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tsmiColorCyan - - - System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tsmiColorLightCyan - - - System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tsmiColorLightBlue - - - System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tsmiColorPink - - - System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tsmiColorGrey - - - System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tsmiColorLightGrey - - - System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - IRCClientForm - - - ShareX.HelpersLib.BaseForm, ShareX.HelpersLib, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null - - \ No newline at end of file diff --git a/ShareX.IRCLib/IRCClient/IRCClientForm.ru.resx b/ShareX.IRCLib/IRCClient/IRCClientForm.ru.resx deleted file mode 100644 index 83318364d..000000000 --- a/ShareX.IRCLib/IRCClient/IRCClientForm.ru.resx +++ /dev/null @@ -1,213 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - ShareX - Клиент IRC - - - Отправить - - - Подключиться - - - Отправить - - - Канал/Ник: - - - Команда: - - - Написать: - - - Настройки - - - Сообщения - - - Вывод IRC - - - Черный - - - Синий - - - Коричневый - - - Голубой - - - Зеленый - - - Серый - - - Светло-синий - - - Светло-голубой - - - Светло-зеленый - - - Светло-серый - - - Светло-красный - - - Оранжевый - - - Розовый - - - Фиолетовый - - - Цвета - - - Белый - - - Жёлтый - - - Жирный - - - Курсив - - - Нормальный - - - Подчеркнутый - - \ No newline at end of file diff --git a/ShareX.IRCLib/IRCClient/IRCClientForm.tr.resx b/ShareX.IRCLib/IRCClient/IRCClientForm.tr.resx deleted file mode 100644 index 047443062..000000000 --- a/ShareX.IRCLib/IRCClient/IRCClientForm.tr.resx +++ /dev/null @@ -1,213 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - ShareX - IRC istemcisi - - - Gönder - - - Bağlan - - - Gönder - - - Kanal/Nick: - - - Komut: - - - Mesaj: - - - Mesajlar - - - IRC çıktısı - - - Kalın - - - İtalik - - - Normal - - - Altı çizgili - - - Sarı - - - Ayarlar - - - Siyah - - - Mavi - - - Kahverengi - - - Camgöbeği - - - Yeşil - - - Gri - - - Açık mavi - - - Açık camgöbeği - - - Açık yeşil - - - Açık gri - - - Açık kırmızı - - - Turuncu - - - Pembe - - - Mor - - - Renkler - - - Beyaz - - \ No newline at end of file diff --git a/ShareX.IRCLib/IRCClient/IRCClientForm.vi-VN.resx b/ShareX.IRCLib/IRCClient/IRCClientForm.vi-VN.resx deleted file mode 100644 index 581fdf3ea..000000000 --- a/ShareX.IRCLib/IRCClient/IRCClientForm.vi-VN.resx +++ /dev/null @@ -1,213 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - Kết nối - - - Gửi - - - Gửi - - - Thiết lập - - - Màu - - - Đậm - - - Gạch chân - - - In nghiêng - - - Thường - - - Vàng - - - Trắng - - - Xanh dương - - - Đen - - - Nâu - - - Xanh lục lam - - - Xám - - - Xanh lục - - - Đỏ nhạt - - - Xám nhạt - - - Xanh lục nhạt - - - Xanh lam lục nhạt - - - Xanh dương nhạt - - - Tin nhắn: - - - Tin nhắn: - - - Cam - - - Hồng - - - Tím - - - ShareX - Trình IRC - - - Lệnh: - - - Kênh/Nick: - - - Đầu ra IRC - - \ No newline at end of file diff --git a/ShareX.IRCLib/IRCClient/TabInfo.cs b/ShareX.IRCLib/IRCClient/TabInfo.cs deleted file mode 100644 index 07e0c8795..000000000 --- a/ShareX.IRCLib/IRCClient/TabInfo.cs +++ /dev/null @@ -1,57 +0,0 @@ -#region License Information (GPL v3) - -/* - ShareX - A program that allows you to take screenshots and share any file type - Copyright (c) 2007-2016 ShareX Team - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License - as published by the Free Software Foundation; either version 2 - of the License, or (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - - Optionally you can also view the license at . -*/ - -#endregion License Information (GPL v3) - -using System.Drawing; -using System.Windows.Forms; - -namespace ShareX.IRCLib -{ - internal class TabInfo - { - public string Name { get; private set; } - public TabPage Tab { get; private set; } - public TextBox TextBox { get; private set; } - - public TabInfo(string name) - { - Name = name; - Tab = new TabPage(Name) - { - BackColor = Color.White, - Tag = this - }; - TextBox = new TextBox() - { - BackColor = Color.White, - Dock = DockStyle.Fill, - Multiline = true, - ReadOnly = true, - ScrollBars = ScrollBars.Both, - WordWrap = false - }; - Tab.Controls.Add(TextBox); - } - } -} \ No newline at end of file diff --git a/ShareX.IRCLib/IRCClient/TabManager.cs b/ShareX.IRCLib/IRCClient/TabManager.cs deleted file mode 100644 index 0b93d44c0..000000000 --- a/ShareX.IRCLib/IRCClient/TabManager.cs +++ /dev/null @@ -1,119 +0,0 @@ -#region License Information (GPL v3) - -/* - ShareX - A program that allows you to take screenshots and share any file type - Copyright (c) 2007-2016 ShareX Team - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License - as published by the Free Software Foundation; either version 2 - of the License, or (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - - Optionally you can also view the license at . -*/ - -#endregion License Information (GPL v3) - -using System; -using System.Collections.Generic; -using System.Linq; -using System.Windows.Forms; - -namespace ShareX.IRCLib -{ - internal class TabManager - { - public List Tabs { get; private set; } - - public TabInfo ActiveTab - { - get - { - TabPage tabPage = tc.SelectedTab; - - if (tabPage != null) - { - TabInfo tabInfo = tabPage.Tag as TabInfo; - - if (tabInfo != null) - { - return tabInfo; - } - } - - return null; - } - } - - private TabControl tc; - - public TabManager(TabControl tabControl) - { - tc = tabControl; - Tabs = new List(); - tc.MouseClick += tc_MouseClick; - } - - private void tc_MouseClick(object sender, MouseEventArgs e) - { - if (e.Button == MouseButtons.Middle) - { - for (int i = 0; i < tc.TabCount; ++i) - { - if (tc.GetTabRect(i).Contains(e.Location)) - { - TabPage tabPage = tc.TabPages[i]; - - if (tabPage != null) - { - TabInfo tabInfo = tabPage.Tag as TabInfo; - - if (tabInfo != null) - { - tc.TabPages.Remove(tabPage); - Tabs.Remove(tabInfo); - } - } - - return; - } - } - } - } - - public void AddMessage(string channel, string message) - { - TabInfo tabInfo = AddChannel(channel); - tabInfo.TextBox.AppendText($"{DateTime.Now:yyyy-MM-dd HH:mm:ss} - {message}\r\n"); - } - - public TabInfo AddChannel(string channel) - { - TabInfo tabInfo = Tabs.FirstOrDefault(x => x.Name.Equals(channel, StringComparison.InvariantCultureIgnoreCase)); - - if (tabInfo == null) - { - tabInfo = new TabInfo(channel); - Tabs.Add(tabInfo); - Tabs.Sort((x, y) => string.Compare(x.Name, y.Name, StringComparison.InvariantCultureIgnoreCase)); - tc.SuspendLayout(); - TabPage selected = tc.TabPages.Count > 0 ? tc.SelectedTab : null; - tc.TabPages.Clear(); - tc.TabPages.AddRange(Tabs.Select(x => x.Tab).ToArray()); - if (selected != null) tc.SelectedTab = selected; - tc.ResumeLayout(); - } - - return tabInfo; - } - } -} \ No newline at end of file diff --git a/ShareX.IRCLib/IRCInfo.cs b/ShareX.IRCLib/IRCInfo.cs deleted file mode 100644 index a82ec1509..000000000 --- a/ShareX.IRCLib/IRCInfo.cs +++ /dev/null @@ -1,120 +0,0 @@ -#region License Information (GPL v3) - -/* - ShareX - A program that allows you to take screenshots and share any file type - Copyright (c) 2007-2016 ShareX Team - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License - as published by the Free Software Foundation; either version 2 - of the License, or (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - - Optionally you can also view the license at . -*/ - -#endregion License Information (GPL v3) - -using ShareX.HelpersLib; -using System.Collections.Generic; -using System.ComponentModel; -using System.Drawing.Design; - -namespace ShareX.IRCLib -{ - public class IRCInfo : SettingsBase - { - [Category("\t\tServer info"), Description("IRC server address. Example: chat.freenode.net"), DefaultValue("chat.freenode.net")] - public string Server { get; set; } = "chat.freenode.net"; - - [Category("\t\tServer info"), Description("IRC server port. Default: 6667. Default SSL: 6697"), DefaultValue(IRC.DefaultPort)] - public int Port { get; set; } = IRC.DefaultPort; - - [Category("\t\tServer info"), Description("Will use SSL connection. You must use correct SSL port of the IRC server."), DefaultValue(false)] - public bool UseSSL { get; set; } = false; - - [Category("\t\tServer info"), Description("IRC server password. Can be used to identify in some servers."), PasswordPropertyText(true)] - public string Password { get; set; } - - [Category("\tUser info"), Description("Nickname.")] - public string Nickname { get; set; } - - [Category("\tUser info"), Description("Alternative nickname in case nickname is already in use. If it is empty then _ character will be added to the end of nickname.")] - public string Nickname2 { get; set; } - - [Category("\tUser info"), Description("Username. This info is visible to everyone in the WHOIS result."), DefaultValue("username")] - public string Username { get; set; } = "username"; - - [Category("\tUser info"), Description("Realname. This info is visible to everyone in WHOIS result."), DefaultValue("realname")] - public string Realname { get; set; } = "realname"; - - [Category("\tUser info"), Description("IRC invisible mode."), DefaultValue(true)] - public bool Invisible { get; set; } = true; - - [Category("Options"), Description("When disconnected from server auto reconnect."), DefaultValue(true)] - public bool AutoReconnect { get; set; } = true; - - [Category("Options"), Description("Wait specific milliseconds before reconnecting."), DefaultValue(5000)] - public int AutoReconnectDelay { get; set; } = 5000; - - [Category("Options"), Description("Auto rejoin when got kicked out from the channel."), DefaultValue(false)] - public bool AutoRejoinOnKick { get; set; } - - [Category("Options"), Description("Message to show others when you disconnect from the server."), DefaultValue("Leaving")] - public string QuitReason { get; set; } = "Leaving"; - - [Category("Options"), Description("Don't show 'Message of the day' texts in output."), DefaultValue(false)] - public bool SuppressMOTD { get; set; } = false; - - [Category("Options"), Description("Don't show 'PING' and 'PONG' texts in output."), DefaultValue(false)] - public bool SuppressPing { get; set; } = false; - - [Category("Options"), Description("When connected these commands will automatically execute."), - Editor("System.Windows.Forms.Design.StringCollectionEditor,System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a", typeof(UITypeEditor))] - public List ConnectCommands { get; set; } = new List(); - - [Category("Options"), Description("When connected automatically join these channels."), - TypeConverter(typeof(StringCollectionToStringTypeConverter)), - Editor("System.Windows.Forms.Design.StringCollectionEditor,System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a", typeof(UITypeEditor))] - public List AutoJoinChannels { get; set; } = new List(); - - [Category("Options"), Description("Wait for identify confirmation before auto join channels. Currently only works in Freenode server because each server sends different response after identify."), DefaultValue(false)] - public bool AutoJoinWaitIdentify { get; set; } - - [Category("Options"), Description("Enable/Disable auto response system which using AutoResponseList."), DefaultValue(false)] - public bool AutoResponse { get; set; } - - [Category("Options"), Description("When specific message written in channel automatically respond with your message.")] - public List AutoResponseList { get; set; } = new List(); - - [Category("Options"), Description("After successful auto response match how many milliseconds to wait for next auto response. Delay independant per response."), DefaultValue(10000)] - public int AutoResponseDelay { get; set; } = 10000; - - public string GetAutoResponses() - { - List messages = new List(); - - foreach (AutoResponseInfo autoResponseInfo in AutoResponseList) - { - if (autoResponseInfo.Messages.Count > 1) - { - messages.Add($"[{string.Join(", ", autoResponseInfo.Messages)}]"); - } - else if (autoResponseInfo.Messages.Count == 1) - { - messages.Add(autoResponseInfo.Messages[0]); - } - } - - return string.Join(", ", messages); - } - } -} \ No newline at end of file diff --git a/ShareX.IRCLib/IRCText.cs b/ShareX.IRCLib/IRCText.cs deleted file mode 100644 index 780e0b9ea..000000000 --- a/ShareX.IRCLib/IRCText.cs +++ /dev/null @@ -1,42 +0,0 @@ -#region License Information (GPL v3) - -/* - ShareX - A program that allows you to take screenshots and share any file type - Copyright (c) 2007-2016 ShareX Team - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License - as published by the Free Software Foundation; either version 2 - of the License, or (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - - Optionally you can also view the license at . -*/ - -#endregion License Information (GPL v3) - -namespace ShareX.IRCLib -{ - public static class IRCText - { - public const string Bold = "\x02"; - - public const string Italic = "\x1D"; - - public const string Underline = "\x1F"; - - public const string Reset = "\x0F"; - - public static string Color(IRCColors foregroundColor) => $"\x03{(int)foregroundColor:00}"; - - public static string Color(IRCColors foregroundColor, IRCColors backgroundColor) => $"\x03{(int)foregroundColor:00},{(int)backgroundColor:00}"; - } -} \ No newline at end of file diff --git a/ShareX.IRCLib/MessageInfo.cs b/ShareX.IRCLib/MessageInfo.cs deleted file mode 100644 index 598965bba..000000000 --- a/ShareX.IRCLib/MessageInfo.cs +++ /dev/null @@ -1,170 +0,0 @@ -#region License Information (GPL v3) - -/* - ShareX - A program that allows you to take screenshots and share any file type - Copyright (c) 2007-2016 ShareX Team - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License - as published by the Free Software Foundation; either version 2 - of the License, or (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - - Optionally you can also view the license at . -*/ - -#endregion License Information (GPL v3) - -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace ShareX.IRCLib -{ - public class MessageInfo - { - public string Content { get; private set; } - public UserInfo User { get; private set; } - public string Command { get; private set; } - public List Parameters { get; private set; } - public string Message { get; private set; } - - public MessageInfo(string content) - { - Content = content; - User = new UserInfo(); - Parameters = new List(); - } - - public static MessageInfo Parse(string content) - { - MessageInfo messageInfo = new MessageInfo(content); - - int index; - string nickname = ParseSection(content, out index); - - // Is it not my message? - if (nickname.StartsWith(":")) - { - nickname = nickname.Substring(1); - int usernameIndex = nickname.IndexOf("!", StringComparison.Ordinal); - - // Is it not server? - if (usernameIndex > -1) - { - //nickname!~username@host - messageInfo.User.UserType = IRCUserType.User; - messageInfo.User.Nickname = nickname.Remove(usernameIndex); - - nickname = nickname.Substring(usernameIndex + 1); - - if (nickname[0] == '~') // Remove Ident character - { - nickname = nickname.Substring(1); - } - - int hostIndex = nickname.IndexOf("@", StringComparison.Ordinal); - messageInfo.User.Username = nickname.Remove(hostIndex); - messageInfo.User.Host = nickname.Substring(hostIndex + 1); - } - else - { - //irc.freenode.net - messageInfo.User.UserType = IRCUserType.Server; - messageInfo.User.Host = nickname; - } - - content = content.Substring(index + 1); - messageInfo.Command = ParseSection(content, out index); - } - else - { - // It is my command - messageInfo.User.UserType = IRCUserType.Me; - messageInfo.Command = nickname; - } - - while (index > -1) - { - content = content.Substring(index + 1); - string check = ParseSection(content, out index); - - // Is it parameter? - if (!check.StartsWith(":")) - { - messageInfo.Parameters.Add(check); - } - else - { - // It is message - messageInfo.Message = content.Substring(1); - break; - } - } - - return messageInfo; - } - - private static string ParseSection(string message, out int index) - { - index = message.IndexOf(' '); - - if (index > -1) - { - return message.Remove(index); - } - - return message; - } - - public bool CheckCommand(params string[] commands) - { - return commands.Any(x => x.Equals(Command, StringComparison.InvariantCultureIgnoreCase)); - } - - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - sb.AppendFormat("Type: {0}, ", User.UserType); - - switch (User.UserType) - { - case IRCUserType.User: - sb.AppendFormat("Nickname: {0}, Username: {1}, Host: {2}, ", User.Nickname, User.Username, User.Host); - break; - case IRCUserType.Server: - sb.AppendFormat("Host: {0}, ", User.Host); - break; - } - - if (!string.IsNullOrEmpty(Command)) - { - sb.AppendFormat("Command: {0}, ", Command); - } - - foreach (string parameter in Parameters) - { - if (!string.IsNullOrEmpty(parameter)) - { - sb.AppendFormat("Parameter: {0}, ", parameter); - } - } - - if (!string.IsNullOrEmpty(Message)) - { - sb.AppendFormat("Message: {0}", Message); - } - - return sb.ToString(); - } - } -} \ No newline at end of file diff --git a/ShareX.IRCLib/Properties/AssemblyInfo.cs b/ShareX.IRCLib/Properties/AssemblyInfo.cs deleted file mode 100644 index dc04d4807..000000000 --- a/ShareX.IRCLib/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,35 +0,0 @@ -using System.Reflection; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("ShareX IRCLib")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("ShareX Team")] -[assembly: AssemblyProduct("ShareX")] -[assembly: AssemblyCopyright("Copyright (c) 2007-2016 ShareX Team")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("ef7fcc3f-b776-4a5e-bddc-32329ab11a58")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] \ No newline at end of file diff --git a/ShareX.IRCLib/Properties/Resources.Designer.cs b/ShareX.IRCLib/Properties/Resources.Designer.cs deleted file mode 100644 index 5ddc7d6d6..000000000 --- a/ShareX.IRCLib/Properties/Resources.Designer.cs +++ /dev/null @@ -1,81 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// Runtime Version:4.0.30319.42000 -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace ShareX.IRCLib.Properties { - using System; - - - /// - /// A strongly-typed resource class, for looking up localized strings, etc. - /// - // This class was auto-generated by the StronglyTypedResourceBuilder - // class via a tool like ResGen or Visual Studio. - // To add or remove a member, edit your .ResX file then rerun ResGen - // with the /str option, or rebuild your VS project. - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - internal class Resources { - - private static global::System.Resources.ResourceManager resourceMan; - - private static global::System.Globalization.CultureInfo resourceCulture; - - [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] - internal Resources() { - } - - /// - /// Returns the cached ResourceManager instance used by this class. - /// - [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Resources.ResourceManager ResourceManager { - get { - if (object.ReferenceEquals(resourceMan, null)) { - global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("ShareX.IRCLib.Properties.Resources", typeof(Resources).Assembly); - resourceMan = temp; - } - return resourceMan; - } - } - - /// - /// Overrides the current thread's CurrentUICulture property for all - /// resource lookups using this strongly typed resource class. - /// - [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Globalization.CultureInfo Culture { - get { - return resourceCulture; - } - set { - resourceCulture = value; - } - } - - /// - /// Looks up a localized string similar to Disconnect. - /// - internal static string IRCClientForm_Connect_Disconnect { - get { - return ResourceManager.GetString("IRCClientForm_Connect_Disconnect", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Connect. - /// - internal static string IRCClientForm_Disconnect_Connect { - get { - return ResourceManager.GetString("IRCClientForm_Disconnect_Connect", resourceCulture); - } - } - } -} diff --git a/ShareX.IRCLib/Properties/Resources.de.resx b/ShareX.IRCLib/Properties/Resources.de.resx deleted file mode 100644 index 431ed3317..000000000 --- a/ShareX.IRCLib/Properties/Resources.de.resx +++ /dev/null @@ -1,126 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - Trennen - - - Verbinden - - \ No newline at end of file diff --git a/ShareX.IRCLib/Properties/Resources.fr.resx b/ShareX.IRCLib/Properties/Resources.fr.resx deleted file mode 100644 index 546ab27aa..000000000 --- a/ShareX.IRCLib/Properties/Resources.fr.resx +++ /dev/null @@ -1,126 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - Se déconnecter - - - Se connecter - - \ No newline at end of file diff --git a/ShareX.IRCLib/Properties/Resources.nl-NL.resx b/ShareX.IRCLib/Properties/Resources.nl-NL.resx deleted file mode 100644 index bfb7cb526..000000000 --- a/ShareX.IRCLib/Properties/Resources.nl-NL.resx +++ /dev/null @@ -1,126 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - Verbreek - - - Verbind - - \ No newline at end of file diff --git a/ShareX.IRCLib/Properties/Resources.pt-BR.resx b/ShareX.IRCLib/Properties/Resources.pt-BR.resx deleted file mode 100644 index 715cd11b3..000000000 --- a/ShareX.IRCLib/Properties/Resources.pt-BR.resx +++ /dev/null @@ -1,126 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - Desconectar - - - Conectar - - \ No newline at end of file diff --git a/ShareX.IRCLib/Properties/Resources.resx b/ShareX.IRCLib/Properties/Resources.resx deleted file mode 100644 index 886d02369..000000000 --- a/ShareX.IRCLib/Properties/Resources.resx +++ /dev/null @@ -1,107 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 1.3 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.3500.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.3500.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - Disconnect - - - Connect - - \ No newline at end of file diff --git a/ShareX.IRCLib/Properties/Resources.ru.resx b/ShareX.IRCLib/Properties/Resources.ru.resx deleted file mode 100644 index d1b7d43d9..000000000 --- a/ShareX.IRCLib/Properties/Resources.ru.resx +++ /dev/null @@ -1,126 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - Отключиться - - - Подключиться - - \ No newline at end of file diff --git a/ShareX.IRCLib/Properties/Resources.tr.resx b/ShareX.IRCLib/Properties/Resources.tr.resx deleted file mode 100644 index ad2952d8d..000000000 --- a/ShareX.IRCLib/Properties/Resources.tr.resx +++ /dev/null @@ -1,126 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - Bağlantıyı kes - - - Bağlan - - \ No newline at end of file diff --git a/ShareX.IRCLib/Properties/Resources.vi-VN.resx b/ShareX.IRCLib/Properties/Resources.vi-VN.resx deleted file mode 100644 index 99a853587..000000000 --- a/ShareX.IRCLib/Properties/Resources.vi-VN.resx +++ /dev/null @@ -1,126 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - Ngắt kết nối - - - Kết nối - - \ No newline at end of file diff --git a/ShareX.IRCLib/ShareX.IRCLib.csproj b/ShareX.IRCLib/ShareX.IRCLib.csproj deleted file mode 100644 index 30781bf17..000000000 --- a/ShareX.IRCLib/ShareX.IRCLib.csproj +++ /dev/null @@ -1,128 +0,0 @@ - - - - - Debug - AnyCPU - {EF7FCC3F-B776-4A5E-BDDC-32329AB11A58} - Library - Properties - ShareX.IRCLib - ShareX.IRCLib - v4.0 - 512 - - - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - Off - - - none - true - bin\Release\ - TRACE - prompt - 4 - Off - - - bin\Steam\ - TRACE - true - AnyCPU - Off - prompt - MinimumRecommendedRules.ruleset - - - - - - - - - - - - - - - - - - Form - - - IRCClientForm.cs - - - - - - - - - True - True - Resources.resx - - - - - - IRCClientForm.cs - - - IRCClientForm.cs - - - IRCClientForm.cs - - - IRCClientForm.cs - - - IRCClientForm.cs - - - IRCClientForm.cs - - - IRCClientForm.cs - - - IRCClientForm.cs - - - - - - - ResXFileCodeGenerator - Resources.Designer.cs - - - - - - - - {327750e1-9fb7-4cc3-8aea-9bc42180cad3} - ShareX.HelpersLib - - - - - \ No newline at end of file diff --git a/ShareX.IRCLib/ShareX.IRCLib.csproj.DotSettings b/ShareX.IRCLib/ShareX.IRCLib.csproj.DotSettings deleted file mode 100644 index a99420329..000000000 --- a/ShareX.IRCLib/ShareX.IRCLib.csproj.DotSettings +++ /dev/null @@ -1,2 +0,0 @@ - - Pessimistic \ No newline at end of file diff --git a/ShareX.IRCLib/UserInfo.cs b/ShareX.IRCLib/UserInfo.cs deleted file mode 100644 index f2694e66d..000000000 --- a/ShareX.IRCLib/UserInfo.cs +++ /dev/null @@ -1,57 +0,0 @@ -#region License Information (GPL v3) - -/* - ShareX - A program that allows you to take screenshots and share any file type - Copyright (c) 2007-2016 ShareX Team - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License - as published by the Free Software Foundation; either version 2 - of the License, or (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - - Optionally you can also view the license at . -*/ - -#endregion License Information (GPL v3) - -using System; -using System.Collections.Generic; - -namespace ShareX.IRCLib -{ - public class UserInfo - { - public IRCUserType UserType { get; set; } - - public string Nickname { get; set; } - public string Username { get; set; } - public string Realname { get; set; } - public string Host { get; set; } - public string Identity { get; set; } - public List Channels { get; set; } - public string Server { get; set; } - public bool SecureConnection { get; set; } - public TimeSpan IdleTime { get; set; } - public DateTime SignOnDate { get; set; } - - public UserInfo() - { - Channels = new List(); - } - - public override string ToString() - { - string channels = string.Join(" ", Channels); - return $"Nickname: {Nickname}, Username: {Username}, Realname: {Realname}, Host: {Host}, Identity: {Identity}, Channels: {channels}"; - } - } -} \ No newline at end of file diff --git a/ShareX.sln b/ShareX.sln index 91dea3fac..4f50411ef 100644 --- a/ShareX.sln +++ b/ShareX.sln @@ -1,7 +1,7 @@  Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 14 -VisualStudioVersion = 14.0.23107.0 +VisualStudioVersion = 14.0.24720.0 MinimumVisualStudioVersion = 10.0.40219.1 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ShareX", "ShareX\ShareX.csproj", "{C5AE4585-E9EC-4FA3-B75A-E1210635ACB6}" EndProject @@ -30,8 +30,6 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ShareX.Setup", "ShareX.Setu EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ShareX.MediaLib", "ShareX.MediaLib\ShareX.MediaLib.csproj", "{1A190E53-1419-4CC2-B0E5-3BC7EA861C8B}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ShareX.IRCLib", "ShareX.IRCLib\ShareX.IRCLib.csproj", "{EF7FCC3F-B776-4A5E-BDDC-32329AB11A58}" -EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -96,12 +94,6 @@ Global {1A190E53-1419-4CC2-B0E5-3BC7EA861C8B}.Release|Any CPU.Build.0 = Release|Any CPU {1A190E53-1419-4CC2-B0E5-3BC7EA861C8B}.Steam|Any CPU.ActiveCfg = Steam|Any CPU {1A190E53-1419-4CC2-B0E5-3BC7EA861C8B}.Steam|Any CPU.Build.0 = Steam|Any CPU - {EF7FCC3F-B776-4A5E-BDDC-32329AB11A58}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {EF7FCC3F-B776-4A5E-BDDC-32329AB11A58}.Debug|Any CPU.Build.0 = Debug|Any CPU - {EF7FCC3F-B776-4A5E-BDDC-32329AB11A58}.Release|Any CPU.ActiveCfg = Release|Any CPU - {EF7FCC3F-B776-4A5E-BDDC-32329AB11A58}.Release|Any CPU.Build.0 = Release|Any CPU - {EF7FCC3F-B776-4A5E-BDDC-32329AB11A58}.Steam|Any CPU.ActiveCfg = Steam|Any CPU - {EF7FCC3F-B776-4A5E-BDDC-32329AB11A58}.Steam|Any CPU.Build.0 = Steam|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/ShareX/Enums.cs b/ShareX/Enums.cs index a9d520862..6b7192c1c 100644 --- a/ShareX/Enums.cs +++ b/ShareX/Enums.cs @@ -180,7 +180,6 @@ public enum HotkeyType // Localized + Category ImageEditor, ImageEffects, HashCheck, - IRCClient, DNSChanger, QRCode, Ruler, diff --git a/ShareX/Forms/MainForm.Designer.cs b/ShareX/Forms/MainForm.Designer.cs index 710d1c83c..a6cc90088 100644 --- a/ShareX/Forms/MainForm.Designer.cs +++ b/ShareX/Forms/MainForm.Designer.cs @@ -72,7 +72,6 @@ private void InitializeComponent() this.tsmiImageEditor = new System.Windows.Forms.ToolStripMenuItem(); this.tsmiImageEffects = new System.Windows.Forms.ToolStripMenuItem(); this.tsmiHashCheck = new System.Windows.Forms.ToolStripMenuItem(); - this.tsmiIRCClient = new System.Windows.Forms.ToolStripMenuItem(); this.tsmiDNSChanger = new System.Windows.Forms.ToolStripMenuItem(); this.tsmiQRCode = new System.Windows.Forms.ToolStripMenuItem(); this.tsmiRuler = new System.Windows.Forms.ToolStripMenuItem(); @@ -192,7 +191,6 @@ private void InitializeComponent() this.tsmiTrayImageEditor = new System.Windows.Forms.ToolStripMenuItem(); this.tsmiTrayImageEffects = new System.Windows.Forms.ToolStripMenuItem(); this.tsmiTrayHashCheck = new System.Windows.Forms.ToolStripMenuItem(); - this.tsmiTrayIRCClient = new System.Windows.Forms.ToolStripMenuItem(); this.tsmiTrayDNSChanger = new System.Windows.Forms.ToolStripMenuItem(); this.tsmiTrayQRCode = new System.Windows.Forms.ToolStripMenuItem(); this.tsmiTrayRuler = new System.Windows.Forms.ToolStripMenuItem(); @@ -557,7 +555,6 @@ private void InitializeComponent() this.tsmiImageEditor, this.tsmiImageEffects, this.tsmiHashCheck, - this.tsmiIRCClient, this.tsmiDNSChanger, this.tsmiQRCode, this.tsmiRuler, @@ -607,13 +604,6 @@ private void InitializeComponent() resources.ApplyResources(this.tsmiHashCheck, "tsmiHashCheck"); this.tsmiHashCheck.Click += new System.EventHandler(this.tsmiHashCheck_Click); // - // tsmiIRCClient - // - this.tsmiIRCClient.Image = global::ShareX.Properties.Resources.balloon_white; - this.tsmiIRCClient.Name = "tsmiIRCClient"; - resources.ApplyResources(this.tsmiIRCClient, "tsmiIRCClient"); - this.tsmiIRCClient.Click += new System.EventHandler(this.tsmiIRCClient_Click); - // // tsmiDNSChanger // this.tsmiDNSChanger.Image = global::ShareX.Properties.Resources.network_ip; @@ -1465,7 +1455,6 @@ private void InitializeComponent() this.tsmiTrayImageEditor, this.tsmiTrayImageEffects, this.tsmiTrayHashCheck, - this.tsmiTrayIRCClient, this.tsmiTrayDNSChanger, this.tsmiTrayQRCode, this.tsmiTrayRuler, @@ -1515,13 +1504,6 @@ private void InitializeComponent() resources.ApplyResources(this.tsmiTrayHashCheck, "tsmiTrayHashCheck"); this.tsmiTrayHashCheck.Click += new System.EventHandler(this.tsmiHashCheck_Click); // - // tsmiTrayIRCClient - // - this.tsmiTrayIRCClient.Image = global::ShareX.Properties.Resources.balloon_white; - this.tsmiTrayIRCClient.Name = "tsmiTrayIRCClient"; - resources.ApplyResources(this.tsmiTrayIRCClient, "tsmiTrayIRCClient"); - this.tsmiTrayIRCClient.Click += new System.EventHandler(this.tsmiIRCClient_Click); - // // tsmiTrayDNSChanger // this.tsmiTrayDNSChanger.Image = global::ShareX.Properties.Resources.network_ip; @@ -2044,8 +2026,6 @@ private void InitializeComponent() private System.Windows.Forms.ToolStripMenuItem tsmiVideoThumbnailer; private System.Windows.Forms.ToolStripMenuItem tsmiTrayVideoThumbnailer; private System.Windows.Forms.Timer timerTraySingleClick; - private System.Windows.Forms.ToolStripMenuItem tsmiIRCClient; - private System.Windows.Forms.ToolStripMenuItem tsmiTrayIRCClient; private System.Windows.Forms.ToolStripMenuItem tsmiScrollingCapture; private System.Windows.Forms.ToolStripMenuItem tsmiTrayScrollingCapture; private System.Windows.Forms.ToolStripMenuItem tsmiImageCombiner; diff --git a/ShareX/Forms/MainForm.cs b/ShareX/Forms/MainForm.cs index ebdee2fef..f4a0108ff 100644 --- a/ShareX/Forms/MainForm.cs +++ b/ShareX/Forms/MainForm.cs @@ -1050,11 +1050,6 @@ private void tsmiFTPClient_Click(object sender, EventArgs e) TaskHelpers.OpenFTPClient(); } - private void tsmiIRCClient_Click(object sender, EventArgs e) - { - TaskHelpers.OpenIRCClient(); - } - private void tsmiTweetMessage_Click(object sender, EventArgs e) { TaskHelpers.TweetMessage(); @@ -1735,9 +1730,6 @@ private void ExecuteJob(TaskSettings taskSettings, HotkeyType job) case HotkeyType.HashCheck: TaskHelpers.OpenHashCheck(); break; - case HotkeyType.IRCClient: - TaskHelpers.OpenIRCClient(safeTaskSettings); - break; case HotkeyType.DNSChanger: TaskHelpers.OpenDNSChanger(); break; diff --git a/ShareX/Forms/MainForm.resx b/ShareX/Forms/MainForm.resx index 381446067..30cb377e7 100644 --- a/ShareX/Forms/MainForm.resx +++ b/ShareX/Forms/MainForm.resx @@ -510,12 +510,6 @@ Hash check... - - 183, 22 - - - IRC client... - 183, 22 @@ -1305,12 +1299,6 @@ Hash check... - - 183, 22 - - - IRC client... - 183, 22 @@ -1561,7 +1549,7 @@ Exit - 189, 462 + 189, 484 cmsTray @@ -1809,12 +1797,6 @@ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - tsmiIRCClient - - - System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - tsmiDNSChanger @@ -2517,12 +2499,6 @@ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - tsmiTrayIRCClient - - - System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - tsmiTrayDNSChanger diff --git a/ShareX/Forms/TaskSettingsForm.cs b/ShareX/Forms/TaskSettingsForm.cs index 722b0eb31..e9d91e941 100644 --- a/ShareX/Forms/TaskSettingsForm.cs +++ b/ShareX/Forms/TaskSettingsForm.cs @@ -284,9 +284,6 @@ public TaskSettingsForm(TaskSettings hotkeySetting, bool isDefault = false) // Tools / Video thumbnailer pgVideoThumbnailer.SelectedObject = TaskSettings.ToolsSettings.VideoThumbnailOptions; - // Tools / IRC client - pgIRCClient.SelectedObject = TaskSettings.ToolsSettings.IRCSettings; - // Advanced pgTaskSettings.SelectedObject = TaskSettings.AdvancedSettings; diff --git a/ShareX/ShareX.csproj b/ShareX/ShareX.csproj index af16219f7..cdf610f11 100644 --- a/ShareX/ShareX.csproj +++ b/ShareX/ShareX.csproj @@ -1059,10 +1059,6 @@ {750c6f46-2c5a-4488-81d3-3b35ca50f3ee} ShareX.IndexerLib - - {ef7fcc3f-b776-4a5e-bddc-32329ab11a58} - ShareX.IRCLib - {1a190e53-1419-4cc2-b0e5-3bc7ea861c8b} ShareX.MediaLib diff --git a/ShareX/TaskHelpers.cs b/ShareX/TaskHelpers.cs index 86f64750a..12581e54f 100644 --- a/ShareX/TaskHelpers.cs +++ b/ShareX/TaskHelpers.cs @@ -25,7 +25,6 @@ using ShareX.HelpersLib; using ShareX.ImageEffectsLib; -using ShareX.IRCLib; using ShareX.MediaLib; using ShareX.Properties; using ShareX.ScreenCaptureLib; @@ -701,13 +700,6 @@ public static void OpenFTPClient() MessageBox.Show(Resources.TaskHelpers_OpenFTPClient_Unable_to_find_valid_FTP_account_, "ShareX", MessageBoxButtons.OK, MessageBoxIcon.Information); } - public static void OpenIRCClient(TaskSettings taskSettings = null) - { - if (taskSettings == null) taskSettings = TaskSettings.GetDefaultTaskSettings(); - - new IRCClientForm(taskSettings.ToolsSettingsReference.IRCSettings).Show(); - } - public static void TweetMessage() { if (Program.UploadersConfig != null && Program.UploadersConfig.TwitterOAuthInfoList != null) diff --git a/ShareX/TaskSettings.cs b/ShareX/TaskSettings.cs index 87ae20408..900f93e30 100644 --- a/ShareX/TaskSettings.cs +++ b/ShareX/TaskSettings.cs @@ -27,7 +27,6 @@ using ShareX.HelpersLib; using ShareX.ImageEffectsLib; using ShareX.IndexerLib; -using ShareX.IRCLib; using ShareX.MediaLib; using ShareX.ScreenCaptureLib; using ShareX.UploadersLib; @@ -367,7 +366,6 @@ public class TaskSettingsTools public IndexerSettings IndexerSettings = new IndexerSettings(); public ImageCombinerOptions ImageCombinerOptions = new ImageCombinerOptions(); public VideoThumbnailOptions VideoThumbnailOptions = new VideoThumbnailOptions(); - public IRCInfo IRCSettings = new IRCInfo(); } public class TaskSettingsAdvanced