public class Form extends IOFile implements PrivilegeEditedRoleProvider, FormProvider, ParameterHolder, FitProvider
| 限定符和类型 | 字段和说明 |
|---|---|
static java.lang.String |
_SHOWPARA |
static java.lang.String |
_SHOWPARATEMPLATE |
static int |
DEFAULT_FIT |
static java.lang.String |
FIT |
static java.lang.String |
FIT_STATE |
protected ReportFitAttr |
fitAttr |
protected FormMobileAttr |
mobileAttr |
static int |
NONE_FIT |
static java.lang.String |
PAPER_HEIGHT |
static java.lang.String |
PAPER_WHDTH |
protected java.util.Set<Parameter> |
parameters |
ANA_PREVIEW_TYPE, DEFAULT_PREVIEW_TYPE, WRITE_ENHANCE_PREVIEW_TYPE, WRITE_PREVIEW_TYPEtableDataListKEY| 构造器和说明 |
|---|
Form()
默认构造器。
|
Form(WAbsoluteLayout container)
将container做为表单底层容器。
|
Form(WLayout container)
将container做为表单底层容器。
|
| 限定符和类型 | 方法和说明 |
|---|---|
protected void |
_renameTableData(java.lang.String oldName,
java.lang.String newName) |
void |
addParameter(Parameter parameter)
加入参数
|
void |
clearParameters()
清除参数
|
java.lang.Object |
clone() |
protected void |
compatibleOldParameter(XMLableReader reader) |
JSONObject |
createContentJSONConfig(Repository repo,
Calculator ca)
生成内容的json配置
|
JSONObject |
createContentJSONConfig(Repository repo,
Calculator ca,
boolean displayContent)
生成内容的json配置
|
JSONObject |
createJSONConfig(Repository repo,
Calculator ca,
NodeVisitor nodeVisitor)
生成Form内控件的配置信息。
|
JSONObject |
createPara4Mobile(Repository repo,
TemplateSessionIDInfo sessionIDInfor)
生成Form中参数界面的json
|
JSONObject |
createParaJSONConfig(Repository repo,
Calculator ca)
生成Form中参数界面的json
|
void |
dealInVisible() |
void |
executeElementCases(WidgetSessionIDInfor sessionIDInfo,
java.util.Map<java.lang.String,java.lang.Object> para)
计算所有的报表块, 并将结果放入sessionidinfo
|
boolean |
export(java.io.OutputStream outputStream)
将该对象写入指定的输出流中输出
|
BaseChartEditor[] |
getAllCharts() |
java.lang.String[] |
getAllEditedRoleSet() |
java.lang.Object |
getCellValueInElementcase(java.lang.String elementName,
java.lang.String columnRow)
获取指定路径的单元格的值
|
WLayout |
getContainer()
获得整个表单容器,即表单最底层容器。
|
FormElementCaseProvider |
getElementCaseByName(java.lang.String name)
获取指定名称的报表块, 非控件
|
ElementCaseEditorProvider[] |
getElementCases()
获取表单中所有的报表块
|
FormMobileAttr |
getFormMobileAttr() |
Parameter[] |
getParameters()
获取参数
|
ReportFitAttr |
getReportFitAttr() |
Parameter[] |
getTemplateParameters()
获取表单存储的参数
|
Widget |
getWidgetByName(java.lang.String name)
获取表单中指定名字的控件
|
java.util.Map<java.lang.String,java.lang.Object> |
getWidgetDefaultValueMap()
获取控件默认值的map
|
java.util.Map<java.lang.String,java.lang.Object> |
getWidgetDefaultValueMap(java.util.Map<java.lang.String,java.lang.Object> para,
Repository repo)
获取控件默认值的map, 如果值已经包含在para中, 那么优先使用para中的
如果是公式, 那么用calculator去计算他的结果值.
|
Widget |
getWidgetWithBound(java.lang.String name)
获取表单中指定名字的控件(不对WTitleLayout和WScaleLayout进一步处理)
|
boolean |
initWidgetData(Repository repo,
Calculator ca)
处理控件数据, 若发生Exception则返回False
|
boolean |
initWidgetData(Widget widget,
Repository repo,
Calculator ca)
处理控件数据, 若发生Exception则返回False
|
boolean |
isFitInBrowser() |
boolean |
isNameExist(java.lang.String name)
判断某控件名是否已存在
|
protected void |
mainContent(XMLPrintWriter writer)
写Form的主体部分
|
protected java.lang.String |
openTag()
Form的IO标示
|
boolean |
parseFontFit(ReportFitAttr fitAttr) |
protected java.lang.Object |
processDataBinding(Widget widget,
Calculator calculator) |
void |
readStream(java.io.InputStream in)
从输入流中读取表单
|
void |
readXML(XMLableReader reader)
read XML
|
void |
removeCompInterval()
移除组件边距
|
void |
removeParaLayout()
删除参数面板
|
void |
removeParameter(Parameter parameter)
清除某参数
|
void |
renameTableData(Widget container,
java.lang.String oldName,
java.lang.String newName)
重命名指定容器内所有widget的数据集
|
static void |
replaceBoundsWidget(WLayout layout,
Widget newWidget)
根据新旧控件的名字替换表单中的控件
|
void |
resizeFormElems(java.util.Map<java.lang.String,java.lang.Object> para) |
void |
resizeFormWithBrowser(java.util.Map<java.lang.String,java.lang.Object> para) |
void |
setContainer(WLayout container)
设置表单最底层容器。
|
void |
setFormMobileAttr(FormMobileAttr attr) |
void |
setReportFitAttr(ReportFitAttr fitAttr) |
static void |
traversalFormWidget(Widget widget,
WidgetGather gather)
遍历Form中的所有widget
|
static void |
traversalWidget(Widget widget,
WidgetGather gather,
java.lang.Class clazz)
遍历Form中的所有widget
|
void |
writeXML(XMLPrintWriter writer)
write XML
|
addAttrMark, getAllMarkName, getAttrMark, getDesignerVersion, getPreviewType, getTemplateID, getXMLDesignerVersion, getXmlVersion, isHigherThanCurrent, readDesign, readExtra, setDesignerVersion, setPreviewType, setTemplateID, setXmlVersion, suffix, writeDesign, writeExtraclearAllTableData, copyDataSourceAttr, equals, getTableData, getTableDataNameIterator, putTableData, removeTableData, renameTableDatafinalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitclearAllTableData, getTableData, getTableDataNameIterator, putTableData, removeTableData, renameTableDatapublic static final java.lang.String FIT
public static final java.lang.String FIT_STATE
public static final java.lang.String PAPER_WHDTH
public static final java.lang.String PAPER_HEIGHT
public static final java.lang.String _SHOWPARA
public static final java.lang.String _SHOWPARATEMPLATE
public static final int DEFAULT_FIT
public static final int NONE_FIT
protected ReportFitAttr fitAttr
protected java.util.Set<Parameter> parameters
protected FormMobileAttr mobileAttr
public Form()
public Form(WAbsoluteLayout container)
container - 这个container必须是绝对定位布局public Form(WLayout container)
container - 任意Layoutpublic static void traversalFormWidget(Widget widget, WidgetGather gather)
widget - 控件gather - 控件集合public static void traversalWidget(Widget widget, WidgetGather gather, java.lang.Class clazz)
widget - 控件gather - 控件集合clazz - 控件类型public static void replaceBoundsWidget(WLayout layout, Widget newWidget)
layout - 外层容器newWidget - 新boundswidgetpublic WLayout getContainer()
public void setContainer(WLayout container)
public Widget getWidgetByName(java.lang.String name)
getWidgetByName 在接口中 FormProvidergetWidgetByName 在接口中 BaseFormProvidername - 指定的控件名public boolean export(java.io.OutputStream outputStream)
throws java.lang.Exception
IOFilepublic Widget getWidgetWithBound(java.lang.String name)
name - 指定的控件名public FormMobileAttr getFormMobileAttr()
public void setFormMobileAttr(FormMobileAttr attr)
public FormElementCaseProvider getElementCaseByName(java.lang.String name)
getElementCaseByName 在接口中 FormProvidername - 指定名称public Parameter[] getTemplateParameters()
public Parameter[] getParameters()
getParameters 在接口中 ParameterHolderpublic boolean isNameExist(java.lang.String name)
name - 控件名protected void _renameTableData(java.lang.String oldName,
java.lang.String newName)
public void renameTableData(Widget container, java.lang.String oldName, java.lang.String newName)
oldName - 数据集老的名字newName - 数据集新的名字public JSONObject createJSONConfig(Repository repo, Calculator ca, NodeVisitor nodeVisitor) throws JSONException
repo - 交互环境变量ca - 算子nodeVisitor - 节点访问JSONExceptionpublic boolean isFitInBrowser()
public JSONObject createContentJSONConfig(Repository repo, Calculator ca) throws JSONException
repo - 环境ca - 算子JSONExceptionpublic JSONObject createContentJSONConfig(Repository repo, Calculator ca, boolean displayContent) throws JSONException
repo - 环境ca - 算子displayContent - 是否显示正文内容JSONExceptionpublic JSONObject createParaJSONConfig(Repository repo, Calculator ca) throws JSONException
repo - 交互环境变量ca - 算子JSONExceptionpublic JSONObject createPara4Mobile(Repository repo, TemplateSessionIDInfo sessionIDInfor) throws JSONException
repo - 交互环境变量sessionIDInfor - 报表session信息JSONExceptionpublic void removeParaLayout()
public void removeCompInterval()
public boolean initWidgetData(Repository repo, Calculator ca)
repo - 交互环境变量ca - 算子public boolean initWidgetData(Widget widget, Repository repo, Calculator ca)
widget - 指定的控件repo - 交互环境变量ca - 算子public java.util.Map<java.lang.String,java.lang.Object> getWidgetDefaultValueMap()
getWidgetDefaultValueMap 在接口中 FormProvidergetWidgetDefaultValueMap 在接口中 BaseFormProviderpublic java.lang.Object getCellValueInElementcase(java.lang.String elementName,
java.lang.String columnRow)
getCellValueInElementcase 在接口中 BaseFormProvidercolumnRow - 指定行列elementName - 指定报表块的名称public java.util.Map<java.lang.String,java.lang.Object> getWidgetDefaultValueMap(java.util.Map<java.lang.String,java.lang.Object> para,
Repository repo)
para - 已经计算出来的参数值repo - web端一些参数上下文protected java.lang.Object processDataBinding(Widget widget, Calculator calculator)
protected void mainContent(XMLPrintWriter writer)
mainContent 在类中 IOFilewriter - : XML写入工具public void readStream(java.io.InputStream in)
throws java.lang.Exception
readStream 在类中 IOFilein - 输入流java.lang.Exceptionpublic void readXML(XMLableReader reader)
readXML 在接口中 XMLReadablereadXML 在类中 AbstractTableDataSourcereader - XML读取对象XMLableReaderprotected void compatibleOldParameter(XMLableReader reader)
public void writeXML(XMLPrintWriter writer)
writeXML 在接口中 XMLWriterwriteXML 在类中 AbstractTableDataSourcewriter - XML写入对象public java.lang.Object clone()
throws java.lang.CloneNotSupportedException
clone 在接口中 FCloneableclone 在类中 IOFilejava.lang.CloneNotSupportedException - 如果克隆失败则抛出此异常public void resizeFormElems(java.util.Map<java.lang.String,java.lang.Object> para)
public boolean parseFontFit(ReportFitAttr fitAttr)
public void resizeFormWithBrowser(java.util.Map<java.lang.String,java.lang.Object> para)
public void executeElementCases(WidgetSessionIDInfor sessionIDInfo, java.util.Map<java.lang.String,java.lang.Object> para)
sessionIDInfo - session会话信息para - 参数mappublic ElementCaseEditorProvider[] getElementCases()
getElementCases 在接口中 FormProviderpublic BaseChartEditor[] getAllCharts()
public java.lang.String[] getAllEditedRoleSet()
public ReportFitAttr getReportFitAttr()
getReportFitAttr 在接口中 FitProviderpublic void setReportFitAttr(ReportFitAttr fitAttr)
setReportFitAttr 在接口中 FitProviderpublic void addParameter(Parameter parameter)
parameter - 参数public void clearParameters()
public void removeParameter(Parameter parameter)
parameter - 参数public void dealInVisible()
throws java.lang.Exception
java.lang.Exception