PeachBrackets

PeachBrackets.Annotations

PageFormField Class

A form control (<input>, <select>) that landed on a page and can be made interactive, with everything needed to do that: what it is, where it is, and how to draw each state of it.

public sealed class PageFormField

Inheritance System.Object → PageFormField

Remarks

Geometry follows the same convention as PageLink: points from the page’s top-left corner, y down.

Properties  
Appearance Draws each state of the control.
AppearanceTransform The linear part of the transform that carries the upright appearance to where the control was drawn (translation left out, since the consumer fits the transformed appearance to Bounds), in the same y-down convention as Bounds; null when the control was not transformed or the transform is not affine (it is then drawn as its upright bounding box).
Bounds Where the control sits: its box, or the bounding box of the drawn shape when a transform moved it. A control that was not drawn on its page (a projected plane outside the clip, wholly behind the viewer) keeps its field - it still holds a value and belongs to its form, and a radio group would lose a member - so this is then an empty rectangle at its bottom-left corner, with nothing to see or click.
Classification What the control is: its kind, name, value, options and attributes.
ContentSize The size, in points, the control’s appearance is drawn at. It is still drawn upright at its own size when a transform moved it; AppearanceTransform carries the drawing to where it landed.
PageIndex The zero-based index of the page the control is on.