Beispiel #1
0
        void LoginPostTick()
        {
            postTask.Tick();
            if (!postTask.Completed)
            {
                return;
            }

            if (postTask.Error != null)
            {
                SetStatus("&c" + postTask.Error);
            }
            else if (postTask.Success)
            {
                game.Username = postTask.Username;
                fetchTask     = new FetchServersTask();
                fetchTask.RunAsync(game);
                SetStatus("&eRetrieving servers list..");
            }
            else
            {
                DisplayWebException(postTask.WebEx, "sign in");
            }

            postTask = null;
            game.RedrawBackground();
            Resize();
        }
 void RefreshList(int mouseX, int mouseY)
 {
     if (fetchTask != null)
     {
         return;
     }
     fetchTask = new FetchServersTask();
     fetchTask.RunAsync(game);
     view.RefreshText = "&eWorking..";
     Resize();
 }
Beispiel #3
0
        void FetchTick()
        {
            fetchTask.Tick();
            if (!fetchTask.Completed)
            {
                return;
            }

            if (fetchTask.Success)
            {
                game.Servers = fetchTask.Servers;
                game.SetScreen(new ServersScreen(game));
            }
            else
            {
                DisplayWebException(fetchTask.WebEx, "retrieving servers list");
                game.RedrawBackground();
                Resize();
            }

            fetchTask = null;
        }
        void CheckFetchStatus()
        {
            fetchTask.Tick();
            if (!fetchTask.Completed)
            {
                return;
            }

            if (fetchTask.Success)
            {
                game.Servers = fetchTask.Servers;
                FetchFlags(game);
            }

            view.RefreshText = fetchTask.Success ? "Refresh" : "&cFailed";
            fetchTask        = null;
            Resize();

            // needed to ensure 'highlighted server hash' is over right entry after refresh
            TableWidget table = (TableWidget)widgets[view.tableIndex];

            table.SetSelected(widgets[view.hashIndex].Text);
            MarkPendingRedraw();
        }