Package org.eclipse.ui.texteditor.rulers

# Interface IContributedRulerColumn

All Superinterfaces:
  `IVerticalRulerColumn`

All Known Implementing Classes:
  `AbstractContributedRulerColumn`

public interface IContributedRulerColumn extends IVerticalRulerColumn
Interface that has to be implemented by contributions to the `org.eclipse.ui.texteditor.rulerColumns` extension point.

Implementors must have a zero-argument constructor so that they can be created by `IConfigurationElement.createExecutableExtension(String)`.

Since:
  3.3

## Method Summary

Modifier and Type
Method
Description
`void`
`columnCreated()`
Hook method called after a column has been instantiated, but before it is added to a `CompositeRuler` and before createControl is called.
`void`
`columnRemoved()`
Hook method called after a column has been removed from the `CompositeRuler`.
`RulerColumnDescriptor`
`getDescriptor()`
Returns the extension point descriptor of this ruler.
`ITextEditor`
`getEditor()`
Returns the editor targeted by this ruler instance.
`void`
`setDescriptor(RulerColumnDescriptor descriptor)`
Sets the extension point descriptor of this ruler.
`void`
`setEditor(ITextEditor editor)`
Sets the editor (called right after the extension was instantiated).

### Methods inherited from interface org.eclipse.jface.text.source.IVerticalRulerColumn

`createControl, getControl, getWidth, redraw, setFont, setModel`

## Method Details

### getDescriptor

RulerColumnDescriptor getDescriptor()
Returns the extension point descriptor of this ruler.

Returns:
  descriptor the extension point descriptor of this ruler or `null` if called before `columnCreated()`

### setDescriptor

void setDescriptor(RulerColumnDescriptor descriptor)
Sets the extension point descriptor of this ruler.

This method will be called by the framework and must not be called by clients.

Parameters:
  `descriptor` - the extension point descriptor

### setEditor

void setEditor(ITextEditor editor)
Sets the editor (called right after the extension was instantiated).

This method will be called by the framework and must not be called by clients.

Parameters:
  `editor` - the editor targeted by this ruler instance

### getEditor

ITextEditor getEditor()
Returns the editor targeted by this ruler instance.

Returns:
  the editor targeted by this ruler instance or `null` if called before `columnCreated()`

### columnCreated

void columnCreated()
Hook method called after a column has been instantiated, but before it is added to a `CompositeRuler` and before createControl is called.

This happens when

- the column is set visible by the user or programmatically
- the editor is created, if this ruler targets the editor and is enabled by default
- the editor input changes and the column now targets the new editor contents.

### columnRemoved

void columnRemoved()
Hook method called after a column has been removed from the `CompositeRuler`.

This happens when

- the column is hidden by the user or programmatically
- the editor is closed
- the editor input changes and the column no longer targets the editor contents.

The column will not be used after this method has been called. A new column will be instantiated if the same column type should be shown for the same editor.