コード例 #1
0
        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;
        }
コード例 #2
0
            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);
            }
コード例 #3
0
            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);
            }