Formuláře uživatelského rozhraní poskytují základní podporu vícestránkovým editorům, které můžete vytvářet.
Vytvoření vícestránkového editoru formuláře uživatelského rozhraní byste měli začít rozšířením FormEditor
:
public class SimpleFormEditor extends FormEditor { public SimpleFormEditor() { } protected FormToolkit createToolkit(Display display) { // Vytvoří sadu nástrojů, které sdílejí barvy mezi editory. 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; }
Nejjednodušší je začít vytvořením stránek a poté je přidávat podle popisu uvedeného výše.
Jednotlivé stránky musejí implementovat FormPage
a přepisovat metodu
createFormContent(IManagedForm managedForm)
. Stránka pravděpodobně již obsahuje vytvořený řízený formulář a vám zbývá vytvořit obsah v ohraničené podobě a registrovat všechny části, které vyžadují účast ve správě životního cyklu.
Kromě formulářových stránek můžete přidat jeden nebo několik textových editorů jako alternativu zobrazení kódu ke stránkám uživatelského rozhraní. Pro tento účel byste měli volat metodu 'addPage(IEditorPart,
IEditorInput input)
' v supertřídě.
K dispozici je více způsobů zápisu formulářového vícestránkového editoru. Většinou je zapotřebí volit podle typu editovaného obsahu a podle odbornosti uživatelů. K dispozici jsou dva základní přístupy:
Pokud typičtí uživatelé používají editor pouze občasně, pokud je přímá editace zdroje příliš obtížná nebo složitá nebo pokud vaši uživatelé nejsou příliš technicky orientováni atd., měli byste vytvořit KOMPLETNÍ stránky, které plně umožňují editaci každého aspektu obsahu bez potřeby zobrazení vlastního zdrojového textu. V tomto přístupu je zdrojová stránka určena pouze k příležitostnému ověřování, nikoli pro soustavnou práci. V tomto ohledu může plně postačit základní textový editor. Do této skupiny patří editor schématu bodu rozšíření PDE.
Jsou-li vaši uživatelé orientováni techničtěji, nemají potíže s přímou editací souboru, avšak občas uvítají určitou nápovědu, může být vhodnou volbou smíšená struktura - vytvořte dobrý editor zdrojového textu se všemi přídavnými prvky, tj. s přírůstkovou osnovou, kontextovou asistencí, zvýrazňováním syntaxe atd. Naopak do formulářových stránek přidejte komplexní pokročilé funkce, které je obtížné získat přímo ze zdrojového textu. Naše zkušenosti napovídají, že je velmi obtížné přimět zkušené uživatele k přechodu od editace zdrojového textu, pokud jsou pokročilé funkce okrajové nebo sporné. Nicméně kvalitní funkce dostupná pouze na stránkách grafického uživatelského rozhraní přejde do běžného užívání bez prodlení.
Vytváření kvalitního vícestránkového editoru se smíšeným grafickým uživatelským rozhraním a zdrojovými stránkami má svá úskalí. Předpokládáme-li, že uživatelé budou přepínat stánky častěji, potřebujeme kvalitní model použitého obsahu. Model by měl být přímo svázán s použitým dokumentem (použitými dokumenty) tak, aby docházelo k synchronizaci jak při přímém zápisu textu uživatelem, tak i při strukturálním provádění změn prostřednictvím stránek grafického uživatelského rozhraní (nezapomeňte na nepřímé změny způsobované jinými akcemi pracovní plochy v době, kdy editor zůstává v chodu).