Ejemplo n.º 1
0
        private void ChooseJtgButton_Click(object sender, EventArgs e)
        {
            using (var ofd = new OpenFileDialog())
            {
                ofd.Title = T._("jTrainGraph-Programmdatei wählen");
                ofd.AddLegacyFilter(T._("JAR-Dateien (*.jar)|*.jar"));

                if (!string.IsNullOrWhiteSpace(jtgPathTextBox.Text))
                {
                    var directory = Path.GetDirectoryName(jtgPathTextBox.Text);
                    if (Directory.Exists(directory))
                    {
                        ofd.Directory = new Uri(directory);
                    }
                }

                if (ofd.ShowDialog(this) == DialogResult.Ok)
                {
                    jtgPathTextBox.Text = ofd.FileName;

                    JtgShared.JtgCompatCheck(jtgPathTextBox.Text, out var compatVersion);
                    if (compatVersion.HasValue)
                    {
                        versionComboBox.SelectedValue = versionComboBox.DataStore.
                                                        FirstOrDefault(i => ((VersionItem)i).Version == compatVersion);
                    }
                }
            }
        }
Ejemplo n.º 2
0
        private void StartJtg(string fnArg, Action finished)
        {
            var javapath = pluginInterface.Settings.Get("jTGStarter.javapath", "java");
            var jtgPath  = pluginInterface.Settings.Get("jTGStarter.jtgpath", JtgShared.DEFAULT_FILENAME);

            var compat = JtgShared.JtgCompatCheck(jtgPath, out var compatVersion);

            if (!compat)
            {
                MessageBox.Show(T._("Die gewählte Version von jTrainGraph ist wahrscheinlich nicht mit FPledit kompatibel. Bitte verwenden Sie jTrainGraph in einer kompatiblen Version!"),
                                T._("jTrainGraphStarter: Fehler"), MessageBoxType.Error);
                return;
            }
            if (pluginInterface.Timetable.Version != compatVersion && pluginInterface.Timetable.Type != TimetableType.Network)
            {
                MessageBox.Show(T._("Die gewählte Version von jTrainGraph ist wahrscheinlich nicht mit der aktuellen Fahrplandatei kompatibel."),
                                T._("jTrainGraphStarter: Fehler"), MessageBoxType.Error);
                return;
            }

            if (!ExecuteJTrainGraph(fnArg, jtgPath, javapath))
            {
                return;
            }

            try
            {
                finished();
            }
            catch (Exception e)
            {
                pluginInterface.Logger.Error("jTrainGraphStarter: " + e.Message);
                pluginInterface.Logger.LogException(e);
            }
        }
Ejemplo n.º 3
0
        private void CloseButton_Click(object sender, EventArgs e)
        {
            bool jtgexists  = File.Exists(jtgPathTextBox.Text) || ExecutableExists(jtgPathTextBox.Text);
            bool javaexists = ExecutableExists(javaPathTextBox.Text);
            var  compat     = JtgShared.JtgCompatCheck(jtgPathTextBox.Text, out _);

            if (!javaexists || !jtgexists || !compat)
            {
                var text = "";
                if (!jtgexists)
                {
                    text += T._("Die angegebene Datei für jTrainGraph wurde nicht gefunden. ");
                }
                if (!compat)
                {
                    text += T._("Die gewählte Version von jTrainGraph ist wahrscheinlich nicht mit FPledit kompatibel. Bitte verwenden Sie jTrainGraph in einer kompatiblen Version! ");
                }
                if (!javaexists)
                {
                    text += T._("Java wurde unter dem angegebenen Pfad nicht gefunden. ");
                }
                text += T._("Wollen Sie trotzdem fortfahren?");
                if (MessageBox.Show(text, T._("jTrainGraphStarter: Fehler"), MessageBoxButtons.YesNo) == DialogResult.No)
                {
                    return;
                }
            }

            var targetVersion = ((VersionItem)versionComboBox.SelectedValue).Version;

            settings.SetEnum("jTGStarter.target-version", targetVersion);
            settings.Set("jTGStarter.show-message", !messageCheckBox.Checked !.Value);
            settings.Set("jTGStarter.javapath", javaPathTextBox.Text);
            settings.Set("jTGStarter.jtgpath", jtgPathTextBox.Text);
            Close();
        }