Beispiel #1
0
        public TdmLayoutBuilder(WaypointsService waypointService, GroupsService groupsService)
        {
            _waypointsService = waypointService;
            _groupsService    = groupsService;

            TdmLayoutTemplate = new TdmLayoutTemplate();
            ApplyCommand      = new DelegateCommand(Apply);
        }
Beispiel #2
0
        public void Apply()
        {
            var points = new List <Waypoint>();
            var group  = new Group("TDM");

            var selected = _waypointsService.SelectedWaypoints.ToList();

            foreach (var waypoint in selected)
            {
                var tdmGroup = new TdmGroup(waypoint.Name);
                var layout   = TdmLayoutTemplate.ApplyTo(waypoint);
                points.AddRange(layout);
                tdmGroup.Children.AddRange(layout);
                group.Children.Add(tdmGroup);
            }

            _waypointsService.Waypoints.RemoveRange(selected);
            _waypointsService.Waypoints.AddRange(points);

            _groupsService.Groups.Add(group);
        }