private static void OnPreEditorChange() { MakeSureStringsAreLoaded(); if (_undoObject == null) { _undoObject = (LocalisationUndoState)ScriptableObject.CreateInstance(typeof(LocalisationUndoState)); _undoObject.name = "LocalisationUndoState"; Undo.undoRedoPerformed += UndoRedoCallback; } _undoObject._serialisedLocalisationMaps = Serializer.ToString(_localisationMaps); }
public static void UpdateString(string key, SystemLanguage language, string text) { if (_localisationMap == null) { LoadStrings(); } if (_undoObject == null) { _undoObject = (LocalisationUndoState)ScriptableObject.CreateInstance(typeof(LocalisationUndoState)); _undoObject.name = "LocalisationUndoState"; Undo.undoRedoPerformed += UndoRedoCallback; } _undoObject._serialisedLocalisationMap = Serializer.ToString(_localisationMap); _localisationMap.UpdateString(key, language, text); _dirty = true; RefreshEditorKeys(); Undo.RegisterCompleteObjectUndo(_undoObject, "Localisation strings changed"); _undoObject._serialisedLocalisationMap = Serializer.ToString(_localisationMap); }