private void HandleAreaPrepared(object sender, System.EventArgs args) { pixbuf = PixbufUtils.TransformOrientation(loader.Pixbuf, orientation, false); if (thumb != null && pixbuf != null) { thumb.Composite(pixbuf, 0, 0, pixbuf.Width, pixbuf.Height, 0.0, 0.0, pixbuf.Width / (double)thumb.Width, pixbuf.Height / (double)thumb.Height, Gdk.InterpType.Bilinear, 0xff); } if (thumb != null) { if (!ThumbnailGenerator.ThumbnailIsValid(thumb, uri)) { FSpot.ThumbnailGenerator.Default.Request(uri, 0, 256, 256); } } area_prepared = true; if (AreaUpdated != null) { AreaPrepared(this, new AreaPreparedArgs(false)); } if (thumb != null) { thumb.Dispose(); } thumb = null; }
public void StringNames(string name) { string path = CreateFile(name, 1024); string thumb_path = ThumbnailGenerator.ThumbnailPath(path); ThumbnailGenerator.Create(path); Assert.IsTrue(File.Exists(thumb_path), String.Format("Missing: {0} created from {1}", thumb_path, path)); using (Gdk.Pixbuf thumb = new Gdk.Pixbuf(thumb_path)) { Assert.IsNotNull(thumb); Assert.AreEqual(thumb.GetOption(ThumbUri), UriList.PathToFileUriEscaped(path)); Assert.AreEqual(new Uri(thumb.GetOption(ThumbUri)), UriList.PathToFileUri(path)); Assert.IsTrue(ThumbnailGenerator.ThumbnailIsValid(thumb, UriList.PathToFileUri(path))); } File.Delete(path); File.Delete(thumb_path); }
public void UriNames(string name) { string path = CreateFile(name, 768); Uri uri = new Uri(Gnome.Vfs.Uri.GetUriFromLocalPath(path)); string string_path = ThumbnailGenerator.ThumbnailPath(path); string thumb_path = ThumbnailGenerator.ThumbnailPath(uri); Assert.AreEqual(thumb_path, string_path); ThumbnailGenerator.Create(uri); Assert.IsTrue(File.Exists(thumb_path), String.Format("Missing: {0} created from {1}", thumb_path, uri)); using (Gdk.Pixbuf thumb = new Gdk.Pixbuf(thumb_path)) { Assert.IsNotNull(thumb); Assert.AreEqual(thumb.GetOption(ThumbUri), UriList.UriToStringEscaped(uri)); Assert.AreEqual(new Uri(thumb.GetOption(ThumbUri)), uri); Assert.IsTrue(ThumbnailGenerator.ThumbnailIsValid(thumb, uri)); } File.Delete(thumb_path); File.Delete(path); }