From 72f18c340dcc10203be9a2fd010094e3dee6e762 Mon Sep 17 00:00:00 2001 From: Carlson Date: Fri, 2 Dec 2022 16:41:06 +0800 Subject: [PATCH] =?UTF-8?q?REPORT-85754=20fix:=E6=89=A9=E5=B1=95=E5=9B=BE?= =?UTF-8?q?=E8=A1=A8=E5=9C=BA=E6=99=AF=E8=AE=BE=E7=BD=AE-js-=E9=AB=98?= =?UTF-8?q?=E7=BA=A7=E7=BC=96=E8=BE=91=E7=95=8C=E9=9D=A2=E4=B8=8D=E5=BA=94?= =?UTF-8?q?=E8=AF=A5=E7=BD=AE=E5=BA=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/fr/design/javascript/JSContentPane.java | 9 +++++++++ .../com/fr/design/javascript/JavaScriptImplPane.java | 6 +++++- .../chart/custom/component/VanChartHyperLinkPane.java | 6 +++++- 3 files changed, 19 insertions(+), 2 deletions(-) diff --git a/designer-base/src/main/java/com/fr/design/javascript/JSContentPane.java b/designer-base/src/main/java/com/fr/design/javascript/JSContentPane.java index c9344f5ca..a31ebe845 100644 --- a/designer-base/src/main/java/com/fr/design/javascript/JSContentPane.java +++ b/designer-base/src/main/java/com/fr/design/javascript/JSContentPane.java @@ -31,6 +31,7 @@ import java.awt.BorderLayout; import java.awt.Cursor; import java.awt.Dimension; import java.awt.FontMetrics; +import java.awt.Window; import java.awt.event.FocusEvent; import java.awt.event.FocusListener; import java.awt.event.MouseAdapter; @@ -54,6 +55,7 @@ public class JSContentPane extends BasicPane { private JSImplUpdateAction jsImplUpdateAction; private JSImplPopulateAction jsImplPopulateAction; private boolean modal; + private Window parentWindow; BasicDialog advancedEditorDialog ; public JSContentPane(){} @@ -122,6 +124,9 @@ public class JSContentPane extends BasicPane { super.doCancel(); } },new Dimension(900,800)); + if (parentWindow != null) { + parentWindow.setVisible(false); + } advancedEditorDialog.setModal(modal); advancedEditorDialog.setResizable(true); advancedEditorDialog.pack(); @@ -133,6 +138,10 @@ public class JSContentPane extends BasicPane { labelPane.add(advancedEditorLabel,BorderLayout.EAST); } + public void setParentWindow(Window parentWindow) { + this.parentWindow = parentWindow; + } + protected UIScrollPane createContentTextAreaPanel(){ contentTextArea = new RSyntaxTextArea(); contentTextArea.setCloseCurlyBraces(true); diff --git a/designer-base/src/main/java/com/fr/design/javascript/JavaScriptImplPane.java b/designer-base/src/main/java/com/fr/design/javascript/JavaScriptImplPane.java index 6a83ad3d2..fa7e30dc4 100644 --- a/designer-base/src/main/java/com/fr/design/javascript/JavaScriptImplPane.java +++ b/designer-base/src/main/java/com/fr/design/javascript/JavaScriptImplPane.java @@ -29,6 +29,7 @@ import javax.swing.JPanel; import javax.swing.event.TableModelEvent; import javax.swing.event.TableModelListener; +import java.awt.Window; import java.util.HashMap; import java.util.HashSet; import java.util.List; @@ -49,6 +50,7 @@ public class JavaScriptImplPane extends AbstractHyperLinkPane { public JavaScriptImplPane(HashMap hyperLinkEditorMap, boolean needRenamePane) { super(hyperLinkEditorMap, needRenamePane); this.defaultArgs = new String[0]; + this.modal = true; initComponents(); } @@ -149,7 +151,9 @@ public class JavaScriptImplPane extends AbstractHyperLinkPane { return importedJsPane; } - + public void setParentWindow4ContentPane(Window parentWindow) { + jsPane.setParentWindow(parentWindow); + } /** * 参数改变 diff --git a/designer-chart/src/main/java/com/fr/van/chart/custom/component/VanChartHyperLinkPane.java b/designer-chart/src/main/java/com/fr/van/chart/custom/component/VanChartHyperLinkPane.java index 6e5b346a1..1a23ca816 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/custom/component/VanChartHyperLinkPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/custom/component/VanChartHyperLinkPane.java @@ -77,7 +77,11 @@ public class VanChartHyperLinkPane extends VanChartUIListControlPane { Constructor constructor = null; try { constructor = creator.getUpdatePane().getConstructor(HashMap.class, boolean.class); - return constructor.newInstance(getHyperLinkEditorMap(), false); + BasicBeanPane pane = constructor.newInstance(getHyperLinkEditorMap(), false); + if (pane instanceof JavaScriptImplPane) { + ((JavaScriptImplPane) pane).setParentWindow4ContentPane(getPopupEditDialog()); + } + return pane; } catch (InstantiationException | IllegalAccessException | InvocationTargetException e) { FineLoggerFactory.getLogger().error(e.getMessage(), e);