示例#1
0
 internal void TriggerStateChanged(ICQClient sender, ICQClientState oldState, Exception error)
 {
     if (this.StateChanged != null)
     {
         var eventArgs = new ICQClientStateEventArgs(oldState, sender.State, error);
         this.StateChanged(sender, eventArgs);
     }
 }
示例#2
0
 internal ICQClientStateEventArgs(ICQClientState old, ICQClientState news, Exception error)
 {
     OldState = old;
     NewState = news;
     Error = error;
 }
示例#3
0
        private void changeState(ICQClientState newState, Exception error = null)
        {
            if (newState == ICQClientState.Idle && this.Connection.IsConnected)
                this.Connection.Disconnect(0);

            if (this.State != newState)
            {

                var oldState = this.State;
                this.State = newState;
                this.Events.TriggerStateChanged(this, oldState, error);
            }
        }