aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Navigation/INavigationObjectReceiver.cs
blob: 5072881d232e49c00213ff577c3034d51959f6fd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Tango.MachineStudio.Common.Navigation
{
    /// <summary>
    /// Represents an object which supports receiving an object as part of the navigation to it.
    /// </summary>
    /// <typeparam name="T"></typeparam>
    public interface INavigationObjectReceiver<T>
    {
        /// <summary>
        /// Called when navigation system is going to navigate to this instance with the specified object.
        /// </summary>
        /// <param name="obj">The object.</param>
        void OnNavigatedToWithObject(T obj);
    }
}
g System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Navigation; using System.Windows.Shapes; using Tango.MachineStudio.Logging.ViewModels; namespace Tango.MachineStudio.Logging.Views { /// <summary> /// Interaction logic for TimelineView.xaml /// </summary> public partial class TimelineView : UserControl { private TimelineViewVM _vm; public TimelineView() { InitializeComponent(); this.Loaded += (_, __) => _vm = DataContext as TimelineViewVM; } private void UserControl_MouseWheel(object sender, MouseWheelEventArgs e) { if (e.Delta > 0) { _vm.TimelineScaleFactor += 0.5; } else { _vm.TimelineScaleFactor -= 0.5; } } private void ItemsControl_SizeChanged(object sender, SizeChangedEventArgs e) { TimelineEventGroup group = (sender as FrameworkElement).DataContext as TimelineEventGroup; if (group != null) { group.Height = e.NewSize.Height; } } private void scrollViewer_ScrollChanged(object sender, ScrollChangedEventArgs e) { scroll_channels.ScrollToVerticalOffset(e.VerticalOffset); } } }