private void CompatibleGameVersionsDialog_Shown(object sender, EventArgs e) { if (_inst.CompatibleVersionsAreFromDifferentGameVersion) { MessageBox.Show(Properties.Resources.CompatibleGameVersionsDialogGameUpdated); CancelChooseCompatibleVersionsButton.Visible = false; GameVersionLabel.Text = string.Format( Properties.Resources.CompatibleGameVersionsDialogVersionDetails, _inst.Version(), _inst.GameVersionWhenCompatibleVersionsWereStored ); GameVersionLabel.ForeColor = System.Drawing.Color.Red; } }
private string[] rowItems(GameInstance instance, bool includeGame, bool includePlayTime) { var list = new List <string> { !instance.Valid ? string.Format(Properties.Resources.ManageGameInstancesNameColumnInvalid, instance.Name) : !(_manager.CurrentInstance?.Equals(instance) ?? false) && instance.IsMaybeLocked ? string.Format(Properties.Resources.ManageGameInstancesNameColumnLocked, instance.Name) : instance.Name }; if (includeGame) { list.Add(instance.game.ShortName); } list.Add(FormatVersion(instance.Version())); if (includePlayTime) { list.Add(instance.playTime?.ToString() ?? ""); } list.Add(instance.GameDir().Replace('/', Path.DirectorySeparatorChar)); return(list.ToArray()); }
/// <summary> /// Initialize the compatible game versions dialog /// </summary> /// <param name="inst">Game instance</param> /// <param name="centerScreen">true to center the dialog on the screen, false to center on the parent</param> public CompatibleGameVersionsDialog(GameInstance inst, bool centerScreen) { this._inst = inst; InitializeComponent(); if (centerScreen) { StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; } List <GameVersion> compatibleVersions = inst.GetCompatibleVersions(); GameVersionLabel.Text = inst.Version()?.ToString() ?? Properties.Resources.CompatibleGameVersionsDialogNone; GameLocationLabel.Text = inst.GameDir().Replace('/', Path.DirectorySeparatorChar); List <GameVersion> knownVersions = inst.game.KnownVersions; List <GameVersion> majorVersionsList = CreateMajorVersionsList(knownVersions); List <GameVersion> compatibleVersionsLeftOthers = new List <GameVersion>(compatibleVersions); compatibleVersionsLeftOthers.RemoveAll((el) => knownVersions.Contains(el) || majorVersionsList.Contains(el)); SortAndAddVersionsToList(compatibleVersionsLeftOthers, compatibleVersions); SortAndAddVersionsToList(majorVersionsList, compatibleVersions); SortAndAddVersionsToList(knownVersions, compatibleVersions); }