@Override
public boolean performFinish() {
IPath path = new Path(page.getFileName()).makeAbsolute();
DeckEditorInput editorInput = new DeckEditorInput( new File(path.toOSString()) );
Deck deck = (Deck)editorInput.getAdapter(Deck.class);
deck.set(DeckConstants.FEATURE_NAME, page.getDeckName() );
deck.set(DeckConstants.FEATURE_DESIGNER, page.getDeckAuthor() );
deck.set(DeckConstants.FEATURE_VERSION, page.getDeckVersion() );
try {
PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().openEditor(editorInput, DeckEditor.ID);
} catch (PartInitException e) {
MessageDialog.openError(getShell(), "Error", "Error opening deck:" + e.getMessage());