From eb8f81f73d4ff3ee6f5063ba8ceab4cabe4e5b40 Mon Sep 17 00:00:00 2001 From: Carl Christian Snethlage Date: Sun, 19 May 2019 17:55:09 +0200 Subject: [PATCH 01/10] Added handover dialogservice --- .../java/org/jabref/gui/push/PushToApplicationSettings.java | 3 ++- .../org/jabref/gui/push/PushToApplicationSettingsDialog.java | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/jabref/gui/push/PushToApplicationSettings.java b/src/main/java/org/jabref/gui/push/PushToApplicationSettings.java index d0818faf106..c0c15934fb1 100644 --- a/src/main/java/org/jabref/gui/push/PushToApplicationSettings.java +++ b/src/main/java/org/jabref/gui/push/PushToApplicationSettings.java @@ -19,7 +19,8 @@ public class PushToApplicationSettings { protected AbstractPushToApplication application; private DialogService dialogService; - public GridPane getJFXSettingPane(int n) { + public GridPane getJFXSettingPane(int n, DialogService ds) { + dialogService = ds; switch (n) { case 0: application = new PushToEmacs(dialogService); diff --git a/src/main/java/org/jabref/gui/push/PushToApplicationSettingsDialog.java b/src/main/java/org/jabref/gui/push/PushToApplicationSettingsDialog.java index 4374c7322a0..da185950117 100644 --- a/src/main/java/org/jabref/gui/push/PushToApplicationSettingsDialog.java +++ b/src/main/java/org/jabref/gui/push/PushToApplicationSettingsDialog.java @@ -11,7 +11,7 @@ public class PushToApplicationSettingsDialog { public static void showSettingsDialog(DialogService dialogService, PushToApplicationSettings toApp, int n) { DialogPane dialogPane = new DialogPane(); - dialogPane.setContent(toApp.getJFXSettingPane(n)); + dialogPane.setContent(toApp.getJFXSettingPane(n, dialogService)); dialogService.showCustomDialogAndWait(Localization.lang("App settings"), dialogPane, ButtonType.OK, ButtonType.CANCEL).ifPresent(btn -> { if (btn == ButtonType.OK) { From c79ce541298e89ca7d57a63ebfeefcceea528966 Mon Sep 17 00:00:00 2001 From: Carl Christian Snethlage Date: Sun, 19 May 2019 23:36:07 +0200 Subject: [PATCH 02/10] Undone previous --- .../java/org/jabref/gui/push/PushToApplicationSettings.java | 5 +++-- .../org/jabref/gui/push/PushToApplicationSettingsDialog.java | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/main/java/org/jabref/gui/push/PushToApplicationSettings.java b/src/main/java/org/jabref/gui/push/PushToApplicationSettings.java index c0c15934fb1..fb8ced84591 100644 --- a/src/main/java/org/jabref/gui/push/PushToApplicationSettings.java +++ b/src/main/java/org/jabref/gui/push/PushToApplicationSettings.java @@ -19,8 +19,9 @@ public class PushToApplicationSettings { protected AbstractPushToApplication application; private DialogService dialogService; - public GridPane getJFXSettingPane(int n, DialogService ds) { - dialogService = ds; + public PushToApplicationSettings(DialogService ds) { this.dialogService = ds; } + + public GridPane getJFXSettingPane(int n) { switch (n) { case 0: application = new PushToEmacs(dialogService); diff --git a/src/main/java/org/jabref/gui/push/PushToApplicationSettingsDialog.java b/src/main/java/org/jabref/gui/push/PushToApplicationSettingsDialog.java index da185950117..4374c7322a0 100644 --- a/src/main/java/org/jabref/gui/push/PushToApplicationSettingsDialog.java +++ b/src/main/java/org/jabref/gui/push/PushToApplicationSettingsDialog.java @@ -11,7 +11,7 @@ public class PushToApplicationSettingsDialog { public static void showSettingsDialog(DialogService dialogService, PushToApplicationSettings toApp, int n) { DialogPane dialogPane = new DialogPane(); - dialogPane.setContent(toApp.getJFXSettingPane(n, dialogService)); + dialogPane.setContent(toApp.getJFXSettingPane(n)); dialogService.showCustomDialogAndWait(Localization.lang("App settings"), dialogPane, ButtonType.OK, ButtonType.CANCEL).ifPresent(btn -> { if (btn == ButtonType.OK) { From 34bef0608e8ce6367c50be39e3e91c7ca3c2c22a Mon Sep 17 00:00:00 2001 From: Carl Christian Snethlage Date: Sun, 19 May 2019 23:36:57 +0200 Subject: [PATCH 03/10] Refactor Constructors, handing over dialogService --- .../org/jabref/gui/push/AbstractPushToApplication.java | 2 ++ src/main/java/org/jabref/gui/push/PushToApplication.java | 2 ++ .../org/jabref/gui/push/PushToApplicationsManager.java | 8 ++++---- .../java/org/jabref/gui/push/PushToEmacsSettings.java | 3 +++ src/main/java/org/jabref/gui/push/PushToLyxSettings.java | 3 +++ src/main/java/org/jabref/gui/push/PushToVimSettings.java | 3 +++ 6 files changed, 17 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/jabref/gui/push/AbstractPushToApplication.java b/src/main/java/org/jabref/gui/push/AbstractPushToApplication.java index bbd62196773..0ec15856d00 100644 --- a/src/main/java/org/jabref/gui/push/AbstractPushToApplication.java +++ b/src/main/java/org/jabref/gui/push/AbstractPushToApplication.java @@ -34,6 +34,8 @@ public AbstractPushToApplication(DialogService dialogService) { this.dialogService = dialogService; } + public DialogService getDialogService() { return this.dialogService; } + @Override public String getName() { return Localization.lang("Push entries to external application (%0)", getApplicationName()); diff --git a/src/main/java/org/jabref/gui/push/PushToApplication.java b/src/main/java/org/jabref/gui/push/PushToApplication.java index cea92bc0ae1..4fed1ebe229 100644 --- a/src/main/java/org/jabref/gui/push/PushToApplication.java +++ b/src/main/java/org/jabref/gui/push/PushToApplication.java @@ -2,6 +2,7 @@ import java.util.List; +import org.jabref.gui.DialogService; import org.jabref.gui.icon.JabRefIcon; import org.jabref.model.database.BibDatabaseContext; import org.jabref.model.entry.BibEntry; @@ -19,6 +20,7 @@ public interface PushToApplication { JabRefIcon getIcon(); + DialogService getDialogService(); /** * The actual operation. This method will not be called on the event dispatch thread, so it should not do GUI diff --git a/src/main/java/org/jabref/gui/push/PushToApplicationsManager.java b/src/main/java/org/jabref/gui/push/PushToApplicationsManager.java index 32a13f1226b..60daeac6c65 100644 --- a/src/main/java/org/jabref/gui/push/PushToApplicationsManager.java +++ b/src/main/java/org/jabref/gui/push/PushToApplicationsManager.java @@ -27,13 +27,13 @@ public List getApplications() { public static PushToApplicationSettings getSettings(PushToApplication application) { if (application instanceof PushToEmacs) { - return new PushToEmacsSettings(); + return new PushToEmacsSettings(application.getDialogService()); } else if (application instanceof PushToLyx) { - return new PushToLyxSettings(); + return new PushToLyxSettings(application.getDialogService()); } else if (application instanceof PushToVim) { - return new PushToVimSettings(); + return new PushToVimSettings(application.getDialogService()); } else { - return new PushToApplicationSettings(); + return new PushToApplicationSettings(application.getDialogService()); } } diff --git a/src/main/java/org/jabref/gui/push/PushToEmacsSettings.java b/src/main/java/org/jabref/gui/push/PushToEmacsSettings.java index ca4cee137ac..0147276b652 100644 --- a/src/main/java/org/jabref/gui/push/PushToEmacsSettings.java +++ b/src/main/java/org/jabref/gui/push/PushToEmacsSettings.java @@ -4,6 +4,7 @@ import javafx.scene.control.TextField; import org.jabref.Globals; +import org.jabref.gui.DialogService; import org.jabref.logic.l10n.Localization; import org.jabref.preferences.JabRefPreferences; @@ -11,6 +12,8 @@ public class PushToEmacsSettings extends PushToApplicationSettings { private final TextField additionalParams = new TextField(); + public PushToEmacsSettings (DialogService dialogService) { super(dialogService); } + @Override public void storeSettings() { super.storeSettings(); diff --git a/src/main/java/org/jabref/gui/push/PushToLyxSettings.java b/src/main/java/org/jabref/gui/push/PushToLyxSettings.java index 856f6fc86be..85fe05a97e4 100644 --- a/src/main/java/org/jabref/gui/push/PushToLyxSettings.java +++ b/src/main/java/org/jabref/gui/push/PushToLyxSettings.java @@ -1,11 +1,14 @@ package org.jabref.gui.push; import org.jabref.Globals; +import org.jabref.gui.DialogService; import org.jabref.logic.l10n.Localization; import org.jabref.preferences.JabRefPreferences; public class PushToLyxSettings extends PushToApplicationSettings { + public PushToLyxSettings (DialogService dialogService) { super(dialogService); } + @Override protected void initJFXSettingsPanel() { super.initJFXSettingsPanel(); diff --git a/src/main/java/org/jabref/gui/push/PushToVimSettings.java b/src/main/java/org/jabref/gui/push/PushToVimSettings.java index ce94973675d..70438ed9115 100644 --- a/src/main/java/org/jabref/gui/push/PushToVimSettings.java +++ b/src/main/java/org/jabref/gui/push/PushToVimSettings.java @@ -4,6 +4,7 @@ import javafx.scene.control.TextField; import org.jabref.Globals; +import org.jabref.gui.DialogService; import org.jabref.logic.l10n.Localization; import org.jabref.preferences.JabRefPreferences; @@ -11,6 +12,8 @@ public class PushToVimSettings extends PushToApplicationSettings { private final TextField vimServer = new TextField(); + public PushToVimSettings (DialogService dialogService) { super(dialogService); } + @Override public void storeSettings() { super.storeSettings(); From a363f5ce7c0149936b7b3a3a0dcfa55179abf478 Mon Sep 17 00:00:00 2001 From: Carl Christian Snethlage Date: Mon, 20 May 2019 15:39:29 +0200 Subject: [PATCH 04/10] Reword Identifier --- .../java/org/jabref/gui/push/PushToApplicationSettings.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/jabref/gui/push/PushToApplicationSettings.java b/src/main/java/org/jabref/gui/push/PushToApplicationSettings.java index fb8ced84591..b2bde011530 100644 --- a/src/main/java/org/jabref/gui/push/PushToApplicationSettings.java +++ b/src/main/java/org/jabref/gui/push/PushToApplicationSettings.java @@ -19,7 +19,7 @@ public class PushToApplicationSettings { protected AbstractPushToApplication application; private DialogService dialogService; - public PushToApplicationSettings(DialogService ds) { this.dialogService = ds; } + public PushToApplicationSettings(DialogService dialogService) { this.dialogService = dialogService; } public GridPane getJFXSettingPane(int n) { switch (n) { From 12c14ab52cb28a9f8fe82210208214956d787944 Mon Sep 17 00:00:00 2001 From: Carl Christian Snethlage Date: Mon, 20 May 2019 21:31:23 +0200 Subject: [PATCH 05/10] Reformat for codestyle --- .../java/org/jabref/gui/push/AbstractPushToApplication.java | 4 +++- .../java/org/jabref/gui/push/PushToApplicationSettings.java | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/jabref/gui/push/AbstractPushToApplication.java b/src/main/java/org/jabref/gui/push/AbstractPushToApplication.java index 0ec15856d00..79bf0c46f1c 100644 --- a/src/main/java/org/jabref/gui/push/AbstractPushToApplication.java +++ b/src/main/java/org/jabref/gui/push/AbstractPushToApplication.java @@ -34,7 +34,9 @@ public AbstractPushToApplication(DialogService dialogService) { this.dialogService = dialogService; } - public DialogService getDialogService() { return this.dialogService; } + public DialogService getDialogService() { + return this.dialogService; + } @Override public String getName() { diff --git a/src/main/java/org/jabref/gui/push/PushToApplicationSettings.java b/src/main/java/org/jabref/gui/push/PushToApplicationSettings.java index b2bde011530..5bf9d5a75f7 100644 --- a/src/main/java/org/jabref/gui/push/PushToApplicationSettings.java +++ b/src/main/java/org/jabref/gui/push/PushToApplicationSettings.java @@ -19,7 +19,9 @@ public class PushToApplicationSettings { protected AbstractPushToApplication application; private DialogService dialogService; - public PushToApplicationSettings(DialogService dialogService) { this.dialogService = dialogService; } + public PushToApplicationSettings(DialogService dialogService) { + this.dialogService = dialogService; + } public GridPane getJFXSettingPane(int n) { switch (n) { From c4567019ccd8647a02fc8347d19c3052b3b7f214 Mon Sep 17 00:00:00 2001 From: Carl Christian Snethlage Date: Tue, 21 May 2019 00:46:26 +0200 Subject: [PATCH 06/10] Refactor Constructors --- .../java/org/jabref/gui/preferences/ExternalTab.java | 2 +- .../org/jabref/gui/push/AbstractPushToApplication.java | 4 ---- .../java/org/jabref/gui/push/PushToApplication.java | 2 -- .../org/jabref/gui/push/PushToApplicationsManager.java | 10 +++++----- 4 files changed, 6 insertions(+), 12 deletions(-) diff --git a/src/main/java/org/jabref/gui/preferences/ExternalTab.java b/src/main/java/org/jabref/gui/preferences/ExternalTab.java index 08094d037f5..25c60b60f52 100644 --- a/src/main/java/org/jabref/gui/preferences/ExternalTab.java +++ b/src/main/java/org/jabref/gui/preferences/ExternalTab.java @@ -197,7 +197,7 @@ public Node getBuilder() { } private void addSettingsButton(final PushToApplication application, GridPane panel, int index) { - PushToApplicationSettings settings = PushToApplicationsManager.getSettings(application); + PushToApplicationSettings settings = PushToApplicationsManager.getSettings(application, dialogService); Button button = new Button(Localization.lang("Settings for %0", application.getApplicationName())); button.setPrefSize(150, 20); button.setOnAction(e -> PushToApplicationSettingsDialog.showSettingsDialog(dialogService, settings, index)); diff --git a/src/main/java/org/jabref/gui/push/AbstractPushToApplication.java b/src/main/java/org/jabref/gui/push/AbstractPushToApplication.java index 79bf0c46f1c..bbd62196773 100644 --- a/src/main/java/org/jabref/gui/push/AbstractPushToApplication.java +++ b/src/main/java/org/jabref/gui/push/AbstractPushToApplication.java @@ -34,10 +34,6 @@ public AbstractPushToApplication(DialogService dialogService) { this.dialogService = dialogService; } - public DialogService getDialogService() { - return this.dialogService; - } - @Override public String getName() { return Localization.lang("Push entries to external application (%0)", getApplicationName()); diff --git a/src/main/java/org/jabref/gui/push/PushToApplication.java b/src/main/java/org/jabref/gui/push/PushToApplication.java index 4fed1ebe229..855a9b6b9a0 100644 --- a/src/main/java/org/jabref/gui/push/PushToApplication.java +++ b/src/main/java/org/jabref/gui/push/PushToApplication.java @@ -20,8 +20,6 @@ public interface PushToApplication { JabRefIcon getIcon(); - DialogService getDialogService(); - /** * The actual operation. This method will not be called on the event dispatch thread, so it should not do GUI * operations without utilizing invokeLater(). diff --git a/src/main/java/org/jabref/gui/push/PushToApplicationsManager.java b/src/main/java/org/jabref/gui/push/PushToApplicationsManager.java index 60daeac6c65..43275f86216 100644 --- a/src/main/java/org/jabref/gui/push/PushToApplicationsManager.java +++ b/src/main/java/org/jabref/gui/push/PushToApplicationsManager.java @@ -25,15 +25,15 @@ public List getApplications() { return applications; } - public static PushToApplicationSettings getSettings(PushToApplication application) { + public static PushToApplicationSettings getSettings(PushToApplication application, DialogService dialogService) { if (application instanceof PushToEmacs) { - return new PushToEmacsSettings(application.getDialogService()); + return new PushToEmacsSettings(dialogService); } else if (application instanceof PushToLyx) { - return new PushToLyxSettings(application.getDialogService()); + return new PushToLyxSettings(dialogService); } else if (application instanceof PushToVim) { - return new PushToVimSettings(application.getDialogService()); + return new PushToVimSettings(dialogService); } else { - return new PushToApplicationSettings(application.getDialogService()); + return new PushToApplicationSettings(dialogService); } } From f8dcd0cb8ca9fa1e8cfb920f4077d6a5057d4a88 Mon Sep 17 00:00:00 2001 From: Carl Christian Snethlage Date: Tue, 21 May 2019 00:53:18 +0200 Subject: [PATCH 07/10] Delete superfluous import for checkstyle --- src/main/java/org/jabref/gui/push/PushToApplication.java | 1 - 1 file changed, 1 deletion(-) diff --git a/src/main/java/org/jabref/gui/push/PushToApplication.java b/src/main/java/org/jabref/gui/push/PushToApplication.java index 855a9b6b9a0..39849ef69e6 100644 --- a/src/main/java/org/jabref/gui/push/PushToApplication.java +++ b/src/main/java/org/jabref/gui/push/PushToApplication.java @@ -2,7 +2,6 @@ import java.util.List; -import org.jabref.gui.DialogService; import org.jabref.gui.icon.JabRefIcon; import org.jabref.model.database.BibDatabaseContext; import org.jabref.model.entry.BibEntry; From d689d44f5e44669e08156cc94a25b380b9ef4fb2 Mon Sep 17 00:00:00 2001 From: Carl Christian Snethlage Date: Tue, 21 May 2019 01:01:38 +0200 Subject: [PATCH 08/10] Reformat whitespace --- src/main/java/org/jabref/gui/push/PushToApplication.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/java/org/jabref/gui/push/PushToApplication.java b/src/main/java/org/jabref/gui/push/PushToApplication.java index 39849ef69e6..cea92bc0ae1 100644 --- a/src/main/java/org/jabref/gui/push/PushToApplication.java +++ b/src/main/java/org/jabref/gui/push/PushToApplication.java @@ -19,6 +19,7 @@ public interface PushToApplication { JabRefIcon getIcon(); + /** * The actual operation. This method will not be called on the event dispatch thread, so it should not do GUI * operations without utilizing invokeLater(). From be06f584010350cd659c78bc0b48acba33a5e67b Mon Sep 17 00:00:00 2001 From: Carl Christian Snethlage Date: Tue, 21 May 2019 08:58:03 +0200 Subject: [PATCH 09/10] Refactor Constructors --- src/main/java/org/jabref/gui/preferences/ExternalTab.java | 4 +++- .../java/org/jabref/gui/push/PushToApplicationsManager.java | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/jabref/gui/preferences/ExternalTab.java b/src/main/java/org/jabref/gui/preferences/ExternalTab.java index 25c60b60f52..b0890a4f90a 100644 --- a/src/main/java/org/jabref/gui/preferences/ExternalTab.java +++ b/src/main/java/org/jabref/gui/preferences/ExternalTab.java @@ -28,6 +28,7 @@ class ExternalTab implements PrefsTab { + private final JabRefFrame frame; private final JabRefPreferences prefs; private final TextField emailSubject; private final TextField citeCommand; @@ -54,6 +55,7 @@ class ExternalTab implements PrefsTab { public ExternalTab(JabRefFrame frame, PreferencesDialog prefsDiag, JabRefPreferences prefs) { this.prefs = prefs; + this.frame = frame; dialogService = frame.getDialogService(); builder.setVgap(7); @@ -197,7 +199,7 @@ public Node getBuilder() { } private void addSettingsButton(final PushToApplication application, GridPane panel, int index) { - PushToApplicationSettings settings = PushToApplicationsManager.getSettings(application, dialogService); + PushToApplicationSettings settings = frame.getPushApplications().getSettings(application, dialogService); Button button = new Button(Localization.lang("Settings for %0", application.getApplicationName())); button.setPrefSize(150, 20); button.setOnAction(e -> PushToApplicationSettingsDialog.showSettingsDialog(dialogService, settings, index)); diff --git a/src/main/java/org/jabref/gui/push/PushToApplicationsManager.java b/src/main/java/org/jabref/gui/push/PushToApplicationsManager.java index 43275f86216..4d5c61d1148 100644 --- a/src/main/java/org/jabref/gui/push/PushToApplicationsManager.java +++ b/src/main/java/org/jabref/gui/push/PushToApplicationsManager.java @@ -25,7 +25,7 @@ public List getApplications() { return applications; } - public static PushToApplicationSettings getSettings(PushToApplication application, DialogService dialogService) { + public PushToApplicationSettings getSettings(PushToApplication application, DialogService dialogService) { if (application instanceof PushToEmacs) { return new PushToEmacsSettings(dialogService); } else if (application instanceof PushToLyx) { From ee82c453256d20beccbd3669eac88a0a8fce495b Mon Sep 17 00:00:00 2001 From: Carl Christian Snethlage Date: Tue, 21 May 2019 09:07:07 +0200 Subject: [PATCH 10/10] Refactor Cleanup --- src/main/java/org/jabref/gui/preferences/ExternalTab.java | 3 +-- .../java/org/jabref/gui/push/PushToApplicationsManager.java | 5 ++++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/main/java/org/jabref/gui/preferences/ExternalTab.java b/src/main/java/org/jabref/gui/preferences/ExternalTab.java index b0890a4f90a..afb52861d68 100644 --- a/src/main/java/org/jabref/gui/preferences/ExternalTab.java +++ b/src/main/java/org/jabref/gui/preferences/ExternalTab.java @@ -19,7 +19,6 @@ import org.jabref.gui.push.PushToApplication; import org.jabref.gui.push.PushToApplicationSettings; import org.jabref.gui.push.PushToApplicationSettingsDialog; -import org.jabref.gui.push.PushToApplicationsManager; import org.jabref.gui.util.FileDialogConfiguration; import org.jabref.logic.l10n.Localization; import org.jabref.logic.util.OS; @@ -199,7 +198,7 @@ public Node getBuilder() { } private void addSettingsButton(final PushToApplication application, GridPane panel, int index) { - PushToApplicationSettings settings = frame.getPushApplications().getSettings(application, dialogService); + PushToApplicationSettings settings = frame.getPushApplications().getSettings(application); Button button = new Button(Localization.lang("Settings for %0", application.getApplicationName())); button.setPrefSize(150, 20); button.setOnAction(e -> PushToApplicationSettingsDialog.showSettingsDialog(dialogService, settings, index)); diff --git a/src/main/java/org/jabref/gui/push/PushToApplicationsManager.java b/src/main/java/org/jabref/gui/push/PushToApplicationsManager.java index 4d5c61d1148..e7bfaf78b3b 100644 --- a/src/main/java/org/jabref/gui/push/PushToApplicationsManager.java +++ b/src/main/java/org/jabref/gui/push/PushToApplicationsManager.java @@ -10,7 +10,10 @@ public class PushToApplicationsManager { private final List applications; + private final DialogService dialogService; + public PushToApplicationsManager(DialogService dialogService) { + this.dialogService = dialogService; // Set up the current available choices: applications = new ArrayList<>(); applications.add(new PushToEmacs(dialogService)); @@ -25,7 +28,7 @@ public List getApplications() { return applications; } - public PushToApplicationSettings getSettings(PushToApplication application, DialogService dialogService) { + public PushToApplicationSettings getSettings(PushToApplication application) { if (application instanceof PushToEmacs) { return new PushToEmacsSettings(dialogService); } else if (application instanceof PushToLyx) {