blob: e0ec47d543f6d9ba9b084b44974ce8e047e9afb6 [file] [log] [blame]
<html>
<!--
NO NO NO NO NO!
==============> DO NOT EDIT ME! <==============
AUTOMATICALLY GENERATED FROM APICHANGES.XML, DO NOT EDIT
SEE CHANGEME/apichanges.xml
-->
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Change History for the Editor Settings Storage API</title>
<link rel="stylesheet" href="prose.css" type="text/css">
</head>
<body>
<p class="overviewlink">
<a href="overview-summary.html" shape="rect">Overview</a>
</p>
<h1>Introduction</h1>
<p>This document lists changes made to the <a href="" shape="rect">Editor Settings
Storage API</a>.</p>
<!-- The actual lists of changes, as summaries and details: -->
<hr>
<h1>
<a name="list-all-apis">Index of APIs</a>
</h1>
<ul>
<li>
<a href="#uncategorized-api">Uncategorized changes</a>
</li>
</ul>
<h1>
<a name="incompat-by-date">Incompatible changes by date</a>
</h1>
<p>Fuller descriptions of all changes can be found below (follow links).</p>
<p>Not all deprecations are listed here, assuming that the deprecated
APIs continue to essentially work. For a full deprecation list, please
consult the
<a href="deprecated-list.html">Javadoc</a>.</p>
<ul>
<li>(Feb 14 '08) <a href="#version-1.17">SPI refinements</a>
</li>
<li>(Nov 28 '07) <a href="#version-1.12">Moving code templates storage to editor/codetemplates</a>
</li>
</ul>
<h1>
<a name="all-by-date">All changes by date</a>
</h1>
<ul>
<li>(Mar 6 '15) <a href="#version-1.49">Module split</a>
</li>
<li>(Sep 17 '13) <a href="#issue-231735">Implement profiles for annotations coloring</a>
</li>
<li>(Feb 21 '13) <a href="#issue-226111">Detect preferences override and support inheritance</a>
</li>
<li>(Jul 16 '09) <a href="#version-1.21">EditorSettings.PROP_MIME_TYPES</a>
</li>
<li>(Feb 14 '08) <a href="#version-1.17">SPI refinements</a>
</li>
<li>(Dec 6 '07) <a href="#version-1.16">Added StorageSupport.stringToKeyStrokes and keyStrokesToString</a>
</li>
<li>(Nov 28 '07) <a href="#version-1.12">Moving code templates storage to editor/codetemplates</a>
</li>
<li>(Mar 21 '07) <a href="#version-1.10">#90403 - phase 1</a>
</li>
<li>(Feb 5 '07) <a href="#version-1.9">Adding EditorSettings.getAllMimeTypes()</a>
</li>
<li>(Dec 30 '06) <a href="#version-1.8">Deprecating several methods and attributes in EditorSettings</a>
</li>
<li>(Nov 13 '06) <a href="#version-1.7">OpenIDE-Module-Provides: org.netbeans.api.editor.settings.implementation</a>
</li>
</ul>
<h1>
<a name="all-by-version">Changes by version</a>
</h1>
<p>
These API specification versions may be used to indicate that a module
requires a certain API feature in order to function. For example, if you
see here a feature you need which is labelled <samp>1.20</samp>, your
manifest should contain in its main attributes the line:
</p>
<pre>OpenIDE-Module-Module-Dependencies: org.netbeans.modules.editor.settings.storage/1 &gt; 1.20</pre>
<ul>
<li>
(1.49) <a href="#version-1.49">Module split</a>
</li>
<li>
(1.43) <a href="#issue-231735">Implement profiles for annotations coloring</a>
</li>
<li>
(1.38) <a href="#issue-226111">Detect preferences override and support inheritance</a>
</li>
<li>
(1.21) <a href="#version-1.21">EditorSettings.PROP_MIME_TYPES</a>
</li>
<li>
(1.17) <a href="#version-1.17">SPI refinements</a>
</li>
<li>
(1.16) <a href="#version-1.16">Added StorageSupport.stringToKeyStrokes and keyStrokesToString</a>
</li>
<li>
(1.12) <a href="#version-1.12">Moving code templates storage to editor/codetemplates</a>
</li>
<li>
(1.10) <a href="#version-1.10">#90403 - phase 1</a>
</li>
<li>
(1.9) <a href="#version-1.9">Adding EditorSettings.getAllMimeTypes()</a>
</li>
<li>
(1.8) <a href="#version-1.8">Deprecating several methods and attributes in EditorSettings</a>
</li>
<li>
(1.7) <a href="#version-1.7">OpenIDE-Module-Provides: org.netbeans.api.editor.settings.implementation</a>
</li>
</ul>
<h1>
<a name="all-by-class">Changes by affected class</a>
</h1>
<h2>
<a name="org.netbeans.modules.editor.settings.storage.api.EditorSettingsStorage"><code><span style="color:gray">org.netbeans.modules.editor.settings.storage.api.</span>EditorSettingsStorage</code></a>
</h2><ul><li>(Mar 6 '15) <a href="#version-1.49">Module split</a>
</li></ul><h2>
<a name="org.netbeans.modules.editor.settings.storage.api.MemoryPreferences"><code><span style="color:gray">org.netbeans.modules.editor.settings.storage.api.</span>MemoryPreferences</code></a>
</h2><ul><li>(Mar 6 '15) <a href="#version-1.49">Module split</a>
</li>
<li>(Feb 21 '13) <a href="#issue-226111">Detect preferences override and support inheritance</a>
</li></ul><h2>
<a name="org.netbeans.modules.editor.settings.storage.api.OverridePreferences"><code><span style="color:gray">org.netbeans.modules.editor.settings.storage.api.</span>OverridePreferences</code></a>
</h2><ul><li>(Mar 6 '15) <a href="#version-1.49">Module split</a>
</li>
<li>(Feb 21 '13) <a href="#issue-226111">Detect preferences override and support inheritance</a>
</li></ul><h2>
<a name="org.netbeans.modules.editor.settings.storage.spi.StorageDescription"><code><span style="color:gray">org.netbeans.modules.editor.settings.storage.spi.</span>StorageDescription</code></a>
</h2><ul><li>(Mar 6 '15) <a href="#version-1.49">Module split</a>
</li></ul><h2>
<a name="org.netbeans.modules.editor.settings.storage.spi.StorageFilter"><code><span style="color:gray">org.netbeans.modules.editor.settings.storage.spi.</span>StorageFilter</code></a>
</h2><ul><li>(Mar 6 '15) <a href="#version-1.49">Module split</a>
</li></ul><h2>
<a name="org.netbeans.modules.editor.settings.storage.spi.StorageReader"><code><span style="color:gray">org.netbeans.modules.editor.settings.storage.spi.</span>StorageReader</code></a>
</h2><ul><li>(Mar 6 '15) <a href="#version-1.49">Module split</a>
</li></ul><h2>
<a name="org.netbeans.modules.editor.settings.storage.spi.StorageWriter"><code><span style="color:gray">org.netbeans.modules.editor.settings.storage.spi.</span>StorageWriter</code></a>
</h2><ul><li>(Mar 6 '15) <a href="#version-1.49">Module split</a>
</li></ul><h2>
<a name="org.netbeans.modules.editor.settings.storage.spi.TypedValue"><code><span style="color:gray">org.netbeans.modules.editor.settings.storage.spi.</span>TypedValue</code></a>
</h2><ul><li>(Mar 6 '15) <a href="#version-1.49">Module split</a>
</li></ul><hr>
<h1>
<a name="details-by-api">Details of all changes by API and date</a>
</h1>
<hr style="width:50%">
<h2>
<a name="uncategorized-api">Uncategorized changes</a>
</h2>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="version-1.49">Module split</a>
</h3>
<em>Mar 6 '15; API spec. version: 1.49; affected top-level classes: <code>org.netbeans.modules.editor.settings.storage.api.OverridePreferences</code> <code>org.netbeans.modules.editor.settings.storage.api.MemoryPreferences</code> <code>org.netbeans.modules.editor.settings.storage.api.EditorSettingsStorage</code> <code>org.netbeans.modules.editor.settings.storage.spi.StorageDescription</code> <code>org.netbeans.modules.editor.settings.storage.spi.StorageFilter</code> <code>org.netbeans.modules.editor.settings.storage.spi.StorageReader</code> <code>org.netbeans.modules.editor.settings.storage.spi.StorageWriter</code> <code>org.netbeans.modules.editor.settings.storage.spi.TypedValue</code>; made by: sdedic</em>
<br>
Basic infrastructure for settings separated to a library.
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! --><h3>
<a name="issue-231735">Implement profiles for annotations coloring</a>
</h3>
<em>Sep 17 '13; API spec. version: 1.43; made by: mkristofic; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=231735">
#231735</a></em>
<br>
<p>
<code>EditorSettings</code> is extended to handle saving and loading annotations colorings for any profile.
</p>
<pre xml:space="preserve">
Class org.netbeans.modules.editor.settings.storage.api.EditorSettings
[sigtest] "E5.2 - Adding abstract methods" : method public abstract void org.netbeans.modules.editor.settings.storage.api.EditorSettings.setAnnotations(java.lang.String,java.util.Map)
[sigtest] "E5.2 - Adding abstract methods" : method public abstract java.util.Map org.netbeans.modules.editor.settings.storage.api.EditorSettings.getAnnotations(java.lang.String)
[sigtest] "E5.2 - Adding abstract methods" : method public abstract java.util.Map org.netbeans.modules.editor.settings.storage.api.EditorSettings.getAnnotationDefaults(java.lang.String)
[sigtest]
</pre>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="issue-226111">Detect preferences override and support inheritance</a>
</h3>
<em>Feb 21 '13; API spec. version: 1.38; affected top-level classes: <code>org.netbeans.modules.editor.settings.storage.api.OverridePreferences</code> <code>org.netbeans.modules.editor.settings.storage.api.MemoryPreferences</code>; made by: sdedic; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=226111">
#226111</a></em>
<br>
<p>
<code>OverridePreferences</code> can be used to detect whether the setting is defined for
the specific MIME type, or inherited from default ('all languages') settings.
</p>
<p>
During options editing, <code>MemoryPreferences</code> can be used to create Preferences
object, that propagates changes to its (persistent) delegate upon flush().
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="version-1.21">EditorSettings.PROP_MIME_TYPES</a>
</h3>
<em>Jul 16 '09; API spec. version: 1.21; made by: vstejskal</em>
<br>
<p>
Adding <code>EditorSettings.PROP_MIME_TYPES</code> to notify about changes in mimetypes returned
from <code>EditorSettings.getAllMimeTypes()</code> and <code>EditorSettings.getMimeTypes()</code>.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="version-1.17">SPI refinements</a>
</h3>
<em>Feb 14 '08; API spec. version: 1.17; made by: vstejskal</em>
<br>
<p>
The <code>createReader</code> and <code>createWriter</code> methods
of <code>StorageDescription</code> now have second parameter, which
is a mime path string of the file being read or writter respectively.
</p>
<p>
The <code>StorageReader.getMimePath</code> method was added alongside
with a new constructor that takse two parameters <code>FileObject</code>
that the reader is dealing with and the mime path <code>String</code> of
that file.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="version-1.16">Added StorageSupport.stringToKeyStrokes and keyStrokesToString</a>
</h3>
<em>Dec 6 '07; API spec. version: 1.16; made by: vstejskal</em>
<br>
<p>
Two methods were added for the benefit of keymaps and macros
storage implementations. The added methods are -
<code>StorageSupport.stringToKeyStrokes</code> and
<code>StorageSupport.keyStrokesToString</code>.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="version-1.12">Moving code templates storage to editor/codetemplates</a>
</h3>
<em>Nov 28 '07; API spec. version: 1.12; made by: vstejskal</em>
<br>
<p>
The classes related to the code templates storage were moved to
the editor/codetemplates module, which is no using the new SPI to
plugin its own storage files reader/writer.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="version-1.10">#90403 - phase 1</a>
</h3>
<em>Mar 21 '07; API spec. version: 1.10; made by: vstejskal</em>
<br>
<p>
The phase 1 of the editor settings enhancements, please see
<a href="http://www.netbeans.org/issues/show_bug.cgi?id=90403" shape="rect">issue 90403</a>
for details. Briefly, the changes involve introducing a special
folder for each setting type, profiles are always stored in their
own folder, modules are allowed to register multiple settings files,
platform specific settings, the use of 'text/base' for all-editors
settings has been deprecated in favor of the hierarchy root (ie. 'Editors' folder), etc.
</p>
<p>
The changes are documented in the Architecture Description document
and marked with the module version.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="version-1.9">Adding EditorSettings.getAllMimeTypes()</a>
</h3>
<em>Feb 5 '07; API spec. version: 1.9; made by: vstejskal</em>
<br>
<p>
Adding <code>EditorSettings.getAllMimeTypes()</code> method, which
lists all top-level mime types registered in <code>MimeLookup</code>.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="version-1.8">Deprecating several methods and attributes in EditorSettings</a>
</h3>
<em>Dec 30 '06; API spec. version: 1.8; made by: vstejskal</em>
<br>
<p>
The <code>getDefaultFontColors</code>, <code>getDefaultFontColorDefaults</code>
and <code>setDefaultFontColors</code> methods in the <code>EditorSettings</code>
classe were deprecated in favor of using <code>EditorSettings.getFontColorSettings(String[])</code>
with an empty mime path, which is the standard way of getting defaults
for all document types.
</p>
<p>
The <code>PROP_DEFAULT_FONT_COLORS</code> and <code>PROP_EDITOR_FONT_COLORS</code>
should have never been made public. They are only used internally.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="version-1.7">OpenIDE-Module-Provides: org.netbeans.api.editor.settings.implementation</a>
</h3>
<em>Nov 13 '06; API spec. version: 1.7; made by: vstejskal</em>
<br>
<p>
The module is now 'eager' and it provides the <code>org.netbeans.api.editor.settings.implementation</code>
token required by the <code>editor/settings</code> module. Also
the API was properly marked as for-friends-only.
</p>
<hr>
<p><span class="footnote">Built on September 14 2018.&nbsp;&nbsp;|&nbsp;&nbsp; Copyright &#169; 2017-2018 Apache Software Foundation. All Rights Reserved.</span></p>
</body>
</html>