示例#1
0
 private void removeToolStripMenuItem_Click(object sender, EventArgs e)
 {
     if (comboBoxFind(cbbGroup, cbbGroup.Text))
     {
         bool isSureToDelete = true;
         if (cbxDeleteWithoutConfirm.Checked == false &&
             MessageBox.Show("Are you sure to delete Custom Property Group \"" + txbPropName.Text + "\" from selected items(s)", "Confirm deletion", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.Cancel)
         {
             isSureToDelete = false;
         }
         if (isSureToDelete)
         {
             Editor.Instance.CustomPropertyGroups.Remove(cbbGroup.Text);
             comboBoxRemove(cbbGroup, cbbGroup.Text);
             cbbGroup.Text       = "";
             custompropertyGroup = null;
             customproperties    = null;
             updateGroupEditControls();
         }
     }
     else
     {
         MessageBox.Show("A Custom Property Group with that name doesn't exist.");
     }
 }
示例#2
0
 private void renameToolStripMenuItem_Click(object sender, EventArgs e)
 {
     if (comboBoxFind(cbbGroup, cbbGroup.Text))
     {
         System.Drawing.Rectangle rect = System.Windows.Forms.Screen.PrimaryScreen.Bounds;
         String name = Interaction.InputBox("Please input a group name", "Input group name", "", rect.Width / 2 - MainForm.Instance.Location.X, rect.Height / 2 - MainForm.Instance.Location.Y);
         Editor.Instance.CustomPropertyGroups[name] = Editor.Instance.CustomPropertyGroups[cbbGroup.Text];
         Editor.Instance.CustomPropertyGroups.Remove(cbbGroup.Text);
         comboBoxRemove(cbbGroup, cbbGroup.Text);
         cbbGroup.Items.Add(name);
         cbbGroup.Text       = name;
         custompropertyGroup = Editor.Instance.CustomPropertyGroups[cbbGroup.Text];
         customproperties    = custompropertyGroup.customproperties;
         updateGroupEditControls();
     }
     else
     {
         MessageBox.Show("A Custom Property Group with that name doesn't exist.");
     }
 }
示例#3
0
 private void btnPopCake_Click(object sender, EventArgs e)
 {
     if (Editor.Instance.CustomPropertyGroups.ContainsKey(cbbGroup.Text))
     {
         bool isSureToDelete = true;
         if (cbxDeleteWithoutConfirm.Checked == false &&
             MessageBox.Show("Are you sure to delete property \"" + cbbName.Text + "\" from selected items(s)", "Confirm deletion", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.Cancel)
         {
             isSureToDelete = false;
         }
         if (isSureToDelete)
         {
             CustomPropertyGroup group = Editor.Instance.CustomPropertyGroups[cbbGroup.Text];
             foreach (CustomProperty prop in group.customproperties.Values)
             {
                 if (cbxToAllSelected.Checked)//to all selected items
                 {
                     foreach (Item item in Editor.Instance.SelectedItems)
                     {
                         item.CustomProperties.Remove(prop.name);
                     }
                 }
                 else//to selected
                 {
                     customproperties.Remove(prop.name);
                 }
             }
             updateControls();
             MainForm.Instance.propertyGrid1.Refresh();
         }
     }
     else
     {
         MessageBox.Show("A Custom Property Group with name \"" + cbbGroup.Text + "\" doesn't exists.");
     }
 }
示例#4
0
 private void cbbGroup_SelectedIndexChanged(object sender, EventArgs e)
 {
     custompropertyGroup = Editor.Instance.CustomPropertyGroups[cbbGroup.Text];
     customproperties    = custompropertyGroup.customproperties;
     updateGroupEditControls();
 }
示例#5
0
 private void btnAddCake_Click(object sender, EventArgs e)
 {
     if (Editor.Instance.CustomPropertyGroups.ContainsKey(cbbGroup.Text))
     {
         CustomPropertyGroup group = Editor.Instance.CustomPropertyGroups[cbbGroup.Text];
         foreach (CustomProperty prop in group.customproperties.Values)
         {
             CustomProperty cp = new CustomProperty();
             cp.name        = (String)prop.name.Clone();
             cp.description = (String)prop.description.Clone();
             cp.type        = prop.type;
             if (prop.type == typeof(Vector2))
             {
                 Regex r = new Regex(@"^\d+(\.)?\d*$");
                 float x = ((Vector2)(prop.value)).X;
                 float y = ((Vector2)(prop.value)).Y;
                 cp.value = new Vector2(x, y);
             }
             else if (prop.type == typeof(Color))
             {
                 byte R = ((Color)(prop.value)).R;
                 byte G = ((Color)(prop.value)).G;
                 byte B = ((Color)(prop.value)).B;
                 cp.value = new Color(R, G, B);
             }
             else
             {
                 cp.value = prop.value;
             }
             if (cbxToAllSelected.Checked)//add to all selected items
             {
                 foreach (Item item in Editor.Instance.SelectedItems)
                 {
                     if (cbxAddMode.Checked)
                     {
                         item.CustomProperties[cp.name] = cp.clone();
                     }
                     else
                     {
                         if (item.CustomProperties.ContainsKey(cp.name) == false)
                         {
                             item.CustomProperties[cp.name] = cp.clone();
                         }
                     }
                 }
             }
             else//add to selected
             {
                 if (customproperties.ContainsKey(cp.name) && cbxAddMode.Checked == false)
                 {
                     continue;
                 }
                 customproperties[cp.name] = cp.clone();
             }
         }
         updateControls();
         MainForm.Instance.propertyGrid1.Refresh();
     }
     else
     {
         MessageBox.Show("A Custom Property Group with name \"" + cbbGroup.Text + "\" doesn't exists.");
     }
 }