Returns the iterator from the head object of the selection.

syntaxSyntax:
DlxSelection.GetHeadObjectIterator()

Return Value

A DlxIterator value that can be used for iteration or object retrieval; Invalid iterator if the layer is empty. Call the IsValid() method to determine if the iterator is valid.

Example

  Copy codeCopy code
var prj = DlxApp.GetJob().GetProject("Example Sch");
if (!prj.IsValid())
  prj = DlxApp.GetJob().NewProject("Example Sch");
var doc = prj.GetDocument("Examples Sch", DlxApp.DOCTYPE_SCHEMATIC);
if (!doc.IsValid())
{
  doc = prj.NewDocument("Examples Sch", DlxApp.DOCTYPE_SCHEMATIC);
  doc.SetPageFormat("A4", false);
}
if (doc.IsValid() && doc.Activate())
{
  var page = doc.GetActivePage();
  if (page.IsValid())
  {
    var layer = page.GetLayerFromType(DlxApp.LAYERTYPE_DRAWING);
    if (layer.IsValid())
    {
      // create objects
      var pen = new DlxPenStyle(0.5, new DlxColor("orangered"), "DASHED");
      doc.SetStyle(pen);
      var obj1 = layer.DrawLine(new DlxPoint(30, 30), new DlxPoint(80, 80));
      pen.SetWidth(1);
      doc.SetStyle(pen);
      var obj2 = layer.DrawLine(new DlxPoint(40, 30), new DlxPoint(90, 80));
      pen.SetDashStyle("SOLID");
      doc.SetStyle(pen);
      var obj3 = layer.DrawLine(new DlxPoint(50, 30), new DlxPoint(100, 80));
      var obj4 = layer.DrawEllipse(new DlxPoint(100, 80), 10);
      // moves objects
      var selection = page.GetSelection();
      selection.Empty();
      selection.AddObject(obj1);
      selection.AddObject(obj2);
      selection.AddObject(obj4);
      var i = selection.GetHeadObjectIterator();
      while (i.IsValid())
      {
        var obj = selection.GetNextObject(i);
        DlxApp.Printf("object type: %s", obj.GetTypeName());
      }
    }
  }
}

See also