public TriggerPropertyEditor(IPropertyEditorParams editorParams, bool multiline = false) : base(editorParams) { comboBox = new ThemedComboBox { LayoutCell = new LayoutCell(Alignment.Center) }; EditorContainer.AddNode(comboBox); EditorContainer.AddNode(Spacer.HStretch()); comboBox.Changed += ComboBox_Changed; foreach (var obj in editorParams.Objects) { var node = (Node)obj; foreach (var a in node.Animations) { foreach (var m in a.Markers.Where(i => i.Action != MarkerAction.Jump && !string.IsNullOrEmpty(i.Id))) { var id = a.Id != null ? m.Id + '@' + a.Id : m.Id; if (!comboBox.Items.Any(i => i.Text == id)) { comboBox.Items.Add(new DropDownList.Item(id)); } } } } comboBox.AddChangeWatcher(CoalescedPropertyValue(), v => comboBox.Text = v); }