blob: 4225f698d0333a5487008d0ef8369d2296e82b21 [file] [log] [blame]
<!DOCTYPE doctype PUBLIC "-//w3c//dtd html 4.0 transitional//en">
<html>
<head>
<meta http-equiv="Content-Type"
content="text/html; charset=iso-8859-1">
<meta name="Author" content="IBM">
<title>JDT UI Breaking API changes</title>
<link rel="stylesheet" href="http://dev.eclipse.org/default_style.css"
type="text/css">
</head>
<body style="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);">
<font color="#8080ff" size="-2">java development tooling ui</font>
<p>This document lists the breaking API changes that occurred between
R3.3 and R3.4 and
how to migrate from the R3.3 API to the R3.4 API.
</p>
<table border="0" cellpadding="2" cellspacing="5" width="100%" summary="Breaking API changes">
<tbody>
<tr>
<td align="left" width="72%"> <font size="+3"><b>jdt ui -
Breaking API changes from R3.3 to R3.4</b></font> <br>
</td>
</tr>
<tr>
<td>
None
</td>
</tr>
</tbody>
</table>
<p> </p>
<table border="0" cellpadding="2" cellspacing="5" width="100%" summary="Non-breaking API changes">
<tbody>
<tr>
<td align="left" width="72%"> <font size="+3"><b>jdt ui -
Non-breaking API changes from R3.3 to R3.4</b></font> <br>
</td>
</tr>
<tr>
<td>
Added API <code>org.eclipse.jdt.ui.actions.OpenNewPackageWizardAction.setConfiguredWizardPage(NewPackageWizardPage)</code>.
</td>
</tr>
<tr><td><hr></td></tr>
<tr>
<td>
Added constants for new refactorings:
<br>
Added to <code>org.eclipse.jdt.ui.actions.IJavaEditorActionDefinitionIds</code>:
<ul>
<li>INTRODUCE_PARAMETER_OBJECT</li>
<li>EXTRACT_CLASS</li>
</ul>
Added to <code>org.eclipse.jdt.ui.actions.JdtActionConstants</code>:
<ul>
<li>INTRODUCE_PARAMETER_OBJECT</li>
<li>EXTRACT_CLASS</li>
</ul>
</tr>
<tr><td><hr></td></tr>
<tr>
<td>
Constants to <code>org.eclipse.jdt.ui.PreferenceConstants</code>:
<ul>
<li>SPELLING_IGNORE_JAVA_STRINGS</li>
<li>SPELLING_PROBLEMS_THRESHOLD</li>
</ul>
</tr>
<tr><td><hr></td></tr>
<tr>
<td>
Added API to <code>org.eclipse.jdt.ui.PreferenceConstants</code>:
<ul>
<li>getExcludedCompletionProposalCategories()</li>
<li>setExcludedCompletionProposalCategories(..)</li>
</ul>
</tr>
<tr><td><hr></td></tr>
<tr>
<td>
Added API <code>org.eclipse.jdt.ui.JavaUI.getEditorInputTypeRoot(IEditorInput)</code></td>
</tr>
<tr><td><hr></td></tr>
<tr>
<td>
<code>org.eclipse.jdt.ui.SharedASTProvider</code> gives access to the AST used by the active
Java editor
<ul>
<li>SharedASTProvider.getAST(ITypeRoot, SharedASTProvider.WAIT_FLAG, IProgressMonitor)</li>
</ul>
</td>
</tr>
<tr><td><hr></td></tr>
<tr>
<td>
New extension point <code>javadocExportWizardPage</code> allows to add pages to the Javadoc export wizard
<ul>
<li>JavadocExportWizardPage is to be extended by contributors</li>
</ul>
</td>
</tr>
<tr><td><hr></td></tr>
<tr>
<td>
Both new Java project wizard pages are now API. Clients
can reuse or modify the pages for their own New Java project wizards.
<ul>
<li>NewJavaProjectWizardPageOne (<code>org.eclipse.jdt.ui.wizards</code>)</li>
<li>NewJavaProjectWizardPageTwo (<code>org.eclipse.jdt.ui.wizards</code>)</li>
<li>OpenNewJavaProjectWizardAction.setConfiguredWizardPages(NewJavaProjectWizardPageOne, NewJavaProjectWizardPageTwo) (<code>org.eclipse.jdt.ui.actions</code>)
</ul>
</td>
</tr>
<tr><td><hr></td></tr>
<tr>
<td>
New extension point <code>classpathFixProcessors</code> allows to add functionality to fix a project class path when a type can not be resolved. For example
PDE can add a plug-in dependency.
<ul>
<li>ClasspathFixProcessor is to be extended by contributors</li>
</ul>
</td>
</tr>
<tr><td><hr></td></tr>
<tr>
<td>
Added API for the JAR packager:
<ul>
<li>Added <code>org.eclipse.jdt.ui.jarpackager.IJarBuilder</code></li>
<li>Added methods to set and get jar builder in <code>org.eclipse.jdt.ui.jarpackager.JarPackageData</code></li>
<li>Added factories to create jar builders in <code>org.eclipse.jdt.ui.jarpackager.JarPackageData</code></li>
<li>Added methods to set and get launch configuration name in <code>org.eclipse.jdt.ui.jarpackager.JarPackageData</code></li>
<li>Added method <code>org.eclipse.jdt.ui.jarpackager.JarWriter3.addEntry(JarEntry, InputStream)</code></li>
</ul>
</td>
</tr>
<tr><td><hr></td></tr>
<tr>
<td>
All occurrence actions available in for find occurrence. New actions and constants.
<ul>
<li>FindBreakContinueTargetOccurrencesAction</li>
<li>FindMethodExitOccurrencesAction</li>
<li>IJavaEditorActionDefinitionIds: SEARCH_METHOD_EXIT_OCCURRENCES, SEARCH_BREAK_CONTINUE_TARGET_OCCURRENCES</li>
<li>JdtActionConstants: FIND_METHOD_EXIT_OCCURRENCES, FIND_BREAK_CONTINUE_TARGET_OCCURRENCES</li>
</ul>
</td>
</tr>
<tr><td><hr></td></tr>
<tr>
<td>
Support for external class folder selection:
<ul>
<li>BuildPathDialogAccess.chooseExternalJAREntries(Shell)</li>
<li>BuildPathDialogAccess.configureExternalClassFolderEntries(Shell, IPath)</li>
</ul>
</td>
</tr>
<tr><td><hr></td></tr>
<tr>
<td>
Support for styled text labels in <code>JavaElementLabels</code>:
<ul>
<li><code>COLORIZE</code>: Constant to signal that colors should be applied to labels</li>
<li><code>getStyledTextLabel(element, flags)</code>: Construct a styled text label for the given element</li>
<li><code>getStyledElementLabel(..)</code>: Construct a styled text label for the given Java element</li>
<li><code>getXYLabel(..)</code>: Construct a styled text label for the given tytpe, method, field ...</li>
</ul>
</td>
</tr>
<tr><td><hr></td></tr>
<tr>
<td>
Support for styled text labels in <code>JavaElementLabelProvider</code>:
<ul>
<li><code>JavaElementLabelProvider</code>now implements IStyledLabelProvider</li>
</ul>
</td>
</tr>
<tr><td><hr></td></tr>
<tr>
<td>
Support for styled text labels in <code>org.eclipse.jdt.ui.text.java.CompletionProposalLabelProvider</code>:
<ul>
<li><code>createStyledLabel(CompletionProposal)</code></li>
</ul>
</td>
</tr>
<tr><td><hr></td></tr>
<tr>
<td>
Made preference page ID for build path preferences pages API:
<ul>
<li><code>org.eclipse.jdt.ui.JavaUI#ID_USER_LIBRARY_PREFERENCE_PAGE</code></li>
<li><code>org.eclipse.jdt.ui.JavaUI#ID_CLASSPATH_VARIABLES_PREFERENCE_PAGE</code></li>
</ul>
</td>
</tr>
<tr><td><hr></td></tr>
<tr>
<td>
Constants added for 'Show Breadcrumbs' action:
<ul>
<li><code>org.eclipse.jdt.ui.actions.IJavaEditorActionDefinitionIds#TOGGLE_BREADCRUMB</code></li>
<li><code>org.eclipse.jdt.ui.actions.IJavaEditorActionDefinitionIds#SHOW_IN_BREADCRUMB</code></li>
</ul>
</td>
</tr>
<tr><td><hr></td></tr>
<tr>
<td>
All action groups now also accept a special selection provider on construction which is used instead of the
page selection provider.
<ul>
<li><code>BuildActionGroup</code></li>
<li><code>CCPActionGroup</code></li>
<li><code>DeclarationsSearchGroup</code></li>
<li><code>GenerateActionGroup</code></li>
<li><code>ImplementorsSearchGroup</code></li>
<li><code>JavaSearchActionGroup</code></li>
<li><code>NavigateActionGroup</code></li>
<li><code>OccurrencesSearchGroup</code></li>
<li><code>OpenEditorActionGroup</code></li>
<li><code>ProjectActionGroup</code></li>
<li><code>ReadReferencesSearchGroup</code></li>
<li><code>RefactorActionGroup</code></li>
<li><code>ReferencesSearchGroup</code></li>
<li><code>WriteReferencesSearchGroup</code></li>
</ul>
</td>
</tr>
</tbody>
</table>
<p>
API changes from 3.2 to 3.3 can be found <a href="./notes/r3.3/apichanges_jdt-ui.html?view=co">here</a>.
</p>
<p> </p>
</body>
</html>