private static void MouseEventsEnabled_PropertyChanged(DependencyObject sender, DependencyPropertyChangedEventArgs e) { PanZoomPanel panZoomPanel = sender as PanZoomPanel; panZoomPanel.IsManipulationEnabled = true; bool isEnabled = (bool)e.NewValue; if (panZoomPanel != null) { if (isEnabled) { panZoomPanel.MouseWheel += new MouseWheelEventHandler(PanZoomPanel_MouseWheel); panZoomPanel.MouseLeftButtonDown += new MouseButtonEventHandler(PanZoomPanel_MouseLeftButtonDown); panZoomPanel.MouseLeftButtonUp += new MouseButtonEventHandler(PanZoomPanel_MouseLeftButtonUp); panZoomPanel.ManipulationDelta += new EventHandler <ManipulationDeltaEventArgs>(panZoomPanel_ManipulationDelta); panZoomPanel.MouseMove += new MouseEventHandler(PanZoomPanel_MouseMove); } else { panZoomPanel.MouseWheel -= new MouseWheelEventHandler(PanZoomPanel_MouseWheel); panZoomPanel.MouseLeftButtonDown -= new MouseButtonEventHandler(PanZoomPanel_MouseLeftButtonDown); panZoomPanel.MouseLeftButtonUp -= new MouseButtonEventHandler(PanZoomPanel_MouseLeftButtonUp); panZoomPanel.ManipulationDelta -= new EventHandler <ManipulationDeltaEventArgs>(panZoomPanel_ManipulationDelta); panZoomPanel.MouseMove -= new MouseEventHandler(PanZoomPanel_MouseMove); } } }
public AdornerBase (UIElement element, PanZoomPanel panZoomPanel) : base(element) { MenuItem mi = new MenuItem(); var binding = new Binding("Remove"); binding.Source = CultureResources.getDataProvider(); BindingOperations.SetBinding(mi, MenuItem.HeaderProperty, binding); mi.Click += new RoutedEventHandler(RemoveItem_Click); this.ContextMenu = new ContextMenu(); this.ContextMenu.Items.Add(mi); _Zoom = panZoomPanel.Zoom; _OffsetX = panZoomPanel.OffsetX; _OffsetY = panZoomPanel.OffsetY; panZoomPanel.ZoomChanged += new DoublePropertyEventHandler(panZoomPanel_ZoomChanged); panZoomPanel.OffsetXChanged += new DoublePropertyEventHandler(panZoomPanel_OffsetXChanged); panZoomPanel.OffsetYChanged += new DoublePropertyEventHandler(panZoomPanel_OffsetYChanged); IsClipEnabled = true; EventsRegistered = false; _IsEnabled = false; visualChildren = new VisualCollection(this); }
public AOIAdorner(UIElement element, PanZoomPanel panZoomPanel) : base(element, panZoomPanel) { m_AOIWindows = new List<AOIWindow>(); LeftMouseBtnWasPressed = false; m_element = element; }
private static void PanZoomPanel_MouseLeftButtonUp(object sender, MouseEventArgs e) { PanZoomPanel panZoomPanel = sender as PanZoomPanel; if (panZoomPanel != null) { Mouse.Capture(null); panZoomPanel._Panning = false; } }
private static void Overview_PropertyChanged(DependencyObject sender, DependencyPropertyChangedEventArgs e) { PanZoomPanel panZoomPanel = sender as PanZoomPanel; Overview overview = e.NewValue as Overview; if (panZoomPanel != null && overview != null) { overview.DataContext = panZoomPanel; } }
private static void OffsetY_PropertyChanged(DependencyObject sender, DependencyPropertyChangedEventArgs e) { PanZoomPanel panZoomPanel = sender as PanZoomPanel; double duration = panZoomPanel._Zooming ? panZoomPanel.ZoomAnimationDuration : panZoomPanel.PanAnimationDuration; double acceleration = panZoomPanel._Zooming ? panZoomPanel.ZoomAcceleration : panZoomPanel.PanAcceleration; double deceleration = panZoomPanel._Zooming ? panZoomPanel.ZoomDeceleration : panZoomPanel.PanDeceleration; AnimationHelper.StartAnimation(panZoomPanel._OffsetTransform, TranslateTransform.YProperty, (double)e.NewValue, duration, acceleration, deceleration); }
private static object OffsetY_Coerce(DependencyObject sender, object baseValue) { PanZoomPanel panZoomPanel = (PanZoomPanel)sender; double value = (double)baseValue; double minOffsetY = -(panZoomPanel._Content.DesiredSize.Height * panZoomPanel.Zoom); value = Math.Min(Math.Max(value, minOffsetY), panZoomPanel.DesiredSize.Height); return(value); }
public AnnotationAdorner (UIElement element, PanZoomPanel panZoomPanel) : base(element, panZoomPanel) { _Annotations = new List<Annotation>(); MenuItem mi = new MenuItem(); var binding = new Binding("Comment"); binding.Source = CultureResources.getDataProvider(); BindingOperations.SetBinding(mi, MenuItem.HeaderProperty, binding); mi.Click += new RoutedEventHandler(CommentItem_Click); ContextMenu.Items.Add(mi); MainContextMenuOpen = false; }
private static void PanZoomPanel_MouseWheel(object sender, MouseWheelEventArgs e) { PanZoomPanel panZoomPanel = sender as PanZoomPanel; if (panZoomPanel != null) { if (e.Delta > 0) { panZoomPanel.Zoom *= panZoomPanel.ZoomFactor; } else if (e.Delta < 0) { panZoomPanel.Zoom *= 1 / panZoomPanel.ZoomFactor; } } }
private static void Zoom_PropertyChanged(DependencyObject sender, DependencyPropertyChangedEventArgs e) { PanZoomPanel panZoomPanel = sender as PanZoomPanel; Point contentMousePosition = ((TransformGroup)panZoomPanel._Content.RenderTransform).Inverse.Transform(panZoomPanel._MousePosition); AnimationHelper.StartAnimation(panZoomPanel._ZoomTransform, ScaleTransform.ScaleXProperty, (double)e.NewValue, panZoomPanel.ZoomAnimationDuration, panZoomPanel.ZoomAcceleration, panZoomPanel.ZoomDeceleration); AnimationHelper.StartAnimation(panZoomPanel._ZoomTransform, ScaleTransform.ScaleYProperty, (double)e.NewValue, panZoomPanel.ZoomAnimationDuration, panZoomPanel.ZoomAcceleration, panZoomPanel.ZoomDeceleration); panZoomPanel._Zooming = true; panZoomPanel.OffsetX = -1.0 * (contentMousePosition.X * panZoomPanel.Zoom - panZoomPanel._MousePosition.X); panZoomPanel.OffsetY = -1.0 * (contentMousePosition.Y * panZoomPanel.Zoom - panZoomPanel._MousePosition.Y); panZoomPanel._Zooming = false; }
static void panZoomPanel_ManipulationDelta(object sender, ManipulationDeltaEventArgs e) { PanZoomPanel panZoomPanel = sender as PanZoomPanel; if (panZoomPanel != null) { var scale = e.DeltaManipulation.Scale; if (scale.X != 1 && scale.Y != 1) { var zoomfactor = 1 - (scale.Length / Math.Sqrt(2)); panZoomPanel.Zoom -= zoomfactor; } else { panZoomPanel.OffsetX += e.DeltaManipulation.Translation.X; panZoomPanel.OffsetY += e.DeltaManipulation.Translation.Y; } } }
private static void PanZoomPanel_MouseMove(object sender, MouseEventArgs e) { PanZoomPanel panZoomPanel = sender as PanZoomPanel; if (panZoomPanel != null) { if (panZoomPanel._Panning == true) { Point currentPoint = e.GetPosition(panZoomPanel); panZoomPanel.OffsetX += currentPoint.X - panZoomPanel._MousePosition.X; panZoomPanel.OffsetY += currentPoint.Y - panZoomPanel._MousePosition.Y; panZoomPanel._MousePosition = currentPoint; } else { panZoomPanel._MousePosition = e.GetPosition(panZoomPanel); } } }
public MeasureAdorner (UIElement element, PanZoomPanel panZoomPanel) : base(element, panZoomPanel) { _MeasurementLines = new List<MeasurementLine>(); _Cursor = new Cursor(Assembly.GetExecutingAssembly().GetManifestResourceStream("L3.Cargo.Workstation.Plugins.XRayImageBase.Resources.Cursors.ruler.cur")); }
public TIPAdorner(UIElement element, PanZoomPanel panZoomPanel) : base(element, panZoomPanel) { m_TIPMarkingsList = new List<RectangleGeometry>(); }