class GroupLayer

Member Functions

int CountLayers()

Returns the number of sub-layers in the group.

Return value (int): the number of sub-layers in the group

MohoLayer Layer(id)

Returns a layer in the group (starting at 0 for the first layer).

Return value (MohoLayer): a layer in the group
id (int): index number of the layer

MohoLayer LayerByDepth(id)

Returns a layer in the group, ir order from furthest to nearest (starting at 0 for the furthest layer).

Return value (MohoLayer): a layer in the group
id (int): depth index number of the layer

bool IsExpanded()

Tests whether the group is expanded in the Moho Layers window.

Return value (bool): true if expanded, otherwise false

void Expand(b)

Expands or contracts the group in the Moho Layers window.

Return value: none
b (bool): true to expand, false to contract

int GetGroupMask()

Returns the group's masking mode. See group masking mode constants.

Return value (int): the group's masking mode

void SetGroupMask(mask)

Sets the group's masking mode. See group masking mode constants.

Return value: none
mask (int): the group's masking mode

void FullDepthSort(doc)

Perform a full depth sort on the group's sub-layers.

Return value: none
doc (MohoDoc): the Moho document

void DepthSort(doc)

Perform an incremental depth sort on the group's sub-layers.

Return value: none
doc (MohoDoc): the Moho document
class GroupLayer : public MohoLayer {
  int32 CountLayers();
  MohoLayer *Layer(int32 id);
  MohoLayer *LayerByDepth(int32 id);
  MohoLayer *LayerByName(const char *name);
  bool IsLayerValid(MohoLayer *layer);
  bool IsLayerValid(const char *uuid);
  bool IsMyChild(MohoLayer *childLayer);
 
  bool IsExpanded();
  void Expand(bool b);
 
  int32 GetGroupMask();
  void SetGroupMask(int32 mask); // 0=none, 1=all visible, 2=all invisible
 
  bool IsDepthSorted();
  void SetDepthSorted(bool b);
  bool IsDistanceSorted();
  void SetDistanceSorted(bool b);
  bool IsLayerOrderingEnabled();
  void EnableLayerOrdering(bool b);
  bool IsLayerOrdered();
  AnimString *GetLayerOrdering();
 
  void EnablePhysics(int32 frame, bool b);
  bool IsPhysicsEnabled(int32 frame); // if frame is < 0, the return value is true if physics is *ever* enabled during the course of the animation
  int32 MostRecentPhysicsKeyframe(int32 frame); // returns the most recent keyframe (before or at the given frame) for physics enablement
  void SetPhysicsGravity(LM_Vector2 gravity);
  LM_Vector2 PhysicsGravity();
  bool MultiplePhysicsKeys();
  void UseBakedPhysics(bool b);
  bool UsingBakedPhysics();
 
  void FullDepthSort(MohoDoc *doc = NULL);
  void DepthSort(MohoDoc *doc = NULL);
};