From 52a7153ff0d45420cad706ba4d90b1a47a3cb945 Mon Sep 17 00:00:00 2001 From: "Destiny.Lin" Date: Thu, 13 Oct 2022 11:22:34 +0800 Subject: [PATCH 1/8] =?UTF-8?q?REPORT-81880=20=E4=BC=98=E5=8C=96=E6=A8=A1?= =?UTF-8?q?=E6=9D=BF=E5=AE=9A=E4=BD=8D=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../actions/replace/ui/ITTableButton.java | 40 +++++++++++++++++-- 1 file changed, 37 insertions(+), 3 deletions(-) diff --git a/designer-realize/src/main/java/com/fr/design/actions/replace/ui/ITTableButton.java b/designer-realize/src/main/java/com/fr/design/actions/replace/ui/ITTableButton.java index 1a73d3fcb3..40e05e615d 100644 --- a/designer-realize/src/main/java/com/fr/design/actions/replace/ui/ITTableButton.java +++ b/designer-realize/src/main/java/com/fr/design/actions/replace/ui/ITTableButton.java @@ -6,10 +6,12 @@ import com.fr.design.file.HistoryTemplateListCache; import com.fr.design.gui.ibutton.UIButton; import com.fr.design.i18n.Toolkit; import com.fr.design.mainframe.DesignerContext; +import com.fr.design.mainframe.JTemplate; +import com.fr.file.FILE; import com.fr.file.FILEFactory; import com.fr.general.GeneralUtils; import com.fr.stable.StringUtils; -import com.fr.stable.project.ProjectConstants; + import javax.swing.AbstractCellEditor; @@ -44,11 +46,43 @@ public class ITTableButton extends AbstractCellEditor implements TableCellEditor if (StringUtils.isNotEmpty(GeneralUtils.objectToString(content.getTrlString()))) { ITReplaceMainDialog.setITReplaceFlag(true); TRL trl = new TRL(GeneralUtils.objectToString(content.getTrlString())); - DesignerContext.getDesignerFrame().openTemplate(FILEFactory.createFILE(content.getTemplatePath())); - HistoryTemplateListCache.getInstance().getCurrentEditingTemplate().navigate(trl); + FILE tplFile = FILEFactory.createFILE(content.getTemplatePath()); + if (tplFile != null && tplFile.exists()) { + //模板已保存 + navigate2ExistedTemplate(tplFile, trl); + } else { + //模板未保存 + navigate2NotExistedTemplate(content, trl); + } } ITReplaceMainDialog.setITReplaceFlag(false); } + + /** + * 模板未保存的跳转逻辑 + * @param content 存储模板名称的数据结构 + * @param trl 跳转链接 + */ + private void navigate2NotExistedTemplate(ITContent content, TRL trl) { + java.util.List> openTemplates = HistoryTemplateListCache.getInstance().getHistoryList(); + for (int i = 0, len = openTemplates.size(); i < len; i++) { + if (StringUtils.equals(openTemplates.get(i).getTemplateName(), content.getTemplateName())) { + DesignerContext.getDesignerFrame().activateJTemplate(openTemplates.get(i)); + HistoryTemplateListCache.getInstance().getCurrentEditingTemplate().navigate(trl); + break; + } + } + } + + /** + * 模板已保存的跳转逻辑 + * @param tplFile 模板的FILE文件 + * @param trl 跳转链接 + */ + private void navigate2ExistedTemplate(FILE tplFile, TRL trl) { + DesignerContext.getDesignerFrame().openTemplate(tplFile); + HistoryTemplateListCache.getInstance().getCurrentEditingTemplate().navigate(trl); + } }); From 5b503ffba630dc6c9189702a0cb601762c3a3113 Mon Sep 17 00:00:00 2001 From: "Destiny.Lin" Date: Thu, 13 Oct 2022 16:07:40 +0800 Subject: [PATCH 2/8] =?UTF-8?q?REPORT-81880=20=E4=BC=98=E5=8C=96=E6=A8=A1?= =?UTF-8?q?=E6=9D=BF=E5=AE=9A=E4=BD=8D=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../fr/design/mainframe/DesignerFrame.java | 35 ++++++++++++++++++ .../actions/replace/ui/ITTableButton.java | 37 +------------------ 2 files changed, 37 insertions(+), 35 deletions(-) diff --git a/designer-base/src/main/java/com/fr/design/mainframe/DesignerFrame.java b/designer-base/src/main/java/com/fr/design/mainframe/DesignerFrame.java index dfd2a20cd0..a18cd724d7 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/DesignerFrame.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/DesignerFrame.java @@ -886,6 +886,39 @@ public class DesignerFrame extends JFrame implements JTemplateActionListener, Ta layeredPane.repaint(); } + /** + * 激活模板 + *

+ * activateJTemplate需要模板存在,openTemplate需要模板保存过,该方法模板保存与未保存皆可激活,模板如果关闭,并且保存过,会重新打开 + * + * @param templatePath 模板路径 template.getPath() + * @param templateName 模板名称 + */ + public void openOrActiveTemplate(String templatePath, String templateName) { + //没保存过的模板如果要激活就要从当前历史模板列表里面找 + if (isTemplateNeverSaved(templatePath)) { + int index = HistoryTemplateListCache.getInstance().contains(templateName); + //如果历史模板列表中存在则激活 + if (index != -1) { + DesignerContext.getDesignerFrame().activateJTemplate(HistoryTemplateListCache.getInstance().getTemplate(index)); + } + } else { + DesignerContext.getDesignerFrame().openTemplate(FILEFactory.createFILE(templatePath)); + } + } + + /** + * 指定路径的模板是否保存过 + * + * @param templatePath 模板路径 template.getPath() + * @return 如果模板没保存过则返回true + */ + private boolean isTemplateNeverSaved(String templatePath) { + FILE tplFile = FILEFactory.createFILE(templatePath); + //没保存过的模板获取到的templatePath所生成的FILE文件会不存在 + return tplFile == null || !tplFile.exists() || StringUtils.isEmpty(templatePath); + } + /** * 当前模板 停用失败 * @@ -1231,6 +1264,7 @@ public class DesignerFrame extends JFrame implements JTemplateActionListener, Ta /** * 判断是否正在进行服务器配置 + * * @return boolean */ public boolean isServerConfig() { @@ -1239,6 +1273,7 @@ public class DesignerFrame extends JFrame implements JTemplateActionListener, Ta /** * 设置是否正在进行服务器配置 + * * @param serverConfig */ public void setServerConfig(boolean serverConfig) { diff --git a/designer-realize/src/main/java/com/fr/design/actions/replace/ui/ITTableButton.java b/designer-realize/src/main/java/com/fr/design/actions/replace/ui/ITTableButton.java index 40e05e615d..35ebedc72a 100644 --- a/designer-realize/src/main/java/com/fr/design/actions/replace/ui/ITTableButton.java +++ b/designer-realize/src/main/java/com/fr/design/actions/replace/ui/ITTableButton.java @@ -46,46 +46,13 @@ public class ITTableButton extends AbstractCellEditor implements TableCellEditor if (StringUtils.isNotEmpty(GeneralUtils.objectToString(content.getTrlString()))) { ITReplaceMainDialog.setITReplaceFlag(true); TRL trl = new TRL(GeneralUtils.objectToString(content.getTrlString())); - FILE tplFile = FILEFactory.createFILE(content.getTemplatePath()); - if (tplFile != null && tplFile.exists()) { - //模板已保存 - navigate2ExistedTemplate(tplFile, trl); - } else { - //模板未保存 - navigate2NotExistedTemplate(content, trl); - } + DesignerContext.getDesignerFrame().openOrActiveTemplate(content.getTemplatePath(), content.getTemplateName()); + HistoryTemplateListCache.getInstance().getCurrentEditingTemplate().navigate(trl); } ITReplaceMainDialog.setITReplaceFlag(false); } - - /** - * 模板未保存的跳转逻辑 - * @param content 存储模板名称的数据结构 - * @param trl 跳转链接 - */ - private void navigate2NotExistedTemplate(ITContent content, TRL trl) { - java.util.List> openTemplates = HistoryTemplateListCache.getInstance().getHistoryList(); - for (int i = 0, len = openTemplates.size(); i < len; i++) { - if (StringUtils.equals(openTemplates.get(i).getTemplateName(), content.getTemplateName())) { - DesignerContext.getDesignerFrame().activateJTemplate(openTemplates.get(i)); - HistoryTemplateListCache.getInstance().getCurrentEditingTemplate().navigate(trl); - break; - } - } - } - - /** - * 模板已保存的跳转逻辑 - * @param tplFile 模板的FILE文件 - * @param trl 跳转链接 - */ - private void navigate2ExistedTemplate(FILE tplFile, TRL trl) { - DesignerContext.getDesignerFrame().openTemplate(tplFile); - HistoryTemplateListCache.getInstance().getCurrentEditingTemplate().navigate(trl); - } }); - } /** From 8c49d129f865cd7880615733944cfb6d9c42bf79 Mon Sep 17 00:00:00 2001 From: "Destiny.Lin" Date: Thu, 13 Oct 2022 18:47:14 +0800 Subject: [PATCH 3/8] =?UTF-8?q?REPORT-81880=20=E4=BC=98=E5=8C=96=E6=A8=A1?= =?UTF-8?q?=E6=9D=BF=E5=AE=9A=E4=BD=8D=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../fr/design/mainframe/DesignerFrame.java | 19 +++++++++++++++++-- .../actions/replace/ui/ITTableButton.java | 2 +- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/designer-base/src/main/java/com/fr/design/mainframe/DesignerFrame.java b/designer-base/src/main/java/com/fr/design/mainframe/DesignerFrame.java index a18cd724d7..5040a5cbd4 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/DesignerFrame.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/DesignerFrame.java @@ -892,10 +892,10 @@ public class DesignerFrame extends JFrame implements JTemplateActionListener, Ta * activateJTemplate需要模板存在,openTemplate需要模板保存过,该方法模板保存与未保存皆可激活,模板如果关闭,并且保存过,会重新打开 * * @param templatePath 模板路径 template.getPath() - * @param templateName 模板名称 */ - public void openOrActiveTemplate(String templatePath, String templateName) { + public void openOrActiveTemplate(String templatePath) { //没保存过的模板如果要激活就要从当前历史模板列表里面找 + String templateName = getTemplateNameFromPath(templatePath); if (isTemplateNeverSaved(templatePath)) { int index = HistoryTemplateListCache.getInstance().contains(templateName); //如果历史模板列表中存在则激活 @@ -919,6 +919,21 @@ public class DesignerFrame extends JFrame implements JTemplateActionListener, Ta return tplFile == null || !tplFile.exists() || StringUtils.isEmpty(templatePath); } + /** + * 根据模板路径获取模板名称 + * @param templatePath 模板路径 template.getPath() + * @return 模板名 + */ + private String getTemplateNameFromPath(String templatePath) { + FILE tplFile = FILEFactory.createFILE(templatePath); + String templateName = StringUtils.EMPTY; + if (tplFile != null) { + templateName = tplFile.getName(); + } + return templateName; + } + + /** * 当前模板 停用失败 * diff --git a/designer-realize/src/main/java/com/fr/design/actions/replace/ui/ITTableButton.java b/designer-realize/src/main/java/com/fr/design/actions/replace/ui/ITTableButton.java index 35ebedc72a..c4cf47f592 100644 --- a/designer-realize/src/main/java/com/fr/design/actions/replace/ui/ITTableButton.java +++ b/designer-realize/src/main/java/com/fr/design/actions/replace/ui/ITTableButton.java @@ -46,7 +46,7 @@ public class ITTableButton extends AbstractCellEditor implements TableCellEditor if (StringUtils.isNotEmpty(GeneralUtils.objectToString(content.getTrlString()))) { ITReplaceMainDialog.setITReplaceFlag(true); TRL trl = new TRL(GeneralUtils.objectToString(content.getTrlString())); - DesignerContext.getDesignerFrame().openOrActiveTemplate(content.getTemplatePath(), content.getTemplateName()); + DesignerContext.getDesignerFrame().openOrActiveTemplate(content.getTemplatePath()); HistoryTemplateListCache.getInstance().getCurrentEditingTemplate().navigate(trl); } ITReplaceMainDialog.setITReplaceFlag(false); From fe43d69d1f69a6a338fcbaed41b7f346b1c2a43b Mon Sep 17 00:00:00 2001 From: "Destiny.Lin" Date: Fri, 14 Oct 2022 10:19:37 +0800 Subject: [PATCH 4/8] =?UTF-8?q?REPORT-75998=20=E6=9B=B4=E6=8D=A2=E8=8F=9C?= =?UTF-8?q?=E5=8D=95=E4=BD=8D=E7=BD=AE=E5=88=B0=E2=80=9C=E6=A8=A1=E6=9D=BF?= =?UTF-8?q?=E2=80=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/fr/design/mainframe/JTemplate.java | 5 +++++ .../mainframe/toolbar/ToolBarMenuDock.java | 8 +------- .../fr/design/module/DesignModuleFactory.java | 18 ++++++++++++++++-- .../com/fr/design/images/replace/replace.png | Bin 0 -> 418 bytes .../design/images/replace/replace_normal.svg | 3 +++ .../actions/replace/ITReplaceAction.java | 1 + 6 files changed, 26 insertions(+), 9 deletions(-) create mode 100644 designer-base/src/main/resources/com/fr/design/images/replace/replace.png create mode 100644 designer-base/src/main/resources/com/fr/design/images/replace/replace_normal.svg diff --git a/designer-base/src/main/java/com/fr/design/mainframe/JTemplate.java b/designer-base/src/main/java/com/fr/design/mainframe/JTemplate.java index fe0e4ee4ff..844b8d0144 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/JTemplate.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/JTemplate.java @@ -54,6 +54,7 @@ import com.fr.design.mainframe.toolbar.VcsScene; import com.fr.design.menu.MenuDef; import com.fr.design.menu.NameSeparator; import com.fr.design.menu.ShortCut; +import com.fr.design.module.DesignModuleFactory; import com.fr.design.preview.PagePreview; import com.fr.design.ui.util.UIUtil; import com.fr.design.utils.DesignUtils; @@ -1109,6 +1110,10 @@ public abstract class JTemplate> tplMenu.addShortCut(shortCuts4Authority()); } + //查找替换 + tplMenu.addShortCut(new NameSeparator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Replace_Name_Separate"))); + tplMenu.addShortCut((ShortCut) DesignModuleFactory.getITReplaceAction()); + return new MenuDef[]{tplMenu}; } diff --git a/designer-base/src/main/java/com/fr/design/mainframe/toolbar/ToolBarMenuDock.java b/designer-base/src/main/java/com/fr/design/mainframe/toolbar/ToolBarMenuDock.java index 6a83a159b8..904c281560 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/toolbar/ToolBarMenuDock.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/toolbar/ToolBarMenuDock.java @@ -580,13 +580,7 @@ public abstract class ToolBarMenuDock { } shortCuts.add(new AboutAction()); - try { - if (DesignModuleFactory.getITReplaceAction() != null) { - shortCuts.add((ShortCut) DesignModuleFactory.getITReplaceAction().newInstance()); - } - } catch (Exception e) { - FineLoggerFactory.getLogger().error(e.getMessage(), e); - } + return shortCuts.toArray(new ShortCut[0]); } diff --git a/designer-base/src/main/java/com/fr/design/module/DesignModuleFactory.java b/designer-base/src/main/java/com/fr/design/module/DesignModuleFactory.java index bab9bb1ac8..cccd6f71e6 100644 --- a/designer-base/src/main/java/com/fr/design/module/DesignModuleFactory.java +++ b/designer-base/src/main/java/com/fr/design/module/DesignModuleFactory.java @@ -19,6 +19,7 @@ import com.fr.log.FineLoggerFactory; import com.fr.plugin.solution.sandbox.collection.PluginSandboxCollections; import com.fr.stable.StableUtils; import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; import java.lang.reflect.Constructor; import java.awt.Dialog; @@ -129,8 +130,21 @@ public class DesignModuleFactory { instance.ITReplaceAction = r; } - public static Class getITReplaceAction() { - return instance.ITReplaceAction; + /** + * 获取查找替换 + * + * @return ITReplaceAction + */ + @Nullable + public static Object getITReplaceAction() { + try { + if (instance.ITReplaceAction != null) { + return instance.ITReplaceAction.newInstance(); + } + } catch (Exception e) { + FineLoggerFactory.getLogger().error(e.getMessage(), e); + } + return null; } /** diff --git a/designer-base/src/main/resources/com/fr/design/images/replace/replace.png b/designer-base/src/main/resources/com/fr/design/images/replace/replace.png new file mode 100644 index 0000000000000000000000000000000000000000..e736042724c17a037500b250aaeb5802acdb5366 GIT binary patch literal 418 zcmV;T0bTxyP)ve zv+>o~pP!Zo!ySw)VL-#Vp(0d++;7MXE+1 zB>|*FoG>&r34&tKkiq#TkIb}3zvEM%c@p@0s1fA(`x0BM^=Q!MtdyCe1d*m`QX_EA zz2P_~%2!RJVtq&{7HHzC`u0Oe#*C&&^bX5GKrEy#k>CdR8N+>o^PDHrNbpT$pgtHq)$ literal 0 HcmV?d00001 diff --git a/designer-base/src/main/resources/com/fr/design/images/replace/replace_normal.svg b/designer-base/src/main/resources/com/fr/design/images/replace/replace_normal.svg new file mode 100644 index 0000000000..efe176ceab --- /dev/null +++ b/designer-base/src/main/resources/com/fr/design/images/replace/replace_normal.svg @@ -0,0 +1,3 @@ + + + diff --git a/designer-realize/src/main/java/com/fr/design/actions/replace/ITReplaceAction.java b/designer-realize/src/main/java/com/fr/design/actions/replace/ITReplaceAction.java index 358dc19652..6d085cbbdf 100644 --- a/designer-realize/src/main/java/com/fr/design/actions/replace/ITReplaceAction.java +++ b/designer-realize/src/main/java/com/fr/design/actions/replace/ITReplaceAction.java @@ -29,6 +29,7 @@ public class ITReplaceAction extends UpdateAction { this.setName(getMenuKeySet().getMenuName()); this.setMnemonic(getMenuKeySet().getMnemonic()); this.setAccelerator(getMenuKeySet().getKeyStroke()); + this.setSmallIcon("/com/fr/design/images/replace/replace"); } private static final MenuKeySet IT_REPLACE = new MenuKeySet() { From c0823d9ce88d2d58ada4ca4ea2cc2554ab44eb10 Mon Sep 17 00:00:00 2001 From: "John.Ying" Date: Fri, 14 Oct 2022 10:24:10 +0800 Subject: [PATCH 5/8] =?UTF-8?q?REPORT-81973=20=E6=90=9C=E7=B4=A2=E6=A8=A1?= =?UTF-8?q?=E6=9D=BF=E6=97=B6=E6=B2=A1=E9=A2=84=E5=8A=A0=E8=BD=BD=E5=AE=8C?= =?UTF-8?q?=E5=B0=B1=E5=BC=80=E5=A7=8B=E6=90=9C=E7=B4=A2,=E6=B2=A1?= =?UTF-8?q?=E6=9E=84=E5=BB=BA=E5=87=BA=E6=A8=A1=E6=9D=BF=E6=A0=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/fr/design/gui/itree/filetree/TemplateFileTree.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/designer-base/src/main/java/com/fr/design/gui/itree/filetree/TemplateFileTree.java b/designer-base/src/main/java/com/fr/design/gui/itree/filetree/TemplateFileTree.java index 0a0d6c5d33..f273fa2092 100644 --- a/designer-base/src/main/java/com/fr/design/gui/itree/filetree/TemplateFileTree.java +++ b/designer-base/src/main/java/com/fr/design/gui/itree/filetree/TemplateFileTree.java @@ -306,8 +306,7 @@ public class TemplateFileTree extends EnvFileTree { if (interceptRefresh(root)) { return; } - - if (!TemplateTreeSearchManager.getInstance().isRefreshing()) { + if (!TemplateTreeSearchManager.getInstance().isRefreshing() || TemplateTreeSearchManager.getInstance().allFileNodes().size() != allTreeNode.size()) { currentTreeMode.clear(); calculateNode.clear(); allTreeNode = TemplateTreeSearchManager.getInstance().allFileNodes().entrySet().stream().collect( From a1e3c0027038e589b5b3ec8f45e924f955d9001f Mon Sep 17 00:00:00 2001 From: "John.Ying" Date: Fri, 14 Oct 2022 15:16:39 +0800 Subject: [PATCH 6/8] =?UTF-8?q?REPORT-82112=20=E6=A8=A1=E6=9D=BF=E9=94=81?= =?UTF-8?q?=E5=AE=9A=EF=BC=8C=E8=B6=85=E7=AE=A1=E5=BC=BA=E5=88=B6=E8=A7=A3?= =?UTF-8?q?=E9=94=81=E7=9A=84=E6=8C=89=E9=92=AE=E6=B2=A1=E4=BA=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DesignerFrameFileDealerPane.java | 21 ++++++++++++++++--- .../pane/TemplateTreeSearchToolbarPane.java | 6 ++++++ 2 files changed, 24 insertions(+), 3 deletions(-) diff --git a/designer-base/src/main/java/com/fr/design/mainframe/DesignerFrameFileDealerPane.java b/designer-base/src/main/java/com/fr/design/mainframe/DesignerFrameFileDealerPane.java index 04a513d5b6..bdf0aa56c6 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/DesignerFrameFileDealerPane.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/DesignerFrameFileDealerPane.java @@ -172,8 +172,8 @@ public class DesignerFrameFileDealerPane extends JPanel implements FileToolbarSt tooBarPane.add(new UIMenuHighLight(), BorderLayout.SOUTH); searchToolbarPane = new TemplateTreeSearchToolbarPane(toolBar); + searchToolbarPane.add(createUpToolBarPane(), BorderLayout.EAST); searchToolbarPane.setPreferredSize(new Dimension(this.getWidth(), 23)); - add(searchToolbarPane, BorderLayout.NORTH); CardLayout card; JPanel cardPane = new JPanel(card = new CardLayout()); @@ -183,7 +183,6 @@ public class DesignerFrameFileDealerPane extends JPanel implements FileToolbarSt card.show(cardPane, FILE); TemplateTreePane.getInstance().setToolbarStateChangeListener(this); - add(cardPane, BorderLayout.CENTER); stateChange(); } @@ -219,7 +218,6 @@ public class DesignerFrameFileDealerPane extends JPanel implements FileToolbarSt private JPanel createUpToolBarPane() { JPanel panel = new JPanel(new BorderLayout()); - panel.add(toolBar, BorderLayout.CENTER); if (WorkContext.getCurrent().isRoot()) { rightToolBar = new UIToolbar(FlowLayout.RIGHT); rightToolBar.setBorder(BorderFactory.createMatteBorder(0, 0, 1, 0, UIConstants.TOOLBAR_BORDER_COLOR)); @@ -461,6 +459,7 @@ public class DesignerFrameFileDealerPane extends JPanel implements FileToolbarSt public void actionPerformed(ActionEvent e) { // 交换层级 searchToolbarPane.switchPane(TemplateTreeSearchToolbarPane.SEARCH_PANE); + refreshRightToolBarByContentPaneType(); TemplateTreePane.getInstance().refreshDockingView(); TemplateTreeSearchManager.getInstance().switchToSearch(TemplateTreePane.getInstance().getTemplateFileTree()); } @@ -595,8 +594,24 @@ public class DesignerFrameFileDealerPane extends JPanel implements FileToolbarSt } } + /** + * 搜索状态下不显示rightToolBar + */ + public void refreshRightToolBarByContentPaneType() { + if (rightToolBar != null) { + if (StringUtils.equals(TemplateTreeSearchToolbarPane.CONTENT_PANE_TYPE, TemplateTreeSearchToolbarPane.SEARCH_PANE)) { + rightToolBar.setVisible(false); + } + } + } + public void refreshRightToolBarBy(FileNode fileNode) { + if (rightToolBar != null) { + if (StringUtils.equals(TemplateTreeSearchToolbarPane.CONTENT_PANE_TYPE, TemplateTreeSearchToolbarPane.SEARCH_PANE)) { + rightToolBar.setVisible(false); + return; + } boolean locked = fileNode != null && StringUtils.isNotEmpty(fileNode.getLock()) && !ComparatorUtils.equals(fileNode.getLock(), fileNode.getUserID()); diff --git a/designer-base/src/main/java/com/fr/design/mainframe/manager/search/searcher/control/pane/TemplateTreeSearchToolbarPane.java b/designer-base/src/main/java/com/fr/design/mainframe/manager/search/searcher/control/pane/TemplateTreeSearchToolbarPane.java index bb98561bf9..2154c9f933 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/manager/search/searcher/control/pane/TemplateTreeSearchToolbarPane.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/manager/search/searcher/control/pane/TemplateTreeSearchToolbarPane.java @@ -39,6 +39,11 @@ public class TemplateTreeSearchToolbarPane extends JPanel implements TreeSearchS public static final String SEARCH_PANE = "searchPane"; + /** + * 判断工具栏是处于搜索栏还是非搜索栏 + */ + public static String CONTENT_PANE_TYPE = "toolbarPane"; + /** * 工具栏 */ @@ -187,6 +192,7 @@ public class TemplateTreeSearchToolbarPane extends JPanel implements TreeSearchS */ public void switchPane(String name) { cardLayout.show(contentPane, name); + CONTENT_PANE_TYPE = name; } public void setPlaceHolder(String placeHolder) { From 55de66b7b2eece2ba7bfdca20caaa7d49f9cee7b Mon Sep 17 00:00:00 2001 From: "John.Ying" Date: Fri, 14 Oct 2022 15:30:12 +0800 Subject: [PATCH 7/8] =?UTF-8?q?REPORT-82112=20=E6=A8=A1=E6=9D=BF=E9=94=81?= =?UTF-8?q?=E5=AE=9A=EF=BC=8C=E8=B6=85=E7=AE=A1=E5=BC=BA=E5=88=B6=E8=A7=A3?= =?UTF-8?q?=E9=94=81=E7=9A=84=E6=8C=89=E9=92=AE=E6=B2=A1=E4=BA=86--?= =?UTF-8?q?=E6=94=B9=E4=BA=86=E4=B8=80=E4=B8=8B=E9=9D=9Efinal=E5=8F=98?= =?UTF-8?q?=E9=87=8F=E6=94=B9=E5=9B=9E=E5=B0=8F=E5=86=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../searcher/control/pane/TemplateTreeSearchToolbarPane.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/designer-base/src/main/java/com/fr/design/mainframe/manager/search/searcher/control/pane/TemplateTreeSearchToolbarPane.java b/designer-base/src/main/java/com/fr/design/mainframe/manager/search/searcher/control/pane/TemplateTreeSearchToolbarPane.java index 2154c9f933..e2deb13254 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/manager/search/searcher/control/pane/TemplateTreeSearchToolbarPane.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/manager/search/searcher/control/pane/TemplateTreeSearchToolbarPane.java @@ -42,7 +42,7 @@ public class TemplateTreeSearchToolbarPane extends JPanel implements TreeSearchS /** * 判断工具栏是处于搜索栏还是非搜索栏 */ - public static String CONTENT_PANE_TYPE = "toolbarPane"; + public static String contentPaneType = "toolbarPane"; /** * 工具栏 @@ -192,7 +192,7 @@ public class TemplateTreeSearchToolbarPane extends JPanel implements TreeSearchS */ public void switchPane(String name) { cardLayout.show(contentPane, name); - CONTENT_PANE_TYPE = name; + contentPaneType = name; } public void setPlaceHolder(String placeHolder) { From cd6e94613eefa0e30a554ef4aaa3d00d244944d0 Mon Sep 17 00:00:00 2001 From: "John.Ying" Date: Fri, 14 Oct 2022 15:41:25 +0800 Subject: [PATCH 8/8] =?UTF-8?q?REPORT-82112=20=E6=A8=A1=E6=9D=BF=E9=94=81?= =?UTF-8?q?=E5=AE=9A=EF=BC=8C=E8=B6=85=E7=AE=A1=E5=BC=BA=E5=88=B6=E8=A7=A3?= =?UTF-8?q?=E9=94=81=E7=9A=84=E6=8C=89=E9=92=AE=E6=B2=A1=E4=BA=86--?= =?UTF-8?q?=E6=8A=BD=E6=96=B9=E6=B3=95=EF=BC=8C=E7=9C=8B=E8=B5=B7=E6=9D=A5?= =?UTF-8?q?=E6=9B=B4=E6=95=B4=E6=B4=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DesignerFrameFileDealerPane.java | 25 +++++++++++-------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/designer-base/src/main/java/com/fr/design/mainframe/DesignerFrameFileDealerPane.java b/designer-base/src/main/java/com/fr/design/mainframe/DesignerFrameFileDealerPane.java index bdf0aa56c6..b3086ce7b8 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/DesignerFrameFileDealerPane.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/DesignerFrameFileDealerPane.java @@ -599,26 +599,31 @@ public class DesignerFrameFileDealerPane extends JPanel implements FileToolbarSt */ public void refreshRightToolBarByContentPaneType() { if (rightToolBar != null) { - if (StringUtils.equals(TemplateTreeSearchToolbarPane.CONTENT_PANE_TYPE, TemplateTreeSearchToolbarPane.SEARCH_PANE)) { + if (StringUtils.equals(TemplateTreeSearchToolbarPane.contentPaneType, TemplateTreeSearchToolbarPane.SEARCH_PANE)) { rightToolBar.setVisible(false); } } } public void refreshRightToolBarBy(FileNode fileNode) { + refreshRightToolBarByNode(fileNode); + refreshRightToolBarByContentPaneType(); + } + /** + * 根据当前选中节点判断是否锁定状态 + * + * @param fileNode 选中文件节点 + */ + public void refreshRightToolBarByNode(FileNode fileNode) { if (rightToolBar != null) { - if (StringUtils.equals(TemplateTreeSearchToolbarPane.CONTENT_PANE_TYPE, TemplateTreeSearchToolbarPane.SEARCH_PANE)) { - rightToolBar.setVisible(false); - return; - } boolean locked = fileNode != null - && StringUtils.isNotEmpty(fileNode.getLock()) - && !ComparatorUtils.equals(fileNode.getLock(), fileNode.getUserID()); + && StringUtils.isNotEmpty(fileNode.getLock()) + && !ComparatorUtils.equals(fileNode.getLock(), fileNode.getUserID()); boolean visible = locked - && WorkContext.getCurrent().isRoot() - && WorkContext.getCurrent().get(LockInfoOperator.class).isUnLockable() - && !WorkContext.getCurrent().get(LockInfoOperator.class).isTplUnLocked(fileNode.getEnvPath()); + && WorkContext.getCurrent().isRoot() + && WorkContext.getCurrent().get(LockInfoOperator.class).isUnLockable() + && !WorkContext.getCurrent().get(LockInfoOperator.class).isTplUnLocked(fileNode.getEnvPath()); rightToolBar.setVisible(visible); } }