private void comboBoxCorrectlyLitXX_SelectedIndexChanged(object sender, EventArgs e) { try { if (comboBoxCorrectlyLitXX.SelectedItem == null) { return; } ComboBoxItemXX cbItem = (ComboBoxItemXX)comboBoxCorrectlyLitXX.SelectedItem; comboBoxSourceSVIEXunits.Items.Clear(); String sviex = Path.GetFileNameWithoutExtension(cbItem.xxParser.Name) + "_"; foreach (IWriteFile file in cbItem.ppForm.Editor.Parser.Subfiles) { if (file.Name.StartsWith(sviex, StringComparison.InvariantCultureIgnoreCase) && file.Name.EndsWith(".sviex", StringComparison.InvariantCultureIgnoreCase)) { comboBoxSourceSVIEXunits.Items.Add(file); } } comboBoxCorrectlyLitMeshes.Items.Clear(); if (comboBoxSourceSVIEXunits.Items.Count > 0) { sviexParser srcParser = PluginsPPD.OpenSVIEX((ppParser)Gui.Scripting.Variables[cbItem.ppForm.ParserVar], ((IWriteFile)comboBoxSourceSVIEXunits.Items[0]).Name); Dictionary <string, ComboBoxItemMesh> meshFrameDic = new Dictionary <string, ComboBoxItemMesh>(); foreach (sviParser section in srcParser.sections) { ComboBoxItemMesh meshItem; if (!meshFrameDic.TryGetValue(section.meshName, out meshItem)) { foreach (xxFrame meshFrame in cbItem.xxForm.Editor.Meshes) { if (meshFrame.Name == section.meshName) { meshItem = new ComboBoxItemMesh(meshFrame, section.submeshIdx.ToString()); comboBoxCorrectlyLitMeshes.Items.Add(meshItem); meshFrameDic.Add(section.meshName, meshItem); break; } } } else { meshItem.submeshes += ", " + section.submeshIdx; } } comboBoxCorrectlyLitMeshes.SelectedIndex = 0; buttonApproximateNormals.Enabled = comboBoxCorrectlyLitXX.SelectedItem != comboBoxTargetXX.SelectedItem; } else { comboBoxSourceSVIEXunits.Items.Add("No SVIEX present"); buttonApproximateNormals.Enabled = false; } comboBoxSourceSVIEXunits.SelectedIndex = 0; } catch (Exception ex) { Utility.ReportException(ex); } }
public void FillMeshComboBoxes() { List <DockContent> formXXList; if (!Gui.Docking.DockContents.TryGetValue(typeof(FormXX), out formXXList)) { return; } List <DockContent> formPPList; if (!Gui.Docking.DockContents.TryGetValue(typeof(FormPP), out formPPList)) { return; } comboBoxTargetXX.Items.Clear(); comboBoxCorrectlyLitXX.Items.Clear(); foreach (FormPP form in formPPList) { foreach (IWriteFile file in form.Editor.Parser.Subfiles) { if (file is xxParser) { foreach (FormXX xxForm in formXXList) { if (Gui.Scripting.Variables[xxForm.ParserVar] == file) { ComboBoxItemXX cbItem = new ComboBoxItemXX(); cbItem.meshes = new List <ComboBoxItemMesh>(xxForm.listViewMesh.SelectedItems.Count); cbItem.xxParser = (xxParser)file; cbItem.ppForm = form; cbItem.xxForm = xxForm; foreach (ListViewItem item in xxForm.listViewMesh.SelectedItems) { ComboBoxItemMesh cbiMesh = new ComboBoxItemMesh(xxForm.Editor.Meshes[(int)item.Tag], "-1"); cbItem.meshes.Add(cbiMesh); } if (xxForm.listViewMesh.SelectedItems.Count > 0) { comboBoxTargetXX.Items.Add(cbItem); } comboBoxCorrectlyLitXX.Items.Add(cbItem); break; } } } } } if (comboBoxTargetXX.Items.Count > 0) { comboBoxTargetXX.SelectedIndex = 0; } }
private void comboBoxCorrectlyLitXX_SelectedIndexChanged(object sender, EventArgs e) { try { if (comboBoxCorrectlyLitXX.SelectedItem == null) { return; } ComboBoxItemXX cbItem = (ComboBoxItemXX)comboBoxCorrectlyLitXX.SelectedItem; comboBoxSourceSVIEXunits.Items.Clear(); String sviex = Path.GetFileNameWithoutExtension(cbItem.xxParser.Name) + "_"; foreach (IWriteFile file in cbItem.ppForm.Editor.Parser.Subfiles) { if (file.Name.StartsWith(sviex, StringComparison.InvariantCultureIgnoreCase) && file.Name.EndsWith(".sviex", StringComparison.InvariantCultureIgnoreCase)) { comboBoxSourceSVIEXunits.Items.Add(file); } } comboBoxCorrectlyLitMeshes.Items.Clear(); if (comboBoxSourceSVIEXunits.Items.Count > 0) { sviexParser srcParser = PluginsPPD.OpenSVIEX((ppParser)Gui.Scripting.Variables[cbItem.ppForm.ParserVar], ((IWriteFile)comboBoxSourceSVIEXunits.Items[0]).Name); Dictionary<string, ComboBoxItemMesh> meshFrameDic = new Dictionary<string, ComboBoxItemMesh>(); foreach (sviParser section in srcParser.sections) { ComboBoxItemMesh meshItem; if (!meshFrameDic.TryGetValue(section.meshName, out meshItem)) { foreach (xxFrame meshFrame in cbItem.xxForm.Editor.Meshes) { if (meshFrame.Name == section.meshName) { meshItem = new ComboBoxItemMesh(meshFrame, section.submeshIdx.ToString()); comboBoxCorrectlyLitMeshes.Items.Add(meshItem); meshFrameDic.Add(section.meshName, meshItem); break; } } } else { meshItem.submeshes += ", " + section.submeshIdx; } } comboBoxCorrectlyLitMeshes.SelectedIndex = 0; buttonApproximateNormals.Enabled = comboBoxCorrectlyLitXX.SelectedItem != comboBoxTargetXX.SelectedItem; } else { comboBoxSourceSVIEXunits.Items.Add("No SVIEX present"); buttonApproximateNormals.Enabled = false; } comboBoxSourceSVIEXunits.SelectedIndex = 0; } catch (Exception ex) { Utility.ReportException(ex); } }
public void FillMeshComboBoxes() { List<DockContent> formXXList; if (!Gui.Docking.DockContents.TryGetValue(typeof(FormXX), out formXXList)) { return; } List<DockContent> formPPList; if (!Gui.Docking.DockContents.TryGetValue(typeof(FormPP), out formPPList)) { return; } comboBoxTargetXX.Items.Clear(); comboBoxCorrectlyLitXX.Items.Clear(); foreach (FormPP form in formPPList) { foreach (IWriteFile file in form.Editor.Parser.Subfiles) { if (file is xxParser) { foreach (FormXX xxForm in formXXList) { if (Gui.Scripting.Variables[xxForm.ParserVar] == file) { ComboBoxItemXX cbItem = new ComboBoxItemXX(); cbItem.meshes = new List<ComboBoxItemMesh>(xxForm.listViewMesh.SelectedItems.Count); cbItem.xxParser = (xxParser)file; cbItem.ppForm = form; cbItem.xxForm = xxForm; foreach (ListViewItem item in xxForm.listViewMesh.SelectedItems) { ComboBoxItemMesh cbiMesh = new ComboBoxItemMesh(xxForm.Editor.Meshes[(int)item.Tag], "-1"); cbItem.meshes.Add(cbiMesh); } if (xxForm.listViewMesh.SelectedItems.Count > 0) { comboBoxTargetXX.Items.Add(cbItem); } comboBoxCorrectlyLitXX.Items.Add(cbItem); break; } } } } } if (comboBoxTargetXX.Items.Count > 0) { comboBoxTargetXX.SelectedIndex = 0; } }
private void textBoxSourceSubmeshes_AfterEditTextChanged(object sender, EventArgs e) { ComboBoxItemMesh cbItem = (ComboBoxItemMesh)comboBoxCorrectlyLitMeshes.SelectedItem; cbItem.submeshes = textBoxSourceSubmeshes.Text; }
private void comboBoxCorrectlyLitMeshes_SelectedIndexChanged(object sender, EventArgs e) { ComboBoxItemMesh cbItem = (ComboBoxItemMesh)comboBoxCorrectlyLitMeshes.SelectedItem; textBoxSourceSubmeshes.Text = cbItem.submeshes; }
private void comboBoxTargetMeshes_SelectedIndexChanged(object sender, EventArgs e) { ComboBoxItemMesh cbItem = (ComboBoxItemMesh)comboBoxTargetMeshes.SelectedItem; textBoxTargetedSubmeshes.Text = cbItem.submeshes; }