You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
86 lines
2.4 KiB
86 lines
2.4 KiB
package com.fr.start; |
|
|
|
import java.util.ArrayList; |
|
import java.util.List; |
|
|
|
import com.fr.base.FRContext; |
|
import com.fr.design.actions.file.newReport.NewWorkBookAction; |
|
import com.fr.design.actions.report.ReportFooterAction; |
|
import com.fr.design.actions.report.ReportHeaderAction; |
|
import com.fr.design.mainframe.toolbar.ToolBarMenuDockPlus; |
|
import com.fr.design.menu.MenuDef; |
|
import com.fr.design.menu.ShortCut; |
|
import com.fr.general.ComparatorUtils; |
|
import com.fr.stable.Constants; |
|
|
|
/** |
|
* Created with IntelliJ IDEA. |
|
* User: richie |
|
* Date: 12/17/13 |
|
* Time: 12:54 PM |
|
* 这是英文版的GridBI设计器启动类 |
|
*/ |
|
public class Designer4BI extends Designer { |
|
|
|
/** |
|
* 启动BI的设计器 |
|
* |
|
* @param args 参数 |
|
* |
|
*/ |
|
public static void main(String[] args) { |
|
new Designer4BI(args); |
|
} |
|
|
|
public Designer4BI(String[] args) { |
|
super(args); |
|
} |
|
|
|
protected void initLanguage() { |
|
//这两句的位置不能随便调换,因为会影响语言切换的问题 |
|
FRContext.setLanguage(Constants.LANGUAGE_ENGLISH); |
|
} |
|
|
|
protected SplashPane createSplashPane() { |
|
return new BISplashPane(); |
|
} |
|
|
|
@Override |
|
/** |
|
* 创建新建文件的快捷方式数组。 |
|
* @return 返回快捷方式的数组 |
|
*/ |
|
public ShortCut[] createNewFileShortCuts() { |
|
ArrayList<ShortCut> shortCuts = new ArrayList<ShortCut>(); |
|
shortCuts.add(new NewWorkBookAction()); |
|
return shortCuts.toArray(new ShortCut[shortCuts.size()]); |
|
} |
|
|
|
/** |
|
* 获取模板-菜单选项 |
|
* |
|
* @param plus 当前的工作对象 |
|
* |
|
* @return 菜单栏对象数组 |
|
* |
|
*/ |
|
public MenuDef[] createTemplateShortCuts(ToolBarMenuDockPlus plus) { |
|
MenuDef[] menuDefs = plus.menus4Target(); |
|
for (MenuDef m : menuDefs) { |
|
List<ShortCut> shortCuts = new ArrayList<ShortCut>(); |
|
for (int i = 0, count = m.getShortCutCount(); i < count; i++) { |
|
ShortCut shortCut = m.getShortCut(i); |
|
if (!ComparatorUtils.equals(shortCut.getClass(), ReportHeaderAction.class) |
|
&& !ComparatorUtils.equals(shortCut.getClass(), ReportFooterAction.class)) { |
|
shortCuts.add(shortCut); |
|
} |
|
} |
|
m.clearShortCuts(); |
|
for (int i = 0, len = shortCuts.size(); i < len; i ++) { |
|
m.addShortCut(shortCuts.get(i)); |
|
} |
|
|
|
} |
|
return menuDefs; |
|
} |
|
} |