private void BrowseButtonClick(object sender, EventArgs e) { int offset = (int)this.offsetNumericUpDown.Value; bool twice = this.twiceCheckBox.Checked; if (this.compressRadioButton.Checked) { byte[] data = null; if (UITools.ShowImportDataDialog(fileName => data = File.ReadAllBytes(fileName), FileDialogFilters.Binary)) { int limit = (int)this.offsetNumericUpDown.Maximum; CodecControl.Compress(data, offset, twice, limit); } } else { UITools.ShowExportDataDialog(fileName => File.WriteAllBytes(fileName, Context.Game.Decompress(offset, twice)), string.Empty, FileDialogFilters.Binary); } }
public static void ShowExportBinaryDataDialog(Func <byte[]> getDataMethod, string fileName, string filter) { UITools.ShowExportDataDialog(filePath => File.WriteAllBytes(filePath, getDataMethod()), fileName, filter); }
public static void ShowExportTilesetGraphicsDialog(Image image, Tile[] tileset, string fileName) { UITools.ShowExportDataDialog(filePath => UITools.ExportTilesetGraphics(image, tileset, filePath), fileName, FileDialogFilters.ImageOrBinary); }