App DocumentObjectGroup

Introduction


An App DocumentObjectGroup object, or formally an, is a simple element that allows grouping any type of App DocumentObject in the tree view no matter its type of data.

It was developed to organize the objects in the tree view in a way that is logical for the user.



How to use

 * 1) Press the  button in the structure toolbar. An empty Group is created.
 * 2) To add objects to a Group, select them in tree view, and then drag and drop them over the Group.
 * 3) To remove objects from a Group, drag them out of the Group, and onto the document label at the top of the tree view.

See the Std Group page for the complete information, including its use in Scripting.

Properties
An App DocumentObjectGroup ( class) is derived from the basic App DocumentObject ( class), therefore it shares all the latter's properties.

In addition to the properties described in App DocumentObject, the App DocumentObjectGroup has some properties that help it manage objects, like.

See Property for all property types that scripted objects can have.

These are the properties available in the property editor. Hidden properties can be shown by using the command in the context menu of the property editor.

Data

 * : the user editable name of this object, it is an arbitrary UTF8 string.
 * : a list of referenced objects. By default, it is empty.

Hidden properties Data

 * : a list of expressions. By default, it is empty.
 * : a longer, user editable description of this object, it is an arbitrary UTF8 string that may include newlines. By default, it is an empty string.
 * : a custom class associated with this object. This only exists for the Python version.
 * : whether to display the object or not.
 * : whether the group is touched or not.

View
The App DocumentObjectGroup has five properties of the basic App GeoFeature, but it isn't derived from it.


 * : by default it's empty.
 * : (default),, ,.
 * : (default), . If the option is, the entire shape (vertices, edges, and faces) will be highlighted in the 3D view; if it is  only the bounding box will be highlighted.
 * : if it is, the object appears in the tree view. Otherwise, it is set as invisible.
 * : if it is, the object appears in the 3D view; otherwise it is invisible. By default this property can be toggled on and off by pressing the bar in the keyboard.

Hidden properties View

 * : a custom class associated with this object. This only exists for the Python version.

Scripting
FreeCAD Scripting Basics, and scripted objects.

An App DocumentObjectGroup is created with the method of the document. Once a Group exists, other objects can be added to it with the or  methods of this Group.

This basic doesn't have a Proxy object so it can't be fully used for sub-classing.

Therefore, for Python scripting, the recommendation is to create the object.

For example, a FEM Analysis is an object with a custom icon and additional properties.