Пример #1
0
        private void load(OsuColour colours, LocalisationManager localisation)
        {
            selectedColour = colours.Yellow;
            artistColour   = colours.Gray9;
            HandleColour   = colours.Gray5;

            title  = localisation.GetLocalisedString(new RomanisableString(Model.Metadata.TitleUnicode, Model.Metadata.Title));
            artist = localisation.GetLocalisedString(new RomanisableString(Model.Metadata.ArtistUnicode, Model.Metadata.Artist));
        }
Пример #2
0
        private void load(ShaderManager shaders)
        {
            localisedText = localisation.GetLocalisedString(text);
            localisedText.BindValueChanged(e =>
            {
                if (string.IsNullOrEmpty(e.NewValue))
                {
                    // We'll become not present and won't update the characters to set the size to 0, so do it manually
                    if (requiresAutoSizedWidth)
                    {
                        base.Width = Padding.TotalHorizontal;
                    }
                    if (requiresAutoSizedHeight)
                    {
                        base.Height = Padding.TotalVertical;
                    }
                }

                invalidate(true);
            }, true);

            spaceWidth = getTextureForCharacter('.')?.DisplayWidth * 2 ?? 1;
            sharedData.TextureShader        = shaders?.Load(VertexShaderDescriptor.TEXTURE_2, FragmentShaderDescriptor.TEXTURE);
            sharedData.RoundedTextureShader = shaders?.Load(VertexShaderDescriptor.TEXTURE_2, FragmentShaderDescriptor.TEXTURE_ROUNDED);

            // Pre-cache the characters in the texture store
            foreach (var character in displayedText)
            {
                getTextureForCharacter(character);
            }
        }
Пример #3
0
        public void TestNoLanguagesAdded()
        {
            // reinitialise without the default language
            manager = new LocalisationManager(config);

            var localisedText = manager.GetLocalisedString(new TranslatableString(FakeStorage.LOCALISABLE_STRING_EN, FakeStorage.LOCALISABLE_STRING_EN));

            Assert.AreEqual(FakeStorage.LOCALISABLE_STRING_EN, localisedText.Value);
        }
Пример #4
0
        public void Constructor_LanguageRecognized_ShouldLoad()
        {
            // arrange
            var fileName             = "Whatsitsface";
            var key                  = "SomethingSomething";
            var value                = "Ooh, it actually has something! :D";
            var expectedFileContents = $@"<?xml version=""1.0"" encoding=""utf-8"" ?>
<{EWord.Localisation}>
  <{EWord.Line} {EWord.Key.ToLower()}=""{key}"" {EWord.Value.ToLower()}=""{value}""/>
</{EWord.Localisation}>";

            var filePath = $@"{_localizationDirectory}\{fileName}{ECharacter.Period}{EFileExtension.Xml}";

            File.Create(filePath).Close();

            using (var streamWriter = new StreamWriter(filePath))
                streamWriter.Write(expectedFileContents);

            // act
            var localizationManager = new LocalisationManager(_fileReader, fileName, Presets.Logger);

            // assert
            localizationManager.GetLocalisedString(key).Should().Be(value);
        }
        public void BenchmarkNonLocalised()
        {
            var bindable = manager.GetLocalisedString("test");

            bindable.UnbindAll();
        }