org.fife.rsta.ac.LanguageSupport Maven / Gradle / Ivy
/*
* 03/21/2010
*
* Copyright (C) 2010 Robert Futrell
* robert_futrell at users.sourceforge.net
* http://fifesoft.com/rsyntaxtextarea
*
* This library is distributed under a modified BSD license. See the included
* LICENSE.md file for details.
*/
package org.fife.rsta.ac;
import javax.swing.ListCellRenderer;
import org.fife.ui.rsyntaxtextarea.RSyntaxTextArea;
/**
* "Extra" support for a programming language (code completion, parser, etc.).
*
* @author Robert Futrell
* @version 1.0
*/
public interface LanguageSupport {
/**
* Client property set on RSyntaxTextArea
s referencing the
* Parser
instance parsing its source code. This will be
* null
if a language support does not install such a parser.
*/
String PROPERTY_LANGUAGE_PARSER =
"org.fife.rsta.ac.LanguageSupport.LanguageParser";
/**
* Returns the delay between when the user types a character and when the
* code completion popup should automatically appear (if applicable).
* This parameter is only honored if {@link #isAutoActivationEnabled()}
* returns true
.
*
* @return The delay, in milliseconds.
* @see #setAutoActivationDelay(int)
*/
int getAutoActivationDelay();
/**
* Returns the default list cell renderer to install for all text areas
* with this language support installed.
*
* @return The renderer. This will never be null
.
* @see #setDefaultCompletionCellRenderer(ListCellRenderer)
*/
ListCellRenderer