From 4462b3258b5face9d2177d34f683e3df63a02d22 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Levy=2EXie-=E8=A7=A3=E5=AE=89=E6=A3=AE?= Date: Thu, 8 Aug 2024 15:17:49 +0800 Subject: [PATCH] =?UTF-8?q?REPORT-113994=20=E3=80=90NewUI=E3=80=91?= =?UTF-8?q?=E6=96=B0=E5=A2=9EUI=E5=BC=80=E5=8F=91=E8=80=85=E9=80=89?= =?UTF-8?q?=E9=A1=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../fr/design/mainframe/DesignerUIModeConfig.java | 14 ++++++++++++++ .../design/mainframe/toolbar/ToolBarMenuDock.java | 6 +++++- .../src/main/java/com/fr/start/MainDesigner.java | 14 ++++++++++++-- 3 files changed, 31 insertions(+), 3 deletions(-) diff --git a/designer-base/src/main/java/com/fr/design/mainframe/DesignerUIModeConfig.java b/designer-base/src/main/java/com/fr/design/mainframe/DesignerUIModeConfig.java index cd99f728a2..99e7d0335b 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/DesignerUIModeConfig.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/DesignerUIModeConfig.java @@ -9,13 +9,18 @@ import com.fr.general.ComparatorUtils; */ public class DesignerUIModeConfig { private DesignerUIMode mode = AbsoluteMeasureUIMode.getInstance(); + private boolean uiDevMode = false; private static class DesignerUIModeConfigHolder { private static final DesignerUIModeConfig designerUIModeConfig = new DesignerUIModeConfig(); } private DesignerUIModeConfig() { + init(); + } + private void init() { + uiDevMode = Boolean.parseBoolean(System.getProperty("uiDevMode", "false")); } public static DesignerUIModeConfig getInstance() { @@ -32,6 +37,15 @@ public class DesignerUIModeConfig { return ComparatorUtils.equals(SimulateWebUIMode.getInstance(), mode); } + /** + * 判断是否是ui开发者模式 + * + * @return boolean + */ + public boolean isUIDevMode() { + return uiDevMode; + } + /** * 设置新ui模式 */ 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 b15e7f9ed6..83ca502a1e 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 @@ -57,6 +57,7 @@ import com.fr.design.gui.imenu.UIMenu; import com.fr.design.gui.imenu.UIMenuBar; import com.fr.design.gui.itoolbar.UIToolbar; import com.fr.design.locale.impl.SupportLocaleImpl; +import com.fr.design.mainframe.DesignerUIModeConfig; import com.fr.design.mainframe.JTemplate; import com.fr.design.mainframe.platform.ServicePlatformAction; import com.fr.design.menu.MenuDef; @@ -295,7 +296,10 @@ public abstract class ToolBarMenuDock { } }, SupportLocaleImpl.COMMUNITY); - menuList.add(createLookAndFeel()); + // 当前仅UI开发者模式显示外观配置选项 + if (DesignerUIModeConfig.getInstance().isUIDevMode()) { + menuList.add(createLookAndFeel()); + } // 添加全部UpdateAction到actionmanager中 addAllUpdateActionsToList(menuList); diff --git a/designer-realize/src/main/java/com/fr/start/MainDesigner.java b/designer-realize/src/main/java/com/fr/start/MainDesigner.java index dccf53bbef..a796ad3882 100644 --- a/designer-realize/src/main/java/com/fr/start/MainDesigner.java +++ b/designer-realize/src/main/java/com/fr/start/MainDesigner.java @@ -30,6 +30,7 @@ import com.fr.design.gui.imenu.UIPopupMenu; import com.fr.design.i18n.Toolkit; import com.fr.design.mainframe.ActiveKeyGenerator; import com.fr.design.mainframe.DesignerContext; +import com.fr.design.mainframe.DesignerUIModeConfig; import com.fr.design.mainframe.InformationCollector; import com.fr.design.mainframe.JTemplate; import com.fr.design.mainframe.JWorkBook; @@ -158,9 +159,18 @@ public class MainDesigner extends BaseDesigner { FineLoggerFactory.getLogger().info("Designer started.Time used {} ms", DesignerStartupContext.getRecorder().getTime(TimeUnit.MILLISECONDS)); DesignerStartupContext.getRecorder().stop(); SwitchForSwingChecker.initThreadMonitoring(); -// new UiInspector(); -// EdtInvocationManager.installEDTCheckers(); DesignerLatencyMetric.getInstance().start(); + + installUIDevModeTools(); + } + + /** + * 进入UI开发者模式 + */ + private static void installUIDevModeTools() { + if (DesignerUIModeConfig.getInstance().isUIDevMode()) { + new UiInspector(); + } } /**