[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Proposal for linking form controls to table cells
Dear TC members, please find attached a proposal for linking form controls to table cells. Best regards Michael
Form ContentContext of the file format changeA usual feature in office productivity applications is to link form controls, which are part of e.g. a spreadsheet document, to certain table cells in this document, to couple the content of the cell with the content of the form control. In the scope of this change proposal, we suggest a way how this feature could be reflected in the Open Document File Format. Linked CellAll input-type controls (i.e. controls where the user can enter data, as opposed to controls which can merely be used to the display data) are extended with an attribute describing with which table cell they should be coupled. <define name="form-text-attlist" combine="interleave"> <ref name="common-linked-cell"/> </define> <define name="form-textarea-attlist" combine="interleave"> <ref name="common-linked-cell"/> </define> <define name="form-password-attlist" combine="interleave"> <ref name="common-linked-cell"/> </define> <define name="form-file-attlist" combine="interleave"> <ref name="common-linked-cell"/> </define> <define name="form-formatted-text-attlist" combine="interleave"> <ref name="common-linked-cell"/> </define> <define name="form-numeric-control-attlist" combine="interleave"> <ref name="common-linked-cell"/> </define> <define name="form-date-attlist" combine="interleave"> <ref name="common-linked-cell"/> </define> <define name="form-time-attlist" combine="interleave"> <ref name="common-linked-cell"/> </define> <define name="form-combobox-attlist" combine="interleave"> <ref name="common-linked-cell"/> </define> <define name="form-listbox-attlist" combine="interleave"> <ref name="common-linked-cell"/> </define> <define name="form-checkbox-attlist" combine="interleave"> <ref name="common-linked-cell"/> </define> <define name="form-radio-attlist" combine="interleave"> <ref name="common-linked-cell"/> </define> <define name="form-value-range-attlist" combine="interleave"> <ref name="common-linked-cell"/> </define> The form:linked-cell attribute specifies a table cell which the form control content should be linked to. Linking means that at every point in time, the cell value and the control value are equal (less possible type incompatibilities). The table cell to link the control to can be specified as cellAddress, or as plain string denoting a named cell range. If, in the latter case, the named range contains more than one cell, the cell in the first row and first column of the range is linked to the form control. <define name="common-linked-cell" combine="choice"> <optional> <attribute name="form:linked-cell"> <choice> <ref name="cellAddress"/> <ref name="string"/> </choice> </attribute> </optional> </define> List Linkage TypeThe form:list-linkage-type attribute is used to specify in which way list boxes should exchange their current value with a linked table cell. <define name="form-listbox-attlist" combine="interleave"> <ref name="list-linkage-type"/> </define> The value of this attribute can be one of the following:
<define name="list-linkage-type" combine="interleave"> <optional> <attribute name="form:list-linkage-type"> <choice> <value>selection</value> <value>selection-indexes</value> </choice > </attribute> </optional> </define> Source Cell Range<form:listbox> and <form:combobx> elements are extended with an attribute which specifies which cell range should be used to fill their item list. <define name="form-combobox-attlist" combine="interleave"> <ref name="common-source-cell-range"/> </define> <define name="form-listbox-attlist" combine="interleave"> <ref name="common-source-cell-range"/> </define> The form:source-cell-range attribute specifies a rectangular cell range, whose content should be synchronized with the form controls item list. The form control is expected to react on changes in the cell range, that is, it should actively adjust its item list if the cell range's content changes. The source cell range can be specified as cellRangeAddress, or as plain string denoting the name of a named cell range (see chapter ). In the latter case, if the range contains more columns than the form control can handle, the left-most columns of the cell range are to be used. <define name="common-source-cell-range" combine="choice"> <optional> <attribute name="form:source-cell-range"> <choice> <ref name="cellRangeAddress"/> <ref name="string"/> </choice> </attribute> </optional> </define> |
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]