public void Rebuild(AnimationTreeParameter[] source) { for (int i = 0; i < _Params.Length; i++) { string parameter = GetParameter(i); _Params[i].Options.Clear(); int value = 0; Skill.Editor.UI.PopupOption selectedOP = null; if (source != null) { foreach (var p in source) { if (p.Type == _ParamType) { Skill.Editor.UI.PopupOption op = new UI.PopupOption(value++, p.Name); this._Params[i].Options.Add(op); if (p.Name == parameter) { selectedOP = op; } } } } this._Params[i].SelectedOption = selectedOP; } }
private void RefreshAccessClasses() { AccessLimitDecoratorData data = (AccessLimitDecoratorData)_ALItem.Data; _AccessClassField.Options.Clear(); _AccessClassField.SelectedIndex = -1; if (_ALItem.Editor.Asset.SharedKeys != null) { int selectedIndex = -1; for (int i = 0; i < _ALItem.Editor.Asset.SharedKeys.Length; i++) { var sk = _ALItem.Editor.Asset.SharedKeys[i]; if (sk != null) { Skill.Editor.UI.PopupOption op = new UI.PopupOption(i, sk.name); _AccessClassField.Options.Add(op); if (sk.name == data.ClassName) { selectedIndex = i; } } } _AccessClassField.SelectedIndex = selectedIndex; } else { data.ClassName = string.Empty; } RefreshAccessKeys(); }
private void RefreshAccessKeys() { AccessLimitDecoratorData data = (AccessLimitDecoratorData)_ALItem.Data; _AccessKeyField.Options.Clear(); _AccessKeyField.SelectedIndex = -1; if (!string.IsNullOrEmpty(data.ClassName) && _AccessClassField.SelectedOption != null) { SharedAccessKeysAsset asset = null; foreach (var item in _ALItem.Editor.Asset.SharedKeys) { if (item.name == data.ClassName) { asset = item; } } if (asset != null) { int selectedIndex = -1; var keys = asset.Load().Keys; for (int i = 0; i < keys.Length; i++) { Skill.Editor.UI.PopupOption op = new UI.PopupOption((int)keys[i].Type, keys[i].Key); _AccessKeyField.Options.Add(op); if (keys[i].Key == data.AccessKey) { selectedIndex = i; } } _AccessKeyField.SelectedIndex = selectedIndex; } else { data.AccessKey = string.Empty; } } else { data.AccessKey = string.Empty; } }