private void PopulateImage(DvbSubPes PesPayload) { ShowSubsPanels(true, false); Image old = this.pictureBoxSubs.Image; // build an image to hold the image, then add the image over Image subImage = PesPayload.GetImageFull(this.checkBoxShowObjectBorder.Checked); //Image framedImage = new Bitmap(subImage.Width + 2, subImage.Height + 2); //Graphics g = Graphics.FromImage(framedImage); //g.DrawImage(subImage, 1, 1); //this.pictureBoxSubs.Image = g this.pictureBoxSubs.Image = subImage; if (old != null) { old.Dispose(); } }
private void TreeViewItemChange() { this.listViewDetails.BeginUpdate(); try { if (this.treeViewMain.SelectedNode == null) { return; } if (this.treeViewMain.SelectedNode.Tag != null) { bool getParentBitmap = true; string tagType = this.treeViewMain.SelectedNode.Tag.GetType().ToString(); switch (tagType) { case "Nikse.SubtitleEdit.Core.ContainerFormats.TransportStream.PageCompositionSegment": ((PageCompositionSegment)this.treeViewMain.SelectedNode.Tag).PopulateListViewDetails(this.listViewDetails); break; case "Nikse.SubtitleEdit.Core.ContainerFormats.TransportStream.RegionCompositionSegment": ((RegionCompositionSegment)this.treeViewMain.SelectedNode.Tag).PopulateListViewDetails(this.listViewDetails); break; case "Nikse.SubtitleEdit.Core.ContainerFormats.TransportStream.ClutDefinitionSegment": ((ClutDefinitionSegment)this.treeViewMain.SelectedNode.Tag).PopulateListViewDetails(this.listViewDetails); break; case "Nikse.SubtitleEdit.Core.ContainerFormats.TransportStream.ObjectDataSegment": ((ObjectDataSegment)this.treeViewMain.SelectedNode.Tag).PopulateListViewDetails(this.listViewDetails); break; case "Nikse.SubtitleEdit.Core.ContainerFormats.TransportStream.DisplayDefinitionSegment": ((DisplayDefinitionSegment)this.treeViewMain.SelectedNode.Tag).PopulateListViewDetails(this.listViewDetails); break; case "Nikse.SubtitleEdit.Core.ContainerFormats.TransportStream.EndOfDisplaySetSegment": ((EndOfDisplaySetSegment)this.treeViewMain.SelectedNode.Tag).PopulateListViewDetails(this.listViewDetails); break; case "Nikse.SubtitleEdit.Core.ContainerFormats.TransportStream.DvbSubPes": this.listViewDetails.Items.Clear(); DvbSubPes tmp2 = (DvbSubPes)this.treeViewMain.SelectedNode.Tag; PopulateImage(tmp2); break; case "Nikse.SubtitleEdit.Core.Paragraph": // clear details // show subtitle page Console.WriteLine("Nikse.SubtitleEdit.Core.Paragraph"); Nikse.SubtitleEdit.Core.Paragraph tmp3 = (Nikse.SubtitleEdit.Core.Paragraph) this.treeViewMain.SelectedNode.Tag; PopulateTeletextParagraph(tmp3); break; default: getParentBitmap = false; Console.WriteLine("Unknown Segment Type"); this.listViewDetails.Items.Clear(); break; } if ((getParentBitmap) && (this.treeViewMain.SelectedNode.Parent.Tag != null)) { DvbSubPes tmp2 = (DvbSubPes)this.treeViewMain.SelectedNode.Parent.Tag; PopulateImage(tmp2); } } else { Console.WriteLine("tag null"); } } finally { this.listViewDetails.EndUpdate(); } }