# DocCommentOwner

###### Identifier:

org.eclipse.cdt.ui.DocCommentOwner

###### Since:

5.0

###### Description:

This extension point allows contribution of document comment detection, presentation and editing behaviours to the CDT editor.

Where C and C++ define single and multiline comments, there is no corresponding language level definition of distinguished comments recognized by documentation tools. A list of these is available here: Wikipedia Comparison of Documentation Generators

The customization for single and multi-line comments is handled by two contributed implementations of the same interface

- `org.eclipse.cdt.ui.text.doctools.IDocCommentViewerConfiguration`

The javadoc for this interface describes the individual editor features that can be contributed.

A level of understanding of the eclipse and CDT editor infrastructure is needed in order to contribute to this extension point. A good starting point is to look at the GenericDocTag classes in the package - see the API Information section below.

###### Configuration Markup:

<!ELEMENT extension (owner)>

<!ATTLIST extension

point CDATA #REQUIRED

id CDATA #IMPLIED

name CDATA #IMPLIED>

<!ELEMENT owner EMPTY>

<!ATTLIST owner

id IDREF #REQUIRED

name CDATA #REQUIRED

multiline CDATA #REQUIRED

singleline CDATA #REQUIRED>

- id - a globally unique ID representing this owner.
- name - a human readable name for the CDT UI
- multiline - The comment viewer configuration that should be used for detection, presentation and editing of C/C++ multiline comments.
- singleline - The comment viewer configuration that should be used for detection, presentation and editing of C/C++ singleline comments.

###### Examples:

    <extension
        point="org.eclipse.cdt.ui.DocCommentOwner">
        <owner
            id="org.eclipse.cdt.ui.doxygen"
            name="Doxygen"
            multiline="org.eclipse.cdt.ui.text.doctools.doxygen.DoxygenMultilineConfiguration"
            singleline="org.eclipse.cdt.ui.text.doctools.doxygen.DoxygenSingleConfiguration">
        </owner>
    </extension>

###### API Information:

The javadoc is considered the primary source of information for plug-in implementors. Only a light outline is given here

Key interfaces are:

- org.eclipse.cdt.ui.text.doctools.IDocCommentOwner
- org.eclipse.cdt.ui.text.doctools.IDocCommentViewerConfiguration
- org.eclipse.cdt.ui.text.doctools.IDocCommentOwnershipListener

Key implementations are:

- the implementations in package org.eclipse.cdt.ui.text.doctools.generic

###### Supplied Implementation:

An abstract implementation of some key interfaces is given in the package `org.eclipse.cdt.ui.text.doctools.generic`

Copyright (c) 2008 Symbian Software Systems and others. This program and the accompanying materials are made available under the terms of the Eclipse Public License 2.0 which accompanies this distribution, and is available at https://www.eclipse.org/legal/epl-2.0/ t; t;SPDX-License-Identifier: EPL-2.0