From d3fe28291cd24b814dfee9d12e1339bc0cae896b Mon Sep 17 00:00:00 2001
From: Doug Schaefer <doug.schaefer@windriver.com>
Date: Wed, 17 Nov 2004 19:30:08 +0000
Subject: [PATCH] Initial ISV Doc. Plus some goodies on the new DOM.

---
 doc/org.eclipse.cdt.doc.isv/.cvsignore        |  4 +
 .../cdt.doc.isv doc builder.launch            | 11 +++
 doc/org.eclipse.cdt.doc.isv/.project          | 20 +++++
 doc/org.eclipse.cdt.doc.isv/about.html        | 44 +++++++++++
 doc/org.eclipse.cdt.doc.isv/book.css          |  1 +
 doc/org.eclipse.cdt.doc.isv/build.properties  |  1 +
 doc/org.eclipse.cdt.doc.isv/build.xml         | 77 +++++++++++++++++++
 doc/org.eclipse.cdt.doc.isv/buildDoc.xml      | 58 ++++++++++++++
 doc/org.eclipse.cdt.doc.isv/cdtOptions        | 46 +++++++++++
 doc/org.eclipse.cdt.doc.isv/cdtOptions.txt    | 18 +++++
 .../guide/dom/index.html                      | 24 ++++++
 doc/org.eclipse.cdt.doc.isv/guide/index.html  | 13 ++++
 doc/org.eclipse.cdt.doc.isv/notices.html      | 22 ++++++
 doc/org.eclipse.cdt.doc.isv/plugin.xml        | 23 ++++++
 doc/org.eclipse.cdt.doc.isv/schema.css        | 66 ++++++++++++++++
 doc/org.eclipse.cdt.doc.isv/toc.xml           | 17 ++++
 doc/org.eclipse.cdt.doc.isv/topics_Guide.xml  |  9 +++
 .../topics_Reference.xml                      | 22 ++++++
 18 files changed, 476 insertions(+)
 create mode 100644 doc/org.eclipse.cdt.doc.isv/.cvsignore
 create mode 100644 doc/org.eclipse.cdt.doc.isv/.externalToolBuilders/cdt.doc.isv doc builder.launch
 create mode 100644 doc/org.eclipse.cdt.doc.isv/about.html
 create mode 100644 doc/org.eclipse.cdt.doc.isv/book.css
 create mode 100644 doc/org.eclipse.cdt.doc.isv/build.properties
 create mode 100644 doc/org.eclipse.cdt.doc.isv/build.xml
 create mode 100644 doc/org.eclipse.cdt.doc.isv/buildDoc.xml
 create mode 100644 doc/org.eclipse.cdt.doc.isv/cdtOptions
 create mode 100644 doc/org.eclipse.cdt.doc.isv/cdtOptions.txt
 create mode 100644 doc/org.eclipse.cdt.doc.isv/guide/dom/index.html
 create mode 100644 doc/org.eclipse.cdt.doc.isv/guide/index.html
 create mode 100644 doc/org.eclipse.cdt.doc.isv/notices.html
 create mode 100644 doc/org.eclipse.cdt.doc.isv/plugin.xml
 create mode 100644 doc/org.eclipse.cdt.doc.isv/schema.css
 create mode 100644 doc/org.eclipse.cdt.doc.isv/toc.xml
 create mode 100644 doc/org.eclipse.cdt.doc.isv/topics_Guide.xml
 create mode 100644 doc/org.eclipse.cdt.doc.isv/topics_Reference.xml

diff --git a/doc/org.eclipse.cdt.doc.isv/.cvsignore b/doc/org.eclipse.cdt.doc.isv/.cvsignore
new file mode 100644
index 00000000000..2df69267f34
--- /dev/null
+++ b/doc/org.eclipse.cdt.doc.isv/.cvsignore
@@ -0,0 +1,4 @@
+cdtconvert.txt
+doc.bin.log
+doc.zip
+reference
diff --git a/doc/org.eclipse.cdt.doc.isv/.externalToolBuilders/cdt.doc.isv doc builder.launch b/doc/org.eclipse.cdt.doc.isv/.externalToolBuilders/cdt.doc.isv doc builder.launch
new file mode 100644
index 00000000000..173126b076a
--- /dev/null
+++ b/doc/org.eclipse.cdt.doc.isv/.externalToolBuilders/cdt.doc.isv doc builder.launch	
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<launchConfiguration type="org.eclipse.ant.AntBuilderLaunchConfigurationType">
+<booleanAttribute key="org.eclipse.debug.ui.ATTR_LAUNCH_IN_BACKGROUND" value="false"/>
+<booleanAttribute key="org.eclipse.jdt.launching.DEFAULT_CLASSPATH" value="true"/>
+<stringAttribute key="org.eclipse.ui.externaltools.ATTR_RUN_BUILD_KINDS" value="full,incremental,"/>
+<stringAttribute key="org.eclipse.debug.core.ATTR_REFRESH_SCOPE" value="${project}"/>
+<stringAttribute key="org.eclipse.ui.externaltools.ATTR_WORKING_DIRECTORY" value="${workspace_loc:/org.eclipse.cdt.doc.isv}"/>
+<stringAttribute key="org.eclipse.ui.externaltools.ATTR_LOCATION" value="${workspace_loc:/org.eclipse.cdt.doc.isv/buildDoc.xml}"/>
+<booleanAttribute key="org.eclipse.debug.core.appendEnvironmentVariables" value="true"/>
+<stringAttribute key="org.eclipse.jdt.launching.CLASSPATH_PROVIDER" value="org.eclipse.ant.ui.AntClasspathProvider"/>
+</launchConfiguration>
diff --git a/doc/org.eclipse.cdt.doc.isv/.project b/doc/org.eclipse.cdt.doc.isv/.project
index 3d7ca9106e0..4b4caffa1a2 100644
--- a/doc/org.eclipse.cdt.doc.isv/.project
+++ b/doc/org.eclipse.cdt.doc.isv/.project
@@ -5,7 +5,27 @@
 	<projects>
 	</projects>
 	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.ui.externaltools.ExternalToolBuilder</name>
+			<arguments>
+				<dictionary>
+					<key>LaunchConfigHandle</key>
+					<value>&lt;project&gt;/.externalToolBuilders/cdt.doc.isv doc builder.launch</value>
+				</dictionary>
+			</arguments>
+		</buildCommand>
 	</buildSpec>
 	<natures>
+		<nature>org.eclipse.pde.PluginNature</nature>
 	</natures>
 </projectDescription>
diff --git a/doc/org.eclipse.cdt.doc.isv/about.html b/doc/org.eclipse.cdt.doc.isv/about.html
new file mode 100644
index 00000000000..b854708c072
--- /dev/null
+++ b/doc/org.eclipse.cdt.doc.isv/about.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
+<html>
+<head>
+  <title>About</title>
+  <meta http-equiv="Content-Type"
+ content="text/html; charset=ISO-8859-1">
+</head>
+<body lang="EN-US">
+<h2>About This Content</h2>
+<p>15 Nov, 2004<br>
+</p>
+<h3>License</h3>
+<p>Eclipse.org makes available all content in this plug-in ("Content").
+Unless otherwise indicated below, the Content is provided to you under
+the terms and conditions of the
+Common Public License Version 1.0 ("CPL"). A copy of the CPL is
+available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>.
+For purposes of the CPL, "Program" will mean the Content.</p>
+<h3>Contributions</h3>
+<p>If this Content is licensed to you under the terms and conditions of
+the CPL, any Contributions, as defined in the CPL, uploaded, submitted,
+or otherwise
+made available to Eclipse.org, members of Eclipse.org and/or the host
+of Eclipse.org web site, by you that relate to such
+Content are provided under the terms and conditions of the CPL and can
+be made available to others under the terms of the CPL.</p>
+<p>If this Content is licensed to you under license terms and
+conditions other than the CPL ("Other License"), any modifications,
+enhancements and/or
+other code and/or documentation ("Modifications") uploaded, submitted,
+or otherwise made available to Eclipse.org, members of Eclipse.org
+and/or the
+host of Eclipse.org, by you that relate to such Content are provided
+under terms and conditions of the Other License and can be made
+available
+to others under the terms of the Other License. In addition, with
+regard to Modifications for which you are the copyright holder, you are
+also
+providing the Modifications under the terms and conditions of the CPL
+and such Modifications can be made available to others under the terms
+of
+the CPL.</p>
+</body>
+</html>
diff --git a/doc/org.eclipse.cdt.doc.isv/book.css b/doc/org.eclipse.cdt.doc.isv/book.css
new file mode 100644
index 00000000000..139eb28a09b
--- /dev/null
+++ b/doc/org.eclipse.cdt.doc.isv/book.css
@@ -0,0 +1 @@
+P.Code {
	display: block;
	text-align: left;
	text-indent: 0.00pt;
	margin-top: 0.000000pt;
	margin-bottom: 0.000000pt;
	margin-right: 0.000000pt;
	margin-left: 15pt;
	font-size: 10.000000pt;
	font-weight: medium;
	font-style: Regular;
	color: #4444CC;
	text-decoration: none;
	vertical-align: baseline;
	text-transform: none;
	font-family: "Courier New";
}
H6.CaptionFigColumn {
	display: block;
	text-align: left;
	text-indent: 0.000000pt;
	margin-top: 3.000000pt;
	margin-bottom: 11.000000pt;
	margin-right: 0.000000pt;
	margin-left: 0.000000pt;
	font-size: 9.000000pt;
	font-weight: medium;
	font-style: Italic;
	color: #000000;
	text-decoration: none;
	vertical-align: baseline;
	text-transform: none;
	font-family: "Arial";
}
P.Note {
	display: block;
	text-align: left;
	text-indent: 0pt;
	margin-top: 19.500000pt;
	margin-bottom: 19.500000pt;
	margin-right: 0.000000pt;
	margin-left: 30pt;
	font-size: 11.000000pt;
	font-weight: medium;
	font-style: Italic;
	color: #000000;
	text-decoration: none;
	vertical-align: baseline;
	text-transform: none;
	font-family: "Arial";
}
EM.UILabel {
	font-weight: Bold;
	font-style: Regular;
	text-decoration: none;
	vertical-align: baseline;
	text-transform: none;
}
EM.CodeName {
	font-weight: Bold;
	font-style: Regular;
	text-decoration: none;
	vertical-align: baseline;
	text-transform: none;
	font-family:"Courier New";
}




/* following font face declarations need to be removed for DBCS */

body, h1, h2, h3, h4, h5, h6, p, table, td, caption, th, ul, ol, dl, li, dd, dt {font-family: Arial, Helvetica, sans-serif; color: #000000}
pre				{ font-family: Courier, monospace}

/* end font face declarations */

/* following font size declarations should be OK for DBCS */
body, h1, h2, h3, h4, h5, h6, p, table, td, caption, th, ul, ol, dl, li, dd, dt {font-size: 10pt; }
pre				{ font-size: 10pt}

/* end font size declarations */

body	     { background: #FFFFFF}
h1           { font-size: 18pt; margin-top: 5; margin-bottom: 1 }	
h2           { font-size: 14pt; margin-top: 25; margin-bottom: 3 }
h3           { font-size: 11pt; margin-top: 20; margin-bottom: 3 }
h4           { font-size: 10pt; margin-top: 20; margin-bottom: 3; font-style: italic }
p            { margin-top: 10px; margin-bottom: 10px }
pre	     { margin-left: 6; font-size: 9pt }
a:link	     { color: #0000FF }
a:hover	     { color: #000080 }
a:visited    { text-decoration: underline }
ul	     { margin-top: 0; margin-bottom: 10 }
li	     { margin-top: 0; margin-bottom: 0 } 
li p	     { margin-top: 0; margin-bottom: 0 } 
ol	     { margin-top: 0; margin-bottom: 10 }
dl	     { margin-top: 0; margin-bottom: 10 }
dt	     { margin-top: 0; margin-bottom: 0; font-weight: bold }
dd	     { margin-top: 0; margin-bottom: 0 }
strong	     { font-weight: bold}
em	     { font-style: italic}
var	     { font-style: italic}
div.revision { border-left-style: solid; border-left-width: thin; 
				   border-left-color: #7B68EE; padding-left:5 }
th	     { font-weight: bold }
\ No newline at end of file
diff --git a/doc/org.eclipse.cdt.doc.isv/build.properties b/doc/org.eclipse.cdt.doc.isv/build.properties
new file mode 100644
index 00000000000..9c86577d768
--- /dev/null
+++ b/doc/org.eclipse.cdt.doc.isv/build.properties
@@ -0,0 +1 @@
+custom = true
diff --git a/doc/org.eclipse.cdt.doc.isv/build.xml b/doc/org.eclipse.cdt.doc.isv/build.xml
new file mode 100644
index 00000000000..6bad45e5dd4
--- /dev/null
+++ b/doc/org.eclipse.cdt.doc.isv/build.xml
@@ -0,0 +1,77 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project name="org.eclipse.cdt.doc.isv" default="build.jars" basedir=".">
+
+	<target name="init">
+		<property name="plugin" value="org.eclipse.cdt.doc.isv"/>
+		<property name="version.suffix" value="_3.0.0"/>
+		<property name="full.name" value="${plugin}${version.suffix}"/>
+		<property name="temp.folder" value="${basedir}/temp.folder"/>
+		<property name="plugin.destination" value="${basedir}"/>
+		<property name="build.result.folder" value="${basedir}"/>
+		<available file="${basedir}/doc.zip" property="doc.zip.present"/>
+	</target>
+
+	<target name="build.update.jar" depends="init">
+		<delete dir="${temp.folder}"/>
+		<mkdir dir="${temp.folder}"/>
+		<antcall target="build.jars"/>
+		<antcall target="gather.bin.parts">
+			<param name="destination.temp.folder" value="${temp.folder}/"/>
+		</antcall>
+		<zip zipfile="${plugin.destination}/${full.name}.jar" basedir="${temp.folder}/${full.name}" filesonly="false"/>
+		<delete dir="${temp.folder}"/>
+	</target>
+
+	<target name="gather.bin.parts" depends="init" if="destination.temp.folder">
+		<antcall target="buildDocZip" />
+		<mkdir dir="${destination.temp.folder}/${full.name}"/>
+		<copy todir="${destination.temp.folder}/${full.name}">
+			<fileset dir="${basedir}" includes="*.properties,*.xml,*.zip,*.html,*.htm,*.gif,*.css" excludes="build.properties,build.xml,buildDoc.xml"/>
+		</copy>
+	</target>
+
+	<target name="buildDocZip" depends="init" unless="doc.zip.present">
+		<ant antfile="buildDoc.xml" />
+	</target>
+
+	<target name="build.jars" depends="init">
+	</target>
+
+	<target name="gather.sources" depends="init" if="destination.temp.folder">
+	</target>
+
+	<target name="build.sources" depends="init">
+	</target>
+
+	<target name="gather.logs" depends="init" if="destination.temp.folder">
+	</target>
+
+	<target name="clean" depends="init">
+		<delete file="${plugin.destination}/${full.name}.jar"/>
+		<delete file="${plugin.destination}/${full.name}.zip"/>
+		<delete dir="${temp.folder}"/>
+	</target>
+
+	<target name="refresh" depends="init" if="eclipse.running">
+		<eclipse.refreshLocal resource="${plugin}" depth="infinite"/>
+	</target>
+
+	<target name="zip.plugin" depends="init">
+		<delete dir="${temp.folder}"/>
+		<mkdir dir="${temp.folder}"/>
+		<antcall target="build.jars"/>
+		<antcall target="build.sources"/>
+		<antcall target="gather.bin.parts">
+			<param name="destination.temp.folder" value="${temp.folder}/"/>
+		</antcall>
+		<antcall target="gather.sources">
+			<param name="destination.temp.folder" value="${temp.folder}/"/>
+		</antcall>
+		<delete>
+			<fileset dir="${temp.folder}" includes="**/*.bin.log"/>
+		</delete>
+		<zip zipfile="${plugin.destination}/${full.name}.zip" basedir="${temp.folder}" filesonly="true"/>
+		<delete dir="${temp.folder}"/>
+	</target>
+
+</project>
\ No newline at end of file
diff --git a/doc/org.eclipse.cdt.doc.isv/buildDoc.xml b/doc/org.eclipse.cdt.doc.isv/buildDoc.xml
new file mode 100644
index 00000000000..f537647aa37
--- /dev/null
+++ b/doc/org.eclipse.cdt.doc.isv/buildDoc.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project name="CDT ISV Doc Build" default="all"  basedir="." >
+
+	<target name="all">
+		<antcall target="convertSchemaToHtml" />
+		<!--antcall target="examplesDocCopy" /-->
+		<antcall target="generateJavadoc" />
+		<antcall target="createDocZip" />
+	</target>
+	
+	<target name="convertSchemaToHtml" if="eclipse.running">
+		<property name="dest" value="reference/extension-points" />
+	    <record name="${basedir}/cdtconvert.txt" action="start"/>
+	    <pde.convertSchemaToHTML manifest="../org.eclipse.cdt.core/plugin.xml" destination="${dest}" />
+	    <record name="${basedir}/cdtconvert.txt" action="stop"/>
+	</target>
+	
+	<target name="examplesDocCopy" >
+		 <copy todir="samples">
+	    	<fileset dir="..">
+	    		<include name="org.eclipse.jdt.ui.examples.projects/doc-html/"/>
+		    </fileset>
+		  </copy>
+	</target>
+	
+	<target name="getJavadocPath">
+		<available file="${java.home}/bin/javadoc.exe" property="javadoc" value="${java.home}/bin/javadoc.exe"/>
+		<available file="${java.home}/bin/javadoc" property="javadoc" value="${java.home}/bin/javadoc" />
+	</target>
+	
+	<target name="generateJavadoc" depends="getJavadocPath" if="javadoc">
+	
+		<condition property="optionsFile" value="cdtOptions">
+		      <os family="unix" />
+	    </condition>
+	    <condition property="optionsFile" value="cdtOptions.txt">
+		      <os family="windows" />
+	    </condition>
+	
+		<replace file="${basedir}/${optionsFile}" token="@rt@" value="${bootclasspath}" />
+	
+		<!--scrub isv plugin directories of any preexisting api doc content-->
+		<delete dir="reference/api"/>
+		<mkdir dir="reference/api"/>
+	
+		<exec dir="." executable="${javadoc}" output="doc.bin.log">
+			<arg line="@${basedir}/${optionsFile} -J-Xmx500M" />
+		</exec>
+	</target>
+	
+	<target name="createDocZip">
+		<zip zipfile="${basedir}/doc.zip"
+			basedir="${basedir}"
+			includes="book.css, cpy.gif, notices.html, about.html, no_help_exists.htm, concepts/**, gettingStarted/**, images/**, reference/**, tasks/**,samples/**,guide/**,questions/**"
+		/>
+	</target>
+
+</project>
diff --git a/doc/org.eclipse.cdt.doc.isv/cdtOptions b/doc/org.eclipse.cdt.doc.isv/cdtOptions
new file mode 100644
index 00000000000..6cf94940079
--- /dev/null
+++ b/doc/org.eclipse.cdt.doc.isv/cdtOptions
@@ -0,0 +1,46 @@
+-charset "iso-8859-1"
+-sourcepath "../org.eclipse.jdt.core/antadapter:../org.eclipse.jdt.core/batch:../org.eclipse.jdt.core/codeassist:../org.eclipse.jdt.core/compiler:../org.eclipse.jdt.core/dom:../org.eclipse.jdt.core/eval:../org.eclipse.jdt.core/formatter:../org.eclipse.jdt.core/model:../org.eclipse.jdt.core/search:../org.eclipse.jdt.debug/model:../org.eclipse.jdt.debug/jdi:../org.eclipse.jdt.debug/eval:../org.eclipse.jdt.debug.ui/ui:../org.eclipse.jdt.junit/src:../org.eclipse.jdt.junit.runtime/src:../org.eclipse.jdt.launching/launching:../org.eclipse.jdt.ui/ui:../org.eclipse.jdt.ui/core refactoring:../org.eclipse.jdt.ui/ui refactoring:../org.eclipse.jdt.ui/core extension:../org.eclipse.ltk.core.refactoring/src:../org.eclipse.ltk.ui.refactoring/src"
+-d reference/api
+-classpath @rt@:../org.apache.ant/lib/ant.jar:../org.eclipse.debug.core/dtcore.jar:../org.eclipse.compare/compare.jar:../org.eclipse.help/help.jar:../org.eclipse.help.ui/helpworkbench.jar:../org.eclipse.core.resources/resources.jar:../org.eclipse.core.runtime/runtime.jar:../org.eclipse.core.filebuffers/filebuffers.jar:../org.eclipse.core.expressions/expressions.jar:../org.eclipse.swt.motif/ws/motif/swt.jar:../org.eclipse.swt.win32/ws/win32/swt.jar:../org.eclipse.ui/ui.jar:../org.eclipse.jdt.debug/jdi.jar:../org.eclipse.debug.ui/dtui.jar:../org.eclipse.search/search.jar:../org.eclipse.jface/jface.jar:../org.eclipse.jface.text/jfacetext.jar:../org.eclipse.text/text.jar:../org.eclipse.ui.editors/editors.jar:../org.eclipse.ui.views/views.jar:../org.eclipse.ui.workbench/workbench.jar:../org.eclipse.ui.workbench.texteditor/texteditor.jar:../org.eclipse.core.variables/variables.jar:../org.eclipse.ui.ide/ide.jar:../org.eclipse.jdt.junit/junitsupport.jar:../org.eclipse.osgi/osgi.jar:../org.eclipse.osgi/core.jar:../org.eclipse.osgi/eclipseAdaptor.jar:../org.eclipse.osgi.services/services.jar:../org.eclipse.osgi.util/util.jar
+-breakiterator
+-use
+-splitIndex
+-windowtitle "Eclipse JDT API Specification"
+-doctitle "Eclipse JDT API Specification"
+-header "<b>Eclipse JDT</b><br>Pre-release 3.1"
+-bottom "Copyright (c) IBM Corp. and others 2000, 2004.  All Rights Reserved."
+-group "Java Development Tools Core Plug-in Packages" "org.eclipse.jdt.core:org.eclipse.jdt.core.*"
+-group "Java Development Tools UI Plug-in Packages" "org.eclipse.jdt.ui:org.eclipse.jdt.ui.*"
+-link http://java.sun.com/j2se/1.4/docs/api
+-linkoffline ./../../../org.eclipse.platform.doc.isv/reference/api ../org.eclipse.platform.doc.isv/reference/api
+-linkoffline ./../../../org.eclipse.platform.doc.isv/reference/osgi ../org.eclipse.platform.doc.isv/reference/osgi
+
+org.eclipse.jdt.core
+org.eclipse.jdt.core.compiler
+org.eclipse.jdt.core.dom
+org.eclipse.jdt.core.dom.rewrite
+org.eclipse.jdt.core.eval
+org.eclipse.jdt.core.formatter
+org.eclipse.jdt.core.jdom
+org.eclipse.jdt.core.util
+org.eclipse.jdt.core.search
+org.eclipse.jdt.debug.core
+org.eclipse.jdt.debug.eval
+org.eclipse.jdt.debug.ui
+org.eclipse.jdt.debug.ui.launchConfigurations
+org.eclipse.jdt.launching
+org.eclipse.jdt.launching.sourcelookup
+org.eclipse.jdt.launching.sourcelookup.containers
+org.eclipse.jdt.ui
+org.eclipse.jdt.ui.actions
+org.eclipse.jdt.ui.jarpackager
+org.eclipse.jdt.ui.refactoring
+org.eclipse.jdt.ui.text
+org.eclipse.jdt.ui.text.folding
+org.eclipse.jdt.ui.text.java
+org.eclipse.jdt.ui.text.java.hover
+org.eclipse.jdt.ui.wizards
+org.eclipse.jdt.junit
+org.eclipse.ltk.core.refactoring
+org.eclipse.ltk.core.refactoring.participants
+org.eclipse.ltk.ui.refactoring
diff --git a/doc/org.eclipse.cdt.doc.isv/cdtOptions.txt b/doc/org.eclipse.cdt.doc.isv/cdtOptions.txt
new file mode 100644
index 00000000000..d57b4882553
--- /dev/null
+++ b/doc/org.eclipse.cdt.doc.isv/cdtOptions.txt
@@ -0,0 +1,18 @@
+-charset "iso-8859-1"
+-sourcepath "../org.eclipse.cdt.core/parser"
+-d reference/api
+-classpath  ${bootclasspath};../org.apache.ant/lib/ant.jar;../org.eclipse.debug.core/dtcore.jar;../org.eclipse.compare/compare.jar;../org.eclipse.help/help.jar;../org.eclipse.help.ui/helpworkbench.jar;../org.eclipse.core.resources/resources.jar;../org.eclipse.core.runtime/runtime.jar;../org.eclipse.core.filebuffers/filebuffers.jar;../org.eclipse.core.expressions/expressions.jar;../org.eclipse.swt.win32/ws/win32/swt.jar;../org.eclipse.swt.motif/ws/motif/swt.jar;../org.eclipse.ui/ui.jar;../org.eclipse.jdt.debug/jdi.jar;../org.eclipse.debug.ui/dtui.jar;../org.eclipse.search/search.jar;../org.eclipse.jface/jface.jar;../org.eclipse.jface.text/jfacetext.jar;../org.eclipse.text/text.jar;../org.eclipse.ui.editors/editors.jar;../org.eclipse.ui.views/views.jar;../org.eclipse.ui.workbench/workbench.jar;../org.eclipse.ui.workbench.texteditor/texteditor.jar;../org.eclipse.core.variables/variables.jar;../org.eclipse.ui.ide/ide.jar;../org.eclipse.jdt.junit/junitsupport.jar;../org.eclipse.osgi/osgi.jar;../org.eclipse.osgi/core.jar;../org.eclipse.osgi/eclipseAdaptor.jar;../org.eclipse.osgi.services/services.jar;../org.eclipse.osgi.util/util.jar
+-breakiterator
+-use
+-splitIndex
+-windowtitle "Eclipse CDT API Specification"
+-doctitle "Eclipse CDT API Specification"
+-header "<b>Eclipse CDT</b><br>Pre-release 3.0"
+-bottom "Copyright (c) IBM Corp. and others 2004.  All Rights Reserved."
+-group "C/C++ Development Tools Core Plug-in Packages" "org.eclipse.cdt.core;org.eclipse.cdt.core.*"
+-link http://java.sun.com/j2se/1.4/docs/api
+
+org.eclipse.cdt.core.dom.ast
+org.eclipse.cdt.core.dom.ast.c
+org.eclipse.cdt.core.dom.ast.c.gcc
+org.eclipse.cdt.core.dom.ast.cpp
diff --git a/doc/org.eclipse.cdt.doc.isv/guide/dom/index.html b/doc/org.eclipse.cdt.doc.isv/guide/dom/index.html
new file mode 100644
index 00000000000..058c6039dc1
--- /dev/null
+++ b/doc/org.eclipse.cdt.doc.isv/guide/dom/index.html
@@ -0,0 +1,24 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+  <link rel="STYLESHEET" href="../../book.css" charset="ISO-8859-1"
+ type="text/css">
+  <title>CDT Programmer's Guide</title>
+</head>
+<body>
+<h1>CDT DOM</h1>
+<p>What is a DOM? Well, let me tell you. The DOM, or Document Object
+Model, is a programmatic way to see the underlying source code in both
+a syntactic and semantic view using an Abstract Syntax Tree (AST) and
+to allow changes in the AST to be reflected back out to the source
+code. Sounds simple enough, but with the complexity of the C and C++
+languages with an intermixing of pre-processor goodness, it certainly
+has it's challenges.<br>
+</p>
+<h2>Syntactic View</h2>
+<h2>Semantic View</h2>
+<h2>Workspace-Wide View</h2>
+<h2>Rewriting</h2>
+<br>
+</body>
+</html>
diff --git a/doc/org.eclipse.cdt.doc.isv/guide/index.html b/doc/org.eclipse.cdt.doc.isv/guide/index.html
new file mode 100644
index 00000000000..25ab4b64fba
--- /dev/null
+++ b/doc/org.eclipse.cdt.doc.isv/guide/index.html
@@ -0,0 +1,13 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+  <link rel="STYLESHEET" href="../book.css" charset="ISO-8859-1"
+ type="text/css">
+  <title>CDT Programmer's Guide</title>
+</head>
+<body>
+<h1>CDT Programmer's Guide</h1>
+<p>Welcome to the wacky world of CDT plug-in programming.<br>
+</p>
+</body>
+</html>
diff --git a/doc/org.eclipse.cdt.doc.isv/notices.html b/doc/org.eclipse.cdt.doc.isv/notices.html
new file mode 100644
index 00000000000..25262ca3842
--- /dev/null
+++ b/doc/org.eclipse.cdt.doc.isv/notices.html
@@ -0,0 +1,22 @@
+<!DOCTYPE html PUBLIC "-//w3c//dtd html 4.0 transitional//en">
+<html>
+<head>
+  <meta http-equiv="Content-Type"
+ content="text/html; charset=iso-8859-1">
+  <link rel="STYLESHEET" href="book.css" charset="ISO-8859-1"
+ type="text/css">
+  <title>Legal Notices</title>
+</head>
+<body>
+<h3>
+<a name="Notices"></a>Notices</h3>
+<p>
+The material in this guide is Copyright (c) IBM Corporation and others
+2004.
+</p>
+<p>
+<a href="about.html">Terms and conditions regarding the use of this
+guide.</a>
+</p>
+</body>
+</html>
diff --git a/doc/org.eclipse.cdt.doc.isv/plugin.xml b/doc/org.eclipse.cdt.doc.isv/plugin.xml
new file mode 100644
index 00000000000..e7d323a766a
--- /dev/null
+++ b/doc/org.eclipse.cdt.doc.isv/plugin.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+<plugin
+   id="org.eclipse.cdt.doc.isv"
+   name="C/C++ Plugin Developer Guide"
+   version="3.0.0">
+   <requires>
+      <import plugin="org.eclipse.help"/>
+   </requires>
+   <extension
+         point="org.eclipse.help.toc">
+      <toc
+            primary="true"
+            file="toc.xml"/>
+      <toc
+            primary="false"
+            file="topics_Guide.xml"/>
+      <toc
+            primary="false"
+            file="topics_Reference.xml"/>
+   </extension>
+
+</plugin>
diff --git a/doc/org.eclipse.cdt.doc.isv/schema.css b/doc/org.eclipse.cdt.doc.isv/schema.css
new file mode 100644
index 00000000000..4efbf267284
--- /dev/null
+++ b/doc/org.eclipse.cdt.doc.isv/schema.css
@@ -0,0 +1,66 @@
+H6.CaptionFigColumn#header {
+	font-size:16px; 
+	display:inline
+}
+
+P.Note#copyright {
+	font-size: smaller; 
+	font-style: normal;
+	color: #336699; 
+	display:inline;
+	margin-top: 3.000000pt;
+	margin-bottom: 11.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 0.000000pt;
+}
+
+P.Code#dtd {
+	color: #800000; 
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 10.000000pt;
+}
+
+P.Code#dtdAttlist {
+	color: #800000; 
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 20.000000pt;
+}
+
+P.Code#tag {
+	color: #000080; 
+	display:inline;
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 0.000000pt;
+}
+
+P.Code#cstring {
+	color: #008000; 
+	display:inline;
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 0.000000pt;	
+}
+
+.ConfigMarkup#elementDesc {
+	color: black;
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 10.000000pt;
+}
+
+.ConfigMarkup#attlistDesc {
+	color: black;
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 32.000000pt;
+}
+
diff --git a/doc/org.eclipse.cdt.doc.isv/toc.xml b/doc/org.eclipse.cdt.doc.isv/toc.xml
new file mode 100644
index 00000000000..19dccb46ef0
--- /dev/null
+++ b/doc/org.eclipse.cdt.doc.isv/toc.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?NLS TYPE="org.eclipse.help.toc"?>
+<!-- ============================================================================= -->
+<!-- Define the top level topics                                                   -->
+<!-- ============================================================================= -->
+<toc label="CDT Plug-in Developer Guide">
+	<topic label="Programmer&apos;s Guide" href="guide/index.html">
+		<link toc="topics_Guide.xml" />
+	</topic>
+	<topic label="Reference">
+		<link toc="topics_Reference.xml" />
+	</topic>
+	<topic label="Examples Guide">
+		<link toc="topics_Samples.xml" />
+	</topic>
+	<topic label="Legal" href="notices.html"/>
+</toc>
diff --git a/doc/org.eclipse.cdt.doc.isv/topics_Guide.xml b/doc/org.eclipse.cdt.doc.isv/topics_Guide.xml
new file mode 100644
index 00000000000..1ca913f1f7e
--- /dev/null
+++ b/doc/org.eclipse.cdt.doc.isv/topics_Guide.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?NLS TYPE="org.eclipse.help.toc"?>
+<!-- ============================================================================= -->
+<!-- Define topics for the main guide                                              -->
+<!-- ============================================================================= -->
+<toc label="Guide">
+	<topic label="CDT DOM" href="guide/dom/index.html">
+	</topic>
+</toc>
diff --git a/doc/org.eclipse.cdt.doc.isv/topics_Reference.xml b/doc/org.eclipse.cdt.doc.isv/topics_Reference.xml
new file mode 100644
index 00000000000..83d05d14130
--- /dev/null
+++ b/doc/org.eclipse.cdt.doc.isv/topics_Reference.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?NLS TYPE="org.eclipse.help.toc"?>
+<!-- ============================================================================= -->
+<!-- Define topics for the references                                              -->
+<!-- ============================================================================= -->
+<toc label="Reference">
+	<topic label="API Reference" href="reference/api/overview-summary.html">
+       <topic label="org.eclipse.cdt.core.dom" href="reference/api/org/eclipse/cdt/core/dom/ast/package-summary.html"/>
+       <topic label="org.eclipse.cdt.core.dom.c" href="reference/api/org/eclipse/cdt/core/dom/ast/c/package-summary.html"/>
+       <topic label="org.eclipse.cdt.core.dom.c.gcc" href="reference/api/org/eclipse/cdt/core/dom/ast/c/gcc/package-summary.html"/>
+       <topic label="org.eclipse.cdt.core.dom.cpp" href="reference/api/org/eclipse/cdt/core/dom/ast/cpp/package-summary.html"/>
+	</topic>
+	<topic label="Extension Points Reference" href="reference/extension-points/index.html">
+         <topic label="org.eclipse.cdt.core.CBuildConsole" href="reference/extension-points/org_eclipse_cdt_core_CBuildConsole.html"/>
+         <topic label="org.eclipse.cdt.core.CFileType" href="reference/extension-points/org_eclipse_cdt_core_CFileType.html"/>
+         <topic label="org.eclipse.cdt.core.CFileTypeAssociation" href="reference/extension-points/org_eclipse_cdt_core_CFileTypeAssociation.html"/>
+         <topic label="org.eclipse.cdt.core.CLanguage" href="reference/extension-points/org_eclipse_cdt_core_CLanguage.html"/>
+         <topic label="org.eclipse.cdt.core.CProject" href="reference/extension-points/org_eclipse_cdt_core_CProject.html"/>
+         <topic label="org.eclipse.cdt.core.PathEntryContainerInitializer" href="reference/extension-points/org_eclipse_cdt_core_PathEntryContainerInitializer.html"/>
+         <topic label="org.eclipse.cdt.core.ProcessList" href="reference/extension-points/org_eclipse_cdt_core_ProcessList.html"/>
+	</topic>
+</toc>