示例#1
0
        /// <summary>
        /// Loads images while we have some images to load and enought memory.
        /// </summary>
        /// <returns>true if we have some more images to load but don't have memory</returns>
        bool loadImages(Data data)
        {
            var proc = System.Diagnostics.Process.GetCurrentProcess();

            do
            {
                if (data.Cancelled)
                {
                    return(false);
                }
                string path = mImagesScanner.Next();
                if (path == null)
                {
                    return(false);
                }
                PhotoSlider.Image.SliderImage img = null;
                try
                {
                    img = mImageLoader.Load(path);
                }
                catch (OutOfMemoryException)
                {
                    if (img != null)
                    {
                        img.Dispose();
                    }
                    mImagesScanner.Return(path);
                    break;
                }
                data.AddImage(new StackableImage(path, img));
            }while (true);
            return(true);
        }
示例#2
0
 public StackableImage(string filePath, PhotoSlider.Image.SliderImage image)
     : base(filePath, image)
 {
 }
示例#3
0
 public ImageDescriptor(string fileName, PhotoSlider.Image.SliderImage image)
 {
     Path   = fileName;
     mImage = image;
 }