70002496 Export sort method for vdLayers vdLayouts collection

Article 70002496
Type Wish
Product Engine
Version 1005
Date Added 3/18/2024 12:00:00 AM
Fixed 11.1.3.0 (3/18/2024 12:00:00 AM)
Submitted by Wayne Romer

Summary

Export sort method for vdLayers vdLayouts collection

Solution

In version 11.1.3 new methods was added
vdLayers.Sort(IComparer comparer)
vdLayouts.Sort(IComparer comparer)


Examples:
 
 
Sort layouts depend on their name in ascending order:

//a class object that used to compare to vdLayout objects depend of the LayOut Name
private class LayoutObjectComparer  : System.Collections.Generic.IComparer<vdLayout>
{
    public LayoutObjectComparer()
    {
    }
    public int Compare(vdLayout x, vdLayout y)
    {
         return System.StringComparer.InvariantCultureIgnoreCase.Compare(x.Name, y.Name);
    }
}
vdDocument doc;
doc.LayOuts.Add("LayOut 1");
doc.LayOuts.Add("LayOut 3");
doc.LayOuts.Add("LayOut 2");
doc.LayOuts.Add("LayOut 4");
//sort layouts depend on their name in ascending order
doc.LayOuts.Sort(new LayoutObjectComparer());

 
Sort layers depend on their name in ascending order:
//a class object that used to compare to vdLayer objects depend of the vdLayer Name
private class LayerObjectComparer  : System.Collections.Generic.IComparer<vdLayer>
{
    public LayerObjectComparer()
    {
    }
    public int Compare(vdLayer x, vdLayer y)
    {
         return System.StringComparer.InvariantCultureIgnoreCase.Compare(x.Name, y.Name);
    }
}
vdDocument doc;
doc.Layers.Add("Layer 1");
doc.Layers.Add("Layer 3");
doc.Layers.Add("Layer 2");
doc.Layers.Add("Layer 4");
//sort layers depend on their name in ascending order
doc.Layers.Sort(new LayerObjectComparer());

Send comments on this topic.