private void SetupContentsView(PaletteStore store, PaletteEditorWindow view) { _colorContentsViewController?.Dispose(); _gradientContentsViewController?.Dispose(); _characterStyleContentsViewController?.Dispose(); _characterStyleTMPContentsViewController?.Dispose(); _emptyViewController?.Dispose(); _editService = new EditPaletteStoreService(store, new GenerateNameEnumsFileService(store)); _colorContentsViewController = new PaletteEditorWindowContentsViewController <Color>(store.ColorPalette, _editService, view.ColorContentsView); _gradientContentsViewController = new PaletteEditorWindowContentsViewController <Gradient>(store.GradientPalette, _editService, view.GradientContentsView); _characterStyleContentsViewController = new PaletteEditorWindowContentsViewController <CharacterStyle>(store.CharacterStylePalette, _editService, view.CharacterStyleContentsView); _characterStyleTMPContentsViewController = new PaletteEditorWindowContentsViewController <CharacterStyleTMP>(store.CharacterStyleTMPPalette, _editService, view.CharacterStyleTMPContentsView); _activeContentsViewController = GetPerTypeController(_guiState.ActivePaletteType.Value); }
public static void Update1To2() { if (!EditorUtility.DisplayDialog("Warning", "Execute version update and reload the active scene. Do you want to run it?", "OK", "Cancel")) { return; } if (!File.Exists(AppDataFilePath)) { EditorUtility.DisplayDialog("Error", $"The target file does not exists at {AppDataFilePath}", "OK"); return; } var json = File.ReadAllText(AppDataFilePath); var obsoleteStore = JsonUtility.FromJson <UPaletteStore>(json); var palette = PaletteStore.LoadAsset(); if (palette != null) { if (!EditorUtility.DisplayDialog("Warning", $"{nameof(PaletteStore)} already exists. Do you want to overwrite it?", "OK", "Cancel")) { return; } var assetPath = AssetDatabase.GetAssetPath(palette); PaletteStore.RemoveAsset(); palette = PaletteStore.CreateAsset(assetPath); } else { // Open save file panel and create PaletteStore asset. palette = PaletteStore.CreateAsset(); // If cancelled, do nothing. if (palette == null) { return; } } var theme = palette.ColorPalette.ActiveTheme.Value; foreach (var obsoleteEntry in obsoleteStore.Entries) { var entry = palette.ColorPalette.AddEntry(obsoleteEntry.ID); entry.Name.Value = obsoleteEntry.Name.Value; entry.Values[theme.Id].Value = obsoleteEntry.Value.Value; } EditorUtility.SetDirty(palette); AssetDatabase.SaveAssets(); AssetDatabase.DeleteAsset(AppDataFilePath); // Restart the current scene. EditorSceneManager.OpenScene(SceneManager.GetActiveScene().path, OpenSceneMode.Single); }
public override void OnGUI(string searchContext) { using (new GUIScope()) { var store = PaletteStore.LoadAsset(); if (store == null) { EditorGUILayout.HelpBox( "To use Project Settings, you need to create a PaletteStore to initialize uPalette.", MessageType.Warning); if (GUILayout.Button("Create Palette Store")) { PaletteStore.CreateAsset(); } if (GUILayout.Button("Update Version 1 to 2")) { VersionUpdater.Update1To2(); } return; } var projectSettings = UPaletteProjectSettings.instance; using (var ccs = new EditorGUI.ChangeCheckScope()) { store.MissingEntryErrorLevel = (MissingEntryErrorLevel)EditorGUILayout.EnumPopup("Missing Entry Error", store.MissingEntryErrorLevel); if (ccs.changed) { EditorUtility.SetDirty(store); } } using (var ccs = new EditorGUI.ChangeCheckScope()) { projectSettings.NameEnumsFileGenerateMode = (NameEnumsFileGenerateMode)EditorGUILayout.EnumPopup("Name Enums File Generation", projectSettings.NameEnumsFileGenerateMode); projectSettings.NameEnumsFolder = (DefaultAsset)EditorGUILayout.ObjectField("Name Enums File Location", projectSettings.NameEnumsFolder, typeof(DefaultAsset), false); if (ccs.changed && projectSettings.NameEnumsFileGenerateMode == NameEnumsFileGenerateMode.WhenWindowLosesFocus) { EditorPrefs.SetBool(EditorPrefsKey.IsIdOrNameDirtyPrefsKey, true); } } } }
private void Update() { if (_storeInstance != null) { return; } var store = PaletteStore.LoadAsset(); _store.Value = store; _storeInstance = store; }
public ThemeEditorWindowEmptyViewController(ThemeEditorWindowEmptyView view) { _view = view; _view.CreateButtonClickedAsObservable.Subscribe(_ => { if (PaletteStore.LoadAsset() == null) { PaletteStore.CreateAsset(); } else { throw new InvalidOperationException($"{nameof(PaletteStore)} already exists."); } }).DisposeWith(_disposables); }
private static NameEnumsTemplateInput CreateTemplateInput(PaletteStore store) { var input = new NameEnumsTemplateInput(); var colorPaletteData = CreatePaletteData("Color", store.ColorPalette); input.PaletteDataList.Add(colorPaletteData); var gradientPaletteData = CreatePaletteData("Gradient", store.GradientPalette); input.PaletteDataList.Add(gradientPaletteData); var characterStylePaletteData = CreatePaletteData("CharacterStyle", store.CharacterStylePalette); input.PaletteDataList.Add(characterStylePaletteData); var characterStyleTMPPaletteData = CreatePaletteData("CharacterStyleTMP", store.CharacterStyleTMPPalette); input.PaletteDataList.Add(characterStyleTMPPaletteData); return(input); }
private void SetupContentsView(PaletteStore store, PaletteEditorWindow view) { _colorContentsViewPresenter?.Dispose(); _gradientContentsViewPresenter?.Dispose(); _characterStyleContentsViewPresenter?.Dispose(); _characterStyleTMPContentsViewPresenter?.Dispose(); _emptyViewPresenter?.Dispose(); _colorContentsViewPresenter = new PaletteEditorWindowContentsViewPresenter <Color>(store.ColorPalette, view.ColorContentsView); _gradientContentsViewPresenter = new PaletteEditorWindowContentsViewPresenter <Gradient>(store.GradientPalette, view.GradientContentsView); _characterStyleContentsViewPresenter = new PaletteEditorWindowContentsViewPresenter <CharacterStyle>(store.CharacterStylePalette, view.CharacterStyleContentsView); _characterStyleTMPContentsViewPresenter = new PaletteEditorWindowContentsViewPresenter <CharacterStyleTMP>(store.CharacterStyleTMPPalette, view.CharacterStyleTMPContentsView); view.SetMode(PaletteEditorWindow.Mode.Contents); }
public static void OnPostprocessAllAssets(string[] importedAssets, string[] deletedAssets, string[] movedAssets, string[] movedFromAssetPaths) { var paletteStore = PaletteStore.LoadAsset(); if (paletteStore == null) { return; } var assetPath = AssetDatabase.GetAssetPath(paletteStore); foreach (var importedAsset in importedAssets) { if (assetPath != importedAsset) { continue; } _needReloading = false; EditorApplication.delayCall += OnPaletteStoreImported; return; } }
protected abstract Palette <T> GetPalette(PaletteStore store);
protected override Palette <CharacterStyleTMP> GetPalette(PaletteStore store) { return(store.CharacterStyleTMPPalette); }
protected override Palette <Gradient> GetPalette(PaletteStore store) { return(store.GradientPalette); }
protected override Palette <Color> GetPalette(PaletteStore store) { return(store.ColorPalette); }
internal override Palette <UnityEngine.Color> GetPalette(PaletteStore store) { return(store.ColorPalette); }
internal override Palette <UnityEngine.Gradient> GetPalette(PaletteStore store) { return(store.GradientPalette); }
internal abstract Palette <T> GetPalette(PaletteStore store);
internal override Palette <Foundation.CharacterStyles.CharacterStyleTMP> GetPalette(PaletteStore store) { return(store.CharacterStyleTMPPalette); }
public GenerateNameEnumsFileService(PaletteStore store) { _store = store; }