package org.xmind.ui.internal.imports.lighten; import org.eclipse.osgi.util.NLS; import org.eclipse.swt.SWT; import org.eclipse.swt.layout.GridData; import org.eclipse.swt.layout.GridLayout; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Control; import org.eclipse.swt.widgets.FileDialog; import org.xmind.core.IWorkbook; import org.xmind.ui.internal.imports.ImportMessages; import org.xmind.ui.wizards.AbstractMindMapImportPage; import org.xmind.ui.wizards.AbstractMindMapImportWizard; import org.xmind.ui.wizards.MindMapImporter; public class LightenImportWizard extends AbstractMindMapImportWizard { private final static String PAGE_ID = "importLighten"; //$NON-NLS-1$ private final static String FILE_FORMAT = "*.lighten"; //$NON-NLS-1$ @Override protected MindMapImporter createImporter(String sourcePath, IWorkbook targetWorkbook) { return new LightenImporter(sourcePath, targetWorkbook); } @Override protected String getApplicationId() { return "Lighten"; //$NON-NLS-1$ } @Override public void addPages() { addPage(new LightenImportPage()); } private class LightenImportPage extends AbstractMindMapImportPage { protected LightenImportPage() { super(PAGE_ID, ImportMessages.LightenImportPage_title); } public void createControl(Composite parent) { Composite composite = new Composite(parent, SWT.NONE); GridLayout layout = new GridLayout(); layout.verticalSpacing = 15; composite.setLayout(layout); setControl(composite); Control fileGroup = createFileControls(composite); fileGroup.setLayoutData( new GridData(SWT.FILL, SWT.FILL, true, false)); Control destinationControl = createDestinationControl(composite); destinationControl.setLayoutData( new GridData(SWT.FILL, SWT.FILL, true, true)); updateStatus(); parent.getDisplay().asyncExec(new Runnable() { public void run() { openBrowseDialog(); } }); } @Override protected FileDialog createBrowseDialog() { FileDialog dialog = super.createBrowseDialog(); dialog.setFilterExtensions(new String[] { FILE_FORMAT }); dialog.setFilterNames(new String[] { NLS.bind(ImportMessages.LightenImportPage_FilterName, FILE_FORMAT) }); return dialog; } } }