Skip to content

Commit 9e348ec

Browse files
committed
- rename new filter during creation
1 parent eb95027 commit 9e348ec

File tree

2 files changed

+18
-5
lines changed

2 files changed

+18
-5
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
- **Neuer Startparameter notwendig für Selbstbauer:** `--add-exports=java.desktop/sun.swing=ALL-UNNAMED` muss hinzugefügt werden.
55
- großflächiger Rückbau von JavaFX-Komponenten, dies sollte älteren Computern zugute kommen.
66
- **BUGFIX:** Filter können nicht in existierende umbenannt werden.
7+
- **FEATURE:** Filter können bei der Neuanlage direkt mit einem Namen versehen werden.
78
- **BUGFIX:** Duplikatsuche berücksicht nur HQ-URL wenn Film auch HQ ist.
89
- **BUGFIX:** Alte tagesschau24 Filme in der Liste werden nur konvertiert wenn der Sender auch angezeigt werden soll.
910
- **BUGFIX:** Darkmode Anzeigefehler im Kontextmenü des Tab Filme behoben.

src/main/java/mediathek/gui/tabs/tab_film/filter/SwingFilterDialog.java

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -474,17 +474,29 @@ public void restoreFilterConfig() {
474474
}
475475

476476
private class AddNewFilterAction extends AbstractAction {
477+
private static final String STR_ACTION_NAME = "Neuen Filter anlegen";
477478
public AddNewFilterAction() {
478479
putValue(Action.SMALL_ICON, SVGIconUtilities.createSVGIcon("icons/fontawesome/plus.svg"));
479-
putValue(Action.SHORT_DESCRIPTION, "Neuen Filter anlegen");
480+
putValue(Action.SHORT_DESCRIPTION, STR_ACTION_NAME);
480481
}
481482

482483
@Override
483484
public void actionPerformed(ActionEvent e) {
484-
FilterDTO newFilter = new FilterDTO(UUID.randomUUID(), String.format("Filter %d", filterConfig.getAvailableFilters().size() + 1));
485-
filterConfig.addNewFilter(newFilter);
486-
checkDeleteCurrentFilterButtonState();
487-
filterSelectionComboBoxModel.setSelectedItem(newFilter);
485+
String newFilterName = (String)JOptionPane.showInputDialog(MediathekGui.ui(), "Filtername:",
486+
STR_ACTION_NAME, JOptionPane.PLAIN_MESSAGE, null, null,
487+
String.format("Filter %d", filterConfig.getAvailableFilters().size() + 1));
488+
if (newFilterName != null) {
489+
filterConfig.findFilterForName(newFilterName).ifPresentOrElse(f ->
490+
JOptionPane.showMessageDialog(MediathekGui.ui(),
491+
"Ein Filter mit dem gewählten Namen existiert bereits!",
492+
STR_ACTION_NAME, JOptionPane.ERROR_MESSAGE), () -> {
493+
FilterDTO newFilter = new FilterDTO(UUID.randomUUID(), newFilterName);
494+
filterConfig.addNewFilter(newFilter);
495+
checkDeleteCurrentFilterButtonState();
496+
filterSelectionComboBoxModel.setSelectedItem(newFilter);
497+
});
498+
499+
}
488500
}
489501
}
490502

0 commit comments

Comments
 (0)