public static Bitmap GetPreviewImage(object obj, int desiredWidth, int desiredHeight, PreviewSizeMode mode = PreviewSizeMode.FixedNone)
        {
            PreviewImageQuery query = new PreviewImageQuery(obj, desiredWidth, desiredHeight, mode);

            GetPreview(query);
            return(query.Result);
        }
        void IPreviewGenerator.Perform(IPreviewQuery query)
        {
            PreviewImageQuery imgQuery = query as PreviewImageQuery;

            if (imgQuery != null)
            {
                this.Perform((T)query.Source, imgQuery);
                return;
            }
            PreviewSoundQuery sndQuery = query as PreviewSoundQuery;

            if (sndQuery != null)
            {
                this.Perform((T)query.Source, sndQuery);
                return;
            }
        }
 public virtual void Perform(T obj, PreviewImageQuery query)
 {
 }