This document lists changes made to the I/O API.
Fuller descriptions of all changes can be found below (follow links).
Not all deprecations are listed here, assuming that the deprecated APIs continue to essentially work. For a full deprecation list, please consult the Javadoc.
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 1.20, your manifest should contain in its main attributes the line:
OpenIDE-Module-Module-Dependencies: org.openide.io > 1.20
org.openide.windows.IOColorLines
org.openide.windows.IOColorPrint
org.openide.windows.IOColors
org.openide.windows.IOContainer
org.openide.windows.IOPosition
org.openide.windows.IOProvider
org.openide.windows.IOSelect
org.openide.windows.OutputWriter
IOSelect
; made by: ivan; issues:
#185209
Added class for fine control over select:
IOSelect
IOContainer
; made by: ivan; issues:
#185209
After fixing bug#185209
IOContainer.select()
no longer performs these operations for us so implementations of IOProvider
have to do them:
IOContainer.open()
,
IOContainer.requestVisible()
.
Existing implementation of InputOutput.select() has been adjusted and is still compatible.
IOColorPrint
; made by: t_h; issues:
#168898
Adding class for color printing.
IOColorPrint,
IOPosition
IOColors
IOColorLines
; made by: t_h; issues:
#157911
Adding "feature class" to control output color and programmatical scrolling.
IOColorLines,
IOColors,
IOPosition,
IOProvider
IOContainer
; made by: t_h; issues:
#157911
Added static
IOProvider.get(String name)
to get specific implementation of IOProvider. Added
IOProvider.getName()
which should be overriden by subclasses to provide its name (ID).
IOContainer
was introduced as an accessor to "parent container" for IO components (tab).
IOProvider.getIO(String name, Action[] additionalActions, IOContainer ioContainer)
can be used to specify alternative container.
First "feature class" IOTab added to provide API for getting/setting icon/tooltip for IO tab.
IOProvider
; made by: jtulach; issues:
#34699
If your module depends on org.openide.io > 1.11
or higher
there is no need to specify that it also requires an implementation of
the API by use of OpenIDE-Module-Requires: org.openide.windows.IOProvider
,
this token will be requested automatically by the org.openide.io
module itself.
IOProvider
; made by: mkleint; issues:
#43332
Added an additional method InputOutput getIO(String name, Action[] additionalActions)
that accepts additional array of javax.swing.Action instances. It allows to define domain-specific additional actions
that can be performed on the content of the output.
The method
should be ideally abstract but because it's uncertain how many
implementations of IOProvider are there, the method is non-abstract and in it's
default impl, delegates to the InputOutput getIO(String name, boolean newIO)
method.
Implementors of the class are encourages to implement the new method.
OutputWriter
; made by: mkleint; issues:
#48339
Added an additional method OutputWriter.println(String, OutputListener, boolean)
that accepts additional boolean parameter (is Important or not). It allows the API users to mark the
line and it's listener as important. Such a line can be marked in different color, the output can stop there to draw user's attention etc.
The method
should be ideally abstract but because it's uncertain how many
implementations are there, the method is non-abstract and in it's
default impl, delegates to the OutputWriter.println(String, OutputListener)
method,
ignoring the boolean parameter. Implementors of the class are
encourages to implement the new method.
Built on August 25 2010. | Portions Copyright 1997-2010 Sun Microsystems, Inc. All rights reserved.