Overview

# Introduction

This document lists changes made to the I/O API.

# Index of APIs

- I/O APIs

# Incompatible changes by date

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.

# All changes by date

- (Jan 12 '05) Added API to add actions to output's toolbar
- (Nov 11 '04) Added API to mark OutputListeners a important

# Changes by version

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

- (1.6) Added API to add actions to output's toolbar
- (1.5) Added API to mark OutputListeners a important

# Changes by affected class

## `org.openide.windows.IOProvider`

- (Jan 12 '05) Added API to add actions to output's toolbar

## `org.openide.windows.OutputWriter`

- (Nov 11 '04) Added API to mark OutputListeners a important

# Details of all changes by API and date

## I/O APIs

### Added API to add actions to output's toolbar

Jan 12 '05; API spec. version: 1.6; affected top-level classes: `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.

### Added API to mark OutputListeners a important

Nov 11 '04; API spec. version: 1.5; affected top-level classes: `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 December 7 2006. | Portions Copyright 1997-2005 Sun Microsystems, Inc. All rights reserved.