Os usuários sempre acham necessário filtrar exibições, como a exibição do navegador, para reduzir a desordem. Os plug-ins podem auxiliar na filtragem utilizando técnicas diferentes.
Se seu plug-in implementar uma exibição que mostre recursos (ou objetos que são adaptáveis a IResource), você deve suportar conjuntos de tarefas. IWorkingSetManager fornece a API para manipulação de conjuntos de tarefas. É possível obter um IWorkingSetManager utilizando a API IWorkbench.
IWorkingSetManager manager = workbench.getWorkingSetManager();
IWorkingSetManager permite que você manipule e crie conjuntos de tarefas:
IWorkingSetManager também fornece notificação de alteração de propriedade conforme os conjuntos de tarefas são incluídos, removidos ou alterados. Se a sua exibição ou editor precisar responder a alterações no conjunto de tarefas selecionado, ela poderá incluir um atendente para CHANGE_WORKING_SET_CONTENT_CHANGE.
Para muitos plug-ins, a utilização de IWorkingSetManager para fornecer a filtragem de recursos é suficiente. Se o seu plug-in precisar definir conjuntos de tarefas de maneira diferente, ele pode registrar um novo tipo de conjunto de tarefas utilizando org.eclipse.ui.workingSets. A ferramenta Java utiliza esse recurso para definir um tipo de conjunto de tarefas Java. Os tipos de conjuntos de tarefas são mostrados quando o usuário decide adicionar um conjunto de tarefas.
Ao definir seu próprio tipo de conjunto de tarefas, é possível utilizar o protocolo IWorkingSet.getId para assegurar que o conjunto de tarefas corresponde ao tipo definido. Qualquer conjunto de tarefas criado de maneira programática deve ter seu ID definido para o ID de uma página de conjunto de tarefas que possa exibir os elementos do conjunto de tarefas. Esse ID é utilizado para assegurar que a página de edição de conjunto de tarefas adequada seja ativada quando o usuário editar o conjunto de tarefas. Um ID nulo indica que o conjunto de tarefas deve utilizar o tipo de conjunto de tarefas padrão do recurso.
Consulte a documentação do ponto de extensão org.eclipse.ui.workingSets e o protocolo IWorkingSet para obter detalhes adicionais.