Editores de Formulário de Várias Páginas

Os Formulários da UI fornecem um suporte básico para editores de várias páginas nos quais você pode construir.

Você deve iniciar construindo um editor de várias páginas de Formulários da UI, estendendo FormEditor:

public class SimpleFormEditor extends FormEditor {

	public SimpleFormEditor() {
	}

	protected FormToolkit createToolkit(Display display) {
		// Criar um toolkit que compartilha cores entre editores.
		return new FormToolkit(ExamplesPlugin.getDefault().getFormColors(
				display));
	}

	protected void addPages() {
		try {
		addPage(new FreeFormPage(this));
		addPage(new SecondPage(this));
		addPage(new ThirdPage(this));
		addPage(new MasterDetailsPage(this));
		addPage(new PageWithSubPages(this));
		}
		catch (PartInitException e) {
			//
		}
	}

	public void doSave(IProgressMonitor monitor) {
	}

	public void doSaveAs() {
	}

	public boolean isSaveAsAllowed() {
    return false;
	}

Uma maneira muito simples de começar é criar páginas e inclui-las como acima. Cada página precisa implementar FormPage e substituir o método createFormContent(IManagedForm managedForm). É claro que já existe um formulário gerenciado já criado na página e você deve criar conteúdo no formulário incluído e também registrar qualquer parte do formulário que precise fazer parte do ciclo de vida gerenciado.

Além de páginas do formulário, você pode incluir um ou mais editores de texto como uma alternativa de origem bruta nas páginas da GUI. Para isso, você deve chamar o método 'addPage(IEditorPart, IEditorInput input)' na superclasse.

Práticas Recomendadas para Editores de Várias Páginas de Formulários do Eclipse

Há várias maneiras que podem ser utilizadas para gravar um editor de várias páginas com base em formulário. Depende mais do tipo de conteúdo que você está editando e da proficiência dos usuários. Existem duas abordagens:

  1. Se os usuários típicos estiverem utilizando o editor com pouca freqüência, a origem bruta é difícil de editar à mão ou complexa, os usuários não são muito técnicos, etc., você deverá fazer páginas COMPLETAS que sejam completamente capazes de editar todos os aspectos do conteúdo sem a necessidade de voltar à origem bruta. Nessa abordagem, a página de origem está lá apenas para validação ocasional, e não para trabalho normal. Nesse aspecto, é possível resolver o problema com um editor de texto básico. O editor de esquema de ponto de extensão do PDE está nesse grupo.

  2. Se seus usuários são mais técnicos, não têm problema para editar o arquivo à mão, mas gostariam de alguma ajuda de vez em quando, considere fornecer uma experiência mista - faça um bom editor de origem com todos os complementos, como esboço incremental, assistente de contexto, realce de sintaxe, etc. Por outro lado, inclua funcionalidade complexa de valor agregado nas páginas do formulário que são difíceis de atingir a partir da origem. Por experiência própria, sabemos que é muito difícil convencer usuários experientes a mudar a edição de origem, se o valor agregado for marginal ou contestável. No entanto, as funções que estavam disponíveis nas páginas da GUI, que eram de qualidade muito alta, foram utilizadas prontamente.

Criar um editor de várias páginas de alta qualidade com GUI e páginas de origem misturadas é algo desafiante. A aceitação de que esses usuários mudarão de página com freqüência requer um bom modelo do conteúdo básico. O modelo deve estar diretamente ligado aos documentos básicos de forma que ele esteja em sincronia quando os usuários digitam texto diretamente e quando o alteram estruturalmente por meio de páginas da GUI (não se esqueça das alterações indiretas provocadas por outras ações do workbench enquanto o editor ainda está ativo).