blob: cd0f3964211841479cd0428afbe4540694c32e1e [file] [log] [blame]
<!--
DO NOT EDIT THIS FILE WITH HTML EDITORS
-->
<!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="GENERATOR" content="Mozilla/4.76 [en] (Windows NT 5.0; U) [Netscape]">
<title>Eclipse Platform Build Notes - Text</title>
</head>
<body>
<h1>
Eclipse Platform Build Notes<br>
Text</h1>
To see which bugs have been addressed in one of the builds simply open the <a href="http://bugs.eclipse.org/bugs/query.cgi?short_desc_type=allwordssubstr&amp;product=Platform&amp;component=Text&amp;long_desc_type=allwordssubstr&amp;long_desc=&amp;bug_file_loc_type=allwordssubstr&amp;bug_file_loc=&amp;keywords_type=allwords&amp;keywords=&amp;emailtype1=substring&amp;email1=&amp;emailtype2=substring&amp;email2=&amp;bugidtype=include&amp;bug_id=&amp;votes=&amp;changedin=&amp;chfieldfrom=&amp;chfieldto=Now&amp;chfieldvalue=&amp;namedcmd=Assigned&amp;newqueryname=&amp;field0-0-0=noop&amp;type0-0-0=noop&amp;value0-0-0=">Platform-Text bugzilla query page</a>, select status, resolution and the time frame.
<br>
<br>
<br>
========== Eclipse Build Input February 10th 2004 ==========<br>
<pre>
- ComboContentAssistSubjectAdapter and TextContentAssistSubjectAdapter allow to
show cue with tooltip.
- Annotations drawing in text may now be configured. Current drawing styles are boxes, underline,
squiggly lines, and an i-beam.
We might introduce an extension point for specifying custom drawing strategies.
- A roll-over annotation hover has been introduced to cope with many annotations drawn over each
other in the vertical ruler. Enable for the Java editor using the roll over preference under
Java->Work in Progress.
</pre>
<br>
========== Eclipse Build Input January 27th 2004 ==========<br>
<pre>
- Improved performance when installing contributed actions.
- The displayed tab width in the text editor can now be configured,
see Workbench > Editors > Text Editor preferences.
- Enhanced content assistant to be usable in Text and Combo,
see ComboContentAssistSubjectAdapter and TextContentAssistSubjectAdapter.
- The DefaultAnnotation and its usages which was introduced in 3.0 to be
create non-marker based annotations has been replaced by new API in Annotation.
</pre>
<br>
========== Eclipse Build Input January 20th 2004 ==========<br>
<pre>
- Improved annotation painting: adapted painter to fine grained annotation model delta.
</pre>
<br>
========== Eclipse Build Input December 18th 2003 ==========<br>
<pre>
This build contains several changes and additions to the annotation mechanism.
1) Annotation Types
There is now the explicit notion of an annotation type. See Annotation.getType() and Annotation.setType().
The type of an annotation can change over it's lifetime. A new extension point has been added for the declaration
of annotation types: "org.eclipse.ui.editors.annotationTypes". An annotation type has a name and can be declared
as being a subtype of another declared annotation type. An annotation type declaration may also use the attributes
"markerType" and "markerSeverity" in order to specify that markers of a given type and a given severity should be
represented in text editors as annotations of a particular annotation type. The attributes "markerType" and
"markerSeverity" in the "org.eclipse.ui.editors.markerAnnotationSpecification" should no longer be used. Marker
annotation specifications are thus becoming independent from markers and the name thus misleading. However, the
name is kept in order to ensure backward compatibility.
Instances of subclasses of AbstractMarkerAnnotationModel automatically detect and set the correct annotation
types for annotations they create from markers. In order to programmatically retrieve the annotation type for
a given marker or a given pair of markerType and markerSeverity use org.eclipse.ui.texteditor.AnnotationTypeLookup.
Access to the hierarchy of annotation types is provided by AnnotationTypeHierarchy. For a given annotation type
name you can get an AnnotationType that provides information about the chain of super types and a method to check
whether an annotation type given as name is a subtype. You can also retrieve the information from
IAnnotationAccessExtension. DefaultMarkerAnnotationAccess implements this interface.
2) MarkerAnnotationSpecification
The annotation type is the key with which to find the associated marker annotation specification. As annotation
types can extend other annotation types, there is an implicit relation between marker annotation specifications
as well. Therefore a marker annotation specification for a given annotation type is completed by the marker
annotation specifications given for the super types of the given annotation type. Therefore, marker annotation
specification do not have to be complete as this was required before. Marker annotation specifications are
reified by AnnotationPreferences. By using org.eclipse.ui.texteditor.AnnotationPreferenceLookup, you can retrieve
an annotation preference for a given annotation type that transparently performs the completion of the preference
along the annotation super type chain.
3) Painting annotation
Marker annotation specification has been extended with three addition attributed in order to allow the definition
of custom appearances of a given annotation type in the vertical ruler. These attributes are: "icon", "symbolicIcon",
and "annotationImageProvider". The value for "icon" is the path to a file containing the icon image. The value of
"symbolicIcon" can be one of "error", "warning", "info", "task", "bookmark". The attribute "symbolicIcon" is used
to tell the platform that annotation should be depicted with the same images that are used by the platform to
present errors, warnings, infos, tasks, and bookmarks respectively. The value of "annotationImageProvider" is a
class implementing org.eclipse.ui.texteditor.IAnnotationImageProvider that allows for a full custom annotation
presentation.
The vertical ruler uses it's associated IAnnotationAccess/IAnnotationAccessExtension to draw annotations.
The vertical ruler does not call Annotation.paint any longer. In general, Annotations are no longer supposed
to draw themselves. The "paint" and "getLayer" methods have been deprecated in order to make annotation eventually
UI independent. DefaultMarkerAnnotationAccess serves as default implementation of IAnnotationAccess/IAnnotationAccessExtension.
DefaultMarkerAnnotationAccess implements the following strategy for painting annotations: If an annotation implements
IAnnotationPresentation, IAnnotationPresentation.paint is called. If not, the annotation image provider is looked up
in the annotation preference. The annotation image provider is only available if specified and if the plug-in defining
the enclosing marker annotation specification has already been loaded. If there is an annotation image provider, the
call is forwarded to it. If not, the specified "icon" is looked up. "symbolicIcon" is used as the final fallback. For
drawing annotations, the annotation presentation layer is relevant. DefaultMarkerAnnotationAccess looks up the presentation
layer using the following strategy: If the annotation preference specifies a presentation layer, the specified layer is
used. If there is no layer and the annotation implements IAnnotationPresentation, IAnnotationPresentation.getLayer is used
otherwise the default presentation layer (which is 0) is returned.
4) Additions to Annotation
Annotations additionally support: a message, a flag to indicate whether the annotation is marked as deleted, a
flag to indicate whether the annotation is persistent or temporary.
5) Migration
The following annotation types are declared by the org.eclipse.ui.editors plug-in:
&ltextension point="org.eclipse.ui.editors.annotationTypes"&gt
&lttype
name="org.eclipse.ui.workbench.texteditor.error"
markerType="org.eclipse.core.resources.problemmarker"
markerSeverity="2"&gt
&lt/type&gt
&lttype
name="org.eclipse.ui.workbench.texteditor.warning"
markerType="org.eclipse.core.resources.problemmarker"
markerSeverity="1"&gt
&lt/type&gt
&lttype
name="org.eclipse.ui.workbench.texteditor.info"
markerType="org.eclipse.core.resources.problemmarker"
markerSeverity="0"&gt
&lt/type&gt
&lttype
name="org.eclipse.ui.workbench.texteditor.task"
markerType="org.eclipse.core.resources.taskmarker"&gt
&lt/type&gt
&lttype
name="org.eclipse.ui.workbench.texteditor.bookmark"
markerType="org.eclipse.core.resources.bookmark"&gt
&lt/type&gt
&lt/extension&gt
The defined markerAnnotationSpecification extension no longer provide "markerType" and "markerSeverity"
attributes. They define the "symbolicIcon" attribute with the according value. Thus, MarkerAnnotation.paint
and MarkerAnnotation.getLayer are not called any longer, i.e. overriding these methods does not have
any effect.
</pre>
<br>
========== Eclipse Build Input November 11th 2003 ==========<br>
<pre>
- Finished annotation background painter
- Added new concept of ITextPresentationListener which should be used by clients
to apply a presentation style (e.g. color, bold) to the text. Clients using
the StyledText.*styleRange* API methods should convert to this new API. A
ITextPresentationListener can be added and removed from a text viewer (see
ITextViewerExtension4)
</pre>
<br>
<br>
========== Eclipse Build Input October 28th 2003 ==========<br>
<pre>
- Vertical ruler annotations can be disabled via editor's Annotation preference
page.
- Added support to set background for annotations
- annotation background painter <work in progress>
- key/value attributes to "org.eclipse.ui.workbench.texteditor.markerAnnotationSpecification" extension-point
- updated annotation preference page to show this attribute
- enabled this feature for Search annotations
</pre>
<br>
<br>
========== Eclipse Build Input October 21th 2003 ==========<br>
<pre>
- Incremental find has its own editor status line field (findField)
- IStatusField has been extended (IStatusFieldExtension) with the following concepts:
- set error text and image
- set tool tip
- control visibility
</pre>
<br>
<br>
========== Eclipse Build Input October 7th 2003 ==========<br>
<pre>
- Find/Replace dialog now offers content assist for regular expression search and replace
- Changes found by Quickdiff are now ordinary annotations. I.e. they can serve as
navigation target, can be shown in the overview ruler, and in the text. Their presentation
colors can also be configured.
- "Open External File" can be found in the Files menu. It opens files which are not workspace files
with the associated editor or the default text editor if no editor is specified. Text editors support
external files.
</pre>
<br>
<br>
========== Eclipse Build Input September 30th 2003 ==========<br>
<pre>
- Find/Replace dialog now supports regular expression search and replace
- Quick Diff annotations can now be displayed on the overview ruler and support Go to Next / Previous
</pre>
<br>
<br>
========== Eclipse Build Input August 26th 2003 ==========<br>
<pre>
- Improved overview ruler:
- can now handle annotations on same layer
- added tool tip text to overview ruler header
- tool tip text for disabled annotation no longer appears
- click on overview ruler item respects layer
- clicking on same overview ruler item jumps to next annotation
- several bugs fixed
</pre>
<br>
<br>
========== Eclipse Build Input August 19th 2003 ==========<br>
<pre>
- added concept of reconcile step: a reconcile step is one of n steps of a
reconcile strategy that consists of several steps. See the Java Family example
to see it in action.
- added concept of translator: a translator translates a given file into another
language. The translator is also responsible to provide line mapping information
for the translation and to compute which offset in an original line corresponds
to a given offset in a target line. See the Java Family example to see it in action.
- TextEditor extends now ExtendedTextEditor, an additional layer combining features
used in rich editors, such as the annotation, line number and overview rulers,
the print margin, current text highlighting, and quick diff.
- several bugs fixed
</pre>
<br>
<br>
========== Eclipse Build Input August 12th 2003 ==========<br>
<pre>
- the marker annotation specification can now be used to specify if the annotation
should allow to be a navigation target. For details read the documentation of
org.eclipse.workbench.texteditor.markerAnnotationSpecification extension point.
- several bugs fixed
</pre>
<br>
<br>
========== Eclipse Build Input July 29th 2003 ==========<br>
<pre>
- several bugs fixed
</pre>
<br>
<br>
========== Eclipse Build Input July 22th 2003 ==========<br>
<pre>
- several bugs fixed
</pre>
<br>
<br>
========== Eclipse Build Input July 16th 2003 ==========<br>
<!-- Add what's new below and end each line with br tag -->
<pre>
- several bugs fixed
- Improvements and framework changes for the light weight change indication. Change indication
can now happen in the line number ruler or a dedicated change ruler column.
</pre>
<br>
<br>
========== Eclipse Build Input July 8th 2003 ==========<br>
<!-- Add what's new below and end each line with br tag -->
<pre>
- several bugs fixed
- The TextViewer sends out time-out based selection changed events for
caret position changes for clients registered as post selection changed listeners.
- The default text editor supports a light weight change indicator integrated with the line number ruler.
Can be globally enabled on the Text Editor preference page. Can be enabled/disabled for the current editor
in the editor's context menu or using the short cut "Ctrl+Shift+Q".
- Text frameworks have been extended to support light weight diffing.
</pre>
<br>
<br>
========== Eclipse Build Input June 17th 2003 ==========<br>
<!-- Add what's new below and end each line with br tag -->
<pre>
- several bugs fixed
- The TextViewer sends out time-out based selection changed events for caret position changes.
- added extension interfaces which allow completion proposals to specify their custom
information control creator
</pre>
<br>
<br>
========== Eclipse Build Input June 4th 2003 ==========<br>
<!-- Add what's new below and end each line with br tag -->
<pre>
- several bugs fixed
- The TextViewer sends out time-out based selection changed events for caret position changes.
- added extension interfaces which allow text hovers and information providers to specify their custom
information control creator
- text editors support three typing modes: Overwrite, Insert, Smart Insert
- typing modes are toggled by INS in the default key binding
- each mode is represented with its own caret
- modes can be disabled per editor, i.e. when toggling insert modes, disabled modes will not be selected
- status line contribution items can now be associated with an action that is called when double clicking the status item
</pre>
<br>
<br>
========== Eclipse Build Input May 13th 2003 ==========<br>
<!-- Add what's new below and end each line with br tag -->
<pre>
- several bugs fixed
- released new features:
- Insert new line above the caret line (ui name: "Smart Enter (Inverse)", default key binding: Ctrl+Shift+Enter)
- Insert new line after the caret line (ui name: "Smart Enter", default key binding: Shift+Enter)
- Move selected lines upwards (ui name: "Move Lines Up", default key binding: Alt+Arrow_UP)
- Move selected lines down (ui name: "Move Lines Down", default key binding: Alt+Arrow_Down)
- Change case of selection to upper case (ui name: "To Upper Case", default key binding: Ctrl+Shift+X)
- Change case of selection to lower case (ui name: "To Lower Case", default key binding: Ctrl+Shift+Y)
</pre>
<br>
<br>
========== Eclipse Build Input April 29th 2003 ==========<br>
<!-- Add what's new below and end each line with br tag -->
<pre>
- several bugs fixed
</pre>
<br>
<br>
========== Eclipse Build Input April 22nd 2003 ==========<br>
<!-- Add what's new below and end each line with br tag -->
<pre>
- several bugs fixed
</pre>
<br>
<br>
</body></html>