示例#1
0
        public void OnGUI()
        {
            try
            {
                if (Event.current.type != EventType.KeyUp)
                {
                    return;
                }

                switch (Event.current.keyCode)
                {
                case KeyCode.Keypad0:
                    var data      = GUIUtility.systemCopyBuffer.Unescape();
                    var eventArgs = new TextTranslationEventArgs(data, TextType.Text)
                    {
                        Debug = true
                    };
                    HookCenter.InvokeTextTranslation(null, eventArgs);
                    GUIUtility.systemCopyBuffer = eventArgs.Translation?.Escape() ?? "{No translation}";
                    break;
                }
            }
            catch (Exception ex)
            {
                Logger.Log(LogLevel.Error, ex);
                throw;
            }
        }
示例#2
0
        private void ReTranslation()
        {
            var processedTextures = new HashSet <string>();

            foreach (var widget in FindObjectsOfType <UIWidget>())
            {
                if (widget is UILabel label)
                {
                    label.ProcessText();
                }
                else
                {
                    var texName = widget.mainTexture?.name;
                    if (texName == null)
                    {
                        continue;
                    }

                    if (texName.StartsWith("!"))
                    {
                        widget.mainTexture.name = texName.Substring(1);
                    }
                    HookCenter.UIWidget_GetMainTexture(widget);
                }
            }
            foreach (var graphic in FindObjectsOfType <MaskableGraphic>())
            {
                if (graphic is Image img && img.sprite != null)
                {
                    if (img.sprite.name.StartsWith("!"))
                    {
                        img.sprite.name = img.sprite.name.Substring(1);
                    }
                }
                HookCenter.MaskableGraphic_OnEnable(graphic);
            }
            OnResourceTranslation();
        }