O plug-in UI do JDT fornece a classe de utilitário JavaUI, que permite chamar a interface do usuário do JDT através de programação.
O trecho a seguir faz com que o diálogo de um solicitador de tipo abra:
public IType selectType() throws JavaModelException
{
SelectionDialog dialog=
JavaUI.createTypeDialog(parent,
new ProgressMonitorDialog(parent),
SearchEngine.createWorkspaceScope(),
IJavaElementSearchConstants.CONSIDER_TYPES,
false);
dialog.setTitle("Título do Meu Diálogo");
dialog.setMessage("Mensagem do Meu Diálogo");
if (dialog.open() == IDialogConstants.CANCEL_ID)
return null;
Object[] types= dialog.getResult();
if (types == null || types.length == 0)
return
null;
return (IType)types[0];
}