From 42b4b00c889201974b8da4b8ffe3c1c14da3f259 Mon Sep 17 00:00:00 2001 From: Jafea7 Date: Wed, 23 Apr 2025 20:38:29 +1000 Subject: [PATCH] Add Search on NR Tool --- .../ctbrec/ui/menu/ModelMenuContributor.java | 24 +++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/client/src/main/java/ctbrec/ui/menu/ModelMenuContributor.java b/client/src/main/java/ctbrec/ui/menu/ModelMenuContributor.java index 2644ef70..392df930 100644 --- a/client/src/main/java/ctbrec/ui/menu/ModelMenuContributor.java +++ b/client/src/main/java/ctbrec/ui/menu/ModelMenuContributor.java @@ -112,6 +112,7 @@ public class ModelMenuContributor { addNotes(menu, selectedModels); addPortrait(menu, selectedModels); addOpenOnCamGirlFinder(menu, selectedModels); + addOpenOnNrToolFinder(menu, selectedModels); } public ModelMenuContributor afterwards(Runnable callback) { @@ -153,8 +154,6 @@ public class ModelMenuContributor { menu.getItems().add(openInBrowser); } -// CB (old): https://roomimg.stream.highwebmedia.com/ri/emiilycampbell.jpg?1745301588 -// CB (new): https://thumb.live.mmcdn.com/ri/emiilycampbell.jpg private void addOpenOnCamGirlFinder(ContextMenu menu, List selectedModels) { var openOnCamGirlFinder = new MenuItem("Search on CamGirlFinder"); openOnCamGirlFinder.setOnAction(e -> { @@ -172,6 +171,27 @@ public class ModelMenuContributor { menu.getItems().add(openOnCamGirlFinder); } + @SuppressWarnings("unused") // Remove when NR Tool accepts image URL and below is updated + private void addOpenOnNrToolFinder(ContextMenu menu, List selectedModels) { + var openOnNrToolFinder = new MenuItem("Search on NRTool"); + openOnNrToolFinder.setOnAction(e -> { + for (Model model : selectedModels) { + String preview = model.getPreview(); + // Remove following line whenever NR Tool can accept image URLs + preview = null; + if (preview != null && !preview.isEmpty()) { + String query = URLEncoder.encode(preview, UTF_8); + // Adjust whenever URL API implemented + DesktopIntegration.open("https://nrtool.to/nrtool/search?s=" + query); + } else { + String query = URLEncoder.encode(model.getName(), UTF_8); + DesktopIntegration.open("https://nrtool.to/nrtool/search?s=" + query); + } + } + }); + menu.getItems().add(openOnNrToolFinder); + } + private void addCopyUrl(ContextMenu menu, List selectedModels) { if (selectedModels == null || selectedModels.isEmpty()) { return;