Exemple #1
0
        public async void DeleteHangarAsync(object param)
        {
            try
            {
                int    hangarId = (int)param;
                Hangar hangar   = Hangars.Single(x => x.Id.Equals(hangarId));

                if (hangar != null)
                {
                    var myMessageDialog =
                        new MessageDialog("Er du sikker på at slette hangar: " + hangar.Placering);
                    myMessageDialog.Commands.Add(new UICommand("YES", command =>
                    {
                        _dtoHangar.DeleteHangar(hangarId);
                        Hangars.Remove(hangar);
                        _dtoHangar.Loadhangar();
                    }));
                    myMessageDialog.Commands.Add(new UICommand("NO", command => { }));
                    await myMessageDialog.ShowAsync();
                }
            }
            catch (Exception ex)
            {
                await new MessageDialog(ex.Message).ShowAsync();
            }
        }
Exemple #2
0
        public void InsertHangar()
        {
            if (String.IsNullOrEmpty(InsertHangarNavn))
            {
                throw new ArgumentException("Du mangler at indtaste en hangar");
            }
            Hangar hangar = new Hangar(InsertHangarNavn);

            Hangars.Add(hangar);
            _dtoHangar.PostHangar(hangar);
            _dtoHangar.Loadhangar();
        }
        public string SerializeSubsystem()
        {
            var saveBuilder = Context.SharedStringBuilder;

            saveBuilder.Clear();
            for (int i = 0; i < Hangars.Count(); i++)
            {
                if (Hangars[i] != null)
                {
                    saveBuilder.AppendLine($"{i}-{Hangars[i].Serialize()}");
                }
            }
            return(saveBuilder.ToString());
        }
Exemple #4
0
 public void LoadHangarData()
 {
     Hangars.Clear();
     _dtoHangar.Loadhangar();
     Hangars = _dtoHangar.HangarListe.ToObservableCollection();
 }
Exemple #5
0
        public void LayLinks()
        {
            if (_hasNexts == null)
            {
                throw new InvalidOperationException();
            }
            // Loop over array.
            for (int y = 0; y < _hasNexts.Length; y++)
            {
                for (int x = 0; x < _hasNexts[y].Length; x++)
                {
                    // Check is item is null
                    if (_hasNexts[y][x] == null)
                    {
                        continue;
                    }
                    // Yeey, we found a item, Lets check its identity.
                    switch (_hasNexts[y][x])
                    {
                    case Hangar hangar:
                        // Look right for a tracklink and link to it.
                        if (IsType <Track>(y, x + 1))
                        {
                            hangar.Next = _hasNexts[y] [x + 1];
                            Hangars.Add(hangar);
                        }
                        continue;

                    case Yard yard:
                        // Look Left for another yard.
                        if (IsType <Yard>(y, x - 1))
                        {
                            yard.Next = _hasNexts[y][x - 1];
                        }
                        continue;

                    case Turnout1To2 turnout1To2:
                        // Look up and down.
                        LinkTurnout(turnout1To2, y, x);
                        // Look left
                        if (IsType <Track>(y, x - 1))
                        {
                            turnout1To2.Next = turnout1To2.optionDown;
                        }
                        turnout1To2.ChangeDirection();
                        turnout1To2.ChangeDirection();
                        continue;

                    case Turnout2To1 turnout2To1:
                        // Look up and down.
                        LinkTurnout(turnout2To1, y, x);
                        // Look right
                        if (IsType <Track>(y, x + 1))
                        {
                            turnout2To1.Next = _hasNexts[y][x + 1];
                        }
                        turnout2To1.ChangeDirection();
                        turnout2To1.ChangeDirection();
                        continue;

                    case WaterQuay waterQuay:
                        //Look left
                        AddNext <WaterLink>(waterQuay, y, x - 1);
                        //Lood down
                        waterQuay.track = (Track)_hasNexts[y + 1][x];
                        this.quay       = waterQuay;
                        continue;

                    case WaterLink waterLink when waterLink.GetType() == typeof(WaterLink):
                        //Look left
                        AddNext <WaterLink>(waterLink, y, x - 1);

                        firstRiver = (WaterLink)waterLink;
                        continue;

                    case Track track when track.GetType() == typeof(Track):
                        LinkTracks(track, y, x);

                        continue;
                    }
                }
            }
        }