Пример #1
0
        public ReaderViewBase()
        {
            this.DefaultStyleKey = typeof(ReaderViewBase);

            _gestureRecognizer = new GestureRecognizer();
            _gestureRecognizer.GestureSettings        = GestureSettings.ManipulationTranslateX;
            _gestureRecognizer.ManipulationStarted   += _gestureRecognizer_ManipulationStarted;
            _gestureRecognizer.ManipulationUpdated   += _gestureRecognizer_ManipulationUpdated;
            _gestureRecognizer.ManipulationCompleted += _gestureRecognizer_ManipulationCompleted;

            PointerWheelChangedEventHandler = new PointerEventHandler(_PointerWheelChanged);
            PointerPressedEventHandler      = new PointerEventHandler(_PointerPressed);
            PointerMovedEventHandler        = new PointerEventHandler(_PointerMoved);
            PointerReleasedEventHandler     = new PointerEventHandler(_PointerReleased);
            PointerCanceledEventHandler     = new PointerEventHandler(_PointerCanceled);
            TouchTappedEventHandler         = new TappedEventHandler(_TouchTapped);
            TouchHoldingEventHandler        = new HoldingEventHandler(_TouchHolding);

            this.AddHandler(UIElement.PointerWheelChangedEvent, PointerWheelChangedEventHandler, true);
            this.AddHandler(UIElement.PointerPressedEvent, PointerPressedEventHandler, true);
            this.AddHandler(UIElement.PointerMovedEvent, PointerMovedEventHandler, true);
            this.AddHandler(UIElement.PointerReleasedEvent, PointerReleasedEventHandler, true);
            this.AddHandler(UIElement.PointerCanceledEvent, PointerCanceledEventHandler, true);
            this.AddHandler(UIElement.TappedEvent, TouchTappedEventHandler, true);
            this.AddHandler(UIElement.HoldingEvent, TouchHoldingEventHandler, true);
            this.SizeChanged += ReaderViewBase_SizeChanged;

            CreateContentDelayer = new EventDelayer();
            _tempOverflowList    = new List <RenderOverflow>();
            CreateContentDelayer.ResetWhenDelayed = true;
            CreateContentDelayer.Arrived         += CreateContentWaiter_Arrived;
        }
Пример #2
0
        internal static new void InvokeHandler(Delegate handler, IntPtr sender, IntPtr args)
        {
            HoldingEventHandler handler_ = (HoldingEventHandler)handler;

            if (handler_ != null)
            {
                handler_(Extend.GetProxy(sender, false), new HoldingEventArgs(args, false));
            }
        }
Пример #3
0
        public static void RemoveHoldingHandler(DependencyObject d, HoldingEventHandler handler)
        {
            UIElement element = d as UIElement;

            if (element != null)
            {
                element.RemoveHandler(HoldingEvent, handler);
            }
        }
Пример #4
0
        public static NetworkItemInfo ToNetworkItemInfo(this Microsoft.OneDrive.Sdk.Item item, TappedEventHandler tapped, RightTappedEventHandler rightTapped, HoldingEventHandler holding, bool isOrderByName)
        {
            var networkItemInfo = new NetworkItemInfo()
            {
                Id               = item.Id,
                Created          = (DateTime)item.CreatedDateTime?.DateTime,
                Modified         = (DateTime)item.LastModifiedDateTime?.DateTime,
                ServerType       = ServerTypes.OneDrive,
                IsFile           = item.File != null,
                Name             = item.Name,
                Size             = (long)item.Size,
                ParentFolderPath = item.ParentReference?.Path,
                Tapped           = tapped,
                RightTapped      = rightTapped,
                Holding          = holding,
                IsOrderByName    = isOrderByName,
            };

            return(networkItemInfo);
        }
Пример #5
0
 public static NetworkItemInfo ToNetworkItemInfo(this FtpItem item, Uri uri, TappedEventHandler tapped, RightTappedEventHandler rightTapped, HoldingEventHandler holding, bool isOrderByName)
 {
     return(new NetworkItemInfo()
     {
         ServerType = ServerTypes.FTP,
         Created = item.Created,
         IsFile = item.Type == FtpFileSystemObjectType.File,
         Modified = item.Modified,
         Name = item.Name,
         Size = item.Size,
         Uri = new Uri(uri, item.FullName),
         Tapped = tapped,
         RightTapped = rightTapped,
         Holding = holding,
         IsOrderByName = isOrderByName,
     });
 }
Пример #6
0
 public static NetworkItemInfo ToNetworkItemInfo(this WebDavSessionItem item, TappedEventHandler tapped, RightTappedEventHandler rightTapped, HoldingEventHandler holding, bool isOrderByName)
 {
     return(new NetworkItemInfo()
     {
         ServerType = ServerTypes.WebDAV,
         ContentType = item.ContentType,
         Created = item.CreationDate.GetValueOrDefault(),
         //IsFile = !item.IsCollection && item.ContentType?.ToLower() != "httpd/unix-directory",
         IsFile = !item.IsFolder.GetValueOrDefault() || item.ContentType?.ToLower() != "httpd/unix-directory",
         Modified = item.LastModified.GetValueOrDefault(),
         Name = item.Name,
         Size = item.ContentLength.GetValueOrDefault(),
         Uri = item.Uri,
         Tapped = tapped,
         RightTapped = rightTapped,
         Holding = holding,
         IsOrderByName = isOrderByName,
     });
 }