Exemple #1
0
        void Start()
        {
            UIPopupList mList = GetComponent <UIPopupList>();

            mList.items = Source.GetLanguages();

            EventDelegate.Add(mList.onChange, OnValueChange);
            int idx = mList.items.IndexOf(LocalizationManager.CurrentLanguage);

            mList.value = mList.items[idx >= 0 ? idx : 0];
        }
        public override void OnInspectorGUI()
        {
            string[]       Languages;
            LanguageSource source = setLan.mSource;

            if (source == null)
            {
                LocalizationManager.UpdateSources();
                Languages = LocalizationManager.GetAllLanguages().ToArray();
                System.Array.Sort(Languages);
            }
            else
            {
                Languages = source.GetLanguages().ToArray();
                System.Array.Sort(Languages);
            }

            int index = System.Array.IndexOf(Languages, mProp_Language.stringValue);

            GUI.changed = false;
            index       = EditorGUILayout.Popup("Language", index, Languages);
            if (GUI.changed)
            {
                if (index < 0 || index >= Languages.Length)
                {
                    mProp_Language.stringValue = string.Empty;
                }
                else
                {
                    mProp_Language.stringValue = Languages[index];
                }
                GUI.changed = false;
                serializedObject.ApplyModifiedProperties();
            }

            GUILayout.Space(5);
            if (setLan.mSource == null)
            {
                GUI.contentColor = Color.Lerp(Color.gray, Color.yellow, 0.1f);
            }
            source           = EditorGUILayout.ObjectField("Language Source:", source, typeof(LanguageSource), true) as LanguageSource;
            GUI.contentColor = Color.white;

            if (GUI.changed)
            {
                setLan.mSource = source;
            }

            serializedObject.ApplyModifiedProperties();
        }