Пример #1
0
    public void SelectRussian()
    {
        var language = LocalizedLanguage.Russian.ToString();

        StorageSystem.Settings.SetSelectedLanguage(language);
        LocalisationManager.SetLanguage(language);
        UpdateAllLocalizedText();
    }
Пример #2
0
        void init()
        {
            try
            {
                SplashScreen.CloseAll();

                BringToFrontEx();

                bool hasLanguage = LocalisationManager.IsInitialised;

                if (!hasLanguage)
                {
                    Invoke(delegate
                    {
                        LocalisationManager.SetLanguage(null, false, delegate { hasLanguage = true; }, osu.Properties.Resources.en);
                    });

                    int timeout = 20000;
                    while (!hasLanguage && (timeout -= 100) > 0)
                    {
                        setText(@"Downloading localisation...", true);
                        Thread.Sleep(100);
                    }
                }

                while (true)
                {
                    try
                    {
                        instance = new SingleInstance(OsuMain.ClientGuid, 500);
                    }
                    catch (TooManyInstancesException)
                    {
                        if (OsuMain.IsWine)
                        {
                            break;
                        }

                        setText(LocalisationManager.GetString(OsuString.Maintenance_OsuIsAlreadyRunning), true);
                        Thread.Sleep(100);
                        continue;
                    }

                    break;
                }

                if (!DotNetFramework.CheckInstalled(FrameworkVersion.dotnet4))
                {
                    Process installProcess = null;

                    string dotNetInstallFilename = Environment.OSVersion.Version.Major < 6 ? @"dotNetFx40_Full_setup.exe" : @"NDP452-KB2901954-Web.exe";

                    setText(LocalisationManager.GetString(OsuString.Maintenance_DotNetInstall), true);
                    pFileWebRequest fnr = new pFileWebRequest(dotNetInstallFilename, @"http://m1.ppy.sh/r/" + dotNetInstallFilename);
                    fnr.DownloadProgress += delegate(pWebRequest sender, long current, long total)
                    {
                        setProgress((float)current / total * 100, OsuString.Maintenance_DotNetInstall);
                    };

                    try
                    {
                        fnr.BlockingPerform();
                        installProcess = Process.Start(dotNetInstallFilename, @"/passive /promptrestart");

                        while (installProcess != null && !installProcess.HasExited)
                        {
                            setText(LocalisationManager.GetString(OsuString.Maintenance_WaitingForDotNetComplete), true);
                            setProgress();
                            Thread.Sleep(500);
                        }
                    }
                    catch
                    {
                    }

                    GeneralHelper.FileDelete(dotNetInstallFilename);

                    label.Click += manualDotNetInstall;
                    while (!DotNetFramework.CheckInstalled(FrameworkVersion.dotnet4, false))
                    {
                        setText(LocalisationManager.GetString(OsuString.Maintenance_DotNetFailed), true);
                        setProgress();
                        Thread.Sleep(500);
                    }
                    label.Click -= manualDotNetInstall;
                }

                setText();
                setProgress();
            }
            catch
            {
            }
        }
 public override void OnClick()
 {
     LocalisationManager.SetLanguage(Language);
 }