Example #1
0
        private void PropertyValueChanged(object sender, string propertyname, string propertyvalue)
        {
            var val = _values.FirstOrDefault(x => x.OriginalKey == propertyname);
            var li  = KeyValuesList.Items.OfType <ListViewItem>().FirstOrDefault(x => ((string)x.Tag) == propertyname);

            if (val == null)
            {
                if (li != null)
                {
                    KeyValuesList.Items.Remove(li);
                }
                return;
            }
            val.IsModified = true;
            val.Value      = propertyvalue;
            if (li == null)
            {
                var dt = SmartEditButton.Checked ? val.DisplayText(Document.GameData) : val.OriginalKey;
                var dv = SmartEditButton.Checked ? val.DisplayValue(Document.GameData) : val.Value;
                li = new ListViewItem(dt)
                {
                    Tag = val.OriginalKey, BackColor = val.GetColour()
                };
                KeyValuesList.Items.Add(li).SubItems.Add(dv);
            }
            else
            {
                li.BackColor        = val.GetColour();
                li.SubItems[1].Text = SmartEditButton.Checked ? val.DisplayValue(Document.GameData) : val.Value;
            }
            if (propertyname == "angles" && propertyvalue != Angles.GetAnglePropertyString())
            {
                Angles.SetAnglePropertyString(propertyvalue);
            }
        }
Example #2
0
 private void AnglesChanged(object sender, AngleControl.AngleChangedEventArgs e)
 {
     if (_populating)
     {
         return;
     }
     PropertyValueChanged(sender, "angles", Angles.GetAnglePropertyString());
     if (KeyValuesList.SelectedIndices.Count > 0 &&
         ((string)KeyValuesList.SelectedItems[0].Tag) == "angles" &&
         SmartEditControlPanel.Controls.Count > 0 &&
         SmartEditControlPanel.Controls[0] is SmartEditControl)
     {
         ((SmartEditControl)SmartEditControlPanel.Controls[0]).SetProperty("angles", "angles", Angles.GetAnglePropertyString(), null);
     }
 }