void export()
        {
            var vm = new DataInputViewModel();

            vm.Text.Get = "Bitte geben Sie den Dateinamen ein";
            ViewManager.ShowDialogView(typeof(Input), vm);
            if (vm.IsOK)
            {
                exporter.Export(System.IO.Path.Combine(ConfigLoader.Instance.Config.OutputPath, vm.Output.Get + ".obj"));
            }
        }
        void newCube()
        {
            var vm = new DataInputViewModel();

            vm.Text.Get = "Bitte geben Sie die Größe an (x,y,z)";
            ViewManager.ShowDialogView(typeof(Input), vm);
            if (vm.IsOK)
            {
                var split = vm.Output.Get.Split(',').Select(x => float.Parse(x)).ToList();
                if (split.Count == 3)
                {
                    DrawCubeAction((float)lastPoint.X, (float)lastPoint.Y, 0.0f, split[0], split[1], split[2]);
                }
            }
        }
        void save()
        {
            var vm = new DataInputViewModel();

            vm.Text.Get = "Bitte geben Sie den Dateinamen ein";
            ViewManager.ShowDialogView(typeof(Input), vm);
            if (vm.IsOK)
            {
                var data = new SerializableElements
                {
                    Id       = Element.id,
                    Elements = Elements.Get
                };
                Serializer.SerializeBinary(System.IO.Path.Combine(ConfigLoader.Instance.Config.SavePath, vm.Output.Get + ".model"), data);
            }
        }
        void newMapElement()
        {
            var vm = new DataInputViewModel();

            vm.Text.Get = "Bitte geben Sie die größe an (1,1)";
            bool b = false;

            while (!b)
            {
                ViewManager.ShowDialogView(typeof(Input), vm);
                if (vm.IsOK)
                {
                    var split = vm.Output.Get.Split(',');
                    if (split.Length == 2)
                    {
                        if (int.TryParse(split[0], out int i1) && int.TryParse(split[1], out int i2))
                        {
                            var vmXY = new ViewModelXY(1);
                            var vmXZ = new ViewModelXY(2);
                            var vmYZ = new ViewModelXY(3);

                            var mVm = new ModelViewModel(vmXY, vmXZ, vmYZ, i1, i2);

                            ViewManager.ShowView(typeof(ModelMainMenu), mVm);
                            ViewManager.ShowView(typeof(ViewXY), vmXY);
                            ViewManager.ShowView(typeof(ViewXY), vmXZ);
                            ViewManager.ShowView(typeof(ViewXY), vmYZ);
                            b = true;
                        }
                        else
                        {
                            MessageBox.Show(ViewManager.RootView, "Die Eingebe konnte nicht zu INT geparst werden!");
                        }
                    }
                    else
                    {
                        MessageBox.Show(ViewManager.RootView, "Die Eingebe war fehlerhaft! Bitte geben Sie zwei Zahlen ein, getrennt mit einem Komma.");
                    }
                }
                else
                {
                    b = true;
                }
            }
        }
        void load()
        {
            var vm = new DataInputViewModel();

            vm.Text.Get = "Bitte geben Sie den Dateinamen ein";
            ViewManager.ShowDialogView(typeof(Input), vm);
            if (vm.IsOK)
            {
                var fileName = System.IO.Path.Combine(ConfigLoader.Instance.Config.SavePath, vm.Output.Get + ".model");
                if (!File.Exists(fileName))
                {
                    MessageBox.Show(ViewManager.RootView, $"File \"{fileName}\" does not exist!");
                    return;
                }
                var data = Serializer.DeserializeBinary <SerializableElements>(fileName);
                Element.id   = data.Id;
                Elements.Get = data.Elements;
            }
            setLines();
        }