protected internal virtual void OnModeChanged(ModeChangeEventArgs e) { if (ModeChanged != null) { ModeChanged(this, e); } }
private void Client_ModeChanged(object sender, ModeChangeEventArgs e) { IrcClient client = (IrcClient)sender; if (!e.Change.Contains(" ")) { return; } if (!client.Channels.Any(c => c.Name == e.Target)) { return; } var channel = client.Channels[e.Target]; string nick = e.Change.Split(' ')[1]; if (!channel.Users.Contains(nick)) { return; } if (OnModeChange != null) { OnModeChange(e.User.Nick, e.Change, TokenManager.GetToken(new MessageSource(client, channel.Name))); } }
protected internal virtual void OnModeChanged(ModeChangeEventArgs e) { try { ModeChanged(this, e); } catch (Exception err) { UnhandledException(this, new UnhandledExceptionEventArgs(err, false)); } }
private void OnModeChanged(object sender, ModeChangeEventArgs e) { string outMode = e.Mode == Mode.Edit ? " Edit" : "View"; bool editMode = e.Mode == Mode.Edit; if (editMode) { if (e.Beginning != null && e.End != null) { utilityScreen.OpenDialog(UtilityMode.DataManipulation, e.Beginning, e.End); } else { utilityScreen.OpenDialog(UtilityMode.DataManipulation, e.Beginning, e.End); } } }
public void OnModeChangeEvent(ModeChangeEventArgs args) { ModeChange?.Invoke(this, args); }
void toolspanel_ModeChange(object sender, ModeChangeEventArgs e) { Main.setMode(e.getMode()); }
protected internal virtual void OnModeChanged(ModeChangeEventArgs e) { if(ModeChanged != null) ModeChanged(this, e); }
public static void HandleMode(IrcClient client, IrcMessage message) { string target, mode = null; int i = 2; if (message.Command == "MODE") { target = message.Parameters[0]; mode = message.Parameters[1]; } else { target = message.Parameters[1]; mode = message.Parameters[2]; i++; } var eventArgs = new ModeChangeEventArgs(target, new IrcUser(message.Prefix), mode); client.OnModeChanged(eventArgs); // Handle change bool add = mode[0] == '+'; mode = mode.Substring(1); if (target.StartsWith("#")) { var channel = client.Channels[target]; foreach (char c in mode) { // TODO: Handle other types of MODEs if (channel.Mode == null) { channel.Mode = string.Empty; } if (add) { if (!channel.Mode.Contains(c)) { channel.Mode += c.ToString(); } } else { channel.Mode = channel.Mode.Replace(c.ToString(), string.Empty); } } if (message.Command == "324") { var operation = client.RequestManager.DequeueOperation("MODE " + channel.Name); operation.Callback(operation); } } else { // TODO: Handle user modes other than ourselves? foreach (char c in mode) { if (add) { if (!client.User.Mode.Contains(c)) { client.User.Mode += c; } } else { client.User.Mode = client.User.Mode.Replace(c.ToString(), string.Empty); } } } }