What a host allows the user to do with one drawing. The flags are independent of one another and of locked, and each defaults to true, so a drawing without a policy behaves exactly as one did before policies existed. A copy (paste, duplicate) never inherits a policy: it is the user's own drawing.

selectable, persistent and listed bind every caller. editable restricts the user: the controller cannot tell a click from a call, so its methods treat every call as the user's unless it passes { force: true } (see DrawingEditOptions), which is how the host that placed the drawing moves or retires it. Stacking order (front, back, either side of the series) is outside the policy.

interface DrawingPolicy {
    editable?: boolean;
    listed?: boolean;
    persistent?: boolean;
    selectable?: boolean;
}

Properties

editable?: boolean

false: read-only to the user. It still selects, copies and duplicates, but nothing moves, reshapes, restyles, hides, locks, cuts, deletes or regroups it, and undo and redo never touch it or the group it is in.

listed?: boolean

false: left out of the object inventory (ChartObjects) and every panel built on it.

persistent?: boolean

false: transient. Left out of toJSON, and so out of the chart state and every saved layout, while it renders and undoes as usual in the session. A restore replaces it with what was saved.

selectable?: boolean

false: never joins the selection, whoever asks. A click passes through to what lies under it, and nothing hovers, drags or selects it.