Mercurial > projects > dwt-addons
comparison dwtx/jface/text/source/AnnotationBarHoverManager.d @ 138:b6bad70d540a
Regex instanceof changes
author | Frank Benoit <benoit@tionex.de> |
---|---|
date | Sun, 24 Aug 2008 02:26:23 +0200 |
parents | 6dcb0baaa031 |
children | 893c017bcdc5 |
comparison
equal
deleted
inserted
replaced
137:25170b5a8951 | 138:b6bad70d540a |
---|---|
425 return; | 425 return; |
426 } | 426 } |
427 | 427 |
428 int line= getHoverLine(event); | 428 int line= getHoverLine(event); |
429 | 429 |
430 if (hover instanceof IAnnotationHoverExtension) { | 430 if ( cast(IAnnotationHoverExtension)hover ) { |
431 IAnnotationHoverExtension extension= cast(IAnnotationHoverExtension) hover; | 431 IAnnotationHoverExtension extension= cast(IAnnotationHoverExtension) hover; |
432 ILineRange range= extension.getHoverLineRange(fSourceViewer, line); | 432 ILineRange range= extension.getHoverLineRange(fSourceViewer, line); |
433 setCustomInformationControlCreator(extension.getHoverControlCreator()); | 433 setCustomInformationControlCreator(extension.getHoverControlCreator()); |
434 range= adaptLineRange(range, line); | 434 range= adaptLineRange(range, line); |
435 if (range !is null) | 435 if (range !is null) |
490 * @return the adapted line range | 490 * @return the adapted line range |
491 * @since 3.0 | 491 * @since 3.0 |
492 */ | 492 */ |
493 private ILineRange adaptLineRangeToFolding(ILineRange lineRange, int line) { | 493 private ILineRange adaptLineRangeToFolding(ILineRange lineRange, int line) { |
494 | 494 |
495 if (fSourceViewer instanceof ITextViewerExtension5) { | 495 if ( cast(ITextViewerExtension5)fSourceViewer ) { |
496 ITextViewerExtension5 extension= cast(ITextViewerExtension5) fSourceViewer; | 496 ITextViewerExtension5 extension= cast(ITextViewerExtension5) fSourceViewer; |
497 | 497 |
498 try { | 498 try { |
499 IRegion region= convertToRegion(lineRange); | 499 IRegion region= convertToRegion(lineRange); |
500 IRegion[] coverage= extension.getCoveredModelRanges(region); | 500 IRegion[] coverage= extension.getCoveredModelRanges(region); |
640 */ | 640 */ |
641 private IAnnotationHover getHover(MouseEvent event) { | 641 private IAnnotationHover getHover(MouseEvent event) { |
642 if (event is null || event.getSource() is null) | 642 if (event is null || event.getSource() is null) |
643 return fAnnotationHover; | 643 return fAnnotationHover; |
644 | 644 |
645 if (fVerticalRulerInfo instanceof CompositeRuler) { | 645 if ( cast(CompositeRuler)fVerticalRulerInfo ) { |
646 CompositeRuler comp= cast(CompositeRuler) fVerticalRulerInfo; | 646 CompositeRuler comp= cast(CompositeRuler) fVerticalRulerInfo; |
647 for (Iterator it= comp.getDecoratorIterator(); it.hasNext();) { | 647 for (Iterator it= comp.getDecoratorIterator(); it.hasNext();) { |
648 Object o= it.next(); | 648 Object o= it.next(); |
649 if (o instanceof IVerticalRulerInfoExtension && o instanceof IVerticalRulerInfo) { | 649 if (o instanceof IVerticalRulerInfoExtension && o instanceof IVerticalRulerInfo) { |
650 if ((cast(IVerticalRulerInfo) o).getControl() is event.getSource()) { | 650 if ((cast(IVerticalRulerInfo) o).getControl() is event.getSource()) { |
675 * @param line the absolute line number | 675 * @param line the absolute line number |
676 * @return the line number relative to the viewer's visible region | 676 * @return the line number relative to the viewer's visible region |
677 * @throws BadLocationException if <code>line</code> is not valid in the viewer's document | 677 * @throws BadLocationException if <code>line</code> is not valid in the viewer's document |
678 */ | 678 */ |
679 private int getWidgetLineNumber(int line) { | 679 private int getWidgetLineNumber(int line) { |
680 if (fSourceViewer instanceof ITextViewerExtension5) { | 680 if ( cast(ITextViewerExtension5)fSourceViewer ) { |
681 ITextViewerExtension5 extension= cast(ITextViewerExtension5) fSourceViewer; | 681 ITextViewerExtension5 extension= cast(ITextViewerExtension5) fSourceViewer; |
682 return extension.modelLine2WidgetLine(line); | 682 return extension.modelLine2WidgetLine(line); |
683 } | 683 } |
684 | 684 |
685 IRegion region= fSourceViewer.getVisibleRegion(); | 685 IRegion region= fSourceViewer.getVisibleRegion(); |
764 protected Point computeLocation(Rectangle subjectArea, Point controlSize, Anchor anchor) { | 764 protected Point computeLocation(Rectangle subjectArea, Point controlSize, Anchor anchor) { |
765 MouseEvent event= getHoverEvent(); | 765 MouseEvent event= getHoverEvent(); |
766 IAnnotationHover hover= getHover(event); | 766 IAnnotationHover hover= getHover(event); |
767 | 767 |
768 bool allowMouseExit= false; | 768 bool allowMouseExit= false; |
769 if (hover instanceof IAnnotationHoverExtension) { | 769 if ( cast(IAnnotationHoverExtension)hover ) { |
770 IAnnotationHoverExtension extension= cast(IAnnotationHoverExtension) hover; | 770 IAnnotationHoverExtension extension= cast(IAnnotationHoverExtension) hover; |
771 allowMouseExit= extension.canHandleMouseCursor(); | 771 allowMouseExit= extension.canHandleMouseCursor(); |
772 } | 772 } |
773 bool hideOnMouseWheel= true; | 773 bool hideOnMouseWheel= true; |
774 if (hover instanceof IAnnotationHoverExtension2) { | 774 if ( cast(IAnnotationHoverExtension2)hover ) { |
775 IAnnotationHoverExtension2 extension= cast(IAnnotationHoverExtension2) hover; | 775 IAnnotationHoverExtension2 extension= cast(IAnnotationHoverExtension2) hover; |
776 hideOnMouseWheel= !extension.canHandleMouseWheel(); | 776 hideOnMouseWheel= !extension.canHandleMouseWheel(); |
777 } | 777 } |
778 fHideOnMouseWheel= hideOnMouseWheel; | 778 fHideOnMouseWheel= hideOnMouseWheel; |
779 | 779 |