From e3a8cdd999aa1cf05db368c9c02deea0db3f23d8 Mon Sep 17 00:00:00 2001 From: zack Date: Fri, 20 May 2016 09:39:50 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=86=E7=BB=84=E6=8F=92=E4=BB=B6=E9=9C=80?= =?UTF-8?q?=E8=A6=81=E6=8A=8Aaction=E5=BC=80=E5=87=BA=E5=8E=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/fr/design/data/datapane/ReportTableDataPane.java | 4 +++- .../tabledata/tabledatapane/TableDataManagerPane.java | 4 +++- .../src/com/fr/design/fun/TableDataPaneProcessor.java | 6 ++++++ .../com/fr/design/mainframe/toolbar/ToolBarMenuDock.java | 8 +++++++- 4 files changed, 19 insertions(+), 3 deletions(-) diff --git a/designer_base/src/com/fr/design/data/datapane/ReportTableDataPane.java b/designer_base/src/com/fr/design/data/datapane/ReportTableDataPane.java index 339a227a4..3b968f205 100644 --- a/designer_base/src/com/fr/design/data/datapane/ReportTableDataPane.java +++ b/designer_base/src/com/fr/design/data/datapane/ReportTableDataPane.java @@ -4,6 +4,7 @@ package com.fr.design.data.datapane; import com.fr.data.TableDataSource; +import com.fr.design.DesignModelAdapter; import com.fr.design.ExtraDesignClassManager; import com.fr.design.fun.TableDataPaneProcessor; import com.fr.design.gui.controlpane.NameableCreator; @@ -29,7 +30,8 @@ public class ReportTableDataPane extends LoadingBasicPane { TableDataPaneProcessor paneProcessor = ExtraDesignClassManager.getInstance().getTableDataPaneProcessor(); TableDataPaneController pane = null; if (paneProcessor != null) { - pane = paneProcessor.createServerTableDataPane(); + pane = paneProcessor.createServerTableDataPane(DesignModelAdapter.getCurrentModelAdapter() + ); } tdPane = pane == null ? new TableDataPaneListPane() { @Override diff --git a/designer_base/src/com/fr/design/data/tabledata/tabledatapane/TableDataManagerPane.java b/designer_base/src/com/fr/design/data/tabledata/tabledatapane/TableDataManagerPane.java index b2c8427af..daf2ed1f5 100644 --- a/designer_base/src/com/fr/design/data/tabledata/tabledatapane/TableDataManagerPane.java +++ b/designer_base/src/com/fr/design/data/tabledata/tabledatapane/TableDataManagerPane.java @@ -1,6 +1,7 @@ package com.fr.design.data.tabledata.tabledatapane; import com.fr.base.FRContext; +import com.fr.design.DesignModelAdapter; import com.fr.design.ExtraDesignClassManager; import com.fr.design.data.datapane.TableDataPaneController; import com.fr.design.data.datapane.TableDataPaneListPane; @@ -42,7 +43,8 @@ public class TableDataManagerPane extends LoadingBasicPane { TableDataPaneProcessor paneProcessor = ExtraDesignClassManager.getInstance().getTableDataPaneProcessor(); TableDataPaneController pane = null; if (paneProcessor != null) { - pane = paneProcessor.createServerTableDataPane(); + pane = paneProcessor.createServerTableDataPane(DesignModelAdapter.getCurrentModelAdapter() + ); } tableDataPane = pane == null ? new TableDataPaneListPane() { public void rename(String oldName, String newName) { diff --git a/designer_base/src/com/fr/design/fun/TableDataPaneProcessor.java b/designer_base/src/com/fr/design/fun/TableDataPaneProcessor.java index 3ed05bdf7..06db5c974 100644 --- a/designer_base/src/com/fr/design/fun/TableDataPaneProcessor.java +++ b/designer_base/src/com/fr/design/fun/TableDataPaneProcessor.java @@ -3,6 +3,7 @@ package com.fr.design.fun; import com.fr.design.DesignModelAdapter; import com.fr.design.data.BasicTableDataTreePane; import com.fr.design.data.datapane.TableDataPaneController; +import com.fr.design.menu.ShortCut; import com.fr.stable.fun.Level; /** @@ -27,4 +28,9 @@ public interface TableDataPaneProcessor extends Level { */ TableDataPaneController createServerTableDataPane(DesignModelAdapter tc); + /** + * 自定义服务器数据集菜单项 + * @return + */ + ShortCut createServerTDAction(); } diff --git a/designer_base/src/com/fr/design/mainframe/toolbar/ToolBarMenuDock.java b/designer_base/src/com/fr/design/mainframe/toolbar/ToolBarMenuDock.java index d0ecec9d6..ea8dd28e3 100644 --- a/designer_base/src/com/fr/design/mainframe/toolbar/ToolBarMenuDock.java +++ b/designer_base/src/com/fr/design/mainframe/toolbar/ToolBarMenuDock.java @@ -28,6 +28,7 @@ import com.fr.design.actions.server.PlatformManagerAction; import com.fr.design.actions.server.PluginManagerAction; import com.fr.design.file.NewTemplatePane; import com.fr.design.fun.MenuHandler; +import com.fr.design.fun.TableDataPaneProcessor; import com.fr.design.gui.ibutton.UIButton; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.imenu.UIMenu; @@ -263,7 +264,7 @@ public abstract class ToolBarMenuDock { if (!BaseUtils.isAuthorityEditing()) { menuDef.addShortCut( new ConnectionListAction(), - new GlobalTableDataAction() + createGlobalTDAction() ); } @@ -288,6 +289,11 @@ public abstract class ToolBarMenuDock { return menuDef; } + private ShortCut createGlobalTDAction() { + TableDataPaneProcessor processor = ExtraDesignClassManager.getInstance().getTableDataPaneProcessor(); + return processor == null ? new GlobalTableDataAction() : processor.createServerTDAction(); + } + private boolean shouldShowPlugin() { return FRContext.isChineseEnv() || ComparatorUtils.equals(GeneralContext.getLocale(), Locale.TAIWAN); }