2.2.49.5.2 Bindable Properties

Bindable attributes are applied only to property accessor methods and properties.

 oa-bindable-attr = kw-bindable /
             kw-immediatebind /
             kw-defaultbind /
             kw-displaybind /
             kw-requestedit
  

kw-bindable: Specifies that the property can act as a bindable server (see section 2.2.49.1.3). The bindable attribute refers to the property as a whole, and is applied to both get and set accessor methods, if they exist.

If the server is capable of distinguishing between temporary and permanent states when the value of a property is changed (see the following entry for the immediatebind attribute), the server MUST call clients that are bound to the property, each time the value of the property is permanently changed. If the server is incapable of distinguishing between temporary and permanent states, the server MUST call clients that are bound to the property each time the value of the property is changed.

kw-immediatebind: Specifies that, if the server is capable of distinguishing between intermediate and final states when the value of a property is changed,<43> the server MUST call clients that are bound to the property each time the value of the property is temporarily or permanently changed. Properties that have the immediatebind attribute MUST also have the bindable attribute.

kw-defaultbind: Specifies that the property acts as the default bindable server for clients that bind to objects rather than to properties. Properties with the defaultbind attribute MUST also have the bindable attribute.

kw-displaybind: Specifies that Type browser clients MUST indicate to users that the property is bindable. Properties with the displaybind attribute MUST also have the bindable attribute.

kw-requestedit: Specifies that the server calls clients that are bound to the property before the property value is changed, in order to determine whether the change can be allowed. The server must not change the value of the property if any client specifies that the property cannot be changed. Properties with the requestedit attribute MUST also have the bindable attribute.