예제 #1
0
 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);
 }