示例#1
0
        private void Network_OnLogin(object sender, OpenMetaverse.LoginProgressEventArgs ea)
        {
            try
            {
                if (ea.Status == LoginStatus.Success)
                {
                    loggedIn = true;
                    client.Self.RequestBalance();
                }

                if (ea.Status == LoginStatus.Failed)
                {
                    instance.EndCrashRep();
                }

                if (netcomSync != null)
                {
                    netcomSync.BeginInvoke(new OnClientLoginRaise(OnClientLoginStatus), new object[] { ea });
                }
                else
                {
                    OnClientLoginStatus(ea);
                }
            }
            catch (Exception ex)
            {
                Logger.Log("SLnetcomm (onlogin) " + ex.Message, Helpers.LogLevel.Error);
            }
        }
示例#2
0
 protected virtual void OnClientLoginStatus(OpenMetaverse.LoginProgressEventArgs e)
 {
     if (ClientLoginStatus != null)
     {
         ClientLoginStatus(this, e);
     }
 }
示例#3
0
 private void Network_OnLogin(object sender, LoginProgressEventArgs e)
 {
     if (e.Status == LoginStatus.Success)
     {
         UpdateTimer.Elapsed += new System.Timers.ElapsedEventHandler(UpdateTimer_Elapsed);
         UpdateTimer.Start();
     }
     else if (e.Status == LoginStatus.Failed)
     {
         Console.WriteLine("Login failed: " + Client.Network.LoginMessage);
         Console.ReadKey();
         this.Close();
         return;
     }
 }
        static void LoginHandler(object sender, LoginProgressEventArgs e)
        {
            Logger.Log(String.Format("Login: {0} ({1})", e.Status, e.Message), Helpers.LogLevel.Info);

            switch (e.Status)
            {
                case LoginStatus.Failed:
                    LoginEvent.Set();
                    break;
                case LoginStatus.Success:
                    LoginSuccess = true;
                    LoginEvent.Set();
                    break;
            }
        }
示例#5
0
        /*
         * Don't need to override this since it's all ok
         * public override bool AfterAllModulesLoaded() {
         *  // make my connections for the communication events
         *  OMV.GridClient gc = m_client;
         *  gc.Network.OnSimConnected += new OMV.NetworkManager.SimConnectedCallback(Network_OnSimConnected);
         *  gc.Network.OnCurrentSimChanged += new OMV.NetworkManager.CurrentSimChangedCallback(Network_OnCurrentSimChanged);
         *  gc.Objects.OnNewPrim += new OMV.ObjectManager.NewPrimCallback(Objects_OnNewPrim);
         *  gc.Objects.OnObjectUpdated += new OMV.ObjectManager.ObjectUpdatedCallback(Objects_OnObjectUpdated);
         *  // NewAttachmentCallback
         *  gc.Objects.OnNewAvatar += new OMV.ObjectManager.NewAvatarCallback(Objects_OnNewAvatar);
         *  // AvatarSitChangedCallback
         *  // ObjectPropertiesCallback
         *  gc.Objects.OnObjectKilled += new OMV.ObjectManager.KillObjectCallback(Objects_OnObjectKilled);
         *  gc.Settings.STORE_LAND_PATCHES = true;
         *  gc.Terrain.OnLandPatch += new OMV.TerrainManager.LandPatchCallback(Terrain_OnLandPatch);
         *  gc.Parcels.OnSimParcelsDownloaded += new OMV.ParcelManager.SimParcelsDownloaded(Parcels_OnSimParcelsDownloaded);
         *
         *  return true;
         * }
         */

        public override void Network_LoginProgress(Object sender, OMV.LoginProgressEventArgs args)
        {
            switch (m_radInstance.Netcom.LoginOptions.Grid.ID)
            {
            case "secondlife":
                m_loginGrid = "SecondLife.com";
                break;

            case "secondlifebeta":
                m_loginGrid = "beta.SecondLife.com";
                break;

            default:
                Uri loginUri = new Uri(m_radInstance.Netcom.LoginOptions.Grid.LoginURI);
                // Uri loginUri = new Uri(m_radInstance.Netcom.LoginOptions.GridCustomLoginUri);
                // extract the login host name as the grid name
                m_loginGrid = loginUri.GetComponents(UriComponents.Host, UriFormat.Unescaped);
                break;
            }
            base.Network_LoginProgress(sender, args);
        }
        private void Network_OnLogin(object sender, LoginProgressEventArgs e)
        {
            if (e.Status == LoginStatus.Success)
            {
                Random rand = new Random();

                // AgentSetAppearance
                AgentSetAppearancePacket appearance = new AgentSetAppearancePacket();
                appearance.VisualParam = new AgentSetAppearancePacket.VisualParamBlock[251];
                // Setup some random appearance values
                for (int i = 0; i < 251; i++)
                {
                    appearance.VisualParam[i] = new AgentSetAppearancePacket.VisualParamBlock();
                    appearance.VisualParam[i].ParamValue = (byte)rand.Next(255);
                }
                appearance.AgentData.AgentID = Client.Self.AgentID;
                appearance.AgentData.SessionID = Client.Self.SessionID;
                appearance.AgentData.SerialNum = 1;
                appearance.AgentData.Size = new Vector3(0.45F, 0.6F, 1.831094F);
                appearance.ObjectData.TextureEntry = Utils.EmptyBytes;

                Client.Network.SendPacket(appearance);

                // Request our balance
                Client.Self.RequestBalance();

                BeginInvoke(
                    (MethodInvoker)delegate()
                    {
                        lblName.Text = Client.ToString();
                        txtFind.Enabled = cmdFind.Enabled = true;
                        txtTransfer.Enabled = cmdTransfer.Enabled = true;
                    });
            }
            else if (e.Status == LoginStatus.Failed)
            {
                BeginInvoke(
                    (MethodInvoker)delegate()
                    {
                        MessageBox.Show(this, "Error logging in: " + Client.Network.LoginMessage);
                        cmdConnect.Text = "Connect";
                        txtFirstName.Enabled = txtLastName.Enabled = txtPassword.Enabled = true;
                        txtFind.Enabled = cmdFind.Enabled = false;
                        lblName.Text = lblBalance.Text = String.Empty;
                        txtTransfer.Enabled = cmdTransfer.Enabled = false;
                    });
            }
        }
示例#7
0
        private void netcom_ClientLoginStatus(object sender, LoginProgressEventArgs e)
        {
            if (e.Status != LoginStatus.Success) return;

            RefreshControls();
        }
示例#8
0
 private void Network_OnLogin(object sender, LoginProgressEventArgs e)
 {
     if (e.Status == LoginStatus.Success)
     {
         BeginInvoke(
             (MethodInvoker)delegate()
             {
                 groupBox.Enabled = true;
             });
     }
     else if (e.Status == LoginStatus.Failed)
     {
         BeginInvoke(
             (MethodInvoker)delegate()
             {
                 MessageBox.Show(this, "Error logging in: " + Client.Network.LoginMessage);
                 cmdConnect.Text = "Connect";
                 txtFirstName.Enabled = txtLastName.Enabled = txtPassword.Enabled = true;
                 groupBox.Enabled = false;
                 lstGroups.Items.Clear();
             });
     }
 }
示例#9
0
        //
        private void Network_LoginProgress(object sender, LoginProgressEventArgs e)
        {
            if (e.Status == LoginStatus.Success)
            {
                Console.WriteLine("I'm connected to the simulator, going to greet everyone around me");

                // m_GridClient.Self.Chat("ready", 0, ChatType.Normal);
                m_GridClient.Self.Movement.Camera.Far = 64.0f;

                Console.ReadLine(); // Wait for user to press a key before exit
            }
        }
示例#10
0
        private void netcom_ClientLoginStatus(object sender, LoginProgressEventArgs e)
        {
            if (e.Status == LoginStatus.Failed)
            {
                DisplayNotificationInChat("Login error: " + e.Message, ChatBufferTextStyle.Error);
            }
            else if (e.Status == LoginStatus.Success)
            {
                DisplayNotificationInChat("Logged in as " + netcom.LoginOptions.FullName + ".", ChatBufferTextStyle.StatusDarkBlue);
                DisplayNotificationInChat("Login reply: " + e.Message, ChatBufferTextStyle.StatusDarkBlue);

                if (tabs.ContainsKey("login"))
                {
                    if (selectedTab.Name == "login")
                        SelectDefaultTab();
                    ForceCloseTab("login");
                }

                client.Self.RetrieveInstantMessages();
            }
        }
示例#11
0
        /// <summary>
        /// Initialize everything that needs to be initialized once we're logged in.
        /// </summary>
        /// <param name="login">The status of the login</param>
        /// <param name="message">Error message on failure, MOTD on success.</param>
        public void Network_OnLogin(object sender, LoginProgressEventArgs e)
        {
            var message = e.Message;
            var login = e.Status;
            if (_BotLoginParams == null)
            {
                SetLoginName(gridClient.Self.FirstName, gridClient.Self.LastName);
            }
            else
            {
                _BotLoginParams.Status = login;
            }
            if (login == LoginStatus.Success)
            {
                // Start in the inventory root folder.
                if (Inventory.Store != null)
                    CurrentDirectory = Inventory.Store.RootFolder; //.RootFolder;
                else
                {
                    Logger.Log("Cannot get Inventory.Store.RootFolder", OpenMetaverse.Helpers.LogLevel.Error);
                    CurrentDirectory = null;
                }
                OneAtATimeQueue.Enqueue(RunOnLogin);
            } // anyhitng other than success NeedRunOnLogin
            else
            {
                NeedRunOnLogin = true;
            }
            //            WriteLine("ClientManager Network_OnLogin : [" + login.ToString() + "] " + message);
            //SendNewEvent("On-Login", login, message);

            if (login == LoginStatus.Failed)
            {
                ExpectConnected = false;
                SendNetworkEvent("On-Login-Fail", login, message);
                WriteLine("Login Failed " + message + " LoginRetries: " + LoginRetries);
                if (LoginRetries <= 0)
                {
                    if (_BotLoginParams != null)
                    {
                        _BotLoginParams.LoginEvent.Set();
                    }
                    return;
                }
                LoginRetries--;
                Login(false);
            }
            else if (login == LoginStatus.Success)
            {
                if (!ClientManager.StarupLispCreatedBotClients)
                {
                    CogbotGUI.GetLoginOptionsFromRadegast(TheRadegastInstance, this);
                }
                LoginRetries = 0; // maybe LoginRetriesFresh??
                WriteLine("Logged in successfully");
                ExpectConnected = true;
                SendNetworkEvent("On-Login-Success", login, message);
                //                SendNewEvent("on-login-success",login,message);
                if (_BotLoginParams != null)
                {
                    _BotLoginParams.LoginEvent.Set();
                }
            }
            else
            {
                SendNetworkEvent("On-Login", login, message);
            }

        }
示例#12
0
        private void netcom_ClientLoginStatus(object sender, LoginProgressEventArgs e)
        {
            if (e.Status != LoginStatus.Success) return;

            try
            {
                if (e.Status == LoginStatus.Success)
                {
                    InitializeFriendsTab();
                    InitializeGroupsTab();
                    InitializeInventoryTab();
                    InitializeSearchTab();
                    //InitializeMapTab();
                    InitializeIMboxTab();

                    avname = netcom.LoginOptions.FullName;
                    notifyIcon1.Text = "METAbolt [" + avname + "]";

                    if (selectedTab.Name == "main")
                        tabs["chat"].Select();

                    //client.Groups.RequestCurrentGroups();
                    client.Self.RetrieveInstantMessages();
                }
            }
            catch (Exception ex)
            {
                Logger.Log("login (tabs console): " + ex.Message, Helpers.LogLevel.Error);
            }
        }
示例#13
0
        private void netcom_ClientLoginStatus(object sender, LoginProgressEventArgs e)
        {
            if (e.Status != LoginStatus.Success) return;

            BeginInvoke(new MethodInvoker(delegate()
            {
                if (chkVoiceEnable.Checked)
                    gateway.Start();
            }));
        }
示例#14
0
        private void Network_OnConnect(object sender, LoginProgressEventArgs e)
        {
            if (e.Status != LoginStatus.Success)
            {
                return;
            }

            List<UUID> names = new List<UUID>();

            if (FriendList.Count > 0)
            {
                FriendList.ForEach(
                    delegate(KeyValuePair<UUID, FriendInfo> kvp)
                    {
                        if (String.IsNullOrEmpty(kvp.Value.Name))
                            names.Add(kvp.Key);
                    }
                );

                Client.Avatars.RequestAvatarNames(names);
            }
        }
示例#15
0
        private void netcom_ClientLoginStatus(
            object sender,
            LoginProgressEventArgs e)
        {
            switch (e.Status)
            {
                case LoginStatus.ConnectingToLogin:
                    // Never seems to happen.  See Netcom_ClientLoggingIn
                    Talker.SayMore("Connecting to login server");
                    return;

                case LoginStatus.ConnectingToSim:
                    Talker.SayMore("Connecting to region");
                    return;

               case LoginStatus.Success:
                    LoginName = control.instance.Netcom.LoginOptions.FullName;
                    //Talker.SayMore("Logged in as " + LoginName);
                    //if (friends != null)
                    //    friends.Announce = true;
                    return;

                case LoginStatus.Failed:
                    Talker.Say(e.Message +
                        ". Press Enter twice to retry", Talk.BeepType.Bad);
                    return;

                default:
                    return;
            }
        }
示例#16
0
 private void aspectLogin(object sender, LoginProgressEventArgs e)
 {
     if (e.Status != LoginStatus.Success) return;
     ScanCogbotMenu();
 }
示例#17
0
        private void netcom_ClientLoginStatus(object sender, LoginProgressEventArgs e)
        {
            try
            {
                switch (e.Status)
                {
                    case LoginStatus.ConnectingToLogin:
                        lblLoginStatus.Text = "Connecting to login server...";
                        lblLoginStatus.ForeColor = Color.Black;
                        break;

                    case LoginStatus.ConnectingToSim:
                        lblLoginStatus.Text = "Connecting to region...";
                        lblLoginStatus.ForeColor = Color.Black;
                        break;

                    case LoginStatus.Redirecting:
                        lblLoginStatus.Text = "Redirecting...";
                        lblLoginStatus.ForeColor = Color.Black;
                        break;

                    case LoginStatus.ReadingResponse:
                        lblLoginStatus.Text = "Reading response...";
                        lblLoginStatus.ForeColor = Color.Black;
                        break;

                    case LoginStatus.Success:
                        //SetLang();

                        lblLoginStatus.Text = "Logged in as " + netcom.LoginOptions.FullName;
                        lblLoginStatus.ForeColor = Color.Blue;

                        string uname = client.Self.Name + "\\";

                        Wildcard wildcard = new Wildcard(client.Self.Name + "*", System.Text.RegularExpressions.RegexOptions.IgnoreCase);
                        List<string> torem = new List<string>();

                        foreach (string s in usernlist)
                        {
                            if(wildcard.IsMatch(s))
                            {
                                torem.Add(s);
                            }
                        }

                        foreach (string s in torem)
                        {
                            if (wildcard.IsMatch(s))
                            {
                                usernlist.Remove(s);
                            }
                        }

                        //string epwd1 = txtPassword.Text;

                        if (chkPWD.Checked)
                        {
                            string epwd = txtPassword.Text;
                            Crypto cryp = new Crypto(Crypto.SymmProvEnum.Rijndael);
                            string cpwd = cryp.Encrypt(epwd);

                            uname += cpwd;
                        }

                        usernlist.Add(uname);

                        btnLogin.Text = "Exit";
                        btnLogin.Enabled = true;

                        instance.ReBooted = false;
                        timer2.Enabled = false;
                        timer2.Stop();

                        try
                        {
                            SaveUserSettings();

                            string fname = client.Self.FirstName + "_" + client.Self.LastName;

                            if (chkCmd.Checked)
                            {
                                // create the CMD file
                                CreateCmdFile();

                                FileInfo newFileInfo = new FileInfo(Path.Combine(METAbolt.DataFolder.GetDataFolder(), fname + "_METAbolt.ini"));

                                if (!newFileInfo.Exists)
                                {
                                    string pth = Path.Combine(METAbolt.DataFolder.GetDataFolder(), fname + "_METAbolt.ini");
                                    instance.Config.CurrentConfig.Save(pth);
                                }
                            }

                            //instance.Config.ChangeConfigFile(fname);
                            this.instance.ReapplyConfig(fname);

                            if (instance.Config.CurrentConfig.AIon)
                            {
                                instance.InitAI();
                            }
                        }
                        catch (Exception ex)
                        {
                            Logger.Log("Error trying to save user settings to METAbolt.ini ", Helpers.LogLevel.Warning, ex);
                        }

                        //LoadWebPage();

                        client.Self.Movement.Camera.Far = (float)instance.Config.CurrentConfig.RadarRange;

                        break;

                    case LoginStatus.Failed:
                        lblLoginStatus.Text = e.Message;
                        Logger.Log("Login Failed: " + e.FailReason, Helpers.LogLevel.Info);
                        lblLoginStatus.ForeColor = Color.Red;

                        //proLogin.Visible = false;

                        btnLogin.Text = "Retry";
                        btnLogin.Enabled = true;
                        break;
                }
            }
            catch (Exception ex)
            {
                Logger.Log("Login (status): " + ex.Message, Helpers.LogLevel.Error);
            }
        }
示例#18
0
文件: Bot.cs 项目: 4U2NV/opensim
 public void Network_LoginProgress(object sender, LoginProgressEventArgs args)
 {
     if (args.Status == LoginStatus.Success)
     {
         if (OnConnected != null)
         {
             OnConnected(this, EventType.CONNECTED);
         }
     }
 }
        /// <summary>Called any time the login status changes, will eventually
        /// return LoginStatus.Success or LoginStatus.Failure</summary>
        void Network_LoginProgress(object sender, LoginProgressEventArgs e)
        {
            Gtk.Application.Invoke(delegate {
                this.textview_loginmsg.Buffer.Text=e.Message;
                this.textview_loginmsg.QueueDraw();
            });

            if(LoginStatus.Failed==e.Status)
                Gtk.Application.Invoke(delegate {
                    this.button_login.Label="Login";
                    this.loginbut=true;
                    button_login.Image=new Gtk.Image(Stetic.IconLoader.LoadIcon(this, "gtk-connect", Gtk.IconSize.Menu, 16));
                    this.trying=false;
                    this.enablebuttons();
                    MainClass.killclient();
                });

            if(LoginStatus.Success==e.Status)
            {
                Console.Write("Login status login\n");
                Thread.Sleep(5000);

                MainClass.client.Groups.RequestCurrentGroups();
                MainClass.client.Self.RetrieveInstantMessages();

                MainClass.client.Throttle.Cloud = MainClass.appsettings.ThrottleCloud;
                MainClass.client.Throttle.Wind = MainClass.appsettings.ThrottleWind;
                MainClass.client.Throttle.Land =  MainClass.appsettings.ThrottleLand;
                MainClass.client.Throttle.Asset =  MainClass.appsettings.ThrottleAsset;
                MainClass.client.Throttle.Resend =  MainClass.appsettings.ThrottleResend;
                MainClass.client.Throttle.Task=  MainClass.appsettings.ThrottleTask;
                MainClass.client.Throttle.Texture= MainClass.appsettings.ThrottleTexture;
                MainClass.userlogout = false;
              }
        }
示例#20
0
文件: TestClient.cs 项目: zadark/par
 /// <summary>
 /// Initialize everything that needs to be initialized once we're logged in.
 /// </summary>
 /// <param name="login">The status of the login</param>
 /// <param name="message">Error message on failure, MOTD on success.</param>
 public void LoginHandler(object sender, LoginProgressEventArgs e)
 {
     if (e.Status == LoginStatus.Success)
     {
         // Start in the inventory root folder.
         CurrentDirectory = Inventory.Store.RootFolder;
     }
 }
示例#21
0
        private void netcom_ClientLoginStatus(object sender, LoginProgressEventArgs e)
        {
            if (e.Status == LoginStatus.Failed)
            {
                if (InAutoReconnect)
                {
                    if (instance.GlobalSettings["auto_reconnect"].AsBoolean() && e.FailReason != "tos")
                        BeginAutoReconnect();
                    else
                        InAutoReconnect = false;
                }
            }
            else if (e.Status == LoginStatus.Success)
            {
                InAutoReconnect = false;
                reconnectToolStripMenuItem.Enabled = false;
                loginToolStripMenuItem.Enabled = false;
                tsb3D.Enabled = tbtnVoice.Enabled = disconnectToolStripMenuItem.Enabled =
                tbtnGroups.Enabled = tbnObjects.Enabled = tbtnWorld.Enabled = tbnTools.Enabled = tmnuImport.Enabled =
                    tbtnFriends.Enabled = tbtnInventory.Enabled = tbtnSearch.Enabled = tbtnMap.Enabled = true;

                statusTimer.Start();
                RefreshWindowTitle();
            }
        }
示例#22
0
        private void netcom_ClientLoginStatus(object sender, LoginProgressEventArgs e)
        {
            if (e.Status != LoginStatus.Success) return;

            client.Settings.ASSET_CACHE_DIR = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\METAbolt" + System.IO.Path.DirectorySeparatorChar + client.Self.Name + System.IO.Path.DirectorySeparatorChar + "cache";

            tlTools.Enabled = tlLogs.Enabled = tsUtilities.Enabled = btnMap.Enabled = btnAvatar.Enabled = tbtnTeleport.Enabled = tbtnObjects.Enabled = true;
            statusTimer.Enabled = true;
            statusTimer.Start();
            RefreshWindowTitle();

            if (this.instance.Config.CurrentConfig.StartMinimised)
            {
                this.WindowState = FormWindowState.Minimized;
            }

            client.Self.RequestMuteList();
            client.Self.Movement.Camera.Far = (float)instance.Config.CurrentConfig.RadarRange;
        }
示例#23
0
        private void netcom_ClientLoginStatus(object sender, LoginProgressEventArgs e)
        {
            if (e.Status != LoginStatus.Success) return;

            cbxInput.Enabled = true;
            btnSay.Enabled = true;
            //btnShout.Enabled = true;
            return;
            GridMaster.OnAddSimObject += WorldSystem_OnAddSimObject;
          //  simObjectSorterClass.Origin = GridMaster.TheSimAvatar;
            //  Alice.GlobalSettings.updateSetting("name", firstName(client.Self.Name));
        }
示例#24
0
 protected virtual void OnClientLoginStatus(LoginProgressEventArgs e)
 {
     if (ClientLoginStatus != null) ClientLoginStatus(this, e);
 }
 void Network_LoginProgress(object sender, LoginProgressEventArgs e)
 {
     if(LoginStatus.Success==e.Status)
     {
         Gtk.Application.Invoke(delegate {
             lock(store)
             {
                 populate_list();
                 store.Foreach(myfunc);
             }
         });
     }
 }
示例#26
0
 void Network_LoginProgress(object sender, LoginProgressEventArgs e)
 {
     if (e.Status == LoginStatus.ConnectingToSim)
     {
         try
         {
             if (!Directory.Exists(ClientDir))
             {
                 Directory.CreateDirectory(ClientDir);
             }
             clientSettings = new Settings(Path.Combine(ClientDir, "client_settings.xml"));
         }
         catch (Exception ex)
         {
             Logger.Log("Failed to create client directory", Helpers.LogLevel.Warning, ex);
         }
     }
 }
示例#27
0
        public void Network_LoginProgress(object sender, LoginProgressEventArgs args)
        {
            m_log.DebugFormat("[BOT]: Bot {0} {1} in Network_LoginProcess", Name, args.Status);

            if (args.Status == LoginStatus.Success)
            {
                if (OnConnected != null)
                {
                    OnConnected(this, EventType.CONNECTED);
                }
            }
        }
示例#28
0
 private void Network_OnConnected(object sender, LoginProgressEventArgs e)
 {
     if (e.Status == LoginStatus.Success)
     {
         CleanupTimer();
         updateTimer = new Timer(new TimerCallback(UpdateTimer_Elapsed), null, updateInterval, updateInterval);
     }
 }
 private void Network_OnLogin(object sender, LoginProgressEventArgs e)
 {
     if (e.Status == LoginStatus.Success)
     {
         Connected = true;
     }
     else if (e.Status == LoginStatus.Failed)
     {
         Console.WriteLine("Error logging in ({0}): {1}", Client.Network.LoginErrorKey, Client.Network.LoginMessage);
         ConnectFailed = true;
     }
 }
示例#30
0
        private void netcom_ClientLoginStatus(object sender, LoginProgressEventArgs e)
        {
            switch (e.Status)
            {
                case LoginStatus.ConnectingToLogin:
                    lblLoginStatus.Text = "Connecting to login server...";
                    lblLoginStatus.ForeColor = Color.Black;
                    break;

                case LoginStatus.ConnectingToSim:
                    lblLoginStatus.Text = "Connecting to region...";
                    lblLoginStatus.ForeColor = Color.Black;
                    break;

                case LoginStatus.Redirecting:
                    lblLoginStatus.Text = "Redirecting...";
                    lblLoginStatus.ForeColor = Color.Black;
                    break;

                case LoginStatus.ReadingResponse:
                    lblLoginStatus.Text = "Reading response...";
                    lblLoginStatus.ForeColor = Color.Black;
                    break;

                case LoginStatus.Success:
                    lblLoginStatus.Text = "Logged in as " + netcom.LoginOptions.FullName;
                    lblLoginStatus.ForeColor = Color.FromArgb(0, 128, 128, 255);
                    proLogin.Visible = false;

                    btnLogin.Text = "Logout";
                    btnLogin.Enabled = true;
                    instance.Client.Groups.RequestCurrentGroups();
                    break;

                case LoginStatus.Failed:
                    lblLoginStatus.ForeColor = Color.Red;
                    if (e.FailReason == "tos")
                    {
                        lblLoginStatus.Text = "Must agree to Terms of Service before logging in";
                        pnlTos.Visible = true;
                        txtTOS.Text = e.Message.Replace("\n", "\r\n");
                        btnLogin.Enabled = false;
                    }
                    else
                    {
                        lblLoginStatus.Text = e.Message;
                        btnLogin.Enabled = true;
                    }
                    proLogin.Visible = false;

                    btnLogin.Text = "Retry";
                    break;
            }
        }
示例#31
0
        private void netcom_ClientLoginStatus(object sender, LoginProgressEventArgs e)
        {
            if (e.Status != LoginStatus.Success) return;

            cbxInput.Enabled = true;
            client.Avatars.RequestAvatarProperties(client.Self.AgentID);
            cbxInput.Focus();
        }
示例#32
0
 ///<summary>Raises the LoginProgress Event</summary>
 /// <param name="e">A LoginProgressEventArgs object containing
 /// the data sent from the simulator</param>
 protected virtual void OnLoginProgress(LoginProgressEventArgs e)
 {
     EventHandler<LoginProgressEventArgs> handler = m_LoginProgress;
     if (handler != null)
         handler(this, e);
 }
示例#33
0
        void Network_LoginProgress(object sender, LoginProgressEventArgs e)
        {
            if (e.Status == LoginStatus.Success)
            {
                loggedIn = true;
                client.Self.RequestBalance();
                if (CanSyncInvoke)
                {
                    netcomSync.BeginInvoke(new ClientConnectedRaise(OnClientConnected), new object[] { EventArgs.Empty });
                }
                else
                {
                    OnClientConnected(EventArgs.Empty);
                }
            }

            LoginProgressEventArgs ea = new LoginProgressEventArgs(e.Status, e.Message, string.Empty);

            if (CanSyncInvoke)
                netcomSync.BeginInvoke(new OnClientLoginRaise(OnClientLoginStatus), new object[] { e });
            else
                OnClientLoginStatus(e);
        }