public PanContainer ()
		{
			// Set PanGestureRecognizer.TouchPoints to control the 
			// number of touch points needed to pan
			var panGesture = new PanGestureRecognizer ();
			panGesture.PanUpdated += OnPanUpdated;
			GestureRecognizers.Add (panGesture);
		}
		public void UpdateGestureRecognizers(List<IGestureRecognizer> gestureRecognizers)
		{
			this.tapGestureRecognizer = (TapGestureRecognizer)gestureRecognizers.FirstOrDefault(s => s is TapGestureRecognizer);
			this.longPressGestureRecognizer = (LongPressGestureRecognizer)gestureRecognizers.FirstOrDefault(s => s is LongPressGestureRecognizer);
			this.panGestureRecognizer = (PanGestureRecognizer)gestureRecognizers.FirstOrDefault(s => s is PanGestureRecognizer);
			this.pinchGestureRecognizer = (PinchGestureRecognizer)gestureRecognizers.FirstOrDefault(s => s is PinchGestureRecognizer);
			this.rotationGestureRecognizer = (RotationGestureRecognizer)gestureRecognizers.FirstOrDefault(s => s is RotationGestureRecognizer);
			this.swipeGestureRecognizer = (SwipeGestureRecognizer)gestureRecognizers.FirstOrDefault(s => s is SwipeGestureRecognizer);
		}
Example #3
0
        public PinchToZoomContainer()
        {
            var pinchGesture = new PinchGestureRecognizer();

            pinchGesture.PinchUpdated += OnPinchUpdated;
            GestureRecognizers.Add(pinchGesture);

            var panGesture = new PanGestureRecognizer();

            panGesture.PanUpdated += OnPanUpdated;
            GestureRecognizers.Add(panGesture);
        }
Example #4
0
        public PanContainer()
        {
            PinchGestureRecognizer pinchGesture = new PinchGestureRecognizer();

            pinchGesture.PinchUpdated += PinchGesture_PinchUpdated;
            GestureRecognizers.Add(pinchGesture);

            var panGesture = new PanGestureRecognizer();

            panGesture.PanUpdated += OnPanUpdated;
            GestureRecognizers.Add(panGesture);
        }
Example #5
0
        public CusomMap()
        {
            var pinchGesture = new PinchGestureRecognizer();

            pinchGesture.PinchUpdated += OnPinchUpdated;
            GestureRecognizers.Add(pinchGesture);

            var panGesture = new PanGestureRecognizer();

            panGesture.PanUpdated += OnPanUpdated;
            GestureRecognizers.Add(panGesture);
        }
Example #6
0
        public SwipeCardView()
        {
            var view = new RelativeLayout();

            this.BackgroundColor = Color.FromHex(DefaultBackgroundColor);
            this.Content         = view;

            var panGesture = new PanGestureRecognizer();

            panGesture.PanUpdated += this.OnPanUpdated;
            this.GestureRecognizers.Add(panGesture);
        }
Example #7
0
        public CardsView(ICardProcessor frontViewProcessor, ICardProcessor backViewProcessor)
        {
            FrontViewProcessor = frontViewProcessor;
            BackViewProcessor  = backViewProcessor;

            if (Device.RuntimePlatform != Device.Android)
            {
                var panGesture = new PanGestureRecognizer();
                panGesture.PanUpdated += OnPanUpdated;
                GestureRecognizers.Add(panGesture);
            }
        }
Example #8
0
        public StrikeZoneGridView()
        {
            InitializeComponent();

            this.Content = CreateContent();

            _swipeGesture = new PanGestureRecognizer();

            _swipeGesture.PanUpdated += OnSwipeUpdated;

            Content.GestureRecognizers.Add(_swipeGesture);
        }
        public BoxAreaLayout()
        {
            var effect = new TEffect();

            effect.OnTouchAction += Effect_OnTouch;
            Effects.Add(effect);

            var pan = new PanGestureRecognizer();

            pan.PanUpdated += Pan_PanUpdated;
            GestureRecognizers.Add(pan);
        }
Example #10
0
        private void ApplyConfigToPicturePanel(SlidingPanelConfig config)
        {
            if (config.PictureImage != null)
            {
                _headerStackLayout                   = new StackLayout();
                _headerStackLayout.Orientation       = StackOrientation.Horizontal;
                _headerStackLayout.HorizontalOptions = LayoutOptions.FillAndExpand;
                _headerStackLayout.BackgroundColor   = config.HeaderBackgroundColor;

                TapGestureRecognizer headerTapGesture = new TapGestureRecognizer();
                headerTapGesture.Tapped += TapGesture_Tapped;
                _headerStackLayout.GestureRecognizers.Add(headerTapGesture);

                if (config.IsPanSupport == true)
                {
                    PanGestureRecognizer headerPanGesture = new PanGestureRecognizer();
                    headerPanGesture.PanUpdated += PanGesture_PanUpdated;
                    _headerStackLayout.GestureRecognizers.Add(headerPanGesture);
                }


                View topLeftButton = config.HeaderLeftButton;
                if (topLeftButton != null)
                {
                    _headerStackLayout.Children.Add(topLeftButton);
                }

                View topRightButton = config.HeaderRightButton;
                if (topRightButton != null)
                {
                    topRightButton.HorizontalOptions = LayoutOptions.EndAndExpand;
                    _headerStackLayout.Children.Add(topRightButton);
                }

                _pictureMainStackLayout                 = new StackLayout();
                _pictureMainStackLayout.Orientation     = StackOrientation.Vertical;
                _pictureMainStackLayout.BackgroundColor = config.PictureBackgroundColor;
                _pictureMainStackLayout.Children.Add(_headerStackLayout);

                _pictureImage = config.PictureImage;
                if (config.IsPanSupport == true)
                {
                    PanGestureRecognizer pictureImagePanGesture = new PanGestureRecognizer();
                    pictureImagePanGesture.PanUpdated += PanGesture_PanUpdated;
                    _pictureImage.GestureRecognizers.Add(pictureImagePanGesture);
                }
                _pictureMainStackLayout.Children.Add(_pictureImage);

                Rectangle layoutBound = new Rectangle(1, 1, 1, 1);
                _pictureAbsoluteLayout.Children.Add(_pictureMainStackLayout, layoutBound, AbsoluteLayoutFlags.All);
            }
        }
Example #11
0
        public PanContainer(View view, IDevice device)
        {
            _device = device;
            this.WidthRequest = view.WidthRequest;
            this.HeightRequest = view.HeightRequest;

            // Set PanGestureRecognizer.TouchPoints to control the
            // number of touch points needed to pan
            var panGesture = new PanGestureRecognizer();
            panGesture.PanUpdated += OnPanUpdated;
            GestureRecognizers.Add(panGesture);
            this.Content = view;
        }
Example #12
0
        public MainPage()
        {
            InitializeComponent();

            // Gesture
            // Tap - Toque/Clique
            // Pinch - Pinça/Zoom
            // Pan - Arrastar
            PanGestureRecognizer pan = new PanGestureRecognizer();

            pan.PanUpdated += PanGestureRecognizer_PanUpdated;
            MyLabel.GestureRecognizers.Add(pan);
        }
Example #13
0
        public PinchToZoomContainer()
        {
            if (Device.OS != TargetPlatform.Android)
            {
                var pinchGesture = new PinchGestureRecognizer();
                pinchGesture.PinchUpdated += OnPinchUpdated;
                GestureRecognizers.Add(pinchGesture);

                var panGesture = new PanGestureRecognizer();
                panGesture.PanUpdated += OnPanUpdated;
                GestureRecognizers.Add(panGesture);
            }
        }
Example #14
0
        // In this class we are Initialization the Gesture Recognizers for the particular property
        public PinchToZoomContainer()
        {
            PinchGestureRecognizer pinchGesture = new PinchGestureRecognizer();

            pinchGesture.PinchUpdated += PinchGesture_PinchUpdated;
            GestureRecognizers.Add(pinchGesture);

            //Rises the OnPanUpdated Event
            var panGesture = new PanGestureRecognizer();

            panGesture.PanUpdated += OnPanUpdated;
            GestureRecognizers.Add(panGesture);
        }
Example #15
0
        public PanPage()
        {
            InitializeComponent();

            AddRectangle();

            AddImage();

            _panGestureRecognizer             = new PanGestureRecognizer();
            _panGestureRecognizer.PanUpdated += PanGestureRecognizer_PanUpdated;

            canvas.GestureRecognizers.Add(_panGestureRecognizer);
        }
        public SwipeCardView()
        {
            var view = new RelativeLayout();

            Content = view;

            var panGesture = new PanGestureRecognizer();

            panGesture.PanUpdated += OnPanUpdated;
            GestureRecognizers.Add(panGesture);

            DraggingCardPosition = DraggingCardPosition.Start;
        }
		public void PanRaisesStartedEventTest ()
		{
			var view = new View ();
			var pan = new PanGestureRecognizer ();

			GestureStatus target = GestureStatus.Canceled;
			pan.PanUpdated += (object sender, PanUpdatedEventArgs e) => {
				target = e.StatusType;
			};

			((IPanGestureController)pan).SendPanStarted (view, 0);
			Assert.AreEqual (GestureStatus.Started, target);
		}
Example #18
0
        public SwipeGestureGrid()
        {
            PanGestureRecognizer panGesture = new PanGestureRecognizer();

            panGesture.PanUpdated += PanGesture_PanUpdated;

            TapGestureRecognizer tapGesture = new TapGestureRecognizer();

            tapGesture.Tapped += TapGesture_Tapped;

            GestureRecognizers.Add(panGesture);
            GestureRecognizers.Add(tapGesture);
        }
		public void PanRaisesRunningEventTest ()
		{
			var view = new View ();
			var pan = new PanGestureRecognizer ();

			GestureStatus target = GestureStatus.Canceled;
			pan.PanUpdated += (object sender, PanUpdatedEventArgs e) => {
				target = e.StatusType;
			};

			((IPanGestureController)pan).SendPan (view, gestureId: 0, totalX: 5, totalY: 10);
			Assert.AreEqual (GestureStatus.Running, target);
		}
		public void PanRunningEventContainsTotalYTest ()
		{
			var view = new View ();
			var pan = new PanGestureRecognizer ();

			double target = 0;
			pan.PanUpdated += (object sender, PanUpdatedEventArgs e) => {
				target = e.TotalY;
			};

			((IPanGestureController)pan).SendPan (view, gestureId: 0, totalX: 5, totalY: 10);
			Assert.AreEqual (10, target);
		}
Example #21
0
        public PinchZoomContainer()
        {
            if (Device.RuntimePlatform != Device.Android)
            {
                var pinchGesture = new PinchGestureRecognizer();
                pinchGesture.PinchUpdated += OnPinchUpdated;
                GestureRecognizers.Add(pinchGesture);

                var panGesture = new PanGestureRecognizer();
                panGesture.PanUpdated += OnPanUpdated;
                GestureRecognizers.Add(panGesture);
            }
        }
        public ImageCropView()
        {
            HorizontalOptions = LayoutOptions.Center;
            VerticalOptions   = LayoutOptions.Center;

            _crop = new CropTransformation();

            _image = new CustomCachedImage()
            {
                LoadingDelay      = 0,
                HorizontalOptions = LayoutOptions.FillAndExpand,
                VerticalOptions   = LayoutOptions.FillAndExpand,
                InputTransparent  = true,
                Aspect            = Aspect,
                Transformations   = new List <ITransformation>()
                {
                    _crop
                },
                FadeAnimationEnabled = false,
            };

            SetupImageView(_image);

            _root = new Grid()
            {
                HorizontalOptions = LayoutOptions.FillAndExpand,
                VerticalOptions   = LayoutOptions.FillAndExpand,
                InputTransparent  = true,
                Children          =
                {
                    _image
                }
            };

            _intervalThrottle = new IntervalThrottle(Delay,
                                                     _image.LoadImage, _image.LoadImage, _image.LoadRefinedImage);

            _pinchGesture = new PinchGestureRecognizer();
            _pinchGesture.PinchUpdated += PinchGesture_PinchUpdated;;

            _panGesture             = new PanGestureRecognizer();
            _panGesture.PanUpdated += PanGesture_PanUpdated;

            GestureRecognizers.Clear();
            GestureRecognizers.Add(_pinchGesture);
            GestureRecognizers.Add(_panGesture);

            HandlePreviewTransformations(null, PreviewTransformations);
            Content = _root;
            ResetCrop();
        }
        public void PanRaisesCanceledEventTest()
        {
            var view = new View();
            var pan  = new PanGestureRecognizer();

            GestureStatus target = GestureStatus.Started;

            pan.PanUpdated += (object sender, PanUpdatedEventArgs e) => {
                target = e.StatusType;
            };

            ((IPanGestureController)pan).SendPanCanceled(view, 0);
            Assert.AreEqual(GestureStatus.Canceled, target);
        }
        public void PanRunningEventContainsTotalYTest()
        {
            var view = new View();
            var pan  = new PanGestureRecognizer();

            double target = 0;

            pan.PanUpdated += (object sender, PanUpdatedEventArgs e) => {
                target = e.TotalY;
            };

            ((IPanGestureController)pan).SendPan(view, gestureId: 0, totalX: 5, totalY: 10);
            Assert.AreEqual(10, target);
        }
        public void PanRaisesRunningEventTest()
        {
            var view = new View();
            var pan  = new PanGestureRecognizer();

            GestureStatus target = GestureStatus.Canceled;

            pan.PanUpdated += (object sender, PanUpdatedEventArgs e) => {
                target = e.StatusType;
            };

            ((IPanGestureController)pan).SendPan(view, gestureId: 0, totalX: 5, totalY: 10);
            Assert.AreEqual(GestureStatus.Running, target);
        }
Example #26
0
    private void Start()
    {
        tapGesture = new TapGestureRecognizer();
        tapGesture.ThresholdSeconds     = 0.3f;
        tapGesture.PlatformSpecificView = gameObject;
        tapGesture.StateUpdated        += TapGesture_StateUpdated;
        FingersScript.Instance.AddGesture(tapGesture);

        panGesture = new PanGestureRecognizer();
        panGesture.ThresholdUnits       = 0.5f;
        panGesture.PlatformSpecificView = gameObject;
        //panGesture.StateUpdated += PanGesture_StateUpdated;
        FingersScript.Instance.AddGesture(panGesture);
    }
Example #27
0
        public MainPage()
        {
            InitializeComponent();

            // Gesture
            //Tap - Toque/Click
            //Pinch - Pinça - Galeria de Imagens
            //Pan - Arrastar/Desenhar

            PanGestureRecognizer pan = new PanGestureRecognizer();

            pan.PanUpdated += PanGestureRecognizer_Pan;
            MyLabel.GestureRecognizers.Add(pan);
        }
        public PanPage()
        {
            boxView       = new BoxView();
            boxView.Color = Color.Blue;

            var panGesture = new PanGestureRecognizer();

            panGesture.PanUpdated += OnPanUpdated;
            boxView.GestureRecognizers.Add(panGesture);

            Content = new AbsoluteLayout {
                Children = { boxView }
            };
        }
Example #29
0
        public GestureMultiple()
        {
            InitializeComponent();
            //var Tap = new TapGestureRecognizer();
            //Tap.Tapped += OnTapGestureRecognizerTapped;

            /*
             * Paso 1: Declarar una instancia del gesture a utilizar
             * Paso 2: Creo un Evento
             * Paso 3: Asigno mi evento creado en el paso2
             * Paso 4: Asignr el gesto a  un control.
             */


            ////TAP
            //var tap1 = new TapGestureRecognizer(); // paso 1
            //tap1.Tapped += EventoTap;//paso 2 y paso 3
            //image1.GestureRecognizers.Add(tap1); //paso 4

            ////
            //var pinch1 = new PinchGestureRecognizer();
            //pinch1.PinchUpdated += EventoPinch;
            //image1.GestureRecognizers.Add(tap1);



            var tapGestureRecognizer = new TapGestureRecognizer();

            tapGestureRecognizer.Tapped += OnTapGestureRecognizerTapped;

            //PINCH
            var pinchGesture = new PinchGestureRecognizer();

            pinchGesture.PinchUpdated += OnPinchUpdated;

            //PAN
            var panGesture = new PanGestureRecognizer();

            panGesture.PanUpdated += OnPanUpdated;

            //SWIPE
            var swipeGesture = new SwipeGestureRecognizer();

            swipeGesture.Swiped += OnSwiped;

            image1.GestureRecognizers.Add(tapGestureRecognizer);
            image1.GestureRecognizers.Add(pinchGesture);
            image1.GestureRecognizers.Add(panGesture);
            image1.GestureRecognizers.Add(swipeGesture);
        }
Example #30
0
        public PanContainer()
        {
            // Set PanGestureRecognizer.TouchPoints to control the
            // number of touch points needed to pan
            var panGesture = new PanGestureRecognizer();

            panGesture.PanUpdated += OnPanUpdated;
            GestureRecognizers.Add(panGesture);

            var pinchGesture = new PinchGestureRecognizer();

            pinchGesture.PinchUpdated += OnPinchUpdated;
            GestureRecognizers.Add(pinchGesture);
        }
        public MainPage()
        {
            InitializeComponent();

            /*          Tipos de gestos/Gesture      */
            // Tap - Clique/Toque
            // Pinch - efeito de pinça, aumentar uma imagem etc
            // Pan - Mover objetos
            PanGestureRecognizer pan = new PanGestureRecognizer();

            pan.PanUpdated += PanGestureRecognizer_Pan;

            myLabel.GestureRecognizers.Add(pan);
        }
Example #32
0
        // Create a new Memo and stick it onto "ScrollBoard"
        void StickMemo(object sender, EventArgs args)
        {
            Memo NewMemo = new Memo();

            // Set the initial position and offsets
#if MemoBoardPan
            NewMemo.Body.TranslationX = memoBoard.Display.X;
            NewMemo.Body.TranslationY = memoBoard.Display.Y;
            NewMemo.Offset            = new Point()
            {
                X = memoBoard.Display.X,
                Y = memoBoard.Display.Y
            };
#else
            NewMemo.Body.TranslationX = ScrollBoard.ScrollX;
            NewMemo.Body.TranslationY = ScrollBoard.ScrollY;
            NewMemo.Offset            = new Point()
            {
                X = ScrollBoard.ScrollX,
                Y = ScrollBoard.ScrollY
            };
#endif

            // Add Tap, Pan, Pinch Gesture Event
            var tapGesture = new TapGestureRecognizer();
            tapGesture.Tapped += OnTapMemo;
            NewMemo.Body.GestureRecognizers.Add(tapGesture);

            var panGesture = new PanGestureRecognizer();
            panGesture.PanUpdated += OnPanMemo;
            NewMemo.Body.GestureRecognizers.Add(panGesture);

            var pinchGesture = new PinchGestureRecognizer();
            pinchGesture.PinchUpdated += OnPinchMemo;
            NewMemo.Body.GestureRecognizers.Add(pinchGesture);


            // Add Editor Event
            Editor editor = (Editor)NewMemo.Body.Content;
            editor.TextChanged += EditorTextChanged;
            editor.Focused     += EditorFocused;
            editor.Unfocused   += EditorUnfocused;

            // Add this new Memo to the Memos collection
            //               and "MemoBoard" in "ScrollBoard"
            Memos.Add(NewMemo);
            MemoBoard.Children.Add(NewMemo.Body);

            StatusLabel.Text = "Memo Sticked";
        }
Example #33
0
        public MediaPage(DataStatus status, int inx = 0)
        {
            viewing = status;
            Style   = (Style)Application.Current.Resources["backgroundStyle"];

            if (status.ExtendMedias[0].Type == "photo")
            {
                foreach (var media in status.ExtendMedias)
                {
                    Children.Add(new ContentPage()
                    {
                        Content = MakeMediaView(media)
                    });
                }
                CurrentPage = Children[inx];
            }
            else
            {
                videoView = new VideoPlayer();
                if (status.ExtendMedias[0].Type == "animated_gif")
                {
                    videoView.IsVideoOnly = true;
                }
                var gesture = new PanGestureRecognizer();
                gesture.PanUpdated += (sender, e) =>
                {
                    switch (e.StatusType)
                    {
                    case GestureStatus.Running:
                        videoView.TranslationX = e.TotalX;
                        videoView.TranslationY = e.TotalY;
                        break;

                    case GestureStatus.Completed:
                        if (Math.Abs(videoView.TranslationY) > (Height / 8))
                        {
                            App.Navigation.RemovePage(this);
                        }
                        videoView.TranslateTo(0, 0);
                        break;
                    }
                };
                videoView.GestureRecognizers.Add(gesture);
                Children.Add(new ContentPage()
                {
                    Content = videoView
                });
                videoView.Source = VideoSource.FromUri(PickVideoVariant(status.ExtendMedias[0].Video.Variants).URL);
            }
        }
Example #34
0
        public ControlPage(App mainPage, AppSettings appSettings)
        {
            this.mainPage              = mainPage;
            this.appSettings           = appSettings;
            Connection                 = new ServerConnector.Connection(appSettings.serverURI);
            Connection.Connected      += () => MainThread.BeginInvokeOnMainThread(() => statusCircle.BackgroundColor = Color.Green);
            Connection.ConnectionLost += () => MainThread.BeginInvokeOnMainThread(() => statusCircle.BackgroundColor = Color.Red);
            InitializeComponent();
            PanGestureRecognizer touchBarRecognizer = new PanGestureRecognizer();

            touchBarRecognizer.PanUpdated += Hover;
            TouchBar.GestureRecognizers.Add(touchBarRecognizer);
            Connect();
        }
Example #35
0
        public ZoomContainer()
        {
            var pinchGesture = new PinchGestureRecognizer();
            var panGesture   = new PanGestureRecognizer();
            var tapGesture   = new TapGestureRecognizer();

            pinchGesture.PinchUpdated += OnPinchUpdated;
            panGesture.PanUpdated     += OnPanUpdated;
            tapGesture.Tapped         += Tapped;

            GestureRecognizers.Add(pinchGesture);
            GestureRecognizers.Add(panGesture);
            GestureRecognizers.Add(tapGesture);
        }
Example #36
0
        protected override async void OnAppearing()
        {
            base.OnAppearing();

            if (_isInitialized)
            {
                return;
            }

            _isInitialized = true;

            // Add gestures recognizer (Swipe)
            var panGesture = new PanGestureRecognizer();

            panGesture.PanUpdated += OnPanUpdated;
            SignUpView.GestureRecognizers.Add(panGesture);

            // Programatic Card changes
            var vm = BindingContext as SignUpViewModel;

            if (vm == null)
            {
                return;
            }

            vm.OnCardChanged += async(sender, args) =>
            {
                await SwipeCard(AnimationDuration);
            };

            if (Device.RuntimePlatform == Device.Android)
            {
                await Task.Delay(750);
            }
            else
            {
                await Task.Delay(500);
            }

            for (int i = 0; i < Math.Min(NumCards, _cards.Count); i++)
            {
                if (_itemIndex >= _cards.Count)
                {
                    break;
                }
                var card = _cards[i];
                card.IsVisible = true;
            }
        }
Example #37
0
		protected override void Init ()
		{
			var taps = new Label { Text = "Taps: 0" };
			var pans = new Label ();
			var pinches = new Label ();

			var pangr = new PanGestureRecognizer ();
			var tapgr = new TapGestureRecognizer ();
			var pinchgr = new PinchGestureRecognizer ();

			var frame = new Frame {
				HasShadow = false,
				HorizontalOptions = LayoutOptions.Fill,
				VerticalOptions = LayoutOptions.Fill,
				BackgroundColor = Color.White,
				Padding = new Thickness (5),
				HeightRequest = 300,
				WidthRequest = 300,
				AutomationId = "frame"
			};

			var tapCount = 0;

			tapgr.Command = new Command (() => {
				tapCount += 1;
				taps.Text = $"Taps: {tapCount}";
			});

			pangr.PanUpdated += (sender, args) => pans.Text = $"Panning: {args.StatusType}";

			pinchgr.PinchUpdated += (sender, args) => pinches.Text = $"Pinching: {args.Status}";

			frame.GestureRecognizers.Add (tapgr);
			frame.GestureRecognizers.Add (pangr);
			frame.GestureRecognizers.Add(pinchgr);

			Content = new StackLayout {
				BackgroundColor = Color.Olive,
				Children = { taps, pans, pinches, frame }
			};
		}
Example #38
0
        public MemorizePage()
        {
            InitializeComponent();

            var panGes = new PanGestureRecognizer();
            panGes.PanUpdated += OnGrapPage;
            quizLayout.GestureRecognizers.Add(panGes);

            var tapGes = new TapGestureRecognizer();
            tapGes.Tapped += OnClickAnswer;

            chdess = quizLayout.Children.OfType<Label>().ToArray();
            var btns = quizLayout.Children.OfType<FrameEx>();
            foreach (var ele in btns)
                ele.GestureRecognizers.Add(tapGes);

            quest = btns.ElementAt(0);
            choices = btns.Skip(1).ToArray();

            ChangeMode(true);
        }
Example #39
0
		public MapTest ()
		{
			InitializeComponent ();

			marketX = 540 / 100 * 10;
			marketY = 303 / 100 * 30;

			coffeeX = 540 / 100 * 30;
			coffeeY = 303 / 100 * 10;

			currentScale = Donus.Scale;

			//marketX = 100;
			//marketY = 0;
			startMarket ();
			updateMarket ();

			searchList.IsVisible = false;
			searchList.HeightRequest=0;

			searchBar.TextChanged += (sender, e) => {
				if(searchBar.Text == "" || searchBar.Text == null) { 
					searchList.HeightRequest=0;
					searchList.IsVisible = false;
				} else {
					updateAutocompleteList();
					searchList.HeightRequest=300;
					searchList.IsVisible = true;
				}
			};
			if (searchBar.Text == "" || searchBar.Text == null) { 
				searchList.HeightRequest=0;
				searchList.IsVisible = false;
			}

			searchList.ItemSelected += OnItemSelected;



			var tapGestureRecognizer = new TapGestureRecognizer ();
			tapGestureRecognizer.Tapped += async (object sender, EventArgs e) => {

				var panStartPositionX = ((relativeLayoutTest.TranslationX*(-1) + (App.coreView.Width / 2)) /  currentScale);
				var panStartPositionY = ((relativeLayoutTest.TranslationY*(-1) + (App.coreView.Height / 2)) /  currentScale);

				var panDistanceX = (coffeeX - panStartPositionX);
				var panDistanceY = (coffeeY - panStartPositionY);

				int steps = 200;
				var scaleStep = 4 - (currentScale);
				for (int i = 0; i < steps; i++) {
					if (i == 0) {
						CenterOnCamp (false, 1.0, panStartPositionX + ((panDistanceX / steps) * (i + 1)), panStartPositionY + ((panDistanceY / steps) * (i + 1)));
					} else {
						CenterOnCamp (true, 1 + (scaleStep / steps), panStartPositionX + ((panDistanceX / steps) * (i + 1)), panStartPositionY + ((panDistanceY / steps) * (i + 1)));
					}
					await Task.Delay(4);
				}
			};

			Market.GestureRecognizers.Add (tapGestureRecognizer);
			Coffee.GestureRecognizers.Add (tapGestureRecognizer);

			var pinchGestureRecognizer = new PinchGestureRecognizer();
			pinchGestureRecognizer.PinchUpdated += OnPinchUpdated;
			this.GestureRecognizers.Add(pinchGestureRecognizer);
			var panGestureRecognizer = new PanGestureRecognizer();
			panGestureRecognizer.PanUpdated += OnPanUpdated;
			this.GestureRecognizers.Add(panGestureRecognizer);
		}
        public RangeSliderView()
        {
            // Active Bar
            _activeBar = new BoxView();

            _activeBar.SetBinding(BoxView.ColorProperty, new Binding(path: "ActiveBarColor", source: this));

            AbsoluteLayout.SetLayoutFlags(_activeBar, AbsoluteLayoutFlags.None);

            this.Children.Add(_activeBar);

            // Inactive Left Bar
            _inActiveLeftBar = new BoxView();

            _inActiveLeftBar.SetBinding(BoxView.ColorProperty, new Binding(path: "InactiveBarColor", source: this));

            AbsoluteLayout.SetLayoutFlags(_inActiveLeftBar, AbsoluteLayoutFlags.None);

            this.Children.Add(_inActiveLeftBar);

            // Inactive Right Bar
            _inActiveRightBar = new BoxView();

            _inActiveRightBar.SetBinding(BoxView.ColorProperty, new Binding(path: "InactiveBarColor", source: this));

            AbsoluteLayout.SetLayoutFlags(_inActiveRightBar, AbsoluteLayoutFlags.None);

            this.Children.Add(_inActiveRightBar);

            // Left Button
            _leftButton = new Image();

            AbsoluteLayout.SetLayoutFlags(_leftButton, AbsoluteLayoutFlags.None);

            var leftButtonPanGesture = new PanGestureRecognizer();

            leftButtonPanGesture.PanUpdated += LeftButtonPanGesture;

            _leftButton.GestureRecognizers.Add(leftButtonPanGesture);

            _leftButton.SetBinding(Image.SourceProperty, new Binding(path: "HandleImageSource", source: this));

            this.Children.Add(_leftButton);

            // Right Button
            _rightButton = new Image();

            AbsoluteLayout.SetLayoutFlags(_rightButton, AbsoluteLayoutFlags.None);

            var rightButtonPanGesture = new PanGestureRecognizer();

            rightButtonPanGesture.PanUpdated += RightButtonPanGesture;

            _rightButton.GestureRecognizers.Add(rightButtonPanGesture);

            _rightButton.SetBinding(Image.SourceProperty, new Binding(path: "HandleImageSource", source: this));

            this.Children.Add(_rightButton);

            // Left Bubble
            _leftBubble = new RangeSliderBubble() { IsVisible = this.ShowBubbles, Text = this.LeftValue.ToString("#0") };

            AbsoluteLayout.SetLayoutFlags(_leftBubble, AbsoluteLayoutFlags.None);

            _leftBubble.SetBinding(RangeSliderBubble.SourceProperty, new Binding(path: "BubbleImageSource", source: this));
            _leftBubble.SetBinding(RangeSliderBubble.FontFamilyProperty, new Binding(path: "FontFamily", source: this));
            _leftBubble.SetBinding(RangeSliderBubble.FontSizeProperty, new Binding(path: "FontSize", source: this));
            _leftBubble.SetBinding(RangeSliderBubble.TextColorProperty, new Binding(path: "TextColor", source: this));

            this.Children.Add(_leftBubble);

            // Right Bubble
            _rightBubble = new RangeSliderBubble() { IsVisible = this.ShowBubbles, Text = this.RightValue.ToString("#0") };

            AbsoluteLayout.SetLayoutFlags(_rightBubble, AbsoluteLayoutFlags.None);

            _rightBubble.SetBinding(RangeSliderBubble.SourceProperty, new Binding(path: "BubbleImageSource", source: this));
            _rightBubble.SetBinding(RangeSliderBubble.FontFamilyProperty, new Binding(path: "FontFamily", source: this));
            _rightBubble.SetBinding(RangeSliderBubble.FontSizeProperty, new Binding(path: "FontSize", source: this));
            _rightBubble.SetBinding(RangeSliderBubble.TextColorProperty, new Binding(path: "TextColor", source: this));

            this.Children.Add(_rightBubble);
        }
Example #41
0
        public RangeSliderView()
        {
            // Path
            _sliderPath = new BoxView();

            _sliderPath.SetBinding(BoxView.ColorProperty, new Binding(path: "BarColor", source: this));

            AbsoluteLayout.SetLayoutFlags(_sliderPath, AbsoluteLayoutFlags.None);

            this.Children.Add(_sliderPath);

            // Left Button
            _leftButton = new Image();

            AbsoluteLayout.SetLayoutFlags(_leftButton, AbsoluteLayoutFlags.None);

            var leftButtonPanGesture = new PanGestureRecognizer();

            leftButtonPanGesture.PanUpdated += LeftButtonPanGesture;

            _leftButton.GestureRecognizers.Add(leftButtonPanGesture);

            _leftButton.SetBinding(Image.SourceProperty, new Binding(path: "HandleImageSource", source: this));

            this.Children.Add(_leftButton);

            // Right Button
            _rightButton = new Image();

            AbsoluteLayout.SetLayoutFlags(_rightButton, AbsoluteLayoutFlags.None);

            var rightButtonPanGesture = new PanGestureRecognizer();

            rightButtonPanGesture.PanUpdated += RightButtonPanGesture;

            _rightButton.GestureRecognizers.Add(rightButtonPanGesture);

            _rightButton.SetBinding(Image.SourceProperty, new Binding(path: "HandleImageSource", source: this));

            this.Children.Add(_rightButton);

            // Left Bubble
            _leftBubble = new RangeSliderBubble() { IsVisible = this.ShowBubbles, Text = this.LeftValue.ToString("#0") };

            AbsoluteLayout.SetLayoutFlags(_leftBubble, AbsoluteLayoutFlags.None);

            _leftBubble.SetBinding(RangeSliderBubble.SourceProperty, new Binding(path: "BubbleImageSource", source: this));

            this.Children.Add(_leftBubble);

            // Right Bubble
            _rightBubble = new RangeSliderBubble() { IsVisible = this.ShowBubbles, Text = this.RightValue.ToString("#0") };

            AbsoluteLayout.SetLayoutFlags(_rightBubble, AbsoluteLayoutFlags.None);

            _rightBubble.SetBinding(RangeSliderBubble.SourceProperty, new Binding(path: "BubbleImageSource", source: this));

            this.Children.Add(_rightBubble);
        }
		public iOS_PanGestureEventArgs(PanGestureRecognizer gestureRecognizer, UIPanGestureRecognizer platformGestureRecognizer)
		{
			this.gestureRecognizer = gestureRecognizer;
			this.platformGestureRecognizer = platformGestureRecognizer;
		}
			public PanContainer ()
			{
				var pan = new PanGestureRecognizer
				{
					TouchPoints = 1
				};

				pan.PanUpdated += (object s, PanUpdatedEventArgs e) =>
				{
					switch (e.StatusType) {

						case GestureStatus.Started: break;

						case GestureStatus.Running:
							Content.TranslationX = e.TotalX;
							Content.TranslationY = e.TotalY;
							break;

						default:
							Content.TranslationX = Content.TranslationY = 0;
							break;
					}
				};

				var pinch = new PinchGestureRecognizer ();

				double xOffset = 0;
				double yOffset = 0;
				double startScale = 1;

				pinch.PinchUpdated += (sender, e) =>
				{

					if (e.Status == GestureStatus.Started) {
						startScale = Content.Scale;
						Content.AnchorX = Content.AnchorY = 0;
					}
					if (e.Status == GestureStatus.Running) {

						_currentScale += (e.Scale - 1) * startScale;
						_currentScale = Math.Max (1, _currentScale);

						var renderedX = Content.X + xOffset;
						var deltaX = renderedX / Width;
						var deltaWidth = Width / (Content.Width * startScale);
						var originX = (e.ScaleOrigin.X - deltaX) * deltaWidth;

						var renderedY = Content.Y + yOffset;
						var deltaY = renderedY / Height;
						var deltaHeight = Height / (Content.Height * startScale);
						var originY = (e.ScaleOrigin.Y - deltaY) * deltaHeight;

						double targetX = xOffset - (originX * Content.Width) * (_currentScale - startScale);
						double targetY = yOffset - (originY * Content.Height) * (_currentScale - startScale);

						Content.TranslationX = targetX.Clamp (-Content.Width * (_currentScale - 1), 0);
						Content.TranslationY = targetY.Clamp (-Content.Height * (_currentScale - 1), 0);

						Content.Scale = _currentScale;
					}
					if (e.Status == GestureStatus.Completed) {
						xOffset = Content.TranslationX;
						yOffset = Content.TranslationY;
					}
				};

				GestureRecognizers.Add (pinch);

				GestureRecognizers.Add (pan);
			}
		public MainPage ()
		{
			InitializeComponent ();

			BindingContext = new {
				SvgAssembly = typeof(App).GetTypeInfo ().Assembly,
				CanvasHeight = App.CanvasHeight
			};

			NavigationPage.SetHasNavigationBar(this, false);

			//TapGestureRecognizer crossTapGestureRecognizer = new TapGestureRecognizer();
			TapGestureRecognizer canvasTapGestureRecognizer = new TapGestureRecognizer();
			PanGestureRecognizer canvasPanGestureRecognizer = new PanGestureRecognizer();


//			crossTapGestureRecognizer.Tapped += (object sender, EventArgs e) => {
//				ChangeTempWindow.Hide();
//				ChangeGeoWindow.Hide();
//			};


			ArrowsInitialize ();
			ChangeTempWindow.Initialize ();
			//ChangeTempWindowCross.GestureRecognizers.Add (crossTapGestureRecognizer);
			ChangeGeoWindow.Initialize ();
			//ChangeGeoWindowCross.GestureRecognizers.Add (crossTapGestureRecognizer);
			ClothWindow.Initialize (true);

			HeadClickZone.GestureRecognizers.Add (canvasTapGestureRecognizer);
			BodyClickZone.GestureRecognizers.Add (canvasTapGestureRecognizer);
			PantsClickZone.GestureRecognizers.Add (canvasTapGestureRecognizer);
			ShoesClickZone.GestureRecognizers.Add (canvasTapGestureRecognizer);

			HeadClickZone.GestureRecognizers.Add (canvasPanGestureRecognizer);
			BodyClickZone.GestureRecognizers.Add (canvasPanGestureRecognizer);
			PantsClickZone.GestureRecognizers.Add (canvasPanGestureRecognizer);
			ShoesClickZone.GestureRecognizers.Add (canvasPanGestureRecognizer);

			ColorPickerWindow.Initialize (false, true);

			AllColorsButton.Clicked += (object sender, EventArgs e) => {
				ColorPickerWindow.Show();
			};

			canvasTapGestureRecognizer.Tapped += (object sender, EventArgs e) => {
				
				ClothType type = ClothType.Head;
				if(sender.Equals(HeadClickZone))
					type = ClothType.Head;
				if(sender.Equals(BodyClickZone))
					type = ClothType.Body;
				if(sender.Equals(PantsClickZone))
					type = ClothType.Pants;
				if(sender.Equals(ShoesClickZone))
					type = ClothType.Shoes;

				if(DBClothes(type).Count == 0)
					return;

				if(type == ClothType.Head && DBHeads[CurrentHead].Id == 142)
					return;

				if(type == ClothType.Pants && DBBodies[CurrentBody].IsDress)
					return;

				ClothWindow.Type = type;


				ClothWindowSvgContainer.Content = new CWCloth {
					SvgPath = "ClothesAndWeather.Images.ClothesDB." + DBClothes(type) [CurrentCloth(type)].ImagePreview,
					Color = ((CWCloth)ClothView(type).Content).Color,
					HorizontalOptions = LayoutOptions.Center,
					VerticalOptions = LayoutOptions.Center,

					WidthRequest = 120,
					HeightRequest = 120,

					Aspect = Aspect.AspectFit
				};

				ClothTitleLabel.Text = DBClothes(type) [CurrentCloth(type)].Name;
				ClothDescLabel.Text = DBClothes(type) [CurrentCloth(type)].Description;
			

				List<ClothExample> examples = Sex == Sex.Male ? DBClothes(type) [CurrentCloth(type)].ManClothes : DBClothes(type) [CurrentCloth(type)].WomanClothes;
				if(examples == null)
					examples = new List<ClothExample>();

				ClothExamples.Children.Clear();
				ClothExamples.Children.Add(new Label { Text = "Похожие вещи в магазине:", FontSize = 12 });

				StackLayout line = new StackLayout();

				for(var i = 0; i < examples.Count; i++)
				{
					if(i % 2 == 0)
						line = new StackLayout { Orientation = StackOrientation.Horizontal, Spacing = 25, HorizontalOptions = LayoutOptions.Center };

					var frame = new CWClothExample();
					frame.Content = new Image { HorizontalOptions = LayoutOptions.Center, VerticalOptions = LayoutOptions.Center, Aspect = Aspect.AspectFit,
						Source = ImageSource.FromUri(new Uri("http:" + examples[i].Image)) };

					var recognizer = new TapGestureRecognizer();
					string link = examples[i].Link;
					recognizer.Tapped += (object sender1, EventArgs e1) => {
						App.IOSAppDelegate.OpenUrlInBrowser(Utils.AdmitadLink(link));
					};
					frame.GestureRecognizers.Add(recognizer);

					line.Children.Add(frame);

					if(i == examples.Count - 1 && i % 2 == 0)
					{
						line.WidthRequest = (frame.WidthRequest + frame.Padding.Left + frame.Padding.Right) * 2 + line.Spacing;
						frame.HorizontalOptions = LayoutOptions.Start;
					}

					if(i % 2 == 1 || i == examples.Count - 1)
						ClothExamples.Children.Add(line);
				}


				ClothWindow.Show();
			};

			PanUpdatedEventArgs lastPan = new PanUpdatedEventArgs(GestureStatus.Completed, 0, 0, 0);

			canvasPanGestureRecognizer.PanUpdated += (object sender, PanUpdatedEventArgs e) => {

				ClothType type = ClothType.Head;
				if(sender.Equals(HeadClickZone))
					type = ClothType.Head;
				if(sender.Equals(BodyClickZone))
					type = ClothType.Body;
				if(sender.Equals(PantsClickZone))
					type = ClothType.Pants;
				if(sender.Equals(ShoesClickZone))
					type = ClothType.Shoes;

				if(e.StatusType == GestureStatus.Completed)
				{
					double x = lastPan.TotalX;
					double y = lastPan.TotalY;
					System.Diagnostics.Debug.WriteLine(x + " " + y);
					if(Math.Abs(y) <= 25 && Math.Abs(x) >= 40)
					{
						CallArrow(Arrow(type, (int)(x / Math.Abs(x))));
					}
				}

				lastPan = e;
			};



			Action<object, EventArgs> changePreviewColor = (object sender, EventArgs e) => {
				ClothWindowSvgContainer.Content = new CWCloth {
					SvgPath = ((CWCloth)ClothWindowSvgContainer.Content).SvgPath,
					Color = ((Button)sender).BackgroundColor,
					HorizontalOptions = LayoutOptions.Center,
					VerticalOptions = LayoutOptions.Center,

					WidthRequest = 120,
					HeightRequest = 120,

					Aspect = Aspect.AspectFit
				};
			};

			BlackColorButton.Clicked += (object sender, EventArgs e) => {
				changePreviewColor.Invoke(sender, e);
			};

			WhiteColorButton.Clicked += (object sender, EventArgs e) => {
				changePreviewColor.Invoke(sender, e);
			};

			for (int i = 0; i < ColorsGrid.Children.Count; i++)
			{
				((Button)ColorsGrid.Children[i]).Clicked += (object sender, EventArgs e) => {
					changePreviewColor.Invoke(sender, e);
					ColorPickerWindow.Hide();
				};
			}

			ColorReadyButton.Clicked += (object sender, EventArgs e) => {
				SwitchClothColor((ClothType)ClothWindow.Type, ((CWCloth)ClothWindowSvgContainer.Content).Color);
				ClothWindow.Hide();
			};

//			ClothesOnlineButton.Clicked += (object sender, EventArgs e) => {
//				Cloth cloth = DBClothes((ClothType)ClothWindow.Type)[CurrentCloth((ClothType)ClothWindow.Type)];
//				App.IOSAppDelegate.OpenUrlInBrowser(cloth.GetLamodaLink(Sex));
//			};


			#region BottomMenu

			TapGestureRecognizer menuTapGestureRecognizer = new TapGestureRecognizer();
			TapGestureRecognizer menu3TapGestureRecognizer = new TapGestureRecognizer();

			switch (Sex)
			{
			case Sex.Male:
				((SvgImage)menu3.Content).SvgPath = "ClothesAndWeather.Images.menu3m.svg";
				break;
			case Sex.Female:
				((SvgImage)menu3.Content).SvgPath = "ClothesAndWeather.Images.menu3f.svg";
				break;
			}

			menu1.GestureRecognizers.Add (menuTapGestureRecognizer);
			TempLabel.GestureRecognizers.Add(menuTapGestureRecognizer);
			WeatherConditionImage.GestureRecognizers.Add(menuTapGestureRecognizer);
			menu4.GestureRecognizers.Add (menuTapGestureRecognizer);
			CityAndDT.GestureRecognizers.Add (menuTapGestureRecognizer);

			menuTapGestureRecognizer.Tapped += (object sender, EventArgs e) => {

				//SvgImage btn = (SvgImage)sender;
				var btn = sender;

				if(btn.Equals(menu1) || btn.Equals(TempLabel) || btn.Equals(WeatherConditionImage))
				{
					ChangeTempWindow.Show();
				}
				else if(btn.Equals(menu4) || btn.Equals(CityAndDT))
				{
					ChangeGeoWindow.Show();
				}
			};

			menu3.GestureRecognizers.Add (menu3TapGestureRecognizer);
			menu3TapGestureRecognizer.Tapped += (object sender, EventArgs e) => {

				string newpath = "";
				switch(Sex)
				{
				case Sex.Male:
					newpath = "ClothesAndWeather.Images.menu3f.svg";
					App.SetSex(Sex.Female);
					break;
				case Sex.Female:
					newpath = "ClothesAndWeather.Images.menu3m.svg";
					App.SetSex(Sex.Male);
					break;
				}

				menu3.Content = new SvgImage { 
					SvgPath = newpath,
					SvgAssembly = typeof(App).GetTypeInfo().Assembly
				};

				RefreshFilters();
			};


			PlacePicker.Unfocused += async (object sender, FocusEventArgs e) => {

				switch(PlacePicker.SelectedIndex)
				{
				case 0:
					App.SetPlace(Place.Walk);
					await Navigation.PushModalAsync(new SelectWalkTimePage(false), false);
					break;
				case 1:
					App.SetPlace(Place.Business);
					RefreshFilters();
					break;
				case 2:
					App.SetPlace(Place.Formal);
					RefreshFilters();
					break;
				case 3:
					App.SetPlace(Place.Celebration);
					RefreshFilters();
					break;
				case 4:
					App.SetPlace(Place.Sport);
					RefreshFilters();
					break;
				}
			};

			#endregion


			#region TempAndCityWindows

			SetUserTemp.Clicked += (object sender, EventArgs e) => {

				if(String.IsNullOrEmpty(UserTemp.Text) || UserWeatherTagPicker.SelectedIndex == -1)
				{
					if(String.IsNullOrEmpty(UserTemp.Text))
						HighlightView(UserTemp);

					if(UserWeatherTagPicker.SelectedIndex == -1)
						HighlightView(UserWeatherTagPicker);

					return;
				}

				try
				{
					Temperature = Convert.ToInt32(UserTemp.Text);
				}
				catch(Exception ex)
				{
					HighlightView(UserTemp);
					return;
				}

				if(Temperature < -50 || Temperature > 40)
				{
					HighlightView(UserTemp);
					return;
				}

				UserTemp.Unfocus();

				TempLabel.Text = Temperature + " °C";

				WeatherTag = Utils.PickerValueToTag (UserWeatherTagPicker.SelectedIndex);
				WeatherConditionImage.Content = new SvgImage {
					SvgPath = "ClothesAndWeather.Images.Tags." + WeatherTag + ".svg",
					SvgAssembly = typeof(App).GetTypeInfo ().Assembly
				};

				RefreshFilters();
				ChangeTempWindow.Hide();
			};

			SetAutoTemp.Clicked += (object sender, EventArgs e) => {
				GetOpenWeatherData (() => {
					RefreshFilters ();
					ChangeTempWindow.Hide();
				}, () => {
					
				}, true);
			};

			SetUserCity.Clicked += (object sender, EventArgs e) => {
				if(String.IsNullOrEmpty(UserCity.Text))
				{
					HighlightView(UserCity);
					return;
				}

				UserCity.Unfocus();

				string oldCity = City;

				City = UserCity.Text;

				GetOpenWeatherData (() => {
					CityLabel.Text = City;
					RefreshFilters ();
					ChangeGeoWindow.Hide();
				}, () => {
					HighlightView(UserCity);
					City = oldCity;
				}, false);

				GetTimeByCity(() => {});

			};

			SetAutoCity.Clicked += (object sender, EventArgs e) => {
				GetGoogleCityName ();
				GetOpenWeatherData (() => {
					TimeZone = null;
					DTSwitchOnce();
					RefreshFilters();
					ChangeGeoWindow.Hide();
				}, () => {
					
				}, true);
			};

			#endregion


			#region Arrows

			TapGestureRecognizer clothesArrowsTapGestureRecognizer = new TapGestureRecognizer();

			HeadLeft.GestureRecognizers.Add(clothesArrowsTapGestureRecognizer);
			HeadRight.GestureRecognizers.Add(clothesArrowsTapGestureRecognizer);
			BodyLeft.GestureRecognizers.Add(clothesArrowsTapGestureRecognizer);
			BodyRight.GestureRecognizers.Add(clothesArrowsTapGestureRecognizer);
			PantsLeft.GestureRecognizers.Add(clothesArrowsTapGestureRecognizer);
			PantsRight.GestureRecognizers.Add(clothesArrowsTapGestureRecognizer);
			ShoesLeft.GestureRecognizers.Add(clothesArrowsTapGestureRecognizer);
			ShoesRight.GestureRecognizers.Add(clothesArrowsTapGestureRecognizer);

			clothesArrowsTapGestureRecognizer.Tapped += (object sender, EventArgs e) => {

				CWArrow btn = (CWArrow)sender;

				CallArrow(btn);
			};

			#endregion



			EnableDTSwitch ();


			GetGoogleCityName ();

			GetOpenWeatherData (() => {
				RefreshFilters ();
			}, () => {
				
			}, true);

		}