void SetContextMenuManipulator(Button element, ScriptableSettings scriptableSettings) { ContextualMenuManipulator m = new ContextualMenuManipulator(x => ShowButtonContextMenu(scriptableSettings, x)) { target = element }; }
public static void Show(ScriptableSettings settings, Func <string, bool> newNameValidator, Action onDone) { if (window == null) { window = CreateInstance(typeof(ChangeTabNameWindow)) as ChangeTabNameWindow; } Debug.Assert(window != null, nameof(window) + " != null"); window.titleContent.text = "Rename tab"; window.Focus(); window.SetSettings(settings); window._newNameValidator = newNameValidator; window.ShowUtility(); window._onDone = onDone; }
private List <ScriptableSettings> GetScriptableSettingFilteredByTags() { if (_activeTags == null || _activeTags.Count == 0) { return(ScriptableSettingsManager.Instance.ScriptableSettings); } List <ScriptableSettings> settings = new List <ScriptableSettings>(ScriptableSettingsManager.Instance.ScriptableSettings); for (int index = settings.Count - 1; index >= 0; index--) { ScriptableSettings item = settings[index]; foreach (ScriptableTag tag in _activeTags) { if (tag.Elements.Contains(item)) { continue; } settings.RemoveAt(index); break; } } return(new List <ScriptableSettings>(settings)); }
private void SetSettings(ScriptableSettings scriptableSettings) { settings = scriptableSettings; _textField.SetValueWithoutNotify(scriptableSettings.TabName); }
private void RenameScriptableSetting(ScriptableSettings settings) { ChangeTabNameWindow.Show(settings, IsValidSettingsName, () => PopulatePresetList()); }
private void ShowButtonContextMenu(ScriptableSettings settings, ContextualMenuPopulateEvent contextualMenuPopulateEvent) { contextualMenuPopulateEvent.menu.AppendAction("Rename", x => RenameScriptableSetting(settings)); }