/// <summary> /// Saves the mapping of the original RGB colors to modified ARGB colors to file. /// </summary> private void SaveMapping() { AlphaRemappingTable map = new AlphaRemappingTable(); foreach (var colorMapping in colorMappingTable) if (colorMapping.Key != colorMapping.Value) map.AddMapping( new RgbColor(colorMapping.Key.R, colorMapping.Key.G, colorMapping.Key.B), new ArgbColor(colorMapping.Value.A, colorMapping.Value.R, colorMapping.Value.G, colorMapping.Value.B)); string mapFilePath = Path.ChangeExtension(filePath, AlphaRemappingTable.FileExtension); if (map.SaveMap(mapFilePath)) MessageBox.Show(this, "Lookup mapping saved to '" + mapFilePath + "'", "Mapping Saved", MessageBoxButtons.OK, MessageBoxIcon.Information); else MessageBox.Show(this, "Source and destination colors match. Mapping file '" + mapFilePath + "' deleted.", "Mapping Deleted", MessageBoxButtons.OK, MessageBoxIcon.Information); changed = false; }