Exemple #1
0
        protected virtual void OnVisualModified()
        {
            if (!IsViewport)
            {
                return;
            }

            // we actually care about this change
            ViewportChanged?.Invoke(this, new RawViewportEventArgs(Visual));
        }
Exemple #2
0
 protected void RaiseLayoutFinished()
 {
     if (ViewportChanged != null)
     {
         using (Temp <ViewportChangedEventArgs> .Borrow(out ViewportChangedEventArgs changedEventArgs))
         {
             changedEventArgs.Kind = ViewportChangedEventArgs.ChangeKind.LayoutDone;
             ViewportChanged.Invoke(this, changedEventArgs);
         }
     }
 }
Exemple #3
0
        public event EventHandler <ViewportChangedEventArgs> ViewportChanged;//TODO: review this*** => use event queue?


        protected void RaiseViewportChanged()
        {
            if (ViewportChanged != null)
            {
                using (Temp <ViewportChangedEventArgs> .Borrow(out ViewportChangedEventArgs changedEventArgs))
                {
                    changedEventArgs.Kind = ViewportChangedEventArgs.ChangeKind.Location;
                    ViewportChanged.Invoke(this, changedEventArgs);
                }
            }
        }
Exemple #4
0
        //-----------------------------------------------
        //Scrolling...
        //-----------------------------------------------

        public void ScrollToLocation(int x, int y)
        {
            if (!this.MayHasViewport ||
                y == this.ViewportTop && x == this.ViewportLeft)
            {
                //no change!
                return;
            }

            ScrollToLocation_NotRaiseEvent(x, y, out var hScrollEventArgs, out var vScrollEventArgs);

            ViewportChanged?.Invoke(this, EventArgs.Empty);
        }
Exemple #5
0
        public void ScrollOffset(int dx, int dy)
        {
            if (!this.MayHasViewport ||
                (dy == 0 && dx == 0))
            {  //no change!
                return;
            }

            this.InvalidateGraphics();

            ScrollOffset_NotRaiseEvent(dx, dy, out var hScrollEventArgs, out var vScrollEventArgs);
            ViewportChanged?.Invoke(this, EventArgs.Empty);

            this.InvalidateGraphics();
        }
Exemple #6
0
        private void ScrollHandler(object sender, ScrollChangedEventArgs e)
        {
            int startScreenX = Convert.ToInt32(
                Math.Floor(Parent.HorizontalOffset / (TileSize * ScreenWidth)));
            int startScreenY = Convert.ToInt32(
                Math.Floor(Parent.VerticalOffset / (TileSize * ScreenHeight)));
            int endScreenX = 1 + Convert.ToInt32(
                Math.Floor((Parent.HorizontalOffset + Parent.ViewportWidth) / (TileSize * ScreenWidth)));
            int endScreenY = 1 + Convert.ToInt32(
                Math.Floor((Parent.VerticalOffset + Parent.ViewportHeight) / (TileSize * ScreenHeight)));

            if (startScreenX < 0)
            {
                startScreenX = 0;
            }
            if (startScreenY < 0)
            {
                startScreenY = 0;
            }
            if (endScreenX >= ScreenCountH)
            {
                endScreenX = ScreenCountH - 1;
            }
            if (endScreenY >= ScreenCountV)
            {
                endScreenY = ScreenCountV - 1;
            }

            var a = new ViewportEventArgs()
            {
                StartScreenX = startScreenX,
                StartScreenY = startScreenY,
                EndScreenX   = endScreenX,
                EndScreenY   = endScreenY
            };

            ViewportChanged?.Invoke(this, a);
        }
Exemple #7
0
        protected override void OnViewportChanged(ViewportChangedEventArgs e)
        {
            base.OnViewportChanged(e);

            ViewportChanged?.Invoke(this, e);
        }
 protected virtual void RaiseViewportChanged(SizeChangedInfo args)
 => ViewportChanged?.Invoke(this, args);
Exemple #9
0
 private void OnViewportChanged([CallerMemberName] string propertyName = null)
 {
     _modified = true;
     ViewportChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
 }
Exemple #10
0
 public LimitedViewport()
 {
     _viewport.ViewportChanged += (sender, args) => ViewportChanged?.Invoke(sender, args);
 }
Exemple #11
0
 private void OnViewportChanged(object sender, PropertyChangedEventArgs e)
 {
     ViewportChanged.Invoke(sender, e);
 }
Exemple #12
0
 private void OnViewportChanged()
 {
     ViewportChanged?.Invoke(this, new EventArgs());
 }
Exemple #13
0
 protected virtual void RaiseViewportChanged()
 {
     ViewportChanged?.Invoke(this, EventArgs.Empty);
 }