Exemplo n.º 1
0
        public override void Update(GameTime gameTime)
        {
            base.Update(gameTime);
            accel.Update();

            switch (Restriction)
            {
            case ScrollRestriction.Horizontal:
                if (ClampContent)
                {
                    SetContentX(GetClampedX(contentPanel.X + accel.Speed.X));
                }
                else
                {
                    SetContentX(contentPanel.X + accel.Speed.X);
                }
                break;

            case ScrollRestriction.Vertical:
                if (ClampContent)
                {
                    SetContentY(GetClampedY(contentPanel.Y + accel.Speed.Y));
                }
                else
                {
                    SetContentY(contentPanel.Y + accel.Speed.Y);
                }
                break;

            case ScrollRestriction.Unrestricted:
                if (ClampContent)
                {
                    Vector2 pos = Vector2.Zero;
                    pos.X = GetClampedX(contentPanel.X + accel.Speed.X);
                    pos.Y = GetClampedY(contentPanel.Y + accel.Speed.Y);
                    SetContentPos(pos);
                }
                else
                {
                    SetContentPos(contentPanel.Location + accel.Speed);
                }
                break;
            }
        }
Exemplo n.º 2
0
        public override void Update(GameTime gameTime)
        {
            base.Update(gameTime);
            accel.Update();

            switch (Restriction)
            {
            case ScrollRestriction.Horizontal:
                float x = contentPanel.X + accel.Speed.X;

                if (ClampContent)
                {
                    x = GetClampedX(x);
                }

                SetContentX(x);
                break;

            case ScrollRestriction.Vertical:
                float y = contentPanel.Y + accel.Speed.Y;

                if (ClampContent)
                {
                    y = GetClampedY(y);
                }

                SetContentY(y);
                break;

            case ScrollRestriction.Unrestricted:
                Vector2 pos = contentPanel.Position + accel.Speed;

                if (ClampContent)
                {
                    pos.X = GetClampedX(pos.X);
                    pos.Y = GetClampedY(pos.Y);
                }

                SetContentPos(pos);
                break;
            }
        }