From 8140e063ea4958c90d43d2a01113ed82b5cc6d32 Mon Sep 17 00:00:00 2001 From: lensferno Date: Mon, 23 Aug 2021 09:44:54 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=8C=E4=BC=98=E5=8C=96=E3=80=8D=E9=83=A8?= =?UTF-8?q?=E5=88=86=E7=95=8C=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/me/lensferno/dogename/Main.java | 13 ++++++------- .../dogename/controllers/OcrPaneController.java | 5 ++++- .../controllers/ProgramInfoPaneController.java | 8 ++++---- .../java/me/lensferno/dogename/sayings/Gushici.java | 8 +++++--- .../me/lensferno/dogename/sayings/Hitokoto.java | 8 +++++--- .../lensferno/dogename/utils/ocr/ScreenCapture.java | 6 ++++-- .../me/lensferno/dogename/FXMLs/MainInterface.fxml | 2 +- 7 files changed, 29 insertions(+), 21 deletions(-) diff --git a/Dogename/src/main/java/me/lensferno/dogename/Main.java b/Dogename/src/main/java/me/lensferno/dogename/Main.java index b4c1a01..f2766b3 100644 --- a/Dogename/src/main/java/me/lensferno/dogename/Main.java +++ b/Dogename/src/main/java/me/lensferno/dogename/Main.java @@ -77,15 +77,14 @@ public class Main extends Application { configLoader.writeAllConfigToFile(configLoader.getMainConfigLocation(), configLoader.getVoiceConfigLocation()); System.exit(0); }); - - if (mainInterfaceController.getMainConfig().isShowSaying()) { - if (new Random().nextBoolean()){ - new Gushici().showGushici(mainInterfaceController.getRootPane(),mainInterfaceController.getTopBar()); - }else { - new Hitokoto().showHitokoto(mainInterfaceController.getRootPane(),mainInterfaceController.getTopBar()); - } + + if (new Random().nextBoolean()){ + new Gushici().showGushici(mainInterfaceController.getRootPane(),mainInterfaceController.getTopBar(), mainInterfaceController.getMainConfig().isShowSaying()); + } else { + new Hitokoto().showHitokoto(mainInterfaceController.getRootPane(),mainInterfaceController.getTopBar(), mainInterfaceController.getMainConfig().isShowSaying()); } + } } \ No newline at end of file diff --git a/Dogename/src/main/java/me/lensferno/dogename/controllers/OcrPaneController.java b/Dogename/src/main/java/me/lensferno/dogename/controllers/OcrPaneController.java index e85e68e..5e69be6 100644 --- a/Dogename/src/main/java/me/lensferno/dogename/controllers/OcrPaneController.java +++ b/Dogename/src/main/java/me/lensferno/dogename/controllers/OcrPaneController.java @@ -22,6 +22,8 @@ public class OcrPaneController { this.mainStage = mainStage; } + + @FXML void addNew() { @@ -39,7 +41,7 @@ public class OcrPaneController { ScreenCapture screenCapture = new ScreenCapture(); ocrText.textProperty().bindBidirectional(screenCapture.resultProperty()); - loadingSpinner.visibleProperty().bind(screenCapture.endProperty().not()); + loadingSpinner.visibleProperty().set(true); screenCapture.startCapture(); @@ -47,6 +49,7 @@ public class OcrPaneController { if (end) { mainStage.show(); thisStage.show(); + loadingSpinner.visibleProperty().set(false); } }); } diff --git a/Dogename/src/main/java/me/lensferno/dogename/controllers/ProgramInfoPaneController.java b/Dogename/src/main/java/me/lensferno/dogename/controllers/ProgramInfoPaneController.java index 2c8a825..69284ac 100644 --- a/Dogename/src/main/java/me/lensferno/dogename/controllers/ProgramInfoPaneController.java +++ b/Dogename/src/main/java/me/lensferno/dogename/controllers/ProgramInfoPaneController.java @@ -48,7 +48,7 @@ public class ProgramInfoPaneController extends VBox { } @FXML - void showLicense(ActionEvent event) { + void showLicense() { TextArea textArea=new TextArea(IOUtil.inputStreamToString(getClass().getResourceAsStream("/gpl-3.0.txt"), StandardCharsets.UTF_8)); textArea.setFont(Font.font("Microsoft YaHei",14)); textArea.setMinWidth(600); @@ -58,7 +58,7 @@ public class ProgramInfoPaneController extends VBox { } @FXML - void showLibLicense(ActionEvent event) { + void showLibLicense() { TextArea textArea=new TextArea(IOUtil.inputStreamToString(getClass().getResourceAsStream("/LibLicense.txt"), StandardCharsets.UTF_8)); textArea.setFont(Font.font("Microsoft YaHei",14)); textArea.setMinWidth(600); @@ -68,7 +68,7 @@ public class ProgramInfoPaneController extends VBox { } @FXML - void showHelp(ActionEvent event) { + void showHelp() { JFXButton YesButton = new JFXButton("好的~去吧去吧"); YesButton.setFont(Font.font("Microsoft YaHei", FontWeight.BOLD,14)); @@ -97,7 +97,7 @@ public class ProgramInfoPaneController extends VBox { } @FXML - void viewCode(ActionEvent event) { + void viewCode() { JFXButton githubButton = new JFXButton("前往Github查看"); githubButton.setFont(Font.font("Microsoft YaHei", FontWeight.BOLD,14)); githubButton.setPrefWidth(150); diff --git a/Dogename/src/main/java/me/lensferno/dogename/sayings/Gushici.java b/Dogename/src/main/java/me/lensferno/dogename/sayings/Gushici.java index 57a396f..2b2c6a0 100644 --- a/Dogename/src/main/java/me/lensferno/dogename/sayings/Gushici.java +++ b/Dogename/src/main/java/me/lensferno/dogename/sayings/Gushici.java @@ -19,7 +19,7 @@ public class Gushici { return NetworkUtil.getHtml(GUSHICI_API); } - public void showGushici(Pane rootPane, Label topBar){ + public void showGushici(Pane rootPane, Label topBar, boolean showOnDialog){ new Thread(()->{ @@ -35,8 +35,10 @@ public class Gushici { type=gushiciData.getType(); Platform.runLater(()->{ topBar.setText(content+" ——"+author+"《"+title+"》"); - GushiciPaneController gushiciPaneController=new GushiciPaneController(content, title, author, type); - new DialogMaker(rootPane).createDialogWithOneBtn("每日古诗词",gushiciPaneController); + if (showOnDialog) { + GushiciPaneController gushiciPaneController=new GushiciPaneController(content, title, author, type); + new DialogMaker(rootPane).createDialogWithOneBtn("每日古诗词",gushiciPaneController); + } }); } }).start(); diff --git a/Dogename/src/main/java/me/lensferno/dogename/sayings/Hitokoto.java b/Dogename/src/main/java/me/lensferno/dogename/sayings/Hitokoto.java index e9d656a..484ec3e 100644 --- a/Dogename/src/main/java/me/lensferno/dogename/sayings/Hitokoto.java +++ b/Dogename/src/main/java/me/lensferno/dogename/sayings/Hitokoto.java @@ -20,7 +20,7 @@ public class Hitokoto { return NetworkUtil.getHtml(HITOKOTO_API); } - public void showHitokoto(Pane rootPane, Label topBar) { + public void showHitokoto(Pane rootPane, Label topBar, boolean showOnDialog) { new Thread(() -> { @@ -39,8 +39,10 @@ public class Hitokoto { Platform.runLater(() -> { topBar.setText(String.format("《%s》:%s (%s)", from, hitokoto, author)); - HitokotoPaneController hitokotoPaneController = new HitokotoPaneController(hitokoto, from, author, creator, type); - new DialogMaker(rootPane).createDialogWithOneBtn("每日一句话", hitokotoPaneController); + if (showOnDialog) { + HitokotoPaneController hitokotoPaneController = new HitokotoPaneController(hitokoto, from, author, creator, type); + new DialogMaker(rootPane).createDialogWithOneBtn("每日一言", hitokotoPaneController); + } }); } }).start(); diff --git a/Dogename/src/main/java/me/lensferno/dogename/utils/ocr/ScreenCapture.java b/Dogename/src/main/java/me/lensferno/dogename/utils/ocr/ScreenCapture.java index 1077c5d..1e60b84 100644 --- a/Dogename/src/main/java/me/lensferno/dogename/utils/ocr/ScreenCapture.java +++ b/Dogename/src/main/java/me/lensferno/dogename/utils/ocr/ScreenCapture.java @@ -22,7 +22,7 @@ public class ScreenCapture { private OcrTool ocrTool; - private final String cacheImageFileLocation = "caches/image/ocrImageCache.jpg"; + private final String cacheImageFileLocation = "caches/image/ocrImageCache.png"; private final Runnable finalEvent = new Runnable() { @Override @@ -30,9 +30,9 @@ public class ScreenCapture { if (ocrTool == null) { ocrTool = new OcrTool(); } + end.set(true); ocrTool.requestOcrAPI(cacheImageFileLocation); result.set(ocrTool.getResult()); - end.set(true); } }; @@ -152,6 +152,8 @@ public class ScreenCapture { } private void createNewSelectedAreaRectangle() { + rootPane.getChildren().removeAll(Width_Follow, Height_Follow, Width_Fixed, Height_Fixed); + Width_Follow = new Line(); Height_Follow = new Line(); Width_Fixed = new Line(); diff --git a/Dogename/src/main/resources/me/lensferno/dogename/FXMLs/MainInterface.fxml b/Dogename/src/main/resources/me/lensferno/dogename/FXMLs/MainInterface.fxml index 0b132bc..a60c4f3 100644 --- a/Dogename/src/main/resources/me/lensferno/dogename/FXMLs/MainInterface.fxml +++ b/Dogename/src/main/resources/me/lensferno/dogename/FXMLs/MainInterface.fxml @@ -21,7 +21,7 @@ -