Represents a section of properties for a given input.
The lifecycle of an ISection is as follows:
ISection.createControls()
ISection.setInput()
ISection.aboutToBeShown()
ISection.refresh()
ISection.aboutToBeHidden()
ISection.dispose()
Implementors of this class should be aware that a section instance might be
reused for different input objects (as long as they are valid section
inputs). It means that ISection.setInput
can be called at any
time between ISection.createControls
and
ISection.dispose
.
When an input change event occurs, such as a tab selection or a workbench
selection change, an ISection is sent:
ISection.setInput()
ISection.refresh()
When an part activation event occurs, such as the contributor part activation
event, an ISection is sent:
ISection.setInput()
ISection.aboutToBeShown()
ISection.refresh()
ISection.setInput()
ISection.refresh()
This is because both a tab selection event and an input selection event have
occurred.
This interface should not be extended or implemented. New section instances
should be created using AbstractPropertySection
.