private void Viewport_PropertyChanged(object sender, ExtendedPropertyChangedEventArgs e) { if (e.PropertyName == "Visible") { Dispatcher.Invoke(new Action<DataRect>(ChangeVisible), e.NewValue); } }
void Viewport_PropertyChanged(object sender, ExtendedPropertyChangedEventArgs e) { if (e.PropertyName == "Visible") { VisibleChanged.Raise(this); } }
protected override void OuterViewport_PropertyChanged(ExtendedPropertyChangedEventArgs e) { if(e.PropertyName != Viewport2D.VisiblePropertyName) return; if (IsHandledChangeType(e.ChangeType)) { DataRect newRect = (DataRect)e.NewValue; DataRect oldRect = (DataRect)e.OldValue; double ratioX = newRect.Width / oldRect.Width; double ratioY = newRect.Height / oldRect.Height; double shiftX = (newRect.XMin - oldRect.XMin) / oldRect.Width; double shiftY = (newRect.YMin - oldRect.YMin) / oldRect.Height; DataRect visible = Viewport.Visible; visible.XMin += shiftX * visible.Width; visible.YMin += shiftY * visible.Height; visible.Width *= ratioX; visible.Height *= ratioY; Viewport.Visible = visible; } }
protected override void OuterViewport_PropertyChanged(ExtendedPropertyChangedEventArgs e) { if (e.PropertyName != Viewport2D.VisiblePropertyName) { return; } if (IsHandledChangeType(e.ChangeType)) { DataRect newRect = (DataRect)e.NewValue; DataRect oldRect = (DataRect)e.OldValue; double ratioX = newRect.Width / oldRect.Width; double ratioY = newRect.Height / oldRect.Height; double shiftX = (newRect.XMin - oldRect.XMin) / oldRect.Width; double shiftY = (newRect.YMin - oldRect.YMin) / oldRect.Height; DataRect visible = Viewport.Visible; visible.XMin += shiftX * visible.Width; visible.YMin += shiftY * visible.Height; visible.Width *= ratioX; visible.Height *= ratioY; Viewport.Visible = visible; } }
protected override void OnViewportPropertyChanged(ExtendedPropertyChangedEventArgs e) { if (e.PropertyName == "Visible") { DataRect currVisible = (DataRect)e.NewValue; bool shouldUpdate = !bounds.Contains(currVisible) || AreDifferentRectangles(prevVisible.ToRect(), currVisible.ToRect()); if (shouldUpdate) { bounds = DataRect.Empty; RaiseChanged(); } } else if (e.PropertyName == "Output") { Rect output = (Rect)e.NewValue; bool shouldUpdate = AreDifferentRectangles(output, prevOutput); if (shouldUpdate) { prevOutput = output; bounds = DataRect.Empty; RaiseChanged(); } } }
private void OnViewportPropertyChanged(object sender, ExtendedPropertyChangedEventArgs e) { if (e.PropertyName == "Visible" || e.PropertyName == "Output") { UpdateScrollBar((Viewport2D)sender); } }
private void RaisePropertyChangedEvent(DependencyPropertyChangedEventArgs e) { if (PropertyChanged != null) { PropertyChanged(this, ExtendedPropertyChangedEventArgs.FromDependencyPropertyChanged(e)); } }
private void viewport_PropertyChanged(object sender, ExtendedPropertyChangedEventArgs e) { notMineEvent = true; try { RaisePropertyChanged(e); } finally { notMineEvent = false; } }
private void RaisePropertyChangedEventBody(DependencyPropertyChangedEventArgs e, ChangeType changeType) { if (propertyChangedCounter > 0) { return; } propertyChangedCounter++; RaisePropertyChanged(ExtendedPropertyChangedEventArgs.FromDependencyPropertyChanged(e), changeType); propertyChangedCounter--; notifyOperation = null; }
private void Viewport_PropertyChanged(object sender, ExtendedPropertyChangedEventArgs e) { if (e.PropertyName == "Output") { Debug.WriteLine("Output = " + e.NewValue); Rect currOutput = (Rect)e.NewValue; // not a default value of output, which is (x=0,y=0,w=1,h=1) if (currOutput.Width > 1 && child != null) { plotter.Children.Add((IPlotterElement)child); } } }
//private DispatcherOperation pendingRaisePropertyChangedOperation; //private bool inRaisePropertyChanged = false; protected virtual void RaisePropertyChanged(ExtendedPropertyChangedEventArgs args) { //if (inRaisePropertyChanged) //{ // if (pendingRaisePropertyChangedOperation != null) // pendingRaisePropertyChangedOperation.Abort(); // pendingRaisePropertyChangedOperation = Dispatcher.BeginInvoke(() => RaisePropertyChanged(args), DispatcherPriority.Normal); // return; //} //pendingRaisePropertyChangedOperation = null; //inRaisePropertyChanged = true; PropertyChanged.Raise(this, args); //inRaisePropertyChanged = false; }
private void OnViewportPropertyChanged(object sender, ExtendedPropertyChangedEventArgs e) { if (e.PropertyName == "Visible") { OnVisibleChanged((DataRect)e.NewValue, (DataRect)e.OldValue); } else if (e.PropertyName == "Output") { OnOutputChanged((Rect)e.NewValue, (Rect)e.OldValue); } else if (e.PropertyName == "Transform") { Update(); } else { // other properties changed are now not interesting for us } }
protected override void RaisePropertyChanged(ExtendedPropertyChangedEventArgs args, ChangeType changeType = ChangeType.None) { if (args.PropertyName == "Visible") { if (notMineEvent) { if (viewport.PanningState == Viewport2DPanningState.NotPanning) { base.RaisePropertyChanged(args); } else { // do nothing } } } else { base.RaisePropertyChanged(args); } }
void Viewport_PropertyChanged(object sender, ExtendedPropertyChangedEventArgs e) { if (e.PropertyName == "Visible") { DataRect prevVisible = (DataRect)e.OldValue; DataRect currVisible = (DataRect)e.NewValue; if (currVisible.Size != prevVisible.Size) { Update(); } else { UpdateTransform(); } } else { Update(); } }
private void OnViewportPropertyChanged(object sender, ExtendedPropertyChangedEventArgs e) { // todo рассмотреть, нужно ли закоменченное. //Viewport2D viewport = (Viewport2D)sender; //if (e.Property == Viewport2d.ActualWidthProperty) //{ // OnOutputChanged(new Rect(0, 0, 0, 0), new Rect(0, 0, 0, 0)); // TODO!!! //} //else if (e.Property == Viewport2d.ActualHeightProperty) //{ // OnOutputChanged(new Rect(0, 0, 0, 0), new Rect(0, 0, 0, 0)); // TODO!!! //} else if (e.PropertyName == "Visible") { OnVisibleChanged((Rect)e.NewValue, (Rect)e.OldValue); } else if (e.PropertyName == "Output") { OnOutputChanged((Rect)e.NewValue, (Rect)e.OldValue); } else if (e.PropertyName == "Converter") { Update(); } else { // other rects changed are now not interesting for us } // todo тут неправильное сравнение. MarginProperty нынешнего Viewport`а - это не то, что было раньше. // подобрать правильное условие. //if (e.Property != Viewport2d.MarginProperty) //{ // todo was uncommented //TranslateVisual(); //} }
protected virtual void RaisePropertyChanged(ExtendedPropertyChangedEventArgs args, ChangeType changeType = ChangeType.None) { args.ChangeType = changeType; PropertyChanged.Raise(this, args); }
protected override void OnViewportPropertyChanged(ExtendedPropertyChangedEventArgs e) { UpdateUIRepresentation(); }
void Viewport_PropertyChanged(object sender, ExtendedPropertyChangedEventArgs e) { UpdateUIRepresentation(); }
protected virtual void Viewport_PropertyChanged(object sender, ExtendedPropertyChangedEventArgs e) { if (e.PropertyName == Viewport2D.VisiblePropertyName) { DataRect visible = (DataRect)e.NewValue; DataRect prevVisible = (DataRect)e.OldValue; InvalidateMeasure(); // todo previous way // if (prevVisible.Size.EqualsApproximately(visible.Size) && !sizeChanged) // { // var transform = viewport.Transform; // Point prevLocation = prevVisible.Location.ViewportToScreen(transform); // Point location = visible.Location.ViewportToScreen(transform); // Vector offset = prevLocation - location; // // todo was true //#if false // translateTransform.X += offset.X; // translateTransform.Y += offset.Y; //#else // InvalidateMeasure(); //#endif // } // else // { // visibleWhileCreation = visible; // translateTransform.X = 0; // translateTransform.Y = 0; // InvalidateMeasure(); // } sizeChanged = false; } else if (e.PropertyName == "Output") { sizeChanged = true; InvalidateMeasure(); } prevVisualOffset = VisualOffset; }
private void Viewport_PropertyChanged(object sender, ExtendedPropertyChangedEventArgs e) { var transform = plotter.Viewport.Transform; UpdateLevel(transform); BeginInvalidateVisual(); }
private void Viewport_PropertyChanged(object sender, ExtendedPropertyChangedEventArgs e) { var transform = plotter.Viewport.Transform; bool ok = false; do { double width = tileProvider.GetTileWidth(tileProvider.Level); double height = tileProvider.GetTileHeight(tileProvider.Level); Rect size = new Rect(new Size(width, height)); Rect onScreen = size.ViewportToScreen(transform); // todo написать нормально if (onScreen.Width > tileWidth * 1.45) { if (tileProvider.IncreaseLevel()) { continue; } } else if (onScreen.Width < tileWidth / 1.45) { if (tileProvider.DecreaseLevel()) { continue; } } ok = true; } while (!ok); BeginInvalidateVisual(); }
private void Viewport_PropertyChanged(object sender, ExtendedPropertyChangedEventArgs e) { if (e.PropertyName == "Visible") { FillVertexBuffer(); } }
protected virtual void Viewport_PropertyChanged(object sender, ExtendedPropertyChangedEventArgs e) { if (e.PropertyName == "Visible") { DataRect visible = (DataRect)e.NewValue; DataRect prevVisible = (DataRect)e.OldValue; if (prevVisible.Size.EqualsApproximately(visible.Size) && !sizeChanged) { var transform = viewport.Transform; Point prevLocation = prevVisible.Location.ViewportToScreen(transform); Point location = visible.Location.ViewportToScreen(transform); Vector offset = prevLocation - location; translateTransform.X += offset.X; translateTransform.Y += offset.Y; } else { visibleWhileCreation = visible; translateTransform.X = 0; translateTransform.Y = 0; InvalidateMeasure(); } sizeChanged = false; } else if (e.PropertyName == "Output") { sizeChanged = true; translateTransform.X = 0; translateTransform.Y = 0; InvalidateMeasure(); } prevVisualOffset = VisualOffset; }
private void Viewport_PropertyChanged(object sender, ExtendedPropertyChangedEventArgs e) { var transform = plotter.Viewport.Transform; double prevLevel = tileProvider.Level; UpdateLevel(transform); bool shouldRedraw = prevLevel != tileProvider.Level; if (e.PropertyName == "Visible") { DataRect currVisible = (DataRect)e.NewValue; shouldRedraw |= !(drawnBounds.Contains(currVisible) || showsWholeMap); } else if (e.PropertyName == "Transform") { } if (shouldRedraw) { BeginInvalidateVisual(); } }
void Viewport_PropertyChanged(object sender, ExtendedPropertyChangedEventArgs e) { // might be calling too often but it does take care of all events Viewport2D vp = sender as Viewport2D; // get the set of data currently displayed on the screen }
protected virtual void OuterViewport_PropertyChanged(ExtendedPropertyChangedEventArgs e) { CoerceVisible(); }
private void OuterViewport_PropertyChanged(object sender, ExtendedPropertyChangedEventArgs e) { OuterViewport_PropertyChanged(e); }
private void Viewport_PropertyChanged(object sender, ExtendedPropertyChangedEventArgs e) { InvalidateArrange(); }
protected virtual void Viewport_PropertyChanged(object sender, ExtendedPropertyChangedEventArgs e) { if (e.PropertyName == "Visible") { DataRect prevVisible = (DataRect)e.OldValue; DataRect currVisible = (DataRect)e.NewValue; if (prevVisible.Size != currVisible.Size) { UpdateDomain(); } } }
void Viewport_PropertyChanged(object sender, ExtendedPropertyChangedEventArgs e) { if (e.PropertyName == "Visible") { DataRect prevVisible = (DataRect)e.OldValue; DataRect currVisible = (DataRect)e.NewValue; if (currVisible.Size != prevVisible.Size) Update(); else UpdateTransform(); } else { Update(); } }