AttributeLockControl

class HPS.AttributeLockControl : public HPS.Control

The HPS.AttributeLockControl class provides support for attribute locking, which allows temporarily override of an attribute setting for a segment and its descendants. This control is used to set and unset attribute locks at the segment level. For more information, see Core Graphics Programming Guide, section 1.2.4 - subsection “Attribute controls”. This table lists default values for the various segment attributes accessible from HPS.AttributeLockControl.

Public Functions

AttributeLockControl (HPS.AttributeLockControl in_that)

The move constructor creates a AttributeLockKit by transferring the underlying impl of the rvalue reference to this AttributeLockKit thereby avoiding a copy and allocation.

Param in_that

An rvalue reference to a AttributeLockKit to take the impl from.

AttributeLockControl (HPS.SegmentKey in_seg)

Initializes a control tied to the segment in_seg.

override void Dispose ()
override HPS.Type ObjectType ()

This function returns the type the object, as declared (if the object is derived, this does not give the true type of the derived object).

Return

The declared type of the object in question, which may differ from the true, underlying type.

HPS.AttributeLockControl SetLock (HPS.AttributeLock.Type in_type)

Applies an attribute lock that prevents attributes of the chosen type from being modified in child segments.

See

Attribute lock default value

Param in_type

The type of attribute to lock or unlock.

Return

A reference to this object.

HPS.AttributeLockControl SetLock (HPS.AttributeLock.Type in_type, bool in_state)

Applies an attribute lock that prevents attributes of the chosen type from being modified in child segments.

See

Attribute lock default value

Param in_type

The type of attribute to lock or unlock.

Param in_state

Whether the attribute should be locked.

Return

A reference to this object.

HPS.AttributeLockControl SetLock (HPS.AttributeLock.Type[] in_types, bool[] in_states)

Applies attribute locks that prevents attributes of the chosen types from being modified in child segments.

Param in_types

An array of attribute types that should be locked or unlocked.

Param in_states

An array of bools with each one indicating whether the corresponding type in in_types should be locked.

Return

A reference to this object.

HPS.AttributeLockControl SetSubsegmentLockOverride (HPS.AttributeLock.Type in_type)

Normally, if a segment applies an attribute lock it will defeat an existing lock set in a parent segment. This method designates a particular lock as a “super lock” that cannot be overridden by subsegments.

Param in_type

The type of attribute lock that should be ignored in subsegments.

Return

A reference to this object.

HPS.AttributeLockControl SetSubsegmentLockOverride (HPS.AttributeLock.Type in_type, bool in_state)

Normally, if a segment applies an attribute lock it will defeat an existing lock set in a parent segment. This method designates a particular lock as a “super lock” that cannot be overridden by subsegments.

Param in_type

The type of attribute lock that should be ignored in subsegments.

Param in_state

Whether the attribute lock should override locks in subsegments.

Return

A reference to this object.

HPS.AttributeLockControl SetSubsegmentLockOverride (HPS.AttributeLock.Type[] in_types, bool[] in_states)

Normally, if a segment applies an attribute lock it will defeat an existing lock set in a parent segment. This method designates a collection of locks as a “super locks” that cannot be overridden by subsegments.

Return

A reference to this object.

bool ShowLock (HPS.AttributeLock.Type in_type, out bool out_state)

Shows the state of a particular attribute lock.

Param in_type

The type of attribute lock to be queried.

Param out_state

Whether the attribute is locked.

Return

true if the setting is valid, false otherwise.

bool ShowLock (out HPS.AttributeLock.Type[] out_types, out bool[] out_states)

Shows the state of all attribute locks.

Param out_types

An array of types that have an attribute lock setting.

Param out_states

An array of bools with each indicating whether the corresponding entry in in_types is locked.

Return

true if the setting is valid, false otherwise.

bool ShowSubsegmentLockOverride (HPS.AttributeLock.Type in_type, out bool out_state)

Shows the state of a particular subsegment lock override.

Param in_type

The type of attribute lock to be queried.

Param out_state

Whether the attribute lock will override locks in subsegments.

Return

true if the setting is valid, false otherwise.

bool ShowSubsegmentLockOverride (out HPS.AttributeLock.Type[] out_types, out bool[] out_states)

Shows the state of all subsegment lock overrides.

Param out_types

An array of types that have a subsegment lock override setting.

Param out_states

An array of bools with each indicating whether the corresponding entry in in_types is will be ignored in subsegments.

Return

true if the setting is valid, false otherwise.

HPS.AttributeLockControl UnsetEverything ()

Removes all settings from this object. If the control is attached to a WindowKey this function restores the default settings of this control as specified by AttributeLockKit.GetDefault().

Return

A reference to this object.

HPS.AttributeLockControl UnsetLock ()

Removes an attribute lock setting. If the control is attached to a WindowKey this function restores the default value of this setting as specified by AttributeLockKit.GetDefault().

Return

A reference to this object.

HPS.AttributeLockControl UnsetLock (HPS.AttributeLock.Type in_type)

Removes an attribute lock setting. If the control is attached to a WindowKey this function restores the default value of this setting as specified by AttributeLockKit.GetDefault().

Return

A reference to this object.

HPS.AttributeLockControl UnsetLock (HPS.AttributeLock.Type[] in_types)

Removes a collection of attribute lock settings. If the control is attached to a WindowKey this function restores the default value of this setting as specified by AttributeLockKit.GetDefault().

Return

A reference to this object.

HPS.AttributeLockControl UnsetSubsegmentLockOverride ()

Removes a subsegment lock override setting. If the control is attached to a WindowKey this function restores the default value of this setting as specified by AttributeLockKit.GetDefault().

Return

A reference to this object.

HPS.AttributeLockControl UnsetSubsegmentLockOverride (HPS.AttributeLock.Type in_type)

Removes a subsegment lock override setting. If the control is attached to a WindowKey this function restores the default value of this setting as specified by AttributeLockKit.GetDefault().

Return

A reference to this object.

HPS.AttributeLockControl UnsetSubsegmentLockOverride (HPS.AttributeLock.Type[] in_types)

Removes a collection of subsegment lock override settings. If the control is attached to a WindowKey this function restores the default value of this setting as specified by AttributeLockKit.GetDefault().

Return

A reference to this object.