예제 #1
0
 public ImageInformation(ImageViewerImageCallback imageCallback, ImageViewerDetailsCallback detailsCallback, int position)
 {
     _imageCallback   = imageCallback;
     _detailsCallback = detailsCallback;
     _position        = position;
     _details         = Lazier.Create(GetDetails);
 }
예제 #2
0
        public ImageViewer([NotNull] IEnumerable <T> items, int position, [CanBeNull] ImageViewerImageCallback <T> imageCallback,
                           [CanBeNull] ImageViewerDetailsCallback <T> detailsCallback = null)
        {
            _list = items.ToArray();
            if (imageCallback == null)
            {
                imageCallback = x => Task.FromResult((object)x);
            }

            FinishInitialization(new ViewModel <T>(i => imageCallback(_list.ArrayElementAtOrDefault(i)), _list.Length, position,
                                                   i => detailsCallback?.Invoke(_list.ArrayElementAtOrDefault(i)), _list));
        }
예제 #3
0
 public ViewModel([NotNull] ImageViewerImageCallback imageCallback, int count, int position, [CanBeNull] ImageViewerDetailsCallback detailsCallback,
                  TModel[] list)
     : base(imageCallback, count, position, detailsCallback)
 {
     _list = list;
 }
예제 #4
0
 public ImageViewer([NotNull] T item, [CanBeNull] ImageViewerImageCallback <T> imageCallback,
                    [CanBeNull] ImageViewerDetailsCallback <T> detailsCallback = null) : this(new[] { item }, imageCallback, detailsCallback)
 {
 }
예제 #5
0
 public ImageViewer([NotNull] ImageViewerImageCallback imageCallback, int count, int position,
                    [CanBeNull] ImageViewerDetailsCallback detailsCallback = null)
 {
     FinishInitialization(new ViewModel(imageCallback, count, position, detailsCallback));
 }