/** * Fills the toMigrationCombo ComboBox data. */ public static void FillTargetMigrationComboOptions() { ComboBox migrateSourceCombo = MainForm.GetMigrateSourceCombo(); ComboBox migrateTargetCombo = MainForm.GetMigrateTargetCombo(); if (migrateTargetCombo.Items.Count <= 0) { FillMigrationComboOptions(migrateTargetCombo, defaultIgnoreToMigrationItems, true); //Making sure we have at least 1 simulator to migrate to, else we exit the program. if (migrateTargetCombo.Items.Count == 0) { MessageBox.Show("The program could not identify any simulators to migrate to on this computer.\nThe application will now exit."); Application.Exit(); } //We don't need to return because we want to check if we need to remove un-needed options from the "from" combo box. } int ignoreID = 0; int currentMigrateFromSelectedValue = GetSelectedItemValue(migrateSourceCombo); if (migrateTargetCombo.SelectedIndex >= 0) { SimulatorOption selectedItem = GetSelectedItem(migrateTargetCombo); foreach (SimulatorOption migrateFromComboItem in migrateSourceCombo.Items) { if (selectedItem.Equals(migrateFromComboItem)) { ignoreID = selectedItem.GetValue(); } } } if (ignoreID > 0) { int defaultLength = defaultIgnoreFromMigrationItems.Length; int[] ignoreIDs = new int[defaultLength + 1]; defaultIgnoreFromMigrationItems.CopyTo(ignoreIDs, 0); ignoreIDs[defaultLength] = ignoreID; FillMigrationComboOptions(migrateSourceCombo, ignoreIDs, false); } else { FillMigrationComboOptions(migrateSourceCombo, defaultIgnoreFromMigrationItems, false); } if (SettingsHandler.GetSetting("migrationTarget").Equals("") && migrateTargetCombo.SelectedIndex >= 0 && !defaultTargetChosen) { SelectItemByVal(migrateTargetCombo, defaultMigrateTo); defaultTargetChosen = true; } SelectItemByVal(migrateSourceCombo, currentMigrateFromSelectedValue); }
/** * Fills the fromMigrationCombo ComboBox data. */ public static void FillSourceMigrationComboOptions() { ComboBox migrateSourceCombo = MainForm.GetMigrateSourceCombo(); ComboBox migrateTargetCombo = MainForm.GetMigrateTargetCombo(); if (migrateSourceCombo.Items.Count <= 0) { FillMigrationComboOptions(migrateSourceCombo, defaultIgnoreFromMigrationItems, false); return; } int ignoreID = 0; int currentMigrateToSelectedValue = GetSelectedItemValue(migrateTargetCombo); if (migrateSourceCombo.SelectedIndex >= 0) { SimulatorOption selectedItem = GetSelectedItem(migrateSourceCombo); foreach (SimulatorOption migrateToComboItem in migrateTargetCombo.Items) { if (selectedItem.Equals(migrateToComboItem)) { ignoreID = selectedItem.GetValue(); break; } } } if (ignoreID > 0) { int defaultLength = defaultIgnoreToMigrationItems.Length; int[] ignoreIDs = new int[defaultLength + 1]; defaultIgnoreToMigrationItems.CopyTo(ignoreIDs, 0); ignoreIDs[defaultLength] = ignoreID; FillMigrationComboOptions(migrateTargetCombo, ignoreIDs, true); } else { FillMigrationComboOptions(migrateTargetCombo, defaultIgnoreToMigrationItems, true); } SelectItemByVal(migrateTargetCombo, currentMigrateToSelectedValue); }