Add extra search sites
This commit is contained in:
parent
34e0419367
commit
4f73baca14
|
@ -15,6 +15,7 @@ import javafx.event.ActionEvent;
|
||||||
import javafx.event.EventHandler;
|
import javafx.event.EventHandler;
|
||||||
import javafx.scene.Node;
|
import javafx.scene.Node;
|
||||||
import javafx.scene.control.ContextMenu;
|
import javafx.scene.control.ContextMenu;
|
||||||
|
import javafx.scene.control.Menu;
|
||||||
import javafx.scene.control.MenuItem;
|
import javafx.scene.control.MenuItem;
|
||||||
import javafx.scene.control.SeparatorMenuItem;
|
import javafx.scene.control.SeparatorMenuItem;
|
||||||
import javafx.scene.control.TabPane;
|
import javafx.scene.control.TabPane;
|
||||||
|
@ -76,16 +77,12 @@ public class ModelMenuContributor {
|
||||||
}
|
}
|
||||||
|
|
||||||
public void contributeToMenu(List<Model> selectedModels, ContextMenu menu) {
|
public void contributeToMenu(List<Model> selectedModels, ContextMenu menu) {
|
||||||
startStopCallback = Optional.ofNullable(startStopCallback).orElse(m -> {
|
startStopCallback = Optional.ofNullable(startStopCallback).orElse(m -> {});
|
||||||
});
|
followCallback = Optional.ofNullable(followCallback).orElse((m, f, s) -> {});
|
||||||
followCallback = Optional.ofNullable(followCallback).orElse((m, f, s) -> {
|
ignoreCallback = Optional.ofNullable(ignoreCallback).orElse(m -> {});
|
||||||
});
|
portraitCallback = Optional.ofNullable(portraitCallback).orElse(m -> {});
|
||||||
ignoreCallback = Optional.ofNullable(ignoreCallback).orElse(m -> {
|
callback = Optional.ofNullable(callback).orElse(() -> {});
|
||||||
});
|
|
||||||
portraitCallback = Optional.ofNullable(portraitCallback).orElse(m -> {
|
|
||||||
});
|
|
||||||
callback = Optional.ofNullable(callback).orElse(() -> {
|
|
||||||
});
|
|
||||||
addOpenInPlayer(menu, selectedModels);
|
addOpenInPlayer(menu, selectedModels);
|
||||||
addOpenInBrowser(menu, selectedModels);
|
addOpenInBrowser(menu, selectedModels);
|
||||||
addCopyUrl(menu, selectedModels);
|
addCopyUrl(menu, selectedModels);
|
||||||
|
@ -108,8 +105,17 @@ public class ModelMenuContributor {
|
||||||
addOpenRecDir(menu, selectedModels);
|
addOpenRecDir(menu, selectedModels);
|
||||||
addNotes(menu, selectedModels);
|
addNotes(menu, selectedModels);
|
||||||
addPortrait(menu, selectedModels);
|
addPortrait(menu, selectedModels);
|
||||||
addOpenOnCamGirlFinder(menu, selectedModels);
|
menu.getItems().add(new SeparatorMenuItem());
|
||||||
addOpenOnNrToolFinder(menu, selectedModels);
|
|
||||||
|
// Create a submenu for the "Open On" options
|
||||||
|
Menu openOnSubMenu = new Menu("Search On ...");
|
||||||
|
addOpenOnCamGirlFinder(openOnSubMenu, selectedModels); // https://camgirlfinder.net/models?m=everlenn
|
||||||
|
addOpenOnCamWhores(openOnSubMenu, selectedModels); // https://www.camwhores.tv/search/everlenn/
|
||||||
|
addOpenOnMyCamGirl(openOnSubMenu, selectedModels); // https://mycamgirl.net/search?query=everlenn
|
||||||
|
addOpenOnNrToolFinder(openOnSubMenu, selectedModels); // https://nrtool.to/nrtool/search?s=everlenn
|
||||||
|
addOpenOnRecu(openOnSubMenu, selectedModels); // https://recu.me/performer/everlenn
|
||||||
|
// Add the submenu to the main menu
|
||||||
|
menu.getItems().add(openOnSubMenu);
|
||||||
}
|
}
|
||||||
|
|
||||||
public ModelMenuContributor afterwards(Runnable callback) {
|
public ModelMenuContributor afterwards(Runnable callback) {
|
||||||
|
@ -151,8 +157,8 @@ public class ModelMenuContributor {
|
||||||
menu.getItems().add(openInBrowser);
|
menu.getItems().add(openInBrowser);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void addOpenOnCamGirlFinder(ContextMenu menu, List<Model> selectedModels) {
|
private void addOpenOnCamGirlFinder(Menu menu, List<Model> selectedModels) {
|
||||||
var openOnCamGirlFinder = new MenuItem("Search on CamGirlFinder");
|
var openOnCamGirlFinder = new MenuItem("CamGirlFinder");
|
||||||
openOnCamGirlFinder.setOnAction(e -> {
|
openOnCamGirlFinder.setOnAction(e -> {
|
||||||
for (Model model : selectedModels) {
|
for (Model model : selectedModels) {
|
||||||
String preview = model.getPreview();
|
String preview = model.getPreview();
|
||||||
|
@ -168,9 +174,31 @@ public class ModelMenuContributor {
|
||||||
menu.getItems().add(openOnCamGirlFinder);
|
menu.getItems().add(openOnCamGirlFinder);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void addOpenOnCamWhores(Menu menu, List<Model> selectedModels) {
|
||||||
|
var openOnCamWhores = new MenuItem("CamWhores");
|
||||||
|
openOnCamWhores.setOnAction(e -> {
|
||||||
|
for (Model model : selectedModels) {
|
||||||
|
String query = URLEncoder.encode(model.getName(), UTF_8);
|
||||||
|
DesktopIntegration.open("https://www.camwhores.tv/search/" + query + "/");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
menu.getItems().add(openOnCamWhores);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void addOpenOnMyCamGirl(Menu menu, List<Model> selectedModels) {
|
||||||
|
var openOnMyCamGirl = new MenuItem("MyCamGirl");
|
||||||
|
openOnMyCamGirl.setOnAction(e -> {
|
||||||
|
for (Model model : selectedModels) {
|
||||||
|
String query = URLEncoder.encode(model.getName(), UTF_8);
|
||||||
|
DesktopIntegration.open("https://mycamgirl.net/search?query=" + query);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
menu.getItems().add(openOnMyCamGirl);
|
||||||
|
}
|
||||||
|
|
||||||
@SuppressWarnings("unused") // Remove when NR Tool accepts image URL and below is updated
|
@SuppressWarnings("unused") // Remove when NR Tool accepts image URL and below is updated
|
||||||
private void addOpenOnNrToolFinder(ContextMenu menu, List<Model> selectedModels) {
|
private void addOpenOnNrToolFinder(Menu menu, List<Model> selectedModels) {
|
||||||
var openOnNrToolFinder = new MenuItem("Search on NRTool");
|
var openOnNrToolFinder = new MenuItem("NR Tool");
|
||||||
openOnNrToolFinder.setOnAction(e -> {
|
openOnNrToolFinder.setOnAction(e -> {
|
||||||
for (Model model : selectedModels) {
|
for (Model model : selectedModels) {
|
||||||
String preview = model.getPreview();
|
String preview = model.getPreview();
|
||||||
|
@ -189,6 +217,17 @@ public class ModelMenuContributor {
|
||||||
menu.getItems().add(openOnNrToolFinder);
|
menu.getItems().add(openOnNrToolFinder);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void addOpenOnRecu(Menu menu, List<Model> selectedModels) {
|
||||||
|
var openOnRecu = new MenuItem("Recu");
|
||||||
|
openOnRecu.setOnAction(e -> {
|
||||||
|
for (Model model : selectedModels) {
|
||||||
|
String query = URLEncoder.encode(model.getName(), UTF_8);
|
||||||
|
DesktopIntegration.open("https://recu.me/performer/" + query);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
menu.getItems().add(openOnRecu);
|
||||||
|
}
|
||||||
|
|
||||||
private void addCopyUrl(ContextMenu menu, List<Model> selectedModels) {
|
private void addCopyUrl(ContextMenu menu, List<Model> selectedModels) {
|
||||||
if (selectedModels == null || selectedModels.isEmpty()) {
|
if (selectedModels == null || selectedModels.isEmpty()) {
|
||||||
return;
|
return;
|
||||||
|
|
Loading…
Reference in New Issue