←Select platform

Draw Event

Summary
Occurs when an AnnObject is being drawn.
Syntax
C#
Objective-C
C++/CLI
Java
Python
public event EventHandler<AnnDrawDesignerEventArgs> Draw 
- (void)automation:(LTAnnAutomation *)automation draw:(LTAnnDrawDesignerEventArgs *)args; 
public void addDrawDesignerdListener(AnnDrawDesignerListener listener) 
public void removeDrawDesignerListener(AnnDrawDesignerListener listener) 
public:  
   event EventHandler<AnnDrawDesignerEventArgs^>^ Draw 
def Draw(sender,e): # sender: AnnAutomation e: Leadtools.Annotations.Engine.AnnDrawDesignerEventArgs 
Event Data

The event handler receives an argument of type AnnDrawDesignerEventArgs containing data related to this event. The following AnnDrawDesignerEventArgs properties provide information specific to this event.

PropertyDescription
Cancel A value indicating whether the draw operation should be canceled.
Remarks

When an object is being drawn, the automation object will hook the object draw designer's AnnDrawDesigner.Draw to this event. Therefore, instead of hooking and unhooking to the various designers draw events, you can simply subscribe to this event once.

Example

This example will show how to stop drawing new line objects.

Start with the AnnAutomationManager example, remove all the code inside the example function (search for the // TODO: add example code here comment) and insert the following code:

Click the example button then try to draw a line object.

C#
using Leadtools.Annotations.Automation; 
 
using Leadtools.Annotations.Engine; 
using Leadtools.Codecs; 
using Leadtools.Controls; 
using Leadtools.Annotations.Rendering; 
using Leadtools.Annotations.WinForms; 
 
public void AnnAutomation_Draw() 
{ 
   // Hook to the automation's Draw event 
   _automation.Draw += _automation_Draw; 
} 
 
void _automation_Draw(object sender, AnnDrawDesignerEventArgs e) 
{ 
   // Check if we are drawing a line and we just started, if so, cancel it 
   if (_automation.Manager.CurrentObjectId == AnnObject.LineObjectId && 
      e.OperationStatus == AnnDesignerOperationStatus.Start) 
   { 
      Debug.WriteLine("Canceling line..."); 
      e.Cancel = true; 
   } 
} 
Requirements

Target Platforms

Help Version 23.0.2024.2.29
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2024 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.