/// <summary>
        /// Mouse was double clicked.
        /// </summary>
        internal void OnDoubleClick()
        {
            if (lastClickedAnnotation != null &&
                lastClickedAnnotation.AllowTextEditing)
            {
                TextAnnotation textAnnotation = lastClickedAnnotation as TextAnnotation;

                if (textAnnotation == null)
                {
                    AnnotationGroup group = lastClickedAnnotation as AnnotationGroup;

                    if (group != null)
                    {
                        // Try to edit text annotation in the group
                        foreach (Annotation annot in group.Annotations)
                        {
                            TextAnnotation groupAnnot = annot as TextAnnotation;
                            if (groupAnnot != null &&
                                groupAnnot.AllowTextEditing)
                            {
                                // Get annotation position in relative coordinates
                                PointF firstPoint  = PointF.Empty;
                                PointF anchorPoint = PointF.Empty;
                                SizeF  size        = SizeF.Empty;
                                groupAnnot.GetRelativePosition(out firstPoint, out size, out anchorPoint);
                                RectangleF textPosition = new RectangleF(firstPoint, size);

                                // Check if last clicked coordinate is inside this text annotation
                                if (groupAnnot.GetGraphics() != null &&
                                    textPosition.Contains(groupAnnot.GetGraphics().GetRelativePoint(this._movingResizingStartPoint)))
                                {
                                    textAnnotation        = groupAnnot;
                                    lastClickedAnnotation = textAnnotation;
                                    break;
                                }
                            }
                        }
                    }
                }

                if (textAnnotation != null)
                {
                    // Start annotation text editing
                    textAnnotation.BeginTextEditing();
                }
            }
        }