From abcbcc342f03ad955683315c204d4bd27b34550f Mon Sep 17 00:00:00 2001 From: Grigory Chudov Date: Sun, 21 Apr 2013 12:59:46 -0400 Subject: [PATCH] CUERipper: Preview large cover art --- CUERipper/frmCUERipper.Designer.cs | 5 +++-- CUERipper/frmCUERipper.cs | 31 ++++++++++++++++++++---------- CUERipper/frmCUERipper.resx | 4 ++-- 3 files changed, 26 insertions(+), 14 deletions(-) diff --git a/CUERipper/frmCUERipper.Designer.cs b/CUERipper/frmCUERipper.Designer.cs index dd76e83..8648d16 100644 --- a/CUERipper/frmCUERipper.Designer.cs +++ b/CUERipper/frmCUERipper.Designer.cs @@ -715,8 +715,9 @@ namespace CUERipper this.pictureBox1.Name = "pictureBox1"; this.pictureBox1.TabStop = false; this.pictureBox1.MouseClick += new System.Windows.Forms.MouseEventHandler(this.pictureBox1_MouseClick); - this.pictureBox1.MouseLeave += new System.EventHandler(this.pictureBox1_MouseLeave); - this.pictureBox1.MouseMove += new System.Windows.Forms.MouseEventHandler(this.pictureBox1_MouseMove); + this.pictureBox1.MouseDown += new System.Windows.Forms.MouseEventHandler(this.pictureBox1_MouseDown); + this.pictureBox1.MouseMove += new System.Windows.Forms.MouseEventHandler(this.pictureBox1_MouseDown); + this.pictureBox1.MouseUp += new System.Windows.Forms.MouseEventHandler(this.pictureBox1_MouseUp); // // backgroundWorkerArtwork // diff --git a/CUERipper/frmCUERipper.cs b/CUERipper/frmCUERipper.cs index 2eb7e03..d67d3ae 100644 --- a/CUERipper/frmCUERipper.cs +++ b/CUERipper/frmCUERipper.cs @@ -1464,7 +1464,7 @@ namespace CUERipper { if (albumArt.Count == 0) { - pictureBox1.Image = null; + resetPictureBox(null); return; } @@ -1485,7 +1485,7 @@ namespace CUERipper if (currentAlbumArt >= albumArt.Count) currentAlbumArt = 0; - pictureBox1.Image = albumArt[currentAlbumArt].image; + resetPictureBox(null); } private void backgroundWorkerArtwork_DoWork(object sender, DoWorkEventArgs e) @@ -1602,14 +1602,21 @@ namespace CUERipper return b; } - private void pictureBox1_MouseMove(object sender, MouseEventArgs e) + private void resetPictureBox(MouseEventArgs e) { - if (currentAlbumArt < 0 || currentAlbumArt >= albumArt.Count || _config.advanced.coversSearch != CUEConfigAdvanced.CTDBCoversSearch.Large) + if (currentAlbumArt < 0 || currentAlbumArt >= albumArt.Count) return; + if (e == null || e.Button != System.Windows.Forms.MouseButtons.Right || _config.advanced.coversSearch != CUEConfigAdvanced.CTDBCoversSearch.Large) + { + pictureBox1.Image = albumArt[currentAlbumArt].image; + return; + } + var isz = new RectangleF(0.0f, 0.0f, albumArt[currentAlbumArt].image.Width, albumArt[currentAlbumArt].image.Height); - float ratio = Math.Min(isz.Width / pictureBox1.ClientSize.Width, isz.Height / pictureBox1.ClientSize.Height); - ratio = Math.Min(ratio, 1.0f); + //float ratio = Math.Min(isz.Width / pictureBox1.ClientSize.Width, isz.Height / pictureBox1.ClientSize.Height); + //ratio = Math.Min(ratio, 1.0f); + float ratio = 1.0f; var rf = new RectangleF( e.Location.X * (isz.Width / pictureBox1.ClientSize.Width - ratio), e.Location.Y * (isz.Height / pictureBox1.ClientSize.Height - ratio), @@ -1618,11 +1625,15 @@ namespace CUERipper pictureBox1.Image = cropImage(albumArt[currentAlbumArt].image, pictureBox1.ClientSize, rf); } - private void pictureBox1_MouseLeave(object sender, EventArgs e) + private void pictureBox1_MouseDown(object sender, MouseEventArgs e) { - if (currentAlbumArt < 0 || currentAlbumArt >= albumArt.Count) - return; - pictureBox1.Image = albumArt[currentAlbumArt].image; + if (e.Button == System.Windows.Forms.MouseButtons.Right) + resetPictureBox(e); + } + + private void pictureBox1_MouseUp(object sender, MouseEventArgs e) + { + resetPictureBox(null); } } diff --git a/CUERipper/frmCUERipper.resx b/CUERipper/frmCUERipper.resx index e08791f..37a60e1 100644 --- a/CUERipper/frmCUERipper.resx +++ b/CUERipper/frmCUERipper.resx @@ -816,7 +816,7 @@ AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAABy - CQAAAk1TRnQBSQFMAgEBBAEAAWwBAgFsAQIBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo + CQAAAk1TRnQBSQFMAgEBBAEAAaQBAgGkAQIBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo AwABQAMAASADAAEBAQABCAYAAQgYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5 AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA @@ -966,7 +966,7 @@ AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAAY - EgAAAk1TRnQBSQFMAgEBCwEAAWwBAgFsAQIBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo + EgAAAk1TRnQBSQFMAgEBCwEAAaQBAgGkAQIBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo AwABQAMAATADAAEBAQABCAYAAQwYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5 AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA