StartDrawingAnnotation Event

Summary
Optional delegate method for additional processing.
Syntax
C#
C++/CLI
public event EventHandler<MedicalViewerDrawingAnnotationsEventArgs> StartDrawingAnnotation 
            public: 
event EventHandler<MedicalViewerDrawingAnnotationsEventArgs^>^ StartDrawingAnnotation 
Event Data

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

PropertyDescription
Container Gets the annotation container that contains the annotation object to be created.
Object Gets the object that is being created.
SubCellIndex Gets the sub-cell index of the cell that contains the container of the object that is being created.
Type Gets the enumeration value that determines the type of the object being created.
Example
C#
using Leadtools; 
using Leadtools.Dicom; 
using Leadtools.Medical3D; 
using Leadtools.Codecs; 
using Leadtools.MedicalViewer; 
using Leadtools.ImageProcessing; 
using Leadtools.ImageProcessing.Core; 
using Leadtools.ImageProcessing.Color; 
using Leadtools.Annotations.Engine; 
using Leadtools.Annotations.Designers; 
 
// This example makes the color of each newly created object blue. 
class MedicalViewerStartDrawingAnnotationForm : Form 
{ 
   private MedicalViewer _medicalViewer; 
   private RasterImage _image; 
 
 
   void MedicalViewerLocalizer_SizeChanged(object sender, EventArgs e) 
   { 
      _medicalViewer.Size = new Size(this.ClientRectangle.Right, this.ClientRectangle.Bottom); 
   } 
 
   public MedicalViewerStartDrawingAnnotationForm() 
   { 
      DicomEngine.Startup(); 
      RasterCodecs _codecs = new RasterCodecs(); 
 
      this.SizeChanged += new EventHandler(MedicalViewerLocalizer_SizeChanged); 
 
      // Create the medical viewer and adjust the size and the location. 
      _medicalViewer = new MedicalViewer(1, 2); 
      _medicalViewer.Location = new Point(0, 0); 
      _medicalViewer.Size = new Size(this.ClientRectangle.Right, this.ClientRectangle.Bottom); 
 
      // Load an image and then add it to the control. 
      _image = _codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "xa.dcm")); 
      MedicalViewerMultiCell cell = new MedicalViewerMultiCell(_image, true, 1, 1); 
      _medicalViewer.Cells.Add(cell); 
      cell.StartDrawingAnnotation += new EventHandler<MedicalViewerDrawingAnnotationsEventArgs>(cell_StartDrawingAnnotation); 
 
      cell.AddAction(MedicalViewerActionType.AnnotationRectangle); 
      cell.AddAction(MedicalViewerActionType.Alpha); 
      cell.AddAction(MedicalViewerActionType.Offset); 
 
      // assign the added actions to a mouse button, meaning that when the user clicks and drags the mouse button, the associated action will be activated. 
      cell.SetAction(MedicalViewerActionType.AnnotationRectangle, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active); 
      cell.SetAction(MedicalViewerActionType.Alpha, MedicalViewerMouseButtons.Middle, MedicalViewerActionFlags.Active); 
      cell.SetAction(MedicalViewerActionType.Offset, MedicalViewerMouseButtons.Right, MedicalViewerActionFlags.Active); 
 
      Controls.Add(_medicalViewer); 
      _medicalViewer.Dock = DockStyle.Fill; 
      DicomEngine.Shutdown(); 
   } 
 
   void cell_StartDrawingAnnotation(object sender, MedicalViewerDrawingAnnotationsEventArgs e) 
   { 
      e.Object.Fill = AnnSolidColorBrush.Create(Color.Red.Name); 
   } 
 
   void MedicalViewerLocalizer_FormClosing(object sender, FormClosingEventArgs e) 
   { 
   } 
 
   public MedicalViewer Viewer 
   { 
      get { return _medicalViewer; } 
   } 
} 
 
MedicalViewerStartDrawingAnnotationForm GetMedicalViewerStartDrawingAnnotationForm() 
{ 
   MedicalViewerSeriesManagerFrom form = new MedicalViewerSeriesManagerFrom(); 
   return new MedicalViewerStartDrawingAnnotationForm(); 
} 
 
// This example changes the default window level value by decrease the width by 100. Then resets the images based on the new value. 
public void MedicalViewerStartDrawingAnnotationExample() 
{ 
   MedicalViewerStartDrawingAnnotationForm myForm = GetMedicalViewerStartDrawingAnnotationForm(); 
   MedicalViewer medicalViewer = myForm.Viewer; 
 
   myForm.ShowDialog(); 
} 
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images"; 
} 
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.MedicalViewer Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.