diff --git a/Home.md b/Home.md index 5116e19..19bdf73 100644 --- a/Home.md +++ b/Home.md @@ -16,7 +16,7 @@ reads and writes, plus pointers for developers building QET itself. ## Status -This wiki covers the core structure of both XML formats but not every child -element yet -- the sidebar only links to pages that actually exist. See -[contributing to this wiki](contributor_to_wiki_guidelines) if you'd like to -fill in a gap. +Both XML formats are now documented down to their child elements, verified +against the QET source and a corpus of real `.qet` and `.elmt` files. See +[contributing to this wiki](contributor_to_wiki_guidelines) if you spot a gap +or something that has drifted. diff --git a/_Sidebar.md b/_Sidebar.md index f223dda..78946fe 100644 --- a/_Sidebar.md +++ b/_Sidebar.md @@ -7,6 +7,14 @@ * [name](elements_child_name) * [informations](elements_child_informations) * [description](elements_child_description) + * [line](elements_description_child_line) + * [polygon](elements_description_child_polygon) + * [rect](elements_description_child_rectangle) + * [ellipse / circle](elements_description_child_ellipse) + * [arc](elements_description_child_arc) + * [text](elements_description_child_text) + * [dynamic_text](elements_description_child_dynamic_text) + * [terminal](elements_description_child_terminal) * [kindInformations](elements_child_kindInformations) * [elementInformations](elements_child_elementInformations) @@ -24,7 +32,20 @@ * [folio_autonums](project_newdiagrams_child_folio_autonums) * [element_autonums](project_newdiagrams_child_element_autonums) * [diagram](project_child_diagram) + * [properties](project_diagram_child_properties) + * [property](project_diagram_properties_child_property) + * [defaultconductor](project_diagram_child_defaultconductor) + * [elements](project_diagram_child_elements) + * [conductors](project_diagram_child_conductors) + * [inputs](project_diagram_child_inputs) + * [images](project_diagram_child_images) + * [shapes](project_diagram_child_shapes) + * [elementautonumfoliosequentials](project_diagram_child_elementautonumfoliosequentials) + * [elementunitfolioseq](project_diagram_elementautonumfoliosequentials_child_elementunitfolioseq) + * [elementtenfolioseq](project_diagram_elementautonumfoliosequentials_child_elementtenfolioseq) + * [elementhundredfolioseq](project_diagram_elementautonumfoliosequentials_child_elementhundredfolioseq) * [collection](project_child_collection) + * [category](project_collection_child_category) **[Developer tools](tools)** diff --git a/data_files/elements_child_description.md b/data_files/elements_child_description.md index a4b335c..78b3326 100644 --- a/data_files/elements_child_description.md +++ b/data_files/elements_child_description.md @@ -1,4 +1,7 @@ -### description +# description +Holds the drawing itself: every graphic primitive that makes up the element, +plus its connection points. + Example: `` @@ -6,67 +9,25 @@ parent : [definition](elements_XML) attribute : none -#### polygon -Example: `` +## child elements -parent : [description](elements_child_description) +Shapes -- all of these also carry the shared `style` and `antialias` +attributes described on each page: -attribute : -#### line -Example: `` + * [line](elements_description_child_line) + * [polygon](elements_description_child_polygon) + * [rect](elements_description_child_rectangle) -- the tag is `rect` + * [ellipse / circle](elements_description_child_ellipse) -- a square ellipse is written as `` + * [arc](elements_description_child_arc) -parent : [description](elements_child_description) +Text: -attribute : -#### rectangle -Example: `` + * [text](elements_description_child_text) -- fixed text + * [dynamic_text](elements_description_child_dynamic_text) -- text taken from the element or project -parent : [description](elements_child_description) +Connections: -attribute : -#### ellipse -Example: `` + * [terminal](elements_description_child_terminal) -- where conductors attach -parent : [description](elements_child_description) - -attribute : -#### polygon -Example: `` - -parent : [description](elements_child_description) - -attribute : -#### text -Example: `` - -parent : [description](elements_child_description) - -attribute : -#### arc -Example: `` - -parent : [description](elements_child_description) - -attribute : -#### dynamic_text -Example: `` - -parent : [description](elements_child_description) - -attribute : - -##### text -Example: `/` - -parent : dynamic_text - -attribute : none - -#### terminal -waar de verbinding gemaakt wordt. - -Example: `` - -parent : [description](elements_child_description) - -attribute : +Order matters: parts are drawn in document order, so a later sibling paints over +an earlier one. diff --git a/data_files/elements_description_child_arc.md b/data_files/elements_description_child_arc.md new file mode 100644 index 0000000..b8b0596 --- /dev/null +++ b/data_files/elements_description_child_arc.md @@ -0,0 +1,29 @@ +# arc +An arc of an ellipse. + +Example: +`` + +parent : [description](elements_child_description) + +attribute : + * x, y -- top-left corner of the bounding box of the full ellipse + * width, height -- size of that full ellipse + * start -- start angle, **in degrees** + * angle -- span angle, in degrees; negative spans clockwise + +Internally QET stores both angles in sixteenths of a degree (the Qt convention) +and divides by 16 on the way out, explicitly to stay compatible with older files. + +## common attributes +All graphic parts also carry: + * `style` -- CSS-like string, always written in the order + `line-style:;line-weight:;filling:;color:`. + `hight` and `eleve` are the historical spellings for the two heaviest widths, and + `brun` is French for brown -- these are not typos. + * `antialias` -- `true` / `false` + +Written by `CustomElementGraphicPart::stylesToXml()`, +`sources/editor/graphicspart/customelementgraphicpart.cpp`. + +Written by `PartArc::toXml()`, `sources/editor/graphicspart/partarc.cpp`. diff --git a/data_files/elements_description_child_dynamic_text.md b/data_files/elements_description_child_dynamic_text.md new file mode 100644 index 0000000..c90f7b1 --- /dev/null +++ b/data_files/elements_description_child_dynamic_text.md @@ -0,0 +1,31 @@ +# dynamic_text +Text whose value can be taken from the element or the project rather than typed +in, and which the user can reposition on the folio. Compare the static +[text](elements_description_child_text). + +Example: +`label` + +parent : [description](elements_child_description) + +attribute : + * x, y, z -- position and stacking order + * rotation -- degrees + * font -- serialised `QFont` + * uuid -- identifies this field, e.g. for text groups + * frame -- `true` / `false`, draw a box around the text + * text_width -- wrapping width; `-1` means no wrapping + * keep_visual_rotation -- `true` / `false` + * rotation_point_center -- `true` / `false` + * text_from -- where the value comes from: `UserText`, `ElementInfo` or `CompositeText` + * Halignment -- `AlignLeft`, `AlignRight` or `AlignHCenter` + * Valignment -- `AlignTop`, `AlignBottom` or `AlignVCenter` + +## child elements + * `` -- the literal text, as a text node (used when `text_from="UserText"`) + * `` -- which element information to display (when `text_from="ElementInfo"`) + * `` -- the template string (when `text_from="CompositeText"`) + * `` -- `#rrggbb`; written **only** when the colour is not black + +Written by `PartDynamicTextField::toXml()`, +`sources/editor/graphicspart/partdynamictextfield.cpp`. diff --git a/data_files/elements_description_child_ellipse.md b/data_files/elements_description_child_ellipse.md new file mode 100644 index 0000000..ba25269 --- /dev/null +++ b/data_files/elements_description_child_ellipse.md @@ -0,0 +1,29 @@ +# ellipse / circle +An ellipse. **Two different tags come out of one editor shape:** when width and +height are equal QET writes a `` with a single `diameter`; otherwise it +writes an `` with `width` and `height`. A reader must handle both. + +Example: +`` + +`` + +parent : [description](elements_child_description) + +attribute : + * x, y -- top-left corner of the bounding box (not the centre) + * width, height -- `` only + * diameter -- `` only + +## common attributes +All graphic parts also carry: + * `style` -- CSS-like string, always written in the order + `line-style:;line-weight:;filling:;color:`. + `hight` and `eleve` are the historical spellings for the two heaviest widths, and + `brun` is French for brown -- these are not typos. + * `antialias` -- `true` / `false` + +Written by `CustomElementGraphicPart::stylesToXml()`, +`sources/editor/graphicspart/customelementgraphicpart.cpp`. + +Written by `PartEllipse::toXml()`, `sources/editor/graphicspart/partellipse.cpp`. diff --git a/data_files/elements_description_child_line.md b/data_files/elements_description_child_line.md new file mode 100644 index 0000000..f70aa6c --- /dev/null +++ b/data_files/elements_description_child_line.md @@ -0,0 +1,26 @@ +# line +A straight segment, optionally with a decorated end. + +Example: +`` + +parent : [description](elements_child_description) + +attribute : + * x1, y1 -- first point, rounded to 2 decimals + * x2, y2 -- second point + * end1, end2 -- end decoration: `none`, `simple`, `triangle`, `circle`, `diamond` + * length1, length2 -- size of that decoration + +## common attributes +All graphic parts also carry: + * `style` -- CSS-like string, always written in the order + `line-style:;line-weight:;filling:;color:`. + `hight` and `eleve` are the historical spellings for the two heaviest widths, and + `brun` is French for brown -- these are not typos. + * `antialias` -- `true` / `false` + +Written by `CustomElementGraphicPart::stylesToXml()`, +`sources/editor/graphicspart/customelementgraphicpart.cpp`. + +Written by `PartLine::toXml()`, `sources/editor/graphicspart/partline.cpp`. diff --git a/data_files/elements_description_child_polygon.md b/data_files/elements_description_child_polygon.md new file mode 100644 index 0000000..1bb6f97 --- /dev/null +++ b/data_files/elements_description_child_polygon.md @@ -0,0 +1,26 @@ +# polygon +An open polyline or a closed polygon. + +Example: +`` + +parent : [description](elements_child_description) + +attribute : + * x1, y1, x2, y2, ... xN, yN -- the vertices, numbered from 1, one pair per point. + There is no count attribute: the number of points is however many `xN`/`yN` pairs are present. + * closed -- written **only** when the polygon is open, as `closed="false"`. + An absent `closed` attribute therefore means the shape is closed. + +## common attributes +All graphic parts also carry: + * `style` -- CSS-like string, always written in the order + `line-style:;line-weight:;filling:;color:`. + `hight` and `eleve` are the historical spellings for the two heaviest widths, and + `brun` is French for brown -- these are not typos. + * `antialias` -- `true` / `false` + +Written by `CustomElementGraphicPart::stylesToXml()`, +`sources/editor/graphicspart/customelementgraphicpart.cpp`. + +Written by `PartPolygon::toXml()`, `sources/editor/graphicspart/partpolygon.cpp`. diff --git a/data_files/elements_description_child_rectangle.md b/data_files/elements_description_child_rectangle.md new file mode 100644 index 0000000..fa38541 --- /dev/null +++ b/data_files/elements_description_child_rectangle.md @@ -0,0 +1,27 @@ +# rect +A rectangle, optionally with rounded corners. + +Note the tag is `rect`, not `rectangle`. + +Example: +`` + +parent : [description](elements_child_description) + +attribute : + * x, y -- top-left corner + * width, height + * rx, ry -- corner radii; `0` means square corners + +## common attributes +All graphic parts also carry: + * `style` -- CSS-like string, always written in the order + `line-style:;line-weight:;filling:;color:`. + `hight` and `eleve` are the historical spellings for the two heaviest widths, and + `brun` is French for brown -- these are not typos. + * `antialias` -- `true` / `false` + +Written by `CustomElementGraphicPart::stylesToXml()`, +`sources/editor/graphicspart/customelementgraphicpart.cpp`. + +Written by `PartRectangle::toXml()`, `sources/editor/graphicspart/partrectangle.cpp`. diff --git a/data_files/elements_description_child_terminal.md b/data_files/elements_description_child_terminal.md new file mode 100644 index 0000000..fcc8f31 --- /dev/null +++ b/data_files/elements_description_child_terminal.md @@ -0,0 +1,27 @@ +# terminal +A connection point. Conductors can only attach to an element at a terminal. + +Example: +`` + +parent : [description](elements_child_description) + +attribute : + * x, y -- position + * uuid -- stable identity of this terminal, used by conductors and links + * name -- the terminal's label, e.g. `1`, `A2` + * orientation -- the direction a conductor leaves in: `n`, `e`, `s`, `w` + * type -- `Generic`, `Inner`, `Outer`, or for switch contacts + `No` (normally open), `Nc` (normally closed), `Common` + +The following are written **only** when the terminal name is shown +(`show_name="true"`): + * label_x, label_y, label_rotation, label_font + * label_halign, label_valign -- Qt alignment flags, as integers + * label_frame -- only when true + * label_color -- only when not black + +And only when the terminal overrides its master's label: + * use_master_label, master_label_index + +Written by `TerminalData::toXml()`, `sources/properties/terminaldata.cpp`. diff --git a/data_files/elements_description_child_text.md b/data_files/elements_description_child_text.md new file mode 100644 index 0000000..51158c6 --- /dev/null +++ b/data_files/elements_description_child_text.md @@ -0,0 +1,25 @@ +# text +A fixed piece of text drawn in the element. For text that takes its value from +the project, see [dynamic_text](elements_description_child_dynamic_text) instead. + +Example: +`` + +parent : [description](elements_child_description) + +attribute : + * text -- the string itself, held in an attribute rather than a text node + * x, y -- position + * rotation -- degrees, rounded to 1 decimal + * font -- a serialised `QFont` (family, size, then Qt's numeric fields) + * color -- `#rrggbb` + * Halignment -- `AlignRight` or `AlignHCenter` + * Valignment -- `AlignBottom` or `AlignVCenter` + +The two alignment attributes are written **only** when they differ from the +historical default, so that existing `.elmt` files round-trip unchanged. Absent +means left / top. + +Unlike the shapes, `` carries no `style` or `antialias` attribute. + +Written by `PartText::toXml()`, `sources/editor/graphicspart/parttext.cpp`. diff --git a/data_files/project_child_collection.md b/data_files/project_child_collection.md index c8450e0..67f2f60 100644 --- a/data_files/project_child_collection.md +++ b/data_files/project_child_collection.md @@ -7,5 +7,5 @@ parent : [project](project_XML) attribute : none ## child elements - * category _(not yet documented)_ + * [category](project_collection_child_category) diff --git a/data_files/project_child_diagram.md b/data_files/project_child_diagram.md index 3bc9859..d037ac6 100644 --- a/data_files/project_child_diagram.md +++ b/data_files/project_child_diagram.md @@ -27,8 +27,11 @@ attribute : * indexrev * rowsize ## child elements - * defaultconductor _(not yet documented)_ - * elements _(not yet documented)_ - * conductors _(not yet documented)_ - * inputs _(not yet documented)_ - + * [defaultconductor](project_diagram_child_defaultconductor) + * [elements](project_diagram_child_elements) + * [conductors](project_diagram_child_conductors) + * [inputs](project_diagram_child_inputs) + * [properties](project_diagram_child_properties) + * [images](project_diagram_child_images) + * [shapes](project_diagram_child_shapes) + * [elementautonumfoliosequentials](project_diagram_child_elementautonumfoliosequentials) diff --git a/data_files/project_collection_child_category.md b/data_files/project_collection_child_category.md new file mode 100644 index 0000000..5ed2701 --- /dev/null +++ b/data_files/project_collection_child_category.md @@ -0,0 +1,21 @@ +# category +A folder in the project's embedded element collection. Categories nest, so a +category may contain further categories as well as elements. + +Example: +`` + +parent : [collection](project_child_collection), or another `category` + +attribute : + * name -- the folder's name, as it appears in the collection tree + +## child elements + * `` -- the translated display names of this category + * `` -- nested sub-categories + * `` -- the embedded elements themselves, each holding a full + `.elmt` [definition](elements_XML) + +This is the copy of the element collection stored **inside** the project file, +which is what lets a `.qet` open on a machine that does not have those elements +installed. diff --git a/data_files/project_diagram_child_conductors.md b/data_files/project_diagram_child_conductors.md new file mode 100644 index 0000000..ecc323b --- /dev/null +++ b/data_files/project_diagram_child_conductors.md @@ -0,0 +1,23 @@ +# conductors +Container for every conductor (wire) on the folio. Written only when the folio +has at least one conductor. + +parent : [diagram](project_child_diagram) + +attribute : none + +## child elements + * ``. Besides the full appearance vocabulary shared with + [defaultconductor](project_diagram_child_defaultconductor), each one records + what it connects: + * element1, element2 -- uuids of the two elements + * terminal1, terminal2 -- the terminals joined + * terminalname1, terminalname2 -- their names + * element1_name, element2_name, element1_label, element2_label -- cached labels + * x, y, userx, usery, rotation -- geometry of the conductor text + * freezeLabel -- `true` / `false` + +Conductors are written in a stable sorted order derived from both endpoints, so +that saving twice produces byte-identical files. + +Written by `Conductor::toXml()`, called from `Diagram::toXml()`. diff --git a/data_files/project_diagram_child_defaultconductor.md b/data_files/project_diagram_child_defaultconductor.md new file mode 100644 index 0000000..0d6e8e3 --- /dev/null +++ b/data_files/project_diagram_child_defaultconductor.md @@ -0,0 +1,26 @@ +# defaultconductor +The conductor properties a newly drawn conductor on this folio starts from. +Same attribute vocabulary as an individual +[conductor](project_diagram_child_conductors). + +Example: +`` + +parent : [diagram](project_child_diagram) + +attribute : + * type -- `multi`, `single` or `bus` + * num, formula -- conductor text and the formula that generates it + * displaytext, onetextperfolio -- whether and how often the text is drawn + * numsize, condsize -- text size and conductor thickness + * color, color2, bicolor, dash-size -- line appearance + * text_color, horizrotatetext, vertirotatetext -- text appearance + * horizontal-alignment, vertical-alignment + * function, tension_protocol, conductor_color, conductor_section -- descriptive fields + * cable, bus -- identifiers + * ground, phase, neutral -- `true` / `false`, single-conductor markers + +attribute : none of the above are required; QET writes the full set. + +Written by `ConductorProperties::toXml()`, called from `Diagram::toXml()`, +`sources/diagram.cpp`. diff --git a/data_files/project_diagram_child_elementautonumfoliosequentials.md b/data_files/project_diagram_child_elementautonumfoliosequentials.md new file mode 100644 index 0000000..25c57e0 --- /dev/null +++ b/data_files/project_diagram_child_elementautonumfoliosequentials.md @@ -0,0 +1,21 @@ +# elementautonumfoliosequentials +Per-folio counters for element auto-numbering: the highest sequential value +reached on this folio, so numbering survives a save/reload. + +parent : [diagram](project_child_diagram) + +attribute : none + +## child elements + * [elementunitfolioseq](project_diagram_elementautonumfoliosequentials_child_elementunitfolioseq) + * [elementtenfolioseq](project_diagram_elementautonumfoliosequentials_child_elementtenfolioseq) + * [elementhundredfolioseq](project_diagram_elementautonumfoliosequentials_child_elementhundredfolioseq) + +Each of the three is written only if it holds anything, and the block as a whole +is omitted when all three are empty. + +There is a parallel `` block with the same +shape, holding ``, `` and +``, for conductor numbering. + +Written by `Diagram::toXml()`, `sources/diagram.cpp`. diff --git a/data_files/project_diagram_child_elements.md b/data_files/project_diagram_child_elements.md new file mode 100644 index 0000000..5b733dc --- /dev/null +++ b/data_files/project_diagram_child_elements.md @@ -0,0 +1,30 @@ +# elements +Container for every element placed on the folio. Written only when the folio +has at least one element. + +Example: +`` + +parent : [diagram](project_child_diagram) + +attribute : none + +## child elements + * ``, with attributes: + * x, y, z -- position and stacking order + * type -- path of the element in the collection + * name -- display name + * uuid -- unique id of this instance + * orientation -- `0`..`3`, quarter turns + * prefix -- label prefix, e.g. `K` + * freezeLabel -- `true` / `false` + * each `` in turn contains ``, ``, + ``, ``, ``, and where the + element is embedded in the project, its full ``. Elements that + are cross-referenced also carry ``, and auto-numbered ones + ``. + +Elements are written in a stable sorted order so that saving twice produces +byte-identical files. + +Written by `Diagram::toXml()`, `sources/diagram.cpp`. diff --git a/data_files/project_diagram_child_images.md b/data_files/project_diagram_child_images.md new file mode 100644 index 0000000..3d0013d --- /dev/null +++ b/data_files/project_diagram_child_images.md @@ -0,0 +1,18 @@ +# images +Container for bitmap images dropped onto the folio. + +parent : [diagram](project_child_diagram) + +attribute : none + +## child elements + * ``, with attributes: + * x, y, z -- position and stacking order + * size -- scale factor + * rotation -- degrees + * is_movable -- `true` / `false` + +The image data itself is stored base64-encoded as the text node of the +`` element, so a project file stays self-contained. + +Written only when the folio has at least one image, by `Diagram::toXml()`. diff --git a/data_files/project_diagram_child_inputs.md b/data_files/project_diagram_child_inputs.md new file mode 100644 index 0000000..4901541 --- /dev/null +++ b/data_files/project_diagram_child_inputs.md @@ -0,0 +1,22 @@ +# inputs +Container for free-standing text on the folio -- text not attached to any +element. In the code these are *independent texts*. + +parent : [diagram](project_child_diagram) + +attribute : none + +## child elements + * ``, with attributes: + * x, y -- position + * text -- the string + * font -- serialised `QFont` + * size -- legacy text size, kept for older files + * rotation, userrotation, rotate -- rotation and whether the user set it + * userx, usery -- user-moved offset + * tagg -- free-form tag + +Written only when the folio has at least one such text, by `Diagram::toXml()`. + +Note: `` also appears **inside** each ``, where it holds that +element's own texts. Same tag, different parent. diff --git a/data_files/project_diagram_child_properties.md b/data_files/project_diagram_child_properties.md new file mode 100644 index 0000000..328da4a --- /dev/null +++ b/data_files/project_diagram_child_properties.md @@ -0,0 +1,20 @@ +# properties +Custom title-block fields for this folio: the user-defined variables a title +block template can display, over and above the fixed ones (author, title, date, +...) that live as attributes on [diagram](project_child_diagram) itself. + +Example: +`26/06/2015` + +parent : [diagram](project_child_diagram) + +attribute : none + +## child elements + * [property](project_diagram_properties_child_property) + +Written only when at least one custom field exists, by +`TitleBlockProperties::toXml()`, `sources/titleblockproperties.cpp`. + +Note the project itself has a separate top-level +[properties](project_child_properties) block. Same tag name, different parent. diff --git a/data_files/project_diagram_child_shapes.md b/data_files/project_diagram_child_shapes.md new file mode 100644 index 0000000..312d77f --- /dev/null +++ b/data_files/project_diagram_child_shapes.md @@ -0,0 +1,22 @@ +# shapes +Container for free drawing on the folio -- lines, rectangles, ellipses and +polygons drawn directly on the diagram rather than belonging to an element. + +parent : [diagram](project_child_diagram) + +attribute : none + +## child elements + * ``, with attributes: + * type -- `Line`, `Rectangle`, `Ellipse` or `Polygon` + * x1, y1, x2, y2 -- defining points + * rx, ry -- corner radii, for rectangles + * closed -- for polygons + * z -- stacking order + * is_movable -- `true` / `false` + +These are diagram shapes and are **not** the same as the element drawing +primitives documented under [description](elements_child_description), even +though they draw similar figures. + +Written only when the folio has at least one shape, by `Diagram::toXml()`. diff --git a/data_files/project_diagram_elementautonumfoliosequentials_child_elementhundredfolioseq.md b/data_files/project_diagram_elementautonumfoliosequentials_child_elementhundredfolioseq.md new file mode 100644 index 0000000..3c2795a --- /dev/null +++ b/data_files/project_diagram_elementautonumfoliosequentials_child_elementhundredfolioseq.md @@ -0,0 +1,15 @@ +# elementhundredfolioseq +The hundreds counter for element auto-numbering on this folio. + +parent : [elementautonumfoliosequentials](project_diagram_child_elementautonumfoliosequentials) + +attribute : none + +## child elements + * ``, one per auto-numbering scheme, with attributes: + * title -- the name of the numbering scheme these values belong to + * seqhf_1, seqhf_2, ... seqhf_N -- the stored values, numbered from 1. + There is no count attribute; the number of values is however many + `seqhf_N` attributes are present. + +Written by `Diagram::folioSequentialsToXml()`, `sources/diagram.cpp`. diff --git a/data_files/project_diagram_elementautonumfoliosequentials_child_elementtenfolioseq.md b/data_files/project_diagram_elementautonumfoliosequentials_child_elementtenfolioseq.md new file mode 100644 index 0000000..08f784b --- /dev/null +++ b/data_files/project_diagram_elementautonumfoliosequentials_child_elementtenfolioseq.md @@ -0,0 +1,15 @@ +# elementtenfolioseq +The tens counter for element auto-numbering on this folio. + +parent : [elementautonumfoliosequentials](project_diagram_child_elementautonumfoliosequentials) + +attribute : none + +## child elements + * ``, one per auto-numbering scheme, with attributes: + * title -- the name of the numbering scheme these values belong to + * seqtf_1, seqtf_2, ... seqtf_N -- the stored values, numbered from 1. + There is no count attribute; the number of values is however many + `seqtf_N` attributes are present. + +Written by `Diagram::folioSequentialsToXml()`, `sources/diagram.cpp`. diff --git a/data_files/project_diagram_elementautonumfoliosequentials_child_elementunitfolioseq.md b/data_files/project_diagram_elementautonumfoliosequentials_child_elementunitfolioseq.md new file mode 100644 index 0000000..5177e00 --- /dev/null +++ b/data_files/project_diagram_elementautonumfoliosequentials_child_elementunitfolioseq.md @@ -0,0 +1,15 @@ +# elementunitfolioseq +The units counter for element auto-numbering on this folio. + +parent : [elementautonumfoliosequentials](project_diagram_child_elementautonumfoliosequentials) + +attribute : none + +## child elements + * ``, one per auto-numbering scheme, with attributes: + * title -- the name of the numbering scheme these values belong to + * sequf_1, sequf_2, ... sequf_N -- the stored values, numbered from 1. + There is no count attribute; the number of values is however many + `sequf_N` attributes are present. + +Written by `Diagram::folioSequentialsToXml()`, `sources/diagram.cpp`. diff --git a/data_files/project_diagram_properties_child_property.md b/data_files/project_diagram_properties_child_property.md new file mode 100644 index 0000000..a9c750f --- /dev/null +++ b/data_files/project_diagram_properties_child_property.md @@ -0,0 +1,16 @@ +# property +One custom title-block variable. + +Example: +`26/06/2015` + +parent : [properties](project_diagram_child_properties) + +attribute : + * name -- the variable's key, as referenced from a title block template + * show -- `1` / `0`, whether the field is displayed + +The value is the element's **text node**, not an attribute. It is written +trimmed, and may be empty. + +Written by `DiagramContext::toXml()`, `sources/diagramcontext.cpp`.