Compare commits

...

2 Commits

Author SHA1 Message Date
jafea7 761b472c5e Merge branch '20250513-ex' of https://github.com/Jafea7/ctbrec-5.3.2-original into 20250513-ex 2025-05-13 20:22:21 +10:00
jafea7 4f73baca14 Add extra search sites 2025-05-13 20:19:56 +10:00
1 changed files with 27 additions and 26 deletions

View File

@ -15,6 +15,7 @@ import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.scene.Node;
import javafx.scene.control.ContextMenu;
import javafx.scene.control.Menu;
import javafx.scene.control.MenuItem;
import javafx.scene.control.SeparatorMenuItem;
import javafx.scene.control.TabPane;
@ -76,16 +77,12 @@ public class ModelMenuContributor {
}
public void contributeToMenu(List<Model> selectedModels, ContextMenu menu) {
startStopCallback = Optional.ofNullable(startStopCallback).orElse(m -> {
});
followCallback = Optional.ofNullable(followCallback).orElse((m, f, s) -> {
});
ignoreCallback = Optional.ofNullable(ignoreCallback).orElse(m -> {
});
portraitCallback = Optional.ofNullable(portraitCallback).orElse(m -> {
});
callback = Optional.ofNullable(callback).orElse(() -> {
});
startStopCallback = Optional.ofNullable(startStopCallback).orElse(m -> {});
followCallback = Optional.ofNullable(followCallback).orElse((m, f, s) -> {});
ignoreCallback = Optional.ofNullable(ignoreCallback).orElse(m -> {});
portraitCallback = Optional.ofNullable(portraitCallback).orElse(m -> {});
callback = Optional.ofNullable(callback).orElse(() -> {});
addOpenInPlayer(menu, selectedModels);
addOpenInBrowser(menu, selectedModels);
addCopyUrl(menu, selectedModels);
@ -110,11 +107,15 @@ public class ModelMenuContributor {
addPortrait(menu, selectedModels);
menu.getItems().add(new SeparatorMenuItem());
addOpenOnCamGirlFinder(menu, selectedModels); // https://camgirlfinder.net/models?m=everlenn
addOpenOnCamWhores(menu, selectedModels); // https://www.camwhores.tv/search/everlenn/
addOpenOnMyCamGirl(menu, selectedModels); // https://mycamgirl.net/search?query=everlenn
addOpenOnNrToolFinder(menu, selectedModels); // https://nrtool.to/nrtool/search?s=everlenn
addOpenOnRecu(menu, selectedModels); // https://recu.me/performer/everlenn
// 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) {
@ -156,8 +157,8 @@ public class ModelMenuContributor {
menu.getItems().add(openInBrowser);
}
private void addOpenOnCamGirlFinder(ContextMenu menu, List<Model> selectedModels) {
var openOnCamGirlFinder = new MenuItem("Search on CamGirlFinder");
private void addOpenOnCamGirlFinder(Menu menu, List<Model> selectedModels) {
var openOnCamGirlFinder = new MenuItem("CamGirlFinder");
openOnCamGirlFinder.setOnAction(e -> {
for (Model model : selectedModels) {
String preview = model.getPreview();
@ -173,19 +174,19 @@ public class ModelMenuContributor {
menu.getItems().add(openOnCamGirlFinder);
}
private void addOpenOnCamWhores(ContextMenu menu, List<Model> selectedModels) {
var openOnCamWhores = new MenuItem("Search on CamWhores");
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);
DesktopIntegration.open("https://www.camwhores.tv/search/" + query + "/");
}
});
menu.getItems().add(openOnCamWhores);
}
private void addOpenOnMyCamGirl(ContextMenu menu, List<Model> selectedModels) {
var openOnMyCamGirl = new MenuItem("Search on MyCamGirl");
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);
@ -196,8 +197,8 @@ public class ModelMenuContributor {
}
@SuppressWarnings("unused") // Remove when NR Tool accepts image URL and below is updated
private void addOpenOnNrToolFinder(ContextMenu menu, List<Model> selectedModels) {
var openOnNrToolFinder = new MenuItem("Search on NRTool");
private void addOpenOnNrToolFinder(Menu menu, List<Model> selectedModels) {
var openOnNrToolFinder = new MenuItem("NR Tool");
openOnNrToolFinder.setOnAction(e -> {
for (Model model : selectedModels) {
String preview = model.getPreview();
@ -216,8 +217,8 @@ public class ModelMenuContributor {
menu.getItems().add(openOnNrToolFinder);
}
private void addOpenOnRecu(ContextMenu menu, List<Model> selectedModels) {
var openOnRecu = new MenuItem("Search on Recu");
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);