60001282 I would like VectorDraw to add groups of layers and also layer filters in the layer manager

Article 60001282
Type Wish
Product Engine
Version 7004
Date Added 1/10/2011
Fixed 7.7005.0.1 (6/12/2015)
Submitted by Ilan Sandor

Summary

I would like VectorDraw to add groups of layers and also layer filters in the layer manager

Solution

In version 7005 we added the ability to create groups and filters to the layers. We altered the Layers form so the user can easily create filters and groups of layers in order to manipulate layers easier.
These objects are being exported to our format vdml/vdcl and also to the DWG/DXF format.
Please read below the description of this functionality.

Layers Form.
The groups and filters have been added to the left panel of the layers dialog.


Here are some groups and filters added added.


The user can add groups and filters with right click at the Owner. Initially they can be added to the "ALL" tab which contains all the layers of the drawing.

Subgroups can be created with right click to an already created group.
Filters can also be created to the "ALL" tab and also to a group but also to a filter , so you can have a subfilter that is under a filter that is also under a group.
The main difference of the above is that the Group of layers is a sub collection of layers. The user can add layers to a group with a simple dragdrop operation from the "ALL" tab.
The user in order to create a filter he must specify the properties that are filtered through a new form that we designed. So the user can pick a filter and state that he wants to see only layers with color Blue!

Check the Images below.
Right Click to the "ALL" tab in order to add a group.

A filter can be added to either a group , another filter or the general("ALL") tab that contains all the layers.



A filter can contain several properties.

The second line of the filter means an OR operation , so in this example the layers are going to be filtered if they have blue color OR Lineweight = 1.0.


The user can doubleclick to a group or a filter in order to edit it. In the case of the group a rename dialog will appear and in the case of a filter the filter dialog will open.
The user can press the delete button of the keyboard in order to remove layers from a group if a group is selected to the Tree on the left.
The user can also Remove a group or a filter by selecting the Remove on the right click menu..

Information for the Developer:
The following objects have been added:

public class vdLayersGroup : Implements the Layers group and basically is a collection of layers.
Properties : Name , Count , VisibleOnForms and also enumaration and collection methods to add , remove and reorder the list.
The most important property is the (public vdLayersGroup GroupOwner) which indicates where the group is added. If this property is null then it is indicated that it belongs to the main Layers collection.

public class vdLayersGroups : Implements a collection of vdLayersGroup objects.
A collection like this is already present to the Document.Layers object where all the groups of the drawing are being added.
Properties : Enumaration and collection methods to add , remove and reorder the list.

public class vdLayersFilterClass : Implements a filter option.
Properties : string Frozen = "",string Lock = "",string On = "",string Name = "",string mPenColor = "",string mLineType = "",string mLineWeight = "". All propertis are strings and follow the ToString,FromString rule of the object they represent.Every property represent the "AND" operation.

public class vdLayersFilter : Implements a basic filter for the layers.
Properties : Is a collection of vdLayersFilterClass objects. Every FilterClass object represents an "OR" operation.string FilterName is the name of the filter.
The most important property is the (public vdPrimary GroupOwner) which indicates where the group is added. If this property is null then it is indicated that it belongs to the main Layers collection.

public class vdLayersFilters : Implements a collection of vdLayersFilter objects.
A collection like this is already present to the Document.Layers object where all the groups of the drawing are being added.
Properties : Enumaration and collection methods to add , remove and reorder the list.

Send comments on this topic.