1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432
|
<?xml version="1.0" encoding="UTF-8"?>
<!-- Search for CHANGEME in this document when copying and using it: -->
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
<?xml-stylesheet type="text/xml" href="../../nbbuild/javadoctools/apichanges.xsl"?>
<!DOCTYPE apichanges PUBLIC "-//NetBeans//DTD API changes list 1.0//EN" "../../nbbuild/javadoctools/apichanges.dtd">
<!--
INFO FOR PEOPLE ADDING CHANGES:
Check the DTD (apichanges.dtd) for details on the syntax. You do not
need to regenerate the HTML, as this is part of Javadoc generation; just
change the XML. Rough syntax of a change (several parts optional):
<change>
<api name="compiler"/>
<summary>Some brief description here, can use <b>XHTML</b></summary>
<version major="1" minor="99"/>
<date day="13" month="6" year="2001"/>
<author login="jrhacker"/>
<compatibility addition="yes"/>
<description>
The main description of the change here.
Again can use full <b>XHTML</b> as needed.
</description>
<class package="org.openide.compiler" name="DoWhatIWantCompiler"/>
<issue number="14309"/>
</change>
Also permitted elements: <package>, <branch>. <version> is API spec
version, recommended for all new changes. <compatibility> should say
if things were added/modified/deprecated/etc. and give all information
related to upgrading old code. List affected top-level classes and
link to issue numbers if applicable. See the DTD for more details.
Changes need not be in any particular order, they are sorted in various
ways by the stylesheet anyway.
Dates are assumed to mean "on the trunk". If you *also* make the same
change on a stabilization branch, use the <branch> tag to indicate this
and explain why the change was made on a branch in the <description>.
Please only change this file on the trunk! Rather: you can change it
on branches if you want, but these changes will be ignored; only the
trunk version of this file is important.
Deprecations do not count as incompatible, assuming that code using the
deprecated calls continues to see their documented behavior. But do
specify deprecation="yes" in <compatibility>.
This file is not a replacement for Javadoc: it is intended to list changes,
not describe the complete current behavior, for which ordinary documentation
is the proper place.
-->
<apichanges>
<!-- First, a list of API names you may use: -->
<apidefs>
<apidef name="palette_api">Palette API</apidef>
<!-- etc. -->
</apidefs>
<!-- ACTUAL CHANGES BEGIN HERE: -->
<changes>
<change>
<api name="palette_api"/>
<summary>Introduced <code>PaletteItemRegistration</code> and <code>PaletteItemRegistrations</code></summary>
<version major="1" minor="40"/>
<date day="10" month="12" year="2013"/>
<author login="skygo"/>
<compatibility addition="yes"/>
<description>
<p>
Introduced a new annotation for registering palette items.
</p>
</description>
<class package="org.netbeans.spi.palette" name="PaletteItemRegistration"/>
<class package="org.netbeans.spi.palette" name="PaletteItemRegistrations"/>
<issue number="227345"/>
</change>
<change>
<api name="palette_api"/>
<summary>Deprecating ModuleInstall</summary>
<version major="1" minor="31"/>
<date day="1" month="4" year="2012"/>
<author login="jtulach"/>
<compatibility addition="yes" deprecation="yes"/>
<description>Deprecating <a href="@TOP@/org/netbeans/spi/palette/PaletteModule.html">
PaletteModule</a> - it should not
be part of the API to begin with. Now it is registered with
<a href="@org-openide-windows@/org/openide/windows/OnShowing.html">OnShowing</a>
annotation and thus implements <code>Runnable</code>.
</description>
<class package="org.netbeans.spi.palette" name="PaletteModule"/>
<issue number="200636"/>
</change>
<change>
<api name="palette_api"/>
<summary>Initial version released</summary>
<version major="1" minor="0"/>
<date day="21" month="7" year="2005"/>
<author login="saubrecht"/>
<compatibility addition="yes"/>
<description>The first initial release of the Palette API.</description>
</change>
<change>
<api name="palette_api"/>
<summary>Removing unnecessary exceptions from PaletteFactory</summary>
<version major="1" minor="1"/>
<date day="8" month="8" year="2005"/>
<author login="saubrecht"/>
<compatibility addition="no"/>
<description>Removed IOException from the signature of methods in PaletteFactory that accept Node as an argument.</description>
</change>
<change>
<api name="palette_api"/>
<summary>Added a new optional attribute that can specify the width of items in the palette.</summary>
<version major="1" minor="2"/>
<date day="9" month="8" year="2005"/>
<author login="saubrecht"/>
<compatibility addition="yes"/>
<description>There's a new attribute "itemWidth" that can be set for palette's root node
(or for palette's root folder in the layer). This attribute defines the width in pixels
for all items in the palette thus forcing the same number of columns for all categories.
If the attribute is omitted or its value is "-1" then the item widths will be calculated
dynamically. The attribute is read-only.</description>
</change>
<change id="client-support" >
<api name="palette_api"/>
<summary>Palette client support released</summary>
<version major="1" minor="3"/>
<date day="10" month="8" year="2005"/>
<author login="lkotouc"/>
<compatibility addition="yes"/>
<description>
The first release of the Palette client support. It involves namely DTD describing item definition file format
and some implementation addons regarding definition file parsing and custom implementation class loading.
The palette item implementor can either directly provide the item body
or her own item class implementing <code>org.openide.text.ActiveEditorDrop</code> interface.
Lookup that holds object(s) representing the selected item then associates
custom item class instance with the <code>org.openide.text.ActiveEditorDrop.class</code> key and
the body with <code>java.lang.String</code> key.
</description>
</change>
<change id="draganddrop_support" >
<api name="palette_api"/>
<summary>Added support for default drag and drop operations</summary>
<version major="1" minor="4"/>
<date day="13" month="9" year="2005"/>
<author login="saubrecht"/>
<compatibility addition="yes"/>
<description>
The abstract class DragAndDropHandler now provides default implementation
for all drag and drop operations. The only method that needs to be overridden
is <code>void customize( ExTransferable t, Lookup item )</code> to provide
custom data flavors for items dragged from the palette to editor.<br/>
There are also new methods (and their default implementations) in this class
that handle reordering of categories and reordering of items (i.e. drag and drop
operations withing the palette window).
</description>
</change>
<change id="api_stabilization.palette" >
<api name="palette_api"/>
<summary>The Common Palette API has been stabilized.</summary>
<version major="1" minor="6"/>
<date day="6" month="6" year="2006"/>
<author login="saubrecht"/>
<compatibility deprecation="yes"/>
<description>
<p>
To indicate that this is now considered a stable API, the major release version was
incremented to 1 from 0.
</p>
</description>
<issue number="77387"/>
</change>
<change id="help_ctx" >
<api name="palette_api"/>
<summary>Added helpId attribute</summary>
<version major="1" minor="7"/>
<date day="16" month="10" year="2006"/>
<author login="saubrecht"/>
<compatibility addition="yes"/>
<description>
<p>
Now it's possible to add <em>helpId</em> attribute to palette's root, categories and items
that will be used to create appropriate HelpCtx. The attribute can be specified
in XML layer as a folder (palette's root and categories) or file attribute
(palette items) or it can be provided directly by appropriate Nodes.
</p>
<p>
When F1 key is pressed in palette's window then first the selected item is asked
for HelpCtx id. If no item is selected or it does not provide specific help id then
selected category is checked for help id. If the category does not provide any help id
either then palette's root is asked for help id. If the root does not define any then
the default help id <em>CommonPalette</em> will be used.
</p>
</description>
<issue number="77387"/>
</change>
<change id="display-name" >
<api name="palette_api"/>
<summary>Allow display name and tooltip to be defined directly in item's XML</summary>
<version major="1" minor="8"/>
<date day="30" month="1" year="2007"/>
<author login="saubrecht"/>
<compatibility addition="yes"/>
<description>
<p>
Now it's possible to specify item's display name and tooltip directly in item's
XML definition (instead of providing bundle name and keys). It's needed for items
created at runtime, for example code snippets highlighted in the editor and dropped
to the palette.
</p>
</description>
<issue number="90212"/>
</change>
<change id="custom-refresh" >
<api name="palette_api"/>
<summary>Palette providers need to be notified when the palette content is being refreshed.</summary>
<version major="1" minor="9"/>
<date day="27" month="1" year="2007"/>
<author login="saubrecht"/>
<compatibility addition="yes"/>
<description>
<p>
Now it's possible to provide an action that will be invoked as part of palette's 'refresh' logic.
</p>
</description>
<class package="org.netbeans.spi.palette" name="PaletteActions"/>
<issue number="88400"/>
</change>
<change id="mime-type-associations" >
<api name="palette_api"/>
<summary>Allow associating palette content with document mime type.</summary>
<version major="1" minor="10"/>
<date day="27" month="2" year="2007"/>
<author login="saubrecht"/>
<compatibility addition="yes"/>
<description>
<p>
The previous version of palette API mandated that editor TopComponent had to insert a
PaletteController instance into its Lookup if it wants to associate the palette with it.
Now it is possible to associate the palette also with an existing
editor without the need to change its implementation, e.g. to add code snippets
palette to java source editor.
</p>
<p>
If the mime type of active editor window has an associated instance of PaletteController
in the XML layer system then palette window opens and displays the specified palette contents.
The PaletteController from TopComponent's Lookup takes precedens over the PaletteController
found from mime type lookup in the XML layer (if any) for backwards compatibility.
</p>
<p>The new API is fully backwards compatible and there are no implications for existing
palette providers.</p>
</description>
<issue number="90213"/>
</change>
<change id="custom-reset" >
<api name="palette_api"/>
<summary>Palette providers may need to define their own action that
resets the palette to its default state.</summary>
<version major="1" minor="11"/>
<date day="12" month="6" year="2007"/>
<author login="saubrecht"/>
<compatibility addition="yes"/>
<description>
<p>
Now it's possible to provide an action that will be invoked when user chose 'Reset'
in palette's popup menu or in Palette Manager window.
</p>
</description>
<class package="org.netbeans.spi.palette" name="PaletteActions"/>
<issue number="105561"/>
</change>
<change id="per-document-visibility" >
<api name="palette_api"/>
<summary>Palette visibility is defined per document-type.</summary>
<version major="1" minor="13"/>
<date day="22" month="2" year="2008"/>
<author login="saubrecht"/>
<compatibility addition="no" binary="compatible" deletion="no" semantic="compatible" deprecation="no" modification="no" source="compatible"/>
<description>
<p>
Now it's possible to close the palette window while e.g. editing an HTML file
and the palette will still show up when designing a form.
</p>
</description>
<issue number="62964"/>
</change>
<change id="support-text-dnd" >
<api name="palette_api"/>
<summary>Allowing user dropping text into the palette to create new custom code clips.</summary>
<version major="1" minor="14"/>
<date day="5" month="5" year="2008"/>
<author login="saubrecht"/>
<compatibility addition="yes" binary="compatible" deletion="no" semantic="compatible" deprecation="no" modification="no" source="compatible"/>
<description>
<p>
If the Common Palette is associated with a text editor then it's desired to allow
users dragging and dropping text into the palette to create new custom code clips that
can be dropped into editor later on.
</p>
<p>
That can be achieved simply by subclassing the default DragAndDropHandler class
which manages all DragAndDrop-related operations in the Common Palette and turning
the text dnd support in superclasses's constructor on. The default implementation
pops up a dialog window when some text is dropped into the palette where user enters
code clip name and tooltip and optionally selects appropriate icons.
</p>
</description>
<class package="org.netbeans.spi.palette" name="DragAndDropHandler"/>
<issue number="93002"/>
</change>
<change id="default-visible" >
<api name="palette_api"/>
<summary>Make palette hidden by default for selected document types.</summary>
<version major="1" minor="20"/>
<date day="21" month="10" year="2009"/>
<author login="saubrecht"/>
<compatibility addition="yes" binary="compatible" deletion="no" semantic="compatible" deprecation="no" modification="no" source="compatible"/>
<description>
<p>
A new boolean attribute can be set on palette's root node or
on palette's root folder in XML layer to hide the palette window
by default when a document the palette is associated with is activated.
User then must open the palette window manually for the first time.
The attribute's name is "paletteDefaultVisible" and the default
value is "true".
</p>
</description>
<issue number="170718"/>
</change>
<change id="disable-palette-window" >
<api name="palette_api"/>
<summary>Allow to turn the auto-show of palette window on/off.</summary>
<version major="1" minor="29"/>
<date day="8" month="11" year="2011"/>
<author login="saubrecht"/>
<compatibility addition="yes" binary="compatible" deletion="no" semantic="compatible" deprecation="no" modification="no" source="compatible"/>
<description>
<p>
A new branding token <code>Palette.Window.Enabled</code> in
<code>org.netbeans.spi.palette</code> package allows to turn the automatic display of palette
window on/off. When the property value is <code>false</code> then
the palette window will not show when an editor with palette
content is activated. The user must open/close the palette window
manually. The default value is <code>true</code> which means
the palette window will auto-show/hide when active editor changes.
Note: The palette window is part of <code>commonpalette</code> TopComponent group
which the form designer opens when activated. So to turn the palette
window off completely it is necessary to remove its reference
from that group.
</p>
</description>
<issue number="204786"/>
</change>
</changes>
<!-- Now the surrounding HTML text and document structure: -->
<htmlcontents>
<!--
NO NO NO NO NO!
AUTOMATICALLY GENERATED FROM APICHANGES.XML, DO NOT EDIT
SEE CHANGEME/apichanges.xml
-->
<head>
<title>Change History for the Progress API</title>
<link rel="stylesheet" href="prose.css" type="text/css"/>
</head>
<body>
<p class="overviewlink"><a href="overview-summary.html">Overview</a></p>
<h1>Introduction</h1>
<p>This document lists changes made to the Palette API/SPI.</p>
<!-- The actual lists of changes, as summaries and details: -->
<hr/><standard-changelists module-code-name="org.netbeans.spi.palette"/>
<hr/><p>@FOOTER@</p>
</body>
</htmlcontents>
</apichanges>
|