帆软报表设计器源代码。
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.
 
 
 
 

97 lines
2.1 KiB

package com.fr.design.mainframe.form;
import com.fr.base.TRL;
import com.fr.design.designer.TargetComponent;
import com.fr.design.mainframe.JTemplate;
import com.fr.design.menu.MenuDef;
import com.fr.design.menu.ShortCut;
import com.fr.design.menu.ToolBarDef;
import com.fr.form.FormElementCaseProvider;
import javax.swing.JComponent;
import java.awt.Dimension;
import java.awt.image.BufferedImage;
public interface FormECDesignerProvider {
String XML_TAG = "FormElementCaseDesigner";
/**
* 选中目标的 对应Menu
* @return 返回MenuDef数组.
*/
MenuDef[] menus4Target();
/**
* 获取焦点
*/
void requestFocus() ;
/**
* 工具栏菜单字体字号等
* @return 工具栏菜单数组
*/
ToolBarDef[] toolbars4Target();
/**
* 表单的报表块的工具按钮复制剪切那行
* @return 工具按钮
*/
JComponent[] toolBarButton4Form();
/**
* 模板菜单
* @return 返回菜单
*/
ShortCut[] shortcut4TemplateMenu();
/**
*当前正在编辑的elementcase
* @return 当前正在编辑的elementcase
*/
FormElementCaseProvider getEditingElementCase();
/**
* 右上角属性表
* @return 属性面板
*/
JComponent getEastDownPane();
/**
* 右下角控件树或者扩展属性
* @return 属性面板
*/
JComponent getEastUpPane();
/**
* 条件属性面板
* @return 属性面板
*/
JComponent getConditionAttrPane();
/**
* 超级链接面板
* @param jt 当前模板(JForm)
* @return 属性面板
*/
JComponent getHyperlinkPane(JTemplate jt);
/**
* 超级链接面板
* @return 属性面板
*/
TargetComponent getEditingElementCasePane();
/**
* 获取当前ElementCase的缩略图
* @param elementCaseContainerSize 缩略图的大小
* @return 图
*/
BufferedImage getElementCaseImage(Dimension elementCaseContainerSize);
void refreshPropertyPane();
void removeSelection();
default void navigate(TRL trl) {}
}