/*
  * @see SourceViewerConfiguration#getDoubleClickStrategy(ISourceViewer, String)
  */
 public ITextDoubleClickStrategy getDoubleClickStrategy(
     ISourceViewer sourceViewer, String contentType) {
   if (IJavaPartitions.JAVA_DOC.equals(contentType))
     return new JavadocDoubleClickStrategy(getConfiguredDocumentPartitioning(sourceViewer));
   if (IJavaPartitions.JAVA_SINGLE_LINE_COMMENT.equals(contentType))
     return new PartitionDoubleClickSelector(
         getConfiguredDocumentPartitioning(sourceViewer), 0, 0);
   if (IJavaPartitions.JAVA_MULTI_LINE_COMMENT.equals(contentType))
     return new PartitionDoubleClickSelector(
         getConfiguredDocumentPartitioning(sourceViewer), 0, 0);
   else if (IJavaPartitions.JAVA_STRING.equals(contentType)
       || IJavaPartitions.JAVA_CHARACTER.equals(contentType))
     return new PartitionDoubleClickSelector(
         getConfiguredDocumentPartitioning(sourceViewer), 1, 1);
   if (fJavaDoubleClickSelector == null) {
     fJavaDoubleClickSelector = new JavaDoubleClickSelector();
     fJavaDoubleClickSelector.setSourceVersion(
         fPreferenceStore.getString(JavaCore.COMPILER_SOURCE));
   }
   return fJavaDoubleClickSelector;
 }
 /*
  * @see org.eclipse.jface.text.source.SourceViewerConfiguration#getAutoEditStrategies(org.eclipse.jface.text.source.ISourceViewer, java.lang.String)
  */
 public IAutoEditStrategy[] getAutoEditStrategies(ISourceViewer sourceViewer, String contentType) {
   String partitioning = getConfiguredDocumentPartitioning(sourceViewer);
   if (IJavaPartitions.JAVA_DOC.equals(contentType)
       || IJavaPartitions.JAVA_MULTI_LINE_COMMENT.equals(contentType))
     return new IAutoEditStrategy[] {new JavaDocAutoIndentStrategy(partitioning)};
   else if (IJavaPartitions.JAVA_STRING.equals(contentType))
     return new IAutoEditStrategy[] {
       new SmartSemicolonAutoEditStrategy(partitioning),
       new JavaStringAutoIndentStrategy(partitioning)
     };
   else if (IJavaPartitions.JAVA_CHARACTER.equals(contentType)
       || IDocument.DEFAULT_CONTENT_TYPE.equals(contentType))
     return new IAutoEditStrategy[] {
       new SmartSemicolonAutoEditStrategy(partitioning),
       new JavaAutoIndentStrategy(partitioning, getProject(), sourceViewer)
     };
   else
     return new IAutoEditStrategy[] {
       new JavaAutoIndentStrategy(partitioning, getProject(), sourceViewer)
     };
 }