←Select platform

Active Property

Summary
Gets or sets a value indicating whether this AnnAutomation is active.
Syntax
C#
Objective-C
C++/CLI
Java
Python
public virtual bool Active { get; set; } 
@property (nonatomic, assign, getter=isActive) BOOL active; 
public boolean getActive() 
public void setActive(boolean active) 
public:  
   virtual property bool Active 
   { 
      bool get() 
      void set(bool value) 
   } 
Active # get and set (AnnAutomation) 

Property Value

true if this AnnAutomation is active; otherwise, it is false.

Remarks

The collection of AnnAutomation objects inside an AnnAutomationManager should have one AnnAutomation object active at any time. The active AnnAutomation object is the object to which all user interface actions are directed.

If the automated annotation application has only one AnnAutomation object, it should set the Active property of this AnnAutomation to true upon initialization. Otherwise, set the Active property of the active AnnAutomation to true.

If the automated annotation application has more than one AnnAutomation, it should set the Active property of the AnnAutomation attached to the currently active form to true.

Setting the Active value of one AnnAutomation in the Automations property to true, will cause the Active property of all other AnnAutomation objects inside this collection to be set to false.

Example
C#
using Leadtools.Annotations.Automation; 
using Leadtools.Annotations.Engine; 
using Leadtools.Codecs; 
using Leadtools.Controls; 
using Leadtools.Annotations.WinForms; 
using Leadtools.Annotations.Rendering; 
using Leadtools.Annotations.Designers; 
 
public void AnnAutomationManager_FindObjectById() 
{ 
   // find the line automation object 
   AnnAutomationObject obj = _automation.Manager.FindObjectById(AnnObject.LineObjectId); 
   if (obj != null) 
   { 
      obj.ObjectTemplate.Stroke = AnnStroke.Create(AnnSolidColorBrush.Create("Blue"), LeadLengthD.Create(2)); 
   } 
 
   // Check if it is active 
   AnnAutomations annAutomations = _automation.Manager.Automations; 
   foreach(AnnAutomation annAutomation in annAutomations) 
      Console.WriteLine($"Is AnnAutomation Active?: {annAutomation.Active}"); 
 
   // Restarting _automation without objects 
   StartupNoObjects(); 
   // There should be no Automation Objects 
   Console.WriteLine($"Number of Annotation Objects Available: {_automation.Manager.Objects.Count}"); 
   // Create Default Automation Objects 
   _automation.Manager.CreateDefaultObjects(); 
   Console.WriteLine($"Number of Created Annotation Objects: {_automation.Manager.Objects.Count}"); 
   foreach (AnnAutomationObject defaultObject in _automation.Manager.Objects) 
   { 
      defaultObject.RunDesignerType = typeof(AnnRunDesigner); 
      Console.WriteLine($"ID: {defaultObject.Id} | {defaultObject.Name} | Draw Designer Type: {defaultObject.DrawDesignerType.Name} | Edit Designer Type: {defaultObject.EditDesignerType.Name} | Run Designer Type: {defaultObject.RunDesignerType.Name}"); 
   } 
} 
 
public void StartupNoObjects() 
{ 
   _viewer = new AutomationImageViewer(); 
   _viewer.Image = RasterImage.CreateGrayscale(500, 500, 8, 100); 
   _manager = new AnnAutomationManager(); 
   _automation = new AnnAutomation(_manager, _viewer); 
   _automation.Active = true; 
   _automation.Container.Size = new LeadSizeD(500, 500); 
   _automation.AutomationControl.RenderingEngine = new AnnWinFormsRenderingEngine(); 
} 
Requirements

Target Platforms

Help Version 22.0.2023.4.25
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Annotations.Automation Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.