//------------------------------------------------------------------------------ // // This code was generated by a tool. // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. // //------------------------------------------------------------------------------ using Newtonsoft.Json; namespace Shuttle.Api.AfterEffectsDTO.Properties { /// /// Properties are accessed by name through layers, using various kinds of expression syntax, as /// controlled by application preferences. For example, the following are all ways of access properties in /// the Effects group: /// public class PropertyBase { /// /// When true, this property is active. For a layer, this corresponds to the setting of the eyeball /// icon and if the current time is between the layer’s in and out points. For an effect and all /// properties, it is the same as the e n abl e d attribute, except that it’s read-only. /// [JsonProperty("active")] public bool Active { get; private set; } /// /// When true, you can set the enabled attribute value. Generally, this is true if the user interface /// displays an eyeball icon for this property; it is true for all layers. /// [JsonProperty("canSetEnabled")] public bool CanSetEnabled { get; private set; } /// /// When true, this property is a group used to organize other properties. The property is not /// displayed in the user interface and its child properties are not indented in the Timeline panel.For /// example, for a text layer with two animators and no properties twirled down, you might see: /// [JsonProperty("elided")] public bool Elided { get; private set; } /// /// When true, this property is enabled. It corresponds to the setting of the eyeball icon, if there /// is one; otherwise, the default is true. /// [JsonProperty("enabled")] public bool Enabled { get; private set; } /// /// When true, this property is an effect PropertyGroup. /// [JsonProperty("isEffect")] public bool IsEffect { get; private set; } /// /// When true, this property is a mask PropertyGroup. /// [JsonProperty("isMask")] public bool IsMask { get; private set; } /// /// When true, this property has been changed since its creation. /// [JsonProperty("isModified")] public bool IsModified { get; private set; } /// /// 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. Match names /// are stable from version to version regardless of the display name (the name attribute value) or any /// changes to the application. Unlike the display name, it is not localized. An indexed group may not /// have a name value, but always has a matchName value. (An indexed group has the type /// PropertyType.INDEXED_GROUP; see PropertyBase.propertyType.) /// [JsonProperty("matchName")] public string MatchName { get; private set; } /// /// The display name of the property. (Compare PropertyBase.matchName.) It is an error to set the name /// value if the property is not a child of an indexed group (that is, a property group that has the /// type PropertyType.INDEXED_GROUP; see PropertyBase.propertyType). /// [JsonProperty("name")] public string Name { get; private set; } /// /// The property group that is the immediate parent of this property, or null if this PropertyBase is /// a layer. /// [JsonProperty("parentProperty")] public PropertyGroup ParentProperty { get; private set; } /// /// The number of levels of parent groups between this property and the containing layer. The value 0 /// for a layer. /// [JsonProperty("propertyDepth")] public int PropertyDepth { get; private set; } /// /// The position index of this property within its parent group, if it is a child of an indexed group /// (a property group that has the type PropertyType.INDEXED_GROUP; see PropertyBase.propertyType). /// [JsonProperty("propertyIndex")] public int PropertyIndex { get; private set; } /// /// The type of this property. /// [JsonProperty("propertyType")] public int PropertyType { get; set; } /// /// When true, this property is selected. Set to true to select the property, or to false to deselect /// it. Sampling this attribute repeatedly for a large number of properties can slow down system /// performance. To read the full set of selected properties of a composition or layer, use either /// CompItem.selectedProperties or Layer.selectedProperties. /// [JsonProperty("selected")] public bool Selected { get; set; } public override string ToString() { return Name; } } }