/* * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distributed with this work for additional information * regarding copyright ownership. The ASF licenses this file * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. * */ package org.apache.directory.studio.ldapbrowser.ui.wizards; import org.apache.directory.studio.common.ui.widgets.BaseWidgetUtils; import org.apache.directory.studio.ldapbrowser.ui.BrowserUIConstants; import org.apache.directory.studio.ldapbrowser.ui.BrowserUIPlugin; import org.apache.directory.studio.ldapbrowser.ui.wizards.ExportDsmlWizard.ExportDsmlWizardSaveAsType; import org.eclipse.swt.events.SelectionAdapter; import org.eclipse.swt.events.SelectionEvent; import org.eclipse.swt.widgets.Button; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Group; /** * This class implements the page to select the target DSML file. * * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a> */ public class ExportDsmlToWizardPage extends ExportBaseToPage { /** The associated wizard */ private ExportDsmlWizard wizard; /** The extensions used by DSML files*/ private static final String[] EXTENSIONS = new String[] { "*.xml", "*" }; //$NON-NLS-1$ //$NON-NLS-2$ /** * Creates a new instance of ExportDsmlToWizardPage. * * @param pageName * the name of the page * @param wizard * the wizard the page is attached to */ public ExportDsmlToWizardPage( String pageName, ExportDsmlWizard wizard ) { super( pageName, wizard ); this.wizard = wizard; super.setImageDescriptor( BrowserUIPlugin.getDefault().getImageDescriptor( BrowserUIConstants.IMG_EXPORT_DSML_WIZARD ) ); } /** * {@inheritDoc} */ public void createControl( Composite parent ) { final Composite composite = BaseWidgetUtils.createColumnContainer( parent, 3, 1 ); super.createControl( composite ); Composite saveAsOuterComposite = BaseWidgetUtils.createColumnContainer( composite, 1, 3 ); Group saveAsGroup = BaseWidgetUtils.createGroup( saveAsOuterComposite, Messages .getString( "ExportDsmlToWizardPage.SaveAs" ), 1 ); //$NON-NLS-1$ Composite saveAsComposite = BaseWidgetUtils.createColumnContainer( saveAsGroup, 2, 1 ); final Button saveAsDsmlResponseButton = BaseWidgetUtils.createRadiobutton( saveAsComposite, Messages .getString( "ExportDsmlToWizardPage.DSMLResponse" ), 2 ); //$NON-NLS-1$ saveAsDsmlResponseButton.setSelection( true ); wizard.setSaveAsType( ExportDsmlWizardSaveAsType.RESPONSE ); saveAsDsmlResponseButton.addSelectionListener( new SelectionAdapter() { public void widgetSelected( SelectionEvent e ) { if ( saveAsDsmlResponseButton.getSelection() ) { wizard.setSaveAsType( ExportDsmlWizardSaveAsType.RESPONSE ); } } } ); BaseWidgetUtils.createRadioIndent( saveAsComposite, 1 ); BaseWidgetUtils.createWrappedLabel( saveAsComposite, Messages .getString( "ExportDsmlToWizardPage.SearchSaveAsResponse" ), 1 ); //$NON-NLS-1$ final Button saveAsDsmlRequestButton = BaseWidgetUtils.createRadiobutton( saveAsComposite, Messages .getString( "ExportDsmlToWizardPage.DSMLRequest" ), 2 ); //$NON-NLS-1$ saveAsDsmlRequestButton.addSelectionListener( new SelectionAdapter() { public void widgetSelected( SelectionEvent e ) { if ( saveAsDsmlRequestButton.getSelection() ) { wizard.setSaveAsType( ExportDsmlWizardSaveAsType.REQUEST ); } } } ); BaseWidgetUtils.createRadioIndent( saveAsComposite, 1 ); BaseWidgetUtils.createWrappedLabel( saveAsComposite, Messages .getString( "ExportDsmlToWizardPage.SearchSaveAsRequest" ), 1 ); //$NON-NLS-1$ } /** * {@inheritDoc} */ protected String[] getExtensions() { return EXTENSIONS; } /** * {@inheritDoc} */ protected String getFileType() { return Messages.getString( "ExportDsmlToWizardPage.DSML" ); //$NON-NLS-1$ } }