private void UpdateResourcePackContextMenuItem_Click(object sender, EventArgs e) { if (SelectedImageMetadata.Count == 0) { return; } string fileName; using (var op = new OpenFileDialog { Filter = Consts.ExportResourcePackFilter }) { if (op.ShowDialog() != DialogResult.OK) { return; } fileName = op.FileName; } var resourcePack = m_resourcePackManager.LoadFromFile(fileName); var images = SelectedImageMetadata.Select(x => { var imageData = m_firmware.ReadImage(x); var imageSize = imageData.GetSize(); return(new ExportedImage(x.Index, imageSize, imageData)); }).ToList(); using (var createResourcePackWindow = new CreateResourcePackWindow(m_resourcePackManager, m_definitions, m_firmware.Definition.Name, images, resourcePack)) { createResourcePackWindow.ShowDialog(); } }
private void ExportBinaryMenuItem_Click(object sender, EventArgs e) { if (SelectedImageMetadata.Count == 0) { return; } string directoryPath; using (var fb = new FolderBrowserDialog()) { if (fb.ShowDialog() != DialogResult.OK) { return; } directoryPath = fb.SelectedPath; } var exportData = SelectedImageMetadata.Select(x => new { Metadata = x, ImageBytes = m_firmware.ReadImageAsByteArray(x) }); foreach (var data in exportData) { try { var fileName = Path.Combine(directoryPath, "0x" + data.Metadata.Index.ToString("X2") + ".bin"); File.WriteAllBytes(fileName, data.ImageBytes); } catch { // Ignore } } }
private void PasteButton_Click(object sender, EventArgs e) { if (SelectedImageMetadata.Count == 0) { return; } var copiedImages = m_clipboardManager.GetData(); ImportImages(SelectedImageMetadata.Select(x => x.Index).ToList(), copiedImages); }
private void ExportContextMenuItem_Click(object sender, EventArgs e) { if (SelectedImageMetadata.Count == 0) { return; } var images = SelectedImageMetadata.Select(x => { var imageData = m_firmware.ReadImage(x); var imageSize = imageData.GetSize(); return(new ExportedImage(x.Index, imageSize, imageData)); }).ToList(); using (var createResourcePackWindow = new CreateResourcePackWindow(m_resourcePackManager, m_firmware.Definition.Name, images)) { createResourcePackWindow.ShowDialog(); } }
private void ExportBitmapMenuItem_Click(object sender, EventArgs e) { if (SelectedImageMetadata.Count == 0) { return; } string directoryPath; using (var fb = new FolderBrowserDialog()) { if (fb.ShowDialog() != DialogResult.OK) { return; } directoryPath = fb.SelectedPath; } var exportData = SelectedImageMetadata.Select(x => new { Metadata = x, ImageData = m_firmware.ReadImage(x) }); foreach (var data in exportData) { try { using (var image = BitmapProcessor.Create1BitBitmapFromRaw(data.ImageData)) { var fileName = Path.Combine(directoryPath, "0x" + data.Metadata.Index.ToString("X2") + Consts.BitmapFileExtensionWoAsterisk); image.Save(fileName, ImageFormat.Bmp); } } catch { // Ignore } } }