Interface IDebugModelPresentationExtension

All Superinterfaces:
IBaseLabelProvider, IDebugModelPresentation, ILabelProvider, ISourcePresentation

public interface IDebugModelPresentationExtension extends IDebugModelPresentation
Optional extension for an IDebugModelPresentation. Dynamically controls whether labels are computed in a UI thread. The debug platform calls debug model presentation label related methods that do not implement this interface in a non-UI thread.

For example, some models may require at least one access in a UI thread to initialize an image registry at which point they may be able to provide labels in a non-UI thread.

Clients implementing a debug model presentation should also implement this interface to control which thread labels are generated in.

Since:
3.4
  • Method Details

    • requiresUIThread

      boolean requiresUIThread(Object element)
      Returns whether the UI thread is required to retrieve a label (text, image, font, foreground, background, etc.), for the specified element. When true is returned, label related methods will be called in the UI thread, otherwise methods may be called in a non-UI thread.
      Parameters:
      element - the element a label is to be retrieved for
      Returns:
      whether label related methods should be called on the UI thread