Property Group
PropertyGroup
¶
PropertyGroup(
enabled: bool,
match_name: str,
name: str,
property_depth: int,
properties: list[Property | PropertyGroup],
)
Bases: PropertyBase
The PropertyGroup object represents a group of properties. It can contain
Property objects and other PropertyGroup objects. Property groups can
be nested to provide a parent-child hierarchy, with a Layer object at the
top (root) down to a single Property object, such as the mask feather of
the third mask. To traverse the group hierarchy, use PropertyBase methods
and attributes; see PropertyBase.propertyGroup(). For examples of how to
access properties and property groups, see PropertyBase object.
Example
Info
PropertyGroup is a subclass of PropertyBase. All methods and
attributes of PropertyBase are available when working with
PropertyGroup.
Info
PropertyGroup is a base class for Layer and MaskPropertyGroup.
PropertyGroup attributes and methods are available when working with
layer or mask groups.
See: https://ae-scripting.docsforadobe.dev/property/propertygroup/
Attributes¶
can_set_enabled
¶
can_set_enabled: bool
True if the enabled attribute value can be set.
This is True for all layers, effect property groups, shape
vector groups, and text path options.
elided
¶
When True, the property is not shown in the UI. An elided property is
still present in the timeline but hidden from view.
is_effect
¶
When True, this property is an effect PropertyGroup.
is_mask
¶
When True, this property is a mask PropertyGroup.
is_modified
¶
is_modified: bool
True if any child property is modified.
For indexed groups (such as Effects or Masks parades), the group is considered modified when it has any children - adding items to an indexed group is itself a modification.
match_name
¶
match_name: str
A special name for the property used to build unique naming paths. The match name is not displayed, but you can refer to it in scripts. Every property has a unique match-name identifier.
num_properties
¶
num_properties: int
The number of child properties in this group.
Equivalent to ExtendScript PropertyGroup.numProperties.
parent_property
¶
parent_property: PropertyGroup | None = field(
init=False, default=None, repr=False
)
The parent PropertyGroup of this property, or None for top-level
layer property groups.
property_depth
¶
property_depth: int
The number of levels of parent groups between this property and the containing layer. The value is 0 for a layer.
property_index
¶
property_index: int | None
The 0-based position of this property within its parent group.
Returns None for layers (property depth 0).
Warning
Unlike ExtendScript (1-based), this uses Python's 0-based
convention so that group.properties[prop.property_index]
works directly.
property_type
¶
property_type: PropertyType = field(
init=False, default=NAMED_GROUP
)
The type of this property. One of PropertyType.PROPERTY,
PropertyType.NAMED_GROUP, or PropertyType.INDEXED_GROUP.