blob: 4e27fede666f9ac809fb26160471ea3e74f40e9b [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2000, 2005 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
package org.eclipse.ui.console;
/**
* A console factory extension is responsible for opening a console in the console view.
* Extensions appear on a menu in the console view, and their <code>openConsole</code>
* method is called when the action is invoked. Implementations may choose to open a new
* console or activate an existing console. The extension point used to contribute a
* console factory is <code>org.eclipse.ui.console.consoleFactories</code>.
* <p>
* Following is an example console factory extension.
* <pre>
* &lt;extension point="org.eclipse.ui.console.consoleFactories"&gt;
* &lt;consoleFactory
* label="Command Console"
* icon="icons\cmd_console.gif"
* class="com.example.CommandConsoleFactory"&gt;
* &lt;/consoleFactory&gt;
* &lt;/extension&gt;
* </pre>
* An action appears in the console view's 'Open Console' drop-down menu with the
* corresponding <code>label</code> and optional <code>icon</code>. When the action
* is invoked, the specified <code>class</code> is instantiated and called to
* open a console, via the method <code>openConsole()</code>.
* </p>
* <p>
* Clients providing console factory extensions are intended to implement
* this interface.
* </p>
* @since 3.1
*/
public interface IConsoleFactory {
/**
* Opens a console in the console view. Implementations may create a new
* console or activate an existing console.
*/
public void openConsole();
}