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_TYPE
tableDataList
KEY
构造器和说明 |
---|
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, writeExtra
clearAllTableData, copyDataSourceAttr, equals, getTableData, getTableDataNameIterator, putTableData, removeTableData, renameTableData
finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
clearAllTableData, getTableData, getTableDataNameIterator, putTableData, removeTableData, renameTableData
public 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
在接口中 FormProvider
getWidgetByName
在接口中 BaseFormProvider
name
- 指定的控件名public boolean export(java.io.OutputStream outputStream) throws java.lang.Exception
IOFile
public Widget getWidgetWithBound(java.lang.String name)
name
- 指定的控件名public FormMobileAttr getFormMobileAttr()
public void setFormMobileAttr(FormMobileAttr attr)
public FormElementCaseProvider getElementCaseByName(java.lang.String name)
getElementCaseByName
在接口中 FormProvider
name
- 指定名称public Parameter[] getTemplateParameters()
public Parameter[] getParameters()
getParameters
在接口中 ParameterHolder
public 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
- 节点访问JSONException
public boolean isFitInBrowser()
public JSONObject createContentJSONConfig(Repository repo, Calculator ca) throws JSONException
repo
- 环境ca
- 算子JSONException
public JSONObject createContentJSONConfig(Repository repo, Calculator ca, boolean displayContent) throws JSONException
repo
- 环境ca
- 算子displayContent
- 是否显示正文内容JSONException
public JSONObject createParaJSONConfig(Repository repo, Calculator ca) throws JSONException
repo
- 交互环境变量ca
- 算子JSONException
public JSONObject createPara4Mobile(Repository repo, TemplateSessionIDInfo sessionIDInfor) throws JSONException
repo
- 交互环境变量sessionIDInfor
- 报表session信息JSONException
public 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
在接口中 FormProvider
getWidgetDefaultValueMap
在接口中 BaseFormProvider
public java.lang.Object getCellValueInElementcase(java.lang.String elementName, java.lang.String columnRow)
getCellValueInElementcase
在接口中 BaseFormProvider
columnRow
- 指定行列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
在类中 IOFile
writer
- : XML写入工具public void readStream(java.io.InputStream in) throws java.lang.Exception
readStream
在类中 IOFile
in
- 输入流java.lang.Exception
public void readXML(XMLableReader reader)
readXML
在接口中 XMLReadable
readXML
在类中 AbstractTableDataSource
reader
- XML读取对象XMLableReader
protected void compatibleOldParameter(XMLableReader reader)
public void writeXML(XMLPrintWriter writer)
writeXML
在接口中 XMLWriter
writeXML
在类中 AbstractTableDataSource
writer
- XML写入对象public java.lang.Object clone() throws java.lang.CloneNotSupportedException
clone
在接口中 FCloneable
clone
在类中 IOFile
java.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
在接口中 FormProvider
public BaseChartEditor[] getAllCharts()
public java.lang.String[] getAllEditedRoleSet()
public ReportFitAttr getReportFitAttr()
getReportFitAttr
在接口中 FitProvider
public void setReportFitAttr(ReportFitAttr fitAttr)
setReportFitAttr
在接口中 FitProvider
public void addParameter(Parameter parameter)
parameter
- 参数public void clearParameters()
public void removeParameter(Parameter parameter)
parameter
- 参数public void dealInVisible() throws java.lang.Exception
java.lang.Exception